/*
    Theme Name: SWELL
    Theme URI: https://swell-theme.com/
    Description: シンプルなのに高機能。ブロックエディターの使い心地にこだわった国内最高峰のWordPressテーマ
    Version: 2.12.0
    Requires at least: 5.6
    Requires PHP: 7.3.0
    Author: LOOS,Inc.
    Author URI: https://loos.co.jp/
    Text Domain: swell
    Domain Path: /languages
    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* レスポンシブスニペット */
@media screen and (min-width:600px){
    .sp {
    display: none;
    }
    }
    @media screen and (max-width:599px){
    .sp {
    display: block;
    }
    .pc {
    display: none;
    }
    }
    
    /*一時的に非表示にするコンテンツ*/
    .hihyoji {
        display: none;
    }
 
/*　角R　*/
.border-10r {
    border-radius: 10px;
}
.border-15r {
    border-radius: 15px;
}
.border-20r {
    border-radius: 20px;
}
.border-25r {
    border-radius: 25px;
}
.border-30r {
    border-radius: 30px;
}

/* ブロックの共通要素 */
.d-inline-block {
    display: inline-block;
}
.block-center {
  display: block;
  width: fit-content;
  margin: 0 auto;
}
.orange-waku {
    border-color: #ef7d52!important;
}
.green-waku {
    border-color: #67b65a!important;
}

    /*ロゴ*/
    @media (min-width: 960px) {
        .-parallel .l-header__logo {
            text-align: center;
            width: 33%;
        }
        .-parallel .l-header__logo .c-catchphrase {
            font-size: 18px;
            line-height: 1;
            margin-top: 18px;
            font-weight: 900;
            display: none;
           /* font-family: Meiryo, "sans-serif", "Hiragino Sans", "Hiragino Kaku Gothic ProN";*/
        }
        .l-header.-parallel .w-header {
            width: 66%;
            padding-top: 10px;
        }	
    .c-headLogo__img {
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain;
        width: auto;
        margin-top: 2px;
    }
    }
    [class*=is-style-btn_] {
        display: block;
        font-size: var(--the-fz);
        margin: 0 auto 0.5em;
        position: relative;
        text-align: center;
    }
@media (max-width: 959px) {
.c-headLogo__img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: 198px;
}
}
    div#text-3 {
        font-size: 18px;
        margin-right: 50px;
        width: 33%;
    }
    .w-header__inner {
        display: flex;
        align-items: baseline;
        width: 100%;
        justify-content: center;
    }
    .is-style-btn_normal a {
        color: #fff;
        font-weight: 700;
        transition: box-shadow .25s;
        width: 240px;
        height: 55px;
    }
    
    /*黄色いボタンの文字色*/
    .swell-block-button.green_.-size-l.is-style-btn_solid a {
        color: #0095aa;
    }
    .swell-block-button.green_.-size-l.is-style-btn_solid a:hover {
        background-color: #fff200;
        transition: .3s;
    }
    
    /*　グローバルナビ　*/
    .c-gnav>.menu-item>a .ttl {
        display: block;
        font-size: 18px;
        font-weight: 700;
    }
    
    @media (min-width: 960px) {
        .-parallel .l-header__gnav .c-gnav>li>a {
            padding-bottom: 14px;
            padding-top: 14px;
        }
    }
    
    /*　固定フッターのボタン　*/
    #fix_bottom_menu span {
        color: inherit;
        display: block;
        font-size: 18px;
        line-height: 1;
        margin: -20px 1px 2px;
        width: 100%;
        font-weight: 600;
        border: solid 1px #ccc;
        padding: 12px;
    }
    
    /*　校舎を選ぶ　*/
    @media (min-width: 600px) {
        .c-tabList__button {
            font-size: 93%;
        }
    }
    
    .swell-block-box-menu__text {
        display: block;
        flex: 1;
        line-height: 1.4!important;
    }
    
    /*キャプション*/
    .p-articleThumb__caption, .wp-block-embed>figcaption, .wp-block-image figcaption, .wp-block-table figcaption, .wp-block-video figcaption {
        color: inherit;
        display: block !important;
        font-size: .8em;
        line-height: 1.4;
        margin-bottom: 0;
        margin-top: .75em;
        opacity: .8;
        text-align: left;
    }
    
    /*キャッチフレーズ*/
    @media (max-width: 599px) {
    span.swl-fz.u-fz-xl {
        font-size: 36px !important;
        line-height: 1.4;
    }
    span.swl-fz.u-fz-xl strong.cf-size {
        font-size: 24px !important;
        line-height: 1.4 !important;
    display: block;
    }
    }
    
    :root {
        --color_gray: #dfeef0;
    }
    .-type-simple .p-postList__link:hover {
        background-color: #dfeef0;
    }
    /* h3 */
    .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
        content: "";
        width: 100%;
        height: 2px;
        background: none;
    }
    .post_content h3 {
        font-size: 1.1em;
        font-weight: 700;
        line-height: 1.4;
        margin: 3em 0 2em;
        position: relative;
        border: solid 7px #0095aa;
        padding-top: 0.4em !important;
    }
    /* h2 */
    .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
        background: var(--color_htag);
        background-image: url(https://www.atama.plus/wp-content/uploads/2024/08/bg_grid01.png)!important;
        padding: .75em 1em;
        color: #fff;
        border-radius: var(--swl-radius--2, 0px);
        border: solid 9px #0095aa!important;
        letter-spacing: 0.1rem;
    }
    
    /*キャプション、センターに*/
    .p-articleThumb__caption, .wp-block-embed>figcaption, .wp-block-image figcaption, .wp-block-table figcaption, .wp-block-video figcaption {
        color: inherit;
        display: block !important;
        font-size: .8em;
        line-height: 1.4;
        margin-bottom: 0;
        margin-top: .75em;
        opacity: .8;
        text-align: center;
    }
    p.wp-elements-76505b82fa87dc8218404cd436e69f8f {
        padding-top: 15px;
    }
    
    /*固定ページタイトル*/
    .page-id-865 h1.c-pageTitle,
    .page-id-802 h1.c-pageTitle,
    .page-id-520 h1.c-pageTitle,
    .page-id-281 h1.c-pageTitle,
    .page-id-224 h1.c-pageTitle,
    .page-id-1304 h1.c-pageTitle,
    .page-id-1317 h1.c-pageTitle,
		.page-id-1325 h1.c-pageTitle,
		.page-id-1338 h1.c-pageTitle,
		.page-id-1383 h1.c-pageTitle,
		.page-id-1397 h1.c-pageTitle,
		.page-id-1429 h1.c-pageTitle,
		.page-id-1457 h1.c-pageTitle,
		.page-id-1467 h1.c-pageTitle,
		.page-id-1564 h1.c-pageTitle {
        visibility: hidden;
    }
    
    .c-pageTitle {
        font-size: 2em;
        line-height: 1.4;
        position: relative;
        padding-left: .3em;
        letter-spacing: 0.2rem;
    }
    @media (min-width: 600px) {
        .c-pageTitle {
        font-size: 2.5em;
        padding-left: 0;
        }
    }
    
    @media (min-width: 960px) {
        .alignwide .alignfull, .l-content .alignfull .alignfull {
            left: calc(50% - 50vw + var(--swl-scrollbar_width, 0px) / 2);
            width: calc(100vw - var(--swl-scrollbar_width, 0px));
        }
    }
    @media (max-width: 599px) {	
    h3 span.swl-fz.u-fz-xl {
        font-size: 30px !important;
        text-align: left !important;
        }
        }
        
    .is-style-sticky_box {
        border-left: 8px solid var(--color_main);
        /*box-shadow: var(--swl-box_shadow);*/
        box-shadow:none;
        min-width: 6em;
        padding: .75em 1em;
    }
    @media (max-width: 599px) {
    .is-style-sticky_box {
        font-size: 17px !important;
    }
    }
    @media (min-width: 600px) {	
    dl.kosha-top {
        background:url('https://www.atama.plus/wp-content/uploads/2024/08/atamasensei.png') no-repeat;
        background-size: 500px;
        background-position: top 140px right;
        }
        }
        
    dl.kosha-top dd {
        background-color: none;
        }
        
    iframe .layout-nocover .nocover-body .center-wrap .center-body {
        padding: 20px 12px 26px;
        margin-bottom: 15px;
    }
    /*画像を含むショートコードを調整*/
    .img-in-shortcode .wp-block-column>* {
        margin-bottom: 0em;
    }
    /*スマホのお問い合わせボタン一時的に消す*/
    .l-header__customBtn {
        color: #fff;
        background-color: #00ccdd;
        display: none;
    }
    /*FAQアコーディオン*/
.q-and-a .swell-block-accordion__title .swell-block-accordion__label {
        flex: 1 1 auto;
        font-size: inherit;
        font-weight: inherit;
        margin: 0;
        padding: 0 1em 0 1.8em;
        word-break: break-all;
    }
.q-and-a .swell-block-accordion__title .swell-block-accordion__label:before {
        content:'Q.';
        position:absolute;
        top:-3px;
        left:0;
        font-weight:900;
        font-size:22px;
    }
    /*アコーディオンの「＋」の文字*/
    .icon-plus:before {
        content: "\e91c";
        font-weight: 900;
        color: #0095aa;
    }
    .icon-minus:before {
        content: "\e919";
          font-weight: 900;
        color: #0095aa;
    }
    /*写真タイトルの文字*/
    .l-topTitleArea__body {
        color: #fff;
        position: relative;
        text-shadow: 2px 2px 5px rgba(0, 0, 0, .5);
        width: 100%;
        z-index: 3;
    }
    
    /*学年のページ*/

/*SP専用キャッチフレーズ*/
p.has-text-align-left.u-mb-ctrl.u-mb-10.sp_only.chuo {
    display: flex;
    justify-content: right;
}

/*テストメニュー*/
li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-has-children.menu-item-1410 {
    display: none;
}

/*PCのみオンライン塾消す*/
@media (min-width: 1024px) {
li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-210 {
	display:none;
}
}
/*ハンバーガーから「atama＋塾」を消す*/
@media (max-width: 1023px) {
li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-home.menu-item-180 {
    display: none;
}	
}
/*グローバルにサブメニュー追加*/
.c-gnav li .sub-menu {
    color: #fff;
    /* background: var(--color_main); */
    background-color: rgba(0,170,187,1);
	width: 10em;
	text-align: center;
}
.c-gnav li:nth-child(2) .sub-menu {
	width: 12.5em;
}
.c-gnav .sub-menu li:last-child {
	/*padding-bottom: 0.5em;*/
}
/*スマホ-ハンバーガーメニュー*/
.c-widget__title.-spmenu {
    padding: .5em .75em;
    border-radius: var(--swl-radius--2, 0px);
    background: var(--color_main);
    color: #fff;
	display: none;
}
/*フッターメニュー*/
.c-widget__title.-footer {
    padding: .5em;
    text-align: center;
	font-weight: 500;
    margin-bottom: 0em;
	font-size: 13px;
	border-bottom: 1px solid #555;
	color: #999;
}
.c-widget__title.-footer::before,
.c-widget__title.-footer::after {
	display: none;
}
@media (min-width: 960px) {
    .w-footer__box {
        flex: 1;
        padding: 0em 1em;
    }
}
.l-footer__widgetArea {
    padding-bottom: 0em;
    padding-top: 1em;
}
.l-footer__foot {
    padding-bottom: 1em;
    padding-top: 0em;
}
@media not all and (min-width: 960px) {
    .w-footer__box {
        padding: 0em 0;
    }
}
/*無料体験の流れ*/
.page-id-1564 .is-style-float.swell-block-dl {
    display: flex;
    flex-wrap: wrap;
    line-height: 1.3;
    border-bottom: solid 2px #0095aa;
    margin-bottom: 0;
	  height: 4.5em;
	  align-content: center;
}
.page-id-1564 .is-style-float.swell-block-dl:nth-of-type(1) {
	border-top: solid 2px #0095aa;
}
.page-id-1564 .is-style-float>.swell-block-dl__dd {
    margin-left: 0;
    padding: .25em 0;
}
.page-id-1564 .is-style-float>.swell-block-dl__dt {
	  display: flex;
    margin-top: 0 !important;
    padding: .25em 2.5em .25em 1em;
}
.page-id-1564 .is-style-float>.swell-block-dl__dt:after {
	display: none;
}
.page-id-1564 h2 {
	background: none;
	background-image: none!important;
	border: none!important;
	color:#000;
}
.page-id-1564 h3 {
	display:flex;
	border:none;
	border-bottom: solid 3px #0095aa;
	padding: 0px 0px 0px!important;
	margin-left: -2em;
	margin-right: -2em;
	align-items: center;
	line-height: 1!important;
	color:#000;
}
.page-id-1564 .has-border.-border01 {
	padding-top: 0;
}
.page-id-1564 h3 .num {
	display: flex;
	background-color: #0095aa!important;
	color: #fff;
	width: 2em;
  height: 1.8em;
  font-size: 320%;
  justify-content: center;
  align-items: center;
	line-height: 1;
	padding-bottom: 5px;
}
.page-id-1564 h3 span.swl-fz {
    font-size: 40px !important;
    padding-left: 0.7em;
    }
.page-id-1564 h4 {
	text-align:left;
	color:#000;
}

@media (max-width: 599px) {
.page-id-1564 h1.wp-block-heading.has-text-align-center.u-mb-ctrl.u-mb-10 {
    margin-bottom: 10px !important;
}
.page-id-1564 span.swl-fz.u-fz-xl {
        font-size: 22px !important;
        line-height: 1.4;
    }
	.page-id-1564 h2 {
	margin:0 0 5px -15px!important;
	}
	.page-id-1564 h2 span.swl-fz.u-fz-xl {
        font-size: 16px !important;
        line-height: 1.2;
    }
	.page-id-1564 h3 {
	margin-left: -1em;
	margin-right: -1em;	
	margin-bottom: 1.5em
	}
	.page-id-1564 h3 span.swl-fz {
    font-size: 20px !important;
		margin: auto;
    padding-right: 3em;
		padding-left: 0.3em;
    }
	.page-id-1564 h3 .num {
  font-size: 160%;
  padding-bottom: 0px;
	margin: -1px;
	}
	.page-id-1564 .has-border.-border01 {
	padding: 0 1em 1em!important;
	margin: -1em 0 1em;
}
	.page-id-1564 p.u-mb-ctrl.u-mb-20 {
  font-size:17px!important;
  margin-bottom: 1em !important;
}
	.page-id-1564 h4 {
		display: inline-block;
	}
}
/*時計アイコン*/
.page-id-1564 .swl-inline-icon:after {
    background: #0095aa;
    content: "";
    display: block;
    height: 100%;
    left: -3px;
    -webkit-mask-image: var(--the-icon-svg);
    mask-image: var(--the-icon-svg);
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    max-width: 2ch;
    position: absolute;
    top: 0px;
	width: 100%;
}
/*下向き三角*/
.triangle {
  background: #0095aa;
  height: calc(tan(60deg) * 40px / 2);
  width: 40px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
	margin-left: auto;
	margin-right: auto;
}
@media (max-width: 599px) {
	.triangle {
  height: calc(tan(60deg) * 21px / 2);
  width: 21px;
		
	}
}
/*無料体験の流れ最下部ブロック*/
.page-id-1564 .wp-block-column {
	text-align: center;
}
@media (max-width: 599px) {
.page-id-1564 ul.wp-block-list {
    font-size: 15px;
}
	.page-id-1564 .sp-py-40 {
  padding-bottom: 2.5em !important;
  padding-top: 1.5em !important;
    }
	.page-id-1564 .wp-block-columns {
	margin-bottom: 1.4em;
}
	.page-id-1564 .wp-block-group.has-border.-border01.u-mb-ctrl.u-mb-60 {
    margin-bottom: 3em !important;
}
}
/*ボタン*/
.swell-block-button.green_.-size-m.is-style-btn_solid.mryotaiken-flow a {
    color: #000;
}
.mryotaiken-flow a svg:not([fill]) {
    fill: #0095aa!important;
}
.is-style-btn_solid.mryotaiken-flow {
    --the-btn-radius: 16px;
}
.mryotaiken-flow.green_ {
    --the-btn-color: #d2f06e;
    --the-btn-color2: #7bf7bd;
    --the-solid-shadow: #bdbdbd;
}
.page-id-1564 .is-style-btn_solid a {
    box-shadow: 0 4px 0 var(--the-solid-shadow, var(--color_main_dark));
    color: #000;
    font-weight: 700;
    transition: box-shadow .25s, -webkit-transform .25s;
    transition: transform .25s, box-shadow .25s;
    transition: transform .25s, box-shadow .25s, -webkit-transform .25s;
    z-index: 1;
}
.page-id-1564 .is-style-btn_solid a:hover {
    background-color: #fff200;
    transition: .3s;
}
@media (max-width: 599px) {
	.page-id-1564 .is-style-btn_solid a {
		width: 100%
	}
}
@media (min-width: 600px) {
	.mryotaiken-flow.is-style-btn_solid a {
  font-size: 1.5em;
	}
	[class*=is-style-btn_] {
        --the-min-width: 50%;
  }
}
li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-568 {
    display: none;
}

/* NEW TOP PAGE */
/* KV下の帯 */
.page-id-1950 .kv-under .swell-block-fullWide {
    padding: 0.5em 0!important;
    position: relative;
}
@media (max-width: 599px) {
.page-id-1950 .kv-under .swell-block-fullWide {
    padding: 0.2em 0!important;
}	
}

/* ボタン */
.page-id-1950 .swell-block-button.green_.-size-l.is-style-btn_solid.mryotaiken-flow a {
    color: #000;
	letter-spacing:0rem;
}
.page-id-1950 [class*=is-style-btn_].-size-l.mryotaiken-flow {
    --the-min-width: 100%;
    --the-padding: 1em 0em 0.9em ;
}
/* 面談の申し込みボタン */
.page-id-1950 .swell-block-button.green_.-size-l.is-style-btn_solid.mryotaiken-flow.mendan a::before {
	content:'';
	display:inline-block;
	width:60px;
	height:50px;
	background-image: url("https://www.atama.plus/wp-content/uploads/2024/11/mendan-ill.png");
	background-repeat:no-repeat;
	background-size:contain;
vertical-align: middle
}
.page-id-1950 .swell-block-button.green_.-size-l.is-style-btn_solid.mryotaiken-flow.mendan a {
	height:81px;
	padding:18px;
}
@media (max-width: 599px) {
	.page-id-1950 .swell-block-button.green_.-size-l.is-style-btn_solid.mryotaiken-flow.mendan a::before {
		width:40px;
	height:40px;
	}
.page-id-1950 .swell-block-button.green_.-size-l.is-style-btn_solid.mryotaiken-flow.mendan a {
	height:51px;
	padding:6px;
}	
}


/* 学年ボタン */
@media (max-width: 599px) {
.page-id-1950 .wp-block-columns {
    --wp-column-gap: 1em;
    gap: var(--wp-column-gap) !important;
    line-height: 1.6;
}
}
.page-id-1950 .gakunen-btn .is-style-btn_solid a {
	color: #000;
box-shadow: 0 4px 0 rgb(197,197,197);
	border: 4px solid;
	border-radius: 15px;
	padding-left:0;
	padding-right:0;
}
.page-id-1950 .gakunen-btn .swell-block-button.green_.-size-l.is-style-btn_solid a {
  background-color: #fdfce7!important;
	border-color: #f1ea0a;
	color: #000;
}
.page-id-1950 .gakunen-btn .swell-block-button.red_.-size-l.is-style-btn_solid a {
    background-color: #eef8ed!important;
	border-color: #67b65a;
}
.page-id-1950 .gakunen-btn .swell-block-button.blue_.-size-l.is-style-btn_solid a {
    background-color: #fcf1ed!important;
	border-color: #ef7d52;
}



/* 角Ｒ写真 */
.kado-r60 img {
	border-radius: 60px;
}
@media (max-width: 599px) {
.kado-r60 img {
	border-radius: 30px;
}
.gyakusan-logo img {
	width:200px!important;
	margin-bottom: -15px;
}
}
/* H3 */
.page-id-1950 .post_content h3 {
    margin: 3em 0 1.5em;
    position: relative;
	  border: none;
    border-top: solid 6px #0095aa;
    border-bottom: solid 6px #0095aa;
    padding: 20px 0 20px 80px!important;
background:url("https://www.atama.plus/wp-content/uploads/2024/11/bg_grid07.png") no-repeat center left;
}
@media (max-width: 599px) {
	.page-id-1950 .post_content h3 {
		font-size: 70%;
	}	
}
.page-id-1950 span.num {
	padding-bottom:3px;
    position: absolute;
    font-size: 35px;
    color: #fff;
    display: flex;
    width: 50px;
    height: 50px;
    background-color: #0095aa;
    border-radius: 25px;
    margin: auto;
    justify-content: center;
    align-items: center;
	left: 10px;
	top: 50%;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}
@media (max-width: 599px) {
   .page-id-1950 h3 span.swl-fz.u-fz-xl {
        font-size: 22px !important;
        text-align: left !important;
}
ul.wp-block-list.new-top-4point li .u-fz-l {
	font-size:14px!important;
}
ul.wp-block-list.u-mb-ctrl.u-mb-0.new-top-tuition li .u-fz-l {
	font-size:14px!important;
	}
	.wp-block-group.new-top-rinen p .u-fz-l {
		font-size:14px!important;
	}
}

@media (max-width: 599px) {
    .page-id-1950 h3 span.swl-fz.u-fz-xl {
        font-size: 22px !important;
        text-align: left !important;
    }
}
/* H2画像 */
@media (max-width: 599px) {
.new-top-h2 img {
	height: 42px;
	width: auto!important;
}
}
/* よくある質問 */
.q-and-a .swell-block-accordion__title {
    align-items: center;
    background: var(--color_gray);
    cursor: pointer;
    display: flex
;
    font-weight: 400;
    justify-content: space-between;
    padding: 1em;
    position: relative;
    border-radius: 15px;
}

/* 校舎を選ぶ */
.top-kosha .swell-block-accordion__title .swell-block-accordion__label {
    flex: 1 1 auto;
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
    padding: 0 1em 0 0;
    word-break: break-all;
	text-align: center;
}
@media (max-width: 599px) {
    .top-kosha span.swl-fz.u-fz-xl {
        font-size: 24px !important;
        line-height: 1.4;
    }
}
.top-kosha.is-style-balloon>.c-tabList .c-tabList__button[aria-selected=true] {
    background-color: var(--color_main);
    color: #fff;
    border-radius: 10px;
}
.top-kosha .c-tabList__button {
    border-radius: 10px;
}
/*.top-kosha.is-style-balloon>.c-tabList .c-tabList__button {
    background: #e4e6e5!important;
    transition: background-color .25s, color .25s;
}*/
.top-kosha .swell-block-box-menu__link {
    color: inherit;
    display: flex;
    height: 100%;
    padding: 1em 0.5em;
    position: relative;
    text-decoration: none;
    transition: background-color .25s;
}

/* 4つのポイント間等の間隔をSPで詰める */
@media (max-width: 599px) {
.page-id-1950 .new-top-4point-area .u-mb-50 {
    margin-bottom: 3em !important;
	}
.page-id-1950 .new-top-4point-area .u-mb-60 {
	margin-bottom: 4em !important;
}
.page-id-1950 .new-top-4point-area .wp-block-group:nth-last-of-type(1).u-mb-50 {
    margin-bottom: 1em !important;
	}	
}

/* VIEW MORE テキストリンク */
.view-more2 a {
	color: #333;
	transition:.7s;
}
.view-more2 a:hover {
	color: #0095aa;
}
.view-more2 .swl-inline-icon:after {
    background: #0095aa;
}

p.has-text-align-left.pc_only.u-mb-ctrl.u-mb-20.course-info {
    margin-left: 35px;
}
/* ヘッダーデザイン変更20241130 */

.l-header__menuBtn {
    color: #0095aa;
    background-color: #d9eeef;
}
.c-iconBtn__icon {
    display: block;
    font-size: 30px;
}
[class*=" icon-"]:before, [class^=icon-]:before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: icomoon !important;
    font-style: normal;
    font-variant: normal;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
}

/* トップページ変更20241130　スライダー調整 */

.top #content {
padding-top: 0em!important;
}
.l-content {
    margin: 0 auto 6em;
    padding-top: 0em!important;
    position: relative;
    z-index: 1;
}

/* トップページのH2 */

.page-id-1950 h2:not(.swell-block-accordion__label) {
  display: flex;
  background-image: none !important;
  background-color: rgba(255, 255, 255, 0);
  border: none !important;
  justify-content: center;
}
.page-id-1950 h2:not(.swell-block-accordion__label) strong {
  display: inline-block;
  color: #0095aa;
  border-bottom: solid 8px #ffe300 !important;
  padding: 0 3px 5px;
  font-size: 26px;
  position: relative;
  letter-spacing: .05em;
}
.page-id-1950 h2:not(.swell-block-accordion__label) strong::before {
	content:'';
	display:inline-block;
	width: 16px;
	height: 16px;
	background:url("https://www.atama.plus/wp-content/uploads/2024/11/h2_before.png") no-repeat;
  background-size: contain;
	position:absolute;
	left: -18px;
	top: -12px;
}

.page-id-1950 h2:not(.swell-block-accordion__label) strong::after {
	content:'';
	display:inline-block;
	width: 16px;
	height: 16px;
	background:url("https://www.atama.plus/wp-content/uploads/2024/11/h2_after.png") no-repeat;
  background-size: contain;
	position:absolute;
	right:-18px;
	top:-12px;
}
.page-id-1950 .post_content h2:not(.swell-block-accordion__label) {
  margin: 0.5em 0 1em !important;
}
.page-id-1950 .post_content h2.mt-h2 {
  margin: -0.5em 0 1.5em !important;
}
.page-id-1950 .post_content h2.mb0-h2 {
  margin: -0.5em 0 0em !important;
}
.page-id-1950 .post_content .new-top-4point-area h2 {
  margin: 0.5em 0 0.5em !important;
}
@media (max-width: 599px) {
.page-id-1950 .post_content .new-top-4point-area h2 {
margin: -0.7em 0 1em !important;
  }
  .page-id-1950 h2:not(.swell-block-accordion__label) strong {
border-bottom: solid 6px #ffe300 !important;
    padding: 0 1px 3px;
    font-size: 18px;
		margin-bottom: -0.7em;
  }
  .page-id-1950 h2:not(.swell-block-accordion__label) strong::before {
	width: 10px;
	height: 10px;
	left: -11px;
	top: -8px;
}

.page-id-1950 h2:not(.swell-block-accordion__label) strong::after {
	width: 10px;
	height: 10px;
	right:-11px;
	top:-8px;
}
}

/* 学年別ページリニューアル202412 */
/* 黄色いボタン */
.swell-block-button.green_.-size-l.is-style-btn_solid.mryotaiken-flow a {
    color: #000;
	letter-spacing:0rem;
}
[class*=is-style-btn_].-size-l.mryotaiken-flow {
    --the-min-width: 100%;
    --the-padding: 1em 0em 0.9em ;
}

/* H2 */

h2.new-top-h2 {
	display: flex;
	background-image: none!important;
	background-color: rgba(255,255,255,0);
	border: none!important;
	justify-content: center;
}

h2.new-top-h2 strong {
	display: inline-block;
	color:#0095aa;
	border-bottom: solid 8px #ffe300!important;
padding: 0 3px 5px;
	font-size: 26px;
	position:relative;
	letter-spacing: .05em;
}

/*h2.new-top-h2 strong::before {
	content:'';
	display:inline-block;
	width: 16px;
	height: 16px;
	background:url("https://www.atama.plus/wp-content/uploads/2024/11/h2_before.png") no-repeat;
  background-size: contain;
	position:absolute;
	left: -18px;
	top: -12px;
}

h2.new-top-h2 strong::after {
	content:'';
	display:inline-block;
	width: 16px;
	height: 16px;
	background:url("https://www.atama.plus/wp-content/uploads/2024/11/h2_after.png") no-repeat;
  background-size: contain;
	position:absolute;
	right:-18px;
	top:-12px;
}*/

.post_content h2.new-top-h2 {
	margin: 0.5em 0 1em!important; 
}
.post_content h2.new-top-h2.mt-h2 {
	/*margin: -0.5em 0 1em!important;*/ 
}
.post_content h2.new-top-h2.mb0-h2 {
	margin: -0.5em 0 0em!important; 
}
.post_content .3point-area h2 {
	margin: 0.5em 0 -1em!important; 
}
@media (max-width: 599px) {
	.post_content h2.new-top-h2.mtmb-2-h2 {
	/*margin: -0.5em 0 -1.5em!important;*/ 
}
	.post_content h2.new-top-h2.mb15-h2 {
	margin: -0.5em 0 1.5em!important; 
}
	.post_content .3point-area h2.new-top-h2 {
	margin: 0.5em 0 -1em!important;
}

h2.new-top-h2 strong {
	border-bottom: solid 6px #ffe300!important;
padding: 0 1px 3px;
	font-size: 18px;
}

/*h2.new-top-h2 strong::before {
	width: 10px;
	height: 10px;
	left: -11px;
	top: -8px;
}

h2.new-top-h2 strong::after {
	width: 10px;
	height: 10px;
	right:-11px;
	top:-8px;
}	*/
}	
/* センター配置のブロック */
   .center-txt-block {
		 display: flex;
		 justify-content: center;
}	

/* 逆算学習のリード文 */
@media (max-width: 599px) {
	p.lead-gakunen .u-fz-l {
	font-size: 15px!important
}
}

/* 学年ページの　H3 */
.post_content h3.h3-a-type {
    margin: 3em 0 1.5em;
    position: relative;
	  border: none;
    border-top: solid 6px #0095aa;
    border-bottom: solid 6px #0095aa;
    padding: 15px 0 20px 80px!important;
background:url("https://www.atama.plus/wp-content/uploads/2024/11/bg_grid06pc.png") no-repeat center left;
	height: 125px;
	display: block;
	align-items: center;
}
@media (max-width: 599px) {
	.post_content h3.h3-a-type {
	font-size: 70%;
	padding: 12px 0 20px 80px!important;
	}	
}
span.round-num {
	padding-bottom:3px;
    position: absolute;
    font-size: 35px;
    color: #fff;
    display: flex;
    width: 50px;
    height: 50px;
    background-color: #0095aa;
    border-radius: 25px;
    margin: auto;
    justify-content: center;
    align-items: center;
	left: 10px;
	top: 50%;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}
@media (max-width: 599px) {
h3.h3-a-type span.swl-fz.u-fz-xl {
        font-size: 21px !important;
        text-align: left !important;
}
}

.3point-area .swell-block-fullWide.pc-py-20.sp-py-20.alignfull {
margin-top: 0!important;
}
@media not all and (min-width: 960px) {
.3point-area .sp-py-20 {
padding-top: 0!important;	
}
}

/* 3つのポイント */
.gakunen-b-copy p .u-fz-l {
font-size: 18px!important;
}

@media (max-width: 599px) {
.gakunen-b-copy p .u-fz-l {
font-size: 15px!important;
}	
}
/* 3つのポイント間等の間隔をSPで詰める */
@media (max-width: 599px) {
.group-3point img {
margin: -0.5em 0 1.5em!important;
}
/*.group-3point:last-child img {
margin: -1em 0 3em!important;
}*/
.group-3point figure.bottom-m-2em img {
		margin-bottom: -2em!important;
}
}
@media (min-width: 600px) {
.group-3point figure.bottom-p-2em img {
		margin-bottom: 2em!important;
}
}

/*トップと5学年のページ「X」（掛け算のかける）20251029*/
.kakeru {
	margin: 10px 20px 0;
}
/* H3 B-TYPE */
h3.h3-b-type {
display: flex;
justify-content: center;
font-size: 24px!important;
color: #fff!important;
background-color: #0095aa!important;
border: none!important;
background-image: none!important;
padding: 0.7em!important;
margin: -0.5em auto 1em;
width: 80%
}
	@media (max-width: 599px) {
		h3.h3-b-type {
	font-size: 23px!important;	
	width: 100%
		}
	}
p.b-copy-sp15 {
font-size: 18px!important;		
	}
	@media (max-width: 599px) {	
p.u-h2-title {
	font-size: 22px;
}
p.b-copy-sp15 {
font-size: 15px!important;
margin-bottom: 1.5em!important;
	}
}
/* PC用キービジュアル */
figure.kv-pc img {
height: calc(100vh - 189px)!important;
    object-fit: cover;
}
/*atama＋塾の違い用キービジュアル*/
figure.kv-pc2 img {
height: calc(100vh - 283px)!important;
    object-fit: contain!important;
    margin: 40px 0;
}
/* トップページクッキー出し分け位置調整 */
.dashiwake {
    margin: 0;
}
/* 校舎一覧に開校予定を追加 */
.swell-block-box-menu__item.btn-kaikoyotei .swell-block-box-menu__figure {
	margin-bottom: 0;
}

/* 学年　h1を見えないようにする */
.c-pageTitle[data-style=b_bottom] {
    border-bottom: none;
}
.c-pageTitle[data-style=b_bottom] .c-pageTitle__inner {
    border-bottom: none;
    margin-bottom: 0;
    padding: 0;
}
.page-id-6061 .c-pageTitle,
.page-id-4309 .c-pageTitle,
.page-id-4297 .c-pageTitle,
.page-id-4270 .c-pageTitle,
.page-id-4249 .c-pageTitle,
.page-id-3705 .c-pageTitle,
.page-id-3691 .c-pageTitle,
.page-id-3680 .c-pageTitle,
.page-id-3633 .c-pageTitle,
.page-id-3598 .c-pageTitle,
.page-id-2803 .c-pageTitle,
.page-id-3637 .c-pageTitle,
.page-id-3656 .c-pageTitle,
.page-id-3667 .c-pageTitle,
.page-id-3676 .c-pageTitle,
.interview-template-default .c-postTitle__ttl {
	font-size: 0;
}
@media (min-width: 600px) {
    .page-id-6061 .c-pageTitle,
	.page-id-4309 .c-pageTitle,
	.page-id-4297 .c-pageTitle,
	.page-id-4270 .c-pageTitle,
	.page-id-4249 .c-pageTitle,
    .page-id-3705 .c-pageTitle,
    .page-id-3691 .c-pageTitle,
    .page-id-3680 .c-pageTitle,
    .page-id-3633 .c-pageTitle,
    .page-id-3598 .c-pageTitle,
    .page-id-2803 .c-pageTitle,
    .page-id-3637 .c-pageTitle,
    .page-id-3656 .c-pageTitle,
    .page-id-3667 .c-pageTitle,
    .page-id-3676 .c-pageTitle,
    .interview-template-default .c-postTitle__ttl{
        font-size: 0;
    }
}
.page-id-6061 .l-mainContent__inner>.post_content,
.page-id-4309 .l-mainContent__inner>.post_content,
.page-id-4297 .l-mainContent__inner>.post_content,
.page-id-4270 .l-mainContent__inner>.post_content,
.page-id-4249 .l-mainContent__inner>.post_content,
.page-id-3705 .l-mainContent__inner>.post_content,
.page-id-3691 .l-mainContent__inner>.post_content,
.page-id-3680 .l-mainContent__inner>.post_content,
.page-id-3633 .l-mainContent__inner>.post_content,
.page-id-3598 .l-mainContent__inner>.post_content,
.page-id-2803 .l-mainContent__inner>.post_content,
.page-id-3637 .l-mainContent__inner>.post_content,
.page-id-3656 .l-mainContent__inner>.post_content,
.page-id-3667 .l-mainContent__inner>.post_content,
.page-id-3676 .l-mainContent__inner>.post_content,
.interview-template-default .l-mainContent__inner>.post_content{
    margin: 0em 0;
}

/*フッター上のスペースも消す*/
.l-content {
    margin: 0 auto 0em;
}
@media (min-width: 960px) {
.-frame-on .l-mainContent {
    padding: 0px 32px 0;
    }
}

.-frame-on .l-mainContent {
    padding: 0vw 3vw 0vw;
}

@media (min-width: 960px) {
/*校舎、資料請求、無料体験　のみ適用*/
	.page-id-629.-frame-on .l-mainContent,
	.page-id-547.-frame-on .l-mainContent,
    .page-id-549.-frame-on .l-mainContent {
        padding: 32px!important;
    }
/*無料体験の流れ、よくある質問　のみ適用*/
	.page-id-1564.-frame-on .l-mainContent,
	.page-id-802.-frame-on .l-mainContent {
        padding: 32px 0 0!important;
    }
}

/* 未来への挑戦ストーリー　窓口（アーカイブ） */

.page-id-5717,
.post-type-archive-interview,
.tax-interview_cate{
    background: #f6f6f6;
}
.page-id-5717 h1.c-pageTitle,
.post-type-archive-interview h1.c-pageTitle,
.tax-interview_cate h1.c-pageTitle{
    height: calc(100vh - 189px) !important;
    object-fit: cover;
    left: calc(50% - 50vw + var(--swl-scrollbar_width, 0px) / 2);
    width: calc(100vw - var(--swl-scrollbar_width, 0px));
    background: url(https://www.atama.plus/wp-content/uploads/2024/12/interview-archive-main-pc.webp) no-repeat center center;
    background-size: cover;
    color: #fff;
}
@media (max-width: 599px) {
	.page-id-5717 h1.c-pageTitle,
    .post-type-archive-interview h1.c-pageTitle,
    .tax-interview_cate h1.c-pageTitle{
        background: url(https://www.atama.plus/wp-content/uploads/2024/12/interview-archive-main-sp-1.webp) no-repeat center top;
        height: auto !important;
        aspect-ratio: 3 / 2;
        background-size: cover;
        padding: 0;
    }
}
.page-id-5717 .c-pageTitle__inner,
.post-type-archive-interview .c-pageTitle__inner,
.tax-interview_cate .c-pageTitle__inner{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
.page-id-5717 .c-pageTitle__subTitle,
.post-type-archive-interview .c-pageTitle__subTitle,
.tax-interview_cate .c-pageTitle__subTitle{
    display: none;
}
.page-id-5717 figure.int-archive-kv,
.interview-template-default figure.int-archive-kv{
    margin-bottom: 0 !important;
}
.page-id-5717 figure.kv-pc.int-archive-kv img,
.interview-template-default figure.kv-pc.int-archive-kv img{
    object-position: center;
}
h2.int-archive-title{
    background: none !important;
    border: none !important;
    position: absolute;
    top: calc(50% - 36px);
    width: 100%;
    color: #fff;
    font-size: 40px;
    letter-spacing: 2px;
    margin: 0 auto;
    padding: 0;
}
@media (max-width: 599px) {
    h2.int-archive-title{
        font-size: 20px;
        top: calc(50% - 18px);
    }
}
.page-id-5717 .p-archiveContent,
.post-type-archive-interview .p-archiveContent,
.tax-interview_cate .p-archiveContent{
    padding: 3em 0;
    margin: 0 !important;
}
.page-id-5717 ul.p-postList,
.post-type-archive-interview ul.p-postList,
.tax-interview_cate ul.p-postList{
    padding-left: 0; 
    margin: 0;
    display: flex;
    gap: 1.5em;
    justify-content: space-between;
}
.page-id-5717 ul.p-postList li,
.post-type-archive-interview ul.p-postList li,
.tax-interview_cate ul.p-postList li{
    margin: 0;
    list-style: none;
    border-radius: 30px;
    font-weight: bold;
    color: #000;
    padding: 1.2em 1em 2em;
    box-shadow: 4px 4px 0 #c8c8c8;
    background: #fff;
    width: calc(50% - 0.75em) !important;
}
.page-id-5717 ul.p-postList li a.p-postList__link, 
.post-type-archive-interview ul.p-postList li a.p-postList__link,
.tax-interview_cate ul.p-postList li a.p-postList__link{
    display: flex;
    flex-direction: column-reverse;
    position: relative;
}
.page-id-5717 ul.p-postList li div.p-postList__body,
.post-type-archive-interview ul.p-postList li div.p-postList__body,
.tax-interview_cate ul.p-postList li div.p-postList__body{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.page-id-5717 ul.p-postList li .p-postList__thumb,
.post-type-archive-interview ul.p-postList li .p-postList__thumb,
.tax-interview_cate ul.p-postList li .p-postList__thumb{
    width: 84px;
    height: 84px;
    position: absolute;
    left: calc(50% - 200px);
    bottom: -5px;
    border-radius: 50%;
}
.page-id-5717 ul.p-postList li .p-postList__thumb:before,
.post-type-archive-interview ul.p-postList li .p-postList__thumb:before,
.tax-interview_cate ul.p-postList li .p-postList__thumb:before{
    background: none;
}
.page-id-5717 ul.p-postList li .p-postList__link:hover .c-postThumb__img,
.post-type-archive-interview ul.p-postList li .p-postList__link:hover .c-postThumb__img,
.tax-interview_cate ul.p-postList li .p-postList__link:hover .c-postThumb__img{
    transform: none;
}
.page-id-5717 ul.p-postList li .p-postList__thumb .c-postThumb__figure,
.post-type-archive-interview ul.p-postList li .p-postList__thumb .c-postThumb__figure,
.tax-interview_cate ul.p-postList li .p-postList__thumb .c-postThumb__figure{
    width: 100%;
    height: 100%;
}
.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__meta,
.post-type-archive-interview ul.p-postList li div.p-postList__body .p-postList__meta,
.tax-interview_cate ul.p-postList li div.p-postList__body .p-postList__meta{
    display: none;
}
.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__title,
.post-type-archive-interview ul.p-postList li div.p-postList__body .p-postList__title,
.tax-interview_cate ul.p-postList li div.p-postList__body .p-postList__title{
    text-align: center;
    font-size: 20px;
    border-bottom: 1px #eb6b92 solid;
    padding-bottom: 0.8em;
    margin-bottom: 1em;
    width: 100%;
}
.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__excerpt,
.post-type-archive-interview ul.p-postList li div.p-postList__body .p-postList__excerpt,
.tax-interview_cate ul.p-postList li div.p-postList__body .p-postList__excerpt{
    color: #0093a8;
    font-size: 24px;
    padding-left: 120px;
    margin: 0;
    width: 100%;
}
@media (max-width: 820px) {
	.page-id-5717 ul.p-postList li,
    .post-type-archive-interview ul.p-postList li,
    .tax-interview_cate ul.p-postList li{
        padding: 1.2em 0.8em 2em;
        width: 100% !important;
    }
	.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__excerpt,
    .post-type-archive-interview ul.p-postList li div.p-postList__body .p-postList__excerpt,
    .tax-interview_cate ul.p-postList li div.p-postList__body .p-postList__excerpt{
        max-width: 450px;
    }
}
@media (max-width: 599px) {
	.page-id-5717 ul.p-postList,
    .post-type-archive-interview ul.p-postList,
    .tax-interview_cate ul.p-postList{
        flex-direction: column;
    }
	.page-id-5717 ul.p-postList li .p-postList__thumb,
    .post-type-archive-interview ul.p-postList li .p-postList__thumb,
    .tax-interview_cate ul.p-postList li .p-postList__thumb{
        width: 80px;
        height: 80px;
        left: 0;
        bottom: -15px;
    }
	.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__title,
    .post-type-archive-interview ul.p-postList li div.p-postList__body .p-postList__title,
    .tax-interview_cate ul.p-postList li div.p-postList__body .p-postList__title{
        font-size: 17px;
    }
	.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__excerpt,
    .post-type-archive-interview ul.p-postList li div.p-postList__body .p-postList__excerpt,
    .tax-interview_cate ul.p-postList li div.p-postList__body .p-postList__excerpt{
        font-size: 1.35em;
        padding-left: 90px;
    }
}

/* 未来への挑戦ストーリー　インタビューページ */
.interview-template-default figure.kv-pc img{
    object-position: top;
}
.interview-template-default.postid-4084 figure.kv-pc img{
    object-position: center;
}
.interview-template-default .p-articleMetas.-top{
    display: none;
}
.int-title{
    font-size: 22px;
    margin-bottom: 0;
    margin-top: 1.75em;
}
@media (max-width: 599px) {
    .int-title{
        font-size: 15px;
        margin-top: -1em;
    }
}
h2.int-intro-area{
    background: none !important;
    border: none !important;
    text-align: center;
    border-top: 1px #0094a9 solid !important;
    border-bottom: 1px #0094a9 solid !important;
    padding: 1em 0;
    margin: 1.75em 0;
}
h2.int-intro-area span:first-child{
    color: #000;
    font-size: 16px;
    letter-spacing: 0;
	display: inline-block;
	line-height: 1.3;
}
h2.int-intro-area span:last-child{
    color: #0094a9;
    font-size: 34px;
}
@media (max-width: 599px) {
    h2.int-intro-area{
        margin: 1em 0;
    }
    h2.int-intro-area span:first-child{
        font-size: 14px;
    }   
    h2.int-intro-area span:last-child{
        font-size: 28px;
    }
}
.about-interviewee .interviewee-title{
    text-align: center;
    font-size: 34px;
    line-height: 1.6;
    font-weight: bold;
    color: #000;
    margin-bottom: 35px;
}
.about-interviewee .interviewee-text{
    font-size: 18px;
    line-height: 2;
    margin-bottom: 2.75em;
}
.about-interviewee .profile-area{
    background: rgb(234 108 146 / 14%);
    border-radius: 30px;
    font-weight: bold;
    color: #000;
    padding: 1.2em 1em;
}
.about-interviewee .profile-area p{
    text-align: center;
    font-size: 22px;
    border-bottom: 1px #eb6b92 solid;
    padding-bottom: 0.8em;
    margin-bottom: 0.8em;
}
.about-interviewee .profile-area div{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1em;
}
.about-interviewee .profile-area div img{
    width: 84px;
    border-radius: 50%;
}
.about-interviewee .profile-area div dl{
    font-size: 16px;
}
@media (max-width: 599px) {
    .about-interviewee .interviewee-title{
        font-size: 28px;
        margin-bottom: 15px;
    }
    .about-interviewee .interviewee-text{
        font-size: 15px;
        margin-bottom: 1em;
    }
    .about-interviewee .profile-area p{
        font-size: 18px;
    }
    .about-interviewee .profile-area div{
        justify-content: flex-start;
    }
    .about-interviewee .profile-area div dl{
        font-size: 13px;
    }
}

h2.int-subject{
    background: none !important;
    border: none !important;
    text-align: center;
    border-top: 1px #0094a9 solid !important;
    border-bottom: 1px #0094a9 solid !important;
    padding: 1em 0 1.5em;
    margin: 2em 0 2.25em;
    color: #000;
    font-size: 30px;
}
h2.int-subject span{
    color: #eb6b92;
    display: block;
    width: 36px;
    height: 48px;
    margin: 0 auto 10px;
    background: url(https://www.atama.plus/wp-content/uploads/2024/12/interview-num-bg.png) no-repeat center center;
    background-size: contain;
    letter-spacing: -1px;
    line-height: 40px;
    font-weight: normal;
    font-size: 0.8em;
}
.int-subject-title{
    font-size: 20px;
    color: #000;
    margin-bottom: 3em;
}
.int-txt-name{
    font-size: 18px;
}
.int-txt-ans{
    color: #000;
    font-size: 18px;
    margin-bottom: 2.8em;
}
@media (max-width: 599px) {
    h2.int-subject{
        margin: 1em 0 1.5em;
        font-size: 24px;
    }
    .int-subject-title{
        font-size: 18px;
        margin-bottom: 2em;
    }
    .int-txt-name,
    .int-txt-ans{
        font-size: 15px;
    }
}
#after_article .l-articleBottom__section{
    display: none;
}

/*トップページ、学年別ページの　未来への挑戦ストーリー記事リスト*/
.p-postListWrap.mirai-s-list {
    margin-bottom: 0;
}
.mirai-s-list .-type-card .p-postList__item {
    margin-bottom: 1em;
    margin-top: 0;
    padding: 0 .5em;
    width: 50%;
}
.mirai-s-list .-type-card .p-postList__body {
    padding: 0.5em;
    background-color: #f6dbe4;
    border-radius: 0 0 15px 15px;
	box-shadow: 4px 3px 0px 0px rgba(0, 0, 0, .2);
}

.-type-card .p-postList__thumb {
    width: 100%;
	border-radius: 15px 15px 0 0;
	box-shadow: 4px 3px 0px 0px rgba(0, 0, 0, .2);
}
.mirai-s-list span.mirai-sp {
	display: none;
}
@media (min-width: 600px) {
	.mirai-s-list .-type-card .p-postList__item {
    padding: 0 1.5em;
}
	.mirai-s-list .-type-card .p-postList__body {
    padding: 1em 1.5em;
	}

    #sidebar .mirai-s-list .-type-list .p-postList__title, .-type-card .p-postList__excerpt {
        font-size: 16px;
    }
	.mirai-s-list span.mirai-sp {
	/*display: inline;*/
}
}
@media (max-width: 599px) {
.u-mb-40 {
    margin-bottom: 2em !important;
	 
}
.u-mb-50.sp-hight {
	margin-bottom: 3em !important;	
	}
}

/*フッターのレイアウト変更20250128*/
.l-container.w-footer.-col3 {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
}
@media (min-width: 960px) {
    .w-footer__box {
        flex: none;
        padding: 0em 1em;
        width: 240px;
    }
}
@media not all and (min-width: 960px) {
    .w-footer__box+.w-footer__box {
        margin-top: 0em;
    }
    .w-footer__box {
        padding: 0em 0.5em;
        width: 100px;
    }
}

/*模試の申し込みフォームThanksページのタイトルを消す*/
.page-id-4373 .c-pageTitle {
	visibility: hidden;
	height: 0;
}

/*記事サイトの導線バナー*/
.swell-block-fullWide.journal-link  {
    padding: 2em 1em 0;
    position: relative;
}
.journal-link .swell-block-bannerLink .c-bannerLink__img {
    height: 100%;
    width: 60%;
    object-fit: contain;
}
.journal-link .wp-block-columns .wp-block-column {
    margin: 0 !important;
    background-color: #e2eef0;
	box-shadow: 4px 3px 0px 0px rgba(0, 0, 0, .2);
	border-radius: 20px;
}
.journal-link .c-bannerLink__title {
    font-size: 1em;
    line-height: 1.25;
    width: 40%;
    margin-left: 72%;
    text-align: left;
	padding: 0 0.5em 0 0;
}
@media (min-width: 1240px) {
	.journal-link .c-bannerLink__title {
	font-size: 1.2em;
	padding: 0 1em 0 0;
	}
}

.home .u-mb-60 {
	margin-bottom: 3em!important;
}

/* 2025模擬試験ページ */
.page-id-5207 #top_title_area,
.page-id-5068 #top_title_area,
.page-id-5017 #top_title_area,
.page-id-4506 #top_title_area,
.page-id-4855 #top_title_area{
    display: none;
}
.h1-wrapper{
    min-height: 240px;
    padding: 2.5em 0;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0095aa;
    color: #ffffff;
    border: 7px #231916 solid;
    border-bottom: none;
    /* min-width: 100vw;
    margin-left: calc(-50vw + 50%);  */
}
.h1-wrapper h1{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 40px;
    letter-spacing: 3px;
}
.h1-wrapper h1 .text-target{
    display: flex;
    flex-direction: column;
    padding-bottom: 15px;
}
.h1-wrapper h1 .text-target > span{
    display: flex;
    align-items: center;
    line-height: 1.5;
}
.h1-wrapper h1 .text-target span span{
    letter-spacing: 0;
    font-size: 0.4em;
    border: 1px #ffffff solid;
    width: 105px;
    text-align: center;
    display: block;
    border-radius: 30px;
    font-weight: normal;
    margin-right: 10px;
}
.h1-wrapper h1 img{
    width: 22px;
}
.h1-wrapper .last{
    line-height: 1.5;
    padding-top: 20px;
}
.h1-wrapper .last span{
    position: relative;
}
.h1-wrapper .last span::before{    
    content: "\2022\2022\2022\2022";
    position: absolute;
    top: -18px;
    left: 5%;
    width: 110%;
    text-align: center;
    font-size: 22px;
    letter-spacing: 34px;
    color: #f1e900;
}

@media (min-width: 960px) {
    .h1-wrapper{
        padding: 1em 0;
    }
    .h1-wrapper h1{
        font-size: 50px;
        letter-spacing: 5px;
    }
    .h1-wrapper h1 .text-target{
        flex-direction: row;
        gap: 30px;
        padding-bottom: 0;
    }
    .h1-wrapper h1 .text-target span span{
        width: 120px;
    }
    .h1-wrapper .last span::before{
        font-size: 26px;
        letter-spacing: 43px;
    }
}
.page-id-4506.-frame-on .l-mainContent,
.page-id-4855.-frame-on .l-mainContent,
.page-id-4506 .l-mainContent__inner>.post_content,
.page-id-4855 .l-mainContent__inner>.post_content {
    padding: 0;
    color: #000000;
}
@media (min-width: 960px) {
    .page-id-4506 #main_content,
    .page-id-4855 #main_content {
        padding-left: 16px;
        padding-right: 16px;
    }
}
.moshi-wrapper{
    border: 7px #231916 solid;
}
.moshi-pd-3{
    padding-left: 3vw !important;
    padding-right: 3vw !important;
}
.moshi-pd-6{
    padding-left: 6vw !important;
    padding-right: 6vw !important;
}
@media (min-width: 960px) {
    .moshi-pd-6{
        padding-left: 3vw !important;
        padding-right: 3vw !important;
    }
    .page-id-4506.-frame-on .l-mainContent,
    .page-id-4855.-frame-on .l-mainContent {
    padding: 0;
    }
}

.hr-black{
    border-bottom: 7px #231916 solid !important;
    margin: 0 !important;
}
.moshi2505-invite-free{
    letter-spacing: 2px;
    padding: 0vw 3vw 0vw;
}
.moshi2505-invite-free img{
    width: 150px;
    margin-top: 1.5em;
}
.moshi2505-invite-free .flex-box strong{
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    letter-spacing: 3px;
}
.moshi2505-invite-free ul{
    padding: 0;
    font-size: 20px;
}
.moshi2505-invite-free ul li{
    list-style: none;
    display: flex;
    justify-content: center;
}
.moshi2505-invite-free ul.info-deadline li{
    align-items: center;
    font-weight: bold;
}
.moshi2505-invite-free ul.info-deadline li:last-child{
    font-size: 0.95em;
}
.moshi2505-invite-free ul li span:first-child{
    width: 105px;
}
.moshi2505-invite-free ul.info-deadline li span:first-child{
    width: 115px;
    background: #0095aa;
    color: #fff;
    text-align: center;
    border-radius: 30px;
    margin-right: 10px;
}
.moshi2505-invite-free.last ul.info-deadline li span:last-child{
    color: #EF7D52;
}
.moshi2505-invite-free ul.info-deadline li b{
    font-size: 0.8em;
}
.moshi2505-invite-free hr{
    border-bottom-color: #231916;
    margin: 2em 0;
}
.moshi2505-entry-btn{
    margin: 2.5em 0;
}
.moshi2505-entry-btn strong{
    letter-spacing: 1px;
}
.moshi2505-entry-btn img{
    width: 180px;
}
@media not all and (min-width: 960px) {
    .page-id-4506 .l-content,
    .page-id-4855 .l-content{
        padding-left: 0;
        padding-right: 0;
    }
}
.review-check-wrapper{
    padding: 1.5em 3vw 3em !important;
    letter-spacing: 1px;
}
.review-check-wrapper.last{
    padding-top: 3.5em !important;
    position: relative;
}
.review-check-wrapper.last:before{
    content: "";
    background: url(https://www.atama.plus/wp-content/uploads/2025/04/moshi2025-arrow-icon.png) no-repeat center center;
    width: 100%;
    height: 90px;
    display: block;
    background-size: contain;
    position: absolute;
    top: -30px;
    left: 0;
}
.review-check-wrapper span.swl-fz.u-fz-xl{
    font-size: 45px !important;
    letter-spacing: 2px;
}
.review-check-wrapper .wp-block-columns .wp-block-column:first-child .wp-block-image{
    position: relative;
}
.review-check-wrapper .wp-block-columns .wp-block-column:first-child .wp-block-image::after{
    content: "";
    position: absolute;
    right: calc(-10px - 0.75em);
    bottom: calc(50% - 10px);
    width: 0; 
    height: 0; 
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 14px solid #0095aa;
    visibility: visible;
}
@media (min-width: 960px) {
    .review-check-wrapper .wp-block-columns{
        gap: 3em !important;
    }
    .review-check-wrapper .wp-block-columns .wp-block-column:first-child .wp-block-image::after{
        right: calc(-10px - 1.5em);
    }
}
@media (max-width: 599px) {
    .review-check-wrapper span.swl-fz.u-fz-xl{
        font-size: 48px !important;
    }
}
@media (max-width: 781px) {
    .review-check-wrapper .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{
        flex-basis : calc(50% - var(--wp-column-gap)/2)!important;
    }
    .review-check-wrapper .wp-block-columns .wp-block-column:first-child .wp-block-image::after{
        right: calc(-5px - 0.75em);
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 10px solid #0095aa;
        bottom: calc(50% - 6px);
    }
}
.intro-txt {
    letter-spacing: 1px;
    padding-top: 2.5em;
    padding-bottom: 2.5em;
}
.intro-txt .swl-bg-color{
    padding: 0;
}
@media (min-width: 960px) {
    .intro-txt {
        padding: 2.5em !important;
    }
}
.intro-txt + hr{
    max-width: calc(100% - 6vw) !important;
}
.sch-ttl strong{
    display: flex;
    align-items: center;
    letter-spacing: 2px;
}
.sch-ttl strong .swl-bg-color{
    display: flex;
    align-items: center;
    border-radius: 30px;
    padding: 0 7px;
    margin-right: 10px;
    height: 28px;
}
.sch-txt{
    letter-spacing: 2px;
    line-height: 1.5;
}
.pattern-ttl h2,
.pattern-ttl h3{
    font-size: 26px;
    padding: 0.3em !important;
    border: none !important;
    background-image: none !important;
    letter-spacing: 2px;
}
@media (min-width: 960px) {
    .pattern-ttl h2,
    .pattern-ttl h3{
        padding: 0.5em !important;
    }
    .pattern-ttl + p{
        text-align: center;
    }

}
.test-timetable table tr{
    background: url(https://www.atama.plus/wp-content/uploads/2025/04/moshi2025-line-dotted.png) repeat-x center calc(100% + 3px);
    background-size: 10px;
}
.test-timetable table tr:last-child{
    background: none;
}
.test-timetable.last tr:last-child{
    border-bottom: 2px #0095aa solid;
}
.test-timetable table td{
    border: none;
}
.test-timetable table tr:not(:last-child) td{
    padding-bottom: 12px;
}
.moshi-pd-3 .border-2{
    border-width: 2px;
}
.test-timetable table tr td:last-child{
    display: inline-block;
    width: 180px;
    text-align: left;
}
.moshi-accordion {
    letter-spacing: 1px;
    margin-top: 2.5em;
}
.moshi-accordion .swell-block-accordion__title{
    background: none;
    border-top: 2px #0095aa solid;
    padding: 1em 3vw;
}
.moshi-accordion .swell-block-accordion__title h4{
    text-align: center;
    padding-right: 0;
}
.moshi-accordion .swell-block-accordion__item+.swell-block-accordion__item{
    margin-top: 0;
}
.moshi-accordion .swell-block-accordion__item:last-child .swell-block-accordion__title{
    border-bottom: 2px #0095aa solid;
}
.moshi-accordion .swell-block-accordion__item:last-child.is-opened .swell-block-accordion__title{
    border-bottom: none;
}
.moshi-accordion .swell-block-accordion__body{
    padding: 0;
}
.moshi-accordion .swell-block-accordion__body .wp-block-columns{
    padding: 10px 3vw;
    gap: 0 !important;
}
.moshi-accordion .swell-block-accordion__body .wp-block-column:first-child{
    flex-grow: 1.3;
}
.moshi-accordion .swell-block-accordion__body .wp-block-column:last-child{
    flex-grow: 3.2;
}
.moshi-accordion .swell-block-accordion__body .moshi-pd-3.last{
    margin-bottom: 70px !important;
}
@media (min-width: 960px) {
    .moshi-accordion .swell-block-accordion__body .moshi-pd-3.last{
        padding-left: 3vw !important;
        padding-right: 3vw !important;
    }
}
.moshi-accordion .swell-block-accordion__body .b-b-dotted{
    background: url(https://www.atama.plus/wp-content/uploads/2025/04/moshi2025-line-dotted.png) repeat-x center calc(100% + 3px);
    background-size: 10px;
    padding-bottom: 1.5em;
}
.moshi-logo{
    padding: 5em 0;
}
.moshi-logo img{
    max-width: 330px;
}
/*20250528訴求アップデートより*/
/* 1026・1034行目のコメントアウトを本番環境にも移行すること */
/* 1144行目も3em に変更 */
@media (max-width: 599px) {
.gyakusan-logo img {
	width:auto!important;
	height: 52px!important;
	margin-bottom: -15px;
}
}

/*電子パンフレット20260416*/
.page-id-5602 h1.c-pageTitle {
	display: none;
}
.page-id-5602 #gnav {
	display: none!important;
}
.page-id-5602 #top_title_area {
	display: none!important;
}
.page-id-5602 .l-header__menuBtn {
	display: none!important;
}
.page-id-5602 #breadcrumb {
	display: none!important;
}
.page-id-5602 .l-container.w-footer.-col3 {
	display: none!important;
}
.page-id-5602 .l-footer__nav {
	display: none!important;
}
.page-id-5602 .l-content {
    padding-top: 0em!important;
	padding-bottom: 4em!important;
}
.page-id-5602 .sp-py-40 {
    padding-top: 2em!important;
}
a.pamph-link {
    padding-left: 70px;
}
@media (min-width: 960px) {
.page-id-5602 .-parallel-bottom .l-header__inner {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}
@media (max-width: 599px) {
.page-id-5602 .post_content h1 {
    font-size: 1.4em;
}
.page-id-5602 .l-mainContent__inner>.post_content {
    margin: 2em 0;
}
	a.pamph-link {
		text-align: center;
		padding-left: 0px;
	}
}

@media (min-width: 821px) {
	.page-id-5602 figure:nth-of-type(9) img {
		width: 724px;
	}
}
/*未来への挑戦ストーリーが「合格実績・体験記」に名称変更　20260430*/
.page-id-5717 .post_content h3 {
        font-size: 1.1em;
        font-weight: 700;
        line-height: 1.4;
        margin: 2em 0 0em;
        position: relative;
        border: none;
        padding-top: 0.4em !important;
		padding-left: 0!important;
		padding-bottom: 0;
    }
.page-id-5717.-frame-on .l-mainContent {
    background: #f6f6f6;
	padding: 0 0vw 100px;
}
@media (max-width: 599px) {
.page-id-5717.-frame-on .l-mainContent {
	padding: 0 2vw 70px;
}
.page-id-5717 ul.p-postList li div.p-postList__body .p-postList__excerpt {
  font-size: 18px!important;
}
.page-id-5717 .alignwide, .page-id-5717 .l-content .alignfull {
        left: -2vw;
        width: calc(100% + 6vw);
    }
}

/*　中学生のページリニューアル20260602　*/
/*　不安と答えバッジ　*/
.qaq-block {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 0;
    border-top: 1px solid #646464;
    border-bottom: 1px solid #646464;
  }
.qaa-block {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 0;
  }
.num-block {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 15px 0 0;
    border-top: 4px solid #0095aa;
    margin-bottom: 1em;
  }
.orange-block {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 0px 0 0;
    margin-bottom: 1em;
  }
 .qaq-block .badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    min-width: 60px;
    height: 60px;
    background-image: url('https://www.atama.plus/wp-content/uploads/2026/06/wave-circle.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    font-size: 18px;
    font-weight: bold;
    color: #646464;
    letter-spacing: 0.1rem;
  }
.qaa-block .badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    min-width: 56px;
    height: 56px;
    background-color: #f4dc26;
    border-radius: 50%;
    font-size: 17px;
    font-weight: bold;
    color: #06132a;
    letter-spacing: 0.1rem;
  }
.num-block .badge {
   display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    min-width: 56px;
    height: 56px;
    background-color: #0095aa;
    border-radius: 50%;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.1rem; 
}
.orange-block .badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    min-width: 56px;
    height: 56px;
    background-color: #ef7d52;
    border-radius: 50%;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.05rem; 
    text-align: center;
    line-height: 1.4;
  }
  .qaq-text {
    font-size: 15px;
    font-weight: bold;
    color: #231916;
    line-height: 1.8;
  }
  .qaa-text {
    font-size: 15px;
    font-weight: bold;
    color: #0095aa;
    line-height: 1.8;
  }
.num-text {
    font-size: 15px;
    font-weight: bold;
    color: #0095aa;
    line-height: 1.8;
  }
  .orange-text {
    font-size: 15px;
    font-weight: bold;
    color: #ef7d52;
    line-height: 1.8;
  }
.num-txt {
margin-bottom: 0;
padding-bottom:15px;
    }
.num-txt.is-last {
border-bottom: 4px solid #0095aa;
    }

@media screen and (min-width:600px){
.qaq-block {
    gap: 20px;
    padding: 20px 0;
  }
.qaa-block {
    gap: 20px;
    padding: 20px 0;
  }
.num-block {
    gap: 20px;
    padding: 20px 0 0;
  }
.orange-block {
    gap: 20px;
    padding: 0px 0 0;
  }
 .qaq-block .badge {
    width: 100px;
    min-width: 100px;
    height: 100px;
    font-size: 26px;
    letter-spacing: 0.1rem;
  }
.qaa-block .badge {
    width: 90px;
    min-width: 90px;
    height: 90px;
    font-size: 24px;
    letter-spacing: 0.1rem;
  }
.num-block .badge {
    width: 80px;
    min-width: 80px;
    height: 80px;
    font-size: 30px;
    letter-spacing: 0.1rem;
  }
.orange-block .badge {
    width: 90px;
    min-width: 90px;
    height: 90px;
    font-size: 18px;
    letter-spacing: 0.1rem;
  }
  .qaq-text {
    font-size: 22px;
  }
  .qaa-text {
    font-size: 22px;
  }
  .num-text {
    font-size: 22px;
  }
  .orange-text {
    font-size: 22px;
  }
.qa-txt {
    font-size: 20px;
    }
.num-txt {
    font-size: 20px;
    padding-bottom: 20px
    }
}

  /* ===== グリッド背景セクション ===== */
  .grid-section {
    background-color: #fff;
    background-image:
      linear-gradient(to right, rgba(0,149,170,0.2) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(0,149,170,0.2) 1px, transparent 1px);
    /* スマホ：20px グリッド（雰囲気優先） */
    background-size: 16px 16px;
    background-position: center top;
    padding: 40px 0px 30px!important;
    margin-bottom: 3em;
  }

  @media screen and (min-width: 600px) {
    .grid-section {
      /* PC：980px ÷ 20px = 49等分 ぴったり */
      background-size: 20px 20px;
      padding: 40px 0px 52px!important;
    }
  }
.grid-section2 {
    background-color: rgba(103,182,90,0.03);
    background-image:
      linear-gradient(to right, rgba(103,182,90,0.3) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(103,182,90,0.3) 1px, transparent 1px);
    /* スマホ：20px グリッド（雰囲気優先） */
    background-size: 16px 16px;
    background-position: center top;
    padding: 24px 30px!important;
    margin-bottom: 3em;
  }

  @media screen and (min-width: 600px) {
    .grid-section2 {
      /* PC：980px ÷ 20px = 49等分 ぴったり */
      background-size: 20px 20px;
      padding: 0!important;
    }
  }
  /* ===== コンテンツエリア ===== */
  .grid-inner {
    width: 100%;
  }

  @media screen and (min-width: 600px) {
    .grid-inner {
      max-width: 980px;
      margin: 0 auto;
    }
  }

  /* ===== 上部：画像＋見出し ===== */
  .lead-block {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
  }

  .lead-block img {
    width: 50px;
    height: auto;
    flex-shrink: 0;
    margin-left: 1em;
  }

  @media screen and (min-width: 600px) {
    .lead-block img {
      width: 100px;
    }
  }

  .lead-block p {
    font-size: 17px;
    font-weight: bold;
    color: #333;
    line-height: 1.7;
  }

  @media screen and (min-width: 600px) {
    .lead-block p {
      font-size: 22px;
    }
  }

  /* ===== 下部：テキストカード ===== */
  .text-card {
    background-color: #fff;
    border-radius: 20px;
    padding: 32px 24px;
    box-shadow: 4px 5px 0px #dfeef0;
  }

  @media screen and (min-width: 600px) {
    .text-card {
      padding: 48px 40px;
    }
  }

  .text-card p {
    font-size: 16px;
    color: #333;
    line-height: 1.9;
  }

  @media screen and (min-width: 600px) {
    .text-card p {
      font-size: 18px;
    }
  }

  .text-card p + p {
    margin-top: 28px;
  }
/* 青い角R枠 */
.ao-waku {
    padding-left: 1em!important;
    padding-right: 1em!important; 
}
@media screen and (min-width: 600px) {
.ao-waku {
    min-width: 600px;
    letter-spacing: 0.1rem;
}
}

/* 学年のページの本文 */
@media screen and (min-width: 600px) {
p.gakunen_base01 {
font-size: 18px;
    }
h3.is-style-section_ttl {
 font-size: 24px;   
}
}
.gakunen2026-cp {
    padding-bottom: 1em!important;
}
/*atama＋塾の違いのページ*/
h2.feature-h2 {
    background: transparent!important;
    border: none!important;
    margin-top: 40px;
}

/* =========================================================
   合格実績ボックス（大学・高校 共通）テキスト化対応
   1つのHTMLをメディアクエリでPC/SP切り替え
   ========================================================= */
.gokaku-box {
	--gokaku-pink: #eb6b92;
	background-color: #fff;
	border: 5px solid var(--gokaku-pink);
	border-radius: 0;
	margin: 0 0 10px;
}

/* 見出し帯（グリッドが縦4マスできれいに収まるよう余白を調整） */
.gokaku-box__head {
	padding: 6px 10px;
	text-align: center;
	border-bottom: 5px solid var(--gokaku-pink);
	background-color: #fff;
	background-image:
		linear-gradient(to right, rgba(235,107,146,.35) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(235,107,146,.35) 1px, transparent 1px);
	background-size: 10px 10px;
	background-position: left top;
}
@media screen and (min-width:600px) {
	.gokaku-box__head {
		padding: 8px 10px;
		background-size: 13px 13px;
	}
}

/* h3タイトル */
.gokaku-box__head h3.gokaku-box__title,
.gokaku-box__head h3.gokaku-box__title::before,
.gokaku-box__head h3.gokaku-box__title::after {
	content: none !important;
}
.gokaku-box__head h3.gokaku-box__title {
	display: block;
	width: 100%;
	float: none;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	text-align: center !important;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .08em;
	color: #231916;
	line-height: 1.4;
}
@media screen and (min-width:600px) {
	.gokaku-box__head h3.gokaku-box__title { font-size: 26px; }
}

/* 本文（大学合格実績＝2カラム／高校合格実績＝1カラム） */
.gokaku-box__body { display: flex; flex-direction: column; }
.gokaku-box__col { padding: 16px 18px; }
.gokaku-box__col + .gokaku-box__col { border-top: 5px solid var(--gokaku-pink); }
.gokaku-box__body--single { padding: 16px 18px 18px; }
@media screen and (min-width:600px) {
	.gokaku-box__body:not(.gokaku-box__body--single) { flex-direction: row; }
	.gokaku-box__col { flex: 1 1 50%; padding: 18px 24px; }
	.gokaku-box__col + .gokaku-box__col { border-top: none; border-left: 5px solid var(--gokaku-pink); }
}

/* 【国公立】【私立】ラベル */
.gokaku-box__label {
	margin-right: .3em;
	font-weight: 700;
	color: var(--gokaku-pink);
}

/* 学校名リスト（スマホは「都立戸山高校・岡山県立岡山朝日高校」が1行に収まるサイズを基準に縮小） */
.gokaku-box__list {
	margin: 0;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.7;
	color: #231916;
	overflow-wrap: break-word;
}
@media screen and (min-width:600px) { 
.gokaku-box__list { font-size: 22px; } 
}

/* 高校合格実績：3段階サイズ＋1行目のみ太字強化 */
.gokaku-tier1 { font-size: 17px; font-weight: 900; }
.gokaku-tier2 { font-size: 15px; }
.gokaku-tier3 { font-size: 14px; }
@media screen and (min-width:600px) {
	.gokaku-tier1 { font-size: 28px; }
	.gokaku-tier2 { font-size: 24px; }
	.gokaku-tier3 { font-size: 20px; }
}

/* 「など」だけ縮小 */
.gokaku-nado {
	font-size: .8em;
}

/* 「・」の出し分け専用クラス */
.gokaku-dot-pc, .gokaku-dot-sp { display: none; }
@media screen and (max-width:599px) { .gokaku-dot-sp { display: inline; } }
@media screen and (min-width:600px) { .gokaku-dot-pc { display: inline; } }

/*FAQ を構造化　20260911*/
.swell-block-faq__item .faq_q {
  position: relative;
  cursor: pointer;
  padding-right: 2.2em;
}

.swell-block-faq__item .faq_q .faq-toggle-icon {
  position: absolute;
  top: 50%;
  right: 0.8em;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
}

.swell-block-faq__item .faq_q .faq-toggle-icon::before,
.swell-block-faq__item .faq_q .faq-toggle-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #0095aa;
}

.swell-block-faq__item .faq_q .faq-toggle-icon::before {
  width: 14px;
  height: 2px;
  transform: translate(-50%, -50%);
}

.swell-block-faq__item .faq_q .faq-toggle-icon::after {
  width: 2px;
  height: 14px;
  transform: translate(-50%, -50%) rotate(0deg);
  transition: transform 0.3s ease;
}

.swell-block-faq__item .faq_q.is-open .faq-toggle-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.swell-block-faq__item .faq_a {
  display: none;
}
.swell-block-faq__item .faq_a.is-open {
  display: block;
}
.swell-block-faq__item h3.faq_q {
    position: relative;
    cursor: pointer;
    padding-right: 2.2em;
    border: none;
    border-radius: 10px;
    background: var(--color_gray);
}
.swell-block-faq h3.faq_q {
    font-size: inherit;
    font-weight: 700;
    line-height: 1.5;
    margin: 0;
    padding: 1em 2em 1em 4em !important;
    position: relative;
}
.swell-block-faq .faq_a {
    line-height: 1.5;
    padding: 1em 1em 1em 4em;
    position: relative;
}
.swell-block-faq .faq_q:before {
    border-radius: var(--swl-faq_icon_radius);
    bottom: unset;
    content: "Q";
    display: block;
    font-family: Arial, sans-serif;
    font-weight: 400;
    left: 1em;
    line-height: 2;
    position: absolute;
    text-align: center;
    top: 1em;
    width: 2em;
}
.swell-block-faq .faq_a:before {
    border-radius: var(--swl-faq_icon_radius);
    content: "A";
    display: block;
    font-family: Arial, sans-serif;
    left: 1em;
    line-height: 2;
    position: absolute;
    text-align: center;
    top: 1em;
    width: 2em;
}