@charset "utf-8";

/*************************************************"
			default
*************************************************/
html{font-size:1px;height:100%;}

body {margin: 0px;padding: 0px;font-size:16px;color:#000;height:100%;background-color:#fff;letter-spacing:0.04em;
			text-size-adjust: none;
			-webkit-text-size-adjust: none;/*iphoneの文字サイズの自動調整解除*/
			-webkit-font-smoothing: antialiased;	/*OSXでのフォントのレンダリング方法を調整*/
			/*Macでは普通の游ゴシックが適用され、Windowsでは「 游ゴシック Medium」になる--- "游ゴシック Medium", "Yu Gothic Medium", */
			font-family: Roboto, Hiragino Kaku Gothic Pro, "ヒラギノ角ゴ Pro W3" , "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
			/*font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;*/
			-webkit-font-feature-settings: 'palt' 1;	/*fontの自動カーニング*/
			font-feature-settings: 'palt' 1;}

/*
@font-face {
	font-display:swap;	フォントが利用可能となるまでの間、そのフォントが適用されているテキストには代替フォントが適用
	font-family: "centurygothic";
	src: url("../webfont/centurygothic.woff") format('woff');
}
*/


/*
font-family:'Noto Serif JP', serif;font-weight:400;
font-family:'Noto Serif JP', serif;font-weight:500;
font-family:'Noto Serif JP', serif;font-weight:600;
font-family:'Noto Sans JP', sans-serif;font-weight:700;
font-family:'Noto Sans JP', sans-serif;font-weight:900;
*/

a         {color: #00878a;text-decoration:underline;transition: 0.8s;}/*hover ゆっくり変わる*/
a:link    {color: #00878a;text-decoration:underline;}
a:visited {color: #578470;text-decoration:underline;}
a:active  {color: #00878a;text-decoration: underline;}
a:hover   {color: #FF9900;text-decoration: underline;}

h1,h2,h3,h4,h5,p,ol,ul,li,span,dl,dt,dd {margin:0;padding:0;font-weight:normal;}
	
img {border:none;margin:0;padding:0;vertical-align:middle;max-width:100%;height:auto;}

a:hover img {opacity: 0.7;transition: 0.3s ease-in-out;}

ul {margin:0px;padding:0px;list-style:none none outside;}
ol{margin:0;padding:0;}

p.clear		{clear:both;line-height:0px;display:block;}
div.clear {clear:both;}

hr{ border:none;border-top:1px solid #ccc;height:1px;}
/*hr{background:url(../img2/hr_bg.png) repeat-x 0 0;height:10px;border: 0;}*/

.dotline{border-top: 1px dotted #aaa;line-height: 1px;height: 1px;}
.solidline{border-top: 1px solid #bbb;line-height: 1px;height: 1px;}

.strong{font-weight:bold;}

table{border-collapse: collapse;}


/*padding や border-width がwidth内に収まる*/
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}



/*clearfix--------------------*/
.cf:before,
.cf:after {content: " ";display: table;} 
.cf:after {clear: both;} 
.cf{*zoom: 1;}


/*---電話番号用---768px以上の解像度だけpointer-eventsを無効にして、PCのときはTELクリックの反応なし---*/
@media screen and (min-width: 768px) {	
	a[href^="tel:"] {pointer-events: none;color: #000;text-decoration: none;}
}



/* ページの各セクション-------------------*/
.section{padding:100px 0 100px 0;}
.section.first{padding:80px 0 100px 0;}
.section.end{padding: 50px 0 60px 0;}


/*全ページ共通のテーブル構造　-------------------*/
.wrap{position:absolute;height:100%;width:100%;}
#wrapper{position: relative;overflow:hidden;}
#main{}
.container {position: relative;max-width:1340px;width:100%;margin:0 auto;padding:0;line-height:1.8;padding:0 20px;}



/*ページ上部右の出てくるナビmenu---*/
#menubtn{display:none;}
#navi_sp{display:none;}


/*lozad.jによるアニメーション------*/
.fadein-			{opacity: 0;transition: opacity 0.5s linear,transform 1s ease-out;}
.fadein-left	{opacity: 0;transform: translate3d(-300px, 0, 0);transition: opacity 0.5s linear,transform 1s ease-out;}
.fadein-right	{opacity: 0;transform: translate3d(300px, 0, 0);transition: opacity 0.5s linear,transform 1s ease-out;}
.fadein-up		{opacity: 0;transform: translate3d(0, 100px, 0);transition: opacity 0.5s linear,transform 1s ease-out;}
.zoomin				{opacity: 0;transform: perspective(500px) translateZ(100px);transition: opacity 0.5s linear,transform 1s ease-out;}

.transition-delay1{transition-delay: 0.3s;}
.transition-delay2{transition-delay: 0.6s;}
.transition-delay3{transition-delay: 0.9s;}
.transition-delay4{transition-delay: 1.2s;}
.transition-delay5{transition-delay: 1.5s;}
.transition-delay6{transition-delay: 1.8s;}
.transition-delay7{transition-delay: 0.3s;}
.transition-delay8{transition-delay: 0.6s;}
.transition-delay9{transition-delay: 0.9s;}

*[data-loaded="true"]{opacity: 1;transform: none;}
/*big画像用*/
.transition-delay10{transition-delay: 1.5s;}
.transition-delay11{transition-delay: 2s;}
.transition-delay12{transition-delay: 2.5s;}



/*reCAPTCHA v3  左下に出す。お問合せページ以外は消す-----このスタイルをCSSに入れる*/
body#partner h1,
body#toiawase h1{font-size: 108%;}
.grecaptcha-badge{display:none;width:70px!important;left: 6px!important;box-shadow: none!important;	z-index:50;}
body#partner .grecaptcha-badge,
body#toiawase .grecaptcha-badge{display:block;}
.grecaptcha-badge:hover{left: 6px!important;width: 256px!important;}
#warning{text-align:center;font-size:93%;line-height:1.3;margin-top:20px;}




/*///////////////////////////////////////////////////////////////////////////////
 全ページ共通のheader
///////////////////////////////////////////////////////////////////////////////*/
#header{position:fixed;top: 0;z-index:50;width:100%;height:90px;transition: 0.5s;background-color:#fff;border-bottom:1px solid #fff;}
/* 縮小時のheader*/
#header.smaller{height:70px;border-bottom:1px solid #ddd;}
#header.smaller .yokomenu-bg{margin-top:0;}
#header.smaller .top-rogo {top:7px;}
#header.smaller .top-rogo a{width: 217px;height: 55px;}
#header.smaller ul#yoko-menu > li > a {height:70px;}


#header .container{max-width: unset;padding: 0 15px;}

.top-rogo{position:absolute;transition: 0.5s;top: 16px;margin-left:1.5%;}
.top-rogo a{background:url(../img2/rogo.png) no-repeat center top;background-size: contain;text-indent: -8989px;display: block;overflow: hidden;transition: 0.5s;width: 237px;height: 60px;image-rendering: -webkit-optimize-contrast; /*背景画像のボケ防止*/}
.top-rogo a:hover{opacity:0.5;}



/* ==================== 全ページ共通の横メニュー ==================== */
.yokomenu-bg{float: right;transition: 0.5s;margin-top: 10px;}
.menu-yokomenu-container{/*! font-family: YakuHanMP, 'Noto Serif JP', serif; *//*! font-weight: 500; */}


ul#yoko-menu {position: relative;z-index: 10;list-style-type: none;padding: 0;text-align: right;right: 15px;}
ul#yoko-menu > li{position:relative;margin: 0;padding: 0;text-align: center;display: inline-block;}

ul#yoko-menu > li > a{color: #333;height:70px;width: inherit;text-decoration: none;display: table-cell;vertical-align: middle;line-height: 1;letter-spacing: 0.05em;transition: 0.5s;padding: 0 30px;}


ul#yoko-menu li.current > a,
ul#yoko-menu li a:hover{background-color: #ecf4f4;color: #00878a;}


/*横に伸びる赤の横棒
ul#yoko-menu > li > a::after,
ul#yoko-menu > li.current > a::after{position: absolute;width: 0;content: "";bottom:0;left: 51%;right: 51%;display: block;transition: all .3s;background:#f27988;height:4px;}
ul#yoko-menu > li > a:hover,
ul#yoko-menu > li.current > a{background-color: rgba(255,181,181,0.25);}

ul#yoko-menu > li > a:hover::after,
ul#yoko-menu > li.current > a::after {width: 100%;left: 0;right: 0;}
*/


/*TOPページのカレント表示用----------------*/
/*body.home ul#yoko-menu li.yokomenu1 a,*/
body#news ul#yoko-menu li.yokomenu2 > a,			/*お知らせ*/
body#company ul#yoko-menu li.yokomenu3 > a,			/*会社案内*/
body#works ul#yoko-menu li.yokomenu4 > a,			/*施工実績*/
body#partner ul#yoko-menu li.yokomenu5 > a,			/*協力会社募集*/
body#recruit ul#yoko-menu li.yokomenu6 > a,			/*採用情報*/
body#toiawase ul#yoko-menu li.yokomenu7 > a{background-color: #ecf4f4;color: #00878a;}		/*お問合せ*/


ul#yoko-menu li:hover > ul,
ul#yoko-menu li > ul.focused{visibility:visible;top:100%;opacity:1}
/*上に三角をつける場合のcss
ul#yoko-menu li ul:after,
ul#yoko-menu li ul:before{bottom:100%;border:solid transparent;content:" ";height:0;width:0;bottom:100%;position:absolute;pointer-events:none}
ul#yoko-menu li ul:after{border-bottom-color:#0bd;border-width:10px;left:50px;margin-left:-10px}
ul#yoko-menu li ul:before{left:50px;margin-left:-12px}
*/




/*プルダウン部分 submenu*/
/*三角の表示用
ul#yoko-menu ul li:first-child a:after {content: '';position: absolute;width: 0;height: 0;left:45%;top: -9px;border-left: 7px solid transparent;border-right: 7px solid transparent;border-bottom: 10px solid #53912b;}
*/
ul#yoko-menu li > ul {position: absolute;background-color:#00959a;z-index:200;list-style-type: none;top:85%;left:0;width:130%;padding: 0;transition: 0.5s;margin: 0 0 0 -15%;/*border-radius: 10px;*/overflow:hidden;}
ul#yoko-menu li > ul > li {overflow: hidden;line-height:1.2;text-align:center;background-image:none;width: 100%;height: 0;font-weight: 400;}
ul#yoko-menu li > ul > li a {font-size:88%;line-height:1.1;color:#fff;border-top: 1px solid rgba(255,255,255,0.5);padding: 0 10px 0 15px;text-align:center;
														text-decoration:none;display:block;background-image: none !important;border-left:none;margin: 0;letter-spacing: 0.05em;display: table-cell;vertical-align: middle;}


ul#yoko-menu > li:hover > a {   }
ul#yoko-menu > li:hover li > a:hover {background-color:#006d71;color: #fff;}
ul#yoko-menu li:hover > ul > li {overflow: visible;height:46px;border-right:none;display: table;}


/*外部サイト用アイコン
ul#yoko-menu li > ul > li a span.gaibu{background:url(../img2/gaibu.png) no-repeat left 10px center;display: inline-block;padding: 0 12px 0 24px;}
*/

/*subsubmenu
ul#yoko-menu li ul li ul {top: 0 !important;left: 100%;width:90%;margin:0;}
ul#yoko-menu li:last-child ul li ul {left: -110%;width: 90%;}
ul#yoko-menu li ul li ul li:first-child{border:none;}
ul#yoko-menu li ul li ul li:first-child a:after{border:none;}
ul#yoko-menu li ul li:hover ul li:first-child{height:45px;}
ul#yoko-menu li:hover ul li ul li:hover > a {}
ul#yoko-menu li ul li ul:before							{position: absolute;content: "";top:18px;left: -15px;width: 0;height: 0; border: 5px solid transparent;border-left-color:#fff;}---三角の表示用
ul#yoko-menu li:last-child ul li ul:before	{position: absolute;content: "";top:18px;left: 200%;margin-left: -20px;border: 5px solid transparent; border-right-color:#fff;}
*/

.insta.top{margin: 20px 0 0 18px;vertical-align: top;}
.insta.top a {width: 28px;height: 28px;}




/*///////////////////////////////////////////////////////////////////////////////
 main
///////////////////////////////////////////////////////////////////////////////*/

/*色*/
.color1{color:#ff3300;}/*基本色 レッド*/
.color-red{color:#ff0000;}
.color2{color:#cc3333;}/*注意色*/


/*動画-----------*/
/*サーバー内埋め込み*/
#index-movie-box{max-width:780px;margin:0 auto 50px auto;}
.index-movie{position: relative;width:100%;height: 0;padding-bottom:56.3%;}/*padding-bottom:56.3%;padding-bottom:48.2%;*/
.index-movie video {position: absolute;top: 0;left: 0;width: 100% !important;height: auto !important;}

/*facebook動画のiframe埋め込み*/
.video-container{position: relative;text-align: center;max-width:780px;margin:0 auto 50px auto;}




/*全ページ共通のSNSボタン----------------このサイトでは未使用
#sns-box{margin-top:10px;text-align:center;}
#sns-box ul{margin:0 !important;padding:0;}
#sns-box ul li{display:inline-block;margin: 0 4px;width: 25px;height: 25px;padding:0 !important;}
#sns-box ul li a img{width:100%;height:100%;}
#sns-box ul li a:hover,
#sns-box ul li a:active{opacity:0.6;}
*/



/*このボタンは、中ページ全ページで使用*/
.naka-kuwashii{margin-top: 25px;text-align:center;line-height:1.1;}
.naka-kuwashii a{line-height: 58px;height:60px;color: #000;font-size: 100%;width:340px;padding: 0;border:1px solid #bbb;display:inline-block;margin: 0 auto;
																			background: #f0f0f0 url(../img2/arrow_black13-2.png) no-repeat left 25px center;transition: 0.8s;text-decoration: none;}
.naka-kuwashii a:hover{background:#d9d9d9 url(../img2/arrow_black13-2.png) no-repeat left 30px center;padding: 0 0 0 7px;}




/*全ページ共通のページ下部の上部へ戻る */
#pagetop {position:relative;width:100%;margin:0 auto;z-index:40;}
#pagetop a {position: fixed;bottom:20px;right:15px;display: block;background:url(../img2/pagetop.png) no-repeat 0px top;background-size: contain;width:75px;height:75px;text-indent:-8989px;display:block;overflow:hidden;opacity:0.5;}
#pagetop a:hover {opacity:1;}


/*googlemap*/
.googlemap{margin-bottom:0 !important;}
.googlemap iframe{filter:grayscale(70%);-webkit-filter:grayscale(70%);}




/*全ページ共通のページ下部のお問合せ・協力会社様募集*/		
.index-end-com1{text-align:center;}
		
ul.toiawase-waku{margin:30px auto 0 auto !important;max-width:1000px;}
ul.toiawase-waku li{display:inline-block;margin-right:2%;width:30%;vertical-align: middle;}
ul.toiawase-waku li:last-child{margin-right:0;}

.toiawase-tel{}
.toiawase-tel dl{}
.toiawase-tel dl a{color:#000;text-decoration:none;}
.toiawase-tel dl a:hover{opacity:0.6;}
.toiawase-tel dl a dt{text-align:center;margin-bottom: -3px;}
.toiawase-tel dl a dd{background:url(../img2/tel.png) no-repeat 0 6px;font-family: YakuHanMP, 'Noto Serif JP', serif;font-weight: 500;font-size: 208%;line-height:1;padding-left:41px;background-size: 35px;letter-spacing: 0.02em;}
.toiawase-tel p{font-size: 73%;margin: 4px 0 0 8px;}

/*お問合せ*/
ul.toiawase-waku li.toiawase-form a {font-size: 103%;color: #fff;width:290px;line-height:65px;height:70px;letter-spacing: 0.05em; position: relative; z-index: 2;display: inline-block;border: 1px solid #00959a;
 text-align: center;text-decoration: none;outline: none;-webkit-perspective: 300px;perspective: 300px;-webkit-transform-style: preserve-3d;transform-style: preserve-3d;}
ul.toiawase-waku li.toiawase-form a::before,
ul.toiawase-waku li.toiawase-form a::after {position: absolute;z-index: -1;display: block;content: '';}

ul.toiawase-waku li.toiawase-form a,
ul.toiawase-waku li.toiawase-form a::before,
ul.toiawase-waku li.toiawase-form a::after {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-transition: all .3s;transition: all .3s;}

ul.toiawase-waku li.toiawase-form a:hover {color:#19898c;}
ul.toiawase-waku li.toiawase-form a::after {top: 0;left: 0;width: 100%;height: 100%;background-color:#00959a;-webkit-transform-origin: center bottom;transform-origin: center bottom;-webkit-transform: rotateX(0);transform: rotateX(0);}
ul.toiawase-waku li.toiawase-form a:hover::after {-webkit-transform: rotateX(-180deg);transform: rotateX(-180deg);}





/*///////////////////////////////////////////////////////////////////////////////
 全ページ共通のフッター
///////////////////////////////////////////////////////////////////////////////*/
#footer{text-align: center;}

ul.footer-menu-ul{text-align: center;background-color:#333;margin-bottom: 40px;padding: 14px 0;}
ul.footer-menu-ul li{margin: 8px 30px 7px 20px;font-size:95%;line-height:1;display: inline-block;}
ul.footer-menu-ul li a{color:#fff;text-decoration: none;}
ul.footer-menu-ul li a:hover{color: #aaa;text-decoration: none;}

.footer-rogo{display:inline-block;margin:0 auto;vertical-align: middle;}
.footer-rogo a{background:url(../img2/rogo.png) no-repeat center top;background-size: contain;text-indent: -8989px;display: block;overflow: hidden;transition: 0.5s;width: 255px;height: 66px;image-rendering: -webkit-optimize-contrast; /*背景画像のボケ防止*/}
.footer-rogo a:hover{opacity:0.5;}

.insta{display:inline-block;margin:0 0 0 50px;vertical-align: middle;}
.insta a{background:url(../img2/insta_color.png) no-repeat center top;background-size: contain;display: block;text-indent: 100%;white-space: nowrap;overflow: hidden;transition: 0.5s;width: 32px;height: 33px;image-rendering: -webkit-optimize-contrast; /*背景画像のボケ防止*/}
.insta a:hover{opacity:0.5;}

.footer-zip{display: inline-block;text-align:center;font-size: 90%;line-height: 1.6;margin-top: 18px;vertical-align: middle;margin: 18px 0 5px 0;}
.footer-zip span{}
.footer-zip a{color:#000;text-decoration: none;}
.footer-zip a:hover{text-decoration:underline;color:#444;}

.partnership{display:inline-block;margin:6px 0 0 25px;vertical-align: middle;}
.partnership a{background:url(../img2/rogo_partnership.png) no-repeat center top;background-size: contain;text-indent:-8989px;display: block;overflow: hidden;transition: 0.5s;width: 125px;height: 50px;image-rendering: -webkit-optimize-contrast; /*背景画像のボケ防止*/}
.partnership a:hover{opacity:0.5;}


.copyright{font-size:11px;line-height:1;text-align:center;color:#555;padding:20px 0 20px 0;border-top:1px solid #00959a;letter-spacing: 0;margin-top: 33px;}




/*印刷しない--------------------*/
@media print {
#pagetop,
#pagetop a{display:none;}
#header{position: absolute !important;}

.fadein-,
.fadein-left,
.fadein-right,
.fadein-up,
.zoomin{opacity: 1;transform: none !important;}
}

