@charset "UTF-8";
.inner {
  width: 90%;
  max-width: 1080px;
  margin: 0 auto; }

.inner1 {
  width: 90%;
  max-width: 760px;
  margin: 0 auto; }

.inner2 {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto; }

.inner3 {
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box; }

h2 {
  font-family: "M PLUS 1", sans-serif;
  font-weight: 600;
  margin: 0 0 0.7em;
  color: #69472F; }
  h2.fontSize24 {
    font-size: 2.4rem;
    line-height: 1.4em; }
    @media screen and (max-width: 768px) {
      h2.fontSize24 {
        font-size: 2.1rem; } }
    @media screen and (max-width: 480px) {
      h2.fontSize24 {
        font-size: 1.8rem; } }
  h2.fontSize28 {
    font-size: 2.8rem; }
    @media screen and (max-width: 768px) {
      h2.fontSize28 {
        font-size: 2.4rem; } }
    @media screen and (max-width: 480px) {
      h2.fontSize28 {
        font-size: 2.0rem; } }
  h2.heading-2 {
    text-align: center;
    padding: 150px 0 100px;
    background-image: url("../images/title_bg.webp");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    color: #FFF;
    margin-top: 0; }

h3 {
  font-family: "M PLUS 1", sans-serif;
  font-size: 2.0rem;
  font-weight: 600; }
  @media screen and (max-width: 768px) {
    h3 {
      font-size: 1.8rem; } }
  @media screen and (max-width: 480px) {
    h3 {
      font-size: 1.6rem; } }

.h-font {
  font-family: "M PLUS 1", sans-serif; }

.number-font {
  font-family: "Inter", sans-serif; }

.font-bold {
  font-weight: 700; }

.sm_font {
  font-size: 0.8em;
  line-height: 1.2em; }

.mg-top {
  margin-top: 1em; }

.mg-top2 {
  margin-top: 3em; }

.mg-bottom {
  margin-bottom: 1em; }

#main {
  margin-top: -100px;
  position: relative;
  width: 100%;
  overflow: hidden; }
  #main .mv {
    position: relative;
    width: 100%;
    height: 70vh;
    min-height: 700px; }
    #main .mv .video-wrap {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      overflow: hidden; }
      #main .mv .video-wrap video {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    #main .mv .mv-img1,
    #main .mv .mv-img2 {
      position: absolute;
      z-index: 2; }
      #main .mv .mv-img1 img,
      #main .mv .mv-img2 img {
        width: 100%;
        height: auto;
        display: block; }
    #main .mv .mv-img1 {
      left: 5%;
      bottom: 10%;
      width: 180px; }
    #main .mv .mv-img2 {
      right: 5%;
      top: 10%;
      width: 160px; }
  #main .main_info {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    padding: 0 5%;
    text-shadow: 0 4px 10px rgba(0, 0, 0, 0.4); }
    #main .main_info .sub_title {
      font-size: clamp(1.8rem, 2vw, 2rem);
      letter-spacing: 0.08em;
      margin-bottom: 1rem; }
    #main .main_info h2 {
      font-size: clamp(2.4rem, 4vw, 4rem);
      line-height: 1.4;
      font-weight: 600;
      color: #FFF; }

/* =========================
   Responsive
========================= */
@media (max-width: 768px) {
  #main .mv {
    height: 60vh;
    min-height: 420px; }
    #main .mv .mv-img1 {
      width: 120px;
      left: 3%;
      bottom: 5%; }
    #main .mv .mv-img2 {
      width: 100px;
      right: 3%;
      top: 5%; }
  #main .main_info .sub_title {
    font-size: 1.2rem; }
  #main .main_info h2 {
    font-size: 2.2rem; } }
#concept, #faq, #introduction, #contact, #scene, #store, #faq, #tokutei, #privacy {
  padding: 100px 0; }
  @media screen and (max-width: 768px) {
    #concept, #faq, #introduction, #contact, #scene, #store, #faq, #tokutei, #privacy {
      padding: 80px 0; } }
  @media screen and (max-width: 480px) {
    #concept, #faq, #introduction, #contact, #scene, #store, #faq, #tokutei, #privacy {
      padding: 60px 0; } }

/*コンセプト*/
#concept {
  padding-bottom: 0;
  background-image: url("../images/concept_bg.png");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center bottom; }
  #concept .two_box_imgL {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 80px; }
    @media screen and (max-width: 768px) {
      #concept .two_box_imgL {
        margin-bottom: 50px; } }
    @media screen and (max-width: 480px) {
      #concept .two_box_imgL {
        margin-bottom: 40px; } }
    #concept .two_box_imgL figure {
      width: 450px; }
      @media screen and (max-width: 768px) {
        #concept .two_box_imgL figure {
          width: 100%;
          margin-bottom: 20px; } }
      #concept .two_box_imgL figure img {
        border-radius: 20px; }
    #concept .two_box_imgL .info_area {
      width: calc(100% - 480px); }
      @media screen and (max-width: 768px) {
        #concept .two_box_imgL .info_area {
          width: 100%; } }
  #concept .info_box_l {
    margin-bottom: 80px;
    padding-right: 20%; }
    @media screen and (max-width: 768px) {
      #concept .info_box_l {
        margin-bottom: 50px;
        padding-right: 0%; } }
    @media screen and (max-width: 480px) {
      #concept .info_box_l {
        margin-bottom: 40px; } }
  #concept .info_box_r {
    padding-left: 20%; }
    @media screen and (max-width: 768px) {
      #concept .info_box_r {
        padding-left: 0%; } }

.title_area {
  line-height: 1.0em;
  width: 60px;
  writing-mode: vertical-lr; }
  @media screen and (max-width: 768px) {
    .title_area {
      width: 100%;
      writing-mode: horizontal-tb;
      /* 横書き */
      text-orientation: initial; } }
  .title_area span {
    font-size: 0.5em;
    line-height: 1.0em; }

#introduction, #store {
  padding: 0;
  background-color: #FFFBF2; }
  #introduction .introduction_box, #introduction .store_box, #store .introduction_box, #store .store_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px 0 0; }
    #introduction .introduction_box .in_box, #introduction .store_box .in_box, #store .introduction_box .in_box, #store .store_box .in_box {
      width: calc(100% - 90px); }
      @media screen and (max-width: 768px) {
        #introduction .introduction_box .in_box, #introduction .store_box .in_box, #store .introduction_box .in_box, #store .store_box .in_box {
          width: 100%; } }
      #introduction .introduction_box .in_box .in_box_limg, #introduction .introduction_box .in_box .in_box_rimg, #introduction .store_box .in_box .in_box_limg, #introduction .store_box .in_box .in_box_rimg, #store .introduction_box .in_box .in_box_limg, #store .introduction_box .in_box .in_box_rimg, #store .store_box .in_box .in_box_limg, #store .store_box .in_box .in_box_rimg {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 60px 0; }
        @media screen and (max-width: 768px) {
          #introduction .introduction_box .in_box .in_box_limg, #introduction .introduction_box .in_box .in_box_rimg, #introduction .store_box .in_box .in_box_limg, #introduction .store_box .in_box .in_box_rimg, #store .introduction_box .in_box .in_box_limg, #store .introduction_box .in_box .in_box_rimg, #store .store_box .in_box .in_box_limg, #store .store_box .in_box .in_box_rimg {
            margin: 50px 0; } }
        @media screen and (max-width: 480px) {
          #introduction .introduction_box .in_box .in_box_limg, #introduction .introduction_box .in_box .in_box_rimg, #introduction .store_box .in_box .in_box_limg, #introduction .store_box .in_box .in_box_rimg, #store .introduction_box .in_box .in_box_limg, #store .introduction_box .in_box .in_box_rimg, #store .store_box .in_box .in_box_limg, #store .store_box .in_box .in_box_rimg {
            margin: 40px 0; } }
        #introduction .introduction_box .in_box .in_box_limg h3, #introduction .introduction_box .in_box .in_box_rimg h3, #introduction .store_box .in_box .in_box_limg h3, #introduction .store_box .in_box .in_box_rimg h3, #store .introduction_box .in_box .in_box_limg h3, #store .introduction_box .in_box .in_box_rimg h3, #store .store_box .in_box .in_box_limg h3, #store .store_box .in_box .in_box_rimg h3 {
          background-image: url("../images/mk.webp");
          background-size: auto;
          background-repeat: no-repeat;
          background-position: left center;
          padding: 30px 0 10px 55px;
          margin-bottom: 10px; }
          @media screen and (max-width: 480px) {
            #introduction .introduction_box .in_box .in_box_limg h3, #introduction .introduction_box .in_box .in_box_rimg h3, #introduction .store_box .in_box .in_box_limg h3, #introduction .store_box .in_box .in_box_rimg h3, #store .introduction_box .in_box .in_box_limg h3, #store .introduction_box .in_box .in_box_rimg h3, #store .store_box .in_box .in_box_limg h3, #store .store_box .in_box .in_box_rimg h3 {
              background-size: 50px;
              padding: 30px 0 10px 40px; } }
        #introduction .introduction_box .in_box .in_box_limg h4, #introduction .introduction_box .in_box .in_box_rimg h4, #introduction .store_box .in_box .in_box_limg h4, #introduction .store_box .in_box .in_box_rimg h4, #store .introduction_box .in_box .in_box_limg h4, #store .introduction_box .in_box .in_box_rimg h4, #store .store_box .in_box .in_box_limg h4, #store .store_box .in_box .in_box_rimg h4 {
          font-weight: 700; }
        #introduction .introduction_box .in_box .in_box_limg figure, #introduction .introduction_box .in_box .in_box_rimg figure, #introduction .store_box .in_box .in_box_limg figure, #introduction .store_box .in_box .in_box_rimg figure, #store .introduction_box .in_box .in_box_limg figure, #store .introduction_box .in_box .in_box_rimg figure, #store .store_box .in_box .in_box_limg figure, #store .store_box .in_box .in_box_rimg figure {
          width: 35%; }
          @media screen and (max-width: 768px) {
            #introduction .introduction_box .in_box .in_box_limg figure, #introduction .introduction_box .in_box .in_box_rimg figure, #introduction .store_box .in_box .in_box_limg figure, #introduction .store_box .in_box .in_box_rimg figure, #store .introduction_box .in_box .in_box_limg figure, #store .introduction_box .in_box .in_box_rimg figure, #store .store_box .in_box .in_box_limg figure, #store .store_box .in_box .in_box_rimg figure {
              width: 100%;
              margin: 0 auto 15px; } }
          @media screen and (max-width: 480px) {
            #introduction .introduction_box .in_box .in_box_limg figure, #introduction .introduction_box .in_box .in_box_rimg figure, #introduction .store_box .in_box .in_box_limg figure, #introduction .store_box .in_box .in_box_rimg figure, #store .introduction_box .in_box .in_box_limg figure, #store .introduction_box .in_box .in_box_rimg figure, #store .store_box .in_box .in_box_limg figure, #store .store_box .in_box .in_box_rimg figure {
              width: 100%; } }
          #introduction .introduction_box .in_box .in_box_limg figure img, #introduction .introduction_box .in_box .in_box_rimg figure img, #introduction .store_box .in_box .in_box_limg figure img, #introduction .store_box .in_box .in_box_rimg figure img, #store .introduction_box .in_box .in_box_limg figure img, #store .introduction_box .in_box .in_box_rimg figure img, #store .store_box .in_box .in_box_limg figure img, #store .store_box .in_box .in_box_rimg figure img {
            border-radius: 20px; }
        #introduction .introduction_box .in_box .in_box_limg .in_box_info, #introduction .introduction_box .in_box .in_box_rimg .in_box_info, #introduction .store_box .in_box .in_box_limg .in_box_info, #introduction .store_box .in_box .in_box_rimg .in_box_info, #store .introduction_box .in_box .in_box_limg .in_box_info, #store .introduction_box .in_box .in_box_rimg .in_box_info, #store .store_box .in_box .in_box_limg .in_box_info, #store .store_box .in_box .in_box_rimg .in_box_info {
          width: 60%; }
          @media screen and (max-width: 768px) {
            #introduction .introduction_box .in_box .in_box_limg .in_box_info, #introduction .introduction_box .in_box .in_box_rimg .in_box_info, #introduction .store_box .in_box .in_box_limg .in_box_info, #introduction .store_box .in_box .in_box_rimg .in_box_info, #store .introduction_box .in_box .in_box_limg .in_box_info, #store .introduction_box .in_box .in_box_rimg .in_box_info, #store .store_box .in_box .in_box_limg .in_box_info, #store .store_box .in_box .in_box_rimg .in_box_info {
              width: 90%;
              margin: 0 auto; } }
          #introduction .introduction_box .in_box .in_box_limg .in_box_info .price, #introduction .introduction_box .in_box .in_box_rimg .in_box_info .price, #introduction .store_box .in_box .in_box_limg .in_box_info .price, #introduction .store_box .in_box .in_box_rimg .in_box_info .price, #store .introduction_box .in_box .in_box_limg .in_box_info .price, #store .introduction_box .in_box .in_box_rimg .in_box_info .price, #store .store_box .in_box .in_box_limg .in_box_info .price, #store .store_box .in_box .in_box_rimg .in_box_info .price {
            font-weight: 700;
            font-size: 1.2em; }
        #introduction .introduction_box .in_box .in_box_limg p, #introduction .introduction_box .in_box .in_box_rimg p, #introduction .store_box .in_box .in_box_limg p, #introduction .store_box .in_box .in_box_rimg p, #store .introduction_box .in_box .in_box_limg p, #store .introduction_box .in_box .in_box_rimg p, #store .store_box .in_box .in_box_limg p, #store .store_box .in_box .in_box_rimg p {
          margin-bottom: 0.3em; }
        #introduction .introduction_box .in_box .in_box_limg .font-s, #introduction .introduction_box .in_box .in_box_rimg .font-s, #introduction .store_box .in_box .in_box_limg .font-s, #introduction .store_box .in_box .in_box_rimg .font-s, #store .introduction_box .in_box .in_box_limg .font-s, #store .introduction_box .in_box .in_box_rimg .font-s, #store .store_box .in_box .in_box_limg .font-s, #store .store_box .in_box .in_box_rimg .font-s {
          font-size: 0.9em; }
      #introduction .introduction_box .in_box .in_box_rimg, #introduction .store_box .in_box .in_box_rimg, #store .introduction_box .in_box .in_box_rimg, #store .store_box .in_box .in_box_rimg {
        flex-direction: row-reverse; }
  #introduction .store_info, #store .store_info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
    max-width: 800px;
    margin: 50px auto 30px; }
    @media screen and (max-width: 768px) {
      #introduction .store_info, #store .store_info {
        margin: 30px auto 30px; } }
    #introduction .store_info .store_in, #store .store_info .store_in {
      width: 50%; }
      @media screen and (max-width: 768px) {
        #introduction .store_info .store_in, #store .store_info .store_in {
          width: 100%; } }
      #introduction .store_info .store_in h3, #store .store_info .store_in h3 {
        margin-top: 1em; }
    #introduction .store_info .map, #store .store_info .map {
      width: 45%; }
      @media screen and (max-width: 768px) {
        #introduction .store_info .map, #store .store_info .map {
          width: 100%;
          margin-top: 30px; } }
      #introduction .store_info .map iframe, #store .store_info .map iframe {
        width: 100%;
        height: 400px;
        border-radius: 10px; }
        @media screen and (max-width: 768px) {
          #introduction .store_info .map iframe, #store .store_info .map iframe {
            height: 300px; } }
        @media screen and (max-width: 480px) {
          #introduction .store_info .map iframe, #store .store_info .map iframe {
            height: 260px; } }
  #introduction .gallery-wrapper, #store .gallery-wrapper {
    width: 100%;
    margin: 30px auto 0; }
    #introduction .gallery-wrapper .main-slider img, #store .gallery-wrapper .main-slider img {
      width: 100%;
      display: block;
      border-radius: 8px; }
    #introduction .gallery-wrapper .thumb-wrapper, #store .gallery-wrapper .thumb-wrapper {
      display: flex;
      justify-content: center;
      /* 中央揃え */
      margin-top: 15px;
      gap: 10px; }
      @media screen and (max-width: 480px) {
        #introduction .gallery-wrapper .thumb-wrapper, #store .gallery-wrapper .thumb-wrapper {
          gap: 5px; } }
    #introduction .gallery-wrapper .thumb-slide img, #store .gallery-wrapper .thumb-slide img {
      width: 80px;
      height: 60px;
      object-fit: cover;
      border: 2px solid transparent;
      border-radius: 4px;
      cursor: pointer; }
      @media screen and (max-width: 480px) {
        #introduction .gallery-wrapper .thumb-slide img, #store .gallery-wrapper .thumb-slide img {
          width: 50px;
          height: 40px; } }
    #introduction .gallery-wrapper .thumb-slide.active img, #store .gallery-wrapper .thumb-slide.active img {
      border-color: #ff6600;
      /* 選択中のサムネイル強調 */ }

#scene {
  text-align: center;
  padding-top: 50px; }
  @media screen and (max-width: 768px) {
    #scene {
      padding-top: 30px; } }
  @media screen and (max-width: 480px) {
    #scene {
      padding-top: 20px; } }
  #scene .title {
    display: inline-block;
    background-image: url("../images/ill_title.svg");
    background-size: 300px;
    background-repeat: no-repeat;
    background-position: left top;
    height: 200px;
    margin-bottom: 15px;
    padding: 100px 0 0 150px; }
    @media screen and (max-width: 768px) {
      #scene .title {
        width: 100%;
        height: auto;
        /* 背景画像を画面幅に追従 */
        background-size: 40vw;
        padding-top: 13.5vw;
        padding-bottom: 5.0vw;
        padding-left: 20vw;
        padding-right: 0;
        margin-bottom: 0; } }
    #scene .title figure {
      /*width: 300px;*/ }
    #scene .title p {
      font-size: 2.0rem;
      color: #67472E;
      font-weight: 500; }
      @media screen and (max-width: 768px) {
        #scene .title p {
          text-align: left;
          font-size: 3.0vw;
          line-height: 1.6; } }

#faq {
  padding-top: 60px; }
  @media screen and (max-width: 768px) {
    #faq {
      padding-top: 0; } }
  @media screen and (max-width: 480px) {
    #faq {
      padding-top: 0; } }
  #faq .faq_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px 0 0; }
    #faq .faq_box .in_box {
      width: calc(100% - 90px);
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      @media screen and (max-width: 768px) {
        #faq .faq_box .in_box {
          width: 100%; } }
      #faq .faq_box .in_box .faq_in {
        width: 32%;
        background-color: #FFFBF2;
        box-sizing: border-box;
        padding: 1.5em;
        border-radius: 10px; }
        @media screen and (max-width: 768px) {
          #faq .faq_box .in_box .faq_in {
            width: 100%; } }
        #faq .faq_box .in_box .faq_in:nth-child(2) {
          background-color: #FFF3EE; }
          @media screen and (max-width: 768px) {
            #faq .faq_box .in_box .faq_in:nth-child(2) {
              margin: 20px 0; } }
        #faq .faq_box .in_box .faq_in figure {
          width: 80px; }
        #faq .faq_box .in_box .faq_in .faq_q {
          font-weight: 700;
          margin-bottom: 15px; }

/*お問い合わせ*/
#contact {
  padding-top: 0;
  text-align: center; }
  @media screen and (max-width: 768px) {
    #contact {
      padding-top: 0; } }
  @media screen and (max-width: 480px) {
    #contact {
      padding-top: 0; } }
  #contact h3 {
    color: #222;
    margin-bottom: 5px; }
  #contact .ft-b {
    width: 90%;
    max-width: 760px;
    margin: 0 auto 1em;
    text-align: justify; }

/*個人情報保護法*/
/*
#privacy{
  h3{
    text-decoration: underline;
    color: #111;
    font-size: 2.0rem;
    margin-bottom: 15px;
    margin-top: 2em;
    position: relative;
  }
  ul{
    margin: 1em 0 0;
    li{
      list-style: disc;
      margin-left: 2.0em;
    }
  }
  .remote-img{
    width: 90%;
    max-width: 300px;
  }
}
*/
/*お問い合わせボタン*/
/*.cta_btn{
  margin-top: 50px;
  text-align: center;
  @include tbt{
    margin-top: 40px;
    text-align: center;
  }
  @include sp{
    margin-top: 30px;
    text-align: center;
  }
  a{
    display: inline-block;
    width: 320px;
    box-sizing: border-box;
    border-radius: 30px;
    padding: 12px 1.0em;
    background: linear-gradient(90deg,#FF6200, #FFB22C);
    filter:drop-shadow(0 4px 10px #DADADA);
    color: #FFF;
    font-size: 1.3em;
    @include sp{
      padding: 15px 1.0em;
    }
  }
}*/
.btn {
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  gap: 15px; }
  @media screen and (max-width: 768px) {
    .btn {
      margin-top: 40px;
      text-align: center; } }
  @media screen and (max-width: 480px) {
    .btn {
      margin-top: 30px;
      gap: 0;
      justify-content: space-between; } }
  .btn a {
    display: inline-block;
    width: 240px;
    box-sizing: border-box;
    border-radius: 30px;
    padding: 12px 1.0em;
    background: linear-gradient(90deg, #FF6200, #FFB22C);
    filter: drop-shadow(0 4px 10px #DADADA);
    color: #FFF; }
    @media screen and (max-width: 480px) {
      .btn a {
        width: 49%;
        font-size: 0.9em;
        padding: 12px 0.2em; } }

.contact_area {
  margin: 50px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  background-color: #FFF;
  border: 1px solid #EEEEEE;
  border-radius: 10px;
  filter: drop-shadow(0 4px 10px #DADADA);
  box-sizing: border-box;
  padding: 30px; }
  @media screen and (max-width: 768px) {
    .contact_area {
      text-align: center; } }
  .contact_area figure {
    width: 10%; }
    @media screen and (max-width: 768px) {
      .contact_area figure {
        width: 80px;
        margin: 0 auto 20px; } }
  .contact_area .tel_area {
    width: 40%; }
    @media screen and (max-width: 768px) {
      .contact_area .tel_area {
        width: 100%;
        margin: 0 0 20px; } }
    .contact_area .tel_area .tel_btn {
      font-size: 2.8rem;
      font-weight: 700; }
      .contact_area .tel_area .tel_btn img {
        width: 24px;
        margin-right: 8px; }
      .contact_area .tel_area .tel_btn a {
        display: flex; }
        @media screen and (max-width: 768px) {
          .contact_area .tel_area .tel_btn a {
            justify-content: center; } }
  .contact_area .mail_area {
    width: 40%; }
    @media screen and (max-width: 768px) {
      .contact_area .mail_area {
        width: 100%;
        margin: 0 0 0; } }
    .contact_area .mail_area .contact_btn {
      margin-top: 6px; }
      .contact_area .mail_area .contact_btn img {
        width: 20px;
        margin-right: 10px; }
      .contact_area .mail_area .contact_btn a {
        display: flex;
        padding: 10px 20px;
        background-color: #A27A40;
        color: #FFF;
        font-size: 2.0rem;
        font-weight: 600;
        border-radius: 30px; }
        @media screen and (max-width: 768px) {
          .contact_area .mail_area .contact_btn a {
            justify-content: center; } }

/*横流れスライダー*/
.slider-wrapper {
  margin: 15px 0; }

.top-slider {
  direction: rtl; }

.slick-slider {
  width: 100%;
  overflow: hidden; }

.slick-slide {
  padding: 0 10px;
  /* 画像間の余白（不要なら削除） */ }
  .slick-slide img {
    width: 100%;
    height: auto;
    display: block; }

/*特定商取引法表記*/
#tokutei dl {
  display: flex;
  flex-wrap: wrap;
  border-top: none;
  text-align: left;
  box-sizing: border-box;
  margin-bottom: 30px;
  border-bottom: solid 1px #D3D3D3; }
  #tokutei dl dt {
    width: 12em;
    padding: 30px 0;
    border-top: solid 1px #D3D3D3;
    box-sizing: border-box;
    height: 100%; }
    @media screen and (max-width: 768px) {
      #tokutei dl dt {
        width: 100%;
        padding: 20px 0 7px; }
        #tokutei dl dt:first-child {
          padding: 10px 0 7px; } }
  #tokutei dl dd {
    padding: 30px 0 30px 20px;
    width: calc(100% - 12em);
    border-top: solid 1px #D3D3D3;
    box-sizing: border-box;
    height: 100%; }
    @media screen and (max-width: 768px) {
      #tokutei dl dd {
        padding: 0 0 20px;
        width: 100%;
        border-top: none; } }

/*個人情報保護法*/
#privacy .privacy-top {
  width: 100%;
  margin: 0 auto 50px; }
  @media screen and (max-width: 768px) {
    #privacy .privacy-top {
      margin: 0 auto 30px; } }
#privacy .privacy-info {
  box-sizing: border-box;
  margin: 50px 0; }
  @media screen and (max-width: 768px) {
    #privacy .privacy-info {
      margin: 40px 0; } }
  @media screen and (max-width: 480px) {
    #privacy .privacy-info {
      margin: 30px 0; } }
  #privacy .privacy-info h3 {
    margin: 2em 0 0.5em;
    padding-top: 2em;
    border-top: 1px solid #DEDEDE;
    position: relative;
    align-items: center; }
    #privacy .privacy-info h3::before {
      content: "●";
      display: inline-block;
      margin-right: 5px;
      transition: transform 0.3s ease;
      color: #A27A40; }
  #privacy .privacy-info ul {
    margin: 1em 1em 0; }
    #privacy .privacy-info ul li {
      list-style: disc;
      margin: 0 0 0 20px; }
#privacy .privacy-contact {
  padding: 1.5em;
  background-color: #F0F0F0; }
