@charset "UTF-8";

/* =============================================================================
Reset style
========================================================================== */
/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
html { color: #000; background: #FFF; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td { margin: 0; padding: 0; }

table { border-collapse: collapse; border-spacing: 0; }

fieldset, img { border: 0; }

address, caption, cite, code, dfn, em, strong, th, var { font-style: normal; font-weight: normal; }

ol, ul { list-style: none; }

caption, th { text-align: left; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }

a, a:hover, a:active, a:visited { text-decoration: none; outline: none; }

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; font-size: 100%; }

legend { color: #000; }

#yui3-css-stamp.cssreset { display: none; }

*, *:before, *:after { -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

/* =============================================================================
Image
========================================================================== */
img { display: block; vertical-align: bottom; width: 100%; max-width: 100%; }

/* =============================================================================
Basic style
========================================================================== */
html { overflow-x: hidden; }

body { color: #000; font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", Meiryo, "MS P Gothic", "ＭＳ Ｐゴシック", Osaka, Arial, Helvetica, sans-serif; font-weight: 400; position: relative; overflow-x: hidden; word-break: break-all; }

a { display: block; }

.bold { font-weight: 700; }

.normal { font-weight: 400; }

#container { opacity: 0; position: relative; }

.swiper-button-prev, .swiper-button-next, .swiper-pagination-bullet { outline: none; }

.white { color: #fff; }

/*==============================================================================
Responsive
============================================================================= */
@media screen and (max-width: 767px) { html { font-size: 13.3333333333333vw; }
  .inner { width: 6.9rem; margin: 0 auto; position: relative; }
  .pc-only { display: none !important; }
  .sp-only { display: block; } 

  /* LPO 202112 */
  .container { margin: 1.02rem 0 0; } }

@media screen and (min-width: 768px) { .inner { width: 980px; margin: 0 auto; position: relative; }
  .pc-only { display: block; }
  .sp-only { display: none !important; }
  a { transition: opacity .3s; }
  a:hover { opacity: 0.7; } 
  
  /* LPO 202112 */
  .container { margin: 80px 0 0; } }

/*==============================================================================
header
============================================================================= */
@media screen and (max-width: 767px) { .header .header-bg { padding: .28rem 0; }
  .header .header-inner { display: flex; align-items: center; }
  .header .header-logo01 { width: 2.67rem; }
  .header .header-txt01 { margin: 0 0 0 auto; color: #073190; font-size: .36rem; line-height: 1; letter-spacing: 0.01em; }
  
  /* LPO 202112 */
  .header_v2 .header-bg { width: 100%; height: 1.02rem; background-color: #fff; position: fixed; top: 0; left: 0; z-index: 1000; }
  .header_v2 .header-inner { position: relative; }
  .header_v2 .header-menu { width: 1rem; height: .86rem; background: #073190; position: absolute; top: -.2rem; right: 0; color: #fff; border-radius: .05rem; text-align: center; cursor: pointer; }
  .header_v2 .header-menu .header-menu-wrap { width: .5rem; height: .5rem;  position: absolute; top: .2rem; left: 50%; transform: translateX(-50%); }
  .header_v2 .header-menu .header-menu-item { width: 100%; height: .04rem; background-color: #fff; position: absolute; top: 0; left: 0; border-radius: .02rem; transition: all .5s; opacity: 1; }
  .header_v2 .header-menu .header-menu-item.item02 { top: .12rem; }
  .header_v2 .header-menu .header-menu-item.item03 { top: .24rem; }
  .header_v2 .header-menu .header-menu-txt { position: absolute; top: .4rem; font-size: .16rem; letter-spacing: -0.05em; line-height: 1; text-align: center; }
  
  .header_v2 .header-menu.active .header-menu-item.item01 { transition-delay: .07s; transform: translateY(.20rem) rotate(135deg); }
  .header_v2 .header-menu.active .header-menu-item.item02 { transition-delay: 0; transform:  translateX(25px) scaleX(0); }
  .header_v2 .header-menu.active .header-menu-item.item03 { transition-delay: .14s; transform: translateY(-.05rem) rotate(-135deg); }
  .header_v2 .header-menu.active .header-menu-txt { opacity: 0; }

  .menu-nav .menu-nav-bg { width: 100%; padding: .45rem 0; position: fixed; top: 1.02rem; left: 0; background: #333; z-index: 999; transform: translateY(-100%); transition: all .5s; opacity: 0; }
  .menu-nav.active .menu-nav-bg { width: 100%; transform: translateY(0); opacity: 1; }
  .menu-nav .menu-nav-inner { width: 6.9rem; margin: 0 auto; }
  .menu-nav .menu-nav-item { padding: 0 0 0 .7rem; position: relative; font-size: .32rem; font-family: 'メイリオ', Meiryo, sans-serif;}
  .menu-nav .menu-nav-item:nth-child(n+2) { margin: .3rem 0 0; }
  .menu-nav .menu-nav-item::before { content: ''; width: .49rem; height: .26rem; background: url(../img/common/menu_arrow01.png) no-repeat center/cover; position: absolute; top: 50%; left: 0; transform: translateY(-50%); } }

@media screen and (min-width: 768px) { .header .header-bg { padding: 17px 0 21px; }
  .header .header-inner { display: flex; align-items: center; }
  .header .header-logo01 { width: 243px; }
  .header .header-logo02 { width: 159px; margin: 0 0 0 36px; }
  .header .header-txt01 { margin: 0 0 0 auto; color: #073190; font-size: 21px; line-height: 1; letter-spacing: 0.01em; } 
  
  /* LPO 202112 */
  .header_v2 .header-bg { width: 100%; background-color: #fff; position: fixed; top: 0; left: 0; z-index: 1000; } 
  .header_v2 .header-inner { position: relative; }
  .header_v2 .header-menu { width: 87px; height: 74px; background: #073190; position: absolute; top: -15px; right: 0; color: #fff; border-radius: 5px; text-align: center; cursor: pointer; }
  .header_v2 .header-menu .header-menu-wrap { width: 40px; height: 41px;  position: absolute; top: 20px; left: 50%; transform: translateX(-50%); font-size: 13px; letter-spacing: -0.1em; line-height: 1; }
  .header_v2 .header-menu .header-menu-item { width: 100%; height: 4px; background-color: #fff; position: absolute; top: 0; left: 0; border-radius: 2px; transition: all .5s; opacity: 1; }
  .header_v2 .header-menu .header-menu-item.item02 { top: 10px; }
  .header_v2 .header-menu .header-menu-item.item03 { top: 20px; }
  .header_v2 .header-menu .header-menu-txt { position: absolute; top: 30px; transition: all .5s; opacity: 1; }
  
  .header_v2 .header-menu.active .header-menu-item.item01 { transition-delay: .07s; transform: translateY(15px) rotate(135deg); }
  .header_v2 .header-menu.active .header-menu-item.item02 { transition-delay: 0; transform:  translateX(25px) scaleX(0); }
  .header_v2 .header-menu.active .header-menu-item.item03 { transition-delay: .14s; transform: translateY(-5px) rotate(-135deg); }
  .header_v2 .header-menu.active .header-menu-txt { opacity: 0; }

  .menu-nav .menu-nav-bg { width: 100%; padding: 46px 0; position: fixed; top: 80px; left: 0; background: #333; z-index: 999; transform: translateY(-100%); transition: all .5s; opacity: 0; }
  .menu-nav.active .menu-nav-bg { width: 100%; transform: translateY(0); opacity: 1; }
  .menu-nav .menu-nav-inner { width: 665px; margin: 0 auto; }
  .menu-nav .menu-nav-list { display: flex; flex-wrap: wrap; justify-content: space-between; }
  .menu-nav .menu-nav-item { padding: 0 0 0 56px; width: 50%; position: relative; font-size: 16px; font-family: 'メイリオ', Meiryo, sans-serif;}
  .menu-nav .menu-nav-item:nth-child(n+3) { margin: 40px 0 0; }
  .menu-nav .menu-nav-item::before { content: ''; width: 42px; height: 22px; background: url(../img/common/menu_arrow01.png) no-repeat center/cover; position: absolute; top: 50%; left: 0; transform: translateY(-50%); } }

/*==============================================================================
fv
============================================================================= */
/*@media screen and (max-width: 767px) { .fv .fv-pic01 { width: 100%; }
  .fv .fv-middle { padding: .26rem 0; background: #073190; }
  .fv .fv-txt01 { color: #fff; font-size: .4rem; line-height: 1; letter-spacing: 0.01em; text-align: center; }
  .fv .fv-bottom { padding: .35rem 0; background: #0043c9; }
  .fv .fv-txt02 { padding: 0 .38rem 0 .38rem; color: #fff; font-size: .32rem; line-height: 1.46; letter-spacing: 0.04em; } }

@media screen and (min-width: 768px) { .fv .fv-pic01 {min-width: 2000px; width:1060px; position: relative; top: 0; left: 50%; transform: translateX(-50%); }
  .fv .fv-middle { padding: 25px 0; background: #073190; }
  .fv .fv-txt01 { color: #fff; font-size: 34px; line-height: 1; letter-spacing: 0.01em; text-align: center; }
  .fv .fv-bottom { padding: 25px 0; background: #0043c9; }
  .fv .fv-txt02 { color: #fff; font-size: 24px; line-height: 1.95; text-align: center; } }*/

/*==============================================================================
campaign
============================================================================= */
@media screen and (max-width: 767px) { .campaign .campaign-bg { padding: .6rem 0 .6rem; }
  .campaign .campaign-inner { width: 7.2rem; }
  .campaign .campaign-txt01 { color: #1d3b69; font-size: .36rem; line-height: 1.16; text-align: center; }
  .campaign .campaign-ttl01 { margin: .2rem 0 0; }
  .campaign .campaign-txt02 { width: 6.78rem; margin: .2rem auto 0; }
  .campaign .campaign-btn01 { width: 6.4rem; margin: .3rem auto 0; }
  .campaign .campaign-link01 { margin: .3rem 0 0; font-size: .34rem; line-height: 1; letter-spacing: 0.06em; text-align: center; }
  .campaign .campaign-link01 a { display: inline-block; position: relative; color: #1d3b69; }
  .campaign .campaign-link01 a::before { content: ''; width: 100%; height: 1px; background: #1d3b69; position: absolute; top: .4rem; left: 50%; transform: translateX(-50%); }
  .campaign .campaign-note01 { margin: .35rem 0 0 .15rem; font-size: .18rem; line-height: 1.38; } }

@media screen and (min-width: 768px) { .campaign .campaign-bg { padding: 35px 0 70px; }
  .campaign .campaign-txt01 { color: #1d3b69; font-size: 36px; line-height: 1.19; text-align: center; }
  .campaign .campaign-ttl01 { margin: 20px 0 0; }
  .campaign .campaign-txt02 { width: 678px; margin: 20px auto 0; }
  .campaign .campaign-btn01 { width: 561px; margin: 30px auto 0; }
  .campaign .campaign-link01 { margin: 24px 0 0; font-size: 26px; line-height: 1; letter-spacing: 0.06em; text-align: center; }
  .campaign .campaign-link01 a { display: inline-block; position: relative; color: #1d3b69; }
  .campaign .campaign-link01 a::before { content: ''; width: 100%; height: 1px; background: #1d3b69; position: absolute; top: 30px; left: 50%; transform: translateX(-50%); }
  .campaign .campaign-note01 { margin: 40px 0 0 122px; font-size: 14px; line-height: 1.5; } }

/*==============================================================================
compare
============================================================================= */
@media screen and (max-width: 767px) { .compare .compare-bg { background: #b7e3f8; padding: .8rem 0 1.05rem; }
  .compare .compare-ttl01 { width: 5.78rem; margin: 0 auto; }
  .compare .compare-block01 { margin: .6rem 0 0; padding: .3rem .3rem .4rem; background: #fff; border: 1px solid #254fad; border-radius: .1rem; }
  .compare .compare-table01 { padding: 0 0 .3rem; overflow-x: scroll; }
  .compare .compare-table01-wrap { width: 10rem; }
  .compare .compare-table01::-webkit-scrollbar { height: .3rem; }
  .compare .compare-table01::-webkit-scrollbar-thumb { border-radius: .15rem; background: #8e8e8e; }
  .compare .compare-table01::-webkit-scrollbar-track { border-radius: .15rem; background: #dddddd; }
  .compare .compare-txt01 { margin: .2rem 0 0 auto; font-size: .2rem; line-height: 1; text-align: right; }

.compare_v2 .compare-bg {
	padding: 0.8rem 0 1.05rem;
}
}

@media screen and (min-width: 768px) { .compare .compare-bg { background: #b7e3f8; background:#c5e8fa; padding: 90px 0 110px; }
  .compare .compare-ttl01 { width: 667px; margin: 0 auto; }
  .compare .compare-block01 { margin: 28px 0 0; }
  .compare .compare-table01 { padding: 24px; background: #fff; border: 1px solid #254fad; border-radius: 10px; }
  .compare .compare-txt01 { margin: 15px 0 0; font-size: 18px; line-height: 1; text-align: center; }

.compare_v2 .compare-bg {
	padding: 90px 0 100px;
}
}

/*==============================================================================
up
============================================================================= */
@media screen and (max-width: 767px) { .up .up-bg { padding: .87rem 0 .9rem; }
  .up .up-ttl01 { width: 6.23rem; margin: 0 auto; }
  .up .up-list01 { margin: .46rem auto 0; }
  .up .up-item { margin: .4rem 0 0; position: relative; }
  .up .up-item:first-child { margin: 0; }
  .up .up-item-pic01 { width: 2.47rem; position: absolute; top: 1.11rem; left: 0; }
  .up .up-item-txt01 { margin: .2rem 0 0 2.71rem; font-size: .32rem; line-height: 1.31; letter-spacing: 0.06em; text-decoration: underline; }
  .up .up-item-txt02 { margin: .2rem 0 0 2.71rem; font-size: .28rem; line-height: 1.5; } 
  
  /* LPO 202112 */
  .up_v2 .up-bg { padding: 0 0 .9rem; }
  .up_v2 .up-about { width: 7.5rem; margin: -.5rem auto 0; position: relative; left: 50%; transform: translateX(-50%); }
  .up_v2 .up-arrow { width: .3rem; margin: .4rem auto 0; }
  .up_v2 .up-ttl01 { width: 6rem; margin: .45rem auto; } }

@media screen and (min-width: 768px) { .up .up-bg { padding: 68px 0 75px; }
  .up .up-ttl01 { width: 493px; margin: 0 auto; }
  .up .up-list01 { width: 766px; margin: 60px auto 0; }
  .up .up-item { margin: 27px 0 0; position: relative; }
  .up .up-item:first-child { margin: 0; }
  .up .up-item-ttl01 { width: 515px; margin: 0 0 0 207px; }
  .up .up-item-pic01 { width: 184px; position: absolute; top: 13px; left: 0; }
  .up .up-item-txt01 { margin: 30px 0 0 212px; font-size: 24px; line-height: 1.2; letter-spacing: 0.06em; text-decoration: underline; }
  .up .up-item-txt02 { margin: 25px 0 0 212px; font-size: 18px; line-height: 1.72; } 

  /* LPO 202112 */
  .up_v2 .up-bg { /*padding: 0 0 95px;*/ padding: 95px 0 95px; background: url(../img/common/up_bg01_pc.png) no-repeat; background-size: 2014px auto; background-position: top 50px center; }
  .up_v2 .up-about { width: 679px; margin: -50px auto 0; }
  .up_v2 .up-arrow { width: 29px; margin: 62px auto 0; }
  .up_v2 .up-ttl01 { width: 778px; margin: 0 auto; }
  .up_v2 .up-wrap { margin: 50px 0 0; border: 3px solid #ed2315; }
  .up_v2 .up-list01 { margin: 50px auto; } }

/*==============================================================================
test
============================================================================= */
@media screen and (max-width: 767px) { .test .teiki { padding: 0 0 .86rem; background: #fdebeb; }
  .test .teiki-ttl { padding: .45rem 0; background: #f03f33; }
  .test .teiki-ttl-wrap { width: 4.33rem; margin: 0 0 0 1.4rem; position: relative; }
  .test .teiki-ttl-wrap::before { content: ''; width: .85rem; height: .85rem; background: url(../img/common/test_icon01.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -1.24rem; transform: translateY(-50%); }
  .test .teiki-pic01 { margin: .5rem auto 0; }
  .test .teiki-txt01 { margin: .4rem 0 0; position: relative; color: #f03f33; font-size: .48rem; text-align: center; letter-spacing: -0.02em; line-height: 1.22; }
  .test .teiki-txt01::before { content: ''; width: 4.39rem; height: 1px; background-size: 6px 1px; background-repeat: repeat; background-image: linear-gradient(to right, #000, #000 5px, transparent 5px, transparent 6px); position: absolute; top: 1.44rem; left: 50%; transform: translateX(-50%); }
  .test .teiki-txt02 { margin: .9rem 0 0; font-size: .36rem; text-align: center; line-height: 1.5; letter-spacing: -0.02em; }
  .test .teiki-txt02 .line { padding: .14rem 0; background: linear-gradient(transparent 40%, #fdef02 40%, #fdef02 90%, transparent 90%); }
  .test .teiki-txt03 { margin: .5rem 0 0; }
  .test .teiki-list01 { margin: .5rem 0 0; }
  .test .teiki-item { margin: .3rem 0 0; padding: 0 0 0 1.13rem; position: relative; }
  .test .teiki-item:first-child { margin: 0; }
  .test .teiki-item-txt01 { position: relative; font-size: .4rem; line-height: 1.35; letter-spacing: -0.02em; }
  .test .teiki-item-txt01 .red { color: #f03f33; }
  .test .teiki-item-txt01::before { content: ''; width: .64rem; height: .64rem; background: url(../img/common/test_icon02.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -.98rem; transform: translateY(-50%); }
  .test .teiki-block01 { margin: .5rem 0 0; border: .08rem solid #f03f33; border-radius: .1rem; }
  .test .teiki-block01 .ttl01 { padding: .34rem 0; background: #f03f33; }
  .test .teiki-block01 .ttl01-wrap { width: 6rem; margin: 0 auto; }
  .test .teiki-block01 .content01 { padding: .45rem 0 .5rem; background: #fff; }
  .test .teiki-block01 .txt01 { font-size: .36rem; text-align: center; line-height: 1.5; letter-spacing: -0.02em; }
  .test .teiki-block01 .txt02 { margin: .3rem 0 0; color: #333333; font-size: .28rem; line-height: 1.42; letter-spacing: 0.04em; text-align: center; }
  .test .zyuken { padding: 0 0 .86rem; background: #fdebeb; }
  .test .zyuken-ttl { padding: .45rem 0; background: #f03f33; }
  .test .zyuken-ttl-wrap { width: 2.48rem; margin: 0 0 0 2.35rem; position: relative; }
  .test .zyuken-ttl-wrap::before { content: ''; width: .85rem; height: .85rem; background: url(../img/common/test_icon01.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -1.17rem; transform: translateY(-50%); }
  .test .zyuken-pic01 { margin: .5rem auto 0; }
  .test .zyuken-txt01 { margin: .4rem 0 0; position: relative; color: #f03f33; font-size: .48rem; text-align: center; letter-spacing: -0.02em; line-height: 1; }
  .test .zyuken-txt01::before { content: ''; width: 4.39rem; height: 1px; background-size: 6px 1px; background-repeat: repeat; background-image: linear-gradient(to right, #000, #000 5px, transparent 5px, transparent 6px); position: absolute; top: .87rem; left: 50%; transform: translateX(-50%); }
  .test .zyuken-txt02 { margin: .8rem 0 0; font-size: .36rem; text-align: center; line-height: 1.5; letter-spacing: -0.02em; }
  .test .zyuken-txt02 .line { padding: .14rem 0; background: linear-gradient(transparent 40%, #fdef02 40%, #fdef02 90%, transparent 90%); }
  .test .zyuken-txt03 { margin: .5rem 0 0; }
  .test .zyuken-list01 { margin: .5rem 0 0; }
  .test .zyuken-item { margin: .3rem 0 0; padding: 0 0 0 1.13rem; position: relative; }
  .test .zyuken-item:first-child { margin: 0; }
  .test .zyuken-item-txt01 { position: relative; font-size: .4rem; line-height: 1.35; letter-spacing: -0.02em; }
  .test .zyuken-item-txt01 .red { color: #f03f33; }
  .test .zyuken-item-txt01::before { content: ''; width: .64rem; height: .64rem; background: url(../img/common/test_icon02.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -.98rem; transform: translateY(-50%); }
  .test .zyuken-block01 { margin: .5rem 0 0; border: .08rem solid #f03f33; border-radius: .1rem; }
  .test .zyuken-block01 .ttl01 { padding: .34rem 0; background: #f03f33; }
  .test .zyuken-block01 .ttl01-wrap { width: 4.82rem; margin: 0 auto; }
  .test .zyuken-block01 .content01 { padding: .45rem 0 .5rem; background: #fff; }
  .test .zyuken-block01 .txt01 { font-size: .36rem; text-align: center; line-height: 1.5; letter-spacing: -0.02em; }
  .test .zyuken-block01 .txt02 { margin: .3rem 0 0; color: #333333; font-size: .28rem; line-height: 1.42; letter-spacing: 0.04em; text-align: center; } }

@media screen and (min-width: 768px) { .test .teiki { padding: 0 0 86px; background: #fdebeb; }
  .test .teiki-ttl { padding: 45px 0; background: #f03f33; }
  .test .teiki-ttl-wrap { width: 433px; margin: 0 0 0 318px; position: relative; }
  .test .teiki-ttl-wrap::before { content: ''; width: 85px; height: 85px; background: url(../img/common/test_icon01.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -124px; transform: translateY(-50%); }
  .test .teiki-pic01 { width: 690px; margin: 52px auto 0; }
  .test .teiki-txt01 { margin: 47px 0 0; position: relative; color: #f03f33; font-size: 48px; text-align: center; letter-spacing: -0.02em; line-height: 1; }
  .test .teiki-txt01::before { content: ''; width: 439px; height: 1px; background-size: 6px 1px; background-repeat: repeat; background-image: linear-gradient(to right, #000, #000 5px, transparent 5px, transparent 6px); position: absolute; top: 92px; left: 50%; transform: translateX(-50%); }
  .test .teiki-txt02 { margin: 90px 0 0; font-size: 24px; text-align: center; line-height: 1.66; letter-spacing: -0.02em; }
  .test .teiki-txt02 .line { padding: 4px 10px; background: #fdef02; }
  .test .teiki-txt03 { margin: 50px 0 0; }
  .test .teiki-list01 { margin: 55px 0 0; }
  .test .teiki-item { margin: 50px 0 0; padding: 0 0 0 189px; position: relative; }
  .test .teiki-item:first-child { margin: 0; }
  .test .teiki-item-txt01 { position: relative; font-size: 34px; line-height: 1; letter-spacing: -0.02em; }
  .test .teiki-item-txt01 .red { color: #f03f33; }
  .test .teiki-item-txt01::before { content: ''; width: 64px; height: 64px; background: url(../img/common/test_icon02.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -98px; transform: translateY(-50%); }
  .test .teiki-block01 { margin: 68px 0 0; border: 8px solid #f03f33; border-radius: 10px; }
  .test .teiki-block01 .ttl01 { padding: 39px 0; background: #f03f33; }
  .test .teiki-block01 .ttl01-wrap { width: 600px; margin: 0 auto; }
  .test .teiki-block01 .content01 { padding: 38px 0; background: #fff; }
  .test .teiki-block01 .txt01 { font-size: 30px; text-align: center; line-height: 1.6; letter-spacing: -0.02em; }
  .test .teiki-block01 .txt02 { margin: 30px 0 0; color: #333333; font-size: 20px; line-height: 1; letter-spacing: 0.04em; text-align: center; }
  .test .zyuken { padding: 0 0 99px; background: #fdebeb; }
  .test .zyuken-ttl { padding: 45px 0; background: #f03f33; }
  .test .zyuken-ttl-wrap { width: 247px; margin: 0 0 0 426px; position: relative; }
  .test .zyuken-ttl-wrap::before { content: ''; width: 85px; height: 85px; background: url(../img/common/test_icon01.png) no-repeat; background-size: 100% auto; position: absolute; top: 50%; left: -117px; transform: translateY(-50%); }
  .test .zyuken-pic01 { width: 690px; margin: 52px auto 0; }
  .test .zyuken-txt01 { margin: 47px 0 0; position: relative; color: #f03f33; font-size: 48px; text-align: center; letter-spacing: -0.02em; line-height: 1; }
  .test .zyuken-txt01::before { content: ''; width: 439px; height: 1px; background-size: 6px 1px; background-repeat: repeat; background-image: linear-gradient(to right, #000, #000 5px, transparent 5px, transparent 6px); position: absolute; top: 92px; left: 50%; transform: translateX(-50%); }
  .test .zyuken-txt02 { margin: 90px 0 0; font-size: 24px; text-align: center; line-height: 1.66; letter-spacing: -0.02em; }
  .test .zyuken-txt02 .line { padding: 4px 10px; background: #fdef02; }
  .test .zyuken-txt03 { margin: 50px 0 0; }
  .test .zyuken-block01 { margin: 32px 0 0; border: 8px solid #f03f33; border-radius: 10px; }
  .test .zyuken-block01 .ttl01 { padding: 39px 0; background: #f03f33; }
  .test .zyuken-block01 .ttl01-wrap { width: 482px; margin: 0 auto; }
  .test .zyuken-block01 .content01 { padding: 38px 0; background: #fff; }
  .test .zyuken-block01 .txt01 { font-size: 30px; text-align: center; line-height: 1.6; letter-spacing: -0.02em; }
  .test .zyuken-block01 .txt02 { margin: 30px 0 0; color: #333333; font-size: 20px; line-height: 1; letter-spacing: 0.04em; text-align: center; } }

/*==============================================================================
classroom
============================================================================= */
@media screen and (max-width: 767px) { .classroom .classroom-ttl { padding: .74rem 0 .7rem; background: url(../img/common/classroom_bg01_sp.jpg) no-repeat center/cover; color: #fff; font-size: .5rem; line-height: 1; letter-spacing: -0.02em; text-align: center; }
  .classroom .classroom-bg { background: #ceedfc; padding: .54rem 0 .72rem; }
  .classroom .classroom-access01 .txt01 { padding: .2rem 0; background: #073190; color: #fff; font-size: .4rem; line-height: 1; text-align: center; }
  .classroom .classroom-access01 .map01 { width: 100%; height: 3.4rem; }
  .classroom .classroom-access01 .map01 iframe { width: 100%; height: 100%; }
  .classroom .classroom-access01 .list01 { margin: .32rem 0 0; }
  .classroom .classroom-access01 .item { display: flex; align-items: center; margin: .1rem 0 0; }
  .classroom .classroom-access01 .item:first-child { margin: 0; }
  .classroom .classroom-access01 .item-ttl01 { min-width: 1.47rem; padding: .14rem 0; background: #073190; color: #fff; font-size: .28rem; line-height: 1; letter-spacing: -0.02em; text-align: center; }
  .classroom .classroom-access01 .item-txt01 { margin: 0 0 0 .17rem; font-size: .28rem; line-height: 1; letter-spacing: -0.02em; }
  .classroom .classroom-pic01 { width: 5.1rem; margin: .5rem auto 0; }
  .classroom .classroom-pagination-wrap01 { width: 5.1rem; margin: 0 auto; position: relative; }
  .classroom .classroom-pagination-wrap01 .classroom-pagination { width: 100%; position: absolute; top: .3rem; font-size: 0; }
  .classroom .classroom-pagination-wrap01 .classroom-pagination .swiper-pagination-bullet { width: .16rem; height: .16rem; margin: 0 .19rem; background: #d20000; border: 1px solid #d20000; opacity: 1; transition: .3s; }
  .classroom .classroom-pagination-wrap01 .classroom-pagination .swiper-pagination-bullet-active { background: #fff; border: 1px solid #d20000; }
  .classroom .classroom-pagination-wrap01 .classroom-prev { content: ""; margin: 0; position: absolute; width: .96rem; height: .96rem; top: -2.26rem; left: -.94rem; background: url(../img/common/classroom_prev01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .classroom .classroom-pagination-wrap01 .classroom-next { content: ""; margin: 0; position: absolute; width: .96rem; height: .96rem; top: -2.26rem; right: -.94rem; background: url(../img/common/classroom_next01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .classroom .classroom-pagination-wrap01 .swiper-button-prev:after, .classroom .classroom-pagination-wrap01 .swiper-button-next:after { content: none; }
  .classroom .classroom-btn01 { width: 4.2rem; margin: .86rem auto 0; }
  .classroom .classroom-block01 { margin: .6rem 0 0; border-radius: .1rem; border: .08rem solid #f03f33; }
  .classroom .classroom-block01-ttl { padding: .36rem 0; background: #f03f33; color: #fff; font-size: .4rem; letter-spacing: -.02em; line-height: 1; text-align: center; }
  .classroom .classroom-block01-content { padding: .6rem 0; background: #fff; }
  .classroom .classroom-block01-content .name01 { font-size: .34rem; letter-spacing: 0.06em; line-height: 1.4; text-align: center; }
  .classroom .classroom-block01-content .name01 .size01 { font-size: .4rem; }
  .classroom .classroom-block01-content .txt01 { width: 5.86rem; margin: .4rem auto 0; color: #333333; font-size: .28rem; line-height: 1.4; }
  .classroom02 .classroom-ttl { margin: 0 0 .55rem; } 

  /* LPO 202112 */
  .classroom_v2 .classroom-block01-wrap { display: flex;  align-items: center; justify-content: center; }
  .classroom_v2 .classroom-block01-wrap .pic01 { width: 1.53rem; margin: 0 0 0 .7rem; } }

@media screen and (min-width: 768px) { .classroom .classroom-ttl { padding: 74px 0 70px; background: url(../img/common/classroom_bg01_pc.jpg) no-repeat center/cover; color: #fff; font-size: 50px; line-height: 1; letter-spacing: -0.02em; text-align: center; }
  .classroom .classroom-bg { background: #ceedfc; padding: 54px 0 96px; }
  .classroom .classroom-access01 .txt01 { padding: 14px 0; background: #073190; color: #fff; font-size: 28px; line-height: 1; text-align: center; }
  .classroom .classroom-access01 .block01 { display: flex; justify-content: space-between; margin: 36px 0 0; }
  .classroom .classroom-access01 .map01 { width: 451px; height: 236px; }
  .classroom .classroom-access01 .map01 iframe { width: 100%; height: 100%; }
  .classroom .classroom-access01 .list01 { width: 485px; }
  .classroom .classroom-access01 .item { display: flex; align-items: center; margin: 8px 0 0; }
  .classroom .classroom-access01 .item:first-child { margin: 0; }
  .classroom .classroom-access01 .item-ttl01 { min-width: 112px; padding: 10px 0; background: #073190; color: #fff; font-size: 21px; line-height: 1; letter-spacing: -0.02em; text-align: center; }
  .classroom .classroom-access01 .item-txt01 { margin: 0 0 0 14px; font-size: 21px; line-height: 1; letter-spacing: -0.02em; }
  .classroom .classroom-pic01 { width: 510px; margin: 45px auto 0; }
  .classroom .classroom-pagination-wrap01 { width: 510px; margin: 0 auto; position: relative; font-size: 0; }
  .classroom .classroom-pagination-wrap01 .classroom-pagination { width: 100%; position: absolute; top: 30px; }
  .classroom .classroom-pagination-wrap01 .classroom-pagination .swiper-pagination-bullet { width: 16px; height: 16px; margin: 0 19px; background: #d20000; border: 1px solid #d20000; opacity: 1; transition: .3s; }
  .classroom .classroom-pagination-wrap01 .classroom-pagination .swiper-pagination-bullet-active { background: #fff; border: 1px solid #d20000; }
  .classroom .classroom-pagination-wrap01 .classroom-prev { content: ""; margin: 0; position: absolute; width: 80px; height: 80px; top: -227px; left: -98px; background: url(../img/common/classroom_prev01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .classroom .classroom-pagination-wrap01 .classroom-next { content: ""; margin: 0; position: absolute; width: 80px; height: 80px; top: -227px; right: -98px; background: url(../img/common/classroom_next01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .classroom .classroom-pagination-wrap01 .swiper-button-prev:after, .classroom .classroom-pagination-wrap01 .swiper-button-next:after { content: none; }
  .classroom .classroom-btn01 { width: 420px; margin: 86px auto 0; }
  .classroom .classroom-block01 { margin: 52px 0 0; border-radius: 10px; border: 8px solid #f03f33; }
  .classroom .classroom-block01-ttl { padding: 36px 0; background: #f03f33; color: #fff; font-size: 40px; letter-spacing: -.02em; line-height: 1; text-align: center; }
  .classroom .classroom-block01-content { padding: 40px 0; background: #fff; }
  .classroom .classroom-block01-content .name01 { font-size: 26px; letter-spacing: 0.06em; line-height: 1.4; text-align: center; }
  .classroom .classroom-block01-content .name01 .size01 { font-size: 30px; }
  .classroom .classroom-block01-content .txt01 { width: 883px; margin: 25px auto 0; color: #333333; font-size: 18px; line-height: 1.6; }
  .classroom02 .classroom-access01 { margin: 54px 0 0; } 

  /* LPO 202112 */
  .classroom_v2 .classroom-block01-wrap { display: flex;  align-items: center; justify-content: center; }
  .classroom_v2 .classroom-block01-wrap .pic01 { width: 134px; margin: 0 0 0 70px; } }

/*==============================================================================
example
============================================================================= */
@media screen and (max-width: 767px) { .example .example-bg { padding: .7rem 0 2.49rem; background: url(../img/common/example_bg01_sp.jpg) no-repeat center/cover; }
  .example .example-ttl01 { font-size: .63rem; letter-spacing: -0.02em; line-height: 1.33; }
  .example .example-ttl01 .red { color: #d20000; }
  .example .example-pic01 { width: 7.5rem; position: relative; left: 50%; transform: translateX(-50%); }
  .example .example-txt01 { margin: .5rem 0 0; font-size: .32rem; line-height: 1.71; letter-spacing: 0.06em; text-align: center; }
  .example .example-txt01 .yellow { padding: .1rem 0; background: #fff600; }
  .example .example-tab01 { margin: .7rem auto 0; }
  .example .example-tab01 .swiper-wrapper { display: flex; justify-content: space-between; align-items: center; margin: 0 auto; transform: translate(0) !important; }
  .example .example-tab01 .btn { width: 2.15rem !important; height: 1.17rem; }
  .example .example-tab01 .btn01 { background: url(../img/common/example_tab01_off.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn01.swiper-slide-thumb-active { background: url(../img/common/example_tab01_on.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn02 { background: url(../img/common/example_tab02_off.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn02.swiper-slide-thumb-active { background: url(../img/common/example_tab02_on.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn03 { background: url(../img/common/example_tab03_off.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn03.swiper-slide-thumb-active { background: url(../img/common/example_tab03_on.png) no-repeat; background-size: 100% auto; }
  .example .example-slider01 { margin: .37rem 0 0; }
  .example .example-slider01 .slide { padding: .49rem .4rem .56rem; background: #fff; border: .04rem solid #ed2315; border-radius: .2rem; }
  .example .example-slider01 .ttl01 { position: relative; color: #ed2315; font-size: .4rem; line-height: 1; text-align: center; }
  .example .example-slider01 .ttl01::before { content: ''; width: 6.1rem; height: 1px; border-bottom: dotted 1px #adadad; position: absolute; top: .65rem; left: 50%; transform: translateX(-50%); }
  .example .example-slider01 .txt01 { width: 6.1rem; margin: .6rem 0 0; font-size: .4rem; line-height: 1.5; text-align: center; }
  .example .example-slider01 .txt01 .yellow { padding: 0.05rem 0; background: #fff600; }
  .example .example-slider01 .arrow01 { width: .29rem; margin: .4rem auto 0; }
  .example .example-slider01 .movie01 { width: 6.08rem; margin: .26rem auto 0; }
  .example .example-pagination-wrap01 { position: relative; }
  .example .example-pagination-wrap01 .example-pagination { display: flex; justify-content: space-between; width: 1.5rem; position: absolute; top: .4rem; left: 50%; transform: translateX(-50%); }
  .example .example-pagination-wrap01 .example-pagination .swiper-pagination-bullet { width: .15rem; height: .15rem; background: #cf0102; opacity: 1; vertical-align: middle; transition: .3s; }
  .example .example-pagination-wrap01 .example-pagination .swiper-pagination-bullet-active { background: #fff; border: solid 1px #cf0102; }
  .example .example-pagination-wrap01 .example-prev { width: .96rem; height: .96rem; position: absolute; top: -5.2rem; left: -.26rem; background: url(../img/common/example_prev01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .example .example-pagination-wrap01 .example-prev::after { content: none; }
  .example .example-pagination-wrap01 .example-next { width: .96rem; height: .96rem; position: absolute; top: -5.2rem; right: -.26rem; background: url(../img/common/example_next01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .example .example-pagination-wrap01 .example-next::after { content: none; } 

  /* LPO 202112 */
  .example_v2 .example-bg { padding: .7rem 0 1.2rem; background: url(../img/common/example_bg01_sp.jpg) no-repeat center/cover; } }

@media screen and (min-width: 768px) { .example .example-bg { padding: 70px 0 197px; background: url(../img/common/example_bg01_pc.jpg) no-repeat center/cover; }
  .example .example-ttl01 { font-size: 46px; letter-spacing: -0.02em; line-height: 1.43; text-align: center; }
  .example .example-ttl01 .red { color: #d20000; }
  .example .example-pic01 { margin: -20px 0 0; }
  .example .example-txt01 { margin: 40px 0 0; font-size: 28px; line-height: 1.71; letter-spacing: 0.06em; text-align: center; }
  .example .example-txt01 .yellow { padding: 5px 0; background: #fff600; }
  .example .example-tab01 { width: 690px; margin: 40px auto 0; }
  .example .example-tab01 .swiper-wrapper { display: flex; justify-content: space-between; align-items: center; margin: 0 auto; transform: translate(0) !important; }
  .example .example-tab01 .btn { width: 215px !important; height: 117px; cursor: pointer; }
  .example .example-tab01 .btn01 { background: url(../img/common/example_tab01_off.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn01.swiper-slide-thumb-active { background: url(../img/common/example_tab01_on.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn02 { background: url(../img/common/example_tab02_off.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn02.swiper-slide-thumb-active { background: url(../img/common/example_tab02_on.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn03 { background: url(../img/common/example_tab03_off.png) no-repeat; background-size: 100% auto; }
  .example .example-tab01 .btn03.swiper-slide-thumb-active { background: url(../img/common/example_tab03_on.png) no-repeat; background-size: 100% auto; }
  .example .example-slider01 { width: 920px; margin: 26px auto 0; }
  .example .example-slider01 .slide { padding: 40px 35px; background: #fff; border: 4px solid #ed2315; border-radius: 20px; }
  .example .example-slider01 .ttl01 { position: relative; color: #ed2315; font-size: 34px; line-height: 1; text-align: center; }
  .example .example-slider01 .ttl01::before { content: ''; width: 850px; height: 1px; border-bottom: dotted 2px #adadad; position: absolute; top: 60px; left: 50%; transform: translateX(-50%); }
  .example .example-slider01 .txt01 { margin: 60px 0 0; font-size: 30px; line-height: 1; letter-spacing: 0.04em; text-align: center; }
  .example .example-slider01 .txt01 .yellow { padding: 5px 0; background: #fff600; }
  .example .example-slider01 .arrow01 { width: 46px; margin: 20px auto 0; }
  .example .example-slider01 .movie01 { width: 608px; margin: 20px auto 0; cursor: pointer; transition: opacity .3s; }
  .example .example-slider01 .movie01:hover { opacity: 0.7; }
  .example .example-pagination-wrap01 { width: 920px; margin: 0 auto; position: relative; }
  .example .example-pagination-wrap01 .example-pagination { display: flex; justify-content: space-between; width: 120px; position: absolute; top: 20px; left: 50%; transform: translateX(-50%); }
  .example .example-pagination-wrap01 .example-pagination .swiper-pagination-bullet { width: 15px; height: 15px; background: #cf0102; opacity: 1; vertical-align: middle; transition: .3s; }
  .example .example-pagination-wrap01 .example-pagination .swiper-pagination-bullet-active { background: #fff; border: solid 1px #cf0102; }
  .example .example-pagination-wrap01 .example-prev { width: 60px; height: 60px; position: absolute; top: -380px; left: -30px; background: url(../img/common/example_prev01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .example .example-pagination-wrap01 .example-prev::after { content: none; }
  .example .example-pagination-wrap01 .example-next { width: 60px; height: 60px; position: absolute; top: -380px; right: -30px; background: url(../img/common/example_next01.png) no-repeat; background-size: 100% auto; cursor: pointer; }
  .example .example-pagination-wrap01 .example-next::after { content: none; } }

/*==============================================================================
cycle
============================================================================= */
@media screen and (max-width: 767px) { .cycle .cycle-bg { position: relative; padding: 3.51rem 0 .69rem; background: url(../img/common/cycle_bg01_sp.png) no-repeat; background-size: 100% auto; background-position: top 7.41rem center; }
  .cycle .cycle-inner { position: initial; }
  .cycle .cycle-ttl01 { width: 7.5rem; position: absolute; top: -1.2rem; left: 50%; transform: translateX(-50%); }
  .cycle .cycle-txt01 { width: 6.6rem; }
  .cycle .cycle-block01 { margin: 3.58rem auto 0; padding: 1.18rem 0 .6rem; background: #fff; position: relative; border: .05rem solid #0736a9; border-radius: .1rem; }
  .cycle .cycle-txt02 { width: 5.66rem; position: absolute; top: -.78rem; left: 50%; transform: translateX(-50%); }
  .cycle .cycle-txt03 { width: 6.27rem; margin: 0 auto; }
  .cycle .cycle-txt04 { margin: .35rem 0 0 .4rem; font-size: 0; }
  .cycle .cycle-txt04 .blue { display: inline-block; color: #0736a9; font-size: .46rem; line-height: 1; letter-spacing: 0.06em; }
  .cycle .cycle-txt04 .red { display: inline-block; color: #e60012; font-size: .5rem; line-height: 1.5; letter-spacing: 0.02em; border-bottom: .06rem solid #e60012; }
  .cycle .cycle-pic01 { width: 2.53rem; position: absolute; bottom: 0; left: 5.35rem; } }

@media screen and (min-width: 768px) { .cycle .cycle-bg { padding: 0 0 79px; background: url(../img/common/cycle_bg01_pc.png) no-repeat; background-size: 2000px auto; background-position: top center; }
  .cycle .cycle-ttl01 { width: 673px; margin: 0 auto; position: relative; top: -49px; }
  .cycle .cycle-txt01 { width: 698px; margin: 0 auto; }
  .cycle .cycle-block01 { margin: 90px auto 0; padding: 89px 0 69px; background: #fff; position: relative; border: 8px solid #0736a9; border-radius: 10px; }
  .cycle .cycle-txt02 { width: 736px; position: absolute; top: -60px; left: 50%; transform: translateX(-50%); }
  .cycle .cycle-txt03 { width: 627px; margin: 0 auto; }
  .cycle .cycle-txt04 { margin: 27px 0 0 180px; }
  .cycle .cycle-txt04 .blue { display: inline-block; color: #0736a9; font-size: 46px; line-height: 1; letter-spacing: 0.06em; }
  .cycle .cycle-txt04 .red { display: inline-block; color: #e60012; font-size: 50px; line-height: 1.5; letter-spacing: 0.02em; border-bottom: 6px solid #e60012; }
  .cycle .cycle-pic01 { width: 260px; position: absolute; bottom: 0; left: 701px; } }

/*==============================================================================
header-nav
============================================================================= */
@media screen and (max-width: 767px) { .header-nav { display: none; position: fixed; max-width: 750px; width: 100%; top: 0; left: 0; right: 0; margin: 0 auto; z-index: 1000; }
  .header-nav-list { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; border-top: #073190 solid 1px; border-bottom: #073190 solid 1px; }
  .header-nav-item { width: 25%; }
  .header-nav-item + .header-nav-item { border-left: #073190 solid 1px; }
  .header-nav-item a { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: 100%; height: .98rem; background: #fff; background: linear-gradient(#fff, #d8e4ff); color: #073190; font-size: .26rem; font-weight: bold; text-align: center; letter-spacing: .04em; line-height: 1.3; }
  .header-nav-item.active a { background: #073190; background: linear-gradient(#073190, #2d56b4); color: #fff; } }

/*==============================================================================
cta
============================================================================= */
@media screen and (max-width: 767px) { .cta-bg { padding: .5rem 0; background: url(../img/common/cta_bg01_sp.jpg) no-repeat 50% 0/cover; }
  .cta-block { padding: .3rem 0; border: solid #0c7ec9 .04rem; border-radius: .1rem; background: #fff; }
  .cta-ttl { color: #1d3b69; font-size: .36rem; line-height: 1.2; font-weight: 700; text-align: center; }
  .cta-campain { width: 6.32rem; margin: .2rem auto 0; }
  .cta-txt { width: 6.3rem; margin: .2rem auto 0; }
  .cta-btn01 { width: 6.3rem; margin: .25rem 0 0 .2rem; }
  .cta-txt04 { margin: .15rem 0 0; font-size: .28rem; font-weight: bold; text-align: center; letter-spacing: .05em; }
  .cta-tel-box { margin: .25rem 0 0; padding: .2rem 0 .28rem; background: url(../img/common/cta_tel_bg.png); font-size: .26rem; }
  .cta-tel-txt01 { font-weight: bold; text-align: center; letter-spacing: .08em; }
  .cta-tel-num01 { width: 6rem; margin: .16rem auto 0; }
  .cta-tel-txt02 { margin: .1rem 0 0; text-align: center; }
  .cta-link01 { width: 3rem; margin: .3rem auto 0; border-bottom: solid 1px #1d3b69; font-size: .34rem; font-weight: 700; letter-spacing: .06em; }
  .cta-link01 a { color: #1d3b69; }
  .cta-note01 { margin: .2rem 0 0; color: #fff; font-size: .18rem; line-height: 1.38; } }

@media screen and (min-width: 768px) { .cta-bg { padding: 60px 0 25px; background: url(../img/common/cta_bg01_pc.png) no-repeat 50% 0/cover; }
  .cta-block { padding: 25px 25px 22px; border: solid #0c7ec9 5px; border-radius: 10px; background: #fff; }
  .cta-ttl { color: #1d3b69; font-size: 36px; line-height: 1.2; font-weight: 700; text-align: center; }
  .cta-campain { margin: 16px auto 0; }
  .cta-txt { width: 678px; margin: 20px auto 0; }
  .cta-btn01 { width: 627px; margin: 32px auto 0; }
  .cta-txt04 { margin: 18px 0 0; font-size: 26px; font-weight: bold; text-align: center; }
  .cta-tel-box { display: flex; justify-content: space-between; align-items: center; margin: 18px -25px 0; padding: 14px 68px; background: url(../img/common/cta_tel_bg.png); }
  .cta-tel-txt01 { font-size: 20px; font-weight: bold; letter-spacing: .04em; }
  .cta-tel-txt02 { font-size: 14px; }
  .cta-link01 { width: 187px; margin: 20px auto 0; border-bottom: solid 1px #1d3b69; font-size: 22px; font-weight: 600; letter-spacing: .06em; }
  .cta-link01 a { color: #1d3b69; }
  .cta-note01 { width: 450px; margin: 9px 0 0 auto; color: #fff; font-size: 14px; line-height: 1.3; } }

/*==============================================================================
Method01
============================================================================= */
@media screen and (max-width: 767px) { .method .bg { background: url(../img/common/method_bg01.png); }
  .method-ttl { width: 6.65rem; margin: 0 auto; padding: .75rem 0 .8rem; }
  .method-subttl { margin: .6rem 0 0; font-size: .7rem; font-weight: bold; text-align: center; line-height: 1.2; }
  .method-lead { margin: .4rem 0 0; font-size: .3rem; font-weight: bold; text-align: center; line-height: 1.7; }
  .method-lead .emphasise { display: inline-block; margin: .05rem 0; padding: 0 .06rem; background: #0736a9; color: #fff; letter-spacing: .06em; line-height: 1.45; }
  .method-balloon { position: relative; width: 5.8rem; margin: .5rem auto -1rem; }
  .method .detail-block { padding: 1.2rem 0 0; border-radius: .1rem; border: solid #f03f33 .08rem; background: #fff; }
  .method01 .bg { padding: 0 0 .8rem; }
  .method01 .detail-item .lead { padding: .28rem 0 .28rem; font-size: .3rem; font-weight: bold; text-align: center; line-height: 1.66; letter-spacing: .06em; }
  .method01 .detail-item .lead .red { color: #f03f33; font-size: .44rem; }
  .method01 .detail-item .pic { width: 6.1rem; margin: 0 auto; }
  .method01 .detail-item .txt01 { padding: .3rem .3rem .6rem .3rem; font-size: .28rem; letter-spacing: .04em; }

  /* LPO 202112 */
  .method_v2 .method-band { width: 7.5rem; position: relative; left: 50%; transform: translateX(-50%); }
  .method_v2 .method-band::before { content: ''; width: 5.66rem; height: .9rem; background: url(../img/common/method_btn_open_sp.png) no-repeat center/cover; position: absolute; bottom: .45rem; left: 50%; transform: translateX(-50%); }
  .method_v2 .method-band.open::before { background: url(../img/common/method_btn_close_sp.png) no-repeat center/cover; } }

@media screen and (min-width: 768px) { .method .bg { background: url(../img/common/method_bg01.png); }
  .method-band { min-width: 2000px; position: relative; left: 50%; transform: translateX(-50%); }
  .method-ttl { width: 665px; margin: 65px auto 40px; }
  .method-subttl { margin: 60px 0 0; font-size: 60px; font-weight: bold; text-align: center; line-height: 1.2; letter-spacing: .1em; }
  .method-lead { margin: 45px 0 0; font-size: 26px; font-weight: bold; text-align: center; line-height: 1.7; }
  .method-lead .emphasise { display: inline-block; margin: 7px 0 0; padding: 0 6px; background: #0736a9; color: #fff; letter-spacing: .06em; line-height: 1.45; }
  .method-balloon { position: relative; width: 620px; margin: 60px auto -50px; }
  .method .detail-block { display: flex; align-items: center; padding: 60px 0; border-radius: 7px; border: solid #f03f33 8px; background: #fff; }
  .method01 .bg { padding: 0 0 100px; }
  .method01 .detail-item { width: 490px; padding: 25px 25px 0; }
  .method01 .detail-item:first-of-type { border-right: dotted 5px #f03f33; }
  .method01 .detail-item h4 { width: 420px; margin: 0 auto; }
  .method01 .detail-item .lead { padding: 55px 0 40px; font-size: 20px; font-weight: bold; text-align: center; line-height: 1.66; letter-spacing: .06em; }
  .method01 .detail-item .lead .red { color: #f03f33; font-size: 37px; }
  .method01 .detail-item .txt01 { padding: 30px 0 0; font-size: 18px; letter-spacing: .04em; line-height: 1.66; } 
  
  /* LPO 202112 */
  .method_v2 .method-band { width: 100%; min-width: initial; cursor: pointer; position: relative; }
  .method_v2 .method-band::before { content: ''; width: 490px; height: 55px; background: url(../img/common/method_btn_open_pc.png) no-repeat center/cover; position: absolute; bottom: 35px; left: 50%; transform: translateX(-50%); }
  .method_v2 .method-band.open::before { background: url(../img/common/method_btn_close_pc.png) no-repeat center/cover; }
  .method_v2.method01 .bg { padding: 74px 0 100px; } }

@media all and (-ms-high-contrast: none) { 
  .method01 .detail-item .lead { letter-spacing: 0; }

  /* LPO 202112 */
  .method_v2 .method-band { min-width: 100%; } }

/*==============================================================================
Method02
============================================================================= */
@media screen and (max-width: 767px) { .method02 .bg { padding: 0 0 1rem; }
  .method02 .detail-block .img01 { width: 6.1rem; margin: 0 auto; }
  .method02 .detail-block .txt01 { padding: .28rem .42rem .62rem; font-size: .28rem; } }

@media screen and (min-width: 768px) { .method02 .bg { padding: 0 0 100px; }
  .method02 .detail-block { flex-direction: row-reverse; justify-content: space-between; padding: 75px 35px 45px; }
  .method02 .method-lead .emphasise01 { padding: 0 0 0 6px; }
  .method02 .method-lead .emphasise02 { padding: 0 6px 0 0; }
  .method02 .detail-block .txt01 { width: 460px; font-size: 20px; font-weight: bold; line-height: 2; text-align: center; } }

/*==============================================================================
Method03
============================================================================= */
@media screen and (max-width: 767px) { .method03 .bg { padding: 0 0 .8rem; }
  .method03 .txt02 { padding: .5rem .3rem; background: #f03f33; border-radius: 0 0 .1rem .1rem; color: #333; font-size: .5rem; font-weight: bold; line-height: 1.5; text-align: center; }
  .method03 .txt02 .white { color: #fff; }
  .method03 .detail-block { margin: .5rem 0 0; padding: .7rem .5rem .7rem; border-radius: .1rem .1rem 0 0; }
  .method03 .detail-block .txt01 { width: 5.75rem; margin: 0 auto; font-size: .28rem; letter-spacing: 0.06em; }
  .method03 .detail-block .txt01 + .txt01 + .txt01 { margin: .35rem auto 0; }
  .method03 .detail-block .point { width: 6.1rem; margin: .45rem -.15rem 0; }
  .method03 .manager { border-radius: .1rem; }
  .method03 .manager .ttl01 { font-size: .5rem; font-weight: bold; letter-spacing: .05em; text-align: center; }
  .method03 .manager .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-around; }
  .method03 .manager .img01 { width: 2.29rem; margin: .5rem 0 0; }
  .method03 .manager .wrap .name { font-size: .34rem; font-weight: bold; letter-spacing: .06em; }
  .method03 .manager .wrap .emphasise { font-size: .4rem; }
  .method03 .manager .txt03 { margin: .5rem 0 0; font-size: .28rem; line-height: 1.42; letter-spacing: 0.1em; } }

@media screen and (min-width: 768px) { .method03 .bg { padding: 0 0 80px; }
  .method03 .txt02 { padding: 35px 0; background: #f03f33; border-radius: 0 0 7px 7px; color: #333; font-size: 40px; font-weight: bold; line-height: 1.5; letter-spacing: .1em; text-align: center; }
  .method03 .txt02 .white { color: #fff; }
  .method03 .method-balloon { width: 580px; margin: 65px auto -140px; }
  .method03 .detail-block { display: block; padding: 170px 30px 40px; border-radius: 7px 7px 0 0; }
  .method03 .detail-block .txt01 { font-size: 18px; line-height: 1.66; letter-spacing: .1em; }
  .method03 .detail-block .txt01 + .txt01 { margin: 35px 0 0; }
  .method03 .detail-block .point { width: 908px; margin: 45px 0 0; }
  .method03 .manager { margin: 50px 0 0; padding: 39px 50px 50px; border-radius: 7px; }
  .method03 .manager .ttl01 { font-size: 55px; font-weight: bold; letter-spacing: .06em; line-height: 1.4; }
  .method03 .manager .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; width: 735px; margin: 0 auto; }
  .method03 .manager .wrap .img01 { width: 173px; }
  .method03 .manager .wrap .name { font-size: 26px; font-weight: bold; letter-spacing: .06em; }
  .method03 .manager .wrap .emphasise { font-size: 30px; }
  .method03 .manager .txt03 { margin: 25px 0 0; font-size: 18px; line-height: 2; letter-spacing: 0.1em; } }

/*==============================================================================
Needs
============================================================================= */
@media screen and (max-width: 767px) { .needs .bg { padding: .4rem 0 1rem; }
  .needs .detail-block { border-radius: .1rem .1rem 0 0; border: solid #f03f33 .08rem; background: #fff; }
  .needs .slider-block { padding: .3rem .3rem 1.2rem; }
  .needs .swiper-container { margin: .3rem 0 0; overflow: hidden; }
  .needs .swiper-slide .example-item { margin: .36rem 0 0; }
  .needs .swiper-slide .example-item .txt01 { width: 2.96rem; height: .72rem; margin: 0 0 0 .02rem; padding: .28rem 0 0; background: url(../img/common/method02_deco01.png) no-repeat 50% 0; background-size: cover; color: #fff; font-size: .3rem; font-weight: bold; text-align: center; line-height: 1; }
  .needs .swiper-slide .example-item .txt02 { width: 6.1rem; margin: .18rem -.18rem 0 0; padding: 0 0 .14rem; border-bottom: dotted .03rem #1040ab; font-size: .33rem; font-weight: bold; line-height: 1.3; letter-spacing: -0.04em; }
  .needs .swiper-slide .example-item .txt03 { padding: .24rem 0 0; font-size: .24rem; letter-spacing: 0.04em; }
  .needs .swiper-slide .example-item .txt03.ls { letter-spacing: 0; }
  .needs .swiper-pagination01 { position: relative; display: flex; justify-content: space-between; width: 6.1rem; }
  .needs .swiper-pagination01 .swiper-pagination-bullet { box-sizing: border-box; opacity: 1; width: 1.45rem; height: 1.16rem; padding: .18rem 0 0; border-radius: 0; background: url(../img/common/method02-slider_tab01.png) no-repeat 50% bottom; background-size: cover; color: #fff; font-size: .32rem; font-weight: bold; text-align: center; line-height: 1.3; }
  .needs .swiper-pagination01 .swiper-pagination-bullet-active { background-position: 50% 0; }
  .needs .swiper-pagination01 .swiper-pagination-bullet .small { font-size: .22rem; }
  .needs .ttl01 { background: #f03f33; }
  .needs .ttl01 img { position: relative; top: -.55rem; width: 5.15rem; margin: 0 auto; }
  .needs .block02 { border-radius: 0 0 .1rem .1rem; }
  .needs .block02 .img01 { width: 6.1rem; margin: .6rem auto 0; }
  .needs .block02 .lead01 { margin: .26rem .42rem 0; font-size: .28rem; }
  .needs .block02-list { margin: .6rem 0 0; padding: 0 .32rem; }
  .needs .block02-item { padding: 0 0 .52rem; }
  .needs .block02-item h5 { padding: 0 0 .1rem; border-bottom: dotted .05rem #f03f33; color: #f03f33; font-size: .44rem; font-weight: bold; text-align: center; line-height: 1.2; }
  .needs .block02-item h5 .small { font-size: .32rem; }
  .needs .block02-item .photo { margin: .24rem 0 0; }
  .needs .block02-item .txt01 { margin: .2rem 0 0; font-size: .28rem; }
  .needs .block02-item .txt02 { font-size: .24rem; } }

@media screen and (min-width: 768px) { .needs .bg { padding: 65px 0 100px; background: url(../img/common/method_bg01.png); }
  .needs .detail-block { padding: 40px 30px 100px; background: white; border: 9px solid #f03f33; border-radius: 7px 7px 0 0; }
  .needs .lead02 { margin: 40px 0 0; color: #f03f33; font-size: 38px; font-weight: bold; text-align: center; }
  .needs .lead02 .color { display: inline-block; margin: 0 5px 0 0; padding: 0 10px; background-color: #f03f33; color: #fff; }
  .needs .slider-block { position: relative; margin: 136px 0 0; }
  .needs .slider-block .swiper-pagination01 { top: -116px; display: flex; justify-content: space-between; width: 904px; }
  .needs .slider-block .swiper-pagination01 .swiper-pagination-bullet { box-sizing: border-box; opacity: 1; width: 217px; height: 88px; padding: 10px 0 0; border-radius: 0; background: url(../img/common/method02_tab02.png) no-repeat 50% 0/cover; color: #fff; font-size: 30px; font-weight: bold; text-align: center; line-height: 1.2; }
  .needs .slider-block .swiper-pagination01 .swiper-pagination-bullet .small { display: block; font-size: 20px; line-height: 1.4; }
  .needs .slider-block .swiper-pagination01 .swiper-pagination-bullet.swiper-pagination-bullet-active { background-image: url(../img/common/method02_tab01.png); }
  .needs .flex04 { display: flex; justify-content: space-between; }
  .needs .lead05 { width: 337px; }
  .needs .example-list { width: 540px; }
  .needs .example-item:not(:first-of-type) { margin: 22px 0 0; }
  .needs .example-item { display: flex; flex-wrap: wrap; align-items: center; }
  .needs .example-item .txt01 { width: 124px; height: 44px; padding: 16px 12px 0 0; background: url(../img/common/method02_item02.png) no-repeat 50% 0/contain; color: #fff; font-size: 16px; font-weight: bold; text-align: right; }
  .needs .example-item .txt02 { padding: 14px 0 0 12px; font-size: 20px; font-weight: bold; line-height: 1.3; }
  .needs .example-item .txt03 { margin: 16px 0 0; font-size: 16px; letter-spacing: .03em; }
  .needs .ttl01 { background: #f03f33; }
  .needs .ttl01 img { width: 703px; margin: 0 auto; }
  .needs .block02 { padding: 0 0 65px; border-radius: 0 0 7px 7px; }
  .needs .block02 .img01 { width: 914px; margin: 60px auto 0; }
  .needs .block02 .lead01 { margin: 25px 0 0; font-size: 18px; letter-spacing: .04em; line-height: 1.88; text-align: center; }
  .needs .block02-list { display: flex; justify-content: space-between; margin: 50px 0 0; }
  .needs .block02-item { width: 480px; padding: 20px 0 0; }
  .needs .block02-item:first-of-type { border-right: dotted 5px #f03f33; }
  .needs .block02-item h5 { color: #f03f33; font-size: 40px; font-weight: bold; line-height: 1; text-align: center; }
  .needs .block02-item h5 .small { color: #f03f33; font-size: 22px; }
  .needs .block02-item .photo { width: 420px; margin: 30px auto 0; }
  .needs .block02-item .txt01 { width: 420px; margin: 30px auto 0; font-size: 18px; line-height: 1.66; }
  .needs .block02-item .txt02 { width: 420px; margin: 0 auto; font-size: 14px; line-height: 1.8; } }

/*==============================================================================
Faq
============================================================================= */
@media screen and (max-width: 767px) { .faq-bg { padding: .7rem 0 .8rem; background-color: #09449f; }
  .faq-ttl { color: #fff; font-size: 0.6rem; font-weight: bold; text-align: center; }
  .faq-list { margin: 0.4rem 0 0; }
  .faq-item { margin: 0.3rem 0 0; }
  .faq-block { background-color: #fff; border-radius: 0.05rem; }
  .faq-question { display: table; position: relative; width: 100%; height: 1.4rem; }
  .faq-question .q { display: table-cell; width: 1rem; color: #ed2315; font-family: Arial,Helvetica,sans-serif; font-size: 0.7rem; font-weight: bold; text-align: center; vertical-align: middle; }
  .faq-question .txt { display: table-cell; width: calc(100% - 1.4rem); color: #002a6a; font-size: 0.32rem; font-weight: bold; line-height: 1.4; vertical-align: middle; }
  .faq-question .btn { box-sizing: border-box; position: absolute; top: 0; right: -0.01rem; width: 1.2rem; height: 1.42rem; padding: 0.7rem 0 0; border-radius: 0 0.05rem 0.05rem 0; background-color: #002a6a; color: #fff; font-size: 0.24rem; font-weight: bold; text-align: center; }
  .faq-question .btn::after { content: ""; display: inline-block; position: absolute; top: 0.4rem; left: 0; right: 0; margin: 0 auto; width: 0.21rem; height: 0.14rem; background: url(../img/common/faq_arrow.png) no-repeat 50% 0/contain; transform: rotate(180deg); }
  .faq-question .btn.open { border-radius: 0 0.05rem 0 0; }
  .faq-question .btn.open::after { transform: rotate(0); }
  .faq-answer { display: none; border-top: 0.02rem dashed #002a6a; padding: 0.34rem 0.24rem; font-size: 0.28rem; letter-spacing: 0.04em; }
  .faq-answer .color { color: #ed2315; font-weight: bold; }
  .faq-answer.ls { letter-spacing: -0.05em; } }

@media screen and (min-width: 768px) { .faq-bg { padding: 68px 0 100px; background-color: #09449f; }
  .faq-ttl { color: #fff; font-size: 60px; font-weight: bold; text-align: center; }
  .faq-block { background: #fff; border-radius: 7px; }
  .faq-list { display: flex; flex-wrap: wrap; margin: 50px -35px 0 0; }
  .faq-item { width: 470px; margin: 35px 35px 0 0; }
  .faq-item:nth-child(even) { margin: 35px 0 0; }
  .faq-question { display: table; position: relative; width: 100%; height: 100px; cursor: pointer; }
  .faq-question .q { display: table-cell; width: 70px; color: #ed2315; font-family: Arial,Helvetica,sans-serif; font-size: 52px; text-align: center; vertical-align: middle; }
  .faq-question .txt { display: table-cell; width: calc(100% - 70px); color: #002a6a; font-size: 22px; font-weight: bold; vertical-align: middle; }
  .faq-question .btn { display: block; position: absolute; top: 0; right: 0; width: 102px; height: 102px; padding-top: 55px; background-color: #002a6a; border-radius: 0 7px 7px 0; color: #fff; font-size: 16px; font-weight: bold; text-align: center; box-sizing: border-box; pointer-events: none; transition: all .7s; }
  .faq-question .btn.open { border-radius: 0 7px 0 0; }
  .faq-question .btn::after { display: inline-block; position: absolute; top: 26px; right: 0; left: 0; width: 22px; height: 14px; margin: 0 auto; background: url(../img/common/faq_arrow.png) no-repeat 50% 0/contain; content: ""; transform: rotate(180deg); pointer-events: none; transition: transform .3s; }
  .faq-answer { display: none; padding: 25px 20px 30px; border-top: 2px dashed #002a6a; font-size: 17px; font-weight: normal; line-height: 1.9; letter-spacing: .04em; }
  .faq-answer .color { color: #ed2315; font-weight: bold; } }

/*===============================================================================
modal
===============================================================================*/
@media screen and (max-width: 767px) { .modal { display: none; }
  .modal .modal-bg { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1000; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); }
  .modal .modal-block { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1001; width: 6.4rem; height: 3.52rem; margin: auto; background-color: #fff; }
  .modal .modal-block iframe { width: 100%; }
  .modal .modal-close { display: block; position: absolute; top: -.6rem; right: 0; width: .5rem; height: .5rem; transform: rotate(-45deg); }
  .modal .modal-close .border01 { width: 100%; height: .07rem; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background-color: #fff; }
  .modal .modal-close .border02 { width: .07rem; height: 100%; position: absolute; top: 0; left: 50%; transform: translateX(-50%); background-color: #fff; } }

@media screen and (min-width: 768px) { .modal { display: none; }
  .modal .modal-bg { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1000; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.8); }
  .modal .modal-block { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1001; width: 1000px; height: 548px; margin: auto; background-color: #fff; }
  .modal .modal-block iframe { width: 100%; }
  .modal .modal-close { display: block; position: absolute; top: -64px; right: 0; width: 64px; height: 64px; background-color: #000; cursor: pointer; }
  .modal .modal-close .border01 { position: absolute; top: 30px; left: 15px; width: 34px; height: 3px; background-color: #fff; transform: rotate(45deg); }
  .modal .modal-close .border02 { position: absolute; top: 30px; left: 15px; width: 34px; height: 3px; background-color: #fff; transform: rotate(315deg); } }

/*==============================================================================
footer
============================================================================= */
@media screen and (max-width: 767px) { .footer-bg { padding: 0.3rem 0; background-color: #00183e; }
  .footer-txt { color: #fff; font-family: 'Century Gothic',Arial,sans-serif; font-size: 0.24rem; text-align: center; letter-spacing: .08em; } }

@media screen and (min-width: 768px) { .footer-bg { padding: 40px 0; background-color: #00183e; }
  .footer-txt { color: #fff; font-family: 'Century Gothic',Arial,sans-serif; font-size: 14px; text-align: center; letter-spacing: .08em; } }

/*==============================================================================
footer-nav
============================================================================= */
@media screen and (max-width: 767px) { .footer-nav { display: none; width: 7.5rem; height: 1.06rem; }
  .footer-nav-bg { display: flex; justify-content: space-between; align-items: center; position: fixed; z-index: 1000; bottom: 0; left: 0; right: 0; width: 7.5rem; height: 1.06rem; padding: 0 0.3rem; margin: 0 auto; border-top: solid 1px #e6e8ec; background: #fff; }
  .footer-nav-btn01 { width: 4rem; }
  .footer-nav-btn02 { width: 1.5rem; }
  .footer-nav-btn03 { width: 1rem; } }


/*追記*/

/*oricon▼*/
@media screen and (min-width: 768px){
	.oricon .oricon-bg {
		padding: 0;
		/*background:#171c61;*/
		/*background:#fff0fa;*/
	}
}
@media screen and (max-width: 767px){
	.oricon .oricon-bg {
		padding: 0rem;
	}
	.oricon .oricon-inner {
		width: 100%;
	}			
}
/*oricon▲*/
/*▼写真スライダー複数枚ver改修*/
@media screen and (max-width: 767px){
	.classroom .classroom-pagination-wrap01 .classroom-pagination .swiper-pagination-bullet {
		margin: 0 0.19rem 0.1rem;
	}
	.classroom .classroom-btn01 {
		margin: 1.1rem auto 0;
	}								
}
@media screen and (min-width: 768px){
.classroom .classroom-pagination-wrap01 .classroom-pagination .swiper-pagination-bullet {
	margin: 0 19px 10px;
}							
	.classroom .classroom-btn01 {
		margin: 95px auto 0;
	}
}
/*▲写真スライダー複数枚ver改修*/
/*▼CTA注釈周り改修*/
@media screen and (max-width: 767px){
	.campaign .campaign-note01 {
		margin: 0.2rem 0 0.4rem 0.15rem;
	}
	.cta-note01 {
		color: #000;
		margin: 0.2rem 0 0.4rem 0.26rem;
	}	
}
@media screen and (min-width: 768px){
	.campaign .campaign-note01 {
		margin: 10px 0 40px 122px;
	}
	.cta-note01 {
		color: #000;
		width: auto;
		margin: 10px 0 0 120px;
	}
	.cta-bg {
		padding: 60px 0 80px;
	}	
}
/*▲CTA注釈周り改修*/

/*▼よくある質問内にフォームボタン追加*/
@media screen and (min-width:768px){
.faq .faq_btn01 {
    position: relative;
    background: #ed2315;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    display: inline-block;
    line-height: 1;
    padding: 14px 38px 14px 32px;
    border-radius: 40px;
    margin: 10px 0 0 88px;
}	
.faq .faq_btn01:hover{
	opacity:0.8;
}
.faq .faq_btn01:before {
    position: absolute;
    content: '';
    top: 19px;
    right: 20px;
    width: 10px;
    height: 10px;
    border: 0 solid transparent;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
}	
}/*pc end*/
@media screen and (max-width:767px){
.faq .faq_btn01 {
    position: relative;
    background: #ed2315;
    color: #fff;
    font-weight: bold;
    font-size: 4vw;
    display: inline-block;
    line-height: 1;
    padding: 3.6vw 9vw 3.6vw 6vw;
    border-radius: 7vw;
    margin: 0.3rem 0 3vw 17vw;
}	
.faq .faq_btn01:before {
    position: absolute;
    content: '';
    top: 4.6vw;
    right: 4.4vw;
    width: 2.4vw;
    height: 2.4vw;
    border: 0 solid transparent;
    border-top: 0.6vw solid #fff;
    border-right: 0.6vw solid #fff;
    transform: rotate(45deg);
}	
}/*sp end*/
/*▲よくある質問内にフォームボタン追加*/

/*▼カリキュラムの一例を開校LP用に移植改修*/
@media screen and (min-width:768px){
.curriculum {
    padding: 140px 0 140px;
}			
.curriculum .border-wrap {
    border: 5px solid #0736A9;
    position: relative;
    border-radius: 10px;
}			
.curriculum .ttl_img {
    position: absolute;
    top: -56px;
    width: 76%;
    left: 111px;
}			
.curriculum .sub_ttl {
    padding: 76px 0 28px;
    text-align: center;
    line-height: 1.4;
    font-weight: bold;
    font-size: 18px;
}			
.curriculum .txt01 {
    font-weight: bold;
    font-size: 26px;
    padding: 0 0 40px;
    color: #0736A9;
	text-align:center;
}			
.curriculum .tab_wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 20px 60px;
}			
.curriculum .tab_wrap .tabcontent {
    width: 32%;
}			
.curriculum .tab_wrap .tabcontent .tab_cont_inner{
}	
.curriculum .tab_wrap .tabcontent .tab_ttl {
    background: #f03f33;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 30px;
    padding: 12px 0 12px;
}			
.curriculum .tab_wrap .tabcontent .tab_img{
}	
.curriculum .tab_wrap .tabcontent .course {
    padding: 10px 10px 40px;
    background: #D3DBF0;
}			
.curriculum .course .courselist {
    border: 6px solid #0736A9;
    border-radius: 8px;
    margin: 0 0 10px;
    background: #fff;
}	
.curriculum .course .courselist:last-child {
    margin: 0 0 0;
}	
			
	.curriculum .course .courselist.list01{
		min-height:409px;
	}
			
	.curriculum .course .courselist.list02{
		min-height:413px;
	}
			
	.curriculum .course .courselist.list03{
		min-height:520px;
	}
			
			
.curriculum .tab_wrap .tabcontent .courselist .ttl_block{
	position:relative;
	background: #0736A9;
}	
.curriculum .tab_wrap .tabcontent .courselist .ttl_block .ttl_txt {
    text-align: center;
    font-weight: bold;
    color: #fff;
    font-size: 22px;
    line-height: 1.4;
    padding: 10px 0 14px;
}
.curriculum .tab_wrap .tabcontent .courselist .ttl_block .example {
    position: absolute;
    top: 0;
    left: 0;
    color: #FFFF40;
    font-weight: bold;
}			
.curriculum .tab_wrap .tabcontent .courselist .cont_block {
	padding: 16px 10px 0;
}	
.curriculum .tab_wrap .tabcontent .courselist .cont_block .sub_ttl_txt {
    color: #0736A9;
    font-weight: bold;
    text-align: center;
    padding: 0 0 16px;
	font-size:18px;
}			
.curriculum .tab_wrap .tabcontent .courselist .cont_block .circle_img {
    padding: 0 12px 14px;
}			
.curriculum .tab_wrap .tabcontent .courselist .cont_block .cont_txt {
    font-size: 16px;
}			
.curriculum .border-wrap .txt02 {
    font-size: 34px;
    color: #0736A9;
    padding: 0 0 60px 35%;
    font-weight: bold;
}			
.curriculum .border-wrap .txt02 .small{
	display:block;
	font-size:20px;
	padding:0 0 8px;
}	
.curriculum .border-wrap .bottom_img {
    position: absolute;
    bottom: 0;
    left: 27px;
    width: 30%;
}			
/*▼カリキュラム 下部ボタン追加 他調整*/
.curriculum .border-wrap .txt02 {
    padding: 0 0 20px 35%;
}
.curriculum .border-wrap .bottom_img {
    left: -15px;
    width: 34%;
}
	
.curriculum .btn01 {
    padding: 0 18% 40px 35%;
}
.curriculum .btn01 .link:hover {
    opacity:0.8;
}
/*▲カリキュラム 下部ボタン追加 他調整*/
}/*pc end*/
	
@media screen and (max-width:767px){
/*▼～～～～～～～～～～～～タブCSS～～～～～～～～～～～～/
/* ▼タブ(共通装飾＋非選択状態の装飾) */
.curriculum .tab_block .tab {
  display: inline-block;          /* インラインブロック化 */
  border-width: 1px 1px 0px 1px;  /* 上側と左右に枠線を引く */
  border-style: solid;            /* 枠線の種類は「実線」 */
  border-color: black;            /* 枠線の色は「黒」 */
  border-radius: 0.75em 0.75em 0px 0px;  /* 左上と右上の角だけを丸くする */
  padding: 0.75em 1em;            /* 内側の余白量 */
  font-weight: bold;              /* タブの文字を太字にする */
  color: black;                   /* タブの文字色：黒色 */
  background-color: #e0e0e0;      /* タブの(非選択状態の)背景色：灰色 */
}

/* ▼タブにマウスポインタが載った際の装飾 */
/*spでは不要*/
	/*
.curriculum .tab_block .tab:hover {
  color: green;
  background-color: #ccffcc;
  cursor: pointer;
}
	*/

/* ▼選択状態のタブ(＝チェックが入っているラジオボタンの隣にあるタブの装飾) */
.curriculum .tab_block input:checked + .tab {
  color: red;                  /* タブの文字色：赤色 */
  background-color: #ffffcc;   /* タブの背景色：淡い黄色 */
}

/* ▼タブ機能を制御するラジオボタン(非表示にする) */
.curriculum .tab_block .tabbox input { display: none; }

/* ▼タブの中身(共通装飾＋非選択状態の装飾) */
.curriculum .tab_block .tabcontent {
  display: none;             /* 標準では非表示にする */
  border: 1px solid black;   /* 枠線を引く：黒色で1ピクセルの実線 */
  padding: 1em;              /* 内側の余白量 */
  background-color: #ffffcc; /* 背景色：淡い黄色(※選択中のタブの背景色と合わせます) */
}

/* ▼チェックが入っているラジオボタンに対応するタブの中身を表示する */
.curriculum .tab_block #tabcheck1:checked ~ #tabcontent1 { display: block; }
.curriculum .tab_block #tabcheck2:checked ~ #tabcontent2 { display: block; }
.curriculum .tab_block #tabcheck3:checked ~ #tabcontent3 { display: block; }
/*▲～～～～～～～～～～～～タブCSS～～～～～～～～～～～～/
	

	
/*▼～～タブカスタム追加～～*/
.curriculum .tab_block input:checked + .tab {
    color: #fff;
    background-color: #f03f33;
    font-size: 5.6vw;
    padding-top: 5vw;
}	
.curriculum .tab_block .tab {
    background-color: #aaa;
    border: none;
    border-radius: 0;
    font-size: 4.4vw;
    color: #fff;
    padding: 4vw 0 3vw;
    width: 29.8%;
    text-align: center;
    margin: 0 0vw 0 0;
}	
.curriculum .tab_block .tab.last{
    margin: 0 0 0 0;
}	
.curriculum .tab_block .tabcontent {
    border: none;
    padding: 0;
	background-color:#D3DBF0;
}	
/*▲～～タブカスタム追加～～*/
	
	
.curriculum {
    margin: 0;
    position: relative;
    padding: 26vw 0 21vw;
}	
.curriculum .border-wrap {
	border: 0.6vw solid #0736A9;
	position:relative;
	border-radius: 2vw;
}	
.curriculum .ttl_img {
    position: absolute;
    top: -12vw;
    width: 94%;
    left: 3vw;
}	
.curriculum .sub_ttl {
    font-size: 3.4vw;
    line-height: 1.6;
    padding: 16vw 0 4vw;
    font-weight: normal;
    text-align: center;
}	
.curriculum .txt01 {
    font-weight: bold;
    font-size: 4.4vw;
    padding: 0 3vw 8vw;
    color: #0736A9;
}	
.curriculum .tab_block {
    padding: 0 3vw 10vw;
}	
	
.curriculum .tab_cont_inner {
	border-top: 1.4vw solid #f03f33;
}
.curriculum .course {
    padding:2vw 2vw 6vw;
}	
.curriculum .course .courselist {
    border: 1.6vw solid #0736A9;
    border-radius: 2vw;
	margin: 0 0 3vw;
}	
.curriculum .course .courselist:last-child {
	margin:0;
}	
	
	
.curriculum .courselist .ttl_block {
    background: #0736A9;
	position:relative;
}	
.curriculum .courselist .ttl_block .ttl_txt {
    color: #fff;
    font-weight: bold;
    font-size: 5.4vw;
    text-align: center;
    padding: 2vw 0 3vw;
	line-height:1.4;
}	
.curriculum .courselist .ttl_block .example{
	color:#FFFF40;
	position:absolute;
	top:0;
	left:0;
	font-size:4vw;
    font-weight:bold;
}	
.curriculum .courselist .cont_block {
    background: #fff;
    padding: 5vw 3vw 3vw;
}	
.curriculum .courselist .cont_block .sub_ttl_txt {
    text-align: center;
    font-weight: bold;
    font-size: 4.2vw;
    padding: 0 0 3vw;
	color:#0736A9;
}	
.curriculum .courselist .cont_block .circle_img {
    padding: 0 3vw 4vw;
}	
.curriculum .courselist .cont_block .cont_txt {
    font-size: 3.6vw;
}	
	
.curriculum .txt02 {
    color: #0736A9;
    font-weight: bold;
    font-size: 6.4vw;
    padding: 0 0 8vw 26vw;
    line-height: 1.4;
}	
.curriculum .txt02 .small {
    display: block;
    font-size: 4.2vw;
    padding: 0 0 1vw 0;
}	
.curriculum .bottom_img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
}	
/*▼カリキュラム 下部ボタン追加 他調整*/
.curriculum .txt02 .small {
    font-size: 3.7vw;
}
.curriculum .txt02 {
    padding: 0 0 3vw 26vw;
}
	
.curriculum .btn01 {
    padding: 0 9vw 7vw 26vw;
}	
/*▲カリキュラム 下部ボタン追加 他調整*/

}/*sp end*/
/*▲カリキュラムの一例を開校LP用に移植改修*/
/*▼学年ごとのニーズ削除後調整*/
@media screen and (min-width:768px){
.needs .ttl01 {
	border-radius: 7px 7px 0 0;
	padding: 14px 0 0;
}	
}/*pc end*/

@media screen and (max-width:767px){
.needs .ttl01 {
	border-radius: .1rem .1rem 0 0;
}
.needs .bg {
	padding: 1.4rem 0 1rem;
}
}/*sp end*/
/*▲学年ごとのニーズ削除後調整*/
/*▼ヘッダーCVボタン追加*/
@media screen and (min-width:768px){
.header .header-btn01 {
    position: absolute;
    right: 120px;
    top: -4px;
    width: 220px;
}	
}/*pc end*/
@media screen and (max-width:767px){
.header .header-btn01 {
    position: absolute;
    right: 16vw;
    width: 37vw;
}	
}/*sp end*/
/*▲ヘッダーCVボタン追加*/
/*▼スクールIEの個別指導とは？背景画像打ち消し*/
@media screen and (min-width:768px){
    .up_v2 .up-bg {
		background:none;
    }
}
/*▲スクールIEの個別指導とは？背景画像打ち消し*/
/*▼SP版 CTA(中間)の横幅調整*/
@media screen and (max-width:767px){
.cta .cta_campaign_v2 {
    padding: 0 3.4vw;
}	
}/*sp end*/

/*▲SP版 CTA(中間)の横幅調整*/

/*▼体験者の声PC*/
@media screen and (min-width:768px){
.voice_pc .voice-bg { padding: 100px 0; background: url(../img/common/voice_bg01_pc.png) repeat; }

.voice_pc .voice-ttl01 { width: 424px; margin: 0 auto; }

.voice_pc .voice-txt01 { width: 690px; margin: 49px auto 0; padding: 20px 0; background: #0736a9; border-radius: 40px; }

.voice_pc .voice-txt01-wrap { width: 340px; margin: 0 auto; }

.voice_pc .voice-list01 { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 30px 0 0; }

.voice_pc .voice-list02 { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 40px 0 0; }

.voice_pc .voice-item { width: 479px; margin: 20px 0 0; padding: 35px 29px 20px; background: #fff; border-radius: 10px; }

.voice_pc .voice-item-ttl01 { font-size: 30px; line-height: 1.3; position: relative; color: #012374;}
.voice_pc .voice-item-ttl01 .red{ color: #f03f33;}

.voice_pc .voice-item-ttl01::before { content: ''; width: 417px; height: 1px; border-bottom: 4px dotted #0736a9; position: absolute; bottom: -30px; left: 50%; transform: translateX(-50%); }

.voice_pc .item04 .voice-item-ttl01 { /*display: flex;*/ /*align-items: center;*/ /*height: 78px;*/ }

.voice_pc .voice-item-box01 { display: flex; align-items: center; margin: 60px 0 0; }

.voice_pc .voice-item-box01 .pic { width: 190px; margin: 0 0 0 13px; }

.voice_pc .voice-item-box01 .name { width: 200px; margin: 0 0 0 25px; color: #012374; font-size: 22px; letter-spacing: 0.04em; line-height: 1.8; }

.voice_pc .voice-item-box01 .name .size01 { font-size: 12px; vertical-align: text-top; }

.voice_pc .voice-item-box02 { margin: 20px 0 0; }

.voice_pc .voice-item-box02 .txt { font-size: 18px; line-height: 1.55; /*letter-spacing: .04em;*/ color:#012374;}

.voice_pc .voice-item-box02 .note { margin: 35px 0 0; font-size: 14px; letter-spacing: 0.04em; line-height: 1; text-align: right; }

.voice_pc .voice-txt02 { width: 690px; margin: 67px auto 0; padding: 20px 0; background: #0736a9; border-radius: 40px; }

.voice_pc .voice-txt02-wrap { width: 212px; margin: 0 auto; }

/*体験者の声、改修更新▼*/
.voice_pc .voice_anno {
    text-align: right;
    font-size: 18px;
    padding: 10px 0 0;
	color:#012374;
}
.voice_pc .voice-item {
    padding: 35px 29px 29px;
}
/*体験者の声、改修更新▲*/
/*▼体験談 定期 学年画像追加*/
.voice_pc .voice-list01 .voice_teiki_plate {
	display:inline-block;
	width:180px;
	padding:4px 0 0;
}
/*▲体験談 定期 学年画像追加*/
/*▼体験談 受検 学校名追加*/
.voice_pc .voice-list02 .voice-item-ttl-school {
	position:relative;
	font-size:38px;
	color:#0736a9;
	padding: 0 0 20px;
}					
.voice_pc .voice-list02 .voice-item-ttl-school::after {
    position: relative;
    content: '';
    display: inline-block;
    background: url(../img/common/voice_icon01.png) no-repeat 0 0 / contain;
    top: 5px;
    right: -6px;
    width: 40px;
    height: 40px;
}	
/*▲体験談 受検 学校名追加*/
/*▼体験談 受験 名前と大高中ジャンル*/
/*▲体験談 受験 名前と大高中ジャンル*/
.voice_pc .name_cate{
	width: 200px;
	margin: 0 0 0 25px;
}
.voice_pc .name_cate_txt01{
	color: #012374;
    font-size: 22px;
    letter-spacing: 0.04em;
    padding: 0 0 6px;	
}
.voice_pc .name_cate_txt02{
	display: inline-block;
    font-weight: bold;
    color: #012374;
    font-size: 16px;
    border: 1px solid #012374;
    padding: 2px 22px;
    border-radius: 50px;
}

}/*pc end*/
/*▲体験者の声PC*/

/*▼体験者の声SP*/
@media screen and (max-width:767px){
.voice_sp .voice-bg { padding: 1rem 0; background: url(../img/common/voice_bg01_sp.png); }

.voice_sp .voice-ttl01 { width: 4.24rem; margin: 0 auto; }

.voice_sp .voice-txt01, .voice_sp .voice-list01, .voice_sp .voice-list02 { margin: .4rem 0 0; }

.voice_sp .voice-item { margin: .2rem 0 0; padding: .3rem .3rem .5rem; background: #fff; border-radius: .1rem; }

.voice_sp .voice-item .ls-normal { letter-spacing: 0; }

.voice_sp .voice-item-ttl01 { font-size: .36rem; line-height: 1.18; position: relative; color: #012374;}

.voice_sp .voice-item-ttl01 .red {color:#f03f33;}

.voice_sp .voice-item-ttl01::before { content: ''; width: 6.27rem; height: 1px; border-bottom: .04rem dotted #0736a9; position: absolute; bottom: -.3rem; left: 50%; transform: translateX(-50%); }

.voice_sp .voice-item-box01 { display: flex; margin: .7rem 0 0; }

.voice_sp .voice-item-box01 .pic { width: 1.9rem; }

.voice_sp .voice-item-box01 .txt { width: 4.1rem; margin: .05rem 0 0 .21rem; color: #012374; font-size: .24rem; /*letter-spacing: 0.04em;*/ line-height: 1.66; }

.voice_sp .voice-item-box02 { display: flex; justify-content: space-between; margin: .35rem 0 0; }

.voice_sp .voice-item-box02 .name, .voice_sp .voice-item-box02 .note { color: #012374; font-size: .24rem; letter-spacing: 0.04em; line-height: 1; }

.voice_sp .voice-txt02 { margin: .6rem 0 0; }
/*体験者の声、改修更新　▼*/
.voice_sp .voice_anno {
    color: #012374;
    text-align: right;
    padding: 1.4vw 0 0;
	font-size: .26rem;
}
/*体験者の声、改修更新　▲*/
/*▼体験談 定期 名前エリアver2作成*/
.voice_sp .voice-list01 .pic_img01 {
    display: block;
    padding: 0 0 .08rem;
}	
.voice_sp .voice-list01 .pic_txt01 {
    font-size: .24rem;
    color: #012374;
    line-height: 1.8;
    text-align: center;
    display: block;
	padding: 0 0 .08rem;
}	
.voice_sp .voice-list01 .pic_txt01 .size01 {
    font-size: .18rem;
    vertical-align: top;
}	
/*▲体験談 定期 名前エリアver2作成*/	
/*▼体験談 受検 学校名追加*/
.voice_sp .voice-list02 .voice-item-ttl-school {
    position: relative;
    font-size: 0.6rem;
    color: #0736a9;
    padding: 0 0 4vw;
}
.voice_sp .voice-list02 .voice-item-ttl-school::after {
    position: relative;
    content: '';
    display: inline-block;
    background: url(../img/common/voice_icon01.png) no-repeat 0 0 / contain;
    top: 1.0vw;
    right: -1vw;
    width: 0.62rem;
    height: 0.62rem;
}
/*▲体験談 受検 学校名追加*/
/*▼体験談 受検 学年画像追加*/
.voice_sp .voice-list02 .pic {}
.voice_sp .voice-list02 .pic .pic_img01 {
    display: block;
    padding: 0 0 .08rem;
}
.voice_sp .voice-list02 .pic .pic_txt01 {
    font-size: .24rem;
    color: #012374;
    line-height: 1.8;
    text-align: center;
    display: block;
	padding: 0 0 .08rem;
}
/*▲体験談 受検 学年画像追加*/
/*▼体験談 受験 大高中をhtml化*/
.voice_sp .voice-item-box01 .pic .pic_cate {
	font-size: .24rem;
    color: #012374;
    text-align: center;
    display: block;
    border: 1px solid #012374;
    border-radius: 1rem;
    font-weight: bold;
    padding: 0.08rem 0 0.08rem;
	line-height: 1;
}
/*▲体験談 受験 大高中をhtml化*/
}/*sp end*/
/*▲体験者の声SP*/


/*▼メインビジュアルPC*/
@media screen and (min-width:768px){
.fv .fv_mv_pc {
	background:#073190;
}
.fv .fv_mv_pc .fv_ttl01{
	font-size:36px;
	font-weight:bold;
	color:#fff;
	text-align:center;
	padding:30px 0;
	letter-spacing: 0.1rem;
}
.fv .fv_mv_pc .fv_img01 {
	width: 1060px;
	margin: 0 auto;
}	
}/*pc end*/
/*▲メインビジュアルPC*/
/*▼メインビジュアルSP*/	
@media screen and (max-width:767px){
.fv .fv_mv_sp {

}
.fv .fv_mv_sp .fv_ttl01 {
	background: #073190;
	font-size: 0.34rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding: 0.2rem 0;
}
.fv .fv_mv_sp .fv_img01{}
}/*sp end*/
/*▲メインビジュアルSP*/	

/*▼チャートPC*/
@media screen and (min-width:768px){
.chart .chart_pc {}			
.chart .chart_pc .chart_bg{
	background:#fffde8;
	padding: 60px 0 60px;
}
.chart .chart_pc .chart_ttl{
	border-bottom:8px solid #00a65e;
}
.chart .chart_pc .chart_ttl .img_block {
	width: 57%;
	display: block;
	margin: 0 auto;
}
.chart .chart_pc .chart_arrow_block{
	padding:60px 0 0;
}
.chart .chart_pc .chart_arrow_block .img_block{
	width:952px;
	margin:0 auto;
}			
.chart .chart_pc .chart_btn_block{
	display:flex;
	width:980px;
	margin:0 auto;
	justify-content:space-between;
}	
.chart .chart_pc .chart_btn_block .btn{
	width:22%;
}	
}/*pc end*/
/*▲チャートPC*/
/*▼チャートSP*/
@media screen and (max-width:767px){
.chart .chart_sp {}	
.chart .chart_sp .chart_bg{
	background:#fffde8;
	padding:0 0 10vw;
}			
.chart .chart_sp .chart_btn_block{
	display:flex;
	justify-content:space-between;
	padding: 0 4vw 0;
}	
.chart .chart_sp .chart_btn_block .btn{
	width:23%;
}	
}/*sp end*/
/*▲チャートSP*/

/*▼自習スペースPC*/
@media screen and (min-width:768px){
.self_study_pc {
    padding: 0 0 100px 0;
    background: #c5e8fa;
}					
.self_study_pc .content_area {
    width: 980px;
    margin: 0 auto;
    box-sizing: border-box;
    background: #fff;
    border: 4px solid #062f8c;
    padding: 32px 52px 22px;
}			
.self_study_pc .content_area .main_ttl {
    color: #062f8c;
    font-size: 34px;
    text-align: center;
    padding: 0 0 24px 0;
    font-weight: bold;
}			
.self_study_pc .content_area .content_box{
	display:flex;
}
.self_study_pc .content_area .content_box .box01{
	flex:2;
	padding: 0 20px 0 0;
}
.self_study_pc .content_area .content_box .box01 .txt01 {
    font-size: 18px;
    padding: 0 0 20px 0;
}			
.self_study_pc .content_area .content_box .box01 .anno {
    font-size: 14px;
}			
.self_study_pc .content_area .content_box .box02{
	flex:1;
}
}/*pc end*/
/*▲自習スペースPC*/
/*▼自習スペースSP*/
@media screen and (max-width:767px){
.self_study_sp {
    background:#c5e8fa;
    padding: 0vw 0 4vw;
}
.self_study_sp .content_area {
    width: 93%;
    margin: 0 auto;
    box-sizing: border-box;
    border: 1vw solid #062f8c;
    background: #fff;
    padding: 6vw 3vw;
}				
.self_study_sp .content_area .main_ttl {
        color: #062f8c;
        font-size: 5.4vw;
        padding: 0 0 3vw 0;
        font-weight: bold;
        text-align: center;
}
.self_study_sp .content_area .content_box .img_block01 {
    padding: 0 7vw 5vw;
}				
.self_study_sp .content_area .content_box .txt01 {
    font-size: 4vw;
    padding: 0 0 3vw 0;
}				
.self_study_sp .content_area .content_box .anno {
    font-size: 3vw;
}
}/*sp end*/
/*▲自習スペースSP*/

/*▼upを直営用改修*/
@media screen and (min-width:768px){
.up .up-about_v2{
	padding: 0 0 40px;
}
.up .up-photo {
	width: 64%;
	margin: 0 auto 32px;
}	
.up .up-arrow_v2{
	width:40px;
	margin:0 auto -20px;
}
}/*pc end*/
@media screen and (max-width:767px){
.up .up-about_v2 {
	margin: 0 -0.3rem;
	padding: 16vw 0 9vw;
}	
.up .up-photo {
	padding: 0 0 10vw;
}	
.up .up-arrow_v2 {
	width: 8vw;
	margin: 0 auto 8vw;
}	
}/*sp end*/
/*▲upを直営用改修*/

/*▼教室画像Noスライダーver*/
@media screen and (min-width:768px){
.classroom .classroom_pic_noslide {}
.classroom .classroom_pic_noslide .img_block {
	width: 510px;
	margin: 0 auto;
	padding: 45px 0 0;
}	
}/*pc end*/
@media screen and (max-width:767px){
.classroom .classroom_pic_noslide {}
.classroom .classroom_pic_noslide .img_block {
	padding: 6vw 7vw 0;
}	
}/*sp end*/
/*▲教室画像Noスライダーver*/

/*▼SP用CVボタン トップ*/
	@media screen and (max-width:767px){
    .campaign .campaign-spbtn {
        padding: 6vw 0 0.1vw;
    }	
	.campaign .campaign-spbtn .campaign-spbtn-ttl{
        color: #1D3B69;
        font-size: 0.50rem;
        font-weight: bold;
        text-align: center;
		padding:0 0 4vw;
    }		
    .campaign .campaign-spbtn .campaign-spbtn-ttl .big {
        font-size: 0.6rem;
    }	
    .campaign .campaign-spbtn .img_block01 {
        width: 6.4rem;
        margin: 0 auto 4vw;
    }	
    .campaign .campaign-spbtn .img_block02 {
        width: 6.4rem;
        margin: 0 auto 4vw;
    }	
	}/*sp end*/
/*▲SP用CVボタン トップ*/	

/*▼バナーエリア*/
@media screen and (min-width:768px){
.bnr_area{
	padding:0 0 100px;
}
.bnr_area .img_block {
	width: 980px;
	margin: 0 auto;
}	
}/*pc end*/		
@media screen and (max-width:767px){
.bnr_area {
	padding: 0 0 10vw;
}	
.bnr_area .img_block {
	width: 6.4rem;
	margin: 0 auto;
}	
}/*sp end*/
/*▲バナーエリア*/

/*▼SP用CVボタン 共通CTA*/
@media screen and (max-width:767px){
.cta .cta-spbtn {
	padding: 0 0 0.1vw;
}
.cta .cta-spbtn .cta-spbtn-ttl {
	color: #1D3B69;
	font-size: 0.50rem;
	font-weight: bold;
	text-align: center;
	padding:0 0 4vw;
}
.cta .cta-spbtn .cta-spbtn-ttl .big {
	font-size: 0.6rem;
}
.cta .cta-spbtn .img_block01 {
	width: 6.0rem;
	margin: 0 auto 4vw;
}
.cta .cta-spbtn .img_block02 {
	width: 6.0rem;
	margin: 0 auto 4vw;
}
.cta .cta-spbtn .img_block03 {
	width: 4.4rem;
	margin: 0 auto 1vw;
}		
.cta .cta-spbtn .cta-txt05 {
	font-size: 0.25rem;
	color: #444444;
	text-align: center;
}		
}/*sp end*/
/*▲SP用CVボタン 共通CTA*/


/*▼テスト 受験 合格実績エリア作成20241122*/
@media screen and (min-width:768px){
.test .zyuken-block02 { margin: 32px 0 0; border: 8px solid #f03f33; border-radius: 10px; }
.test .zyuken-block02 .ttl01 { padding: 39px 0; background: #f03f33; }
.test .zyuken-block02 .ttl01 .ttl01_txt01 {
	font-size: 44px;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.test .zyuken-block02 .content01 { padding: 38px 0; background: #fff; }
.test .zyuken-block02 .content01 .content01_wrap {
	padding: 0 70px 0;
}	
.test .zyuken-block02 .content01 .content01_block {
	padding: 0 0 40px;
}	
.test .zyuken-block02 .content01 .content01_block .content01_ttl {
	background: url(../img/common/test_pic03.png) no-repeat left center / contain;
	color: #333;
	font-size: 24px;
	font-weight: bold;
	padding: 1px 0 0 54px;
	margin: 0 0 14px 0;
}	
.test .zyuken-block02 .content01 .content01_block .content01_txt {
	color: #333;
	font-size: 24px;
}
.test .zyuken-block02 .content01 .anno {
	font-size:24px;
	color:#333;
}
}/*pc end*/

@media screen and (max-width:767px){
.test .zyuken-block02 { margin: .5rem 0 0; border: .08rem solid #f03f33; border-radius: .1rem; }
.test .zyuken-block02 .ttl01 {
	padding: .1rem 0 .2rem;
	background: #f03f33;
}	
.test .zyuken-block02 .ttl01 .ttl01_txt01 {
	font-size: .46rem;
	color: #fff;
	font-weight: bold;
	text-align: center;
}	
.test .zyuken-block02 .content01 { padding: .45rem 0 .5rem; background: #fff; }
.test .zyuken-block02 .content01 .content01_wrap {
	width: 92%;
	margin: 0 auto;
}	
.test .zyuken-block02 .content01 .content01_block {
	padding: 0 0 .7rem;
}	
.test .zyuken-block02 .content01 .content01_block .content01_ttl {
	color: #333;
	background: url(../img/common/test_pic03.png) no-repeat left center / contain;
	font-size: .36rem;
	font-weight: bold;
	line-height: 1;
	padding: .03rem 0 .04rem .58rem;
	margin: 0 0 .2rem;
}	
.test .zyuken-block02 .content01 .content01_block .content01_txt {
	color: #333;
	font-size: .3rem;
}
.test .zyuken-block02 .content01 .anno {
	font-size:.3rem;
	color:#333;
}
}/*sp end*/
/*▲テスト 受験 合格実績エリア作成20241122*/
