@charset "UTF-8";
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 {
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0; }

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, q:before, q:after {
  content: none; }

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

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

.clearfix {
  display: inline-block; }

/* Hides from IE Mac */
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* ---------- 初期 ---------- */
body {
  letter-spacing: 0.01em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  -webkit-text-size-adjust: 100%;
  color: #535353; }

img {
  max-width: 100%;
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  user-select: none; }

a {
  text-decoration: none; }

strong {
  font-weight: bold; }

/* ---------- /共通部分 ---------- */
#jougetyuou {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: auto; }

#kadomaru {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }

#resbtn {
  -webkit-appearance: none; }

.ancr {
  position: relative;
  transition: 0.5s; }

.anca {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 10;
  cursor: pointer; }

.ancr:hover {
  opacity: 0.75;
  transition: 0.5s;
  cursor: pointer; }

/* ---------- /参考タグ部分 ---------- */
.wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.marugo {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: 700;
  font-style: normal; }

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
/* messageWrap */
.messageWrap {
  background-color: #F0EBE5;
  text-align: center; }

.messageWrap p {
  max-width: 960px;
  padding: 10px 30px;
  margin: 0 auto;
  color: #424242;
  font-weight: 700;
  box-sizing: border-box; }

.messageWrap .announceTitle {
  font-size: 16px;
  text-align: center;
  padding: 5px 10px; }

.messageWrap .announceMessage {
  font-size: 16px;
  text-align: center;
  padding: 0 10px 5px; }

@media screen and (max-width: 767px) {
  .messageWrap .announceTitle {
    font-size: 12px; }

  .messageWrap .announceMessage {
    font-size: 12px;
    text-align: left; } }
/* PC */
@media screen and (min-width: 701px) {
  .sponly {
    display: none !important; }

  .btn01 {
    width: 205px;
    margin: 0 auto;
    box-sizing: border-box;
    border: solid 2px #fff;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    text-align: center;
    position: relative; }
    .btn01:after {
      content: '';
      display: block;
      background: #fff;
      width: 22px;
      height: 13px;
      position: absolute;
      right: -4px;
      top: 0;
      z-index: 3; }
    .btn01 a {
      width: 100%;
      display: block;
      position: relative;
      z-index: 2;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      border: solid 2px #AE9B77;
      color: #AE9B77;
      font-size: 16px;
      line-height: 1.8em;
      padding: 10px 0;
      box-sizing: border-box; }
      .btn01 a span {
        display: inline-block;
        padding-right: 52px;
        background: url("/static/img/arr.webp") no-repeat center right;
        background-size: 24px; }
    .btn01:hover:after {
      display: none; }
    .btn01:hover a {
      background: #AE9B77;
      color: #fff; }
      .btn01:hover a span {
        background-image: url("/static/img/arr-off.webp"); }

  .btn01-2 {
    width: 205px;
    margin: 0 auto;
    box-sizing: border-box;
    border: solid 2px #fff;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    text-align: center;
    position: relative;
    overflow: hidden;
    font-family: "fot-tsukuardgothic-std", sans-serif; }
    .btn01-2:after {
      content: '';
      display: block;
      background: #fff;
      width: 22px;
      height: 13px;
      position: absolute;
      right: -4px;
      top: 0;
      z-index: 3; }
    .btn01-2 a {
      width: 100%;
      display: block;
      position: relative;
      z-index: 2;
      box-sizing: border-box;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      border: solid 2px #AE9B77;
      color: #AE9B77;
      font-size: 20px;
      line-height: 1.8em;
      padding: 6px 0;
      background: #fff; }
      .btn01-2 a span {
        display: inline-block;
        padding-right: 35px;
        background: url("/static/img/arr.webp") no-repeat center right;
        background-size: 22px; }
    .btn01-2:hover:after {
      display: none; }
    .btn01-2:hover a {
      background: #AE9B77;
      color: #fff; }
      .btn01-2:hover a span {
        background-image: url("/static/img/arr-off.webp"); }

  .btn07 {
    width: 287px;
    margin: 0 auto;
    box-sizing: border-box;
    border: solid 2px #fff;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    text-align: center;
    position: relative; }
    .btn07:after {
      content: '';
      display: block;
      background: #fff;
      width: 15px;
      height: 15px;
      position: absolute;
      right: -4px;
      top: 0;
      z-index: 3; }
    .btn07 a {
      width: 100%;
      display: block;
      position: relative;
      z-index: 2;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      border: solid 1px #AE9B77;
      color: #AE9B77;
      font-size: 16px;
      line-height: 1.8em;
      padding: 5px 0; }
      .btn07 a span {
        display: inline-block;
        padding-right: 27px;
        background: url("/static/img/arr.webp") no-repeat center right;
        background-size: 21px; }
    .btn07:hover:after {
      display: none; }
    .btn07:hover a {
      background: #AE9B77;
      color: #fff; }
      .btn07:hover a span {
        background-image: url("/static/img/arr-off.webp"); }

  main.bg {
    background: url("../img/main_bg.webp") repeat-y center top;
    background-size: 100vw; }
  main.no {
    background-image: none !important; }
  main .underpage_body_subttl {
    max-width: 90vw;
    margin: 0 auto;
    text-align: center;
    font-size: 16px;
    position: relative;
    margin-bottom: 1em; }
    main .underpage_body_subttl span {
      display: inline-block;
      background: #fff;
      z-index: 3;
      padding: 0 2em;
      position: relative; }
    main .underpage_body_subttl:before {
      content: '';
      display: block;
      height: 1px;
      width: 342px;
      background: #535353;
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      z-index: 1; }
    main .underpage_body_subttl:after {
      content: '';
      display: block;
      height: 1px;
      width: 342px;
      background: #535353;
      position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      z-index: 1; }

  #head {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 10;
    transition: 0.3s; }
    #head.hi {
      top: -100%;
      transition: 0.3s; }
    #head.sc {
      background: #fff; }
      #head.sc .head_inner {
        transition: 0.3s; }
        #head.sc .head_inner .head_logo img {
          filter: none; }
        #head.sc .head_inner .head_login img {
          filter: none; }
        #head.sc .head_inner .headlabel {
          background-image: url("/static/img/icon_menu_open2.webp"); }
    #head.under {
      background: #fff !important; }
      #head.under .head_inner {
        background: #fff !important; }
        #head.under .head_inner .head_logo img {
          filter: none; }
        #head.under .head_inner .head_login img {
          filter: none; }
        #head.under .head_inner .headlabel {
          background-image: url("/static/img/icon_menu_open2.webp"); }
    #head.on {
      height: 100dvh;
      background: #fff;
      transition: 0.3s; }
    #head .head_inner {
      width: 90%;
      max-width: 900px;
      margin: 0 auto;
      position: relative; }
      #head .head_inner .head_logo {
        width: 162px;
        box-sizing: border-box;
        padding: 20px 0 20px 0;
        position: relative;
        z-index: 2; }
        #head .head_inner .head_logo a {
          display: block; }
        #head .head_inner .head_logo img {
          filter: brightness(0) invert(1); }
          #head .head_inner .head_logo img.on {
            filter: none; }
      #head .head_inner .head_login {
        position: absolute;
        right: 61px;
        top: 27px;
        z-index: 2;
        width: 41px; }
        #head .head_inner .head_login a {
          display: block; }
        #head .head_inner .head_login img {
          filter: brightness(0) invert(1); }
          #head .head_inner .head_login img.on {
            filter: none; }
      #head .head_inner .headbtn {
        display: none; }
      #head .head_inner .headbtn:checked + .headlabel {
        background-image: url("/static/img/icon_menu_close.webp"); }
      #head .head_inner .headbtn:checked + .headlabel + .head_body {
        opacity: 1;
        visibility: visible;
        right: -30px;
        transition: 0.3s;
        top: 0; }
      #head .head_inner .headlabel {
        position: absolute;
        width: 41px;
        height: 41px;
        right: 0;
        top: 27px;
        background: url("/static/img/icon_menu_open.webp") no-repeat center;
        background-size: 100%;
        display: block;
        z-index: 2; }
      #head .head_inner .head_body {
        position: absolute;
        opacity: 0;
        visibility: hidden;
        top: -100%;
        right: -30px;
        background: #fff;
        width: 440px;
        z-index: 1;
        box-sizing: border-box;
        padding: 118px 30px 50px 30px;
        height: auto;
        box-shadow: 2px -2px 8px rgba(0, 0, 0, 0.25);
        border-radius: 0 0 10px 10px; }
        #head .head_inner .head_body .head_course {
          position: absolute;
          right: 49px;
          bottom: 30px;
          width: 100px; }
          #head .head_inner .head_body .head_course a {
            display: block; }
            #head .head_inner .head_body .head_course a:hover {
              opacity: 0.9; }
        #head .head_inner .head_body .head_menu {
          box-sizing: border-box;
          padding-left: 19px; }
          #head .head_inner .head_body .head_menu li {
            font-size: 11px;
            margin-bottom: 5px;
            line-height: 1.6em; }
            #head .head_inner .head_body .head_menu li a {
              color: #535353; }
        #head .head_inner .head_body .head_sns_list {
          display: flex;
          box-sizing: border-box;
          padding-left: 19px;
          margin-bottom: 20px; }
          #head .head_inner .head_body .head_sns_list li {
            width: 34px;
            margin-right: 22px; }
        #head .head_inner .head_body .head_body_list {
          margin-bottom: 20px; }
          #head .head_inner .head_body .head_body_list li {
            width: 100%;
            margin: 0 auto;
            box-sizing: border-box;
            border: solid 2px #fff;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            text-align: left;
            position: relative;
            padding: 0 19px; }
            #head .head_inner .head_body .head_body_list li.active {
              background: #AE9B77; }
              #head .head_inner .head_body .head_body_list li.active a {
                color: #fff;
                border-radius: 100px;
                -webkit-border-radius: 100px;
                -moz-border-radius: 100px; }
                #head .head_inner .head_body .head_body_list li.active a span {
                  background-image: url("/static/img/arr-off.webp"); }
            #head .head_inner .head_body .head_body_list li a {
              width: 100%;
              display: block;
              position: relative;
              z-index: 2;
              border-radius: 0;
              border-bottom: solid 2px #AE9B77;
              color: #535353;
              font-size: 18px;
              line-height: 1.8em;
              padding: 5px 0;
              box-sizing: border-box; }
              #head .head_inner .head_body .head_body_list li a span {
                display: block;
                padding-right: 52px;
                background: url("/static/img/arr.webp") no-repeat center right;
                background-size: 24px; }
            #head .head_inner .head_body .head_body_list li:hover {
              background: #AE9B77; }
              #head .head_inner .head_body .head_body_list li:hover:after {
                display: none; }
              #head .head_inner .head_body .head_body_list li:hover a {
                color: #fff;
                border-radius: 100px;
                -webkit-border-radius: 100px;
                -moz-border-radius: 100px; }
                #head .head_inner .head_body .head_body_list li:hover a span {
                  background-image: url("/static/img/arr-off.webp"); }

  #voice {
    padding: 50px 0; }
    #voice .voice_ttl {
      width: 293px;
      margin: 0 auto 50px; }

  #topscene {
    background: url("/static/img/scene-bg_pc.webp") no-repeat center;
    background-size: 1200px;
    padding: 90px 0; }
    #topscene .topscene_ttl {
      text-align: center;
      color: #AE9B77;
      font-size: 30px;
      letter-spacing: 0.1em;
      margin-bottom: 25px; }
    #topscene .topscene_slider2 {
      display: flex;
      justify-content: center; }
      #topscene .topscene_slider2 .topscene_slide {
        margin: 0 13px;
        width: 365px; }
        #topscene .topscene_slider2 .topscene_slide a:hover {
          opacity: 0.9; }
        #topscene .topscene_slider2 .topscene_slide img {
          width: 100%;
          height: auto;
          display: block; }
        #topscene .topscene_slider2 .topscene_slide .topscene_slide_txt {
          font-size: 16px;
          margin-top: 10px;
          line-height: 1.75em;
          text-align: center; }
      #topscene .topscene_slider2 .prev-arrow {
        width: 45px;
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2; }
        #topscene .topscene_slider2 .prev-arrow img {
          width: 100%; }
      #topscene .topscene_slider2 .next-arrow {
        width: 45px;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2; }
        #topscene .topscene_slider2 .next-arrow img {
          width: 100%; }
      #topscene .topscene_slider2 .slide-dots {
        position: absolute;
        bottom: -110px;
        left: 0;
        width: 100%;
        text-align: center;
        font-size: 0;
        z-index: 3; }
        #topscene .topscene_slider2 .slide-dots li {
          display: inline-block;
          margin: 0 5px; }
          #topscene .topscene_slider2 .slide-dots li button {
            font-size: 0;
            border: none;
            width: 15px;
            height: 15px;
            background: url("/static/img/dot-scene_off.webp") no-repeat center;
            background-size: 9px; }
          #topscene .topscene_slider2 .slide-dots li.slick-active button {
            background-image: url("/static/img/dot-scene_on.webp");
            background-size: 15px; }

  #mv {
    position: relative; }
    #mv:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      bottom: -40px;
      width: 100%;
      height: 166px;
      background: url("/static/img/mv_cover_pc.webp") no-repeat center top;
      background-size: cover;
      z-index: 2; }
    #mv .mb_btn {
      position: absolute;
      right: 50px;
      bottom: 50px;
      width: 126px;
      z-index: 2; }
      #mv .mb_btn a {
        display: block; }
    #mv .mv_slider_pc {
      position: relative;
      z-index: 1; }
      #mv .mv_slider_pc .mv_slide {
        width: 100%;
        height: 58.8vw;
        background-repeat: no-repeat;
        background-position: center top;
        background-size: cover; }

  #topabout {
    background: #F0EBE5;
    text-align: center;
    padding-top: 100px;
    position: relative; }
    #topabout .topabout_inner {
      width: 540px;
      margin: 0 auto;
      position: relative; }
    #topabout .topabout_ttl {
      width: 100px;
      position: absolute;
      right: 0;
      top: 0; }
    #topabout .topabout_txt {
      padding-top: 60px;
      font-size: 18px;
      line-height: 1.6em;
      text-align: left;
      color: #594A34;
      margin-bottom: 50px; }
    #topabout .topabout_img {
      width: 343px;
      margin: 0 auto;
      padding-bottom: 140px; }
    #topabout .scroll-infinity__wrap {
      display: flex;
      overflow: hidden; }
    #topabout .scroll-infinity__list {
      display: flex;
      list-style: none;
      padding: 0;
      margin-bottom: -30px; }
    #topabout .scroll-infinity__list--left {
      animation: infinity-scroll-left 80s infinite linear 0.5s both; }
    #topabout .scroll-infinity__item {
      width: 150px;
      height: 150px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      text-align: center;
      margin: 0 -15px; }
      #topabout .scroll-infinity__item.infinity__item2 span img {
        max-width: 200%;
        position: relative;
        z-index: 10; }
    #topabout .scroll-infinity__item span img {
      width: 100%;
      max-width: 70px; }

  .anclink {
    padding-top: 90px;
    margin-top: -90px; }

  .anclink2 {
    padding-top: 100px;
    margin-top: -100px; }

  #top_kodawari {
    padding: 150px 0 0; }
    #top_kodawari .kodawari_ttl {
      width: 337px;
      margin: 0 auto 80px; }
    #top_kodawari .kodawari_boxes {
      width: 900px;
      margin: 0 auto; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_sub {
        margin-bottom: 30px; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_sub img {
          width: 100%;
          height: auto; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img {
        margin: 0 auto 30px;
        position: relative; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl {
          position: absolute;
          left: 309px;
          top: -6px;
          color: #917346;
          line-height: 1.46em;
          font-size: 22px;
          letter-spacing: 0.06em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl .big {
            font-size: 30px;
            display: inline-block;
            margin: 8px 0;
            letter-spacing: 0.1em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt {
          width: 265px;
          position: absolute;
          left: 446px;
          top: 230px;
          font-size: 16px;
          text-align: justify;
          line-height: 1.55em;
          letter-spacing: 0.04em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl3 {
          position: absolute;
          left: 309px;
          top: -6px;
          color: #917346;
          line-height: 1.46em;
          font-size: 22px;
          letter-spacing: 0.06em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl3 .big {
            font-size: 30px;
            margin: 7px 0;
            line-height: 1.7em;
            letter-spacing: 0.1em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt3 {
          width: 400px;
          position: absolute;
          left: 314px;
          top: 151px;
          font-size: 16px;
          text-align: justify;
          line-height: 1.55em;
          letter-spacing: 0.04em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl2 {
          position: absolute;
          left: 311px;
          top: -7px;
          color: #917346;
          line-height: 1.46em;
          font-size: 22px;
          letter-spacing: 0.06em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl2 sup {
            font-size: 58%;
            position: relative;
            top: -0.6em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl2 .big {
            font-size: 32px;
            display: inline-block;
            margin: -5px 0;
            line-height: 1.4;
            letter-spacing: 0.1em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt2 {
          width: 402px;
          position: absolute;
          left: 309px;
          top: 179px;
          font-size: 16px;
          text-align: justify;
          line-height: 1.50em;
          letter-spacing: 0.08em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt2 sup {
            font-size: 58%;
            position: relative;
            top: -0.6em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko {
          position: absolute;
          left: 310px;
          top: 688px;
          width: 404px;
          letter-spacing: 0;
          line-height: 0.95em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li {
            font-size: 11px;
            position: relative;
            padding-left: 2em;
            text-align: justify; }
            #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li sup {
              font-size: 73%;
              position: relative;
              display: inline-block;
              margin-top: -1em;
              top: -0.4em; }
            #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li:nth-child(1):before {
              content: '※1';
              position: absolute;
              left: 0;
              top: 0; }
            #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li:nth-child(2):before {
              content: '※2';
              position: absolute;
              left: 0;
              top: 0; }
            #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li:nth-child(3):before {
              content: '※3';
              position: absolute;
              left: 0;
              top: 0; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_btn {
        margin-top: -70px;
        margin-bottom: 150px; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_btn .btn01 a {
          font-size: 20px;
          padding: 5px 0; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_btn .btn01 a span {
            padding-right: 32px;
            padding-left: 20px; }
      #top_kodawari .kodawari_boxes .kodawari_box:last-child .kodawari_btn {
        margin-bottom: 100px; }

  #benri {
    padding: 100px 0; }
    #benri .benri_inner {
      width: 98%;
      max-width: 900px;
      margin: 0 auto; }
      #benri .benri_inner .benri_ttl {
        width: 246px;
        margin: 0 auto 44px; }
      #benri .benri_inner .benri_txt {
        font-size: 18px;
        line-height: 1.5em;
        letter-spacing: 0.15em;
        font-weight: 700;
        text-align: center;
        margin-bottom: 40px; }
      #benri .benri_inner .benri_list {
        display: flex;
        justify-content: center;
        grid-gap: 38px; }
        #benri .benri_inner .benri_list li {
          width: 260px; }
          #benri .benri_inner .benri_list li:nth-child(2) {
            width: 260px; }
          #benri .benri_inner .benri_list li:nth-child(3) {
            width: 260px; }
      #benri .benri_inner .benri_img {
        width: 360px;
        margin: 50px auto 0;
        box-sizing: border-box;
        border: solid 1px #AE9B77;
        border-radius: 10px;
        text-align: center;
        padding: 16px 0;
        position: relative; }
        #benri .benri_inner .benri_img:before {
          content: '';
          display: block;
          width: 37px;
          height: 37px;
          background: url("/static/img/icon_top_benri.webp") no-repeat center;
          background-size: contain;
          position: absolute;
          top: -10px;
          left: -7px; }
        #benri .benri_inner .benri_img .benri_img_txt1 {
          color: #AE9B77;
          font-size: 13px; }
        #benri .benri_inner .benri_img .benri_img_txt2 {
          font-size: 14px;
          color: #AE9B77;
          font-weight: 600;
          letter-spacing: 0.008em;
          margin: 3px 0 3px;
          line-height: 1.4em; }
        #benri .benri_inner .benri_img .benri_img_txt3 {
          font-size: 9px; }

  .select {
    width: 750px;
    margin: 0 auto;
    background: #fff;
    padding-bottom: 40px;
    padding-top: 20px;
    border-radius: 10px; }
    .select .select_ttl {
      text-align: center;
      font-size: 20px;
      font-weight: 700;
      color: #AE9B77;
      padding-bottom: 57px;
      background: url("../img/select_ttl_bg.webp") no-repeat center top;
      background-size: 200px;
      padding-top: 23px;
      margin-top: -65px; }
    .select .select_courseflow {
      text-align: center;
      font-size: 12px;
      line-height: 1.6em;
      padding-bottom: 20px; }
      .select .select_courseflow .select_courseflow_img {
        width: 420px;
        margin: 0 auto; }
    .select .select_sub {
      position: relative;
      text-align: center;
      margin-bottom: 15px;
      margin-top: 13px; }
      .select .select_sub.select_sub2 {
        margin-top: 0; }
      .select .select_sub.select_sub3 {
        margin-bottom: 11px;
        margin-top: 0;
        box-sizing: border-box;
        margin-left: 35px;
        margin-right: 35px; }
        .select .select_sub.select_sub3:before {
          width: 100%;
          left: 0; }
        .select .select_sub.select_sub3 .txt {
          font-size: 16px;
          width: 294px;
          letter-spacing: 0.02em; }
      .select .select_sub.select_sub4 {
        margin-top: 0; }
        .select .select_sub.select_sub4:before {
          width: 100%;
          left: 0; }
        .select .select_sub.select_sub4 .txt {
          font-size: 16px;
          width: 120px;
          letter-spacing: 0.02em; }
      .select .select_sub:before {
        content: '';
        height: 1px;
        width: 84%;
        display: block;
        background: #F0EBE5;
        position: absolute;
        left: 8%;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1; }
      .select .select_sub .txt {
        display: inline-block;
        position: relative;
        z-index: 2;
        background: #fff;
        width: 138px;
        font-size: 16px;
        line-height: 1.2em; }
        .select .select_sub .txt span {
          display: block;
          margin: 0 auto; }
    .select .select_imgs {
      position: relative;
      height: 830px;
      margin-bottom: 40px;
      background: #fff;
      width: 750px;
      border-radius: 10px;
      box-sizing: border-box;
      padding: 30px; }
      .select .select_imgs .select_img1 {
        position: absolute;
        left: 35px;
        top: 69px;
        width: 330px; }
        .select .select_imgs .select_img1 .clink {
          display: block;
          position: absolute;
          left: 0;
          width: 100%;
          top: 420px;
          height: 170px;
          background: rgba(255, 255, 255, 0);
          border-radius: 10px;
          z-index: 3; }
          .select .select_imgs .select_img1 .clink:hover {
            background: rgba(255, 255, 255, 0.1); }
      .select .select_imgs .select_img2 {
        position: absolute;
        right: 35px;
        top: 69px;
        width: 330px; }
        .select .select_imgs .select_img2 .clink {
          display: block;
          position: absolute;
          left: 0;
          width: 100%;
          top: 420px;
          height: 170px;
          background: rgba(255, 255, 255, 0);
          border-radius: 10px;
          z-index: 3; }
          .select .select_imgs .select_img2 .clink:hover {
            background: rgba(255, 255, 255, 0.1); }
    .select .select_img3 {
      width: 513px;
      margin: 0 auto; }
    .select .select_img {
      box-sizing: border-box;
      position: relative;
      box-sizing: border-box; }
      .select .select_img img {
        width: 100%;
        display: block;
        position: relative;
        z-index: 1; }
      .select .select_img .btn02 {
        position: absolute;
        left: 0;
        bottom: 30px;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn02 a {
          display: block;
          width: 100%;
          height: 104px;
          background: url("/static/img/course_btnpc_01_on.webp") no-repeat center;
          background-size: contain;
          z-index: 2; }
          .select .select_img .btn02 a:hover {
            background-image: url("/static/img/course_btnpc_01_off.webp");
            cursor: pointer; }
      .select .select_img .btn03 {
        position: absolute;
        left: 0;
        bottom: 30px;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn03 a {
          display: block;
          width: 100%;
          height: 104px;
          background: url("/static/img/course_btnpc_02_on.webp") no-repeat center;
          background-size: contain;
          z-index: 2; }
          .select .select_img .btn03 a:hover {
            background-image: url("/static/img/course_btnpc_02_off.webp");
            cursor: pointer; }
      .select .select_img .btn02mini {
        position: absolute;
        left: 40px;
        bottom: -21px;
        width: 256px;
        height: 57px;
        z-index: 2; }
        .select .select_img .btn02mini a {
          display: block;
          width: 100%;
          height: 100%;
          background: url("/static/img/btn_coursemini.webp") no-repeat center;
          background-size: contain;
          z-index: 2; }
          .select .select_img .btn02mini a:hover {
            background-image: url("/static/img/btn_coursemini_on.webp"); }
      .select .select_img .btn04 {
        position: absolute;
        left: 105px;
        bottom: 8px;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn04 a {
          display: block;
          width: 133px;
          height: 60px;
          background: url("/static/img/omakase03-01.webp") no-repeat center;
          background-size: contain;
          z-index: 2; }
          .select .select_img .btn04 a:hover {
            background-image: url("/static/img/omakase03-01_on.webp"); }
      .select .select_img .btn05 {
        position: absolute;
        left: 280px;
        bottom: 8px;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn05 a {
          display: block;
          width: 133px;
          height: 60px;
          background: url("/static/img/omakase04-01.webp") no-repeat center;
          background-size: contain;
          z-index: 2; }
          .select .select_img .btn05 a:hover {
            background-image: url("/static/img/omakase04-01_on.webp"); }
      .select .select_img .kakaku1 {
        display: block;
        width: 80px;
        height: 20px;
        background: rgba(255, 255, 255, 0);
        position: absolute;
        bottom: 78px;
        left: 130px;
        z-index: 2; }
        .select .select_img .kakaku1:hover {
          background: rgba(255, 255, 255, 0.1);
          cursor: pointer; }
      .select .select_img .kakaku2 {
        display: block;
        width: 80px;
        height: 20px;
        background: rgba(255, 255, 255, 0);
        position: absolute;
        bottom: 78px;
        right: 124px;
        z-index: 2; }
        .select .select_img .kakaku2:hover {
          background: rgba(255, 255, 255, 0.1);
          cursor: pointer; }

  #topmenu {
    background: #F0EBE5;
    padding: 100px 0; }
    #topmenu .topmenu_kumiawase {
      background: url("/static/img/kumiawase_bg_pc.webp") no-repeat center top;
      background-size: 770px;
      padding-top: 33px;
      padding-bottom: 76px;
      position: relative;
      margin-bottom: 100px; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_btn {
        position: absolute;
        left: 0;
        bottom: 59px;
        width: 100%;
        text-align: center; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_ttl {
        text-align: center;
        width: 203px;
        margin: 0 auto;
        margin-bottom: 20px; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_ttl2 {
        text-align: center;
        background: url("../img/kumiawase_ttl.webp") no-repeat center;
        background-size: 203px;
        line-height: 1.3em;
        font-size: 22px;
        margin: 0 auto;
        margin-bottom: 20px;
        color: #AE9B77;
        letter-spacing: 0.04em; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_txt {
        text-align: center;
        font-size: 15px;
        line-height: 1.5em;
        letter-spacing: 0.08em;
        margin-bottom: 24px; }
    #topmenu .kumiawase_list_sp {
      width: 770px;
      margin: 0 auto;
      overflow: scroll;
      white-space: nowrap; }
      #topmenu .kumiawase_list_sp .prev-arrow {
        position: absolute;
        z-index: 2;
        width: 32px;
        top: 50%;
        transform: translateY(-50%);
        left: 151px; }
      #topmenu .kumiawase_list_sp .next-arrow {
        position: absolute;
        z-index: 2;
        width: 32px;
        top: 50%;
        transform: translateY(-50%);
        right: 151px; }
      #topmenu .kumiawase_list_sp li {
        display: inline-block;
        width: 243px;
        margin-right: 1px; }
        #topmenu .kumiawase_list_sp li:last-child {
          margin-right: 0; }
    #topmenu .topmenu_ttl {
      font-size: 30px;
      line-height: 1.4em;
      font-weight: 700;
      letter-spacing: 0.01em;
      text-align: center;
      color: #AE9B77;
      margin-bottom: 10px;
      background: url("/static/img/topmenu_ttl.webp") no-repeat center top 10px;
      background-size: 149px; }
    #topmenu .topmenu_txts {
      text-align: center;
      font-size: 18px;
      line-height: 1.5em;
      letter-spacing: 0.15em;
      font-weight: 700;
      margin-bottom: 20px;
      color: #535353; }
    #topmenu .topmenu_txts2 {
      text-align: center;
      margin-bottom: 30px; }
      #topmenu .topmenu_txts2 .txt {
        text-align: left;
        font-size: 11px;
        line-height: 1.45em;
        display: inline-block; }
    #topmenu .topmenu_boxes .topmenu_box {
      background: url("/static/img/menu_bg_pc.webp") no-repeat center top;
      background-size: 770px;
      padding-top: 30px;
      padding-bottom: 50px;
      margin-bottom: 50px; }
      #topmenu .topmenu_boxes .topmenu_box .biko {
        width: 380px;
        margin: 0 auto;
        text-align: left;
        font-size: 11px;
        line-height: 1.7em;
        padding-top: 15px; }
        #topmenu .topmenu_boxes .topmenu_box .biko li {
          position: relative;
          padding-left: 1em; }
          #topmenu .topmenu_boxes .topmenu_box .biko li:after {
            content: '※';
            position: absolute;
            left: 0;
            top: 0; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_wasyoku {
        text-align: center;
        margin-bottom: 20px;
        color: #AE9B77; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_wasyoku span {
          display: inline-block;
          background: url("../img/menu-wasyoku.webp") no-repeat left center;
          background-size: 150px;
          font-size: 29px;
          font-weight: 500;
          padding-left: 66px;
          letter-spacing: 0.05em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_yousyoku {
        text-align: center;
        margin-bottom: 20px;
        color: #AE9B77; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_yousyoku span {
          display: inline-block;
          background: url("../img/menu-yosyoku.webp") no-repeat left center;
          background-size: 150px;
          font-size: 29px;
          font-weight: 500;
          padding-left: 66px;
          letter-spacing: 0.05em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_asia {
        text-align: center;
        margin-bottom: 20px;
        color: #AE9B77; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_asia span {
          display: inline-block;
          background: url("../img/menu-asia.webp") no-repeat left center;
          background-size: 274px;
          font-size: 23px;
          font-weight: 500;
          padding-left: 56px;
          padding-bottom: 8px;
          letter-spacing: 0.05em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub {
        text-align: center;
        margin-bottom: 20px; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub img {
          height: 30px; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_txt {
        text-align: center;
        font-weight: 500;
        font-size: 15px;
        margin-bottom: 15px;
        line-height: 1.5em;
        letter-spacing: 0.08em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_slider {
        width: 820px;
        margin: 0 auto; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .prev-arrow {
          width: 32px;
          position: absolute;
          left: 175px;
          top: 155px;
          z-index: 2; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .prev-arrow img {
            width: 100%; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .next-arrow {
          width: 32px;
          position: absolute;
          right: 175px;
          top: 155px;
          z-index: 2; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .next-arrow img {
            width: 100%; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider {
          margin: 0 5px;
          position: relative;
          padding-bottom: 50px; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider:hover {
            cursor: pointer;
            opacity: 0.97; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_link {
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            z-index: 4; }
            #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_link:hover {
              cursor: pointer !important; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-center {
            z-index: 100; }
            #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-center .topmenu_slider_img .topmenu_slider_img_in {
              height: 100%;
              transition: 0.2s;
              max-width: 200%;
              width: 170%; }
            #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-center .topmenu_slider_info {
              opacity: 1; }
            #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-center .topmenu_slider_link {
              width: 170%;
              left: -35%; }
              #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-center .topmenu_slider_link:hover {
                cursor: pointer !important; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_img {
            position: relative;
            z-index: 1;
            height: 340px;
            display: flex;
            align-items: center; }
            #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_img .topmenu_slider_img_in {
              filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
              width: 100%;
              height: 70%;
              background-size: cover;
              background-position: center;
              background-repeat: no-repeat;
              border-radius: 10px;
              overflow: hidden;
              transition: 0.2s;
              position: absolute;
              left: 50%;
              top: 50%;
              transform: translateX(-50%) translateY(-50%); }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_info {
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            bottom: 5px;
            text-align: center;
            width: 337px;
            z-index: 2;
            opacity: 0; }
            #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_info img {
              display: inline-block;
              width: 337px; }

  #howto {
    padding: 50px 0; }
    #howto .howto_ttl {
      text-align: center;
      font-size: 18px;
      line-height: 1.6em;
      margin-bottom: 20px;
      font-weight: 700; }
    #howto .howto_list {
      width: 380px;
      margin: 0 auto; }
      #howto .howto_list li {
        margin-bottom: 20px; }
        #howto .howto_list li:last-child {
          margin-bottom: 35px; }
    #howto .howto_sub {
      width: 380px;
      margin: 0 auto;
      font-size: 15px;
      color: #AE9B77;
      font-weight: 600;
      letter-spacing: 0.08em;
      line-height: 1.53em;
      margin-bottom: 10px; }
    #howto .howto_img {
      width: 380px;
      margin: 0 auto;
      margin-bottom: 10px; }
      #howto .howto_img img {
        width: 100%;
        height: auto; }
    #howto .howto_txt {
      font-size: 11px;
      line-height: 1.5em;
      width: 380px;
      margin: 0 auto 35px; }
    #howto .howto_info {
      width: 380px;
      margin: 0 auto; }
      #howto .howto_info img {
        width: 100%; }

  #faq {
    padding: 50px 0; }
    #faq .faq_btn {
      padding: 20px 0; }
    #faq .faq_ttl {
      font-size: 21px;
      line-height: 1.4em;
      font-weight: 700;
      letter-spacing: 0.5em;
      text-align: center;
      color: #AE9B77;
      margin-bottom: 10px; }
    #faq .faq_txt {
      text-align: center;
      font-size: 16px;
      line-height: 1.8em;
      letter-spacing: 0.015em;
      margin-bottom: 35px;
      font-weight: 700; }
    #faq .faq_lists {
      width: 540px;
      margin: 0 auto; }
      #faq .faq_lists .faq_list {
        margin-bottom: 10px;
        border: solid 2px #AE9B77;
        border-radius: 10px; }
        #faq .faq_lists .faq_list:last-child {
          margin-bottom: 0; }
        #faq .faq_lists .faq_list input[type="checkbox"] {
          display: none; }
        #faq .faq_lists .faq_list input[type="checkbox"]:checked + label {
          border-radius: 7px 7px 0 0; }
          #faq .faq_lists .faq_list input[type="checkbox"]:checked + label:after {
            background-image: url("/static/img/arr-qa_02.webp"); }
        #faq .faq_lists .faq_list input[type="checkbox"]:checked + label + .faq_list_content {
          height: auto;
          opacity: 1;
          visibility: visible;
          padding: 15px 15px 15px 41px; }
        #faq .faq_lists .faq_list .faq_list_content {
          box-sizing: border-box;
          padding: 0 15px 0 41px;
          font-size: 13px;
          line-height: 1.5em;
          position: relative;
          opacity: 0;
          visibility: hidden;
          height: 0; }
          #faq .faq_lists .faq_list .faq_list_content:before {
            content: '';
            display: block;
            width: 21px;
            height: 20px;
            background: url("/static/img/arr-a.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            left: 10px;
            top: 15px; }
        #faq .faq_lists .faq_list label {
          display: block;
          box-sizing: border-box;
          color: #fff;
          background: #AE9B77;
          padding: 15px 38px 15px 41px;
          position: relative;
          font-synthesis: 15px;
          line-height: 1.5em;
          font-weight: 600;
          border-radius: 7px; }
          #faq .faq_lists .faq_list label:after {
            content: '';
            display: block;
            width: 12px;
            height: 10px;
            background: url("/static/img/arr-qa_01.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            right: 13px; }
          #faq .faq_lists .faq_list label:before {
            content: '';
            display: block;
            width: 21px;
            height: 20px;
            background: url("/static/img/arr-q.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            left: 10px;
            top: 18px; }

  #magazine {
    padding: 50px 0; }
    #magazine .magazine_ttl {
      width: 302px;
      margin: 0 auto;
      border-radius: 10px 10px 0 0;
      color: #AE9B77;
      text-align: center;
      font-size: 21px;
      line-height: 1.4em;
      background: #F0EBE5;
      padding-top: 20px;
      letter-spacing: 0.15em; }
    #magazine .magazine_inner {
      background: #F0EBE5;
      padding: 20px 0 25px;
      position: relative;
      width: 600px;
      margin: 0 auto;
      border-radius: 10px; }
      #magazine .magazine_inner .magazine_txt {
        text-align: center;
        font-size: 16px;
        line-height: 1.8em;
        margin-bottom: 25px; }
    #magazine .magazine_slider {
      margin-bottom: 0; }
      #magazine .magazine_slider .magazine_slide {
        box-sizing: border-box;
        padding: 5px 10px 10px; }
        #magazine .magazine_slider .magazine_slide img {
          width: 100%;
          filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.25)); }
    #magazine .slide-dots {
      text-align: center;
      padding-top: 5px; }
      #magazine .slide-dots li {
        display: inline-block;
        margin: 0 5px; }
        #magazine .slide-dots li button {
          font-size: 0;
          border: none;
          width: 15px;
          height: 15px;
          background: url("/static/img/dot-scene_off.webp") no-repeat center;
          background-size: 9px; }
        #magazine .slide-dots li.slick-active button {
          background-image: url("/static/img/dot-scene_on.webp");
          background-size: 15px; }

  #video {
    padding: 50px 0; }
    #video .video_slider {
      width: 860px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between; }
      #video .video_slider .video_slide {
        width: 270px;
        position: relative; }
        #video .video_slider .video_slide .video_btns {
          width: 225px;
          margin: 30px auto 0; }
          #video .video_slider .video_slide .video_btns .btn07 {
            width: 100%; }
            #video .video_slider .video_slide .video_btns .btn07 a {
              font-size: 16px; }
        #video .video_slider .video_slide .anca {
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%; }

  #news {
    padding: 50px 0; }
    #news .news_ttl {
      text-align: center;
      font-size: 18px;
      line-height: 1.6em;
      margin-bottom: 20px;
      font-weight: 700; }
    #news .news_lists {
      width: 540px;
      margin: 0 auto; }
      #news .news_lists .news_list {
        padding: 20px 0 18px;
        border-bottom: solid 1px #535353; }
        #news .news_lists .news_list:first-child {
          border-top: solid 1px #535353; }
        #news .news_lists .news_list .news_list_date {
          display: inline-block;
          vertical-align: middle;
          color: #AE9B77;
          font-size: 13px;
          line-height: 2em;
          margin-right: 10px; }
        #news .news_lists .news_list .news_list_cat {
          display: inline-block;
          vertical-align: middle; }
          #news .news_lists .news_list .news_list_cat span {
            display: inline-block;
            color: #fff;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            font-size: 13px;
            line-height: 2em;
            line-height: 1.6em;
            padding: 0 8px;
            background: #DB0004; }
        #news .news_lists .news_list .news_list_tag {
          display: inline-block;
          vertical-align: middle; }
          #news .news_lists .news_list .news_list_tag span {
            display: inline-block;
            color: #fff;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            font-size: 13px;
            line-height: 2em;
            line-height: 1.6em;
            padding: 0 8px;
            background: #DB0004; }
        #news .news_lists .news_list .news_list_ttl {
          padding-top: 5px;
          font-size: 13px;
          line-height: 2em; }
          #news .news_lists .news_list .news_list_ttl a {
            color: #535353; }
            #news .news_lists .news_list .news_list_ttl a:hover {
              text-decoration: underline; }
    #news .news_btn {
      padding: 32px 0;
      text-align: center; }

  #links {
    padding: 50px 0; }
    #links .links_ttl {
      text-align: center;
      font-size: 18px;
      line-height: 1.6em;
      margin-bottom: 20px;
      font-weight: 700; }
    #links .links_list {
      width: 540px;
      margin: 0 auto; }
      #links .links_list li {
        font-size: 13px;
        line-height: 2em;
        margin-bottom: 10px; }
        #links .links_list li:last-child {
          margin-bottom: 0; }
        #links .links_list li a {
          display: block;
          box-sizing: border-box;
          padding: 10px 20px;
          border-radius: 10px;
          color: #535353;
          border: solid 1px #535353; }
          #links .links_list li a:hover {
            background: #535353;
            color: #fff; }

  #foot {
    margin: 0 auto;
    background: #fff;
    box-shadow: 2px -2px 8px rgba(0, 0, 0, 0.25);
    background: #AE9B77;
    box-sizing: border-box;
    border-radius: 10px 10px 0 0;
    color: #fff;
    position: relative; }
    #foot .foot_inner {
      position: relative;
      width: 98%;
      max-width: 840px;
      margin: 0 auto;
      padding: 30px 0 46px;
      display: flex;
      flex-wrap: wrap; }
      #foot .foot_inner .foot_logo {
        width: 100%;
        margin-bottom: 80px;
        order: 1; }
        #foot .foot_inner .foot_logo img {
          width: 167px;
          display: block;
          filter: brightness(0) invert(1); }
      #foot .foot_inner .foot_sns {
        order: 3;
        width: 100%;
        display: flex;
        align-items: center; }
        #foot .foot_inner .foot_sns .foot_sns_txt {
          font-weight: 500;
          font-size: 11px;
          line-height: 1.5em;
          margin-right: 30px; }
        #foot .foot_inner .foot_sns .foot_sns_list {
          display: flex; }
          #foot .foot_inner .foot_sns .foot_sns_list li {
            margin-right: 22px; }
            #foot .foot_inner .foot_sns .foot_sns_list li img {
              display: inline-block;
              width: 26px;
              filter: brightness(0) invert(1); }
      #foot .foot_inner .foot_menu {
        font-size: 0;
        width: 100%;
        max-width: 665px;
        margin-bottom: 20px;
        order: 2; }
        #foot .foot_inner .foot_menu li {
          display: inline-block;
          font-size: 11px;
          line-height: 1.5em;
          margin-bottom: 5px;
          margin-right: 15px; }
          #foot .foot_inner .foot_menu li:last-child {
            margin-bottom: 0; }
          #foot .foot_inner .foot_menu li a {
            color: #fff; }
            #foot .foot_inner .foot_menu li a:hover {
              text-decoration: underline; }
    #foot .foot_btm {
      box-sizing: border-box;
      padding: 10px 0;
      background: #fff; }
      #foot .foot_btm .foot_btm_inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 98%;
        max-width: 840px;
        margin: 0 auto; }
      #foot .foot_btm .foot_left {
        width: 75px; }
      #foot .foot_btm .foot_right {
        font-size: 11px;
        line-height: 2em;
        color: #535353; }

  .modal {
    background: rgba(0, 0, 0, 0.2);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100dvh;
    z-index: 0;
    display: none;
    justify-content: center;
    align-items: center; }
    .modal.is-active {
      display: flex;
      z-index: 100; }
    .modal .modal_inner {
      width: 400px;
      border-radius: 10px;
      background: #F0EBE5;
      position: relative;
      padding: 36px 0 10px; }
      .modal .modal_inner .modal_close {
        position: absolute;
        width: 41px;
        right: 12px;
        top: 10px; }

  .modaltv {
    background: rgba(0, 0, 0, 0.2);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100dvh;
    z-index: 0;
    display: none;
    justify-content: center;
    align-items: center; }
    .modaltv.is-active {
      display: flex;
      z-index: 100; }
    .modaltv .modal_inner {
      width: 960px;
      margin: 0 auto;
      position: relative; }
      .modaltv .modal_inner iframe {
        width: 960px;
        height: 540px; }
      .modaltv .modal_inner img {
        width: 960px;
        height: auto; }
      .modaltv .modal_inner .modal_close {
        position: absolute;
        width: 41px;
        right: -7px;
        top: -41px; }

  .floatcourse_btn {
    position: fixed;
    right: 50px;
    bottom: 50px;
    width: 120px;
    z-index: 5; }
    .floatcourse_btn a {
      display: block; }
    .floatcourse_btn:hover {
      opacity: 0.9; }

  #underpage {
    padding-top: 100px; }
    #underpage .btn01-3 {
      width: 150px;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 2px #fff;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      text-align: left;
      position: relative;
      overflow: hidden;
      letter-spacing: 0.2em; }
      #underpage .btn01-3:after {
        content: '';
        display: block;
        background: #fff;
        width: 22px;
        height: 13px;
        position: absolute;
        right: -4px;
        top: 0;
        z-index: 3; }
      #underpage .btn01-3 a {
        width: 100%;
        display: block;
        position: relative;
        z-index: 2;
        box-sizing: border-box;
        border-radius: 100px;
        -webkit-border-radius: 100px;
        -moz-border-radius: 100px;
        border: solid 2px #AE9B77;
        color: #AE9B77;
        font-size: 20px;
        line-height: 1.8em;
        padding: 6px 0;
        background: #fff;
        padding-left: 17px; }
        #underpage .btn01-3 a span {
          display: inline-block;
          padding-right: 67px;
          background: url("/static/img/arr.webp") no-repeat center right;
          background-size: 24px; }
      #underpage .btn01-3:hover:after {
        display: none; }
      #underpage .btn01-3:hover a {
        background: #AE9B77;
        color: #fff; }
        #underpage .btn01-3:hover a span {
          background-image: url("/static/img/arr-off.webp"); }
    #underpage .btn01-4 {
      width: 74px;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 3px #AE9B77;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      text-align: left;
      position: relative;
      overflow: hidden;
      letter-spacing: 0.02em; }
      #underpage .btn01-4:after {
        content: '';
        display: block;
        background: #AE9B77;
        width: 12px;
        height: 8px;
        position: absolute;
        right: 3px;
        top: -4px;
        z-index: 3; }
      #underpage .btn01-4 a {
        width: 100%;
        display: block;
        position: relative;
        z-index: 2;
        box-sizing: border-box;
        border-radius: 100px;
        -webkit-border-radius: 100px;
        -moz-border-radius: 100px;
        border: solid 2px #fff;
        color: #fff;
        font-size: 11px;
        line-height: 1.8em;
        padding: 1px 0;
        background: #AE9B77;
        text-align: center; }
        #underpage .btn01-4 a span {
          display: inline-block;
          padding-right: 16px;
          background: url("/static/img/arr-off.webp") no-repeat center right;
          background-size: 13px; }
      #underpage .btn01-4:hover:after {
        display: none; }
      #underpage .btn01-4:hover a {
        background: #fff;
        color: #AE9B77; }
        #underpage .btn01-4:hover a span {
          background-image: url("/static/img/arr.webp"); }
    #underpage .arrange_box {
      width: 100%;
      max-width: 560px;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 2px #AE9B77;
      border-radius: 40px;
      position: relative;
      padding-bottom: 40px;
      margin-bottom: 100px;
      background: #fff; }
      #underpage .arrange_box .arrange_box_btn {
        position: absolute;
        left: 0;
        bottom: -25px;
        width: 100%;
        text-align: center; }
        #underpage .arrange_box .arrange_box_btn .btn01-3 {
          text-align: center; }
          #underpage .arrange_box .arrange_box_btn .btn01-3 a span {
            padding-right: 43px;
            padding-left: 10px;
            background-position: center right 10px; }
      #underpage .arrange_box .arrange_box_ttl {
        width: 216px;
        background: #fff;
        margin: 0 auto;
        margin-top: -23px;
        margin-bottom: 25px; }
      #underpage .arrange_box .arrange_box_inner {
        display: flex; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_left {
          width: 65%;
          box-sizing: border-box;
          padding: 0 22px;
          border-right: solid 2px #AE9B77; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_sub {
            max-width: 260px;
            margin: 0 auto 10px; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_left .txt {
            text-align: center;
            font-size: 12px;
            line-height: 1.6em;
            margin-bottom: 10px;
            letter-spacing: 0.008em; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_img img {
            width: 100%;
            height: auto;
            display: block; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_name {
            text-align: center;
            font-size: 20px;
            line-height: 1.5em;
            font-weight: 600;
            letter-spacing: 0.05em; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_right {
          width: 35%;
          box-sizing: border-box;
          padding: 0 16px; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_mini {
            max-width: 148px;
            margin: 0 auto 26px; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_txt {
            text-align: center;
            font-size: 12px;
            line-height: 1.7em;
            margin-bottom: 24px; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_img {
            width: 130px;
            margin: 0 auto 16px; }
            #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_img img {
              width: 100%;
              height: auto; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_name {
            font-size: 15px;
            line-height: 1.5em;
            text-align: center;
            font-weight: 600;
            letter-spacing: 0.08em; }
    #underpage .singlemenu {
      padding-top: 35px;
      padding-bottom: 100px; }
      #underpage .singlemenu .singlemenu_ttl {
        width: 331px;
        margin: 0 auto;
        background: url("/static/img/menu_ttl_bg.webp") no-repeat center bottom;
        background-size: 332px;
        text-align: center;
        margin-bottom: -33px;
        position: relative;
        z-index: 2; }
        #underpage .singlemenu .singlemenu_ttl .singlemenu_name {
          color: #917346;
          font-size: 22px;
          font-weight: 600;
          line-height: 1.5em;
          letter-spacing: 0.03em; }
        #underpage .singlemenu .singlemenu_ttl .singlemenu_type {
          font-size: 10px;
          font-weight: 600;
          color: #917346;
          letter-spacing: 0.03em;
          line-height: 1.6em;
          padding-bottom: 2px; }
      #underpage .singlemenu .singlemenu_thum {
        position: relative;
        z-index: 1;
        margin-bottom: 30px; }
        #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .singlemenu_thum_img {
          border-radius: 0; }
        #underpage .singlemenu .singlemenu_thum .singlemenu_thum_img {
          position: relative;
          z-index: 1;
          border-radius: 10px;
          overflow: hidden; }
          #underpage .singlemenu .singlemenu_thum .singlemenu_thum_img img {
            width: 100%;
            height: auto;
            display: block; }
        #underpage .singlemenu .singlemenu_thum .biko {
          position: absolute;
          z-index: 2;
          right: 10px;
          bottom: 10px;
          color: #fff;
          font-size: 11px; }
        #underpage .singlemenu .singlemenu_thum .slide-dots {
          text-align: center;
          padding-top: 5px;
          position: absolute;
          left: 0;
          width: 100%;
          text-align: center;
          bottom: 20px;
          z-index: 4; }
          #underpage .singlemenu .singlemenu_thum .slide-dots li {
            display: inline-block;
            margin: 0 5px; }
            #underpage .singlemenu .singlemenu_thum .slide-dots li button {
              appearance: none;
              font-size: 0;
              border: none;
              width: 15px;
              height: 15px;
              background: url("/static/img/dot-scene_off.webp") no-repeat center;
              background-size: 9px; }
            #underpage .singlemenu .singlemenu_thum .slide-dots li.slick-active button {
              background-image: url("/static/img/dot-scene_on.webp");
              background-size: 15px; }
      #underpage .singlemenu .singlemenu_cats {
        max-width: 90vw;
        margin: 0 auto;
        margin-bottom: 50px; }
        #underpage .singlemenu .singlemenu_cats li {
          display: inline-block;
          box-sizing: border-box;
          border: solid 2px #fff;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          font-size: 14px;
          line-height: 1.7em;
          font-weight: 500;
          margin-right: 8px;
          background: #fff; }
          #underpage .singlemenu .singlemenu_cats li a {
            display: block;
            border: solid 1px #AE9B77;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            color: #AE9B77;
            padding: 1px 12px;
            position: relative; }
            #underpage .singlemenu .singlemenu_cats li a:before {
              content: '';
              display: block;
              background: #fff;
              height: 2px;
              width: 7px;
              position: absolute;
              right: 12px;
              top: -1px; }
      #underpage .singlemenu .singlemenu_content {
        max-width: 90vw;
        margin: 0 auto;
        font-size: 18px;
        line-height: 1.6em;
        letter-spacing: 0.05em; }
      #underpage .singlemenu .singlemenu_sub {
        max-width: 90vw;
        margin: 50px auto 5px;
        font-size: 16px;
        line-height: 1.4em;
        letter-spacing: 0.08em;
        color: #AE9B77;
        font-weight: 600; }
      #underpage .singlemenu .singlemenu_biko {
        max-width: 90vw;
        margin: 0 auto;
        color: #AE9B77;
        font-size: 11px;
        margin-bottom: 10px; }
      #underpage .singlemenu .singlemenu_txt {
        max-width: 90vw;
        margin: 0 auto;
        font-size: 14px;
        line-height: 1.6em;
        letter-spacing: 0.05em;
        font-weight: 400; }
    #underpage .pankuzu {
      width: 90vw;
      max-width: 840px;
      margin: 0 auto 15px; }
      #underpage .pankuzu ul {
        font-size: 0; }
        #underpage .pankuzu ul li {
          display: inline-block;
          margin-right: 26px;
          font-size: 11px;
          line-height: 1.4em;
          color: #917346;
          position: relative; }
          #underpage .pankuzu ul li:before {
            content: '';
            display: block;
            width: 6px;
            height: 10px;
            background: url("/static/img/arr_pankuzu.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            right: -16px;
            top: 50%;
            transform: translateY(-50%); }
          #underpage .pankuzu ul li:last-child {
            margin-right: 0; }
            #underpage .pankuzu ul li:last-child:before {
              display: none; }
          #underpage .pankuzu ul li a {
            color: #917346; }
    #underpage .underpage_body {
      width: 100%;
      max-width: 840px;
      margin: 0 auto;
      padding-bottom: 40px; }
      #underpage .underpage_body#maxw {
        max-width: 100%;
        padding-bottom: 0; }
      #underpage .underpage_body .underpage_biko {
        max-width: 90vw;
        margin: 0 auto;
        font-size: 11px;
        line-height: 1.5em; }
        #underpage .underpage_body .underpage_biko li {
          position: relative;
          padding-left: 1em; }
          #underpage .underpage_body .underpage_biko li:before {
            content: '※';
            display: block;
            position: absolute;
            left: 0;
            top: 0; }
      #underpage .underpage_body .recipe_head {
        display: flex;
        justify-content: flex-end;
        margin-bottom: 30px; }
        #underpage .underpage_body .recipe_head .recipe_head_box {
          width: 350px;
          border-radius: 10px;
          background: #F0EBE5;
          box-sizing: border-box;
          padding: 10px 10px 16px; }
          #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin {
            position: relative;
            display: flex;
            justify-content: space-between; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_left {
              width: 79px;
              text-align: center;
              padding-top: 5px; }
              #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_left img {
                display: block;
                height: 62px;
                width: auto;
                margin: 0 auto; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_btn {
              position: absolute;
              right: 0;
              bottom: 0; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_right {
              width: calc(100% - 89px);
              font-size: 14px;
              line-height: 1.4em; }
          #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_ttl {
            position: relative;
            text-align: center;
            margin-bottom: 5px; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_ttl:before {
              content: '';
              display: block;
              height: 1px;
              width: 100%;
              position: absolute;
              left: 0;
              top: 50%;
              transform: translateY(-50%);
              background: #AE9B77; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_ttl span {
              color: #AE9B77;
              font-size: 11px;
              line-height: 1.4em;
              padding: 0 10px;
              background: #F0EBE5;
              position: relative;
              display: inline-block;
              z-index: 2; }
      #underpage .underpage_body .recipe_body .recipe_body_ttl {
        text-align: center;
        background: url("/static/img/recipesingle_ttl.webp") no-repeat center top;
        background-size: cover;
        padding-top: 50px;
        font-size: 22px;
        font-weight: 600;
        line-height: 1.5em;
        padding-bottom: 32px;
        margin-bottom: -40px; }
      #underpage .underpage_body .recipe_body .recipe_body_txt2 {
        text-align: center;
        color: #AE9B77;
        background: url("/static/img/recipesingle_kumiawase_ttl.webp") no-repeat center top;
        background-size: cover;
        padding-top: 50px;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.5em;
        margin-bottom: 12px;
        font-weight: 500;
        margin-top: 100px;
        position: relative; }
        #underpage .underpage_body .recipe_body .recipe_body_txt2:before {
          content: '';
          display: block;
          width: 106px;
          height: 61px;
          background: url("/static/img/recipesingle_mote.webp") no-repeat center;
          background-size: contain;
          position: absolute;
          right: 20px;
          top: -40px; }
      #underpage .underpage_body .recipe_body .recipe_body_ttlsub {
        padding-top: 10px;
        font-size: 22px;
        font-weight: 600;
        line-height: 1.5em;
        padding-bottom: 12px;
        text-align: center;
        letter-spacing: 0.018em; }
      #underpage .underpage_body .recipe_body .recipe_body_img {
        margin-bottom: 30px; }
      #underpage .underpage_body .recipe_body .recipe_body_txt {
        max-width: 90vw;
        margin: 0 auto;
        font-size: 18px;
        line-height: 1.6em;
        margin-bottom: 50px; }
      #underpage .underpage_body .recipe_body .recipe_body_info {
        max-width: 90vw;
        margin: 0 auto;
        margin-bottom: 50px; }
        #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_ttl {
          width: 80px;
          margin: 0 auto 10px; }
        #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_sub {
          color: #fff;
          text-align: center;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          background: #AE9B77;
          font-size: 11px;
          line-height: 1.9em;
          font-weight: 600; }
        #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list {
          display: flex;
          align-items: center;
          justify-content: space-between;
          border-bottom: solid 1px #AE9B77;
          padding: 10px 0; }
          #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list.top {
            border-top: solid 1px #AE9B77; }
          #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list dt {
            font-size: 16px;
            line-height: 1.375em;
            letter-spacing: 0.08em; }
            #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list dt .icon {
              width: 78px;
              margin-top: 5px; }
          #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list dd {
            font-size: 16px;
            line-height: 1.375em;
            letter-spacing: 0.08em; }
      #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_ttl {
        width: 80px;
        margin: 0 auto 10px; }
      #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes {
        width: 540px;
        margin: 0 auto; }
        #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box {
          border-radius: 21px;
          background: #F0EBE5;
          margin-bottom: 27px;
          box-sizing: border-box;
          padding: 17px;
          position: relative; }
          #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box:before {
            content: '';
            display: block;
            width: 20px;
            height: 40px;
            background: url("/static/img/recipesingle_arr.webp") no-repeat center top;
            background-size: contain;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            bottom: -21px; }
          #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box:last-child:before {
            display: none; }
          #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner {
            border-radius: 21px;
            border: solid 2px #AE9B77;
            box-sizing: border-box;
            padding: 22px 17px 17px;
            text-align: center; }
            #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_ttl {
              display: inline-block;
              font-size: 12px;
              width: 90px;
              background: #F0EBE5;
              text-align: center;
              color: #AE9B77;
              position: absolute;
              top: 12px;
              left: 50%;
              transform: translateX(-50%); }
            #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner {
              display: flex;
              justify-content: space-between; }
              #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner .recipe_body_step_box_left {
                width: 247px; }
                #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner .recipe_body_step_box_left img {
                  width: 100%; }
              #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner .recipe_body_step_box_right {
                font-size: 14px;
                line-height: 1.7em;
                text-align: left; }
      #underpage .underpage_body .archive_menu {
        max-width: 90vw;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        #underpage .underpage_body .archive_menu .menulist {
          width: 47.6%;
          margin-bottom: 40px; }
          #underpage .underpage_body .archive_menu .menulist:last-child {
            margin-bottom: 50px; }
          #underpage .underpage_body .archive_menu .menulist .menulist_img {
            border-radius: 10px;
            overflow: hidden;
            margin-bottom: 6px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_img img {
              display: block;
              width: 100%;
              height: auto; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg {
            position: relative;
            margin-bottom: 6px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon01 {
              position: absolute;
              right: -10px;
              bottom: 0;
              width: 129px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon02 {
              position: absolute;
              right: -12px;
              bottom: 0;
              width: 122px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon03 {
              position: absolute;
              right: -22px;
              bottom: -15px;
              width: 109px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon04 {
              position: absolute;
              right: -1px;
              bottom: 0;
              width: 104px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon05 {
              position: absolute;
              right: -1px;
              bottom: 0;
              width: 104px; }
            #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg img {
              display: block;
              width: 100%;
              height: auto; }
          #underpage .underpage_body .archive_menu .menulist .menulist_ttl {
            text-align: center;
            font-size: 20px;
            line-height: 1.5em;
            font-weight: 600; }
            #underpage .underpage_body .archive_menu .menulist .menulist_ttl a {
              color: #594A34; }
          #underpage .underpage_body .archive_menu .menulist .menulist_type {
            color: #AE9B77;
            text-align: center;
            font-weight: 600;
            font-size: 11px;
            line-height: 1.5em;
            margin-bottom: 10px;
            letter-spacing: 0.15em; }
          #underpage .underpage_body .archive_menu .menulist .menulist_txt {
            color: #AE9B77;
            text-align: center;
            font-weight: 500;
            font-size: 12px;
            line-height: 1.5em;
            letter-spacing: 0.08em; }
      #underpage .underpage_body .catlist {
        display: flex;
        max-width: 90vw;
        margin: 0 auto;
        margin-bottom: 50px; }
        #underpage .underpage_body .catlist li {
          display: inline-block;
          box-sizing: border-box;
          border: solid 2px #fff;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          font-size: 14px;
          line-height: 1.7em;
          font-weight: 600;
          margin-right: 8px; }
          #underpage .underpage_body .catlist li:hover {
            border: solid 2px #AE9B77; }
            #underpage .underpage_body .catlist li:hover a {
              color: #fff;
              background: #AE9B77;
              border: solid 1px #fff; }
              #underpage .underpage_body .catlist li:hover a:before {
                background: #AE9B77; }
          #underpage .underpage_body .catlist li.active {
            border: solid 2px #AE9B77; }
            #underpage .underpage_body .catlist li.active a {
              color: #fff;
              background: #AE9B77;
              border: solid 1px #fff; }
              #underpage .underpage_body .catlist li.active a:before {
                background: #AE9B77; }
          #underpage .underpage_body .catlist li a {
            display: block;
            border: solid 1px #AE9B77;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            color: #AE9B77;
            padding: 1px 12px;
            position: relative; }
            #underpage .underpage_body .catlist li a:before {
              content: '';
              display: block;
              background: #fff;
              height: 2px;
              width: 7px;
              position: absolute;
              right: 12px;
              top: -1px; }

  #kodawari .kodawari1_txt {
    width: 540px;
    margin: 0 auto;
    text-align: justify;
    font-size: 18px;
    line-height: 1.66em; }
    #kodawari .kodawari1_txt.kodawari1_txt2 {
      box-sizing: border-box;
      padding-right: 94px; }
    #kodawari .kodawari1_txt span {
      font-size: 11px; }
    #kodawari .kodawari1_txt sup {
      font-size: 50%;
      position: relative;
      top: -0.9em; }
  #kodawari #kodawari1 {
    position: relative;
    z-index: 2; }
    #kodawari #kodawari1 .kodawari_ttl {
      width: 324px;
      margin: 0 auto;
      background: url("/static/img/kodawari_ttl1_bg.webp") no-repeat center top;
      background-size: contain;
      text-align: center;
      padding-top: 28px;
      position: relative;
      z-index: 2; }
      #kodawari #kodawari1 .kodawari_ttl img {
        width: 168px;
        margin: 0 auto; }
    #kodawari #kodawari1 .kodawari1_in {
      background: #E8E2D6;
      text-align: center;
      position: relative;
      padding-bottom: 184px;
      z-index: 1;
      margin-top: -28px;
      padding-top: 66px; }
    #kodawari #kodawari1 .kodawari_sub {
      width: 281px;
      margin: 0 auto 10px; }
    #kodawari #kodawari1 .kodawari1_img1 {
      width: 648px;
      margin: 0 auto 20px; }
    #kodawari #kodawari1 .kodawari1_img2 {
      width: 322px;
      margin: 30px auto; }
    #kodawari #kodawari1 .kodawari1_lists {
      width: 540px;
      margin: 0 auto; }
      #kodawari #kodawari1 .kodawari1_lists .kodawari1_list {
        margin-top: 30px; }
    #kodawari #kodawari1 .kodawari1_p2_img {
      padding-top: 120px;
      width: 760px;
      margin: 0 auto 18px; }
    #kodawari #kodawari1 .kodawari1_p2_txt {
      position: relative;
      width: 540px;
      margin: 0 auto;
      display: flex;
      justify-content: flex-end;
      padding-bottom: 182px; }
      #kodawari #kodawari1 .kodawari1_p2_txt .kodawari1_p2_txt_txt {
        text-align: left;
        width: 343px;
        font-size: 18px;
        line-height: 1.66em; }
      #kodawari #kodawari1 .kodawari1_p2_txt .kodawari1_p2_txt_img1 {
        position: absolute;
        width: 187px;
        left: 0;
        top: 0; }
      #kodawari #kodawari1 .kodawari1_p2_txt .kodawari1_p2_txt_img2 {
        position: absolute;
        width: 228px;
        right: 0;
        bottom: 0; }
    #kodawari #kodawari1 .kodawari1_p3_img {
      padding-top: 120px;
      width: 648px;
      margin: 0 auto 18px; }
  #kodawari #kodawari2 {
    position: relative;
    z-index: 3;
    text-align: center;
    background: url("/static/img/kodawari_sec02_bg.webp") center top -20px;
    background-size: 1200px; }
    #kodawari #kodawari2 .kodawari_ttl {
      width: 324px;
      margin: 0 auto;
      background: url("/static/img/kodawari_ttl2_bg.webp") no-repeat center top;
      background-size: contain;
      text-align: center;
      padding-top: 28px;
      position: relative;
      z-index: 2;
      top: -48px; }
      #kodawari #kodawari2 .kodawari_ttl img {
        width: 168px;
        margin: 0 auto; }
    #kodawari #kodawari2 .kodawari2_in {
      padding: 42px 0 180px; }
      #kodawari #kodawari2 .kodawari2_in .kodawari_sub {
        width: 323px;
        margin: 0 auto 50px; }
      #kodawari #kodawari2 .kodawari2_in .kodawari2_lists {
        width: 540px;
        margin: 0 auto; }
        #kodawari #kodawari2 .kodawari2_in .kodawari2_lists .kodawari2_list {
          margin-bottom: 50px; }
      #kodawari #kodawari2 .kodawari2_in .kodawari2_biko {
        width: 540px;
        margin: 0 auto;
        font-size: 11px;
        line-height: 1.45em;
        text-align: left; }
        #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li {
          position: relative;
          padding-left: 2em; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li sup {
            font-size: 67%;
            position: relative;
            top: -0.41em; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li:nth-child(1):before {
            content: '※1';
            position: absolute;
            left: 0;
            top: 0; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li:nth-child(2):before {
            content: '※2';
            position: absolute;
            left: 0;
            top: 0; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li:nth-child(3):before {
            content: '※3';
            position: absolute;
            left: 0;
            top: 0; }
  #kodawari #kodawari3 {
    text-align: center;
    position: relative; }
    #kodawari #kodawari3 .kodawari_ttl {
      width: 324px;
      margin: 0 auto;
      background: url("/static/img/kodawari_ttl3_bg.webp") no-repeat center top;
      background-size: contain;
      text-align: center;
      padding-top: 28px;
      position: absolute;
      top: -19px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 3; }
      #kodawari #kodawari3 .kodawari_ttl img {
        width: 168px;
        margin: 0 auto; }
    #kodawari #kodawari3 .kodawari2_in {
      background: url("/static/img/kodawari_sec03_bg.webp") center top;
      background-size: 1200px;
      padding: 140px 0 122px;
      position: relative;
      z-index: 1;
      margin-top: -28px; }
      #kodawari #kodawari3 .kodawari2_in .kodawari_sub {
        width: 297px;
        margin: 0 auto 30px; }
      #kodawari #kodawari3 .kodawari2_in .kodawari3_lists {
        width: 548px;
        margin: 0 auto; }
        #kodawari #kodawari3 .kodawari2_in .kodawari3_lists .kodawari3_list {
          margin-bottom: 30px; }

  /* #kodawari */
  #campaignN {
    /* campaignN_body */ }
    #campaignN .campaignN_head {
      text-align: center;
      position: relative;
      z-index: 5; }
      #campaignN .campaignN_head .campaignN_head_ttl img {
        width: 200px; }
      #campaignN .campaignN_head .campaignN_head_icon {
        position: absolute;
        width: 72px;
        left: 50%;
        margin-left: 120px;
        bottom: -64px; }
    #campaignN .campaignN_body {
      background: url("/static/img/cam_bg_body.webp") no-repeat center top;
      padding-bottom: 50px;
      background-size: cover;
      width: 100%;
      overflow: hidden; }
      #campaignN .campaignN_body.campaignN_body2 {
        background: url("../img/cam_pr_bg.webp") center top;
        background-size: cover; }
        #campaignN .campaignN_body.campaignN_body2 .campaignN_body_in {
          padding-top: 50px; }
      #campaignN .campaignN_body.campaignN_body3 {
        background: url("../img/cam_pr_bg2.webp") center top;
        background-size: cover; }
        #campaignN .campaignN_body.campaignN_body3 .campaignN_body_in {
          padding-top: 50px; }
      #campaignN .campaignN_body .campaignN_body_in {
        background: url("/static/img/cam_bg_head.webp") no-repeat center top;
        background-size: 1200px;
        position: relative;
        text-align: center;
        padding-top: 40px; }
        #campaignN .campaignN_body .campaignN_body_in:before {
          content: '';
          display: block;
          width: 50%;
          height: 49px;
          background: #fff;
          position: absolute;
          left: 50%;
          top: 0;
          margin-left: 150px; }
        #campaignN .campaignN_body .campaignN_body_in:after {
          content: '';
          display: block;
          width: 50%;
          height: 49px;
          background: #fff;
          position: absolute;
          right: 50%;
          top: 0;
          margin-right: 150px; }
        #campaignN .campaignN_body .campaignN_body_in .campaignN_body_date {
          display: inline-block;
          color: #fff;
          background: #21524C;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          font-size: 24px;
          font-weight: 700;
          line-height: 1;
          padding: 5px 10px 7px; }
        #campaignN .campaignN_body .campaignN_body_in .campaignN_body_ttl {
          display: inline-block;
          color: #fff;
          background: #21524C;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          font-size: 16px;
          font-weight: 700;
          line-height: 1;
          padding: 5px 10px 7px;
          margin-top: -4px;
          margin-bottom: -13px;
          position: relative;
          z-index: 3; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_body_ttl.campaignN_body_ttl2 {
            background: #fff;
            border: solid 2px #E64B2B;
            color: #E64B2B;
            font-size: 24px;
            bottom: -9px; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_body_ttl.campaignN_body_ttl3 {
            background: #fff;
            border: solid 2px #F5A21A;
            color: #F5A21A;
            font-size: 24px;
            bottom: -9px; }
        #campaignN .campaignN_body .campaignN_body_in .campaignN_info {
          border-radius: 20px;
          width: 550px;
          margin: 0 auto 40px;
          background: #fff;
          padding: 20px 30px 15px;
          position: relative;
          box-sizing: border-box;
          z-index: 2;
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25); }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .bell {
            display: block;
            position: absolute;
            left: 46px;
            top: -16px;
            width: 75px;
            height: 84px;
            background: url("/static/img/cam_icon_bell.webp") no-repeat center;
            background-size: contain; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_ttl {
            display: inline-block;
            font-size: 16px;
            color: #21524C;
            font-weight: 700;
            border: solid 1px #21524C;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            padding: 3px 20px 5px;
            margin-bottom: 15px; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_ttl.campaignN_info_ttl2 {
              color: #E64B2B;
              display: block;
              border-bottom: solid 1px #E64B2B;
              border-right: none;
              border-top: none;
              border-left: none;
              border-radius: 0;
              line-height: 1.3em;
              font-weight: 700;
              padding-top: 14px; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_ttl.campaignN_info_ttl3 {
              color: #F5A21A;
              display: block;
              border-bottom: solid 1px #F5A21A;
              border-right: none;
              border-top: none;
              border-left: none;
              border-radius: 0;
              line-height: 1.3em;
              font-weight: 700;
              padding-top: 14px; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt1 {
            text-align: center;
            font-size: 24px;
            line-height: 1.3em; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt3 {
            text-align: center;
            font-size: 24px;
            line-height: 1.3em;
            margin: 0 0 15px; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_img {
            margin-bottom: 15px; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_biko {
            text-align: left; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_biko li {
              position: relative;
              padding-left: 1em;
              font-size: 11px;
              line-height: 1.45em; }
              #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_biko li:before {
                content: '●';
                position: absolute;
                left: 0;
                top: 0;
                font-size: 60%; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 {
            display: flex;
            justify-content: space-between;
            align-items: center; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_icon {
              width: 100px; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_right {
              display: flex;
              align-items: flex-end; }
              #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_right .campaignN_info_txt2_price {
                font-size: 96px;
                color: #DB0004; }
              #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_right .campaignN_info_txt2_txt {
                font-size: 40px;
                font-weight: 700;
                line-height: 1.4em; }
      #campaignN .campaignN_body .campaignN_coupon {
        width: 336px;
        margin: 0 auto;
        position: relative;
        text-align: center;
        padding-top: 12px;
        margin-bottom: 40px; }
        #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_ttl {
          display: inline-block;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          width: 175px;
          box-sizing: border-box;
          background: #AE9B77;
          color: #fff;
          border: solid 1px #F0EBE5;
          font-size: 13px;
          line-height: 1.5em;
          letter-spacing: 0.006em;
          text-align: center;
          line-height: 1.3em;
          padding: 2px 0;
          position: absolute;
          z-index: 3;
          left: 50%;
          transform: translateX(-50%);
          top: 0; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_ttl.campaignN_coupon_ttl2 {
            width: 202px; }
        #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in {
          position: relative;
          z-index: 2;
          border-radius: 5px;
          overflow: hidden;
          padding: 10px 0 11px; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in:before {
            content: '';
            display: block;
            background: #F0EBE5;
            width: 100%;
            height: calc(50% - 2px);
            position: absolute;
            top: 0;
            border-radius: 5px 5px 0 0; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in:after {
            content: '';
            display: block;
            background: #F0EBE5;
            width: 100%;
            height: calc(50% - 19px);
            position: absolute;
            bottom: 0;
            border-radius: 0 0 5px 5px; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 {
            position: relative;
            z-index: 3;
            background: url("/static/img/cam_icon_course_bg.webp") no-repeat center;
            background-size: 100%;
            padding: 0 17px;
            box-sizing: border-box; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_icon {
              position: absolute;
              width: 38px;
              top: 13px;
              left: 12px; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info {
              box-sizing: border-box;
              padding-left: 50px;
              padding-top: 18px;
              margin-bottom: 9px; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info .txt1 {
                font-size: 18px;
                font-weight: 600;
                line-height: 1.4em; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info .txt1 span {
                  font-size: 32px;
                  color: #DB0004; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info .txt2 {
                font-size: 11px;
                line-height: 1.45em;
                margin-top: 5px; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea {
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin-bottom: 9px; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num {
                border: solid 1px #535353;
                border-radius: 5px;
                overflow: hidden;
                display: flex;
                width: 238px;
                background: #fff; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num .campaignN_coupon_num_txt {
                  width: 40%;
                  background: #535353;
                  color: #fff;
                  text-align: center;
                  font-size: 12px;
                  font-weight: 600;
                  padding: 10px 0; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num .campaignN_coupon_num_input {
                  width: 60%;
                  display: flex;
                  justify-content: center;
                  align-items: center; }
                  #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num .campaignN_coupon_num_input input {
                    font-weight: 700;
                    border: none;
                    background: #fff;
                    width: 100%;
                    height: 100%;
                    text-align: center;
                    box-sizing: border-box;
                    font-size: 16px;
                    padding: 0;
                    -webkit-appearance: none;
                    -moz-appearance: none;
                    appearance: none; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn {
                position: relative;
                width: 56px; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn.campaignN_coupon_btn2:before {
                  background: #AF852D; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn.campaignN_coupon_btn2 a {
                  background: #F5A21A; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn:before {
                  content: '';
                  display: block;
                  border-radius: 10px;
                  position: absolute;
                  left: 2px;
                  top: 2px;
                  z-index: 1;
                  background: #A50F0F;
                  width: 100%;
                  height: 100%; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn a {
                  display: block;
                  position: relative;
                  z-index: 2;
                  border-radius: 10px;
                  color: #fff;
                  font-size: 12px;
                  font-weight: 700;
                  background: #E64B2B;
                  padding: 10px 0;
                  width: 100%; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_biko li {
              font-size: 9px;
              line-height: 1.3em;
              text-align: left;
              position: relative;
              padding-left: 1em; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_biko li:before {
                content: '※';
                position: absolute;
                left: 0;
                top: 0; }
      #campaignN .campaignN_body .campaignN_howto {
        width: 336px;
        margin: 0 auto; }
        #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl {
          text-align: center;
          color: #fff;
          font-size: 12px;
          line-height: 1.4em;
          font-weight: 700;
          position: relative;
          margin-bottom: 18px; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl.campaignN_howto_ttl2 span {
            background: #E64B2B; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl.campaignN_howto_ttl3 span {
            background: #F5A21A; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl:before {
            content: '';
            display: block;
            height: 1px;
            width: 90%;
            position: absolute;
            left: 5%;
            top: 50%;
            transform: translateY(-50%);
            background: #FFF; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl span {
            position: relative;
            z-index: 2;
            display: inline-block;
            padding: 0 10PX;
            background: #00544A; }
        #campaignN .campaignN_body .campaignN_howto .campaignN_howto_list {
          padding-bottom: 12px; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_list li {
            margin-bottom: 8px; }
            #campaignN .campaignN_body .campaignN_howto .campaignN_howto_list li img {
              display: block; }
      #campaignN .campaignN_body .campaignN_btna {
        text-align: center;
        margin-top: 30px; }
        #campaignN .campaignN_body .campaignN_btna a {
          display: block;
          width: 450px;
          height: 90px;
          margin: 0 auto;
          background: url("../img/course_p_btn.webp") no-repeat center;
          background-size: contain; }
      #campaignN .campaignN_body .campaignN_btna2 {
        text-align: center;
        margin-top: 30px; }
        #campaignN .campaignN_body .campaignN_btna2 a {
          display: block;
          width: 450px;
          height: 90px;
          margin: 0 auto;
          background: url("../img/course_b_btn.webp") no-repeat center;
          background-size: contain; }
      #campaignN .campaignN_body .campaignN_btna3 {
        text-align: center; }
        #campaignN .campaignN_body .campaignN_btna3 a {
          display: block;
          width: 256px;
          height: 57px;
          margin: 0 auto;
          background: url("../img/course_b_btn2.webp") no-repeat center;
          background-size: contain; }
      #campaignN .campaignN_body .campaignN_hyo {
        width: 336px;
        margin: 0 auto;
        text-align: center; }
        #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_ttl {
          display: inline-block;
          background: #F0EBE5;
          width: 218px;
          border-radius: 10px 10px 0 0;
          font-size: 10px;
          font-weight: 700;
          line-height: 1.3em;
          letter-spacing: 0.006em;
          padding: 7px 0 3px; }
        #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in {
          background: #F0EBE5;
          border-radius: 10px;
          padding-bottom: 10px; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_sub {
            font-size: 15px;
            font-weight: 700;
            line-height: 1.3em;
            letter-spacing: 0.006em;
            margin-bottom: 10px; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_txt {
            text-align: right;
            font-size: 9px;
            width: 90%;
            margin: 0 auto;
            line-height: 1.7em;
            margin-bottom: 5px; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_img {
            margin-bottom: 4px; }
            #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_img img {
              max-width: 200%;
              width: 355px;
              margin-left: -16px; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_biko {
            font-size: 9px;
            line-height: 1.6em;
            width: 90%;
            margin: 0 auto;
            text-align: left; }

  /* #campaignN */
  .section_step {
    padding: 50px 0; }
    .section_step .section_step_ttl {
      font-size: 18px;
      font-weight: 700;
      line-height: 1.66em;
      text-align: center;
      margin-bottom: 30px; }
    .section_step .section_flows {
      width: 540px;
      margin: 0 auto; }
      .section_step .section_flows .section_flow {
        display: flex;
        justify-content: space-between;
        margin-bottom: 33px; }
      .section_step .section_flows .section_flow_left {
        width: 52px;
        border-right: solid 2px #AE9B77; }
        .section_step .section_flows .section_flow_left img {
          width: 42px; }
      .section_step .section_flows .section_flow_right {
        width: calc(100% - 52px);
        box-sizing: border-box;
        padding: 0 0 0 10px;
        display: flex;
        justify-content: space-between; }
        .section_step .section_flows .section_flow_right .section_flow_right_txt {
          width: calc(100% - 136px); }
        .section_step .section_flows .section_flow_right .section_flow_right_img {
          width: 122px; }
        .section_step .section_flows .section_flow_right .section_flow_right_txt_ttl {
          color: #AE9B77;
          font-size: 21px;
          line-height: 1.4em;
          font-weight: 700;
          letter-spacing: 0.005em;
          margin-bottom: 10px; }
          .section_step .section_flows .section_flow_right .section_flow_right_txt_ttl .mini {
            font-size: 16px; }
          .section_step .section_flows .section_flow_right .section_flow_right_txt_ttl sup {
            font-size: 70%;
            position: relative;
            top: -0.3em; }
        .section_step .section_flows .section_flow_right .txt {
          font-size: 13px;
          font-weight: 600;
          line-height: 1.46em;
          margin-bottom: 10px; }
          .section_step .section_flows .section_flow_right .txt sup {
            font-size: 60%;
            position: relative;
            top: -0.6em; }
        .section_step .section_flows .section_flow_right .biko.mini sup {
          font-size: 50%;
          position: relative;
          top: -0.7em; }
        .section_step .section_flows .section_flow_right .biko.mini li {
          font-size: 9px;
          padding-left: 2em; }
          .section_step .section_flows .section_flow_right .biko.mini li:nth-child(2):before {
            content: '※1'; }
        .section_step .section_flows .section_flow_right .biko li {
          position: relative;
          padding-left: 1em;
          font-size: 11px;
          line-height: 1.4em; }
          .section_step .section_flows .section_flow_right .biko li:before {
            content: '※';
            position: absolute;
            left: 0;
            top: 0; }
    .section_step .section_step_btm {
      width: 98%;
      max-width: 840px;
      margin: 0 auto; }
      .section_step .section_step_btm .section_step_btm_ttl {
        color: #AE9B77;
        font-size: 15px;
        font-weight: 600;
        line-height: 1.53em;
        margin-bottom: 10px; }
      .section_step .section_step_btm .section_step_btm_img {
        margin-bottom: 10px; }
        .section_step .section_step_btm .section_step_btm_img img {
          width: 100%;
          display: block; }
      .section_step .section_step_btm .section_step_btm_box {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px; }
        .section_step .section_step_btm .section_step_btm_box .section_step_btm_left {
          font-size: 13px;
          line-height: 1.45em;
          text-align: justify; }
          .section_step .section_step_btm .section_step_btm_box .section_step_btm_left span {
            font-size: 11px;
            display: inline-block; }
      .section_step .section_step_btm .section_step_btm_box_btm {
        display: flex;
        justify-content: space-between; }
      .section_step .section_step_btm .section_step_btm_right {
        width: calc(100% - 390px);
        border: solid 1px #AE9B77;
        box-sizing: border-box;
        border-radius: 10px;
        padding: 16px 16px 16px 14px; }
        .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin {
          display: flex;
          justify-content: space-between;
          align-items: center;
          height: 100%; }
          .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin .section_step_btm_right_left {
            width: 102px; }
            .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin .section_step_btm_right_left img {
              width: 100%; }
          .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin .section_step_btm_right_right {
            width: calc(100% - 112px);
            font-size: 11px;
            letter-spacing: 0;
            line-height: 1.54em;
            text-align: justify; }
      .section_step .section_step_btm .section_step_btm_hyo {
        width: 380px;
        margin: 0 auto;
        box-sizing: border-box;
        border: solid 1px #AE9B77;
        border-radius: 10px;
        display: flex; }
        .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box {
          width: 113px;
          border-right: solid 1px #AE9B77;
          text-align: center;
          padding: 10px 0; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box .section_step_btm_hyo_ttl {
            line-height: 1.5em;
            font-size: 11px; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box .section_step_btm_hyo_ttl span {
              font-size: 9px;
              display: inline-block;
              line-height: 1; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box .section_step_btm_hyo_box_txt {
            line-height: 1.4em;
            font-size: 8px; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(1) .section_step_btm_hyo_img {
            margin: 17px 0 22px; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(1) .section_step_btm_hyo_img img {
              margin: 0 auto;
              width: 55px; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(2) .section_step_btm_hyo_img {
            margin: 21px 0 22px; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(2) .section_step_btm_hyo_img img {
              margin: 0 auto;
              width: 39px; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(3) .section_step_btm_hyo_img {
            margin: 10px 0 9px; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(3) .section_step_btm_hyo_img img {
              margin: 0 auto;
              width: 48px; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:last-child {
            width: 148px;
            border: none; }

  /* section_step */ }
/* SP */
@media screen and (max-width: 700px) {
  .pconly {
    display: none !important; }

  .btn01 {
    width: 46.591vw;
    margin: 0 auto;
    box-sizing: border-box;
    border: solid 0.455vw #fff;
    border-radius: 22.727vw;
    -webkit-border-radius: 22.727vw;
    -moz-border-radius: 22.727vw;
    text-align: center;
    position: relative; }
    .btn01:after {
      content: '';
      display: block;
      background: #fff;
      width: 5.000vw;
      height: 2.955vw;
      position: absolute;
      right: -0.909vw;
      top: 0;
      z-index: 3; }
    .btn01 a {
      width: 100%;
      display: block;
      position: relative;
      z-index: 2;
      border-radius: 22.727vw;
      -webkit-border-radius: 22.727vw;
      -moz-border-radius: 22.727vw;
      border: solid 0.455vw #AE9B77;
      color: #AE9B77;
      font-size: 3.636vw;
      line-height: 1.8em;
      padding: 2.273vw 0;
      box-sizing: border-box; }
      .btn01 a span {
        display: inline-block;
        padding-right: 11.818vw;
        background: url("/static/img/arr.webp") no-repeat center right;
        background-size: 5.455vw; }
    .btn01:hover:after {
      display: none; }
    .btn01:hover a {
      background: #AE9B77;
      color: #fff; }
      .btn01:hover a span {
        background-image: url("/static/img/arr-off.webp"); }

  .btn01-2 {
    width: 46.591vw;
    margin: 0 auto;
    box-sizing: border-box;
    border: solid 0.455vw #fff;
    border-radius: 22.727vw;
    -webkit-border-radius: 22.727vw;
    -moz-border-radius: 22.727vw;
    text-align: center;
    position: relative;
    overflow: hidden;
    font-family: "fot-tsukuardgothic-std", sans-serif; }
    .btn01-2:after {
      content: '';
      display: block;
      background: #fff;
      width: 5.000vw;
      height: 2.955vw;
      position: absolute;
      right: -0.909vw;
      top: 0;
      z-index: 3; }
    .btn01-2 a {
      width: 100%;
      display: block;
      position: relative;
      z-index: 2;
      box-sizing: border-box;
      border-radius: 22.727vw;
      -webkit-border-radius: 22.727vw;
      -moz-border-radius: 22.727vw;
      border: solid 0.455vw #AE9B77;
      color: #AE9B77;
      font-size: 4.545vw;
      line-height: 1.8em;
      padding: 1.364vw 0;
      background: #fff; }
      .btn01-2 a span {
        display: inline-block;
        padding-right: 7.955vw;
        background: url("/static/img/arr.webp") no-repeat center right;
        background-size: 5.000vw; }
    .btn01-2:hover:after {
      display: none; }
    .btn01-2:hover a {
      background: #AE9B77;
      color: #fff; }
      .btn01-2:hover a span {
        background-image: url("/static/img/arr-off.webp"); }

  .btn07 {
    width: 65.227vw;
    margin: 0 auto;
    box-sizing: border-box;
    border: solid 0.455vw #fff;
    border-radius: 22.727vw;
    -webkit-border-radius: 22.727vw;
    -moz-border-radius: 22.727vw;
    text-align: center;
    position: relative; }
    .btn07:after {
      content: '';
      display: block;
      background: #fff;
      width: 3.409vw;
      height: 3.409vw;
      position: absolute;
      right: -0.909vw;
      top: 0;
      z-index: 3; }
    .btn07 a {
      width: 100%;
      display: block;
      position: relative;
      z-index: 2;
      border-radius: 22.727vw;
      -webkit-border-radius: 22.727vw;
      -moz-border-radius: 22.727vw;
      border: solid 0.455vw #AE9B77;
      color: #AE9B77;
      font-size: 3.636vw;
      line-height: 1.8em;
      padding: 1.136vw 0; }
      .btn07 a span {
        display: inline-block;
        padding-right: 6.136vw;
        background: url("/static/img/arr.webp") no-repeat center right;
        background-size: 4.773vw; }
    .btn07:hover:after {
      display: none; }
    .btn07:hover a {
      background: #AE9B77;
      color: #fff; }
      .btn07:hover a span {
        background-image: url("/static/img/arr-off.webp"); }

  main {
    width: 100.000vw;
    margin: 0 auto;
    background: #fff;
    overflow: hidden; }
    main.bg {
      background: url("../img/main_bg_sp.webp") repeat-y center top;
      background-size: 100vw; }
    main.no {
      background-image: none !important; }
    main .underpage_body_subttl {
      text-align: center;
      font-size: 3.6vw;
      position: relative;
      margin-bottom: 1em; }
      main .underpage_body_subttl span {
        display: inline-block;
        background: #fff;
        z-index: 3;
        padding: 0 2em;
        position: relative; }
      main .underpage_body_subttl:before {
        content: '';
        display: block;
        height: 1px;
        width: 25vw;
        background: #535353;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1; }
      main .underpage_body_subttl:after {
        content: '';
        display: block;
        height: 1px;
        width: 25vw;
        background: #535353;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1; }

  #head {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 10;
    transition: 0.3s;
    opacity: 1; }
    #head.hi {
      top: -100%;
      transition: 0.3s;
      opacity: 0; }
    #head.sc {
      background: #fff; }
      #head.sc .head_inner {
        transition: 0.3s; }
        #head.sc .head_inner .head_logo img {
          filter: none; }
        #head.sc .head_inner .head_login img {
          filter: none; }
        #head.sc .head_inner .headlabel {
          background-image: url("/static/img/icon_menu_open2.webp"); }
    #head.under {
      background: #fff !important; }
      #head.under .head_inner {
        background: #fff !important; }
        #head.under .head_inner .head_logo img {
          filter: none; }
        #head.under .head_inner .head_login img {
          filter: none; }
        #head.under .head_inner .headlabel {
          background-image: url("/static/img/icon_menu_open2.webp"); }
    #head.on {
      height: 100dvh;
      background: #fff;
      transition: 0.3s; }
    #head .head_inner {
      width: 100.000vw;
      margin: 0 auto;
      position: relative; }
      #head .head_inner .head_logo {
        width: 45.455vw;
        box-sizing: border-box;
        padding: 4.545vw 0 4.545vw 6.818vw;
        position: relative;
        z-index: 2; }
        #head .head_inner .head_logo a {
          display: block; }
        #head .head_inner .head_logo img {
          filter: brightness(0) invert(1); }
          #head .head_inner .head_logo img.on {
            filter: none; }
      #head .head_inner .head_login {
        position: absolute;
        right: 20.682vw;
        top: 6.136vw;
        z-index: 2;
        width: 9.318vw; }
        #head .head_inner .head_login a {
          display: block; }
        #head .head_inner .head_login img {
          filter: brightness(0) invert(1); }
          #head .head_inner .head_login img.on {
            filter: none; }
      #head .head_inner .headbtn {
        display: none; }
      #head .head_inner .headbtn:checked + .headlabel {
        background-image: url("/static/img/icon_menu_close.webp"); }
      #head .head_inner .headbtn:checked + .headlabel + .head_body {
        opacity: 1;
        visibility: visible;
        left: 0;
        transition: 0.3s; }
      #head .head_inner .headlabel {
        position: absolute;
        width: 9.318vw;
        height: 9.318vw;
        right: 6.818vw;
        top: 6.136vw;
        background: url("/static/img/icon_menu_open.webp") no-repeat center;
        background-size: 100%;
        display: block;
        z-index: 2; }
      #head .head_inner .head_body {
        position: absolute;
        left: 100%;
        opacity: 0;
        visibility: hidden;
        top: 0;
        background: #fff;
        width: 100%;
        z-index: 1;
        box-sizing: border-box;
        padding: 26.818vw 6.818vw 11.364vw 6.818vw;
        height: auto;
        box-shadow: 2px -2px 8px rgba(0, 0, 0, 0.25);
        border-radius: 0 0 3vw 3vw; }
        #head .head_inner .head_body .head_course {
          position: absolute;
          right: 11.136vw;
          bottom: 6.818vw;
          width: 29%; }
          #head .head_inner .head_body .head_course a {
            display: block; }
            #head .head_inner .head_body .head_course a:hover {
              opacity: 0.9; }
        #head .head_inner .head_body .head_menu {
          box-sizing: border-box;
          padding-left: 4.318vw; }
          #head .head_inner .head_body .head_menu li {
            font-size: 2.500vw;
            margin-bottom: 1.136vw;
            line-height: 1.6em; }
            #head .head_inner .head_body .head_menu li a {
              color: #535353; }
        #head .head_inner .head_body .head_sns_list {
          display: flex;
          box-sizing: border-box;
          padding-left: 4.318vw;
          margin-bottom: 4.545vw; }
          #head .head_inner .head_body .head_sns_list li {
            width: 7.727vw;
            margin-right: 5.000vw; }
        #head .head_inner .head_body .head_body_list {
          margin-bottom: 4.545vw; }
          #head .head_inner .head_body .head_body_list li {
            width: 100%;
            margin: 0 auto;
            box-sizing: border-box;
            border: solid 0.455vw #fff;
            border-radius: 22.727vw;
            -webkit-border-radius: 22.727vw;
            -moz-border-radius: 22.727vw;
            text-align: left;
            position: relative;
            padding: 0 4.318vw; }
            #head .head_inner .head_body .head_body_list li.active {
              background: #AE9B77; }
              #head .head_inner .head_body .head_body_list li.active a {
                color: #fff;
                border-radius: 100px;
                -webkit-border-radius: 100px;
                -moz-border-radius: 100px; }
                #head .head_inner .head_body .head_body_list li.active a span {
                  background-image: url("/static/img/arr-off.webp"); }
            #head .head_inner .head_body .head_body_list li a {
              width: 100%;
              display: block;
              position: relative;
              z-index: 2;
              border-radius: 0;
              border-bottom: solid 0.455vw #AE9B77;
              color: #535353;
              font-size: 4.091vw;
              line-height: 1.8em;
              padding: 1.136vw 0;
              box-sizing: border-box; }
              #head .head_inner .head_body .head_body_list li a span {
                display: block;
                padding-right: 11.818vw;
                background: url("/static/img/arr.webp") no-repeat center right;
                background-size: 5.455vw; }
            #head .head_inner .head_body .head_body_list li:hover {
              background: #AE9B77; }
              #head .head_inner .head_body .head_body_list li:hover:after {
                display: none; }
              #head .head_inner .head_body .head_body_list li:hover a {
                color: #fff;
                border-radius: 22.727vw;
                -webkit-border-radius: 22.727vw;
                -moz-border-radius: 22.727vw; }
                #head .head_inner .head_body .head_body_list li:hover a span {
                  background-image: url("/static/img/arr-off.webp"); }

  #voice {
    padding: 11.364vw 0; }
    #voice .voice_ttl {
      width: 66.591vw;
      margin: 0 auto 11.364vw; }

  #topscene {
    background: url("/static/img/scene-bg.webp") no-repeat center top;
    background-size: cover;
    padding: 19.818vw 0; }
    #topscene .topscene_ttl {
      text-align: center;
      color: #AE9B77;
      font-size: 6.8vw;
      letter-spacing: 0.1em;
      margin-bottom: 5.68vw; }
    #topscene .topscene_slider .topscene_slide {
      margin: 0 2.273vw; }
      #topscene .topscene_slider .topscene_slide img {
        width: 100%;
        height: auto;
        display: block; }
      #topscene .topscene_slider .topscene_slide .topscene_slide_txt {
        font-size: 3.63vw;
        margin-top: 2vw;
        line-height: 1.75em;
        text-align: center; }
    #topscene .topscene_slider .prev-arrow {
      width: 10.227vw;
      position: absolute;
      left: 2.473vw;
      top: 39%;
      transform: translateY(-50%);
      z-index: 2; }
      #topscene .topscene_slider .prev-arrow img {
        width: 100%; }
    #topscene .topscene_slider .next-arrow {
      width: 10.227vw;
      position: absolute;
      right: 2.473vw;
      top: 39%;
      transform: translateY(-50%);
      z-index: 2; }
      #topscene .topscene_slider .next-arrow img {
        width: 100%; }
    #topscene .topscene_slider .slide-dots {
      position: absolute;
      bottom: -10vw;
      left: 0;
      width: 100%;
      text-align: center;
      font-size: 0;
      z-index: 3; }
      #topscene .topscene_slider .slide-dots li {
        display: inline-block;
        margin: 0 1.136vw; }
        #topscene .topscene_slider .slide-dots li button {
          font-size: 0;
          border: none;
          width: 3.409vw;
          height: 3.409vw;
          background: url("/static/img/dot-scene_off.webp") no-repeat center;
          background-size: 2.045vw; }
        #topscene .topscene_slider .slide-dots li.slick-active button {
          background-image: url("/static/img/dot-scene_on.webp");
          background-size: 3.409vw; }

  #mv {
    position: relative; }
    #mv:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      bottom: -1px;
      width: 100%;
      height: 37.727vw;
      background: url("/static/img/mv_cover.webp") no-repeat center top;
      background-size: cover;
      z-index: 2; }
    #mv .mb_btn {
      position: absolute;
      right: 4.545vw;
      bottom: 0;
      width: 28.636vw;
      z-index: 2; }
    #mv .mv_slider {
      position: relative;
      z-index: 1; }
      #mv .mv_slider .mv_slide {
        width: 100%;
        height: 187.5vw;
        background-repeat: no-repeat;
        background-position: center top;
        background-size: cover; }

  #topabout {
    background: #F0EBE5;
    text-align: center;
    padding-top: 11.364vw; }
    #topabout .topabout_ttl {
      width: 90.909vw;
      margin: 0 auto 11.364vw; }
    #topabout .topabout_txt {
      font-size: 4.545vw;
      line-height: 1.6em;
      display: inline-block;
      text-align: left;
      color: #594A34;
      max-width: 80.455vw;
      margin-bottom: 34.091vw; }
    #topabout .scroll-infinity__wrap {
      display: flex;
      overflow: hidden; }
    #topabout .scroll-infinity__list {
      display: flex;
      list-style: none;
      padding: 0;
      margin-bottom: -6.818vw; }
    #topabout .scroll-infinity__list--left {
      animation: infinity-scroll-left 80s infinite linear 0.5s both; }
    #topabout .scroll-infinity__item {
      width: 34.091vw;
      height: 34.091vw;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      border-radius: 22.727vw;
      -webkit-border-radius: 22.727vw;
      -moz-border-radius: 22.727vw;
      text-align: center;
      margin: 0 -3.409vw; }
      #topabout .scroll-infinity__item.infinity__item2 span img {
        max-width: 200%;
        position: relative;
        z-index: 10; }
    #topabout .scroll-infinity__item span img {
      width: 100%;
      max-width: 15.909vw; }

  .anclink {
    padding-top: 13.636vw;
    margin-top: -13.636vw; }

  .anclink2 {
    padding-top: 33.636vw;
    margin-top: -33.636vw; }

  #top_kodawari {
    padding: 34.091vw 0 0; }
    #top_kodawari .kodawari_ttl {
      width: 76.591vw;
      margin: 0 auto 11.364vw; }
    #top_kodawari .kodawari_boxes .kodawari_box:nth-child(2) .kodawari_btn {
      margin-top: 20vw; }
    #top_kodawari .kodawari_boxes .kodawari_box .kodawari_sub {
      margin-bottom: 6.818vw; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_sub img {
        width: 100%;
        height: auto; }
    #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img {
      margin: 0 auto 6.818vw;
      position: relative; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl {
        position: absolute;
        left: 12.1vw;
        top: 27.5vw;
        color: #917346;
        line-height: 1.46em;
        font-size: 5.3vw;
        letter-spacing: 0.06em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl .big {
          font-size: 7vw;
          display: inline-block;
          margin: 1vw 0 1.5vw; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt {
        width: 76vw;
        position: absolute;
        left: 12vw;
        top: 141vw;
        font-size: 4vw;
        text-align: justify;
        line-height: 1.66em;
        letter-spacing: 0; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl3 {
        position: absolute;
        left: 12.1vw;
        top: 27.5vw;
        color: #917346;
        line-height: 1.46em;
        font-size: 5.3vw;
        letter-spacing: 0.06em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl3 .big {
          font-size: 7vw;
          display: inline-block;
          margin: 1vw 0 1.5vw;
          line-height: 1.6em; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt3 {
        width: 76vw;
        position: absolute;
        left: 12vw;
        top: 137vw;
        font-size: 4vw;
        text-align: justify;
        line-height: 1.66em;
        letter-spacing: 0; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl2 {
        position: absolute;
        left: 12.1vw;
        top: 27.5vw;
        color: #917346;
        line-height: 1.46em;
        font-size: 5.3vw;
        letter-spacing: 0.01em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl2 sup {
          font-size: 58%;
          position: relative;
          top: -0.6em; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_ttl2 .big {
          font-size: 7.5vw;
          display: inline-block;
          margin: -1vw 0 1.5vw;
          line-height: 1.3em; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt2 {
        width: 76vw;
        position: absolute;
        left: 12vw;
        top: 142vw;
        font-size: 4vw;
        text-align: justify;
        line-height: 1.66em;
        letter-spacing: 0; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_txt2 sup {
          font-size: 58%;
          position: relative;
          top: -0.6em; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko {
        position: absolute;
        left: 12vw;
        top: 187vw;
        width: 76vw;
        letter-spacing: 0;
        line-height: 1.4;
        text-align: justify; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li {
          font-size: 2.5vw;
          position: relative;
          padding-left: 2em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li sup {
            font-size: 73%;
            position: relative;
            display: inline-block;
            margin-top: -1em;
            top: -0.4em; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li:nth-child(1):before {
            content: '※1';
            position: absolute;
            left: 0;
            top: 0; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li:nth-child(2):before {
            content: '※2';
            position: absolute;
            left: 0;
            top: 0; }
          #top_kodawari .kodawari_boxes .kodawari_box .kodawari_img .kodawari_img_biko li:nth-child(3):before {
            content: '※3';
            position: absolute;
            left: 0;
            top: 0; }
    #top_kodawari .kodawari_boxes .kodawari_box .kodawari_btn {
      margin-bottom: 34.091vw;
      margin-top: 14vw; }
      #top_kodawari .kodawari_boxes .kodawari_box .kodawari_btn .btn01 a {
        font-size: 4.5vw;
        padding: 1.2vw 0; }
        #top_kodawari .kodawari_boxes .kodawari_box .kodawari_btn .btn01 a span {
          padding-right: 7vw;
          padding-left: 4.5vw; }
    #top_kodawari .kodawari_boxes .kodawari_box:last-child .kodawari_btn {
      margin-bottom: 22vw; }

  #benri {
    padding: 22.727vw 0 14vw; }
    #benri .benri_inner {
      width: 81.818vw;
      margin: 0 auto; }
      #benri .benri_inner .benri_ttl {
        width: 55.909vw;
        margin: 0 auto 10.000vw; }
      #benri .benri_inner .benri_txt {
        font-size: 4.091vw;
        line-height: 1.5em;
        letter-spacing: 0.15em;
        font-weight: 700;
        text-align: center;
        margin-bottom: 9.091vw; }
      #benri .benri_inner .benri_list {
        padding-bottom: 2.5vw; }
        #benri .benri_inner .benri_list li {
          margin-bottom: 6.591vw; }
      #benri .benri_inner .benri_img {
        width: 81vw;
        margin: 0 auto;
        box-sizing: border-box;
        border: solid 1px #AE9B77;
        border-radius: 2.2vw;
        text-align: center;
        padding: 3.6vw 0;
        position: relative; }
        #benri .benri_inner .benri_img:before {
          content: '';
          display: block;
          width: 8.4vw;
          height: 8.4vw;
          background: url("/static/img/icon_top_benri.webp") no-repeat center;
          background-size: contain;
          position: absolute;
          top: -2vw;
          left: -1.5vw; }
        #benri .benri_inner .benri_img .benri_img_txt1 {
          color: #AE9B77;
          font-size: 2.9vw; }
        #benri .benri_inner .benri_img .benri_img_txt2 {
          font-size: 3.1vw;
          color: #AE9B77;
          font-weight: 600;
          letter-spacing: 0.008em;
          margin: 2vw 0 2.7vw; }
        #benri .benri_inner .benri_img .benri_img_txt3 {
          font-size: 2vw; }

  .select {
    width: 90.909vw;
    margin: 0 auto;
    background: url("/static/img/course_bg.webp") no-repeat center top;
    background-size: cover;
    padding-bottom: 18.182vw;
    padding-top: 4.545vw;
    border-radius: 2.273vw; }
    .select .select_ttl {
      text-align: center;
      font-size: 4.545vw;
      font-weight: 700;
      color: #AE9B77;
      padding-bottom: 6.8vw; }
    .select .select_courseflow {
      text-align: center;
      font-size: 2.7vw;
      line-height: 1.6em; }
      .select .select_courseflow .select_courseflow_img {
        width: 87vw;
        margin: 0 auto; }
    .select .select_sub {
      position: relative;
      text-align: center;
      margin-bottom: 3.818vw;
      margin-top: 2.227vw; }
      .select .select_sub.select_sub2 {
        margin-top: 0; }
      .select .select_sub:before {
        content: '';
        height: 0.227vw;
        width: 100%;
        display: block;
        background: #F0EBE5;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1; }
      .select .select_sub .txt {
        display: inline-block;
        position: relative;
        z-index: 2;
        background: #fff;
        width: 31.364vw;
        font-size: 3.636vw;
        line-height: 1.2em; }
        .select .select_sub .txt span {
          display: block;
          margin: 0 auto; }
    .select .select_img {
      box-sizing: border-box;
      position: relative;
      padding: 0 2.273vw; }
      .select .select_img.select_img1 {
        margin-bottom: -18vw;
        margin-top: -4vw; }
        .select .select_img.select_img1 .clink {
          display: block;
          position: absolute;
          left: 0;
          width: 100%;
          top: 95vw;
          height: 45vw; }
      .select .select_img.select_img2 {
        margin-bottom: 9vw;
        margin-top: -4vw; }
        .select .select_img.select_img2 .clink {
          display: block;
          position: absolute;
          left: 0;
          width: 100%;
          top: 95vw;
          height: 45vw; }
      .select .select_img img {
        width: 100%;
        display: block;
        position: relative;
        z-index: 1; }
      .select .select_img .btn02 {
        position: absolute;
        left: 0;
        bottom: 25vw;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn02 a {
          display: block;
          width: 100%;
          height: 20.455vw;
          background: url("/static/img/omakase01-02.webp") no-repeat center;
          background-size: 98.273vw;
          z-index: 2; }
          .select .select_img .btn02 a:hover {
            background-image: url("/static/img/omakase01-02.webp"); }
      .select .select_img .btn02mini {
        position: absolute;
        left: 0;
        bottom: 13vw;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn02mini a {
          display: block;
          width: 100%;
          height: 12.3vw;
          background: url("/static/img/btn_coursemini.webp") no-repeat center;
          background-size: contain;
          z-index: 2; }
          .select .select_img .btn02mini a:hover {
            background-image: url("/static/img/btn_coursemini_on.webp"); }
      .select .select_img .btn03 {
        position: absolute;
        left: 0;
        bottom: 1.818vw;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn03 a {
          display: block;
          width: 100%;
          height: 20.455vw;
          background: url("/static/img/omakase02-02.webp") no-repeat center;
          background-size: 98.273vw;
          z-index: 2; }
          .select .select_img .btn03 a:hover {
            background-image: url("/static/img/omakase02-02.webp"); }
      .select .select_img .btn04 {
        position: absolute;
        left: 18.182vw;
        bottom: -7.273vw;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn04 a {
          display: block;
          width: 33.409vw;
          height: 13.636vw;
          background: url("/static/img/omakase03-02.webp") no-repeat center;
          background-size: 30.682vw;
          z-index: 2; }
          .select .select_img .btn04 a:hover {
            background-image: url("/static/img/omakase03-02.webp"); }
      .select .select_img .btn05 {
        position: absolute;
        left: 52.273vw;
        bottom: -7.273vw;
        width: 100%;
        z-index: 2; }
        .select .select_img .btn05 a {
          display: block;
          width: 33.409vw;
          height: 13.636vw;
          background: url("/static/img/omakase04-02.webp") no-repeat center;
          background-size: 30.682vw;
          z-index: 2; }
          .select .select_img .btn05 a:hover {
            background-image: url("/static/img/omakase04-02.webp"); }
      .select .select_img .kakaku1 {
        display: block;
        width: 19vw;
        height: 4.5vw;
        background: rgba(255, 255, 255, 0);
        position: absolute;
        bottom: 9vw;
        left: 27vw;
        z-index: 2; }
      .select .select_img .kakaku2 {
        display: block;
        width: 19vw;
        height: 4.5vw;
        background: rgba(255, 255, 255, 0);
        position: absolute;
        bottom: 9vw;
        right: 13.3vw;
        z-index: 2; }

  #topmenu {
    background: #F0EBE5;
    padding: 20.727vw 0 16vw; }
    #topmenu .topmenu_kumiawase {
      background: url("/static/img/kumiawase_bg.webp") no-repeat center top;
      background-size: 90.909vw;
      padding-top: 9.773vw;
      padding-bottom: 11.364vw;
      position: relative;
      margin-bottom: 22.727vw; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_btn {
        position: absolute;
        left: 0;
        bottom: 6.000vw;
        width: 100%;
        text-align: center; }
        #topmenu .topmenu_kumiawase .topmenu_kumiawase_btn .btn01-2 {
          width: 34.6vw; }
        #topmenu .topmenu_kumiawase .topmenu_kumiawase_btn a {
          width: 34vw;
          font-size: 4.5vw;
          letter-spacing: 0 !important; }
          #topmenu .topmenu_kumiawase .topmenu_kumiawase_btn a span {
            padding-right: 5.955vw; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_ttl {
        text-align: center;
        width: 46.1vw;
        margin: 0 auto;
        margin-bottom: 4.545vw; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_ttl2 {
        text-align: center;
        background: url("../img/kumiawase_ttl.webp") no-repeat center;
        background-size: 46.1vw;
        line-height: 1.3em;
        font-size: 5vw;
        margin: 0 auto;
        color: #AE9B77;
        margin-bottom: 4.545vw;
        letter-spacing: 0.04em; }
      #topmenu .topmenu_kumiawase .topmenu_kumiawase_txt {
        text-align: center;
        font-size: 3.409vw;
        line-height: 1.5em;
        letter-spacing: 0.08em;
        margin-bottom: 4.545vw; }
    #topmenu .kumiawase_list_sp {
      position: relative; }
      #topmenu .kumiawase_list_sp .prev-arrow {
        position: absolute;
        z-index: 2;
        left: 16vw;
        top: 50%;
        transform: translateY(-50%);
        width: 8.227vw; }
        #topmenu .kumiawase_list_sp .prev-arrow img {
          width: 100%; }
      #topmenu .kumiawase_list_sp .next-arrow {
        position: absolute;
        z-index: 2;
        right: 16vw;
        top: 50%;
        transform: translateY(-50%);
        width: 8.227vw; }
        #topmenu .kumiawase_list_sp .next-arrow img {
          width: 100%; }
    #topmenu .kumiawase_list {
      width: 100%;
      overflow: scroll;
      white-space: nowrap; }
      #topmenu .kumiawase_list li {
        display: inline-block;
        width: 55.227vw;
        margin-right: 0.227vw; }
        #topmenu .kumiawase_list li:last-child {
          margin-right: 0; }
    #topmenu .topmenu_ttl {
      font-size: 6.682vw;
      line-height: 1.4em;
      font-weight: 700;
      letter-spacing: 0.01em;
      text-align: center;
      color: #AE9B77;
      margin-bottom: 2.273vw;
      background: url("/static/img/topmenu_ttl.webp") no-repeat center top 2vw;
      background-size: 33.8vw; }
    #topmenu .topmenu_txts {
      text-align: center;
      font-size: 4.091vw;
      line-height: 1.5em;
      letter-spacing: 0.15em;
      font-weight: 700;
      margin-bottom: 4.54vw; }
    #topmenu .topmenu_txts2 {
      text-align: center;
      margin-bottom: 11vw; }
      #topmenu .topmenu_txts2 .txt {
        text-align: left;
        font-size: 2.5vw;
        line-height: 1.45em;
        display: inline-block; }
    #topmenu .topmenu_boxes .topmenu_box {
      background: url("/static/img/menu_bg.webp") no-repeat center top;
      background-size: 90.455vw;
      padding-top: 12.273vw;
      margin-bottom: 11.364vw; }
      #topmenu .topmenu_boxes .topmenu_box .biko {
        width: 86.364vw;
        margin: 0 auto;
        text-align: left;
        font-size: 2.500vw;
        line-height: 1.7em;
        padding-top: 3.409vw; }
        #topmenu .topmenu_boxes .topmenu_box .biko li {
          position: relative;
          padding-left: 1em; }
          #topmenu .topmenu_boxes .topmenu_box .biko li:after {
            content: '※';
            position: absolute;
            left: 0;
            top: 0; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_wasyoku {
        text-align: center;
        margin-bottom: 4.545vw;
        color: #AE9B77; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_wasyoku span {
          display: inline-block;
          background: url("../img/menu-wasyoku.webp") no-repeat left center;
          background-size: 31vw;
          font-size: 7vw;
          font-weight: 500;
          padding-left: 13vw;
          letter-spacing: 0.05em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_yousyoku {
        text-align: center;
        margin-bottom: 4.545vw;
        color: #AE9B77; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_yousyoku span {
          display: inline-block;
          background: url("../img/menu-yosyoku.webp") no-repeat left center;
          background-size: 31vw;
          font-size: 7vw;
          font-weight: 500;
          padding-left: 13vw;
          letter-spacing: 0.05em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_asia {
        text-align: center;
        margin-bottom: 4.545vw;
        color: #AE9B77; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub_asia span {
          display: inline-block;
          background: url("../img/menu-asia.webp") no-repeat left center;
          background-size: 57vw;
          font-size: 5.5vw;
          font-weight: 500;
          padding-left: 11vw;
          letter-spacing: 0.05em;
          padding-bottom: 1vw; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_sub {
        text-align: center;
        margin-bottom: 4.545vw; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_sub img {
          height: 6vw; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_txt {
        text-align: center;
        font-weight: 500;
        font-size: 3vw;
        margin-bottom: 3.409vw;
        line-height: 1.5em;
        letter-spacing: 0.08em; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .prev-arrow {
        width: 10.227vw;
        position: absolute;
        left: 2.273vw;
        top: 22.727vw;
        z-index: 2; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .prev-arrow img {
          width: 100%; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .next-arrow {
        width: 10.227vw;
        position: absolute;
        right: 2.273vw;
        top: 22.727vw;
        z-index: 2; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .next-arrow img {
          width: 100%; }
      #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider {
        margin: 0 0.909vw;
        position: relative;
        padding-bottom: 11.364vw;
        position: relative; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_link {
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          z-index: 5; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_link:hover {
            cursor: pointer; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-active .topmenu_slider_img .topmenu_slider_img_in {
          height: 100%;
          transition: 0.2s; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider.slick-active .topmenu_slider_info {
          opacity: 1; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_img {
          position: relative;
          z-index: 1;
          height: 54.545vw;
          display: flex;
          align-items: center; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_img .topmenu_slider_img_in {
            filter: drop-shadow(0vw 0.909vw 0.909vw rgba(0, 0, 0, 0.25));
            width: 100%;
            height: 70%;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            border-radius: 2.273vw;
            overflow: hidden;
            transition: 0.2s; }
        #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_info {
          position: absolute;
          left: 0;
          bottom: 0;
          text-align: center;
          width: 100%;
          z-index: 2;
          opacity: 0; }
          #topmenu .topmenu_boxes .topmenu_box .topmenu_slider .topmenu_slider .topmenu_slider_info img {
            display: inline-block;
            width: 76.591vw; }

  #howto {
    padding: 0 0 0; }
    #howto .howto_ttl {
      text-align: center;
      font-size: 4.091vw;
      line-height: 1.6em;
      margin-bottom: 4.545vw;
      font-weight: 700; }
    #howto .howto_list {
      width: 86.364vw;
      margin: 0 auto; }
      #howto .howto_list li {
        margin-bottom: 4.545vw; }
        #howto .howto_list li:last-child {
          margin-bottom: 7.955vw; }
    #howto .howto_sub {
      width: 86.364vw;
      margin: 0 auto;
      font-size: 3.409vw;
      color: #AE9B77;
      font-weight: 600;
      letter-spacing: 0.08em;
      line-height: 1.53em;
      margin-bottom: 2.273vw; }
    #howto .howto_img {
      width: 86.364vw;
      margin: 0 auto;
      margin-bottom: 2.273vw; }
      #howto .howto_img img {
        width: 100%;
        height: auto; }
    #howto .howto_txt {
      font-size: 2.500vw;
      line-height: 1.5em;
      width: 86.364vw;
      margin: 0 auto 7.955vw; }
    #howto .howto_info {
      width: 86.364vw;
      margin: 0 auto; }
      #howto .howto_info img {
        width: 100%; }

  #faq {
    padding: 11.364vw 0; }
    #faq .faq_btn {
      padding: 4.545vw 0; }
    #faq .faq_ttl {
      font-size: 4.773vw;
      line-height: 1.4em;
      font-weight: 700;
      letter-spacing: 0.5em;
      text-align: center;
      color: #AE9B77;
      margin-bottom: 2.273vw; }
    #faq .faq_txt {
      text-align: center;
      font-size: 3.636vw;
      line-height: 1.8em;
      letter-spacing: 0.015em;
      margin-bottom: 7.955vw;
      font-weight: 700; }
    #faq .faq_lists {
      width: 86.364vw;
      margin: 0 auto; }
      #faq .faq_lists .faq_list {
        margin-bottom: 2.273vw;
        border: solid 0.455vw #AE9B77;
        border-radius: 2.273vw; }
        #faq .faq_lists .faq_list:last-child {
          margin-bottom: 0; }
        #faq .faq_lists .faq_list input[type="checkbox"] {
          display: none; }
        #faq .faq_lists .faq_list input[type="checkbox"]:checked + label {
          border-radius: 1.591vw 1.591vw 0 0; }
          #faq .faq_lists .faq_list input[type="checkbox"]:checked + label:after {
            background-image: url("/static/img/arr-qa_02.webp"); }
        #faq .faq_lists .faq_list input[type="checkbox"]:checked + label + .faq_list_content {
          height: auto;
          opacity: 1;
          visibility: visible;
          padding: 3.409vw 3.409vw 3.409vw 9.318vw; }
        #faq .faq_lists .faq_list .faq_list_content {
          box-sizing: border-box;
          padding: 0 3.409vw 0 9.318vw;
          font-size: 2.955vw;
          line-height: 1.5em;
          position: relative;
          opacity: 0;
          visibility: hidden;
          height: 0; }
          #faq .faq_lists .faq_list .faq_list_content:before {
            content: '';
            display: block;
            width: 4.773vw;
            height: 4.545vw;
            background: url("/static/img/arr-a.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            left: 2.273vw;
            top: 3.318vw; }
        #faq .faq_lists .faq_list label {
          display: block;
          box-sizing: border-box;
          color: #fff;
          background: #AE9B77;
          padding: 3.409vw 8.636vw 3.409vw 9.318vw;
          position: relative;
          font-size: 3.409vw;
          line-height: 1.5em;
          font-weight: 600;
          border-radius: 1.591vw; }
          #faq .faq_lists .faq_list label:after {
            content: '';
            display: block;
            width: 2.727vw;
            height: 2.273vw;
            background: url("/static/img/arr-qa_01.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            right: 2.955vw; }
          #faq .faq_lists .faq_list label:before {
            content: '';
            display: block;
            width: 4.773vw;
            height: 4.545vw;
            background: url("/static/img/arr-q.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            left: 2.273vw;
            top: 4.091vw; }

  #magazine {
    padding: 11.364vw 0; }
    #magazine .magazine_ttl {
      width: 68.636vw;
      margin: 0 auto;
      border-radius: 2.273vw 2.273vw 0 0;
      color: #AE9B77;
      text-align: center;
      font-size: 4.773vw;
      line-height: 1.4em;
      background: #F0EBE5;
      padding-top: 4.545vw;
      letter-spacing: 0.15em; }
    #magazine .magazine_inner {
      background: #F0EBE5;
      padding: 4.545vw 0 3.409vw;
      position: relative; }
      #magazine .magazine_inner:after {
        content: '';
        display: block;
        width: 68.636vw;
        border-radius: 0 0 2.273vw 2.273vw;
        background: #F0EBE5;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        height: 11.364vw;
        z-index: 1; }
      #magazine .magazine_inner .magazine_txt {
        text-align: center;
        font-size: 3.636vw;
        line-height: 1.8em;
        margin-bottom: 5.682vw; }
    #magazine .magazine_slider {
      margin-bottom: 0; }
      #magazine .magazine_slider .magazine_slide {
        box-sizing: border-box;
        padding: 1.136vw 2.273vw 2.273vw; }
        #magazine .magazine_slider .magazine_slide img {
          width: 100%;
          filter: drop-shadow(0.227vw 0.682vw 1.136vw rgba(0, 0, 0, 0.25)); }
    #magazine .slide-dots {
      position: absolute;
      bottom: -6.818vw;
      left: 0;
      width: 100%;
      text-align: center;
      font-size: 0;
      z-index: 3; }
      #magazine .slide-dots li {
        display: inline-block;
        margin: 0 1.136vw; }
        #magazine .slide-dots li button {
          font-size: 0;
          border: none;
          width: 3.409vw;
          height: 3.409vw;
          background: url("/static/img/dot-scene_off.webp") no-repeat center;
          background-size: 2.045vw; }
        #magazine .slide-dots li.slick-active button {
          background-image: url("/static/img/dot-scene_on.webp");
          background-size: 3.409vw; }

  #video {
    padding: 11.364vw 0; }
    #video .video_slider .video_slide {
      margin: 0 2.7vw;
      position: relative; }
      #video .video_slider .video_slide .video_btns {
        margin-top: 4vw; }
        #video .video_slider .video_slide .video_btns a {
          font-size: 3.63vw; }
      #video .video_slider .video_slide .anca {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }
    #video .prev-arrow {
      width: 10.227vw;
      position: absolute;
      left: 9vw;
      top: 40%;
      z-index: 2; }
    #video .next-arrow {
      width: 10.227vw;
      position: absolute;
      right: 9vw;
      top: 40%;
      z-index: 2; }
    #video .slide-dots {
      position: absolute;
      bottom: -9vw;
      left: 0;
      width: 100%;
      text-align: center;
      font-size: 0;
      z-index: 3; }
      #video .slide-dots li {
        display: inline-block;
        margin: 0 5px; }
        #video .slide-dots li button {
          font-size: 0;
          border: none;
          width: 15px;
          height: 15px;
          background: url("/static/img/dot-scene_off.webp") no-repeat center;
          background-size: 9px; }
        #video .slide-dots li.slick-active button {
          background-image: url("/static/img/dot-scene_on.webp");
          background-size: 15px; }

  #news {
    padding: 11.364vw 0; }
    #news .news_ttl {
      text-align: center;
      font-size: 4.091vw;
      line-height: 1.6em;
      margin-bottom: 4.545vw;
      font-weight: 700; }
    #news .news_lists {
      width: 86.364vw;
      margin: 0 auto; }
      #news .news_lists .news_list {
        padding: 4.545vw 0 4.091vw;
        border-bottom: solid 0.227vw #535353; }
        #news .news_lists .news_list:first-child {
          border-top: solid 0.227vw #535353; }
        #news .news_lists .news_list .news_list_date {
          display: inline-block;
          vertical-align: middle;
          color: #AE9B77;
          font-size: 2.955vw;
          line-height: 2em;
          margin-right: 2.273vw; }
        #news .news_lists .news_list .news_list_cat {
          display: inline-block;
          vertical-align: middle; }
          #news .news_lists .news_list .news_list_cat span {
            display: inline-block;
            color: #fff;
            border-radius: 22.727vw;
            font-size: 2.955vw;
            line-height: 2em;
            line-height: 1.6em;
            padding: 0 1.818vw;
            background: #DB0004; }
        #news .news_lists .news_list .news_list_tag {
          display: inline-block;
          vertical-align: middle; }
          #news .news_lists .news_list .news_list_tag span {
            display: inline-block;
            color: #fff;
            border-radius: 22.727vw;
            font-size: 2.955vw;
            line-height: 2em;
            line-height: 1.6em;
            padding: 0 1.818vw;
            background: #DB0004; }
        #news .news_lists .news_list .news_list_ttl {
          padding-top: 1.136vw;
          font-size: 2.955vw;
          line-height: 2em; }
          #news .news_lists .news_list .news_list_ttl a {
            color: #535353; }
            #news .news_lists .news_list .news_list_ttl a:hover {
              text-decoration: underline; }
    #news .news_btn {
      padding: 7.273vw 0;
      text-align: center; }

  #links {
    padding: 11.364vw 0; }
    #links .links_ttl {
      text-align: center;
      font-size: 4.091vw;
      line-height: 1.6em;
      margin-bottom: 4.545vw;
      font-weight: 700; }
    #links .links_list {
      width: 86.364vw;
      margin: 0 auto; }
      #links .links_list li {
        font-size: 2.955vw;
        line-height: 2em;
        margin-bottom: 2.273vw; }
        #links .links_list li:last-child {
          margin-bottom: 0; }
        #links .links_list li a {
          display: block;
          box-sizing: border-box;
          padding: 2.273vw 4.545vw;
          border-radius: 2.273vw;
          color: #535353;
          border: solid 0.227vw #535353; }
          #links .links_list li a:hover {
            background: #535353;
            color: #fff; }

  #foot {
    margin: 0 auto;
    background: #fff; }
    #foot .foot_inner {
      box-shadow: 0.455vw -0.455vw 1.818vw rgba(0, 0, 0, 0.25);
      background: #AE9B77;
      box-sizing: border-box;
      border-radius: 6.8vw 6.8vw 0 0;
      color: #fff;
      padding: 6.818vw;
      position: relative;
      display: flex;
      flex-wrap: wrap; }
      #foot .foot_inner .foot_logo {
        width: 100%;
        margin-bottom: 18vw; }
        #foot .foot_inner .foot_logo img {
          width: 49.7vw;
          display: block;
          filter: brightness(0) invert(1); }
      #foot .foot_inner .foot_sns {
        width: 100%;
        order: 2; }
        #foot .foot_inner .foot_sns .foot_sns_txt {
          font-weight: 500;
          font-size: 2.5vw;
          line-height: 1.5em;
          margin-bottom: 6.8vw; }
        #foot .foot_inner .foot_sns .foot_sns_list {
          display: flex; }
          #foot .foot_inner .foot_sns .foot_sns_list li {
            margin-right: 5vw; }
            #foot .foot_inner .foot_sns .foot_sns_list li img {
              display: inline-block;
              width: 7.7vw;
              filter: brightness(0) invert(1); }
      #foot .foot_inner .foot_menu {
        font-size: 0;
        width: 61vw;
        margin-bottom: 6.8vw; }
        #foot .foot_inner .foot_menu li {
          font-size: 2.5vw;
          line-height: 1.5em;
          margin-bottom: 1.136vw;
          margin-right: 1.5em; }
          #foot .foot_inner .foot_menu li:last-child {
            margin-bottom: 0; }
          #foot .foot_inner .foot_menu li a {
            color: #fff; }
            #foot .foot_inner .foot_menu li a:hover {
              text-decoration: underline; }
    #foot .foot_btm {
      padding: 6.8vw; }
      #foot .foot_btm .foot_btm_inner {
        box-sizing: border-box;
        display: flex;
        justify-content: space-between;
        align-items: center; }
      #foot .foot_btm .foot_left {
        width: 22.5vw; }
      #foot .foot_btm .foot_right {
        width: 52.5vw;
        font-size: 2.5vw;
        line-height: 2em; }

  .modal {
    background: rgba(0, 0, 0, 0.2);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100dvh;
    z-index: 100;
    display: none;
    justify-content: center;
    align-items: center; }
    .modal.is-active {
      display: flex; }
    .modal .modal_inner {
      width: 90.909vw;
      border-radius: 2.273vw;
      background: #F0EBE5;
      position: relative;
      padding: 8.182vw 0 2.273vw; }
      .modal .modal_inner .modal_close {
        position: absolute;
        width: 9.318vw;
        right: 2.727vw;
        top: 2.273vw; }

  .modaltv {
    background: rgba(0, 0, 0, 0.2);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100dvh;
    z-index: 0;
    display: none;
    justify-content: center;
    align-items: center; }
    .modaltv.is-active {
      display: flex;
      z-index: 100; }
    .modaltv .modal_inner {
      width: 90vw;
      margin: 0 auto;
      position: relative; }
      .modaltv .modal_inner iframe {
        width: 90vw;
        height: 55vw; }
      .modaltv .modal_inner img {
        width: 90vw;
        height: auto; }
      .modaltv .modal_inner .modal_close {
        position: absolute;
        width: 10vw;
        right: -2vw;
        top: -11vw; }

  .floatcourse_btn {
    position: fixed;
    right: 5vw;
    bottom: 10vw;
    width: 20vw;
    z-index: 5; }
    .floatcourse_btn a {
      display: block; }
    .floatcourse_btn:hover {
      opacity: 0.9; }

  #underpage {
    padding-top: 16.6vw; }
    #underpage .btn01-3 {
      width: 25vw;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 2px #fff;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      text-align: left;
      position: relative;
      overflow: hidden;
      letter-spacing: 0.2em; }
      #underpage .btn01-3:after {
        content: '';
        display: block;
        background: #fff;
        width: 3.6vw;
        height: 2.1vw;
        position: absolute;
        right: -0.6vw;
        top: 0;
        z-index: 3; }
      #underpage .btn01-3 a {
        width: 100%;
        display: block;
        position: relative;
        z-index: 2;
        box-sizing: border-box;
        border-radius: 100px;
        -webkit-border-radius: 100px;
        -moz-border-radius: 100px;
        border: solid 2px #AE9B77;
        color: #AE9B77;
        font-size: 3.3vw;
        line-height: 1.8em;
        padding: 1vw 0;
        background: #fff;
        padding-left: 2.8vw; }
        #underpage .btn01-3 a span {
          display: inline-block;
          padding-right: 11.1vw;
          background: url("/static/img/arr.webp") no-repeat center right 1vw;
          background-size: 4vw; }
      #underpage .btn01-3:hover:after {
        display: none; }
      #underpage .btn01-3:hover a {
        background: #AE9B77;
        color: #fff; }
        #underpage .btn01-3:hover a span {
          background-image: url("/static/img/arr-off.webp"); }
    #underpage .btn01-4 {
      width: 12.3vw;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 0.5vw #AE9B77;
      border-radius: 100px;
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      text-align: left;
      position: relative;
      overflow: hidden;
      letter-spacing: 0.02em; }
      #underpage .btn01-4:after {
        content: '';
        display: block;
        background: #AE9B77;
        width: 2vw;
        height: 1.3vw;
        position: absolute;
        right: 0.5vw;
        top: -0.6vw;
        z-index: 3; }
      #underpage .btn01-4 a {
        width: 100%;
        display: block;
        position: relative;
        z-index: 2;
        box-sizing: border-box;
        border-radius: 100px;
        -webkit-border-radius: 100px;
        -moz-border-radius: 100px;
        border: solid 0.3vw #fff;
        color: #fff;
        font-size: 1.83vw;
        line-height: 1.8em;
        padding: 1px 0;
        background: #AE9B77;
        text-align: center; }
        #underpage .btn01-4 a span {
          display: inline-block;
          padding-right: 2.6vw;
          background: url("/static/img/arr-off.webp") no-repeat center right;
          background-size: 2.1vw; }
      #underpage .btn01-4:hover:after {
        display: none; }
      #underpage .btn01-4:hover a {
        background: #fff;
        color: #AE9B77; }
        #underpage .btn01-4:hover a span {
          background-image: url("/static/img/arr.webp"); }
    #underpage .arrange_box {
      width: 81vw;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 2px #AE9B77;
      border-radius: 6.6vw;
      position: relative;
      padding: 9vw 4.5vw;
      margin-bottom: 12vw;
      background: #fff; }
      #underpage .arrange_box .arrange_box_btn {
        position: absolute;
        left: 0;
        bottom: -4.8vw;
        width: 100%;
        text-align: center; }
        #underpage .arrange_box .arrange_box_btn .btn01-3 {
          text-align: center; }
          #underpage .arrange_box .arrange_box_btn .btn01-3 a span {
            padding-right: 6vw;
            padding-left: 2vw;
            background-position: center right 2vw; }
      #underpage .arrange_box .arrange_box_ttl {
        width: 49vw;
        background: #fff;
        margin: 0 auto;
        margin-top: -13.8vw;
        margin-bottom: 4.1vw; }
      #underpage .arrange_box .arrange_box_inner .arrange_box_left {
        width: 100%;
        box-sizing: border-box;
        padding-bottom: 6vw;
        border-bottom: solid 2px #AE9B77; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_sub {
          max-width: 59vw;
          margin: 0 auto 2.6vw; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_left .txt {
          text-align: center;
          font-size: 2.7vw;
          line-height: 1.6em;
          margin-bottom: 1.6vw;
          letter-spacing: 0.008em; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_img {
          margin-bottom: 2vw; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_img img {
            width: 100%;
            height: auto;
            display: block; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_left .arrange_box_name {
          text-align: center;
          font-size: 4.5vw;
          line-height: 1.5em;
          font-weight: 600;
          letter-spacing: 0.05em; }
      #underpage .arrange_box .arrange_box_inner .arrange_box_right {
        padding-top: 6.8vw;
        width: 100%;
        box-sizing: border-box;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_mini {
          width: 100%;
          text-align: center;
          margin: 0 auto 4.3vw; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_mini img {
            width: 33.6vw;
            margin: 0 auto; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_txt {
          width: 100%;
          text-align: center;
          font-size: 2.7vw;
          line-height: 1.7em;
          margin-bottom: 4vw; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_img {
          width: 29.5vw; }
          #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_img img {
            width: 100%;
            height: auto; }
        #underpage .arrange_box .arrange_box_inner .arrange_box_right .arrange_box_right_name {
          width: calc(100% - 35vw);
          font-size: 3.6vw;
          line-height: 1.5em;
          text-align: left;
          font-weight: 600;
          letter-spacing: 0.08em; }
    #underpage .singlemenu {
      padding-top: 5.83vw;
      padding-bottom: 16.6vw; }
      #underpage .singlemenu .singlemenu_ttl {
        width: 90vw;
        margin: 0 auto;
        background: url("/static/img/menu_ttl_bg.webp") no-repeat center bottom;
        background-size: 77vw;
        text-align: center;
        margin-bottom: -8vw;
        position: relative;
        z-index: 2; }
        #underpage .singlemenu .singlemenu_ttl.singlemenu_ttl2 {
          width: 90vw;
          background-size: 77vw; }
        #underpage .singlemenu .singlemenu_ttl .singlemenu_name {
          color: #917346;
          font-size: 5vw;
          font-weight: 600;
          line-height: 1.5em;
          letter-spacing: 0.03em;
          margin-bottom: 1vw; }
        #underpage .singlemenu .singlemenu_ttl .singlemenu_type {
          font-size: 2.6vw;
          font-weight: 600;
          color: #917346;
          letter-spacing: 0.03em;
          line-height: 1.6em;
          padding-bottom: 2px; }
      #underpage .singlemenu .singlemenu_thum {
        position: relative;
        z-index: 1;
        margin-bottom: 5vw; }
        #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .singlemenu_thum_img {
          width: 100%;
          height: auto;
          left: 0;
          border-radius: 0; }
          #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .singlemenu_thum_img img {
            position: relative;
            width: 100%;
            left: 0;
            height: auto;
            top: 0;
            transform: none; }
        #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .slide-dots {
          position: absolute;
          bottom: 4vw;
          left: 0;
          width: 100%;
          text-align: center;
          font-size: 0;
          z-index: 3; }
          #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .slide-dots li {
            display: inline-block;
            margin: 0 5px; }
            #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .slide-dots li button {
              appearance: none;
              font-size: 0;
              border: none;
              width: 15px;
              height: 15px;
              background: url("/static/img/dot-scene_off.webp") no-repeat center;
              background-size: 9px; }
            #underpage .singlemenu .singlemenu_thum.singlemenu_thum2 .slide-dots li.slick-active button {
              background-image: url("/static/img/dot-scene_on.webp");
              background-size: 15px; }
        #underpage .singlemenu .singlemenu_thum .singlemenu_thum_img {
          position: relative;
          z-index: 1;
          border-radius: 1.6vw;
          overflow: hidden;
          height: 70vw;
          width: 100vw;
          left: -5vw;
          top: 0; }
          #underpage .singlemenu .singlemenu_thum .singlemenu_thum_img img {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translateX(-50%) translateY(-50%);
            height: 100%;
            width: auto;
            max-width: 300%; }
        #underpage .singlemenu .singlemenu_thum .biko {
          position: absolute;
          z-index: 2;
          right: -3.4vw;
          bottom: 1.6vw;
          color: #fff;
          font-size: 1.8vw; }
      #underpage .singlemenu .singlemenu_cats {
        width: 81vw;
        margin: 0 auto;
        margin-bottom: 3.4vw; }
        #underpage .singlemenu .singlemenu_cats li {
          display: inline-block;
          box-sizing: border-box;
          border: solid 2px #fff;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          font-size: 3.1vw;
          line-height: 1.7em;
          font-weight: 500;
          margin-bottom: 2.2vw;
          background: #fff; }
          #underpage .singlemenu .singlemenu_cats li a {
            display: block;
            border: solid 1px #AE9B77;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            color: #AE9B77;
            padding: 1px 2vw;
            position: relative; }
            #underpage .singlemenu .singlemenu_cats li a:before {
              content: '';
              display: block;
              background: #fff;
              height: 2px;
              width: 1.1vw;
              position: absolute;
              right: 2vw;
              top: -1px; }
      #underpage .singlemenu .singlemenu_content {
        width: 81vw;
        margin: 0 auto;
        font-size: 4vw;
        letter-spacing: 0.05em;
        line-height: 1.6em; }
      #underpage .singlemenu .singlemenu_sub {
        width: 81vw;
        margin: 5.6vw auto 0.8vw;
        font-size: 3.1vw;
        line-height: 1.4em;
        letter-spacing: 0.08em;
        color: #AE9B77;
        font-weight: 600; }
      #underpage .singlemenu .singlemenu_biko {
        width: 81vw;
        margin: 0 auto;
        color: #AE9B77;
        font-size: 2.5vw;
        margin-bottom: 1.6vw; }
      #underpage .singlemenu .singlemenu_txt {
        width: 81vw;
        margin: 0 auto;
        font-size: 2.5vw;
        line-height: 1.6em;
        letter-spacing: 0.05em;
        font-weight: 400; }
    #underpage .pankuzu {
      width: 100%;
      max-width: 90vw;
      margin: 5vw auto 5.6vw; }
      #underpage .pankuzu ul {
        font-size: 0; }
        #underpage .pankuzu ul li {
          display: inline-block;
          margin-right: 4.33vw;
          font-size: 2.5vw;
          line-height: 1.4em;
          color: #917346;
          position: relative; }
          #underpage .pankuzu ul li:before {
            content: '';
            display: block;
            width: 1.6vw;
            height: 2.26vw;
            background: url("/static/img/arr_pankuzu.webp") no-repeat center;
            background-size: contain;
            position: absolute;
            right: -2.96vw;
            top: 54%;
            transform: translateY(-50%); }
          #underpage .pankuzu ul li:last-child {
            margin-right: 0; }
            #underpage .pankuzu ul li:last-child:before {
              display: none; }
          #underpage .pankuzu ul li a {
            color: #917346; }
    #underpage .underpage_body {
      width: 100%;
      max-width: 90vw;
      margin: 0 auto;
      padding-bottom: 6.6vw; }
      #underpage .underpage_body#maxw {
        max-width: 100%;
        padding-bottom: 0;
        padding-top: 10vw; }
      #underpage .underpage_body#w100 {
        max-width: 100%;
        padding-bottom: 20vw; }
      #underpage .underpage_body.underpage_body2 {
        width: 100%;
        max-width: 100%; }
      #underpage .underpage_body .underpage_biko {
        font-size: 1.8vw;
        line-height: 1.5em; }
        #underpage .underpage_body .underpage_biko li {
          position: relative;
          padding-left: 1em; }
          #underpage .underpage_body .underpage_biko li:before {
            content: '※';
            display: block;
            position: absolute;
            left: 0;
            top: 0; }
      #underpage .underpage_body .recipe_head {
        display: flex;
        justify-content: center;
        margin-bottom: 5vw; }
        #underpage .underpage_body .recipe_head .recipe_head_box {
          width: 81.8vw;
          border-radius: 1.6vw;
          background: #F0EBE5;
          box-sizing: border-box;
          padding: 1vw 4.6vw 2.6vw; }
          #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin {
            position: relative;
            display: flex;
            justify-content: space-between; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_left {
              text-align: center;
              padding-top: 0.83vw; }
              #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_left img {
                display: block;
                height: 16.3vw;
                width: auto;
                margin: 0 auto; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_btn {
              position: absolute;
              right: 0;
              bottom: 0;
              width: 15.4vw; }
              #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_btn img {
                width: 100%; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_right {
              width: calc(100% - 19.8vw);
              font-size: 3.86vw;
              line-height: 1.6em; }
              #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_right.recipe_head_right2 {
                width: calc(100% - 31.8vw); }
              #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_boxin .recipe_head_right.recipe_head_right3 {
                width: calc(100% - 16.8vw); }
          #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_ttl {
            position: relative;
            text-align: center; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_ttl:before {
              content: '';
              display: block;
              height: 1px;
              width: 100%;
              position: absolute;
              left: 0;
              top: 40%;
              transform: translateY(-50%);
              background: #AE9B77; }
            #underpage .underpage_body .recipe_head .recipe_head_box .recipe_head_ttl span {
              color: #AE9B77;
              font-size: 2.5vw;
              line-height: 2em;
              padding: 0 1.6vw 1.2vw;
              background: #F0EBE5;
              position: relative;
              display: inline-block;
              z-index: 2; }
      #underpage .underpage_body .recipe_body .recipe_body_ttl {
        text-align: center;
        background: url("/static/img/recipesingle_ttl_sp.webp") no-repeat center top;
        background-size: 100vw;
        font-weight: 600;
        line-height: 1.5em;
        height: 12.8vw;
        width: 100vw;
        position: relative;
        margin-bottom: -3vw; }
      #underpage .underpage_body .recipe_body .recipe_body_txt2 {
        margin-top: 30vw;
        text-align: center;
        color: #AE9B77;
        background: url("/static/img/recipesingle_kumiawase_ttl_sp.webp") no-repeat center top;
        background-size: 100vw;
        padding-top: 11.3vw;
        font-size: 2.7vw;
        font-weight: 600;
        line-height: 1.5em;
        margin-bottom: 3vw;
        font-weight: 500;
        position: relative;
        width: 100vw;
        position: relative;
        margin-bottom: 2vw; }
        #underpage .underpage_body .recipe_body .recipe_body_txt2:before {
          content: '';
          display: block;
          width: 24.1vw;
          height: 13.8vw;
          background: url("/static/img/recipesingle_mote.webp") no-repeat center;
          background-size: contain;
          position: absolute;
          right: 9vw;
          top: -15vw; }
      #underpage .underpage_body .recipe_body .recipe_body_ttlsub {
        padding-top: 10px;
        font-size: 22px;
        font-weight: 600;
        line-height: 1.5em;
        padding-bottom: 12px;
        text-align: center;
        letter-spacing: 0.018em; }
      #underpage .underpage_body .recipe_body .recipe_body_img {
        margin-bottom: 5vw;
        width: 100vw;
        position: relative; }
        #underpage .underpage_body .recipe_body .recipe_body_img img {
          width: 100vw;
          max-width: 200%;
          height: auto; }
      #underpage .underpage_body .recipe_body .recipe_body_txt {
        width: 81.8vw;
        margin: 0 auto;
        font-size: 4.09vw;
        line-height: 1.6em;
        margin-bottom: 8.3vw; }
      #underpage .underpage_body .recipe_body .recipe_body_info {
        width: 81.8vw;
        margin: 0 auto;
        margin-bottom: 8.3vw; }
        #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_ttl {
          width: 18vw;
          margin: 0 auto 1.6vw; }
        #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_sub {
          color: #fff;
          text-align: center;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          background: #AE9B77;
          font-size: 2.5vw;
          line-height: 1.9em;
          font-weight: 600; }
        #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list {
          display: flex;
          align-items: center;
          justify-content: space-between;
          border-bottom: solid 1px #AE9B77;
          padding: 1.6vw 0; }
          #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list.top {
            border-top: solid 1px #AE9B77; }
          #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list dt {
            font-size: 3.63vw;
            line-height: 1.575em;
            letter-spacing: 0.08em;
            max-width: 64vw; }
            #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list dt .icon {
              width: 17.7vw;
              margin-top: 0.8vw; }
          #underpage .underpage_body .recipe_body .recipe_body_info .recipe_body_info_lists .recipe_body_info_list dd {
            font-size: 3.63vw;
            line-height: 1.375em;
            letter-spacing: 0.08em; }
      #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_ttl {
        width: 18vw;
        margin: 0 auto 4.6vw; }
      #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes {
        width: 81vw;
        margin: 0 auto; }
        #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box {
          border-radius: 3.5vw;
          background: #F0EBE5;
          margin-bottom: 7.7vw;
          box-sizing: border-box;
          padding: 3.63vw 4.5vw;
          position: relative; }
          #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box:before {
            content: '';
            display: block;
            width: 5vw;
            height: 10.6vw;
            background: url("/static/img/recipesingle_arr.webp") no-repeat center top;
            background-size: contain;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            bottom: -6.5vw; }
          #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box:last-child:before {
            display: none; }
          #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner {
            border-radius: 3.5vw;
            border: solid 2px #AE9B77;
            box-sizing: border-box;
            padding: 3.6vw 3.4vw 2.8vw;
            text-align: center; }
            #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_ttl {
              display: inline-block;
              font-size: 2.8vw;
              width: 15vw;
              background: #F0EBE5;
              text-align: center;
              color: #AE9B77;
              position: absolute;
              top: 2vw;
              left: 50%;
              transform: translateX(-50%); }
            #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner {
              display: flex;
              justify-content: space-between; }
              #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner .recipe_body_step_box_left {
                width: 41.1vw; }
                #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner .recipe_body_step_box_left img {
                  width: 100%; }
              #underpage .underpage_body .recipe_body .recipe_body_step .recipe_body_step_boxes .recipe_body_step_box .inner .recipe_body_step_box_inner .recipe_body_step_box_right {
                width: 100%;
                font-size: 3.63vw;
                line-height: 1.7em;
                text-align: left; }
      #underpage .underpage_body .archive_menu .menulist {
        margin-bottom: 6.6vw; }
        #underpage .underpage_body .archive_menu .menulist .menulist_img {
          border-radius: 1.6vw;
          overflow: hidden;
          margin-bottom: 1vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_img img {
            display: block;
            width: 100%;
            height: auto; }
        #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg {
          position: relative;
          margin-bottom: 1vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon01 {
            position: absolute;
            right: -1.6vw;
            bottom: 0;
            width: 21.5vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon02 {
            position: absolute;
            right: 0;
            bottom: -2vw;
            width: 20vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon03 {
            position: absolute;
            right: -3.6vw;
            bottom: -2.5vw;
            width: 18.1vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon04 {
            position: absolute;
            right: 1vw;
            bottom: -1.5vw;
            width: 17vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg .icon05 {
            position: absolute;
            right: -1px;
            bottom: 0;
            width: 17vw; }
          #underpage .underpage_body .archive_menu .menulist .menulist_recipeimg img {
            display: block;
            width: 100%;
            height: auto; }
        #underpage .underpage_body .archive_menu .menulist .menulist_ttl {
          text-align: center;
          font-size: 4.3vw;
          line-height: 1.5em;
          font-weight: 600; }
          #underpage .underpage_body .archive_menu .menulist .menulist_ttl a {
            color: #594A34; }
        #underpage .underpage_body .archive_menu .menulist .menulist_type {
          color: #AE9B77;
          text-align: center;
          font-weight: 600;
          font-size: 2.5vw;
          line-height: 1.5em;
          margin-bottom: 1.6vw;
          letter-spacing: 0.15em; }
        #underpage .underpage_body .archive_menu .menulist .menulist_txt {
          color: #AE9B77;
          text-align: center;
          font-weight: 500;
          font-size: 3vw;
          line-height: 1.5em;
          letter-spacing: 0.08em; }
      #underpage .underpage_body .catlist {
        display: flex;
        margin-bottom: 8.3vw; }
        #underpage .underpage_body .catlist li {
          display: inline-block;
          box-sizing: border-box;
          border: solid 2px #fff;
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          font-size: 2.33vw;
          line-height: 1.7em;
          font-weight: 600;
          margin-right: 0.7vw; }
          #underpage .underpage_body .catlist li:hover {
            border: solid 2px #AE9B77; }
            #underpage .underpage_body .catlist li:hover a {
              color: #fff;
              background: #AE9B77;
              border: solid 1px #fff; }
              #underpage .underpage_body .catlist li:hover a:before {
                background: #AE9B77; }
          #underpage .underpage_body .catlist li.active {
            border: solid 2px #AE9B77; }
            #underpage .underpage_body .catlist li.active a {
              color: #fff;
              background: #AE9B77;
              border: solid 1px #fff; }
              #underpage .underpage_body .catlist li.active a:before {
                background: #AE9B77; }
          #underpage .underpage_body .catlist li a {
            display: block;
            border: solid 1px #AE9B77;
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            color: #AE9B77;
            padding: 1px 2vw;
            position: relative; }
            #underpage .underpage_body .catlist li a:before {
              content: '';
              display: block;
              background: #fff;
              height: 2px;
              width: 1.1vw;
              position: absolute;
              right: 2vw;
              top: -1px; }

  #kodawari .kodawari1_txt {
    width: 86vw;
    margin: 0 auto;
    text-align: left;
    font-size: 4vw;
    letter-spacing: 0.05em;
    line-height: 1.66em; }
    #kodawari .kodawari1_txt span {
      font-size: 2.5vw; }
    #kodawari .kodawari1_txt sup {
      font-size: 50%;
      position: relative;
      top: -0.9em; }
  #kodawari #kodawari1 {
    position: relative;
    z-index: 2; }
    #kodawari #kodawari1 .kodawari_ttl {
      width: 61.5vw;
      margin: 0 auto;
      background: url("/static/img/kodawari_ttl1_bg.webp") no-repeat center top;
      background-size: contain;
      text-align: center;
      padding-top: 6.6vw;
      position: relative;
      z-index: 2; }
      #kodawari #kodawari1 .kodawari_ttl img {
        width: 36.3vw;
        margin: 0 auto; }
    #kodawari #kodawari1 .kodawari1_in {
      background: #E8E2D6;
      text-align: center;
      position: relative;
      padding-bottom: 35.2vw;
      z-index: 1;
      margin-top: -8vw;
      padding-top: 66px; }
    #kodawari #kodawari1 .kodawari_sub {
      width: 70.9vw;
      margin: 0 auto 3vw; }
    #kodawari #kodawari1 .kodawari1_img1 {
      width: 100%;
      margin: 0 auto 4.5vw; }
    #kodawari #kodawari1 .kodawari1_img2 {
      width: 73.1vw;
      margin: 6.8vw auto; }
    #kodawari #kodawari1 .kodawari1_lists {
      width: 86.3vw;
      margin: 0 auto; }
      #kodawari #kodawari1 .kodawari1_lists .kodawari1_list {
        margin-top: 6.8vw; }
    #kodawari #kodawari1 .kodawari1_p2_img {
      padding-top: 17.2vw;
      width: 100%;
      margin: 0 auto 4.5vw; }
    #kodawari #kodawari1 .kodawari1_p2_txt {
      position: relative;
      width: 86.3vw;
      margin: 0 auto;
      display: flex;
      justify-content: flex-end;
      padding-bottom: 37.9vw; }
      #kodawari #kodawari1 .kodawari1_p2_txt .kodawari1_p2_txt_txt {
        text-align: left;
        width: 59.5vw;
        font-size: 4vw;
        line-height: 1.66em; }
      #kodawari #kodawari1 .kodawari1_p2_txt .kodawari1_p2_txt_img1 {
        position: absolute;
        width: 34.3vw;
        left: -13.5vw;
        top: 0; }
      #kodawari #kodawari1 .kodawari1_p2_txt .kodawari1_p2_txt_img2 {
        position: absolute;
        width: 37.5vw;
        right: 0;
        bottom: 0; }
    #kodawari #kodawari1 .kodawari1_p3_img {
      padding-top: 27vw;
      width: 100%;
      margin: 0 auto 18px; }
  #kodawari #kodawari2 {
    position: relative;
    z-index: 3;
    margin-top: -48px;
    text-align: center; }
    #kodawari #kodawari2 .kodawari_ttl {
      width: 61.5vw;
      margin: 0 auto;
      background: url("/static/img/kodawari_ttl2_bg.webp") no-repeat center top;
      background-size: contain;
      text-align: center;
      padding-top: 6.6vw;
      position: relative;
      z-index: 2; }
      #kodawari #kodawari2 .kodawari_ttl img {
        width: 36.3vw;
        margin: 0 auto; }
    #kodawari #kodawari2 .kodawari2_in {
      margin-top: -8vw;
      padding: 15.9vw 0 30.4vw;
      background: url("/static/img/kodawari_sec02_bg_sp.webp") no-repeat center top;
      background-size: 100%; }
      #kodawari #kodawari2 .kodawari2_in .kodawari_sub {
        width: 73.4vw;
        margin: 0 auto 11.3vw; }
      #kodawari #kodawari2 .kodawari2_in .kodawari2_lists {
        width: 86.3vw;
        margin: 0 auto; }
        #kodawari #kodawari2 .kodawari2_in .kodawari2_lists .kodawari2_list {
          margin-bottom: 11.3vw; }
      #kodawari #kodawari2 .kodawari2_in .kodawari2_biko {
        width: 86.3vw;
        margin: 0 auto;
        font-size: 2.5vw;
        line-height: 1.45em;
        text-align: left; }
        #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li {
          position: relative;
          padding-left: 2em; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li sup {
            font-size: 67%;
            position: relative;
            top: -0.41em; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li:nth-child(1):before {
            content: '※1';
            position: absolute;
            left: 0;
            top: 0; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li:nth-child(2):before {
            content: '※2';
            position: absolute;
            left: 0;
            top: 0; }
          #kodawari #kodawari2 .kodawari2_in .kodawari2_biko li:nth-child(3):before {
            content: '※3';
            position: absolute;
            left: 0;
            top: 0; }
  #kodawari #kodawari3 {
    text-align: center;
    position: relative;
    z-index: 4;
    margin-top: -10vw; }
    #kodawari #kodawari3 .kodawari_ttl {
      width: 61.5vw;
      margin: 0 auto;
      background: url("/static/img/kodawari_ttl3_bg_sp.webp") no-repeat center top;
      background-size: contain;
      text-align: center;
      padding-top: 6.6vw;
      position: relative;
      z-index: 2; }
      #kodawari #kodawari3 .kodawari_ttl img {
        width: 36.3vw;
        margin: 0 auto; }
    #kodawari #kodawari3 .kodawari2_in {
      background: url("/static/img/kodawari_sec03_bg_sp.webp") center top;
      background-size: 100vw;
      padding: 15.9vw 0 16vw;
      position: relative;
      z-index: 1;
      margin-top: -8vw; }
      #kodawari #kodawari3 .kodawari2_in .kodawari_sub {
        width: 67.5vw;
        margin: 0 auto 11.3vw; }
      #kodawari #kodawari3 .kodawari2_in .kodawari3_lists {
        width: 90vw;
        margin: 0 auto; }
        #kodawari #kodawari3 .kodawari2_in .kodawari3_lists .kodawari3_list {
          margin-bottom: 30px; }

  /* #kodawari */
  #campaignN {
    /* campaignN_body */ }
    #campaignN .campaignN_head {
      text-align: center;
      position: relative;
      z-index: 5; }
      #campaignN .campaignN_head:before {
        content: '';
        display: block;
        height: 2px;
        position: absolute;
        left: 0;
        width: 100%;
        bottom: -1px;
        background: #fff; }
      #campaignN .campaignN_head .campaignN_head_ttl img {
        width: 50vw;
        display: block;
        margin: 0 auto; }
      #campaignN .campaignN_head .campaignN_head_icon {
        position: absolute;
        width: 16.3vw;
        left: 50%;
        margin-left: 27.2vw;
        bottom: -14.5vw; }
    #campaignN .campaignN_body {
      background: url("/static/img/cam_bg_body_sp.webp") no-repeat center top;
      padding-bottom: 11.3vw;
      background-size: cover;
      width: 100%;
      overflow: hidden; }
      #campaignN .campaignN_body.campaignN_body2 {
        background: url("../img/cam_pr_bg_sp.webp") center top;
        background-size: cover; }
        #campaignN .campaignN_body.campaignN_body2 .campaignN_body_in {
          padding-top: 12vw; }
      #campaignN .campaignN_body.campaignN_body3 {
        background: url("../img/cam_pr_bg_sp2.webp") center top;
        background-size: cover; }
        #campaignN .campaignN_body.campaignN_body3 .campaignN_body_in {
          padding-top: 12vw; }
      #campaignN .campaignN_body .campaignN_body_in {
        background: url("/static/img/cam_bg_head.webp") no-repeat center top -1px;
        background-size: 270vw;
        position: relative;
        text-align: center;
        padding-top: 8vw; }
        #campaignN .campaignN_body .campaignN_body_in .campaignN_body_date {
          display: inline-block;
          color: #fff;
          background: #21524C;
          border-radius: 22.727vw;
          font-size: 5.45vw;
          font-weight: 700;
          line-height: 1;
          padding: 1.13vw 2.4vw 1.59vw; }
        #campaignN .campaignN_body .campaignN_body_in .campaignN_body_ttl {
          display: inline-block;
          color: #fff;
          background: #21524C;
          border-radius: 22.727vw;
          font-size: 3.63vw;
          font-weight: 700;
          line-height: 1;
          padding: 1.13vw 2.4vw 1.59vw;
          margin-top: -0.9vw;
          margin-bottom: -2.9vw;
          position: relative;
          z-index: 3; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_body_ttl.campaignN_body_ttl2 {
            background: #fff;
            border: solid 2px #E64B2B;
            color: #E64B2B;
            font-size: 5.45vw; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_body_ttl.campaignN_body_ttl3 {
            background: #fff;
            border: solid 2px #F5A21A;
            color: #F5A21A;
            font-size: 5.45vw; }
        #campaignN .campaignN_body .campaignN_body_in .campaignN_info {
          border-radius: 2.27vw;
          width: 88.6vw;
          margin: 0 auto 9.3vw;
          background: #fff;
          padding: 4.54vw 3.63vw 2.5vw;
          position: relative;
          box-sizing: border-box;
          z-index: 2; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .bell {
            display: block;
            position: absolute;
            left: 1.3vw;
            top: -3.86vw;
            width: 17vw;
            height: 19vw;
            background: url("/static/img/cam_icon_bell.webp") no-repeat center;
            background-size: contain; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_ttl {
            display: inline-block;
            font-size: 3.63vw;
            color: #21524C;
            font-weight: 600;
            border: solid 1px #21524C;
            border-radius: 22.727vw;
            padding: 1vw 4.54vw 2.3vw;
            margin-bottom: 1.4vw;
            line-height: 1.4em; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_ttl.campaignN_info_ttl2 {
              color: #E64B2B;
              display: block;
              border-bottom: solid 1px #E64B2B;
              border-right: none;
              border-top: none;
              border-left: none;
              border-radius: 0;
              line-height: 1.3em;
              font-weight: 700;
              padding-top: 3.1vw; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_ttl.campaignN_info_ttl3 {
              color: #F5A21A;
              display: block;
              border-bottom: solid 1px #F5A21A;
              border-right: none;
              border-top: none;
              border-left: none;
              border-radius: 0;
              line-height: 1.3em;
              font-weight: 700;
              padding-top: 3.1vw; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt1 {
            text-align: center;
            font-size: 5.45vw;
            line-height: 1.3em; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt3 {
            text-align: center;
            font-size: 5.45vw;
            line-height: 1.3em;
            margin: 0 0 3.4vw; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_img {
            margin-bottom: 3.4vw; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_biko {
            text-align: left; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_biko li {
              position: relative;
              padding-left: 1em;
              font-size: 2.5vw;
              line-height: 1.45em; }
              #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_biko li:before {
                content: '●';
                position: absolute;
                left: 0;
                top: 0;
                font-size: 60%; }
          #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 {
            display: flex;
            justify-content: space-between;
            align-items: center; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_icon {
              width: 18vw; }
            #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_right {
              display: flex;
              align-items: flex-end; }
              #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_right .campaignN_info_txt2_price {
                font-size: 16.6vw;
                color: #DB0004; }
              #campaignN .campaignN_body .campaignN_body_in .campaignN_info .campaignN_info_txt2 .campaignN_info_txt2_right .campaignN_info_txt2_txt {
                font-size: 5.45vw;
                font-weight: 700;
                line-height: 1.4em; }
      #campaignN .campaignN_body .campaignN_coupon {
        width: 76.364vw;
        margin: 0 auto;
        position: relative;
        text-align: center;
        padding-top: 2.727vw;
        margin-bottom: 9.091vw; }
        #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_ttl {
          display: inline-block;
          border-radius: 22.727vw;
          width: 39.773vw;
          box-sizing: border-box;
          background: #AE9B77;
          color: #fff;
          border: solid 1px #F0EBE5;
          font-size: 2.955vw;
          line-height: 1.3em;
          letter-spacing: 0.006em;
          text-align: center;
          padding: 0.455vw 0;
          position: absolute;
          z-index: 3;
          left: 50%;
          transform: translateX(-50%);
          top: 0; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_ttl.campaignN_coupon_ttl2 {
            width: 44vw; }
        #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in {
          position: relative;
          z-index: 2;
          border-radius: 1.136vw;
          overflow: hidden;
          padding: 2.273vw 0 2.5vw; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in:before {
            content: '';
            display: block;
            background: #F0EBE5;
            width: 100%;
            height: calc(50% - 2px);
            position: absolute;
            top: 0;
            border-radius: 1.136vw 1.136vw 0 0; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in:after {
            content: '';
            display: block;
            background: #F0EBE5;
            width: 100%;
            height: calc(50% - 4.318vw);
            position: absolute;
            bottom: 0;
            border-radius: 0 0 1.136vw 1.136vw; }
          #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 {
            position: relative;
            z-index: 3;
            background: url("/static/img/cam_icon_course_bg.webp") no-repeat center;
            background-size: 100%;
            padding: 0 3.864vw;
            box-sizing: border-box; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_icon {
              position: absolute;
              width: 8.636vw;
              top: 2.955vw;
              left: 2.727vw; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info {
              box-sizing: border-box;
              padding-left: 11.364vw;
              padding-top: 4.091vw;
              margin-bottom: 2.045vw; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info .txt1 {
                font-size: 4.091vw;
                font-weight: 600;
                line-height: 1.4em; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info .txt1 span {
                  font-size: 7.273vw;
                  color: #DB0004; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_info .txt2 {
                font-size: 2.5vw;
                line-height: 1.45em;
                margin-top: 1.136vw; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea {
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin-bottom: 2.045vw; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num {
                border: solid 1px #535353;
                border-radius: 1vw;
                overflow: hidden;
                display: flex;
                width: 54.091vw;
                background: #fff; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num .campaignN_coupon_num_txt {
                  width: 40%;
                  background: #535353;
                  color: #fff;
                  text-align: center;
                  font-size: 2.727vw;
                  font-weight: 600;
                  padding: 2.273vw 0; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num .campaignN_coupon_num_input {
                  width: 60%;
                  display: flex;
                  justify-content: center;
                  align-items: center; }
                  #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_num .campaignN_coupon_num_input input {
                    font-weight: 700;
                    border: none;
                    background: #fff;
                    width: 100%;
                    height: 100%;
                    text-align: center;
                    box-sizing: border-box;
                    font-size: 3.636vw;
                    padding: 0;
                    -webkit-appearance: none;
                    -moz-appearance: none;
                    appearance: none; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn {
                position: relative;
                width: 12.727vw; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn.campaignN_coupon_btn2:before {
                  background: #AF852D; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn.campaignN_coupon_btn2 a {
                  background: #F5A21A; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn:before {
                  content: '';
                  display: block;
                  border-radius: 2.273vw;
                  position: absolute;
                  left: 2px;
                  top: 2px;
                  z-index: 1;
                  background: #A50F0F;
                  width: 100%;
                  height: 100%; }
                #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_btnarea .campaignN_coupon_btn a {
                  display: block;
                  position: relative;
                  z-index: 2;
                  border-radius: 2.273vw;
                  color: #fff;
                  font-size: 2.727vw;
                  font-weight: 700;
                  background: #E64B2B;
                  padding: 2.273vw 0;
                  width: 100%; }
            #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_biko li {
              font-size: 2.045vw;
              line-height: 1.3em;
              text-align: left;
              position: relative;
              padding-left: 1em; }
              #campaignN .campaignN_body .campaignN_coupon .campaignN_coupon_in .campaignN_coupon_in2 .campaignN_coupon_biko li:before {
                content: '※';
                position: absolute;
                left: 0;
                top: 0; }
      #campaignN .campaignN_body .campaignN_howto {
        width: 76.364vw;
        margin: 0 auto; }
        #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl {
          text-align: center;
          color: #fff;
          font-size: 2.727vw;
          line-height: 1.4em;
          font-weight: 700;
          position: relative;
          margin-bottom: 4.091vw; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl.campaignN_howto_ttl2 span {
            background: #E64B2B; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl.campaignN_howto_ttl3 span {
            background: #F5A21A; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl:before {
            content: '';
            display: block;
            height: 1px;
            width: 90%;
            position: absolute;
            left: 5%;
            top: 50%;
            transform: translateY(-50%);
            background: #FFF; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_ttl span {
            position: relative;
            z-index: 2;
            display: inline-block;
            padding: 0 2.273vw;
            background: #00544A; }
        #campaignN .campaignN_body .campaignN_howto .campaignN_howto_list {
          padding-bottom: 2.727vw; }
          #campaignN .campaignN_body .campaignN_howto .campaignN_howto_list li {
            margin-bottom: 1.818vw; }
            #campaignN .campaignN_body .campaignN_howto .campaignN_howto_list li img {
              display: block; }
      #campaignN .campaignN_body .campaignN_btna {
        text-align: center;
        margin-top: 6.8vw; }
        #campaignN .campaignN_body .campaignN_btna a {
          display: block;
          width: 100%;
          height: 20.4vw;
          margin: 0 auto;
          background: url("../img/course_p_btn.webp") no-repeat center;
          background-size: 110vw; }
      #campaignN .campaignN_body .campaignN_btna2 {
        text-align: center;
        margin-top: 6.8vw; }
        #campaignN .campaignN_body .campaignN_btna2 a {
          display: block;
          width: 100%;
          height: 20.4vw;
          margin: 0 auto;
          background: url("../img/course_b_btn.webp") no-repeat center;
          background-size: contain; }
      #campaignN .campaignN_body .campaignN_btna3 {
        text-align: center; }
        #campaignN .campaignN_body .campaignN_btna3 a {
          display: block;
          width: 58vw;
          height: 12.9vw;
          margin: 0 auto;
          background: url("../img/course_b_btn2.webp") no-repeat center;
          background-size: contain; }
      #campaignN .campaignN_body .campaignN_hyo {
        width: 76.364vw;
        margin: 0 auto;
        text-align: center; }
        #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_ttl {
          display: inline-block;
          background: #F0EBE5;
          width: 49.545vw;
          border-radius: 2.273vw 2.273vw 0 0;
          font-size: 2.273vw;
          font-weight: 700;
          line-height: 1.3em;
          letter-spacing: 0.006em;
          padding: 1.591vw 0 0.682vw; }
        #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in {
          background: #F0EBE5;
          border-radius: 2.273vw;
          padding-bottom: 2.273vw; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_sub {
            font-size: 3.409vw;
            font-weight: 700;
            line-height: 1.3em;
            letter-spacing: 0.006em;
            margin-bottom: 2.273vw; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_txt {
            text-align: right;
            font-size: 2.045vw;
            width: 90%;
            margin: 0 auto;
            line-height: 1.7em;
            margin-bottom: 1.136vw; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_img {
            margin-bottom: 0.909vw; }
            #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_img img {
              max-width: 200%;
              width: 80.682vw;
              margin-left: -3.636vw; }
          #campaignN .campaignN_body .campaignN_hyo .campaignN_hyo_in .campaignN_hyo_biko {
            font-size: 2.045vw;
            line-height: 1.6em;
            width: 90%;
            margin: 0 auto;
            text-align: left; }

  /* #campaignN */
  .section_step {
    padding: 11.364vw 0; }
    .section_step .section_step_ttl {
      font-size: 4.091vw;
      font-weight: 700;
      line-height: 1.66em;
      text-align: center;
      margin-bottom: 4.545vw; }
    .section_step .section_flows {
      width: 86vw;
      margin: 0 auto; }
      .section_step .section_flows .section_flow {
        display: flex;
        justify-content: space-between;
        margin-bottom: 7.2vw;
        flex-wrap: wrap; }
      .section_step .section_flows .biko {
        box-sizing: border-box;
        padding-left: 14vw;
        margin-top: 2vw; }
        .section_step .section_flows .biko sup {
          font-size: 50%;
          position: relative;
          top: -0.7em; }
        .section_step .section_flows .biko.mini li {
          font-size: 2.045vw;
          padding-left: 2em; }
          .section_step .section_flows .biko.mini li:nth-child(2):before {
            content: '※1'; }
        .section_step .section_flows .biko li {
          position: relative;
          padding-left: 1em;
          font-size: 2.5vw;
          line-height: 1.4em; }
          .section_step .section_flows .biko li:before {
            content: '※';
            position: absolute;
            left: 0;
            top: 0; }
      .section_step .section_flows .section_flow_left {
        width: 11.818vw;
        border-right: solid 2px #AE9B77;
        box-sizing: border-box; }
        .section_step .section_flows .section_flow_left img {
          width: 9.545vw; }
      .section_step .section_flows .section_flow_right {
        width: calc(100% - 11.818vw);
        box-sizing: border-box;
        padding: 0 0 0 2.273vw;
        display: flex;
        justify-content: space-between; }
        .section_step .section_flows .section_flow_right .section_flow_right_txt {
          width: calc(100% - 30.909vw); }
        .section_step .section_flows .section_flow_right .section_flow_right_img {
          width: 27.727vw; }
        .section_step .section_flows .section_flow_right .section_flow_right_txt_ttl {
          color: #AE9B77;
          font-size: 4.773vw;
          line-height: 1.4em;
          font-weight: 700;
          letter-spacing: 0.005em;
          margin-bottom: 2.273vw;
          height: 4.5em; }
          .section_step .section_flows .section_flow_right .section_flow_right_txt_ttl .mini {
            font-size: 3.636vw; }
          .section_step .section_flows .section_flow_right .section_flow_right_txt_ttl sup {
            font-size: 70%;
            position: relative;
            top: -0.3em; }
        .section_step .section_flows .section_flow_right .txt {
          font-size: 2.955vw;
          font-weight: 600;
          line-height: 1.46em; }
          .section_step .section_flows .section_flow_right .txt sup {
            font-size: 60%;
            position: relative;
            top: -0.7em; }
    .section_step .section_step_btm {
      width: 86.3vw;
      margin: 0 auto; }
      .section_step .section_step_btm .section_step_btm_ttl {
        color: #AE9B77;
        font-size: 3.409vw;
        font-weight: 600;
        line-height: 1.53em;
        margin-bottom: 2.273vw; }
      .section_step .section_step_btm .section_step_btm_img {
        margin-bottom: 2.273vw; }
        .section_step .section_step_btm .section_step_btm_img img {
          width: 100%;
          display: block; }
      .section_step .section_step_btm .section_step_btm_box {
        margin-bottom: 7.9vw; }
        .section_step .section_step_btm .section_step_btm_box .section_step_btm_left {
          font-size: 2.95vw;
          line-height: 1.45em;
          text-align: justify;
          margin-bottom: 8vw; }
          .section_step .section_step_btm .section_step_btm_box .section_step_btm_left span {
            font-size: 2.5vw;
            display: inline-block; }
      .section_step .section_step_btm .section_step_btm_right {
        border: solid 1px #AE9B77;
        box-sizing: border-box;
        border-radius: 2.273vw;
        padding: 3.636vw 5.636vw 3.636vw 5.682vw;
        margin-bottom: 7.9vw; }
        .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin {
          display: flex;
          justify-content: space-between;
          align-items: center; }
          .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin .section_step_btm_right_left {
            width: 15.545vw; }
          .section_step .section_step_btm .section_step_btm_right .section_step_btm_rightin .section_step_btm_right_right {
            width: calc(100% - 19vw);
            font-size: 2.5vw;
            letter-spacing: 0;
            line-height: 1.45em;
            text-align: justify; }
      .section_step .section_step_btm .section_step_btm_hyo {
        width: 86.3vw;
        margin: 0 auto;
        box-sizing: border-box;
        border: solid 1px #AE9B77;
        border-radius: 2.273vw;
        display: flex; }
        .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box {
          width: 25.6vw;
          border-right: solid 1px #AE9B77;
          text-align: center;
          padding: 2.273vw 0; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box .section_step_btm_hyo_ttl {
            line-height: 1.5em;
            font-size: 2.5vw; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box .section_step_btm_hyo_ttl span {
              font-size: 2.045vw;
              display: inline-block;
              line-height: 1; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box .section_step_btm_hyo_box_txt {
            line-height: 1.4em;
            font-size: 1.818vw; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(1) .section_step_btm_hyo_img {
            margin: 3.864vw 0 5vw; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(1) .section_step_btm_hyo_img img {
              margin: 0 auto;
              width: 12.5vw; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(2) .section_step_btm_hyo_img {
            margin: 4.773vw 0 5vw; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(2) .section_step_btm_hyo_img img {
              margin: 0 auto;
              width: 8.864vw; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(3) .section_step_btm_hyo_img {
            margin: 2.273vw 0 2.045vw; }
            .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:nth-child(3) .section_step_btm_hyo_img img {
              margin: 0 auto;
              width: 10.909vw; }
          .section_step .section_step_btm .section_step_btm_hyo .section_step_btm_hyo_box:last-child {
            width: 35.1vw;
            border: none; }

  /* section_step */ }
