/*---------------------------
loading animation
-----------------------------*/
.loader-container{
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  z-index: 10000;
  /* z-index: 9998; */
  background: #000;
  transition: 0.5s;
}
.loader-container.loaded{
  animation: loaderAnime 0.5s forwards;
  pointer-events: none;
}
@keyframes loaderAnime{
  0%{
    display: block;
    opacity: 1;
  }
  100%{
    display: none;
    opacity: 0;
  }
}
.loading-text{
  margin-top: 20px;
  font-size: 24px;
  color: #fff;
}
/* main,
header,
footer{
  display: none;
} */
main.loaded,
header.loaded,
footer.loaded{
  display: block;
}

.custom-order_bnr_conte{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 10000;
  opacity: 1;
  transition: 0.8s;
}
.custom-order_bnr_conte.hidden{
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: 0.8s;
}
.custom-order_bnr_wrap{
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 500px;
  max-height: 85vh;
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.custom-order_bnr_wrap::-webkit-scrollbar {
  display: none;
}
.custom-order_bnr{
  position: relative;
  width: 500px;
  max-height: 85vh;
}
.custom-order_close{
  position: absolute;
  top: 0;
  right: 0;
  width: 32px;
}

#mv{
  position: relative;
  width: 100%;
  /* height: 970px; */
  margin-top: 86px;
  overflow: hidden;
}
#mv .slide_conte.slide_01{
  position: relative;
  background: #FFF;
}
#mv .slide_conte.slide_01{ z-index: 5;}
#mv .slide_conte.slide_02{ z-index: 4;}
#mv .slide_conte.slide_03{ z-index: 3;}

#mv .slide_conte.slide_01.show{ z-index: 5;}
#mv .slide_conte.slide_02.show{ z-index: 6;}
#mv .slide_conte.slide_03.show{ z-index: 7;}

#mv .slide_conte{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
#mv .slide_wrap{
  position: relative;
  width: 100%;
  height: 100%;
}

#mv .slide_conte .slide_img{
  width: 100%;
  height: 100%;
}
#mv .slide_conte .slide_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* slide_01 */
#mv .slide_01 .slide_txt{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 640px;
}
#mv .slide_01.show .slide_txt{
  animation: slide_01 3s forwards;
}
@keyframes slide_01{
  0%{
    transform: translate(-50%, -50%) scale(.95);
  }
  100%{
    transform: translate(-50%, -50%) scale(1);
  }
}


/* slide_02 */
#mv .slide_02.show .slide_img{
  animation: slide_02_opacity 2s forwards;
}
@keyframes slide_02_opacity{
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}
#mv .slide_02.show .slide_img img{
  animation: slide_02 6s ease-in-out forwards;
  animation-delay: 1.5s;
  object-position: bottom center;
}
@keyframes slide_02{
  0%{
    object-position: bottom center;
  }
  100%{
    object-position: top center;
  }
}

/* slide_03 */
#mv .slide_03.show .slide_wrap{
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
#mv .slide_03 .slide_img{
  width: 65%;
}
#mv .slide_03 .slide_txt{
  width: 35%;
  background: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
}
#mv .slide_03 .slide_txt img{
  width: 75%;
  margin-left: auto;
  margin-right: auto;
}
#mv .slide_03.show .slide_wrap{
  animation: slide_03 1.5s linear forwards;
}
@keyframes slide_03{
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

#head::before {
  height: 0;
  content: none;
}

#support{
  width: 1344px;
  margin-left: 0;
  margin-right: auto;
}
#support .support_conte{
  display: flex;
  align-items: center;
}
#support .support_conte .support_img{
  width: 622px;
  margin-right: 80px;
}
#support .support_conte .support_txt{
  width: 525px;
}

#head{
  background: #eff0ec;
  padding-bottom: 96px;
}
#head .property_ttl{
  width: 1365px;
  margin-left: auto;
  margin-right: auto;
}
#head .head_top{
  width: 870px;
  padding-top: 75px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 60px;
}

#head .video_conte{
  width: 870px;
  margin-left: auto;
  margin-right: auto;
}
#head .video_conte .video_conte_ttl{
  font-size: 28px;
  line-height: 1;
  letter-spacing: 0.01em;
  margin-bottom: 1.5em;
  padding-top: 3em;
}
#head .video_conte .video_conte_wrap{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#head .video_conte .video_wrap{
  width: 48%;
}
#head .video_conte .video_wrap iframe{
  height: 260px;
}
#head .video_conte .video_ttl{
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.17em;
  margin-bottom: .5em;
}


#head .head_lists{
  display: flex;
  justify-content: space-between;
  width: 870px;
  margin-left: auto;
  margin-right: auto;
}
#head .head_lists .head_list{
  padding-top: 23px;
  padding-bottom: 23px;
  border-top: 0.5px solid #7a7b78;
  border-bottom: 0.5px solid #7a7b78;
  text-align: center;
  width: 23%;
}
#head .head_lists .head_list .txt_l{
  font-size: 18px;
  letter-spacing: -0.01em;
}
#head .head_lists .head_list .txt_m{
  font-size: 18px;
}
#head .head_lists .head_list .txt_s{
  font-size: 15px;
}

#head .calender{
  /* width: 870px; */
  margin-left: auto;
  margin-right: auto;
  padding-top: 65px;
  padding-bottom: 45px;
  text-align: center;
  border-top: 0.5px solid #7a7b78;
}
#head .calender .calender_ttl{
  font-size: 22px;
  letter-spacing: 0.1em;
  line-height: 1;
  margin-bottom: 1em;
  text-align: center;
  background: #fff;
  color: #9E8C73;
  padding: 0.5em 1em;
  display: inline-block;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
#head .calender .calender_head{
  font-size: 37px;
  letter-spacing: 0.1em;
  line-height: 1;
  margin-bottom: .8em;
  text-align: center;
  color: #9E8C73;
  display: flex;
  align-items: center;
  justify-content: center;
}
#head .calender .calender_head span{
  font-size: 50%;
  line-height: 1;
}
#head .calender .calender_conte{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 637px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  background: #FFF;
}

#head .calender .calender_conte .box{
  width: 15%;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #eff0ec;
  box-sizing: border-box;
}
#head .calender .calender_conte.day_4 .box{
  width: 18.75%;
}
#head .calender .calender_conte.day_5 .box{
  width: 15%;
}
#head .calender .calender_conte.day_6 .box{
  width: 12.5%;
}
#head .calender .calender_conte .columns_01{
  width: 25% !important;
}
#head .calender .calender_conte .rows_01{
  height: 68px;
  background: #E1D7D1;
  display: flex;
  align-items: center;
  justify-content: center;
}
#head .calender .calender_conte .rows_01.columns_01{
  font-size: 15px;
}
#head .calender .calender_conte .rows_01.day{
  font-size: 20px;
  flex-direction: column;
}
#head .calender .calender_conte .rows_01.day span{
  display: block;
  font-size: 70%;
}
#head .calender .calender_conte .columns_01.time{
  font-size: 17px;
  letter-spacing: 0.05em;
}
#head .calender .calender_conte .available{
  font-size: 28px;
  line-height: 1;
  color: #8EC882;
}
#head .calender .calender_conte .available.full{
  color: #E60012;
  font-size: 20px;
  font-weight: 400;
  font-family: Avenir Next, 'Avenir Next', 'Noto Sans JP', "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#head .calender .calender_conte .available_none{
  color: #231815;
}
#head .calender .calender_note{
  width: 568px;
  text-align: left;
  font-size: 14px;
  line-height: 1.55;
  letter-spacing: -0.01em;
  /* margin: 2em auto; */
  margin: 2em auto 3em;
}
#head .calender .calender_btn{
  position: relative;
  width: 310px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.12em;
  background: #9E8C73;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 1em;
  padding-bottom: 1em;
  padding-right: 1.5em;
}
#head .calender .calender_btn::before{
  content: "";
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%);
  width: 2em;
  height: 2em;
  background: url(../images/btn_arrow.svg);
  background-size: 100% 100%;
}


#head .head_machinaka{
  width: 870px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 65px;
  padding-bottom: 45px;
  text-align: center;
}
#head .head_machinaka .machinaka_ttl{
  font-size: 28px;
  letter-spacing: 0.15em;
  margin-bottom: 1em;
}
#head .head_machinaka .machinaka_txt{
  font-size: 22px;
  letter-spacing: 0.1em;
  margin-top: 0.8em;
  margin-bottom: 1.5em;
}
#head .head_machinaka .machinaka_txt_btn{
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 750px;
}
#head .head_machinaka .bnr{
  width: 740px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
}

#head .head_machinaka .bnr_wrap{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  width: 730px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 100px;
  margin-top: 100px;
  padding-bottom: 100px;
  padding-left: 70px;
  padding-right: 70px;
  border-top: 0.5px solid #7a7b78;
  border-bottom: 0.5px solid #7a7b78;
}
#head .head_machinaka .bnr_wrap .bnr.maple-butter-cookie{
  width: 100%;
}
#head .head_machinaka .bnr_wrap .bnr.model-room{
  width: 100%;
  margin-top: 0;
}
#head .head_machinaka .bnr_wrap .bnr.gifu-jo-rakumachi{
  width: 100%;
}
#head .head_machinaka .bnr_wrap .bnr.suumo{
  width: 41%;
}
#head .head_machinaka .bnr_wrap .bnr.voice{
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
#head .head_machinaka .bnr_wrap .bnr{
  width: 49%;
}
#head .head_machinaka .bnr_wrap .bnr_note{
  text-align: justify;
  font-size: 14px;
  line-height: 1.2;
  margin-top: 1.5em;
  margin-bottom: 2em;
}


#head .head_copy_conte{
  margin-top: 53px;
  margin-bottom: 53px;
  text-align: center;
}
#head .head_copy_conte._mv{
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 40px;
  padding-bottom: 40px;
  background: #a8a18b;
}
#head .head_copy_conte._mv .h2{
  margin-top: 0;
  color: #fff;
  line-height: 1;
}
#head .head_copy_conte .lead{
  font-size: 26px;
  letter-spacing: 0.1em;
}
#head .head_copy_conte .site_ttl{
  font-size: 41px;
  letter-spacing: 0.17em;
  color: #a8a18b;
  margin-top: 0.2em;
  font-weight: 500;
}
#head .head_copy_conte .h2{
  font-size: 63px;
  letter-spacing: 0.04em;
  color: #cb1612;
  margin-top: 0.5em;
  font-weight: 500;
  line-height: 1.2;
}
#head .head_copy_conte .h2 .txt-m{
  font-size: 51px;
}
#head .head_copy_conte .h2 .txt-s{
  font-size: 42px;
}
#head .head_copy_conte .h2 .txt-xs{
  font-size: 32px;
}

#head .bnr_a-type{
  width: 870px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 65px;
}

#head .head_request .request_ttl{
  font-size: 40px;
  text-align: center;
  letter-spacing: 0.25em;
  margin-bottom: 1em;
}

#head .head_request .request_btn{
  width: 731px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#head .head_request .request_btn .request_btn_conte{
  width: 48%;
  color: #fff;
}
#head .head_request .request_btn .request_btn_conte:nth-child(1){
  background: #595757;
}
#head .head_request .request_btn .request_btn_conte:nth-child(2){
  background: #9e8c73;
}

#head .head_request .request_btn .request_btn_conte a{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 25px;
  padding-bottom: 25px;
}
#head .head_request .request_btn .request_btn_conte .txt_wrap .txt_jp{
  font-size: 22px;
  letter-spacing: 0.1em;
}
#head .head_request .request_btn .request_btn_conte .txt_wrap .txt_en{
  font-size: 15px;
  margin-top: 0.2em;
  letter-spacing: 0.1em;
  font-weight: 400;
}
#head .head_request .request_btn .request_btn_conte .btn_wrap{
  width: 55px;
}

#head .head_info{
  margin-top: 115px;
}

#head .attention{
  width: 731px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  color: #231815;
  text-align: center;
  border: 1px solid #7A7B78;
  background: #FFF;
  outline-offset: 2px;
  padding: 0 0 1.5em;
  margin-bottom: 70px;
}
#head .attention .ttl{
  background: #7A7B78;
  color: #FFF;
  border: 1px solid #FFF;
  font-size: 18px;
  padding: .5em 0;
  margin-bottom: 1.2em;
}
#head .attention .head{
  font-size: 16px;
}
#head .attention .txt{
  font-size: 16px;
  background: #FFF;
  color: gray;
  padding-left: 1em;
  padding: .8em 1em;
}
#head .attention .txt a{
  text-decoration: underline;
  color: #044e9c;
}

#head .head_info .info_ttl{
  font-size: 23px;
  letter-spacing: 0.3em;
  line-height: 1;
  text-align: center;
  margin-bottom: 1.2em;
}
#head .head_info .info_lists{
  width: 1000px;
  height: 200px;
  overflow: scroll;
  margin-left: auto;
  margin-right: auto;
  font-size: 18px;
  background: #fff;
  border-top: 1.5px solid #9e8c73;
  border-bottom: 1.5px solid #9e8c73;
  padding-top: 1em;
  padding-bottom: 1em;
}
#head .head_info .info_lists .info_list{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}
#head .head_info .info_lists .info_list:nth-child(n + 2){
  margin-top: 14px;
}
#head .head_info .info_lists .info_list .info_data{
  margin-right: 3em;
}

#menu .sec_ttl{
  text-align: center;
  font-size: 30px;
  padding-top: 85px;
  padding-bottom: 85px;
  letter-spacing: 0.3em;
  color: #fff;
  background: url(../images/menu_ttl_bg.png);
  background-size: 100% 100%;
  line-height: 1;
}
#menu .menu_conte{
  position: relative;
  border-left: 10px solid #fff;
  border-right: 10px solid #fff;
  margin-bottom: 10px;
  overflow: hidden;
}

#menu #menu_conte_1{
  margin-top: 10px;
}
#menu #menu_conte_1.menu_conte .txt_wrap{
  top: 21%;
}
#menu #menu_conte_1.menu_conte .bnr{
  position: absolute;
  top: 48%;
  left: 0;
  width: 580px;
}
#menu #menu_conte_1.menu_conte .more_btn{
  bottom: 60px;
}

#menu .menu_conte .menu_bg{
  position: relative;
  width: 100%;
  height: 700px;
  cursor: pointer;
  overflow: hidden;
  pointer-events: none;
}
#menu .menu_conte .menu_bg .brd_logo{
  width: 733px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#menu .menu_conte .menu_bg.play img{
  animation: menuBgAnime 2s forwards;
}
@keyframes menuBgAnime{
  0%{
    transform: scale(1);
  }
  100%{
    transform: scale(1.05);
  }
}
#menu .menu_conte .menu_bg img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 1s;
}
#menu .menu_conte .menu_bg .nav_txt{
  position: absolute;
  bottom: 1em;
  right: 1em;
  font-size: 16px;
  color: #fff;
}

#menu .menu_conte .menu_bg::before{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  z-index: 5;
  pointer-events: none;
}
#menu .menu_conte .GaussIn{
  position: absolute;
  top: 0;
  left: -60%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 15;
}
#menu .menu_conte .GaussIn-02{
  position: absolute;
  top: 0;
  left: -60%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
  z-index: 10;
}
/* #menu .menu_conte .GaussIn-03{
  position: absolute;
  top: 0;
  left: -60%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, .5);
  transition: 1s;
  z-index: 20;
} */

#menu .menu_conte .menu_bg.play::before{
  animation: menuConteAnime 0.92s forwards;
}
#menu .menu_conte .GaussIn.play{
  animation: gaussChange 1s;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(15, 48, 83, 1) 100%
  );
  /* background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(168,161,139,1) 100%); */
}
#menu .menu_conte .GaussIn-02.play{
  animation: gaussChange02 1s ease-out;
  animation-delay: 0.2s;
}
/* #menu .menu_conte .GaussIn-03.play{
  animation: gaussChange03 2s;
  animation-delay: 6.5s;
} */

@keyframes menuConteAnime{
  0%{
    background: #fff;
    opacity: 1;
  }
  40%{
    background: #fff;
    opacity: 1;
  }
  100%{
    opacity: 0;
  }
}
@keyframes gaussChange{
  0%{
    left: -60%;
  }
  20%{
    left: 50%;
  }
  30%{
    left: 50%;
  }
  100%{
    left: 160%;
  }
}
@keyframes gaussChange02{
  0%{
    left: -60%;
  }
  100%{
    left: 160%;
  }
}
/* @keyframes gaussChange03{
  0%{
    left: -60%;
  }
  100%{
    left: 160%;
  }
} */

#menu .menu_conte .txt_wrap{
  position: absolute;
  top: 42%;
  left: 158px;
  color: #fff;
  pointer-events: none;
  /* transform: translateY(-50%) scale(.95); */
  /* filter: blur(4px); */
  /* opacity: 0; */
}
/* #menu .menu_conte .txt_wrap.UpAnime.play{
  animation: UpAnime 1s forwards;
  animation-delay: .5s;  
} */
@keyframes UpAnime{
  0%{
    transform: translateY(-50%) scale(0.95);
    filter: blur(4px);
    opacity: 0;
  }
  100%{
    transform: translateY(-50%) scale(1);
    filter: blur(0);
    opacity: 1;
  }
}
#menu .menu_conte .txt_wrap .num{
  font-size: 30px;
  display: inline-block;
  border-bottom: 1px solid #fff;
  pointer-events: none;
}
#menu .menu_conte .txt_wrap .ttl{
  margin-top: 17px;
  margin-bottom: 26px;
}
#menu .menu_conte.brd .txt_wrap .ttl{
  width: 173px;
}
#menu .menu_conte.cnc .txt_wrap .ttl{
  width: 250px;
}
#menu .menu_conte.lct .txt_wrap .ttl{
  width: 266px;
}
#menu .menu_conte.acc .txt_wrap .ttl{
  width: 216px;
}
#menu .menu_conte.rdc .txt_wrap .ttl{
  width: 279px;
}
#menu .menu_conte.pln .txt_wrap .ttl{
  width: 133px;
}
#menu .menu_conte.vle .txt_wrap .ttl{
  width: 356px;
}
#menu .menu_conte .txt_wrap .lead_jp{
  display: inline-block;
  font-size: 24px;
  letter-spacing: 0.2em;
  padding-bottom: 0.4em;
  pointer-events: none;
}
#menu .menu_conte .txt_wrap .lead_en{
  position: relative;
  display: block;
  font-size: 16px;
  margin-top: 1.8em;
  letter-spacing: 0.1em;
  line-height: 2;
  pointer-events: visible;
}
#menu .menu_conte .txt_wrap .lead_en a{
  display: inline-block;
  position: relative;
}
#menu .menu_conte .txt_wrap .lead_en a::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 0.5px;
  width: 0;
  width: 100%;
  background-color: #fff;
  transition: width 0.2s;
}
/* #menu .menu_conte .txt_wrap .lead_en a:hover::after{
  width: 100%;
} */
#menu .menu_conte .more_btn{
  position: absolute;
  left: 158px;
  bottom: 190px;
  width: 248px;
  /* opacity: 0; */
  /* transition: .5s; */
}
/* #menu .menu_conte .more_btn.UpBtn.play{
  animation: UpBtnAnime 1s forwards;
  animation-delay: .5s;  
} */
@keyframes UpBtnAnime{
  0%{
    transform: translateY(-50%) scale(0.95);
    filter: blur(4px);
    opacity: 0;
  }
  100%{
    transform: translateY(-50%) scale(1);
    filter: blur(0);
    opacity: 1;
  }
}
#menu .menu_conte .more_btn object{
  transition: 0.5s;
}
#menu .menu_conte .more_btn object:hover{
  transition: 0.5s;
  opacity: 0.8;
  background: #fff;
}

#note{
  width: 900px;
  margin-left: auto;
  margin-right: auto;
  font-size: 14px;
  padding-top: 42px;
  margin-bottom: 42px;
}
#info{
  width: 900px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #7a7b78;
  background: #FFF;
  padding-top: 42px;
  padding-bottom: 42px;
  margin-bottom: 63px;
  text-align: center;
  outline: 1px solid #7a7b78;
  outline-offset: 4px;
}
#info .ttl{
  font-size: 25px;
  letter-spacing: 0.1em;
}
#info .txt{
  font-size: 20px;
  line-height: 1.65;
  letter-spacing: 0.06em;
  margin-top: 1em;
}

#footer{
  padding-bottom: 0;
}
#footer .mutual_conte{
  background: #efefef;
  padding-top: 46px;
  padding-bottom: 46px;
  margin-top: 144px;
}
#footer .mutual_conte .logo_lists{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  width: 652px;
  margin-left: auto;
  margin-right: auto;
}
#footer .mutual_conte .logo_lists li{
  width: 31.33%;
}
#footer .mutual_conte .logo_lists li:nth-child(n+4){
  margin-top: 2%;
}

@media (max-width: 1400px){
  .custom-order_bnr_wrap{
    width: 35.71vw;
  }
  .custom-order_bnr{
    width: 35.71vw;
  }
  .custom-order_close{
    top: 0;
    right: 0;
    width: 2.28vw;
  }

  #mv{
    /* height: 69.28vw; */
    margin-top: 6.1vw;
  }
  /* slide_01 */
  #mv .slide_01 .slide_txt{
    width: 45.71vw;
  }
  /* slide_02 */


  #support{
    width: 96vw;
  }
  #support .support_conte .support_img{
    width: 44.4vw;
    margin-right: 5.71vw;
  }
  #support .support_conte .support_txt{
    width: 37.5vw;
  }

  #head{
    padding-bottom: 6.8vw;
  }
  #head .property_ttl{
    width: 97.5vw;
  }
  #head .head_top{
    width: 62.14vw;
    padding-top: 5.35vw;
    margin-bottom: 4.28vw;
  }

  #head .video_conte{
    width: 62.14vw;
  }
  #head .video_conte .video_conte_ttl{
    font-size: 2vw;
  }
  #head .video_conte .video_wrap iframe{
    height: 18.57vw;
  }
  #head .video_conte .video_ttl{
    font-size: 1.42vw;
  }

  #head .head_lists{
    width: 62.14vw;
  }
  #head .head_lists .head_list{
    padding-top: 1.64vw;
    padding-bottom: 1.642vw;
  }
  #head .head_lists .head_list .txt_l{
    font-size: 1.28vw;
  }
  #head .head_lists .head_list .txt_m{
    font-size: 1.28vw;
  }
  #head .head_lists .head_list .txt_s{
    font-size: 1.07vw;
  }

  #head .calender{
    /* width: 62.14vw; */
    padding-top: 4.64vw;
    padding-bottom: 3.21vw;
  }
  #head .calender .calender_ttl{
    font-size: 1.57vw;
  }
  #head .calender .calender_head{
    font-size: 2.64vw;
  }
  #head .calender .calender_conte{
    width: 45.5vw;
  }
  #head .calender .calender_conte .box{
    height: 3.21vw;
  }
  #head .calender .calender_conte .rows_01{
    height: 4.85vw;
  }
  #head .calender .calender_conte .rows_01.columns_01{
    font-size: 1.07vw;
  }
  #head .calender .calender_conte .rows_01.day{
    font-size: 1.42vw;
  }
  #head .calender .calender_conte .columns_01.time{
    font-size: 1.21vw;
  }
  #head .calender .calender_conte .available{
    font-size: 2vw;
  }
  #head .calender .calender_conte .available.full{
    font-size: 1.42vw;
  }
  #head .calender .calender_note{
    width: 40.57vw;
    font-size: 1vw;
  }
  #head .calender .calender_btn{
    width: 22.14vw;
    font-size: 1.42vw;
  }

  #head .head_machinaka{
    width: 62.14vw;
    padding-top: 4.64vw;
    padding-bottom: 3.21vw;
  }
  #head .head_machinaka .machinaka_ttl{
    font-size: 2vw;
  }
  #head .head_machinaka .machinaka_txt{
    font-size: 1.57vw;
  }
  #head .head_machinaka .machinaka_txt_btn{
    width: 53.57vw;
  }
  #head .head_machinaka .bnr_wrap{
    width: 52.14vw;
    margin-top: 7.14vw;
    padding-top: 7.14vw;
    padding-bottom: 7.14vw;
    padding-left: 5vw;
    padding-right: 5vw;
  }
  #head .head_machinaka .bnr{
    width: 52.85vw;
    margin-top: 2.14vw;
  }
  #head .head_machinaka .bnr_wrap .bnr_note{
    font-size: 1vw;
  }

  #head .head_copy_conte{
    margin-top: 3.78vw;
    margin-bottom: 3.78vw;
  }
  #head .head_copy_conte._mv{
    padding-top: 2.85vw;
    padding-bottom: 2.85vw;
  } 
  .head_copy_conte .lead{
    font-size: 1.85vw;
  }
  #head .head_copy_conte .site_ttl{
    font-size: 2.92vw;
  }
  #head .head_copy_conte .h2{
    font-size: 4.5vw;
  }
  #head .head_copy_conte .h2 .txt-m{
    font-size: 3.64vw;
  }
  #head .head_copy_conte .h2 .txt-s{
    font-size: 3vw;
  }
  #head .head_copy_conte .h2 .txt-xs{
    font-size: 2.28vw;
  }

  #head .bnr_a-type{
    width: 62.14vw;
    margin-top: 4.64vw;
  }

  #head .head_request .request_ttl{
    font-size: 2.85vw;
  }

  #head .head_request .request_btn{
    width: 52.21vw;
  }

  #head .head_request .request_btn .request_btn_conte a{
    padding-top: 1.78vw;
    padding-bottom: 1.78vw;
  }
  #head .head_request .request_btn .request_btn_conte .txt_wrap .txt_jp{
    font-size: 1.57vw;
  }
  #head .head_request .request_btn .request_btn_conte .txt_wrap .txt_en{
    font-size: 1.07vw;
  }
  #head .head_request .request_btn .request_btn_conte .btn_wrap{
    width: 3.92vw;
  }

  #head .head_info{
    margin-top: 8.21vw;
  }

  #head .attention{
    width: 52.21vw;
    margin-bottom: 5vw;
  }
  #head .attention .ttl{
    font-size: 1.28vw;
  }
  #head .attention .head{
    font-size: 1.14vw;
  }
  #head .attention .txt{
    font-size: 1.14vw;
  }

  #head .head_info .info_ttl{
    font-size: 1.64vw;
  }
  #head .head_info .info_lists{
    width: 71.42vw;
    height: 14.28vw;
    font-size: 1.28vw;
  }
  #head .head_info .info_lists .info_list:nth-child(n + 2){
    margin-top: 1vw;
  }

  #menu .sec_ttl{
    font-size: 2.14vw;
    padding-top: 6.07vw;
    padding-bottom: 6.07vw;
  }
  #menu .menu_conte{
    border-left: 0.71vw solid #fff;
    border-right: 0.71vw solid #fff;
    margin-bottom: 0.71vw;
  }
  #menu #menu_conte_1{
    margin-top: 0.71vw;
  }
  #menu #menu_conte_1.menu_conte .bnr{
    width: 41.42vw;
  }
  #menu #menu_conte_1.menu_conte .more_btn{
    bottom: 4.28vw;
  }

  #menu .menu_conte .menu_bg{
    height: 50vw;
  }
  #menu .menu_conte .menu_bg .brd_logo{
    width: 52.35vw;
  }
  #menu .menu_conte .menu_bg .nav_txt{
    font-size: 1.14vw;
  }
  #menu .menu_conte .txt_wrap{
    left: 11.28vw;
  }
  #menu .menu_conte .txt_wrap .num{
    font-size: 2.14vw;
  }
  #menu .menu_conte .txt_wrap .ttl{
    margin-top: 1.21vw;
    margin-bottom: 1.85vw;
  }
  #menu .menu_conte.brd .txt_wrap .ttl{
    width: 12.35vw;
  }
  #menu .menu_conte.cnc .txt_wrap .ttl{
    width: 17.85vw;
  }
  #menu .menu_conte.lct .txt_wrap .ttl{
    width: 19vw;
  }
  #menu .menu_conte.acc .txt_wrap .ttl{
    width: 15.42vw;
  }
  #menu .menu_conte.rdc .txt_wrap .ttl{
    width: 19.92vw;
  }
  #menu .menu_conte.pln .txt_wrap .ttl{
    width: 9.5vw;
  }
  #menu .menu_conte.vle .txt_wrap .ttl{
    width: 25.42vw;
  }
  #menu .menu_conte .txt_wrap .lead_jp{
    font-size: 1.71vw;
    font-weight: 300;
  }
  #menu .menu_conte .txt_wrap .lead_en{
    font-size: 1.14vw;
  }
  #menu .menu_conte .more_btn{
    left: 11.28vw;
    bottom: 13.57vw;
    width: 17.71vw;
  }
  #note{
    width: 64.28vw;
    font-size: 1vw;
    padding-top: 3vw;
    margin-bottom: 3vw;
  }
  #info{
    width: 64.28vw;
    padding-top: 3vw;
    padding-bottom: 3vw;
    margin-bottom: 4.5vw;
  }
  #info .ttl{
    font-size: 1.78vw;
  }
  #info .txt{
    font-size: 1.42vw;
  }

  #footer .mutual_conte{
    padding-top: 3.28vw;
    padding-bottom: 3.28vw;
    margin-top: 10.28vw;
  }
  #footer .mutual_conte .logo_lists{
    width: 46.57vw;
  }
}

@media (max-width: 750px){

  .custom-order_bnr_wrap{
    width: 90vw;
  }
  .custom-order_bnr{
    width: 90vw;
  }
  .custom-order_close{
    width: 7.71vw;
  }

  #mv{
    /* height: 110.33vw; */
    /* height: 63.33vw; */
    /* height: 69.33vw; */
    /* height: 105.33vw; */
    /* height: 131.33vw; */
    margin-top: 12.9vw;
  }
  /* slide_01 */
  #mv .slide_01 .slide_txt{
    width: 69.06vw;
  }

  /* slide_02 */
  /* #mv .slide_02.show .slide_img {
    animation: none;
  } */
  #mv .slide_02.show .slide_img img {
    animation: none;
  }
  #mv .slide_02.show .slide_ttl{
    position: absolute;
    top: 13vw;
    left: 50%;
    transform: translateX(-50%);
    width: 53.33vw;
    /* animation-delay: 3.6s; */
  }



  #support{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  #support .support_conte{
    display: block;
    margin-top: -6vw;
  }
  #support .support_conte .support_img{
    width: 100%;
    margin-right: 0;
  }
  #support .support_conte .support_txt{
    width: 81.33vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.86vw;
    margin-bottom: 11.73vw;
  }

  #head{
    padding-bottom: 13.6vw;
  }
  #head::before{
    top: 5.1vw;
  }
  #head .property_ttl{
    width: 94.4vw;
  }
  #head .head_top{
    width: 67.53vw;
    padding-top: 9.26vw;
    margin-bottom: 13.33vw;
  }

  #head .video_conte{
    width: 76.66vw;
  }
  #head .video_conte .video_conte_ttl {
    font-size: 4.2vw;
    padding-top: 0.5em;
    margin-bottom: 1.8em;
  }
  #head .video_conte .video_conte_wrap{
    flex-direction: column;
    gap: 8vw;
  }

  #head .video_conte .video_wrap {
    width: 100%;
  }
  
  #head .video_conte .video_wrap iframe{
    height: 41vw;
  }
  #head .video_conte .video_ttl {
    font-size: 3.42vw;
    line-height: 1.4;
    margin-bottom: 0.7em;
  }

  #head .head_lists{
    display: block;
    width: 58.33vw;
  }
  #head .head_lists .head_list{
    padding-top: 4.53vw;
    padding-bottom: 4.53vw;
    border-top: 0.2px solid #7a7b78;
    border-bottom: none;
    width: 100%;
  }
  #head .head_lists .head_list:last-child{
    border-bottom: 0.2px solid #7a7b78;
  }
  #head .head_lists .head_list .txt_l{
    font-size: 4.5vw;
    letter-spacing: -0.01em;
  }
  #head .head_lists .head_list .txt_m{
    font-size: 4.1vw;
  }
  #head .head_lists .head_list .txt_s{
    font-size: 3.03vw;
  }

  #head .calender{
    position: relative;
    /* width: 86vw; */
    padding-top: 6.66vw;
    padding-bottom: 8vw;
    border-top: none;
  }
  #head .calender::before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60vw;
    height: 1px;
    background: #7a7b78;
  }
  #head .calender .calender_ttl{
    font-size: 2.93vw;
  }
  #head .calender .calender_head{
    font-size: 4.83vw;
    letter-spacing: 0.08em;
  }
  #head .calender .calender_conte{
    width: 100%;
  }
  #head .calender .calender_conte .box{
    width: 27.3%;
    height: 12.43vw;
  }
  #head .calender .calender_conte .rows_01{
    height: 12.46vw;
    background: none;
    background: #E1D7D1;
  }
  #head .calender .calender_conte .columns_01{
    width: 18% !important;
  }
  #head .calender .calender_conte .rows_01.columns_01{
    font-size: 2.96vw;
  }
  #head .calender .calender_conte .rows_01.time{
    font-size: 3.06vw;
    line-height: 1.3;
  }
  #head .calender .calender_conte .rows_01.time span{
    line-height: .8;
  }
  #head .calender .calender_conte .columns_01.day{
    font-size: 3.46vw;
    flex-direction: column;
  }
  #head .calender .calender_conte .columns_01.day span{
    width: 100%;
    display: block;
    transform: rotate(0);
    transform-origin: center center;
    line-height: .8;
    font-size: 80%;
  }
  #head .calender .calender_conte .available{
    font-size: 4.66vw;
  }
  #head .calender .calender_conte .available.full{
    font-size: 2.93vw;
  }
  #head .calender .calender_note{
    width: 100%;
    font-size: 2.13vw;
    margin: 1.5em auto 2em;
    padding-left: 1px;
  }
  #head .calender .calender_btn{
    width: 41.33vw;
    font-size: 2.66vw;
  }

  #head .head_machinaka{
    width: 86%;
    padding-top: 10.73vw;
    padding-bottom: 5.73vw;
  }
  #head .head_machinaka .machinaka_ttl{
    font-size: 4.16vw;
    line-height: 1;
  }
  #head .head_machinaka .machinaka_txt{
    font-size: 3.83vw;
    width: 100vw;
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 0.5em;
    margin-bottom: 2.5em;
  }
  #head .head_machinaka .machinaka_txt_btn{
    width: 82vw;
  }
  #head .head_machinaka .bnr_wrap{
    position: relative;
    flex-direction: column;
    width: 76.66vw;
    margin-top: 11.14vw;
    padding-top: 11.14vw;
    padding-bottom: 11.14vw;
    padding-left: 0;
    padding-right: 0;
    border-top: none;
    border-bottom: none;
  }
  #head .head_machinaka .bnr_wrap::before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60vw;
    height: 1px;
    background: #7a7b78;
  }
  #head .head_machinaka .bnr_wrap::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60vw;
    height: 1px;
    background: #7a7b78;
  }

  #head .head_machinaka .bnr_wrap .bnr.suumo{
    width: 100%;
  }
  #head .head_machinaka .bnr_wrap .bnr.voice{
    width: 100%;
  }
  #head .head_machinaka .bnr_wrap .bnr{
    width: 100%;
  }
  #head .head_machinaka .bnr_wrap .bnr_note{
    font-size: 2.43vw;
    margin-top: 1.5em;
    margin-bottom: 2em;
  }

  #head .head_copy_conte{
    margin-top: 9.33vw;
    margin-bottom: 9.33vw;
  }
  #head .head_copy_conte._mv{
    padding-top: 5.73vw;
    padding-bottom: 5.73vw;
  }
  #head .head_copy_conte._mv .h2{
    line-height: 1.1;
  }

  #head .head_copy_conte .lead{
    font-size: 4.5vw;
  }
  #head .head_copy_conte .site_ttl{
    font-size: 6.5vw;
  }
  #head .head_copy_conte .h2{
    font-size: 8.4vw;
    letter-spacing: 0.04em;
    margin-top: 0.7em;
  }
  #head .head_copy_conte .h2 .txt-m{
    font-size: 6.8vw;
  }
  #head .head_copy_conte .h2 .txt-s{
    font-size: 5.6vw;
  }
  #head .head_copy_conte .h2 .txt-xs{
    font-size: 4.26vw;
  }

  #head .bnr_a-type{
    width: 82vw;
    margin-top: 10.73vw;
  }

  #head .head_request .request_ttl{
    font-size: 7.33vw;
    margin-bottom: 0.5em;
  }
  #head .head_request .request_btn{
    width: 80vw;
    display: block;
  }
  #head .head_request .request_btn .request_btn_conte{
    width: 100%;
  }
  #head .head_request .request_btn .request_btn_conte:nth-child(2){
    margin-top: 4vw;
  }

  #head .head_request .request_btn .request_btn_conte a{
    padding-top: 4.93vw;
    padding-bottom: 4.93vw;
  }
  #head .head_request .request_btn .request_btn_conte .txt_wrap .txt_jp{
    font-size: 4.5vw;
  }
  #head .head_request .request_btn .request_btn_conte .txt_wrap .txt_en{
    font-size: 3.16vw;
  }
  #head .head_request .request_btn .request_btn_conte .btn_wrap{
    width: 10.93vw;
  }

  #head .head_info{
    margin-top: 14vw;
  }

  #head .attention{
    width: 90vw;
    margin-bottom: 14vw;
  }
  #head .attention .ttl{
    font-size: 4.5vw;
  }
  #head .attention .head{
    font-size: 3.5vw;
  }
  #head .attention .txt{
    font-size: 3.5vw;
  }

  #head .head_info .info_ttl{
    font-size: 4vw;
    margin-bottom: 1em;
  }
  #head .head_info .info_lists{
    width: 90vw;
    height: 46.78vw;
    font-size: 3.33vw;
    border-top: 1px solid #9e8c73;
    border-bottom: 1px solid #9e8c73;
  }
  #head .head_info .info_lists .info_list{
    display: block;
  }
  #head .head_info .info_lists .info_list:nth-child(n + 2){
    margin-top: 4vw;
  }
  #head .head_info .info_lists .info_list .info_data{
    margin-right: 0;
  }

  #menu .sec_ttl{
    font-size: 5vw;
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
    background: url(../images/menu_ttl_bg_sp.png);
    background-size: 100% 100%;
  }
  #menu .menu_conte{
    border-left: 1.33vw solid #fff;
    border-right: 1.33vw solid #fff;
    margin-bottom: 1.33vw;
  }
  #menu #menu_conte_1{
    margin-top: 1.33vw;
  }
  #menu #menu_conte_1.menu_conte .txt_wrap{
    top: 63.5%;
  }
  #menu #menu_conte_1.menu_conte .bnr{
    top: 75%;
    width: 100%;
  }
  #menu #menu_conte_1.menu_conte .more_btn{
    bottom: 5.66vw;
  }

  #menu .menu_conte .menu_bg{
    height: 146.66vw;
  }
  #menu .menu_conte .menu_bg .brd_logo{
    width: 78.8vw;
  }
  #menu .menu_conte .menu_bg .nav_txt{
    font-size: 2.5vw;
  }
  #menu .menu_conte .txt_wrap{
    left: 12.66vw;
    bottom: auto;
    position: absolute;
    top: 66%;
    transform: translateY(-50%);
  }
  /* #menu #menu_conte_2.menu_conte .txt_wrap{
    top: 22%;
  } */
  #menu .menu_conte .txt_wrap .num{
    font-size: 6.33vw;
  }
  #menu .menu_conte .txt_wrap .ttl{
    margin-top: 5.06vw;
    margin-bottom: 6.13vw;
  }
  #menu .menu_conte.brd .txt_wrap .ttl{
    width: 29vw;
  }
  #menu .menu_conte.cnc .txt_wrap .ttl{
    width: 42.33vw;
  }
  #menu .menu_conte.lct .txt_wrap .ttl{
    width: 45.66vw;
  }
  #menu .menu_conte.acc .txt_wrap .ttl{
    width: 35.53vw;
  }
  #menu .menu_conte.rdc .txt_wrap .ttl{
    width: 48.33vw;
  }
  #menu .menu_conte.pln .txt_wrap .ttl{
    width: 23.2vw;
  }
  #menu .menu_conte.vle .txt_wrap .ttl{
    width: 59.13vw;
  }
  #menu .menu_conte .txt_wrap .lead_jp{
    font-size: 4.66vw;
    line-height: 1.9;
  }
  #menu .menu_conte .txt_wrap .lead_en{
    font-size: 2.9vw;
    margin-top: 2em;
  }
  #menu .menu_conte .more_btn{
    position: absolute;
    width: 43vw;
    bottom: 17.66vw;
    left: 11.46vw;
  }
  /* #menu #menu_conte_2.menu_conte .more_btn{
    bottom: 75.66vw;
  } */
  #note{
    width: 80vw;
    font-size: 2.63vw;
    padding-top: 5.73vw;
    margin-bottom: 5.73vw;
  }
  #info{
    width: 80vw;
    padding-top: 5.86vw;
    padding-bottom: 5.86vw;
    margin-bottom: 8.79vw;
  }
  #info .ttl{
    font-size: 3.33vw;
  }
  #info .txt{
    font-size: 3.33vw;
  }


  #footer{
    padding-bottom: 13.73vw;
  }
  #footer .mutual_conte{
    padding-top: 6.4vw;
    padding-bottom: 6.4vw;
    margin-top: 15.73vw;
  }
  #footer .mutual_conte .logo_lists{
    flex-wrap: wrap;
    width: 85vw;
  }
  #footer .mutual_conte .logo_lists li{
    width: 48%;
  }
  #footer .mutual_conte .logo_lists li:nth-child(n+3){
    margin-top: 4%;
  }
}
