/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* レスポンシブ */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*
@media only screen and (max-width: 64.063em) {
}
@media only screen and (max-width: 40.063em) {
}
*/

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* フォント */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* IE */
/*
@font-face {
font-family: フォント名;
src: url(font/フォント名.eot);
}
*/
/* Firefox, Opera, Safari */
@font-face {
	font-family: roboto-thin;
	src: url(../font/roboto.thin.ttf) format("truetype");
}

body{
	/*font-family: 'Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif; */  /* コメントアウト 2020/10/06 */
	/*font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, '游ゴシック', YuGothic, 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', tahoma, sans-serif;*/ /* コメントアウト 2021/09/28 */
	font-family: 'Helvetica', 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', 'Open Sans', Arial, 'ＭＳ Ｐゴシック', tahoma, sans-serif;
	font-weight: 500;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* モバイルとデスクトップ切り替え */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.desktop_contents{
	display: block;
}
.mobile_contents{
	display: none;
}
@media only screen and (max-width: 40.063em) {
	.desktop_contents{
		display: none;
	}
	.mobile_contents{
		display: block;
	}
}

.site-main{
	padding-top: 70px; /* site-mainとsite-header に同じ値をセットすること*/
	display: block; /* ie対策 */
}
@media only screen and (max-width: 900px) {
	.site-main{
		/*padding-top: 70px; /* site-mainとsite-header に同じ値をセットすること*/
		padding-top: 0px;
		display: block; /* ie対策 */
	}
}


	.width_1920_content{
		display: block;
	}
	.width_1280_content{
		display: none;
	}
	.width_640_content{
		display: none;
	}

/*@media only screen and (max-width: 1280px) {*/
@media only screen and (max-width: 1024px) {
	.width_1920_content{
		display: none;
	}
	.width_1280_content{
		display: block;
	}
	.width_640_content{
		display: none;
	}
}
@media only screen and (max-width: 640px) {
	.width_1920_content{
		display: none;
	}
	.width_1280_content{
		display: none;
	}
	.width_640_content{
		display: block;
	}
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*  */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*--------------------------------------------------------------*/
/* ヘッダー */
/*--------------------------------------------------------------*/
/*
.site-header{
	position: fixed;
	top: 10px;
	left: 0;
	display: block;
	height: 40px;
	width: 100%;
	background-color:rgba(255,255,255,0.0);
	z-index: 900;
}
*/
.site-header{
	position: fixed;
	top: 0px;
	left: 0;
	display: block;
	height: 70px; /* site-mainとsite-header に同じ値をセットすること*/
	width: 100%;
	background-color:rgba(255,255,255,0.0);
	z-index: 900;
}

.site-branding{
	display: block;
	position: absolute;
	top: -80px;
	height: 80px;
	text-indent: -4000px;/* 検索用にテキスト情報としてはHTMLに載せたいが、人にはアイコンだけ見せたい */
}
.site-title,.site-description{
	display: inline-block;
	height: 80px;
}
/*
.site-logo-container{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.site-logo{
	display: inline-block;
	height: 100%;
	width: 300px;
	text-align: left;
	padding-left: 10px;
}
.site-logo > a{
    width: 300px;
    height: 100%;
    display: inline-block;
    background-image: url(../images/sitetitle_full.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}
.site-logo_jp > a{
    width: 300px;
    height: 100%;
    display: inline-block;
    background-image: url(../images/sitetitle_full.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}
.site-logo_en > a{
    width: 300px;
    height: 100%;
    display: inline-block;
    background-image: url(../images/sitetitle_full_en.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}
.site-logo_ch > a{
    width: 300px;
    height: 100%;
    display: inline-block;
    background-image: url(../images/sitetitle_full_ch.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}
*/


.site-header-nav1{
	width: 100%;
	height: 70px;
	background-color: white;
	z-index: 10000;
}
.site-header-nav2{
	display: block;
	width: 100%;
	height: 50px;
	z-index: 10000;
}
.site-logo{
	/*
	display: inline-block;
	height: 100%;
	width: 300px;
	text-align: left;
	padding-left: 10px;
	*/
	position: absolute;
	left: 10px;
	top: 5px;
	max-height: 60px;
	max-width: 300px;
	z-index: 999;
}



@media only screen and (max-width: 1241px) {
	.site-logo{
		position: absolute;
		left: 10px;
		top: 5px;
		z-index: 999;
		max-width: 250px;
	}
}

@media only screen and (max-width: 640px) {
	.site-logo{
		max-width: 270px;
	}
}

.site-logo > a{
    width: 300px;
    height: 100%;
}


.contact_area{
	position: absolute;
	top: 10px;
	right: 200px;
	width: 400px;

	height: 50px;
	background-color: #FFFFFF;

	/*
	display: flex;
	justify-content: space-evenly;
	*/
}
.contact_area_button{
	display: inline-block;
	position: relative;
	width: 45%;
	text-align: center;
	border-radius: 5px;
	padding: 10px;
	font-weight: bold;
	z-index: 999;
}

.contact_area_button:hover{
	opacity: 0.7;
	cursor: pointer;
}

.contact_area_recruit{
	position: absolute;
	top: 10px;
	right: 30px;
	width: 400px;

	height: 50px;
	background-color: #FFFFFF;

	/*
	display: flex;
	justify-content: space-evenly;
	*/
}

.language_area{
	position: absolute;
	top: 16px;
	right: 0px;
	width: 160px;

	padding-right: 10px;
	height: 50px;
	background-color: #FFFFFF;
}


.language_button{
	display: inline-block;
	position: relative;
	width: 45%;
	height: 30px;
	border-radius: 5px;
	/*
	margin: 5px 10px;
	padding: 3px 5px;
	*/
	background-color: #212121;
	text-align: center;
}
.language_button a{
	width: 100%;
	height: 100%;
}

.language_button_inner{
	position: absolute;
	top: 50%; /*親要素を起点に上から50%*/
	left: 50%;  /*親要素を起点に左から50%*/
	transform: translateY(-50%) translateX(-50%); /*要素の大きさの半分ずつを戻す*/
	-webkit-transform: translateY(-50%) translateX(-50%);

	width: 100%;
	font-weight: bold;
	color: #FFFFFF;
}

.language_button_responsive{
	display: inline-block;
	position: relative;
	width: 45%;
	height: 40px;
	/*
	margin: 5px 10px;
	padding: 3px 5px;
	*/
	background-color: #212121;
	text-align: center;
}
.language_button_responsive a{
	width: 100%;
	height: 100%;
}

.language_button_inner_responsive{
	position: absolute;
	top: 50%; /*親要素を起点に上から50%*/
	left: 50%;  /*親要素を起点に左から50%*/
	transform: translateY(-50%) translateX(-50%); /*要素の大きさの半分ずつを戻す*/
	-webkit-transform: translateY(-50%) translateX(-50%);

	width: 100%;
	font-weight: bold;
	color: #FFFFFF;
}

.main-navigation{
	position: absolute;
	top: 16px;
	display: block;
	font-weight: bold;
	font-size: 1.2rem;
}

.main-navigation ul{
	display: flex;
    justify-content: center;
}
.main-navigation ul ul{
	display: initial;
    justify-content: initial;
}

.main-navigation li{
	border-bottom: solid 3px white;
    box-sizing: border-box;
}
.main-navigation li:hover{
	/*text-decoration: underline;*/
	border-bottom: solid 3px #0082FE;
}

.menu a{
	padding: 0.9em 1.2em 0.5em;
}

.menu li li a{
	padding: 0.9em 0.9em 0.5em;
}


@media only screen and (max-width: 1601px) {

	.main-navigation{
		font-size: 0.9rem;
		position: absolute;
		top: 16px;
		right: 5%;
		display: block;
		font-weight: bold;
	}
	.menu a{
		font-size: 0.9rem;

	}

}
@media only screen and (max-width: 768px) {

	.main-navigation{
		font-size: 0.9rem;
	}
	.menu a{
		padding: 0.7em 0.7em 0.7em;
	}

}

.sub-menu li{
	background-color: white;
}

.menu_container{
	height: 100%;
	padding: 0 0px;
}
.menu_contents{
	height: 100%;
	/*line-height: 80px;*/
	background-color: #ffffff;
	border-radius: 0px;
	box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
	/*box-shadow: 0px 5px 10px rgba(0,0,0,0.3);*/
}


#responsive-menu-button{
	display: none !important;
}
@media only screen and (max-width: 900px) {
	#responsive-menu-button{
		position: fixed;
		/*
		top: 10px !important;
		right: 15px !important;
		*/
		top: 15px !important;
		right: 15px !important;

		display: inline-block !important;
		height: 40px !important;
		width: 40px !important;

		background-color: transparent !important;
	}
}
@media only screen and (max-width: 40.063em) {
	#site-navigation{
		display: none;
	}
}

/* リンクボタン */
.link_button_1 {
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	width: 70%;
	max-width: 600px;
	padding: 15px 15px;

	background-color: #3949AB;
	color: white;
	border: 5px solid #3949AB;
	border-radius: 5px;

	cursor: pointer;
}
.link_button_1:hover{
	transition: 0.2s;
	color: #3949AB;
	background-color: white;
	border: 5px solid #3949AB;
}
.link_button_2 {
	font-size: 1.2rem;
	text-align: center;
	display: inline-block;
	width: 70%;
	max-width: 600px;
	padding: 15px 15px;

	background-color: #3949AB;
	color: white;
	border: 3px solid #3949AB;
	border-radius: 5px;

	cursor: pointer;
}
.link_button_2:hover{
	transition: 0.2s;
	color: #3949AB;
	background-color: white;
	border: 3px solid #3949AB;
}

@media only screen and (max-width: 640px) {
	.link_button_1{
		font-size: 1.2rem;
		max-width: 500px;
		width: initial;
		padding: 10px 15px;
	}
	.link_button_1{
		font-size: 1.0rem;
		max-width: 500px;
		width: initial;
		padding: 10px 10px;
	}
	.link_button_2{
		width: 80%;
		padding: 10px 5px;
	}
}


/*--------------------------------------------------------------*/
/* コンテンツ */
/*--------------------------------------------------------------*/
.site-content{
	background-color: #ffffff;
}
.max_width{
	max-width: 1198px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
}
.max_width_1280{
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}
.max_width_1000{
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}
.max_width_800{
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}
.max_width_400{
	max-width: 400px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}

@media only screen and (max-width: 40.063em) {
	.max_width{
		padding-right: 10px;
		padding-left: 10px;
	}
}

/*--------------------------------------------------------------*/
/* サイトマップ */
/*--------------------------------------------------------------*/
.site-map{
	position: relative;
	background-color: rgb(46,54,66);
	color: #ffffff;
	padding:50px 5px 50px 5px;
	z-index: 100;
}
.site-map_content_box > div{padding:5px 0;}

.site-map a{color:#ffffff; display: inline-block; line-height:30px; padding-left:10px;}
@media only screen and (max-width: 40.063em) {
	.site-map a{color:#ffffff; display: inline-block; line-height:20px; padding-left:10px;}
}
.site-map a:focus{color:#ffffff;}
.site-map a:active{color:#ffffff;}
.site-map a:visited{color:#ffffff;}
.site-map a:hover {color:#ffffff;background-color: rgba(255,255,255,0.2);}

.site-map img:hover {opacity: 0.7;}

.rotate90{display:inline-block;transform: rotate(90deg); margin-right: 3px;}

/*--------------------------------------------------------------*/
/* フッター */
/*--------------------------------------------------------------*/
.site-footer{
	position: relative;
	background-color: rgb(40,47,58);
	color: #ffffff;
	padding:30px 5px 30px 5px;
	z-index: 100;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* common page */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.entry-title{
	font-size: 1.5rem;
}
.page_contents{
	padding: 70px 10px 10px 10px;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* 共通 */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.page_title_outer{
	margin-top: 10px;
	margin-bottom: 10px;
}
.page_title{
	display: inline-block;
	border-left: solid 5px #7db4e6;  /*左線*/
	border-left: solid 5px #00A42C;  /*左線*/
	/*background: linear-gradient(transparent 90%, #a7d6ff 0%);*/
	color: #1e90ff;
	color: #00A42C;
	font-weight: bold;
	font-size: 2.0em;
	padding-left: 5px;
	font-family: 'Noto Sans JP', sans-serif;
}
.page_subtitle{
	display: inline-block;
	color: #1e90ff;
	color: #00A42C;
	font-weight: bold;
	font-size: 1.2em;
	padding-left: 2%;
	font-family: "roboto-thin";

}

.page_content_subtitle{
	font-size: 1.6em;
	margin-top: 30px;
	display: inline-block;
	/*color: #00A42C;*/
	color: #00A42C;
	border-left: solid 5px #888888;
	border-bottom: double 1px #888888;
	padding: 5px 10px;
	/*min-width: 300px;*/
	min-width: 95%;
}

.top_image_content{
	width: 100%;
}


.top_image_container{
	width: 100%;
	text-align: center;
	position: relative;
}
.top_image_container_h600{
	position: relative;
	display: inline-block;
	height: 600px;
	width: auto;
	position: relative;
	overflow: hidden;
	padding: 1px;
}
.top_image_container_h400{
	position: relative;
	display: inline-block;
	height: 400px;
	width: 100%;
	position: relative;
	overflow: hidden;
	padding: 1px;
}

.link_button_large{
	background-color: white;
	color: #3949AB;
	border:2px #3949AB solid;
	text-align: center;
	min-height: 200px;

	position: relative;
	width: 100%;
	height: 200px;
}

.link_button_large:hover{
	background-color: #3949AB;
	color: white;
	transition: 0.3s;
}

.link_button_large_inner{
	position: absolute;
	top: 50%; /*親要素を起点に上から50%*/
	left: 50%;  /*親要素を起点に左から50%*/
	transform: translateY(-50%) translateX(-50%); /*要素の大きさの半分ずつを戻す*/
	-webkit-transform: translateY(-50%) translateX(-50%);

	width: 100%;
}

@media only screen and (max-width: 40.063em) {

	.link_button_large{
		min-height: 120px;
		height: 120px;
	}
	.link_button_large_inner{
		font-size: 0.8em;
	}
}




table span.wpcf7-list-item {
	display: block;
}
.wpcf7-list-item label{
	line-height: initial;
}




/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* common */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.t_c{text-align: center;} .t_r{text-align: right;} .t_l{text-align: left;}

.c_w{color:#ffffff;}
.c_b{color:#000000;}
.c_1{color:rgb(79,192,109);}
.c_2{color:rgb(204,0,0);}
.c_3{color: rgb(0,94,184);}
.c_4{color: #1e90ff;}
.c_5{color: #2D8C3C;}
.c_6{color: #B5FFFF;}
.c_7{color: #00A42C;}
.c_8{color: #0665a5;}
.c_9{color: #92D050;}

.bg_lightgray{background-color: #eee;}
/*.bg_gray{background-color: rgb(240,240,238);}*/
/*.bg_gray{background-color: rgb(240,236,236)}*/
/*.bg_gray{background-color: rgb(245,240,240)}*/
.bg_gray{background-color: rgb(238,238,238)}
.bg_white{background-color: rgb(255,255,255);}
.bg_black{background-color: #000000;}

.bg_5{background-color: #2D8C3C;}
.bg_6{background-color: #0082FE;}
.bg_7{background-color: #00A42C;}

.bold{font-weight: bold;}

.nowrap{white-space: nowrap;}

h1,h2,h3,h4,h5,h6{font-size: 1.0rem;}

.fs_06{font-size: 0.6rem;}
.fs_07{font-size: 0.7rem;}
.fs_08{font-size: 0.8rem;}
.fs_09{font-size: 0.9rem;}
.fs_10{font-size: 1.0rem;}
.fs_12{font-size: 1.2rem;}
.fs_15{font-size: 1.5rem;}
.fs_18{font-size: 1.8rem;}
.fs_20{font-size: 2.0rem;}
.fs_22{font-size: 2.2rem;}
.fs_25{font-size: 2.5rem;}
.fs_30{font-size: 3.0rem;}
.fs_35{font-size: 3.5rem;}
.fs_40{font-size: 4.0rem;}
.fs_45{font-size: 4.5rem;}
.fs_50{font-size: 5.0rem;}
.fs_55{font-size: 5.5rem;}
.fs_60{font-size: 6.0rem;}
.fs_65{font-size: 6.5rem;}
.fs_70{font-size: 7.0rem;}
.fs_75{font-size: 7.5rem;}
.fs_80{font-size: 8.0rem;}

@media only screen and (max-width: 1024px) {

	.fs_08{font-size: 0.6rem;}
	.fs_09{font-size: 0.7rem;}
	.fs_10{font-size: 0.9rem;}
	.fs_12{font-size: 1.0rem;}
	.fs_15{font-size: 1.2rem;}
	.fs_18{font-size: 1.5rem;}
	.fs_20{font-size: 1.5rem;}
	.fs_22{font-size: 1.8rem;}
	.fs_25{font-size: 2.0rem;}
	.fs_30{font-size: 2.5rem;}
	.fs_35{font-size: 2.8rem;}
	.fs_40{font-size: 3.0rem;}
	.fs_45{font-size: 3.2rem;}
	.fs_50{font-size: 3.5rem;}
	.fs_55{font-size: 3.5rem;}
	.fs_60{font-size: 3.7rem;}
	.fs_65{font-size: 4.0rem;}
	.fs_70{font-size: 4.0rem;}
	.fs_75{font-size: 4.0rem;}
	.fs_80{font-size: 4.0rem;}
}

@media only screen and (max-width: 640px) {

	.fs_08{font-size: 0.6rem;}
	.fs_09{font-size: 0.7rem;}
	.fs_10{font-size: 0.8rem;}
	.fs_12{font-size: 1.0rem;}
	.fs_15{font-size: 1.0rem;}
	.fs_18{font-size: 1.2rem;}
	.fs_20{font-size: 1.2rem;}
	.fs_22{font-size: 1.5rem;}
	.fs_25{font-size: 1.5rem;}
	.fs_30{font-size: 1.8rem;}
	.fs_35{font-size: 2.0rem;}
	.fs_40{font-size: 2.5rem;}
	.fs_45{font-size: 2.8rem;}
	.fs_50{font-size: 3.0rem;}
	.fs_55{font-size: 3.0rem;}
	.fs_60{font-size: 3.7rem;}
	.fs_65{font-size: 4.0rem;}
	.fs_70{font-size: 4.0rem;}
	.fs_75{font-size: 4.0rem;}
	.fs_80{font-size: 4.0rem;}
}

.fs_06em{font-size: 0.6em;}
.fs_07em{font-size: 0.7em;}
.fs_08em{font-size: 0.8em;}
.fs_12em{font-size: 1.2em;}
.fs_15em{font-size: 1.5em;}
.fs_18em{font-size: 1.8em;}
.fs_20em{font-size: 2.0em;}
.fs_22em{font-size: 2.2em;}
.fs_25em{font-size: 2.5em;}
.fs_30em{font-size: 3.0em;}
.fs_35em{font-size: 3.5em;}
.fs_40em{font-size: 4.0em;}
.fs_45em{font-size: 4.5em;}
.fs_50em{font-size: 5.0em;}
.fs_55em{font-size: 5.5em;}
.fs_60em{font-size: 6.0em;}
.fs_65em{font-size: 6.5em;}
.fs_70em{font-size: 7.0em;}
.fs_75em{font-size: 7.5em;}
.fs_80em{font-size: 8.0em;}

.fw_50{font-weight: 50;}
.fw_100{font-weight: 100;}
.fw_200{font-weight: 200;}
.fw_300{font-weight: 300;}
.fw_400{font-weight: 400;}
.fw_500{font-weight: 500;}
.fw_600{font-weight: 600;}
.fw_700{font-weight: 700;}


.fs_12_auto{font-size: 1.2rem; font-size: calc(1.2rem + ((1vw - 0.64rem) * 1.5));}
.fs_15_auto{font-size: 1.5rem; font-size: calc(1.5rem + ((1vw - 0.64rem) * 1.5));}
.fs_20_auto{font-size: 2.0rem; font-size: calc(2.0rem + ((1vw - 0.64rem) * 1.5));}

.mt_5 {margin-top: 5px;}   .mb_5 {margin-bottom: 5px;}
.mt_10{margin-top: 10px;}  .mb_10{margin-bottom: 10px;}
.mt_20{margin-top: 20px;}  .mb_20{margin-bottom: 20px;}
.mt_30{margin-top: 30px;}  .mb_30{margin-bottom: 30px;}
.mt_40{margin-top: 40px;}  .mb_40{margin-bottom: 40px;}
.mt_50{margin-top: 50px;}  .mb_50{margin-bottom: 50px;}
.mt_60{margin-top: 60px;}  .mb_60{margin-bottom: 60px;}
.mt_70{margin-top: 70px;}  .mb_70{margin-bottom: 70px;}
.mt_80{margin-top: 80px;}  .mb_80{margin-bottom: 80px;}
.mt_90{margin-top: 90px;}  .mb_90{margin-bottom: 90px;}
.mt_100{margin-top: 100px;}.mb_100{margin-bottom: 100px;}
.mt_150{margin-top: 150px;}.mb_150{margin-bottom: 150px;}
.mt_200{margin-top: 200px;}.mb_200{margin-bottom: 200px;}
.mt_300{margin-top: 300px;}.mb_300{margin-bottom: 300px;}
.mr_5{margin-right:5px;}  .ml_5{margin-left:5px;}
.mr_10{margin-right:10px;}.ml_10{margin-left:10px;}
.mr_20{margin-right:20px;}.ml_20{margin-left:20px;}
.mr_30{margin-right:30px;}.ml_30{margin-left:30px;}

.mt_100_rsp{margin-top: 100px;}
.mt_150_rsp{margin-top: 150px;}
@media only screen and (max-width: 40.063em) {
	.mt_100_rsp{margin-top: 70px;}
	.mt_150_rsp{margin-top: 100px;}
}


.p_5{padding: 5px;} .p_10{padding: 10px;} .p_20{padding: 20px;} .p_30{padding: 30px;} .p_40{padding: 40px;} .p_50{padding: 50px;}
.pr_10{padding-right: 10px;} .pl_10{padding-left: 10px;}
.pr_20{padding-right: 20px;} .pl_20{padding-left: 20px;}
.pr_30{padding-right: 30px;} .pl_30{padding-left: 30px;}
.pr_40{padding-right: 40px;} .pl_40{padding-left: 40px;}
.pr_50{padding-right: 50px;} .pl_50{padding-left: 50px;}
.pr_100{padding-right: 100px;} .pl_100{padding-left: 100px;}
.pr_150{padding-right: 150px;} .pl_150{padding-left: 150px;}
.pr_200{padding-right: 200px;} .pl_200{padding-left: 200px;}
.pr_300{padding-right: 300px;} .pl_300{padding-left: 300px;}
.pt_0{padding-top: 0px;}
.pt_5{padding-top: 5px;} 		.pb_5 {padding-bottom: 5px;}
.pt_10{padding-top: 10px;} 		.pb_10{padding-bottom: 10px;}
.pt_20{padding-top: 20px;} 		.pb_20{padding-bottom: 20px;}
.pt_30{padding-top: 30px;} 		.pb_30{padding-bottom: 30px;}
.pt_40{padding-top: 40px;} 		.pb_40{padding-bottom: 40px;}
.pt_50{padding-top: 50px;} 		.pb_50{padding-bottom: 50px;}
.pt_70{padding-top: 70px;} 		.pb_70{padding-bottom: 70px;}
.pt_100{padding-top: 100px;}	.pb_100{padding-bottom: 100px;}
.pt_150{padding-top: 150px;}	.pb_150{padding-bottom: 150px;}

.lh_20{line-height: 2.0em;}

.relative{ position: relative; } .absolute{ position: absolute; }

.none{display: none;}

.table_fixed{
	table-layout: fixed;
}



.lheight_100{line-height: 100px;}
.lheight_150{line-height: 150px;}
.lheight_200{line-height: 200px;}
.lheight_300{line-height: 300px;}
.lheight_400{line-height: 400px;}
.lheight_500{line-height: 500px;}
.lheight_600{line-height: 600px;}
.lheight_800{line-height: 800px;}

.height_100{height: 100px;}
.height_150{height: 150px;}
.height_200{height: 200px;}
.height_300{height: 300px;}
.height_400{height: 400px;}
.height_500{height: 500px;}
.height_600{height: 600px;}
.height_800{height: 800px;}


.width_50 {width:  50px;}
.width_100{width: 100px;}
.width_150{width: 150px;}
.width_200{width: 200px;}
.width_300{width: 300px;}
.width_400{width: 400px;}
.width_500{width: 500px;}
.width_600{width: 600px;}
.width_800{width: 800px;}

.box_shadow{
	transition: 0.3s;
	/*border:1px solid #cccccc;*/
	box-shadow: 0 2px 5px rgba(0,0,0,.2);
}
.box_shadow:hover{
	transition: 0.3s;
	box-shadow: 0 3px 5px rgba(0,0,0,.4);
}

.keiko_yellow{
	background: linear-gradient(transparent 50%, rgba(255, 252, 107, 0.69) 50%);
}



.width_768_10_per{width: 10%;}
.width_768_15_per{width: 15%;}
.width_768_20_per{width: 20%;}
.width_768_25_per{width: 25%;}
.width_768_30_per{width: 30%;}
.width_768_35_per{width: 35%;}
.width_768_40_per{width: 40%;}
.width_768_45_per{width: 45%;}
.width_768_50_per{width: 50%;}
.width_768_55_per{width: 55%;}
.width_768_60_per{width: 60%;}
.width_768_65_per{width: 65%;}
.width_768_70_per{width: 70%;}
.width_768_75_per{width: 75%;}
.width_768_80_per{width: 80%;}
.width_768_85_per{width: 85%;}
.width_768_90_per{width: 90%;}
.width_768_95_per{width: 95%;}

@media only screen and (max-width: 768px) {
	.width_768_10_per{width: 100%;}
	.width_768_15_per{width: 100%;}
	.width_768_20_per{width: 100%;}
	.width_768_25_per{width: 100%;}
	.width_768_30_per{width: 100%;}
	.width_768_35_per{width: 100%;}
	.width_768_40_per{width: 100%;}
	.width_768_45_per{width: 100%;}
	.width_768_50_per{width: 100%;}
	.width_768_55_per{width: 100%;}
	.width_768_60_per{width: 100%;}
	.width_768_65_per{width: 100%;}
	.width_768_70_per{width: 100%;}
	.width_768_75_per{width: 100%;}
	.width_768_80_per{width: 100%;}
	.width_768_85_per{width: 100%;}
	.width_768_90_per{width: 100%;}
	.width_768_95_per{width: 100%;}
}


.width_640_10_per{width: 10%;}
.width_640_15_per{width: 15%;}
.width_640_20_per{width: 20%;}
.width_640_25_per{width: 25%;}
.width_640_30_per{width: 30%;}
.width_640_35_per{width: 35%;}
.width_640_40_per{width: 40%;}
.width_640_45_per{width: 45%;}
.width_640_50_per{width: 50%;}
.width_640_55_per{width: 55%;}
.width_640_60_per{width: 60%;}
.width_640_65_per{width: 65%;}
.width_640_70_per{width: 70%;}
.width_640_75_per{width: 75%;}
.width_640_80_per{width: 80%;}
.width_640_85_per{width: 85%;}
.width_640_90_per{width: 90%;}
.width_640_95_per{width: 95%;}


@media only screen and (max-width: 640px) {

	.width_640_10_per{width: 100%;}
	.width_640_15_per{width: 100%;}
	.width_640_20_per{width: 100%;}
	.width_640_25_per{width: 100%;}
	.width_640_30_per{width: 100%;}
	.width_640_35_per{width: 100%;}
	.width_640_40_per{width: 100%;}
	.width_640_45_per{width: 100%;}
	.width_640_50_per{width: 100%;}
	.width_640_55_per{width: 100%;}
	.width_640_60_per{width: 100%;}
	.width_640_65_per{width: 100%;}
	.width_640_70_per{width: 100%;}
	.width_640_75_per{width: 100%;}
	.width_640_80_per{width: 100%;}
	.width_640_85_per{width: 100%;}
	.width_640_90_per{width: 100%;}
	.width_640_95_per{width: 100%;}

}


.width_640_inline{
	display: inline-block;
	vertical-align: middle;
}
.width_640_hide{
	display: inline-block;
	vertical-align: middle;
}
@media only screen and (max-width: 640px) {
	.width_768_3to1_column{
		width: 90%;
	}
	.width_640_inline{
		display: block
	}
	.width_640_hide{
		display: none;
	}
}




/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

a{color:#333333;}
a:focus{color:#333333;}
a:active{color:#333333;}
/*a:visited{color:#333333;}*/
a:hover {
	/*color:rgb(79,192,109);*/
	color: initial;
}


ul{list-style:none;margin:0px;padding:0px;}


.link_char_black:hover{
	text-decoration: underline;
}
.link_char{
	color: #0082FE;
	cursor: pointer;
	line-height: 15px;
}
.link_char:hover{
	color: #0082FE;
	text-decoration: underline;
}
a:hover .link_char{
	text-decoration: underline;
}


.link_button{
	text-align: center;

	display: inline-block;
	width: auto;
	min-width: 150px;
	max-width: 300px;
	padding: 10px 20px;

	background-color: white;
	color: #3949AB;
	border: 2px solid #3949AB;
}
a:hover .link_button{
	color: white;
	background-color: #3949AB;
}

.link_area{
	width: 100%;
	height: 100%;
}
a:hover .link_area{
	transition: 0.3s;
	transform: scale(1.04);
}

/*color: #3949AB;*/


/*--------------------------------------------------------------
## table
--------------------------------------------------------------*/

/*■■■■■■■■■■■■■■ foundation のcssをクリアする ■■■■■■■■■■■■■■■■■■■■■■■*/
tbody tr:nth-child(even) {
	border-bottom: 0;
	background-color: initial;
	background-color: white;
}
/*
tbody tr:nth-child(even) {
	border-bottom: 0;
	background-color: #f1f1f1; }
table.unstriped tbody {
	background-color: #fefefe; }
table.unstriped tbody tr {
	border-bottom: 0;
	border-bottom: 1px solid #f1f1f1;
	background-color: #fefefe; }
*/
/*■■■■■■■■■■■■■■ foundation のcssをクリアする ■■■■■■■■■■■■■■■■■■■■■■■*/

table{
	table-layout: fixed;
}
tr th{
	background-color: #DDDDDD;
}

tr td:nth-child(1) {
	background-color: #EEEEEE;
}

tr{
	/*height: 100px;*/
	border: solid 1px #DDDDDD;
}
tr td{
	width: 100%;
	height: 100%;
	padding-left: 0.5rem;
	border: 1px solid #000;
}
td img{
	height: 100%;
}

table td a{
	display:block;
	width:100%;
	height:100%;
}



/*--------------------------------------------------------------
## pagination
--------------------------------------------------------------*/

/*■■■■■■■■■■■■■■ foundation のcssをクリアする ■■■■■■■■■■■■■■■■■■■■■■■*/

/*
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #0a0a0a; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
*/
/*■■■■■■■■■■■■■■ foundation のcssをクリアする ■■■■■■■■■■■■■■■■■■■■■■■*/
.pagination a,
.pagination button {
    display: inline-block !important;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #0a0a0a;
}
.pagination a:hover,
.pagination button:hover {
      background: #e6e6e6;
}

.nav-links{
	text-align: center;
	padding-bottom: 100px;
}


/*--------------------------------------------------------------
## SNSアイコン
--------------------------------------------------------------*/



.flowbtn17{
border-radius:50%;
position:relative;
display:inline-block;
width:50px;
height:50px;
font-size:30px;
text-decoration:none;
/*transition:.3s;*/
background-color:#2E3642;
color:#fff;
border: solid 1px #fff;
}
/* ボタンマウスホバー時のテキスト指定 */
.flowbtn17:hover{
text-decoration:none;
}
/* アイコンをど真ん中に */
.flowbtn17 i{
position:absolute;
top:50%;
left:50%;
-ms-transform:translate(-50%,-50%);
-webkit-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
/* Twitterマウスホバー時 */
.flowbtn17.fl_tw2:hover{
background:linear-gradient(135deg, #13f1fc 0%,#0470dc 100%);
}
/* Instagramマウスホバー時 */
.flowbtn17.insta_btn2:hover{
background:-webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
background:linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}
/* Facebookマウスホバー時 */
.flowbtn17.fl_fb2:hover{
background:-webkit-linear-gradient(top, #5c80c6 0%, #34528c 74%);
background:linear-gradient(to bottom, #5c80c6 0%, #34528c 74%);
}
/* Feedlyマウスホバー時 */
.flowbtn17.fl_fd2:hover{
background:linear-gradient(135deg, #b1ea4d 0%,#459522 100%);
font-size:28px;
}
/* Pocketマウスホバー時 */
.flowbtn17.fl_pk2:hover{
background:linear-gradient(135deg, #f36265 0%,#dd4f68 100%);
}
/* はてブアイコンのサイズ */
.flowbtn17.fl_hb2{
font-size:25px;
}
/* はてブマウスホバー時 */
.flowbtn17.fl_hb2:hover{
background:-webkit-linear-gradient(top, #1fbccd 0%, #1c91d4 84%);
background:linear-gradient(to bottom, #1fbccd 0%, #1c91d4 84%);
}
/* YouTubeマウスホバー時 */
.flowbtn17.fl_yu2:hover{
background:linear-gradient(135deg, #f5515f 0%,#c9293c 100%);
}
/* LINEマウスホバー時 */
.flowbtn17.fl_li2:hover{
background: linear-gradient(135deg, #3a9278 0%,#00c300 100%);
}
/* お問い合わせマウスホバー時 */
.flowbtn17.fl_ma2:hover{
background:linear-gradient(135deg, #fad961 0%,#f76b1c 100%);
}
/* Linkedin */
.flowbtn17.fl_in:hover{
background-color: #0A66C2;
}


/* ulタグの内側余白を０にする */
ul.snsbtniti{
padding:0!important;
}
/* ボタン全体の位置 */
.snsbtniti{
display:flex;
flex-flow:row wrap;
}
/* ボタン同士の余白 */
.snsbtniti li{
flex:0 0 20%;
text-align:center !important;
}

/* reCAPTCHAの保護マークを非表示にする */
/* 実際には、ここに書いても反映されず、wordpress管理画面の
   「外観」→「カスタマイズ」→「追加CSS」に同じ物が記載されており、それが効いて非表示になっている。 */
/* また、マークをただ消すのは規約違反になるそうなので、かわりに、フッターに文言を追加した */
.grecaptcha-badge { visibility: hidden; }

.breadcrumbs{
	font-size: 0.85em;
	margin-top: 1.0rem;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* EMO2023 */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

.emo2023-main-visual {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center !important;
	background-repeat:no-repeat !important;
	max-height: 100%;
	background-image: url("../images/emo2023/main-visual_pc.png");
}

@media screen and ( max-width:1601px) {
	.emo2023-main-visual{
	background-size: contain;
	}
}

@media screen and ( max-width:821px) {
	.emo2023-main-visual{
	background-image: none;
	background: #000;
	margin-top: 70px;
	}
	/*.main_visual_container p{font-size: 5.0em;}*/
}
@media screen and ( max-width:767px) {
	.emo2023-main-visual {
		background-image: url("../images/emo2023/main-visual_sp.png");
	}
	/*.main_visual_container p{font-size: 3.5em;}*/
}


/*--ヘッダー部分--*/

.contact-agency {
	position: absolute;
	right: -50%;
	top: 5%;
	width: 50%;
	z-index: 999;
}

.contact-agency-button {
	background-color: #333;
	color: white;
	width: 90%;
	display: inline-block;
	text-align: center;
	border-radius: 5px;
	padding: 13px;
	font-weight: bold;
	font-size: 0.8rem;
}

.contact-agency-button:hover{
	opacity: 0.7;
	cursor: pointer;
}