@charset "UTF-8";
h1, h2, h3, h4, h5, h6, body, html, p, li, dt, dd, pre, form, fieldset {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: normal;
  margin: 0px;
  padding: 0px;
  color: #5A5A5A;
  font-style: normal;
  font-size: 16px;
  line-height: 1.6;
}

ul, ol, dl, img {
  margin: 0px;
  padding: 0px;
}

ul, ol {
  list-style-type: none;
}

img {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  font-size: 0%;
  line-height: 0%;
  vertical-align: top;
}

a {
  text-decoration: none;
  color: #fff;
}

a:active {
  color: #fff;
}

a:visited {
  color: #fff;
}

input:-internal-autofill-selected {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
}

.clearfix:after {
  font-size: .1em;
  line-height: 0;
  display: block;
  visibility: hidden;
  clear: both;
  overflow: hidden;
  height: 0;
  content: ".";
}

#hiddenHead {
  position: fixed;
  top: -140px;
  left: 0;
  width: 100%;
  background-color: #efe573;
  z-index: 10;
  -webkit-transition: top .3s linear;
  transition: top .3s linear;
}

#hiddenHead .hiddenHeadWrap {
  position: relative;
  max-width: 1720px;
  text-align: center;
  padding: 15px 0;
  margin: 0 5.20833vw;
}

#hiddenHead .hiddenHeadWrap > p {
  color: #666;
  font-size: 22px;
  font-weight: bold;
}

#hiddenHead .hiddenHeadWrap > p br {
  display: none;
}

#hiddenHead .hiddenHeadWrap > p img {
  width: 36px;
  height: auto;
  font-size: 16px;
  vertical-align: middle;
  margin: 0 .2em 0 .5em;
}

#hiddenHead .hiddenHeadWrap > p span {
  color: #c00;
  margin-right: .5em;
}

#hiddenHead .hiddenHeadWrap .linkContact {
  position: absolute;
  top: 10px;
  right: 0;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background-image: url(../images/bk_contact_link.png);
  background-repeat: no-repeat;
  background-position: center bottom 10px;
  background-size: 35px 23px;
  background-color: #c00;
  padding: 27px 0;
}

#hiddenHead .hiddenHeadWrap .linkContact .linkContactWrap {
  font-size: 22px;
  color: #efe573;
  line-height: 1.3em;
  font-weight: bold;
}

#hiddenHead .hiddenHeadWrap::before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  bottom: -2.08333vw;
  margin: 0 auto;
  border-top: 2.08333vw solid #efe573;
  border-right: 1.82292vw solid transparent;
  border-left: 1.82292vw solid transparent;
}

@media screen and (min-width: 1920px) {
  #hiddenHead .hiddenHeadWrap {
    width: 1720px;
    margin: 0 auto;
  }
  #hiddenHead .hiddenHeadWrap::before {
    bottom: -40px;
    border-top: 40px solid #efe573;
    border-right: 35px solid transparent;
    border-left: 35px solid transparent;
  }
}

@media screen and (max-width: 1000px) {
  #hiddenHead {
    top: -100px;
  }
  #hiddenHead .hiddenHeadWrap {
    max-width: 100%;
    margin: 0;
    padding: 15px 0;
  }
  #hiddenHead .hiddenHeadWrap > p {
    font-size: 16px;
  }
  #hiddenHead .hiddenHeadWrap > p br {
    display: block;
  }
  #hiddenHead .hiddenHeadWrap > p img {
    width: 22px;
  }
  #hiddenHead .hiddenHeadWrap .linkContact {
    display: none;
  }
  #hiddenHead .hiddenHeadWrap::before {
    bottom: -15px;
    border-top: 16px solid #efe573;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
  }
}

#spFixBottom {
  display: none;
}

@media screen and (max-width: 1000px) {
  #spFixBottom {
    display: block;
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #fff;
    padding: 10px 0;
    z-index: 10;
  }
  #spFixBottom .spFixBottomWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 5vw;
  }
  #spFixBottom .spFixBottomWrap .spFixTelBtn {
    height: 54px;
    -ms-flex-preferred-size: 28%;
        flex-basis: 28%;
    color: #c00;
    border: 2px solid #c00;
    border-radius: 3px;
    font-size: 14px;
    text-align: center;
    font-weight: bold;
    background-image: url(../images/logo_tel.png);
    background-repeat: no-repeat;
    background-size: 31px 24px;
    background-position: center top 2px;
    padding: 28px 0 0;
  }
  #spFixBottom .spFixBottomWrap .spFixContactBtn {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    background-color: #c00;
    border-radius: 3px;
    color: #efe573;
    font-size: 24px;
    font-weight: bold;
    line-height: 54px;
    text-align: center;
  }
  #spFixBottom .spFixBottomWrap .spFixContactBtn span {
    background-image: url(../images/bk_contact_link.png);
    background-repeat: no-repeat;
    background-size: 24px 20px;
    background-position: right center;
    padding-right: 30px;
  }
}

#header {
  position: relative;
  max-width: 1720px;
  margin: 0 5.20833vw;
  text-align: center;
}

#header .headerTitle {
  position: absolute;
  top: 35px;
  left: 0;
}

#header .headerTitle img {
  width: 4.6875vw;
}

#header .bkCircle {
  position: absolute;
  top: 17.1875vw;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 32.8125vw;
  height: auto;
  z-index: -1;
}

#header .bkBrush1 {
  position: absolute;
  top: 1.30208vw;
  left: 2.86458vw;
  width: 42.70833vw;
  height: auto;
  z-index: -1;
}

#header .catch {
  display: inline-block;
  font-family: "Sawarabi Mincho", 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
  font-size: 3.75vw;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-align: left;
  padding-top: 5.20833vw;
  margin: 0 auto;
  width: 18.02083vw;
  margin-bottom: 6.77083vw;
}

@media screen and (min-width: 1920px) {
  #header .catch {
    font-size: 72px;
  }
}

#header .speechBubble {
  margin-bottom: 9.89583vw;
}

#header .speechBubble .speechBubbleWrap {
  display: inline-block;
  position: relative;
  text-align: center;
  font-size: 1.875vw;
  background-color: #efe573;
  padding: 1.5625vw 4.6875vw;
}

@media screen and (min-width: 1920px) {
  #header .speechBubble .speechBubbleWrap {
    font-size: 36px;
  }
}

#header .speechBubble .speechBubbleWrap br.sp {
  display: none;
}

#header .speechBubble .speechBubbleWrap::before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  bottom: -2.60417vw;
  margin: 0 auto;
  border-top: 2.60417vw solid #efe573;
  border-right: 1.5625vw solid transparent;
  border-left: 1.5625vw solid transparent;
}

#header .speechBubble .speechBubbleWrap img {
  height: 2.86458vw;
}

#header .speechBubble .speechBubbleWrap span {
  color: #c00;
}

@media screen and (min-width: 1920px) {
  #header {
    width: 1720px;
    margin: 0 auto;
  }
  #header .headerTitle {
    position: absolute;
    top: 35px;
    left: 0;
  }
  #header .headerTitle img {
    width: 90px;
  }
  #header .bkCircle {
    top: 330px;
    left: 50%;
    width: 630px;
  }
  #header .bkBrush1 {
    top: 25px;
    left: 55px;
    width: 820px;
  }
  #header .catch {
    padding-top: 100px;
    width: 346px;
    margin-bottom: 130px;
  }
  #header .speechBubble {
    margin-bottom: 190px;
  }
  #header .speechBubble .speechBubbleWrap {
    padding: 30px 90px;
  }
  #header .speechBubble .speechBubbleWrap::before {
    bottom: -50px;
    border-top: 50px solid #efe573;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
  }
  #header .speechBubble .speechBubbleWrap img {
    height: 55px;
  }
}

@media screen and (max-width: 1000px) {
  #header {
    max-width: 100%;
    margin: 0 5vw;
    height: auto;
  }
  #header .headerTitle {
    top: 5.33333vw;
  }
  #header .headerTitle img {
    width: 10.66667vw;
  }
  #header .bkCircle {
    top: 32vw;
    bottom: auto;
    width: 70.66667vw;
  }
  #header .bkBrush1 {
    top: 84vw;
    left: -42.66667vw;
    width: 133.33333vw;
    opacity: 0.5;
  }
  #header .catch {
    width: 46.13333vw;
    font-size: 9.6vw;
    padding: 21.33333vw 0 0;
  }
  #header .speechBubble {
    position: relative;
    right: 0;
    bottom: auto;
    margin: 26.66667vw 0;
  }
  #header .speechBubble .speechBubbleWrap {
    position: relative;
    width: 100%;
    text-align: center;
    font-size: 5.33333vw;
    padding: 8vw;
  }
  #header .speechBubble .speechBubbleWrap br.sp {
    display: block;
  }
  #header .speechBubble .speechBubbleWrap::before {
    bottom: -5.33333vw;
    border-top: 5.33333vw solid #efe573;
    border-right: 3.46667vw solid transparent;
    border-left: 3.46667vw solid transparent;
  }
  #header .speechBubble .speechBubbleWrap img {
    height: 8.26667vw;
  }
}

#listTopSection {
  position: relative;
}

#listTopSection .bkBrush2 {
  position: absolute;
  top: 140.625vw;
  left: 1.30208vw;
  width: 72.91667vw;
  z-index: -1;
}

#listTopSection .bkBrush3 {
  display: none;
}

#listTopSection .contentsWrap {
  max-width: 1720px;
  margin: 0 5.20833vw;
  position: relative;
}

#listTopSection .contentsWrap .contentsLabel {
  display: block;
  width: 45%;
  text-align: center;
  cursor: pointer;
  margin: 0 auto 2.08333vw;
}

#listTopSection .contentsWrap .contentsLabel .contentsCheckbox {
  display: none;
}

#listTopSection .contentsWrap .contentsLabel .contentsCatch {
  font-family: "Sawarabi Mincho", 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
  font-size: 1.5625vw;
  margin-bottom: 1.5625vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsWrap .contentsLabel .contentsCatch {
    font-size: 30px;
  }
}

#listTopSection .contentsWrap .contentsLabel h2 {
  font-family: "Sawarabi Mincho", 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
  font-size: 6.25vw;
  line-height: 1em;
  margin-bottom: 0.26042vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsWrap .contentsLabel h2 {
    font-size: 120px;
  }
}

#listTopSection .contentsWrap .contentsLabel .contentsTitleTranslation {
  font-size: 0.78125vw;
  letter-spacing: .5em;
  margin-bottom: 1.04167vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsWrap .contentsLabel .contentsTitleTranslation {
    font-size: 15px;
  }
}

#listTopSection .contentsWrap .contentsLabel .contentsTitleTranslation br {
  display: none;
}

#listTopSection .contentsWrap .contentsLabel .checkBox {
  margin-bottom: 1.04167vw;
}

#listTopSection .contentsWrap .contentsLabel .checkBox::after {
  content: '資料請求';
  color: #c00;
  font-size: 1.61458vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsWrap .contentsLabel .checkBox::after {
    font-size: 31px;
  }
}

#listTopSection .contentsWrap .contentsLabel .checkBox .checkImg {
  height: 2.60417vw;
}

#listTopSection .contentsWrap .contentsLabel .contentsDescription {
  font-size: 0.9375vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsWrap .contentsLabel .contentsDescription {
    font-size: 18px;
  }
}

#listTopSection .contentsWrap .contentsPhotos {
  position: relative;
  width: 55%;
  margin: 0 auto;
}

#listTopSection .contentsWrap .contentsPhotos .contentsPhotosMain {
  width: 100%;
  margin-bottom: 2.60417vw;
}

#listTopSection .contentsWrap .contentsPhotos .contentsPhotosSub {
  display: block;
  width: 58%;
  height: auto;
  margin: 0 auto;
}

#listTopSection .contentsWrap .contentsPhotos .contentsLocation {
  display: block;
  position: absolute;
  top: 54%;
  left: 3%;
}

#listTopSection .contentsWrap .contentsPhotos .contentsLocation p {
  color: #fff;
  padding: 0.26042vw 1.04167vw;
  font-size: 1.04167vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsWrap .contentsPhotos .contentsLocation p {
    font-size: 20px;
  }
}

#listTopSection .contentsWrap .contentsPhotos .contentsLocation p.color1 {
  background-color: #886513;
}

#listTopSection .contentsWrap .contentsPhotos .contentsLocation p.color2 {
  background-color: #573900;
}

#listTopSection .contentsAnnotation {
  background-color: rgba(255, 230, 230, 0.7);
  padding: 41.66667vw 0 2.08333vw;
  margin: -39.58333vw 0 16.14583vw;
}

#listTopSection .contentsAnnotation .contentsAnnotationWrap {
  max-width: 1720px;
  margin: 0 5.20833vw;
}

#listTopSection .contentsAnnotation .contentsAnnotationWrap p {
  text-align: center;
  font-size: 0.9375vw;
}

@media screen and (min-width: 1920px) {
  #listTopSection .contentsAnnotation .contentsAnnotationWrap p {
    font-size: 18px;
  }
}

@media screen and (min-width: 1920px) {
  #listTopSection .bkBrush2 {
    top: 2700px;
    left: 25px;
    width: 1400px;
  }
  #listTopSection .contentsWrap {
    width: 1720px;
    margin: 0 auto;
  }
  #listTopSection .contentsWrap .contentsLabel {
    margin: 0 auto 40px;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsCatch {
    margin-bottom: 30px;
  }
  #listTopSection .contentsWrap .contentsLabel h2 {
    margin-bottom: 5px;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsTitleTranslation {
    margin-bottom: 20px;
  }
  #listTopSection .contentsWrap .contentsLabel .checkBox {
    margin-bottom: 20px;
  }
  #listTopSection .contentsWrap .contentsLabel .checkBox .checkImg {
    height: 50px;
  }
  #listTopSection .contentsWrap .contentsPhotos .contentsPhotosMain {
    margin-bottom: 50px;
  }
  #listTopSection .contentsWrap .contentsPhotos .contentsLocation p {
    padding: 5px 20px;
  }
  #listTopSection .contentsAnnotation {
    padding: 800px 0 40px;
    margin: -760px 0 310px;
  }
  #listTopSection .contentsAnnotation .contentsAnnotationWrap {
    width: 1720px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 1000px) {
  #listTopSection {
    overflow: hidden;
  }
  #listTopSection .bkBrush2 {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
    top: 592vw;
    left: -18.66667vw;
    width: 144vw;
    opacity: 0.5;
  }
  #listTopSection .bkBrush3 {
    display: block;
    -webkit-transform: rotate(-332deg);
            transform: rotate(-332deg);
    position: absolute;
    bottom: 165.33333vw;
    right: -8vw;
    width: 93.33333vw;
    opacity: 0.5;
    z-index: -1;
  }
  #listTopSection .contentsWrap {
    max-width: 100%;
    margin: 0 5vw;
  }
  #listTopSection .contentsWrap .contentsLabel {
    width: 100%;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsCatch {
    font-size: 5.33333vw;
    margin-bottom: 2.66667vw;
  }
  #listTopSection .contentsWrap .contentsLabel h2 {
    font-size: 10.66667vw;
    line-height: 1.5em;
    letter-spacing: .2em;
    margin-bottom: 0;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsTitleTranslation {
    font-size: 3.2vw;
    letter-spacing: .5em;
    margin-bottom: 8vw;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsTitleTranslation br {
    display: block;
  }
  #listTopSection .contentsWrap .contentsLabel .checkBox {
    line-height: 8vw;
    margin-bottom: 8vw;
  }
  #listTopSection .contentsWrap .contentsLabel .checkBox::after {
    font-size: 6.4vw;
  }
  #listTopSection .contentsWrap .contentsLabel .checkBox .checkImg {
    height: 8vw;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsDescription {
    font-size: 4.26667vw;
    text-align: left;
    line-height: 2em;
    margin-bottom: 8vw;
  }
  #listTopSection .contentsWrap .contentsLabel .contentsDescription br {
    display: none;
  }
  #listTopSection .contentsWrap .contentsPhotos {
    width: 100%;
  }
  #listTopSection .contentsWrap .contentsPhotos .contentsPhotosMain {
    margin-bottom: 8vw;
  }
  #listTopSection .contentsWrap .contentsPhotos .contentsPhotosSub {
    width: 56%;
  }
  #listTopSection .contentsWrap .contentsPhotos .contentsLocation {
    top: 0;
    left: 0;
  }
  #listTopSection .contentsWrap .contentsPhotos .contentsLocation p {
    padding: 0.53333vw 2.66667vw;
    font-size: 3.2vw;
  }
  #listTopSection .contentsAnnotation {
    padding: 88vw 0 6.66667vw;
    margin: -80vw 0 21.33333vw;
  }
  #listTopSection .contentsAnnotation .contentsAnnotationWrap {
    max-width: 100%;
    margin: 0 5.33333vw;
  }
  #listTopSection .contentsAnnotation .contentsAnnotationWrap p {
    text-align: left;
    font-size: 3.2vw;
    line-height: 1.9em;
  }
  #listTopSection .contentsAnnotation .contentsAnnotationWrap p br {
    display: none;
  }
}

.informationMiddle {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.informationMiddle .informationMiddleWrap {
  position: relative;
  max-width: 1720px;
  margin: 0 5.20833vw;
}

.informationMiddle p {
  font-size: 1.66667vw;
  line-height: 2.2em;
  letter-spacing: .2em;
  text-align: center;
}

@media screen and (min-width: 1920px) {
  .informationMiddle p {
    font-size: 32px;
  }
}

.informationMiddle.pieceTop {
  height: 57.8125vw;
  background-image: url(../images/bk_engakuji.png);
  margin: -16.14583vw 0 6.77083vw;
}

.informationMiddle.pieceTop p {
  position: absolute;
  width: 100%;
}

.informationMiddle.pieceTop p.txt1 {
  top: 14.58333vw;
}

.informationMiddle.pieceTop p.txt2 {
  top: 50vw;
}

.informationMiddle.pieceBottom {
  background-image: url(../images/bk_support.png);
  margin-bottom: 6.25vw;
}

.informationMiddle.pieceBottom .informationMiddleWrap {
  height: 66.66667vw;
}

.informationMiddle.pieceBottom .txtArea {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 46.875vw;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.8);
  padding: 1.04167vw 0;
}

@media screen and (min-width: 1920px) {
  .informationMiddle .informationMiddleWrap {
    width: 1720px;
    margin: 0 auto;
  }
  .informationMiddle.pieceTop {
    height: 1110px;
    margin: -310px 0 130px;
  }
  .informationMiddle.pieceTop p.txt1 {
    top: 280px;
  }
  .informationMiddle.pieceTop p.txt2 {
    top: 960px;
  }
  .informationMiddle.pieceBottom {
    margin-bottom: 120px;
  }
  .informationMiddle.pieceBottom .informationMiddleWrap {
    height: 1280px;
  }
  .informationMiddle.pieceBottom .txtArea {
    width: 900px;
    padding: 20px 0;
  }
}

@media screen and (max-width: 1000px) {
  .informationMiddle {
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
  }
  .informationMiddle .informationMiddleWrap {
    max-width: 100%;
    margin: 0 5vw;
  }
  .informationMiddle p {
    font-size: 4.8vw;
    letter-spacing: 0;
  }
  .informationMiddle.pieceTop {
    height: 112vw;
    margin: 0 0 21.33333vw 0;
  }
  .informationMiddle.pieceTop p {
    position: relative;
    width: 100%;
  }
  .informationMiddle.pieceTop p.txt1 {
    top: auto;
    margin-bottom: 2.66667vw;
  }
  .informationMiddle.pieceTop p.txt2 {
    top: auto;
  }
  .informationMiddle.pieceBottom {
    margin-bottom: 32vw;
  }
  .informationMiddle.pieceBottom .informationMiddleWrap {
    height: 117.33333vw;
  }
  .informationMiddle.pieceBottom .txtArea {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    background: none;
    padding: 0;
  }
  .informationMiddle.pieceBottom .txtArea p {
    text-align: left;
  }
  .informationMiddle.pieceBottom .txtArea p br {
    display: none;
  }
}

#listSection {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 89.58333vw;
  max-width: 1720px;
  padding: 0 9.63542vw;
  margin: 0 auto;
}

#listSection .sp {
  display: none;
}

#listSection .bkBrush3 {
  display: block;
  position: absolute;
  top: -13.54167vw;
  right: 1.82292vw;
  width: 41.92708vw;
  z-index: -1;
}

#listSection article {
  width: 33.3%;
  padding: 0 1.5625vw 4.16667vw;
}

#listSection article .contentsLabel {
  cursor: pointer;
}

#listSection .contentsCheckbox {
  display: none;
}

#listSection .contentsPhotoArea {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
}

#listSection .contentsPhotoArea .contentsPhoto {
  width: 100%;
  height: auto;
}

#listSection .contentsPhotoArea .contentsPhotoBand {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2.86458vw;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.5);
}

#listSection .contentsPhotoArea .contentsPhotoBand::after {
  content: '資料請求';
  color: #fff;
  font-size: 1.61458vw;
  line-height: 2.86458vw;
}

@media screen and (min-width: 1920px) {
  #listSection .contentsPhotoArea .contentsPhotoBand::after {
    font-size: 31px;
  }
}

#listSection .contentsPhotoArea .contentsPhotoBand .checkImg {
  vertical-align: top;
  height: 2.1875vw;
  margin: 0.3125vw 0 0;
}

#listSection .contentsTxt {
  text-align: center;
}

#listSection .contentsTxt .contentsCatch {
  font-family: "Sawarabi Mincho", 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
  font-size: 1.04167vw;
  margin-bottom: 0.78125vw;
}

@media screen and (min-width: 1920px) {
  #listSection .contentsTxt .contentsCatch {
    font-size: 20px;
  }
}

#listSection .contentsTxt .contentsTitle {
  font-weight: normal;
}

#listSection .contentsTxt .contentsTitle .contentsLocation {
  display: inline-block;
  line-height: 2.29167vw;
  vertical-align: top;
}

#listSection .contentsTxt .contentsTitle .contentsLocation p {
  font-size: 0.83333vw;
  line-height: 2.08333vw;
  color: #fff;
  margin: 0.10417vw 0 0.52083vw;
  padding: 0 0.52083vw;
}

@media screen and (min-width: 1920px) {
  #listSection .contentsTxt .contentsTitle .contentsLocation p {
    font-size: 16px;
  }
}

#listSection .contentsTxt .contentsTitle .contentsLocation p.color1 {
  background-color: #886513;
}

#listSection .contentsTxt .contentsTitle .contentsLocation p.color2 {
  background-color: #573900;
}

#listSection .contentsTxt .contentsTitle h2 {
  display: block;
  font-family: "Sawarabi Mincho", 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
  font-size: 2.08333vw;
  line-height: 2.1875vw;
}

@media screen and (min-width: 1920px) {
  #listSection .contentsTxt .contentsTitle h2 {
    font-size: 40px;
  }
}

#listSection .contentsTxt .contentsTitle .contentsTitleTranslation {
  display: block;
  font-size: 0.67708vw;
  font-weight: normal;
  line-height: 2.6em;
  letter-spacing: .5em;
}

@media screen and (min-width: 1920px) {
  #listSection .contentsTxt .contentsTitle .contentsTitleTranslation {
    font-size: 13px;
  }
}

#listSection .contentsTxt .contentsDescription {
  font-size: 0.9375vw;
  padding: 0 0.26042vw;
}

@media screen and (min-width: 1920px) {
  #listSection .contentsTxt .contentsDescription {
    font-size: 18px;
  }
}

@media screen and (min-width: 1920px) {
  #listSection {
    width: 1720px;
    padding: 0 185px;
  }
  #listSection .bkBrush3 {
    top: -260px;
    right: 35px;
    width: 805px;
  }
  #listSection article {
    padding: 0 30px 80px;
  }
  #listSection .contentsPhotoArea .contentsPhotoBand {
    height: 55px;
  }
  #listSection .contentsPhotoArea .contentsPhotoBand::after {
    line-height: 55px;
  }
  #listSection .contentsPhotoArea .contentsPhotoBand .checkImg {
    height: 42px;
    margin: 6px 0 0;
  }
  #listSection .contentsTxt .contentsCatch {
    margin-bottom: 15px;
  }
  #listSection .contentsTxt .contentsTitle .contentsLocation {
    line-height: 44px;
  }
  #listSection .contentsTxt .contentsTitle .contentsLocation p {
    line-height: 40px;
    margin: 2px 0 10px;
    padding: 0 10px;
  }
  #listSection .contentsTxt .contentsTitle h2 {
    line-height: 44px;
  }
  #listSection .contentsTxt .contentsDescription {
    padding: 0 5px;
  }
}

@media screen and (max-width: 1000px) {
  #listSection {
    width: 100%;
    padding: 0 4.8vw;
  }
  #listSection .pc {
    display: none;
  }
  #listSection .sp {
    display: block;
  }
  #listSection .bkBrush3 {
    display: none;
  }
  #listSection article {
    width: 100%;
    padding-bottom: 8vw;
    margin: 0 0 8vw;
    border-bottom: 1px solid #ccc;
  }
  #listSection article:nth-last-of-type(1) {
    border: none;
  }
  #listSection .contentsTitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-family: "Sawarabi Mincho", 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
    font-size: 6.4vw;
    line-height: 1.1;
    margin-bottom: 4vw;
  }
  #listSection .contentsTitle .checkImg {
    height: 7.46667vw;
    margin-left: -1.06667vw;
  }
  #listSection .contentsArea .contentsPhotoArea {
    width: 50%;
    float: left;
    margin: 0;
  }
  #listSection .contentsArea .contentsPhotoArea .contentsLocation {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    font-size: 3.2vw;
    padding: 0 2.66667vw;
  }
  #listSection .contentsArea .contentsPhotoArea .contentsLocation.color1 {
    background-color: #886513;
  }
  #listSection .contentsArea .contentsPhotoArea .contentsLocation.color2 {
    background-color: #573900;
  }
  #listSection .contentsArea .contentsTxt {
    width: 50%;
    float: right;
    text-align: left;
  }
  #listSection .contentsArea .contentsTxt .contentsCatch {
    font-size: 3.73333vw;
    padding: 0 0 0 4vw;
    margin-bottom: 4vw;
  }
  #listSection .contentsArea .contentsTxt .contentsDescription {
    font-size: 3.2vw;
    padding: 0 0 0 4vw;
  }
}

#checkNum {
  display: none;
}

.form {
  overflow: hidden;
  position: relative;
  background: url(../images/contents_bg.jpg);
}

.form fieldset {
  width: 800px;
  margin: 60px auto 0 auto;
}

.form label {
  display: block;
  font-size: 18px;
  margin-bottom: 30px;
}

.form label span {
  color: #e43c38;
  font-size: 13px;
  font-weight: 400;
  position: absolute;
  left: 70px;
}

.form label span.caution {
  line-height: 1.2;
  margin-top: -3px;
}

.form input {
  border: 1px solid #9a9a9a;
  background: #fff;
  height: 50px;
  padding: 0 10px;
  width: 334px;
}

.form textarea {
  border: 1px solid #9a9a9a;
  background: #fff;
  height: 50px;
  padding: 0 10px;
  width: 510px;
}

.form .searchAddress {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 5px;
  width: 170px;
  cursor: pointer;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+1,bcbcbc+90 */
  background: white;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1%, white), color-stop(90%, #bcbcbc));
  background: linear-gradient(to bottom, white 1%, #bcbcbc 90%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#bcbcbc',GradientType=0 );
  /* IE6-9 */
}

.form .area_contact.error input[type="text"], .form .area_contact.error textarea, .form .area_contact.error select, .form .area_contact.error .check_radio {
  background-color: #ffc0cb !important;
}

.form .contact_error {
  font-size: 16px;
  line-height: 24px;
  color: #e43c38;
  margin-left: 245px;
}

.form .formTitle {
  font-size: 30px;
  text-align: center;
  position: relative;
  margin-top: 60px;
}

.form .formArea {
  max-width: 770px;
  margin: 0 auto;
}

.form .formAttentionArea {
  margin-bottom: 30px;
  text-align: center;
  font-size: 18px;
}

.form .formItem {
  width: 245px;
  position: relative;
  float: left;
  margin-top: 14px;
}

.form .formComment textarea {
  height: 140px;
}

.form .btn img {
  max-width: 300px;
}

.form #formEnd {
  text-align: center;
  width: 80%;
  margin: 0 10% 20px 10%;
}

.form #btn_Check {
  margin: 0 auto;
  cursor: pointer;
}

.form .attention {
  white-space: nowrap;
  max-width: 770px;
  line-height: 100%;
  margin: 20px auto 30px auto;
}

.form .attention small {
  font-size: 12px;
}

.form .lineBanner {
  margin-top: 20px;
  text-align: center;
  cursor: pointer;
}

.form .lineBanner img {
  max-width: 100%;
}

.form .lineBanner img.sp {
  display: none;
}

@media screen and (max-width: 1000px) {
  .form {
    width: 100%;
  }
  .form fieldset {
    width: 100%;
    margin-top: 30px;
    padding: 0 10px;
  }
  .form label {
    width: 100%;
    margin-bottom: 20px;
  }
  .form label input {
    height: 44px;
    width: 100%;
  }
  .form label textarea {
    height: 88px;
    width: 100%;
  }
  .form label span {
    position: relative;
    left: auto;
    margin-left: 1em;
  }
  .form label span br {
    display: none;
  }
  .form label span.caution {
    line-height: inherit;
    margin-top: 0;
  }
  .form .contact_error {
    margin-left: 0;
  }
  .form .zip {
    width: 48%;
  }
  .form .searchAddress {
    width: 48%;
  }
  .form .formTitle {
    font-size: 20px;
  }
  .form .formItem {
    width: 100%;
    margin: 0  0 5px 0;
    float: none;
  }
  .form #btn_Check img {
    max-width: 100%;
  }
  .form .attention {
    white-space: inherit;
    padding: 0 10px;
  }
  .form .lineBanner img.pc {
    display: none;
  }
  .form .lineBanner img.sp {
    display: block;
  }
}

#footer {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#40403f+0,252324+100 */
  background: #40403f;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-gradient(linear, left top, left bottom, from(#40403f), to(#252324));
  background: linear-gradient(to bottom, #40403f 0%, #252324 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#40403f', endColorstr='#252324',GradientType=0 );
  /* IE6-9 */
  height: 126px;
  z-index: 30;
  color: #fff;
  font-size: 14px;
  margin-bottom: -2px;
}

#footer img {
  position: static;
  vertical-align: text-bottom;
}

#footer .footerBox {
  max-width: 1720px;
  margin: 0 auto;
}

#footer .logo {
  float: left;
  width: 50%;
  text-align: center;
  margin-top: 20px;
}

#footer .logo small {
  font-size: 14px;
  white-space: nowrap;
}

#footer .information {
  float: right;
  width: 50%;
  margin-top: 20px;
}

#footer .invitation {
  color: #fff;
  font-size: 1vw;
  line-height: 120%;
}

#footer .telBox {
  float: left;
}

#footer .telBox img {
  margin-top: 10px;
}

#footer .telBox address {
  display: inline;
  font-style: normal;
  font-size: 30px;
  font-weight: 700;
  margin-left: 10px;
  vertical-align: top;
}

#footer .telTxt {
  margin: 10px 0 0 6px;
  float: left;
  line-height: 110%;
  text-align: left;
  font-size: 14px;
  color: #fff;
}

#footer .address {
  text-align: left;
  font-size: 14px;
  float: left;
  width: 100%;
}

@media screen and (max-width: 1000px) {
  #footer {
    height: auto;
    padding-bottom: 90px;
  }
  #footer .telBox {
    text-align: center;
    width: 100%;
    margin-top: 10px;
    float: none;
  }
  #footer .telBox img {
    width: 25px;
  }
  #footer .telBox address {
    font-size: 4vw;
  }
  #footer .information {
    float: none;
    width: 100%;
    margin: 0;
  }
  #footer .footerBox {
    width: 100%;
    padding: 0 10px;
  }
  #footer .logo {
    float: none;
    width: 100%;
    margin: 0 0 10px 0;
    padding-top: 10px;
    line-height: 100%;
  }
  #footer .logo small {
    font-size: 12px;
    margin-bottom: 4px;
  }
  #footer .logo img {
    width: 80%;
    max-width: 244px;
  }
  #footer .invitation {
    font-size: 13px;
    text-align: center;
  }
  #footer .telTxt {
    float: none;
    text-align: center;
    margin: 0;
  }
  #footer .telTxt br {
    display: none;
  }
  #footer .address {
    width: 100%;
    float: none;
    text-align: center;
    font-size: 12px;
  }
  #footer .telBox {
    margin-top: 14px;
  }
  #footer .telBox img {
    position: relative;
    top: 5px;
    width: 32px;
  }
  #footer .telBox address {
    font-size: 35px;
    vertical-align: middle;
  }
}
