@charset "UTF-8";
html {
  overflow-x: hidden;
}

.font03 {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "Yu Gothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  font-weight: normal;
}

/*
	txt
---------------------------------------------------------------------------*/
.txt {
  letter-spacing: 0.105em;
}
@media print, screen and (min-width: 768px) {
  .txt {
    line-height: 2.125;
    margin-top: calc(0px - (((1em*2.125) - 1em)/2));
    margin-bottom: calc(0px - (((1em*2.125) - 1em)/2));
  }
}
@media only screen and (max-width: 767px) {
  .txt {
    font-size: 3.1290743155vw;
    line-height: 2.1666666667;
    margin-top: calc(0px - (((1em*2.1666666667) - 1em)/2));
    margin-bottom: calc(0px - (((1em*2.1666666667) - 1em)/2));
  }
}

/*sec_tit
---------------------------------------------------------------------------*/
.sec_tit_box {
  margin: auto;
  text-align: center;
  color: #ec6802;
  letter-spacing: .15em;
}
.sec_tit_box .sec_tit {
  width: 100%;
  display: block;
  font-family: "din-2014";
  letter-spacing: 0.2em;
}
.sec_tit_box .sec_subtit {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
.sec_tit_box .sec_subtit::before, .sec_tit_box .sec_subtit::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #ec6802;
}
.sec_tit_box.typ_w {
  color: #fff;
}
.sec_tit_box.typ_w .sec_subtit::before, .sec_tit_box.typ_w .sec_subtit::after {
  background-color: #fff;
}
@media print, screen and (min-width: 768px) {
  .sec_tit_box {
    margin-bottom: 6.25rem;
  }
  .sec_tit_box .sec_tit {
    font-size: 3.1875rem;
    margin-bottom: 1.5625rem;
  }
  .sec_tit_box .sec_subtit {
    font-size: 1.125rem;
    margin-bottom: 3.125rem;
  }
  .sec_tit_box .sec_subtit span {
    margin: 0 0.5625rem;
  }
  .sec_tit_box .sec_subtit::before, .sec_tit_box .sec_subtit::after {
    width: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_tit_box {
    margin-bottom: 9.778357236vw;
  }
  .sec_tit_box .sec_tit {
    font-size: 6.258148631vw;
    margin-bottom: 4.5632333768vw;
  }
  .sec_tit_box .sec_subtit {
    font-size: 3.1290743155vw;
  }
  .sec_tit_box .sec_subtit span {
    margin: 0 1.1734028683vw;
  }
  .sec_tit_box .sec_subtit::before, .sec_tit_box .sec_subtit::after {
    width: 3.3898305085vw;
  }
}

/*btn
---------------------------------------------------------------------------*/
.btn_wrap {
  color: #fff;
}
.btn_wrap.insta_link .btn span, .btn_wrap.form_link .btn span {
  height: 100%;
}
.btn_wrap.insta_link .btn span::before, .btn_wrap.form_link .btn span::before {
  content: "";
  display: block;
  background-size: 100% 100%;
}
.btn_wrap.insta_link .btn span::before {
  background-image: url("../images/instagram_w.png");
}
.btn_wrap.form_link .btn span::before {
  background-image: url("../images/form_icon.png");
}
@media print, screen and (min-width: 768px) {
  .btn_wrap.insta_link .btn, .btn_wrap.form_link .btn {
    height: 4.625rem;
    padding: 0 1.5625rem;
  }
  .btn_wrap.insta_link .btn span::before, .btn_wrap.form_link .btn span::before {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
  }
  .btn_wrap.insta_link .btn span::before {
    width: 1.625rem;
    height: 1.625rem;
  }
  .btn_wrap.insta_link .btn:hover span::before {
    background-image: url("../images/instagram_or.png");
  }
  .btn_wrap.form_link .btn span::before {
    width: 1.5rem;
    height: 2.25rem;
  }
  .btn_wrap.form_link .btn:hover span::before {
    background-image: url("../images/form_icon_or.png");
  }
}
@media only screen and (max-width: 767px) {
  .btn_wrap.insta_link .btn, .btn_wrap.form_link .btn {
    height: 13.8200782269vw;
    padding: 0 3.9113428944vw;
  }
  .btn_wrap.insta_link .btn span::before {
    width: 5.2151238592vw;
    height: 5.2151238592vw;
  }
  .btn_wrap.form_link .btn span::before {
    width: 4.8574967405vw;
    height: 6.0780964798vw;
  }
}

.btn, .LoadMoreButton__load-more-button-wrapper___mSAkn {
  display: block;
  margin: auto;
  letter-spacing: 0.1em;
  font-weight: bold;
  background: #ec6802;
  line-height: 1;
  position: relative;
}
.btn::after, .LoadMoreButton__load-more-button-wrapper___mSAkn::after {
  content: "";
  display: block;
  border-right: 1px solid #ec6802;
  border-bottom: 1px solid #ec6802;
  position: absolute;
  z-index: 0;
  box-sizing: border-box;
  pointer-events: none;
}
.btn span, .btn .LoadMoreButton__load-more-button___3uRPa, .LoadMoreButton__load-more-button-wrapper___mSAkn span, .LoadMoreButton__load-more-button-wrapper___mSAkn .LoadMoreButton__load-more-button___3uRPa {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
.btn span::after, .btn .LoadMoreButton__load-more-button___3uRPa::after, .LoadMoreButton__load-more-button-wrapper___mSAkn span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn .LoadMoreButton__load-more-button___3uRPa::after {
  content: "";
  display: block;
  background-size: 100% 100%;
  background-image: url("../images/vecter01.png");
}
.btn.anchor_btn span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn.anchor_btn span::after {
  background-image: url("../images/vecter02.png");
}
@media print, screen and (min-width: 768px) {
  .btn, .LoadMoreButton__load-more-button-wrapper___mSAkn {
    width: 15rem;
    font-size: 1.0125rem;
    padding: 1.625rem 2.5rem 1.625rem 3.375rem;
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
  }
  .btn::after, .LoadMoreButton__load-more-button-wrapper___mSAkn::after {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    width: 2.5rem;
    height: 0;
    padding-top: 16.6666666667%;
    right: -0.25rem;
    bottom: -0.25rem;
  }
  .btn::before, .LoadMoreButton__load-more-button-wrapper___mSAkn::before {
    border-left: 1px solid transparent;
    border-top: 1px solid transparent;
    box-sizing: border-box;
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: -0.25rem;
    left: -0.25rem;
    z-index: 0;
    pointer-events: none;
  }
  .btn span::after, .btn .LoadMoreButton__load-more-button___3uRPa::after, .LoadMoreButton__load-more-button-wrapper___mSAkn span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn .LoadMoreButton__load-more-button___3uRPa::after {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    width: 1.35rem;
    height: 0.6508125rem;
  }
  .btn:hover, .LoadMoreButton__load-more-button-wrapper___mSAkn:hover {
    background-color: #fff;
    color: #ec6802;
  }
  .btn:hover::after, .LoadMoreButton__load-more-button-wrapper___mSAkn:hover::after {
    border-width: 2px;
    width: 100%;
    height: 100%;
    padding-top: 10.8333333333%;
    right: 0;
    bottom: 0;
  }
  .btn:hover::before, .LoadMoreButton__load-more-button-wrapper___mSAkn:hover::before {
    border-width: 2px;
    border-color: #ec6802;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
  .btn:hover span::after, .btn:hover .LoadMoreButton__load-more-button___3uRPa::after, .LoadMoreButton__load-more-button-wrapper___mSAkn:hover span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn:hover .LoadMoreButton__load-more-button___3uRPa::after {
    -webkit-transform: translate(0.5rem, 0);
    -ms-transform: translate(0.5rem, 0);
    transform: translate(0.5rem, 0);
    background-image: url("../images/vecter01_or.png");
  }
  .btn.typ2, .LoadMoreButton__load-more-button-wrapper___mSAkn.typ2 {
    width: 24.1875rem;
  }
  .btn.typ3, .LoadMoreButton__load-more-button-wrapper___mSAkn.typ3 {
    width: 29.5625rem;
    font-size: 1.3125rem;
  }
  .btn.anchor_btn span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn.anchor_btn span::after {
    height: 1.35rem;
    width: 0.6508125rem;
  }
  .btn.anchor_btn:hover span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn.anchor_btn:hover span::after {
    -webkit-transform: translate(0, 0.5rem);
    -ms-transform: translate(0, 0.5rem);
    transform: translate(0, 0.5rem);
    background-image: url("../images/vecter02_or.png");
  }
}
@media only screen and (max-width: 767px) {
  .btn, .LoadMoreButton__load-more-button-wrapper___mSAkn {
    width: 46.9361147327vw;
    font-size: 3.520208605vw;
    padding: 4.9543676662vw 7.8226857888vw 5.2151238592vw 9.778357236vw;
  }
  .btn::after, .LoadMoreButton__load-more-button-wrapper___mSAkn::after {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    width: 6.518904824vw;
    height: 6.518904824vw;
    right: -0.7822685789vw;
    bottom: -0.7822685789vw;
  }
  .btn span::after, .btn .LoadMoreButton__load-more-button___3uRPa::after, .LoadMoreButton__load-more-button-wrapper___mSAkn span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn .LoadMoreButton__load-more-button___3uRPa::after {
    width: 4.2242503259vw;
    height: 2.036505867vw;
  }
  .btn.typ2, .LoadMoreButton__load-more-button-wrapper___mSAkn.typ2 {
    width: 73.0117340287vw;
  }
  .btn.typ3, .LoadMoreButton__load-more-button-wrapper___mSAkn.typ3 {
    width: 86.962190352vw;
  }
  .btn.anchor_btn span::after, .LoadMoreButton__load-more-button-wrapper___mSAkn.anchor_btn span::after {
    width: 2.036505867vw;
    height: 4.2242503259vw;
  }
}

/*--------------------------------------------------------------------------
	header
---------------------------------------------------------------------------*/
@media print, screen and (min-width: 768px) {
  header .logo {
    width: 10.9375%;
    max-width: 175px;
    z-index: 200;
    position: absolute;
    top: 0;
    right: 0;
  }
  header .logo a {
    -webkit-transition: all 0.2s ease-in-out 0s;
    -ms-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
  header .logo a:hover {
    opacity: 0.9;
  }
}
@media only screen and (max-width: 767px) {
  header {
    position: absolute;
    height: auto;
    top: 0;
    right: 0;
    width: 100%;
    z-index: 200;
  }
  header .logo {
    width: 23.7288135593vw;
    float: none;
    position: absolute;
    top: 0;
    right: 0;
  }
}

/*--------------------------------------------------------------------------
	main
---------------------------------------------------------------------------*/
.main * {
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .main {
    overflow: hidden;
  }
}

/*--------------------------------------------------------------------------
	nav_area
---------------------------------------------------------------------------*/
.nav_area .left_nav .sns_list {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 6.25%;
  height: 100%;
  padding-bottom: 45.2244897959vh;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
}
.nav_area .left_nav .sns_list a {
  -webkit-transition: all 0.2s ease-in-out 0s;
  -ms-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
  display: block;
}
.nav_area .left_nav .sns_list a:hover {
  -webkit-transform: scale(1.2, 1.2);
  -ms-transform: scale(1.2, 1.2);
  transform: scale(1.2, 1.2);
}
.nav_area .left_nav .sns_list .facebook {
  width: 0.5625rem;
  height: 1.1875rem;
}
.nav_area .left_nav .sns_list .instagram {
  width: 1.25rem;
  height: 1.25rem;
  margin: 4.2448979592vh 0;
}
.nav_area .left_nav .sns_list .twitter {
  width: 1.25rem;
  height: 1rem;
}
.nav_area .left_nav .scroll_btn_wrap {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 100;
  width: 6.25%;
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn {
  width: 0.6875rem;
  margin: auto;
  display: block;
  overflow: hidden;
  position: relative;
  padding-bottom: 11.25rem;
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn::before, .nav_area .left_nav .scroll_btn_wrap .scroll_btn::after {
  content: "";
  display: block;
  width: 1px;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn::before {
  height: 11.25rem;
  background-color: #c7c7c7;
  bottom: 0;
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn::after {
  height: 5.625rem;
  background-color: #4c4948;
  bottom: 5.625rem;
  -webkit-animation: scroll_anime01 1.6s ease-in-out 0s infinite normal;
  -ms-animation: scroll_anime01 1.6s ease-in-out 0s infinite normal;
  animation: scroll_anime01 1.6s ease-in-out 0s infinite normal;
}
@keyframes scroll_anime01 {
  0% {
    height: 0;
    bottom: 11.25rem;
  }
  70% {
    height: 9rem;
  }
  80% {
    bottom: 0;
  }
  100% {
    height: 0;
    bottom: 0;
  }
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn span {
  -webkit-transition: all 0.2s ease-in-out 0s;
  -ms-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
  display: block;
  padding-bottom: 1.25rem;
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn::after {
  -webkit-transition: all 0.2s ease-in-out 0s;
  -ms-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn:hover span {
  -webkit-transform: translate(0, 0.625rem);
  -ms-transform: translate(0, 0.625rem);
  transform: translate(0, 0.625rem);
}
.nav_area .left_nav .scroll_btn_wrap .scroll_btn:hover:after {
  background-color: #ec6802;
}
.nav_area .right_nav .side_link {
  position: fixed;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  z-index: 100;
  width: 6.25%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
.nav_area .right_nav .side_link li {
  font-size: 0.5625rem;
  color: #00272e;
}
.nav_area .right_nav .side_link li:not(:last-child) {
  margin-bottom: 1.875rem;
}
.nav_area .right_nav .side_link li a {
  -webkit-transition: all 0.2s ease-in-out 0s;
  -ms-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
}
.nav_area .right_nav .side_link li a:hover, .nav_area .right_nav .side_link li a.active {
  color: #ec6802;
}

@media print, screen and (min-width: 768px) and (max-height: 664px) {
  .nav_area .left_nav .sns_list {
    padding-bottom: 19.0625rem;
  }
  .nav_area .left_nav .scroll_btn_wrap {
    bottom: -11.7551020408vh;
  }
}
/*--------------------------------------------------------------------------
	under_mv
---------------------------------------------------------------------------*/
@media print, screen and (min-width: 768px) {
  #under_mv .mv_inner {
    width: 87.5%;
    margin: auto;
  }
}

/*--------------------------------------------------------------------------
	mvlist
---------------------------------------------------------------------------*/
.mvlist {
  display: grid;
  display: -ms-grid;
}
.mvlist > li {
  position: relative;
}
.mvlist > li .mv_img {
  -webkit-transition: all 1s ease-in-out 0.4s;
  -ms-transition: all 1s ease-in-out 0.4s;
  transition: all 1s ease-in-out 0.4s;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit:cover ";
  -webkit-transform: translate(0, 0) rotate(0deg) scale(0, 0) skew(0deg, 0deg);
  -ms-transform: translate(0, 0) rotate(0deg) scale(0, 0) skew(0deg, 0deg);
  transform: translate(0, 0) rotate(0deg) scale(0, 0) skew(0deg, 0deg);
  opacity: 0;
  display: block;
}
.mvlist > li.scroll_active
.mv_img:not(.lazyload) {
  opacity: 1;
  -webkit-transform: translate(0, 0) rotate(0deg) scale(1, 1) skew(0deg, 0deg);
  -ms-transform: translate(0, 0) rotate(0deg) scale(1, 1) skew(0deg, 0deg);
  transform: translate(0, 0) rotate(0deg) scale(1, 1) skew(0deg, 0deg);
}
@media print, screen and (min-width: 768px) {
  .mvlist {
    grid-auto-rows: 10.8225108225vw;
  }
}

/*--------------------------------------------------------------------------
	footer
---------------------------------------------------------------------------*/
footer {
  background: #979c9f;
  width: 100%;
  position: relative;
  font-weight: bold;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
  z-index: 101;
}
footer .bottom_btn_area {
  position: absolute;
  z-index: 100;
  bottom: 100%;
  -webkit-transition: transform 0.8s ease-in-out 0s;
  -ms-transition: transform 0.8s ease-in-out 0s;
  transition: transform 0.8s ease-in-out 0s;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
footer .bottom_btn_area .reception_btn {
  position: relative;
  display: block;
  background: #ec6802;
  border-radius: 50%;
  -webkit-transition: all 1s ease-in-out 0s;
  -ms-transition: all 1s ease-in-out 0s;
  transition: all 1s ease-in-out 0s;
  -webkit-transform: scale(0, 0);
  -ms-transform: scale(0, 0);
  transform: scale(0, 0);
  border: 2px solid #fff;
}
footer .bottom_btn_area .reception_btn figcaption {
  width: 100%;
  line-height: 1.5;
  margin-top: calc(0px - (((1em*1.5) - 1em)/2));
  margin-bottom: calc(0px - (((1em*1.5) - 1em)/2));
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: 13em;
}
footer .bottom_btn_area .reception_btn .btn_txt {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 12em;
  letter-spacing: normal;
}
footer .bottom_btn_area.fixed {
  bottom: 0;
  position: fixed;
}
footer .bottom_btn_area.active .reception_btn {
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
}
footer .bottom_btn_area.active:not(.fixed) {
  -webkit-transform: translate(50vw, 0);
  -ms-transform: translate(50vw, 0);
  transform: translate(50vw, 0);
}
footer p {
  line-height: 1;
}
footer .bottom_btn_bar {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 100%;
  z-index: 0;
  -webkit-transform: translate(-100%, 0);
  -ms-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  -webkit-transition: all 0.8s ease-in-out 0s;
  -ms-transition: all 0.8s ease-in-out 0s;
  transition: all 0.8s ease-in-out 0s;
}
footer .bottom_btn_bar.active {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
footer .bottom_btn_bar a {
  display: block;
  background: #ec6802;
}
footer .bottom_btn_bar a::before, footer .bottom_btn_bar a::after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
}
footer .bottom_btn_bar a .txt_box {
  position: relative;
  display: inline-block;
}
footer .bottom_btn_bar a .bottom_btn_tit {
  color: #fff;
  letter-spacing: 0.2em;
}
footer .bottom_btn_bar a .bottom_btn_tit strong {
  display: inline-block;
  position: relative;
}
footer .bottom_btn_bar a .bottom_btn_tit strong::after {
  content: "";
  display: block;
  background-size: 100% 100%;
  background-image: url("../images/bottom_btn_icon.svg");
  position: absolute;
  left: 100%;
  bottom: 0;
  z-index: 0;
}
footer .bottom_btn_bar a .bottom_btn_txt {
  letter-spacing: 0.15em;
  display: inline-block;
  position: relative;
  color: #231815;
}
footer .bottom_btn_bar a .bottom_btn_txt::after {
  content: "";
  display: block;
  background-size: 100% 100%;
  background-image: url("../images/bottom_btn_vecter.svg");
  position: absolute;
  bottom: 0;
  z-index: 0;
}
footer .bottom_btn_bar a figure {
  position: absolute;
  position: absolute;
  left: 100%;
  z-index: 0;
}
@media print, screen and (min-width: 768px) {
  footer {
    padding: 3.125rem 0;
  }
  footer .inner .copyright {
    font-size: 0.75rem;
  }
  footer .bottom_btn_area {
    width: 8.125rem;
    right: 8.125rem;
    margin-bottom: 3.125rem;
  }
  footer .bottom_btn_area.active:not(.fixed) .img02 {
    width: 30.78125rem;
  }
  footer .bottom_btn_area .reception_btn {
    height: 8.125rem;
  }
  footer .bottom_btn_area .reception_btn figcaption {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    top: 4.125rem;
    font-size: 0.8rem;
  }
  footer .bottom_btn_area .reception_btn .btn_txt {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    font-size: 0.9rem;
    line-height: 1.5em;
  }
  footer .bottom_btn_area .reception_btn:hover {
    background: #f9d200;
  }
  footer .bottom_btn_area .reception_btn:hover figcaption {
    color: #231815;
  }
  footer .bottom_btn_area .reception_btn:hover .btn_txt {
    color: #231815;
  }
  footer .bottom_btn_bar a {
    -webkit-transition: all 0.8s ease-in-out 0s;
    -ms-transition: all 0.8s ease-in-out 0s;
    transition: all 0.8s ease-in-out 0s;
    padding: 0.625rem 0;
  }
  footer .bottom_btn_bar a::before, footer .bottom_btn_bar a::after {
    border-bottom: 6px dashed #fff;
  }
  footer .bottom_btn_bar a .txt_box {
    width: 33.125rem;
    padding: 1.25rem 0 1.125rem;
  }
  footer .bottom_btn_bar a .bottom_btn_tit {
    font-size: 1.5rem;
    margin-bottom: 1.75rem;
  }
  footer .bottom_btn_bar a .bottom_btn_tit strong::after {
    width: 3.0625rem;
    height: 2.4375rem;
    margin-left: 0.6rem;
  }
  footer .bottom_btn_bar a .bottom_btn_txt {
    text-align: center;
    font-size: 0.9rem;
  }
  footer .bottom_btn_bar a .bottom_btn_txt::after {
    -webkit-transition: all 0.8s ease-in-out 0s;
    -ms-transition: all 0.8s ease-in-out 0s;
    transition: all 0.8s ease-in-out 0s;
    width: 10.78125rem;
    height: 2.0625rem;
    right: -16.40625rem;
  }
  footer .bottom_btn_bar a figure {
    bottom: 0.3125rem;
    width: 6.9375rem;
  }
  footer .bottom_btn_bar a:hover {
    background: #f9b500;
  }
  footer .bottom_btn_bar a:hover .bottom_btn_txt::after {
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0);
  }
}
@media only screen and (max-width: 767px) {
  footer {
    padding: 13.037809648vw 0;
  }
  footer .inner .copyright {
    font-size: 3.1290743155vw;
  }
  footer .bottom_btn_area {
    width: 27.3794002608vw;
    right: 3.259452412vw;
    margin-bottom: 3.9113428944vw;
  }
  footer .bottom_btn_area .reception_btn {
    height: 27.3794002608vw;
  }
  footer .bottom_btn_area .reception_btn figcaption {
    top: 13.037809648vw;
    font-size: 2.5032594524vw;
  }
  footer .bottom_btn_area .reception_btn .btn_txt {
    font-size: 3.1290743155vw;
    line-height: 1.5em;
  }
  footer .bottom_btn_bar a {
    padding: 1.3037809648vw 0;
  }
  footer .bottom_btn_bar a::before, footer .bottom_btn_bar a::after {
    border-bottom: 6px dashed #fff;
  }
  footer .bottom_btn_bar a .txt_box {
    width: 94.3415906128vw;
    padding: 2.6075619296vw 0 3.520208605vw;
  }
  footer .bottom_btn_bar a .bottom_btn_tit {
    font-size: 4.6936114733vw;
    margin-bottom: 6.2059973924vw;
    padding-left: 6.3885267275vw;
  }
  footer .bottom_btn_bar a .bottom_btn_tit strong::after {
    position: static;
    display: inline-block;
    width: 9.5827900913vw;
    height: 7.6271186441vw;
    margin-left: 1.2516297262vw;
  }
  footer .bottom_btn_bar a .bottom_btn_txt {
    width: 90%;
    font-size: 3.9895697523vw;
    line-height: 1.5;
    margin-top: calc(0px - (((1em*1.5) - 1em)/2));
    margin-bottom: calc(0px - (((1em*1.5) - 1em)/2));
  }
  footer .bottom_btn_bar a .bottom_btn_txt::after {
    width: 14.6186440678vw;
    height: 2.7966101695vw;
    left: 88%;
    bottom: 15%;
  }
  footer .bottom_btn_bar a figure {
    left: auto;
    left: -5%;
    bottom: 49%;
    width: 11.5775749674vw;
  }
}

/*--------------------------------------------------------------------------
	下層共通（kokonimo、ayumi）
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	click_txt
---------------------------------------------------------------------------*/
.click_txt_wrap {
  color: #ec6802;
  display: inline-block;
}

.click_txt {
  letter-spacing: 0.1em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  position: relative;
}
.click_txt::after {
  background-position: center top 0.1em;
}
@media print, screen and (min-width: 768px) {
  .click_txt {
    font-size: 1.6875rem;
  }
  .click_txt::after {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    content: "";
    display: block;
    width: 1.5625rem;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-image: url("../images/vector03.svg");
    margin-left: 0.625rem;
  }
  .click_txt::before {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 0;
    content: "";
    display: block;
    width: 0;
    height: 2px;
    background-color: #ec6802;
  }
}
@media only screen and (max-width: 767px) {
  .click_txt {
    font-size: 3.6vw;
  }
  .click_txt::after {
    content: "";
    display: block;
    width: 3.3333333333vw;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-image: url("../images/vector03.svg");
    margin-left: 1.3333333333vw;
  }
}

@media print, screen and (min-width: 768px) {
  a.click_txt:hover::after {
    -webkit-transform: translate(30%, 0);
    -ms-transform: translate(30%, 0);
    transform: translate(30%, 0);
  }
  a.click_txt:hover::before {
    width: 110%;
  }
}
/*--------------------------------------------------------------------------
	under_cont01
---------------------------------------------------------------------------*/
.under_cont01_box {
  margin: 0 auto;
  border: 2px solid #ec6802;
  text-align: center;
}
.under_cont01_tit_box {
  color: #ec6802;
  display: inline-block;
  background: #fff;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media print, screen and (min-width: 768px) {
  .under_cont01_box {
    width: 78.5714285714%;
    border-radius: 1.25rem;
  }
  .under_cont01_tit_box {
    padding: 0 5.7481751825%;
  }
}
@media only screen and (max-width: 767px) {
  .under_cont01_box {
    width: 94.6666666667vw;
    border-radius: 2.6666666667vw;
  }
  .under_cont01_tit_box {
    padding: 0 4.9333333333vw;
  }
}

/*--------------------------------------------------------------------------
	other_page_cont
---------------------------------------------------------------------------*/
.other_page_cont .box {
  margin: auto;
}
.other_page_cont .box a {
  display: block;
  border-radius: 50%;
  background: #FEF6F2;
  position: relative;
  height: 100%;
}
.other_page_cont .inbox {
  text-align: center;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.other_page_cont .box_tit {
  color: #ec6802;
  letter-spacing: 0.1em;
}
@media print, screen and (min-width: 768px) {
  .other_page_cont .box {
    width: 41.5rem;
    height: 41.5rem;
  }
  .other_page_cont .box a {
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
  }
  .other_page_cont .box a:hover {
    background: #fdeee6;
  }
  .other_page_cont .box a:hover .click_txt::after {
    -webkit-transform: translate(30%, 0);
    -ms-transform: translate(30%, 0);
    transform: translate(30%, 0);
  }
  .other_page_cont .box a:hover .click_txt::before {
    width: 110%;
  }
  .other_page_cont .box_tit {
    font-size: 2.5rem;
  }
  .other_page_cont .txt {
    font-size: 1.125rem;
    line-height: 1.9444444444;
    margin-top: calc(0px - (((1em*1.9444444444) - 1em)/2));
    margin-bottom: calc(2.1875rem - (((1em*1.9444444444) - 1em)/2));
  }
}
@media only screen and (max-width: 767px) {
  .other_page_cont .box {
    width: 88.5333333333vw;
    height: 88.5333333333vw;
  }
  .other_page_cont .box_tit {
    font-size: 6.6666666667vw;
  }
  .other_page_cont .txt {
    font-size: 2.88vw;
    line-height: 1.9166666667;
    margin-top: calc(0px - (((1em*1.9166666667) - 1em)/2));
    margin-bottom: calc(7.3333333333vw - (((1em*1.9166666667) - 1em)/2));
  }
}

/*--------------------------------------------------------------------------
	bottom_top_link
---------------------------------------------------------------------------*/
#bottom_top_link {
  text-align: center;
}
#bottom_top_link a {
  display: block;
  background: #ec6802;
}
#bottom_top_link .click_txt_wrap {
  color: #fff;
}
#bottom_top_link .click_txt::after {
  background-image: url("../images/vector03_w.svg");
}
@media print, screen and (min-width: 768px) {
  #bottom_top_link a {
    padding: 2.5rem 0 1.875rem;
    -webkit-transition: all 1s ease-in-out 0s;
    -ms-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
  }
  #bottom_top_link a:hover {
    background: #f9b500;
  }
  #bottom_top_link a:hover .click_txt::after {
    -webkit-transform: translate(30%, 0);
    -ms-transform: translate(30%, 0);
    transform: translate(30%, 0);
  }
  #bottom_top_link a:hover .click_txt::before {
    width: 110%;
  }
  #bottom_top_link .click_txt::before {
    background: #fff;
  }
  #bottom_top_link .bottom_camp_tit {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0 auto 1.25rem;
    color: #fff;
    font-size: 1.8125rem;
    letter-spacing: 0.16em;
  }
  #bottom_top_link .bottom_camp_tit img {
    width: 14.5525rem;
    margin-right: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  #bottom_top_link a {
    padding: 7.2vw 0 6.4vw;
  }
  #bottom_top_link .bottom_camp_tit {
    text-align: center;
    color: #fff;
    font-size: 5.2vw;
    letter-spacing: 0.22em;
    margin: 0 auto 6.6666666667vw;
  }
  #bottom_top_link .bottom_camp_tit img {
    width: 42vw;
    margin: 0 auto 4vw;
  }
  #bottom_top_link .bottom_camp_tit strong {
    display: block;
  }
}
