@charset "UTF-8";

html {
	overflow-y: scroll;
}
body {
	/*font-size: 0.75em;*/
	color: #333;
	-webkit-text-size-adjust: 100%;
}
input {
	margin: 0;
	color: #545558;
}
a {
	outline: none;
	color: #333;
	text-decoration: none;
}
.wrap {
	width: 100%;
}
.wrapper .inner {
	padding-right: 6.25%;
	padding-left: 6.25%;
}
.anchor_point {
	margin-bottom: 60px;
}
.sec_ttl {
	margin-bottom: 16px;
	padding-left: 8px;
	padding: 2px 0 2px 18px;
	line-height: 1.4;
	text-align: left;
	color: #756944;
	font-size: 20px;
	font-weight: bold;
	text-indent: -18px;
}
.sec_ttl .border::before {
	content: "";
	width: 8px;
	height: 1.3em;
	margin-right: 8px;
	display: inline-block;
	background-color: #dcd7be;
	vertical-align: bottom;
}
.txt {
	margin-bottom: 25px;
	text-align: left;
	line-height: 1.8;
	font-size: 16px;
}
.txt.mb0 {
	margin-bottom: 0;
}
.bg_yellow {
	background-color: #fffb88;
}
.inner * {
	box-sizing: border-box;
}
.inner img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 320px) {
	.txt, .ranking .ranking_desc ul li {
		font-size: 15px;
	}
}
/*+++++++++++++++++++++++++++++++++++++++++++++++
= トップ
+++++++++++++++++++++++++++++++++++++++++++++++*/
.top {
	padding: 22px 0 45px;
}
.top h1 {
	margin-bottom: 5px;
	font-size: 14px;
}
.top h2 {
	margin-bottom: 15px;
	line-height: 1.4;
	font-size: 26px;
}
.top .img {
	margin-bottom: 25px;
}
.top .img img {
	width: 100%;
}
.top .table_contents {
	padding: 20px 5%;
	color: #756944;
	font-size: 15px;
	background: #f4f2ea;
}
.top .table_contents h3 {
	margin-bottom: 12px;
	font-size: 17px;
	font-weight: bold;
}
.top .table_contents li {
	line-height: 1.6;
	font-size: 17px;
	margin-bottom: 10px;
}
.top .table_contents li:last-child {
	margin-bottom: 0;
}
.top .table_contents li a {
	text-decoration: underline;
	color: #756944;
}
/*+++++++++++++++++++++++++++++++++++++++++++++++
= sec01
+++++++++++++++++++++++++++++++++++++++++++++++*/
.sec01 .img {
	margin-bottom: 20px;
}
.sec01 .img.mb0 {
	margin-bottom: 0;
}
/*+++++++++++++++++++++++++++++++++++++++++++++++
= sec02
+++++++++++++++++++++++++++++++++++++++++++++++*/
.sec02 .scroll table {
	margin: 0 auto 5px;
	width: 100%;
	font-size: .875em;
}
.sec02 .scroll table th {
	background-color: #dff4ff;
	font-weight: bold;
	text-align: center;
}
.sec02 .scroll table td {
	vertical-align: top;
}
.sec02 .scroll table, .sec02 .scroll th, .sec02 .scroll td {
	padding: 5px;
	border: 1px solid #84b5cf;
	line-height: 1.5;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
}
.sec02 .scroll th.price, .sec02 .scroll td.price {
	text-align: right;
}
.sec02 .scroll table th.public, .sec02 .scroll table td.public {
	background-color: #ffecda;
}
.sec02 .scroll table th.private, .sec02 .scroll table td.private {
	background-color: #ffffe6;
}
/* tableのスクロール */
.sec02 .scroll table {
	width: 100%;
}
.sec02 .scroll table {
	width: 100%;
}
.sec02 .scroll {
	overflow: auto;
	margin: 0 0 15px;
}
.sec02 .scroll::-webkit-scrollbar {
 height: 5px;
}
.sec02 .scroll::-webkit-scrollbar-track {
 background: #f1f1f1;
}
.sec02 .scroll::-webkit-scrollbar-thumb {
 background: #bcbcbc;
}
/* 注釈 */
.sec02 .comments {
	margin-bottom: 10px;
}
.sec02 .comments th,.sec02 .comments td {
	line-height: 1.6;
	font-size: 12px;
	vertical-align: top;
}
.sec02 .comments th {
	white-space: nowrap
}
.sec02 .comments tr:first-child td {
	text-indent: -0.6em;
}
/*+++++++++++++++++++++++++++++++++++++++++++++++
= sec03
+++++++++++++++++++++++++++++++++++++++++++++++*/

.sec03 .g_id_area {
	margin-bottom: 40px;
}
.sec03 .graph_ttl {
	margin-bottom: 13vw;
	text-align: left;
	font-size: 17px;
	font-weight: bold;
}
.sec03 .graph_ttl .icon {
	width: 1em;
	display: inline-block;
}
.graph_area .graph_wrap {
	width: 70%;
	margin: 0 auto;
	position: relative;
}
.graph_area .graph_wrap canvas {
	width: 100%;
}
.graph_area .graph_wrap .graphTxt_wrap {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.graph_area .graph_wrap .graphTxt_wrap .graphTxt {
	position: absolute;
	font-size: 4.25vw;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.08em;
}
.graph_area .graph_wrap .graphTxt_wrap .graphTxt p { transform: scale(0, 0); }
.graph_area .graph_wrap .graphTxt_wrap .graphTxt::before { opacity: 0; }
.graph_area .graph_wrap.active .graphTxt_wrap .graphTxt p {
	animation: animScale 1.2s both ease-out;
}
.graph_area .graph_wrap .graphTxt_wrap .graphTxt span {
	font-size: 0.6em;
	font-weight: normal;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt01 {
	left: 79%;
	top: 46%;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt02 {
	left: 16.5%;
	top: 72%;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt02 p { animation-delay:0.15s; }
.graph_area .graph_wrap .graphTxt_wrap #id1_txt03 {
	left: 6%;
	top: 50%;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt03 p { animation-delay:0.3s; }
.graph_area .graph_wrap .graphTxt_wrap #id1_txt04 {
	left: 12%;
	top: 27%;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt04 p { animation-delay:0.45s; }

.graph_area .graph_wrap .graphTxt_wrap #id1_txt05 {
	left: -1.5%;
	top: 2%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt05::before {
	content:"";
	position: absolute;
	left: 116%;
	top: 55%;
	width: 5vw;
	height: 6vw;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.6s
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt05 p { animation-delay:0.6s; }
.graph_area .graph_wrap.active .graphTxt_wrap #id1_txt05::before {
	opacity: 1;
}

.graph_area .graph_wrap .graphTxt_wrap #id1_txt06 {
	left: 23%;
	top: 13%;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt06 p { animation-delay:0.75s; }

.graph_area .graph_wrap .graphTxt_wrap #id1_txt07 {
	left: 15%;
	top: -11.5%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt07::before {
	content:"";
	position: absolute;
	left: 116%;
	top: 55%;
	width: 6vw;
	height: 7vw;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.9s
}
.graph_area .graph_wrap.active .graphTxt_wrap #id1_txt07::before {
	opacity: 1;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt07 p { animation-delay:0.9s; }


.graph_area .graph_wrap .graphTxt_wrap #id1_txt08 {
	left: 54%;
	top: -14%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt08::before {
	content:"";
	position: absolute;
	left: -140%;
	top: 55%;
	width: 6vw;
	height: 6.5vw;
	border-top: 1px solid #333;
	border-left: 1px solid #333;
	transition-delay: 1.05s
}
.graph_area .graph_wrap.active .graphTxt_wrap #id1_txt08::before {
	opacity: 1;
}
.graph_area .graph_wrap .graphTxt_wrap #id1_txt08 p { animation-delay:1.05s; }

/*id2*/
.graph_area .graph_wrap .graphTxt_wrap #id2_txt01 {
	left: 79%;
	top: 46%;
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt02 {
	left: 6.5%;
	top: 52%;
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt02 p { animation-delay:0.15s; }
.graph_area .graph_wrap .graphTxt_wrap #id2_txt03 {
	left: 19%;
		top: 16%;
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt03 p { animation-delay:0.3s; }
.graph_area .graph_wrap .graphTxt_wrap #id2_txt04 {
	left: 10.2%;
	top: -5%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt04::before {
	content:"";
	position: absolute;
	left: 116%;
	top: 55%;
	width: 8.9vw;
	height: 3vw;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.6s
}

.graph_area .graph_wrap .graphTxt_wrap #id2_txt04 p { animation-delay:0.45s; }

.graph_area .graph_wrap .graphTxt_wrap #id2_txt05 {
	left: 23%;
	top: -10%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt05::before {
	content:"";
	position: absolute;
	left: 116%;
	top: 55%;
	width: 5vw;
	height: 6.5vw;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.6s
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt05 p { animation-delay:0.6s; }
.graph_area .graph_wrap.active .graphTxt_wrap #id2_txt04::before,
.graph_area .graph_wrap.active .graphTxt_wrap #id2_txt05::before,
.graph_area .graph_wrap.active .graphTxt_wrap #id2_txt06::before {
	opacity: 1;
}

.graph_area .graph_wrap .graphTxt_wrap #id2_txt06 {
	left: 62.2%;
	top: -10%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt06::before {
	content:"";
	position: absolute;
	left: -140%;
	top: 55%;
	width: 6vw;
	height: 6.5vw;
	border-top: 1px solid #333;
	border-left: 1px solid #333;
	transition-delay: 0.75s
}
.graph_area .graph_wrap .graphTxt_wrap #id2_txt06 p { animation-delay:0.75s; }
/*id3*/

.graph_area .graph_wrap .graphTxt_wrap #id3_txt01 {
	left: 79%;
	top: 46%;
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt02 {
	left: 20%;
	top: 74%;
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt02 p { animation-delay:0.15s; }
.graph_area .graph_wrap .graphTxt_wrap #id3_txt03 {
	left: 8.5%;
	top: 30%;
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt03 p { animation-delay:0.3s; }
.graph_area .graph_wrap .graphTxt_wrap #id3_txt04 {
	left: 3%;
	top: -2%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt04::before {
	content:"";
	position: absolute;
	left: 116%;
	top: 55%;
	width: 8.9vw;
	height: 3vw;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.6s
}

.graph_area .graph_wrap .graphTxt_wrap #id3_txt04 p { animation-delay:0.45s; }

.graph_area .graph_wrap .graphTxt_wrap #id3_txt05 {
	left: 18.8%;
	top: -10%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt05::before {
	content:"";
	position: absolute;
	left: 116%;
	top: 55%;
	width: 5vw;
	height: 6.5vw;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.6s
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt05 p { animation-delay:0.6s; }
.graph_area .graph_wrap.active .graphTxt_wrap #id3_txt04::before,
.graph_area .graph_wrap.active .graphTxt_wrap #id3_txt05::before,
.graph_area .graph_wrap.active .graphTxt_wrap #id3_txt06::before {
	opacity: 1;
}

.graph_area .graph_wrap .graphTxt_wrap #id3_txt06 {
	left: 61%;
	top: -10%;
	color: #333;
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt06::before {
	content:"";
	position: absolute;
	left: -140%;
	top: 55%;
	width: 6vw;
	height: 6.5vw;
	border-top: 1px solid #333;
	border-left: 1px solid #333;
	transition-delay: 0.75s
}
.graph_area .graph_wrap .graphTxt_wrap #id3_txt06 p { animation-delay:0.75s; }

@keyframes animScale {
0% { transform: scale(0, 0); }
10% { transform: scale(1.2, 1.2); }
30% { transform: scale(1, 1); }
40% { transform: scale(1.1 1.1); }
100% { transform: scale(1, 1); }
}

.graph_area .answer_wrap {
	width: 100%;
	margin: 18px 0 10px;
}
.graph_area .answer_wrap .answer_list {
	display: inline-block;
	margin: 0 5px 5px 0;
	list-style: none;
	text-align: left;
	font-size: .875em;
}
#g_id3 .answer_list {
	width: auto;
	margin-right: 1em;
}
.graph_area .answer_wrap .color_icon {
	display: inline-block;
	width: 12px;
	height: 12px;
}
.graph_area .answer_wrap .answer_label {
	margin-left: 3px;
}
.sec03 .small{
margin-top: 15px;
line-height: 1.6;
font-size: 12px;
display: inline-block;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++
= sec04
+++++++++++++++++++++++++++++++++++++++++++++++*/

.sec04 .sec04_top {
	margin-bottom: 30px;
}
.sec04 small {
	margin-bottom: 20px;
	font-size: .875em;
	display: inline-block;
}
.sec04 .sec04_top .img {
	margin-bottom: 20px;
}
/*ranking*/
.ranking .ranking_cont {
	margin-bottom: 35px;
}
.ranking .ranking_box {
	background-color: #fff;
}
.ranking .ranking_ttl {
	height: 35px;
	text-align: center;
	font-size: 19px;
	font-weight: bold;
	color: #fff;
	line-height: 35px;
}
.ranking .ranking_ttl.orange {
	background-color: #f99000;
}
.ranking .ranking_ttl.gray {
	background-color: #a9a9a9
}
.ranking .ranking_ttl .ico {
	width: 32px;
	margin-left: -16px;
	margin-right: 10px;
	display: inline-block;
	line-height: 25px;
}
.ranking .ranking_item {
	margin-bottom: 20px;
	padding: 4.6%;
	overflow: hidden;
}
.ranking .ranking_item .left {
	width: 23%;
	float: left;
}
.ranking .ranking_item .right {
	width: 73%;
	float: right;
}
.ranking .ranking_item .brand {
	margin-bottom: 5px;
	line-height: 1.5;
	font-size: 13px;
}
.ranking .ranking_item h3 {
	line-height: 1.5;
	font-size: 17px;
	font-weight: bold;
}
.ranking .ranking_desc {
	padding: 0 4.6% 4.6%;
	margin-bottom: 20px;
}
.ranking .ranking_desc.mb0 {
	margin-bottom: 0;
}
.ranking .ranking_desc .ranking_desc_ttl {
	margin-bottom: 10px;
	padding-bottom: 3px;
	font-size: 16px;
	font-weight: bold;
	color: #756944;
	border-bottom: 2px solid #dcd7be;
}
.ranking .ranking_desc ul li {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.8;
	font-size: 16px;
}
.ranking .ranking_desc ul li .small {
	line-height: 1.6;
	font-size: 12px;
	display: inline-block;
	text-indent: 0;
}
.ranking .ranking_desc.mb0 .small {
	margin-top: 1em;
	line-height: 1.6;
	font-size: 12px;
	display: inline-block;
}

.ranking_btn {
	width: 100%;
	margin-top: 20px;
	line-height: 45px;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	background-image: url(images/icon_btn01.png), url(images/bg_btn01.png);
	background-size: 5px, auto;
	background-repeat: no-repeat, repeat;
	background-position: 96% center, center center;
	border-radius: 5px;
	display: block;
	-webkit-box-shadow: 0 5px 0 #bb2a1f;
	box-shadow: 0 5px 0 #bb2a1f, 0px 3px 3px #8a8a8a;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++
= sec05
+++++++++++++++++++++++++++++++++++++++++++++++*/
.sec05 .consultation_btn {
	width: 100%;
	margin-top: 20px;
	line-height: 45px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	background-image: url(images/icon_btn01.png), url(images/bg_btn02.png);
	background-size: 5px, auto;
	background-repeat: no-repeat, repeat;
	background-position: 96% center, center center;
	border-radius: 5px;
	display: block;
	-webkit-box-shadow: 0 5px 0 #2e8982;
	box-shadow: 0 5px 0 #2e8982, 0px 3px 3px #8a8a8a;
}
.sec05 .ranking_btn {
padding-right: 1em;
}

@media screen and (max-width: 320px) {
	.ranking_btn {
		font-size: 13px;
		padding-right: 1em;
	}
	.sec05 .consultation_btn {
		font-size: 13px;
	}
}
/*+++++++++++++++++++++++++++++++++++++++++++++++
= 動画
+++++++++++++++++++++++++++++++++++++++++++++++*/
.movie {
	position:relative ;
	margin: 0 15px;
}
/*+++++++++++++++++++++++++++++++++++++++++++++++
= 学資保険ランキングリンク
+++++++++++++++++++++++++++++++++++++++++++++++*/
.ranking_link {
    text-align: right;
    margin: 10px 0;
}
.ranking_link a{
    color: #0078ff;
}
.ranking_link span{
    text-decoration: underline;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++
= PC最適化
+++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (min-width: 768px) {
    .contents{
         width: 800px;
         margin: 0 auto;
    }
    .sp_title{
        display: none;
    }
    .graph_area .graph_wrap {
	width: 50%;
	margin: 0 auto;
	position: relative;
    }
    .sec03 .graph_ttl {
	margin-bottom: 5vw;
	text-align: left;
	font-size: 17px;
	font-weight: bold;
    }
    .graph_area .graph_wrap .graphTxt_wrap .graphTxt {
	position: absolute;
	font-size: 33px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.08em;
    }
    .graph_area .graph_wrap .graphTxt_wrap #id1_txt05::before {
	content:"";
	position: absolute;
	left: 50px;
	top: 25px;
	width: 20px;
	height: 30px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transition-delay: 0.6s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id1_txt07::before {
        content:"";
        position: absolute;
        left: 45px;
        top: 20px;
        width: 25px;
        height: 50px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        transition-delay: 0.9s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id1_txt08::before {
        content:"";
        position: absolute;
        left: -40px;
        top: 20px;
        width: 35px;
        height: 50px;
        border-top: 1px solid #333;
        border-left: 1px solid #333;
        transition-delay: 1.05s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id2_txt04::before {
        content:"";
        position: absolute;
        left: 55px;
        top: 27px;
        width: 50px;
        height: 20px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        transition-delay: 0.6s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id2_txt05::before {
        content:"";
        position: absolute;
        left: 50px;
        top: 25px;
        width: 25px;
        height: 30px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        transition-delay: 0.6s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id2_txt06::before {
        content:"";
        position: absolute;
        left: -55px;
        top: 25px;
        width: 40px;
        height: 30px;
        border-top: 1px solid #333;
        border-left: 1px solid #333;
        transition-delay: 0.75s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id3_txt04::before {
        content:"";
        position: absolute;
        left: 50px;
        top: 20px;
        width: 45px;
        height: 20px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        transition-delay: 0.6s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id3_txt05::before {
        content:"";
        position: absolute;
        left: 55px;
        top: 30px;
        width: 40px;
        height: 40px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        transition-delay: 0.6s
    }
    .graph_area .graph_wrap .graphTxt_wrap #id3_txt06::before {
        content:"";
        position: absolute;
        left: -50px;
        top: 20px;
        width: 40px;
        height: 40px;
        border-top: 1px solid #333;
        border-left: 1px solid #333;
        transition-delay: 0.75s
    }
    .ranking {
	padding: 6.25%;
	background-image: url(images/bg_ranking01.png);
	background-repeat: repeat;
	background-size: 22.5px;
}
}
@media screen and (max-width: 768px) {
    .pc_title{
        display: none;
    }
}