@charset "UTF-8";

/* --------------------------------
 * base
 * -------------------------------- */
body.menuOpen,
body.menuOpen #wrapper {
	height: 100%;
}
html, body {
	margin: 0 !important;
	padding: 0 !important;
	font-size:100%;
	overflow-x: hidden;
}
body {
	background-color:#ffffff;
	font-family: Verdana, Roboto, 'Droid Sans', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	color:#333333;
	-webkit-text-size-adjust: 100%;
	font-size:1.0rem;
}

a {
	color:#2c5eba;
}
ul,li {
	list-style:none;
	margin:0;
	padding:0;
}

#wrapper {
	width: 100%;
	overflow-x: hidden;
}

.cf:after {
  display: block;
  clear: both;
  content: "";
}

.clear{clear: both;}

.mT3em{margin-top:3em;}

/*-----------------------------------------------------
	HEADER
-----------------------------------------------------*/
#header {
	width:100%;
	border-top:1px solid #008d8e;
	position:relative;
}
#header .sitemap {
	background-color:#f5f5f5;
	width:100%;
	height:26px;
	position:absolute;
	top:0px;
	left:0px;
}
#header .sitemap a {
	display:block;
	position:absolute;
	top:0px;
	right:50%;
	margin-right:-500px;
	font-size:12px;
	line-height:26px;
	text-decoration:none;
}
#header .sitemap a:before {
	content:url(../img/sitemap.png);
	margin-right:5px;
}
.headerTop {
	width:1000px;
	height:146px;
	padding:43px 0 0;
	margin-left:auto;
	margin-right:auto;
	background-color:#ffffff;
}
.siteTitle {
	float:left;
	display:block;
}
#navDrawrBtn {
	display:none;
}
#navDrawr {
    width: 540px;
    position: absolute;
    left: 50%;
    top: 97px;
    margin-left: -45px;
}
#navDrawr ul {
	width:540px;
	display:block;
}
#navDrawr li {
	float:left;
	margin-left:42px;
}
#navDrawr li a {
	color:#747479;
}
#navDrawr li a:link,#navDrawr li a:visited {
	text-decoration:none;
}
#navDrawr li a:hover,#navDrawr li a:active {
	text-decoration:underline;
}
#navDrawr li:first-child {
	margin-left:0;
}
#navDrawr li.closeBtn {
	display:none;
}
#navDrawr.pc {
	display:block !important;
}

@media only screen and (max-width: 999px) {
	img {
		width:100%;
		height:auto;
	}
	#header {
		border-top:none;
		position:fixed;
		z-index:3;
	}
	#header .sitemap {
		display:none;
	}
	.siteTitle {
		display:none;
	}
	.headerTop {
		width:100%;
		height:30px;
		-webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.15);
		-moz-box-shadow: 0 1px 1px 0 rgba(0,0,0,.15);
		box-shadow: 0 1px 1px 0 rgba(0,0,0,.15);
		padding:0;
	}
	#navDrawrBtn {
		display:block;
		position:absolute;
		top:4px;
		right:5px;
		z-index:3;
		width:24px;
	}
	
	#navDrawr {
		width:100%;
		position:absolute;
		top:-5px;
		left:0px;
		z-index:4;
		background-color: #ffffff;
		margin:0;
		display:none;
	}
	#navDrawr.open {
		display:block;
	}
	
	#navDrawr ul {
		width:100%;
		display: block;
		background-color: #ffffff;
		margin:0;
		padding:0;
	}
	#navDrawr li {
		width:100%;
		border-bottom:1px solid #dbdbdb;
		margin:0;
	}
	#navDrawr li a {
		display:block;
		color:#333333;
		font-size: 15px;
		padding:13px 0;
		text-decoration:none;
		text-align:center;
		background-color: #ffffff;
	}
	#navDrawr li.closeBtn a {
		color:#ffffff;
		background-color:#000000;
	}
	#navDrawr li.closeBtn {
		display:block;
	}
}



/*-----------------------------------------------------
	topMainImg
-----------------------------------------------------*/
#topMainImg {
	background-image:url(../img/top_img.jpg);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:1912px auto;
	height:453px;
	padding:0;
	text-indent:-9999px;
}
#subMainImg {
	background-image:url(../img/sub_img.jpg);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:1920px auto;
	height:251px;
	padding:0;
	text-indent:-9999px;
}
@media only screen and (max-width: 999px) {
	#topMainImg {
		padding-top:44%;
		height:0;
		background-size:auto 100%;
		-moz-box-shadow:5px 5px 4px rgba(204,204,204,0.65);
		-webkit-box-shadow:5px 5px 4px rgba(204,204,204,0.65);
		box-shadow:5px 5px 4px rgba(204,204,204,0.65);
	}
	#subMainImg {
		padding-top:44%;
		height:0;
		background-size:auto 100%;
		-moz-box-shadow:5px 5px 4px rgba(204,204,204,0.65);
		-webkit-box-shadow:5px 5px 4px rgba(204,204,204,0.65);
		box-shadow:5px 5px 4px rgba(204,204,204,0.65);
	}
}



/*-----------------------------------------------------
	topNews
-----------------------------------------------------*/
.contentsArea {
	position:relative;
}
.sectionTitle {
	width:100%;
	height:88px;
	-moz-box-shadow:5px 5px 4px rgba(204,204,204,0.65);
	-webkit-box-shadow:5px 5px 4px rgba(204,204,204,0.65);
	box-shadow:5px 5px 4px rgba(204,204,204,0.65);
	position:absolute;
	top:0;
	left:0;
}
.sectionTitle h2 {
	width:1000px;
	margin-left:auto;
	margin-right:auto;
	padding-left:78px;
	padding-right: 15px;
	box-sizing:border-box;
	font-size:23px;
	line-height:88px;
	color:#006CAE;
	background-image:url(../img/bullet.png);
	background-position:30px center;
	background-repeat:no-repeat;
	background-size:26px 26px;
}
.sectionTitle h2.flex_between {
	display: flex;
    justify-content: space-between;
}
h3.sub_title{
	margin:5% 0 2%;
	font-size: 110%;
}
.sectionTitle a {
	display:none;
}
.sectionTitle h2.flex_between a {
	display:block;
	font-size: 90%;
}
#topNews .inner {
	width:1000px;
	margin-left:auto;
	margin-right:auto;
	padding-top:88px;
}
#topNews table {
	width:100%;
}
#topNews th {
	width:12em;
	min-height:4em;
	font-size:20px;
	color:#006CAE;
	font-weight:normal;
	padding:0.5em 1em;
	vertical-align:middle;
	box-sizing:border-box;
	background-color:#dbdfe7;
	text-align:left;
}
#topNews th:before {
	content:">";
}
#topNews tr:nth-child(2n) th {
	background-color:#e9ecf0;
}
#topNews td {
	font-size:15px;
	line-height:1.26;
	color:#666666;
	padding:0.5em 1em;
	vertical-align:middle;
	background-color:#e7eaef;
}
#topNews tr:nth-child(2n) td {
	background-color:#f6f7f9;
}
#topNews .more {
	padding:20px 0;
	text-align:center;
	background-color:#bec6d3;
	cursor:pointer;
}


/*-----------------------------------------------------
	subpage
-----------------------------------------------------*/
#subpage .inner {
	width:1000px;
	margin-left:auto;
	margin-right:auto;
	padding-top:120px;
}

#subpage .inner ul{width:100%;margin:0 auto;}
#subpage .inner ul li{line-height:180%;}

#subpage .inner ul.service_12 li.liData{width:100%!important;margin-bottom:1.5em;}
#subpage .inner ul.service_12 li.liComment{width:calc(100% - 4%)!important;}

#subpage .inner ul.service_12 li ul.service_list{width: calc(100% - 30px);margin-left:30px!important;}
#subpage .inner ul.service_12 li ul.service_list,
#subpage .inner ul.service_12 li ul.service_list li {
	margin:0;
	padding:0;
	list-style-position: outside;
	list-style-type: disc;
	line-height:200%;
}

#subpage .inner .service_title{font-weight:bold;}

#subpage .inner ul li.liData{
	width:20%;
	float:left;
	display:inline;
	font-weight:bold;
	color:#333333;
	background-image: url(../img/bbt.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:2%;
}
#subpage .inner ul li.liComment{
	width:78%;
	float:left;
	display:inline;
	color: #333333;
	margin-bottom: 2%;
}

#subpage .inner ul li table{width:100%;}
#subpage .inner ul li table td.w15{width:15%;}
#subpage .inner ul li table td{line-height:150%;}

#subpage .inner .style004 {
	font-size: 120%;
	line-height: 135%;
	font-weight: bold;
	color: #999999;
	text-align: center;
}

#subpage .inner table.des{width:100%;border-top: solid #CCC 1px;border-left: solid #CCC 1px;}
#subpage .inner table.des th,
#subpage .inner table.des td{padding:1em 1em;border-right: solid #CCC 1px;border-bottom: solid #CCC 1px;}
#subpage .inner table.des th{width:20%; background:#F0F0F0;}

@media only screen and (max-width: 999px) {
	.sectionTitle {
		height:0;
		padding-top:14%;
	}
	.sectionTitle h2 {
		width:100%;
		font-size:1.5rem;
		line-height:26px;
		position:absolute;
		top:0;
		left:0;
		margin-top:5%;
    padding-left: 35px;
    background-position: 5px center;
	}
	#topNews .inner {
		width:100%;
		padding-top:14%;
	}
	#topNews th {
		font-size:1rem;
		color:#006CAE;
		white-space:nowrap;
	}
	#topNews td {
		font-size:1rem;
	}
	#topNews .more {
		padding:3.125% 0;
	}
	#topNews .more img {
		width:8.28125%;
	}


#subpage .inner {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	padding-top:16%;
}
#subpage .inner .message_box{
	width:calc(100% - 4%)!important;
	margin: 0 auto;
	line-height: 180%;
}
#subpage .inner ul{width:100%;margin:0 auto;}
#subpage .inner ul li{line-height:180%;}
#subpage .inner ul li.liData{
	width:100%;
	float:left;
	display:inline;
	font-weight:bold;
	color:#FFF;
	padding-left:2%;
	background:#666;
}
#subpage .inner ul li.liComment{
	width:calc(100% - 4%)!important;
	display:inline;
	color: #333333;
	padding:2%;
}
#subpage img{width:auto!important;}
#subpage .inner ul li table{width:100%;}
#subpage .inner ul li table td.w15{width:15%;}
#subpage .inner ul li table td{line-height:150%;}

#subpage .inner .style004 {
	font-size: 120%;
	line-height: 135%;
	font-weight: bold;
	color: #999999;
	text-align: center;
}

#subpage .inner table.des{width:100%;border-top: solid #CCC 1px;border-left: solid #CCC 1px;}
#subpage .inner table.des th,
#subpage .inner table.des td{padding:1em 1em;border-right: solid #CCC 1px;border-bottom: solid #CCC 1px;}
#subpage .inner table.des th{width:20%; background:#F0F0F0;}



}




/*-----------------------------------------------------
	FOOTER
-----------------------------------------------------*/
#footer {
	background-color:#333333;
	text-align:center;
	margin-top:86px;
}
#footer .inner {
	width:1000px;
	height:300px;
	margin-left:auto;
	margin-right:auto;
	font-size:1rem;
}
#footer ul {
	padding-top:40px;
}
#footer li {
	display:inline-block;
	padding:0 32px;
}
#footer a {
	color:#cccccc;
}
#footer .logo {
	margin-top:65px;
}
#footer a:link, #footer a:visited {
	text-decoration:none;
}
#footer a:hover, #footer a:active {
	text-decoration:underline;
}
#copyright {
	background-color:#666666;
	padding:30px 0;
}


@media only screen and (max-width: 999px) {
	#footer {
		margin-top:5%;
	}
	#footer .inner {
		width:auto;
	}
	#footer .inner {
		width:100%;
		height:auto;
	}
	#footer .logo {
		padding:5.78125% 0 7.8125%;
	}
	#footer .logo img {
		width:15.9375%;
	}
	#footer ul {
		display:none;
	}
	#copyright {
		padding:3.125% 0;
	}
}



html { font-size:16px ;}
@media screen and (min-width: 960px){html{font-size:16px ;}}
@media screen and (max-width: 960px){html{font-size:16px ;}}
@media screen and (max-width: 860px){html{font-size:15px ;}}
@media screen and (max-width: 760px){html{font-size:14px ;}}
@media screen and (max-width: 640px){html{font-size:13.5px;}}
@media screen and (max-width: 540px){html{font-size:13px;}}
@media screen and (max-width: 450px){html{font-size:12px ;}}
@media screen and (max-width: 320px){html{font-size:11px;}}


/***********************************
form
***********************************/
form#mailformpro dl.mailform{
	display: flex;
    align-items: center;
    width: 100%;
    border-top: solid 1px #CCC;
	box-sizing: border-box;
}

form#mailformpro dl.mailform dt,
form#mailformpro dl.mailform dd{
    padding: 1rem;
}

form#mailformpro dl dt {
    width: 15rem!important;
    display: flex;
    justify-content: space-between;
    text-align: right;
    align-items: center;
}
form#mailformpro dl dd{
    width: 100%;
}
form#mailformpro dl dd.flex{
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
form#mailformpro dl dd input{
    padding: 5px;
    margin: 0;
    line-height: 1.8rem;
    box-sizing: border-box;
    border: solid 1px #CCC;
    border-radius: 5px;
}
form#mailformpro dl dd input.full{
	width: 100%;
}
form#mailformpro dl dd input.half{
	width: calc((100% - 3%) / 2);
}
form#mailformpro dl dd textarea{
	width:100%;
	min-height:250px;
	line-height: 1.5rem;
    box-sizing: border-box;
    border: solid 1px #CCC;
    border-radius: 5px;
}
form#mailformpro h4.title{
    line-height: 1.5em;
    font-size: 16px;
}
form#mailformpro .privacypolicy_box{
    overflow-y: scroll;
    height: 20em;
    border: 1px solid #CFCFCF;
    padding: 1rem;
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
}
form#mailformpro .privacypolicy_box h5.title{
    font-size: 1.3em;
    text-align: center;
}
form#mailformpro .privacypolicy_box p{
    margin-bottom:1.5rem;
}
form#mailformpro .privacypolicy_box h5{
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom:.5rem;
}
form#mailformpro .privacypolicy_box .text_box{
    margin-bottom:1.5rem;
}
.mT_set{
    margin-top: .5rem;
}
textarea.mfp_element_textarea{
    width: 100%!important;
    height: 10rem!important;
}

.center {
    text-align: center;
}

@media only screen and (max-width: 720px) {
form#mailformpro dl.mailform{
	flex-direction: column;
	padding: 1rem;
}
form#mailformpro dl.mailform dt,
form#mailformpro dl.mailform dd{
        display: flex;
        align-items: center;
		flex-wrap: wrap;
    }

form#mailformpro dl.mailform dt {
        justify-content: start;
        gap: 1rem;
		width: 100%!important;
}

}







.company_dl{
	display: flex;
	gap: 1rem;
	margin-bottom: 2%;
	line-height: 180%;
}
.company_dl dt.liData:before{
    content: "";
    display: block;
    width: 13px;
    height: 18px;
    background-image: url(../img/bbt.gif);
    background-repeat: no-repeat;
    background-position: 0 9px;
}
.ja-style .company_dl dt.liData{
    width: calc(20% + 18px);
    font-weight: bold;
    color: #333333;
	display: flex;
	gap: 5px;
}
.ja-style .company_dl dd.liComment{
	width: calc(80% - 18px - 1rem);
    color: #333333;
}
.en-style .company_dl dt.liData{
    width: calc(30% + 18px);
    font-weight: bold;
    color: #333333;
	display: flex;
	gap: 5px;
}
.en-style .company_dl dd.liComment{
	width: calc(70% - 18px - 1rem);
    color: #333333;
}






@media only screen and (max-width: 999px) {
form#mailformpro dl dd input.half{
	width: 100%;
}
	.company_dl{
	flex-direction: column;
}
.company_dl dt.liData:before{
    display: none;
}
.ja-style .company_dl dt.liData{
    width: 100%;
    font-weight: bold;
    color: #FFF;
    padding-left: 2%;
    background: #666;
}
.ja-style .company_dl dd.liComment{
	width: calc(100% - 4%);
	margin: 0 auto 2%;
}
.en-style .company_dl dt.liData{
    width: 100%;
    font-weight: bold;
    color: #FFF;
    padding-left: 2%;
    background: #666;
}
.en-style .company_dl dd.liComment{
	width: calc(100% - 4%);
	margin: 0 auto 2%;
}
}