@charset "UTF-8";
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');


/*------------------------------
	全体設定
-----------------------------*/
html{
	font-size:93.333%;
}
/* 基本文字サイズ15px
1	=	0.066
2	=	0.133
3	=	0.2
4	=	0.266
5	=	0.333
6	=	0.4
7	=	0.466
8	=	0.533
9	=	0.6
10	=	0.666
11	=	0.733
12	=	0.8
13	=	0.866
14	=	0.933
15	=	1
16	=	1.066
17	=	1.133
18	=	1.2
19	=	1.266
20	=	1.333
21	=	1.4
22	=	1.466
23	=	1.533
24	=	1.6
25	=	1.666
26	=	1.733
27	=	1.8
28	=	1.866
29	=	1.933
30	=	2
31	=	2.066
32	=	2.133
33	=	2.2
34	=	2.266
35	=	2.333
36	=	2.4
37	=	2.466
38	=	2.533
39	=	2.6
40	=	2.666
41	=	2.733
*/

body{
	margin:0;
	font-family:'Noto Sans Japanese', meiryo, sans-serif;
	font-size:1em;
	font-weight:300;
	color:rgb(60,60,60);
	line-height:1.85;
	word-break:break-all;
	-webkit-text-size-adjust:100%;
}

.wrapper{
}

.clearfix::after{
	content:"";
	display:table;
	clear:both;
}

.main_area{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding-top:132px;
}

.main_area p{
	margin:.75em 0;
}

.nonsepa{
	display:inline-block;
	vertical-align:top;
}

.main_area .note{
	margin:.5em 0;
	padding-left:1.5em;
	font-size:.937em;
	text-indent:-1.5em;
}

.main_area span.note{
	display:block;
}

.main_area .red{
	color:rgb(240,80,70);
}

.main_area .blue{
	color:rgb(69,141,202);
}

.main_area a.link{
	color:rgb(69,141,202);
	-webkit-transition:opacity .2s ease-out;
	transition:opacity .2s ease-out;
}

	.main_area a.link:hover{
		opacity:.5;
	}


@media screen and (max-width:1320px){
	.main_area{
		padding-top:101px;
	}
}

@media screen and (max-width:1000px){
	.main_area{
		padding-top:63px;
	}

}

@media screen and (max-width:600px){
	html{
		font-size:87.5%;
	}
	.main_area{
		padding-top:45px;
	}
}

/*---------- button box ----------*/
.main_area .button_box{
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:.8em auto;
	text-align:center;
	max-width:1080px;
}

.main_area .button_box a{
	position:relative;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display: -webkit-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-justify-content: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0.5em 0;
	padding:0.6em 0.8em;
	width:100%;
	background:rgb(255,255,255);
	border:solid 1px rgb(21,80,183);
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.3);
	box-shadow:0 0 5px rgba(0,0,0,.3);
	font-weight:700;
	color:rgb(21,80,183);
	text-decoration:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:background,color;
	transition-property:background,color;
}

.main_area .button_box a::after{
	position:absolute;
	top:calc(50% - .44rem);
	right:5px;
	content:"";
	display:inline-block;
	width:.45rem;
	height:.88rem;
	background:url(./../img/arrow02.svg) center center no-repeat;
	background-size:100%;
	transition:.2s ease-out;
	transition-property:right,background,color;
}

	.main_area .button_box a:hover{
		background:rgb(21,80,183);
		color:rgb(255,255,255);
	}

	.main_area .button_box a:hover::after{
		background:url(./../img/arrow02_white.svg) center center no-repeat;
		right:1px;
	}

.main_area .button_box a.w3{
	width:32%;
}

.main_area .button_box a.w2{
	width:49%;
}

.main_area .button_box.m_large{
	margin-top:4rem;
}

.main_area .button_box a.disabled{
	pointer-events:none;
	cursor:default;
	background:rgb(204,204,204);
}

@media screen and (max-width:600px){
	.main_area .button_box a.w3{
		width:100%;
	}

	.main_area .button_box a.w2{
		width:100%;
	}
}


/*---------- 
サブメニュー
stickyを使用
 ----------*/
nav.sub{
	box-sizing:border-box;
	top:150px;
	background:rgba(20,70,170,.8);
	border-radius:4px;
	margin-top:-40px;
	margin-bottom:3rem;
	max-width:1260px;
	width:100%;
	z-index:40;
}

.sticky-wrap nav.sub{
	width:calc(100vw - 57px);
}

nav.sub ul{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:flex-start;
	-webkit-justify-content:flex-start;
	-ms-flex-pack:flex-start;
	justify-content:flex-start;
	flex-wrap:wrap;
	margin:0;
	padding:8px;
	z-index:60;
	text-align:center;
}

nav.sub ul li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:1px 0;
	list-style:none;
	border-left:solid 1px rgb(255,255,255);
}

nav.sub ul li:last-child{
	border-right:solid 1px rgb(255,255,255);
}

nav.sub ul li a{
	display:block;
	padding:.15em .6em;
	background:url(./../img/arrow01.svg) -13px center no-repeat;
	font-size:1rem;
	color:rgb(255,255,255);
	line-height:1.4;
	text-decoration:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:background,color;
	transition-property:background,color;
}

	/*---- hover ----*/
	nav.sub ul li a:hover,
	nav.sub ul li.current a{
		background:url(./../img/arrow01.svg) 2px center no-repeat rgb(255,255,255);
		color:rgb(21,80,183);
	}

@media screen and (max-width:1320px){
	nav.sub{
		top:110px;
	}
}

@media screen and (max-width:1000px){
	nav.sub{
		top:70px;
	}

}

@media screen and (max-width:600px){
	nav.sub{
		top:50px;
	}
	nav.sub ul{
		padding:6px 7px;
	}
	nav.sub ul li a{
		font-size:.933rem;
	}
}

/*------------------------------
	header
-----------------------------*/
.main_header{
	position:fixed;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	width:100%;
	background:rgb(255,255,255);
	border-top:solid 5px rgb(21,80,183);
	z-index:1000;
}

.main_header h1{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:0 auto;
	padding:13px 20px;
	width:100%;
	max-width:1320px;
	line-height:0;
}

.main_header h1 a{
	display:inline-block;
	transition:opacity .2s ease-out;
	vertical-align:bottom;
	-webkit-transition:opacity .2s ease-out;
	transition:opacity .2s ease-out;
}

	.main_header h1 a:hover{
		opacity:.5;
	}

.main_header h1 a img{
	vertical-align:bottom;
}

.main_header h1 a img:nth-child(1){
	margin-right:8px;
}

.main_header h1 a img:nth-child(2){
	margin-right:5px;
}

.main_header nav.main{
	background:rgb(21,80,183);
}

.main_header nav.main #sp_menu_button{
	display:none;
}

.main_header nav.main #sp_menu_button + label{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	position:absolute;
	top:10px;
	right:20px;
	display:none;
	padding:4.5px 0;
	width:34px;
	border:1px solid;
	border-color:rgba(255,255,255,0);
	color:rgb(255,255,255);
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:border-color,-webkit-box-shadow,-webkit-transform;
	transition-property:border-color,-webkit-box-shadow,-webkit-transform;
	transition-property:border-color,box-shadow,transform;
	transition-property:border-color,box-shadow,transform,-webkit-box-shadow,-webkit-transform;
	z-index:1600;
}

.main_header nav.main #sp_menu_button + label span{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:block;
	margin:0 auto;
	width:100%;
	height:4px;
	background:rgb(247,117,60);
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:width,height,margin,-webkit-box-shadow,-webkit-transform;
	transition-property:width,height,margin,-webkit-box-shadow,-webkit-transform;
	transition-property:width,height,margin,box-shadow,transform;
	transition-property:width,height,margin,box-shadow,transform,-webkit-box-shadow,-webkit-transform;
	overflow:hidden;
}

.main_header nav.main #sp_menu_button + label span:nth-child(1),
.main_header nav.main #sp_menu_button + label span:nth-child(2){
	margin-bottom:5px;
}

	/*---- cheked ----*/
	.main_header nav.main #sp_menu_button:checked + label{
		background:rgba(0,0,0,.5);
		border-radius:3px;
		-webkit-box-shadow:0 0 8px rgba(255,255,255,.45);
		box-shadow:0 0 8px rgba(255,255,255,.45);
	}

	.main_header nav.main #sp_menu_button:checked + label span:nth-child(2){
		background:rgba(0,0,0,0);
		width:24px;
		height:24px;
		border-radius:3px;
		text-shadow:0 0 8px rgba(255,255,255,.6);
	}

	.main_header nav.main #sp_menu_button:checked + label span:nth-child(2)::before{
		content:"×";
		display:block;
		font-size:24px;
		line-height:24px;
		text-align:center;
	}

	.main_header nav.main #sp_menu_button:checked + label span:nth-child(1),
	.main_header nav.main #sp_menu_button:checked + label span:nth-child(2){
		margin-bottom:0;
	}

	.main_header nav.main #sp_menu_button:checked + label span:nth-child(1),
	.main_header nav.main #sp_menu_button:checked + label span:nth-child(3){
		height:0;
	}

.main_header nav.main ul.language{
	position:fixed;
	top:24px;
	right:calc(50% - 640px);
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	margin:0;
	padding:0;
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.3);
	box-shadow:0 0 8px rgba(0,0,0,.2);
	z-index:1010;
	text-align:center;
}

.main_header nav.main ul.language li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	list-style:none;
}

.main_header nav.main ul.language li a{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:block;
	padding:.4em .8em;
	background:-5% center no-repeat rgb(247,117,67);
	border:solid 1px rgb(247,117,67);
	font-size:1.066rem;
	color:rgb(255,255,255);
	line-height:1.4;
	text-decoration:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:background,color;
	transition-property:background,color;
}

	/*---- hover ----*/
	.main_header nav.main ul.language li a:hover,
	.main_header nav.main ul.language li.current a{
		background:url(./../img/arrow01.svg) 5% center no-repeat rgb(255,255,255);
		color:rgb(20,45,65);
	}

.main_header nav.main ul.page{
	position:relative;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	margin:0;
	padding:13px 0;
	z-index:60;
	text-align:center;
}

.main_header nav.main ul.page li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	list-style:none;
	border-left:solid 1px rgb(255,255,255);
}

.main_header nav.main ul.page li:last-child{
	border-right:solid 1px rgb(255,255,255);
}

.main_header nav.main ul.page li a{
	display:block;
	padding:.1em 1.2em;
	font-size:1.066rem;
	color:rgb(255,255,255);
	line-height:1.4;
	text-decoration:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:background,color;
	transition-property:background,color;
}

	/*---- hover ----*/
	.main_header nav.main ul.page li a:hover,
	.main_header nav.main ul.page li.current a{
		background:rgb(255,255,255);
		color:rgb(20,45,65);
	}

/*
.main_header nav.main .page .close_field{
	display:none;
}
*/

@media screen and (max-width:1320px){
	.main_header h1{
		padding:9px 20px;
	}
	.main_header h1 a img:nth-child(1){
		height:40px;
		width:40px;
	}
	.main_header h1 a img:nth-child(2){
		height:40px;
		width:104.8px;
	}
	.main_header h1 a img:nth-child(3){
		height:40px;
		width:235.19px;
	}

	.main_header nav.main ul.language{
		top:17px;
		right:10px;
	}

	.main_header nav.main ul.language li a{
		padding:.4em .8em;
		font-size:.937rem;
	}

	.main_header nav.main ul.page li a{
		padding:.1em 1.2em;
		font-size:1rem;
	}

	.main_header nav.main ul.page{
		padding:8px 0;
	}
}

@media screen and (max-width:1000px){
	.main_header h1 a img:nth-child(2){
		display:none;
	}

	.main_header nav.main{
		position:absolute;
		top:0;
		right:0;
	}

	.main_header nav.main .sp_nav{
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		position:fixed;
		-webkit-box-pack:justify;
		-webkit-justify-content:space-between;
		-ms-flex-pack:justify;
		justify-content:space-between;
		display:block;
		right:-110%;
		padding:20px 10px 0;
		width:100%;
		background:rgba(0,0,0,.65);
		-webkit-transition:right .3s ease-out;
		transition:right .3s ease-out;
		z-index:1500;
	}

	.main_header nav.main ul.language,
	.main_header nav.main ul.page{
		position:static;
		top:auto;
		right:auto;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-webkit-box-pack:justify;
		-webkit-justify-content:space-between;
		-ms-flex-pack:justify;
		justify-content:space-between;
		margin:0;
		padding:0;
		-webkit-box-shadow:none;
		box-shadow:none;
		text-align:center;
	}

	.main_header nav.main ul.language::before{
		content:"Language";
		display:block;
		color:rgb(255,255,255);
		margin:0 0 10px;
		padding-bottom:6px;
		width:100%;
		border-bottom:solid 1px rgba(255,255,255,.8);
	}

	.main_header nav.main ul.page::before{
		content:"Page list";
		display:block;
		color:rgb(255,255,255);
		margin:15px 0 10px;
		padding-bottom:6px;
		width:100%;
		border-bottom:solid 1px rgba(255,255,255,.8);
	}

	.main_header nav.main ul.language li,
	.main_header nav.main ul.page li{
		margin-left:auto;
		margin-right:auto;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		border:none;
		list-style:none;
		margin-bottom:5px;
		width:48%;
	}

	.main_header nav.main ul.page li:last-child{
		border:none;
	}

	.main_header nav.main ul.language li a,
	.main_header nav.main ul.page li a{
		padding:1.3vh 0;
		width:100%;
		border-radius:4px;
	}

	.main_header nav.main ul.page li a{
		padding:1.3vh 0;
		width:100%;
		background:url(./../img/arrow01.svg) -5% center no-repeat;
	}

	/*---- hover ----*/
	.main_header nav.main ul.page li a:hover,
	.main_header nav.main ul.page li.current a{
		background:url(./../img/arrow01.svg) 5% center no-repeat rgb(255,255,255);
		color:rgb(20,45,65);
	}

	.main_header nav.main #sp_menu_button + label{
		display:block;
	}

		/*---- cheked ----*/
		.main_header nav.main #sp_menu_button:checked + label + .sp_nav{
			right:0;
		}

		/*---- cheked ----*/
		.main_header nav.main #sp_menu_button:checked + label + .sp_nav + .close_field{
			position:fixed;
			top:0;
			left:0;
			display:block;
			width:100vw;
			height:100vh;
			background:rgba(0,0,0,.3);
			z-index:50;
		}
}

@media screen and (max-width:600px){
	.main_header h1{
		padding:6px 10px;
	}

	.main_header h1 a img:nth-child(1){
		height:28px;
		width:28px;
	}
	.main_header h1 a img:nth-child(3){
		height:28px;
		width:164.63px;
	}

	.main_header nav.main #sp_menu_button + label{
		top:2px;
		right:14px;
	}
}

@media screen and (max-height:420px) and (max-width:1420px){
	.main_header nav.main ul{
		top:65px;
	}

	.main_header nav.main ul li a{
		padding:0.2em 1em;
		font-size:1rem;
	}
}


/*------------------------------
	banner
-----------------------------*/
.banner{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:80px auto 0;
	padding:0 20px;
	max-width:1140px;
}

.banner a{
	display:inline-block;
	margin:0 .2em .5em;
	-webkit-transition:opacity .2s ease-out;
	transition:opacity .2s ease-out;
}

	.banner a:hover{
		opacity:.5;
	}

.banner a img{
	vertical-align:bottom;
}

@media (max-width:800px){
	.banner{
		margin-top:50px;
		text-align:center;
	}
}


/*------------------------------
	.main_footer
-----------------------------*/
.main_footer{
	padding:20px 0 0;
	background:rgb(21,80,183);
	color:rgb(255,255,255);
}

.main_footer address{
	text-align:center;
	font-style:normal;
}

.main_footer address .name{
	margin:0;
	text-align:center;
}

.main_footer address .name img:nth-child(1){
	display:block;
	margin:0 auto;
}

.main_footer address .info{
	margin:0;
	font-size:0.933rem;
	line-height:1.6;
}

.main_footer ul.other_page{
	position:relative;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	margin:0;
	padding:25px 0 30px;
	z-index:60;
	text-align:center;
}

.main_footer ul.other_page li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	list-style:none;
	border-right:solid 1px rgb(255,255,255);
}

.main_footer ul.other_page li:last-child{
	border-right:none;
}

.main_footer ul.other_page li a{
	display:block;
	padding:0 .8em;
	font-size:0.933rem;
	color:rgb(255,255,255);
	line-height:1.2;
	text-decoration:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:background,color;
	transition-property:background,color;
}

	/*---- hover ----*/
	.main_footer ul.other_page li a:hover,
	.main_footer ul.other_page li.current a{
		background:rgb(255,255,255);
		color:rgb(20,45,65);
	}

.main_footer .copyright{
	margin:0;
	padding:.8em 1em;
	background:rgba(255,255,255,.25);
	font-size:0.933rem;
	line-height:1.4;
	text-align:center;
}

.main_footer .backtotop{
	position:fixed;
	bottom:0;
	right:30px;
	margin:0;
	width:80px;
	height:108px;
	z-index:2000;
}

.main_footer .backtotop a{
	display:block;
	transition:transform .2s ease-out;
}

.main_footer .backtotop a:hover{
	transform:scale(1.05);
}

.main_footer .backtotop a img{
	width:100%;
	vertical-align:bottom;
	opacity:.7;
}

@media (max-width:1280px){
	.main_footer .backtotop{
		right:20px;
		width:70px;
		height:94.7px;
	}
}

@media (max-width:700px){
	.main_footer address .name img:nth-child(1){
		width:70px;
		height:70px;
	}
	.main_footer address .name img:nth-child(2){
		width:320px;
		height:43px;
	}
	.main_footer .backtotop{
		right:0;
		width:50px;
		height:67.64px;
	}
}


/*------------------------------
	page_home
-----------------------------*/
#page_home{
}

#page_home .slider_outer{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	background:rgb(101,147,183);
}

#page_home .slider_outer .flexslider{
	margin:25px auto 0;
	max-width:1280px;
	width:100%;
}

#page_home .slider_outer .flexslider.sp{
	display:none;
	width:100%;
}

#page_home > .inner{
	background:url(./../img/home_bg01.jpg) center top no-repeat;
}

#page_home .upper_area{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-box-pack:justify;
	-webkit-justify-content:space-between;
	-ms-flex-pack:justify;
	justify-content:space-between;
	margin:0 auto;
	padding:80px 0 40px;
	max-width:1280px;
}

#page_home .lead_area{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding:.6em 20px 0;
	width:60%;
	max-width:690px;
}

#page_home .lead_area h2{
	margin:0 0 .5em;
	font-size:2.133rem;
	font-weight:500;
	color:rgb(21,80,183);
	line-height:1.3;
}

#page_home .lead_area p{
	margin:0;
}

#page_home .whats_new{
	width:40%;
}

#page_home .whats_new{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding:18px 25px;
	background:rgb(255,255,255);
	border:solid 1px rgb(21,80,183);
}

#page_home .whats_new h2{
	margin:0;
	padding-bottom:.2em;
	border-bottom:dotted 1px rgb(180,180,180);
	font-size:1.6rem;
	font-weight:500;
	color:rgb(21,80,183);
	line-height:1.3;
}

#page_home .whats_new ul{
	margin:0;
	padding:.6em 0;
}

#page_home .whats_new ul li{
	list-style:none;
}

#page_home .whats_new ul li a{
	padding:.3em 0;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	font-size:1rem;
	color:inherit;
	text-decoration:none;
	-webkit-transition:opacity .2s ease-out;
	transition:opacity .2s ease-out;
}

	#page_home .whats_new ul li a:hover{
		opacity:.4;
	}

#page_home .whats_new ul li .date,
#page_home .whats_new ul li .title{
	margin:0;
	line-height:1.65;
}

#page_home .whats_new ul li a .date{
	width:120px;
	font-weight:600;
}

#page_home .whats_new ul li a .date::before{
	content:"";
	display:inline-block;
	margin:0 7px 0 3px;
	width:6px;
	height:6px;
	background:rgb(247,117,60);
	border-radius:3px;
	vertical-align:10%;
}

#page_home .whats_new ul li a .title{
	width:calc(100% - 120px);
	font-weight:400;
}

#page_home .whats_new .list_button{
	margin:0;
	padding-right:55px;
}

#page_home .whats_new .list_button a{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:block;
	padding:.3em 0;
	font-size:1rem;
	color:rgb(21,80,183);
	line-height:1.3;
	text-decoration:none;
	-webkit-transition:opacity .2s ease-out;
	transition:opacity .2s ease-out;
}

#page_home .whats_new .list_button a::after{
	content:"▼";
	display:inline-block;
	margin-left:.2em;
	-webkit-transform:rotate(-90deg);
	transform:rotate(-90deg);
}

	#page_home .whats_new .list_button a:hover{
		opacity:.4;
	}

#page_home .lower_area{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:0 auto;
	padding:40px 0 60px;
	max-width:1280px;
}

#page_home .lower_area .card_menu{
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-box-pack:justify;
	-webkit-justify-content:space-between;
	-ms-flex-pack:justify;
	justify-content:space-between;
	margin:0;
	padding:0 20px;
}

#page_home .lower_area .card_menu li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	width:23.6%;
	list-style:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:opacity,-webkit-transform,-webkit-box-shadow;
	transition-property:opacity,-webkit-transform,-webkit-box-shadow;
	transition-property:opacity,transform,box-shadow;
	transition-property:opacity,transform,box-shadow,-webkit-transform,-webkit-box-shadow;
}

#page_home .lower_area .card_menu li:hover{
	-webkit-transform:scale(1.03);
	transform:scale(1.03);
	opacity:.85;
}

#page_home .lower_area .card_menu li a{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	width:100%;
	-webkit-border-image:url("./../img/deco01.svg") 0 15 0 0;
	-o-border-image:url("./../img/deco01.svg") 0 15 0 0;
	border-image:url("./../img/deco01.svg") 0 15 0 0;
	border-style:solid;
	border-width:0 15px 0 0;
	color:inherit;
	text-decoration:none;
}

#page_home .lower_area .card_menu li a > .inner{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding:18px 20px;
	width:100%;
	background:rgba(21,80,183,.85);
	color:rgb(255,255,255);
}

#page_home .lower_area .card_menu li a .name{
	margin:0 0 .3em;
	padding-bottom:.3em;
	width:100%;
	border-bottom:dotted 1px rgb(255,255,255);
	font-size:1.333rem;
	font-weight:400;
	line-height:1.3;
}

#page_home .lower_area .card_menu li a .description{
	margin:0 0 10px;
	width:100%;
	font-size:1rem;
	font-weight:400;
	line-height:1.5;
}

@media (max-width:1320px){
	#page_home .upper_area{
		padding-right:20px;
	}
}

@media (max-width:1000px){
	#page_home .slider_outer .flexslider{
		margin:0 auto 0;
		max-width:1280px;
		width:100%;
	}

	#page_home .inner{
		padding:35px 20px 0;
	}

	#page_home .upper_area{
		padding:0;
	}

	#page_home .lead_area{
		width:100%;
		max-width:none;
		padding:0 0 35px;
	}

	#page_home .whats_new{
		width:100%;
		padding:16px 20px;
	}

	#page_home .lower_area{
		padding:35px 0;
	}

	#page_home .lower_area .card_menu{
		padding:0;
	}

	#page_home .lower_area .card_menu li{
		margin-bottom:20px;
		width:48.5%;
	}
}

@media (max-width:700px){
	#page_home .lead_area h2{
		font-size:1.785rem;
	}

	#page_home .whats_new ul li a .date{
		width:100%;
		font-weight:600;
	}

	#page_home .whats_new ul li a .title{
		padding-left:16px;
		width:100%;
		font-weight:400;
	}

	#page_home .lower_area .card_menu li{
		width:100%;
	}

	#page_home .lower_area .card_menu li a > .inner{
		padding:16px 20px;
	}
}

@media (orientation:portrait) and (max-width:700px){
	#page_home .slider_outer  .flexslider.sp{
		display:block;
	}

	#page_home .slider_outer  .flexslider.pc{
		display:none;
	}
}


/*------------------------------
	共通設定
-----------------------------*/
.common_settings{
}

.common_settings section{
	margin-top:-150px;
	padding-top:150px;
}

.common_settings .content_area{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin-right:auto;
	margin-left:auto;
	padding-right:20px;
	padding-left:20px;
	padding-bottom:40px;
	max-width:1300px;
	min-height:460px;
}

.common_settings p{
	margin:.8em 0;
}

.common_settings .note{
	margin:.6em 0;
	padding-left:1em;
	font-size:.933em;
	text-indent:-1em;
}

.common_settings span.note{
	display:block;
}

.common_settings h2{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin:0 0 60px;
	background:url(./../img/h2_bg.png) center center no-repeat;
	font-size:2.867rem;
	font-weight:700;
	color:rgb(255,255,255);
	line-height:1.4;
}

.common_settings h2 > .inner{
	box-sizing:border-box;
	display: -webkit-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-justify-content: start;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
	padding:0 20px;
	min-height:220px;
	max-width:1300px;
	width:100%;
}

.common_settings h2 .pptitle{
	width:100%;
	margin-bottom:.1em;
	padding-bottom:.1em;
	border-bottom:solid 1px rgb(255,255,255);
	font-size:.8em;
}

.common_settings h3{
	position:relative;
	margin:2em 0 .3em;
	padding-bottom:.3em;
	border-bottom:solid 1px rgb(136,174,229);
	font-size:2.133rem;
	font-weight:500;
	color:rgb(21,80,183);
	line-height:1.3;
	letter-spacing:.03em;
}

/*
.common_settings h3::before{
	content:"";
	position:absolute;
	top:.5em;
	left:.1em;
	display:inline-block;
	margin-right:8px;
	width:.4em;
	height:.4em;
	border-radius:.2em;
	background:rgb(110,170,245);
	vertical-align:14%;
}
*/

.common_settings h4{
	position:relative;
	margin:1.5em 0 .4em;
	padding-left:1.1em;
	font-size:1.25rem;
	line-height:1.4;
}

.common_settings h4::before{
	box-sizing:border-box;
	content:"";
	position:absolute;
	top:.45em;
	left:.1em;
	display:inline-block;
	margin-right:8px;
	margin-left:3px;
	width:10px;
	height:10px;
	border:solid 2px rgb(247,117,60);
	border-radius:5px;
	vertical-align:14%;
}

.common_settings h5{
	position:relative;
	margin:1.5em 0 .4em;
	padding-bottom:.4em;
	border-bottom:dotted 1px rgb(200,200,200);
	font-size:1.125rem;
	color:rgb(247,117,60);
	line-height:1.4;
}

.common_settings h6{
	position:relative;
	margin:1.5em 0 .4em;
	font-size:1rem;
	color:rgb(200,80,30);
	line-height:1.4;
}

.common_settings .sub_h{
	margin:1.5em 0 .4em;
	font-size:.933rem;
	color:rgb(60,130,200);
	font-weight:500;
	line-height:1.4;
}

.common_settings h2 + section > h3:first-child,
.common_settings h2 + .content_area > section:first-child > h3:first-child,
.common_settings h2 + .content_area > nav + section > h3:first-child,
.common_settings h3 + section > h4:first-child,
.common_settings h4 + section > h5:first-child,
.common_settings h5 + section > h6:first-child{
	margin-top:.7em;
}

.common_settings .anchor_title{
	margin:60px 0 20px;
	padding-top:50px;
	border-top:dotted 1px rgb(21,80,183);
	font-size:1.866rem;
	font-weight:500;
	color:rgb(21,80,183);
	line-height:1.4;
	text-align:center;
}


.common_settings .backto{
	margin:2rem 0;
	text-align:right;
}

.common_settings .backto a img{
	-webkit-transition:-webkit-transform .2s ease-out;
	transition:-webkit-transform .2s ease-out;
	transition:transform .2s ease-out;
	transition:transform .2s ease-out, -webkit-transform .2s ease-out;
	line-height:0;
}

	.common_settings .backto a img:hover{
		-webkit-transform:translateY(-10px);
		transform:translateY(-10px);
	}

.common_settings .colorbox01{
	margin:1.5em 0;
	padding:.8em 1em;
	background:rgb(255,255,255);
	border:solid 1px rgba(0,69,121,.65);
	border-radius:4px;
}

.common_settings .colorbox01 p{
	margin:.6em 0;
	font-size:1rem;
}

.common_settings .colorbox01 > *:first-child{
	margin-top:.2em;
}

.common_settings .img_box{
	position:relative;
	margin:1.5em auto;
	/*box-shadow:0 0 4px rgba(0,0,0,.2) inset;*/
	z-index:10;
}

.common_settings .img_box.w900{
	max-width:900px;
}

.common_settings .img_box.w800{
	max-width:800px;
}

.common_settings .img_box img{
	position:relative;
	width:100%;
	vertical-align:bottom;
	/*z-index:-1;*/
}

.common_settings .img_box02{
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:.8em auto;
	text-align:center;
	max-width:1080px;
}

.common_settings .img_box02 p{
	position:relative;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display: -webkit-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-justify-content: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0.5em 0;
	padding:0.6em 0.8em;
	width:49%;
}

.common_settings .img_box02 p img{
	width:100%;
}

.common_settings .img_box02 p.w3{
	width:32%;
}

.common_settings .img_box03{
	position:relative;
	margin:0;
	padding-left:1.5em;
	max-width:400px;
	width:100%;
	background:rgb(255,255,255);
	float:right;
	z-index:10;
}

.common_settings .img_box03 img{
	width:100%;
	line-height:0;
	vertical-align:bottom;
}

.common_settings ul.type01,
.common_settings ol.type01{
	margin:1em 0;
}

.common_settings ul.type01 li,
.common_settings ol.type01 li{
	margin:.5em 0;
}

.common_settings ol.type02{
	margin:.6em 0;
	padding-left:3em;
	list-style:none;
	counter-reset:paren;
}

.common_settings ol.type02 li{
	position:relative;
	margin:.5em 0;
}

.common_settings ol.type02 li:before{
	position:absolute;
	left:-2em;
	counter-increment:paren;
	content:"("counter(paren)")";
	font-weight:500;
}

.common_settings ol.type03{
	margin:.6em 0;
	counter-reset:circle;
	list-style:none;
}

.common_settings ol.type03 li{
	margin:.5em 0;
}

.common_settings ol.type03 li:before{
	counter-increment:circle;
	content:counter(circle);
	display:inline-block;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:0 .6em 0 -2em;
	padding-top:.25em;
	width:1.4em;
	height:1.4em;
	border:solid 1px rgb(60,60,60);
	border-radius:.7em;
	font-size:.7rem;
	line-height:.7em;
	text-align:center;
	vertical-align:20%;
	letter-spacing:-0.05em;
	text-indent:-0.05em;
}

.common_settings ol.type04{
	margin:.6em 0;
	padding-left:3em;
	list-style:none;
	counter-reset:roman_numerals;
}

.common_settings ol.type04 li{
	position:relative;
	margin:.5em 0;
}

.common_settings ol.type04 li:before{
	position:absolute;
	left:-2em;
	counter-increment:roman_numerals;
	content:"("counter(roman_numerals,lower-roman)")";
	font-weight:500;
}

.common_settings table.type01{
	margin:.5em 0;
	width:100%;
	border-collapse:collapse;
	font-size:.93rem;
	line-height:1.5;
	text-align:left;
	table-layout:fixed;
}

.common_settings table.type01 th,
.common_settings table.type01 td{
	padding:.5em .8em;
	border:solid 1px rgb(180,180,180);
}

.common_settings table.type01 th{
	background:rgb(240,245,250);
	font-weight:700;
	text-align:center;
}

.common_settings table.type01 td{
	background:rgb(255,255,255);
}

.common_settings .table_note{
	margin-top:.3em;
	font-weight:700;
}

.common_settings dl.type01{
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	margin:.7em 0;
	border-top:solid 1px rgb(200,200,200);
}

.common_settings dl.type01 dt,
.common_settings dl.type01 dd{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding:.7em .5em;
	border-bottom:solid 1px rgb(200,200,200);
}

.common_settings dl.type01 dt{
	margin:0;
	width:160px;
	font-weight:700;
}

.common_settings dl.type01 dd{
	margin:0;
	width:calc(100% - 160px);
}

.common_settings dl.type01.w60 dt{
	margin:0;
	width:60px;
	font-weight:700;
}

.common_settings dl.type01.w60 dd{
	margin:0;
	width:calc(100% - 60px);
}

.common_settings dl.type01.w80 dt{
	margin:0;
	width:80px;
	font-weight:700;
}

.common_settings dl.type01.w80 dd{
	margin:0;
	width:calc(100% - 80px);
}

.common_settings dl.type01.w110 dt{
	margin:0;
	width:110px;
	font-weight:700;
}

.common_settings dl.type01.w110 dd{
	margin:0;
	width:calc(100% - 110px);
}

.common_settings dl.type01.w120 dt{
	margin:0;
	width:120px;
	font-weight:700;
}

.common_settings dl.type01.w120 dd{
	margin:0;
	width:calc(100% - 120px);
}

/*
.common_settings dl.type01 dt::before{
	content:"";
	display:inline-block;
	margin-right:8px;
	width:7px;
	height:7px;
	border-radius:3.5px;
	background:rgb(85,128,180);
	vertical-align:10%;
}
*/

.common_settings .oc_box{
	margin:2em 0;
	box-shadow:0 0 6px rgba(0,0,0,.2);
}

.common_settings .oc_box .oc_button{
	display:none;
}

.common_settings .oc_box .oc_button + label{
	position:relative;
	box-sizing:border-box;
	display:block;
	margin-top:1em;
	padding:0.5em .8em .5em 3em;
	background:rgb(255,255,255);
	border:solid 1px rgba(21,80,183,.5);
	border-radius:4px 4px 0 0;
	font-size:1.125rem;
	font-weight:700;
	color:rgb(21,80,183);
	line-height:1.5;
	transition:.2s ease-out;
	transition-property:background,color;
}

.common_settings .oc_box .oc_button + label::after{
	position:absolute;
	top:calc(50% - 9px);
	left:0;
	content:"▼";
	box-sizing:border-box;
	display:inline-block;
	margin-left:1em;
	padding:.3em .3em;
	background:rgb(247,117,67);
	border-radius:10px;
	box-shadow:0 0 6px rgba(0,0,0,.2);
	font-size:.8rem;
	color:rgb(255,255,255);
	line-height:1;
	text-align:center;
}

.common_settings .oc_box .oc_button:checked + label,
.common_settings .oc_box .oc_button + label:hover{
	background:rgb(21,80,183);
	color:rgb(255,255,255);
}

.common_settings .oc_box .oc_button:checked + label::after{
	content:"×";
}

.common_settings .oc_box > .text_area{
	box-sizing:border-box;
	height:0;
	padding:0 20px;
	font-size:.933rem;
	line-height:1.8;
	overflow:hidden;
	opacity:0;
	transition:.3s ease-out;
	transition-property:padding-top,padding-bottom,opacity;
}

.common_settings .oc_box .oc_button:checked + label + .text_area{
	height:auto;
	border-width:0 1px 1px 1px;
	border-style:solid;
	border-color:rgba(21,80,183,.5);
	border-radius:0 0 5px 5px;
	padding-top:1.3em;
	padding-bottom:1.5em;
	opacity:1;
}

.common_settings .oc_box > .text_area > section > h3:first-child{
	margin-top:0;
	font-size:2rem;
}

.common_settings .oc_box > .text_area > p{
	margin:.5em 0;
}

.common_settings .underconstruction{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:100px auto;
	padding:1em;
	width:70%;
	background:rgb(255,255,255);
	border:solid 1px rgb(85,128,180);
	border-radius:4px;
	font-size:1.5rem;
	text-align:center;
}


@media (max-width:1100px){
	.common_settings h2{
		background:url(./../img/h2_bg.png) -250px center no-repeat;
		font-size:2.533rem;
	}
	.common_settings h2 > .inner{
		min-height:180px;
	}
	.common_settings h3{
		font-size:1.733rem;
	}
	.common_settings .oc_box > .text_area > section > h3:first-child{
		font-size:1.6rem;
	}
}

@media (max-width:800px){
	.common_settings .table_scroll{
		position:relative;
		padding:24px 7px 1px;
		position:relative;
		overflow:scroll visible;
		overflow-x:scroll;
		overflow-y:visible;
		border:solid 1px rgb(150,230,255);
		-webkit-box-shadow:1px 1px 6px rgba(0,0,0,.65) inset;
		box-shadow:1px 1px 6px rgba(0,0,0,.65) inset;
		border-radius:5px;
	}
	.common_settings .table_scroll::before{
		content:"Scroll ⇒";
		position:absolute;
		top:0;
		right:-4px;
		padding:0 12px;
		background:rgb(230,160,160);
		border-radius:0 0 4px 4px;
		font-size:.9rem;
		font-weight:700;
		color:rgb(255,255,255);
		z-index:-1;
	}
	.common_settings .table_scroll table{
		width:745px;
	}
	.common_settings .table_note{
		width:745px;
	}
	.common_settings .img_box03{
		margin:0 auto;
		padding-left:0;
		float:none;
	}
}

@media (max-width:600px){
	.common_settings section{
		margin-top:-100px;
		padding-top:100px;
	}
	.common_settings h2{
		background:url(./../img/h2_bg.png) -360px center no-repeat;
		font-size:1.866rem;
	}
	.common_settings h2 > .inner{
		min-height:140px;
	}
	.common_settings table.type01{
		font-size:.875rem;
	}
	.common_settings .img_box02 p{
		width:100%;
	}
	.common_settings .img_box02 p.w3{
		width:100%;
	}
	.common_settings .oc_box > .text_area{
		padding:0 12px;
	}
	.common_settings .oc_box .oc_button:checked + label + .text_area{
		padding-top:1em;
		padding-bottom:.8em;
	}
}

/*---------------------------------------
	page_aboutcenter
---------------------------------------*/
#page_aboutcenter section#a_message{
	margin-top:-210px;
	padding-top:210px;
}

#page_aboutcenter .director_photo{
	position:relative;
	margin:-20px 0 0;
	padding-right:1.5em;
	max-width:203px;
	width:100%;
	background:rgb(255,255,255);
	float:left;
	z-index:10;
}

#page_aboutcenter .director_photo img{
	width:100%;
	line-height:0;
	vertical-align:bottom;
}

#page_aboutcenter .director_photo + h3{
	margin-top:0;
}

#page_aboutcenter .director_name{
	margin:0;
	font-size:1.333rem;
	font-weight:700;
}

#page_aboutcenter .deco01{
	position:relative;
	margin:-20px 0 0;
	padding-left:1.5em;
	max-width:311px;
	width:100%;
	background:rgb(255,255,255);
	float:right;
	z-index:10;
}

#page_aboutcenter .deco01 img{
	width:100%;
	line-height:0;
	vertical-align:bottom;
}

#page_aboutcenter .depart_member{
	font-size:1.133rem;
	font-weight:700;
}

#page_aboutcenter .profile_list{
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 auto;
	padding:0;
	list-style:none;
}

#page_aboutcenter .profile_list li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:flex;
	margin:.8em 0;
	width:32%;
}

#page_aboutcenter .profile_list li.spacer{
	margin:auto 0;
}

#page_aboutcenter .profile_list li > a{
	position:relative;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:block;
	margin:0;
	padding:1.1rem 1.2rem;
	width:100%;
	background:rgb(255,255,255);
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.2);
	box-shadow:0 0 5px rgba(0,0,0,.2);
	color:inherit;
	line-height:1.4;
	text-decoration:none;
	-webkit-transition:.2s ease-out;
	transition:.2s ease-out;
	-webkit-transition-property:opacity;
	transition-property:opacity;
}

#page_aboutcenter .profile_list li > a::before{
	position:absolute;
	bottom:1rem;
	right:1.3rem;
	content:"詳細 ▸";
	display:inline-block;
	padding:0 .3em;
	background:rgb(21,80,183);
	border-radius:5px;
	font-size:.933rem;
	color:rgb(255,255,255);
}

#page_aboutcenter .profile_list li > a::after{
	content:"";
	display:table;
	clear:both;
}

	#page_aboutcenter .profile_list li > a:hover{
		opacity:.5;
	}

#page_aboutcenter .profile_list .photo{
	margin:0;
	padding-right:1rem;
	width:100px;
	background:rgb(255,255,255);
	float:left;
}

#page_aboutcenter .profile_list .photo img{
	width:100%;
	vertical-align:bottom;
}

#page_aboutcenter .profile_list .name{
	margin:0 0 .2em;
	padding-bottom:.2em;
	border-bottom:dotted 1px rgb(180,180,180);
	font-size:1.333rem;
	font-weight:700;
	color:rgb(21,80,183);
}

#page_aboutcenter .profile_list .name small{
	vertical-align:bottom;
}

#page_aboutcenter .profile_list .affi{
	margin:0;
	font-size:1rem;
}

@media (max-width:1000px){
	#page_aboutcenter .profile_list li{
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		display:flex;
		margin:.8em 0;
		width:49%;
	}
}

@media (max-width:800px){
	#page_aboutcenter .deco01{
		max-width:200px;
	}
}

@media (max-width:600px){
	#page_aboutcenter .director_photo{
		margin:0;
		max-width:120px;
	}
	#page_aboutcenter .deco01{
		margin:0;
		padding-left:1em;
		max-width:100px;
	}
	#page_aboutcenter .profile_list .photo{
		margin:0 auto .3em;
		padding-right:0;
		float:none;
	}
	#page_aboutcenter .profile_list li > a{
		position:relative;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		display:block;
		margin:0;
		padding:.8rem 1rem;
		width:100%;
		background:rgb(255,255,255);
		-webkit-box-shadow:0 0 5px rgba(0,0,0,.2);
		box-shadow:0 0 5px rgba(0,0,0,.2);
		color:inherit;
		line-height:1.4;
		text-decoration:none;
		-webkit-transition:.2s ease-out;
		transition:.2s ease-out;
		-webkit-transition-property:opacity;
		transition-property:opacity;
	}
	#page_aboutcenter .profile_list li > a::before{
		right:0;
		bottom:0;
		padding:0 .2em 0 .3em;
		border-radius:5px 0 0 0;
	}
}

/*---------------------------------------
	page_toeictoefl
---------------------------------------*/
#page_toeictoefl .book_list{
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 auto;
	padding:0;
	list-style:none;
}

#page_toeictoefl .book_list li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:.8em 0;
	padding:1.1rem 1.2rem;
	width:49%;
	background:rgb(255,255,255);
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.2) inset;
	box-shadow:0 0 5px rgba(0,0,0,.2) inset;
	line-height:1.5;
}

#page_toeictoefl .book_list li.spacer{
	margin:auto;
}

#page_toeictoefl .book_list li::after{
	content:"";
	display:table;
	clear:both;
}

#page_toeictoefl .book_list .photo{
	margin:0;
	padding-right:1rem;
	width:100px;
	background:rgb(255,255,255);
	float:left;
}

#page_toeictoefl .book_list .photo img{
	width:100%;
	vertical-align:bottom;
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.2);
	box-shadow:0 0 5px rgba(0,0,0,.2);
}

#page_toeictoefl .book_list .rank{
	margin:0;
	font-size:1.066rem;
	font-weight:700;
}

#page_toeictoefl .book_list .title{
	margin:0 0 .2em;
	padding-bottom:.2em;
	border-bottom:dotted 1px rgb(180,180,180);
	font-size:1.333rem;
	font-weight:700;
	color:rgb(21,80,183);
	line-height:1.3;
	text-indent:-.5em;
}

#page_toeictoefl .book_list .title small{
	display:block;
	text-indent:0;
}

#page_toeictoefl .book_list .info{
	margin:0;
	font-size:1rem;
}

@media (max-width:800px){
	#page_toeictoefl .book_list li{
		width:100%;
	}

	#page_toeictoefl .book_list .photo{
		width:80px;
	}
}

/*---------------------------------------
	page_ielts
---------------------------------------*/
#page_ielts .book_list{
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 auto;
	padding:0;
	list-style:none;
}

#page_ielts .book_list li{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:.8em 0;
	padding:1.1rem 1.2rem;
	width:49%;
	background:rgb(255,255,255);
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.2) inset;
	box-shadow:0 0 5px rgba(0,0,0,.2) inset;
	line-height:1.5;
}

#page_ielts .book_list li.spacer{
	margin:auto;
}

#page_ielts .book_list li::after{
	content:"";
	display:table;
	clear:both;
}

#page_ielts .book_list .photo{
	margin:0;
	padding-right:1rem;
	width:100px;
	background:rgb(255,255,255);
	float:left;
}

#page_ielts .book_list .photo img{
	width:100%;
	vertical-align:bottom;
	-webkit-box-shadow:0 0 5px rgba(0,0,0,.2);
	box-shadow:0 0 5px rgba(0,0,0,.2);
}

#page_ielts .book_list .rank{
	margin:0;
	font-size:1.066rem;
	font-weight:700;
}

#page_ielts .book_list .title{
	margin:0 0 .2em;
	padding-bottom:.2em;
	border-bottom:dotted 1px rgb(180,180,180);
	font-size:1.333rem;
	font-weight:700;
	color:rgb(21,80,183);
	line-height:1.3;
	text-indent:-.5em;
}

#page_ielts .book_list .title small{
	display:block;
	text-indent:0;
}

#page_ielts .book_list .info{
	margin:0;
	font-size:1rem;
}

@media (max-width:800px){
	#page_ielts .book_list li{
		width:100%;
	}

	#page_ielts .book_list .photo{
		width:80px;
	}
}

/*---------------------------------------
	page_profile
---------------------------------------*/
#page_profile .content_area{
	min-height:700px;
}

#page_profile h2{
	display: block;
	margin:60px 0 .2em;
	padding-bottom:.2em;
	background:none;
	border-bottom:solid 1px rgb(180,180,180);
	font-size:2.867rem;
	font-weight:700;
	color:rgb(21,80,183);
	line-height:1.4;
}

[data-ruby] {
	position: relative;
}

[data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: -.7em;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 0.5em;
}

#page_profile .photo{
	position:relative;
	margin:20px 0 0;
	padding-right:1.5em;
	max-width:180px;
	width:100%;
	background:rgb(255,255,255);
	float:left;
	z-index:10;
}

#page_profile .photo img{
	width:100%;
	line-height:0;
	box-shadow:0 0 5px rgba(0,0,0,.2);
}

#page_profile h2 + .photo + section > h3:first-child{
	margin-top:.5em;
}



@media (max-width:1100px){
	#page_profile h2{
		background:none;
		font-size:2.533rem;
	}
}

@media (max-width:800px){
	#page_profile .photo{
		max-width:110px;
	}
	#page_profile dl.type01 dt,
	#page_profile dl.type01 dd{
		width:100%;
	}
	#page_profile dl.type01 dt{
		padding-bottom:0;
		border-bottom:none;
	}
	#page_profile dl.type01 dd{
		padding-top:0;
	}
}

@media (max-width:600px){
	#page_profile h2{
		background:none;
		font-size:1.866rem;
	}
}

/*---------------------------------------
	page_postlist
---------------------------------------*/
#page_postlist .whats_new ul{
	margin:0;
	padding:0 0 2em;
}

#page_postlist .whats_new ul li{
	border-top:solid 1px rgb(180,180,180);
	list-style:none;
}

#page_postlist .whats_new ul li:last-child{
	border-bottom:solid 1px rgb(180,180,180);
}

#page_postlist .whats_new ul li a{
	padding:1em 0;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	font-size:1rem;
	color:inherit;
	text-decoration:none;
	-webkit-transition:opacity .2s ease-out;
	transition:opacity .2s ease-out;
}

	#page_postlist .whats_new ul li a:hover{
		opacity:.4;
	}

#page_postlist .whats_new ul li .date,
#page_postlist .whats_new ul li .title{
	margin:0;
	line-height:1.65;
}

#page_postlist .whats_new ul li a .date{
	width:120px;
	font-weight:600;
}

#page_postlist .whats_new ul li a .date::before{
	content:"";
	display:inline-block;
	margin:0 7px 0 3px;
	width:6px;
	height:6px;
	background:rgb(247,117,60);
	border-radius:3px;
	vertical-align:10%;
}

#page_postlist .whats_new ul li a .title{
	width:calc(100% - 120px);
	font-weight:400;
}


@media (max-width:700px){
	#page_postlist .whats_new ul li a .date{
		width:100%;
		font-weight:600;
	}

	#page_postlist .whats_new ul li a .title{
		padding-left:16px;
		width:100%;
		font-weight:400;
	}
}

/*---------------------------------------
	page_post
---------------------------------------*/
#page_post .content_area{
	min-height:700px;
}

#page_post h2{
	display: block;
	margin:60px 0 .2em;
	padding-bottom:.2em;
	background:none;
	border-bottom:solid 1px rgb(180,180,180);
	font-size:2.4rem;
	font-weight:700;
	color:rgb(21,80,183);
	line-height:1.4;
}

#page_post .date{
	display: block;
	margin:0 0 1em;
	background:none;
	font-size:1.333rem;
	font-weight:700;
}

@media (max-width:1100px){
	#page_post h2{
		background:none;
		font-size:2.133rem;
	}
}

@media (max-width:600px){
	#page_post h2{
		background:none;
		font-size:1.866rem;
	}
}

/*---------------------------------------
 contact_form
----------------------------------------*/
form.sent p{
display:none;
}
div.wpcf7-mail-sent-ok {  background-color: #56b379;  color:#ffffff;  font-weight:bold;  font-size:120%;  padding:10px; }
/*---------------------------------------
	page_english
---------------------------------------*/
.page_english{
	word-break:normal;
}