@charset "UTF-8";
/* CSS Document */

.passrate section div.section_inner h3{
    line-height: 1;
	font-weight: 700;
	color: #FFF;
	text-align: center;
}

.passrate h3.bg_color_orange {
	background: #F49254;
}
.passrate h3.bg_color_purple {
	background: #B0749D;
}
.passrate h3.bg_color_blue {
	background: #378BCE;
}

.passrate section div.section_inner {
	background: #FAF8DA;
	color: #414141;
}

@media screen and (min-width: 641px) {
	
	.title {
		height: 155px;
	}
	
	.ttlStyle02 .bg {
        background: #3FA099;
		height: 155px;
    }
	
	.ttlStyle02 .ttlStyle01 {
		height: 100%;
		line-height: 2;
        color: #fff;
        background: #3FA099;
        padding-right: 44px;
    }
	
	.ttlStyle02 .ttlStyle01:after {
        border-top-color: #3FA099;
        border-left-color: #3FA099;
    }
	
	.passrate{
		width: 1000px;
		padding: 0 10px;
		margin: 0 auto 80px;
	}
	
	.passrate h2{
		font-size: 35px;
		font-weight: 400;
		line-height: 1.3;
		letter-spacing: 0.1em;
		color: #3FA099;
		margin-bottom: 10px;
	}
	
	.passrate h2 + p{
		font-size: 18px;
		font-weight: 400;
		line-height: 1.5;
		margin-bottom: 25px;
	}
	
	.passrate div.flex_block{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 45px;
	}
	
	.passrate div.flex_block section{
        width: 707px;
    }
	
	.passrate div.flex_block div.right_block{
        width: 199px;
		padding-right: 14px;
    }
	
	.passrate div.flex_block div.right_block ul{
        border-bottom: dashed 1px #b5b5b6;
    }
	
	.passrate div.flex_block div.right_block ul li{
        padding: 15px 0;
		border-top: dashed 1px #b5b5b6;
    }
	
	.passrate div.flex_block div.right_block ul li a{
        font-size: 17px;
        line-height: 1;
        vertical-align: middle;
		color: #3E3A39;
		text-decoration: none;
    }
	
	.passrate div.flex_block div.right_block ul li a::before{
        content: "";
        display: inline-block;
        width: 7px;
        height: 10px;
        background: url(../img/common/cmn_arrow02.png) no-repeat;
        -webkit-background-size: 100%;
        background-size: 100%;
        margin-right: 7px;
    }
	
	.passrate section + section {
		margin-top: 40px;
    }
	
	.passrate section div.section_inner {
		width: 100%;
    }
	
	.passrate section div.section_inner div.block{
		width: 100%;
        padding: 35px;
    }
	
	.passrate section div.section_inner h3{
		font-size: 24px;
		padding: 25px;
    }
	
	.passrate section div.section_inner h4{
		font-size: 24px;
		font-weight: 700;
		line-height: 1;
		margin-bottom: 20px;
    }
	
	.passrate section div.section_inner dl + h4,
	.passrate section div.section_inner ul + h4{
		margin-top: 30px;
    }
	
	.passrate section div.section_inner dl{
		margin: 0;
    }
	
	.passrate section div.section_inner dl + dl{
		margin-top: 5px;
    }
	
	.passrate section div.section_inner dl dt,
	.passrate section div.section_inner dl dd{
		font-size: 16px;
		font-weight: 400;
		line-height: 1.87;
    }
	
	.passrate section div.section_inner dd + dt {
		margin-top: 0.25em;
	}
	
	.passrate section div.section_inner ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
    }
	
	.passrate section div.section_inner ul li{
		display: inline-block;
		font-size: 16px;
		font-weight: 400;
		line-height: 1.87;
		margin-right: 1.25em;
    }

}

@media screen and (max-width: 640px) {
	
	.ttlStyle02 {
		margin-top: 60px;
	}
	
	.ttlStyle02 .bg {
        background: #3FA099;
    }
	
	.ttlStyle02 .ttlStyle01 {
		height: 100%;
		line-height: 1.9;
        color: #fff;
        background: #3FA099;
        padding-right: 3%;
    }
	
	.ttlStyle02 .ttlStyle01:after {
        border-top-color: #3FA099;
        border-left-color: #3FA099;
    }
	
	.passrate{
		width: 100%;
		padding: 0 3%;
		margin: 0 auto 60px;
	}
	
	.passrate h2{
		font-size: 24px;
		font-weight: 400;
		line-height: 1.3;
		letter-spacing: 0.1em;
		color: #3FA099;
		margin-bottom: 5px;
	}
	
	.passrate h2 + p{
		font-size: 16px;
		font-weight: 400;
		line-height: 1.5;
		margin-bottom: 25px;
	}
	
	.passrate div.flex_block{
		margin-bottom: 45px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	
	.passrate div.flex_block section{
        width: 100%;
    }
	
	.passrate div.flex_block div.right_block{
		width: 100%;
		margin: 0 0 40px;
    }
	
	.passrate div.flex_block div.right_block ul{
		width: 100%;
        border-bottom: dashed 1px #b5b5b6;
    }
	
	.passrate div.flex_block div.right_block ul li{
		display: block;
        padding: 15px 0;
		border-top: dashed 1px #b5b5b6;
    }
	
	.passrate div.flex_block div.right_block ul li a{
        font-size: 14px;
        line-height: 1;
        vertical-align: middle;
		color: #3E3A39;
		text-decoration: none;
    }
	
	.passrate div.flex_block div.right_block ul li a::before{
        content: "";
        display: inline-block;
        width: 7px;
        height: 10px;
        background: url(../img/common/cmn_arrow02.png) no-repeat;
        -webkit-background-size: 100%;
        background-size: 100%;
        margin-right: 7px;
    }
	
	.passrate section + section {
		margin-top: 40px;
    }
	
	.passrate section div.section_inner {
		width: 100%;
    }
	
	.passrate section div.section_inner div.block{
		width: 100%;
        padding: 25px 5%;
    }
	
	.passrate section div.section_inner h3{
		font-size: 18px;
		padding: 15px;
    }
	
	.passrate section div.section_inner h4{
		font-size: 18px;
		line-height: 1.4;
		font-weight: 700;
		margin-bottom: 10px;
    }
	
	.passrate section div.section_inner dl + h4,
	.passrate section div.section_inner ul + h4{
		margin-top: 30px;
    }
	
	.passrate section div.section_inner dl{
		margin: 0;
    }
	
	.passrate section div.section_inner dl + dl{
		margin-top: 5px;
    }
	
	.passrate section div.section_inner dl dt,
	.passrate section div.section_inner dl dd{
		font-size: 14px;
		font-weight: 400;
		line-height: 1.87;
    }
	
	.passrate section div.section_inner dd + dt {
		margin-top: 0.25em;
	}
	
	.passrate section div.section_inner ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	
	.passrate section div.section_inner ul li{
		display: inline-block;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.87;
		margin-right: 1.25em;
		text-indent: -1em;
		padding-left: 1em;
    }
	
}