@charset "UTF-8";
/*@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Manrope:wght@200..800&family=Tinos:ital,wght@0,400;0,700;1,400;1,700&display=swap);*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
.gmenubtn.open p:after,.ispc,.istablet,.micromodal-slide.is-open,details,footer .inner>div:first-child a,main {
  display:block
}
.fix_bnr {
  width:100%;
  padding:0 4vw 2.66vw;
  position:fixed;
  bottom:0;
  z-index:99;
  display:none;
}
.micromodal-is-locked .fix_bnr {
  display:none !important;
}
.fix_bnr .two_btn {
  display:flex;
  justify-content:space-between;
}
.fix_bnr .two_btn a {
  height:64px;
  margin:0;
}
footer .wrap,footer:before,header,html {
  background:#fff
}
footer .col2 .inners>div:first-child a,footer .col2 .inners>div:first-child a:before,footer .col2 .inners>div:last-child a,footer .col2 .inners>div:last-child a:before {
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
}
body,footer .txt {
  font-size:.9375rem
}
.pb80,footer small {
  padding-bottom:80px
}
body,ul {
  margin:0
}
button,hr,input {
  overflow:visible
}
progress,sub,sup {
  vertical-align:baseline
}
.qmodal .modal__contents .inner ul li,.teachermodal .modal__contents .inner ul li {
  list-style:disc
}
.qmodal .modal__container,.qmodal .p-first__faq__a:before,.qmodal .p-first__faq__q:after,.qmodal .p-first__faq__q:before,.teachermodal .modal__container {
  align-content:center
}
.p-chugaku__course .img {
  filter:drop-shadow(5px 5px 5px rgb(0 0 0 / .2))
}
.p-chugaku__course .img img,.p-chugaku__course .img:before {
  clip-path:polygon(0 20%,100% 0%,100% 80%,0 100%)
}
.modal__content__inner>ul a.minus,.p-first__step li h3 {
  letter-spacing:-.05em
}
.p-chugaku__support>li,.p-first__question .list li,.p-tankyu__cal ul.num>li {
  counter-increment:mycounter
}
.p-chugaku__course .swiper-button-next,.p-chugaku__course .swiper-button-prev,.p-high__images>div {
  --swiper-navigation-size:13px
}
.c-lower__mainv h1,.c-lower__mainv p {
  text-shadow:0 0 9px rgb(35 24 21 / .4)
}
.swiper,li {
  list-style:none
}
* {
  box-sizing:border-box
}
.nmt100,.p-first__offset {
  margin-top:-100px
}
.mt120 {
  margin-top:120px
}
.color-b {
  color:#13388e
}
.fnt22 {
  font-size:1.5rem
}
.test {
  clip:rect(1px,1px,1px,1px);
  width:2px;
  height:2px
}
ul {
  padding:0
}
a:hover {
  text-decoration:none
}
.is-vhidden,.swiper-slide-invisible-blank {
  visibility:hidden
}
.issp,.istablet--hidden,.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev,.swiper-pagination-bullet:only-child,.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled {
  display:none!important
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:90px;
  line-height:1.15;
  -webkit-text-size-adjust:100%
}
body {
  -webkit-font-smoothing:antialiased;
  font-family:"Zen Kaku Gothic New", sans-serif;
  font-style:normal;
  color:#000;
  font-weight:500;
  line-height:1.14
}
.tc {
  text-align:center
}
.tl {
  text-align:left!important
}
.mt110 {
  margin-top:110px
}
.mt80,.p-contact .mt80 {
  margin-top:80px
}
.mb110 {
  margin-bottom:110px
}
.mb80,.p-contact .mb80 {
  margin-bottom:80px
}
.mb40,.modal .search {
  margin-bottom:40px
}
main {
  padding-top:109px
}
main.visible {
  visibility:visible!important
}
.fade {
  opacity:0;
  transform:translateY(30px);
  transition:opacity .6s,transform .6s
}
.fade-visible {
  opacity:1;
  transform:translateY(0)
}
header,header .inner {
  width:100%;
  margin:0 auto
}
header {
  max-width:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  width:100%;
  position:fixed;
  top:0;
  left:0;
  z-index:100;
  right:0
}
header .inner {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  height:54px
}
header .logo {
  margin:11px 0 0 9px
}
header .logo a {
  padding:0 !important;
  display:block;
}
header.open .logo a {
  display:none;
}
header .logo img {
  max-width:104px
}
.gmenubtn.open p:before,.obi,[hidden],header nav,template {
  display:none
}
header nav>ul {
  display:flex;
  padding:20px 0 0;
  gap:46px
}
header nav a,header nav span {
  padding:17px 0 30px;
  color:#000;
  display:block;
  font-size:1rem;
  letter-spacing:0;
  text-decoration:none;
  font-weight:500
}
header nav>ul>li {
  position:relative
}
header nav>ul li a:before,
header nav>ul>li>span:before {
  content:"";
  position:absolute;
  bottom:18px;
  left:0;
  width:100%;
  height:2px;
  background:#10378e;
  transform:scaleX(0);
  transition:ease .3s;
}
header nav>ul>li.search>a {
  padding-left:44px;
  position:relative;
}
header nav>ul>li.search>a::after {
  content:"";
  position:absolute;
  top:12px;
  left:0;
  width:28px;
  height:28px;
  background:url(../img/common/icon_search.svg) no-repeat 0 0;
  background-size:100% auto;
}
header nav>ul>li.search>a:before {
  width:calc(100% - 44px);
  left:44px;
}
header nav>ul>li ul {
  position:absolute;
  top:calc(100% - 5px);
  transform:translateY(10px);
  transition:opacity .3s,visibility .3s,transform .3s;
  visibility:hidden;
  width:max-content;
  z-index:1;
  background:#fff;
  border:2px solid #13388e;
  opacity:0;
  border-radius:12px;
  padding:25px 40px 25px 25px;
  box-shadow:0 0 5px 0 rgba(0, 0, 0, 0.2);
}
header nav>ul>li ul a {
  color:#10378e;
  font-size:1rem;
  padding:5px 0 5px 18px;
  width:fit-content;
  font-weight:500;
  position:relative
}
header nav>ul>li ul li a:before {
  width:calc(100% - 18px);
  height:1px;
  left:18px;
  bottom:0;
}
header nav>ul>li ul a:after {
  content:"";
  width:5px;
  height:2px;
  left:0;
  right:auto;
  border:0 !important;
  position:absolute;
  margin-top:8px;
  background:#10378e;
  transform:none !important;
}
header nav>ul>li ul a:focus-visible:after {
}
header nav>ul>li ul li + li {
  margin-top:5px;
}
header nav span {
  cursor:default;
}
header .contact {
  margin-left:auto
}
header .contact a,header .login a {
  font-size:min(2.2vw, 10px);
  position:relative;
  padding-top:25px;
  padding-bottom:0;
  white-space:nowrap
}
header .contact a:before {
  content:"";
  position:absolute;
  left:0;
  right:0;
  background:url(../img/common/icon_mail.svg) left top/contain no-repeat;
  width:24px;
  height:24px;
  margin:auto;
  top:0
}
header .login {
  margin-left:10px
}
header .login a:before {
  content:"";
  position:absolute;
  left:0;
  right:0;
  background:url(../img/common/icon_login.svg) left top/contain no-repeat;
  width:24px;
  height:24px;
  margin:auto;
  top:0
}

.spsearch {
  width:115px;
  position:absolute;
  top:19px;
  right:70px;
}
header.open .spsearch {
  display:none;
}
.spsearch a {
  color: #000;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
  display: block;
  padding: 0 0 0 26px;
  position:relative;
}
.spsearch a::after {
  content:"";
  position:absolute;
  top:3px;
  left:0;
  width:18px;
  height:18px;
  background:url(../img/common/icon_search.svg) no-repeat 0 0;
  background-size:100% auto;
}

.micromodal-is-locked,.wrapper {
  overflow:hidden
}
footer {
  padding-bottom:30px;
  position:relative
}
footer:before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:-1
}
footer .wrap {
  padding-top:1px;
  position:relative
}
footer .col2 {
  position:relative;
  z-index:1
}
footer .inner>div:first-child img,img {
  width:100%
}
footer .col2 .inners {
  display:grid;
  max-width:1146px;
  margin:0 auto 40px;
  font-size:.9375rem;
  grid-template-columns:1fr;
  gap:0;
  width:100%
}
a.page-numbers.next,a.page-numbers.prev {
  transform:translateY(-50%);
  width:22px;
  height:22px;
  font-size:0;
  position:relative
}
footer .col2 .inners>div {
  text-align:center;
  padding:50px 0
}
footer .col2 .inners>div:first-child {
  color:#fff;
  background:#13388e
}
footer .col2 .inners>div:first-child a {
  color:#13388e;
  background:#fff100;
  border:2px solid #13388e
}
footer .col2 .inners>div:first-child a:before {
  background:#13388e
}
footer .col2 .inners>div:first-child a:after {
  border-top:2px solid #fff;
  border-right:2px solid #fff
}
footer .col2 .inners>div:first-child a:focus-visible {
  background:#13388e;
  color:#fff100;
  border:2px solid #fff100
}
footer .col2 .inners>div:first-child a:focus-visible:before {
  background:#fff100
}
footer .col2 .inners>div:first-child a:focus-visible:after {
  border-color:#13388e
}
footer .col2 .inners>div:last-child {
  color:#13388e;
  background:#fff100
}
footer .col2 .inners>div:last-child a {
  color:#fff;
  background:#01b94d;
  border:2px solid #fff100
}
footer .col2 .inners>div:last-child a:before {
  background:#fff
}
footer .col2 .inners>div:last-child a:after {
  border-top:2px solid #01b94d;
  border-right:2px solid #01b94d
}
footer .col2 .inners>div:last-child a:focus-visible {
  background:#fff;
  color:#01b94d;
  border:2px solid #01b94d
}
footer .col2 .inners>div:last-child a:focus-visible:before {
  background:#01b94d
}
footer .col2 .inners>div:last-child a:focus-visible:after {
  border-color:#fff
}
a.page-numbers.next:before,a.page-numbers.prev:before,footer .col2 .inners a:after {
  top:50%;
  border-top:2px solid #13388e;
  border-right:2px solid #13388e
}
footer .col2 .inners a {
  display:block;
  margin:0 auto;
  font-size:1.125rem;
  width:fit-content;
  border-radius:34px;
  padding:16px 64px 16px 36px;
  position:relative
}
footer .col2 .inners a:before {
  content:"";
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:35px;
  height:35px;
  background:#fff100;
  border-radius:50%
}
footer .col2 .inners a:after {
  content:"";
  width:8px;
  height:8px;
  transform:translateY(-50%);
  margin-top:-5px;
  right:23px;
  position:absolute;
  transform:rotate(45deg)
}
footer .col2 h3 {
  font-weight:700;
  margin:20px 0;
  font-size:26px
}
footer .txt {
  text-align:center;
  font-weight:700;
  line-height:1.6;
  margin:50px 0 60px
}
footer .inner {
  max-width:1280px;
  width:calc(100% - 24px);
  margin:55px auto 0;
  z-index:1;
  display:flex;
  flex-direction:column;
  position:relative;
  align-items:center;
  background:#fff;
}
footer .inner>div:first-child {
  width:100%;
  padding:35px 3px 0;
  border-top:solid 1px #162219;
  text-align:center;
  order:2
}
footer .inner>div:first-child>div {
  width:234px;
  margin:0 auto
}
footer .inner>div:first-child>a {
  background:#10378e;
  width:100%;
  max-width:343px;
  height:80px;
  display:flex;
  justify-content:center;
  align-items:center;
  color:#fff;
  margin:35px auto 15px;
  font-size:1.125rem;
  padding:0;
  border-radius:10px
}
footer .inner>div:last-child {
  width:328px;
  display:flex;
  flex-wrap:wrap;
  margin:0 auto;
  padding-bottom:0;
  border-bottom:0;
}
footer .inner>div:last-child > div:nth-child(1),
footer .inner>div:last-child > div:nth-child(3),
footer .inner>div:last-child > div:nth-child(4) {
  padding-left:35px;
  padding-right:48px;
}
footer .inner>div:last-child > div:nth-child(3) {
  margin-top:-22px;
}
footer .inner>div:last-child > div:nth-child(4) {
  width:100%;
}
footer .ch3 {
  margin-top:10px;
  margin-bottom:35px
}
footer .ch4,footer ul+div {
  margin-top:20px
}
footer .ch4 {
  width: fit-content;
  text-align: center;
}
footer .ch4 h5 {
  margin-bottom:0
}
footer .ch4 ul {
  display:flex;
  gap:3%
}
footer .ch3 ul .insta {
  margin-top:20px;
}
footer .ch4 ul p {
  font-size:.65rem;
  line-height:1.6;
  text-align:center
}
footer a {
  color:#000;
  text-decoration:none;
  font-weight:700
}
footer div>a,footer div>span {
  display:block;
  font-weight:700;
  width:fit-content;
  font-size:.9375rem;
  white-space:nowrap;
  margin-bottom:5px
}
footer ul a {
  font-size:.75rem;
  line-height:2
}
footer ul a.blank {
  display:inline-block;
  padding-right:1.2em;
  background:url(../img/common/icon_blank.svg) no-repeat right 0 top 7px;
  background-size:9px auto;
}
footer .insta img {
  width:16px;
  height:16px;
  margin-right:4px
}
footer small {
  display:block;
  font-size:.75rem;
  text-align:center;
  font-weight:700
}
footer .inner>div:first-child>a .icon {
  color:#fff;
  font-size:1.125rem;
  font-weight:500;
  line-height:1;
  letter-spacing:.1em;
  padding:0 23px 0 0;
  position:relative;
}
footer .inner>div:first-child>a .icon::before {
  content:"";
  width:16px;
  height:16px;
  display:block;
  background:url(../img/common/icon_link_arrow_w.svg) no-repeat 0 0;
  background-size:100% auto;
  opacity:.6;
  position:absolute;
  top:50%;
  right:0;
  transform:translateY(-50%);
}
ul.page-numbers {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:1.25em
}
a.page-numbers,span.page-numbers {
  text-decoration:none;
  color:#13388e;
  width:40px;
  height:40px;
  border-radius:50%;
  background:#fff;
  border:2px solid #13388e;
  aspect-ratio:1/1;
  display:block;
  text-align:center;
  align-content:center
}
.page-numbers.current {
  background:#13388e;
  color:#fff
}
.page-numbers.dots {
  border:none
}
a.page-numbers.prev {
  left:0;
  top:50%;
  border:none;
  background:0 0
}
a.page-numbers.prev:before {
  content:"";
  width:12px;
  height:12px;
  right:19px;
  position:absolute;
  margin-top:4px;
  transform:rotate(-135deg)
}
a.page-numbers.next {
  right:-40px;
  top:50%;
  border:none
}
.gmenubtn p:after,.gmenubtn p:before {
  top:3px;
  margin:auto;
  left:0;
  content:"";
  right:0
}
a.page-numbers.next:before {
  content:"";
  width:12px;
  height:12px;
  right:19px;
  position:absolute;
  margin-top:2px;
  transform:rotate(45deg)
}
.is-opened .c-btn01--03:after {
  -webkit-mask-image:url(../img/common/icon_plus2.svg);
  mask-image:url(../img/common/icon_plus2.svg)
}
.grecaptcha-badge {
  z-index:10;
  visibility:hidden
}
#custom-tooltip {
  position:absolute;
  background:#333;
  color:#fff;
  padding:6px 10px;
  font-size:13px;
  border-radius:4px;
  white-space:nowrap;
  pointer-events:none;
  display:none;
  z-index:10000
}
h1 {
  font-size:2em;
  margin:.67em 0
}
hr {
  box-sizing:content-box;
  height:0
}
.modal__container,.modal__title,.scroll-hint-icon,[type=checkbox],[type=radio],legend {
  box-sizing:border-box
}
code,kbd,pre,samp {
  font-family:monospace,monospace;
  font-size:1em
}
a {
  background-color:transparent
}
abbr[title] {
  border-bottom:none;
  text-decoration:underline;
  text-decoration:underline dotted
}
.c-btn01,.c-news__list li a,.modal__content__inner>ul a,.p-school--contact a,.p-school__list a,.p-top__bnrswiper .swiper-slide a {
  text-decoration:none
}
b,strong {
  font-weight:bolder
}
small {
  font-size:80%
}
sub,sup {
  font-size:75%;
  line-height:0;
  position:relative
}
sub {
  bottom:-.25em
}
sup {
  top:-.5em
}
img {
  vertical-align:middle;
  height:auto;
  border-style:none
}
button,input,optgroup,select,textarea {
  font-family:inherit;
  font-size:100%;
  line-height:1.15;
  margin:0
}
button,select {
  text-transform:none
}
[type=button],[type=reset],[type=submit],button {
  -webkit-appearance:button
}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner {
  border-style:none;
  padding:0
}
[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring {
  outline:ButtonText dotted 1px
}
fieldset {
  padding:.35em .75em .625em
}
legend {
  color:inherit;
  display:table;
  max-width:100%;
  padding:0;
  white-space:normal
}
textarea {
  overflow:auto
}
[type=checkbox],[type=radio] {
  padding:0
}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
  height:auto
}
[type=search] {
  -webkit-appearance:textfield;
  outline-offset:-2px
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance:none
}
::-webkit-file-upload-button {
  -webkit-appearance:button;
  font:inherit
}
summary {
  display:list-item
}
.gmenubtn {
  cursor:pointer;
  outline:0;
  padding:0;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  display:flex;
  flex-direction:column;
  height:47px;
  width:52px;
  align-items:center;
  justify-content:center;
  top:0;
  z-index:10000;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:transform .3s;
  background:#10378e;
  border:0;
  border-radius:0 0 0 15px;
  color:#fff;
  text-align:center;
}
.gmenubtn span {
  transition:ease .3s;
  width:30px;
  height:2px;
  background:#fff;
  margin:3.5px 0
}
.gmenubtn p {
  margin-top:0;
  padding-top:20px;
  margin-bottom:0;
  position:relative;
  color:#000
}
.gmenubtn p:before {
  position:absolute;
  width:20px;
  height:20px;
  background:url(../img/spmenu01.svg) left top/contain no-repeat
}
.gmenubtn p:after {
  position:absolute;
  width:14px;
  height:14px;
  background:url(../img/spmenu02.svg) left top/contain no-repeat;
  display:none
}
.gmenubtn.open span {
  background:#fff;
}
.gmenubtn.open span:first-of-type {
  transform:translateY(4px) rotate(45deg);
  animation:none
}
.gmenubtn.open span:last-child {
  display: block !important;
  transform:translateY(-5px) rotate(-45deg);
  animation:none
}
.gmenubtn.open:hover span:first-child {
  animation:none
}
.gmenubtn.open:hover span:last-child {
  animation:paused!important
}
.modal {
  z-index:99;
  position:relative
}
.modal__content {
  line-height:1.5;
  min-height:100vh;
  overflow-x:hidden;
  display:flex;
  flex-direction:column;
  width:100%;
  margin:0 auto;
  position:relative;
  padding-top:55px
}
.modal__content:before,
.modal__content:after,
.modal__content__inner>ul a:after {
  display:none !important;
}
.modal__content__inner {
  max-width:1000px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  width:100%;
  padding:0 15px 15px
}
.modal__content__inner>ul {
  padding:0 25px;
}
.modal__content__inner>ul>li {
  margin-bottom:15px
}
.modal__content__inner>ul>li.link {
  margin-bottom:0
}
.modal__content__inner>ul>li>a,.modal__content__inner>ul>li>span {
  color:#10378e;
  font-size:1.3125rem;
  font-weight:700;
  display:block;
  padding-top:10px;
  padding-bottom:10px;
  padding-left:15px;
  margin-left:0;
  position:relative;
  width:100%
}
.modal__content__inner>ul>li>a:after,
.modal__content__inner>ul>li>span:after {
  bottom:auto;
  top:0;
  margin:0;
  border:0;
  transform:none;
}
.modal__content__inner>ul>li li+li {
  margin-top:8px
}
.modal__content__inner>ul a {
  color:#10378e;
  font-size:1.125rem;
  font-weight:500;
  display:block;
  padding:2px 5px 2px 18px;
  margin-left:15px;
  width:fit-content;
  position:relative
}
.modal__content__inner>ul a::before {
  content:"";
  width:6px;
  height:2px;
  display:block;
  background:#10378e;
  border:0;
  position:absolute;
  bottom:auto;
  top:15px;
  left:0;
}
.modal__content__inner>ul>li>a.toplink::after {
  content:"";
  width:19px;
  height:19px;
  display:inline-block !important;
  position:relative;
  top:1px;
  left:10px;
  background:url(../img/common/icon_btn_arrow_top.svg) no-repeat 0 0;
  background-size:100% auto;
}
.modal__content__inner>ul>li>a::before {
  display:none;
}
.modal__content__inner>ul a.none {
  border:none;
  padding:8px 0
}
.micromodal-slide,.modal__content__inner>ul a.none:after {
  display:none
}
.modal__content__inner>ul a[target=_blank]:after {
  background:url(../img/link.svg) left top/contain no-repeat;
  width:12px;
  height:9px;
  right:6px;
  transform:none;
  border:none
}
.modal__content__inner .link a:after {
  transform:rotate(45deg)
}
.modal__content__inner>div {
  text-align:center;
  font-weight:700;
  color:#13388e;
  display:flex;
  margin:35px 7px 10px
}
.line_link,
.insta_link {
  width:48%;
  display:flex;
}
.insta_link {
  width:52%;
}
.line_link a,
.insta_link a {
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
}
.line_link a::before,
.line_link a::after,
.insta_link a::before,
.insta_link a::after {
  display:none !important;
}
.line_link a img,
.insta_link a img {
  width:47px;
  margin-right:7px;
}
.line_link a p,
.insta_link a p {
  color:#646464;
  font-size:.8125rem;
  line-height:1.61;
  margin:0;
  text-align:left;
  white-space:nowrap;
}
.line_link a p br,
.insta_link a p br {
  display:none;
}
.c-btn01--05,
.c-btn01--07 {
  display:flex;
  align-items:center;
}
.c-aboutcat a,.c-btn01--05:before,.c-btn01--06,.c-btn01--07:before {
  background:#fff
}
.c-btn01--05:focus-visible {
  background:#fff;
  color:#01b94d
}
.c-btn01--05:focus-visible:before {
  background:#01b94d
}
.c-btn01--05:focus-visible:after {
  border-color:#fff
}
.c-btn01--06 {
  border:none;
  border-bottom:1px solid #13388e;
  border-radius:0;
  margin-bottom:100px;
  min-width:auto;
  padding-right:40px
}
.c-btn01--06:before {
  width:20px;
  height:20px;
  right:12px
}
.c-btn01--06:after {
  right:19px;
  width:4px;
  height:4px;
  margin-top:-4px;
  border-top:1px solid #fff;
  border-right:1px solid #fff;
  transition-duration:.2s;
  transform:rotate(135deg)
}
.c-btn01--06:focus-visible {
  background:#fff;
  color:#13388e
}
.c-btn01--06:focus-visible:before {
  background:#13388e
}
.c-btn01--06:focus-visible:after {
  border-color:#fff;
  margin-top:-3px;
  transform:rotate(135deg)
}
.modal__content__inner .student_login {
  width: 100%;
  height: 80px;
  margin: 20px auto 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #10378e;
  border-radius: 10px;
  transition: ease .3s;
}
.modal__content__inner .student_login .icon,
.two_btn a .icon {
  color: #fff !important;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .1em;
  display:inline-block;
  padding:0 23px 0 0;
  position:relative;
}
.modal__content__inner .student_login .icon::before,
.two_btn a .icon::before {
  content:"";
  width:16px;
  height:16px;
  display:block;
  background:url(../img/common/icon_link_arrow_w.svg) no-repeat 0 0;
  background-size:100% auto;
  opacity:.6;
  position:absolute;
  top:50%;
  right:0;
  transform:translateY(-50%);
}
.modal__content__inner>div.two_btn {
  margin:8px 0 0;
  display:flex;
  justify-content:space-between;
}
.two_btn a {
  text-decoration:none;
  width:calc(50% - 3.5px);
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff100;
  border-radius: 10px;
  transition: ease .3s;
}
.two_btn a:nth-child(2) {
  background: #6cda00;
}
.two_btn a .icon {
  color: #000 !important;
}
.two_btn a .icon::before {
  background-image:url(../img/common/icon_link_arrow.svg);
  opacity:1;
}

.modal .search {
  border:none;
  position:relative;
  display:flex;
  margin-top:30px
}
.modal .search input {
  flex-grow:1;
  padding:.7rem 0 .7rem .8rem;
  border:1px solid #333;
  border-radius:1.5rem;
  width:100%;
  font-size:1rem
}
.modal .search button {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:0;
  cursor:pointer;
  padding:.8rem .9rem .8rem .8rem;
  border-radius:0 1.5rem 1.5rem 0;
  border:none;
  width:15px;
  height:16px;
  background:url(../img/search.svg) left center/15px 16px no-repeat;
  color:#333;
  font-size:1rem;
  transition:.5s
}
.modal__overlay {
  position:fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:#fff;
  display:flex;
  justify-content:center;
  margin:auto;
  overflow:auto
}
.modal__container {
  width:100%
}
.modal__header {
  display:flex;
  justify-content:space-between;
  align-items:center
}
.modal__title {
  margin-top:0;
  margin-bottom:0;
  font-weight:600;
  font-size:1.25rem;
  line-height:1.25;
  color:#00449e
}
.modal__close {
  background:0 0;
  border:0
}
.modal__header .modal__close:before {
  content:"✕"
}
.qmodal,.teachermodal {
  z-index:20000
}
.qmodal .modal__overlay,.teachermodal .modal__overlay {
  background:#0006
}
.teachermodal .modal__contents {
  background:#fff;
  max-width:1024px;
  width:calc(100% - 32px);
  margin:0 auto;
  position:relative
}
.teachermodal .modal__contents .inner {
  padding:40px
}
.teachermodal .modal__contents .inner div {
  font-weight:700;
  font-size:.875rem
}
.teachermodal .modal__contents .inner ul {
  padding-left:20px;
  margin:10px 0 40px;
  line-height:2;
  font-size:.875rem
}
.teachermodal .modal__contents .inner h2 {
  font-size:1.5rem
}
.teachermodal .modal__contents .inner p {
  line-height:2;
  margin-bottom:0
}
.teachermodal .img {
  aspect-ratio:1/.6;
  position:relative
}
.teachermodal .img img {
  height:100%;
  object-fit:cover
}
.teachermodal .img>div {
  position:absolute;
  right:20px;
  bottom:0;
  display:flex;
  gap:0 30px;
  font-weight:700;
  flex-direction:column;
  align-items:flex-end
}
.teachermodal .img>div div {
  background:#fff100;
  padding:10px 20px;
  border-radius:0 10px 0 0;
  color:#13388e
}
.teachermodal .img>div p {
  background:#13388e;
  padding:10px 20px;
  border-radius:0 10px 0 0;
  color:#fff;
  margin:10px 0
}
.qmodal .modal-close,.teachermodal .modal-close {
  background:url(../img/common/close.svg) left top/contain no-repeat;
  width:34px;
  height:34px;
  position:absolute;
  right:10px;
  cursor:pointer;
  z-index:1;
  top:10px
}
.teachermodal--room .img {
  aspect-ratio:1/.4
}
.teachermodal--root .img,.teachermodal--v .img {
  aspect-ratio:inherit
}
.teachermodal--room h3 {
  margin-top:0;
  font-size:1.5rem
}
.teachermodal--root .modal__contents {
  max-width:650px
}
.scroll-hint-shadow-wrap,.teachermodal--v .modal__container {
  position:relative
}
.teachermodal--v .modal__container:before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:1px;
  height:calc(100% + 30px);
  background:#000
}
.teachermodal--v .modal__contents {
  overflow:hidden;
  border-radius:20px 20px 0 0;
  background:#fffbd6
}
.teachermodal--v .modal__contents .inner {
  padding:40px 20px
}
.teachermodal--v h3 {
  font-size:1.5rem;
  text-align:center;
  margin:0
}
.qmodal .modal__contents {
  background:#fff;
  max-width:916px;
  width:calc(100% - 32px);
  margin:0 auto;
  position:relative;
  border-radius:0 20px 0 0;
  padding:24px;
  line-height:2
}
.qmodal .modal__contents .inner {
  padding:40px
}
.qmodal .modal__contents .inner div {
  font-weight:700
}
.qmodal .modal__contents .inner ul {
  padding-left:20px
}
.qmodal .modal__contents .inner h2 {
  font-size:1.4375rem
}
.qmodal .modal__contents .inner p {
  line-height:1.6;
  margin-bottom:0
}
.qmodal .p-first__faq__q {
  font-weight:700;
  font-size:1.125rem;
  padding-top:60px;
  padding-left:0;
  padding-right:0
}
.qmodal .p-first__faq__q:after {
  font-size:1rem;
  font-weight:700
}
.qmodal .p-first__faq__a {
  font-weight:700;
  font-size:1rem;
  padding-top:50px;
  padding-left:0;
  color:#13388e;
  padding-right:0
}
@keyframes mmfadeIn {
  0% {
    opacity:0
  }
  to {
    opacity:1
  }
}
@keyframes mmfadeOut {
  0% {
    opacity:1
  }
  to {
    opacity:0
  }
}
@keyframes mmslideIn {
  0% {
    transform:translateY(15%)
  }
  to {
    transform:translateY(0)
  }
}
@keyframes mmslideOut {
  0% {
    transform:translateY(0)
  }
  to {
    transform:translateY(-10%)
  }
}
.micromodal-slide[aria-hidden=true] .modal__overlay {
  animation:.3s cubic-bezier(0,0,.2,1) mmfadeOut
}
.micromodal-slide[aria-hidden=true] .modal__container {
  animation:.3s cubic-bezier(0,0,.2,1) mmslideOut
}
.micromodal-slide .modal__container,.micromodal-slide .modal__overlay {
  will-change:transform
}
@keyframes scroll-hint-appear {
  0% {
    transform:translate(40px);
    opacity:0
  }
  10% {
    opacity:1
  }
  50%,to {
    transform:translate(-40px);
    opacity:0
  }
}
.scroll-hint-icon {
  position:absolute;
  top:calc(50% - 25px);
  left:calc(50% - 60px);
  width:120px;
  height:auto;
  border-radius:5px;
  transition:opacity .3s;
  opacity:0;
  background:#000000b3;
  text-align:center;
  padding:20px 10px 10px
}
.scroll-hint-icon-wrap {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  max-height:100%;
  pointer-events:none
}
.scroll-hint-text {
  font-size:10px;
  color:#fff;
  margin-top:5px
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity:.8
}
.scroll-hint-icon:before {
  display:inline-block;
  width:40px;
  height:40px;
  color:#fff;
  vertical-align:middle;
  text-align:center;
  content:"";
  background-size:contain;
  background-position:center center;
  background-repeat:no-repeat;
  background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=)
}
.scroll-hint-icon:after {
  content:"";
  width:34px;
  height:14px;
  display:block;
  position:absolute;
  top:10px;
  left:50%;
  margin-left:-20px;
  background-repeat:no-repeat;
  background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity:0;
  transition-delay:2.4s
}
.l-col,.l-scol {
  margin:0 auto
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity:1
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation:1.2s linear 2 scroll-hint-appear
}
.scroll-hint-icon-white {
  background-color:#fff;
  box-shadow:0 4px 5px #0006
}
.p-chugaku__career__block,.p-contact__block {
  box-shadow:1px 1px 10px #0000001a
}
.scroll-hint-icon-white:before {
  background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=)
}
.scroll-hint-icon-white:after {
  background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==)
}
.scroll-hint-icon-white .scroll-hint-text {
  color:#000
}
.scroll-hint-shadow-wrap:after {
  width:20px;
  background:linear-gradient(270deg,#00000026 0,#0000 16px,#0000);
  right:0;
  pointer-events:none;
  z-index:1;
  opacity:0;
  visibility:hidden
}
.scroll-hint-shadow-wrap:before {
  width:20px;
  background:linear-gradient(90deg,#00000026 0,#0000 16px,#0000);
  left:0;
  pointer-events:none;
  z-index:1;
  opacity:0;
  visibility:hidden
}
.scroll-hint-shadow-wrap.is-right-scrollable:after,.scroll-hint-shadow-wrap:has(.scroll-hint.is-right-scrollable):after {
  opacity:1;
  visibility:visible
}
.scroll-hint-shadow-wrap.is-left-scrollable:before,.scroll-hint-shadow-wrap:has(.scroll-hint.is-left-scrollable):before {
  opacity:1;
  visibility:visible
}
.l-col {
  max-width:1400px;
  width:calc(100% - 80px);
  position:relative
}
.l-scol {
  max-width:1024px;
  width:calc(100% - 32px);
  position:relative;
  z-index:2
}

#consult {
  padding-top:1px;
  background:#fff;
}
.consult_area {
  width:100%;
  max-width:1024px;
  margin:82px auto 0;
  padding:0;
  position:relative;
}
.consult_area .text {
  position:absolute;
  top:50px;
  left:60px;
  z-index:2;
}
.consult_area .text h2 {
  color:#10378e;
  font-size:1.5625rem;
  font-weight:700;
  line-height:1;
  margin:0;
}
.consult_area .text h2 .st {
  font-size:2.5rem;
  font-weight:700;
  line-height:1;
  letter-spacing:.1em;
  padding:30px 0 0;
  display:inline-block;
  position:relative;
}
.consult_area .text h2 .st::before {
  content:"";
  width:7px;
  height:7px;
  display:block;
  background:#10378e;
  border-radius:50%;
  position:absolute;
  top:15px;
  left:50%;
  transform:translateX(-50%);
}
.consult_area .text p {
  color:#10378e;
  font-size:1.25rem;
  font-weight:500;
  line-height:1.75;
  margin:30px 0 0;
}
.consult_area .image {
  width:100%;
  position:relative;
  z-index:1;
  display:flex;
  justify-content:flex-end;
}
.consult_area .image img {
  width:619px;
}

@media screen and (min-width:1024px) {
  .istablet {
    display:none!important
  }
  .istablet--hidden {
    display:block!important
  }
  html {
    scroll-padding-top:0
  }
  header nav {
    display:block
  }
  header .contact {
    margin-right:4px
  }
  header .contact a:after,header .contact a:before,header .login a:after,header .login a:before {
    content:"";
    position:absolute
  }
  header .contact a,header .contact a:after,header .contact a:before,header .login a,header .login a:after,header .login a:before {
    transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
  }
  header .contact a {
    white-space:nowrap;
    display:flex;
    align-items:center;
    height:35px;
    color:#13388e;
    font-size:.8125rem;
    padding:2px 5cap 0 30px;
    background:#fff100;
    border-radius:20px;
    border:1px solid #13388e;
    position:relative
  }
  header .contact a:before {
    right:10px;
    left:inherit;
    top:50%;
    transform:translateY(-50%);
    width:22px;
    height:22px;
    background:#13388e;
    border-radius:50%
  }
  header .contact a:after {
    width:5px;
    height:5px;
    right:19px;
    border-top:2px solid #fff100;
    border-right:2px solid #fff100;
    transform:rotate(45deg)
  }
  header .contact a:focus-visible {
    background:#13388e;
    color:#fff100
  }
  header .contact a:focus-visible:before {
    background:#fff100
  }
  header .contact a:focus-visible:after {
    border-color:#13388e
  }
  header .login {
    margin-left:0
  }
  header .login a {
    display:flex;
    align-items:center;
    white-space:nowrap;
    height:35px;
    color:#fff100;
    font-size:.8125rem;
    padding:2px 50px 0 30px;
    background:#13388e;
    border-radius:20px;
    border:1px solid #13388e;
    position:relative
  }
  header .login a:before {
    right:10px;
    top:50%;
    transform:translateY(-50%);
    width:22px;
    left:inherit;
    height:22px;
    background:#fff100;
    border-radius:50%
  }
  header .login a:after {
    width:5px;
    height:5px;
    right:19px;
    border-top:2px solid #13388e;
    border-right:2px solid #13388e;
    transform:rotate(45deg)
  }
  header .login a:focus-visible {
    background:#fff100;
    color:#13388e
  }
  header .login a:focus-visible:before {
    background:#13388e
  }
  header .login a:focus-visible:after {
    border-color:#fff100
  }
  footer .col2 .inners {
    gap:0 20%
  }
  .gmenubtn {
    display:none
  }
  .p-top__bnrswiper {
    background:rgba(221,217,209,.7);
    padding:23px 20px 85px!important
  }
  .p-top__bnrswiper .swiper-slide {
    width:368px !important;
    margin-left:25px !important;
    margin-right:25px !important;
  }

}

.p-chugaku__career__con ul.list1 li:before {
  top:11px
}


@media screen and (max-width:639px) {
.line_link a p br,
.insta_link a p br {
  display:inline;
}

}


/* 768以上 */
@media screen and (min-width:768px) {
  .fix_bnr {
    width:64px;
    padding:0;
    position:fixed;
    bottom:10px;
    right:10px;
  }
  .fix_bnr .two_btn {
    display:block;
  }
  .fix_bnr .two_btn a {
    writing-mode:vertical-lr;
    width:100%;
    height:min(33.33vh, 312px);
    margin:0;
    border-radius:7px;
  }
  .fix_bnr .two_btn a + a {
    margin-top:3px;
  }
  .fix_bnr .two_btn a .icon {
    color: #000 !important;
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
    display: inline-block;
    padding: 0 0 26px;
  }
  .two_btn a .icon::before {
    width: 10px;
    height: 10px;
    background: url(../img/common/icon_link_arrow.svg) no-repeat 0 0;
    background-size: 100% auto;
    opacity: 1;
    position: absolute;
    top: auto;
    right: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  header .inner {
    max-width:1024px;
    height:90px
  }
  header .logo {
    margin:20px 0 0
  }
  header .logo img {
    max-width:168px
  }
  .gmenubtn.open p:before,.gmenubtn.open span:nth-of-type(2),.obi,[hidden],template {
    display:none
  }
  header nav {
    display:block
  }
  header nav>ul {
    display:flex;
    padding:20px 0 0;
    gap:46px
  }
  header nav a,header nav span {
    padding:17px 0 30px;
    color:#000;
    display:block;
    font-size:1rem;
    letter-spacing:0;
    text-decoration:none;
    font-weight:500
  }
  header nav>ul>li {
    padding:0;
    position:relative
  }
  header nav>ul>li:has(ul):before {
    display:none;
  }
  header nav>ul li a:before,
  header nav>ul>li>span:before {
    content:"";
    position:absolute;
    bottom:18px;
    left:0;
    width:100%;
    height:2px;
    background:#10378e;
    transform:scaleX(0);
    transition:ease .3s;
  }
  header nav>ul>li.search>a {
    color:#10378e;
    padding-left:44px;
    position:relative;
  }
  header nav>ul>li.search>a:before {
    width:calc(100% - 44px);
    left:44px;
  }
  header nav>ul>li ul {
    position:absolute;
    top:calc(100% - 5px);
    transform:translateY(10px);
    transition:opacity .3s,visibility .3s,transform .3s;
    visibility:hidden;
    width:max-content;
    z-index:1;
    background:#fff;
    border:2px solid #13388e;
    opacity:0;
    border-radius:12px;
    padding:25px 40px 25px 25px;
    box-shadow:0 0 5px 0 rgba(0, 0, 0, 0.2);
  }
  header nav>ul>li ul a {
    color:#10378e;
    font-size:1rem;
    padding:5px 0 5px 18px;
    width:fit-content;
    font-weight:500;
    position:relative
  }
  header nav>ul>li ul li a:before {
    width:calc(100% - 18px);
    height:1px;
    left:18px;
    bottom:0;
  }
  header nav>ul>li ul a:after {
    content:"";
    width:5px;
    height:2px;
    left:0;
    position:absolute;
    margin-top:8px;
    background:#10378e;
  }
  header nav>ul>li ul a:focus-visible:after {
  }
  header nav>ul>li ul li + li {
    margin-top:5px;
  }
  header nav span {
    cursor:default;
  }
  header .contact {
    margin-left:auto
  }
  header .contact a,header .login a {
    font-size:min(2.2vw, 10px);
    position:relative;
    padding-top:25px;
    padding-bottom:0;
    white-space:nowrap
  }
  header .contact a:before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    background:url(../img/common/icon_mail.svg) left top/contain no-repeat;
    width:24px;
    height:24px;
    margin:auto;
    top:0
  }
  header .login {
    margin-left:10px
  }
  header .login a:before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    background:url(../img/common/icon_login.svg) left top/contain no-repeat;
    width:24px;
    height:24px;
    margin:auto;
    top:0
  }
  .fnt22 {
    font-size:1.5rem
  }
  footer .col2:before {
    content:"";
    position:absolute;
    width:50%;
    height:100%;
    background:#13388e;
    z-index:-1
  }
  footer .col2:after {
    content:"";
    position:absolute;
    width:50%;
    height:100%;
    background:#fff100;
    z-index:-1;
    top:0;
    left:50%
  }
  footer .col2 .inners {
    font-size:1rem;
    padding:50px 0;
    width:calc(100% - 32px);
    grid-template-columns:1fr 1fr
  }
  footer .col2 .inners>div {
    padding:0
  }
  footer .col2 .inners>div:first-child,footer .col2 .inners>div:last-child {
    background:0 0
  }
  footer .inner {
    width:100%;
    max-width:1024px;
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    margin:70px auto 40px;
  }
  footer .inner>div:first-child {
    width:344px;
    min-width:344px;
    order:0;
    padding-top:0;
    border-top:0;
  }
  footer .inner>div:last-child > div:nth-child(1),
  footer .inner>div:last-child > div:nth-child(3),
  footer .inner>div:last-child > div:nth-child(4) {
    padding-left:0;
    padding-right:0;
  }
  footer .inner>div:last-child > div:nth-child(3) {
    margin-top:0;
  }
  footer .inner>div:last-child > div:nth-child(4) {
    width:auto;
  }
  footer .inner>div:first-child>div {
    width:233px;
    margin:0 auto
  }
  footer .inner>div:last-child {
    display:flex;
    flex-direction:row;
    width:100%;
    padding:8px 0 0 45px;
    margin-left:56px;
    border-left:1px solid #162219;
    border-bottom:none;
    margin-bottom:0
  }
  footer .inner>div:last-child div:nth-child(1) {
    width:151px;
    min-width:151px;
  }
  footer .inner>div:last-child div:nth-child(2) {
    width:147px;
    min-width:147px;
  }
  footer .inner>div:last-child div:nth-child(3) {
    width:128px;
    min-width:128px;
  }
  footer .ch3 {
    margin-top:0;
    margin-bottom:0
  }
  footer ul li.insta {
    margin-top:40px;
  }
  footer ul a {
    font-size:.75rem
  }
  footer .inner>div:first-child>a {
    width:100%;
    max-width:338px;
    height:80px;
    margin:35px auto 0;
    padding:0;
    display:flex;
    justify-content:center;
    align-items:center;
    background:#10378e;
    border-radius:10px;
    transition:ease .3s;
  }
  .spsearch {
    display:none;
  }

  .teachermodal .img,.teachermodal--v .img {
    aspect-ratio:1/.3
  }
  .teachermodal .img>div {
    flex-direction:row;
    align-items:center
  }
  .teachermodal .img>div p {
    margin:20px 0
  }
  .teachermodal--v .modal__contents .inner {
    padding:40px 20%;
    min-height:235px
  }
  .teachermodal--v h3 {
    margin-bottom:40px
  }
  .qmodal .modal__contents {
    padding:37px
  }
  .qmodal .p-first__faq__q {
    font-size:1.25rem
  }
  .qmodal .p-first__faq__q:after {
    font-size:1.25rem;
    top:12px
  }
  .qmodal .p-first__faq__a {
    padding-top:60px;
    font-size:1.25rem
  }
  .qmodal .p-first__faq__a:after {
    top:2px
  }
  .p-top__bnrswiper {
    padding:50px 0 100px!important
  }
}

@media screen and (max-width:768px) {
  footer .ch4 h5 {
    margin-top:0;
    font-size:.6rem
  }
  footer .ch4 ul p {
    font-size:.45rem
  }
  footer .ch4 ul img {
    width: 96px;
  }
}

/* 768〜1024 */
@media screen and (min-width:768px) and (max-width:1100px) {
  html {
    scroll-padding-top:8.18vw;
  }
  main {
    padding-top:9.9vw
  }
  header .inner {
    max-width:1100px;
    height:8.18vw;
    padding:0 3.45vw;
  }
  header .logo {
    margin:1.81vw 0 0
  }
  header .logo img {
    max-width:15.27vw
  }
  .gmenubtn {
    display:none;
  }
  .gmenubtn.open p:before,.gmenubtn.open span:nth-of-type(2),.obi,[hidden],template {
    display:none
  }
  header nav {
    display:block
  }
  header nav>ul {
    padding:1.81vw 0 0;
    gap:4.18vw
  }
  header nav a,header nav span {
    font-size:1.45vw;
    padding:1.54vw 0 2.72vw;
  }
  header nav>ul li a:before,
  header nav>ul>li>span:before {
    bottom:1.63vw;
    height:2px;
  }
  header nav>ul>li.search>a {
    padding-left:4vw;
  }
  header nav>ul>li.search>a::after {
    top:1.09vw;
    width:2.54vw;
    height:2.54vw;
  }
  header nav>ul>li.search>a:before {
    width:calc(100% - 4vw);
    left:4vw;
  }
  header nav>ul>li ul {
    top:calc(100% - .45vw);
    transform:translateY(.9vw);
    border:2px solid #13388e;
    border-radius:1.09vw;
    padding:2.27vw 3.63vw 2.27vw 2.27vw;
    box-shadow:0 0 .45vw 0 rgba(0, 0, 0, 0.2);
  }
  header nav>ul>li ul a {
    font-size:1.45vw;
    padding:.45vw 0 .45vw 1.63vw;
  }
  header nav>ul>li ul li a:before {
    width:calc(100% - 1.63vw);
    left:1.63vw;
  }
  header nav>ul>li ul a:after {
    width:.45vw;
    height:2px;
    margin-top:.72vw;
  }
  header nav>ul>li ul li + li {
    margin-top:.45vw;
  }
  header .contact a,header .login a {
    font-size:min(2.2vw, 10px);
    padding-top:2.27vw;
  }
  header .contact a:before {
    width:2.18vw;
    height:2.18vw;
  }
  header .login {
    margin-left:.9vw
  }
  header .login a:before {
    width:2.18vw;
    height:2.18vw;
  }
  .spsearch {
    display:none;
  }
}


@media screen and (max-width:767px) {
  .ispc {
    display:none
  }
  .issp {
    display:block!important
  }
  .tlsp {
    text-align:left!important
  }
  .fn {
    font-weight:400!important
  }
  .l-col {
    width:calc(100% - 40px)
  }
  #tankyu,.c-ttl,.p-contact .add,.p-school__list>li,body {
    scroll-margin-top:63px
  }
  html {
    scroll-padding-top:54px;
  }
  main {
    padding-top:63px
  }

  .consult_area {
    width:auto;
    margin:25.33vw 0 0 6.4vw;
  }
  .consult_area .text {
    top:14.4vw;
    left:1.06vw;
  }
  .consult_area .text h2 {
    font-size:4.8vw;
    line-height:1;
  }
  .consult_area .text h2 .st {
    font-size:6.4vw;
    padding:4.26vw 0 0;
  }
  .consult_area .text h2 .st::before {
    width:1.33vw;
    height:1.33vw;
    top:2.4vw;
  }
  .consult_area .text p {
    font-size:3.46vw;
    margin:5.33vw 0 0;
  }
  .consult_area .image img {
    width:100%;
  }
}

@media (any-hover:hover) {
  header nav>ul>li:hover:before {
    transform:rotate(-45deg);
    margin-top:16px
  }
  header nav>ul>li:hover span+ul,header nav>ul>li:hover>a+ul {
    opacity:1;
    transform:translateY(0);
    visibility:visible
  }
  header nav>ul>li ul a:hover:after {
    right:-12px
  }
  footer .col2 .inners>div:first-child a:hover {
    background:#13388e;
    color:#fff100;
    border:2px solid #fff100
  }
  footer .col2 .inners>div:first-child a:hover:before {
    background:#fff100
  }
  .c-btn01:hover:after,footer .col2 .inners>div:first-child a:hover:after {
    border-color:#13388e
  }
  footer .col2 .inners>div:last-child a:hover {
    background:#fff;
    color:#01b94d;
    border:2px solid #01b94d
  }
  footer .col2 .inners>div:last-child a:hover:before {
    background:#01b94d
  }
  footer .col2 .inners>div:last-child a:hover:after {
    border-color:#fff
  }
  .c-btn01:hover:before {
    background:#fff100
  }
  .c-btn01:hover {
    background:#13388e;
    color:#fff100
  }
  .c-btn01--03:hover:after {
    background:#13388e
  }
  .c-btn01--04:hover {
    background:#fff;
    color:#13388e
  }
  .c-btn01--04:hover:before {
    background:#13388e
  }
  .c-btn01--04:hover:after {
    border-color:#fff
  }
  .c-btn01--05:hover {
    background:#fff;
    color:#01b94d
  }
  .c-btn01--05:hover:before {
    background:#01b94d
  }
  .c-btn01--05:hover:after {
    border-color:#fff
  }
}

@media (any-hover:hover) {
  .c-btn01--06:hover {
    background:#fff;
    color:#13388e
  }
  .c-btn01--06:hover:before {
    background:#13388e
  }
  .c-btn01--06:hover:after {
    border-color:#fff;
    margin-top:-3px;
    transform:rotate(135deg)
  }
  .c-voicecat a:hover {
    background:#13388e;
    color:#fff
  }
}
.c-aboutcat a:before,.c-btn02:after,.c-btn02:before,.c-teacherlist .btn:before {
  transform:translateY(-50%);
  content:""
}
.c-blogcat a,.c-btn02,.c-voicecat a {
  font-weight:700;
  border-radius:0 10px 0 0;
  text-decoration:none;
  display:block;
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1);
  color:#13388e;
  font-size:1.125rem;
  text-align:center
}
.c-btn01--07:after {
  border-top:2px solid #9b36b7;
  border-right:2px solid #9b36b7
}
.c-btn02 {
  margin:0 auto;
  padding:14px 26px 14px 0;
  min-width:234px;
  background:#fff100;
  border:1px solid #13388e
}
.c-blogcat,.c-bloglist,.c-lower__mainv>div,.c-teacherlist {
  width:calc(100% - 32px);
  max-width:1024px
}
.swiper-slide,.swiper-wrapper {
  transition-property:transform
}
.c-btn02:before {
  position:absolute;
  right:10px;
  top:50%;
  width:20px;
  height:20px;
  background:#13388e;
  border-radius:50%;
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
}
.c-btn02:after {
  width:5px;
  height:5px;
  top:50%;
  margin-top:-5px;
  right:17px;
  border-top:1px solid #fff;
  border-right:1px solid #fff;
  position:absolute;
  transform:rotate(135deg);
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
}
.c-voicecat {
  display:grid;
  margin:50px auto 0;
  gap:12px;
  grid-template-columns:repeat(2,1fr)
}
.c-blogcat a,.c-voicecat a {
  background:#fff;
  padding:15px 0;
  border:2px solid #13388e
}
.c-voicecat a:focus-visible {
  background:#13388e;
  color:#fff
}
.c-aboutcat {
  display:grid;
  margin:30px auto 70px;
  gap:24px;
  grid-template-columns:repeat(1,1fr)
}
.c-aboutcat a {
  display:block;
  font-size:1.125rem;
  text-decoration:none;
  color:#13388e;
  text-align:center;
  padding:15px 0;
  font-weight:700;
  border-radius:0 10px 0 0;
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
}
.c-bloglist a,.c-teacherlist li {
  text-decoration:none;
  color:#000;
  padding:24px;
  font-size:1rem;
  background:#fff;
  font-weight:700
}
.c-aboutcat a.current {
  background:#13388e;
  color:#fff
}
.c-aboutcat a:before {
  position:absolute;
  right:20px;
  top:50%;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#13388e
}
.c-aboutcat a:after {
  content:"";
  width:5px;
  height:5px;
  right:28px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  position:absolute;
  top:calc(50% - 5px);
  transform:rotate(135deg);
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
}
.c-bloglist .img img,.c-teacherlist .img img {
  height:100%;
  object-fit:cover;
  transition:transform .3s cubic-bezier(.075, .82, .165, 1)
}
.c-aboutcat a:focus-visible {
  background:#13388e;
  color:#fff
}
.c-aboutcat a:focus-visible:before {
  background:#fff
}
.c-aboutcat a:focus-visible:after {
  border-color:#13388e
}
.c-blogcat {
  display:grid;
  margin:50px auto 0;
  gap:24px;
  grid-template-columns:repeat(2,1fr)
}
.c-blogcat a.current {
  background:#13388e;
  color:#fff
}
.c-blogcat a:focus-visible {
  background:#13388e;
  color:#fff
}
.c-bloglist,.c-teacherlist {
  display:grid;
  margin:0 auto 70px;
  gap:24px;
  grid-template-columns:1fr
}
.c-bloglist a {
  display:block;
  border-radius:16px;
  border:2px solid #000
}
.c-bloglist a:focus-visible img {
  transform:scale(1.06)
}
.c-bloglist>li {
  display:grid;
  grid-template-rows:subgrid
}
.c-bgline,.c-bloglist .new {
  position:relative
}
.c-bloglist .new:after {
  content:"";
  position:absolute;
  left:-10px;
  top:20px;
  z-index:2;
  width:70px;
  height:32px;
  background:url(../img/common/icon_new.svg) left top/cover no-repeat
}
.c-bloglist .cat span {
  font-size:.75rem;
  background:#13388e;
  width:fit-content;
  display:inline-block;
  padding:7px 21px 5px;
  color:#fff100;
  border-radius:0 5px 0 0;
  margin-right:5px;
  margin-bottom:5px
}
.c-cal__header>div:first-child,.c-cal__sheader>div:first-child {
  width:166px
}
.c-bloglist .img {
  border:1px solid #f3f3f3;
  margin:0 0 16px;
  overflow:hidden;
  aspect-ratio:1/.6;
  border-radius:0 10px 0 0
}
.c-bloglist .ttl {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:1rem
}
.c-bloglist .col2 {
  font-size:.875rem;
  display:grid;
  grid-template-columns:1fr 2fr;
  justify-content:space-between;
  gap:0 10px;
  background:#f5f5f5;
  padding:5px;
  border-radius:3px
}
.c-bloglist .col2 span:last-child,.c-teacherlist .ttl,.c-teacherlist li p {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden
}
.c-bloglist .col2 span:last-child {
  width:fit-content;
  margin-left:auto;
  -webkit-line-clamp:1
}
.c-teacherlist li {
  display:block;
  border-radius:0 20px 0 0;
  filter:drop-shadow(1px 1px 10px rgb(0 0 0 / .1))
}
.c-teacherlist li p {
  font-size:.9375rem;
  line-height:2;
  margin-bottom:20px;
  -webkit-line-clamp:5
}
.c-teacherlist .img {
  overflow:hidden;
  border-radius:0 20px 0 0;
  aspect-ratio:1/1
}
.c-teacherlist .ttl {
  margin-bottom:20px;
  font-size:1rem
}
.c-teacherlist .room {
  text-align:center;
  font-size:.9375rem
}
.c-teacherlist .room+div {
  margin-top:5px
}
.c-teacherlist .btn {
  text-align:center;
  padding:10px 0;
  border-radius:40px;
  border:2px solid #13388e;
  position:relative;
  width:100%;
  margin-top:20px!important;
  cursor:pointer;
  font-weight:700;
  color:#13388e;
  transition:background-color .3s cubic-bezier(.075, .82, .165, 1)
}
.c-teacherlist .btn:before {
  position:absolute;
  right:10px;
  left:inherit;
  top:50%;
  width:22px;
  height:22px;
  background:#13388e;
  border-radius:50%
}
.c-teacherlist .btn:after {
  content:"";
  width:5px;
  height:5px;
  right:20px;
  top:50%;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  position:absolute;
  transform:rotate(45deg) translateY(-50%);
  margin-top:-1px;
  transition:background-color .3s
}
.c-teacherlist .btn:focus-visible {
  color:#fff;
  background:#13388e
}
.c-teacherlist .btn:focus-visible:before {
  background:#fff
}
.c-teacherlist .btn:focus-visible:after {
  border-color:#13388e
}
@media (any-hover:hover) {
  .c-aboutcat a:hover,.c-blogcat a:hover {
    background:#13388e;
    color:#fff
  }
  .c-aboutcat a:hover:before,.c-teacherlist .btn:hover:before {
    background:#fff
  }
  .c-aboutcat a:hover:after,.c-teacherlist .btn:hover:after {
    border-color:#13388e
  }
  .c-bloglist a:hover img {
    transform:scale(1.06)
  }
  .c-teacherlist .btn:hover {
    color:#fff;
    background:#13388e
  }
}
.c-cal .nav .item,.c-cal__onlinetab div.current {
  background:#13388e;
  color:#fff100
}
.c-teacherlist--room .img {
  aspect-ratio:1/.6
}
.c-teacherlist--room li {
  filter:none;
  padding:0
}
.c-teacherlist--room .ttl {
  font-size:.9375rem
}
.c-teacherlist--room .btn {
  margin-inline:auto;
  max-width:70%;
  display:block!important;
  font-weight:700
}
.c-cal .nav.hide,.c-cal.hidden {
  display:none
}
.c-teacherlist--feature .img {
  aspect-ratio:1/.6;
  margin-bottom:30px
}
.c-bgline:before,.c-lower__mainv:before {
  content:"";
  margin:auto;
  transform:translate(-50%);
  right:0;
  left:50%
}
.c-teacherlist--feature li {
  filter:none;
  background:0 0;
  padding:0
}
.c-teacherlist--feature li p {
  font-size:1rem
}
.c-cal .content .item span,.c-cal__opitem--atama>div span,.c-cal__opitem>div span {
  font-size:1.875rem
}
.c-teacherlist--feature .ttl {
  color:#13388e;
  text-align:center
}
.c-z3 {
  z-index:3;
  position:relative
}
.c-z11 {
  z-index:11;
  position:relative
}
.c-bgline:before {
  position:absolute;
  top:0;
  bottom:0;
  pointer-events:none;
  width:2455px;
  height:2734px;
  background:url(../img/common/bg.svg) center top/contain repeat-y
}
.c-bgline--offset:before {
  background:url(../img/common/bg.svg) center top 270px/contain no-repeat
}
.c-bgline--offset2:before {
  background:url(../img/common/bg.svg) center top 870px/contain no-repeat
}
.c-bgline--offset3:before {
  background:url(../img/common/bg.svg) center top 870px/contain repeat-y;
  height:100%
}
.c-bgline--offset4 {
  margin-top:110px
}
.c-bgline--topmain:before {
  top:-250px
}
.c-lower__mainv {
  height:100vh;
  margin-top:-120px;
  position:relative;
  align-content:center
}
@media screen and (orientation:landscape) {
  .c-lower__mainv {
    min-height:700px
  }
}
.c-lower__mainv:before {
  position:fixed;
  top:0;
  width:100%;
  aspect-ratio:1/1.35;
  filter:blur(var(--blur-amount, 0)) brightness(var(--brightness-amount, 1));
  transition:filter .2s ease-out;
  z-index:-1;
  height:100vh
}
.swiper-fade.swiper-free-mode .swiper-slide,.swiper-free-mode>.swiper-wrapper {
  transition-timing-function:ease-out
}
.c-lower__content__upper:after,.c-lower__content__upper:before {
  top:-445px;
  z-index:2;
  background:#fff100;
  content:"";
  position:absolute
}
.c-lower__mainv>div {
  position:relative;
  margin:0 auto;
  transform:translateY(-30px);
  color:#fff
}
.c-lower__mainv h1 {
  font-size:1.5rem
}
.c-lower__mainv p {
  font-size:.875rem;
  font-weight:700
}
.c-lower__content__upper {
  position:relative;
  transform:translateY(330px)
}
.c-lower__content__upper:after {
  left:0;
  width:calc((100vw - 1000px)/ 2 + 447px);
  height:100%;
  transform:skewY(-20deg);
  transform-origin:right top
}
.c-lower__content__upper:before {
  right:0;
  left:calc((100vw - 1000px)/ 2 + 445px);
  height:100%;
  transform:skewY(7deg);
  transform-origin:left top
}
.c-lower__content__upper--school:after,.c-lower__content__upper--school:before {
  height:500px
}

@media screen and (min-width:768px) {
  .c-ttl .line:after,.c-ttl .line:before {
    height:20px
  }
  .c-ttl2 {
    font-size:1.875rem
  }
  .c-txt {
    padding:0;
    font-size:1rem
  }
  .c-txt02 {
    padding:0
  }
  .c-pr30 {
    padding-right:30px
  }
  .c-pl30 {
    padding-left:30px
  }
  .c-btn01--06 {
    margin-bottom:0
  }
  .c-voicecat {
    gap:24px;
    width:calc(100% - 32px);
    grid-template-columns:repeat(4,1fr)
  }
  .c-blogcat {
    margin:50px auto 0;
    grid-template-columns:repeat(4,1fr)
  }
  .c-bloglist,.c-teacherlist {
    grid-template-columns:repeat(2,1fr)
  }
  .c-bloglist .cat span,.c-teacherlist .room,.c-teacherlist li p {
    font-size:1rem
  }
  .c-bloglist .ttl {
    min-height:48px;
    font-size:1.125rem
  }
  .c-teacherlist .ttl {
    height:56px;
    font-size:1.125rem
  }
  .c-teacherlist--room .ttl {
    font-size:1.125rem
  }
  .c-bgline--offset4 {
    margin-top:0
  }
  .c-lower__mainv:before {
    height:100vh
  }
  .c-lower__mainv h1 {
    font-size:3rem
  }
  .c-lower__content__upper {
    margin-top:0;
    transform:none
  }
  .c-lower__content__upper:after {
    top:-445px;
    height:600px;
    width:calc((100vw - 1440px)/ 2 + 447px)
  }
  .c-lower__content__upper:before {
    top:-445px;
    height:600px;
    left:calc((100vw - 1440px)/ 2 + 445px)
  }
  .c-lower__content__upper--school2:after,.c-lower__content__upper--school2:before {
    height:900px
  }
  .c-lower__content__upper--about:after {
    height:1040px
  }
}
@media screen and (min-width:1024px) {
  .c-bg--atama {
    padding:60px 0
  }
  .c-news__list li a {
    display:flex;
    align-items:center
  }
  .c-news__list li a>.new {
    display:inline-block
  }
  .c-news__list .cat {
    margin:10px 0 10px 10px;
    display:inline-block
  }
  .c-news__list .cat span {
    margin:0 5px
  }
  .c-news__list .date .new {
    display:none
  }
  .c-news__list .text {
    margin-left:20px;
    display:block;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis
  }
  .c-aboutcat {
    margin:50px auto 80px;
    grid-template-columns:repeat(3,1fr)
  }
  .c-bloglist {
    grid-template-columns:repeat(3,1fr)
  }
  .c-teacherlist {
    grid-template-columns:repeat(4,1fr)
  }
  .c-teacherlist--feature,.c-teacherlist--room {
    gap:50px;
    grid-template-columns:repeat(3,1fr)
  }
  .c-lower__mainv {
    min-height:500px
  }
  .c-lower__content__upper--about:after {
    height:900px
  }
}
@media screen and (min-width:768px) {
  .c-lower__content__upper--about:before {
    height:1040px
  }
  .c-lower__content__upper--feature:after {
    height:900px
  }
}
@media screen and (min-width:1024px) {
  .c-lower__content__upper--about:before {
    height:900px
  }
  .c-lower__content__upper--feature:after {
    height:600px
  }
}
@media screen and (min-width:768px) {
  .c-lower__content__upper--feature:before {
    height:900px
  }
  .c-lower__content__btm:before {
    content:"";
    position:absolute;
    left:0;
    width:100%;
    background:#fff100;
    z-index:12;
    bottom:0;
    transform-origin:right top;
    height:340px;
    bottom:inherit
  }
}
@media screen and (min-width:1024px) {
  .c-lower__content__upper--feature:before {
    height:600px
  }
}
.c-lower__content__upper--first:before {
  z-index:12
}
.c-lower__content__upper--first:after {
  height:450px
}
.c-lower__content__inner {
  position:relative;
  margin:-400px auto 0;
  transform:none;
  z-index:4;
  width:100%;
  transform:translateY(-150px);
  padding:150px 14px 20px
}
.c-lower__content__inner:after {
  content:"";
  position:absolute;
  left:0;
  top:58%;
  width:calc((100vw - 850px)/ 2 + 350px);
  height:100%;
  z-index:-1;
  background:#fff100;
  transform:translateY(-50%) skewY(-20deg);
  transform-origin:right top
}
.c-lower__content__inner:before {
  content:"";
  position:absolute;
  right:-16px;
  top:58%;
  left:calc((100vw - 850px)/ 2 + 350px);
  height:100%;
  background:#fff100;
  z-index:-1;
  transform:translateY(-50%) skewY(7deg);
  transform-origin:left top
}
@media screen and (min-width:768px) {
  .c-lower__content__inner {
    padding:0;
    margin-top:0;
    max-width:1024px;
    width:calc(100% - 32px);
    margin-bottom:0;
    transform:translateY(-275px)
  }
  .c-lower__content__inner:after,.c-lower__content__inner:before {
    display:none
  }
}
.c-lower__content__inner .c-txt {
  padding:0
}
.c-lower__content__inner--tankyu {
  transform:translateY(-219px);
  padding-top:240px
}
.c-lower__content__inner--school:before {
  top:8%;
  height:80%;
  transform:skewY(7deg)
}
@media screen and (min-width:768px) {
  .c-lower__content__inner--tankyu {
    transform:translateY(-275px);
    padding-top:0
  }
  .c-lower__content__inner--school:before {
    height:100%;
    top:58%;
    transform:translateY(-50%) skew(7deg)
  }
}
.c-lower__content__inner--school:after {
  top:8%;
  height:80%;
  transform:skewY(-20deg)
}
@media screen and (min-width:768px) {
  .c-lower__content__inner--school:after {
    height:100%;
    top:58%;
    transform:translateY(-50%) skew(-20deg)
  }
  .c-lower__content__inner--school {
    transform:translateY(-235px);
    margin-bottom:-105px
  }
  .c-lower__content__inner--first {
    background:#fff100;
    width:100%;
    padding:0 12px 50px
  }
  .swiper-set+.c-cal__sheader {
    margin-top:60px
  }
}
.c-lower__content__inner--first:after,.c-lower__content__inner--first:before {
  top:52.6%
}
.swiper-set+.c-cal {
  margin-top:60px
}
.c-cal {
  display:grid;
  grid-template-columns:auto 1fr 1fr 1fr;
  grid-template-rows:1fr 2fr 2fr 2fr;
  grid-template-areas:"header nav nav nav" "sidebar content content content" "sidebar content content content" "sidebar content content content";
  max-width:1024px;
  margin:0 auto;
  width:calc(100% - 32px);
  gap:20px 30px;
  font-weight:700;
  gap:10px
}
.c-cal--2 {
  grid-template-columns:auto 1fr 1fr;
  grid-template-rows:1fr 2fr 2fr;
  grid-template-areas:"header nav nav " "sidebar content content " "sidebar content content "
}
.c-cal--3,.c-cal--4 {
  grid-template-columns:auto 1fr
}
.c-cal--3 {
  grid-template-rows:1fr;
  grid-template-areas:"nav nav " "sidebar content ";
  margin:80px auto 0;
  max-width:600px
}
.c-cal--4 {
  grid-template-rows:initial;
  grid-template-areas:"sidebar content content " "sidebar content content ";
  margin-bottom:20px
}
@media screen and (min-width:768px) {
  .c-cal {
    gap:20px 30px
  }
  .c-cal--4 {
    margin-bottom:60px
  }
}
.c-cal--4--option {
  margin-bottom:0;
  gap:0
}
.c-cal__onlinetab {
  display:flex;
  max-width:1024px;
  margin:0 auto 30px;
  gap:20px;
  width:calc(100% - 32px);
  justify-content:space-between;
  text-align:center;
  align-items:center;
  font-size:1.5rem;
  position:relative
}
.c-cal__header,.c-cal__sheader {
  display:grid;
  max-width:1024px;
  width:calc(100% - 32px)
}
.c-cal__onlinetab:before {
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:2px;
  z-index:-1;
  background:#000
}
.c-cal__onlinetab div {
  width:25%;
  border:2px solid #000;
  border-bottom:none;
  min-height:50px;
  cursor:pointer;
  background:#fff;
  align-content:center;
  border-radius:0 10px 0 0;
  font-weight:700;
  color:#13388e
}
.c-cal__onlinetab span {
  display:inline-block;
  font-size:1rem;
  line-height:1.5
}
.c-cal__header {
  margin:-26px auto 32px;
  gap:0 30px;
  grid-template-columns:1fr;
  color:#13388e
}
.c-cal__header>div:last-child {
  grid-column:span 3;
  text-align:center;
  font-size:1.625rem;
  font-weight:700;
  padding:10px 0;
  border:2px solid #13388e;
  border-radius:0 10px 0 0;
  background:#fff100
}
@media screen and (min-width:768px) {
  .c-cal--4--option {
    gap:10px
  }
  .c-cal.hidden {
    display:grid
  }
  .c-cal__onlinetab {
    gap:45px;
    margin:0 auto 60px
  }
  .c-cal__onlinetab div {
    width:20%
  }
  .c-cal__header {
    margin:0 auto 32px;
    gap:20px 30px;
    grid-template-columns:auto 1fr 1fr 1fr
  }
  .c-cal__header>div:last-child {
    font-size:1.5rem
  }
}
.c-cal__header--online {
  margin-top:32px
}
.c-cal__sheader {
  margin:0 auto 30px;
  gap:20px 30px;
  grid-template-columns:1fr
}
.c-cal__sheader>div:last-child {
  grid-column:span 3;
  text-align:center;
  font-size:1.5rem;
  color:#13388e;
  font-weight:700
}
.c-cal__sheader>div:last-child>div {
  width:fit-content;
  margin:0 auto;
  padding:10px 0;
  position:relative
}
.c-cal__sheader>div:last-child>div div {
  position:relative;
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0 20px
}
.c-cal__sheader>div:last-child>div div:after,.c-cal__sheader>div:last-child>div div:before {
  background-color:#13388e;
  content:"";
  height:3px;
  width:40px
}
.c-cal__sheader>div:last-child>div div:before {
  margin-right:15px
}
.c-cal__sheader>div:last-child>div div:after {
  margin-left:15px
}
.c-cal .header {
  grid-area:header;
  height:50px
}
.c-cal .nav {
  grid-area:nav;
  width:100%;
  text-align:center
}
@media screen and (min-width:768px) {
  .c-cal__sheader {
    grid-template-columns:auto 1fr 1fr 1fr
  }
  .c-cal .nav {
    font-size:1.5rem;
    font-weight:700;
    height:50px;
    gap:0 30px;
    display:grid;
    grid-template-columns:repeat(3,1fr)
  }
}
.c-cal .nav--2 {
  grid-template-columns:r1fr
}
@media screen and (min-width:768px) {
  .c-cal .nav--2 {
    grid-template-columns:repeat(2,1fr)
  }
}
.c-cal .nav--3 {
  grid-template-columns:1fr
}
.c-cal .nav .item {
  height:50px;
  align-content:center;
  border-radius:0 10px 0 0;
  font-size:1.125rem
}
.c-cal .sidebar {
  grid-area:sidebar;
  display:grid;
  grid-template-rows:repeat(3,1fr);
  background:#efefef;
  width:66px
}
.c-cal .sidebar div {
  align-content:center;
  text-align:center;
  width:90%;
  margin:0 auto
}
.c-cal .sidebar div+div {
  border-top:1px solid #211815
}
.c-cal .sidebar span {
  font-size:.625rem
}
.c-cal .sidebar--2 {
  grid-template-rows:repeat(2,1fr)
}
.c-cal .content {
  grid-area:content;
  width:100%
}
.c-cal .content .swiper-slide {
  display:grid
}
.c-cal .content .item {
  grid-template-rows:subgrid;
  border:2px solid #13388e;
  border-radius:0 10px 0 0;
  display:grid;
  text-align:center;
  grid-row:span 3;
  font-size:1.125rem;
  line-height:1.6
}
.c-cal__opitem--atama>div:nth-child(2n+5):before,.c-cal__opitem--atama>div:nth-child(n+2):after,.c-cal__option--2 .sidebar {
  display:none
}
.c-cal .content--2 .item,.c-cal .content--5 .item,.c-cal .content--6 .item {
  grid-row:span 2
}
.c-cal .content .item div {
  width:94%;
  margin:0 auto;
  align-content:center
}
.c-cal .content .item div+div {
  border-top:1px solid #13388e
}
.c-cal .content--5 .item+.item {
  margin-top:10px
}
@media screen and (min-width:768px) {
  .c-cal .content .item,.c-cal .nav .item {
    font-size:1rem
  }
  .c-cal .content .item.hidden,.c-cal .nav .item.hidden {
    display:none
  }
  .c-cal .sidebar {
    width:166px
  }
  .c-cal .content {
    gap:0 30px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:subgrid
  }
  .c-cal .content--2,.c-cal .content--4 {
    grid-template-columns:repeat(2,1fr)
  }
  .c-cal .content--3 {
    min-height:200px;
    grid-template-columns:1fr;
    grid-template-rows:1fr 1fr
  }
  .c-cal .content--5 {
    grid-template-columns:repeat(4,1fr)
  }
  .c-cal .content--5 .item+.item {
    margin-top:0
  }
  .c-cal .content--6 {
    grid-template-columns:repeat(3,1fr)
  }
}
.c-cal .content--6 .item+.item {
  margin-top:10px
}
.c-cal__at {
  max-width:1024px;
  margin:30px auto 0;
  width:calc(100% - 32px);
  font-size:.875rem;
  color:#211815;
  padding:0;
  line-height:1.6
}
.c-cal__at li {
  padding-left:1em;
  text-indent:-1em
}
.c-cal__at+.c-cal__at {
  margin-top:20px
}
.c-cal__op,.c-cal__option {
  max-width:1024px;
  width:calc(100% - 32px)
}
.c-cal__op {
  font-size:1.5rem;
  font-weight:700;
  color:#13388e;
  margin:30px auto 0;
  text-align:center;
  padding:20px 0;
  border-radius:0 10px 0 0;
  background:#efefef;
  border:2px solid #13388e;
  position:relative;
  cursor:pointer
}
.c-cal__opitem,.c-cal__optxt {
  padding:10px 0;
  font-weight:700
}
.c-cal__op:before {
  content:"";
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:35px;
  height:35px;
  background:#13388e;
  border-radius:50%
}
.c-cal__op:after {
  content:"";
  width:8px;
  height:8px;
  right:22px;
  top:26px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  position:absolute;
  transform:rotate(135deg)
}
.c-cal__option {
  margin:20px auto 0;
  display:grid;
  overflow:hidden
}
.c-cal__option--2 {
  max-width:inherit;
  width:100%
}
.c-cal__opwrap.is-opened .c-cal__op:after {
  top:30px;
  transform:rotate(-45deg)
}
.c-cal__opwrap+.c-cal__header {
  margin-top:120px
}
.c-cal__optxt {
  text-align:center;
  font-size:1.125rem;
  color:#13388e;
  line-height:1.5
}
.c-cal__opitem {
  display:grid;
  grid-template-columns:1fr 1fr;
  font-size:1rem;
  margin:10px 0;
  border:2px solid #13388e;
  border-radius:0 10px 0 0
}
.c-cal__opitem>div {
  text-align:center;
  padding:0 10px;
  align-content:center
}
.c-cal__opitem>div:first-child {
  color:#13388e;
  font-size:1.5rem;
  grid-column:span 2;
  line-height:1.6
}
.c-cal__opitem>div:nth-child(2) {
  font-size:1.5rem;
  position:relative
}
.c-cal__opitem>div:nth-child(2):after,.c-cal__opitem>div:nth-child(2):before {
  position:absolute;
  width:calc(200% - 20px);
  background:#13388e;
  height:1px;
  left:10px;
  content:""
}
.c-cal__opitem>div:nth-child(2):before {
  top:13px
}
.c-cal__opitem>div:nth-child(2):after {
  bottom:13px
}
.c-cal__opitem>div:nth-child(3) {
  min-width:140px;
  margin:30px 0;
  border-left:1px solid #211815
}
.c-cal__opitem>div:nth-child(4) {
  grid-column:span 2
}
.c-cal__opitem--atama>div:nth-child(n+2) {
  font-size:1.5rem
}
.c-cal__opitem--atama>div:nth-child(n+4) {
  position:relative;
  grid-column:inherit
}
.c-cal__opitem--atama>div:nth-child(n+4):before {
  content:"";
  position:absolute;
  top:-10px;
  width:100%;
  height:1px;
  background:#000;
  width:calc(200% - 20px);
  left:10px
}
@media screen and (min-width:768px) {
  .c-cal .content--6 .item+.item {
    margin-top:0
  }
  .c-cal__at {
    padding:0 0 50px 195px
  }
  .c-cal__at+.c-cal__at {
    margin-top:-30px
  }
  .c-cal__at--02 {
    padding:0;
    width:100%;
    margin-top:10px
  }
  .c-cal__option--2 {
    width:calc(100% - 32px)
  }
  .c-cal__option--2 .sidebar {
    display:grid
  }
  .c-cal__opitem {
    grid-template-columns:36% auto auto 1fr
  }
  .c-cal__opitem>div {
    padding:0 30px
  }
  .c-cal__opitem>div:first-child,.c-cal__opitem>div:nth-child(4) {
    grid-column:auto
  }
  .c-cal__opitem>div:nth-child(2):after,.c-cal__opitem>div:nth-child(2):before {
    display:none
  }
  .c-cal__opitem>div:nth-child(3) {
    margin:0
  }
  .c-cal__opitem>div+div {
    border-left:1px solid #211815
  }
  .c-cal__opitem--atama {
    grid-template-columns:36% auto 1fr;
    padding:0
  }
  .c-cal__opitem--atama>div:first-child {
    grid-row:span 4
  }
  .c-cal__opitem--atama>div:nth-child(n+2) {
    padding:0 20px;
    margin:10px 0
  }
  .c-cal__opitem--atama>div:nth-child(n+4):before {
    width:600%
  }
}
.c-cal__opitem--atama>div:nth-child(odd) {
  margin:30px 0
}
.c-cal__opitem--atama>div:nth-child(2n+3) {
  border-left:1px solid #000;
  font-size:1rem
}
.c-cal__opitem--atama>div span span {
  font-size:.8125rem
}
.c-cal__cat {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  text-align:center;
  gap:15px;
  margin-inline:16px;
  margin-bottom:32px;
  font-weight:700
}
.c-cal__cat--2,.c-cal__cat--22 {
  grid-template-columns:repeat(2,1fr)
}
@media screen and (min-width:768px) {
  .c-cal__opitem--atama>div:nth-child(odd) {
    margin:10px 0
  }
  .c-cal__opitem--atama>div span span {
    font-size:1.25rem
  }
  .c-cal__cat {
    display:none
  }
}
.c-cal__cat--22 {
  margin-bottom:10px
}
.c-cal__cat div {
  color:#737373;
  background:#d3d3d3;
  padding:10px 0;
  cursor:pointer;
  border-radius:30px;
  min-height:35px;
  align-content:center;
  line-height:1.1;
  font-size:.9375rem
}
.c-cal__cat div.current {
  background:#13388e;
  color:#fff100
}
@font-face {
  font-family:swiper-icons;
  src:url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);
  font-weight:400;
  font-style:normal
}
:root {
  --text-size-body:16;
  --swiper-theme-color:#007aff;
  --swiper-navigation-size:44px
}
:host {
  position:relative;
  display:block;
  margin-left:auto;
  margin-right:auto;
  z-index:1
}
.swiper {
  margin-left:auto;
  margin-right:auto;
  position:relative;
  overflow:hidden;
  padding:0;
  z-index:1;
  display:block
}
.swiper-vertical>.swiper-wrapper {
  flex-direction:column
}
.swiper-wrapper {
  position:relative;
  width:100%;
  height:100%;
  z-index:1;
  display:flex;
  transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);
  box-sizing:content-box
}
.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper {
  transform:translateZ(0)
}
.swiper-horizontal {
  touch-action:pan-y
}
.swiper-vertical {
  touch-action:pan-x
}
.swiper-slide {
  flex-shrink:0;
  width:100%;
  height:100%;
  position:relative;
  display:block
}
.swiper-autoheight,.swiper-autoheight .swiper-slide {
  height:auto
}
.swiper-autoheight .swiper-wrapper {
  align-items:flex-start;
  transition-property:transform,height
}
.swiper-backface-hidden .swiper-slide {
  transform:translateZ(0);
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden
}
.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective:1200px
}
.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-wrapper {
  transform-style:preserve-3d
}
.swiper-css-mode>.swiper-wrapper {
  overflow:auto;
  scrollbar-width:none;
  -ms-overflow-style:none
}
.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display:none
}
.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align:start start
}
.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
  scroll-snap-type:x mandatory
}
.swiper-css-mode.swiper-vertical>.swiper-wrapper {
  scroll-snap-type:y mandatory
}
.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
  scroll-snap-type:none
}
.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align:none
}
.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
  content:"";
  flex-shrink:0;
  order:9999
}
.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align:center center;
  scroll-snap-stop:always
}
.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  margin-inline-start:var(--swiper-centered-offset-before)
}
.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
  height:100%;
  min-height:1px;
  width:var(--swiper-centered-offset-after)
}
.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  margin-block-start:var(--swiper-centered-offset-before)
}
.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
  width:100%;
  min-width:1px;
  height:var(--swiper-centered-offset-after)
}
.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:10
}
.swiper-3d .swiper-slide-shadow {
  background:#00000026
}
.swiper-3d .swiper-slide-shadow-left {
  background-image:linear-gradient(to left,#00000080,#0000)
}
.swiper-3d .swiper-slide-shadow-right {
  background-image:linear-gradient(to right,#00000080,#0000)
}
.swiper-3d .swiper-slide-shadow-top {
  background-image:linear-gradient(to top,#00000080,#0000)
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image:linear-gradient(to bottom,#00000080,#0000)
}
.swiper-lazy-preloader {
  width:42px;
  height:42px;
  position:absolute;
  left:50%;
  top:50%;
  margin-left:-21px;
  margin-top:-21px;
  z-index:10;
  transform-origin:50%;
  box-sizing:border-box;
  border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));
  border-radius:50%;
  border-top-color:transparent
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation:1s linear infinite swiper-preloader-spin
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000
}
@keyframes swiper-preloader-spin {
  0% {
    transform:rotate(0)
  }
  to {
    transform:rotate(360deg)
  }
}
.swiper-button-next,.swiper-button-prev {
  position:absolute;
  top:var(--swiper-navigation-top-offset,50%);
  width:calc(var(--swiper-navigation-size)/ 44 * 27);
  height:var(--swiper-navigation-size);
  margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));
  z-index:10;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--swiper-navigation-color,var(--swiper-theme-color))
}
.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled {
  opacity:.35;
  cursor:auto;
  pointer-events:none
}
.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden {
  opacity:0;
  cursor:auto;
  pointer-events:none
}
.swiper-button-next svg,.swiper-button-prev svg {
  width:100%;
  height:100%;
  object-fit:contain;
  transform-origin:center
}
.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg {
  transform:rotate(180deg)
}
.swiper-button-prev,.swiper-rtl .swiper-button-next {
  left:var(--swiper-navigation-sides-offset,10px);
  right:auto
}
.swiper-button-lock,.swiper-pagination-lock {
  display:none
}
.swiper-button-next:after,.swiper-button-prev:after {
  font-family:swiper-icons;
  font-size:var(--swiper-navigation-size);
  text-transform:none!important;
  letter-spacing:0;
  font-variant:initial;
  line-height:1
}
.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after {
  content:"prev"
}
.swiper-button-next,.swiper-rtl .swiper-button-prev {
  right:var(--swiper-navigation-sides-offset,10px);
  left:auto
}
.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after {
  content:"next"
}
.swiper-pagination {
  position:absolute;
  text-align:center;
  transition:opacity .3s;
  transform:translateZ(0);
  z-index:10
}
.swiper-pagination.swiper-pagination-hidden {
  opacity:0
}
.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction {
  bottom:var(--swiper-pagination-bottom,8px);
  top:var(--swiper-pagination-top,auto);
  left:0;
  width:100%
}
.swiper-pagination-bullets-dynamic {
  overflow:hidden;
  font-size:0
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform:scale(.33);
  position:relative
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform:scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform:scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform:scale(.33)
}
.swiper-pagination-bullet {
  width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
  height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
  display:inline-block;
  border-radius:var(--swiper-pagination-bullet-border-radius,50%);
  background:var(--swiper-pagination-bullet-inactive-color,#000);
  opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)
}
button.swiper-pagination-bullet {
  border:none;
  margin:0;
  padding:0;
  box-shadow:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none
}
.swiper-pagination-bullet-active {
  opacity:var(--swiper-pagination-bullet-opacity, 1);
  background:var(--swiper-pagination-color,var(--swiper-theme-color))
}
.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets {
  right:var(--swiper-pagination-right,8px);
  left:var(--swiper-pagination-left,auto);
  top:50%;
  transform:translate3d(0,-50%,0)
}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;
  display:block
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top:50%;
  transform:translateY(-50%);
  width:8px
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display:inline-block;
  transition:transform .2s,top .2s
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin:var(--swiper-pagination-bullet-horizontal-gap,4px) var(--swiper-pagination-bullet-horizontal-gap,4px) 0
}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left:50%;
  transform:translate(-50%);
  white-space:nowrap
}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:transform .2s,left .2s
}
.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:transform .2s,right .2s
}
.swiper-pagination-fraction {
  color:var(--swiper-pagination-fraction-color,inherit)
}
.p-koukou__report--subTitle,.p-koukou__report--title {
  font-size:1.5rem;
  line-height:1.5;
  color:#13388e;
  text-align:center
}
.swiper-pagination-progressbar {
  background:var(--swiper-pagination-progressbar-bg-color,rgb(0 0 0 / .25));
  position:absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background:var(--swiper-pagination-color,var(--swiper-theme-color));
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  transform:scale(0);
  transform-origin:left top
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin:right top
}
.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width:100%;
  height:var(--swiper-pagination-progressbar-size,4px);
  left:0;
  top:0
}
.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar {
  width:var(--swiper-pagination-progressbar-size,4px);
  height:100%;
  left:0;
  top:0
}
.swiper-free-mode>.swiper-wrapper {
  margin:0 auto
}
.swiper-fade .swiper-slide {
  pointer-events:none;
  transition-property:opacity
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events:none
}
.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events:auto
}

@media screen and (min-width:1024px) {
  .c-lower__content__inner--first {
    padding:0;
    width:calc(100% - 32px)
  }
  .c-lower__content__inner--first:after,.c-lower__content__inner--first:before {
    top:58%
  }
}

@media (hover: hover) {
header nav>ul>li>a:hover,
header nav>ul>li>span:hover {
  color:#10378e;
}
header nav>ul li a:hover:before,
header nav>ul>li>span:hover:before {
  transform:scaleX(1);
}
footer .inner>div:first-child>a:hover {
  opacity:.7;
}

header nav>ul>li.search>a::after {
  transform-origin:center bottom;
}
header nav>ul>li.search>a:hover::after {
  animation:pikon 0.6s ease-out 1;
}
@keyframes pikon {
  0%, 100% {
    transform:translateY(0);
  }
  30% {
    transform:translateY(-7px);
  }
  55% {
    transform:translateY(0);
  }
  75% {
    transform:translateY(-3px);
  }
}

}
