@charset "utf-8";
/* CSS Document */


section{
	padding: 10vw 3vw 6vw;
}
.pc{display: none !important;}
.font-eng {
    font-family: brandon-grotesque, sans-serif;
    /* font-weight: 400; */
    font-style: normal;
    font-weight: bold;
    letter-spacing: -0.03em;
}

#main{
	height: 70vh;
	background: url("../img/main-img.jpg");
	background-size: 340%;
    background-position: center;
	background-repeat: no-repeat;
	position: relative;
	margin: 0 0 10px 0;
}
#main .catchcopy{
	display: block;
    width: calc( 100% - 32px );;
    position: absolute;
    bottom: 160px;
    padding: 0 16px;
}

#main .catchcopy .sub_catch{
	font-size: 1.3em;
    font-weight: bold;
	text-shadow:none;
	color: #fff;
	text-shadow: 2px 2px 4px rgb(0 0 0);
}
#main .catchcopy .sub_catch span{
	display: inline-block;
    background: #222;
    padding: 2px 12px 1px;
    font-size: 78%;
    color: #fff;
    margin: 0 8px 0 0;
    border-radius: 6px;
	text-shadow:none;
}


#main .catchcopy h2{
	font-family: 'M PLUS Rounded 1c', sans-serif;
        font-size: 2em;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.04em;
    transform: rotate(0.03deg);
    margin: 0 0 16px 0;
    color: #fff;
	text-shadow: 2px 2px 4px rgb(0 0 0);
}


#main .scrol-down {
    display: block;
    width: 40vw;
    /* height: 8vw; */
    padding: 2vw;
    background: #fff;
    border-radius: 4vw;
    text-align: center;
    vertical-align: text-bottom;
    letter-spacing: normal;
	margin: 0 auto;
	font-weight: bold;
	color: #eb0268;
}

#pickup {
    position: absolute;
    bottom: -32px;
    left: 3vw;
}

#pickup p{
	padding: 0px;
}
#pickup p a{
	padding: 4vw 0 4vw 9%;
}

#comment ul{
	display: flex;
	margin-top: 3vw;
}
#comment ul li{
	width : 33.33333% ; /* 未対応ブラウザ用フォールバック */
	width : -webkit-calc(100% / 3) ;
	width : calc(100% / 3) ;
	margin: 0 4px;
	/*height: 30vw;*/
	background: #eb0268;
	color: #fff;
	text-align: center;
	padding: 8px 0 0 0;
    border-radius: 10px;

}
#comment p{
	margin: 1vw;
}
#comment img{
	width: 90%;
}
#comment b{
	display: block;
    width: calc( 100% - 28px );
    background: #fff;
    color: #eb0268;
    padding: 6px 4px;
    margin: 0 8px 8px;
    text-align: center;
    border-radius: 6px;
    font-size: 84%;
}


#comparison{
	background: #f7f6ed;
}
#comparison table.tbl{
	width: 100%!important;
	margin: 3vw 0.2vw 0 0;
	border-bottom: solid 1px #ccc;
	border-top: solid 1px #ccc;
	border-collapse:collapse;
	background: #fff;
}
#comparison table.tbl th,.tbl td {
	border-bottom: none;
	display: block;
	box-sizing: border-box;
	font-size: 80%;
	font-weight: normal;
	border: solid 1px #ccc;
	padding: 7px 7px 7px 7px;
	text-align: center;
}
#comparison table.tbl th{
	width: 100%;
	background: #e5e5e5;
	color: #333;
}
#comparison table.tbl td{
	width: calc(100% / 3);
	float: left;
	border-top: none;
	border-bottom: none;
	/*height: 60px;
    display: flex;*/
    justify-content: center;
    align-items: center;	
}
#comparison table.tbl td.img-box{
	display: inline;
	height: 96px;
	font-size: 5px
}
#comparison table.tbl td .sign{
	font-size: 220%;
}
#comparison table.tbl td b{
	font-size: 11px;
	display: block;
}

#recommended-warp{
	background: #fdfef8;
}
.recommended-block{
	background: #fff;
	border-radius: 16px;
	padding: 16px;
	margin: 16px 8px 8px;
	position: relative;
	box-sizing: border-box;
    filter: drop-shadow(0px 6px 6px rgba(0, 0, 0, 0.2));
}
.recommended-block::after {
    content: '';
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.recommended-block h4{}
.recommended-block h5{
	font-size: 104%;
    border-bottom: 2px solid #666;
    margin: 0 0 8px 0;
    display: inline-block;
    padding: 0 6px;
}
.recommended-block div p{
	font-size: 14px;
	line-height: 1.2em;
	display: inline-block;
    padding: 4px 8px;
	/*border-radius: 6px 0 0 6px;*/
}
.recommended-block div p .font-eng{
	font-size: 130%;
}
/*.recommended-block div p::before{
    top: 16px;
    left: 88px;
    height: 32px;
    width: 64px;
}
div.recommended-block div p::after{
    font-size: 24px;
    top: 27px;
    left: 97px;
}*/

.school-logo{
	width: 100%;
	margin: 10px 0 0 0;
}
.school-logo img{
}

.evaluation{
	font-size: 110%;
    border-bottom: 1px solid #ccc;
    margin-bottom: 8px;
    padding-bottom: 4px;
}
.evaluation span{
	color: #ff9900;
}

.recommended-block .site-img{
	margin: 0 0 32px 0;
}
.recommended-block .coupon-img{
	margin: 0px;
}
.recommended-block .site-img::before{
	
}

.recommended-points{
	margin: 16px 0 0 0;
}
div.recommended-block .recommended-points ul li{
	display: list-item;
    font-size: 92%;
    margin: 6px 0;
    padding: 0px 0 0px 6px;
    border-left: 4px solid #eb0268;
}

div.recommended-block .benefits{}

#summarize{
	padding-bottom: 0px;
}
#summarize h3{
	margin-bottom: 8px;
}

#purpose{
}
.school-select{
	margin: 24px 0 0;
}
.school-select h4{
	margin: 0px;
	font-size: 12px;
	top: -16px;
    left: 8px;
	width: 90%
}
.school-select p a{
    margin: 4px;
	font-size: 14px;
}
.school-select p a b{
	margin-right: 8px!important;
}

footer{}

.cp_arrows *, .cp_arrows *:before, .cp_arrows *:after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_arrows {
	position: relative;
	/*display: flex;*/
	height: 300px;/*画面いっぱいにする場合100vh*/
	/*margin: 2em auto;*/
	/*justify-content: center;*/
	/*align-items: center;*/
	height: 20px;
    margin: 0 1em;
	display: inline-block;
}
.cp_arrows .cp_arrow {
	position: absolute;
	top: 80%;/*着地点（サンプルは[class:cp_arrows]height300pxの50%）*/
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	-webkit-transform-origin: 50% 50%;
	        transform-origin: 50% 50%;
	opacity: 0;
}
.cp_arrows .cp_arrowfirst {
	-webkit-animation: arrow-move08 2s ease-in-out infinite;
	        animation: arrow-move08 2s ease-in-out infinite;
}
.cp_arrows .cp_arrowsecond {
	-webkit-animation: arrow-move08 2s 1s ease-in-out infinite;
	        animation: arrow-move08 2s 1s ease-in-out infinite;
}
.cp_arrows .cp_arrow:before {
	position: absolute;
	top: 0;
	left: 1px;
	display: block;
	width: 12px;
	height: 3px;
	content: '';
	background: #E91E63;
}
 .cp_arrows .cp_arrow:after {
	 position: absolute;
	top: 0;
	left: -1px;
	display: block;
	width: 12px;
	height: 3px;
	content: '';
	background: #E91E63;
	}
	
.cp_arrows .cp_arrow:before {
	-webkit-transform: rotate(30deg) translateX(-39%);
	        transform: rotate(30deg) translateX(-39%);
	-webkit-transform-origin: top left;
	        transform-origin: top left;
}
.cp_arrows .cp_arrow:after {
	-webkit-transform: rotate(-30deg) translateX(39%);
	        transform: rotate(-30deg) translateX(39%);
	-webkit-transform-origin: top right;
	        transform-origin: top right;
}
@-webkit-keyframes arrow-move08 {
	0% {
		top: 30%;/*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
		opacity: 0;
	}
	70% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes arrow-move08 {
	0% {
		top: 24%;/*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
		opacity: 0;
	}
	70% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}	

