@charset "UTF-8";
/*
font-family :"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', 'Roboto', sans-serif;
*/
/* line 14, style.scss */
.cmnTit { display: flex; justify-content: space-between; flex-wrap: wrap; justify-content: flex-start; align-items: center; }
/* line 15, style.scss */
.cmnTit span { font-size: 48px; line-height: 1; color: #22b573; font-weight: 700; }
/* line 16, style.scss */
.cmnTit em { font-size: 14px; margin-left: 1.5em; font-weight: 600; letter-spacing: .05em; }

/* line 18, style.scss */
.titWrap { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; width: 100%; }
/* line 23, style.scss */
.titWrap .read { font-weight: 500; }

/* line 26, style.scss */
.linkBtn { width: 145px; height: 36px; }
/* line 27, style.scss */
.linkBtn a { color: #fff; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; position: relative; }
/* line 28, style.scss */
.linkBtn a::before { content: ""; background: #22b573; width: 100%; height: 100%; position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; z-index: 1; }
/* line 29, style.scss */
.linkBtn a em { font-size: 15px; position: relative; z-index: 5; }
/* line 30, style.scss */
.linkBtn a i { width: 20px; height: 1px; background: #fff; position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; right: 10px; transition: .25s; }
/* line 31, style.scss */
.linkBtn a i::before { content: ""; width: 8px; height: 1px; background: #fff; position: absolute; transform: rotate(45deg); right: 0px; bottom: 3px; }
/* line 34, style.scss */
.linkBtn a:hover i { right: 6px; }
/* line 37, style.scss */
.linkBtn.L { width: 280px; height: 58px; }
/* line 38, style.scss */
.linkBtn.L a { color: #22b573; border: 2px solid #22b573; }
/* line 39, style.scss */
.linkBtn.L a::before { background: #fff; }
/* line 40, style.scss */
.linkBtn.L a em { font-size: 24px; }
/* line 41, style.scss */
.linkBtn.L a i { width: 33px; height: 1px; background: #22b573; right: 10px; }
/* line 42, style.scss */
.linkBtn.L a i::before { width: 10px; background: #22b573; bottom: 4px; }
/* line 45, style.scss */
.linkBtn.L a:hover i { right: 6px; }
/* line 50, style.scss */
.linkBtn.W a { border-color: #fff; }
/* line 51, style.scss */
.linkBtn.W a::before { background: none; }
/* line 52, style.scss */
.linkBtn.W a em { color: #fff; }
/* line 53, style.scss */
.linkBtn.W a i { background: #fff; }
/* line 54, style.scss */
.linkBtn.W a i::before { background: #fff; }
/* line 60, style.scss */
.linkBtn.wSdw a::after { content: ""; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); position: absolute; z-index: 0; bottom: -0px; right: -0px; transition: .25s; }
/* line 62, style.scss */
.linkBtn.wSdw a:hover::after { bottom: -5px; right: -5px; }

/* line 68, style.scss */
.read { letter-spacing: .025em; text-align: justify; }

/* line 69, style.scss */
.catch { font-size: 28px; line-height: 1.6; letter-spacing: .025em; }

/* line 70, style.scss */
ul.listWrap { display: flex; justify-content: space-between; flex-wrap: wrap; }

@media only screen and (max-width: 750px) { /* line 77, style.scss */
  .cmnTit { flex-direction: column; }
  /* line 78, style.scss */
  .cmnTit span { font-size: 38px; }
  /* line 79, style.scss */
  .cmnTit em { font-size: 14px; margin-left: 0; margin-top: .5em; }
  /* line 81, style.scss */
  .titWrap { width: 100%; }
  /* line 89, style.scss */
  .linkBtn { width: 220px; height: 45px; }
  /* line 92, style.scss */
  .linkBtn a em { font-size: 17px; }
  /* line 93, style.scss */
  .linkBtn a i { width: 20px; height: 1px; right: 10px; }
  /* line 94, style.scss */
  .linkBtn a i::before { width: 8px; bottom: 3px; }
  /* line 97, style.scss */
  .linkBtn a:hover i { right: 10px; }
  /* line 100, style.scss */
  .linkBtn.L { /*width: 86%; height: 62px;*/ width: 220px; height: 45px; }
  /* line 101, style.scss */
  .linkBtn.L a { border: 2px solid #22b573; }
  /* line 103, style.scss */
  .linkBtn.L a em { /*font-size: 24px;*/ font-size: 17px; }
  /* line 104, style.scss */
  .linkBtn.L a i { /*width: 33px;*/ width: 20px; right: 10px; }
  /* line 105, style.scss */
  .linkBtn.L a i::before { /*width: 10px;*/ width: 8px; bottom: 4px; }
  /* line 108, style.scss */
  .linkBtn.L a:hover i { right: 10px; }
  /* line 113, style.scss */
  .linkBtn.W a { border-color: #fff; }
  /* line 114, style.scss */
  .linkBtn.W a::before { background: none; }
  /* line 115, style.scss */
  .linkBtn.W a em { color: #fff; }
  /* line 116, style.scss */
  .linkBtn.W a i { background: #fff; }
  /* line 117, style.scss */
  .linkBtn.W a i::before { background: #fff; }
  /* line 125, style.scss */
  .linkBtn.wSdw a:hover::after { bottom: -5px; right: -5px; }
  /* line 132, style.scss */
  .catch { font-size: 20px; } }
/* line 145, style.scss */
.titleSec { width: 100%; height: 240px; position: relative; overflow: hidden; }
/* line 146, style.scss */
.titleSec .title { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; display: flex; flex-direction: column; flex-wrap: wrap; color: #fff; }
/* line 147, style.scss */
.titleSec .title span { font-size: 45px; font-weight: 700; }
/* line 148, style.scss */
.titleSec .title em { font-size: 18px; }
/* line 150, style.scss */
.titleSec .ph { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; z-index: 0; height: 100%; }
/* line 151, style.scss */
.titleSec .ph::before { content: ""; width: 100%; height: 100%; position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; background: rgba(34, 181, 115, 0.8); mix-blend-mode: multiply; }
/* line 152, style.scss */
.titleSec .ph img { filter: grayscale(50%); }

@media only screen and (max-width: 750px) { /* line 159, style.scss */
  .titleSec { width: 100%; height: 200px; }
  /* line 161, style.scss */
  .titleSec .title span { font-size: 36px; line-height: 1.6; }
  /* line 162, style.scss */
  .titleSec .title em { font-size: 16px; } }
/* line 173, style.scss */
ul.breadList { width: 90%; margin: 10px auto; display: flex; justify-content: space-between; flex-wrap: wrap; justify-content: flex-start; opacity: .9; }
/* line 174, style.scss */
ul.breadList li { font-size: 11px; font-weight: 500; }
/* line 176, style.scss */
ul.breadList li:not(:last-child)::after { content: "\f054"; font-family: "Font Awesome 6 Pro"; margin: 0 5px 0 8px; }
/* line 179, style.scss */
ul.breadList li a { color: inherit; }

@media only screen and (max-width: 750px) { /* line 186, style.scss */
  ul.breadList { width: 90%; margin: 10px auto; }
  /* line 187, style.scss */
  ul.breadList li { font-size: 10px; }
  /* line 189, style.scss */
  ul.breadList li:not(:last-child)::after { margin: 0 5px 0 8px; } }
/* line 206, style.scss */
.reserveSec .tit { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; position: relative; margin: 0 auto 30px; }
/* line 207, style.scss */
.reserveSec .tit em { font-size: 21px; line-height: 1.5; font-weight: 700; color: #fff; background: #000; padding: 8px 20px; position: relative; z-index: 10; }
/* line 208, style.scss */
.reserveSec .tit::after { content: ""; width: 100%; height: 1px; background: #000; position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; z-index: 0; }
/* line 210, style.scss */
.reserveSec iframe { width: 100%; margin: 0 auto 40px; }
/* line 211, style.scss */
.reserveSec .btnWrap { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
/* line 212, style.scss */
.reserveSec .btnWrap .linkBtn { width: 440px; height: 58px; }
/* line 213, style.scss */
.reserveSec .btnWrap .linkBtn:not(:last-child) { margin-right: 50px; }
/* line 214, style.scss */
.reserveSec .btnWrap .linkBtn a { color: #fff; border: none; }
/* line 215, style.scss */
.reserveSec .btnWrap .linkBtn a em { font-size: 24px; }
/* line 216, style.scss */
.reserveSec .btnWrap .linkBtn a i { background: #fff; }
/* line 217, style.scss */
.reserveSec .btnWrap .linkBtn a i::before { background: #fff; }
/* line 222, style.scss */
.reserveSec .btnWrap .linkBtn.redstudio a::before { background: #ff0000; }
/* line 227, style.scss */
.reserveSec .btnWrap .linkBtn.greenstudio a::before { background: #009206; }

@media only screen and (max-width: 750px) { /* line 237, style.scss */
  .reserveSec { padding: 0 2.5%; }
  /* line 238, style.scss */
  .reserveSec .tit { margin: 0 auto 20px; }
  /* line 239, style.scss */
  .reserveSec .tit em { font-size: 17px; padding: 6px 18px; }
  /* line 242, style.scss */
  .reserveSec iframe { width: 100%; height: 420px; margin: 0 auto 30px; }
  /* line 244, style.scss */
  .reserveSec .btnWrap .linkBtn { width: 92%; height: 56px; }
  /* line 245, style.scss */
  .reserveSec .btnWrap .linkBtn:not(:last-child) { margin-right: 0px; margin-bottom: 25px; }
  /* line 246, style.scss */
  .reserveSec .btnWrap .linkBtn a { border: none; }
  /* line 247, style.scss */
  .reserveSec .btnWrap .linkBtn a em { font-size: 18px; }
  /* line 251, style.scss */
  .reserveSec .btnWrap .linkBtn a::after { bottom: -4px; right: -4px; opacity: .25; } }
/* line 277, style.scss */
#featureSec .catch { margin: 0 auto 30px; }
/* line 278, style.scss */
#featureSec ul.listWrap { display: flex; justify-content: space-between; flex-wrap: wrap; }
/* line 279, style.scss */
#featureSec ul.listWrap li { width: calc(100% / 3 - 30px); }
/* line 280, style.scss */
#featureSec ul.listWrap li .num { display: flex; flex-direction: column; flex-wrap: wrap; color: #22b573; position: relative; z-index: 5; margin: 0 auto -15px; }
/* line 281, style.scss */
#featureSec ul.listWrap li .num span { font-size: 15px; font-weight: 700; margin: 0 auto 10px; }
/* line 282, style.scss */
#featureSec ul.listWrap li .num em { font-size: 68px; font-weight: 700; }
/* line 284, style.scss */
#featureSec ul.listWrap li .ph { width: 80%; height: 0; padding-top: 80%; border-radius: 50%; margin: auto; }
/* line 285, style.scss */
#featureSec ul.listWrap li .ph img { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; z-index: 0; }
/* line 287, style.scss */
#featureSec ul.listWrap li .tit { font-size: 22px; font-weight: 700; letter-spacing: .075em; margin: 25px auto 0; }
/* line 288, style.scss */
#featureSec ul.listWrap li .read { font-size: 15px; margin: 20px auto 0; font-weight: 500; }

@media only screen and (max-width: 750px) { /* line 303, style.scss */
  #featureSec .catch { margin: 0 auto 30px; }
  /* line 305, style.scss */
  #featureSec ul.listWrap li { width: calc(100% / 3 - 20px); }
  /* line 306, style.scss */
  #featureSec ul.listWrap li .num { margin: 0 auto -15px; }
  /* line 307, style.scss */
  #featureSec ul.listWrap li .num span { font-size: 13px; margin: 0 auto 6px; }
  /* line 308, style.scss */
  #featureSec ul.listWrap li .num em { font-size: 56px; }
  /* line 310, style.scss */
  #featureSec ul.listWrap li .ph { width: 60%; padding-top: 60%; }
  /* line 313, style.scss */
  #featureSec ul.listWrap li .tit { font-size: 20px; margin: 25px auto 0; }
  /* line 314, style.scss */
  #featureSec ul.listWrap li .read { font-size: 14px; margin: 10px auto 0; } }
/* line 333, style.scss */
#lessonSec { background: url("../img/lessonBg.jpg") no-repeat center; background-size: cover; }
/* line 334, style.scss */
#lessonSec .inner { padding: 30px 0 60px; display: flex; justify-content: space-between; flex-wrap: wrap; }
/* line 335, style.scss */
#lessonSec .inner .titWrap { color: #fff; width: 100%; }
/* line 336, style.scss */
#lessonSec .inner .titWrap .tit { display: flex; flex-direction: column; flex-wrap: wrap; align-items: center; width: 100%; margin: 0 auto 20px; }
/* line 337, style.scss */
#lessonSec .inner .titWrap .tit i { width: 200px; position: relative; left: -2.5%; }
/* line 338, style.scss */
#lessonSec .inner .titWrap .tit span { font-size: 48px; font-weight: 700; }
/* line 339, style.scss */
#lessonSec .inner .titWrap .tit em { font-size: 14px; }
/* line 341, style.scss */
#lessonSec .inner .titWrap .read { font-size: 15px; font-weight: 400; text-align: center; width: 100%; letter-spacing: .05em; margin-bottom: 30px; }
/* line 343, style.scss */
#lessonSec .inner ul.listWrap { display: flex; justify-content: space-between; flex-wrap: wrap; justify-content: center; padding: 0 30px; }
/* line 344, style.scss */
#lessonSec .inner ul.listWrap li { width: calc(100% / 3 - 40px); margin: 0 20px 30px; }
/* line 345, style.scss */
#lessonSec .inner ul.listWrap li a { color: #fff; }
/* line 346, style.scss */
#lessonSec .inner ul.listWrap li a .ph { margin-bottom: 10px; }
/* line 347, style.scss */
#lessonSec .inner ul.listWrap li a .t { font-size: 18px; }
/* line 348, style.scss */
#lessonSec .inner ul.listWrap li a .t span, #lessonSec .inner ul.listWrap li a .t em { display: block; letter-spacing: .05em; }
/* line 351, style.scss */
#lessonSec .inner ul.listWrap li a .t em small { font-size: 86%; margin-left: .25em; }
/* line 357, style.scss */
#lessonSec .inner .linkBtn.L.W { margin: auto; }

@media only screen and (max-width: 750px) { /* line 369, style.scss */
  #lessonSec { background: url("../img/lessonBgSp.jpg") no-repeat center; background-size: cover; }
  /* line 370, style.scss */
  #lessonSec .inner { padding: 20px 0 50px; }
  /* line 371, style.scss */
  #lessonSec .inner .titWrap { padding: 0 7%; }
  /* line 372, style.scss */
  #lessonSec .inner .titWrap .tit { width: 92%; margin: 0 auto 20px; }
  /* line 373, style.scss */
  #lessonSec .inner .titWrap .tit i { width: 110px; left: -2.5%; margin: 0 auto 5px; }
  /* line 374, style.scss */
  #lessonSec .inner .titWrap .tit span { font-size: 38px; line-height: 1.2; }
  /* line 375, style.scss */
  #lessonSec .inner .titWrap .tit em { font-size: 14px; margin-top: 10px; }
  /* line 377, style.scss */
  #lessonSec .inner .titWrap .read { font-size: 15px; margin-bottom: 30px; text-align: justify; }
  /* line 379, style.scss */
  #lessonSec .inner ul.listWrap { padding: 25px 5%; justify-content: space-between; }
  /* line 380, style.scss */
  #lessonSec .inner ul.listWrap li { width: calc(100% / 2 - 10px); margin: 0 0px 20px; }
  /* line 382, style.scss */
  #lessonSec .inner ul.listWrap li a .ph { margin-bottom: 6px; }
  /* line 383, style.scss */
  #lessonSec .inner ul.listWrap li a .t { font-size: 14px; line-height: 1.6; }
  /* line 386, style.scss */
  #lessonSec .inner ul.listWrap li a .t em small { font-size: 86%; margin-left: .25em; }
  /* line 392, style.scss */
  #lessonSec .inner .linkBtn.L.W { margin: auto; } }
/* line 410, style.scss */
#accessSec { display: flex; justify-content: space-between; flex-wrap: wrap; }
/* line 419, style.scss */
#accessSec .text { text-align: left; }
/* line 423, style.scss */
#accessSec .text .add a[href^="tel:"] { color: inherit; }
/* line 428, style.scss */
#accessSec .text ul.listWrap li:not(:last-child) { margin-bottom: 15px; }
/* line 429, style.scss */
#accessSec .text ul.listWrap li .t { display: flex; justify-content: space-between; flex-wrap: wrap; justify-content: flex-start; align-items: baseline; margin-bottom: 5px; font-size: 28px; }
/* line 430, style.scss */
#accessSec .text ul.listWrap li .t i { color: #22b573; width: 30px; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
/* line 431, style.scss */
#accessSec .text ul.listWrap li .t em { font-size: 58%; width: calc(100% - 30px); padding-left: 5px; }
/* line 433, style.scss */
#accessSec .text ul.listWrap li .acc { font-size: 15px; font-weight: 500; padding-left: 35px; }
/* line 436, style.scss */
#accessSec .text ul.listWrap li.list02 .t i { font-size: 90%; }
/* line 437, style.scss */
#accessSec .text ul.listWrap li.list03 .t i { font-size: 90%; }
/* line 440, style.scss */
#accessSec .text ul.listWrap li.list04 .t i { font-size: 90%; }
/* line 441, style.scss */
#accessSec .text ul.listWrap li.list04 .t em { font-weight: 500; }

@media only screen and (max-width: 750px) { /* line 471, style.scss */
  #accessSec .text .add a[href^="tel:"] { color: #22b573; }
  /* line 476, style.scss */
  #accessSec .text ul.listWrap li:not(:last-child) { margin-bottom: 15px; }
  /* line 477, style.scss */
  #accessSec .text ul.listWrap li .t { margin-bottom: 5px; font-size: 28px; }
  /* line 478, style.scss */
  #accessSec .text ul.listWrap li .t i { width: 30px; }
  /* line 479, style.scss */
  #accessSec .text ul.listWrap li .t em { font-size: 58%; width: calc(100% - 30px); padding-left: 5px; }
  /* line 481, style.scss */
  #accessSec .text ul.listWrap li .acc { font-size: 15px; padding-left: 35px; } }
/* line 502, style.scss */
header ul.snsSec, footer ul.snsSec { display: flex; justify-content: space-between; justify-content: center; }
/* line 503, style.scss */
header ul.snsSec li, footer ul.snsSec li { font-size: 30px; }
/* line 504, style.scss */
header ul.snsSec li a, footer ul.snsSec li a { color: #fff; padding: 20px 12px; }
/* line 505, style.scss */
header ul.snsSec li a em, footer ul.snsSec li a em { display: none; font-size: 11px; color: #fff; white-space: nowrap; margin-left: .75em; }
/* line 511, style.scss */
header ul.snsSec li.line a, footer ul.snsSec li.line a { color: #22b573; display: flex; justify-content: space-between; flex-direction: row-reverse; }
/* line 512, style.scss */
header ul.snsSec li.line a em, footer ul.snsSec li.line a em { display: block; }
/* line 513, style.scss */
header ul.snsSec li.line a i, footer ul.snsSec li.line a i { position: relative; z-index: 5; position: relative; line-height: 1; }
/* line 514, style.scss */
header ul.snsSec li.line a i::before, footer ul.snsSec li.line a i::before { z-index: 1; position: relative; }
/* line 515, style.scss */
header ul.snsSec li.line a i::after, footer ul.snsSec li.line a i::after { content: ""; position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: auto; z-index: 10; z-index: 0; background: #fff; width: 90%; height: 90%; border-radius: 10px; }
/* line 520, style.scss */
header .reserve, footer .reserve { width: 180px; height: 100px; position: absolute; top: 0; right: 0; }
/* line 521, style.scss */
header .reserve a, footer .reserve a { background: #22b573; color: #fff; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; flex-direction: column; padding-left: 1em; }
/* line 522, style.scss */
header .reserve a i, footer .reserve a i { font-size: 22px; position: absolute; top: 26px; left: 15px; }
/* line 523, style.scss */
header .reserve a span, header .reserve a em, footer .reserve a span, footer .reserve a em { width: 100%; line-height: 1.5; }
/* line 524, style.scss */
header .reserve a span, footer .reserve a span { font-size: 18px; margin-bottom: 5px; }
/* line 525, style.scss */
header .reserve a em, footer .reserve a em { font-size: 12px; font-weight: 500; letter-spacing: .025em; }

@media only screen and (max-width: 750px) { /* line 535, style.scss */
  header ul.snsSec li, footer ul.snsSec li { font-size: 30px; }
  /* line 536, style.scss */
  header ul.snsSec li a, footer ul.snsSec li a { padding: 20px 12px; }
  /* line 537, style.scss */
  header ul.snsSec li a em, footer ul.snsSec li a em { display: none; }
  /* line 545, style.scss */
  header .reserve, footer .reserve { width: 90%; height: 56px; position: relative; top: auto; left: auto; bottom: auto; right: auto; transform: none; margin: 0 auto 20px; }
  /* line 546, style.scss */
  header .reserve a, footer .reserve a { flex-direction: row; }
  /* line 547, style.scss */
  header .reserve a i, footer .reserve a i { font-size: 22px; position: relative; top: auto; left: auto; bottom: auto; right: auto; transform: none; margin-right: 1em; }
  /* line 548, style.scss */
  header .reserve a span, header .reserve a em, footer .reserve a span, footer .reserve a em { width: auto; }
  /* line 549, style.scss */
  header .reserve a span, footer .reserve a span { font-size: 18px; }
  /* line 550, style.scss */
  header .reserve a em, footer .reserve a em { font-size: 14px; margin-left: 1.5em; } }
