@charset "UTF-8";
/*

	viewport settings

**************************************************/
/*

	font setting

**************************************************/
/*

	clearfix settings

**************************************************/
/*

	boxsizing settings

**************************************************/
/*

	opacity settings

**************************************************/
/*

	border-radius settings

**************************************************/
/*

	drop shadow settings

**************************************************/
/*

	vertical align setting

**************************************************/
/*

	flexbox layout setting

**************************************************/
/*

	hover transition

**************************************************/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%; }

body {
  font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,"Helvetica Neue",Arial,sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  padding-top: 60px;
  color: #3c1900;
  font-family: 'Noto Sans JP', sans-serif;
  /*400;500;700;900*/ }
  body.is--gapless {
    padding-top: 0; }
  @media (max-width: 767px) {
    body {
      padding-top: 11.8466898955vw;
      margin-bottom: -11.8466898955vw; } }

select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box; }

.is--sp {
  display: none; }
  @media (max-width: 767px) {
    .is--sp {
      display: block; } }

.is--pc {
  display: block; }
  @media (max-width: 767px) {
    .is--pc {
      display: none; } }

.overlay {
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 100000;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.3s linear;
  -moz-transition: all 0.3s linear;
  -webkit-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  -ms-transition: all 0.3s linear;
  transition: all 0.3s linear; }
  .overlay.opened {
    opacity: 1;
    filter: alpha(opacity=100);
    visibility: visible; }
  .overlay__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); }
  .overlay__content {
    position: absolute;
    left: 16px;
    top: 16px;
    z-index: 1000000; }
  @media (max-width: 767px) {
    .overlay {
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch;
      background: #ffffff; }
      .overlay__bg {
        display: none; }
      .overlay__content {
        position: static; } }

.menu {
  width: 290px;
  background: #ffffff;
  display: block;
  padding: 28px;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh; }
  .menu__close {
    margin-bottom: 28px; }
  .menu__item a {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #3c1900;
    display: block;
    text-decoration: none;
    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    -webkit-transition: all 0.15s linear;
    -o-transition: all 0.15s linear;
    -ms-transition: all 0.15s linear;
    transition: all 0.15s linear;
    position: relative;
    padding-left: 40px; }
    .menu__item a:before {
      display: block;
      position: absolute;
      left: 0;
      width: 24px;
      height: 24px;
      top: 50%;
      margin-top: -12px;
      content: ""; }
    .menu__item a:after {
      display: block;
      position: absolute;
      right: 0;
      top: 50%;
      margin-top: -12px;
      background: url(../images/ico_arrow_gray.svg) no-repeat 0 0;
      width: 24px;
      height: 24px;
      content: ""; }
    .menu__item a:hover {
      opacity: 0.75;
      filter: alpha(opacity=75); }
  .menu__item + .menu__item {
    margin-top: 28px; }
  .menu--01:before {
    background: url(../images/ico_nav_01.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--02:before {
    background: url(../images/ico_nav_02.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--03:before {
    background: url(../images/ico_nav_03.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--04:before {
    background: url(../images/ico_nav_04.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--05:before {
    background: url(../images/ico_nav_05.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--06:before {
    background: url(../images/ico_nav_06.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--07:before {
    background: url(../images/ico_nav_07.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  .menu--08:before {
    background: url(../images/ico_nav_08.svg) no-repeat 0 0;
    background-size: 24px 24px; }
  @media (max-width: 767px) {
    .menu {
      width: 100%;
      padding: 4.2666666667vw 5.3333333333vw;
      display: block;
      -webkit-border-radius: 0;
      -moz-border-radius: 0;
      border-radius: 0;
      -moz-background-clip: padding;
      -webkit-background-clip: padding-box;
      background-clip: padding-box; }
      .menu:before {
        display: none; }
      .menu__item a {
        font-size: 4.2666666667vw;
        padding-left: 10.6666666667vw; }
        .menu__item a:before {
          width: 6.4vw;
          height: 6.4vw;
          margin-top: -3.2vw; }
        .menu__item a:after {
          margin-top: -3.2vw;
          background: url(../images/ico_arrow_gray.svg) no-repeat 0 0;
          width: 6.4vw;
          height: 6.4vw; }
      .menu__item + .menu__item {
        margin-top: 7.4666666667vw; }
      .menu__close {
        text-align: right;
        margin-bottom: 8.5333333333vw; }
        .menu__close a {
          text-align: right; }
          .menu__close a img {
            width: 6.4vw;
            height: 6.4vw; }
      .menu--01:before {
        background-size: 6.4vw 6.4vw; }
      .menu--02:before {
        background-size: 6.4vw 6.4vw; }
      .menu--03:before {
        background-size: 6.4vw 6.4vw; }
      .menu--04:before {
        background-size: 6.4vw 6.4vw; }
      .menu--05:before {
        background-size: 6.4vw 6.4vw; }
      .menu--06:before {
        background-size: 6.4vw 6.4vw; }
      .menu--07:before {
        background-size: 6.4vw 6.4vw; }
      .menu--08:before {
        background-size: 6.4vw 6.4vw; } }

.header {
  position: fixed;
  height: 64px;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #e64800;
  background-image: linear-gradient(to right, #e64800 0%, #e46a00 100%);
  padding: 0 20px;
  z-index: 9999;
  box-sizing: border-box;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center; }
  .header__nav {
    text-align: right; }
    .header__nav a {
      color: #ffffff;
      text-decoration: none;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1;
      -webkit-transition: all 0.3s linear;
      -moz-transition: all 0.3s linear;
      -webkit-transition: all 0.3s linear;
      -o-transition: all 0.3s linear;
      -ms-transition: all 0.3s linear;
      transition: all 0.3s linear;
      font-weight: bold; }
      .header__nav a:hover {
        opacity: 0.75;
        filter: alpha(opacity=75); }
  .header__menu {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    align-items: center; }
    .header__menu li a {
      color: #ffffff;
      text-decoration: none;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1;
      font-weight: bold;
      position: relative;
      display: block;
      -webkit-transition: all 0.3s linear;
      -moz-transition: all 0.3s linear;
      -webkit-transition: all 0.3s linear;
      -o-transition: all 0.3s linear;
      -ms-transition: all 0.3s linear;
      transition: all 0.3s linear; }
      .header__menu li a:hover {
        opacity: 0.75;
        filter: alpha(opacity=75);
        text-decoration: underline; }
      .header__menu li a:before {
        content: "";
        display: inline-block;
        width: 2px;
        height: 15px;
        background-color: #ffffff;
        position: absolute;
        top: -2px;
        left: -15px; }
    .header__menu li:first-child a:before {
      display: none; }
    .header__menu li + li {
      margin-left: 30px; }
  @media (max-width: 767px) {
    .header {
      height: 11.8466898955vw;
      padding: 0 5.2264808362vw; }
      .header__inner {
        display: flex;
        display: -webkit-flex;
        justify-content: flex-end;
        align-items: center; }
      .header__nav a {
        font-size: 3.2vw;
        line-height: 3.2vw; }
      .header__anchor li a {
        font-size: 3.2vw;
        line-height: 3.2vw; }
      .header__anchor li + li {
        margin-left: 5.3333333333vw; }
      .header__search {
        display: none; }
      .header__menu {
        flex-wrap: wrap; }
        .header__menu li a {
          font-size: 2.787456446vw;
          line-height: 1.5;
          white-space: nowrap; }
          .header__menu li a:before {
            content: "";
            display: inline-block;
            width: 2px;
            height: 2.787456446vw;
            background-color: #ffffff;
            position: absolute;
            top: 0.6968641115vw;
            left: -4.181184669vw; } }

.container__inner {
  width: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: stretch;
  box-sizing: border-box; }
.container__main {
  width: 530px;
  background-image: url("../images/WEB_BG_S.jpg");
  background-position: left top;
  background-repeat: repeat-y;
  background-size: 530px 750px; }
.container__left {
  width: calc(50% - 265px);
  background-image: url("../images/WEB_BG_L.jpg");
  background-position: right top;
  background-repeat: repeat-y;
  background-size: 530px 750px; }
.container__right {
  width: calc(50% - 265px);
  background-image: url("../images/WEB_BG_R.jpg");
  background-position: left top;
  background-repeat: repeat-y;
  background-size: 530px 750px; }
.container__sub {
  width: 312px;
  margin: 0 0 0 auto; }
.container__reservation {
  position: sticky;
  top: 80px;
  width: 312px;
  box-sizing: border-box;
  padding: 18px 16px 16px;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.08);
  background-color: #ffffff;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  margin-bottom: 28px; }
  .container__reservation.is--sp {
    display: none; }
  .container__reservation p {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.2222222222;
    font-family: Montserrat;
    font-weight: bold;
    color: #3c1900;
    margin-top: 10px; }
.container__btn a {
  display: block;
  width: 280px;
  padding: 18px 0;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  background-color: #e64800;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 0.15s linear;
  -moz-transition: all 0.15s linear;
  -webkit-transition: all 0.15s linear;
  -o-transition: all 0.15s linear;
  -ms-transition: all 0.15s linear;
  transition: all 0.15s linear;
  position: relative; }
  .container__btn a:after {
    display: block;
    position: absolute;
    top: 50%;
    right: 12px;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    background: url(../images/arrow_w_down.svg) no-repeat 0 0;
    background-size: 24px 24px;
    content: ""; }
.container__anchor {
  position: sticky;
  top: 227px;
  width: 312px;
  padding: 14px 0;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.08);
  background-color: #ffffff;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box; }
  .container__anchor li a {
    display: block;
    padding: 12px 16px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4285714286;
    color: #3c1900;
    font-weight: bold;
    text-decoration: none;
    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    -webkit-transition: all 0.15s linear;
    -o-transition: all 0.15s linear;
    -ms-transition: all 0.15s linear;
    transition: all 0.15s linear;
    position: relative; }
    .container__anchor li a:hover {
      color: #747474; }
.container--info {
  border-top: none;
  border-bottom: none;
  padding-bottom: 100px; }
@media (max-width: 767px) {
  .container__inner {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 0; }
  .container__main {
    width: 100%;
    min-height: 100vh;
    background-size: contain;
    background-position: center top; }
  .container__left {
    display: none;
    width: 0; }
  .container__right {
    display: none;
    width: 0; }
  .container__sub {
    display: none; }
  .container__reservation {
    position: sticky;
    bottom: 0;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 6.4vw;
    box-shadow: 0 0 0 0 #ffffff;
    z-index: 10; }
    .container__reservation.is--sp {
      display: block; }
    .container__reservation p {
      font-size: 4.2666666667vw;
      font-family: Montserrat;
      line-height: 4.2666666667vw;
      text-align: center;
      margin-top: 2.6666666667vw; }
  .container__btn a {
    display: block;
    width: 100%;
    padding: 3.7333333333vw 0;
    -webkit-border-radius: 1.6vw;
    -moz-border-radius: 1.6vw;
    border-radius: 1.6vw;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    font-size: 4.2666666667vw;
    line-height: 4.2666666667vw; }
    .container__btn a:after {
      top: 50%;
      right: 3.2vw;
      width: 6.4vw;
      height: 6.4vw;
      margin-top: -3.2vw;
      background-size: 6.4vw 6.4vw; }
  .container--info {
    padding-bottom: 21.3333333333vw; } }

.remodal {
  padding: 0; }
  @media (max-width: 767px) {
    .remodal {
      height: 100%;
      overflow: hidden;
      position: fixed;
      z-index: 10000000;
      top: 0;
      left: 0;
      width: 100%; } }

@media (max-width: 767px) {
  .remodal-overlay {
    display: none; } }

.content {
  position: relative;
  padding: 20px 20px 30px; }
  .content a:hover {
    opacity: .75; }
  .content__icon {
    position: absolute;
    display: flex;
    display: -webkit-flex;
    justify-content: flex-end;
    align-items: flex-end;
    top: 20px;
    right: 20px; }
    .content__icon--items img {
      width: 48px;
      height: auto; }
      .content__icon--items img .ico-t {
        width: 44px; }
    .content__icon--items:hover {
      opacity: .75; }
    .content__icon--items + .content__icon--items {
      margin-left: 10px; }
  .content__kv {
    border-bottom: none;
    padding-bottom: 0; }
    .content__kv img {
      width: 100%;
      height: auto; }
  .content__inner {
    position: relative;
    width: 100%;
    margin: 20px auto;
    padding: 70px 0 5px;
    color: #3c1900;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 5px; }
    .content__inner--twitter {
      padding: 0; }
    .content__inner--center {
      text-align: center; }
    .content__inner--fail {
      background-color: transparent; }
  .content__image {
    width: 100%;
    height: auto; }
    .content__image--title {
      position: absolute;
      top: 0; }
    .content__image--01 {
      width: 44%;
      height: auto;
      vertical-align: middle; }
    .content__image--02 {
      width: 10%;
      height: auto;
      vertical-align: middle; }
    .content__image--center {
      margin: 0 auto; }
      .content__image--center:hover {
        opacity: 0.75 !important; }
  .content__line {
    padding: 5px 0; }
    .content__line img {
      width: 100%;
      height: auto; }
  .content__head {
    margin-bottom: 36px; }
  .content__title {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.7083333333;
    text-align: center;
    font-weight: bold; }
    .content__title img {
      width: 100%;
      height: auto; }
  .content__subtitle {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.25;
    text-align: center;
    font-weight: 700; }
    .content__subtitle--line {
      position: relative; }
      .content__subtitle--line:before {
        position: relative;
        content: "";
        background: url(../images/ico-line.svg) no-repeat;
        background-size: contain;
        display: inline-block;
        width: 40px;
        height: 40px;
        margin-right: 5px;
        vertical-align: middle; }
    .content__subtitle--02 {
      font-size: 21px;
      font-size: 2.1rem;
      line-height: 0.9523809524;
      text-align: center;
      margin-bottom: 7px; }
    .content__subtitle--03 {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.1111111111;
      text-align: center;
      margin-bottom: 5px; }
  .content__text {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.3333333333;
    font-weight: 200;
    white-space: normal;
    color: #3c1900; }
    .content__text--02 {
      font-size: 19px;
      font-size: 1.9rem;
      line-height: 1.0526315789;
      text-align: center; }
    .content__text--03 {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.1111111111;
      text-align: center; }
    .content__text--dot {
      position: relative;
      padding: 0 0 0 16px;
      margin: 0;
      white-space: normal; }
      .content__text--dot:before {
        content: "●";
        position: absolute;
        color: #e64800;
        top: 0;
        left: 0;
        margin-right: 2px; }
    .content__text--astrsk {
      position: relative;
      padding: 0 0 0 16px;
      margin: 0;
      white-space: normal; }
      .content__text--astrsk:before {
        content: "※";
        position: absolute;
        color: #e64800;
        top: 0;
        left: 0;
        margin-right: 2px; }
    .content__text--astrsk02 {
      position: relative;
      padding: 0 0 0 16px;
      margin: 0;
      white-space: normal; }
      .content__text--astrsk02:before {
        content: "※";
        position: absolute;
        color: #3c1900;
        top: 0;
        left: 0;
        margin-right: 2px; }
    .content__text--notice {
      position: relative;
      padding: 0 0 0 16px;
      margin: 0;
      white-space: normal; }
      .content__text--notice:before {
        content: "※";
        position: absolute;
        color: #3c1900;
        top: 0;
        left: 0;
        margin-right: 2px; }
  .content__notice-box {
    position: relative;
    background-color: #ffffff;
    padding: 40px 16px 30px;
    margin: 50px 5px 0;
    border: 5px solid #e64800;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    box-sizing: border-box;
    text-align: left; }
    .content__notice-box--title {
      position: absolute;
      top: -25px;
      left: 8%;
      background-color: #ffffff;
      border: 5px solid #e64800;
      padding: 10px 15px;
      -webkit-border-radius: 30px;
      -moz-border-radius: 30px;
      border-radius: 30px;
      -moz-background-clip: padding;
      -webkit-background-clip: padding-box;
      background-clip: padding-box;
      font-weight: 500;
      text-align: center; }
  .content__link {
    display: inline-block;
    background-image: linear-gradient(to right, #e64800 0%, #e46a00 100%);
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 700;
    color: #ffffff;
    text-decoration: none;
    padding: 1px 12px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    margin-left: 10px; }
    .content__link:hover {
      opacity: .75; }
  .content__footer--text01 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4444444444; }
  .content__footer--text02 {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 0.7692307692; }
  .content__footer--text03 {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6666666667; }
  @media (max-width: 767px) {
    .content {
      padding: 2.6666666667vw 5.3333333333vw 0; }
      .content__icon {
        right: 3.4843205575vw; }
        .content__icon--items img {
          width: 8.362369338vw; }
          .content__icon--items img .ico-t {
            width: 7.6655052265vw; }
        .content__icon--items + .content__icon--items {
          margin-left: 3.4843205575vw; }
      .content__inner {
        width: 100%;
        margin: 5.2264808362vw auto;
        padding: 13vw 0 1vw;
        border-radius: 0.6968641115vw; }
        .content__inner--twitter {
          padding: 0; }
        .content__inner:last-child {
          margin-bottom: 10vw !important; }
      .content__head {
        margin-bottom: 7.4666666667vw; }
      .content__title {
        font-size: 5.3333333333vw;
        line-height: 6.4vw;
        text-align: left; }
      .content__subtitle {
        font-size: 5.2264808362vw !important; }
        .content__subtitle--02 {
          font-size: 4.181184669vw !important; }
      .content__line {
        padding: 0.3484320557vw 0; }
      .content__text {
        font-size: 2.787456446vw !important;
        line-height: 1.3; }
        .content__text--02 {
          font-size: 3.8327526132vw !important; }
        .content__text--03 {
          font-size: 3.4843205575vw; }
        .content__text--dot {
          position: relative;
          padding: 0 0 0 11px;
          margin: 0;
          white-space: normal; }
          .content__text--dot:before {
            content: "●";
            position: absolute;
            color: #e64800;
            top: 0;
            left: 0;
            margin-right: 2px; }
        .content__text--astrsk {
          position: relative;
          padding: 0 0 0 11px;
          margin: 0;
          white-space: normal; }
          .content__text--astrsk:before {
            content: "※";
            position: absolute;
            color: #e64800;
            top: 0;
            left: 0;
            margin-right: 2px; }
        .content__text--astrsk02 {
          position: relative;
          padding: 0 0 0 11px;
          margin: 0;
          white-space: normal; }
          .content__text--astrsk02:before {
            margin-right: 1px; }
        .content__text--notice {
          position: relative;
          padding: 0 0 0 11px;
          margin: 0;
          white-space: normal; }
          .content__text--notice:before {
            content: "※";
            position: absolute;
            color: #3c1900;
            top: 0;
            left: 0;
            margin-right: 2px; }
      .content__notice-box {
        position: relative;
        background-color: #ffffff;
        padding: 30px 16px 20px;
        margin: 10vw 1.0452961672vw 0;
        border: 1.0452961672vw solid #e64800;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        box-sizing: border-box; }
        .content__notice-box--title {
          top: -5.2264808362vw;
          left: 4%;
          font-size: 3.1358885017vw !important;
          background-color: #ffffff;
          border: 1.0452961672vw solid #e64800;
          padding: 1.7421602787vw 3.4843205575vw 2.0905923345vw;
          -webkit-border-radius: 10.4529616725vw;
          -moz-border-radius: 10.4529616725vw;
          border-radius: 10.4529616725vw;
          -moz-background-clip: padding;
          -webkit-background-clip: padding-box;
          background-clip: padding-box; }
      .content__link {
        display: inline-block;
        background-image: linear-gradient(to right, #e64800 0%, #e46a00 100%);
        font-size: 3.1358885017vw !important;
        font-weight: 700;
        color: #ffffff;
        text-decoration: none;
        padding: 0.3484320557vw 2.787456446vw;
        -webkit-border-radius: 2px;
        -moz-border-radius: 2px;
        border-radius: 2px;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        margin-left: 3.1358885017vw; }
        .content__link:hover {
          opacity: .75; }
      .content__footer--text01 {
        font-size: 3.1358885017vw !important;
        line-height: 1.6; }
      .content__footer--text02 {
        font-size: 26px;
        font-size: 2.6rem;
        line-height: 0.7692307692; }
      .content__footer--text03 {
        font-size: 2.787456446vw !important; } }

.faq__title {
  width: 74%;
  background-color: #ffffff;
  border: 5px solid #e64800;
  padding: 10px 15px;
  margin: 0 auto;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  font-weight: 500;
  text-align: center; }
.faq__lead {
  position: relative;
  padding-left: 1.8em;
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 1.2380952381;
  text-align: left;
  font-weight: 700;
  margin-top: 1em;
  margin-bottom: 0.4em; }
  .faq__lead:before {
    position: absolute;
    content: "";
    background: url(../images/ico-faq.svg) no-repeat;
    background-size: contain;
    display: inline-block;
    left: 0;
    top: 50%;
    margin-top: -16px;
    width: 34px;
    height: 42px;
    margin-right: 2px;
    vertical-align: middle; }
@media (max-width: 767px) {
  .faq__title {
    width: 70%;
    font-size: 3.1358885017vw !important;
    background-color: #ffffff;
    border: 1.0452961672vw solid #e64800;
    padding: 1.7421602787vw 3.4843205575vw 2.0905923345vw;
    -webkit-border-radius: 10.4529616725vw;
    -moz-border-radius: 10.4529616725vw;
    border-radius: 10.4529616725vw;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box; }
  .faq__lead {
    padding-left: 6.968641115vw;
    font-size: 4.181184669vw !important; }
    .faq__lead:before {
      left: 0;
      top: 50%;
      margin-top: -2.787456446vw;
      width: 6.2717770035vw;
      height: 8.362369338vw;
      margin-right: 1px;
      vertical-align: middle; } }

.lead {
  margin-top: 50px; }
  .lead p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    text-align: center;
    color: #3c1900; }
  .lead__img {
    text-align: center;
    margin-bottom: 15px; }

.row {
  display: flex;
  display: -webkit-flex;
  justify-content: flex-start;
  align-items: center; }
  .row:nth-child(odd) {
    background: #ffffff; }
  .row__item {
    width: 50%; }
    .row__item img {
      width: 100%;
      height: auto;
      vertical-align: bottom; }
  .row__inner {
    width: 450px;
    margin: 0 auto; }
    .row__inner > p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.7142857143;
      color: #3c1900; }
  .row__title {
    margin-bottom: 50px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.7;
    font-weight: 600;
    font-weight: bold; }
  @media (max-width: 767px) {
    .row {
      flex-direction: column;
      border-bottom: 1px solid #f0f0f0;
      padding: 10.6666666667vw 4.2666666667vw 13.3333333333vw; }
      .row:nth-child(even) {
        background: #fafafa; }
      .row__item {
        width: 100%;
        box-sizing: border-box; }
        .row__item.is--order-1 {
          order: 1; }
        .row__item.is--order-2 {
          order: 2; }
        .row__item img {
          height: 64vw;
          width: 100%;
          object-fit: cover;
          -webkit-border-radius: 2.6666666667vw;
          -moz-border-radius: 2.6666666667vw;
          border-radius: 2.6666666667vw;
          -moz-background-clip: padding;
          -webkit-background-clip: padding-box;
          background-clip: padding-box; }
      .row__inner {
        width: 100%;
        margin: 6.4vw 0 0; }
        .row__inner > p {
          font-size: 3.7333333333vw; }
      .row__title {
        margin-bottom: 4.8vw;
        font-size: 4.8vw;
        text-align: center; } }

.kaitou {
  padding-top: 0;
  padding-bottom: 20px;
  margin-bottom: 60px;
  text-align: center; }
  .kaitou img {
    width: 100%;
    height: auto; }
  .kaitou a img {
    width: 50%;
    height: auto; }
  .kaitou--02 img {
    width: 100%;
    height: auto; }
  .kaitou--02 a img {
    width: 50%;
    height: auto;
    margin: 0 25%; }
  .kaitou--03 {
    min-height: 96vh;
    margin-top: 12vh;
    padding-top: 28vh;
    background-image: url("../kaitou/img/bg_fail.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
    .kaitou--03 .flex {
      display: flex;
      width: 100%;
      padding: 0;
      justify-content: center;
      align-content: center;
      box-sizing: border-box; }
      .kaitou--03 .flex a img {
        width: 39vw;
        height: auto;
        margin: 0 2vw; }
  .kaitou--04 {
    min-height: 96vh;
    margin-top: 2vh;
    padding-top: 64vh;
    background-image: url("../kaitou/img/m_img03.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
    .kaitou--04 .flex {
      display: flex;
      width: 100%;
      padding: 0;
      justify-content: center;
      align-content: center;
      box-sizing: border-box; }
      .kaitou--04 .flex a img {
        width: 10vw;
        height: auto;
        margin: 0 0.2vw; }
  .kaitou--05 {
    min-height: 96vh;
    margin-top: 2vh;
    padding-top: 73vh;
    background-image: url("../kaitou/img/s_img03.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
    .kaitou--05 .flex {
      display: flex;
      width: 100%;
      padding: 0;
      justify-content: center;
      align-content: center;
      box-sizing: border-box; }
      .kaitou--05 .flex a img {
        width: 10vw;
        height: auto;
        margin: 0 0.2vw; }
  .kaitou--06 {
    min-height: 96vh;
    margin-top: 2vh;
    padding-top: 106vh;
    background-image: url("../kaitou/img/j_img03.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
    .kaitou--06 .flex {
      display: flex;
      width: 100%;
      padding: 0;
      justify-content: center;
      align-content: center;
      box-sizing: border-box; }
      .kaitou--06 .flex a img {
        width: 10vw;
        height: auto;
        margin: 0 0.2vw; }
  .kaitou--07 {
    min-height: 96vh;
    margin-top: 12vh;
    padding-top: 28vh;
    background-image: url("../kaitou/img/bg_fail02.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
    .kaitou--07-02 {
      background-image: url("../kaitou/img/bg_fail03.png"); }
    .kaitou--07 .flex {
      display: flex;
      width: 100%;
      padding: 0;
      justify-content: center;
      align-content: center;
      box-sizing: border-box; }
      .kaitou--07 .flex a img {
        width: 39vw;
        height: auto;
        margin: 0 2vw; }
  .kaitou--08 {
    min-height: 96vh;
    margin-top: 2vh;
    padding-top: 195vw;
    background-image: url("../kaitou/img/l_img13.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
    .kaitou--08 .flex {
      display: flex;
      width: 100%;
      padding: 6vh 0 0;
      justify-content: center;
      align-content: center;
      box-sizing: border-box; }
      .kaitou--08 .flex a img {
        width: 10vw;
        height: auto;
        margin: 0 0.2vw; }
  @media screen and (min-width: 768px) {
    .kaitou {
      margin-bottom: 20px; }
      .kaitou--03 {
        min-height: 96vh;
        margin-top: 100px;
        padding-top: 260px; }
        .kaitou--03 .flex a img {
          width: 210px;
          margin: 0 10px; }
      .kaitou--04 {
        min-height: 96vh;
        margin-top: 0;
        padding-top: 600px; }
        .kaitou--04 .flex {
          display: flex;
          width: 100%;
          padding: 0;
          justify-content: center;
          align-content: center;
          box-sizing: border-box; }
          .kaitou--04 .flex a img {
            width: 48px;
            height: auto;
            margin: 0 2px; }
      .kaitou--05 {
        min-height: 96vh;
        margin-top: 0;
        padding-top: 680px; }
        .kaitou--05 .flex {
          display: flex;
          width: 100%;
          padding: 0;
          justify-content: center;
          align-content: center;
          box-sizing: border-box; }
          .kaitou--05 .flex a img {
            width: 48px;
            height: auto;
            margin: 0 2px; }
      .kaitou--06 {
        min-height: 96vh;
        margin-top: 0;
        padding-top: 980px; }
        .kaitou--06 .flex {
          display: flex;
          width: 100%;
          padding: 0;
          justify-content: center;
          align-content: center;
          box-sizing: border-box; }
          .kaitou--06 .flex a img {
            width: 48px;
            height: auto;
            margin: 0 2px; }
      .kaitou--07 {
        min-height: 96vh;
        margin-top: 100px;
        padding-top: 270px; }
        .kaitou--07 .flex {
          display: flex;
          width: 100%;
          padding: 0;
          justify-content: center;
          align-content: center;
          box-sizing: border-box; }
          .kaitou--07 .flex a img {
            width: 210px;
            margin: 0 10px; }
      .kaitou--08 {
        min-height: 96vh;
        margin-top: 0;
        padding-top: 1120px; }
        .kaitou--08 .flex {
          display: flex;
          width: 100%;
          padding: 0;
          justify-content: center;
          align-content: center;
          box-sizing: border-box; }
          .kaitou--08 .flex a img {
            width: 48px;
            height: auto;
            margin: 0 2px; } }

.gsform {
  width: 100%;
  padding: 4vw 2vw 2vw 0;
  margin: 0;
  text-align: center;
  box-sizing: border-box; }
  .gsform-02 {
    padding-top: 0; }
  .gsform__submit {
    width: 16vw;
    height: 11vw;
    border: 0px solid;
    cursor: pointer;
    vertical-align: bottom; }
    .gsform__submit--01 {
      background: url("../kaitou/img/btn.png");
      background-position: center top;
      background-size: cover;
      background-repeat: no-repeat;
      width: 20vw;
      height: 11vw;
      border: none;
      border-radius: 7px;
      cursor: pointer;
      vertical-align: bottom; }
  .gsform__txtform {
    background-color: #fff;
    vertical-align: bottom;
    font-size: 1em;
    color: #b0895d;
    margin: 0 3vw 0 0;
    width: 50%;
    height: 13vw;
    padding: 0.5vw 0;
    text-align: left; }
    .gsform__txtform--01 {
      background-color: #fff;
      vertical-align: bottom;
      font-size: 20px;
      color: #4c2200;
      margin: 0 2.8vw 0;
      height: 11vw;
      padding: 0.5vw 2vw 05vw 3vw;
      text-align: left;
      height: 11vw;
      padding: 0 1vw 0 3vw;
      width: 62%;
      border: 1px solid #ec6100;
      border-radius: 7px;
      box-sizing: border-box; }
  @media screen and (min-width: 768px) {
    .gsform {
      width: 100%;
      padding: 20px 0 20px 0;
      margin: 0;
      text-align: center; }
      .gsform__submit {
        width: 75%;
        height: 50px;
        border: 0px solid;
        cursor: pointer;
        vertical-align: bottom; }
        .gsform__submit--01 {
          background-position: center top;
          background-size: cover;
          background-repeat: no-repeat;
          width: 100px;
          height: 60px;
          cursor: pointer;
          vertical-align: bottom;
          border-radius: 7px;
          box-shadow: none; }
      .gsform__txtform {
        background-color: #fff;
        vertical-align: bottom;
        font-size: 1em;
        color: #b0895d;
        border: 1px #000;
        margin: 0 50px;
        width: 64%;
        height: 45px;
        padding: 0 1em;
        text-align: left; }
        .gsform__txtform--01 {
          background-color: #fff;
          vertical-align: bottom;
          font-size: 20px;
          color: #4c2200;
          border: 1px solid #ec6100;
          margin: 0 5px 0 0;
          padding: 0.5em 1em;
          text-align: left;
          height: 60px;
          width: calc(100% - 150px); } }

.accordion {
  width: 100%;
  text-align: center;
  padding: 4vw 4vw 0;
  box-sizing: border-box; }
  .accordion ul {
    width: auto;
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left;
    font-size: 3.5vw;
    font-weight: 200;
    line-height: 1.6; }
    .accordion ul .hint-second {
      margin-left: 0; }
  .accordion li {
    color: #4d2200;
    margin: 2vw 0 4vw 0;
    padding-left: 0;
    text-align: left;
    font-size: 4vw;
    font-weight: 200;
    line-height: 1.7;
    white-space: normal; }
    .accordion li ul {
      margin: 0; }
      .accordion li ul li ul {
        margin: 0; }
        .accordion li ul li ul li ul {
          margin: 0; }
          .accordion li ul li ul li ul li ul {
            margin: 0; }
            .accordion li ul li ul li ul li ul li ul {
              margin: 0; }
              .accordion li ul li ul li ul li ul li ul li ul {
                margin: 0; }
  .accordion-02 {
    padding-top: 0;
    margin-bottom: -4.5vw; }
  .accordion__inner {
    border: 1px solid #eb6100;
    border-radius: 8px;
    padding: 0.7em 0.7em;
    margin-bottom: 0.7vw;
    background: #fff; }
    .accordion__inner-02 {
      padding-top: 0.4em;
      border: none;
      background: transparent; }
      .accordion__inner-02 img {
        width: 42%;
        height: auto; }
    .accordion__inner:hover {
      opacity: 1; }
    .accordion__inner a {
      cursor: pointer;
      color: #4d2200;
      font-size: 4.2vw;
      font-weight: 200;
      line-height: 1.6;
      font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      display: block;
      text-decoration: none; }
  @media screen and (min-width: 768px) {
    .accordion {
      padding: 30px 20px 0;
      margin-bottom: -40px;
      width: 100%;
      box-sizing: border-box; }
      .accordion-02 {
        padding-top: 0;
        margin-bottom: -20px; }
      .accordion ul {
        list-style: none;
        margin: 0;
        padding: 0;
        text-align: left;
        font-size: 20px;
        font-weight: 200;
        line-height: 1.6; }
        .accordion ul .hint-second {
          margin-left: 0; }
      .accordion li {
        margin: 15px 0 10px 0;
        text-align: left;
        font-size: 16px;
        font-weight: 200;
        line-height: 1.7; }
      .accordion__inner {
        font-size: 16px; }
        .accordion__inner a {
          font-size: 16px; } }

label {
  cursor: pointer;
  color: #4d2200;
  font-size: 4.2vw;
  font-weight: 300;
  line-height: 1.6;
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }
  @media screen and (min-width: 768px) {
    label {
      font-size: 16px; } }

.toggle {
  display: none; }

.toggle + ul {
  max-height: 0;
  overflow: hidden;
  transition: all .1s ease-out; }

.toggle:checked + ul {
  max-height: 9999px;
  transition: all 3s ease-in; }
