@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Marcellus&display=swap");
* { margin: 0; padding: 0; box-sizing: border-box; }

body { font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 15px; font-weight: 500; color: #6b5c57; line-height: 1.8; -webkit-text-size-adjust: 100%; background-color: #fff; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote { margin: 0; padding: 0; }

table { border-collapse: collapse; font-size: inherit; }

fieldset, img { border: 0; border: none; vertical-align: top; }

address, caption, cite, code, dfn, th, var { font-style: normal; font-weight: normal; }

li { list-style: none; }

caption, th { text-align: left; }

q:before, q:after { content: ''; }

abbr, acronym { border: 0; font-variant: normal; }

sup { vertical-align: text-top; }

sub { vertical-align: text-bottom; }

input, textarea, select { font-family: inherit; font-size: inherit; font-weight: inherit; }

input, textarea, select { font-size: 100%; vertical-align: middle; }

legend { color: #000000; }

pre, code, kbd, samp, tt { font-family: monospace; font-size: 108%; line-height: 100%; }

/**::-ms-backdrop, body { font-family: Arial, Helvetica Neue, Helvetica, sans-serif; }*/
h1, h2, h3, h4, h5, h6 { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }

a { color: #333; text-decoration: none; outline: 0; }

img { width: 100%; height: auto; }

.clearfix { zoom: 1; }

.clearfix:after { content: ""; display: block; clear: both; }

.pre { white-space: pre; }

.non, .hide { display: none; }

.sp { display: block !important; }

.pc { display: none !important; }

@media (min-width: 1101px) { .sp { display: none !important; }
  .pc { display: block !important; } }
.en { font-family: "Marcellus", serif; }

.tac { text-align: center; }

.tar { text-align: right; }

.fwb { font-weight: bold; }

.cRad { color: red; }

.cPink { color: #f07069; }

.opa0 { opacity: 0; }

.opa0.app { opacity: 1; transition: opacity 0.5s ease; }

.scrollInY { opacity: 0; transform: translate3d(0, 100%, 0); transition: transform 1s ease,opacity 1s ease; }

.scrollInY.app { opacity: 1; transform: translate3d(0, 0, 0); }

.zoomIn { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); transition: opacity 0.5s ease-out, transform 0.5s ease-out; transition-delay: 0.5s; }

.zoomIn.app { opacity: 1; transform: scale3d(1, 1, 1); }

.formBtn1 a { color: #fff; font-weight: bold; line-height: 1.0; background-color: #f07069; border-radius: 6px; display: flex; justify-content: center; align-content: center; position: relative; }
.formBtn1 a::after { content: ""; width: 1em; height: 1em; border-top: 1px solid; border-right: 1px solid; transform: rotate(45deg); position: absolute; top: calc(50% - 1.2em / 2); right: 1em; }

header { width: 100%; padding: 1.2em 0 1em; display: flex; flex-wrap: wrap; position: fixed; z-index: 2; }
header.fixed { background-color: #fff; transform: translateY(0%); transition: transform 0.5s ease,background 0.3s ease; }
header.fixed.headHide { transform: translateY(-100%); }
@media (min-width: 1101px) { header { background-color: transparent; }
  header.fixed .headLogo { width: 6.215%; } }
header .headLogo { width: 22.5%; max-height: 50px; margin-left: 5.75%; position: relative; z-index: 1; }
header .headLogo img { width: auto; height: 100%; }
@media (max-width: 1100px) and (min-width: 768px) { header .headLogo { width: 22.5%; max-height: 75px; } }
@media (min-width: 1101px) { header .headLogo { width: 11.215%; max-height: 92px; margin-left: 4.6%; order: 1; transition: width 0.1s ease; } }
header .headBtn { width: 46.875%; margin: 0 1.0em 0 auto; position: relative; z-index: 1; }
header .headBtn a { padding: 1.2em 0; font-size: 0.75em; display: flex; justify-content: center; align-items: center; }
header .headBtn a::after { width: 0.65em; height: 0.65em; top: calc(50% - 0.9em / 2); right: 1em; }
header .headBtn a span { padding-right: 1em; line-height: 1.0; }
@media (max-width: 1100px) and (min-width: 768px) { header .headBtn { margin: 0 1.5em 0 auto; }
  header .headBtn a { font-size: 1.35em; }
  header .headBtn a::after { border-top: 2px solid; border-right: 2px solid; } }
@media (min-width: 1101px) { header .headBtn { width: 20%; margin: 8px 3% 0 1.3%; order: 3; }
  header .headBtn a { padding: 0 0; font-size: 1.4vw; }
  header .headBtn a span { line-height: 2.9; }
  header .headBtn a::after { width: 0.5em; height: 0.5em; border-top: 2px solid; border-right: 2px solid; top: calc(50% - 0.75em / 2); transition: right 0.2s ease; }
  header .headBtn a:hover { background-color: #fa6961; }
  header .headBtn a:hover::after { right: 0.75em; } }
header .spMenuBtn { width: 32px; margin-right: 5.75%; padding-top: 1px; position: relative; z-index: 1; }
header .spMenuBtn span.mIcon { width: 100%; height: 20px; display: block; position: relative; }
header .spMenuBtn span.mIcon::before, header .spMenuBtn span.mIcon::after { content: ""; width: 100%; height: 4px; background-color: #3e3a39; position: absolute; left: 0; transition: background-color 0.2s ease,transform 0.2s ease,top 0.2s ease,bottom 0.2s ease; }
header .spMenuBtn span.mIcon::after { bottom: 0; }
header .spMenuBtn span.mIcon span { display: block; width: 100%; height: 4px; background-color: #3e3a39; position: absolute; top: 8px; left: 0; }
header .spMenuBtn span.txt { display: block; margin-top: 8px; font-size: 0.67em; color: #3e3a39; font-weight: bold; line-height: 1.0; }
header .spMenuBtn.open span.mIcon::before { background-color: #888; transform: rotate(45deg); top: 15px; }
header .spMenuBtn.open span.mIcon::after { background-color: #888; transform: rotate(-45deg); bottom: 1px; }
header .spMenuBtn.open span.mIcon span { opacity: 0; }
header .spMenuBtn.open span.txt { opacity: 0; }
@media (max-width: 1100px) and (min-width: 768px) { header .spMenuBtn { width: 50px; margin-right: 4.5%; padding-top: 9px; }
  header .spMenuBtn span.mIcon { height: 32px; }
  header .spMenuBtn span.mIcon span { top: 14px; }
  header .spMenuBtn span.txt { margin-top: 8px; font-size: 1em; letter-spacing: 1px; }
  header .spMenuBtn.open span.mIcon::before { top: 27px; }
  header .spMenuBtn.open span.mIcon::after { bottom: 1px; } }
@media (min-width: 1101px) { header .spMenuBtn { display: none; } }
header nav.open .navWrap { top: 0; }
header nav .navWrap { width: 100%; padding: 98px 5.75% 7.5vw; background-color: #eee; display: flex; justify-content: space-between; transition: top 0.5s ease; position: absolute; top: -56.7vw; left: 0; }
header nav li { margin-bottom: 0.5em; font-size: 3.5vw; font-weight: bold; letter-spacing: -0.05em; }
header nav li a::before { content: "・"; }
@media (max-width: 1100px) and (min-width: 768px) { header nav .navWrap { padding: 152px 5.75% 7.5vw; } }
@media (min-width: 1101px) { header nav { order: 2; margin: 30px auto 0; }
  header nav .navWrap { width: auto; padding: 0 0 0; background-color: transparent; display: flex; transition: none; position: static; }
  header nav ul { display: flex; }
  header nav ul + ul li:last-child a::after { content: ""; width: 1px; height: 100%; background-color: #3e3a39; position: absolute; top: 0; right: -0.8em; }
  header nav li { margin-bottom: 0.5em; font-size: 1.025vw; font-weight: 600; letter-spacing: 0.025em; }
  header nav li a { color: #3e3a39; margin: 0 0.8em; position: relative; }
  header nav li a::before { content: ""; width: 1px; height: 100%; background-color: #3e3a39; position: absolute; top: 0; left: -0.8em; } }

section#top { padding-top: 82px; }
@media (max-width: 1100px) and (min-width: 768px) { section#top { padding-top: 107px; } }
@media (min-width: 1101px) { section#top { padding-top: 0; } }
section#top .mv { padding: 5.25vw 6.875% 0; background: url(../img/mv_back_sp.png) no-repeat center top; background-size: 100% 94.5%; font-weight: bold; }
section#top .mv h1 { font-size: 5.25vw; line-height: 1.6; letter-spacing: -0.05em; }
section#top .mv h1.opa0.app { transition-delay: 0.5s; }
section#top .mv p.txt { margin: 0.5em 0 0.68em; font-size: 0.94em; line-height: 1.4; letter-spacing: 0.75px; }
section#top .mv p.txt span.deco { display: inline-block; border-bottom: 2px solid #f07069; }
section#top .mv p.txt.opa0.app { transition-delay: 0.75s; }
@media (max-width: 1100px) and (min-width: 768px) { section#top .mv p.txt { margin: 1em 0 2em; }
  section#top .mv p.txt span.sp { display: none !important; }
  section#top .mv p.txt span.pc { display: block !important; } }
@media (min-width: 1101px) { section#top .mv { padding: 16.4% 7.39% 0 7%; background: url(../img/mv_back.png) no-repeat center bottom; background-size: 100vw 100vh; }
  section#top .mv .mvTitle { display: block; width: 58.925%; }
  section#top .mv h1 { width: 53.93%; margin: 40px 0 28px 2px; line-height: 1.0; }
  section#top .mv p.txt { width: 55.57%; margin: 0 0 0 8px; line-height: 1.0; }
  section#top .mv .imgWoman { /*
width: 45.39%;
margin: -41.0% 0 0 auto;
*/ width: auto; margin: -38% -8% 0 auto; height: 78vh; text-align: right; }
  section#top .mv .imgWoman img { width: auto; height: 100%; } }
section#top .topAbout h2 { margin: 16.4vw 0 4.53vw; text-align: center; position: relative; }
section#top .topAbout h2 .ballon { width: 18.4%; position: absolute; top: -12.8vw; left: 5.6vw; }
section#top .topAbout h2 .txt { width: 77.87%; margin: auto; }
section#top .topAbout p.ribbon { width: 84%; margin: 0 auto; }
section#top .topAbout p.ribbon.scrollInY.app { transition-delay: 0.35s; }
section#top .topAbout ul.imgBlock { margin: 5.6vw 0 0; }
section#top .topAbout ul.imgBlock li { width: 62.67%; margin: 0 auto 3.74vw; text-align: center; position: relative; }
section#top .topAbout ul.imgBlock li.scrollInY.app { transition-delay: 0.25s; }
section#top .topAbout ul.imgBlock li:last-child.scrollInY.app { margin-bottom: 0; }
section#top .topAbout p.caution { width: 22em; margin: 14px auto 0; font-size: 0.73em; line-height: 1.46; }
section#top .topAbout .formBtn { margin: 21vw auto 20vw; position: relative; }
section#top .topAbout .formBtn.scrollInY.app { transition-delay: 0.5s; }
section#top .topAbout .formBtn p.ballon { width: 21.3%; position: absolute; top: -17.1vw; left: 1.34vw; z-index: 1; }
section#top .topAbout .formBtn p.btnWrap { width: 87.74%; height: 85px; margin: auto; background: url(../img/btn_shadow.png) no-repeat right bottom; background-size: 100% 100%; }
section#top .topAbout .formBtn p.btnWrap a { width: 100%; height: 100%; font-size: 1.2em; color: #fff; line-height: 1.0; font-weight: bold; background-color: #f07069; border-radius: 7.5px; display: flex; justify-content: center; align-items: center; position: relative; top: -1.6vw; left: -1.6vw; }
section#top .topAbout .formBtn p.btnWrap a::after { content: ""; width: .5em; height: .5em; border-top: 2px solid; border-right: 2px solid; transform: rotate(45deg); position: absolute; top: calc(50% - .62em / 2); right: 1.17em; }
section#top .topAbout .formBtn p.btnWrap a span { padding-right: 10px; }
@media (max-width: 1100px) and (min-width: 768px) { section#top .topAbout h2 { margin: 12.4vw 0 4.53vw; }
  section#top .topAbout h2 .ballon { width: 15%; top: -5vw; left: 12.6vw; }
  section#top .topAbout h2 .txt { width: 64%; margin: auto; }
  section#top .topAbout p.ribbon { width: 62%; }
  section#top .topAbout ul.imgBlock { display: flex; padding: 0 1em; }
  section#top .topAbout ul.imgBlock li { margin-bottom: 0; }
  section#top .topAbout ul.imgBlock li:nth-child(2) { margin: 0 1em; }
  section#top .topAbout p.caution { width: 22em; }
  section#top .topAbout .formBtn { width: 86%; margin: 15vw auto 18vw; }
  section#top .topAbout .formBtn p.ballon { width: 16%; top: -12vw; left: -0.66vw; } }
@media (min-width: 1101px) { section#top .topAbout h2 { margin: -20px 0 32px; }
  section#top .topAbout h2 .ballon { width: 10.51%; top: -28%; left: 23.5%; }
  section#top .topAbout h2 .txt { width: 47.33%; margin: auto; }
  section#top .topAbout p.ribbon { width: 45%; }
  section#top .topAbout ul.imgBlock { width: 100%; max-width: 995px; margin: 48px auto 22px; display: flex; justify-content: space-between; }
  section#top .topAbout ul.imgBlock li { width: calc((100% - 6%) / 3); margin: 0 auto 0; }
  section#top .topAbout ul.imgBlock li.scrollInY.app { transition-delay: 0.5s; }
  section#top .topAbout ul.imgBlock li:nth-child(2).scrollInY.app { transition-delay: 0.75s; }
  section#top .topAbout ul.imgBlock li:last-child.scrollInY.app { transition-delay: 1s; }
  section#top .topAbout p.caution { width: 100%; max-width: 995px; margin: 0 auto; font-size: 14px; line-height: 1.0; text-align: right; }
  section#top .topAbout .formBtn { width: 56%; max-width: 682px; margin: 152px auto 0; position: relative; }
  section#top .topAbout .formBtn p.ballon { width: 23.6%; max-width: 161px; top: -100%; left: -18%; }
  section#top .topAbout .formBtn p.btnWrap { width: 100%; max-width: 100%; height: 110px; }
  section#top .topAbout .formBtn p.btnWrap a { width: 100%; height: 100%; font-size: 32px; border-radius: 7px; top: -12px; left: -12px; transition: background-color 0.2s ease,top 0.4s ease,left 0.4s ease; }
  section#top .topAbout .formBtn p.btnWrap a::after { border-top: 3px solid; border-right: 3px solid; }
  section#top .topAbout .formBtn p.btnWrap a:hover { background-color: #fa6961; top: 0; left: 0; } }

section#about { width: 100%; margin: -83px auto 0; padding: 83px 0 0; }
@media (min-width: 1101px) { section#about { margin: 0 auto 0; padding: 140px 0 0; } }
section#about #what { margin-bottom: 19.73vw; padding: 6.4vw 0; background: url(../img/bg_stripe01.png) repeat left top; position: relative; }
section#about #what::after { content: ""; width: 50vw; height: 13.5vw; margin: auto; background: url(../img/arrow_stripe.svg) no-repeat center center; background-size: contain; position: absolute; bottom: -19.73vw; left: 0; right: 0; }
section#about #what .inner { width: 87.2%; margin: auto; padding-top: 10vw; background-color: #fff; }
section#about #what h2 { width: 10.75em; margin: 0 7.67% 0 6.75%; padding-bottom: 10.13vw; background: url(../img/what_ballon.svg) no-repeat; background-position: center 10.13vw; font-size: 6.75vw; line-height: 1.22; text-align: center; }
section#about #what p.read { padding: 0 7.67% 0 6.75%; font-size: 3.75vw; line-height: 1.8; font-weight: bold; letter-spacing: -0.025em; }
section#about #what h3 { margin: 40px auto 66px; padding: 0 7.67% 0 6.75%; text-align: center; }
section#about #what h3 span { width: 10em; padding-bottom: 3px; display: inline-block; font-size: 6.75vw; line-height: 1.45; background: url(../img/bg_stripe03.png) repeat-x left 80%; }
section#about #what ul.illust { padding: 0 4% 15.2vw 6.116%; position: relative; }
section#about #what ul.illust li { position: relative; }
section#about #what ul.illust li p { font-size: 3.2vw; color: #f07069; text-align: center; line-height: 1.36; font-weight: bold; letter-spacing: -0.02em; position: absolute; }
section#about #what ul.illust li:first-child { width: 39.75vw; }
section#about #what ul.illust li:first-child p { top: -12vw; left: 4.8vw; }
section#about #what ul.illust li:nth-child(2) { width: 37.875vw; margin-left: auto; margin-top: -49.1vw; }
section#about #what ul.illust li:nth-child(2) p { top: 2.13vw; left: 4.27vw; }
section#about #what ul.illust li:nth-child(2).zoomIn.app { transition-delay: 0.8s; }
section#about #what ul.illust li:nth-child(3) { width: 40.625vw; margin-top: 6.67vw; }
section#about #what ul.illust li:nth-child(3) p { top: -12.8vw; left: 4.27vw; }
section#about #what ul.illust li:nth-child(3).zoomIn.app { transition-delay: 1.1s; }
section#about #what ul.illust li:last-child { width: 36.75vw; margin-top: -43.2vw; margin-left: auto; margin-right: 1.33vw; }
section#about #what ul.illust li:last-child p { top: -2.13vw; left: 5.33vw; }
section#about #what ul.illust li:last-child.zoomIn.app { transition-delay: 1.4s; }
@media (max-width: 1100px) and (min-width: 768px) { section#about #what { margin-bottom: 140px; padding: 60px 0; }
  section#about #what::after { width: 40%; height: 80px; bottom: -140px; }
  section#about #what .inner { padding-top: 80px; }
  section#about #what h2 { margin: 0 auto; padding-bottom: 80px; font-size: 50px; line-height: 1.4; background: url(../img/what_ballon.svg) no-repeat; background-position: center 80px; }
  section#about #what p.read { font-size: 26px; letter-spacing: -0.015em; font-weight: 500; }
  section#about #what h3 { margin: 60px auto 140px; }
  section#about #what h3 span { font-size: 46px; line-height: 1.6; }
  section#about #what ul.illust { padding: 0 4.89% 80px 6.116%; }
  section#about #what ul.illust li p { font-size: 3.25vw; line-height: 1.36; }
  section#about #what ul.illust li:first-child p { top: -12.2vw; left: 4.146vw; }
  section#about #what ul.illust li:nth-child(2) p { top: 2.44vw; left: 3.41vw; }
  section#about #what ul.illust li:nth-child(3) p { top: -12.44vw; left: 3.9vw; }
  section#about #what ul.illust li:last-child p { top: -2.44vw; left: 5vw; } }
@media (min-width: 1101px) { section#about #what { margin-bottom: 0; padding: 58px 0; }
  section#about #what::after { width: 21.51%; height: 6.79%; bottom: -114px; }
  section#about #what .inner { width: 86.21%; max-width: 1050px; padding-top: 66px; }
  section#about #what h2 { width: 57.23%; margin: 0 auto 30px; padding-top: 6px; padding-bottom: 78px; background-position: center center; font-size: 37px; line-height: 1.0; }
  section#about #what p.read { padding: 0; font-size: 20px; line-height: 1.85; letter-spacing: 0.05em; text-align: center; }
  section#about #what h3 { margin: 46px auto 44px; padding: 0 0 0; }
  section#about #what h3 span { width: 18em; padding-bottom: 0; font-size: 33px; display: inline; background: url(../img/bg_stripe03.png) repeat-x left 94%; }
  section#about #what ul.illust { padding: 0 3.3% 58px 4.76%; display: flex; justify-content: space-between; }
  section#about #what ul.illust li p { font-size: 1.35vw; line-height: 1.5; }
  section#about #what ul.illust li:first-child { width: 21.7%; }
  section#about #what ul.illust li:first-child p { top: -67px; left: -10px; right: 0; padding-left: 1.1vw; }
  section#about #what ul.illust li:nth-child(2) { width: 20.67%; margin-top: 32px; margin-left: 0; }
  section#about #what ul.illust li:nth-child(2) p { top: 9px; left: -2px; right: 0; padding-left: 1.1vw; }
  section#about #what ul.illust li:nth-child(3) { width: 27.143%; margin-top: 68px; }
  section#about #what ul.illust li:nth-child(3) p { top: -40px; left: 0; right: 0; padding-left: 1.2vw; }
  section#about #what ul.illust li:last-child { width: 20%; margin-top: -4px; margin-left: 0; margin-right: 0; }
  section#about #what ul.illust li:last-child p { font-size: 1.25vw; top: -12px; left: 0; right: 0; padding-left: 0.75vw; } }
@media (min-width: 1250px) { section#about #what ul.illust li p { font-size: 16.25px !important; } }
section#about #study h2 { padding-top: 8vw; }
section#about #study h2 span { display: block; text-align: center; }
section#about #study h2 span.cPink { margin-bottom: 0.5em; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 5.75vw; color: #f07069; font-weight: bold; line-height: 1.0; }
section#about #study h2 span.deco { font-size: 6.75vw; line-height: 1.33; position: relative; }
section#about #study h2 span.deco::before, section#about #study h2 span.deco::after { content: ""; width: 2px; height: 100%; background-color: #6b5c57; position: absolute; bottom: -2.4vw; }
section#about #study h2 span.deco::before { transform: rotate(-36deg); left: 9.33vw; }
section#about #study h2 span.deco::after { transform: rotate(36deg); right: 12.54vw; }
section#about #study ul { margin: 9vw 2.94% 0; }
section#about #study ul li { margin-bottom: 4vw; padding: 8.75vw 9.915% 12vw 10.12%; }
section#about #study ul li p.iconBox { width: 41.25vw; height: 41.25vw; margin: auto; }
section#about #study ul li.scrollInY.app { transition-delay: 0s; }
section#about #study li:first-child { background-color: #d3e7da; }
section#about #study li:nth-child(2) { background-color: #f8e1de; }
section#about #study li:nth-child(3) { background-color: #cee2f2; }
section#about #study li:nth-child(4) { background-color: #ebe1f3; }
section#about #study li:nth-child(5) { background-color: #ffedc7; margin-bottom: 0; }
section#about #study h3 { margin-top: 7.25vw; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 6.75vw; text-align: center; line-height: 1.37; }
@media (max-width: 1100px) and (min-width: 768px) { section#about #study h2 { padding-top: 40px; }
  section#about #study h2 span.cPink { font-size: 34px; letter-spacing: 1px; }
  section#about #study h2 span.deco { width: 11em; margin: auto; font-size: 50px; line-height: 1.33; }
  section#about #study h2 span.deco::before, section#about #study h2 span.deco::after { bottom: -2.4vw; }
  section#about #study h2 span.deco::before { left: -8%; }
  section#about #study h2 span.deco::after { right: -4%; }
  section#about #study ul { margin: 50px 2.94% 0; display: flex; justify-content: center; flex-wrap: wrap; }
  section#about #study ul li { width: calc((100% - 20px) / 2); margin-bottom: 20px; margin-right: 20px; padding: 30px 4% 52px; }
  section#about #study ul li p.iconBox { width: 76%; height: auto; }
  section#about #study ul li:nth-child(even) { margin-right: 0; }
  section#about #study ul li:nth-child(5) { margin-bottom: 0; margin-right: 0; }
  section#about #study h3 { margin-top: 1.15em; font-size: 27px; line-height: 1.33; } }
@media (min-width: 1101px) { section#about #study h2 { padding-top: 188px; }
  section#about #study h2 span.cPink { margin-bottom: 22px; font-size: 26px; }
  section#about #study h2 span.deco { font-size: 39px; line-height: 1.33; }
  section#about #study h2 span.deco::before, section#about #study h2 span.deco::after { bottom: -20px; }
  section#about #study h2 span.deco::before { left: 13.8%; }
  section#about #study h2 span.deco::after { right: 16%; }
  section#about #study ul { width: 82.43%; max-width: 1004px; margin: 33px auto 0; display: flex; justify-content: center; flex-wrap: wrap; }
  section#about #study ul li { width: calc((100% - 46px) / 3); margin-bottom: 22px; margin-right: 23px; padding: 38px 0 42px; }
  section#about #study ul li:last-child { margin-bottom: 20px; }
  section#about #study ul li p.iconBox { width: 170px; height: 170px; margin: auto; }
  section#about #study ul li:nth-child(3) { margin-right: 0; }
  section#about #study ul li:first-child.scrollInY.app, section#about #study ul li:nth-child(4).scrollInY.app { transition-delay: 0.25s; }
  section#about #study ul li:nth-child(2).scrollInY.app, section#about #study ul li:nth-child(5).scrollInY.app { transition-delay: 0.5s; }
  section#about #study ul li:nth-child(3).scrollInY.app { transition-delay: 0.75s; }
  section#about #study h3 { margin-top: 20px; font-size: 27px; line-height: 1.33; letter-spacing: 0; }
  section#about #study p.txt { width: 83%; margin: auto; font-size: 14px; line-height: 1.64; } }
section#about #voice { margin-top: 10vw; }
section#about #voice .wrap04 { width: 93.75%; margin: 0 auto; padding: 5vw 3.42%; border: 5px solid #f2ede9; }
section#about #voice h2 { margin-bottom: 6vw; font-size: 6.75vw; text-align: center; }
section#about #voice h2 span { padding: 0 5px 4px; background: url(../img/bg_stripe03.png) repeat-x left bottom; background-size: auto 15%; }
section#about #voice li { margin-bottom: 7.5vw; }
section#about #voice li p { padding: 1.85em 1.93em 2.75em; font-size: 3.5vw; line-height: 1.68; font-weight: bold; border-radius: 10px; position: relative; transition-delay: 0.75s; }
section#about #voice li p::after { content: ""; width: 6.13vw; height: 5.07vw; position: absolute; bottom: -4.8vw; left: 17.6vw; }
section#about #voice li img { display: block; position: relative; }
section#about #voice li:first-child p { background-color: #ffedc7; }
section#about #voice li:first-child p::after { background: url(../img/bubble_01.png) no-repeat left bottom; background-size: contain; }
section#about #voice li:first-child img { width: 39.9%; margin: -21px auto 0; }
section#about #voice li:nth-child(2) p { background-color: #d3e7da; }
section#about #voice li:nth-child(2) p::after { background: url(../img/bubble_02.png) no-repeat left bottom; background-size: contain; }
section#about #voice li:nth-child(2) img { width: 39.25%; margin: -24px auto 0; }
section#about #voice li:last-child p { background-color: #ebe1f3; }
section#about #voice li:last-child p::after { background: url(../img/bubble_03.png) no-repeat left bottom; background-size: contain; }
section#about #voice li:last-child img { width: 40.2%; margin: -31px auto 0; }
@media (min-width: 1101px) { section#about #voice { margin-top: 58px; }
  section#about #voice .wrap04 { width: 84.17%; max-width: 1010px; margin: 0 auto; padding: 70px 98px 38px; border: 10px solid #f2ede9; }
  section#about #voice h2 { margin-bottom: 70px; font-size: 39px; line-height: 1.0; }
  section#about #voice h2 span { background-size: auto; }
  section#about #voice li { margin-bottom: 55px; display: flex; align-items: flex-end; }
  section#about #voice li p { width: 60.54%; padding: 38px 54px 28px 40px; font-size: 16px; line-height: 1.69; border-radius: 15px; }
  section#about #voice li p::after { width: 0; height: 0; border-style: solid; border-width: 16px 0 16px 28px; bottom: auto; left: auto; }
  section#about #voice li:first-child p::after { background: none; border-color: transparent transparent transparent #ffedc7; top: 100px; right: -26px; }
  section#about #voice li:first-child img { width: 22.67%; height: auto; max-width: 170px; margin: 0 auto 0; }
  section#about #voice li:nth-child(2) p { padding-bottom: 45px; order: 2; }
  section#about #voice li:nth-child(2) p::after { background: none; border-color: transparent transparent transparent #d3e7da; transform: scale(-1, 1); top: 78px; left: -26px; }
  section#about #voice li:nth-child(2) img { width: 23.74%; max-width: 178px; margin: 0 auto 0; order: 1; }
  section#about #voice li:last-child p { padding-bottom: 64px; }
  section#about #voice li:last-child p::after { background: none; border-color: transparent transparent transparent #ebe1f3; top: 74px; right: -26px; }
  section#about #voice li:last-child img { width: 24.27%; max-width: 182px; margin: 0 auto 0; } }
section#about #privilege h2 { margin: 23vw 0 11.25vw; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 6.1875vw; text-align: center; line-height: 1.35; letter-spacing: 0.1em; }
section#about #privilege h2 span.deco { position: relative; }
section#about #privilege h2 span.deco::before, section#about #privilege h2 span.deco::after { content: ""; width: 6.25vw; height: 8.875vw; background: url(../img/privilege_h2_deco.svg) no-repeat left top; position: absolute; top: -3.74vw; }
section#about #privilege h2 span.deco::before { left: -14.6vw; }
section#about #privilege h2 span.deco::after { transform: scale(-1, 1); right: -3.2vw; }
section#about #privilege h2 span.cPink { font-size: 7.125vw; }
section#about #privilege .inner { padding: 7.75vw 0 6.5vw; background: url(../img/bg_stripe02.png) repeat left top; }
section#about #privilege ol { width: 87.2%; margin: auto; padding-bottom: 7.5vw; background-color: #fff; }
section#about #privilege ol li { margin-bottom: 9.25vw; padding-top: 8vw; }
section#about #privilege ol li:last-child { margin-bottom: 0; }
section#about #privilege ol p.numCircle { width: 22.75vw; height: 22.75vw; margin: 0 auto 5.5vw; padding-top: 4vw; text-align: center; border: 1px solid #f07069; border-radius: 50%; }
section#about #privilege ol p.numCircle span { width: 100%; font-size: 4.5vw; font-weight: bold; display: block; line-height: 1.0; }
section#about #privilege ol p.numCircle span.num { margin-top: 1.5vw; }
section#about #privilege ol p.numCircle span.num img { width: auto; height: 7.75vw; }
section#about #privilege ol div.txtBlock h3 { font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 4.25vw; letter-spacing: 0.05em; text-align: center; }
section#about #privilege ol div.txtBlock h3 span { display: block; font-size: 6.25vw; line-height: 1.148; }
section#about #privilege ol div.txtBlock div.spImg { width: 59.75vw; margin: 4.5vw auto 6.625vw; }
section#about #privilege ol div.txtBlock p.txt { padding: 0 7.34%; font-size: 3.5vw; line-height: 1.786; }
section#about #privilege ol div.pcImg { display: none; }
@media (max-width: 1100px) and (min-width: 768px) { section#about #privilege h2 { margin: 160px 0 60px; font-size: 46px; }
  section#about #privilege h2 span.deco::before, section#about #privilege h2 span.deco::after { width: 48px; height: 68px; top: -28px; }
  section#about #privilege h2 span.deco::before { left: -20%; }
  section#about #privilege h2 span.deco::after { right: -3.5%; }
  section#about #privilege h2 span.cPink { font-size: 52px; }
  section#about #privilege .inner { padding: 60px 0 50px; }
  section#about #privilege ol { padding-bottom: 60px; }
  section#about #privilege ol li { margin-bottom: 34px; padding-top: 44px; }
  section#about #privilege ol p.numCircle { width: 160px; height: 160px; margin: 0 auto 32px; padding-top: 32px; }
  section#about #privilege ol p.numCircle span { font-size: 28px; }
  section#about #privilege ol p.numCircle span.num { margin-top: 12px; }
  section#about #privilege ol p.numCircle span.num img { height: 54px; }
  section#about #privilege ol div.txtBlock h3 { font-size: 32px; }
  section#about #privilege ol div.txtBlock h3 span { font-size: 44px; }
  section#about #privilege ol div.txtBlock div.spImg { width: 72%; margin: 30px auto 42px; }
  section#about #privilege ol div.txtBlock p.txt { font-size: 22px; font-weight: 500; } }
@media (min-width: 1101px) { section#about #privilege { margin-top: 90px; }
  section#about #privilege h2 { width: 87.44%; max-width: 1065px; margin: 0 auto; padding-top: 2.273em; font-size: 33px; line-height: 1.35; background-color: #fff; }
  section#about #privilege h2 span.deco::before, section#about #privilege h2 span.deco::after { width: 33px; height: 47px; top: -22px; }
  section#about #privilege h2 span.deco::before { left: -7%; }
  section#about #privilege h2 span.deco::after { right: -6.25%; }
  section#about #privilege h2 span.cPink { font-size: 38px; }
  section#about #privilege .inner { padding: 68px 0 64px; }
  section#about #privilege ol { width: 87.44%; max-width: 1065px; margin: auto; padding: 48px 0 30px; }
  section#about #privilege ol li { margin-bottom: 66px; padding: 0 6.385% 0 7.04%; display: flex; }
  section#about #privilege ol li:last-child { margin-bottom: 0; }
  section#about #privilege ol li:last-child div.pcImg { width: 33.8%; }
  section#about #privilege ol p.numCircle { width: 118px; height: 118px; margin: 0; padding-top: 20px; }
  section#about #privilege ol p.numCircle span { width: 100%; font-size: 23px; }
  section#about #privilege ol p.numCircle span.num { margin-top: 6px; }
  section#about #privilege ol p.numCircle span.num img { height: 40px; }
  section#about #privilege ol div.txtBlock { width: 48.5%; margin: 0 auto 0 3.08%; }
  section#about #privilege ol div.txtBlock h3 { font-size: 24px; line-height: 1.458; letter-spacing: 0; text-align: left; }
  section#about #privilege ol div.txtBlock h3 span { display: block; font-size: 33px; line-height: 1.5; }
  section#about #privilege ol div.txtBlock div.spImg { display: none; }
  section#about #privilege ol div.txtBlock p.txt { margin-top: 16px; padding: 0 0; font-size: 14px; line-height: 1.64; letter-spacing: 0.05em; }
  section#about #privilege ol div.pcImg { display: block; width: 28.16%; } }

section#instructor .wrap, section#seminar .wrap { padding-top: 80px; padding-bottom: 50px; }
section#instructor h2, section#seminar h2 { margin: 0 auto 1.64em; padding-top: 0.8em; font-size: 6.25vw; line-height: 1.0; text-align: center; position: relative; }
section#instructor h2::before, section#seminar h2::before { content: ""; position: absolute; left: 0; right: 0; margin: auto; }
section#instructor h2 span, section#seminar h2 span { display: block; margin-top: 0.8em; font-family: "Marcellus", serif; font-size: 3.75vw; color: #aa9664; font-weight: normal; letter-spacing: 0.14em; }
section#instructor ul.areaTabList, section#seminar ul.areaTabList { margin: 0 8.27%; display: flex; flex-wrap: wrap; }
section#instructor ul.areaTabList li, section#seminar ul.areaTabList li { width: calc((100% - 7.5vw) / 3); margin-right: 3.75vw; margin-bottom: 3.75vw; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 5vw; text-align: center; line-height: 3.25; letter-spacing: 0.12em; border: 1px solid #aa9664; border-radius: 4px; background-color: #fff; }
section#instructor ul.areaTabList li.on, section#seminar ul.areaTabList li.on { color: #fff; background-color: #f07069; }
section#instructor h3, section#seminar h3 { width: 100%; height: 15vw; margin-bottom: 1.08em; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 6.25vw; line-height: 2.4; text-align: center; letter-spacing: 0.12em; background-color: #f2ede9; border: 1px solid #aa9664; border-radius: 3px; }
@media (max-width: 1100px) and (min-width: 768px) { section#instructor .wrap, section#seminar .wrap { padding-bottom: 90px; }
  section#instructor h2, section#seminar h2 { margin: 0 auto 1.0em; font-size: 48px; }
  section#instructor h2 span, section#seminar h2 span { font-size: 26px; }
  section#instructor ul.areaTabList, section#seminar ul.areaTabList { margin: 0 8.27%; }
  section#instructor ul.areaTabList li, section#seminar ul.areaTabList li { width: calc((100% - 80px) / 5); margin-right: 20px; margin-bottom: 20px; font-size: 24px; }
  section#instructor h3, section#seminar h3 { width: 100%; height: auto; margin: 0 auto 1.08em; font-size: 36px; } }
@media (min-width: 1101px) { section#instructor, section#seminar { width: 83.75%; max-width: 1005px; margin: 0 auto; }
  section#instructor .wrap, section#seminar .wrap { padding-top: 120px; padding-bottom: 150px; }
  section#instructor h2, section#seminar h2 { margin: 0 auto 1.41em; padding-top: 1em; font-size: 34px; letter-spacing: 0.12em; }
  section#instructor h2 span, section#seminar h2 span { margin-top: 1em; font-size: 18px; }
  section#instructor ul.areaTabList, section#seminar ul.areaTabList { margin: 0 0; display: flex; justify-content: space-between; flex-wrap: wrap; }
  section#instructor ul.areaTabList li, section#seminar ul.areaTabList li { width: calc((100% - 3.93%) / 9); margin-right: 0; margin-bottom: 0; font-size: 22px; line-height: 3.18; cursor: pointer; transition: background-color 0.2s ease,color 0.2s ease; }
  section#instructor ul.areaTabList li:hover, section#seminar ul.areaTabList li:hover { color: #fff; background-color: #aa9664; }
  section#instructor ul.areaTabList li.on:hover, section#seminar ul.areaTabList li.on:hover { background-color: #f07069; }
  section#instructor h3, section#seminar h3 { width: 100%; height: 70px; margin-bottom: 1.428em; padding-left: 1.07em; font-size: 28px; line-height: 2.6; text-align: left; } }

section#instructor h2 { margin-top: 16vw; }
section#instructor h2::before { width: 15vw; height: 16vw; background: url(../img/h2_icon_instructop.svg) no-repeat center center; background-size: 100% 100%; position: absolute; top: -16vw; }
section#instructor ul.areaTab01 li:nth-child(3n) { margin-right: 0; }
section#instructor .areaBox { width: 93.75%; margin: 13.25vw auto 0; }
section#instructor ul.staffWrap li { margin-bottom: 15vw; padding-top: 6.4%; border: 1px solid #aa9664; }
section#instructor ul.staffWrap div.pic { width: 37.5vw; height: 37.5vw; margin: 0 auto; border-radius: 50%; overflow: hidden; }
section#instructor ul.staffWrap p.name, section#instructor ul.staffWrap p.qualification, section#instructor ul.staffWrap dl.prof { margin-right: 6.4%; margin-left: 6.4%; }
section#instructor ul.staffWrap p.name { margin-top: 0.95em; margin-bottom: 0.82em; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 5.5vw; font-weight: bold; line-height: 1.0; letter-spacing: 0.12em; }
section#instructor ul.staffWrap p.name span.kana { padding-left: 0.785em; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 0.64em; font-weight: 500; letter-spacing: 0; }
section#instructor ul.staffWrap p.qualification { font-size: 3.5vw; line-height: 1.57; letter-spacing: 0; font-weight: 500; }
section#instructor ul.staffWrap dl.prof { margin-top: 3.5vw; border-top: 1px solid #aa9664; border-bottom: 1px solid #aa9664; }
section#instructor ul.staffWrap dl.prof dt { padding: 1.17em 0.23em 3.5vw 0.34em; font-family: "Marcellus", serif; font-size: 4.5vw; color: #aa9664; line-height: 1.0; letter-spacing: 0.12em; position: relative; }
section#instructor ul.staffWrap dl.prof dt::after { content: ""; width: 7.5vw; height: 7.5vw; background: url(../img/plus.svg) no-repeat center center; background-size: 3.75vw 3.75vw; background-color: #aa9664; position: absolute; top: calc(50% - (7.5vw / 2)); right: 0.34em; pointer-events: none; }
section#instructor ul.staffWrap dl.prof dt.on::after { background: url(../img/minus.svg) no-repeat center center; background-size: 4vw 0.56vw; background-color: #aa9664; }
section#instructor ul.staffWrap dl.prof dt.on + dd { display: block; }
section#instructor ul.staffWrap dl.prof dd { display: none; padding-bottom: 1em; font-size: 3.5vw; color: #231815; line-height: 1.57; letter-spacing: 0.01em; }
section#instructor ul.staffWrap dl.prof dd .specialty { padding-top: 3px; }
section#instructor ul.staffWrap dl.prof dd .specialty span { display: block; color: #6b5c57; font-weight: bold; }
section#instructor ul.staffWrap a { margin-top: 1.05em; padding-left: 3.05em; display: block; font-size: 4.75vw; color: #f07069; font-weight: bold; line-height: 3.37; background-color: #f2ede9; }
section#instructor ul.staffWrap a span { display: block; position: relative; }
section#instructor ul.staffWrap a span::before, section#instructor ul.staffWrap a span::after { content: ""; position: absolute; pointer-events: none; }
section#instructor ul.staffWrap a span::before { width: 4.75vw; height: 5vw; background: url(../img/icon_calendar.svg) no-repeat center center; background-size: 100% 100%; top: calc(50% - (4.75vw / 2)); left: -6.4vw; }
section#instructor ul.staffWrap a span::after { width: 2.75vw; height: 2.75vw; border-top: 2px solid #aa9664; border-right: 2px solid #aa9664; transform: rotate(45deg); top: calc(50% - 3.75vw / 2); right: 4vw; }
@media (max-width: 1100px) and (min-width: 768px) { section#instructor h2 { margin-top: 135px; }
  section#instructor h2::before { width: 100px; height: 100px; top: -100px; }
  section#instructor ul.areaTab01 { justify-content: center; }
  section#instructor ul.areaTab01 li:nth-child(3n) { margin-right: 20px; }
  section#instructor ul.areaTab01 li:nth-child(5n) { margin-right: 0; }
  section#instructor .areaBox { width: 90%; margin: 60px auto 0; }
  section#instructor ul.staffWrap li { margin-bottom: 80px; padding-top: 6.4%; }
  section#instructor ul.staffWrap div.pic { width: 260px; height: 260px; }
  section#instructor ul.staffWrap p.name { font-size: 38px; }
  section#instructor ul.staffWrap p.qualification { font-size: 22px; }
  section#instructor ul.staffWrap dl.prof { margin-top: 24px; }
  section#instructor ul.staffWrap dl.prof dt { padding: 1.17em 0.23em 1em 0.34em; font-size: 28px; }
  section#instructor ul.staffWrap dl.prof dt::after { width: 50px; height: 50px; background-size: 25px 25px; top: calc(50% - (50px / 2)); right: 0.5em; }
  section#instructor ul.staffWrap dl.prof dt.on::after { background-size: 25px 4px; }
  section#instructor ul.staffWrap dl.prof dd { padding-bottom: 1em; font-size: 22px; font-weight: 500; }
  section#instructor ul.staffWrap dl.prof dd .specialty { padding: 1em 0 0.35em; }
  section#instructor ul.staffWrap a { font-size: 26px; }
  section#instructor ul.staffWrap a span::before { width: 32px; height: 34px; top: calc(50% - (32px / 2)); left: -47px; }
  section#instructor ul.staffWrap a span::after { width: 16px; height: 16px; border-top: 3px solid #aa9664; border-right: 3px solid #aa9664; top: calc(50% - 16px / 2); right: 1.25em; } }
@media (min-width: 1101px) { section#instructor h2 { margin-top: 85px; }
  section#instructor h2::before { width: 80px; height: 85px; top: -85px; }
  section#instructor .areaBox { width: 100%; margin: 48px auto 0; }
  section#instructor ul.staffWrap { display: flex; flex-wrap: wrap; }
  section#instructor ul.staffWrap li { width: calc((100% - 4.762%) / 2); margin-bottom: 50px; margin-right: 4.762%; padding: 35px 0 70px; position: relative; }
  section#instructor ul.staffWrap li:nth-child(even) { margin-right: 0; }
  section#instructor ul.staffWrap div.pic { width: 206px; height: 206px; }
  section#instructor ul.staffWrap p.name, section#instructor ul.staffWrap p.qualification, section#instructor ul.staffWrap dl.prof { margin-right: 6.75%; margin-left: 6.75%; }
  section#instructor ul.staffWrap p.name { margin-top: 0.875em; margin-bottom: 0.67em; font-size: 24px; }
  section#instructor ul.staffWrap p.name span.kana { padding-left: 1.17em; font-size: 14px; }
  section#instructor ul.staffWrap p.qualification { font-size: 14px; line-height: 1.43; min-height: 4.25em; }
  section#instructor ul.staffWrap dl.prof { margin-top: 3.5vw; border-bottom: none; }
  section#instructor ul.staffWrap dl.prof dt { padding: 20px 0 4px 0; font-size: 18px; }
  section#instructor ul.staffWrap dl.prof dt::after { content: none; }
  section#instructor ul.staffWrap dl.prof dd { display: block; padding-bottom: 1.43em; font-size: 14px; line-height: 1.64; letter-spacing: 0.025em; }
  section#instructor ul.staffWrap dl.prof dd .specialty { padding-top: 3px; }
  section#instructor ul.staffWrap a { width: 100%; margin-top: 1.05em; padding-left: 3.05em; font-size: 18px; line-height: 3.89; position: absolute; bottom: 0; transition: background-color 0.2s ease; }
  section#instructor ul.staffWrap a span::before { width: 16px; height: 17px; top: calc(50% - (17px / 2)); left: -24px; }
  section#instructor ul.staffWrap a span::after { width: 12px; height: 12px; top: calc(50% - 12px / 2); right: 20px; transition: right 0.2s ease; }
  section#instructor ul.staffWrap a:hover { background-color: rgba(242, 237, 233, 0.5); }
  section#instructor ul.staffWrap a:hover span::after { right: 14px; } }

section#seminar { background-color: #f7f7f7; }
section#seminar h2 { margin-top: 13.25vw; }
section#seminar h2::before { width: 13.25vw; height: 13.25vw; background: url(../img/h2_icon_seminar.svg) no-repeat center center; background-size: 100% 100%; position: absolute; top: -13.25vw; }
section#seminar ul.areaTab02 { padding-top: 20vw; position: relative; }
section#seminar ul.areaTab02 li:first-child { margin-right: auto !important; margin-left: auto; position: absolute; top: 0; right: 0; left: 0; }
section#seminar ul.areaTab02 li:nth-child(3n+1) { margin-right: 0; }
section#seminar .areaBox02 { width: 93.75%; margin: 13.25vw auto 0; color: #3e3a39; }
section#seminar .areaBox02 li.borderBox { margin-bottom: 12.25vw; border: 1px solid #aa9664; background-color: #fff; }
section#seminar .areaBox02 .dataHead.flex { padding: 3vw 5.25vw 2.75vw; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; background-color: #f2ede9; }
section#seminar .areaBox02 .dataHead.flex p { font-size: 5.625vw; letter-spacing: 0.12em; }
section#seminar .areaBox02 .dataHead.flex .areaIcon { display: inline-block; width: 22.5vw; margin-right: 3vw; font-size: 4.5vw; line-height: 2.17; letter-spacing: 0.12em; text-align: center; border: 1px solid #aa9664; border-radius: 3px; background-color: #fff; }
section#seminar .areaBox02 .dataHead.flex p.date { margin-top: 2.5vw; padding-left: 9vw; font-size: 5.25vw; letter-spacing: 0.05em; position: relative; }
section#seminar .areaBox02 .dataHead.flex p.date::before { content: ""; width: 4.75vw; height: 5vw; background: url(../img/icon_calendar.svg) no-repeat left top; background-size: 100% 100%; position: absolute; top: 1.87vw; left: 1.6vw; }
section#seminar .areaBox02 .dataHead.flex p.date span.time { display: block; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 3.5vw; letter-spacing: 0; }
section#seminar .areaBox02 .picBox.sp { margin: 0 6.4% 0; border-bottom: 1px solid #aa9664; }
section#seminar .areaBox02 .picBox.sp .pic { width: 37.5vw; height: 37.5vw; margin: 4.5vw auto 5.75vw; border-radius: 50%; overflow: hidden; }
section#seminar .areaBox02 .picBox.sp .name { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 5.5vw; letter-spacing: 0.12em; font-weight: bold; line-height: 1.0; }
section#seminar .areaBox02 .picBox.sp .name span.kana { padding-left: 0.785em; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 3.5vw; font-weight: 500; letter-spacing: 0; }
section#seminar .areaBox02 .picBox.sp .qualification { margin: 1.05em 0 .9em; font-size: 3.5vw; line-height: 1.57; }
section#seminar .areaBox02 .txtBox { padding-top: 11vw; color: #231815; }
section#seminar .areaBox02 .place, section#seminar .areaBox02 .sTitle, section#seminar .areaBox02 .point, section#seminar .areaBox02 .plof { margin-right: 6.4%; margin-left: 6.4%; }
section#seminar .areaBox02 .place { padding: 0 3em 0.75em 1.1em; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 5vw; line-height: 1.95; position: relative; }
section#seminar .areaBox02 .place::before { content: ""; width: 4.25vw; height: 6.5vw; background: url(../img/icon_pin.svg) no-repeat left top; background-size: 100% 100%; position: absolute; top: 0; left: -0.8vw; }
section#seminar .areaBox02 .place span { display: block; margin-bottom: -1.6vw; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 3.25vw; color: #6b5c57; font-weight: bold; letter-spacing: 0; }
section#seminar .areaBox02 .place p { margin: 0.35em 0 0; line-height: 1.5; }
section#seminar .areaBox02 .place p span { display: block; color: #333; font-size: 3.74vw; }
section#seminar .areaBox02 .place a { padding: 3px 0.5em 0; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 3.5vw; color: #fff; line-height: 2.0; font-weight: bold; background-color: #aa9664; position: absolute; top: calc((100% - (7vw + 6px)) / 2); right: 0; }
section#seminar .areaBox02 .place a::after { content: ""; width: 0; height: 0; border-style: solid; border-width: 3.8vw 0 3.8vw 1.6vw; border-color: transparent transparent transparent #aa9664; position: absolute; bottom: 0; right: -1.6vw; }
section#seminar .areaBox02 .sTitle { padding: 3.6vw 0 3vw; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 4.25vw; font-weight: bold; line-height: 1.65; border-top: 1px solid #aa9664; border-bottom: 1px solid #aa9664; }
section#seminar .areaBox02 .point { margin-top: 0.5vw; border-bottom: 1px solid #aa9664; }
section#seminar .areaBox02 .point dt { color: #f07069; display: block; padding: 1.17em 0.23em 1.0em 0.34em; font-family: "Marcellus", serif; font-size: 4.5vw; font-weight: 500; line-height: 1.0; letter-spacing: 0.1em; position: relative; }
section#seminar .areaBox02 .point dt::after { content: ""; width: 7.5vw; height: 7.5vw; background: url(../img/plus.svg) no-repeat center center; background-size: 3.75vw 3.75vw; background-color: #aa9664; position: absolute; top: calc(50% - (7.5vw / 2)); right: 0.34em; pointer-events: none; }
section#seminar .areaBox02 .point dt.on::after { background: url(../img/minus.svg) no-repeat center center; background-size: 4vw 0.56vw; background-color: #aa9664; }
section#seminar .areaBox02 .point dt.on + dd { display: block; }
section#seminar .areaBox02 .point dd { display: none; margin: -0.75em 0 2.143em; font-size: 3.5vw; letter-spacing: 0.01em; }
section#seminar .areaBox02 .point dd ol { padding-left: 0.25em; }
section#seminar .areaBox02 .point dd ol li { font-weight: bold; }
section#seminar .areaBox02 .point dd p.subTxt { margin: 1em 0 0.65em; font-size: 3.75vw; color: #f07069; font-weight: bold; }
section#seminar .areaBox02 .point dd ul { padding-left: 1em; }
section#seminar .areaBox02 .point dd ul li { margin-bottom: 5px; text-indent: -1em; line-height: 1.43; font-weight: 500; }
section#seminar .areaBox02 .plof .pTitle { padding: 1.17em 0 0.75em; font-family: "Marcellus", serif; font-size: 4.5vw; color: #aa9664; line-height: 1.0; letter-spacing: 0.12em; position: relative; }
section#seminar .areaBox02 .plof .pTitle::after { content: ""; width: 7.5vw; height: 7.5vw; background: url(../img/plus.svg) no-repeat center center; background-size: 3.75vw 3.75vw; background-color: #aa9664; position: absolute; top: calc(50% - (7.5vw / 2)); right: 0.34em; pointer-events: none; }
section#seminar .areaBox02 .plof .pTitle.on::after { background: url(../img/minus.svg) no-repeat center center; background-size: 4vw 0.56vw; background-color: #aa9664; }
section#seminar .areaBox02 .plof .pTitle.on + .pdBox { display: block; }
section#seminar .areaBox02 .plof .pdBox { display: none; padding-bottom: 1em; color: #231815; font-size: 3.5vw; line-height: 1.57; letter-spacing: 0.01em; border-bottom: 1px solid #aa9664; }
section#seminar .areaBox02 .plof .gray { margin-top: 0.4em; color: #6b5c57; font-weight: bold; }
section#seminar .areaBox02 a.formBtn1 { margin-top: 1.53em; display: block; color: #fff; font-size: 4.75vw; line-height: 3.42; text-align: center; font-weight: bold; background-color: #f07069; position: relative; }
section#seminar .areaBox02 a.formBtn1::after { content: ""; width: 0.5em; height: 0.5em; border-top: 2px solid; border-right: 2px solid; transform: rotate(45deg); position: absolute; top: calc(50% - 0.7em / 2); right: 4vw; }
@media (max-width: 1100px) and (min-width: 768px) { section#seminar h2 { margin-top: 125px; }
  section#seminar h2::before { width: 85px; height: 85px; top: -85px; }
  section#seminar ul.areaTab02 { padding-top: 100px; position: relative; justify-content: center; }
  section#seminar ul.areaTab02 li:nth-child(3n+1) { margin-right: 20px; }
  section#seminar ul.areaTab02 li:nth-child(6n) { margin-right: 0; }
  section#seminar .areaBox02 { width: 90%; margin: 60px auto 0; }
  section#seminar .areaBox02 li.borderBox { margin-bottom: 80px; }
  section#seminar .areaBox02 .dataHead.flex { padding: 20px 5% 18px; }
  section#seminar .areaBox02 .dataHead.flex p { font-size: 36px; }
  section#seminar .areaBox02 .dataHead.flex .areaIcon { width: 5.6em; margin-right: 3.6%; font-size: 28px; line-height: 2.0; }
  section#seminar .areaBox02 .dataHead.flex p.date { margin-top: 0.5em; padding-left: 1.8em; font-size: 34px; line-height: 1.5; }
  section#seminar .areaBox02 .dataHead.flex p.date::before { width: 0.88em; height: 1.06em; top: 0.1em; left: 10px; }
  section#seminar .areaBox02 .dataHead.flex p.date span.time { font-size: 25px; }
  section#seminar .areaBox02 .picBox.sp .pic { width: 260px; height: 260px; margin: 34px auto 44px; }
  section#seminar .areaBox02 .picBox.sp .name { font-size: 38px; }
  section#seminar .areaBox02 .picBox.sp .name span.kana { font-size: 0.64em; }
  section#seminar .areaBox02 .picBox.sp .qualification { font-size: 22px; font-weight: 500; }
  section#seminar .areaBox02 .txtBox { padding-top: 40px; }
  section#seminar .areaBox02 .place { font-size: 36px; }
  section#seminar .areaBox02 .place::before { width: 28px; height: 46px; left: -6px; }
  section#seminar .areaBox02 .place span { margin-bottom: -0.55em; font-size: 22px; }
  section#seminar .areaBox02 .place p span { font-size: 24px; }
  section#seminar .areaBox02 .place a { padding: 3px 0.5em 2px; font-size: 20px; line-height: 2.0; }
  section#seminar .areaBox02 .place a::after { border-width: 23px 0 23px 13px; right: -12.75px; }
  section#seminar .areaBox02 .sTitle { padding: 0.87em 0 0.8em; font-size: 30px; }
  section#seminar .areaBox02 .point { margin-top: 4px; }
  section#seminar .areaBox02 .point dt { font-size: 30px; }
  section#seminar .areaBox02 .point dt::after { width: 50px; height: 50px; background-size: 25px 25px; top: calc(50% - (50px / 2)); }
  section#seminar .areaBox02 .point dt.on::after { background-size: 25px 4px; }
  section#seminar .areaBox02 .point dd { margin: -0.5em 0 2.143em; font-size: 20px; }
  section#seminar .areaBox02 .point dd p.subTxt { margin: 1em 0 0.35em; font-size: 20px; }
  section#seminar .areaBox02 .plof .pTitle { font-size: 30px; font-weight: 500; }
  section#seminar .areaBox02 .plof .pTitle::after { width: 50px; height: 50px; background-size: 25px 25px; top: calc(50% - (50px / 2)); }
  section#seminar .areaBox02 .plof .pTitle.on::after { background-size: 25px 4px; }
  section#seminar .areaBox02 .plof .pdBox { padding-bottom: 1.25em; font-size: 20px; font-weight: 500; }
  section#seminar .areaBox02 .plof .gray { margin-top: 0.6em; }
  section#seminar .areaBox02 a.formBtn1 { font-size: 30px; }
  section#seminar .areaBox02 a.formBtn1::after { right: 1em; } }
@media (min-width: 1101px) { section#seminar { width: 100%; max-width: 100%; padding-top: 92px; }
  section#seminar .wrap { width: 83.75%; max-width: 1005px; margin: auto; padding-top: 0; }
  section#seminar h2 { margin-top: 70px; }
  section#seminar h2::before { width: 70px; height: 70px; top: -70px; }
  section#seminar ul.areaTab02 { padding-top: 62px; justify-content: space-between; }
  section#seminar ul.areaTab02 li { width: calc((100% - 5.32%) / 5); margin-bottom: 26px; }
  section#seminar ul.areaTab02 li:first-child { position: static; margin: 0 0 26px 0 !important; }
  section#seminar ul.areaTab02 li:nth-child(3n+1) { margin-right: 0; }
  section#seminar .areaBox02 { width: 100%; margin: 40px auto 0; }
  section#seminar .areaBox02 li.borderBox { margin-bottom: 78px; }
  section#seminar .areaBox02 .dataHead.flex { padding: 20px 4.38% 16px 2.67%; display: flex; align-items: center; }
  section#seminar .areaBox02 .dataHead.flex p { font-size: 30px; }
  section#seminar .areaBox02 .dataHead.flex .areaIcon { width: 5.04em; margin-right: 9px; font-size: 24px; line-height: 2.19; }
  section#seminar .areaBox02 .dataHead.flex p.date { margin: 0 0 0 auto; padding-left: 0; font-size: 24px; letter-spacing: 0.05em; }
  section#seminar .areaBox02 .dataHead.flex p.date::before { width: 21px; height: 22px; top: calc(50% - 26px / 2); left: -7.5%; }
  section#seminar .areaBox02 .dataHead.flex p.date span.time { display: inline-block; font-size: 18px; }
  section#seminar .areaBox02 .flexpc { padding: 54px 4.57% 62px 6.286%; background-color: #fff; display: flex; justify-content: space-between; }
  section#seminar .areaBox02 .picBox.pc { margin-right: 8.5%; }
  section#seminar .areaBox02 .picBox.pc div.pic { width: 206px; height: 206px; border-radius: 50%; overflow: hidden; }
  section#seminar .areaBox02 .picBox.pc .name { margin-top: 0.625em; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 24px; text-align: center; line-height: 1.0; }
  section#seminar .areaBox02 .picBox.pc .name span { display: block; }
  section#seminar .areaBox02 .picBox.pc .name span.kanji { margin-bottom: 0.67em; font-size: 18px; font-weight: bold; }
  section#seminar .areaBox02 .picBox.pc .name span.kana { margin-top: 1.357em; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", "Marcellus", serif; font-size: 14px; }
  section#seminar .areaBox02 .txtBox { width: calc(100% - (206px + 8.5%)); padding-top: 0; }
  section#seminar .areaBox02 .place, section#seminar .areaBox02 .sTitle, section#seminar .areaBox02 .point, section#seminar .areaBox02 .plof { margin-right: 0; margin-left: 0; }
  section#seminar .areaBox02 .place { display: flex; padding: 0 4.5em 0 0; font-size: 24px; line-height: 1.5; font-weight: bold; }
  section#seminar .areaBox02 .place::before { width: 22px; height: 34px; top: -4px; left: -5.5%; }
  section#seminar .areaBox02 .place span { width: 86px; display: inline-block; margin-bottom: 0; padding-right: 14px; font-size: 18px; }
  section#seminar .areaBox02 .place p { width: calc(100% - 100px); margin: -4px 0 12px; line-height: 1.5; }
  section#seminar .areaBox02 .place p span { width: auto; font-size: 16px; }
  section#seminar .areaBox02 .place a { width: 95px; padding: 3px 0.56em 0 2.34em; font-size: 18px; line-height: 1.45; top: 0; right: 0; transition: opacity 0.3s ease; }
  section#seminar .areaBox02 .place a::before { content: ""; width: 16px; height: 12px; background: url(../img/icon_blank.svg) no-repeat center center; background-size: 100% 100%; position: absolute; top: calc(50% - 11px / 2); left: 0.67em; }
  section#seminar .areaBox02 .place a::after { border-width: 14.5px 0 14.5px 10px; bottom: 0; right: -10px; }
  section#seminar .areaBox02 .place a:hover { opacity: 0.6; }
  section#seminar .areaBox02 .sTitle { padding: 30px 0 22px; font-size: 22px; border-bottom: none; }
  section#seminar .areaBox02 .point { margin-top: 0; border-bottom: none; }
  section#seminar .areaBox02 .point dt { padding: 0 0 3px 0; font-size: 18px; letter-spacing: 0.1em; }
  section#seminar .areaBox02 .point dt::after { content: none; }
  section#seminar .areaBox02 .point dd { display: block; margin: 0 0 0; font-size: 14px; }
  section#seminar .areaBox02 .point dd ol { padding-left: 0; }
  section#seminar .areaBox02 .point dd p.subTxt { margin: 14px 0 0; font-size: 16px; }
  section#seminar .areaBox02 .plof .pTitle { padding: 20px 0 7px; font-size: 18px; }
  section#seminar .areaBox02 .plof .pTitle::after { content: none; }
  section#seminar .areaBox02 .plof .pdBox { display: block; padding-bottom: 0; font-size: 14px; border-bottom: none; }
  section#seminar .areaBox02 .plof .gray { margin-top: 0.4em; }
  section#seminar .areaBox02 a.formBtn1 { width: 94.8%; margin-top: 34px; font-size: 24px; line-height: 3.08; border-radius: 4px; transition: background-color 0.2s ease; }
  section#seminar .areaBox02 a.formBtn1::after { width: 0.5em; height: 0.5em; border-top: 3px solid; border-right: 3px solid; top: calc(50% - 0.7em / 2); right: 48px; transition: right 0.2s ease; }
  section#seminar .areaBox02 a.formBtn1:hover { background-color: #fa6961; }
  section#seminar .areaBox02 a.formBtn1:hover::after { right: 38px; } }

section.basicWrap { margin-top: -60px; padding: 120px 3% 0; font-size: 0.81em; font-weight: 500; line-height: 1.46; letter-spacing: 0.12em; }
section.basicWrap h2 { margin-bottom: 21px; font-size: 1.8em; color: #3e3a39; text-align: center; line-height: 1.0; }
section.basicWrap h2 span { display: block; margin-top: 10px; font-family: "Marcellus", serif; font-size: 0.645em; color: #aa9664; font-weight: normal; letter-spacing: 0.14em; }
@media (min-width: 1101px) { section.basicWrap { font-size: 14px; line-height: 1.57; letter-spacing: 0.25em; }
  section.basicWrap h2 { margin-bottom: 62px; font-size: 34px; }
  section.basicWrap h2 span { margin-top: 1em; font-size: 18px; } }

.goldWrap { padding: 24px 6.67% 38px; color: #3e3a39; border: 1px solid #aa9664; letter-spacing: 0.025em; line-height: 1.54; font-weight: 500; }
@media (min-width: 1101px) { .goldWrap { width: 82%; max-width: 995px; margin: auto; padding: 62px 8.64% 100px; border: 8.5px solid #e9e0da; } }

section#faq .goldWrap { padding: 24px 3.4% 38px 7.1%; }
section#faq h2 { margin: 74px 0 -5px; position: relative; }
section#faq h2::before { content: ""; width: 3.02em; height: 3.02em; background: url(../img/h2_icon_faq.svg) no-repeat center center; background-size: auto; position: absolute; top: -73px; left: calc(50% - 3.02em / 2); }
section#faq h3 { margin: 49px 0 30px; font-size: 15px; text-align: center; }
section#faq .qaBox p { position: relative; padding-left: 2.6em; }
section#faq .qaBox:last-child .answer { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
section#faq i { font-family: "Marcellus", serif; font-size: 2em; font-style: normal; position: absolute; top: -18px; }
section#faq p.question { padding-left: 2.3em; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; font-size: 1.15em; line-height: 1.62; letter-spacing: -0.05em; }
section#faq p.question i { color: #f07069; left: -2px; }
section#faq p.answer { margin: 21px 0 32px; padding-bottom: 21px; font-size: 1em; line-height: 1.54; letter-spacing: 0.05em; border-bottom: 1px solid #e3e4e4; }
section#faq p.answer i { color: #aa9664; top: -14px; left: 2px; }
section#faq .caution { color: #f07069; }
@media (min-width: 1101px) { section#faq .goldWrap { padding: 24px 6.024% 100px 7.83%; }
  section#faq h2 { margin: 124px 0 -43px; }
  section#faq h2::before { width: 94px; height: 78px; top: -98px; left: calc(50% - 78px / 2); }
  section#faq h3 { margin: 118px 0 43px; font-size: 20px; text-align: left; }
  section#faq .qaBox p { padding-left: 2.6em; }
  section#faq i { font-size: 44px; line-height: 1.0; top: -18px; }
  section#faq p.question { padding-left: 62px; padding-right: 30px; font-size: 20px; line-height: 1.62; letter-spacing: -0.05em; }
  section#faq p.question i { left: -2px; }
  section#faq p.answer { margin: 30px 0 50px; padding-left: 62px; padding-right: 30px; padding-bottom: 24px; font-size: 14px; line-height: 1.54; letter-spacing: 0.05em; }
  section#faq p.answer i { top: -14px; left: 2px; } }

section#company h2 { margin-bottom: 36px; }
section#company dl { font-size: 1.08em; }
section#company div.box { padding: 6px 2px 9px; border-bottom: 1px solid #e3e4e4; }
section#company div.box:first-child { border-top: 1px solid #e3e4e4; }
section#company dt { font-weight: bold; color: #6b5c57; }
section#company dt.mt { margin: 0.75em 0 0.3em; }
section#company dt.mt + dd { margin-bottom: 1em; }
section#company dd { letter-spacing: 0.05em; }
@media (min-width: 1101px) { section#company h2 { margin-bottom: 36px; }
  section#company dl { font-size: 14px; }
  section#company div.box { padding: 0.8em 0; display: flex; align-items: center; }
  section#company dt { width: 12.5em; padding-left: 1em; }
  section#company dt.mt { margin: -5em 0 0.3em; }
  section#company dt.mt + dd { margin-bottom: 1em; }
  section#company dd { width: calc(100% - 16.365%); padding-right: 0.57em; letter-spacing: 0.05em; } }

section#policy h2 { margin-bottom: 50px; }
section#policy ol li.bdrWrap { margin-bottom: 23px; padding-bottom: 17px; border-bottom: 1px solid #e3e4e4; }
section#policy ol li.bdrWrap:first-child { margin-top: 30px; padding-top: 17px; border-top: 1px solid #e3e4e4; }
section#policy ol li.bdrWrap dl dt { margin-top: 4px; font-weight: bold; }
section#policy ol li.bdrWrap ol.plBox { margin-top: 1em; }
section#policy ol li.bdrWrap ol.plBox li { padding-left: 0.8em; text-indent: -0.8em; }
section#policy p.tar { margin-top: -10px; }
@media (min-width: 1101px) { section#policy h2 { margin-bottom: 48px; }
  section#policy ol li.bdrWrap { margin-bottom: 20px; padding: 0 1.7% 18px; }
  section#policy ol li.bdrWrap:first-child { padding-top: 20px; }
  section#policy ol li.bdrWrap dl dt { margin-top: 4px; }
  section#policy ol li.bdrWrap ol.plBox { margin-top: 1em; }
  section#policy ol li.bdrWrap ol.plBox li { padding-left: 0.8em; text-indent: -0.8em; } }

#pageTop { width: 9.6vw; height: 9.6vw; position: fixed; bottom: -3em; right: 10px; }
#pageTop.scroll { bottom: 1.5em; }
#pageTop.stop { position: absolute; bottom: 1.5em; }
@media (max-width: 1100px) and (min-width: 768px) { #pageTop { width: 60px; height: 60px; right: 15px; } }
@media (min-width: 1101px) { #pageTop { width: 48px; height: 48px; bottom: -5em; right: 40px; cursor: pointer; transition: margin-top 0.2s ease; }
  #pageTop.scroll { bottom: 40px; }
  #pageTop.stop { bottom: 27.5em; }
  #pageTop:hover { margin-top: -1em; } }

footer { padding: 2em 0 1.47em; position: relative; }
footer .footLogo { text-align: center; }
footer .footLogo img { display: block; }
footer .footLogo img.logo { width: 24.5%; margin: 0 auto; }
footer .footLogo img.cName { width: 48.5%; margin: 2.75vw auto 5vw; }
footer .footBtn { display: none; }
footer nav { display: none; }
footer p.copy { font-size: 0.66em; font-weight: 800; text-align: center; line-height: 1.0; }
@media (max-width: 1100px) and (min-width: 768px) { footer .footLogo img.logo { width: 12.5%; max-height: 60px; }
  footer .footLogo img.cName { width: 35.5%; max-height: 20px; margin: 10px auto 25px; } }
@media (min-width: 1101px) { footer { margin-top: 100px; padding: 40px 8.4% 180px 10%; background-color: #f7f7f7; }
  footer .flex { display: flex; justify-content: space-between; align-items: center; }
  footer .footLogo { text-align: left; display: flex; }
  footer .footLogo img.logo { width: 112px; margin: 0 0; }
  footer .footLogo img.cName { width: 229px; margin: 0 0 0 20px; }
  footer .footBtn { display: block; width: 302px; }
  footer .footBtn a { font-size: 20px; line-height: 2.9; transition: background-color 0.2s ease; }
  footer .footBtn a::after { width: 0.5em; height: 0.5em; border-top: 2px solid; border-right: 2px solid; top: calc(50% - 0.65em / 2); transition: right 0.2s ease; }
  footer .footBtn a:hover { background-color: #fa6961; }
  footer .footBtn a:hover::after { right: 0.75em; }
  footer nav { display: block; margin-left: 132px; }
  footer nav ul { width: 540px; margin-top: 22px; display: flex; flex-wrap: wrap; }
  footer nav ul li { width: 50%; font-weight: 700; }
  footer nav ul li::before { content: "・"; }
  footer p.copy { margin-top: -1.25em; font-size: 14px; text-align: right; } }
