@charset "UTF-8";
@import url('https://fonts.cdnfonts.com/css/barlow');
.contents_inner {
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}
/* ページヘッダーのCSS */
#page_header,#page_header_news{position: relative;margin-top: 140px;width: 100%;
    aspect-ratio: 21.2 / 6.8;background-repeat: no-repeat;background-position: top center; background-size: cover;}
.containar_header{width: 1100px;margin: 0 auto;}
#page_header .header_ttl,#page_header_news .header_ttl{text-align: left; position: absolute;top: 40%;}
#page_header .header_ttl span,#page_header_news .header_ttl span{font-size: 1.2em;color: #ffffff;}
#page_header .header_ttl img,#page_header_news .header_ttl img{height: 50px;}

/* section_01の見出しコンテンツCSS */
.heading-block {
  text-align: left;
  padding: 0px 0px 50px;
  color: #3c3a3a;
}
/* 大見出し */
.main-title {
  font-size: 2.2em;
  font-weight: bold;
	margin: 0 0 30px;
  letter-spacing: 0.05em;
  line-height: 1.2;
	border-left: solid 6px #004d84;
	padding-left: 0.4em;
}
/* サブ見出し */
.sub-title {
  font-size: 1.2em;
  margin: 0;
  letter-spacing: 0.05em;
  line-height: 1.4;
}
.flexbox_page{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content:space-between;
  	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;}
/* -----------------------------
   レスポンシブ対応
----------------------------- */
@media screen and (max-width: 768px) {
.heading-block {
  text-align: left;
  padding: 0px 0px 1em;
  color: #3c3a3a;
}
  .sub-title {
    font-size: 0.85rem;
    letter-spacing: 0.2em;
  }
  .main-title {
    font-size: 1.6rem;
    white-space: normal; /* スマホでは折り返す */
	  margin: 0 0 0.4em;
	  line-height: 1.4;
	  border-left: solid 4px #004d84;
  }
  .divider {
    height: 40px;
  }
}

@media screen and (max-width: 480px) {
  .sub-title {
    font-size: 0.85rem;
  }
  .main-title {
    font-size: 1.4rem;
  }
  .divider {
    height: 30px;
  }
}
.page_sub-title {
  font-size: 1.2em;
  margin: 0 0 1em;
  letter-spacing: 0.05em;
  line-height: 1.4;
}
.page_main-title {
  font-size: 1.8em;
  font-weight: bold;
	margin: 1em 0 30px;
  letter-spacing: 0.05em;
  line-height: 1.2;
	border-left: solid 6px #004d84;
	padding-left: 0.4em;
  }
.page_main-title span{font-size: 0.7em;}
.blue_box_title{background-color: #004d84;padding: 1% 0 1% 2%;color: #ffffff;font-size: 1.8em;margin-bottom: 1em;}
/* -----------------------------
   投稿CSS
----------------------------- */
.page_title_h2{font-size: 1.8em;border-bottom: solid 1px #000000;margin-bottom: 1.4em;}
.post_img{margin-bottom: 2em;}
.post_p{line-height: 1.8em;margin-bottom: 2em;}

.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;}
.w90per{width: 90%;margin: 0 auto;}
.white{color:#ffffff;}
.shadow{filter: drop-shadow(4px 4px 5px  rgba(0, 0, 0, 0.32));}
.bold{font-weight: bold;}
.center_btn{display: block; width: 50%;margin: 0 auto;}
.center{text-align: center;}
/* パンくずリストcss *************************************************************** */

.bg_breadcrumb{position: relative; margin-top: -40px;z-index: 100;}
.breadcrumb {
	width: 1000px;
	margin: 0 auto;
	text-align: left;
 padding: 0.2em 0em 0.2em;
  list-style: none;
  overflow: hidden;
  
}

.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 *************************************************************** */

/* ====== ページネーションCSS ====== */
.border_top{border-top: solid 1px #000000;}
nav.pagination{display: block;}
.pagination .page-numbers {
  color: #264d82;
  font-size: 13px;
  text-align: center;
  text-decoration: none;
  line-height: 1.2rem;
  position: relative;
  display: inline-block;
  border: solid 1px #264d82;
  padding: 6px 11px 5px;
  margin: 2em 6px 5em;
}

.pagination .current {
  color: #fff;
  background-color: #264d82;
}

.pagination .dots {
  border: none;
  margin: 0 3px;
}

.pagination .prev {
  position: relative;
  padding-left: 23px;
}

.pagination .prev::after {
  display: block;
  content: '';
  width: 5px;
  height: 5px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  transform: rotate(225deg);
  margin: auto;
}

.pagination .next {
  position: relative;
  padding-right: 23px;
}

.pagination .next::after {
  display: block;
  content: '';
  width: 5px;
  height: 5px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  transform: rotate(45deg);
  margin: auto;
}

.pagination a:hover {
  color: #fff;
  background-color: #333;
  transition: .3s;
}

.pagination .prev:hover::after,
.pagination .next:hover::after {
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}
.page_f-left{float: left;}
.page_f-right{float: right;}
.page_navi{margin: 5em 0 3em;}
.page_navi_lr{font-size: 1.0em;}
.more_btn{width: 40%;display: block;margin: 2em auto;}

.section_page_contact{width: 100%;background-image: url("../img/page_contact_bg_pc.webp");
   background-repeat: no-repeat;background-position: top center; background-size: cover;padding: 5em 0; }
.contact_white_box{width: 1000px;margin: 0 auto;padding: 5em;background-color: #ffffff;box-sizing: border-box;}
.page_contact_ttl{text-align: center;}
.page_contact_ttl span{display: block;font-size: 1.2em;margin: 0.4em 0 1em;}
.page_contact_ttl img{height:40px;}

.product_lead{font-size: 1.2em;line-height: 1.7em;margin-bottom: 2em}
/*
===================================================
 tb タブレット解像度
===================================================
*/
@media screen and (max-width:1000px) {
.spnone{display: block;}
.sponly{display: none;}
.contact_white_box{width: 90%;margin: 0 auto;padding: 3em;background-color: #ffffff;box-sizing: border-box;}
}
/*
===================================================
 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;}
	
.center_btn{display: block; width: 80%;margin: 0 auto;}

.section_01{padding-top: 3em;}
/* ページヘッダーのCSS */
#page_header,#page_header_news{position: relative;width: 100%;margin-top: 55px;
    aspect-ratio: 16.7 / 6.9;background-repeat: no-repeat;background-position: top center; background-size: cover;}
.containar_header{width: 100%;margin: 0 auto;}
#page_header .header_ttl,#page_header_news .header_ttl{text-align: left; position: absolute;top: 40%;padding-left: 1em;}
#page_header .header_ttl span,#page_header_news .header_ttl span{font-size: 0.8em;color: #ffffff;}
#page_header .header_ttl img,#page_header_news .header_ttl img{height: 20px;}
	
	

	
	

/* パンくずリストcss *************************************************************** */
.bg_breadcrumb{position: relative; margin-top: 0px;z-index: 100;}
.breadcrumb {
	width: 98%;
	padding-left: 2%;}	
.breadcrumb li a {
  font-size: 0.84em;
}	
/* パンくずリストcss *************************************************************** */
.page_navi{margin: 2em 0 0em;}
.more_btn{width: 80%;display: block;margin: 0em auto;}
	
.section_page_contact{width: 100%;background-image: url("../img/page_contact_bg_pc.webp");
   background-repeat: no-repeat;background-position: top center; background-size: cover;padding: 2em 0; }
.contact_white_box{width: 90%;margin: 0 auto;padding: 2em;background-color: #ffffff;box-sizing: border-box;}
.page_contact_ttl{text-align: center;}
.page_contact_ttl span{display: block;font-size: 1.1em;margin: 0.2em 0 1em;}
.page_contact_ttl img{height:30px;}
	
.page_sub-title {
  font-size: 1.0em;
  margin: 0 0 0.6em;
  letter-spacing: 0.05em;
  line-height: 1.4;
}
.page_main-title {
  font-size: 1.2em;
  font-weight: bold;
	margin: 1.6em 0 1em;
  letter-spacing: 0.05em;
  line-height: 1.2;
	border-left: solid 6px #004d84;
	padding-left: 0.4em;
  }
.blue_box_title{background-color: #004d84;padding: 1% 0 1% 2%;color: #ffffff;font-size: 1.4em;margin-bottom: 0.6em;}
	
.flexbox_page{display: none;}
.product_lead{font-size: 1.04em;line-height: 1.5em;}
}
