@charset "UTF-8";
/* common */
* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }
html {
  font-size: 62.5%;
  height: 100%; 
}
body {
  font-size: 1.6rem;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "verdana", sans-serif;
  color: #333333;
  height: 100%;
  background: url(../img/bg_main.png)repeat-y center / 100%;
}
a {
  color: #333333;
  cursor: pointer;
  text-decoration: none;
  opacity: 1;
  transition: 0.3s;
}
a:hover {
  opacity: 0.7;
}
img {
  width: 100%;
}
.wrap {
  width: 100%;
  margin: 0 auto;
  color: #281802;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  position: relative;
  background-image: url(../img/bg_sec01_wave_01.png), url(../img/bg_sec01_wave_02.png);
  background-repeat: no-repeat, no-repeat;
  background-position: top left -10%, top right;
  background-size: 39%, 53%;
  z-index: 0;
}
.wrap main {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
.pc {
  display: block;
}
.sp {
  display: none;
}

/* fadein */
.fadein {
  opacity: 0;
  transform: translateY(30px);
  transition: all 1s ease;
}
.fadein.show {
  opacity: 1;
  transform: translateY(0);
}

/* header */
header {
  position: fixed;
  width: 100%;
  margin: 0 auto;
  background-image: url(../img/bg_sec01_wave_01.png), url(../img/bg_sec01_wave_02.png),url(../img/bg_main.png);
  background-repeat: no-repeat, no-repeat, repeat-y;
  background-position: top left -10%, top right, center;
  background-size: 39%, 53%, 100%;
  z-index: 20;
}
.header_flex {
  position: relative;
  width: 95%;
  max-width: 1380px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  padding: min(25px,2%) 0;
  border-left: 1px solid transparent;
}
.header_flex::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #bbb0a3;
  top: 0;
  left: 30%;
  z-index: -1;
}
.lang_box {
  position: relative;
  width: 16.2%;
  color: white;
  text-align: center;
  z-index: 5;
}
.lang_box li {
  cursor: pointer;
}
.lang_box .lang_current img,
.lang_list li img {
  opacity: 1;
  transition: 0.3s;
}
.lang_box .lang_current:hover img,
.lang_list li:hover img {
  opacity: 0.7;
}
.lang_box .lang_current {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: url(../img/bg_lang.png)no-repeat center / contain;
  z-index: 2;
  aspect-ratio: 224 / 57;
}
.lang_box .lang_current .lang_now {
  width: 40%;
}
.lang_select {
  width: 53%;
}
.lang_box .lang_current::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 14%;
  transform: translateY(-50%);
  width: 12%;
  padding-top: 12%;
  background: url(../img/icon_globe.png)no-repeat center / contain;
}
.lang_box.is-open .lang_current::after {
  transform: translateY(-50%) rotate(180deg);
}
.lang_box .lang_current::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 17%;
  transform: translateY(-50%);
  width: 7%;
  padding-top: 7%;
  background: url(../img/icon_arrow_down.png)no-repeat center / contain;
  transition: transform 0.3s ease;
}
.lang_list_wrap {
  position: relative;
  width: 100%;
  z-index: 1;
}
.lang_list {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 90%;
  transform: translateX(-50%);
  border-top: none;
  display: none;
  background: url(../img/bg_lang_select.png)repeat-y center / 100%;
  box-shadow: 0px 3px 15px 0px rgba(191, 187, 181, 0.33);
  border-radius: 5px;
  z-index: 1;
  padding: 17% 0 8%;
  margin-top: -10%;
}
.lang_list li {
  padding: 5% 0;
}
.header_nav {
  width: 65%;
  display: flex;
  align-items: start;
  justify-content: center;
}
.header_nav li {
  position: relative;
  display: block;
  margin: 0 2%;
  padding-bottom: 0.5%;
  text-align: center;
  line-height: 1.3;
  font-weight: 700;
  font-size: clamp(9px,1.1vw,16px);
}
.header_nav li::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 0;
  background-color: #281802;
  transition: width 0.3s ease;
}
.header_nav li:hover::after {
  width: 100%;
}

/* hamburger menu */
.hamburger {
  display: none;
  padding-block: 0;
  padding-inline: 0;
  margin: 0;
  background-color: transparent;
  border: none;
}
.sp_header_nav {
  display: none;
}

/* main */
.main_wrap {
  position: relative;
  width: 95%;
  max-width: 1380px;
  margin: 0 auto -1%;
  padding-top: min(130px,11%);
  border-left: 1px solid #281802;
}
._en .main_wrap {
  padding-top: min(160px,11%);
}
._fr .main_wrap {
  padding-top: min(170px,13%);
}
.main_wrap::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 20%;
  background-color: #bbb0a3;
  top: 0;
  left: 30%;
  z-index: -1;
}

/* anchor links */
#vr, #overview, #reception, #tatamiroom, #garden, #record {
  padding-top: 200px !important;
  margin-top: -200px !important;
}

/* button */
._btn {
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: min(20px,1.5%);
  text-align: center;
}
._btn._questionnaire {
  width: 35%;
  color: white;
  font-size: clamp(14px,1.8vw,20px);
  font-weight: 600;
  background-color: #9b702a;
}

/* mv */
.mv_wrap {
  width: 100%;
  position: relative;
}
.mv_wrap::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 1px;
  background-color: #bbb0a3;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.main_wrap h1 {
  display: flex;
  width: 100%;
  align-items: end;
  font-size: clamp(28px,3.6vw,50px);
}
.main_wrap h1 span {
  font-size: clamp(17px,2.1vw,22px);
  margin-left: 5%;
}
._chs .main_wrap h1 span,
._cht .main_wrap h1 span,
._ko .main_wrap h1 span {
  font-size: clamp(20px,2.5vw,30px);
  margin-left: 15%;
}
.main_wrap .h1_ttl_wrap {
  position: relative;
  width: 100%;
  display: flex;
  align-items: end;
  padding: 3%;
}
.main_wrap .h1_ttl_wrap::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 1px;
  background-color: #bbb0a3;
  top: 0;
  left: 0;
  z-index: -1;
}
._jp .main_wrap .h1_ttl {
  width: 24.6%;
  max-width: 318px;
  display: block;
  margin-right: 10%;
}
._jp .main_wrap .h1_subtxt {
  width: 13.6%;
  max-width: 169px;
}
.mv {
  margin-bottom: 6%;
}
.mv_lead {
  text-align: center;
  font-size: clamp(34px,4.3vw,47px);
  font-weight: 500;
  margin: 0 auto;
  padding-bottom: 6%;
  line-height: 1.4;
  letter-spacing: 0.1rem;
}
.mv_lead span {
  font-size: clamp(17px,2.1vw,22px);
}

/* scroll */
.scroll_wrap {
  position: absolute;
  bottom: 36%;
  right: 5%;
  width: 3.7%;
  max-width: 45px;
  animation: scrollLine 2s ease-in-out infinite;
}
.scroll_wrap p {
  position: relative;
}
.scroll_wrap p::after {
  content: "";
  position: absolute;
  top: 170%;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  padding-top: min(140px,315%);
  border-left: 1px solid #afa99f;
}
@keyframes scrollLine {
  0% {
    transform: translate(-50%, 0);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    transform: translate(-50%, 20px);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, 40px);
    opacity: 0;
  }
}

/* sec01 */
.sec01 {
  position: relative;
  width: 90%;
  max-width: 1380px;
  margin: 0 auto;
  padding: 4% 0 9%;
}
.sec01::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  padding-top: 10%;
  border-left: 1px solid #281802;
  transform: translateX(-50%);
  z-index: -1;
}
.sec01_txt {
  width: 70%;
  padding: 10% 0;
  margin: 0 auto 5%;
  background-image: url(../img/sec01_txt_deco_01.png), url(../img/sec01_txt_deco_02.png);
  background-repeat: no-repeat, no-repeat;
  background-size: contain, contain;
  background-position: top center, bottom center;
  text-align: center;
  font-size: clamp(28px,3.7vw,42px);
  line-height: 1.6;
  font-weight: 700;
}
.sec01_txt span {
  font-size: clamp(18px,2.3vw,27px);
}
._jp .sec01_txt {
  padding: 10% 20%;
}
._jp .sec01_txt img {
  max-width: 369px;
}
._fr .sec01_txt span {
  font-size: clamp(15px,1.9vw,25px);
}
.sec01_ttl {
  font-size: clamp(33px,4.2vw,52px);
  font-weight: 500;
  width: 100%;
  text-align: center;
  margin: 0 auto 3%;
  letter-spacing: 0.1rem;
}
.sec01_ttl span {
  font-size: clamp(10px,1.3vw,18px);
}
.sec01_ttl img {
  max-width: 236px;
}
.vr_img {
  width: 80%;
  margin: 0 auto;
}

/* sec02 */
.sec02 {
  position: relative;
  color: #f3ebde;
  background-image: url(../img/bg_sec02_wave.png) ,url(../img/bg_sec02.png);
  background-position: center, center;
  background-repeat: no-repeat, repeat-y;
  background-size: cover, 100%;
  border-radius: min(3.5vw,50px);
  padding: min(120px,9%) 0 min(50px,5%);
  overflow: hidden;
  margin-bottom: min(50px, 5%);
}
.sec02::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  padding-top: min(51px,3%);
  border-left: 1px solid #fef8ee;
  transform: translateX(-50%);
  z-index: 1;
}
.sec02_list {
  width: 85%;
  max-width: 1264px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 6%;
}
.sec02_list li {
  width: 100%;
  margin-bottom: 10%;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}
.sec02_list li:nth-of-type(odd) {
  padding-right: 3%;
}
.sec02_list li:nth-of-type(even) {
  padding-left: 3%;
}
.sec02_list li._1column {
  grid-column: 1 / -1;
  justify-self: center;
  width: 50%;
}
.sec02_list li ._img {
  margin-bottom: 20%;
}
.sec02_list_ttl {
  position: relative;
  font-size: clamp(16px,2vw,30px);
  font-weight: 300;
  margin-bottom: 8%;
  padding-bottom: 8%;
  padding-left: calc(min(52px,10%) + 3%);
  text-indent: calc((min(52px,10%) + 3%) * -1);
  line-height: 1.4;
}
.sec02_list li .sec02_list_ttl::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 50vw;
  height: 1px;
  background-color: white;
}
.sec02_list li:nth-of-type(odd) .sec02_list_ttl::after {
  right: 0;
}
.sec02_list li:nth-of-type(even) .sec02_list_ttl::after {
  left: 0;
}
.sec02_list li .sec02_list_ttl._1column::after {
  width: 100%;
}
.sec02_list_ttl img {
  width: 10%;
  margin-right: 3%;
  max-width: 52px;
}
.sec02_list_txt {
  font-size: clamp(7.8px,1vw,15px);
  font-weight: 300;
  line-height: 2.5;
  margin-bottom: 5%;
}
.sec02 iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
}

.questionnaire_wrap {
  width: 95%;
  max-width: 1380px;
  margin: 0 auto;
}

/* select page */
.wrap._select {
  width: 100%;
}
.select_h1 {
  width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid #b5ab9a;
}
.select_h1 h1 {
  width: 95%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: end;
  margin: 0 auto;
  padding-bottom: min(2.5%, 30px);
  max-width: 1380px;
  height: 40vh;
  border-left: 1px solid #281802;
  border-right: 1px solid #b5ab9a;
}
.select_h1 h1 .h1_ttl {
  width: 24.6%;
  max-width: 318px;
  display: block;
  margin: 0 auto 15px;
}
.select_h1 h1 .h1_subtxt {
  width: 13.6%;
  max-width: 169px;
  display: block;
  margin: 0 auto;
}
.select_nav_wrap {
  width: 95%;
  max-width: 1380px;
  height: 60vh;
  position: relative;
  display: flex;
  align-items: start;
  justify-content: center;
  border-left: 1px solid #281802;
  border-right: 1px solid #b5ab9a;
  margin: 0 auto;
  padding-top: min(2.5%, 30px);
}
.select_nav_wrap nav {
  position: relative;
}
.select_wrap {
  width: 80%;
  margin:  0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 5rem;
}
.select_wrap li {
  width: 30%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.select_wrap li a {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/bg_lang_off.png) no-repeat center / contain;
  z-index: 2;
  aspect-ratio: 530 / 159;
  opacity: 1;
}
.select_wrap li a:hover,
.select_wrap li a:active {
  background: url(../img/bg_lang.png) no-repeat center / contain;
}

.img-hover {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
  transition: opacity 0.3s;
  transform: translate(-50%, -50%);
}
.select_wrap li a:hover .img-hover {
  opacity: 1;
}
.select_wrap li a:hover .img-default {
  opacity: 0;
}
.click_wrap {
  position: absolute;
  top: 390px;
  left: 50%;
  transform: translateY(-50%);
  width: 3.7%;
  max-width: 45px;
  transition: 0.4s ease;
}
@media (max-height: 770px) {
  .click_wrap {
    left: auto;
    right: 5%;
    top: auto;
    bottom: 10%;
  }
}
.click_wrap p {
  position: relative;
  animation: singleKnock 2.5s ease-in-out infinite;
}
.click_wrap p::before {
  content: "";
  position: absolute;
  bottom: 160%;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  padding-top: min(140px,17vh);
  border-left: 1px solid #7e7261;
}
@keyframes singleKnock {
  0%   { transform: translate(-50%, -50%); opacity: 1; }
  15%  { transform: translate(-50%, -10%); opacity: 0.9; }
  30%  { transform: translate(-50%, -50%); opacity: 1; }
  100% { transform: translate(-50%, -50%); opacity: 1; }
}

/* footer */
footer {
  width: 90%;
  max-width: 1380px;
  margin: 0 auto;
  padding: min(50px,5%) 0;
  line-height: 2;
  font-weight: 400;
}
footer p {
  font-size: clamp(7px,0.9vw,12px);
  text-align: center;
}
.bnr_bunkacho {
  width: 17.2%;
  max-width: 214px;
  margin: 0 auto;
}

@media screen and (max-width:768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }

  .wrap {
    background-image: url(../img/s_bg_sec01_wave_01.png), url(../img/s_bg_sec01_wave_02.png);
    background-repeat: no-repeat, no-repeat;
    background-position: top left -38%, top right;
    background-size: 80%, 53%;
  }

  /* header */
  header {
    background-image: url(../img/s_bg_sec01_wave_01.png), url(../img/s_bg_sec01_wave_02.png), url(../img/bg_main.png);
    background-repeat: no-repeat, no-repeat, repeat-y;
    background-position: top left -38%, top right, center;
    background-size: 80%, 53%, 100%;
  }
  .header_flex {
    width: 90%;
    padding: 5% 0;
  }
  .header_flex::after {
    left: 82%;
  }
  .header_nav {
    display: none;
  }
  .lang_box {
    width: 43%;
  }
  .lang_box .lang_current:hover img,
  .lang_list li:hover img {
    opacity: 1;
  }
  .lang_box .lang_current .lang_now {
    width: 43%;
  }
  .lang_select {
    width: 60%;
  }
  .lang_list {
    padding: 17% 0 10%;
  }
  .lang_list li {
    padding: 6% 0;
  }
  .hamburger {
    width: 10%;
    position: relative;
    display: block;
    z-index: 1000;
  }
  .hamburger .icon-close {
    display: none;
  }
  .hamburger.is-open .icon-open {
    display: none;
  }
  .hamburger.is-open .icon-close {
    display: block;
  }
  .sp_header_nav {
    display: flex;
    flex-direction: column;
    align-items: end;
    position: fixed;
    justify-content: center;
    top: 0;
    right: 0;
    width: auto;
    max-width: 100%;
    height: 100vh;
    padding: 23% 5% 13% 35%;
    z-index: 999;
    background: url(../img/bg_menu.png) no-repeat top right / 100% 100%;
    aspect-ratio: 750 / 1334;

    opacity: 0;
    transform: translateX(30px);
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;

    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }
  .sp_header_nav.is-open {
    opacity: 1;
    transform: translateX(0);
    pointer-events: auto;
  }
  .sp_header_nav li {
    width: 100%;
    border-bottom: 1px solid #888888;
    padding-bottom: 5%;
    margin-bottom: 18%;
  }
  ._en .sp_header_nav li {
    margin-bottom: 14%;
  }
  ._fr .sp_header_nav li {
    margin-bottom: 12%;
  }
  .sp_header_nav a {
    display: block;
    width: 100%;
    color: #f3ebde;
    line-height: 1.2;
    font-size: 3.7vw;
    padding-left: 7.6vw;
    text-indent: -7.6vw;
  }
  ._jp .sp_header_nav a {
    padding-left: 0;
    text-indent: 0;
  }
  ._en .sp_header_nav a {
    font-size: 4vw;
    padding-left: 7.7vw;
    text-indent: -7.7vw;
  }
  ._cht .sp_header_nav a {
    font-size: 3.5vw;
    padding-left: 7.7vw;
    text-indent: -7.7vw;
  }
  .sp_header_nav a span {
    font-size: 70%;
    margin-right: 10%;
  }
  .sp_header_nav li img {
    display: block;
  }
  .sp_header_nav ._00 {
    width: 75%;
  }
  .sp_header_nav ._00 img {
    width: 32%;
  }
  .sp_header_nav ._01 {
    width: 80%;
  }
  .sp_header_nav ._01 img {
    width: 55%;
  }
  .sp_header_nav ._02 {
    width: 75%;
  }
  .sp_header_nav ._02 img {
    width: 98%;
  }
  .sp_header_nav ._03 {
    width: 75%;
  }
  .sp_header_nav ._03 img {
    width: 71%;
  }
  .sp_header_nav ._04 {
    width: 90%;
  }
  .sp_header_nav ._05 {
    width: 100%;
  }
  .sp_header_nav ._05 img {
    width: 82%;
  }

  /* anchor links */
  #vr, #overview, #reception, #tatamiroom, #garden, #record {
    padding-top: 32vw !important;
    margin-top: -32vw !important;
  }

  /* button */
  ._btn._questionnaire {
    width: 80%;
    padding: 5% 1%;
    font-size: 5vw;
  }

  /* main */
  .main_wrap {
    width: 90%;
    padding: 24% 0 0;
    margin: 0 auto 12%;
  }
  ._en .main_wrap {
    padding: 23% 0 0;
  }
  ._fr .main_wrap {
    padding: 23% 0 0;
  }
  .main_wrap::after {
    left: 82%;
  }
  .main_wrap h1 {
    line-height: 2;
    flex-direction: column;
    align-items: unset;
    padding-left: 5%;
    font-size: 7.2vw;
  }
  .main_wrap h1 span {
    font-size: 4vw;
  }
  ._chs .main_wrap h1 span,
  ._cht .main_wrap h1 span,
  ._ko .main_wrap h1 span {
    margin-left: 0;
  }
  .main_wrap .h1_ttl_wrap {
    flex-direction: column;
    align-items: start;
    padding: 0 0 4%;
  }
  .main_wrap .h1_ttl_wrap::before {
    top: auto;
    bottom: 51%;
  }
  ._en .main_wrap .h1_ttl_wrap::before {
    bottom: 46%;
  }
  ._jp .main_wrap .h1_ttl {
    width: 55%;
    margin-bottom: 10%;
    max-width: none;
  }
  ._jp .main_wrap .h1_subtxt {
    width: 34%;
    max-width: none;
  }
  .main_wrap h1 span {
    margin-left: 0;
  }

  /* mv */
  .mv {
    margin-bottom: 25%;
  }
  .mv_lead {
    width: 100%;
    padding-bottom: 9%;
    font-size: 7vw;
  }
  .mv_lead span {
    font-size: 3.2vw;
  }

  /* scroll */
  .scroll_wrap {
    width: 10%;
    right: auto;
    left: 50%;
    bottom: 31%;
  }
  .scroll_wrap p::after {
    padding-top: 310%;
    top: 120%;
  }

  /* sec01 */
  .sec01 {
    width: 100%;
    max-width: none;
    padding: 10% 0 0;
  }
  .sec01::after {
    bottom: -8%;
    padding-top: 30%;
  }
  .sec01_ttl {
    text-align: left;
    width: 100%;
    margin-left: 5%;
    margin-bottom: 5%;
    font-size: 13.2vw;
  }
  .sec01_ttl span {
    font-size: 4vw;
  }
  .sec01_txt {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: 120%;
    padding: 26% 10%;
    background-image: url(../img/s_sec01_txt_deco_01.png), url(../img/s_sec01_txt_deco_02.png);
    margin: 0 auto 10%;
    font-size: 5.2vw;
  }
  ._jp .sec01_txt {
    padding: 26% 25%;
  }
  .vr_img {
    width: 100%;
  }
  .sec01_txt span,
  ._fr .sec01_txt span {
    font-size: 3.5vw;
    font-weight: 700;
  }

  /* sec02 */
  .sec02 {
    border-radius: 8vw;
    background-image: url(../img/s_bg_sec02_wave.png) ,url(../img/s_bg_sec02.jpg);
    background-position: center, center;
    padding: 18% 0 0;
    margin-bottom: 10%;
  }
  .sec02::before {
    padding-top: 6%;
  }
  .sec02_list {
    display: block;
    width: 90%;
  }
  .sec02_list li {
    display: block;
    width: 100%;
  }
  .sec02_list li ._img {
    margin-bottom: 10%;
  }
  .sec02_list li:nth-of-type(odd) {
    padding-right: 0;
  }
  .sec02_list li:nth-of-type(even) {
    padding-left: 0;
  }
  .sec02_list li._1column {
    width: 100%;
  }
  .sec02_list li:nth-of-type(odd) .sec02_list_ttl::after,
  .sec02_list li .sec02_list_ttl._1column::after {
    right: auto;
    left: 0;
    width: 100vw;
  }
  .sec02_list li:nth-of-type(even) .sec02_list_ttl::after {
    right: 0;
    left: auto;
    width: 100vw;
  }
  .sec02_list_ttl {
    font-size: 6.3vw;
    margin-bottom: 5%;
    padding-bottom: 5%;
    padding-left: 11.9vw;
    text-indent: -11.9vw;
  }
  .sec02_list_ttl img {
    margin-right: 5%;
  }
  .sec02_list_txt {
    font-size: 3.6vw;
  }

  .questionnaire_wrap {
    max-width: none;
    margin-bottom: 2%;
  }

  /* select page */
  .wrap._select {
    height: 100%;
    overflow: hidden;
    background: url(../img/s_bg_select.png) no-repeat center / cover;
  }
  .select_h1 h1 {
    width: 90%;
    height: 23vh;
    padding-bottom: 8vw;
  }
  .select_h1 h1 .h1_ttl {
    width: 55%;
    max-width: none;
    margin: 0 auto 3vw;
  }
  .select_h1 h1 .h1_subtxt {
    width: 34%;
    max-width: none;
  }
  .select_nav_wrap {
    width: 90%;
    height: 77vh;
    padding-top: 10vw;
  }
  .select_wrap {
    row-gap: 2.5rem;
  }
  .select_wrap li {
    width: 47%;
  }
  .click_wrap {
    right: auto;
    left: 50%;
    bottom: -93%;
    top: auto;
    width: 10%;
  }
  .click_wrap p::before {
    padding-top: 240%;
  }
  

  /* footer */
  footer {
    padding: 8% 0;
  }
  footer p {
    font-size: 4vw;
    line-height: 1.6;
    margin-bottom: 4%;
  }
  footer .small {
    font-size: 3.5vw;
    margin-bottom: 0;
  }
  .bnr_bunkacho {
    width: 44%;
    margin-bottom: 3%;
    max-width: none;
  }
}