@charset "utf-8";
/* ===========================================================
 *
 * シミズプレス スタイルシート
 * Last UpDate : 2025/11/11
 *
=========================================================== */

/* ----------------------------------------------------------
	style.css
---------------------------------------------------------- */

/* ----------------------------------------------------------
 common
---------------------------------------------------------- */

html{  }
body {
color: #333;
font-family: source-han-sans-japanese,"游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
font-weight: 400;
font-style: normal;
letter-spacing: 1.2px;
}
/*
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .h2Wrap{ line-height: 1.7 !important; }

}
*/

.s08{ font-size: 1.4rem; }

a.anker{ display: block; padding-top: 100px; margin-top: -100px; }

:root{
	--main-color: #0068b7;
	--vision-color: #2683c6;
	--mission-color: #28c4cc;
	--value-color: #42ba97;
	--mind-color: #3e8853;
}


/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
a:link		{ color: #333; text-decoration: none; }
a:visited	{ color: #333; text-decoration: none; }
a:hover		{ color: #0068b7; text-decoration: none; }
a:active	{ color: #0068b7; text-decoration: none; }

a { -ms-filter: "alpha( opacity=60 )"; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; -o-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ width: 1290px; margin: 0 auto; background: #fff; position: fixed; top: 0; right: 0; left: 0; z-index: 3; }
#header{ display: flex; justify-content: space-between; }
.headerLogo{ flex-basis: 320px; background: #0068b7; text-align: center; }
.headerLogo a{ display: block; background: #0068b7; text-align: center; height: 80px; line-height: 50px; }
.headerLogo a:hover{ opacity: 0.6; }
.headerLogo img{ width: 70%; height: auto; margin: 0 auto; }
.gNavi{ flex-basis: 640px; }
.gNavi > nav{ }
.gNavi > nav > ul{ display: flex; }
.gNavi > nav > ul > li{ flex: 1 0 auto; text-align: center; }
.gNavi > nav > ul > li > a{ display: block; padding: 0 10px; font-size: 1.6rem; font-weight: 700; min-height: 80px; line-height: 80px; }

.headerTel{ flex-basis: 250px; background: #27367e; color: #fff; font-size: 2.8rem; text-align: center; padding-top: 5px; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; }
.headerTel i{ font-size: 1.8rem; margin-right: 5px; }
.headerTel span{ display: block; font-size: 1.2rem; font-family: source-han-sans-japanese, sans-serif; font-weight: 300; font-style: normal; }
.headerContact{ flex-basis: 80px;  text-align: center;  }
.headerContact a{ display: block; color: #fff; background: #222; height: 80px; }
.headerContact a:hover{ color: #222; background: #f1f1f1; }
.headerContact i{ font-size: 3rem; line-height: 80px; }


.mega-menu{  }
.mega-menu > li{  }
.mega-menu > li > a{ }

.mega-menu li:hover > a,
.mega-menu li > a.current{ background: #ddd; }

.current .gNavi01Tit,
.current i{ color: #fff !important; }

/********
メガメニュー
**********/
.mega-menu {
     margin: 0 auto;
     padding: 0 !important;
     position: relative;
}
 
.mega-menu > li {}

 
/***********
 ドロップダウン
************/
.drop {
	display: none;/*ドロップメニューは、デフォルトでは見えないようにする(重要①)*/
	position: absolute; /*ドロップダウンメニューはabsoluteにする(重要②) */
	width: 640px; /*メガメニューの幅と合わせる*/
	left:  0;
	background: #ddd;
}
.drop ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.drop li{ text-align: left; flex-basis: 50%; } 
.drop li a{ display: block; padding: 10px; font-size: 1.5rem; height: auto; min-height: auto; }
.drop li a i{ font-size: 1rem; margin-right: 10px; }
.drop li a:hover{ background: #aaa; color: #fff; }




/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
.footerSns{ margin-bottom: 80px; }
.footerSns > ul{ display: flex; justify-content: center; }
.footerSns > ul > li{ margin: 0 20px; flex-basis: 360px; text-align: center; }
.footerSns > ul > li a{ display: flex; align-items: center; color: #fff; font-size: 2rem; font-weight: 700; padding: 20px; line-height: 1.3; letter-spacing: 1px; }
.footerSns > ul > li a i{ flex-basis: 15%; font-size: 4rem; text-align: right; }
.footerSnsTit{ flex-basis: 80%; }
.footerSns > ul > li a span{ font-size: 1.5rem; }
.facebook{ background: #375794; border: 2px solid #375794; }
.facebook a:hover{ color: #375794; background: #fff; }
.youtube{ background: #f8031b; border: 2px solid #f8031b; }
.youtube a:hover{ color: #f8031b; background: #fff; }

.cofacebook{ color: #375794; }
.coYoutube{ color: #f8031b; }
.bgfacebook{ background: #375794; }
.bgYoutube{ background: #f8031b; }

.footerContact{ background: #f6f8fb; padding: 60px 0; }
.footerContact01{ width: 900px; margin: 0 auto; }
.footerContact01Tit{ color: #333; font-size: 3.5rem; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 30px; }
.footerContact01Tit span{ display: block; font-size: 2rem; color: #0067b7; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.footerContact01 ul{ display: flex; }
.footerContact01 ul > li{ flex-basis: 50%; padding: 30px; }
.footerContact01 ul > li:first-child{ border-right: 1px solid #666; }
.footerContact02{ display: flex; justify-content: space-between; align-items: center; }
.footerContact02Ico{ flex-basis: 15%;  }
.footerContact02Ico i{ display: block; font-size: 2.5rem; text-align: center; color: #fff; line-height: 50px; width: 50px; height: 50px; border-radius: 100%; background: #0068b7; }
.footerContact02Tel{ flex-basis: 80%; font-size: 4.3rem; color: #27367e; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; letter-spacing: 1px; text-align: right; }
.footerContact02Tel span{ display: block; font-size: 1.5rem; color: #333; font-family: source-han-sans-japanese, sans-serif; font-weight: 300; font-style: normal; text-align: right; }
.footerContact02Btn{ }
.footerContact02Btn a{ display: block; color: #fff; font-size: 2rem; text-align: center; padding: 25px 20px; background: linear-gradient(135deg, rgba(0,104,183,1) 37%,rgba(39,54,126,1) 59%,rgba(39,54,126,1) 100%); font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.footerContact02Btn a i{ margin-right: 15px; font-size: 2.5rem; vertical-align: middle; }
.footerContact02Btn a:hover{ opacity: 0.6; }


footer{ background: #27367e; padding: 40px 0 20px 0; }
#footer{ width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; margin-bottom: 50px; }
.footerLogo{ flex-basis: 15%; }
.footerAdd{ flex-basis: 25%; color: #fff; font-size: 1.4rem; }
.footerNav{ flex-basis: 45%; }
.footerNav nav{}
.footerNav nav > ul{ display: flex; }
.footerNav nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; }
.footerNav nav > ul > li:before{
content:''; 
display:block; 
position:absolute; 
box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
top: 12px;
left: 0px;
height: 0;
width: 0;
border-top: 4px solid transparent;
border-right: 3px solid transparent;
border-bottom: 4px solid transparent;
border-left: 7px solid #fff; 
}
.footerNav nav > ul > li a i{ margin-left: 10px; }
.footerNav nav > ul > li a{ color: #fff; font-size: 1.4rem; }
.footerNav nav > ul > li a:hover{ opacity: 0.6; }
.footerCopyright{ color: rgba(255,255,255,0.5); font-size: 1rem; text-align: center; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ padding: 140px 0 40px 0; }
.h1Tit{ color: #fff; font-size: 2.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }

h1{ width: 1200px; margin: 0 auto; color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }
h1 span{ display: block; color: #fff; font-size: 2rem; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
h1 span:before{ content: "―"; letter-spacing: -.2em; width: 2em; margin-right: .5em; }
.h1Business{ background: url("../business/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1BusinessPress{ background: url("../business/press/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1BusinessMold{ background: url("../business/mold/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1BusinessSwaging{ background: url("../business/swaging/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1BusinessWeld{ background: url("../business/weld/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Equipment{ background: url("../facilities/equipment/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Factory{ background: url("../facilities/factory/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1ProductsPress{ background: url("../products/press/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1ProductsSwaging{ background: url("../products/swaging/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1ProductsMetal{ background: url("../products/metal/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1ProductsOriginal{ background: url("../products/original/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Company{ background: url("../company/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Philosophy{ background: url("../company/philosophy/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Staff{ background: url("../company/staff/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Advantage{ background: url("../company/advantage/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Pressrelease{ background: url("../images/h1_pressrelease01.jpg") no-repeat top center; background-size: cover; }
.h1News{ background: url("../images/h1_news01.jpg") no-repeat top center; background-size: cover; }
.h1Otoiawase{ background: url("../otoiawase/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Sitemap{ background: url("../sitemap/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Shearsurface{ background: url("../technology/shearsurface/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Taperpipe{ background: url("../technology/taperpipe/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Titaniumpipe{ background: url("../technology/titaniumpipe/images/h1.jpg") no-repeat top center; background-size: cover; }
.h1Resin{ background: url("../technology/resin/images/h1.jpg") no-repeat top center; background-size: cover; }


h2{ position: relative; color: #26357e; font-size: 4rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; text-align: center; margin-bottom: 60px; }
h2:before{ content: ""; position: absolute; bottom: -15px; width: 200px; height: 3px; left: 50%; transform: translateX(-50%); background-color: #0067b7; }
h2 span{ display: block; color: #0066b7; font-size: 2rem; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-bottom: 20px; }

h3{ font-size: 3rem; font-weight: 700; text-align: center; margin-bottom: 40px; }

.mt20{ margin-top: 20px; }
.mt40{ margin-top: 40px; }
.mt80{ margin-top: 80px; }

/* ぱんくず */
#breadcrumbs{ background: #f6f8fb; padding: 5px 0 10px 0; margin-bottom: 60px; }  
#breadcrumbs > ol{ width: 1200px; margin: 0 auto; } 
#breadcrumbs > ol > li{ display: inline-block; position: relative; }
#breadcrumbs > ol > li:before{ content: ">"; display: block; position: absolute; top: .4em; left: 4px; color: #999; font-size: 1.3rem; }
#breadcrumbs > ol > li:first-child:before{ content: ""; }
#breadcrumbs > ol > li a{ color: #999; font-size: 1.3rem; margin: 0 0 0 20px; }
#breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
#breadcrumbs > ol > li a:hover{ opacity: 0.6; }
/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ position: relative; height: 900px; }
.topImgTit{ position: absolute; left: 10%; bottom: 40%; color: #fff; font-size: 8.7rem; font-style: italic; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-feature-settings: "palt"; letter-spacing: 10px; }
.topImgTit:after{ content: "――"; letter-spacing: -.2em; width: 2em; margin-right: .5em; }
.topImgTit span{ font-size: 7rem; }
.topImgTxt{ position: absolute; left: 10%; bottom: 30%; font-size: 1.8rem; line-height: 2; color: #fff; letter-spacing: 2px; }



.topImgBnr{ position: absolute; bottom: 20px; right: 20px; }
.topImgBnr a:hover{ opacity: 0.6; }

.top_news_important{}
.top_news_important img{ width: 100%; height: auto; }
.top_news_important a:hover{ opacity: .6; }

.topBusiness{ 
	background: linear-gradient(to bottom, rgba(238,238,238,0) 0%,rgba(238,238,238,0) 85%,rgba(238,238,238,1) 85%) ,url("../images/bg_business01.jpg") no-repeat top center;
	background-size: cover;
	padding: 60px 0 0 0; }
.topTit{ color: #fff; font-size: 5rem; text-align: center; margin-bottom: 60px; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 5px; }
.topBusiness ul{ width: 90%; margin: 0 auto; display: flex; justify-content: space-between; }
.topBusiness ul > li{ flex-basis: 24%; position: relative; }
.topBusiness ul > li a{}
.topBusiness ul > li a:hover{ opacity: 0.6; }
.topBusinessImg{}
.topBusinessImg img{ width: 100%; height: auto; }
.topBusinessTit{ width: 110px; background: #fff; font-size: 1.7rem; color: #0068b7; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: normal; margin: 0 auto 40px auto; }
.topBusiness01{ background: #0068b7; padding: 60px 40px; }
.topBusiness ul > li a .topBusiness01{ transition: 0.5s ease-in-out; }
.topBusiness ul > li a:hover .topBusiness01{ opacity: 0.6; }
.topBusiness01Tit01{ color: #fff; text-align: center; font-size: 3.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 30px; }
.topBusiness01Tit02{ color: #fff; text-align: center; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 30px; }
.topBusiness01Txt{ }
.topBusiness01Txt p{ color: #fff; font-size: 1.4rem; line-height: 1.7; }


.topBusiness01After{ position: relative; z-index: 0; padding: 0 0 40px 0; background-color: #0068b7; }
.topBusiness ul > li a .topBusiness01After{ transition: 0.5s ease-in-out; }
.topBusiness ul > li a:hover .topBusiness01After{ opacity: 0.6; }
.topBusiness01After::after{ content: ''; position: absolute; left: 0; top: 0; transform: skewY(-5deg); transform-origin: top right; z-index: -1; width: 100%; height: 100%; background: #eee; }


.topTechnology{ background: #eee; padding-top: 60px; }
.topTechnology01{ width: 1200px; margin: 0 auto; }
.topTechnologyTit{ color: #0068b7; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; margin-bottom: 30px; }
.topTechnologyTit span{ font-size: 2rem; color: #27367e; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-left: 20px; }

.topTechnology ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.topTechnology ul > li{ flex-basis: 48%; margin-bottom: 80px; position: relative; }
.topTechnologyTit01{ position: absolute; bottom: -30px; left: -30px; width: 350px; height: 120px; background: #fff; padding: 30px; }
.topTechnologyTit02{ color: #26347e; font-size: 3rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }
.topTechnologyTit03{ color: #878787; font-size: 1.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.topTechnologyImg{ text-align: right; }

.topTechnology01 a .topTechnologyTit01{ transition: 0.5s ease-in-out; }
.topTechnology01 a:hover .topTechnologyTit01{ background-color: #0066b7; }
.topTechnology01 a:hover .topTechnologyTit02{ color: #fff; }
.topTechnology01 a:hover .topTechnologyTit03{ color: #fff; }

.bgBlue01{ background-color: #0066b7; }
.coWhite{ color: #fff; }

.topDesignpipe{ background: url("../images/bg_designpipe01.jpg") no-repeat; background-size: cover; padding: 70px 0; margin-bottom: 60px; }
.topDesignpipe01{ width: 700px; height: 300px; background: rgba(255,255,255,0.85); margin: 0 auto; padding: 40px; }
.topDesignpipe01Tit01{ font-size: 1.5rem; color: #27367e; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; letter-spacing: 5px; margin-bottom: 10px; }
.topDesignpipe01Tit02{ font-size: 7rem; color: #27367e; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: normal; line-height: 1; margin-bottom: 20px; }
.topDesignpipe01Txt01{ font-size: 2.7rem; color: #333; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.topDesignpipe01Btn01{ width: 240px; margin: 0 auto; }
.topDesignpipe01Btn01 a{ display: block; color: #0067b7; font-size: 2rem; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; border: 2px solid #0067b7; padding: 15px 10px 10px 10px; }
.topDesignpipe01Btn01 a:hover{ background: #0067b7; color: #fff; }


.topInfo{ display: flex; justify-content: space-between; margin-bottom: 80px; }
.topEquipment,
.topProducts{ flex-basis: 50%; position: relative; overflow: hidden; }
.topEquipment:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; background: url(../images/bg_equipment01.jpg) no-repeat center center; background-size: cover; transition: all .3s ease-out; }
.topProducts:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: cover; transition: all .3s ease-out; }
.topEquipment:hover:after,
.topProducts:hover:after{ opacity: 1; transform: scale(1.2); }


.topProducts{ flex-basis: 50%; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: 100% auto; position: relative; }
.topEquipment a,
.topProducts a{ display: block; padding: 60px 40px; }

.topEquipment01,
.topProducts01{ padding: 40px; border: 1px solid #fff; text-align: center; position: relative; z-index: 1; }
.topEquipment01Tit,
.topProducts01Tit{ color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; position: relative; }
.topEquipment01Tit span,
.topProducts01Tit span{ color: #fff; font-size: 2rem; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }



.topInfo02{ position: relative; margin-bottom: 560px; }
.topNews{ margin: 0 0 100px 15%; width: 80%; background: #0068b7; padding: 80px 0 200px 100px; }
.topNewsTit{ color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; margin-bottom: 30px; }
.topNewsTit span{ font-size: 2rem; color: #fff; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-left: 20px; }
.topNews01{}
.topNews01 > ul{ width: 1000px; }
.topNews01 > ul > li{ display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #4d96cd; padding: 20px 0; }
.topNewsDate01{ flex-basis: 10%;  color: #fff; font-size: 1.4rem; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; }
.topNewsCat01{ flex-basis: 10%; background: #fff; color: #0067b7; font-size: 1.3rem; padding: 3px 5px; text-align: center; }
.topNewsTit01{ flex-basis: 70%; }
.topNewsTit01 a{ font-size: 1.6rem; color: #fff; }
.topNewsTit01 a:hover{ opacity: 0.6; }

.topCompany{ position: absolute; left: 5%; /* top: 450px; */ top: 650px; width: 80%; background: #333; }
.topCompany > ul{ display: flex; justify-content: space-between; }
.topCompany > ul > li:nth-child(1){ flex-basis: 60%; padding: 60px 60px 60px 290px; }
.topCompany > ul > li:nth-child(2){ flex-basis: 40%; }
.topCompanyImg img{ width: 100%; height: auto; }

.topCompany > ul > li > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.topCompany > ul > li > ul > li{ flex-basis: 48%; margin-bottom: 20px; }
.topCompany > ul > li > ul > li > a{ display: block; color: #333; background: #fff; padding: 15px 30px; font-size: 1.5rem; font-weight: 700; letter-spacing: 1px; border: 1px solid #fff; position: relative; }
.topCompany > ul > li > ul > li > a:hover{ color: #fff; background: #333; }
.topCompany > ul > li > ul > li > a span:before{ content: ""; position: absolute; top: 50%; right: 20px; width: 7px; height: 7px; border-top: 1px solid #333; border-right: 1px solid #333;  transform: rotate(45deg); margin-top: -6px; }
.topCompany > ul > li > ul > li > a:hover span:before{ border-top: 1px solid #fff; border-right: 1px solid #fff; }


.bnrSec{ width: 1200px; margin: 0 auto 60px auto; }
.bnrSec > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.bnrSec > ul:after{ content: ""; display: block; width: 25%; height: 0; }
.bnrSec > ul:before{ content: ""; display: block; width: 25%; height: 0; order: 1; }
.bnrSec > ul > li{ flex-basis: 20%; border-bottom: 1px solid #ccc; padding-bottom: 10px; margin-bottom: 20px; }
.bnrSecImg{ text-align: center; margin-bottom: 10px; }
.bnrSecImg a:hover{ opacity: 0.6; }
.bnrSecTit{ text-align: center; font-size: 1.2rem; line-height: 1.2; }




.top_recruit{ margin-bottom: 80px; }
.top_recruit_sec{ position: relative; overflow: hidden; }
.top_recruit_sec:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_recruit_sec a{ display: block; position: relative; z-index: 1; height: 100%; color: #fff; text-align: center; padding: 100px 0;	}
.top_recruit_sec:after{ background: url("../images/bg_recruit01.jpg") no-repeat 0 40%; background-size: cover; }
.top_recruit_sec:hover:after{ opacity: .8; transform: scale(1.1); }
.top_recruit_sec:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,104,183,0.5); }












.contents{ width: 1200px; margin: 0 auto; }

.businessSec{ margin-bottom: 100px; }
.businessSec > ul{}
.businessSec > ul > li{ min-height: 550px; margin-bottom: 60px; }
.businessSec01{}
.businessSec01 > ul{ position: relative; }
.businessSec01 > ul > li{ }
.businessSec > ul > li a .businessSec01Img img{ transition: 0.5s ease-in-out; }
.businessSec > ul > li a:hover .businessSec01Img img{ opacity: 0.6; }

.businessSec01Txt{ position: absolute; top: 80px; width: 550px; height: 380px; background: #0068b7; z-index: 2; padding: 50px; }
.businessSec > ul > li:nth-child(odd) .businessSec01Txt{ left: 0; }
.businessSec > ul > li:nth-child(even) .businessSec01Txt{ right: 0; }

.businessSec01Tit01{ background: #fff; color: #0068b7; font-size: 1.7rem; width: 110px; text-align: center; padding: 3px; margin-bottom: 20px; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.businessSec01Tit02{ color: #fff; font-size: 4rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 15px; }
.businessSec01Tit03{ color: #fff; font-size: 2rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.businessSec01Txt01{ width: 80%; }
.businessSec01Txt01 p{ color: #fff; font-size: 1.6rem; line-height: 1.5; }

.businessSec01Img{ position: absolute; top: 0; }
.businessSec > ul > li:nth-child(odd) .businessSec01Img{ right: 0; left: auto; }
.businessSec > ul > li:nth-child(even) .businessSec01Img{ right: auto; left: 0; }

.contentsNav{ background: #0067b7; padding: 20px 30px; display: flex; margin-bottom: 60px; }
.contentsNavTit{ color: #fff; font-size: 2rem; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-right: 30px; }
.contentsNav nav{}
.contentsNav nav > ul{ display: flex; }
.contentsNav nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav nav > ul > li a{ color: #fff; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav nav > ul > li:after{ display: block; content: ""; position: absolute; top: 10px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #fff; border-bottom: 3px solid #fff; transform: rotate(-45deg); }



.contentsNav02{ background: #eee; padding: 20px 30px; display: flex; margin-bottom: 60px; }
.contentsNav02 nav{ width: 75%; }
.contentsNav02 nav > ul{ display: flex; flex-wrap: wrap; }
.contentsNav02 nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav02 nav > ul > li a{ color: #333; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav02 nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav02 nav > ul > li:after{ display: block; content: ""; position: absolute; top: 10px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0068b7; border-bottom: 3px solid #0068b7; transform: rotate(-45deg); }




.mainSec{ padding-bottom: 60px; border-bottom: 1px solid #ccc; margin-bottom: 80px; }

.mainSecImg{ text-align: center; margin-bottom: 40px; }
.mainSecTxt{ width: 960px; margin: 0 auto 40px auto; }
.mainSecTxt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecSize{ width: 780px; margin: 0 auto 40px auto; }
.mainSecSize02{ width: 780px; margin: 0 auto 40px auto; }
.mainSecSize > ul{}
.mainSecSize02 > ul{ display: flex; justify-content: space-between; }
.mainSecSize > ul > li{ background: #eee; border-radius: 10px; padding: 30px; display: flex; align-items: center; margin-bottom: 10px; }
.mainSecSize02 > ul > li{ flex-basis: 49%; background: #eee; border-radius: 10px; padding: 20px; display: flex; align-items: center; }
.mainSecSizeTit{ flex-basis: 25%; background: #fff; color: #0b6dba; font-size: 1.6rem; font-weight: 700; border: 2px solid #0b6dba; text-align: center; padding: 10px 20px; margin-right: 40px; }
.mainSecSize02 .mainSecSizeTit{ flex-basis: 35%; padding: 10px; margin-right: 20px; }
.mainSecSizeTxt{ font-size: 2.3rem; font-weight: 700; }
.mainSecImg02{ margin-bottom: 40px; }
.mainSecImg02 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg02 > ul > li{ flex-basis: 48%; margin-bottom: 40px; }
.mainSecImg02Img{ margin-bottom: 10px; }
.mainSecImg02Img img{ width: 100%; height: auto; }
.mainSecImg02Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg02Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }
.mainSecImg02Tit02{ font-size: 2.5rem; margin-bottom: 10px; font-weight: 700; }

.mainSecSize03{}
.mainSecSize03 > ul{ display: flex; justify-content: space-between; }
.mainSecSize03 > ul > li{ flex-basis: 23%; }
.mainSecSize03Img{}
.mainSecSize03Img img{ width: 100%; height: auto; }
.mainSecSize03Txt{}
.mainSecSize03Txt > ul{ background: #f5f5f5; padding: 30px; }
.mainSecSize03Txt > ul > li{ font-size: 2rem; font-weight: 700; text-align: center; }
.mainSecSize03Txt > ul > li{}
.mainSecSize03Txt > ul > li.arrow{ transform: rotate(90deg); }
.mainSecSize03Txt > ul > li.arrow i{}

.mainSecImg03{ margin-bottom: 40px; }
.mainSecImg03 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg03 > ul > li{ flex-basis: 32%; margin-bottom: 40px; border-bottom: 1px solid #ccc; padding-bottom: 10px;  }
.mainSecImg03 > ul > li:nth-child(1),
.mainSecImg03 > ul > li:nth-child(2),
.mainSecImg03 > ul > li:nth-child(3){ opacity: 1 !important; }
.mainSecImg03Img{ margin-bottom: 10px; }
.mainSecImg03Img img{ width: 100%; height: auto; }
.mainSecImg03Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg03Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }
.mainSecImg03Tit p{ font-size: 1.4rem; font-weight: normal; margin-top: 5px; }

.mainSecImg04{ width: 980px; margin: 0 auto 40px auto; }
.mainSecImg04 > ul{ display: flex; justify-content: space-between; }
.mainSecImg04 > ul > li{ font-size: 1.5rem; line-height: 1.7; }
.mainSecImg04 > ul > li ol{ margin: 0 0 20px 20px; }
.mainSecImg04 > ul > li ol > li{ list-style-type: decimal; }
.mainSecImg04 > ul > li:nth-child(1){ flex-basis: 60%; }
.mainSecImg04 > ul > li:nth-child(2){ flex-basis: 35%; text-align: center; }




.mainSecTxt02{ margin-bottom: 40px; }
.mainSecTxt02 > ul{ display: flex; justify-content: space-between; }
.mainSecTxt02Txt{ flex-basis: 50%; }
.mainSecTxt02Txt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecTxt02Img{ flex-basis: 45%; }

.mainSecTxt03{ width: 980px; background: #eee; padding: 40px; margin: 0 auto 40px auto; }
.mainSecTxt03 p{ font-size: 2rem; text-align: center; line-height: 2; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; }

.mainSecBtn{ width: 570px; margin: 0 auto 40px auto; }
.mainSecBtn a{ display: block; font-size: 2.8rem; font-weight: 700; color: #333; background: #d9d900; padding: 15px; text-align: center; border: 2px solid #d9d900; }
.mainSecBtn a:hover{ background: #333; color: #d9d900; }


.mainSecTable{ margin-bottom: 60px; }
.mainSecTable table{ width: 100%; border-collapse: collapse; }
.mainSecTable th{ border-bottom: 1px solid #0069b5; text-align: left; padding: 20px; font-size: 1.5rem; }
.mainSecTable td{ border-bottom: 1px solid #ccc; padding: 20px; font-size: 1.5rem;  }
.mainSecTable td span{ font-size: 1rem; }
.mainSecTable th:nth-child(1){ text-align: center; }
.mainSecTable td:nth-child(1){ width: 5%; text-align: center; margin-left: 10px; }
.mainSecTable td:nth-child(2){ width: 20%; }
.mainSecTable td:nth-child(3){ width: 20%; }
.mainSecTable td:nth-child(4){ width: 20%; }
.mainSecTable td:nth-child(5){ width: 25%; }
.mainSecTable td:nth-child(6){ width: 10%; }

.mainSecTable02{ width: 1080px; margin: 0 auto 60px auto; }
.mainSecTable02 table{ width: 100%; border-collapse: collapse; }
.mainSecTable02 th{ width: 20%; border-bottom: 1px solid #0069b5; text-align: left; padding: 20px; font-size: 1.7rem; }
.mainSecTable02 td{ width: 80%; border-bottom: 1px solid #ccc; padding: 20px; font-size: 1.7rem;  }
.mainSecTable02 td ul{ margin-left: 30px; }
.mainSecTable02 td li{ list-style-type: disc; }


.pagetopBtn{ width: 150px; margin: 0 0 0 auto; }
.pagetopBtn a{ display: flex; justify-content: center; font-size: 1.6rem; text-align: center; color: #28377f; border: 1px solid #28377f; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; padding: 10px; position: relative; }
.pagetopBtn a i{ display: block; font-size: 1rem; margin-right: 10px; transform: rotate(-90deg); }
.pagetopBtn a p{  }
.pagetopBtn a:hover{ background: #28377f; color: #fff; }


.mainSecMovie{ position: relative; width: 100%; padding-top: 56.25%; }
.mainSecMovie iframe{ position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.mainSecMovie01{}
.mainSecMovie01 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecMovie01 > ul > li{ flex-basis: 32%; margin-bottom: 30px; }
.mainSecMovie01Tit{ font-size: 2.2rem; font-weight: 700; margin-bottom: 10px; }


.companySecTxt01{ color: #26347e; font-size: 3rem; text-align: right; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; margin-top: 30px; }
.companySecTxt01 span{ font-size: 2rem; margin-right: 30px; }

.mainSecMap{ width: 1080px; margin: 0 auto 40px auto; }


.advantageSec{}
.advantageSec > ul{}
.advantageSec > ul > li{ margin-bottom: 60px; }
.advantageSec > ul > li:nth-child(even) .advantageSec01 > ul{ flex-direction: row-reverse; }
.advantageSec > ul > li:nth-child(odd) .advantageSec01 > ul{  }
.advantageSec01{}
.advantageSec01 > ul{ display: flex; justify-content: space-between; align-items: center; }
.advantageSec01 > ul > li:nth-child(1){ flex-basis: 48%; }
.advantageSec01 > ul > li:nth-child(2){ flex-basis: 50%; }

.advantageSec01Tit{}
.advantageSec01Num{ font-size: 8rem; color: #0066b7; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.advantageSec01Tit01{ font-size: 3rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 20px; }
.advantageSec01Txt{ margin-bottom: 20px; }
.advantageSec01Txt p{ font-size: 1.6rem; line-height: 1.7; }
.advantageSec01Txt ol{ margin-left: 30px; }
.advantageSec01Txt ol > li{ list-style-type: decimal; }
.advantageSec01Btn{}
.advantageSec01Btn > ul{ display: flex; justify-content: space-between; }
.advantageSec01Btn > ul > li{ flex-basis: 49%; }
.advantageSec01Btn > ul > li a{ display: block; color: #0066b7; font-size: 1.7rem; border: 1px solid #0066b7; text-align: center; padding: 20px 15px 15px 15px; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.advantageSec01Btn > ul > li a:hover{ background: #0066b7; color: #fff; }
.advantageSec01Img{}


.contactSec{ margin-bottom: 100px; }
.thanksSec{ width: 900px; margin: 0 auto; }
.thanksSec01{ border: 1px solid #0067b7; padding: 10px; margin-bottom: 40px; }
.thanksSec p{ text-align: center; }

.privacySec{ width: 970px; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.6rem; line-height: 1.7; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol > li{ list-style-type: decimal; }

.sitemapSec{}
.sitemapSec > ul{}
.sitemapSec > ul > li{ margin-bottom: 20px; font-size: 1.8rem; }
.sitemapSec > ul > li > a{ font-weight: 700; font-size: 2rem; }
.sitemapSec > ul > li > ul{ margin-top: 5px; }
.sitemapSec > ul > li > ul > li{ position: relative; padding-left: 20px; margin-bottom: 10px; }
.sitemapSec > ul > li > ul > li:after{ display: block; content: ""; position: absolute; top: .75em; left: 0; width: 8px; height: 1px; background-color: #999; }

.sitemapSec > ul > li.facebook{ width: 300px;  background: #375794; color: #fff; margin-top: 20px; }
.sitemapSec > ul > li.youtube{ width: 300px; background: #f8031b; color: #fff; }
.sitemapSec > ul > li.facebook a,
.sitemapSec > ul > li.youtube a{ display: block; color: #fff; text-align: center; padding: 10px; }
.sitemapSec > ul > li.facebook i,
.sitemapSec > ul > li.youtube i{ margin-right: 10px; font-size: 2rem; }
.sitemapSec > ul > li.facebook a:hover{  background: #fff; color: #375794; }
.sitemapSec > ul > li.youtube a:hover{ background: #fff; color: #f8031b; }



/* SHIMIZU AXIS */
.axis_sec{ margin-bottom: 100px; }
.axis_tit{ color: var(--main-color); text-align: center; }
.axis_tit p{ font-size: 1.8rem; font-family: source-han-serif-japanese, serif; font-weight: 300; font-style: normal; letter-spacing: 5px; }

.axis_tit p{
position: relative;
width: fit-content;
padding: 0 3em;
text-align: center;
margin: 0 auto;
}

.axis_tit p:before,
.axis_tit p:after{
content: '';
background-color: var(--main-color);
width: 30em;
height: 1px;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

.axis_tit p:before{ left: 0; }
.axis_tit p:after{ right: 0; }

.axis_tit p span {
position: relative;
padding: 0 1em;
background: #fff;
z-index: 2;
}

.axis_txt{ width: 770px; margin: 0 auto 60px auto; }
.axis_txt p{ font-size: 1.6rem; line-height: 1.7; }

.axis_tit h3{ font-size: 10rem; font-family: grad, serif; font-weight: 700; font-style: italic; letter-spacing: 3px; }

.axis_img{ text-align: center; margin-bottom: 80px; }

.axis_list{ }
.axis_item{ display: flex; margin-bottom: 50px; }
.axis_item_vision{}
.axit_item_tit{ flex-basis: 32%; color: #fff; padding: 20px; text-align: center; position: relative; }
.axit_item_tit_wrap{  position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); }

.axis_item_vision .axit_item_tit{ background-color: var(--vision-color); }
.axis_item_mission .axit_item_tit{ background-color: var(--mission-color); }
.axis_item_value .axit_item_tit{ background-color: var(--value-color); }
.axis_item_mind .axit_item_tit{ background-color: var(--mind-color); }

.axit_item_tit01{ width: 160px; background-color: #fff; border-radius: 40px; font-size: 1.5rem; padding: 3px; margin: 0 auto; }
.axit_item_tit02{ font-size: 6rem; font-family: grad, serif; font-weight: 700; font-style: normal; letter-spacing: 2px; }
.axit_item_tit03{ font-size: 2.5rem; color: #fff; letter-spacing: 2px; font-family: source-han-serif-japanese, serif; font-weight: 300; font-style: normal; line-height: 1; }

.axis_item_vision .axit_item_tit01{ color: var(--vision-color); }
.axis_item_mission .axit_item_tit01{ color: var(--mission-color); }
.axis_item_value .axit_item_tit01{ color: var(--value-color); }
.axis_item_mind .axit_item_tit01{ color: var(--mind-color); }

.axis_item_sec{ flex-basis: 68%; background-color: #f5f5f5; padding: 20px 20px 20px 30px; }
.axis_item_list{ margin-top: 10px; }
.axis_item_item{ position: relative; padding-left: 30px; font-size: 2rem; font-weight: 700; margin-bottom: 20px; }
.axis_item_item:before{ content: ""; display: block; position: absolute; left: 0; top: 0; font-family: 'icomoon' !important; content: "\e905"; }

.axis_item_vision .axis_item_item{ color: var(--vision-color); }
.axis_item_mission .axis_item_item{ color: var(--mission-color); }
.axis_item_value .axis_item_item{ color: var(--value-color); }
.axis_item_mind .axis_item_item{ color: var(--mind-color); }

.axis_item_list_mind{}
.axis_item_list_mind .axis_item_item{ padding-left: 0; }
.axis_item_list_mind .axis_item_item:before{ display: none; }

.axis_item_mind .axis_item_sec{ padding: 20px 250px 20px 30px; }

dl.axis_item_dl dt p{ display: flex; align-items: center; }
dl.axis_item_dl dt span{ display: block; width: 50px; height: 50px; background-color: var(--mind-color); color: #fff; font-size: 3.3rem; font-family: grad, serif; font-weight: 700; font-style: normal; border-radius: 100%; text-align: center; margin-right: 3px; line-height: 50px; }

/* axis_item_dl */
dl.axis_item_dl{ width: 100%; }
dl.axis_item_dl div{ position: relative; display: flex; justify-content: space-between; margin: 5px 0; padding: 5px 0; }
dl.axis_item_dl div::after{ content: ""; display: block; position: absolute; top: 50%; z-index: 1; width: 100%; border-bottom: dotted 3px #addab9; }
dl.axis_item_dl dt{ margin:0; padding: 0 10px 0 0; background-color: #f5f5f5; z-index: 2; text-align: left; font-family: grad, serif; font-weight: 700; font-style: normal; font-size: 3rem; color: var(--mind-color); }
dl.axis_item_dl dd{ margin:0; padding: 10px 0 0 10px; background-color: #f5f5f5; z-index: 2; text-align: right; font-size: 2rem; font-weight: 700; color: var(--mind-color); }


/* ----------------------------------------------------------
 SP CSS
---------------------------------------------------------- */
@media screen and (max-width:680px){
img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 60%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; height: auto !important; height: 100%; padding-top: 0; }

/* 非表示用 */
.noneSP		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ width: 100%; margin: 0 auto; background: #fff; position: initial; top: 0; right: 0; left: 0; z-index: 3; }
#header{ display: block; }
.headerLogo{ flex-basis: auto; width: 100%; padding: 10px; text-align: left; }

.headerLogo a{ min-height: auto; height: auto; line-height: 25px; padding: 0 0 5px 0; }

.headerLogo a:hover{ opacity: 0.6; }

.headerLogo img{ width: 50%; height: auto; margin: 0 0; }
.gNavi{ display: none; }
.headerTel{ display: none; }
.headerContact{ display: none; }



/*ドロワー*/
.l-drawer{ position: relative; }
.l-drawer__checkbox{ display: none; }
.l-drawer__icon{
	cursor: pointer;
	display: block;
	width: 45px;
	height: 45px;
	position: fixed;
	top: 0px;
	right: 3px;
}
.l-drawer__icon-parts, .l-drawer__icon-parts:before, .l-drawer__icon-parts:after{
	background-color: #aadbff;
	display: block;
	width: 26px;
	height: 2px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}
.l-drawer__icon-parts:before, .l-drawer__icon-parts:after{ content: " "; }
.l-drawer__icon-parts:before{ top: 10px; }
.l-drawer__icon-parts:after{ top: -16px; }
.l-drawer__overlay{
	background: #000;
	opacity: 0;
	pointer-events: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
}
.l-drawer__menu{
	background: rgba(255,255,255,0.9);
	color: #000;
	max-width: 100%;
	width: 100vw;
	height: 100vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	top: 0;
	right: -100vw;
}
.l-drawer__icon{ z-index: 999; }
.l-drawer__menu{ z-index: 998; }
.l-drawer__overlay{ z-index: 99; }
.l-drawer__checkbox:checked ~ .l-drawer__icon .l-drawer__icon-parts{ background: transparent; }
.l-drawer__checkbox:checked ~ .l-drawer__icon .l-drawer__icon-parts:before{ -webkit-transform: rotate(-45deg); transform: rotate(-45deg); top: 0; background: #0068b7; }
.l-drawer__checkbox:checked ~ .l-drawer__icon .l-drawer__icon-parts:after{ -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 0; background: #0068b7; }
.l-drawer__checkbox:checked ~ .l-drawer__overlay{ opacity: 0.3; pointer-events: auto; }
.l-drawer__checkbox:checked ~ .l-drawer__menu{ right: 0; }
.l-drawer__icon-parts, .l-drawer__icon-parts:after, .l-drawer__icon-parts:before, .l-drawer__overlay, .l-drawer__menu{ -webkit-transition: all 0.7s; transition: all 0.7s; }

nav.l-drawer__menu{ padding: 80px 20px 80px 20px; }





.accordion div{	cursor: pointer }
.accordion li > ul > li > ul{ display:none; }

/*ACCORDION*/
.accordion { width: 100%; border-top: 1px solid #ccc; margin-bottom: 30px; }
.accordion a { display: block; font-size: 1.6rem; font-weight: 700; padding: 15px; border-bottom: 1px solid #ccc; }
.accordion > li{}
.accordion > li a{ display: block; font-size: 1.6rem; font-weight: 700;	cursor: pointer; position: relative; }
.accordion > li a.active{ background: #0068b7; color: #fff; }
.accordion > li a.active + ul{ background: #fff; }
.accordion > li a:after, .accordion > li a.active:after{ position: absolute; right: 20px; color: #0068b7; }
.accordion > li a.toggle:after{	font-family: 'icomoon';	content: '\e902'; transform: rotate(90deg); }
.accordion > li a.active:after{	font-family: 'icomoon';	content: '\e902'; transform: rotate(270deg); color: #fff; }
.accordion > ul > li > ul > li > ul{ display: none; }
.accordion > li > ul > li > ul > li a{ display: block; border-bottom: 1px solid #ccc; padding: 15px; position: relative; }
.accordion > li > ul > li > ul > li a:active{ background: #0068b7; color: #fff; }
.accordion > li > ul > li a:hover{ background-color: #0068b7; color: #fff; }

.sitemapSecBnr{}
.sitemapSecBnr > ul{}
.sitemapSecBnr > ul > li{ margin-bottom: 10px; }
.sitemapSecBnr a{ display: block; color: #fff; text-align: center; padding: 10px; }
.sitemapSecBnr a i{ margin-right: 10px; font-size: 2rem; }


/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btmMenu { position: fixed; bottom: -50px; width: 100%; border-top: 1px solid #0066b7; z-index: 99; }
.btmMenu li { float: left; width: 50%; }
.btmMenu li:first-child a { border-right: 1px solid #fff; }
.btmMenu li a { display: block; height: 29px; text-align: center; font-size: 1.6rem; padding: 15px 5px 5px; background-color: #0066b7; color: #fff; }
.btmMenu li a i{ font-size: 1.8rem; margin-right: 10px; }
.btmMenu li a:hover { background-color: #fff; color: #0066b7; }
.btmMenu ul:after { content: ''; clear: both; display: block; }


.footerSns{ width: 90%; margin: 0 auto 40px auto; }
.footerSns > ul{ flex-wrap: wrap; }
.footerSns > ul > li{ margin: 0 0 10px 0; flex-basis: 100%; text-align: center; }
.footerSns > ul > li a{ display: flex; align-items: center; color: #fff; font-size: 1.8rem; font-weight: 700; padding: 20px; line-height: 1.3; letter-spacing: 1px; }
.footerSns > ul > li a i{ flex-basis: 15%; font-size: 3rem; text-align: right; }
.footerSnsTit{ flex-basis: 80%; }
.footerSns > ul > li a span{ font-size: 1.5rem; }

.footerContact{ background: #f6f8fb; padding: 60px 0; }
.footerContact01{ width: 90%; margin: 0 auto; }
.footerContact01Tit{ font-size: 2.5rem; margin-bottom: 10px; }
.footerContact01Tit span{ font-size: 1.6rem; }
.footerContact01 ul{ flex-wrap: wrap; }
.footerContact01 ul > li{ flex-basis: 100%; padding: 10px; }
.footerContact01 ul > li:first-child{ border-right: 0; }
.footerContact02{ display: flex; justify-content: space-between; align-items: center; }
.footerContact02Ico{ flex-basis: 15%;  }
.footerContact02Ico i{ display: block; font-size: 2.5rem; line-height: 50px; width: 50px; height: 50px; }
.footerContact02Tel{ flex-basis: 80%; font-size: 3.5rem; }
.footerContact02Tel span{ display: block; font-size: 1.3rem; }
.footerContact02Btn{ }
.footerContact02Btn a{ font-size: 1.6rem; padding: 20px; }
.footerContact02Btn a i{ margin-right: 15px; font-size: 2.2rem; vertical-align: middle; }

.footerContact03{ margin-bottom: 10px; }
.footerContact03 a{ display: block; color: #0068b7; font-size: 1.6rem; text-align: center; padding: 15px 10px 10px 10px; border: 2px solid #0068b7; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }


footer{ background: #27367e; padding: 40px 0 20px 0; }
#footer{ width: 90%; margin: 0 auto; flex-wrap: wrap; margin-bottom: 50px; }
.footerLogo{ flex-basis: 100%; margin-bottom: 20px; text-align: center; }
.footerLogo img{ width: 60%; height: auto; margin: 0 auto; }
.footerAdd{ flex-basis: 100%; font-size: 1.2rem; text-align: center; margin-bottom: 20px; }
.footerNav{ flex-basis: 100%; }
.footerNav nav{}
.footerNav nav > ul{ display: flex; border: 1px solid #9fabe1; }
.footerNav nav > ul > li{ flex-basis: 33%; border-right: 1px solid #9fabe1; position: relative; padding: 0; }
.footerNav nav > ul > li:last-child{ border-right: 0; }
.footerNav nav > ul > li:before{ display: none; }
.footerNav nav > ul > li a i{ margin-left: 10px; }
.footerNav nav > ul > li a{ display: block; color: #fff; font-size: 1.1rem; padding: 10px 5px; text-align: center; }
.footerNav nav > ul > li a:hover{ opacity: 0.6; }
.footerCopyright{ color: rgba(255,255,255,0.5); font-size: 1rem; text-align: center; }


/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ padding: 30px 0; margin-bottom: 20px; }
.h1Tit{ font-size: 2.5rem; }

h1{ width: 90%; margin: 0 auto; font-size: 4rem; }
h1 span{ font-size: 1.5rem; }


h2{ width: 90%; font-size: 3rem; margin: 0 auto 40px auto; line-height: 1.2; }
h2:before{ content: ""; position: absolute; bottom: -15px; width: 200px; height: 3px; left: 50%; transform: translateX(-50%); background-color: #0067b7; }
h2 span{ font-size: 1.4rem; margin-bottom: 10px; }

h3{ width: 90%; font-size: 2.5rem; font-weight: 700; text-align: center; margin: 0 auto 40px auto; }

/* ぱんくず */
#breadcrumbs{ display: none; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ position: relative; height: 350px; }
.topImgTit{ position: absolute; left: 5%; top: 45px; bottom: 40%; color: #fff; font-size: 4.5rem; letter-spacing: 5px; }
.topImgTit:after{ display: none; }
.topImgTit span{ font-size: 4rem; }
.topImgTxt{ left: 5%; bottom: 20%; font-size: 1.3rem; width: 50%; }

.topImgBnr{ text-align: right; }
.topImgBnr img{ width: 40%; height: auto; }

.topBusiness{ 
	background: linear-gradient(to bottom, rgba(238,238,238,0) 0%,rgba(238,238,238,0) 85%,rgba(238,238,238,0) 85%) ,url("../images/bg_business01.jpg") no-repeat top center;
	background-size: cover;
	padding: 40px 0 0 0; }
.topTit{ color: #fff; font-size: 3.5rem; text-align: center; margin-bottom: 10px; letter-spacing: 5px; }
.topBusiness ul{ width: 96%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.topBusiness ul > li{ flex-basis: 49%; position: relative; margin-bottom: 40px; background: #0068b7; }
.topBusiness ul > li:nth-child(1),
.topBusiness ul > li:nth-child(2){ opacity: 1 !important; }
.topBusiness ul > li a{}
.topBusiness ul > li a:hover{ opacity: 0.6; }
.topBusinessImg{}
.topBusinessImg img{ width: 100%; height: auto; }
.topBusinessTit{ width: 110px; background: #fff; font-size: 1.4rem; margin: 0 auto 10px auto; }
.topBusiness01{ background: #0068b7; padding: 15px 10px; }
.topBusiness ul > li a:hover .topBusiness01{ opacity: 0.6; }
.topBusiness01Tit01{ font-size: 2.5rem; margin-bottom: 10px; }
.topBusiness01Tit02{ font-size: 1.3rem; margin-bottom: 10px; }
.topBusiness01Txt{ }
.topBusiness01Txt p{ color: #fff; font-size: 1.3rem; line-height: 1.5; }


.topBusiness01After{ display: none; }

.topTechnology{ background: #eee; padding-top: 60px; }
.topTechnology01{ width: 96%; margin: 0 auto; }
.topTechnologyTit{ color: #0068b7; font-size: 4rem; letter-spacing: 3px; margin-bottom: 30px; }
.topTechnologyTit span{ font-size: 1.7rem; color: #27367e; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-left: 20px; }

.topTechnology ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.topTechnology ul > li{ flex-basis: 49%; margin-bottom: 30px; position: relative; }
.topTechnologyTit01{ position: initial; bottom: -30px; left: -30px; width: 100%; height: auto; background: #fff; padding: 10px; }
.topTechnologyTit02{ font-size: 1.6rem; }
.topTechnologyTit03{ font-size: 1.2rem; }
.topTechnologyImg{ text-align: right; }

.topTechnology01 a .topTechnologyTit01{ transition: 0.5s ease-in-out; }
.topTechnology01 a:hover .topTechnologyTit01{ background-color: #0066b7; }
.topTechnology01 a:hover .topTechnologyTit02{ color: #fff; }
.topTechnology01 a:hover .topTechnologyTit03{ color: #fff; }

.bgBlue01{ background-color: #0066b7; }
.coWhite{ color: #fff; }

.topDesignpipe{ background: url("../images/bg_designpipe01.jpg") no-repeat center center; background-size: cover; padding: 70px 0; margin-bottom: 60px; }
.topDesignpipe01{ width: 90%; height: auto; background: rgba(255,255,255,0.85); margin: 0 auto; padding: 20px; }
.topDesignpipe01Tit01{ font-size: 1.2rem; letter-spacing: 5px; margin-bottom: 10px; }
.topDesignpipe01Tit02{ font-size: 4rem; margin-bottom: 20px; }
.topDesignpipe01Txt01{ font-size: 1.7rem; margin-bottom: 10px; }


.topInfo{ display: flex; justify-content: space-between; margin-bottom: 40px; }

.topProducts{ flex-basis: 50%; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: 100% auto; position: relative; }
.topEquipment a,
.topProducts a{ display: block; padding: 20px 10px; }

.topEquipment01,
.topProducts01{ padding: 10px; }
.topEquipment01Tit,
.topProducts01Tit{ font-size: 3rem; letter-spacing: 3px; }
.topEquipment01Tit span,
.topProducts01Tit span{ font-size: 1.2rem; }



.topInfo02{ position: relative; margin-bottom: 60px; }
.topNews{ margin: 0; width: 100%; background: #0068b7; padding: 10px 10px 20px 10px; }
.topNewsTit{ font-size: 3rem; letter-spacing: 3px; margin-bottom: 10px; }
.topNewsTit span{ font-size: 1.5rem; margin-left: 20px; }
.topNews01{}
.topNews01 > ul{ width: 90%; margin: 0 auto; }
.topNews01 > ul > li{ flex-wrap: wrap; padding: 20px 0; }
.topNewsDate01{ flex-basis: 10%;  font-size: 1.2rem; }
.topNewsCat01{ flex-basis: 30%; font-size: 1.1rem; padding: 3px 5px; margin-right: 40%; }
.topNewsTit01{ flex-basis: 100%; }
.topNewsTit01 a{ font-size: 1.4rem; }


.topCompany{ position: initial; left: auto; top: auto; width: 100%; background: url("../images/img_president01.jpg") no-repeat center center; background-size: 100% auto; }
.topCompany > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; background: rgba(51,51,51,0.8); padding: 6% 4%; }
.topCompany > ul > li:nth-child(1){ flex-basis: 100%; padding: 0; }
.topCompany > ul > li:nth-child(2){ display: none; }

.topCompany > ul > li > ul > li{ margin-bottom: 10px; }
.topCompany > ul > li > ul > li > a{ padding: 15px 10px; font-size: 1.4rem; }
.topCompany > ul > li > ul > li > a:hover{ color: #fff; background: #333; }
.topCompany > ul > li > ul > li > a span:before{ content: ""; position: absolute; top: 29px; right: 10px; width: 7px; height: 7px; border-top: 1px solid #333; border-right: 1px solid #333;  transform: rotate(45deg); margin-top: -6px; }
.topCompany > ul > li > ul > li > a:hover span:before{ border-top: 1px solid #fff; border-right: 1px solid #fff; }



.top_recruit{ margin-bottom: 80px; }
.top_recruit_sec{ position: relative; overflow: hidden; }
.top_recruit_sec:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_recruit_sec a{ display: block; position: relative; z-index: 1; height: 100%; color: #fff; text-align: center; padding: 50px 0;	}
.top_recruit_sec:after{ background: url("../images/bg_recruit01.jpg") no-repeat 0 40%; background-size: cover; }
.top_recruit_sec:hover:after{ opacity: .8; transform: scale(1.1); }
.top_recruit_sec:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,104,183,0.5); }



.bnrSec{ width: 90%; margin: 0 auto 60px auto; }
.bnrSec > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.bnrSec > ul:after{ display: none; }
.bnrSec > ul:before{ display: none; }
.bnrSec > ul > li{ flex-basis: 48%; border-bottom: 1px solid #ccc; padding-bottom: 10px; margin-bottom: 20px; }
.bnrSec > ul > li:nth-child(13),
.bnrSec > ul > li:nth-child(14),
.bnrSec > ul > li:nth-child(15){ display: none; }
.bnrSecImg{ text-align: center; margin-bottom: 10px; }
.bnrSecImg a:hover{ opacity: 0.6; }
.bnrSecTit{ text-align: center; font-size: 1.1rem; line-height: 1.2; }


.contents{ width: 100%; margin: 0 auto; }

.businessSec{ margin-bottom: 100px; }
.businessSec > ul > li{ min-height: auto; margin-bottom: 60px; }

.businessSec01Txt{ position: initial; top: auto; width: 100%; height: auto; padding: 20px; }

.businessSec01Tit01{ background: #fff; color: #0068b7; font-size: 1.7rem; width: 110px; text-align: center; padding: 3px; margin-bottom: 20px; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.businessSec01Tit02{ color: #fff; font-size: 4rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 15px; }
.businessSec01Tit03{ color: #fff; font-size: 2rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.businessSec01Txt01{ width: 100%; }
.businessSec01Txt01 p{ color: #fff; font-size: 1.6rem; line-height: 1.5; }

.businessSec01Img{ position: initial; top: 0; }
.businessSec > ul > li:nth-child(odd) .businessSec01Img{ right: 0; left: auto; }
.businessSec > ul > li:nth-child(even) .businessSec01Img{ right: auto; left: 0; }

.contentsNav{ width: 96%; background: #0067b7; padding: 10px 20px; flex-wrap: wrap; margin: 0 auto 40px auto; }
.contentsNavTit{ color: #fff; font-size: 2rem; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-right: 30px; }
.contentsNav nav{}
.contentsNav nav > ul{ flex-wrap: wrap; }
.contentsNav nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav nav > ul > li a{ font-size: 1.4rem; }



.contentsNav02{ width: 96%; background: #eee; padding: 10px 20px; display: flex; margin: 0 auto 40px auto; }
.contentsNav02 nav{ width: 100%; }
.contentsNav02 nav > ul{ display: flex; flex-wrap: wrap; }
.contentsNav02 nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav02 nav > ul > li a{ color: #333; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav02 nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav02 nav > ul > li:after{ display: block; content: ""; position: absolute; top: 10px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0068b7; border-bottom: 3px solid #0068b7; transform: rotate(-45deg); }




.mainSec{ padding-bottom: 60px; border-bottom: 1px solid #ccc; margin-bottom: 80px; }

.mainSecImg{ text-align: center; margin-bottom: 40px; }
.mainSecTxt{ width: 90%; margin: 0 auto 40px auto; }
.mainSecTxt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecSize{ width: 90%; margin: 0 auto 40px auto; }
.mainSecSize02{ width: 90%; margin: 0 auto 40px auto; }
.mainSecSize > ul{}
.mainSecSize02 > ul{ flex-wrap: wrap; }
.mainSecSize > ul > li{ background: #eee; border-radius: 10px; padding: 10px; display: block; margin-bottom: 10px; }
.mainSecSize02 > ul > li{ flex-basis: 100%; background: #eee; border-radius: 10px; padding: 10px; display: flex; align-items: center; margin-bottom: 10px; }
.mainSecSizeTit{ flex-basis: 100%; background: #fff; color: #0b6dba; font-size: 1.4rem; font-weight: 700; border: 2px solid #0b6dba; text-align: center; padding: 5px 10px; margin-right: 0; width: 50%; }
.mainSecSize02 .mainSecSizeTit{ flex-basis: 35%; padding: 5px; margin-right: 20px; }
.mainSecSizeTxt{ font-size: 1.8rem; font-weight: 700; }
.mainSecImg02{ width: 90%; margin: 0 auto 40px auto; }
.mainSecImg02 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg02 > ul > li{ flex-basis: 100%; margin-bottom: 40px; }
.mainSecImg02 > ul > li:nth-child(1),
.mainSecImg02 > ul > li:nth-child(2){ opacity: 1 !important; }
.mainSecImg02Img{ margin-bottom: 10px; }
.mainSecImg02Img img{ width: 100%; height: auto; }
.mainSecImg02Tit{ font-size: 1.3rem; }
.mainSecImg02Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }
.mainSecImg02Tit02{ font-size: 1.8rem; margin-bottom: 10px; font-weight: 700; }

.mainSecSize03{ width: 90%; margin: 0 auto 40px auto; }
.mainSecSize03 > ul{ flex-wrap: wrap; }
.mainSecSize03 > ul > li{ flex-basis: 48%; margin-bottom: 30px; }
.mainSecSize03Img{}
.mainSecSize03Img img{ width: 100%; height: auto; }
.mainSecSize03Txt{}
.mainSecSize03Txt > ul{ background: #f5f5f5; padding: 20px; }
.mainSecSize03Txt > ul > li{ font-size: 1.5rem; font-weight: 700; text-align: center; }
.mainSecSize03Txt > ul > li{}
.mainSecSize03Txt > ul > li.arrow{ transform: rotate(90deg); }
.mainSecSize03Txt > ul > li.arrow i{}


.mainSecImg03{ margin-bottom: 40px; }
.mainSecImg03 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg03 > ul > li{ flex-basis: 48%; margin-bottom: 40px; }
.mainSecImg03Img{ margin-bottom: 10px; }
.mainSecImg03Img img{ width: 100%; height: auto; }
.mainSecImg03Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg03Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }

.mainSecImg04{ width: 90%; margin: 0 auto 40px auto; }
.mainSecImg04 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg04 > ul > li{ font-size: 1.5rem; line-height: 1.7; }
.mainSecImg04 > ul > li ol{ margin: 0 0 20px 20px; }
.mainSecImg04 > ul > li ol > li{ list-style-type: decimal; }
.mainSecImg04 > ul > li:nth-child(1){ flex-basis: 100%; margin-bottom: 20px; }
.mainSecImg04 > ul > li:nth-child(2){ flex-basis: 100%; text-align: center; }




.mainSecTxt02{ width: 90%; margin: 0 auto 40px auto; }
.mainSecTxt02 > ul{ flex-wrap: wrap; }
.mainSecTxt02Txt{ flex-basis: 100%; margin-bottom: 20px; }
.mainSecTxt02Txt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecTxt02Img{ flex-basis: 100%; text-align: center; }

.mainSecTxt03{ width: 90%; background: #eee; padding: 20px; margin: 0 auto 40px auto; }
.mainSecTxt03 p{ font-size: 1.8rem; text-align: center; line-height: 2; }

.mainSecBtn{ width: 90%; margin: 0 auto 40px auto; }
.mainSecBtn a{ display: block; font-size: 2rem; }


.mainSecTable{ width: 96%; margin: 0 auto 40px auto; }
.mainSecTable table{ width: 100%; border-collapse: collapse; }
.mainSecTable th{ padding: 5px; font-size: 1.3rem; }
.mainSecTable td{ padding: 5px; font-size: 1.3rem; word-break: break-all; }
.mainSecTable td span{ font-size: 1rem; }
.mainSecTable th:nth-child(1){ text-align: center; }
.mainSecTable td:nth-child(1){ width: 5%; text-align: center; margin-left: 10px; }
.mainSecTable td:nth-child(2){ width: 20%; }
.mainSecTable td:nth-child(3){ width: 20%; }
.mainSecTable td:nth-child(4){ width: 20%; }
.mainSecTable td:nth-child(5){ width: 25%; }
.mainSecTable td:nth-child(6){ width: 10%; }

.mainSecTable02{ width: 90%; margin: 0 auto 60px auto; }
.mainSecTable02 table{ width: 100%; border-collapse: collapse; }
.mainSecTable02 th{ width: 30%; padding: 10px; font-size: 1.4rem; }
.mainSecTable02 td{ width: 70%; padding: 10px; font-size: 1.4rem;  }
.mainSecTable02 td ul{ margin-left: 30px; }
.mainSecTable02 td li{ list-style-type: disc; }


.pagetopBtn{ width: 120px; margin: 0 10px 0 auto; }
.pagetopBtn a{ font-size: 1.3rem; padding: 5px; }
.pagetopBtn a i{ display: block; font-size: 1rem; margin-right: 10px; transform: rotate(-90deg); }
.pagetopBtn a p{  }
.pagetopBtn a:hover{ background: #28377f; color: #fff; }


.mainSecMovie{ position: relative; width: 100%; padding-top: 56.25%; }
.mainSecMovie iframe{ position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.mainSecMovie01{}
.mainSecMovie01 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecMovie01 > ul > li{ flex-basis: 100%; margin-bottom: 30px; }
.mainSecMovie01Tit{ font-size: 1.6rem; font-weight: 700; margin-bottom: 10px; text-align: center; }


.companySecTxt01{ color: #26347e; font-size: 3rem; text-align: right; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; margin-top: 30px; }
.companySecTxt01 span{ font-size: 2rem; margin-right: 30px; }

.mainSecMap{ width: 100%; margin: 0 auto 40px auto; height: 0; position: relative; padding-top: 46.29%; }
.mainSecMap iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.advantageSec{ width: 90%; margin: 0 auto; }
.advantageSec > ul{}
.advantageSec > ul > li{ margin-bottom: 60px; }
.advantageSec > ul > li:nth-child(even) .advantageSec01 > ul{ flex-direction: row; }
.advantageSec > ul > li:nth-child(odd) .advantageSec01 > ul{  }
.advantageSec01{}
.advantageSec01 > ul{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.advantageSec01 > ul > li:nth-child(1){ flex-basis: 100%; }
.advantageSec01 > ul > li:nth-child(2){ flex-basis: 100%; }

.advantageSec01Tit{}
.advantageSec01Num{ font-size: 6rem; }
.advantageSec01Tit01{ font-size: 2.5rem; }
.advantageSec01Txt{ margin-bottom: 20px; }
.advantageSec01Txt p{ font-size: 1.5rem; line-height: 1.7; }
.advantageSec01Txt ol{ margin-left: 30px; }
.advantageSec01Txt ol > li{ list-style-type: decimal; font-size: 1.5rem; }
.advantageSec01Btn{}
.advantageSec01Btn > ul{ flex-wrap: wrap; }
.advantageSec01Btn > ul > li{ flex-basis: 100%; margin-bottom: 10px; }
.advantageSec01Btn > ul > li a{ font-size: 1.5rem; }


.contactSec{ width: 90%; margin: 0 auto 100px auto; }
.thanksSec{ width: 900px; margin: 0 auto; }
.thanksSec01{ border: 1px solid #0067b7; padding: 10px; margin-bottom: 40px; }
.thanksSec p{ text-align: center; }

.privacySec{ width: 90%; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.5rem; line-height: 1.7; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol > li{ list-style-type: decimal; }

.sitemapSec{ width: 90%; margin: 0 auto; }
.sitemapSec > ul{}
.sitemapSec > ul > li{ margin-bottom: 20px; font-size: 1.8rem; }
.sitemapSec > ul > li > a{ font-weight: 700; font-size: 2rem; }
.sitemapSec > ul > li > ul{ margin-top: 5px; }
.sitemapSec > ul > li > ul > li{ position: relative; padding-left: 20px; margin-bottom: 10px; }
.sitemapSec > ul > li > ul > li:after{ display: block; content: ""; position: absolute; top: .75em; left: 0; width: 8px; height: 1px; background-color: #999; }

.sitemapSec > ul > li.facebook{ width: 300px;  background: #375794; color: #fff; margin-top: 20px; }
.sitemapSec > ul > li.youtube{ width: 300px; background: #f8031b; color: #fff; }
.sitemapSec > ul > li.facebook a,
.sitemapSec > ul > li.youtube a{ display: block; color: #fff; text-align: center; padding: 10px; }
.sitemapSec > ul > li.facebook i,
.sitemapSec > ul > li.youtube i{ margin-right: 10px; font-size: 2rem; }
.sitemapSec > ul > li.facebook a:hover{  background: #fff; color: #375794; }
.sitemapSec > ul > li.youtube a:hover{ background: #fff; color: #f8031b; }






/* SHIMIZU AXIS */
.axis_sec{ width: 90%; margin: 0 auto 40px auto; }
.axis_tit{ color: var(--main-color); text-align: center; }
.axis_tit p{ font-size: 1.4rem; letter-spacing: 5px; }

.axis_tit p:before,
.axis_tit p:after{
width: 10em;
}

.axis_tit h3{ font-size: 3.8rem; letter-spacing: 3px; }

.axis_txt{ width: 90%; margin: 0 auto 30px auto; }
.axis_txt p{ font-size: 1.4rem; line-height: 1.7; }

.axis_img{ text-align: center; margin-bottom: 50px; }

.axis_list{ width: 100%; }
.axis_item{ display: flex; flex-wrap: wrap; margin-bottom: 50px; }
.axis_item_vision{}
.axit_item_tit{ flex-basis: 100%; padding: 20px; height: 130px; }
.axit_item_tit_wrap{  position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); }


.axit_item_tit01{ width: 160px; font-size: 1.3rem; }
.axit_item_tit02{ font-size: 4rem; }
.axit_item_tit03{ font-size: 1.8rem; }


.axis_item_sec{ flex-basis: 100%; background-color: #f5f5f5; padding: 15px 15px 15px 20px; }
.axis_item_list{ margin-top: 10px; }
.axis_item_item{ position: relative; padding-left: 30px; font-size: 1.6rem; margin-bottom: 15px; }
.axis_item_item:before{ content: ""; display: block; position: absolute; left: 0; top: 0; font-family: 'icomoon' !important; content: "\e905"; }


.axis_item_list_mind{}
.axis_item_list_mind .axis_item_item{ padding-left: 0; }
.axis_item_list_mind .axis_item_item:before{ display: none; }

.axis_item_mind .axis_item_sec{ padding: 15px 15px 15px 20px; }

dl.axis_item_dl dt p{ display: flex; align-items: center; }
dl.axis_item_dl dt span{ width: 40px; height: 40px; font-size: 2.3rem; margin-right: 3px; line-height: 40px; }

/* axis_item_dl */
dl.axis_item_dl{ width: 100%; }
dl.axis_item_dl div{ position: relative; display: flex; justify-content: space-between; margin: 5px 0; padding: 5px 0; flex-wrap: wrap; border-bottom: 1px dotted #ccc; }
dl.axis_item_dl div::after{ content: ""; display: block; position: absolute; top: 50%; z-index: 1; width: 100%; border-bottom: dotted 3px #addab9; }
dl.axis_item_dl dt{ flex-basis: 100%; font-size: 2rem; }
dl.axis_item_dl dd{ flex-basis: 100%; font-size: 1.8rem; padding: 0; }




}
/* ----------------------------------------------------------
 SP CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 TAB CSS
---------------------------------------------------------- */
@media screen and (min-width:681px) and (max-width:1024px){

img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 50%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; padding-top: 0; }

/* 非表示用 */
.noneTAB		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ width: 100%; margin: 0 auto; background: #fff; position: initial; top: 0; right: 0; left: 0; z-index: 3; height: 50px; }
#header{ display: block; }
.headerLogo{ flex-basis: auto; width: 100%; padding: 0px; text-align: left; }
.headerLogo a{ height: 50px; line-height: 35px; }
.headerLogo a:hover{ opacity: 0.6; }
.headerLogo img{ width: 30%; height: auto; margin: 0 0; max-height: 30px; }
.gNavi{ display: none; }
.headerTel{ display: none; }
.headerContact{ display: none; }



/*ドロワー*/
.l-drawer{ position: relative; }
.l-drawer__checkbox{ display: none; }
.l-drawer__icon{
	cursor: pointer;
	display: block;
	width: 45px;
	height: 45px;
	position: fixed;
	top: 0px;
	right: 3px;
}
.l-drawer__icon-parts, .l-drawer__icon-parts:before, .l-drawer__icon-parts:after{
	background-color: #aadbff;
	display: block;
	width: 26px;
	height: 2px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}
.l-drawer__icon-parts:before, .l-drawer__icon-parts:after{ content: " "; }
.l-drawer__icon-parts:before{ top: 10px; }
.l-drawer__icon-parts:after{ top: -16px; }
.l-drawer__overlay{
	background: #000;
	opacity: 0;
	pointer-events: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
}
.l-drawer__menu{
	background: rgba(255,255,255,0.9);
	color: #000;
	max-width: 100%;
	width: 100vw;
	height: 100vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	top: 0;
	right: -100vw;
}
.l-drawer__icon{ z-index: 999; }
.l-drawer__menu{ z-index: 998; }
.l-drawer__overlay{ z-index: 99; }
.l-drawer__checkbox:checked ~ .l-drawer__icon .l-drawer__icon-parts{ background: transparent; }
.l-drawer__checkbox:checked ~ .l-drawer__icon .l-drawer__icon-parts:before{ -webkit-transform: rotate(-45deg); transform: rotate(-45deg); top: 0; background: #0068b7; }
.l-drawer__checkbox:checked ~ .l-drawer__icon .l-drawer__icon-parts:after{ -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 0; background: #0068b7; }
.l-drawer__checkbox:checked ~ .l-drawer__overlay{ opacity: 0.3; pointer-events: auto; }
.l-drawer__checkbox:checked ~ .l-drawer__menu{ right: 0; }
.l-drawer__icon-parts, .l-drawer__icon-parts:after, .l-drawer__icon-parts:before, .l-drawer__overlay, .l-drawer__menu{ -webkit-transition: all 0.7s; transition: all 0.7s; }

nav.l-drawer__menu{ padding: 80px 20px 80px 20px; }





.accordion div{	cursor: pointer }
.accordion li > ul > li > ul{ display:none; }

/*ACCORDION*/
.accordion { width: 100%; border-top: 1px solid #ccc; margin-bottom: 30px; }
.accordion a { display: block; font-size: 1.6rem; font-weight: 700; padding: 15px; border-bottom: 1px solid #ccc; }
.accordion > li{}
.accordion > li a{ display: block; font-size: 1.6rem; font-weight: 700;	cursor: pointer; position: relative; }
.accordion > li a.active{ background: #0068b7; color: #fff; }
.accordion > li a.active + ul{ background: #fff; }
.accordion > li a:after, .accordion > li a.active:after{ position: absolute; right: 20px; color: #0068b7; }
.accordion > li a.toggle:after{	font-family: 'icomoon';	content: '\e902'; transform: rotate(90deg); }
.accordion > li a.active:after{	font-family: 'icomoon';	content: '\e902'; transform: rotate(270deg); color: #fff; }
.accordion > ul > li > ul > li > ul{ display: none; }
.accordion > li > ul > li > ul > li a{ display: block; border-bottom: 1px solid #ccc; padding: 15px; position: relative; }
.accordion > li > ul > li > ul > li a:active{ background: #0068b7; color: #fff; }
.accordion > li > ul > li a:hover{ background-color: #0068b7; color: #fff; }

.sitemapSecBnr{}
.sitemapSecBnr > ul{}
.sitemapSecBnr > ul > li{ margin-bottom: 10px; }
.sitemapSecBnr a{ display: block; color: #fff; text-align: center; padding: 10px; }
.sitemapSecBnr a i{ margin-right: 10px; font-size: 2rem; }



/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btmMenu { display: none; }

.footerSns{ width: 80%; margin: 0 auto 40px auto; }
.footerSns > ul{ }
.footerSns > ul > li{ flex-basis: 48%; text-align: center; }
.footerSns > ul > li a{ display: flex; align-items: center; color: #fff; font-size: 1.8rem; font-weight: 700; padding: 10px; line-height: 1.3; letter-spacing: 1px; }
.footerSns > ul > li a i{ flex-basis: 15%; font-size: 3rem; text-align: right; }
.footerSnsTit{ flex-basis: 80%; }
.footerSns > ul > li a span{ font-size: 1.5rem; }

.footerContact{ background: #f6f8fb; padding: 30px 0; }
.footerContact01{ width: 90%; margin: 0 auto; }
.footerContact01 ul{ display: flex; }
.footerContact01 ul > li{ flex-basis: 50%; padding: 20px 10px; }
.footerContact01 ul > li:first-child{ border-right: 1px solid #666; }
.footerContact02{ display: flex; justify-content: space-between; align-items: center; }
.footerContact02Ico{ flex-basis: 15%;  }
.footerContact02Ico i{ display: block; font-size: 2.5rem; text-align: center; color: #fff; line-height: 50px; width: 50px; height: 50px; border-radius: 100%; background: #0068b7; }
.footerContact02Tel{ flex-basis: 80%; font-size: 4rem; color: #27367e; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; letter-spacing: 1px; text-align: right; }
.footerContact02Tel span{ display: block; font-size: 1.5rem; color: #333; font-family: source-han-sans-japanese, sans-serif; font-weight: 300; font-style: normal; text-align: right; }

.footerContact03{ margin-bottom: 10px; }
.footerContact03 a{ display: block; color: #0068b7; font-size: 1.6rem; text-align: center; padding: 15px 10px 10px 10px; border: 2px solid #0068b7; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }


footer{ background: #27367e; padding: 40px 0 20px 0; }
#footer{ width: 80%; margin: 0 auto; flex-wrap: wrap; margin-bottom: 50px; }
.footerLogo{ flex-basis: 100%; margin-bottom: 20px; text-align: center; }
.footerLogo img{ width: 30%; height: auto; margin: 0 auto; }
.footerAdd{ flex-basis: 100%; font-size: 1.2rem; text-align: center; margin-bottom: 30px; }
.footerNav{ flex-basis: 100%; }
.footerNav nav{}
.footerNav nav > ul{ display: flex; border: 1px solid #9fabe1; }
.footerNav nav > ul > li{ flex-basis: 33%; border-right: 1px solid #9fabe1; position: relative; padding: 0; }
.footerNav nav > ul > li:last-child{ border-right: 0; }
.footerNav nav > ul > li:before{ display: none; }
.footerNav nav > ul > li a i{ margin-left: 10px; }
.footerNav nav > ul > li a{ display: block; color: #fff; font-size: 1.1rem; padding: 10px 5px; text-align: center; }
.footerNav nav > ul > li a:hover{ opacity: 0.6; }
.footerCopyright{ color: rgba(255,255,255,0.5); font-size: 1rem; text-align: center; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ padding: 40px 0; }
.h1Tit{ font-size: 2.5rem; }

h1{ width: 90%; margin: 0 auto; font-size: 5rem; }
h1 span{ display: block; color: #fff; font-size: 2rem; }
h1 span:before{ content: "―"; letter-spacing: -.2em; width: 2em; margin-right: .5em; }


h2{ width: 90%; margin: 0 auto 40px auto; position: relative; color: #26357e; font-size: 4rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; text-align: center; }
h2:before{ content: ""; position: absolute; bottom: -15px; width: 200px; height: 3px; left: 50%; transform: translateX(-50%); background-color: #0067b7; }
h2 span{ display: block; color: #0066b7; font-size: 2rem; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-bottom: 20px; }

h3{ font-size: 3rem; font-weight: 700; text-align: center; margin-bottom: 40px; }

.mt20{ margin-top: 20px; }
.mt40{ margin-top: 40px; }
.mt80{ margin-top: 80px; }

/* ぱんくず */
#breadcrumbs{ background: #f6f8fb; padding: 5px 0 10px 0; margin-bottom: 30px; }  
#breadcrumbs > ol{ width: 90%; margin: 0 auto; } 
#breadcrumbs > ol > li{ display: inline-block; position: relative; }
#breadcrumbs > ol > li:before{ content: ">"; display: block; position: absolute; top: .4em; left: 4px; color: #999; font-size: 1.3rem; }
#breadcrumbs > ol > li:first-child:before{ content: ""; }
#breadcrumbs > ol > li a{ color: #999; font-size: 1.3rem; margin: 0 0 0 20px; }
#breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
#breadcrumbs > ol > li a:hover{ opacity: 0.6; }
/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ position: relative; height: 400px; }
.topImgTit{ position: absolute; left: 5%; top: 50px; color: #fff; font-size: 7.7rem; font-style: italic; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-feature-settings: "palt"; letter-spacing: 10px; line-height: 1.2; }
.topImgTit:after{ content: "――"; letter-spacing: -.2em; width: 2em; margin-right: .5em; }
.topImgTit span{ font-size: 7rem; }
.topImgTxt{ position: absolute; left: 10%; bottom: 30%; font-size: 1.8rem; line-height: 2; color: #fff; letter-spacing: 2px; }


.topImgBnr{ position: absolute; bottom: 20px; right: 20px; width: 28%; }
.topImgBnr img{ width: 100%; height: auto; }
.topImgBnr a:hover{ opacity: 0.6; }


.topBusiness{ 
	background: linear-gradient(to bottom, rgba(238,238,238,0) 0%,rgba(238,238,238,0) 85%,rgba(238,238,238,1) 85%) ,url("../images/bg_business01.jpg") no-repeat top center;
	background-size: cover;
	padding: 60px 0 0 0; }
.topTit{ color: #fff; font-size: 5rem; text-align: center; margin-bottom: 60px; }
.topBusiness ul{ width: 90%; flex-wrap: wrap; }
.topBusiness ul > li{ flex-basis: 48%; margin-bottom: 40px; }
.topBusiness ul > li:nth-child(1),
.topBusiness ul > li:nth-child(2){ opacity: 1 !important; }
.topBusinessTit{ margin: 0 auto 20px auto; }
.topBusiness01{ padding: 30px 20px; }
.topBusiness ul > li a .topBusiness01{ transition: 0.5s ease-in-out; }
.topBusiness ul > li a:hover .topBusiness01{ opacity: 0.6; }
.topBusiness01Tit01{ color: #fff; text-align: center; font-size: 3.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 20px; }
.topBusiness01Tit02{ color: #fff; text-align: center; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 20px; }
.topBusiness01Txt{ }
.topBusiness01Txt p{ color: #fff; font-size: 1.4rem; line-height: 1.7; }


.topBusiness01After{ position: relative; z-index: 0; padding: 0 0 40px 0; background-color: #0068b7; }
.topBusiness ul > li a .topBusiness01After{ transition: 0.5s ease-in-out; }
.topBusiness ul > li a:hover .topBusiness01After{ opacity: 0.6; }
.topBusiness01After::after{ content: ''; position: absolute; left: 0; top: 0; transform: skewY(-5deg); transform-origin: top right; z-index: -1; width: 100%; height: 100%; background: #eee; }


.topTechnology{ background: #eee; padding-top: 60px; }
.topTechnology01{ width: 90%; margin: 0 auto; }
.topTechnologyTit{ color: #0068b7; font-size: 5rem; letter-spacing: 3px; margin-bottom: 30px; }
.topTechnologyTit span{ font-size: 2rem; color: #27367e; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-left: 20px; }

.topTechnology ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.topTechnology ul > li{ flex-basis: 48%; margin-bottom: 60px; position: relative; }
.topTechnologyTit01{ position: initial; bottom: -30px; left: -30px; width: 100%; height: auto; background: #fff; padding: 20px; }
.topTechnologyTit02{ color: #26347e; font-size: 3rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }
.topTechnologyTit03{ color: #878787; font-size: 1.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.topTechnologyImg{ text-align: right; }

.topTechnology01 a .topTechnologyTit01{ transition: 0.5s ease-in-out; }
.topTechnology01 a:hover .topTechnologyTit01{ background-color: #0066b7; }
.topTechnology01 a:hover .topTechnologyTit02{ color: #fff; }
.topTechnology01 a:hover .topTechnologyTit03{ color: #fff; }

.bgBlue01{ background-color: #0066b7; }
.coWhite{ color: #fff; }

.topDesignpipe{ background: url("../images/bg_designpipe01.jpg") no-repeat center center; background-size: cover; padding: 70px 0; margin-bottom: 60px; }
.topDesignpipe01{ width: 700px; height: 300px; background: rgba(255,255,255,0.85); margin: 0 auto; padding: 40px; }
.topDesignpipe01Tit01{ font-size: 1.5rem; color: #27367e; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; letter-spacing: 5px; margin-bottom: 10px; }
.topDesignpipe01Tit02{ font-size: 7rem; color: #27367e; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: normal; line-height: 1; margin-bottom: 20px; }
.topDesignpipe01Txt01{ font-size: 2.7rem; color: #333; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.topDesignpipe01Btn01{ width: 240px; margin: 0 auto; }
.topDesignpipe01Btn01 a{ display: block; color: #0067b7; font-size: 2rem; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; border: 2px solid #0067b7; padding: 15px 10px 10px 10px; }
.topDesignpipe01Btn01 a:hover{ background: #0067b7; color: #fff; }

/*
.topInfo{ display: flex; justify-content: space-between; margin-bottom: 80px; }
.topEquipment,
.topProducts{ flex-basis: 50%; position: relative; overflow: hidden; }
.topEquipment:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; background: url(../images/bg_equipment01.jpg) no-repeat center center; background-size: cover; transition: all .3s ease-out; }
.topProducts:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: cover; transition: all .3s ease-out; }
.topEquipment:hover:after,
.topProducts:hover:after{ opacity: 1; transform: scale(1.2); }


.topProducts{ flex-basis: 50%; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: 100% auto; position: relative; }
.topEquipment a,
.topProducts a{ display: block; padding: 60px 40px; }

.topEquipment01,
.topProducts01{ padding: 40px; border: 1px solid #fff; text-align: center; position: relative; z-index: 1; }
.topEquipment01Tit,
.topProducts01Tit{ color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; position: relative; }
.topEquipment01Tit span,
.topProducts01Tit span{ color: #fff; font-size: 2rem; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }

*/

.topInfo02{ position: relative; margin-bottom: 60px; }
.topNews{ margin: 0 auto; width: 100%; background: #0068b7; padding: 20px; }
.topNewsTit{ color: #fff; font-size: 5rem; margin-bottom: 0px; }
.topNewsTit span{ font-size: 2rem; margin-left: 20px; }
.topNews01{}
.topNews01 > ul{ width: 100%; margin: 0 auto; }
.topNews01 > ul > li{ display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #4d96cd; padding: 20px 0; }
.topNewsDate01{ flex-basis: 10%;  color: #fff; font-size: 1.4rem; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; }
.topNewsCat01{ flex-basis: 15%; background: #fff; color: #0067b7; font-size: 1.3rem; padding: 3px 5px; text-align: center; }
.topNewsTit01{ flex-basis: 70%; }
.topNewsTit01 a{ font-size: 1.6rem; color: #fff; }
.topNewsTit01 a:hover{ opacity: 0.6; }

.topCompany{ position: initial; left: 0; top: 0; width: 100%; background: #333; }
.topCompany > ul{ display: flex; justify-content: space-between; align-items: center; }
.topCompany > ul > li:nth-child(1){ flex-basis: 60%; padding: 20px; }
.topCompany > ul > li:nth-child(2){ flex-basis: 40%; }

.topCompany > ul > li > ul{ margin-top: 10px; }
.topCompany > ul > li > ul > li{ flex-basis: 48%; margin-bottom: 20px; }
.topCompany > ul > li > ul > li > a{ padding: 10px 15px; font-size: 1.5rem; }
.topCompany > ul > li > ul > li > a span:before{ content: ""; position: absolute; top: 50%; right: 20px; width: 7px; height: 7px; border-top: 1px solid #333; border-right: 1px solid #333;  transform: rotate(45deg); margin-top: -6px; }
.topCompany > ul > li > ul > li > a:hover span:before{ border-top: 1px solid #fff; border-right: 1px solid #fff; }



.top_recruit{ margin-bottom: 80px; }
.top_recruit_sec{ position: relative; overflow: hidden; }
.top_recruit_sec:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_recruit_sec a{ display: block; position: relative; z-index: 1; height: 100%; color: #fff; text-align: center; padding: 50px 0;	}
.top_recruit_sec:after{ background: url("../images/bg_recruit01.jpg") no-repeat 0 40%; background-size: cover; }
.top_recruit_sec:hover:after{ opacity: .8; transform: scale(1.1); }
.top_recruit_sec:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,104,183,0.5); }





.bnrSec{ width: 96%; margin: 0 auto 60px auto; }
.bnrSec > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.bnrSec > ul:after{ content: ""; display: block; width: 32%; height: 0; }
.bnrSec > ul:before{ content: ""; display: none; width: 25%; height: 0; order: 1; }
.bnrSec > ul > li{ flex-basis: 32%; border-bottom: 1px solid #ccc; padding-bottom: 10px; margin-bottom: 20px; }
.bnrSec > ul > li:nth-child(13),
.bnrSec > ul > li:nth-child(14),
.bnrSec > ul > li:nth-child(15){ display: none; }
.bnrSecImg{ text-align: center; margin-bottom: 10px; }
.bnrSecImg a:hover{ opacity: 0.6; }
.bnrSecTit{ text-align: center; font-size: 1.2rem; line-height: 1.2; }


.contents{ width: 100%; margin: 0 auto; }

.businessSec{ margin-bottom: 100px; }
.businessSec > ul{}
.businessSec > ul > li{ min-height: auto; margin-bottom: 60px; }
.businessSec01{}
.businessSec01 > ul{ display: flex; justify-content: space-between; }

.businessSec > ul > li:nth-child(even) .businessSec01 > ul{ flex-direction: row-reverse; }
.businessSec > ul > li:nth-child(odd) .businessSec01 > ul{  }

.businessSec01 > ul > li{ flex-basis: 50%; }
.businessSec > ul > li a .businessSec01Img img{ transition: 0.5s ease-in-out; }
.businessSec > ul > li a:hover .businessSec01Img img{ opacity: 0.6; }

.businessSec01Txt{ position: initial; top: auto; width: 100%; height: auto; z-index: 2; padding: 20px; }
.businessSec > ul > li:nth-child(odd) .businessSec01Txt{ left: 0; }
.businessSec > ul > li:nth-child(even) .businessSec01Txt{ right: 0; }

.businessSec01Tit01{ background: #fff; color: #0068b7; font-size: 1.7rem; width: 110px; text-align: center; padding: 3px; margin-bottom: 20px; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.businessSec01Tit02{ color: #fff; font-size: 4rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 15px; }
.businessSec01Tit03{ color: #fff; font-size: 2rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.businessSec01Txt01{ width: 100%; }
.businessSec01Txt01 p{ color: #fff; font-size: 1.6rem; line-height: 1.5; }

.businessSec01Img{ position: initial; top: 0; }
.businessSec > ul > li:nth-child(odd) .businessSec01Img{ right: 0; left: auto; }
.businessSec > ul > li:nth-child(even) .businessSec01Img{ right: auto; left: 0; }

.contentsNav{ width: 90%; padding: 20px 30px; margin: 0 auto 40px auto; }
.contentsNavTit{ color: #fff; font-size: 2rem; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-right: 30px; }
.contentsNav nav{}
.contentsNav nav > ul{ display: flex; flex-wrap: wrap; }
.contentsNav nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav nav > ul > li a{ color: #fff; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav nav > ul > li:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #fff; border-bottom: 3px solid #fff; transform: rotate(-45deg); }



.contentsNav02{ width: 90%; background: #eee; padding: 20px 30px; display: flex; margin: 0 auto 40px auto; }
.contentsNav02 nav{ width: 75%; }
.contentsNav02 nav > ul{ display: flex; flex-wrap: wrap; }
.contentsNav02 nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav02 nav > ul > li a{ color: #333; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav02 nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav02 nav > ul > li:after{ display: block; content: ""; position: absolute; top: 10px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0068b7; border-bottom: 3px solid #0068b7; transform: rotate(-45deg); }




.mainSec{ padding-bottom: 60px; border-bottom: 1px solid #ccc; margin-bottom: 80px; }

.mainSecImg{ text-align: center; margin-bottom: 40px; }
.mainSecTxt{ width: 90%; margin: 0 auto 40px auto; }
.mainSecTxt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecSize{ width: 90%; margin: 0 auto 40px auto; }
.mainSecSize02{ width: 90%; margin: 0 auto 40px auto; }
.mainSecSize > ul{}
.mainSecSize02 > ul{ display: flex; justify-content: space-between; }
.mainSecSize > ul > li{ background: #eee; border-radius: 10px; padding: 30px; display: flex; align-items: center; margin-bottom: 10px; }
.mainSecSize02 > ul > li{ flex-basis: 49%; background: #eee; border-radius: 10px; padding: 20px; display: flex; align-items: center; }
.mainSecSizeTit{ flex-basis: 25%; background: #fff; color: #0b6dba; font-size: 1.6rem; font-weight: 700; border: 2px solid #0b6dba; text-align: center; padding: 10px 20px; margin-right: 40px; }
.mainSecSize02 .mainSecSizeTit{ flex-basis: 35%; padding: 10px; margin-right: 20px; }
.mainSecSizeTxt{ font-size: 2.3rem; font-weight: 700; }
.mainSecImg02{ width: 90%; margin: 0 auto 40px auto; }
.mainSecImg02 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg02 > ul > li{ flex-basis: 48%; margin-bottom: 40px; }
.mainSecImg02 > ul > li:nth-child(1),
.mainSecImg02 > ul > li:nth-child(2){ opacity: 1 !important; }
.mainSecImg02Img{ margin-bottom: 10px; }
.mainSecImg02Img img{ width: 100%; height: auto; }
.mainSecImg02Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg02Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }
.mainSecImg02Tit02{ font-size: 2.5rem; margin-bottom: 10px; font-weight: 700; }

	
.mainSecSize03{ width: 90%; margin: 0 auto 40px auto; }
.mainSecSize03 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecSize03 > ul > li{ flex-basis: 33%; margin-bottom: 30px; }
.mainSecSize03Img{}
.mainSecSize03Img img{ width: 100%; height: auto; }
.mainSecSize03Txt{}
.mainSecSize03Txt > ul{ background: #f5f5f5; padding: 20px; }
.mainSecSize03Txt > ul > li{ font-size: 2rem; font-weight: 700; text-align: center; }
.mainSecSize03Txt > ul > li{}
.mainSecSize03Txt > ul > li.arrow{ transform: rotate(90deg); }
.mainSecSize03Txt > ul > li.arrow i{}


.mainSecImg03{ width: 90%; margin: 0 auto 40px auto; }
.mainSecImg03 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg03 > ul > li{ flex-basis: 32%; margin-bottom: 40px; }
.mainSecImg03 > ul > li:nth-child(1),
.mainSecImg03 > ul > li:nth-child(2),
.mainSecImg03 > ul > li:nth-child(3){ opacity: 1 !important; }
.mainSecImg03Img{ margin-bottom: 10px; }
.mainSecImg03Img img{ width: 100%; height: auto; }
.mainSecImg03Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg03Tit:after{ display: block; content: ""; position: absolute; top: 6px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }

.mainSecImg04{ width: 90%; margin: 0 auto 40px auto; }
.mainSecImg04 > ul{ display: flex; justify-content: space-between; }
.mainSecImg04 > ul > li{ font-size: 1.5rem; line-height: 1.7; }
.mainSecImg04 > ul > li ol{ margin: 0 0 20px 20px; }
.mainSecImg04 > ul > li ol > li{ list-style-type: decimal; }
.mainSecImg04 > ul > li:nth-child(1){ flex-basis: 60%; }
.mainSecImg04 > ul > li:nth-child(2){ flex-basis: 35%; text-align: center; }




.mainSecTxt02{ width: 90%; margin: 0 auto 40px auto; }
.mainSecTxt02 > ul{ display: flex; justify-content: space-between; }
.mainSecTxt02Txt{ flex-basis: 50%; }
.mainSecTxt02Txt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecTxt02Img{ flex-basis: 45%; }

.mainSecTxt03{ width: 90%; background: #eee; padding: 40px; margin: 0 auto 40px auto; }
.mainSecTxt03 p{ font-size: 2rem; text-align: center; line-height: 2; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; }

.mainSecBtn{ width: 570px; margin: 0 auto 40px auto; }
.mainSecBtn a{ display: block; font-size: 2.8rem; font-weight: 700; color: #333; background: #d9d900; padding: 15px; text-align: center; border: 2px solid #d9d900; }
.mainSecBtn a:hover{ background: #333; color: #d9d900; }


.mainSecTable{ width: 96%; margin: 0 auto 40px auto; }
.mainSecTable table{ width: 100%; border-collapse: collapse; }
.mainSecTable th{ padding: 10px; font-size: 1.4rem; }
.mainSecTable td{ padding: 10px; font-size: 1.4rem;  }
.mainSecTable td span{ font-size: 1rem; }
.mainSecTable th:nth-child(1){ text-align: center; }
.mainSecTable td:nth-child(1){ width: 5%; text-align: center; margin-left: 10px; }
.mainSecTable td:nth-child(2){ width: 20%; }
.mainSecTable td:nth-child(3){ width: 20%; }
.mainSecTable td:nth-child(4){ width: 20%; }
.mainSecTable td:nth-child(5){ width: 25%; }
.mainSecTable td:nth-child(6){ width: 10%; }

.mainSecTable02{ width: 90%; margin: 0 auto 60px auto; }
.mainSecTable02 table{ width: 100%; border-collapse: collapse; }
.mainSecTable02 th{ width: 30%; border-bottom: 1px solid #0069b5; text-align: left; padding: 20px; font-size: 1.7rem; }
.mainSecTable02 td{ width: 70%; border-bottom: 1px solid #ccc; padding: 20px; font-size: 1.7rem;  }
.mainSecTable02 td ul{ margin-left: 30px; }
.mainSecTable02 td li{ list-style-type: disc; }


.pagetopBtn{ width: 130px; margin: 0 2% 0 auto; }
.pagetopBtn a{ display: flex; justify-content: center; font-size: 1.6rem; text-align: center; color: #28377f; border: 1px solid #28377f; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; padding: 10px; position: relative; }
.pagetopBtn a i{ display: block; font-size: 1rem; margin-right: 10px; transform: rotate(-90deg); }
.pagetopBtn a p{  }
.pagetopBtn a:hover{ background: #28377f; color: #fff; }


.mainSecMovie{ position: relative; width: 100%; padding-top: 56.25%; }
.mainSecMovie iframe{ position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.mainSecMovie01{ width: 90%; margin: 0 auto; }
.mainSecMovie01 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecMovie01 > ul > li{ flex-basis: 48%; margin-bottom: 30px; }
.mainSecMovie01Tit{ font-size: 1.8rem; font-weight: 700; margin-bottom: 10px; }


.companySecTxt01{ color: #26347e; font-size: 3rem; text-align: right; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; margin-top: 30px; }
.companySecTxt01 span{ font-size: 2rem; margin-right: 30px; }

.mainSecMap{ width: 100%; margin: 0 auto 40px auto; height: 0; position: relative; padding-top: 46.29%; }
.mainSecMap iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.advantageSec{ width: 90%; margin: 0 auto; }
.advantageSec > ul{}
.advantageSec > ul > li{ margin-bottom: 60px; }
.advantageSec > ul > li:nth-child(even) .advantageSec01 > ul{ flex-direction: row-reverse; }
.advantageSec > ul > li:nth-child(odd) .advantageSec01 > ul{  }
.advantageSec01{}
.advantageSec01 > ul{ display: flex; justify-content: space-between; align-items: center; }
.advantageSec01 > ul > li:nth-child(1){ flex-basis: 48%; }
.advantageSec01 > ul > li:nth-child(2){ flex-basis: 50%; }

.advantageSec01Tit{}
.advantageSec01Num{ font-size: 8rem; color: #0066b7; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.advantageSec01Tit01{ font-size: 3rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 20px; }
.advantageSec01Txt{ margin-bottom: 20px; }
.advantageSec01Txt p{ font-size: 1.6rem; line-height: 1.7; }
.advantageSec01Txt ol{ margin-left: 30px; }
.advantageSec01Txt ol > li{ list-style-type: decimal; }
.advantageSec01Btn{}
.advantageSec01Btn > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.advantageSec01Btn > ul > li{ flex-basis: 100%; margin-bottom: 10px; }
.advantageSec01Btn > ul > li a{ display: block; color: #0066b7; font-size: 1.7rem; border: 1px solid #0066b7; text-align: center; padding: 20px 15px 15px 15px; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.advantageSec01Btn > ul > li a:hover{ background: #0066b7; color: #fff; }
.advantageSec01Img{}


.contactSec{ width: 90%; margin: 0 auto 100px auto; }
.thanksSec{ width: 90%; margin: 0 auto; }
.thanksSec01{ border: 1px solid #0067b7; padding: 10px; margin-bottom: 40px; }
.thanksSec p{ text-align: center; }

.privacySec{ width: 90%; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.6rem; line-height: 1.7; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol > li{ list-style-type: decimal; }

.sitemapSec{ width: 90%; margin: 0 auto; }
.sitemapSec > ul{}
.sitemapSec > ul > li{ margin-bottom: 20px; font-size: 1.8rem; }
.sitemapSec > ul > li > a{ font-weight: 700; font-size: 2rem; }
.sitemapSec > ul > li > ul{ margin-top: 5px; }
.sitemapSec > ul > li > ul > li{ position: relative; padding-left: 20px; margin-bottom: 10px; }
.sitemapSec > ul > li > ul > li:after{ display: block; content: ""; position: absolute; top: .75em; left: 0; width: 8px; height: 1px; background-color: #999; }

.sitemapSec > ul > li.facebook{ width: 300px;  background: #375794; color: #fff; margin-top: 20px; }
.sitemapSec > ul > li.youtube{ width: 300px; background: #f8031b; color: #fff; }
.sitemapSec > ul > li.facebook a,
.sitemapSec > ul > li.youtube a{ display: block; color: #fff; text-align: center; padding: 10px; }
.sitemapSec > ul > li.facebook i,
.sitemapSec > ul > li.youtube i{ margin-right: 10px; font-size: 2rem; }
.sitemapSec > ul > li.facebook a:hover{  background: #fff; color: #375794; }
.sitemapSec > ul > li.youtube a:hover{ background: #fff; color: #f8031b; }



/* SHIMIZU AXIS */
.axis_sec{ width: 90%; margin: 0 auto 100px auto; }
.axis_tit{ color: var(--main-color); text-align: center; }
.axis_tit p{ font-size: 1.8rem; font-family: source-han-serif-japanese, serif; font-weight: 300; font-style: normal; letter-spacing: 5px; }

.axis_tit p{
position: relative;
width: fit-content;
padding: 0 3em;
text-align: center;
margin: 0 auto;
}

.axis_tit p:before,
.axis_tit p:after{
content: '';
background-color: var(--main-color);
width: 30em;
height: 1px;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

.axis_tit p:before{ left: 0; }
.axis_tit p:after{ right: 0; }

.axis_tit p span {
position: relative;
padding: 0 1em;
background: #fff;
z-index: 2;
}


.axis_tit h3{ font-size: 10rem; font-family: grad, serif; font-weight: 700; font-style: italic; letter-spacing: 3px; }

.axis_img{ text-align: center; margin-bottom: 80px; }

.axis_txt{ width: 90%; margin: 0 auto 60px auto; }
.axis_txt p{ font-size: 1.6rem; line-height: 1.7; }

.axis_list{ }
.axis_item{ display: flex; margin-bottom: 50px; }
.axis_item_vision{}
.axit_item_tit{ flex-basis: 32%; color: #fff; padding: 20px; text-align: center; position: relative; }
.axit_item_tit_wrap{  position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); }

.axis_item_vision .axit_item_tit{ background-color: var(--vision-color); }
.axis_item_mission .axit_item_tit{ background-color: var(--mission-color); }
.axis_item_value .axit_item_tit{ background-color: var(--value-color); }
.axis_item_mind .axit_item_tit{ background-color: var(--mind-color); }

.axit_item_tit01{ width: 160px; background-color: #fff; border-radius: 40px; font-size: 1.5rem; padding: 3px; margin: 0 auto; }
.axit_item_tit02{ font-size: 5rem; font-family: grad, serif; font-weight: 700; font-style: normal; letter-spacing: 2px; }
.axit_item_tit03{ font-size: 2.5rem; color: #fff; letter-spacing: 2px; font-family: source-han-serif-japanese, serif; font-weight: 300; font-style: normal; line-height: 1; }

.axis_item_vision .axit_item_tit01{ color: var(--vision-color); }
.axis_item_mission .axit_item_tit01{ color: var(--mission-color); }
.axis_item_value .axit_item_tit01{ color: var(--value-color); }
.axis_item_mind .axit_item_tit01{ color: var(--mind-color); }

.axis_item_sec{ flex-basis: 68%; background-color: #f5f5f5; padding: 20px 20px 20px 30px; }
.axis_item_list{ margin-top: 10px; }
.axis_item_item{ position: relative; padding-left: 30px; font-size: 2rem; font-weight: 700; margin-bottom: 20px; }
.axis_item_item:before{ content: ""; display: block; position: absolute; left: 0; top: 0; font-family: 'icomoon' !important; content: "\e905"; }

.axis_item_vision .axis_item_item{ color: var(--vision-color); }
.axis_item_mission .axis_item_item{ color: var(--mission-color); }
.axis_item_value .axis_item_item{ color: var(--value-color); }
.axis_item_mind .axis_item_item{ color: var(--mind-color); }

.axis_item_list_mind{}
.axis_item_list_mind .axis_item_item{ padding-left: 0; }
.axis_item_list_mind .axis_item_item:before{ display: none; }

.axis_item_mind .axis_item_sec{ padding: 20px 20px 20px 30px; }

dl.axis_item_dl dt p{ display: flex; align-items: center; }
dl.axis_item_dl dt span{ display: block; width: 50px; height: 50px; background-color: var(--mind-color); color: #fff; font-size: 3.3rem; font-family: grad, serif; font-weight: 700; font-style: normal; border-radius: 100%; text-align: center; margin-right: 3px; line-height: 50px; }

/* axis_item_dl */
dl.axis_item_dl{ width: 100%; }
dl.axis_item_dl div{ position: relative; display: flex; justify-content: space-between; margin: 5px 0; padding: 5px 0; }
dl.axis_item_dl div::after{ content: ""; display: block; position: absolute; top: 50%; z-index: 1; width: 100%; border-bottom: dotted 3px #addab9; }
dl.axis_item_dl dt{ margin:0; padding: 0 10px 0 0; background-color: #f5f5f5; z-index: 2; text-align: left; font-family: grad, serif; font-weight: 700; font-style: normal; font-size: 3rem; color: var(--mind-color); }
dl.axis_item_dl dd{ margin:0; padding: 10px 0 0 10px; background-color: #f5f5f5; z-index: 2; text-align: right; font-size: 2rem; font-weight: 700; color: var(--mind-color); }


}
/* ----------------------------------------------------------
 TAB CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 PC CSS
---------------------------------------------------------- */
@media print, screen and (min-width:1025px) and (max-width:1419px){

/* フォントサイズ10px */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; }

/* 非表示用 */
.nonePC		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
.icon{ display: none; }


.topImgBnr{ position: absolute; bottom: 20px; right: 20px; text-align: right; }
.topImgBnr img{ width: 90%; height: auto; }
.topImgBnr a:hover{ opacity: 0.6; }


header{ width: 100%; margin: 0 auto; background: #fff; position: fixed; top: 0; right: 0; left: 0; z-index: 3; }
#header{ display: flex; justify-content: space-between; }
.headerLogo{ flex-basis: 23%; background: #0068b7; text-align: center; }
.headerLogo a{ display: block; background: #0068b7; text-align: center; height: 80px; line-height: 50px; }
.headerLogo a:hover{ opacity: 0.6; }
.headerLogo img{ width: 70%; height: auto; margin: 0 auto; }
.gNavi{ flex-basis: 46%; }
.gNavi > nav{ }
.gNavi > nav > ul{ display: flex; }
.gNavi > nav > ul > li{ flex: 1 0 auto; text-align: center; }
.gNavi > nav > ul > li > a{ display: block; padding: 0 10px; font-size: 1.4rem; font-weight: 700; min-height: 80px; line-height: 80px; }

.headerTel{ flex-basis: 240px; background: #27367e; color: #fff; font-size: 2.4rem; text-align: center; padding-top: 5px; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; margin: 0 0 0 auto; }
.headerTel i{ font-size: 1.6rem; margin-right: 5px; }
.headerTel span{ display: block; font-size: 1.2rem; font-family: source-han-sans-japanese, sans-serif; font-weight: 300; font-style: normal; }
.headerContact{ flex-basis: 80px;  text-align: center;  }
.headerContact a{ display: block; color: #fff; background: #222; height: 80px; }
.headerContact a:hover{ color: #222; background: #f1f1f1; }
.headerContact i{ font-size: 3rem; line-height: 80px; }


.mega-menu{  }
.mega-menu > li{  }
.mega-menu > li > a{ }

.mega-menu li:hover > a,
.mega-menu li > a.current{ background: #ddd; }

.current .gNavi01Tit,
.current i{ color: #fff !important; }

/********
メガメニュー
**********/
.mega-menu {
     margin: 0 auto;
     padding: 0 !important;
     position: relative;
}
 
.mega-menu > li {}

 
/***********
 ドロップダウン
************/
.drop {
	display: none;/*ドロップメニューは、デフォルトでは見えないようにする(重要①)*/
	position: absolute; /*ドロップダウンメニューはabsoluteにする(重要②) */
	width: 470px; /*メガメニューの幅と合わせる*/
	left:  0;
	background: #ddd;
}
.drop ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.drop li{ text-align: left; flex-basis: 50%; } 
.drop li a{ display: block; padding: 10px; font-size: 1.5rem; height: auto; min-height: auto; }
.drop li a i{ font-size: 1rem; margin-right: 10px; }
.drop li a:hover{ background: #aaa; color: #fff; }





/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btmMenu { display: none; }

.footerSns{ margin-bottom: 80px; }
.footerSns > ul{ display: flex; justify-content: center; }
.footerSns > ul > li{ margin: 0 20px; flex-basis: 360px; text-align: center; }
.footerSns > ul > li a{ display: flex; align-items: center; color: #fff; font-size: 2rem; font-weight: 700; padding: 20px; line-height: 1.3; letter-spacing: 1px; }
.footerSns > ul > li a i{ flex-basis: 15%; font-size: 4rem; text-align: right; }
.footerSnsTit{ flex-basis: 80%; }
.footerSns > ul > li a span{ font-size: 1.5rem; }
.facebook{ background: #375794; border: 2px solid #375794; }
.facebook a:hover{ color: #375794; background: #fff; }
.youtube{ background: #f8031b; border: 2px solid #f8031b; }
.youtube a:hover{ color: #f8031b; background: #fff; }

.cofacebook{ color: #375794; }
.coYoutube{ color: #f8031b; }
.bgfacebook{ background: #375794; }
.bgYoutube{ background: #f8031b; }

.footerContact{ background: #f6f8fb; padding: 60px 0; }
.footerContact01{ width: 900px; margin: 0 auto; }
.footerContact01Tit{ color: #333; font-size: 3.5rem; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 30px; }
.footerContact01Tit span{ display: block; font-size: 2rem; color: #0067b7; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.footerContact01 ul{ display: flex; }
.footerContact01 ul > li{ flex-basis: 50%; padding: 30px; }
.footerContact01 ul > li:first-child{ border-right: 1px solid #666; }
.footerContact02{ display: flex; justify-content: space-between; align-items: center; }
.footerContact02Ico{ flex-basis: 15%;  }
.footerContact02Ico i{ display: block; font-size: 2.5rem; text-align: center; color: #fff; line-height: 50px; width: 50px; height: 50px; border-radius: 100%; background: #0068b7; }
.footerContact02Tel{ flex-basis: 80%; font-size: 4.3rem; color: #27367e; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; letter-spacing: 1px; text-align: right; }
.footerContact02Tel span{ display: block; font-size: 1.5rem; color: #333; font-family: source-han-sans-japanese, sans-serif; font-weight: 300; font-style: normal; text-align: right; }
.footerContact02Btn{ }
.footerContact02Btn a{ display: block; color: #fff; font-size: 2rem; text-align: center; padding: 25px 20px; background: linear-gradient(135deg, rgba(0,104,183,1) 37%,rgba(39,54,126,1) 59%,rgba(39,54,126,1) 100%); font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.footerContact02Btn a i{ margin-right: 15px; font-size: 2.5rem; vertical-align: middle; }
.footerContact02Btn a:hover{ opacity: 0.6; }


footer{ background: #27367e; padding: 40px 0 20px 0; }
#footer{ width: 1000px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; margin-bottom: 50px; }
.footerLogo{ flex-basis: 18%; }
.footerAdd{ flex-basis: 28%; color: #fff; font-size: 1.4rem; }
.footerNav{ flex-basis: 45%; }
.footerNav nav{}
.footerNav nav > ul{ display: flex; }
.footerNav nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; }
.footerNav nav > ul > li:before{
content:''; 
display:block; 
position:absolute; 
box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
top: 12px;
left: 0px;
height: 0;
width: 0;
border-top: 4px solid transparent;
border-right: 3px solid transparent;
border-bottom: 4px solid transparent;
border-left: 7px solid #fff; 
}
.footerNav nav > ul > li a i{ margin-left: 10px; }
.footerNav nav > ul > li a{ color: #fff; font-size: 1.4rem; }
.footerNav nav > ul > li a:hover{ opacity: 0.6; }
.footerCopyright{ color: rgba(255,255,255,0.5); font-size: 1rem; text-align: center; }


/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ padding: 140px 0 40px 0; }
.h1Tit{ color: #fff; font-size: 2.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }

h1{ width: 1000px; margin: 0 auto; color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }


/* ぱんくず */
#breadcrumbs{ padding: 0 10px; }  
#breadcrumbs > ol{ width: 100%; } 
#breadcrumbs > ol > li{ display: inline-block; position: relative; }
#breadcrumbs > ol > li:before{ content: ">"; display: block; position: absolute; top: .4em; left: 4px; color: #333; font-size: 1.3rem; }
#breadcrumbs > ol > li:first-child:before{ content: ""; }
#breadcrumbs > ol > li a{ color: #666; font-size: 1.3rem; margin: 0 0 0 15px; }
#breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
#breadcrumbs > ol > li a:hover{ opacity: 0.6; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ position: relative; height: 900px; }
.topImgTit{ position: absolute; left: 10%; bottom: 40%; color: #fff; font-size: 8.7rem; font-style: italic; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-feature-settings: "palt"; letter-spacing: 10px; }
.topImgTit:after{ content: "――"; letter-spacing: -.2em; width: 2em; margin-right: .5em; }
.topImgTit span{ font-size: 7rem; }
.topImgTxt{ position: absolute; left: 10%; bottom: 30%; font-size: 1.8rem; line-height: 2; color: #fff; letter-spacing: 2px; }



.topImgBnr{ position: absolute; bottom: 20px; right: 20px; }
.topImgBnr a:hover{ opacity: 0.6; }

.top_news_important{}
.top_news_important img{ width: 100%; height: auto; }
.top_news_important a:hover{ opacity: .6; }

.topBusiness{ 
	background: linear-gradient(to bottom, rgba(238,238,238,0) 0%,rgba(238,238,238,0) 85%,rgba(238,238,238,1) 85%) ,url("../images/bg_business01.jpg") no-repeat top center;
	background-size: cover;
	padding: 60px 0 0 0; }
.topTit{ color: #fff; font-size: 5rem; text-align: center; margin-bottom: 60px; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 5px; }
.topBusiness ul{ width: 90%; margin: 0 auto; display: flex; justify-content: space-between; }
.topBusiness ul > li{ flex-basis: 24%; position: relative; }
.topBusiness ul > li a{}
.topBusiness ul > li a:hover{ opacity: 0.6; }
.topBusinessImg{}
.topBusinessImg img{ width: 100%; height: auto; }
.topBusinessTit{ width: 110px; background: #fff; font-size: 1.7rem; color: #0068b7; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: normal; margin: 0 auto 40px auto; }
.topBusiness01{ background: #0068b7; padding: 30px 20px; }
.topBusiness ul > li a .topBusiness01{ transition: 0.5s ease-in-out; }
.topBusiness ul > li a:hover .topBusiness01{ opacity: 0.6; }
.topBusiness01Tit01{ color: #fff; text-align: center; font-size: 3.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 30px; }
.topBusiness01Tit02{ color: #fff; text-align: center; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 30px; }
.topBusiness01Txt{ }
.topBusiness01Txt p{ color: #fff; font-size: 1.4rem; line-height: 1.7; }


.topBusiness01After{ position: relative; z-index: 0; padding: 0 0 40px 0; background-color: #0068b7; }
.topBusiness ul > li a .topBusiness01After{ transition: 0.5s ease-in-out; }
.topBusiness ul > li a:hover .topBusiness01After{ opacity: 0.6; }
.topBusiness01After::after{ content: ''; position: absolute; left: 0; top: 0; transform: skewY(-5deg); transform-origin: top right; z-index: -1; width: 100%; height: 100%; background: #eee; }


.topTechnology{ background: #eee; padding-top: 60px; }
.topTechnology01{ width: 1000px; margin: 0 auto; }
.topTechnologyTit{ color: #0068b7; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; margin-bottom: 30px; }
.topTechnologyTit span{ font-size: 2rem; color: #27367e; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-left: 20px; }

.topTechnology ul{ width: 94%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.topTechnology ul > li{ flex-basis: 48%; margin-bottom: 80px; position: relative; }
.topTechnologyTit01{ position: absolute; bottom: -40px; left: -20px; width: 370px; height: 120px; background: #fff; padding: 30px; }
.topTechnologyTit02{ color: #26347e; font-size: 3rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; }
.topTechnologyTit03{ color: #878787; font-size: 1.5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.topTechnologyImg{ text-align: right; }
.topTechnologyImg img{ width: 100%; height: auto; }

.topTechnology01 a .topTechnologyTit01{ transition: 0.5s ease-in-out; }
.topTechnology01 a:hover .topTechnologyTit01{ background-color: #0066b7; }
.topTechnology01 a:hover .topTechnologyTit02{ color: #fff; }
.topTechnology01 a:hover .topTechnologyTit03{ color: #fff; }

.bgBlue01{ background-color: #0066b7; }
.coWhite{ color: #fff; }

.topDesignpipe{ background: url("../images/bg_designpipe01.jpg") no-repeat; background-size: cover; padding: 70px 0; margin-bottom: 60px; }
.topDesignpipe01{ width: 700px; height: 300px; background: rgba(255,255,255,0.85); margin: 0 auto; padding: 40px; }
.topDesignpipe01Tit01{ font-size: 1.5rem; color: #27367e; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; letter-spacing: 5px; margin-bottom: 10px; }
.topDesignpipe01Tit02{ font-size: 7rem; color: #27367e; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: normal; line-height: 1; margin-bottom: 20px; }
.topDesignpipe01Txt01{ font-size: 2.7rem; color: #333; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.topDesignpipe01Btn01{ width: 240px; margin: 0 auto; }
.topDesignpipe01Btn01 a{ display: block; color: #0067b7; font-size: 2rem; text-align: center; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; border: 2px solid #0067b7; padding: 15px 10px 10px 10px; }
.topDesignpipe01Btn01 a:hover{ background: #0067b7; color: #fff; }


.topInfo{ display: flex; justify-content: space-between; margin-bottom: 80px; }
.topEquipment,
.topProducts{ flex-basis: 50%; position: relative; overflow: hidden; }
.topEquipment:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; background: url(../images/bg_equipment01.jpg) no-repeat center center; background-size: cover; transition: all .3s ease-out; }
.topProducts:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: cover; transition: all .3s ease-out; }
.topEquipment:hover:after,
.topProducts:hover:after{ opacity: 1; transform: scale(1.2); }


.topProducts{ flex-basis: 50%; background: url("../images/bg_products01.jpg") no-repeat center center; background-size: 100% auto; position: relative; }
.topEquipment a,
.topProducts a{ display: block; padding: 60px 40px; }

.topEquipment01,
.topProducts01{ padding: 40px; border: 1px solid #fff; text-align: center; position: relative; z-index: 1; }
.topEquipment01Tit,
.topProducts01Tit{ color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; position: relative; }
.topEquipment01Tit span,
.topProducts01Tit span{ color: #fff; font-size: 2rem; text-align: center; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }



.topInfo02{ position: relative; margin-bottom: 300px; }
.topNews{ margin: 0 0 100px 5%; width: 90%; background: #0068b7; padding: 80px 0 200px 100px; }
.topNewsTit{ color: #fff; font-size: 5rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; letter-spacing: 3px; margin-bottom: 30px; }
.topNewsTit span{ font-size: 2rem; color: #fff; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-left: 20px; }
.topNews01{}
.topNews01 > ul{ width: 100%; }
.topNews01 > ul > li{ display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #4d96cd; padding: 20px 0; }
.topNewsDate01{ flex-basis: 10%;  color: #fff; font-size: 1.4rem; font-family: sofia-pro, sans-serif; font-weight: 500; font-style: normal; }
.topNewsCat01{ flex-basis: 13%; background: #fff; color: #0067b7; font-size: 1.3rem; padding: 3px 5px; text-align: center; }
.topNewsTit01{ flex-basis: 70%; }
.topNewsTit01 a{ font-size: 1.6rem; color: #fff; }
.topNewsTit01 a:hover{ opacity: 0.6; }

.topCompany{ position: absolute; left: 5%; top: 450px; width: 80%; background: #333; }
.topCompany > ul{ display: flex; justify-content: space-between; }
.topCompany > ul > li:nth-child(1){ flex-basis: 60%; padding: 60px 60px 60px 40px; }
.topCompany > ul > li:nth-child(2){ flex-basis: 40%; }
.topCompanyImg img{ width: 100%; height: auto; }

.topCompany > ul > li > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.topCompany > ul > li > ul > li{ flex-basis: 48%; margin-bottom: 20px; }
.topCompany > ul > li > ul > li > a{ display: block; color: #333; background: #fff; padding: 15px 15px; font-size: 1.4rem; font-weight: 700; letter-spacing: 1px; border: 1px solid #fff; position: relative; }
.topCompany > ul > li > ul > li > a:hover{ color: #fff; background: #333; }
.topCompany > ul > li > ul > li > a span:before{ content: ""; position: absolute; top: 50%; right: 20px; width: 7px; height: 7px; border-top: 1px solid #333; border-right: 1px solid #333;  transform: rotate(45deg); margin-top: -6px; }
.topCompany > ul > li > ul > li > a:hover span:before{ border-top: 1px solid #fff; border-right: 1px solid #fff; }


.bnrSec{ width: 1000px; margin: 0 auto 60px auto; }
.bnrSec > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.bnrSec > ul:after{ content: ""; display: block; width: 25%; height: 0; }
.bnrSec > ul:before{ content: ""; display: block; width: 25%; height: 0; order: 1; }
.bnrSec > ul > li{ flex-basis: 20%; border-bottom: 1px solid #ccc; padding-bottom: 10px; margin-bottom: 20px; }
.bnrSecImg{ text-align: center; margin-bottom: 10px; }
.bnrSecImg a:hover{ opacity: 0.6; }
.bnrSecTit{ text-align: center; font-size: 1.2rem; line-height: 1.2; }




.top_recruit{ margin-bottom: 80px; }
.top_recruit_sec{ position: relative; overflow: hidden; }
.top_recruit_sec:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_recruit_sec a{ display: block; position: relative; z-index: 1; height: 100%; color: #fff; text-align: center; padding: 100px 0;	}
.top_recruit_sec:after{ background: url("../images/bg_recruit01.jpg") no-repeat 0 40%; background-size: cover; }
.top_recruit_sec:hover:after{ opacity: .8; transform: scale(1.1); }
.top_recruit_sec:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,104,183,0.5); }












.contents{ width: 1000px; margin: 0 auto; }

.businessSec{ margin-bottom: 100px; }
.businessSec > ul{}
.businessSec > ul > li{ min-height: 550px; margin-bottom: 60px; }
.businessSec01{}
.businessSec01 > ul{ position: relative; }
.businessSec01 > ul > li{ }
.businessSec > ul > li a .businessSec01Img img{ transition: 0.5s ease-in-out; }
.businessSec > ul > li a:hover .businessSec01Img img{ opacity: 0.6; }

.businessSec01Txt{ position: absolute; top: 80px; width: 550px; height: 380px; background: #0068b7; z-index: 2; padding: 50px; }
.businessSec > ul > li:nth-child(odd) .businessSec01Txt{ left: 0; }
.businessSec > ul > li:nth-child(even) .businessSec01Txt{ right: 0; }

.businessSec01Tit01{ background: #fff; color: #0068b7; font-size: 1.7rem; width: 110px; text-align: center; padding: 3px; margin-bottom: 20px; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.businessSec01Tit02{ color: #fff; font-size: 4rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 15px; }
.businessSec01Tit03{ color: #fff; font-size: 2rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; margin-bottom: 10px; }
.businessSec01Txt01{ width: 80%; }
.businessSec01Txt01 p{ color: #fff; font-size: 1.6rem; line-height: 1.5; }

.businessSec01Img{ position: absolute; top: 0; }
.businessSec > ul > li:nth-child(odd) .businessSec01Img{ right: 0; left: auto; }
.businessSec > ul > li:nth-child(even) .businessSec01Img{ right: auto; left: 0; }

.contentsNav{ background: #0067b7; padding: 20px 30px; display: flex; margin-bottom: 60px; }
.contentsNavTit{ color: #fff; font-size: 2rem; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; margin-right: 30px; }
.contentsNav nav{}
.contentsNav nav > ul{ display: flex; flex-wrap: wrap; }
.contentsNav nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav nav > ul > li a{ color: #fff; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav nav > ul > li:after{ display: block; content: ""; position: absolute; top: 10px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #fff; border-bottom: 3px solid #fff; transform: rotate(-45deg); }



.contentsNav02{ background: #eee; padding: 20px 30px; display: flex; margin-bottom: 60px; }
.contentsNav02 nav{ width: 75%; }
.contentsNav02 nav > ul{ display: flex; flex-wrap: wrap; }
.contentsNav02 nav > ul > li{ flex: 1 0 auto; position: relative; padding-left: 20px; margin-right: 30px; }
.contentsNav02 nav > ul > li a{ color: #333; font-size: 1.7rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 700; font-style: normal; }
.contentsNav02 nav > ul > li a:hover{ opacity: 0.6; }
.contentsNav02 nav > ul > li:after{ display: block; content: ""; position: absolute; top: 10px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0068b7; border-bottom: 3px solid #0068b7; transform: rotate(-45deg); }




.mainSec{ padding-bottom: 60px; border-bottom: 1px solid #ccc; margin-bottom: 80px; }

.mainSecImg{ text-align: center; margin-bottom: 40px; }
.mainSecImg img{ width: 100%; height: auto; }

.mainSecTxt{ width: 960px; margin: 0 auto 40px auto; }
.mainSecTxt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecSize{ width: 780px; margin: 0 auto 40px auto; }
.mainSecSize02{ width: 780px; margin: 0 auto 40px auto; }
.mainSecSize > ul{}
.mainSecSize02 > ul{ display: flex; justify-content: space-between; }
.mainSecSize > ul > li{ background: #eee; border-radius: 10px; padding: 30px; display: flex; align-items: center; margin-bottom: 10px; }
.mainSecSize02 > ul > li{ flex-basis: 49%; background: #eee; border-radius: 10px; padding: 20px; display: flex; align-items: center; }
.mainSecSizeTit{ flex-basis: 26%; background: #fff; color: #0b6dba; font-size: 1.6rem; font-weight: 700; border: 2px solid #0b6dba; text-align: center; padding: 10px 20px; margin-right: 30px; }
.mainSecSize02 .mainSecSizeTit{ flex-basis: 35%; padding: 10px; margin-right: 20px; }
.mainSecSizeTxt{ font-size: 2.3rem; font-weight: 700; }
.mainSecImg02{ margin-bottom: 40px; }
.mainSecImg02 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg02 > ul > li{ flex-basis: 48%; margin-bottom: 40px; }
.mainSecImg02Img{ margin-bottom: 10px; }
.mainSecImg02Img img{ width: 100%; height: auto; }
.mainSecImg02Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg02Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }
.mainSecImg02Tit02{ font-size: 2.5rem; margin-bottom: 10px; font-weight: 700; }

.mainSecSize03{}
.mainSecSize03 > ul{ display: flex; justify-content: space-between; }
.mainSecSize03 > ul > li{ flex-basis: 23%; }
.mainSecSize03Img{}
.mainSecSize03Img img{ width: 100%; height: auto; }
.mainSecSize03Txt{}
.mainSecSize03Txt > ul{ background: #f5f5f5; padding: 30px; }
.mainSecSize03Txt > ul > li{ font-size: 2rem; font-weight: 700; text-align: center; }
.mainSecSize03Txt > ul > li{}
.mainSecSize03Txt > ul > li.arrow{ transform: rotate(90deg); }
.mainSecSize03Txt > ul > li.arrow i{}

.mainSecImg03{ margin-bottom: 40px; }
.mainSecImg03 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecImg03 > ul > li{ flex-basis: 32%; margin-bottom: 40px; border-bottom: 1px solid #ccc; padding-bottom: 10px;  }
.mainSecImg03 > ul > li:nth-child(1),
.mainSecImg03 > ul > li:nth-child(2),
.mainSecImg03 > ul > li:nth-child(3){ opacity: 1 !important; }
.mainSecImg03Img{ margin-bottom: 10px; }
.mainSecImg03Img img{ width: 100%; height: auto; }
.mainSecImg03Tit{ position: relative; font-size: 1.6rem; font-weight: 700; padding-left: 20px; }
.mainSecImg03Tit:after{ display: block; content: ""; position: absolute; top: 8px; left: 0; width: 10px; height: 10px;  border-right: 3px solid #0168b7; border-bottom: 3px solid #0168b7; transform: rotate(-45deg); }
.mainSecImg03Tit p{ font-size: 1.4rem; font-weight: normal; margin-top: 5px; }

.mainSecImg04{ width: 980px; margin: 0 auto 40px auto; }
.mainSecImg04 > ul{ display: flex; justify-content: space-between; }
.mainSecImg04 > ul > li{ font-size: 1.5rem; line-height: 1.7; }
.mainSecImg04 > ul > li ol{ margin: 0 0 20px 20px; }
.mainSecImg04 > ul > li ol > li{ list-style-type: decimal; }
.mainSecImg04 > ul > li:nth-child(1){ flex-basis: 60%; }
.mainSecImg04 > ul > li:nth-child(2){ flex-basis: 35%; text-align: center; }




.mainSecTxt02{ margin-bottom: 40px; }
.mainSecTxt02 > ul{ display: flex; justify-content: space-between; }
.mainSecTxt02Txt{ flex-basis: 50%; }
.mainSecTxt02Txt p{ font-size: 1.6rem; line-height: 1.7; }
.mainSecTxt02Img{ flex-basis: 45%; }

.mainSecTxt03{ width: 980px; background: #eee; padding: 40px; margin: 0 auto 40px auto; }
.mainSecTxt03 p{ font-size: 2rem; text-align: center; line-height: 2; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; }

.mainSecBtn{ width: 570px; margin: 0 auto 40px auto; }
.mainSecBtn a{ display: block; font-size: 2.8rem; font-weight: 700; color: #333; background: #d9d900; padding: 15px; text-align: center; border: 2px solid #d9d900; }
.mainSecBtn a:hover{ background: #333; color: #d9d900; }


.mainSecTable{ margin-bottom: 60px; }
.mainSecTable table{ width: 100%; border-collapse: collapse; }
.mainSecTable th{ border-bottom: 1px solid #0069b5; text-align: left; padding: 20px; font-size: 1.5rem; }
.mainSecTable td{ border-bottom: 1px solid #ccc; padding: 20px; font-size: 1.5rem;  }
.mainSecTable td span{ font-size: 1rem; }
.mainSecTable th:nth-child(1){ text-align: center; }
.mainSecTable td:nth-child(1){ width: 5%; text-align: center; margin-left: 10px; }
.mainSecTable td:nth-child(2){ width: 20%; }
.mainSecTable td:nth-child(3){ width: 20%; }
.mainSecTable td:nth-child(4){ width: 20%; }
.mainSecTable td:nth-child(5){ width: 25%; }
.mainSecTable td:nth-child(6){ width: 10%; }

.mainSecTable02{ width: 1000px; margin: 0 auto 60px auto; }
.mainSecTable02 table{ width: 100%; border-collapse: collapse; }
.mainSecTable02 th{ width: 20%; border-bottom: 1px solid #0069b5; text-align: left; padding: 20px; font-size: 1.7rem; }
.mainSecTable02 td{ width: 80%; border-bottom: 1px solid #ccc; padding: 20px; font-size: 1.7rem;  }
.mainSecTable02 td ul{ margin-left: 30px; }
.mainSecTable02 td li{ list-style-type: disc; }


.pagetopBtn{ width: 150px; margin: 0 0 0 auto; }
.pagetopBtn a{ display: flex; justify-content: center; font-size: 1.6rem; text-align: center; color: #28377f; border: 1px solid #28377f; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; padding: 10px; position: relative; }
.pagetopBtn a i{ display: block; font-size: 1rem; margin-right: 10px; transform: rotate(-90deg); }
.pagetopBtn a p{  }
.pagetopBtn a:hover{ background: #28377f; color: #fff; }


.mainSecMovie{ position: relative; width: 100%; padding-top: 56.25%; }
.mainSecMovie iframe{ position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.mainSecMovie01{}
.mainSecMovie01 > ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.mainSecMovie01 > ul > li{ flex-basis: 32%; margin-bottom: 30px; }
.mainSecMovie01Tit{ font-size: 2.2rem; font-weight: 700; margin-bottom: 10px; }


.companySecTxt01{ color: #26347e; font-size: 3rem; text-align: right; font-family: source-han-serif-japanese,serif; font-weight: 900; font-style: normal; margin-top: 30px; }
.companySecTxt01 span{ font-size: 2rem; margin-right: 30px; }

.mainSecMap{ position: relative; width: 1000px; padding-top: 56.25%; height: 0; margin: 0 auto 40px auto; }
.mainSecMap iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.advantageSec{}
.advantageSec > ul{}
.advantageSec > ul > li{ margin-bottom: 60px; }
.advantageSec > ul > li:nth-child(even) .advantageSec01 > ul{ flex-direction: row-reverse; }
.advantageSec > ul > li:nth-child(odd) .advantageSec01 > ul{  }
.advantageSec01{}
.advantageSec01 > ul{ display: flex; justify-content: space-between; align-items: center; }
.advantageSec01 > ul > li:nth-child(1){ flex-basis: 48%; }
.advantageSec01 > ul > li:nth-child(2){ flex-basis: 50%; }

.advantageSec01Tit{}
.advantageSec01Num{ font-size: 8rem; color: #0066b7; font-family: fresno, sans-serif; font-weight: 400; font-style: italic; }
.advantageSec01Tit01{ font-size: 3rem; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: italic; margin-bottom: 20px; }
.advantageSec01Txt{ margin-bottom: 20px; }
.advantageSec01Txt p{ font-size: 1.6rem; line-height: 1.7; }
.advantageSec01Txt ol{ margin-left: 30px; }
.advantageSec01Txt ol > li{ list-style-type: decimal; }
.advantageSec01Btn{}
.advantageSec01Btn > ul{ display: flex; justify-content: space-between; }
.advantageSec01Btn > ul > li{ flex-basis: 49%; }
.advantageSec01Btn > ul > li a{ display: block; color: #0066b7; font-size: 1.6rem; border: 1px solid #0066b7; text-align: center; padding: 20px 10px 15px 10px; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; }
.advantageSec01Btn > ul > li a:hover{ background: #0066b7; color: #fff; }
.advantageSec01Img{}
.advantageSec01Img img{ width: 100%; height: auto; }


.contactSec{ margin-bottom: 100px; }
.thanksSec{ width: 900px; margin: 0 auto; }
.thanksSec01{ border: 1px solid #0067b7; padding: 10px; margin-bottom: 40px; }
.thanksSec p{ text-align: center; }

.privacySec{ width: 970px; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.6rem; line-height: 1.7; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol > li{ list-style-type: decimal; }

.sitemapSec{}
.sitemapSec > ul{}
.sitemapSec > ul > li{ margin-bottom: 20px; font-size: 1.8rem; }
.sitemapSec > ul > li > a{ font-weight: 700; font-size: 2rem; }
.sitemapSec > ul > li > ul{ margin-top: 5px; }
.sitemapSec > ul > li > ul > li{ position: relative; padding-left: 20px; margin-bottom: 10px; }
.sitemapSec > ul > li > ul > li:after{ display: block; content: ""; position: absolute; top: .75em; left: 0; width: 8px; height: 1px; background-color: #999; }

.sitemapSec > ul > li.facebook{ width: 300px;  background: #375794; color: #fff; margin-top: 20px; }
.sitemapSec > ul > li.youtube{ width: 300px; background: #f8031b; color: #fff; }
.sitemapSec > ul > li.facebook a,
.sitemapSec > ul > li.youtube a{ display: block; color: #fff; text-align: center; padding: 10px; }
.sitemapSec > ul > li.facebook i,
.sitemapSec > ul > li.youtube i{ margin-right: 10px; font-size: 2rem; }
.sitemapSec > ul > li.facebook a:hover{  background: #fff; color: #375794; }
.sitemapSec > ul > li.youtube a:hover{ background: #fff; color: #f8031b; }



/* SHIMIZU AXIS */
.axis_sec{ margin-bottom: 100px; }
.axis_tit{ color: var(--main-color); text-align: center; }
.axis_tit p{ font-size: 1.8rem; font-family: source-han-serif-japanese, serif; font-weight: 300; font-style: normal; letter-spacing: 5px; }

.axis_tit p{
position: relative;
width: fit-content;
padding: 0 3em;
text-align: center;
margin: 0 auto;
}

.axis_tit p:before,
.axis_tit p:after{
content: '';
background-color: var(--main-color);
width: 30em;
height: 1px;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

.axis_tit p:before{ left: 0; }
.axis_tit p:after{ right: 0; }

.axis_tit p span {
position: relative;
padding: 0 1em;
background: #fff;
z-index: 2;
}

.axis_txt{ width: 770px; margin: 0 auto 60px auto; }
.axis_txt p{ font-size: 1.6rem; line-height: 1.7; }

.axis_tit h3{ font-size: 10rem; font-family: grad, serif; font-weight: 700; font-style: italic; letter-spacing: 3px; }

.axis_img{ text-align: center; margin-bottom: 80px; }

.axis_list{ }
.axis_item{ display: flex; margin-bottom: 50px; }
.axis_item_vision{}
.axit_item_tit{ flex-basis: 32%; color: #fff; padding: 20px; text-align: center; position: relative; }
.axit_item_tit_wrap{  position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); }

.axis_item_vision .axit_item_tit{ background-color: var(--vision-color); }
.axis_item_mission .axit_item_tit{ background-color: var(--mission-color); }
.axis_item_value .axit_item_tit{ background-color: var(--value-color); }
.axis_item_mind .axit_item_tit{ background-color: var(--mind-color); }

.axit_item_tit01{ width: 160px; background-color: #fff; border-radius: 40px; font-size: 1.5rem; padding: 3px; margin: 0 auto; }
.axit_item_tit02{ font-size: 6rem; font-family: grad, serif; font-weight: 700; font-style: normal; letter-spacing: 2px; }
.axit_item_tit03{ font-size: 2.5rem; color: #fff; letter-spacing: 2px; font-family: source-han-serif-japanese, serif; font-weight: 300; font-style: normal; line-height: 1; }

.axis_item_vision .axit_item_tit01{ color: var(--vision-color); }
.axis_item_mission .axit_item_tit01{ color: var(--mission-color); }
.axis_item_value .axit_item_tit01{ color: var(--value-color); }
.axis_item_mind .axit_item_tit01{ color: var(--mind-color); }

.axis_item_sec{ flex-basis: 68%; background-color: #f5f5f5; padding: 20px 20px 20px 30px; }
.axis_item_list{ margin-top: 10px; }
.axis_item_item{ position: relative; padding-left: 30px; font-size: 2rem; font-weight: 700; margin-bottom: 20px; }
.axis_item_item:before{ content: ""; display: block; position: absolute; left: 0; top: 0; font-family: 'icomoon' !important; content: "\e905"; }

.axis_item_vision .axis_item_item{ color: var(--vision-color); }
.axis_item_mission .axis_item_item{ color: var(--mission-color); }
.axis_item_value .axis_item_item{ color: var(--value-color); }
.axis_item_mind .axis_item_item{ color: var(--mind-color); }

.axis_item_list_mind{}
.axis_item_list_mind .axis_item_item{ padding-left: 0; }
.axis_item_list_mind .axis_item_item:before{ display: none; }

.axis_item_mind .axis_item_sec{ padding: 20px 250px 20px 30px; }

dl.axis_item_dl dt p{ display: flex; align-items: center; }
dl.axis_item_dl dt span{ display: block; width: 50px; height: 50px; background-color: var(--mind-color); color: #fff; font-size: 3.3rem; font-family: grad, serif; font-weight: 700; font-style: normal; border-radius: 100%; text-align: center; margin-right: 3px; line-height: 50px; }

/* axis_item_dl */
dl.axis_item_dl{ width: 100%; }
dl.axis_item_dl div{ position: relative; display: flex; justify-content: space-between; margin: 5px 0; padding: 5px 0; }
dl.axis_item_dl div::after{ content: ""; display: block; position: absolute; top: 50%; z-index: 1; width: 100%; border-bottom: dotted 3px #addab9; }
dl.axis_item_dl dt{ margin:0; padding: 0 10px 0 0; background-color: #f5f5f5; z-index: 2; text-align: left; font-family: grad, serif; font-weight: 700; font-style: normal; font-size: 3rem; color: var(--mind-color); }
dl.axis_item_dl dd{ margin:0; padding: 10px 0 0 10px; background-color: #f5f5f5; z-index: 2; text-align: right; font-size: 2rem; font-weight: 700; color: var(--mind-color); }


}
/* ----------------------------------------------------------
 PC CSS END
---------------------------------------------------------- */
/* ----------------------------------------------------------
 PC WIDE CSS
---------------------------------------------------------- */
@media screen and (min-width:1420px){
/* フォントサイズ10px */
html{ font-size: 62.5%; height: 100%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; height: 100%; }

/* 非表示用 */
.nonePCWIDE		{ display: none !important; }

/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
.icon{ display: none; }

/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btmMenu { display: none; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
/* トップ */
.top_100vh{height: 100vh; position: relative;}
.top_100vh .topImg{height: 89vh;}
.top_100vh .top_news_important{ bottom: 0; width: 100%; height: 11vh; text-align: center; background-color: #0066b7;}
.top_100vh .top_news_important img{height: 100%; max-width: 1400px;}
.top_100vh .topImgBnr{}



}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PCWIDE CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
