@charset "utf-8";

/* -------------------------------------
     下層
----------------------------------------*/
.header_nav{
	max-width : 100%;
	min-width : 1180px;
	background : url(../images/home/img_bg_menu.png) scroll repeat center top;
	margin : 0 auto;
	position : relative;
}

.header_nav .sub_menu {
}
/* -------------------------------------
     case over 768px (== PC)               */
@media screen and (min-width: 768px) {

.header_nav .sub_menu {
	width : 1180px;
	margin : 0 auto;
	position : relative;
}
.header_nav .sub_menu li {
	width : calc(100% * 0.20);
	float : left;
	text-align : center;
	background : #fff;
}
.header_nav .sub_menu li a {
	display : block;
	height : 58px;
	line-height : 60px;
	background : #e7f6f8;
	color : #344d51;
	font-size : 1.6rem;
	border-bottom : #e7f6f8 2px solid;
}

.header_nav .sub_menu li a:hover,
.header_nav .sub_menu li a.current{
	border-bottom : #89d1dc 2px solid;
}


}
/*		end case 768px (PCサイズ ここまで)
----------------------------------------*/


/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {

.header_nav{
	display : none;
}

}
/*		end case 736px (スマホサイズ ここまで)
----------------------------------------*/


/* -------------------------------------
     下層共通
----------------------------------------*/

.contents_in {
	padding-top : 50px;
}

.contents_in > h2 {
	font-family : YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size : 3.6rem;
	text-align : center;
	
}
.contents_in .alpha_ruby{
	font-size : 1.8rem;
	text-align : center;
	font-family: 'Noto Serif', serif;
	color : #48a7b6;
	padding : 0.5em;
}

.contents_list {
	width : 1000px;
	margin : 0 auto;
}
.contents_list.staff {
	width : 100%;
	margin : 0 auto;
}


.contents_list h3 {
	overflow: hidden;
	text-align: center;
	font-size : 3.0rem;
	font-family : YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	width : 620px;
	margin : 120px auto 50px;
}
.contents_list h3 span {
	position: relative;
	display: inline-block;
	margin: 0 2.5em;
	padding: 0 1em;
	text-align: left;
}
.contents_list h3 span:before,
.contents_list h3 span:after {
	position: absolute;
	top: 50%;
	content: '';
	width: 400%;
	height: 1px;
	background-color: #ccc;
}
.contents_list h3 span:before {
	right: 100%;
}
.contents_list h3 span:after {
	left: 100%;
}

.contents_list article h4 {
	font-size : 2.0rem;
	position: relative;
}
.contents_list article p {
	margin : 1em 0;
	line-height : 1.6em;
}

.contents_list article dl {
	
}
.contents_list article dl dt {
	font-weight : 700;
	padding-top : 1em;
}

.contents_list article dl dt:before {
	content : "\f111";
	font-family : "FontAwesome";
	padding : 0.3em 0.3em 0.3em 0;
	font-size : 1.6rem;
	line-height : 1.6em;
}


.contents_list article dl.list {
    counter-increment: list;
}
.contents_list article dl.list dt {
 padding : 1em 0.5em 0.5em 1.5em;
 position : relative;

}
.contents_list article dl.list dt:before {
 content: counter(list) ".";
 font-weight : 700;
 font-family : "メイリオ",Meiryo,"Arimo","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","游ゴシック",YuGothic,sans-serif;
 line-height : 1.6em;
 top : 0.5em;
 left : -0.5em;
 position : absolute;
}
.contents_list article dl dd > p.reason 
{
	border : 1px solid #333;
	padding : 0.7em;
}

.contents_list article dl dd {
	padding-left : 1.2em;
}

.contents_list article dl dd > p{
	padding : 0em 0;
}

.hoken .contents_list article dl dd li p a{
	text-decoration : underline;
}

.hoken .contents_list article dl dd li p:first-child:after {
	content : "\f14c";
	font-family : "FontAwesome";
	padding : 0.3em 0.3em 0.3em 0.3em;
	color : #48a7b6;
	font-size : 1.6rem;
	line-height : 1.6em;
}

.hoken .contents_list article dl dd:first-child {
	font-size : 1.2rem;
	color : #48a7b6;
	text-indent : 0.5em;
}


.contents_list article ol {
	list-style-position:inside;
}
.contents_list article ol li{
	counter-increment: cnt;
	padding : 0.5em;
	line-height : 1.5em;
	padding-left : 2em;
	position : relative;
}
.contents_list article ol li:before{
	display: marker;
	content: "(" counter(cnt) ")";
	position : absolute;
	top : 0.50em;
	left : -0.1em;
}

.contents_list article ul,
.contents_list article ul li {
	list-style : disc outside;
	list-style-type: disc;
	list-style-position: outside;
}
.contents_list article ul li {
	padding : 0.5em 0;
	margin-left : 1.5em;
	line-height : 1.6em;
}

/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {

.contents_in {
	padding-top : 5vh;
}

.contents_in > h2 {
	font-size : 3.0rem;
}
.contents_list {
	width : 95%;
	margin : 0 auto;
}
.contents_list article {
	width : 95%;
	margin : 0 auto;
}


.contents_list h3 {
	width : 100%;
	margin : 5vh auto;
}

.contents_list h3 span {
	padding : 0 0.5em;
	text-align : center;
	font-size : 2.0rem;
}

.contents_list article h4 {
	font-size : 1.6rem;
}

}
/*		end case 736px (スマホサイズ ここまで)
----------------------------------------*/



/* -------------------------------------
     STAFF
----------------------------------------*/

.staff_list li {
	float : left;
	margin-bottom : 40px;
	width : 560px;
}
.staff_list li:nth-child(odd) {
	margin-right : 60px;
}

.staff_list li p{
	position : relative;
	padding : 1em;
	color : #fff;
	height : 80px;
	width : 560px;
	 display: table-cell; /* IE8から使用可能 */
 vertical-align: middle;
}


.staff_list.eigyo li p{
	background : #48a7b6;
}

.staff_list.jimu li p{
	background : #ada414;
}

.staff_list li p:after{
	position : absolute;
	content : "\f054";
	font-family : "FontAwesome";
	top : calc(50% - 0.5em);
	right : 0.5em;
	font-size : 2.4rem;
}

.staff_list.eigyo li a:hover p {
	background : #7cc9d4;
}
.staff_list.jimu li a:hover p {
	background : #d5cb2f;
}

.staff_list li p span.position{
	font-size : 1.4rem;
	padding-bottom : 0.4em;
	display : block;
}
.staff_list li p span.name{
	font-size : 2.4rem;
	display : inline-block;
}
.staff_list li p span.ruby{
	font-size : 1.2rem;
	display : inline-block;
}




/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {
	
	.staff_list li ,
	.staff_list li:nth-child(odd) {
		float : none;
		width : 95%;
		margin : 1em auto;
	}
	
}


.contents_list.member_detail_list h3 {
	margin-top : 50px;
}

.contents_detail {
	width : 1000px;
	margin : 70px auto 50px;
}

.contents_text {
	font-size : 1.6rem;
	line-height : 30px;
	width : 930px;
	margin : 60px auto;
}
.contents_text img {
	float : left;
	width : 400px;
	margin : 0 40px 20px 0;
}


.member_detail_list {
	width : 1000px;
	margin : 60px auto;
	text-align : center;
}

.member_detail_list li{
	float : left;
	margin : 23px;
	position : relative;
}

.member_detail_list li a{
	position : relative;
}

.member_detail_list li p{
	padding : 0.7em 0;
}

.member_detail_list img{
	width : 120px;
	border-radius : 50%;
}
.member_detail_list .position,
.member_detail_list .ruby{
	display : none;
}

.grayscale_img .BWfade {
	border-radius : 50%;
}


/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {
	
	.contents_detail {
		width : 100%;
	}
	
	.contents_text {
		width : 90%;
	}
	
	
	.contents_list.member_detail_list h3 {
		width : 90%;
	}
	
	.member_detail_list {
		width : 90%;
	}
	.member_detail_list li{
		width : 50%;
		margin : 23px 0;
	}
}


.notice {
	text-align : center;
	padding : 30px;
}



.contents_company {
	width : 920px;
}
.contents_company .comment {
	font-size : 3.0rem;
	line-height : 1.8em;
	text-align : center;
	color : #344d51;
	width : 22em;
}
.contents_company .comment:before {
	font-size : 8.6rem;
}
.contents_company .comment:after {
	font-size : 8.6rem;
}

.contents_company .shishin{
	font-family : YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size : 2.4rem;
}
.contents_company .shishin li {
	padding : 0.5em 0;
	margin-left : 1em;
	list-style-type : disc;
}

.contents_company table {
	width : 100%;
	border-collapse: collapse;
}

.contents_company table th,
.contents_company table td {
	padding : 1.0em;
	border : 1px solid #b6c0c2;
}

.contents_company table th {
	background : #e9eced;
	width : 30%;
}
.contents_company table td {
	line-height : 1.5em;
}
.contents_company .address {
	line-height : 2.0em;
	overflow : hidden;
}
.contents_company .address img {
	float : left;
	margin : 0 1.5em 0 0;
}
.contents_company .map {
	padding : 30px 0;
}


/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {
	
	.contents_company {
		width : 90%;
	}
	
	.contents_company .comment{
		width : 100%;
		font-size : 2.4rem;
	}
	.contents_company .comment:before {
		font-size : 5.6rem;
		top : -0.2em;
	}
	.contents_company .comment:after {
		font-size : 5.6rem;
	}
	.contents_company .shishin {
		font-size : 2.0rem;
	}
	
	.contents_company table th,
	.contents_company table td {
		font-size : 1.4rem;
		vertical-align : middle;
	}
	
	.contents_company .address img {
		float : none;
		display : block;
		width : 100%;
	}
	.contents_company .map iframe{
		width : 100%;
	}
}



.tel_contact {
	text-align : center;
}
.tel_contact .tel {
	font-size : 3.6rem;
	line-height : 2.4rem;
}


.tel_contact .mail {
	font-size : 3.2rem;
	line-height : 6.0rem;
	font-family : serif;
}
.tel_contact .mail:before {
	content : "\f0e0";
	font-family : FontAwesome;
	font-size : 1.8rem;
	border : 2px solid #89d1dc;
	color : #89d1dc;
	border-radius : 50%;
	padding : 7px;
	margin-right : 0.5em;
	position : relative;
	top : -3px;
}

.tel_contact .mail:hover{
	opacity : 0.7;
}

/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {

	.tel_contact .mail {
		font-size : 2.2rem;
	}
	.tel_contact .mail:before {
		font-size : 1.6rem;
	}
	
}


/**
	contact
**/



.contact_area input[type=text],
.contact_area textarea{
	padding : 10px;
	border : 1px solid #cecece;
	border-radius : 10px;
	width : 100%;
}
.contact_area textarea {
	height : 10em;
}

.contents_list article .inquiry_block dt ,
.contents_list article .inquiry_block dd {
	padding :0.8em 0 0em 0;
}
.contents_list article .inquiry_block dd {
	padding :0.2em 0;
}

.contents_list article .inquiry_block label{
	padding-left : 0.5em;
}

.contents_list article .required{
	color : #48a7b6;
	font-weight : bold;
}

.submit_box {
	text-align : center;
	padding-top : 2.0em;
}

.submit_box button[type=submit]{
	width : 30%;
	min-width : 300px;
	font-size : 2.0rem;
	height : 2.4em;
	border-radius : 6px;
	color : #fff;
	position : relative;
	padding : 10px 0;
	margin : 10px 0;
}
.submit_box button[type=submit]:hover{
	cursor : pointer;
}
.submit_box button[type=submit]:after{
	position : absolute;
	content : "\f054";
	font-family : "FontAwesome";
	top : calc(50% - 0.5em);
	right : 0.5em;
}
.submit_box button.return_btn[type=submit]:after{
	position : absolute;
	content : "\f053";
	font-family : "FontAwesome";
	top : calc(50% - 0.5em);
	right : auto;
	left : 0.5em;
}
.submit_box button.submit_btn {
	background : #2f7885;
}

.submit_box button.submit_btn:hover{
	opacity : 0.7;
}

.attention,
.err {
	color : #ff0000;
}

/* -------------------------------------
     case 767px (== SP)               */
@media screen and (max-width: 767px) {
	.attention {
		font-size : 1.2rem;
	}
}

.foreword {
	padding : 20px 0;
}