@charset "UTF-8";
@import url('https://fonts.cdnfonts.com/css/barlow');

.contents_inner {
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}
.bg-white{background-color: #ffffff;}
#page_header{position: relative; margin-top: 120px;height: 260px;background-repeat: no-repeat;background-position: center; background-size: cover;}

#page_header h2{position: absolute; top:54%;left: 2.4em;}
#page_header img.english_copy{position: absolute; top:0;left:3%;height: 80px;}
.page_header_h3{font-size: 1.2em;color: #0d68a9;font-weight: normal;margin-bottom: 2.4em;margin-top: 1em;}
.page_header_h2{font-size: 2.6em;line-height: 1.2em;}
.line span {
	display: flex;
	align-items: center;
	color: #ffffff;
	font-size: 2.4em;
	text-transform: uppercase;
font-weight: bold;}
.line span::before {
	content: '';
	display: inline-block;
	margin-right: 20px;
	width: 50px;
	height: 2px;
	background-color: #ffffff;}
.overimg:hover{opacity: 0.5;}
.spnone{display: block;}
.sponly{display: none;}
.f-left{float: left;}
.f-right{float: right;}
.img100{width: 100%;}
.normal{font-weight: normal;}
.justify{text-align: justify;}
.w48per{width: 48%;}
.w30per{width: 30%;}
.w48per img{width: 100%;}
.w66per{width: 66%;position: relative;}
.w80per{width: 80%;margin: 0 auto;}
.white{color:#ffffff;}
.sec_ttl{font-size: 4em;text-align: center;}
.barlow{font-family: 'Barlow', sans-serif;}
.tex_blue{color:#0d68a9;}
.sec_ttl span{font-size: 0.3em;display: block;font-weight: normal;}
.sec_p{line-height: 1.8;}
.black{color:#000000;}

.page_ttl{font-size: 2.0em;text-align: center; margin-bottom: 2em;}
.page_ttl_en{color:#0d68a9;font-size: 2.4em;text-align: left; margin-bottom: 2em;font-weight: bold;}
.page_ttl_en span{color: #000000;font-size: 0.6em;margin-left: 1em;font-weight: normal;}
.page_h3{font-size: 1.6em;text-align: center;font-weight: normal;}
/* 見出しの下に短い下線 */
.heading ,.heading-contents{
  position: relative;
  text-align: center; /* 文字の中央寄せ */
}
.heading::before ,.heading-contents::before{
  background-color: #0d68a9; /* 線の色 */
  border-radius: 5px; /* 線の両端を丸く */
  bottom: -10px; /* 線の位置 */
  content: "";
  height: 3px; /* 線の高さ */
  left: 50%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%); /* 線の中央寄せ */
  width: 60px; /* 線の長さ */
}
.heading_left {
  position: relative;
  text-align: left; /* 文字の中央寄せ */
}
.heading_left::before {
  background-color: #0d68a9; /* 線の色 */
  border-radius: 5px; /* 線の両端を丸く */
  bottom: -10px; /* 線の位置 */
  content: "";
  height: 3px; /* 線の高さ */
  left: 0%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-0%); /* 線の中央寄せ */
  width: 60px; /* 線の長さ */
}
.work_green_box{background-color: #e8f4ec;border-radius: 12px;padding: 5%;box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.32); margin-bottom: 4em;}
.work_gray_box{background-color: #ebebeb;padding: 5%;box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.32); margin-bottom: 4em;}

/* section_contact */
.section_contact{background-image: url("../img/sec_contact_back_pc.webp");
    background-repeat: no-repeat;
    background-position: top center; /*右下に表示 したものを左上に反転*/
    background-size: cover; /*高さにあわせる*/
    height: auto;
    width: 100%;
	position: relative;padding:30px 0;}
.contact_left{width: 48%;float: left;}
.contact_right{width: 48%;float: right;}
.contact_left img,.contact_right img,.contact_tel{filter: drop-shadow(1px 1px 4px white); /* 光彩の設定、0 0 は影のずれ、20pxはぼかしの半径、whiteは色 */}

.boxitem_03_work{width: 33%;
    height: auto;
    display: block;
    margin-bottom: 0.6%;}

.work_menu {background-size: contain;background-position: center;}
.work_menu h3{font-size: 1.1em;line-height: 1.2; padding: 1em 0 1em 1.4em;color: #000000;}
.work_menu h3.active{color:#ffffff;}

.boxitem_02_business{width: 48%;
    height: auto;
    display: block;
    margin-bottom: 0.6%;}

.business_menu {background-size: cover;background-position: right center;box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.32);}
.business_menu h3{font-size: 1.1em;line-height: 1.2; padding: 1em 0 1em 1.4em;color: #000000;}
.business_menu h3.active{color:#ffffff;}
/* パンくずリストcss *************************************************************** */
.bg_breadcrumb{}
.breadcrumb {
	text-align: left;
width: 1000px;
  padding: 0.2em 0em 0.2em;
  list-style: none;
  overflow: hidden;
  margin: 0 auto;
}

.breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
  font-weight: normal;/*太字*/
}
.breadcrumb li:after {/* >を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #666666;
}
.breadcrumb li:last-child:after {
  content: '';
}
.breadcrumb li a {
  text-decoration: none;
  color: #666666;
	font-size: 0.8em;
}
.breadcrumb li a:hover {text-decoration: underline;}
/* パンくずリストcss *************************************************************** */

/*
===================================================
 tb タブレット解像度
===================================================
*/
@media screen and (max-width:1000px) {
.spnone{display: block;}
.sponly{display: none;}
	.work_menu {background-size: cover;background-position: center right;}
	.work_menu h3{font-size: 1.0em;line-height: 1.2; padding: 0.8em 0 0.8em 0.6em;color: #000000;}
}
/*
===================================================
 sp スマホ解像度
===================================================
*/
@media screen and (max-width:640px) {
.spnone{display: none;}
.sponly{display: block;}
.f-left{float: none;}
.f-right{float: none;}
.w30per{width: 70%;margin:0 auto;}
.w80per{width: 100%;margin:0 auto;}
.w48per{width: 100%;margin-bottom: 3%;}
.w66per{width: 100%;position: relative;}	

#page_header{position: relative; margin-top: 110px;height: 150px;background-repeat: no-repeat;background-size: cover;}
#page_header h3{position: absolute; top:50%;left: 3%;}
#page_header h2{position: absolute; top:110%;left: 3%;}
#page_header img.english_copy{position: absolute; top:0;left:0%;height: 40px;}
.page_header_h3{font-size: 1.0em;color: #0d68a9;font-weight: normal;margin-bottom: 2.4em;margin-top: 1em;}
.page_header_h2{font-size: 1.8em;line-height: 1.2em;}
.line span {
	display: flex;
	align-items: center;
	color: #ffffff;
	font-size: 1.8em;
	text-transform: uppercase;
font-weight: bold;}
.line span::before {
	content: '';
	display: inline-block;
	margin-right: 10px;
	width: 30px;
	height: 2px;
	background-color: #ffffff;}
.page_ttl{font-size: 1.6em;text-align: left;}
.page_h3{font-size: 1.3em;text-align: left;font-weight: normal;}
/* 見出しの下に短い下線 */
.heading {
  position: relative;
  text-align: center; /* 文字の中央寄せ */
}
.heading::before {
  background-color: #0d68a9; /* 線の色 */
  border-radius: 5px; /* 線の両端を丸く */
  bottom: -10px; /* 線の位置 */
  content: "";
  height: 3px; /* 線の高さ */
  left: 50%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%); /* 線の中央寄せ */
  width: 60px; /* 線の長さ */
}
.heading-contents {
  position: relative;
  text-align: left; /* 文字の中央寄せ */
}
.heading-contents::before {
  background-color: #0d68a9; /* 線の色 */
  border-radius: 5px; /* 線の両端を丸く */
  bottom: -10px; /* 線の位置 */
  content: "";
  height: 3px; /* 線の高さ */
  left: 0%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(0%); /* 線の中央寄せ */
  width: 60px; /* 線の長さ */
}
.seisakutyu{font-size: 1.6em;text-align: center;margin: 40% 0;}
.sec_ttl{font-size: 3em;text-align: center;line-height: 1.0;}
.sec_ttl span{font-size: 0.4em;display: block;font-weight: normal;line-height: 2em;}
	
.contact_left,.contact_right{width: 100%;float: none;}
/* パンくずリストcss *************************************************************** */
.breadcrumb {
	width: 98%;
	padding-left: 2%;}	
.breadcrumb li a {
  font-size: 1.0em;
}	
/* パンくずリストcss *************************************************************** */

.boxitem_02_business{width: 49%; margin-bottom: 1.4%;}
.business_menu h3{font-size: 0.84em;line-height: 1.2; padding: 1em 0 1em 0.6em;color: #000000;}
.boxitem_03_work{width: 49%;
    height: auto;
    display: block;
    margin-bottom: 1%;}
.work_menu {background-size: cover;background-position: center right;}
	.work_menu h3{font-size: 0.84em;line-height: 1.2; padding: 0.6em 0 0.6em 0.4em;color: #000000;}
}
