/* ---------------------------------- */
/* 進路ナビ
/* 学校特集 学校詳細ページ 共通
/* Update:2023/02
/* ---------------------------------- */

@import url("/new/_app/_webroot/css/module/swiper-bundle.min.css");
@import url("/new/_app/_webroot/css/page/newschool/common.css");

.pc #container_special div.content_head {
	padding:12px 0 0 40px;
	width:890px;
	height:118px;
	background:url(/img/page/scholarship/bg_title.jpg) no-repeat;
	margin-bottom:15px;
	/*background:url(/img/page/scholarship/bg_title.jpg) left top no-repeat;*/
}

.pc #container_special h1 {
	margin:0;
	padding:0;
}

.pc #container_special div.content_head p {
	margin:0;
	padding:0;
}

.pc #container_special ul.subLink{
	margin-bottom:20px;
	padding:5px 10px;
	background:#f7f7f7;
	border-top:1px solid #d2d2d2;
	border-bottom:1px solid #d2d2d2;
}

.pc #container_special ul.subLink li{
	display:inline;
	margin-right:30px;
	font-size:0.85em;
	padding-left:20px;
	background:url(/img/all/arw_10.gif) no-repeat left center;
	font-weight:bold;
}

.pc #container_special .schools {
	padding:10px;
	overflow:hidden;
}

.pc #container_special h2 {
	margin: 3px 5px 10px;
	padding: 0;
	overflow:hidden;
  background-image: none;
}

.pc div.prArea{
	font-size:0.8em;
	width:880px;
	margin:15px auto;
    background:#FFFFCC;
    border: 1px solid #FF9933;
    /*border-radius: 5px;*/
	padding:5px;
	}

.pc div.prArea a{
	background:url(/img/all/arw_08.gif) no-repeat left center;
	padding-left:8px;
	margin-right:15px;
	}

.pc #container_special .box {
	position:relative;
	border:1px solid #D2D2D2;
	border-top:none;
	margin:5px;
	padding:0;
	float:left;
	width:443px;
	height:200px;
	overflow:hidden;
	background: -webkit-gradient(linear, left top, left bottom, from(white), color-stop(0.1, white), to(#F9F9F9));
	-webkit-box-shadow: rgba(0, 0, 0, 0.496094) 0px 1px 2px;
	border-bottom-right-radius:5px;
	border-bottom-left-radius:5px;
	background-color:#FFF;
}
.pc #container_special .box .head {
	border-top:2px solid #666;
	position:relative;
	background:#666;
}
.pc #container_special .schools.daigaku .box .head {
	border-top:2px solid #3366CC;
	background:#C6E5FD;
}
.pc #container_special .schools.tandai .box .head {
	border-top:2px solid #FF6E74;
	background:#FEE1E2;
}
.pc #container_special .schools.senmon .box .head {
	border-top:2px solid #FFA111;
	background:#FFD9AD;
}
.pc #container_special .schools.free .box .head {
	border-top:2px solid #090;
	background:#9F9;
}
.pc #container_special .box .head p {
	margin:0;
	padding:0;
}
.pc #container_special .box .head .school_name {
	padding:7px;
	padding-left:30px;
	font-weight:bold;
}
.pc #container_special .schools.daigaku .box .head .school_name {
	background:url(/img/page/scholarship/ttl_point_daigaku.png) 10px center no-repeat;
}
.pc #container_special .schools.tandai .box .head .school_name {
	background:url(/img/page/scholarship/ttl_point_tandai.png) 10px center no-repeat;
}
.pc #container_special .schools.senmon .box .head .school_name {
	background:url(/img/page/scholarship/ttl_point_senmon.png) 10px center no-repeat;
}
.pc #container_special .schools.free .box .head .school_name {
	background:url(/img/page/scholarship/ttl_point_free.png) 10px center no-repeat;
}
.pc #container_special .box .head .school_info {
	position:absolute;
	right:7px;
	top:7px;
	padding:2px 5px;
	background:#333;
	font-size:12px;
	color:#FFF;
	border-radius:2px;
}
.pc #container_special .schools.daigaku .box .head .school_info {
	background:#3366CC;
}
.pc #container_special .schools.tandai .box .head .school_info {
	background:#FF6E74;
}
.pc #container_special .schools.senmon .box .head .school_info {
	background:#FFA111;
}
.pc #container_special .schools.free .box .head .school_info {
	background:#090;
}
.pc #container_special .box .body {
	padding:7px;
}
.pc #container_special .box .body .photo {
	float:left;
	width:120px;
	height:110px;
	padding-right:7px;
}
.pc #container_special .box .body .photo img {
	width:120px;
	height:90px;
}
.pc #container_special .box .body .about {
	padding-top:5px;
	font-size:0.8em;
}
.pc #container_special .box .body .about .text {
	margin:0;
}
.pc #container_special .box .read_more {
	position:absolute;
	right:7px;
	bottom:7px;
	margin:0;
	padding:0;
	font-size:0.8em;
	text-align:right;
	z-index:200;
}

/*--学校を探す--*/
.pc #container_special #footerSpot{
	border:3px solid #fccba6;
	background:#f7f7f7;
	width:520px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:10px;
}

.pc #container_special #footerSpot h3{
	background:url(/img/page/scholarship/icn_scholarship_01.gif) no-repeat left center;
	padding:3px 0 3px 30px;
	font-weight:bold;
	margin-top:5px;
	margin-bottom:5px;
	color:#59493f;
}

.pc #container_special #footerSpot ul{
	margin:5px 5px 3px 5px;
}

.pc #container_special #footerSpot ul li{
	display:inline;
	margin-right:5px;
}

.pc #container_special .submit {
	clear:both;
	text-align:center;
	padding:15px;
}

/*-- 以下、学校特集詳細ページ --*/
.panNavi{
	background: inherit;
}
.container{
    box-sizing:border-box;
    max-width:calc(960px + 2rem);
    margin: 0 auto;
    padding:1rem;
    font-family:"Noto Sans JP","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

.full-container{
    width:100%;
    background: rgb(79, 79, 82);
    font-family:"Noto Sans JP","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

/* #scholarship_detail{
    background: #ffffff;
} */

.specialDetailTitleWrap{
    width:100%;
    display: flex;
    justify-content: space-between;
    margin: 2rem auto 0 auto;
    background: rgb(255,207,76);
    background: -moz-linear-gradient(top,  rgba(255,207,76,1) 0%, rgba(255,146,10,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(255,207,76,1) 0%,rgba(255,146,10,1) 100%);
    background: linear-gradient(to bottom,  rgba(255,207,76,1) 0%,rgba(255,146,10,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffcf4c', endColorstr='#ff920a',GradientType=0 );
}

.specialDetailTitleLeft{
    width:70%;
    padding:1rem 2rem;
    display:flex;
    justify-content: center;
    flex-direction: column;
}

.specialDetailTitleRight{
    width:30%;
}

.specialDetailTag{
    display:flex;
    margin: 0 0 1rem 0;
    padding: 0;
}

.specialDetailTag li{
    list-style:none;
    background: #ffffff;
    padding:4px .8rem;
    border-radius:50px;
    font-weight:500;
    margin: 0 0.5rem 0 0;
}

.specialDetailTitle{
    margin:0.7rem 0 0 0;
    padding: 0 0 0 0;
    font-size:2.2rem;
    line-height:1.2;
    color:#ffffff;
}

.specialDetailTitle br{
    display:none;
}

.specialDetailTitleImg{
    display: block;
    position:relative;
}

.specialDetailTitleImg img{
    display: block;
    width:100%;
    height: 160px;
    object-fit: cover;
    object-position:top center;
}

.specialDetailTitleImg:after{
    content:"";
    display: block;
    position:absolute;
    bottom:0;
    right:0;
    background:url("/new/_app/_webroot/img/page/special/special_detail/mv_scholarship_sub.png") no-repeat;
    background-size:contain;
    width:80px;
    height:65px;
}

.catchTitleWrap h3{
    background: #C3EAEB;
    border-radius:8px;
    box-shadow:0px 3px 6px rgba(8,145,149,0.48);
    color:#089195;
    text-align: center;
    margin:0 0 0 0;
    padding:1rem;
    position:relative;
}

.catchTitleWrap h3::before{
    content:"";
    display: block;
    background:url("/new/_app/_webroot/img/page/special/special_detail/area_ttl_sub.png") no-repeat;
    width: 112px;
    height: 79px;
    position:absolute;
    top:-30px;
    left:40px;
}

#scholarship_detail details{
    position:relative;
    margin:3rem auto 2rem auto;
}
#scholarship_detail details:hover{
    cursor:pointer;
}
#scholarship_detail summary{
    display: block;
    list-style: none;
}
#scholarship_detail summary::-webkit-details-marker{
    display:none;
}
.catchTitleWrap h3::after{
    content:"+";
    font-size: 24px;
    display: block;
    position:absolute;
    top: 47%;
    right: 2.5%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

#scholarship_detail details[open] > .catchTitleWrap h3::after{
    content:"-";
    font-size: 32px;
}

.areaLinkList details{
    position:relative;
    margin:3rem auto 2rem auto;
}
.areaLinkList details:hover{
    cursor:pointer;
}
.areaLinkList summary{
    display: block;
    list-style: none;
}
.areaLinkList summary::-webkit-details-marker{
    display:none;
}
.areaLinkList details[open] > .catchTitleWrap h3::after{
    content:"-";
    font-size: 32px;
}

.areaLinkWrap{
    margin:2rem 0;
    padding: 0;
}

.areaLink{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    padding: 0;
    gap:20px 10px;
}

.areaLink li{
    list-style:none;
    width:calc(94% / 4);
}

.areaLink li a{
    display: block;
    text-decoration:none;
    color:#ffffff;
    padding:0.75rem 1rem;
    text-align: center;
    border-radius:4px;
}

.areaLink li:nth-child(1) a{background: #32ADE2;}
.areaLink li:nth-child(2) a{background: #60B051;}
.areaLink li:nth-child(3) a{background: #32A8A0;}
.areaLink li:nth-child(4) a{background: #A2C639;}
.areaLink li:nth-child(5) a{background: #FCB646;}
.areaLink li:nth-child(6) a{background: #E8623B;}
.areaLink li:nth-child(7) a{background: #EEA4B9;}
.areaLink li:nth-child(8) a{background: #E08653;}

#kangoiryo_detail .areaLink li a{background: #55BEAD;}

.infoAreaWrap{
    background: #e9f2fd;
    padding:3rem 0 4rem 0;
}

.infoArea{
    display:flex;
    justify-content: space-between;
}

.infoDetail{
	width: 40%;
}

.infoImage{
	width: 54%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
}

.infoDetailWrap{
	padding-left:2rem;
	border-left:5px solid #156ad1;
}

.infoDetailCategory{
    font-size:1.6rem;
    font-weight:500;
    padding:0.5rem 1rem;
    border:1px solid #156ad1;
    display:inline-block;
    border-radius:6px;
    margin: 0;
}

.infoDetailFacilityName{
    color:#156ad1;
    font-size:3rem;
    font-weight:700;
    line-height:1.4;
    margin: 3rem 0;
    padding: 0;
}
.infoDetailCategory,
.infoDetail,.infoDetail a{
    color:#156ad1;
    text-decoration: none;
}

.infoDetailData{
    color:#156ad1;
    margin: 0;
    padding: 0;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    width:100%;
    gap:1.6rem 0;
}

.infoDetailData dt{
    color:#156ad1;
    width:20%;
    margin: 0;
}

.infoDetailData dd{
    color:#156ad1;
    width:78%;
    margin: 0;
}

.infoDetailData dd a,.infoDetailData dd p{
	color:#156ad1;
    margin: 0;
    padding: 0;
}

.shareLink{
    width:100%;
    display:flex;
    justify-content:flex-end;
    margin-bottom:1rem;
}

.shareBtn a, .favBtn a{
    display: block;
    font-size:1.2rem;
    font-weight:600;
    text-decoration:none;
    color:#156ad1;
    background: #ffffff;
    border:2px solid #609AE0;
    border-radius:50px;
    margin:0 0 3px 24px;
    box-shadow:0px 3px 0px #609AE0;
}

.articleBox{
    background: #ffffff;
    border-radius:20px;
    box-shadow:0px 2px 10px rgba(21,106,209,0.3);
    margin: 0 0 2rem 0;
    padding:2rem;
}

.articleTitle{
    margin: 0 0 0 0;
    padding: 0 0 2rem 0;
    display:flex;
    justify-content: space-between;
    position:relative;
    border-bottom:1px solid #333;
}

.articleTitle h5.pointHead{
    width: 100%;
    margin: 0 0 0 8rem;
    padding: 0 0 0 1.6rem;
    font-size: 2rem;
    border-left: 5px solid #156ad1;
    line-height: 1.6;
    font-weight: 500;
    font-feature-settings: "palt";
}

.articleTitle::before{
    content:"";
    display: block;
    background:url("/new/_app/_webroot/img/page/special/special_detail/point_flag@2x.png") no-repeat;
    background-size:contain;
    width:74px;
    height: 62px;
    position:absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.articleContent{
	display: flex;
	justify-content: space-between;
	margin-top: 2rem;
}

.articleContent p{
	font-size: 1.25rem;
    min-width:68%;
	line-height: 1.6;
}

.articleContent img{
	align-self: flex-start;
	min-width:30%;
	max-width:100%;
	display: block;
}

.shareBtn a:hover,.favBtn a:hover{
    opacity:1;
    margin:3px 0 0 24px;
    box-shadow:0px 0px 0px #609AE0;
}

.shareBtn a{
    padding:1rem 2rem;
}

.favBtn a{
    padding:1rem 2rem 1rem 4rem;
    position:relative;
}

.favBtn a::before{
    content:"";
    display: block;
    position:absolute;
    top: 54%;
    left: 2rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width:20px;
    height:20px;
    background:var(--svgHeartRed);
}

.infoImagePhoto{
    width: 100%;
    display: flex;
    min-height: 350px;
    background: #cccccc;
}

.infoImagePhoto img{
    object-fit: cover;
    width:100%;
    height:350px;
}


.ancLinkListWrap{
    background: #156ad1;
    position:relative;
    z-index:0;
}

.ancLinkListBlock{
    padding:2rem 0 1rem 0;
}

.ancLinkList{
    margin: 0;
    padding: 0;
    list-style:none;
    display: flex;
    justify-content: space-between;
    flex-wrap:wrap;
    align-items:center;
}

.ancLinkList li{
    min-width:calc(calc(100% / 3) - 1rem);
    display:flex;
    justify-content: center;
    align-items:center;
    margin:2rem 0 0 0;
}
.ancLinkList li a{
    width:100%;
    display: block;
    text-decoration:none;
    color:#156ad1;
    font-weight:700;
    background: #ffffff;
    text-align: center;
    padding:1.5rem 1rem;
    border-radius:6px;
}

.ancLinkList li.noTab{
    opacity:0.3;
}

.ancLinkList li.noTab a{
		pointer-events: none;
}

.detailContentWrap{
    background:#156ad1;
    position:relative;
    overflow: hidden;
    padding: 8rem 0 0 0;
    z-index:1;
}
.detailContent{
    background: #ffffff;
    position:relative;
    padding:1rem 0;
    z-index:2;
}

.detailContent::before{
    content: "";
    display: block;
    width: 120%;
    height:140px;
    position: absolute;
    top: -5rem;
    left:-10%;
    transform: rotate(2deg);
    z-index:-3;
    background: #ffffff;
    overflow:hidden;
}

.detailContent .container{
    position:relative;
}

.detailContent .container:after{
    content: "";
    display: block;
    width: 70px;
    height:70px;
    position: absolute;
    top:-90px;
    right:20px;
    z-index:3;
    background:url("/new/_app/_webroot/img/page/special/special_detail/firstContentImg.png") no-repeat;
    background-size:contain;
    background-position:center center;
}

.firstContent{
    width:100%;
    max-width:960px;
    margin: 0 auto;
    position:relative;
    z-index:4;
}

.firstContentWrap{
    width:100%;
    margin: 0 auto;
    background: #F6FAFF;
}


.firstContentWrap{
    padding:2rem;
}

.detailBg{
    background: #F6FAFF;
    margin: 0 0 80px 0;
    padding:8rem 6rem 5rem 6rem;
}

.detailBg p{
    font-size:1.333rem;
    line-height:1.8;
    margin:1rem 0 0 0;
}

.fukidashi{
    position:relative;
}

.fukidashi p{
	position: absolute;
	top: -11rem;
	left: -6rem;
	background: #ffffff;
	font-size: 2rem;
	font-weight: 700;
	padding: 1.5rem 6rem;
	border-radius: 10px;
	border: 3px solid #156ad1;
	color: #156ad1;
}


.fukidashi p::before{
    content:"";
    display: block;
    width:20px;
    height:20px;
    position:absolute;
    bottom:-8px;
    left:47%;
    background: #ffffff;
    transform:translateX(-50%);
    transform:rotate(45deg);
    z-index:3;
}

.fukidashi p:after{
    content:"";
    display: block;
    width:20px;
    height:20px;
    position:absolute;
    bottom:-12px;
    left:47%;
    background: #156ad1;
    transform:translateX(-50%);
    transform:rotate(45deg);
    z-index:2;
}

.detailTitle h4{
    background: #7DB7FC;
    color:#ffffff;
    font-size:2.6rem;
    position:relative;
    text-align: center;
    margin:1rem 0;
    padding:2rem;
    overflow:hidden;
    font-weight:500;
    z-index:0;
}

.detailTitle h4::before{
    content:"";
    display: block;
    background: #2664D7;
    position:absolute;
    top: -30px;
    left: -20px;
    transform: rotate(20deg);
    width: 100px;
    height: 200px;
    z-index:-1;
}

.detailTitle h4:after{
    content:"";
    display: block;
    background: #2664D7;
    position:absolute;
    top: -20px;
    right:-20px;
    transform: rotate(20deg);
    width: 100px;
    height: 200px;
    z-index:-1;
}

.pointBg{
    background: #F6FAFF;
    margin: 0 0 80px 0;
    padding:4rem;
}

.detailImg{
    margin:0 auto;
    text-align:center;
}

.detailImg img{
    width: 100%;
    height: 450px;
    object-fit: cover;
}

.ctaArea{
    background:#156ad1;
}

.ctaContent{
    max-width:700px;
    margin: 2rem auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.ctaImage{
    width:20%;
    display:flex;
    justify-content:center;
    align-items:center;
}

.ctaText{
    width:70%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
}

.ctaText p{
    color:#ffffff;
    line-height:1.6;
    margin: 0 0 1.5rem 0;
}

.ctaRequestBtn{
    margin: 0;
    padding: 0;
    position:relative;
}

.ctaRequestBtn::before{
    content:"";
    display: block;
    background:url("/new/_app/_webroot/img/page/special/special_detail/book.png") no-repeat;
    width:62px;
    height:57px;
    position:absolute;
    top: -7px;
    left: 10px;
    z-index:1;
}

.ctaRequestBtn a{
    background:#FF9100;
    border-radius:8px;
    box-shadow:0px 4px 0px #0d3d96;
    color:#ffffff;
    display: block;
    font-size:1.1rem;
    font-weight:600;
    margin: 0;
    padding:1.5rem 6rem 1.5rem 7rem;
    position:relative;
    text-decoration:none;
    text-align: center;
}

.ctaRequestBtn a::before{
    content:"";
    display: block;
    position:absolute;
    top:40%;
    right:5%;
    width:12px;
    height: 12px;
    background: #ffffff;
    transform:rotate(45deg);
}

.ctaRequestBtn a:after{
    content:"";
    display: block;
    position:absolute;
    top:40%;
    right:6%;
    width:12px;
    height: 12px;
    background: inherit;
    transform:rotate(45deg);
}

.greenBg{
    background: #E9F8F8;
    padding:2rem;
}

.centerBig{
    margin: 2rem auto;
    padding: 0 0 0 0;
    font-size:2rem;
    font-weight:500;
    text-align: center;
}

.typeList{
    width:80%;
    margin: 0 auto;
    display:flex;
    justify-content: space-between;
    align-items:center;
    list-style:none;
    flex-wrap:wrap;
}

.typeList li{
    background: #ffffff;
    border:1px solid #0E8CC5;
    border-radius: 8px;
    display:flex;
    width: 49%;
    justify-content: center;
    margin:0 0 1rem 0;
    padding:1rem 2rem;
}

.typeList li p{
    margin: 0;
    padding: 0;
    font-size:1.4rem;
    text-align: center;
    color:#666666;
}

.typeList li p span{
    font-feature-settings: "palt";
    font-size:2.4rem;
    font-weight:500;
    color:#0A648D;
}

.centerText{
    text-align: center;
    max-width:70%;
    margin: 2rem auto ;
	line-height: 1.6;
}

.schoolBlock{
	width:100%;
}

/* .schoolBlock .btnList{
	display:flex;
	flex-direction:column;
	justify-content: flex-start;
	margin: 3rem 0 0 0;
}

.schoolBlock .btnList li p{
    display: block;
    border-radius: 0.5rem;
    background: rgb(var(--naviGray));
    color: #fff;
    margin: 1rem 0 0 0;
    padding:1rem;
    text-align: center;
} */

.addBoxBtnWrap{
	margin-bottom:2rem;
}

.otherContentArea{
	background: #fcf1d8;
}
@media screen and (min-width:768px) {
    .forSp{
        display:none;
    }
}
@media screen and (max-width:768px) {
    .forPc{
        display:none;
    }
    .specialDetailTitleLeft {
        width: 60%;
        padding: 10px;
        display: flex;
        justify-content: center;
        flex-direction: column;
    }

    .specialDetailTitleRight{
        width:40%;
    }

    .specialDetailTag li {
        font-size:11px;
        padding:2px 8px;
    }

    .specialDetailTitle {
        font-size: 2.2rem;
        line-height: 1.2;
        color: #ffffff;
    }

    .specialDetailTitle br{
        display:block;
    }

    .areaLink li{
        width:calc(94% / 2);
    }

    .ancLinkList li{
        min-width: calc(calc(100% / 3) - .5rem);
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0 0 1rem 0;
    }

    .infoAreaWrap{
        background: #e9f2fd;
        padding:2rem 0;
    }

    .infoArea{
        display:flex;
        flex-wrap:wrap;
        justify-content: space-between;
        flex-direction: column-reverse;
    }

    .infoDetail{
        width:100%;
        margin:2rem 0;
    }

    .infoImage{
        width:100%;
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:flex-start;
    }

    .specialDetailTitleImg:after{
        background-size:contain;
        width:60px;
        height:50px;
    }

    .catchTitleWrap h3::before {
        content: "";
        display: block;
        background: url(/new/_app/_webroot/img/page/special/special_detail/area_ttl_sub.png) no-repeat;
        background-size:contain;
        width: 60px;
        position: absolute;
        top: -37px;
        left: 50%;
        transform:translateX(-50%);
    }

    .detailBg{
        padding:5rem 1rem 2rem 1rem;
		margin:0 0 4rem 0;
    }

    .detailImg{
        margin:0 auto;
        text-align:center;
    }

    .detailImg img{
        width: 100%;
        height: 250px;
        object-fit: contain;
    }

    .detailTitle h4{
        font-size:2rem;
    }

    .detailTitle h4::before{
        position:absolute;
        top: -30px;
        left: -94px;
        transform: rotate(20deg);
        width: 100px;
        height: 200px;
        z-index:-1;
    }

    .detailTitle h4:after{
        position:absolute;
        top: -20px;
        right: -60px;
        transform: rotate(20deg);
        width: 100px;
        height: 200px;
        z-index:-1;
    }

    .articleTitle::before{
        position: absolute;
        top: 50%;
        left: 0%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
    }

    .articleContent{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin-top: 2rem;
    }

    .articleContent p{
        min-width: calc(100% - 2rem);
        font-size: 1.4rem;
        line-height: 1.6;
    }

    .articleContent img{
        align-self: flex-start;
        min-width:100%;
        display: block;
    }

    .articleTitle h5.pointHead{
        width: 100%;
        margin: 0 0 0 6rem;
        padding: 0 0 0 1.6rem;
        font-size: 1.75rem;
        border-left: 5px solid #156ad1;
        line-height: 1.6;
        font-weight: 500;
        font-feature-settings: "palt";
    }

    .articleTitle::before{
        content:"";
        display: block;
        background:url("/new/_app/_webroot/img/page/special/special_detail/point_flag@2x.png") no-repeat;
        background-size:contain;
        width:74px;
        height: 62px;
        position:absolute;
        width: 50px;
        height: 43px;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
    }

    .pointBg{
        background: #F6FAFF;
        margin: 0 0 80px 0;
        padding:2rem;
    }

    .shareBtn a,.favBtn a{
        display: block;
        font-size:1.4rem;
        font-weight:600;
        text-decoration:none;
        color:#156ad1;
        background: #ffffff;
        border:2px solid #609AE0;
        border-radius:50px;
        margin:0 0 3px 8px;
            padding:1rem 2rem 1rem 2rem;
        box-shadow:0px 3px 0px #609AE0;
    }

    .favBtn a{
            padding:1rem 2rem 1rem 4rem;
    }

    .favBtn a::before{
        position:absolute;
            top: 54%;
            left:1.8rem;
    }


    .shareBtn a:hover,.favBtn a:hover{
        opacity:1;
        margin:3px 0 0 8px;
        box-shadow:0px 0px 0px #609AE0;
    }

    .fukidashi p{
        position: absolute;
        top: -8rem;
        left: 0rem;
        background: #ffffff;
        font-size: 1.5rem;
        font-weight: 700;
        padding: 1rem 1.5rem;
        border-radius: 10px;
        border: 3px solid #156ad1;
        color: #156ad1;
        width:100%;
        text-align: center;
    }

    .fukidashi p::before{
        content:"";
        display: block;
        width:20px;
        height:20px;
        position:absolute;
        bottom:-8px;
        left:47%;
        background: #ffffff;
        transform:translateX(-50%);
        transform:rotate(45deg);
        z-index:3;
    }

    .fukidashi p:after{
        content:"";
        display: block;
        width:20px;
        height:20px;
        position:absolute;
        bottom:-12px;
        left:47%;
        background: #156ad1;
        transform:translateX(-50%);
        transform:rotate(45deg);
        z-index:2;
    }

    .typeList{
        width:80%;
        margin: 0 auto;
        display:flex;
        flex-direction:column;
        justify-content: space-between;
        align-items:center;
        list-style:none;
    }

    .typeList li{
        width:100%;
        margin:1rem 0;
        display:flex;
        justify-content: center;
        align-items:center;
    }

    .typeList li p{
        line-height:1.6;
    }

    .typeList li p span{
        margin:1rem;
    }

    .centerText{
        text-align: center;
        max-width:100%;
        margin: 2rem auto ;
        line-height: 1.8;
    }

    .ctaContent{
        max-width:700px;
        margin: 2rem auto;
        display:flex;
        flex-direction:column;
        justify-content:space-between;
        align-items:center;
    }

    .ctaText{
        width:100%;
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:flex-start;
    }

    .ctaText p{
        color:#ffffff;
        line-height:1.6;
        margin:1.5rem 0;
        text-align: center;
    }

    .ctaRequestBtn{
        margin: 0;
        padding: 0;
        position:relative;
        width: 100%;
    }

    .ctaRequestBtn::before{
        content:"";
        display: block;
        background:url("/new/_app/_webroot/img/page/special/special_detail/book.png") no-repeat;
        background-size:contain;
        width:40px;
        height:40px;
        position:absolute;
        top: 0px;
        left: 10px;
        z-index:1;
    }

    .ctaRequestBtn a{
        background:#FF9100;
        border-radius:8px;
        box-shadow:0px 4px 0px #0d3d96;
        color:#ffffff;
        display: block;
        font-size:1.4rem;
        font-weight:600;
        margin: 0;
        padding:1.5rem 6rem 1.5rem 7rem;
        position:relative;
        text-decoration:none;
        text-align: center;
    }
}

.forSp .infoImage{
    position:relative;
}

.forSp .infoImage .shareLink{
    position:absolute;
    top:8px;
    right:8px;
}

.forSp .favBtn a{
    display: block;
    font-size:1.4rem;
    font-weight:600;
    text-decoration:none;
    color:#88BEFF;
    background: #ffffff;
    border:2px solid #88BEFF;
    border-radius:50px;
    margin:0 0 3px 8px;
    padding:1rem 2rem 1rem 2rem;
    box-shadow:0px 3px 0px #666666;
}

.forSp .favBtn a{
    padding: 1.5rem;
}

.forSp .favBtn a::before{
    position:absolute;
    top: 50%;
    left: 0.5rem;
}

.forSp .favBtn a:hover{
    opacity:1;
    margin:3px 0 0 8px;
    box-shadow:0px 0px 0px #666666;
}

.forSp .infoDetailWrap{
    margin:0 0 1rem 0;
}

.forSp .infoDetailWrap .infoDetailFacilityName{
    margin: 1rem 0;
}

.forSp .infoDetailData{
    margin:2rem 0 0 0;
}

.forSp .ancLinkListBlock {
    padding: 0rem 0 1rem 0;
}

/* 看護医療学校詳細用　ボタン追加 20230324 */

/*請求ボタン*/


#kangoiryo_detail .infoArea a.getPamph{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3px;
    width: 100%;
    height: 100%;
    background: rgb(var(--naviRed));
    border: solid 2px rgb(var(--naviRed));
    border-radius: 0.5rem;
    box-shadow: var(--btnSahdow);
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    color: #fff;
}

#kangoiryo_detail .infoArea .bigBtn .addBoxBtn {
    margin-left: auto;
    margin-right: auto;
    min-height: 60px;
    width: 80%;
    max-width: 400px;
}
  
#kangoiryo_detail .infoArea .bigBtn .addBoxBtn a {
    font-size: 1.8rem;
  }

#kangoiryo_detail .addBoxBtnWrap .addBoxBtn .free,
#kangoiryo_detail .addBoxBtnWrap .addBoxBtn .paid {
    color:#ffffff;
    display: inline-block;
    margin-left: 5px;
    padding: 3px;
    background: #ff0;
    border-radius: 3px;
    color: rgb(var(--naviRed));
    font-size: 1rem;
    line-height: 1;
    text-align: center;
}

#kangoiryo_detail .addBoxBtnWrap .addBoxBtn .icon {
    position: relative;
    margin: 0 auto;
    display: inline-block;
    padding: 3px 5px 3px calc(1.25em + 5px);
    background: var(--svgPumpWhite);
    background-position: left center;
    background-size: 1.25em auto;
}

#kangoiryo_detail .schoolBlock .btnList .opBtnWrap {
    min-height: auto;
    height: 45px;
}
  
#kangoiryo_detail .schoolBlock .btnList .opBtn {
    display: grid;
    align-items: center;
    justify-content: center;
    grid-template-columns: 100%;
    width: 100%;
    height: 100%;
    color: #fff;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
}

#kangoiryo_detail .schoolBlock .btnList .opBtn span {
    display: grid;
    align-items: center;
    justify-content: center;
    height: 100%;
    border-radius: 0.5rem;
    background: rgb(var(--naviGray));
    color: #fff;
}

#kangoiryo_detail .schoolBlock .btnList .opBtn a {
    position: relative;
    display: grid;
    align-items: center;
    justify-content: center;
    padding: 3px 1.25em 3px 5px;
    width: 100%;
    height: 100%;
    background: #fff;
    border: solid 2px rgb(var(--ocYellow));
    border-radius: 0.5rem;
    box-shadow: var(--btnSahdow);
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    color: rgb(var(--ocYellow));
}

#kangoiryo_detail .schoolBlock .btnList .opBtn a::before {
    content: '';
    top: 50%;
    right: 0.5em;
    width: 0.6em;
    height: 0.6em;
    border-right: solid 2px rgb(var(--ocYellow));
    border-bottom: solid 2px rgb(var(--ocYellow));
    font-weight: bold;
    transform: translate(0, -50%) rotate(-45deg);
}

#kangoiryo_detail .infoDetail a.getPamph.fee .icon{
    position: relative;
    margin: 0 auto;
    display: inline-block;
    padding: 1rem 5px 1rem calc(1.25em + 5px);
    background: var(--svgPumpWhite);
    background-position: left center;
    background-size: 1.25em auto;
    color:#ffffff;
}

#kangoiryo_detail a.getPamph.fee span.icon span{
    padding:0 0.25rem;
    margin: 0 0 0 1rem;
    background-image:none !important;
    background-color:#ff0;
    border-radius:4px;
    color:#e51a38;
    text-align: center;
    font-size:1rem;
    font-weight:400;
}

/* お気に入りボタン ポップアップ */
.overlay {
	display: none;
}
.window {
	width: 90vw;
	max-width: 380px;
	height: 240px;
	background-color: #ffffff;
	border-radius: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.text {
	font-size: 18px;
	margin: 0;
}
.close {
	cursor:pointer;
	position: absolute;
	top: 4px;
	right: 4px;
	font-size: 20px;
}

/* oc_detail add 20230523 */

/*=====================アコーディオン　ここから=====================*/

.accordion{
    max-width: 800px;
    margin: 0 auto;
  }
  .accordion:not(:first-of-type) {
    margin-top: 30px;
  }
  /* --- details --- */
  .accordion__item{
    
  }
  
  /* 表示されるデフォルトの三角形アイコンを消します */
  summary {
    display: block;
    cursor: pointer;
  }
  summary::-webkit-details-marker {
    /* Safariで表示されるデフォルトの三角形アイコンを消します */
    display: none;
  }
  /* --- summary --- */
  .accordion__title{
    position: relative;
    font-size: 18px;
    line-height: calc(26 / 18);
    font-weight: 600;
    color:#303030;
    background-color: #ffffff;
    padding:13px 60px 13px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  /* --- アイコン --- */
  .accordion__icon {
    position: absolute;
    top: 50%;
    right: 4%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  /* --- ＋の縦 --- */
  .accordion__icon-bar {
    transform: translateY(50%);
    display: block;
    width: 20px;
    height: 2px;
    background-color: #303030;
  }
  /* --- ＋の - 部分 --- */
  .accordion__icon-bar:nth-of-type(2) {
    transform: translateY(-50%) rotate(-90deg);
    transition: transform .3s;
  }
  
  /* アコーディオンが開いた時のスタイル */
  details[open] .accordion__icon-bar:nth-of-type(2) {
    transform:translateY(-50%) rotate(0deg);
  }
  
  /* --- <details>タグ直下であるコンテンツ部分には上下のpaddingを指定しないことがポイントです。
  上下paddingを指定するとアニメーションするときにカクついてしまう --- */;
  .accordion__content {
    overflow: hidden;
  }
  /* --- アコーディオン開閉時の内容 --- */
  .accordion__answer{
    font-size: 16px;
    font-weight: 500;
    line-height: calc(24 / 16);
    letter-spacing: 0.1em;
    color: #333333;
    padding: 20px;
    background-color: rgb(232, 231, 217);
  }
  
  /*=====================アコーディオン ここまで=====================*/

  #sliderBlock{
    padding:8rem 0 4rem 0;
  }

  #sliderBlock .swiper-wrapper{
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
  }

  #sliderBlock .swiper-slide{
    width:100%;
    transform: scale(1, 1);
    max-width:286px;
    padding:1rem;
  }
  #sliderBlock .swiper-slide a{
    display:block;
    margin: 0 auto;
    width: 100%;
    background: #fff;
    border-radius: 1.5rem;
    box-shadow:var(--dropShadowBokashi);
  }

  #sliderBlock .swiper-slide a .scEventInfo{
    padding:1rem;
  }

  #sliderBlock .scSlideImage{
    border-radius:1.5rem 1.5rem 0 0;
    overflow:hidden;
    min-width:100%;
    min-height:200px;
    background: #ccc;
  }

  #sliderBlock .scSlideImage img{
    width:100%;
    min-width:100%;
    height:200px;
    object-fit: cover;
    object-position: center center;
    position:relative;
  }

  #sliderBlock .scSlideImage img::before{
    width: 100px;
    position: absolute;
    top: 25%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }

  #sliderBlock .scEventInfo .scEventArea{
    display:flex;
    justify-content: flex-end;
  }
  #sliderBlock .scEventInfo .scEventArea li{
    font-size:1rem;
    color:#333;
    text-align:right;
  }

  #sliderBlock .scEventInfo .scEventInfoText{
    background: rgb(var(--naviCream));
    border-radius:4px;
  }

  #sliderBlock .scEventInfo .scEventInfoText p{
    font-size:1rem;
    padding:4px 4px 6px 4px;
  }

  #sliderBlock .scEventInfo .scEventName{
    color:rgb(var(--naviKoiBlue));
    font-weight:600;
    font-size:1.8rem;
    margin:1rem 0;
    line-height:1.4;
    text-align: left;
  }

  #sliderBlock2{
    margin:2rem auto;
  }

  .moreBtn{
    width:100%;
    max-width: 400px;
    margin:2rem auto 2rem auto;
}

.moreBtnCatch{
    text-align: center;
    margin:1rem 0;
    position:relative;
    display:flex;
    justify-content: center;
    align-items:center;
}

.moreBtnCatch p{
    display:inline-block;
    background: #eeffb0;
    padding:8px 1rem;
    border-radius:50px;
    font-size:1.25rem;
}

.moreBtnCatch p:before{
    content:"";

}

.moreBtnCatch:before,.moreBtnCatch:after{
    content:"";
    width: 10px;
    height: 20px;
    background:var(--svgManpuGreen);
    position:absolute;
    top:8px;
    left: 70px;
    transform:rotate(200deg);
}

.moreBtnCatch:after{
    left:inherit;
    right:70px;
    transform:rotate(20deg);
}

.moreBtn a{
    background: rgb(var(--gsGreen));
    display: block;
    width: 100%;
    border-radius:8px;
}

.moreBtn a p{
    text-align: center;
    padding:2rem 1rem;
    color:#ffffff;
    font-size:1.8rem;
}


/* scSlide */

#sliderBlock2 .scSlide{
    margin:0 0 2rem 0;
    min-height:250px;
}

#sliderBlock2 .scLifeImg img{
    border-radius:15px;
    width: 100%;
    max-width:320px;
    height: 240px;
    object-fit: cover;
    object-position:center center;
}

#sliderBlock2 .scLifecatch{
    margin:1rem 0;
}

#sliderBlock2 .scSlide li {
    position: relative;
    margin: 0;
    padding: 0 5px 15px;
    width: 80vw;
    max-width: 400px;
}

#sliderBlock2 .scSlide > li * {
    opacity: 1;
    transform: scale(1, 1);
}

#sliderBlock2 .scSlide li figure {
    margin: 0 auto var(--paddingMinMin);
    width: 100%;
    max-width: var(--imageMaxWidth);
}

#sliderBlock2 .scSlide li img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    border-radius: 1rem;
}

#sliderBlock2 .scSlide li figure+div {
    padding: 0 5px;
}

#sliderBlock2 .scSlide .center * {
    opacity: 1;
}

#sliderBlock2 .scSlide .center figure {
    transform: scale(1, 1);
}

#sliderBlock2 .scSlide li .itemCatch {
    margin: 0 auto 10px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    font-size: 1.5rem;
    max-height: 1em;
    line-height: 1;
}

#sliderBlock2 .scSlide li .itemText {
    margin: 0 auto;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    max-height: 1em;
    line-height: 1;
}

#sliderBlock2 .scSlidePopup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    padding: 15px;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
}

#sliderBlock2 .scSlidePopupInner {
    position: absolute;
    top: 50%;
    left: 50%;
    padding-top: 10px;
    width: 100%;
    max-width: var(--contentsWidth);
    max-height: calc(100vh - 80px);
    transform: translate(-50%, -50%);
    text-align: center;
}

#sliderBlock2 .scSlidePopupImg {
    position: relative;
    display: inline-block;
    max-height: 60vh;
}

#sliderBlock2 .scSlidePopupImg::before {
    content: '';
    top: -25px;
    right: 10px;
    width: 45px;
    height: 3px;
    background: #fff;
    transform: rotate(45deg);
}

#sliderBlock2 .scSlidePopupImg::after {
    content: '';
    top: -25px;
    right: 10px;
    width: 45px;
    height: 3px;
    background: #fff;
    transform: rotate(-45deg);
}

#sliderBlock2 .scSlidePopupInner img {
    object-fit: contain;
}

#sliderBlock2 .scSlidePopupInner .itemCatch {
    padding: 15px;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.4;
}

#sliderBlock2 .scSlidePopupInner .itemText {
    margin: 0 auto;
    padding: 15px;
    width: calc(100% - 30px);
    max-height: calc(40vh - 80px);
    color: #fff;
    border: solid 1px rgba(255, 255, 255, 0.5);
    border-radius: 0.5rem;
    text-align: left;
    overflow-y: scroll;
    scrollbar-width: thin;
    scrollbar-color: #ccc rgba(255, 255, 255, 0.5);
    overscroll-behavior: none;
}

#sliderBlock2 .scSlidePopupInner .itemText::-webkit-scrollbar {
    width: 8px;
}

#sliderBlock2 .scSlidePopupInner .itemText::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 10px;
}

#sliderBlock2 .scSlidePopupInner .itemText::-webkit-scrollbar-thumb {
    background: rgb(var(--naviBlue));
    border-radius: 10px;
}


@media screen and (max-width:768px){
    #sliderBlock .scSlide{
        margin:0 0 2rem 0;
    }
    
    #sliderBlock .scLifeImg img{
        border-radius:15px;
        width: 100%;
        max-width:320px;
        height: 240px;
        object-fit: cover;
        object-position:center center;
    }
    
    #sliderBlock .scLifecatch{
        margin:1rem 0;
    }
}