@charset "utf-8";
/* CSS Document */

	body {  font-family: "Noto Sans JP", sans-serif;
  margin: 0;
		counter-reset: number 0;   
		font-size: 18px;
}
h4 {
	font-size: 1.3rem;
}
/* ★ページトップ★ */
.pagetop {
    display: none;
    position: fixed;
    bottom: 15px;
    right: 15px;
}
.pagetop a {
	display: block;
	background-color: #0472ff;
	text-align: center;
	color: #fff;
	text-decoration: none;
	padding: 11px 16px;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}
.pagetop a:hover {
	color: #fff;
    background-color: #b2d1fb;
    text-decoration: none;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
/*--------------------- 画像半透明 ---------------------*/
a,input{transition : 0.5s;}
a:hover{
    opacity:0.7;
    -moz-opacity:0.9;
    filter:alpha(opacity = 50);
transition: 0.5s;
}

a.overwhite{
    background-color:#ffffff;
    display:block;
}

a.overwhite:hover{
    cursor:pointer;
    filter: alpha(opacity=60);        /* ie lt 8 */
    -ms-filter: "alpha(opacity=60)";  /* ie 8 */
    -moz-opacity:0.6;                 /* FF lt 1.5, Netscape */
    -khtml-opacity: 0.6;              /* Safari 1.x */
    opacity:0.6;
    zoom:1;
}
a,a:visited {
	color: inherit;
	text-decoration: none;
}

a:hover {
	color: inherit;
	text-decoration: none;
}
/*--------------------- ぱんくす---------------------*/
.Breadcrumb {
  padding: 0;
}
.Breadcrumb ol {
	display: flex;
	font-size: 1rem;
	padding-left: 1rem;
}
.Breadcrumb ol li[href]:hover {
  opacity: 0.5;
}
.Breadcrumb ol > * + * {
  margin-left: 0.5em;
}
.Breadcrumb ol > * + *::before {
  content: ">";
  margin-left: 0.75em;
  margin-right: 0.75em;
}
.Breadcrumb-ListGroup {
	list-style: none;
}
#header {
	position: relative;

}
/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#header.HeightMin {
	width: 100%;
	background: #FFF;
	z-index: 2;
	height: 80px;
	animation: DownAnime 0.5s forwards;
	position: fixed;
	transition: 0.5s;
}

@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-170px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}
/* ★menu★ */

.hamburger ol,
.hamburger ul {
    list-style: none;
    list-style-type: none;
}
.hamburger {
	display: flex;
	justify-content: space-between;
}
h1 {margin: 0;}
.hamburger .btn-gNav {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 10000;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
}

.hamburger .btn-gNav span {
    position: absolute;
    width: 100%;
    height: 4px;
    background: #ffffff;
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms;
}

.hamburger .btn-gNav span:nth-child(1) {
    top: 0;
}

.hamburger .btn-gNav span:nth-child(2) {
    top: 10px;
}

.hamburger .btn-gNav span:nth-child(3) {
    top: 20px;
}

.hamburger .btn-gNav.open span:nth-child(1) {
    background: #ffffff;
    top: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.hamburger .btn-gNav.open span:nth-child(2),
.hamburger .btn-gNav.open span:nth-child(3) {
    top: 6px;
    background: #ffffff;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.btn-gNav {   display: none;}
.gNav .gNav-menu {
    display: flex;
    justify-content: space-between;
	margin-top: 0;
	margin-bottom: 0.3rem;
}

.gNav .gNav-menu li {
    margin: 0 auto;
    padding: 0 0.8rem;
	position: relative;
}
.gNav-menu ul{
  visibility: hidden;
  opacity: 0;
	  transition: .1s;
}

.gNav-menu li:hover ul {
  visibility: visible;
  opacity: 1;
  transition: .3s;
	background: #FFF;
	width: 12rem;
	padding: 1rem;
}
.gNav .gNav-menu li li {
	padding: 1rem 0;
	text-align: center;
}
.gNav-menu ul {
	z-index: 100;
	position: absolute;
	top: 27px;
	left: 0;
	padding-left: 0;
}
.hd_box {
	display: flex;
	justify-content: center;
	align-items: center;
}
.gNav-menu span {
	display: block;
	text-align: center;
	color: #cacaca;
	font-size: 0.75rem;

}
@media screen and (max-width: 1280px) {
.btn-gNav { display: block; }
.gNav {
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.8);
        font-size: 16px;
        box-sizing: border-box;
        z-index: 1000;
        padding-top: 50px;
        transition: .3s;
    }

.gNav.open {right: 0;}
 .gNav .gNav-menu {
        padding: 0;
        width: 100%;
        height: 100%;
        display: block;
        flex-direction: column;

    }

.gNav .gNav-menu li {
	width: 100%;
    padding: 1rem 0rem 1rem 1rem;
	border-bottom: #525252 1px solid;
	background: #fffffff5;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #367bc6;
}
.gNav .gNav-menu li li,.gNav-menu span{text-align: left;}
}

.gNav + a {
	padding-left: 1rem;
}

/* ★★ */
.slide {
  position: relative;
  width: 100%;
  height: 850px;
  overflow: hidden;
}

.slide-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation: slider-1 24s linear infinite;
}

.slide-image:nth-child(1) {
  background-image: url(../images/main1.jpg);
  animation-delay: -2s;
}

.slide-image:nth-child(2) {
  background-image: url(../images/main2.jpg);
  animation-delay: 6s;
}

.slide-image:nth-child(3) {
  background-image: url(../images/main3.jpg);
  animation-delay: 14s;
}

@keyframes slider-1 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  4.16% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  41.66% {
    opacity: 0;
    transform: scale(1.2);
  }
  100% {
    opacity: 0;
  }
}
.img {
	position: absolute;
	top: 0;
	z-index: 1;
}

/* ★top★ */
.tp-sec {
	width: 100%;
	padding-top: 7rem;
	padding-bottom: 7rem;
		background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
		background-attachment: fixed;
}
.tp-rinen {background-image: url(../images/tp_rinen.jpg);color: #FFF;}
.tp-info {background-image: url(../images/tp_info.jpg);}
/* ★★.tp-buis {background: url(../images/tp-1_jigyo.jpg);}
.tp-buis:hover{background-image: url(../images/tp-1_jigyo_on.jpg);transition: 0.5s;} */

/* ★★.tp-sec.tp-rec {background-image: url(../images/tp-3_saiyou.jpg);} */
.tp-sec.tp-rec2 {
	background-image: url(../images/tp-4_saiyou.jpg);
	background-position: right;
	background-size: cover;
	background-attachment: inherit;
	position: relative;
}
.tp-sec img:hover{
  transform:scale(1.2,1.2);
  transition:1s all;
}


.top #main-contents {
	padding: 0;
}
.bg-zoom {
	color: #FFF;
  position: relative; 
  overflow: hidden;  
  background: #254DAA;  
}

.bg-zoom:after {
  position: absolute;  /* ★★ 子要素を固定*/
  content: "";  
  display: block; 
  width: 100%; 
  height: 100%;
  top: 0;
 background: url(../images/tp-1_jigyo.jpg);
  transition: all .8s ease;  
  background-size: cover;  
}
.tp-sec.ft-contact.bg-zoom {
	color: inherit;
}
.tp-comp.bg-zoom:after {background: url(../images/tp-2_kigyo.jpg);background-position: center;
  background-size: cover;}
.tp-carbon.bg-zoom:after {background: url(../images/tp-2_cabon.jpg);background-position: center;
  background-size: cover;}
.tp-rec.bg-zoom:after{background: url(../images/tp-3_saiyou.jpg);}
.ft-contact.bg-zoom:after {background: url(../images//ft-contact.jpg);background-position: bottom;color: #FFF;background-size: cover;
}
.ft-contact.bg-zoom:hover {color: #FFF;}

.bg-zoom:hover:after {
  opacity: .3; 
  transform: scale(1.05);
}

.bg-zoom .bg-zoom-content {
  z-index: 1; 
  position: absolute; 
  top: 50%; 
  left: 50%;
  transform: translate(-50%, -50%);
}

@mixin bgZoom($bgPath) {
  position: relative;
  overflow: hidden;
  background: #000;
  &:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: $bgPath no-repeat center center;
    transition: all .8s ease;
    background-size: cover;
  }
  &:hover:after {
    opacity: .3;
    transform: scale(1.05);
  }
  .bg-zoom-content {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
  }
} 
.con1 {
  @include bgZoom(url('../images/tp-3_saiyou.jpg'))
}
.con2 {
  @include bgZoom(url(https://picsum.photos/id/237/1350/900);)
}
.con3 {
  @include bgZoom(url(https://picsum.photos/1350/900?grayscale))
}

.tp_contena a:hover {opacity: 1;}
.tp-buis p, .tp-buis h2,.tp-rec p,.tp-rec h2 {
	text-align:center !important;
}

.comp-innner {width: 70%;	display: flex;
	justify-content: center;	/*flex専用*/}
.carbon-innner {
	width: 30%;
}
.comp-innner .inner-1180,.carbon-innner .inner-1180 {
	width: 70%;}
.top .section_box_flex {margin-top: 0;}

.tp-sec.ft-contact.bg-zoom:hover .smo {
	background: #345ebf;
	border: none;
}

/* ★フッター★ */
.ft-contact {color: #inherit;}

/* ★★ */
#copy {
	background-image: url(../images/ft-copy.jpg);
	text-align: right;
	padding: 1rem;
	font-size: 0.8rem;
	color: #FFF;
}
/* ★★ */

.tp-slide>span{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 150px;
  background: #fff;
  color: #3498db;
  font-size: 36px;
  font-weight: bold;
  
}
.tp-slide {
	overflow: hidden;
	aspect-ratio: 83 / 56;
}

.slick-slide{ margin: 0 1.5rem;}

/* arrow */
.slick-arrow{
  z-index: 2;
  top: 50%;
  margin-top: -10px;
  width: 20px;
  height: 20px;
}

.slick-prev {transform: rotate(-180deg);}
/* dots */
.slick-dots{
  bottom: -25px;
}
.slick-dots li,
.slick-dots li button,
.slick-dots li button::before{
  width: 12px;
  height: 12px;
}
.slick-dots li{
  margin: 0 7px;
}
.slick-dots li button{
  background-color: #fff;
  opacity: .8;
  border-radius: 100%;
}
.slick-dots li.slick-active button{
  opacity: .4;
}
.slick-dots li button::before{
  content: '';
}
.slick-slide img {
	display: block;
	width: 100%;
	height: auto;
}
.js-slick{

  display: flex;
  align-items: center;
  justify-content: center;
}.js-slick{

 width: 80%;
	margin: auto;}
.slick-slider {
	margin-bottom: 30px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.slick-arrow {
 width: 50px;
    height: 50px;
    background: #4677ec;
    border-radius: 50%;
    transition: all .3s ease;
    cursor: pointer;
}


.prev-arrow::before,
.next-arrow::before{
    position:absolute;
    width:10px;
    height:10px;

    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
    transform:rotate(45deg);
}.slick-arrow::before {
	content: '\f054';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus{   opacity:0.7;
    -moz-opacity:0.9;
    filter:alpha(opacity = 50);
	transform: 1s;
	color: transparent;
  outline: none;
    background: #4677ec;
}
/* ★見出し★ */
h2 {text-align: center;}

.tp-sec h2 span {
	display: block;
	font-size: 1.2rem;}
.tp-sec h2 span {
	display: block;
	font-size: 1.2rem;
	font-family: "Teko", sans-serif;
	font-weight: 100;
	letter-spacing: 0.12em;
}
/* ★理念★ */
.tp-rinen-box {
	width: 1180px;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	justify-content: space-evenly;
}.tp-rinen-box li {
	border: 0.5px solid #FFF;
	padding: 2rem 1.5rem;
	width: 30%;
	margin: 2rem;
	text-align: center;
	list-style: none;
	  position: relative;
}
.tp-rinen-box li span {
line-height: 1.9;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
.tp-sec.tp-rinen {
	padding: 7rem 0px;}
/* お知らせ★★ */
.inner-1180 {z-index: 1;
	width: 1180px;
	margin-right: auto;
	margin-left: auto;
	position: inherit;
}
.inner-1180 h2 {
	text-align: left;

}
.tp-info h2{color: #134378;}
.news-box dt span {
	display: block;
	display: inline-block;
	padding: 0.3rem 2rem;
	background: #4984ca;
	color: #fFF;
	font-size: 0.8rem;
	margin-right: 3rem;
}
.news-box dt {
	float: left;
	margin-right: 1rem;
	border-right: 1px solid black;
	padding-right: 1rem;
}
.news-box dd {
	margin-left: 80px;
	margin-bottom: 1.3rem;
}
.title-contena {
	background-image: url(../images/main2.jpg);
	height: 400px;
	width: 100%;
	position: relative;
}
.title-contena h2 {
	position: absolute;
	margin: auto;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #FFF;
	font-size: 2.3rem;
  font-weight: 500;
}

.title-contena h2 span {
	display: block;
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 1rem;
}
.title-contena h2 ::before {
	content: "\f015";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 0.3rem;

	
}#main-contents {
	width: 100%;line-height: 1.8;
	padding: 3rem 0 6rem 0;
}
.main-contents-inner {
	max-width: 1180px;
	margin-right: auto;
	margin-left: auto;
	width: 100%;
}
.main-contents-inner h3,nav h6 {
	background-color: aliceblue;
	padding: 1rem 1.5rem;
	color: #2a5173;
}
nav h6 {font-size: initial;}
.title-contena h2  {position: relative;
  padding-left: 35px;

}
.nob:before {
  counter-increment: number 1;      /* number カウンタの増加数をセット */
  content: counter(number) ". ";      /* 表示形式を指定 */
}
.main-contents-inner h4 {
font-weight: bold;
  border-bottom: 2px solid #4c9ac0;
  padding: 0.3em;
  margin-bottom: 0.3em;
}

.main-contents-inner h4:first-letter ,.main-contents-inner p:first-letter {
  font-size: 1.5em;color: #4c9ac0;}


section{margin-bottom: 4rem}

video {
	margin: auto;
	display: block;
	margin-top: 4rem;
}
.section_box {margin-top: 2rem;
}
.section_box_flex {
	display: flex;
	margin-top: 2rem;
}
.section_box_flex > p {
	padding-right: 2rem;
	width: 60%;
}
.section_box_flex div img {
	max-width: 400px;
	height: auto;
}.section_box_flex > div {
	width: 40%;
text-align: center;
}.read {
	position: relative;
	margin: 1em 0 2em 0;
	border: solid 3px #4c9ac0;
	border-radius: 8px;
	text-align: center;
	padding: 2rem;
}
.read .box-title {
	position: absolute;
	display: inline-block;
	top: -23px;
	left: 50%;
	padding: 0 9px;
	line-height: 1;
	font-size: 2rem;
	background: #FFF;
	color: #4c9ac0;
	font-weight: bold;
}
.read p {
    margin: 0; 
    padding: 0;
}
.font-red {
	color: #ec4343 !important;
}.kiki .bg_waku {
	font-weight: bold;
	text-align: center;
	background: #f8931f;
	color: #FFF;
	width: ;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 1.5rem;
}
/* ★★ */
.top .title-contena,.top .Breadcrumb {display: none;}
.top .main-contents-inner {
	width: 100%;
	max-width: 100%;
}
/* ★★ */.section_box_clear-img {
	clear: both;
}
.sectionbox-100-p {
	text-align: center;
	width: 100%;
	margin-top: 2rem;
	margin-bottom: 2rem;
}
.sexcion-dl dt {
	color: #2167A4;
	font-weight: bold;
}
.sexcion-dl dd {
	padding-bottom: 0.5rem;
}


.table_info {
	width: 80%;
	margin: auto;
	border: 1px solid #f4f4f4;
	border-collapse:collapse
}
.table_info td:nth-child(2n+1) {
	padding: 0.5rem 1.7rem;
	background: #7caad2;
	width: 40%;
	color: #FFF;
	font-weight: bold;
}
.table_info td:nth-child(2n) {
	padding: 0.5rem 1.7rem;
	width: 60%;
}
.table_info p {
	margin: 0;
}
.table_info p:first-letter,p.p_b_waku:first-letter,p .font-red:first-letter,p.none:first-letter,h4.none:first-letter{
	font-size:inherit; 
	color: inherit;
}

.table_info tr{border-bottom:1px #eee solid;}
.section_box.box-gley {
	background: #f2f2f2;
}.section_box.box-gley h4 {
	border-bottom: 1px Solid #888;
	text-align: center;
	padding-top: 2rem;
}.box-gley-inner {
	padding: 3.5rem;
}
.column_3 {overflow-wrap: break-word;
	margin-bottom: 2rem;
word-wrap: break-word;
	  display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: left;
	 flex-wrap: wrap;
}.column_3 .box {
	width: 33%;min-width: 0;
	margin: auto 2rem;
}.column_3 .box img {
	width: 100%;
	height: auto;margin-bottom: 0.5rem;
}

.column_3::after {
	width: 400px;
	display: block;
	content: "";
}
.column_3.column2 .box {
	width: 49%;min-width: 0;
	margin: auto 2rem;
}
h5 {
	margin: 0;
	font-size: inherit;
}
.column_3 .box p {
	margin-top: 0;
	line-height: inherit;
}
.column_3 > div {
	width: calc((100% - 6rem) / 3);
	margin-right: 3rem;
	font-size: 1rem;
}
.column_3 > div:nth-of-type(3n) {
	margin-right: 0;
}
.column_2 > div {
	width: calc((100% - 3rem) / 2);
	margin-right: 3rem;
}
.column_3.pr_gas.column_2 > :nth-of-type(2n) {
	margin-right: 0;
}
.column_3.pr_gas.column_2 > :nth-of-type(3n) {
	margin-right:auto;
}



.column_3 div video {width: 100%;}
.column_3.c_audio p {
	margin-top: 0;
}
.column_3 div a img {
	width: 100%;
	height: auto;
}
.column_3 h5::before {
	content: "\f0da";
	font-family: "Font Awesome 5 Free";
	margin-right: 0.3rem;
	color: #2d88b5;
}
.cm_link p,.gaiyou p {
	margin-top: auto;
	line-height: normal;
	font-size: 0.8rem;
}
.column_3.cm_link {
	margin-bottom: 0;
}
.column_3.cm_link > div {
	margin-top: 0.6rem;
	margin-bottom: 0.6rem;
}
.hanbai-jigyo td {
	border: 0.5px solid #c4c4c4;
	padding: 0.5rem;
	border-collapse: collapse;
}
.hanbai-jigyo table {
	border-collapse: collapse;
	width: 100%;
}.hanbai-jigyo {
	margin: auto;
	width: 70%;
}.column_3.gaiyou {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 3rem;
}
/* ★コンタクトフォーム★ */
.formTable th span {
	background: #f27b7b;
	color: #FFF;
	padding: 0.1rem 0.8rem;
	font-size: 0.8rem;
	border-radius: 0.4rem;
	margin-left: 0.8rem;
	
}#formWrap {
	width:100%;
	margin:0 auto;
	line-height:120%;
	font-size:90%;
}
table.formTable,.section-tb{
	width:90%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th,.section-tb td{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}
	input.submitBtn:disabled{
	background-color: #aaa;
	cursor:not-allowed;
}
input[type="text"], textarea {
  width:100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#submit, #reset {
	width: 100%;
	font-family: inherit;
	padding: 1rem 0;
	border: none;
	background: #3f719b;
	color: #FFF;
	font-weight: bold;
	margin-bottom: 0.5rem;
	border-style: solid;
	transition: 0.5s;
	font-size: inherit;
}
#reset {background: #a8a8a8;}
#submit:hover,#reset:hover {
	transition: 0.5s;
	opacity: 0.7;
	-moz-opacity: 0.9;
	filter: alpha(opacity = 50);
}
/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:960px) {
#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
input[type="text"], textarea {
	width:80%;
	padding:5px;
	font-size:110%;
	display:block;
}
input[type="submit"], input[type="reset"], input[type="button"] {
	display:block;
	width:100%;
	height:auto;
}

}

.section-tb tr:nth-child(odd){
  background-color:#f9fbff;
}
	.section-tb .bag-b{
  background-color:#d5e3ff;
}
.p_b_waku {
	padding: 0.5rem;
	border: 1px solid #539ec2;
	color: #539ec2;
	font-weight: bold;
}


.pol_box {
border: 1px solid #97aec1;
  padding: 1rem 2rem;
}
.sectionbox_center_photo {
	text-align: center;
	padding-bottom: 1rem;
}
.sectionbox_center_photo img {
	max-width: 100%;
	height: auto;
	width: 70%;
}
/* ★★ */
.column_3.border > div {
	border: 1px solid #4C9AC0;
	border-radius: 0.7rem;
	padding: 1rem 2rem;
	width: 33%;
	margin: 0.5rem;
}.column_3.border > div > h5 {
	color: #4c9ac0;
	font-size: 1.2rem;
}
.font_large {
	font-size: 1.5rem;
	font-weight: bold;
	color: #4c9ac0;
	margin-bottom: 1rem;
}a.btn_bl {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 70%;
	margin: auto;
	padding: 1rem 4rem;
	font-weight: bold;
	border: 2px solid #27acd9;
	color: #27acd9;
	border-radius: 100vh;
	transition: 0.5s;
}
a.btn_bl:hover {
	color: #fff;
	background: #27acd9;
}
/* ★そくとう★ */
.sokutou-ryoukin {
	background: #55b0ff;
	padding: 20px;
	font-size: 1.3rem;
	font-weight: bold;
	color: #FFF;
	width: 95%;
	margin: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}.big {
	font-size: 2.5rem;
	font-weight: bold;
	color: #fff11f;
}.sokutou-ryoukin p {
	background: #FFF;
	color: #2e74b1;
	padding: 10px 20px;
	text-align: left;
}
/* ★★ */
.li_none{
	list-style: none;
}
.bg_waku {
	background-color: #FFFCEB;
	padding: 1rem;
	width: 100%;
}
/* ★★ */
.ft-info {

    }
.ft-info h4 {
      display: flex;
      align-items: center; /* 垂直中心 */
      justify-content: left; /* 水平中心 */
	margin-top: 0;
    }
.ft-info h4::before {
	border-top: 1px solid #1e7dc1;
	content: "";
	width: 4em;
}
.ft-info h4:before {
      margin-right: 1em; /* 文字の右隣 */
    }
.ft_4box {
	width: 400px;
	padding-left: 5rem;
}
.ft-info .inner-1180 {
	max-width: 1500px;
}
.ft-info section {
display: flex;
	margin-bottom: 0;
}
a.btn_ft {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 100%;
	margin: auto;
	padding:1rem 1rem;
	font-weight: bold;
	background: linear-gradient(to top, rgb(5, 130, 174), #27acd9);
	color: #fff;
	
	-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	transition: 0.5s;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 0.8rem;
	border-radius: 0.7rem;
}
a.btn_ft:hover {
	color: #fff;
	opacity: 0.5;
}
.btn_ft.ate{background: #de765b}
.btn_ft.ate .fa-solid.fa-triangle-exclamation {
	margin-right: 0.4rem;
	color: #ffd570;
}
.ft-info {padding: 2rem 0;}
.ft_po {
	text-align: right;
	color: #515151;
	margin-top: 0.5rem;
}
.p_tel {
	font-size: 3rem;
	font-weight: 800;
}
.column_3.pr_gas > div {
	border: 1px solid #e3e3e3;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 1rem;
	margin-bottom: 2rem;
	border-radius: 0.5rem;
}
.column_3.pr_gas > div h4 {
	margin-top: 0;
	  padding-top: 0;
}

.column_3.pr_gas div{
  display: block;
  overflow: hidden;
}
.gas_img {
	width: 100%;
	aspect-ratio: 16 / 9;
	transition: transform 0.4s;
	overflow: hidden;
	display: block;
}
.column_3.pr_gas img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  transition: transform 0.4s;
}

.column_3.pr_gas > div :hover > img {
  transform: scale(1.15);
}

.slide_menu {
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;
	background-image: url(../images/tp_slide_quick.png);
	background-repeat: no-repeat;
	background-position: left;
	position: absolute;
	bottom: 0;
	background: rgba(38, 51, 83, 0.8);
	color: #FFF;
}
.slide_menu .inner-1180 {
	position: initial;
	display: flex;
	width: 1300px;
	margin-bottom: 0.5rem;
}
.slide_menu a {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	padding: 0.5rem 1rem;
	font-weight: bold;
	border: 0.5px solid #fff;
	transition: 0.5s;
	font-size: 0.8rem;
	color: #FFF;
	width: calc(100% - 2rem / 6);
	margin-right: 2rem;
}
.slide_menu a:hover {
	color: #fff;
	background: #27acd9;
}
.slide_menu a:last-child {
	margin-right: 0;}
.kiki h4 + img {
	margin-top: 2rem;
}
/* ★実績★ */
.section_box.qa.qa_case a {
	display: block;
	width: calc((100% - 4rem) / 5);
margin-right: 0.8rem;
  margin-bottom: 2rem;
}
.case_box a {
	display: block;
	width: calc((100% - 4rem) / 5);
	margin-right: 0.8rem;
	margin-bottom: 2rem;
}
.qa_case nav > span {
	display: none;
}
.case_box{
	display: flex !important;
	  flex-wrap: wrap;
}
.section_box.qa.qa_case nav p {
	margin: 0;
}.case_box a p {
	margin: 0;}
.pagination {
	display: flex;
	align-items: center;
	padding-left: 0;
}
.pagination li {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 45px;
  height: 45px;
  background: #fff;
  border: solid 2px #111;
  font-size: 14px;
  color: #111;
  font-weight: bold;
  transition: all 0.15s linear;
}
.Pagination-Item-Link-Icon {
  width: 20px;
}
.pagination li.navi-active {
  background: #111;
  color: #fff;
  pointer-events: none;
}
.pagination li:not(.isActive):hover {
  background: #111;
  color: #fff;
}
.pagination li > * + * {
  margin-left: 12px;
}
.case_box span {	padding: 0.1rem 0.3rem;	font-size: 0.8rem;}
.katei_p span {
	border: solid 1px #438a2f;
	color: #438a2f;
}
.hou_p span {
	border: solid 1px #309eff;
	color: #309eff;
}
.ma_p span {
	border: solid 1px #f45c20;
	color: #f45c20;
}
.block{
    width: 100vw;
    margin-left: calc(50% - 50vw);
	margin-top: 0;
	margin-bottom: 0;

  }
.block > div {
	width: 50%;
	padding: 3rem;
}

.bl-p {
	display: block;
	height: 304px;
	background-image: url(../images/bus_gas.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.bl-p.bl-so{	background-image: url("../images/bus_soler.jpg");}
.bl-p.bl-re{	background-image: url("../images/bus_reform.jpg");}
.buis_section section {
	margin-top: 0;
}

.buis_section h3 {
	background: none;
	text-align: center;
	font-size: 2rem;
	padding: 0;
	margin-top: 0;
}

.block03{
  .block-ttl{
    width: 100vw;
    margin-right: calc(50% - 50vw);
  }
}  h1{
    text-align: center;
    font-size: clamp(20px,3.6vw,36px);
  }
  .block{
    margin-top:50px;
    .block-ttl{
      position:relative;
      z-index:-1;
      background: #bda5ff;
      color:#fff;
      padding: 40px 0;
      text-align:center;
      font-size: clamp(18px,2.6vw,26px);
    }
    .block-txt{
      text-align:center;
    }
  }
  .block02,.block03{
    display:flex;
    justify-content: space-between;
    align-items: center;
    .block-txt{
      min-width:40%;
      font-size:clamp(12px,1.6vw,16px);
    }

  .block03{
    flex-direction: row-reverse;
  }
}

.flex_2,.flexbox {
	display: flex;
	flex-wrap: wrap;
}
.flex_2 > div {
	width: calc(100% / 2 - 40px);
	margin: 20px;
}.flex_2 > div img {
width: 100%;
	height: auto;
	padding: 2rem;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	 object-fit: cover;
  aspect-ratio: 4 / 3;/* ここにアスペクト比を入れる */

}
.kiki .flex_2 > div img,.kiki .flex_2 > div img  {
width: 100%;
	height: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	 object-fit: cover;
	aspect-ratio: auto;
  padding: 1rem;
}
.flex_3 > div {
    /*コレ*/width: calc(100% / 3 - 20px);
    /*コレ追加*/margin: 10px;
}
.flex_4 > div {
    /*コレ*/width: calc(100% / 4 - 20px);
    /*コレ追加*/margin: 10px;
}
.flex_4 .btn_bl {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 0.5rem 0.5rem 0.8rem 0.5rem;
}
.flex_4 {
	display: flex;
	flex-wrap: wrap;
}
.flex_3 > div img{
width: 100%;
	height: auto;
}
.flexbox.flex_2.pd0 > div img {
	padding: 2rem 0 0 0;
}
.reform .btn_bl {
	padding: 0.5rem 4rem;
	margin-top: 2rem;
}
.kiki .flex_3 h5 {
	font-size: inherit;
	padding: 0.5rem 1rem;
	color: #494949;
background: #f9f9f9;
  border-left: solid 5px #7fb0c4;
}
.kiki .flex_3 p {
	font-size: 1rem;
}

.flexbox.flex_2 section {
	padding: 0;
	margin-bottom: 1rem;
	border-bottom: 1px dotted #6399c8;
}
.flexbox.flex_2 section p {
	margin-top: 0;

}
.flex_2 > div > section:first-child {
	padding-top: 1rem;
}
.flexbox.flex_2 section p::first-letter{font-size: inherit;
  color: inherit;}

.flexbox.flex_2 section h5 {
	padding: 0em 0.5em;
	color: #494949;
	background: transparent;
	border-left: solid 5px #7db4e6;
	margin-bottom: 0.5rem;
	font-size: 1.2rem;
}

.line2 {display: flex;}
.line2 .flexbox.flex_2 {width: 50%;}
.line2 .flex_2 > div {
	width: 100%;
	margin: 0 20px;
}
.kiki .sectionbox_center_photo img {
	width: 95%;
}
.kiki .flex_3 > div {
	width: calc(100% / 3 - 30px);
	margin: 20px 15px 15px 15px;
}

.cn_box {
	background-image: url(../images/cn_main.jpg);
	background-repeat: no-repeat;
	width: 99vw;
	margin: 0 calc(50% - 50vw);
	padding: 7rem 0;
	background-size: cover;
color: #FFF;
	text-align: center;
	margin-bottom: 4rem;
	  background-attachment: fixed;
}.cn_main_about h3 {
	background: none;
	color: inherit;
}
.sokutou-ryoukin.cn_keisan .none {
	 -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
text-align: center;}

.none.cn_ecoone {
	font-size: 3.8rem;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 1rem;
}
.none.cn_ecoone .smo {
	font-size: initial;
	width: 100%;
	display: block;
	margin-bottom: -0.8rem;
}
.flexbox.flex_2.free > div img {
	aspect-ratio: auto;
	padding: 1rem;
}.flex_2 .read .box-title {
left: 0;
	padding: 0 9px;
	font-size: 1.3rem;
	top: -12px;
}
.flex_2 .read {
	position: relative;
	margin: 2em 0 2em 0;
	border: solid 3px #4c9ac0;
	border-radius: 8px;
	text-align: left;
	padding: 1rem 2rem;
	font-size: 1rem;
}
.neutral h5,.nev_fontweit_2 {
	font-weight: inherit;
	color: #4c9ac0;
	font-size: 1.3rem;
}
.neutral h5:before,.nev_fontweit_2:before {
content:"\f0da";
	font-family: "Font Awesome 5 Free"; /*←ココ！！！！！！！*/
	font-weight: bold;
  margin-right: 0.5rem;
}.neutral .nav-open span ,.neutral .section_box.qa nav span{
	display: none;
}
.neutral .nav-open {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}.neutral .section_box.qa nav {width: 100%;
}
.p_inbr {
	display: inline-block;
	width: 49% !important;
}
.cn_keisan_box {
	display: flex;
	justify-content: center;
	align-items: center;
}
.cn_keisan_box p {
	margin-right: 1rem;
	border-radius: 0.8rem;
	line-height: normal;
}
.cn_keisan_box > span {
	font-weight: 900;
	margin-right: 1rem;
	font-size: 2rem;
}
.cn_keisan_box p span {color: #ffc519;}

.cn_keisan_box:last-of-type p {
	width: 100%;
	font-size: 2rem;
}
.big.font-red {font-size: 3rem;}

.tp-sec.tp-rec2.con3 {
	padding: 0.5rem 0;
}
.tp-sec.tp-rec2.con3 .slide_menu {
	background: none;
	top: 50%;
	position: inherit;
}

.tp-sec.ft-contact.bg-zoom .smo {
	font-size: 0.7rem;
	display: block;
	border: 1px solid black;
	padding: 0.5rem 1rem;
	margin-top: 0.5rem;
	background: rgba(255, 255, 255, 0.5);
	width: fit-content;
}
.ft-contact_box {
	display: flex;
	flex-wrap: wrap;
}
.ft-contact_box p {
	width: calc(100% / 3 - 1.5rem);
	margin-right: 1.5rem;
}.ft-contact_box_title {
	background: #4aa2ee;
	padding: 0.1rem 0.5rem;
	color: #FFF;
	display: block;
  width: fit-content;
}.smo24 {
	font-size: 0.8rem;
	display: block;
}
.slick-next {transform: translate(0);}
.nev_fontweit {
	font-weight: bold;
	border-bottom: 1px solid #4c9ac0;
	padding-bottom: 0.5rem;
	margin: 0 0 0.5rem 0;
}
a .fa-regular.fa-file-pdf {
	color: #FD3E3E;
}.neutral .section_box li::before {
	content: "\f06c";
	color: yellowgreen;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	margin-right: 0.5rem;
}
.neutral .section_box li{
list-style: none;
}

/* ★スマホ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 1280px) {
	body {font-size: 14px;}
.gNav + a {padding-right: 4rem;}
.tp-rinen-box, .inner-1180,.slide_menu .inner-1180 {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
#main-contents:not(.top #main-contents){ width: 90%;margin: auto;}
.hamburger .btn-gNav span {background: #71a7e1;}
.tp-sec {padding-top: 3rem;padding-bottom: 3rem;}
		.gNav-menu li:hover ul {
	visibility: none;
	opacity: 1;
	transition: .3s;
	background: inherit;
	width: 100%;
	padding: 1rem;
}

.toggle_switch { position: relative;cursor: pointer;}

.toggle_switch.open::after {
  transform: rotateZ(180deg);
  top: 46%;
}
.toggle_contents {display: none;transition: 0.5s;}
.gNav.open .gNav-menu ul {
	position: inherit;
	top: auto;
	left: auto;
}
.toggle_switch.open .toggle_contents {display: block;}
.toggle_contents {background: none !important;
padding-bottom: 0 !important;
}

.toggle_contents li.toggle_switch {
background: none;
border-top: 1px solid #525252;
border-bottom: none;
}
	.gNav .gNav-menu li.toggle_switch.open {padding-bottom: 0;}
	.gNav .gNav-menu li li a i{padding-right: 0.2rem;}
	.slick-next.slick-arrow {transform: inherit;}
	.tp-sec.tp-rec2.con3 {display: none;}
	.p_tel {font-size: 2rem;}
}

/* ★スマホ★ */
@media screen and (max-width: 960px) {body {font-size: 13px;}
	.slide_menu,.tp-rinen-box li br,.ft-info section .column_3,.gNav + a {display: none;}
.section_box_flex,.ft-info section {display: block;margin-top: 1rem;}
	.section_box_flex > div,.comp-innner,.block > div,.table_info,.hanbai-jigyo,.column_3.gaiyou,.column_3.c_audio > div,iframe,audio {width: 100%;}
	.hamburger .btn-gNav {margin: 0;}
.column_3 > div {width: calc((100% - 2rem) / 3);margin-right: 1rem;}
#main-contents:not(.top #main-contents) {padding: 1rem 0 1rem 0;}
.tp-rinen-box {display: block;padding-left: 0;}
.tp-rinen-box li {width: 100%;margin: inherit; -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;}
.news-box dt {float: none;}
.news-box dd {margin-left: 0;}
.news-box dt span {margin-right: 1rem;padding: 0.1rem 1rem;}
.ft_4box {width: 100%;padding-left: 0;}

.block02, .block03{flex-wrap: wrap-reverse;}
	.block.block02 .bl-p {order: 2;}
	.bl-p {max-height: 6rem;}
.title-contena {max-height: 12rem;}
h1 {max-width: 180px;}
	h1 img {width: 100%;height: auto;}
	.hamburger .btn-gNav {	top: 10px;}
	#header.HeightMin {height: auto;}
.column_3.pr_gas > div{width: calc((100% - 1rem) / 2);margin-bottom: 1rem;padding: 0.9rem 1rem;}
	.gas_img {margin-bottom: 0;}
	.column_3.pr_gas > div:nth-of-type(2n),.column_3.cm_link > div:nth-of-type(2n) {margin-right: 0;}
.column_3.pr_gas > div:nth-of-type(2n+1) ,.column_3.cm_link > div:nth-of-type(2n+1){margin-right: 1rem;}
.column_3.pr_gas > div h4 {line-height: normal;}
.column_3.pr_gas img,.gas_img {aspect-ratio: 4 / 3;object-fit: contain;}
.main-contents-inner h4::first-letter, .main-contents-inner p::first-letter {font-size:;}	
	.section_box_flex > p {
	padding-right: 0;
	width: 100%;}
	.section_box_flex > div img {max-width: 100%;height: auto;}
.sectionbox-100-p img {max-width: 100%;height: auto;}
a.btn_bl {
	transition: 0.5s;
	padding: 0.5rem 2rem;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;}
	
.sectionbox_center_photo img {max-width: 100%;height: auto;width: 90%;}
.Breadcrumb ol {font-size: 0.6rem;flex-wrap: wrap;}
	.section_box > img {
	max-width: 100%;
	height: auto;}
	.title-contena h2 {padding-left: 0;font-size: 1.5rem;}
	.slide {height: 15rem;}
	.tp-sec.tp-rinen {padding: 4rem 0px;}
	.news-box dt {border-right: none;}
	.section_box {margin-top: 1rem;}
	.box-gley-inner {padding: 1.5rem;}
	.column_3.cm_link > div {width: calc((100% - 1rem) / 1);}
	.column_3.cm_link > div h5 {line-height: 120%;margin-bottom: 0.3rem;}
	.column_3 > div {font-size: inherit;}
	.table_info td {display: block;}
	.table_info td:nth-child(2n+1),.table_info td:nth-child(2n) {
	padding: 0.5rem 1rem;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
	.main-contents-inner h3 {padding: 0.6rem 1rem;color: #2a5173;}
	.ft_rogo img {width: 80%;}
	.p_tel {font-size: 2rem;}
	.flex_2 > div,.flex_3 > div,.kiki .flex_3 > div,.line2 .flexbox.flex_2,.line2 .flex_2 > div {
	width: 100%;margin: auto;}
.line2 {display:block;}
	.cn_keisan_box {
	display: block;
	text-align: center;
}.sokutou-ryoukin.cn_keisan .none {
	margin-bottom: 0.5rem;
	margin-top: 0.5rem;}
	.cn_main_about {width: 90%;margin: auto;}
	.main-contents-inner .cn_main_about h3 {color: #FFF;}
.flex_4 > div {
	width: calc(100% / 2 - 7px);
	margin: 0 0.8rem 0.8rem 0;
}
	.flex_4 > div:nth-child(2n) {
	margin-right: 0;margin-left: 0;
}
	.main-contents-inner h4 {
	line-height: normal;
	font-size: 1.3rem;
}
	.main-contents-inner .column_3.pr_gas h4 {font-size: 1rem;}
	.main-contents-inner .column_3.pr_gas h4::first-letter {
	font-size: inherit;
}
	.slick-next.slick-arrow {transform: inherit;}
	.slick-arrow {width: 40px;height: 40px;}
	.slick-slide {
	margin: 0 0.5rem;
}
	.tp-sec {
	padding-top: 2rem;
	padding-bottom: 1rem;
}
.ft-contact_box p {width: 100%;margin-bottom: 0;margin-top: 0.5rem;}
	.ft-contact_box_title {margin-right: 0.5rem;}
	.tp-sec.ft-contact.bg-zoom {padding-bottom: 3rem;}
}


