@charset "UTF-8";
/* ===============================================
# navigation
=============================================== */
/* ===============================================
# z-index管理
=============================================== */
header { z-index: 20; }

.top { z-index: 10; }

/* ===============================================
#擬似要素中央配置 mixin
=============================================== */
/* ===============================================
# SNSカラー
=============================================== */
#lottie { background-color: #ffffff; width: 100%; height: 100%; display: block; overflow: hidden; transform: translate3d(0, 0, 0); text-align: center; opacity: 1; }

.top_loader { z-index: 20000; position: fixed; width: 100%; height: 100vh; opacity: 1; visibility: visible; transition: 0.2s; }

.top_loader.off { opacity: 0; visibility: hidden; transition: 0.2s; z-index: -1; }

@media only screen and (max-width: 769px) { #lottie { position: absolute; top: -90px; height: calc(100% + 90px); transform: scale(1.8); } }

.intro01 #top_main #top_img .mv .top_tit { animation: top-up-sp 1s forwards; animation-delay: .6s; }

.intro01 #top_main #top_img .mv .top_tit_en { top: 49vw; opacity: .4; transition: .8s all; }

@keyframes top-up-sp { 0% { top: 60vw;
    opacity: 0; }
  100% { top: 57vw;
    opacity: 1; } }

@media only screen and (min-width: 769px) { .intro01 #top_main #top_img .mv .top_tit { animation: top-up 1s forwards; animation-delay: .6s; }
  .intro01 #top_main #top_img .mv .top_tit_en { top: 39%; opacity: .4; transition: .8s all; }
  @keyframes top-up { 0% { top: 42%;
      opacity: 0; }
    100% { top: 40%;
      opacity: 1; } } }

.bg_txt { background-image: url(../images/made_confortable_bg.svg); opacity: .3; content: ""; position: absolute; top: 0; right: 5vw; height: 100%; width: 10vw; background-repeat: repeat; background-size: 100% auto; animation: verticalLoopUp 28s linear 0s infinite backwards; z-index: 0; }

.bg_txt.bg-right { right: inherit; left: 5vw; opacity: .2; }

.bg-yellow { position: relative; }

.bg-white { background: #fff; position: relative; z-index: 2; }

.bg-gray { position: relative; }

.section-wrap { position: relative; z-index: 2; }




.popup {position: fixed;left: 0;top: 0;width: 100%;height: 100%;z-index: 9999;opacity: 0;visibility: hidden;transition: .6s;}
.popup.is-show {opacity: 1;visibility: visible;transition-delay: 4s;}
.popup-inner {position: absolute;left: 50%;top: 50%;transform: translate(-50%,-50%);width: 92%;max-width: 500px;padding: 40px;background-color: #fff;z-index: 2;}
.popup-inner img {width: 100%;}
.close-btn {position: absolute;right: 0;top: 0;width: 50px;height: 50px;line-height: 50px;text-align: center;cursor: pointer;}
.close-btn i {font-size: 20px;color: #333;}
.black-background {position: absolute;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,.8);z-index: 1;cursor: pointer;}


@keyframes verticalLoopUp { 0% { background-position: 0 0; }
  100% { background-position: 0 -100vh; } }

@media only screen and (max-width: 769px) { .bg_txt { width: 18vw; right: 0; opacity: .4; } }

.container { margin-bottom: 100px; }

#top_main #top_img { position: relative; margin-bottom: 80px; }

#top_main #top_img .mv { position: relative; border-radius: 0px 0px 200px 0px; overflow: hidden; }

#top_main #top_img .mv .top_tit { position: absolute; font-size: 28px; top: 58vw; left: 15vw; line-height: 1.4em; z-index: 2; opacity: 0; }

#top_main #top_img .mv .top_tit_en { position: absolute; content: attr(data-name) ""; font-size: 52px; left: 4vw; top: 51vw; color: #fff; opacity: 0; font-weight: 700; z-index: 0; font-style: italic; line-height: .9em; font-family: 'Poppins', sans-serif; }

#top_main #top_img .mv .top_txt { position: absolute; font-size: 10px; color: #fff; right: 5vw; top: 108vw; line-height: 1.6em; letter-spacing: 2px; }

#top_main #top_img .scroll { writing-mode: vertical-lr; position: absolute; bottom: -10px; right: 10px; font-size: 18px; font-weight: bold; }

#top_main #top_img .scroll:before { position: absolute; content: ""; width: 1px; height: 100px; background: #000; right: 12px; bottom: -110px; animation: pathmove 2s ease-in-out infinite; }

@keyframes pathmove { 0% { height: 0;
    top: 80px;
    opacity: 0; }
  30% { height: 70px;
    opacity: 1; }
  100% { height: 70px;
    top: 100px;
    opacity: 0; } }

#top_main #about { background: #f7f4e7; border-radius: 180px 0px 180px 0px; padding-bottom: 50px; margin-bottom: 20px; }

#top_main #about .about-wrap .num-box { width: 70%; margin: 0 auto; position: relative; top: 60px; }

#top_main #about .about-wrap .num-box .num { background: #71a4bf; border-radius: 50%; color: #fff; font-size: 20px; font-style: italic; display: inline-block; padding: 18px 23px 22px 22px; width: 64px; position: relative; z-index: 3; font-weight: bold; }

#top_main #about .about-wrap .num-box .num::before { content: ''; position: absolute; border: 1px solid #71a4bf; border-radius: 50%; width: 100%; height: 100%; padding: 4px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

#top_main #about .about-wrap .num-box .num.num02 { background: #b76b63; }

#top_main #about .about-wrap .num-box .num.num02::before { border-color: #b76b63; }

#top_main #about .about-wrap .num-box .num.num03 { background: #e0b380; }

#top_main #about .about-wrap .num-box .num.num03::before { border-color: #e0b380; }

#top_main #about .about-wrap .img-box { width: 76%; margin-right: 0; margin-left: auto; }

#top_main #about .about-wrap .stit { position: relative; background: #fff; color: #71a4bf; font-size: 18px; font-weight: bold; line-height: 1.4em; padding: 33px 25px; width: 60%; top: -50px; border-radius: 0 10px 10px 0; text-align: left; }

#top_main #about .about-wrap .stit::before { content: attr(data-name) ""; position: absolute; font-size: 40px; line-height: 1.4em; color: #71a4bf; opacity: .1; top: 48%; left: 10px; transform: translateY(-50%); font-weight: lighter; }

#top_main #about .about-wrap .txt-box { position: relative; top: -40px; }

#top_main #about .about-wrap .txt { padding: 0 20px; margin-bottom: 2em; }

#top_main #about .about-wrap .button { color: #71a4bf; border-color: #71a4bf; }

#top_main #about .about-wrap .button .tri:before { border-color: transparent transparent #71a4bf transparent; }

#top_main #about .about-wrap:nth-of-type(even) .num-box { text-align: right; }

#top_main #about .about-wrap:nth-of-type(even) .img-box { margin-right: auto; margin-left: 0; }

#top_main #about .about-wrap:nth-of-type(even) .stit { margin-right: 0; margin-left: auto; border-radius: 10px 0 0 10px; text-align: right; }

#top_main #about .about-wrap:nth-of-type(even) .stit::before { left: inherit; right: 10px; }

#top_main #about .about-wrap.about02 .num { background: #b76b63; }

#top_main #about .about-wrap.about02 .num::before { border-color: #b76b63; }

#top_main #about .about-wrap.about02 .stit { color: #b76b63; }

#top_main #about .about-wrap.about02 .stit::before { color: #b76b63; }

#top_main #about .about-wrap.about02 .button { border-color: #b76b63; color: #b76b63; }

#top_main #about .about-wrap.about02 .button .tri:before { border-color: transparent transparent #b76b63 transparent; }

#top_main #about .about-wrap.about03 .num { background: #e0b380; }

#top_main #about .about-wrap.about03 .num::before { border-color: #e0b380; }

#top_main #about .about-wrap.about03 .stit { color: #e0b380; }

#top_main #about .about-wrap.about03 .stit::before { color: #e0b380; }

#top_main #about .about-wrap.about03 .button { border-color: #e0b380; color: #e0b380; }

#top_main #about .about-wrap.about03 .button .tri:before { border-color: transparent transparent #e0b380 transparent; }

#top_main #about .about-wrap:not(:first-of-type) { margin-top: -30px; }

#top_main #plan { width: 92%; margin: 0 auto 70px; max-width: 750px; }

#top_main #plan .txt { margin-bottom: 2em; }

#top_main .bnr-box { width: 92%; margin: 0 auto; }

@media only screen and (max-width: 1100px) { #top_main #about .about-wrap { display: block; }
  #top_main #about .about-wrap .img-wrap { margin-right: inherit; margin: 0 auto; }
  #top_main #about .about-wrap .txt-wrap { margin: 0 auto; padding-top: 0; }
  #top_main #about .about-wrap .txt-wrap .stit:before { width: 140%; }
  #top_main #about .about-wrap:nth-of-type(even) .txt-wrap { margin-right: inherit; } }

@media only screen and (min-width: 769px) { #top_main #top_img .mv { border-radius: 0px 0px 400px 0px; height: 95vh; }
  #top_main #top_img .mv .anime-box { transform: translateY(10%); opacity: 0; transition: .2s all; }
  #top_main #top_img .mv .top_tit { font-size: 55px; top: 42%; left: 50%; transform: translate(-50%, -50%); transition: .8s all; opacity: 0; }
  #top_main #top_img .mv .top_tit_en { font-size: 132px; line-height: .9em; top: 40%; left: 50%; transform: translate(-50%, -50%); opacity: 0; }
  #top_main #top_img .mv .top_txt { top: 60%; left: 50%; transform: translateX(-50%); font-size: 16px; width: 840px; }
  #top_main #top_img .mv img { width: inherit; }
  #top_main #top_img .scroll { font-size: 20px; bottom: 70px; right: 25%; color: #fff; }
  #top_main #top_img .scroll:before { position: absolute; content: ""; width: 1px; height: 100px; background: #fff; right: 13px; bottom: -110px; }
  #top_main #about { padding-top: 100px; padding-bottom: 180px; border-radius: 380px 0px 380px 0px; }
  #top_main #about .about-wrap { display: flex; width: 82%; margin: 0 auto; }
  #top_main #about .about-wrap .block { width: 49%; }
  #top_main #about .about-wrap .img-wrap { width: 50%; margin-right: 4%; }
  #top_main #about .about-wrap .img-wrap .num-box { width: 100%; }
  #top_main #about .about-wrap .img-wrap .num-box .num { left: -30px; font-size: 30px; width: 84px; padding: 29px 24px 31px 26px; }
  #top_main #about .about-wrap .img-wrap .img-box { width: 100%; }
  #top_main #about .about-wrap .txt-wrap { width: 46%; padding-top: 60px; }
  #top_main #about .about-wrap .txt-wrap .stit { background: none; top: 30px; text-align: center; width: 100%; font-size: 36px; margin-bottom: 100px; }
  #top_main #about .about-wrap .txt-wrap .stit:before { top: 46%; left: 50%; transform: translate(-50%, -50%); font-size: 100px; width: 100%; }
  #top_main #about .about-wrap:nth-of-type(even) { flex-direction: row-reverse; }
  #top_main #about .about-wrap:nth-of-type(even) .img-wrap { margin-right: inherit; }
  #top_main #about .about-wrap:nth-of-type(even) .img-wrap .num-box .num { left: inherit; right: -30px; padding: 28px 30px 31px 21px; }
  #top_main #about .about-wrap:nth-of-type(even) .txt-wrap { margin-right: 4%; }
  #top_main #about .about-wrap:not(:last-of-type) { margin-bottom: 100px; }
  #top_main #plan .txt { margin-bottom: 4em; }
  #top_main .bnr-box { max-width: 1200px; margin: 0 auto; } }

.about-wrap .img-box { width: 76%; margin-right: 0; margin-left: auto; }

.about-wrap .stit { position: relative; background: #fff; color: #71a4bf; font-size: 18px; font-weight: bold; line-height: 1.4em; padding: 33px 25px; width: 60%; top: -50px; border-radius: 0 10px 10px 0; text-align: left; }

.about-wrap .stit::before { content: attr(data-name) ""; position: absolute; font-size: 40px; line-height: 1.4em; color: #71a4bf; opacity: .2; top: 48%; left: 10px; transform: translateY(-50%); font-weight: lighter; }

.about-wrap .txt-box { position: relative; top: -40px; }

.about-wrap .txt { padding: 0 20px; margin-bottom: 2em; }

.about-wrap:nth-of-type(even) .num-box { text-align: right; }

.about-wrap:nth-of-type(even) .img-box { margin-right: auto; margin-left: 0; }

.about-wrap:nth-of-type(even) .stit { margin-right: 0; margin-left: auto; border-radius: 10px 0 0 10px; text-align: right; }

.about-wrap:nth-of-type(even) .stit::before { left: inherit; right: 10px; }

.about-wrap:not(:first-of-type) { margin-top: -30px; }

/* ===============================================
# 下層ページ　共通パーツ
=============================================== */
.in_container { background: #fff; padding-top: 60px; }

.in_container .stit { font-size: 22px; margin-bottom: 20px; }

.in_container .stit::before { font-size: 60px; font-weight: normal; opacity: .1; }

.in_container .stit.head { background: #fff; width: 90%; border-radius: 0 50px 50px 0; text-align: left; margin-bottom: 40px; }

.in_container .stit.head:before { left: 110px; }

.in_container .bg-gray { background: #c9c9ca; padding-top: 30px; }

.in_container .bg-yellow { background: #f7f4e7; border-radius: 0 0 160px 0; padding: 60px 0 40px; margin-bottom: 50px; }

.in_container .section-wrap { width: 92%; margin: 0 auto 60px; }

.in_container .section-wrap .txt { margin: 0; font-size: 14px; }

.in_container .tab-box .btn-area { display: flex; }

.in_container .tab-box .btn-area .tab_btn { width: 30%; padding: 10px; margin: 0; margin-bottom: -1px; }

.in_container .tab-box .btn-area .tab_btn.tab-on { background: #395281; }

.in_container .tab-box .panel-area .tab_panel { display: none; transition: .3s all; opacity: 0; }

.in_container .tab-box .panel-area .tab_panel.list-tab-on { display: block; opacity: 1; }

.in_container .acMenu dt { position: relative; padding-right: 20px; }

.in_container .acMenu dt::before { content: ''; position: absolute; width: 16px; height: 2px; top: 50%; transform: translateY(-50%) rotate(90deg); right: 10px; transition: .4s all; background: #000; }

.in_container .acMenu dt::after { content: ''; position: absolute; width: 16px; height: 2px; top: 50%; transform: translateY(-50%); right: 10px; background: #000; }

.in_container .acMenu dt.open::before { transform: translateY(-50%) rotate(0deg); }

.in_container .acMenu dd { display: none; }

@media only screen and (min-width: 769px) { .in_container { padding-top: 0; }
  .in_container .bg-gray { padding-top: 110px; }
  .in_container .bg-yellow { padding: 160px 0 40px; }
  .in_container .stit { margin-bottom: 50px; font-size: 36px; }
  .in_container .stit:before { font-size: 80px; }
  .in_container .stit.head { max-width: 600px; text-align: center; margin: 0 auto 100px; border-radius: 70px; }
  .in_container .stit.head:before { left: 50%; opacity: .1; }
  .in_container .acMenu { max-width: 1000px; margin: 0 auto; width: 92%; padding: 50px 0; }
  .in_container .acMenu dt { font-size: 30px; line-height: 1.4em; }
  .in_container .acMenu dd { font-size: 18px; line-height: 1.8em; }
  .in_container .acMenu dd span { font-size: 16px; }
  .in_container .section-wrap { max-width: 1200px; } }

/* ===============================================
# 事業内容ページ
=============================================== */
#in_about #about .heading { max-width: 160px; margin: 0 auto 20px; }

#in_about #about .tab-box .btn-area { justify-content: space-evenly; }

#in_about #about .tab-box .btn-area .tab_btn { width: 30%; padding: 10px 25px; border-radius: 10px 10px 0 0; }

#in_about #about .tab-box .btn-area .tab_btn.tab-on { background: #395281; }

#in_about #about .tab-box .panel-area { background: #395281; padding: 30px 24px; color: #fff; border-radius: 10px; }

#in_about #about .tab-box .panel-area .tab_panel figure { margin-bottom: 20px; }

#in_about #about .tab-box .panel-area .tab_panel .txt-block .txt { font-size: 14px; }

#in_about #room .content-wrap { border-radius: 10px; overflow: hidden; }

#in_about #room .content-wrap:not(:last-of-type) { margin-bottom: 30px; }

#in_about #room .content-wrap .txt_block { padding: 20px; background: #fff; }

#in_about #strength { width: 100%; }

#in_about #strength .s-list { padding-bottom: 60px; }

#in_about #strength .s-list li { padding: 30px; }

#in_about #strength .s-list li .tit { color: #395281; position: relative; font-weight: bold; font-size: 22px; margin-bottom: 30px; }

#in_about #strength .s-list li .tit:before { position: absolute; content: ""; background: #395281; width: 30px; height: 2px; left: 0; bottom: -15px; }

#in_about #strength .s-list li .txt { color: #fff; }

#in_about #strength .s-list li:not(:last-of-type) { border-bottom: 2px solid #d1d2dc; }

#in_about #tool { width: 100%; }

#in_about #tool .tab-box .btn-area { justify-content: inherit; flex-wrap: wrap; margin-bottom: 40px; }

#in_about #tool .tab-box .btn-area .tab_btn { width: 49.5%; margin-bottom: 1%; background: #c9c9ca; color: #fff; justify-content: center; font-weight: bold; font-size: 13px; height: 60px; display: flex; align-items: center; }

#in_about #tool .tab-box .btn-area .tab_btn:nth-of-type(odd) { margin-right: 1%; }

#in_about #tool .tab-box .btn-area .tab_btn.tab-on { background: #395281; }

#in_about #tool .tab-box .btn-area .tab_btn.tab03.tab-on { background: #e0b380; }

#in_about #tool .tab-box .btn-area .tab_btn img { height: 30px; }

#in_about #tool .tab-box .btn-area .tab_btn img.tab02 { height: 26px; }

#in_about #tool .tab-box .btn-area .tab_btn img.tab03 { height: 24px; }

#in_about #tool .tab-box .btn-area .tab_btn p { margin: 0; }

#in_about #tool .tab-box .panel-area .tab_panel { transform: translateY(10%); opacity: 0; transition: .4s all; }

#in_about #tool .tab-box .panel-area .tab_panel .tit { width: 60%; min-width: 220px; background: #395281; border-radius: 0 50px 50px 0; padding: 10px 20px; }

#in_about #tool .tab-box .panel-area .tab_panel .tit img { height: 30px; }

#in_about #tool .tab-box .panel-area .tab_panel .tit.tit02 { background: #e0b380; color: #fff; font-size: 15px; font-weight: bold; }

#in_about #tool .tab-box .panel-area .tab_panel figure { border-radius: 10px; margin: 0 auto; width: 92%; overflow: hidden; }

#in_about #tool .tab-box .panel-area .tab_panel .txt-block { display: block; padding: 20px; }

#in_about #tool .tab-box .panel-area .tab_panel .txt-block .tie { background: #000; color: #fff; font-size: 18px; margin-bottom: .4em; display: inline-block; padding: 2px 10px 2px 1.2em; position: relative; }

#in_about #tool .tab-box .panel-area .tab_panel .txt-block .tie::before { content: '・'; position: absolute; color: #fff; top: 50%; transform: translateY(-50%); left: 3px; }

#in_about #tool .tab-box .panel-area .tab_panel .txt-block .in-txt { background: none; color: #000; font-size: 14px; margin-bottom: .4em; }

#in_about #tool .tab-box .panel-area .tab_panel.list-tab-on { transform: translateY(0); opacity: 1; }

#in_about #rental { width: 100%; }

#in_about #rental .content-wrap { background: #c9c9ca; color: #fff; }

#in_about #rental .acMenu { width: 92%; margin: 0 auto; }

#in_about #rental .acMenu dt { padding: 30px 40px 30px 0; font-size: 16px; font-weight: bold; border-bottom: 1px solid #fff; transition: .5s all; }

#in_about #rental .acMenu dt::before { background: #fff; }

#in_about #rental .acMenu dt::after { background: #fff; }

#in_about #rental .acMenu dt.open { border-bottom: none; }

#in_about #rental .acMenu dd { padding-bottom: 30px; font-size: 14px; line-height: 1.8em; border-bottom: 1px solid #fff; }

#in_about #faq .acMenu { color: #000; }

#in_about #faq .acMenu:not(:last-of-type) { border-bottom: 1px solid #000; }

#in_about #faq .acMenu dt { font-weight: bold; font-size: 18px; border-bottom: 1px solid #000; transition: .5s all; padding: 20px 40px 20px 0; }

#in_about #faq .acMenu dt.open { border-bottom: none; }

#in_about #faq .acMenu dd { font-size: 14px; line-height: 1.8em; border-bottom: 1px solid #000; padding-bottom: 30px; }

@media only screen and (min-width: 769px) { #in_about #about .heading { max-width: 160px; margin: 0 auto 20px; }
  #in_about #about .tab-box .btn-area { justify-content: space-evenly; }
  #in_about #about .tab-box .btn-area .tab_btn { max-width: 130px; width: 30%; padding: 20px 25px 10px; border-radius: 10px 10px 0 0; line-height: 1em; }
  #in_about #about .tab-box .btn-area .tab_btn.tab-on { background: #395281; }
  #in_about #about .tab-box .panel-area { background: #395281; padding: 30px 24px; color: #fff; border-radius: 10px; }
  #in_about #about .tab-box .panel-area .tab_panel .flex-box { display: flex; }
  #in_about #about .tab-box .panel-area .tab_panel figure { width: 50%; margin-right: 2%; }
  #in_about #about .tab-box .panel-area .tab_panel .txt-block { width: 48%; }
  #in_about #about .tab-box .panel-area .tab_panel .txt-block .txt { font-size: 18px; }
  #in_about #room .inner-wrap { display: flex; }
  #in_about #room .inner-wrap .block { width: 31%; margin-bottom: 0; background: #fff; }
  #in_about #room .inner-wrap .block:not(:nth-of-type(3n+3)) { margin-right: 3.5%; }
  #in_about #strength .s-list { display: flex; flex-wrap: wrap; }
  #in_about #strength .s-list li { width: 46%; margin-bottom: 1em; }
  #in_about #strength .s-list li:nth-of-type(odd) { margin-right: 8%; }
  #in_about #tool .tab-box .btn-area .tab_btn { width: calc(25% - 2px); margin-right: 2px; margin-bottom: 2px; }
  #in_about #tool .tab-box .btn-area .tab_btn:nth-of-type(odd) { margin-right: 2px; }
  #in_about #tool .tab-box .panel-area .tab_panel .tit { max-width: 380px; margin: 0 auto 50px; border-radius: 50px; padding: 15px 20px; text-align: center; }
  #in_about #tool .tab-box .panel-area .tab_panel .tit.tit02 { font-size: 20px; height: 60px; display: flex; align-items: center; justify-content: center; }
  #in_about #tool .tab-box .panel-area .tab_panel .flex-box { display: flex; }
  #in_about #tool .tab-box .panel-area .tab_panel .flex-box figure { width: 50%; }
  #in_about #tool .tab-box .panel-area .tab_panel .flex-box .txt-block { width: 50%; }
  #in_about #rental { width: 100%; max-width: inherit; }
  #in_about #rental .content-wrap .acMenu { max-width: 1000px; margin: 0 auto; width: 92%; padding: 50px 0 100px; }
  #in_about #rental .content-wrap .acMenu dt { font-size: 26px; line-height: 1.4em; }
  #in_about #rental .content-wrap .acMenu dd { font-size: 18px; line-height: 1.8em; }
  #in_about #rental .content-wrap .acMenu dd span { font-size: 16px; }
  #in_about #faq .content-wrap .acMenu { max-width: 1000px; margin: 0 auto; width: 92%; padding: 50px 0; }
  #in_about #faq .content-wrap .acMenu dt { font-size: 26px; line-height: 1.4em; }
  #in_about #faq .content-wrap .acMenu dd { font-size: 18px; line-height: 1.8em; }
  #in_about #faq .content-wrap .acMenu dd span { font-size: 16px; } }

/* ===============================================
# 会社概要ページ
=============================================== */
#in_company { padding-bottom: 100px; }

#in_company .stit.head:before { left: 150px; }

#in_company .ctit { text-align: center; position: relative; font-size: 18px; font-weight: bold; margin-bottom: 20px; }

#in_company .ctit:before { position: absolute; content: ""; background: #000; width: 30px; height: 14px; left: 0; }

#in_company #company { width: 100%; }

#in_company #company .stit { color: #000; }

#in_company #company .about-wrap .txt-wrap .in-tit { position: relative; background: #fff; color: #000; font-size: 18px; font-weight: bold; line-height: 1.4em; padding: 33px 25px; width: 60%; top: -50px; border-radius: 0 10px 10px 0; text-align: left; }

#in_company #ceo { width: 100%; }

#in_company #ceo .heading { font-weight: bold; font-size: 38px; color: #b6babd; margin-bottom: 0; text-align: right; position: relative; top: 8px; padding-right: 20px; }

#in_company #ceo figure { border-radius: 100px 0 100px 0; overflow: hidden; }

#in_company #ceo figure img { display: block; border-radius: 100px 0 100px 0; }

#in_company #ceo .txt-block { padding: 20px 30px; }

#in_company #ceo .txt-block .txt:not(:last-of-type) { margin-bottom: 1em; }

#in_company #outline { width: 100%; }

#in_company #outline .info-list { width: 92%; margin: 0 auto; }

#in_company #outline .info-list dl { display: flex; padding: 24px 0; width: 100%; }

#in_company #outline .info-list dl:not(:last-of-type) { border-bottom: 1px solid #000; }

#in_company #outline .info-list dl dt { width: 100px; }

#in_company #outline .info-list dl dd { width: calc(100% - 100px); }

#in_company #privacy { width: 100%; margin: -60px auto 0; padding-top: 60px; }

#in_company #privacy .commonpages { width: 92%; margin: 0 auto; }

#in_company #privacy .commonpages .block { margin-bottom: 40px; }

#in_company #privacy .commonpages .block .tit { font-weight: bold; margin-bottom: 1em; font-size: 16px; }

#in_company #privacy .commonpages .block .txt { margin-bottom: .8em; }

#in_company #access  { }


@media only screen and (min-width: 769px) { .in_container { padding-bottom: 100px; }
  .in_container#in_company .stit { margin-bottom: 100px; }
  .in_container#in_company .stit.head:before { left: 50%; }
  .in_container#in_company .ctit { margin-bottom: 70px; font-size: 26px; }
  .in_container#in_company .ctit:before { top: 50%; transform: translateY(-50%); }
  .in_container#in_company .section-wrap { margin: 0 auto 120px; }
  .in_container#in_company #company .about-wrap { display: flex; }
  .in_container#in_company #company .about-wrap .block { width: 48%; }
  .in_container#in_company #company .about-wrap .img-wrap { margin-right: 4%; }
  .in_container#in_company #company .about-wrap .txt-wrap { display: flex; align-items: center; }
  .in_container#in_company #company .about-wrap .txt-wrap .in-tit { font-size: 26px; color: #71a4bf; font-weight: bold; background: none; padding: 0px; top: 0; }
  .in_container#in_company #company .about-wrap .txt-wrap .txt-box { top: inherit; }
  .in_container#in_company #company .about-wrap .txt-wrap .txt-box .txt { padding: 0; }
  .in_container#in_company #ceo { max-width: 740px; }
  .in_container#in_company #ceo .heading { font-size: 64px; font-weight: 500; top: 14px; }
  .in_container#in_company #ceo figure img { border-radius: 220px 0 220px 0; }
  .in_container#in_company #outline { max-width: 1000px; }
  .in_container#in_company #access { max-width: 1000px; }
  .in_container#in_company #outline .info-list dl dt { width: 30%; padding-left: 10%; margin-right: 5%; }
  .in_container#in_company #outline .info-list dl dd { width: 65%; }
  .in_container#in_company #privacy { max-width: 1000px; margin: -120px auto 0; padding-top: 120px; } }

/* ===============================================
# プランページ
=============================================== */
#in_plan { padding: 160px 0 40px; background: #f7f4e7; }

#in_plan .stit { top: inherit; }

#in_plan .content-wrap { margin-bottom: 70px; }

#in_plan .price { color: #71a4bf; padding-left: 1em; font-weight: 500; }

#in_plan .note { text-align: right; font-size: 12px; }

#in_plan .acMenu { color: #000; padding: 50px 0 80px; }

#in_plan .acMenu:not(:last-of-type) { border-bottom: 1px solid #000; }

#in_plan .acMenu dt { font-weight: bold; font-size: 28px; border-bottom: 1px solid #000; transition: .5s all; padding: 20px 40px 20px 0; }

#in_plan .acMenu dt.open { border-bottom: none; }

#in_plan .acMenu dd { font-size: 14px; line-height: 1.8em; border-bottom: 1px solid #000; padding-bottom: 30px; }

#in_plan .card { overflow: hidden; border-radius: 10px; }

#in_plan .card .txt_block { background: #fff; padding: 30px 20px; border-radius: 0 0 10px 10px; }

#in_plan .txt-wrap .h-tit { font-weight: 500; font-size: 18px; line-height: 1.4em; }

#in_plan .txt-wrap .h-tit.bb { border-bottom: 1px solid #000; padding-bottom: 20px; margin-bottom: 20px; }

#in_plan .flex-txt { display: flex; justify-content: center; align-items: center; }

#in_plan .flex-txt p { font-size: 26px; font-weight: 500; line-height: 1.2em; margin: 0; padding: 25px 0; }

#in_plan .flex-box { display: flex; flex-wrap: wrap; }

#in_plan .flex-box .card { width: 31.3%; }

#in_plan .flex-box .card:not(:nth-of-type(3n+3)) { margin-right: 3%; }

#in_plan .flex-box .card .price-list .tit { font-weight: bold; }

#in_plan .flex-box .card .price-list .tit.bb { border-bottom: 2px solid #000; padding-bottom: 5px; margin-bottom: 15px; }

#in_plan .flex-box .card .price-list dl { display: flex; }

#in_plan .flex-box .card .price-list dl dt { width: 50%; font-size: 14px; line-height: 1.2em; display: flex; align-items: center; }

#in_plan .flex-box .card .price-list dl dd { display: flex; align-items: center; width: 50%; justify-content: right; color: #71a4bf; font-size: 22px; line-height: 1.2em; }

#in_plan .flex-box .card .price-list:not(:last-of-type) { margin-bottom: 20px; }

#in_plan .flex-box .box02 { width: 48.5%; }

#in_plan .flex-box .box02:nth-of-type(odd) { margin-right: 3%; }

#in_plan #lesson { margin: 0 auto 120px; }

#in_plan #lesson .fee-box { max-width: 950px; margin: 0 auto 60px; }

#in_plan #price { padding: 80px 0; }

#in_plan #price .txt-wrap { text-align: center; }

#in_plan #price .card .txt_block { border: 2px solid #000; border-radius: 0 0 10px 10px; margin-bottom: 5px; }

#in_plan .btn-wrap { max-width: 1000px; padding-top: 60px; }

#in_plan .btn-wrap .flex-box { display: flex; }

#in_plan .btn-wrap .flex-box .block { width: 45%; margin-bottom: 60px;}

#in_plan .btn-wrap .flex-box .block:nth-of-type(odd) { margin-right: 10%; }

#in_plan .btn-wrap .flex-box .block .tit { font-weight: bold; font-size: 24px; line-height: 1.4em; position: relative; margin-bottom: 30px; }

#in_plan .btn-wrap .flex-box .block .tit:before { position: absolute; content: ""; background: #000; width: 30px; height: 1px; left: 0; bottom: -10px; }

#in_plan .btn-wrap .flex-box .block .txt { margin-bottom: 30px; }

@media only screen and (max-width: 769px) { #in_plan { padding: 100px 0 30px; }
  #in_plan .acMenu dt { font-size: 19px; }
  #in_plan .flex-txt p { padding: 45px 0; font-size: 22px; }
  #in_plan .txt-wrap { text-align: left; }
  #in_plan .txt-wrap p { text-align: left; }
  #in_plan .txt-wrap .h-tit { font-size: 15px; text-align: center; text-align: left; }
  #in_plan .txt-wrap .text-list { padding: 0 8px; font-size: 12px; }
  #in_plan .flex-box .card { width: 100%; }
  #in_plan .flex-box .card:not(:nth-of-type(3n+3)) { margin-right: inherit; }
  #in_plan .flex-box .card:not(:last-of-type) { margin-bottom: 30px; }
  #in_plan .flex-box .box02 { width: 100%; }
  #in_plan .btn-wrap { padding-top: 20px; }
  #in_plan .btn-wrap .flex-box .block { width: 100%; margin-bottom: 40px;}
  #in_plan .btn-wrap .flex-box .block:nth-of-type(odd) { margin-right: inherit; margin-bottom: 50px; }
  #in_plan #member { margin: 0 auto 20px; }
  #in_plan #lesson { margin: 0 auto 40px; }
  #in_plan #lesson .stit { padding: 0; margin-bottom: 40px; }
  #in_plan #price { padding: 60px 0 30px; } }

/* ===============================================
# スタッフページ
=============================================== */
#in_staff { background: #f7f4e7; }

#in_staff #staff { margin-bottom: 100px; }

#in_staff #staff .inner-wrap { max-width: 1000px; width: 92%; margin: 0 auto; }

#in_staff #staff .inner-wrap ul .staff_member { overflow: hidden; border-radius: 10px; }

#in_staff #staff .inner-wrap ul .staff_member .name { font-size: 20px; padding: 10px; font-weight: bold; color: #fff; background: #000; text-align: center; }

#in_staff #staff .inner-wrap ul .staff_member .inner-content { display: flex; flex-wrap: wrap; }

#in_staff #staff .inner-wrap ul .staff_member .inner-content .img_block { width: 50%; }
#in_staff #staff .inner-wrap ul .staff_member .inner-content .img_block figure { width: 50%; }

#in_staff #staff .inner-wrap ul .staff_member .inner-content .txt_block { width: 50%; background: #fff; padding: 50px 30px; }

#in_staff #staff .inner-wrap ul .staff_member .inner-content .txt_block .box { border-bottom: 1px solid #000; padding-bottom: 20px; margin-bottom: 20px; }

#in_staff #staff .inner-wrap ul .staff_member:not(:last-of-type) { margin-bottom: 60px; }

#in_staff #recruit { background: url(../images/staff_bg_pc.jpg) center no-repeat; background-size: cover; max-width: inherit; width: 100%; padding: 80px 0; color: #fff; margin: 0 auto; }

#in_staff #recruit .inner-wrap { width: 92%; margin: 0 auto; max-width: 750px; }

#in_staff #recruit .inner-wrap .tit { font-size: 36px; line-height: 1.4em; margin-bottom: 40px; text-align: center; font-weight: bold; font-style: italic; }

#in_staff #recruit .inner-wrap .txt-wrap { margin-bottom: 40px; }

#in_staff #recruit .inner-wrap .txt-wrap .txt { font-size: 16px; line-height: 1.8em; }

#in_staff #recruit .inner-wrap .txt-wrap .txt:not(:last-of-type) { margin-bottom: 1.4em; }

@media only screen and (max-width: 1130px) { #in_staff #staff .inner-wrap { width: 96%; max-width: 600px; }
#in_staff #staff .inner-wrap ul .staff_member .inner-content .img_block { width: 100%; }
  #in_staff #staff .inner-wrap ul .staff_member .inner-content figure { width: 100%; }
  #in_staff #staff .inner-wrap ul .staff_member .inner-content .txt_block { width: 100%; padding: 30px 20px; font-size: 14px; } }

@media only screen and (max-width: 769px) { #in_staff #recruit { background: url(../images/staff_bg_sp.jpg) center no-repeat; background-size: cover; padding: 50px 0; margin: 0 auto; } }

#in_contact .bg-yellow { border-radius: 0; }

#in_contact .inner-wrap { max-width: 750px; margin: 0 auto; width: 92%; }

#in_contact .text-list { font-size: 12px; }

@media only screen and (max-width: 769px) { #in_contact .section-wrap { margin: 0 auto; }
  #in_contact .stit.head:before { left: 150px; }
  #in_contact .inner-wrap { width: 100%; }
  #in_contact .form-wrap { margin-bottom: 40px; } }
/*# sourceMappingURL=pages.css.map */