@charset "utf-8";
/*
* CSS Base Layout Style
* Author:Michinobu Nishimoto from Asuka-Design
* Ver:1.0
*/
/*--------------------------------------------------------
共通部分のレイアウト
--------------------------------------------------------*/
body{
	/*font-family:"ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;*/
	position:relative;
	width:100%;
    /*min-width: 1080px;*/
    min-width: 1100px;
	overflow-x:auto;
	line-height: 140%;
	font-size: 13px;
	/* Base Font Color */
	color: #4D9E84;
}

.pc { display: block; }
.sp { display: none; }


a:hover img {
	filter:alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.7;
	}


/* End of recruit */

/*--------------------------------------------------------
Header
--------------------------------------------------------*/
.headerWrapper {
	width: 100%;
	height: 100px;
	background-color: #fff;
}

.header {
    width: 1100px;
/*	width:1000px;*/
	height: 40px;
	margin: 0 auto;
}

	.header h1 a {
		display: block;
		width: 204px;
		height: 29px;
		background: url(../img/logoa.png) left top no-repeat;
		margin-top: 6px;
	}

.header .gSubMenu {
	/*width: 460px;*/
	width: auto;
  margin-top: 7px;
  display: flex;
	align-items: center;
}

	.header .gSubMenu table {
		margin-top: 5px;
		height: 17px;
	}

	.header .gSubMenu table td.sec {
		vertical-align: middle;
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
		padding: 0 10px;
	}

	.header .gSubMenu table td.third {
		vertical-align: middle;
		padding-left: 10px;
	}

	.header .gSubMenu a{
		display: block;
		margin-right: 10px;
	}

.header .gSubMenu .third a{
		margin-right: 0;
	}

	.header .gSubMenu a.gSub001 {
		width: 76px;
		height: 25px;
		background: url(../img/papera.png) left top no-repeat;
		float: left;
		margin-right: 10px;
	}

	.header .gSubMenu a.gSub002 {
		width: 71px;
		height: 13px;
		background: url(../img/inquirya.png) left top no-repeat;
	}

	.header .gSubMenu a.gSub003 {
		width: 162px;
		height: 14px;
		background: url(../img/tela.png) left top no-repeat;
	}
/*20210609追加*/

	.header .gSubMenu a.gSub004 {
		width: 200px;
		height: 14px;
	}
	/*20220705ここから追加*/
	.header .gSubMenu a.gSub005 {
	    width: 90px;
	    height: 25px;
	    background: url(../img/inquirya_n.png) center top no-repeat;
	    border-left: 1px solid #ccc;
	    border-right: 1px solid #ccc;
	}
	/*20220705ここまで追加*/

	.header .gSubMenu a.tela-n {
		background: url(../img/tela-n.png) left top no-repeat;
	}
	.header .gSubMenu a.telb-n {
		background: url(../img/telb-n.png) left top no-repeat;
	}
	.header .gSubMenu a.telc-n {
		background: url(../img/telc-n.png) left top no-repeat;
	}
	.header .gSubMenu a.teld-n {
		background: url(../img/teld-n.png) left top no-repeat;
	}


		/*--------------------------------------------------------
		20220119追加　googleサイト内検索
		--------------------------------------------------------*/

		#g-k-w-search {float:right;margin-top: 5px; }
		#g-k-w-search .gsc-control-cse { padding: 0; }

		/* テキストボックスに文字入力したときに出る「×」マークの位置調整用の指定 */
		#g-k-w-search .gsc-search-box { position: relative; }

		#g-k-w-search .gsc-search-box tr,
		#g-k-w-search .gsc-search-box td { display: block; }

		#g-k-w-search .gsc-search-box .gsc-input-box { background-color: #F3F3F1; }

		/* テキストボックスの親要素。width指定しつつfloatで左寄せ */
		#g-k-w-search .gsc-search-box td.gsc-input,
		#g-k-w-search .gsc-search-box td.gsc-input .gstl_50 {
			box-sizing: border-box;
			width: 320px !important;
			padding: 0 !important;
			/*margin-right: 5px;*/
			height: 30px;
			vertical-align: top;
			float: left;
		}

		#g-k-w-search .gsc-search-box .gsib_a {
			width: 350px !important;
			padding: 0 !important;
		}

		/* テキストボックスのデザイン設定 */
		#g-k-w-search .gsc-search-box input#gsc-i-id1 {
			box-sizing: border-box;
			height: 30px !important;
			padding: 4px !important;
			border: 1px solid #AAA!important;
			background-position: 5px center !important;
		}

		#g-k-w-search .gsc-search-box td#gs_tti51 { margin-bottom: 5px; }

		/* ボタンの親要素。width指定しつつfloatで左寄せ */
		#g-k-w-search .gsc-search-box td.gsc-search-button {
			width: 100px !important;
			height: 30px;
			float: left;
		}

		/* テキストボックスに文字入力したときに出る「×」マークの位置調整 */
		#g-k-w-search .gsc-search-box .gsib_b {
			position: absolute;
			width: 20px;
			top: 2px;
			left: 290px;
		}

		/* デフォルトで設定されている(疑似的な)テキストボックスの
		デザイン設定を解除 */
		#g-k-w-search .gsc-search-box .gsc-input-box,
		#g-k-w-search .gsc-search-box .gsc-input-box-hover,
		#g-k-w-search .gsc-search-box .gsc-input-box-focus {
			border: none !important;
			-webkit-box-shadow: none !important;
			-moz-box-shadow: none !important;
			box-shadow: none !important;
		}

		/* 検索ボタンの背景をボタンのように見せかける */
		#g-k-w-search .gsc-search-box .gsc-search-button {
			position: relative;
			background-color: #5aabc1 ;
			cursor: pointer;
		}

		/* 検索ボタンの背景部分にテキストを表示させる */
		#g-k-w-search .gsc-search-box .gsc-search-button:before {
			position: absolute;
			top: 20%;
			/*left: 5%;*/
			left: 12%;
			content: 'サイト内検索' !important;
			color: #FFF;
			font-size: 12px;
		}

	/* 下層にFontAwesomeが入っていないので虫目がねなし
		#g-k-w-search .gsc-search-box .gsc-search-button:after {
			position: absolute;
			top: 20%;
			left: 85%;
			font-family: FontAwesome;
			content: '\f002' !important;
			color: #FFF;
			font-size: 13px;
		}
	*/

		#g-k-w-search .gsc-search-box .gsc-search-button:hover {
			filter: brightness(110%);
		}


		/* 検索ボタンを透明化し背景のみを表示させる */
		#g-k-w-search .gsc-search-box button.gsc-search-button-v2,
		#g-k-w-search .gsc-search-box button.gsc-search-button {
			width: 100%;
			height: 50px;
			padding: 0 !important;
			opacity: 0;
		}

		#g-k-w-search_sp .gsc-input-box {
		    border: 1px solid #dfe1e5;
		    background: #fff;
		    height: 28px;
		}

		/*--------------------------------------------------------
		20220119追加　googleサイト内検索（SP用）
		--------------------------------------------------------*/
		/* テキストボックスの親要素。width指定しつつfloatで左寄せ */
		#g-k-w-search_sp .gsc-search-box td.gsc-input,
		#g-k-w-search_sp .gsc-search-box td.gsc-input .gstl_50 {
		box-sizing: border-box;
		width: 70% !important;
		height: 30px!important;
		padding: 0 !important;
		/*margin-right: 5px;*/
		vertical-align: top;
		float: left;
		}

		#g-k-w-search_sp .gsc-search-box td#gs_tti51 { margin-bottom: 5px; }

		#g-k-w-search_sp .gsc-search-box td.gsc-search-button {
		width: 29% !important;
		height: 40px!important;
		float: left;
		}


		/* 検索ボタンの背景をボタンのように見せかける */
		#g-k-w-search_sp .gsc-search-box .gsc-search-button {
		position: relative;
		background-color: #d5ebe7;
		cursor: pointer;
		border-radius: 0px 4px 4px 0px;
		margin-left: 0px!important;
		}
		/* 検索ボタンの背景部分にテキストを表示させる */
		#g-k-w-search_sp .gsc-search-box .gsc-search-button:before {
		position: absolute;
		top: 25%;
		left: 15%;
		content: 'サイト内検索' !important;
		font-size: 12px;
		color: #000;
		}

		/* 検索ボタンを透明化し背景のみを表示させる */
		#g-k-w-search_sp .gsc-search-box button.gsc-search-button-v2,
		#g-k-w-search_sp .gsc-search-box button.gsc-search-button {
		width: 100%;
		height: 40px;
		padding: 0 !important;
		opacity: 0;
		}



/*--------------------------------------------------------
Global Nav
--------------------------------------------------------*/
.gNavWrapp {
	width: 100%;
	background: url(../img/gNavBack.png) left top repeat;
	position: relative;
	top:-110px;
}
.gNav {
	width: 1100px;
	margin: 0 auto;
}
.gNav h1 a {
	display: block;
	width: 214px;
	height: 55px;
	background: url(../img/under/logoa.png) left top no-repeat;
}
.gNav h1_r a {
	display: block;
	width: 250px;
	height: 70px;
    margin-top: -10px;
	background: url(../img/under/logoa_r.png) left top no-repeat;
}
.gNav h1_r2 a {
	display: block;
	width: 250px;
	height:76px;
     margin-top: 20px;
	background: url(../img/under/logoa_r2.png) left top no-repeat;
}
.gNav h1.r2 a {
	display: block;
	width: 250px;
	height:76px;
     margin-top: 20px;
	background: url(../img/under/logoa_r2.png) left top no-repeat;
}
.gNav h1.r2 a:hover {
	opacity:1;
}

.gNav h1 a:hover {
	filter:alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.7;
}


.gNav ul li a {
	display: block;
}

.gNav ul li {
	float: left;
}

.gNav ul.list {
	padding-top: 14px;
	padding-bottom: 12px;
	/*background: url(../img/line.png) 462px center no-repeat;*/
}

.gNav ul.list li {
	margin-left: 20px;
}

	.gNav ul li a.list001 {
		width: 69px;
		height: 14px;
		background: url(../img/under/list001a.png) left top no-repeat;
	}

	.gNav ul li a.list002 {
		width: 98px;
		height: 14px;
		background: url(../img/under/list002a.png) left top no-repeat;
	}

	.gNav ul li a.list003 {
		width: 96px;
		height: 14px;
		background: url(../img/under/list003a.png) left top no-repeat;
	}

	.gNav ul li a.list004 {
		width: 86px;
		height: 14px;
		background: url(../img/under/list004a.png) left top no-repeat;
	}

	.gNav ul li a.list005 {
		width: 98px;
		height: 14px;
		background: url(../img/under/list005a.png) left top no-repeat;
	}
	.gNav ul li a.list006 {
		width: 113px;
		height: 14px;
		background: url(../img/under/list006a.png) left top no-repeat;
	}


.gNav ul li a.list007 {
	width: 113px;
	height: 14px;
	background: url(../img/under/list007a.png) left top no-repeat;
}
	.gNav ul.list li a:hover {
		filter:alpha(opacity=70);
		-moz-opacity:0.70;
		opacity:0.7;
	}

.gNav .menu {
    /*20210706*/
	/*margin-left: 39px;*/
	margin-bottom: 20px;
	float: right;
}

.gNav .menu li a.menu001 {
	width: 190px;
	height: 50px;
	background: url(../img/under/gNav1a.png) left top no-repeat;
}

.gNav .menu li a.menu002 {
	width: 139px;
	height: 50px;
	background: url(../img/under/gNav2a_2.png) left top no-repeat;
}

.gNav .menu li a.menu003 {
	width: 139px;
	height: 50px;
	background: url(../img/under/gNav3a.png) left top no-repeat;
}

.gNav .menu li a.menu004 {
	width: 139px;
	height: 50px;
	background: url(../img/under/gNav4a.png) left top no-repeat;
}

.gNav .menu li a.menu005 {
		width: 140px;
		height: 50px;
		background: url(../img/under/gNav5a.png) left top no-repeat;
}
.gNav .menu li a.menu005_r {
		width: 103px;
		height: 50px;
		background: url(../img/under/gNav5a_r.png) left top no-repeat;
}
/*20210706*/
.gNav .menu li a.menu006 {
		width: 100px;
		height: 50px;
		background: url(../img/under/gNav6a.png) left top no-repeat;
}

.gNav .menu li.current a,
	.gNav .menu li a:hover {
		background-position: left -50px;
}



/*--------------------------------------------------------
Main
--------------------------------------------------------*/
.main {
	width: 100%;
}



/*--------------------------------------------------------
Section  -Article
--------------------------------------------------------*/
.article {

}

/*--------------------------------------------------------
Footer
--------------------------------------------------------*/
/*共通*/
footer .inner {
	margin: 0 auto;
    padding: 0;
	width: 1100px;
}
/*ページトップ*/
footer .pagetop {
	background-color: #F2F2F2;
	height: 32px;
	width: 100%;
}
footer .pagetop .inner {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: flex-end;
}
footer .pagetop .inner a {
	display: block;
	width: 82px;
	height: 10px;
	background: url("../../img/common/footer/pagetop.png") left top no-repeat;
}
footer#redes .pagetop .inner a {
	background: url("../../img/common/footer/pagetop.png") left top no-repeat;
}

/*フッタサイトマップ*/
footer .f-sitemap .inner{
    color: #000;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 2em 0 1em ;
}
footer#redes .f-sitemap .inner{
    color: #000;
}
footer .f-sitemap .inner > div{
    padding: 0 ;
    width: 24%;
}
footer .f-sitemap .inner > div dl{
    margin: 0 0 1em;
}
footer .f-sitemap .inner > div dl:last-child{
    margin: 0;
}
footer .f-sitemap .inner > div dl dt{
    font-weight: bold;
    font-size: 14px;
}
footer .f-sitemap .inner > div dl dd{
    padding: .25em 0 0 0;
}
footer .f-sitemap .inner > div dl dd ul li{
    padding: 0 0 .5rem;
}
footer .f-sitemap .inner > div dl dd ul li a{
    color: #000;
    text-decoration: underline;
}
footer#redes .f-sitemap .inner > div dl dd ul li a{
    color: #000;
}
footer .f-sitemap .inner > div dl dd ul li a:hover{
    text-decoration: none;
}
footer .f-sitemap .inner > div dl dd ul li a::before{
    background: url("../../img/common/footer/ico_arrow.png") left center no-repeat;
    box-sizing: border-box;
    content: "";
    display: inline-block;
    height: 10px;
    padding: 0 .75rem 0 0;
    width: 10px;
}
footer#redes .f-sitemap .inner > div dl dd ul li a::before{
    background: url("../../img/common/footer/ico_arrow.png") left center no-repeat;
}

/*フッタバナー*/
footer .f-banner ul{
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 1em 0;
}
footer .f-banner ul::before {
    content: "";
    width: calc( 25% - 1.5rem );
    order: 1;
}
footer .f-banner ul::after {
    content: "";
    width: calc( 25% - 1.5rem );
}
footer .f-banner ul li{
    background-color: #fff;
    border: #ddd solid 1px;
    border-radius: .25rem;
    box-sizing: border-box;
    margin: 0 0 10px;
    padding: .25rem;
    width: calc( 25% - 1.5rem );
}
footer .f-banner ul li img{
    height: 100%;
    width: 100%;
}
/*f-banner ul li.jcep JCEPバナー固有スタイル*/
footer .f-banner ul li.jcep-banner{
    background-color: #fff;
    border: none;
    border-radius: 0;
    padding: 0;
    width: calc( 25% - 1.5rem );
}
footer .f-banner ul li.jcep-banner a{
    border: #ddd solid 1px;
    border-radius: .25rem;
    display: block;
    padding: .25rem;
    width: fit-content;
}
footer .f-banner ul li.jcep-banner img{
    height: auto;
    width: auto;
}
/*フッタサブバナー*/
footer .f-sub-banner ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 1em 0;
}
footer .f-sub-banner ul li{
    background-color: transparent;
    border-radius: .25rem;
    margin: 0 .5em;
    padding: .25rem;
}
footer#redes .f-sub-banner ul li{
    background-color: transparent;
    border-radius: 0;
    margin: 0 .5em;
    padding: 0;
}
/*フッタアドレス*/
footer address {
    font-size: 1rem;
    padding: 10px;
    text-align: center;
}
footer address.f-address a{
    color: #000;
    text-decoration: none;
}
footer#redes address.f-address a{
    color: #000;
    text-decoration: none;
}
/*コピーライト*/
footer .copyright {
    border-top: #ddd solid 1px;
    color: #000;
    font-size: 0.7rem;
    padding: 10px;
    text-align: center;
}
footer#redes .copyright {
    color: #000;
}

/* JCEP バナー用 （比率違いのため別クラス）*/
footer .jcep-banner{
	width:1100px;
	margin: 0 auto;
}
footer .jcep-banner ul{
	margin: 1em 0;
	float: left;
}
footer .jcep-banner li{
	display: inline-block;
	background-color: #fff;
    border: #ddd solid 1px;
    border-radius: 0.25rem;
    box-sizing: border-box;
    margin-right: 20px;
    padding: 0.25rem;
}
footer .jcep-banner::after{
	content:"";
	display: block;
 	clear: both;
}

/*--------------------------------------------------------
.table-area
--------------------------------------------------------*/
.table-area  {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	justify-content: center;
	padding: 10px 10px;
	box-sizing: border-box;
}
.table-area .table-area-in  {
	width: 48%;
}
table.top-taglelayout {
	background-color: #fff;
color: #000;
font-size: 0.933em; /* 14px */
line-height: 1.5;
margin: 0 auto 10px auto;
padding: 0;
word-break: break-all;
width: 100%;
}
table.top-taglelayout th,
table.top-taglelayout td {
	border: 1px solid #BFBFBF;
	padding: 8px 6px;
	word-wrap: break-word;
	text-align: center;
}

table.top-taglelayout th {
	background-color: #D1DFD1;
    font-weight: normal;
    line-height: 1.0;
}


/*--------------------------------------------------------
Smartphone
--------------------------------------------------------*/
@media screen and (max-width: 640px){
    body {
        min-width: 100%;
    }
    .pc { display: none; }
    .sp { display: block; }
    .headerWrapper {
        height: auto;
        overflow: hidden;
        /* background-color: #888888; */
        background-color: #d5ebe7;
    }
/*--------------------------------------------------------
Header
--------------------------------------------------------*/
    .header-sp {
        position: relative;
    }
	.header-sp table td {
		vertical-align: middle;
	}
	.header-sp table td a {
		/* color: #fff; */
		color: #000;
	}
    .spMenuBtn {
        position: absolute;
        top:0;
        right: 8px;
    }
    .gNavSp {
        background-color: #fff;
    }
	.gNavSp .fL,.gNavSp .fR {
		width: 45%;
		font-size: 80%;
	}
    .menuBlocks {
        width: 100%;
        height: 100%;
        background-color: #fff;
        position: absolute;
        right: -100%;
        top:0;
        z-index: 10;
        overflow: hidden;
        display: none;
    }
	.menuBlocks .upper {
		background-color: #888;
		color:#fff;
		position: relative;
		border-bottom: 5px solid #4F9E84;
		height: 60px;
	}
	.menuBlocks .upper p {
		font-family: 'Hiragino Mincho ProN', serif;
		font-size: 20px;
		padding: 5px;
	}
	.menuBlocks .upper a.closeBtn {
		position: absolute;
		top:0;
		right: 0;
	}
	.menuBlocks .bottom {
		width: 94%;
		margin: 0 3%;
	}
	.menuBlocks .bottom ul {
		width: 100%;
	}
	.menuBlocks .bottom ul li {
		width: 96%;
		padding:4px 0 4px 21px;
		border-bottom: 1px dashed #4F9E84;
		background: url(../img/sp/under/icon_arrowa.png) left center no-repeat;
		background-size: 15px;
	}
	.menuBlocks .bottom ul li.menu_t_arrow {
		background-position: left 7px;
	}
	.menuBlocks .bottom ul li ul {
		margin-left:0!important;
	}
	.menuBlocks .bottom ul li ul li {
		background: none;
		padding-left:0!important;
	}
	.menuBlocks .bottom ul li ul li {
		border: none!important;
	}
	.sp-btn-menu {
		margin-top: 8px;
	}
	.h-qa {
		color: #fff;
		font-size: 12px;
		color: #fff;
	}
/*--------------------------------------------------------
Footer
--------------------------------------------------------*/
    /*共通*/
    footer .inner {
        width: 94%;
    }
    /*フッタバナー*/
    footer .f-banner ul{
        padding: 0;
    }
    footer .f-banner ul li{
        margin: 0 0 10px;
        width: 100%;
    }
    /*f-banner ul li.jcep JCEPバナー固有スタイル*/
    footer .f-banner ul li.jcep-banner{
        width: 100%;
    }
    footer .f-banner ul li.jcep-banner a{
        box-sizing: border-box;
        width: 100%;
    }
    footer .f-banner ul li.jcep-banner img{
        height: 100%;
        width: 100%;
    }
    /*フッタサブバナー*/
    footer .f-sub-banner ul{
        padding: 0;
    }
    footer .f-sub-banner ul li{
        margin: .5em;
        width: calc( 50% - 1em );
    }
    footer .f-sub-banner ul li a img {
        width: 100% !important;
        height: auto!important;
    }
    footer#redes .f-sub-banner ul li{
        margin: .5em;
        width: calc( 50% - 1em );
    }

    /*フッタリンク*/
    footer .f-link{
        background-color: #4D9E84;
        color: #fff;
        padding: .5em 0;
    }
    footer .f-link ul{
        display: flex;
        justify-content: center;
    }
    footer .f-link ul li{
        border-left: #fff solid 1px;
        padding: 0 .5em;
    }
    footer .f-link ul li:first-child{
        border-left: none;
    }
    footer .f-link ul li a{
        color: #fff;
        text-decoration: underline;
    }

	footer .jcep-banner{
	width: 94%;
	margin: 0 auto;
	}
	footer .jcep-banner ul {
    float: none;
	text-align: center;
	margin: 0.3em 0 1em;

	}
	footer .jcep-banner img {
	width: 100%;
	}
    .table-area  {
        display: -webkit-block!important;
        display: -ms-blockbox!important;
        display: block!important;
    }
    .table-area .table-area-in  {
        width: 100%!important;
    }

}
/* End of Smartphone */
