@charset "utf-8";
/* CSS Document */







/*cat_title01
-----------------------------------------------------------------------*/
#cat_title01{
	font-size:225%;
	letter-spacing:0.15em;
	position:relative;
	z-index:1;
	padding-top:12.5%;
	overflow:hidden;
}

.english #cat_title01{
	letter-spacing:0.01em;
	line-height:1.2;
}


#cat_title01 span{
	position:absolute;
	display:block;
	z-index:1;
	top:39.68%;
	left:5%;
}

#cat_title01 span.cat_white,
#cat_title01 span.cat_white a{
	color:#fff;
}



#cat_title01 a{
	color:#333;
	text-decoration:none;
}

#cat_title01 img{
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}


/*cat_title02
-----------------------------------------------------------------------*/
#cat_title02{
	max-height:240px;
	overflow:hidden;
	font-size:225%;
	letter-spacing:0.15em;
	position:relative;
	font-weight:normal;
	z-index:1;
}

.english #cat_title02{
	letter-spacing:0.01em;
	line-height:1.2;
}

#cat_title02 span{
	display:block;
	z-index:1;
	padding:8.6% 5% 5%;
}

#cat_title02 span.cat_white{
	color:#fff;
}


#cat_title02 img{
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}


/*cat_column
-----------------------------------------------------------------------*/
#cat_column .page_lead{
	margin:0 2.5% 4%;
	font-size:175%;
}

#cat_column .page_lead:first-child{
	padding-top:2.5%;
}



/*main_column
-----------------------------------------------------------------------*/
#main_column .note01{
	margin:0 3.48%;
	padding:0 0 9.8% !important;
	text-align:right;
	line-height:1.4;
}


#main_column .date{
	float:right;
	margin:-2.17% 3.48% 0;
	position:relative;
}

#main_column > *:last-child{
	margin-bottom:6.53% !important;
}


/*contents_layout
-----------------------------------------------------------------------*/
#main_column .page_lead,
#main_column .page_lead_s,
#main_column .layout_cont01,
#main_column .layout_btn_a,
#main_column .layout_inq{
	margin:0 3.48% 2.8%;
}

#main_column .layout_right01,
#main_column .layout_right02,
#main_column .layout_center,
#main_column .layout_2column_a,
#main_column .layout_2column_b{
	margin:0 3.48% 4.8%;
}


#main_column .layout_left01{
	margin:0 3.48% 3.48%;
}

#main_column .imagination + .layout_right01{
	margin-top:3.5em;
}


#main_column .layout_cont02{
	margin:0 3.48% 2.8% 6.96%;
}

#main_column .layout_cont03{
	margin:0 3.48%;
}
#main_column .imagination + .layout_cont01,
#main_column .imagination + .layout_cont03{
	margin-top:3.5em;
}

#main_column .layout_3column_a{
	margin:0 2.94%;
}

#main_column .layout_3column_b{
	margin:0 0 2.8% 3.48%;
}

#main_column .layout_3column_a:last-child{
	margin-bottom:2.8%;
}

#main_column div.layout_3column_a:only-of-type{
	margin:11.5% 2.94% 18%;
}

#main_column .layout_btn_b{
	margin:0 3.48% 4.8%;
}

#main_column .layout_btn_c{
	margin:0 3.48% 4.8%;
}
#main_column .layout_inq .layout_btn_c{
	margin:0 3.48%;
}



#main_column .layout_btn_b + .layout_btn_c{
	margin:7% 3.48% 4.8%;
}


#main_column .layout_right01:before,
#main_column .layout_right02:before,
#main_column .layout_left01:before,
#main_column .layout_right01:after,
#main_column .layout_right02:after,
#main_column .layout_left01:after{
    content:"";
    display:table;
}

#main_column .layout_right01:after,
#main_column .layout_right02:after,
#main_column .layout_left01:after{
    clear:both;
}

#main_column > p:last-child{
	margin-bottom:2.8%;
}

#main_column .b_gray{
	background-color:#f0f3f6;
}

#main_column .b_green{
	background-color:#6da330;
	color:#fff;
	font-weight:bold;
	padding:1.5em 1.5em 1px;
}

#main_column .b_green:last-child{
	margin-bottom:5.22%;
}

#main_column .b_green p{
	margin:0 0 1.5em !important;
}

/*-------imagination------------------*/
#main_column .imagination{
	margin:0 3.48% 2.8%;
}

#main_column .imagination span{
	display:block;
	margin-top:0.4em;
	font-size:87.5%;
	text-align:left;
	line-height: 1.4;
}


#main_column .imagination span.pt_center{
	text-align: center;
}

#main_column .imagination span.pt_right{
	text-align: right;
}

#main_column .imagination span.pt_left{
	text-align:left;
}






#main_column .with_boder img{
	border:#ccc 1px solid;
}

#main_column .img_center{
	margin-left:auto;
	margin-right:auto;
	text-align:center;
	max-width:93%;
}

#main_column .img_right{
	text-align:right !important;
}

/*-------page_lead------------------*/
#main_column .page_lead{
	font-size:175%;
	margin-top:-2.17%;
	position:relative;
 }



#main_column .page_lead p{
	padding:0 0 0.8em;
}

#main_column .page_lead_s{
	font-size:125%;
	margin-top:-2.17%;
	position:relative;

}


/*-------p--------------------------*/
#main_column .layout_cont01 p,
#main_column .layout_cont02 p,
#main_column .layout_cont03 p,
#main_column .layout_3column_a p{
	margin:0 0 1.75em;
}

/*-------btn01--------------------------*/

#main_column .layout_cont01 .btn01{
	margin:2em 0 10px;
}

#main_column .layout_cont01 .btn01 + .btn01{
	margin-top:0;
}

#main_column .layout_cont01 .btn01 a{
	font-size:93.75%;
}

#main_column .layout_left01 .layout_cont01 .btn01 a{
	min-width:50%;
}



/*-------layout_center------------------*/

#main_column .layout_center .imagination{
	margin:0 0 2.8%;
}


#main_column .layout_center .layout_cont01{
	margin:0;
}

/*-------layout_right01------------------*/
#main_column .layout_right01 .imagination{
	float:right;
	padding:0 0 4.8% 4.8%;
	margin:0 0 2.8%;
	max-width:40.35%;
	text-align:center;
}

#main_column .layout_right01 .layout_cont01{
	margin:0;
}

#main_column .layout_right01 h2{
	margin:0 0 0.8em;
}

#main_column .layout_right01 h2:before,
#main_column .layout_right01 h2:after{
	display:none;

}


/*-------layout_right02------------------*/

#main_column .layout_right02 .imagination{
	float:right;
	padding:0;
	margin:0 0 2.8%;
	width:40.35%;
}

#main_column .layout_right02 .layout_cont01{
	margin:0;
	float:left;
	width:55.43%;
}

#main_column .layout_right02 .layout_cont01 .btn01 a {
	min-width:50%;
}

#main_column .layout_right02 h3{
	margin:0 0 0.8em;
	float:left;
	width:55.43%;

}


/*-------layout_left01------------------*/
#main_column .layout_left01 h2,
#main_column .layout_left01 h3{
	float:right;
	width:55.43%;
	margin:0 0 0.8em;
}



#main_column .layout_left01 .imagination{
	float:left;
	padding:0;
	margin:0 0 4.8%;
	width:40.35%;
}


#main_column .layout_left01 .layout_cont01{
	margin:0 0 2.4%;
	float:right;
	width:55.43%;
}

/*-------layout_2column_a------------------*/
#main_column .layout_2column_a{
	font-size:0;
}

#main_column .layout_2column_a + .layout_2column_a{
	margin-top:-2.8%;
	position:relative;
}



.p_detail #main_column .layout_2column_a{
	margin-bottom:0;
	padding-bottom:10%;

}


#main_column .layout_2column_a > *{
	font-size:1rem;
	display:inline-block;
	vertical-align:middle;
	margin-bottom:4%;
}


#main_column .layout_2column_a > .imagination:nth-child(odd){
	width:50%;
	text-align:center;
	margin:0;
}

#main_column .layout_2column_a > *:nth-child(even),
#main_column .layout_2column_a > .btn01{
	padding-left:3.74%;
	width:46.26%;
	text-align:left;
}



#main_column .layout_2column_a > *:only-child{
	padding-left:53.74%;
}

#main_column .layout_2column_a > div:only-child{
	padding-left:0;
}

#main_column .layout_2column_a .btn01{
	text-align:left;
	margin:0 0 10px;
}

#main_column .layout_2column_a .btn01 a{
	min-width:60%;
}

/*-------layout_2column_b------------------*/


#main_column .layout_2column_b{
	font-size:0;
}



#main_column .layout_2column_b:last-child{
	margin-bottom:5.22%;
}


#main_column .layout_2column_b > *{
	font-size:1rem;
	display:inline-block;
	vertical-align:middle;
	margin:0 0 4% 1.52%;
	width:49.24%;
}


#main_column .layout_2column_b > *:nth-child(odd){
	margin-left:0;
}


/*-------layout_2column_c------------------*/

#main_column .layout_2column_c{
	font-size:0;
	padding:2.8% 0 0;
}

#main_column .layout_2column_c > section{
	display:inline-block;
	font-size:1rem;
	margin:0 0 9.79% 3.48%;
	width:44.78%;
	border-top:#1a8ed0 3px solid;
	vertical-align:top;
}


#main_column .layout_2column_c h2{
	margin:0.8em 0;
	color:#1a8ed0;
	font-size:125%;
}

#main_column .layout_2column_c .imagination{
	margin:0 0 5%;
	text-align:center;
}

#main_column .layout_2column_c .btn01{
	text-align:center;
	margin:5% 0 0;
}

#main_column .layout_2column_c .btn01 a{
	min-width:60%;
}

/*-------layout_3column_a------------------*/


#main_column .layout_3column_a{
	display: table;
}

#main_column .layout_3column_a > div{
	border:#fff 5px solid;
	width:33.33%;
	display:table-cell;
	vertical-align:top;
	padding-bottom:1px;
}


#main_column .layout_3column_a > div:only-child{
	width:100%;
}

.activity #main_column .layout_3column_a > div.imagination{
	padding:0;
	margin:0;
	vertical-align:middle;
}

#main_column .layout_3column_a > div img{
	width:100%;
}


#main_column .layout_3column_a h3{
	padding:5.75%;
	margin:0;
}

#main_column .layout_3column_a > div > div{
	padding:0 5.75%;
}

#main_column .layout_3column_a > div:only-child h3{
	padding:1.92%;
}

#main_column .layout_3column_a > div:only-child > div{
	padding:0 1.92%;
}

/*-------layout_3column_b------------------*/

#main_column .layout_3column_b{
	list-style:none;
	font-size:0;
}

#main_column .layout_3column_b li{
	font-size:1rem;
	display:inline-block;
	vertical-align:top;
	width:31.11%;
	padding:0 1.58% 2.7% 0;
}

#main_column .layout_3column_b li a{
	color:#333;
	text-decoration:none;
}

#main_column .layout_3column_b li a span{
	display:block;
	padding:10px 0 0;
}

#main_column .layout_3column_b li a:hover{
	opacity:0.8;
}


/*-------layout_btn_a------------------*/

#main_column .layout_btn_a{
	font-size:0;
}

#main_column .layout_btn_a .layout_cont01{
	font-size:1rem;
	display:inline-block;
	width:75%;
	margin:0;
	padding:0;
	vertical-align:middle;
}

#main_column .layout_btn_a .btn01{
	font-size:1rem;
	display:inline-block;
	padding-left:5%;
	width:20%;
	vertical-align:middle;
}

#main_column .layout_btn_a .btn01 a{
	display:block;
	font-size:93.75%;
}

/*-------layout_btn_b------------------*/

#main_column .layout_btn_b .layout_cont01,
#main_column .layout_btn_b .layout_cont03{
	margin:0;
}

#main_column .layout_btn_b .btn01{
	margin:0 0 10px;
}

#main_column .layout_btn_b .btn01:last-child{
	margin:0 0 2.5%;

}

#main_column .layout_btn_b .btn01 a{
	padding:7px 40px 7px 20px;
	font-size:93.75%;
	min-width:13%;
}

#main_column .layout_btn_b .btn01 a.bt_wide01{
	min-width:30%;

}

#main_column .layout_btn_b .imagination{
	padding:0;
	margin:0 0 2.8%;
}


#main_column .layout_cont01 + .layout_btn_b{
	margin-top:-2.8%;
	position:relative;
}


/*-------layout_btn_c------------------*/

#main_column .layout_btn_c .btn01,
#main_column .layout_btn_c .btn02{
	text-align:center;
	margin:10px 0;
}

#main_column .layout_btn_c .btn01:last-child,
#main_column .layout_btn_c .btn02:last-child{
	margin:0 0 2.5%;
}

#main_column .layout_btn_c .btn01 a,
#main_column .layout_btn_c .btn02 > a{
	min-width:50%;
	padding-left:1em;
}

/*-------layout_btn_d------------------*/
#main_column .layout_btn_d{
	list-style:none;
	font-size:0;
	text-align:center;
	width:100%;

}

#main_column .layout_btn_d li{
	display:inline-block;
	min-width:40%;
	max-width:47%;
	font-size:1rem;
	vertical-align:top;
	padding:0;
	margin:0;
}

#main_column .layout_btn_d li:first-child{
	padding-right:6%;
}


#main_column .layout_btn_d li a{
	display:block;
}



/*-------layout_btn_e------------------*/
#main_column .layout_btn_e{
	padding:0 0 3.74%;
}

#main_column .layout_btn_e .btn01,
#main_column .layout_btn_e .btn02{
	text-align:center;
	margin:0;
}

#main_column .layout_btn_e .btn01 a,
#main_column .layout_btn_e .btn02 > a{
	min-width:35%;
}

#main_column .layout_btn_e .btn02 > a.bt_wide02{
	min-width:65%;

}

#main_column .layout_btn_e div.btn02 > a{
	font-size:0;
}

#main_column .layout_btn_e div.btn02 > a > p.btn_half{
	font-size:1.125rem;
	width:48%;
	display:inline-block;
	margin:0;
	padding:5px 1%;
	vertical-align:top;
} 




/*-------layout_inq------------------*/

#main_column .layout_inq{
	padding:3.74% 3.48% 0;
	background-color:#f0f3f6;
}


#main_column .line02 + .layout_inq{
	margin-top:5.6%;

}

#main_column .layout_inq h3,
#main_column .layout_inq h4{
	margin:0 0 3.48%;
	padding:0;
	font-size:120%;
}

#main_column .layout_inq > *:last-child{
	padding:0 0 4.02%;
}

.english #main_column .layout_inq > p:last-child{
	margin:0;
}

#main_column .layout_inq p + .layout_btn_e{
	margin-top:-0.5em;
	position:relative;
}


#main_column .layout_inq .inq_hg{
	margin-bottom:1em;
}

#main_column .layout_inq .inq_hg:before,
#main_column .layout_inq .inq_hg:after {
    content:"";
    display:table;
}

#main_column .layout_inq .inq_hg:after {
    clear:both;
}


#main_column .layout_inq .inq_hg h2{
	width:55.63%;
	float:left;
}

#main_column .layout_inq .inq_hg p.btn01{
	width:34.64%;
	float:right;
}

#main_column .layout_inq .inq_hg p.btn01 a{
	display:block;
}


#main_column .layout_inq .inq_hg + p{
	margin-bottom:1.75em;

}


/*line01
---------------------------------------------------------------*/
#main_column .line01{
	padding-bottom:1%;
	margin:0 3.48% 4.8% !important;
 	border-bottom:#f0f3f6 1px solid;
}

#main_column .line01 > *{
	margin-right:0 !important;
	margin-left:0 !important;
}

/*line02
---------------------------------------------------------------*/
#main_column .line02{
	margin:0 3.48%;
	padding:1.5% 0 0.75%;
 	border-bottom:#f0f3f6 1px solid;
	font-size:0;
}

#main_column .line02 h3{
	font-size:1rem;
	display:inline-block;
	width:25%;
	padding:0 2% 0 0;
	margin:0;
	vertical-align:top;
}

#main_column .line02 h3.li2_wide01{
	width:40%;
}

#main_column .line02 div{
	font-size:1rem;
	display:inline-block;
	width:73%;
	vertical-align:top;
}

#main_column .line02 h3.li2_wide01 + div{
	width:58%;
}

#main_column .line02 div p{
	margin:0 0 0.3em;
}

/*line03
---------------------------------------------------------------*/
#main_column .line03{
	padding-bottom:4.8%;
	margin-bottom:4.8% !important;
 	border-bottom:#f0f3f6 1px solid;
}



/*line04
---------------------------------------------------------------*/
.line04{
	padding-bottom:2%;
	margin-bottom:4% !important;
 	border-bottom:#f0f3f6 1px solid;
}


/*hg
---------------------------------------------------------------*/
#main_column .hg01{
	margin:0 3.48% 4.8%;
	position:relative;
}

.p_detail #main_column .hg01{
	margin:0 3.48%;
}

.p_detail #main_column .hg01 + .layout_2column_a,
.p_detail #main_column .hg01 + .layout_inq{
	padding-top:4.8%;

}

#main_column .hg01 + .hg01{
	margin-top:-2.8%;
}


#main_column .layout_inq + .hg01{
	margin-top:12%;
}


#main_column .hg01:after{
	content:" ";
	position:absolute;
	display:block;
	width:4px;
	height:90%;
	top:5%;
	left:0;
	background-color:#1a8ed0;
}

#main_column .hg01 h2,
#main_column .hg01 h3{
	font-weight:normal;
	font-size:175%;
	margin:0 0 0.3em 3.7%;

}

#main_column .hg01 p{
	margin:0 0 0.8em 3.7%;
}


/*table_layout01
-----------------------------------------------------------------------*/
.table_layout01{
	margin:0 3.48% 2.8%;
	width:93.2%;
	border-collapse:collapse;

}

h2 + .table_layout01{
	border-top:#f0f3f6 1px solid;
}


.table_layout01 th,
.table_layout01 td{
	border-bottom:#f0f3f6 1px solid;
}

.table_layout01 th{
	font-weight:normal;
	text-align:left;
	white-space:nowrap;
	width:25%;
	padding:10px 0;
	padding-right:15px;
}

.table_layout01 td{
	padding:10px 0 0;
}

.table_layout01 td p{
	margin:0 0 10px;
}

.table_layout01 td ol,
.table_layout01 td ul{
	margin:0 0 10px 1.5em;
}
.table_layout01 td.width_btn{
	font-size:0;
}

.table_layout01 td.width_btn:before,
.table_layout01 td.width_btn:after {
    content:"";
    display:table;
}

.table_layout01 td.width_btn:after {
    clear:both;
}


.table_layout01 td.width_btn .btn01{
 	display:inline-block;
	width:27%;
	padding-left:3%;
	font-size:1rem;
	vertical-align:middle;
	text-align:right;
}

.english .table_layout01 td.width_btn .btn01{
	width:29%;
	padding-left:1%;
	font-size:1rem;
}


.table_layout01 td.width_btn .btn01 a{
	font-size:87.5%;
	display:block;
}

.table_layout01 td.width_btn div{
	width:70%;
	font-size:1rem;
	display:inline-block;
	vertical-align:middle;
}


.table_layout01 tr.table_h01 th{
	font-size:120%;
	font-weight:bold;
	padding-bottom:0.8em;
	width:auto;
}

.table_layout01 tr.table_h01 th:first-child{
	min-width:25%;
}


.table_layout01 tr.pref_title th{
	border:none;
	font-size:120%;
	font-weight:bold;

}

#main_column .table_layout01 tr + tr.pref_title th{
	padding-top:60px;
}




/*editor
-----------------------------------------------------------------------*/
.editor:before,
.editor:after {
    content:"";
    display:table;
}

.editor:after {
    clear:both;
}

.editor ol,
.editor ul{
	margin:0 0 1.75em 1.5em;
	position:relative;
}

.layout_3column_a .editor ol,
.layout_3column_a .editor ul{
	margin-top:-1.75em;
}

.editor ol:first-child,
.editor ul:first-child{
	margin-top:0;
}

.editor p{
	margin:0 0 1.75em;
}

.editor table{
	border-collapse:collapse;
	margin:0 0 1.75em;
}

.editor table td,
.editor table th{
	padding:0.5em 1em;
	font-weight:normal;
	line-height:1.4;
}

.editor table[border] td,
.editor table[border] th{
	border:#ccc 1px solid;
	padding:1em;
}

.editor table[border="0"] td,
.editor table[border="0"] th{
	border:none;
	padding:0.5em 1em;
}

.editor a[target="_blank"]:after{
	content:" ";
	display:inline-block;
	width:17px;
	height:12px;
	background:url(../img/common/linkTargetBlank.png) no-repeat;
	background-size:17px;
	margin:0 5px;
}


.editor_for_table01 table{
	margin:0 0 2px;
}

.editor_for_table01 table td{
	text-align:center;
}



/*dpf_download
-----------------------------------------------------------------------*/
.dpf_download{
	font-size:87.5%;
	line-height:1.7;
}

.dpf_download img{
	float:left;
	width:112px;
	margin:0.35em 1em 0 0;
}

.dpf_download a:hover{
	opacity:0.8;
}