/*
Theme Name: ISODAGUMI 2024
Theme URI: http://www.isodagumi.co.jp/
Author: SUDA SEIHAN WEB TEAM
Author URI: http://www.suda.co.jp/
Description: 
Version: 1.1a
License: 
License URI: 
Tags: 
Text Domain: 
*/


/**************************

commons

**************************/

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




/**************************

base & reset

**************************/

* { margin:0; padding:0; }
html { overflow-y:scroll; }
body { font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-size:10px; }
h1, h2, h3, h4, h5, h6, p, dt, dd, th, td, li { font-size:100%; font-weight:normal; }




/* @media print, screen and (min-width: 1195px) {*/
@media print, screen and (min-width: 768px) {
	/**************************

	stracture

	**************************/

	.inner { width:990px; display:block; margin:0 auto; }
	.inner.home { width:1195px; }

	.aligncenter { display:block; margin:0 auto; }
	.alignleft { display:block; float:left; margin:0 20px 20px 0; }
	.alignright { display:block; float:right; margin:0 0 20px 20px; }


	header { width:100%; }
	header #site-header {}
	header #site-header .firstline { width:100%; height:16px; padding:5px 0; background:#333333; }
	header #site-header .firstline h1 { color:#fff; display:block; float:left; }
	header #site-header .firstline ul { list-style-type:none; display:block; float:right; }
	header #site-header .firstline ul li { display:block; float:left; margin:0 10px 0 0; padding:0 10px 0 0; border-right:solid 1px #fff; }
	header #site-header .firstline ul li a { text-decoration:none; color:#fff; }
	header #site-header .firstline ul li a:hover { color:#F60; }
	header #site-header .secondline { display:block; height:80px; padding:20px 0 0 0; }
	header #site-header .secondline h2 { width:250px; height:70px; display:block; float:left; }
	header #site-header .secondline h2 a { width:100%; height:100%; display:block; background:url(img/header-logo.svg) no-repeat; text-indent:-9999px; }
	header #site-header .secondline h2 a:hover { opacity:0.8; }
	header #site-header .secondline form.search-form { width:280px; display:block; float:right; }
	header #site-header .secondline form.search-form .screen-reader-text { display:none; }
	header #site-header .secondline form.search-form input.search-field { width:200px; height:28px; margin:25px 5px 0 0;  padding:5px; background:#f5f5f5; border:solid 1px #ccc; border-radius:5px; -moz-border-radius:5px; -webkit-border-radius:5px; }
	header #site-header .secondline form.search-form input.search-submit { width:55px; height:30px; margin:25px 0 0 0;  background:#ccc; border:solid 1px #999; border-radius:5px; -moz-border-radius:5px; -webkit-border-radius:5px; color:#333; }

	#header-visual { display:block; width:100%; height:200px; background:url(img/visual.jpg) repeat-y center; }

	#global-navi { width:100%; height:90px; display:block; background:#666; }
	#global-navi div {width: 1126px; }
	#global-navi ul { list-style-type:none; }
	#global-navi ul li { width:120px; height:70px; display:block; margin:10px 12px; float:left; }
	#global-navi ul li:first-child { margin:10px 11px 10px 0; }
	#global-navi ul li:last-child {margin:10px 0 10px 11px; }
	#global-navi ul li a {width:100%; height:100%; display:block; text-indent:-9999px; }
	#global-navi ul li a.gn01 {background-image:url(img/gnav/gnav1-1.svg),url(img/gnav/gnav1-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat; }
	#global-navi ul li a.gn01:hover {background-size: 0,contain}
	#global-navi ul li a.gn02  { background-image:url(img/gnav/gnav2-1.svg),url(img/gnav/gnav2-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat; }
	#global-navi ul li a.gn02:hover {background-size: 0,contain}
	#global-navi ul li a.gn03 {background-image:url(img/gnav/gnav3-1.svg),url(img/gnav/gnav3-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat;  }
	#global-navi ul li a.gn03:hover  {background-size: 0,contain}
	#global-navi ul li a.gn04 {background-image:url(img/gnav/gnav4-1.svg),url(img/gnav/gnav4-2.svg); background-position: center 18.2px;  background-size: contain,0; background-repeat: no-repeat; }
	#global-navi ul li a.gn04:hover {background-size: 0,contain;background-position: center 18.2px;}
	#global-navi ul li a.gn05 {background-image:url(img/gnav/gnav5-1.svg),url(img/gnav/gnav5-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat; }
	#global-navi ul li a.gn05:hover {background-size: 0,contain}
	#global-navi ul li a.gn06 {background-image:url(img/gnav/gnav6-1.svg),url(img/gnav/gnav6-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat; }
	#global-navi ul li a.gn06:hover {background-size: 0,contain}
	#global-navi ul li a.gn07 {background-image:url(img/gnav/gnav7-1.svg),url(img/gnav/gnav7-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat; background-position: center 49%;}
	#global-navi ul li a.gn07:hover {background-size: 0,contain; background-position: center 49%;}
	#global-navi ul li a.gn08 {background-image:url(img/gnav/gnav8-1.svg),url(img/gnav/gnav8-2.svg); background-position: center;  background-size: contain,0; background-repeat: no-repeat; }
	#global-navi ul li a.gn08:hover {background-size: 0,contain}

	.g-navi-sp {
		display: none;
	}




	#c-body { width:100%; display:block; background:#fff; padding:40px 0; }
	#main { width:700px; display:block; float:left; }
	#main .main-header { display:block; margin:0 0 20px 0; }
	#main .main-header h3 { display:block; width:700px; height:50px; padding:15px 0 5px; display:block; /*border-bottom:solid 1px #ccc;*/ text-indent:-9999px; }
	#main .main-header h5 { font-size:2.6em; line-height:1.1; color:#333; display:block; margin:40px 0 10px 0; padding:20px 0 20px 20px; /*border-left:solid 5px #ccc;*/ border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%);  }
	#main .main-content { display:block; margin:0 0 20px 0; padding:0 10px; }
	#main .main-content .in-wrap { display:block; padding:0 0 0 25px; }
	#main .main-content h3 { font-size:2.6em; line-height:1.1; color:#333; display:block; margin:40px 0 10px 0; padding:20px 0 20px 20px; /*border-left:solid 5px #ccc;*/ border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%); }
	#main .main-content h4 { font-size:2.2em; color:#333; display:block; margin:30px 0 10px 0; padding:0; }
	#main .main-content h5 { font-size:1.6em; }
	#main .main-content h6 { font-size:1.4em; }
	#main .main-content p { font-size:1.4em; color:#333; line-height:2.0; display:block; margin:10px 0 20px; }
	#main .main-content p.ind1 { text-indent:1em; }
	#main .main-content ul { list-style-type:circle; margin:10px 0 20px 30px; }
	#main .main-content ol { list-style-type:decimal; margin:10px 0 20px 30px; }
	#main .main-content li { font-size:1.4em; line-height:1.1; color:#333; margin:10px 0; }
	#main .main-content dl { display:block; padding:5px 0; margin:5px 0; border-bottom:dotted 1px #ccc; }
	#main .main-content dl dt { display:block; float:left; font-weight:bold; color:#333; font-size:1.4em; padding:0 20px 0 0; }
	#main .main-content dl dd { display:block; float:left; font-size:1.4em;  }
	#main .main-content a.btn01 { width:70%; display:block; margin:10px auto; padding:10px 0; text-align:center; background:#F60; color:#fff; text-decoration:none; border-radius:10px; box-shadow: 5px 5px 5px rgba(0,0,0,0.4); border:solid 2px #fff; }
	#main .main-content a.btn01:hover { background:#C00; }




	#sub { width:260px; height:100%; display:block; float:right; background:#f5f5f5; }
	#sub #local-menu { display:block; margin:0 0 20px 0; }
	#sub #local-menu h3 { width:260px; height:60px; display:block;text-indent:-9999px; }
	#sub #local-menu ul { list-style-type:none; display:block; padding:10px; }
	#sub #local-menu ul li { display:block; padding:7px 0 7px 30px; margin:10px 0; border-bottom:dashed 1px #ccc; background:url(img/sidebar-localmenu-bg.png) no-repeat left; }
	#sub #local-menu ul li a { font-size:1.3em; text-decoration:none; color:#333; display:block; }
	#sub #local-menu ul li a:hover { color:#F30; text-decoration:underline; }
	#sub #inBanner-area { display:block; margin:20px 0; }
	#sub #inBanner-area a { width:240px; height:80px; display:block; margin:20px auto; border:solid 1px #ccc; border-radius:10px; background:#f9f9f9; }
	#sub #inBanner-area a:hover { opacity:0.5; }

	#sub #post-back-num { display:block; margin:0 0 20px 0; }
	#sub #post-back-num h3 { width:260px; height:60px; display:block;text-indent:-9999px; }
	#sub #post-back-num h4 { display:block; font-size:1.4em; display:block; margin:0 10px; }
	#sub #post-back-num ul { list-style-type:none; display:block; padding:10px; }
	#sub #post-back-num ul li { display:block; padding:7px 0 7px 30px; margin:10px 0; border-bottom:dashed 1px #ccc; background:url(img/sidebar-localmenu-bg.png) no-repeat left; }
	#sub #post-back-num ul li a { font-size:1.3em; text-decoration:none; color:#333; display:block; }
	#sub #post-back-num ul li a:hover { color:#F30; text-decoration:underline; }

	#sub #local-menu h3.case-title { background:url(img/sidebar-h3-title02.png) no-repeat #666; }
	#sub #local-menu h3.csr-title { background:url(img/sidebar-h3-title03.png) no-repeat #666; }



	#outBanner-area { width:100%; display:block; background:#fff; padding:20px 0; }
	#outBanner-area h3 { width:220px; height:30px; display:block; margin:10px 0 20px; background:url(img/link-title.png) no-repeat; text-indent:-9999px; }
	#outBanner-area a { display:block; float:left; margin:0 20px 0 0; }
	#outBanner-area a:last-child { margin:0; }
	#outBanner-area a:hover { opacity:0.8; }

	footer { display:block; background:#f5f5f5; padding:30px 0 0 0; }
	footer .first-line { display:block; padding:0 0 20px 0; }
	footer .first-line h2 { width:250px; height:60px; display:block; background:url(img/footer-logo.svg) no-repeat; text-indent:-9999px; float:left; }
	footer .first-line #footer-main-menu { width:663px; display:block; float:right; }
	footer .first-line #footer-main-menu ul { list-style-type:none; padding:30px 0; }
	footer .first-line #footer-main-menu ul li { display:block; float:left; margin:0 1px; padding:0 18px; border-left:solid 1px #ccc; border-right:solid 1px #ccc; }
	footer .first-line #footer-main-menu ul li a { font-size:1.2em; color:#333; text-decoration:none; }
	footer .first-line #footer-main-menu ul li a:hover { color:#F60; }
	footer .second-line { background:#333; padding:10px 0; }
	footer .second-line p { color:#fff; font-size:1.1em; display:block; width:200px; float:left; }
	footer .second-line #footer-sub-menu { width:550px; display:block; float:right; }
	footer .second-line #footer-sub-menu ul { list-style-type:none; }
	footer .second-line #footer-sub-menu ul li { display:block; float:left; margin:0 1px; padding:0 18px; border-right:solid 1px #666; }
	footer .second-line #footer-sub-menu ul li:last-child { border:none; }
	footer .second-line #footer-sub-menu ul li a { font-size:1.1em; color:#fff; text-decoration:none; }
	footer .first-line #footer-main-menu ul li:nth-of-type(7) a{line-height: 0.4em;}

	/**************************

	category関連

	**************************/

	/**category共通**/
	.category {}
	.category .main-header { display:block; margin:0 0 10px 0!important; }
	.category .main-header h3 { padding:15px 0; display:block; /*border-bottom:solid 1px #ccc;*/ text-indent:-9999px; }
	.category .main-content h4 { display:block; margin:15px auto 15px!important; padding:7px!important; background:#f5f5f5; font-size:1.8em!important; font-weight:normal; color:#333; text-align:center; border-top:solid 1px #eee; border-bottom:solid 1px #eee; }

	/*一覧表示共通（カテゴリだけでなく、ページでも使用）*/
	article.post-wrap { margin:10px 20px; padding:10px 0; display:block; border-bottom:solid 1px #eee; }
	article.post-wrap img { display:block; width:100px; height:auto; float:left; margin:0 20px 0 0; }
	article.post-wrap h5 { display:block; padding:5px 0 2px; }
	article.post-wrap h5 a { color:#333; text-decoration:none; }
	article.post-wrap h5 a:hover { color:#F60; text-decoration:underline; }
	article.post-wrap dl { border-bottom:none!important; }


	/*土木カテゴリ一覧*/.pw-hist .main-header h3 { background:url(img/titles/cat-pw.svg) no-repeat left; }
	/*建築カテゴリ一覧*/.arch-hist .main-header h3 { background:url(img/titles/cat-arch.svg) no-repeat left; }
	/*土木・建築カテゴリ一覧*/.case-hist .main-header h3 { background:url(img/titles/cat-case.svg) no-repeat left; }
	/*社会貢献カテゴリ一覧*/.csr-hist .main-header h3 { background:url(img/titles/cat-csr.svg) no-repeat left; }
	/*採用カテゴリ一覧*/.req-hist .main-header h3 { background:url(img/titles/page-recruit.svg) no-repeat left; }
	/*お知らせカテゴリ一覧*/.news-hist .main-header h3 { background:url(img/titles/page-whatsnew.svg) no-repeat left; }


	/*ページネーション*/
	.wp-pagenavi { display:block; margin:20px; font-size:1.3em; }
	.wp-pagenavi a { color:#333; text-decoration:none; }

	/**************************

	pages

	**************************/

	/*home*/
	.home #c-body { background:#f5f5f5; }
	.home #main { width:100%; display:block; float:none; }
	.home #header-visual { width:100%; height:320px; display:block; background:#f5f5f5; }
	.home #header-visual ul { list-style-type:none; }
	.home #news-area { width:100%; height:auto; display:block; padding:0 0 40px 0; }
	.home #news-area h3 { width:220px; height:30px; display:block; margin:30px 0; }
	.home #news-area h3 a { width:100%; height:100%; display:block; background:url(img/home_news-title.png) no-repeat; text-indent:-9999px; }
	.home #news-area h3 a:hover { opacity:0.8; }
	.home #news-area article { width:170px; height:210px; display:block; float:left; margin:0 35px 0 0; }
	.home #news-area article:last-child { margin:0; }
	.home #news-area article a.thumb { display:block; width:170px; height:115px; background-repeat:no-repeat; background-position:center; background-size:cover; text-indent:-9999px; }
	.home #news-area article a.thumb:hover { opacity:0.8; }
	.home #news-area article p { color:#fff; display:block; margin:10px; font-size:1.1em; }
	.home #news-area article h4 { display:block; margin:10px; }
	.home #news-area article h4 a { color:#FFF; font-size:1.2em; text-decoration:none; line-height:1.1; }
	.home #news-area article h4 a:hover { text-decoration:underline; }
	.home #news-area .recruit { background:#B72E00; }
	.home #news-area .information { background:#D96D00; }
	.home #news-area .society { background:#008C23; }
	.home #news-area .case { background:#00698C; }
	.home #news-area .pw { background:#00698C; }
	.home #news-area .arch { background:#1E9DD5; }
	.home #news-area .etc { background:#333; }

	.home #inBanner-area { width:100%; display:flex; padding:0 0 30px;  justify-content:center;}
	.home #inBanner-area a { display:block; width:300px; height:100px; margin:0 40px 0 0; float:left; border:solid 1px #ccc; border-radius:10px; -moz-border-radius:10px; -webkit-border-radius:10px; }
	.home #inBanner-area a:last-child { margin:0; }
	.home #inBanner-area a:hover { opacity:0.8; }
	.home #inBanner-area a img { display:block; margin:7px auto; }

	/*会社概要*/
	.page-company #main .main-header h3 { display:block; background:url(img/titles/page-company.svg) no-repeat left; }
	.page-company #main .main-content dl dt { width:130px; height:100%; background:#EBE9DC; padding:10px; margin:0 10px 0 0; }
	.page-company #main .main-content dl dd { width:460px; padding:10px; }
	.page-company #main .main-content dl dd img { width:90%; display:block; margin:5px 0; }
	.page-company #main .main-content p { text-indent:1em; }
	.page-company #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }

	/*交通アクセス*/
	.page-access #main .main-header h3 { display:block; background:url(img/titles/page-access.svg) no-repeat left; }
	.page-access #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }

	/*サイトマップ*/
	.page-sitemap #main .main-header h3 { display:block; background: url(img/titles/page-sitemap.svg) no-repeat left; }
	.page-sitemap #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }

	/*土木・建築*/
	.page-publicworks #main .main-header h3 { display:block; background: url(img/titles/page-publicworks.svg) no-repeat left; }
	.page-publicworks #main .post-back-num { display:block; margin:20px 10px; padding:10px; border:solid 1px #ccc; }
	.page-publicworks #main .post-back-num h4 { display:block; margin:0 auto 15px!important; padding:7px!important; background:#f5f5f5; font-size:1.8em!important; font-weight:normal; color:#333; text-align:center; border-top:solid 1px #eee; border-bottom:solid 1px #eee; }


	/*社会貢献*/
	.page-csr #main .main-header h3 { display:block; background: url(img/titles/page-csr.svg) no-repeat left; }
	.page-csr #main .post-back-num { display:block; margin:20px 10px; padding:10px; border:solid 1px #ccc; }
	.page-csr #main .post-back-num h4 { display:block; margin:0 auto 15px!important; padding:7px!important; background:#f5f5f5; font-size:1.8em!important; font-weight:normal; color:#333; text-align:center; border-top:solid 1px #eee; border-bottom:solid 1px #eee; }

	/*ISO*/
	.page-iso #main .main-header h3 { display:block; background:url(img/titles/page-iso.svg) no-repeat left; }
	.page-iso #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }
	.page-iso #main p.copy { text-shadow: 1px 1px 3px #999; }

	/* SDGs */
	#main.sdgs-declaration{width: 1000px;}
	#sdgs-headline{width:1000px;;margin: auto; margin-bottom:100px;text-align: center;} 
	#sdgs-headline p{font-size: 2em;}
	#sdgs-headline a,.sdgs-declaration #sdgs-content a{color: #F60;}
	#sdgs-headline img{width: 990px;}
	.sdgs-declaration #sdgs-content p{margin: 10px 0 10px;font-size: 1.4em;}
	.sdgs-declaration #sdgs-content ul{margin: 0;}
	.sdgs-declaration #sdgs-content li{font-size: 1.4em;list-style: inside;}
	.sdgs-declaration #sdgs-content h3{background-color:white; border-left:solid 20px #CF462A; font-size: 2.6em; padding:7px;margin-bottom: 10px;}
	.sdgs-declaration #sdgs-content h4{background-color:#EBE9DC; padding: 5px; margin:0 0 10px;display: inline-block; font-weight: bold;font-size: 1.4em;}
	.activity{width:1000px;display: flex; justify-content: space-between;margin-bottom:60px}
	.activity-text,.activity-img{width: 495px;}
	.activity-img{text-align: right;}
	.activity-img img{width: 485px;}

	/*AUTO LISP*/
	.page-autolisp #main .main-header h3 { display:block; background: url(img/titles/page-autolispsvg.svg) no-repeat left; }
	.page-autolisp #sub #local-menu h3 { background:url(img/sidebar-h3-title05.png) no-repeat #666; }
	.page-autolisp #main .wp-video { display:block; float:right; margin:40px 0 20px 20px; }
	.page-autolisp #main li { line-height:1.4!important; margin:10px 0; }


	/*新卒*/
	.page-newgraduates #main .main-header h3 { display:block; background:url(img/titles/page-newgraduates.svg) no-repeat left; }
	.page-newgraduates #main .main-content h4 { display:block; margin:30px auto 15px!important; padding:7px!important; font-size:2.3em!important; font-weight:normal; color:#333; text-align:left; }
	.page-newgraduates #main .main-content h5 { font-size:1.6em; line-height:1.1; color:#333; display:block; margin:20px 0 10px 0; padding:10px 0 10px 10px; /*border-left:solid 5px #ccc;*/ border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%);  }
	.page-newgraduates #main .main-content dl { }
	.page-newgraduates #main .main-content dl dt { width:80px; }

	.page-newgraduates #sub #local-menu h3 { background:url(img/sidebar-h3-title06.png) no-repeat #666; }


	/*既卒*/
	.page-experienced #main .main-header h3 { display:block; background:url(img/titles/page-experienced.svg) no-repeat left; }
	.page-experienced #main .main-content h4 { display:block; margin:30px auto 15px!important; padding:7px!important; font-size:2.3em!important; font-weight:normal; color:#333; text-align:left; }
	.page-experienced #main .main-content h5 { font-size:1.6em; line-height:1.1; color:#333; display:block; margin:20px 0 10px 0; padding:10px 0 10px 10px; /*border-left:solid 5px #ccc;*/ border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%);  }
	.page-experienced #main .main-content dl {  }
	.page-experienced #main .main-content dl dt { width:80px; }

	.page-experienced #sub #local-menu h3 { background:url(img/sidebar-h3-title06.png) no-repeat #666; }

	/*お問合せ*/
	.page-inquiry #main .main-header h3 { display:block; background:url(img/titles/page-inquiry.svg) no-repeat left; }
	.page-inquiry #main form input { padding:10px; border:solid 1px #ccc; }
	.page-inquiry #main form textarea { padding:10px; border:solid 1px #ccc; }
	.page-inquiry #sub #local-menu h3 { background: url(img/sidebar-h3-title01.png) no-repeat #666; }

	/*プライバシーポリシー*/
	.page-pp #main .main-header h3 { display:block; background:url(img/titles/page-pp.svg) no-repeat left; }
	.page-pp #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }

	/*特商法*/
	.page-law #main .main-header h3 { display:block; background:url(img/titles/page-law.svg) no-repeat left; }
	.page-law #main .main-content dl dt { width:170px; }
	.page-law #main .main-content dl dd { width:480px; }
	.page-law #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }

	/* 環境パフォーマンス */
	.page-emissions-co2 #main .main-header h3 { display:block; background:url(img/titles/page-emissions--co2.svg) no-repeat left; margin: 0 auto;}
	.page-emissions-co2 #sub {display: none;}
	.page-emissions-co2 #main {max-width: 990px;padding-top: 80px;width: 100%;}
	.page-emissions-co2 #emissions-contents .main-header h3 {display: block;background: url(img/titles/page-emissions.svg) no-repeat left;}
	.emissions-co2 a{color: #CF462A;}
	.emissions-co2 #emissions-contents h2{font-size: 2.8em;line-height: 1.1;color: #333;display: block;margin: 40px 0 10px 0;padding: 10px 60px;width: fit-content;border-bottom: solid 1px #EFEFEF;background: linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%);}
	.emissions-co2 #emissions-contents .lead-cont .text{font-size: 17px;max-width: 51%;position: relative;z-index: 2;}
	.emissions-co2 #emissions-contents h3{background: white;border-left: solid 20px #CF462A;font-size: 2.6em;padding: 7px;margin: 0 0 10px 0;border-bottom: none;}
	.emissions-co2 #emissions-contents .imgWrap{margin-bottom: 60px;width: 100%;}
	.emissions-co2 #emissions-contents .imgWrap img{width: 100%;}
	.emissions-co2 #emissions-contents .lead-cont .imgWrap {margin-top: -100px;position: relative;z-index: 0;}


	/*新着情報*/
	.page-whatsnew #main .main-header h3 { display:block; background:url(img/titles/page-whatsnew.svg) no-repeat left; }


	/*single*/
	.single .pw-single .main-header h3 { display:block; background: url(img/titles/cat-pw.svg) no-repeat left; }
	.single .arch-single .main-header h3 { display:block; background: url(img/titles/cat-arch.svg) no-repeat left; }
	.single .csr-single .main-header h3 { display:block; background: url(img/titles/cat-csr.svg) no-repeat left; }

	.single #main .main-header h4 { font-size:2.6em; line-height:1.1; color:#333; display:block; margin:40px 0 10px 0; padding:20px 0 20px 20px; border-left:solid 5px #ccc; border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%); }
	.single #main .main-content .photo-area { display:block; margin:0 0 20px 0; }
	.single #main .main-content .photo-area a img { width:220px; display:block; float:left; margin-right:10px; }
	.single #main .main-content .photo-area a img.ph003 { margin-right:0; }
	.single #main .main-content dl dt { width:130px; background:#EBE9DC; padding:10px; margin:0 10px 0 0; }
	.single #main .main-content dl dd { width:460px; padding:10px; }


	/*サイトマップ*/
	.page-sitemap #main ul { list-style-type:circle; }
	.page-sitemap #main ul li a { text-decoration:none; color:#333; }
	.page-sitemap #main ul li li a { font-size:0.7em; }


	/*検索結果*/
	.search .main-header h3 { display:block; background: url(img/titles/cat-search.svg) no-repeat left; }
}





/* タブレット
	@media screen and (min-width: 768px) and (max-width: 1194px) { */
	/**************************

	stracture

	**************************/

	/* .inner { width:768px; display:block; margin:0 auto; }

	.aligncenter { display:block; margin:0 auto; }
	.alignleft { display:block; float:left; margin:0 20px 20px 0; }
	.alignright { display:block; float:right; margin:0 0 20px 20px; }

	header { width:100%; }
	header #site-header .firstline.sp { display: none; }
	header #site-header .secondline { padding:10px 0 0 0; }
	header #site-header .secondline h2 a { display:block; width:768px; height:70px; background:url(img/header-logo.svg) no-repeat; background-position-x: center; text-indent:-9999px; }
	header #site-header .secondline .search-form.sp { display:none; }

	#header-visual .slide.sp { display: none; }

} */




/* スマートフォン */
@media screen and (max-width: 767px) {
	/**************************

	stracture

	**************************/

	.inner { width:100%; display:block; margin:0; }

	.aligncenter { display:block; margin:0 auto; }
	.alignleft { display:block; float:left; margin:0 20px 20px 0; }
	.alignright { display:block; float:right; margin:0 0 20px 20px; }

	header { width:100%; }
	header #site-header .firstline.sp { display: none; }
	header #site-header .secondline { padding:10px 0 0 0; }
	header #site-header .secondline h2 a { display:block; width:100%; height:70px; background:url(img/header-logo.svg) no-repeat; background-position-x: center; text-indent:-9999px; }
	header #site-header .secondline .search-form.sp { display:none; }

	#header-visual .slide.sp { display: none; }

	.g-navi-pc {
		display: none;
	}

	.g-navi-sp {
		margin: 5vw 0;
	}

	.g-navi-sp-item {
		display: block;
		float: left;
		box-sizing: border-box;
		width: 50vw;
		border-left: 1px solid #ddd;
		background: #afbdce;
	}

	.g-navi-sp-item:nth-of-type(2n - 1) {
		border-left: none;
	}

	.g-navi-sp-item:nth-of-type(n + 3) {
		border-top: 1px solid #ddd;
	}

	.g-navi-sp-item a {
		display: block;
		width: 50vw;
		height: 4vw;
		margin: 4vw 0;
		text-align: center;
		text-decoration: none;
		color: #333;
		font-size: 9pt;
		font-weight: bold;
	}

	.new-area-wrapper {
		padding: 0 3vw;
	}

	.news-area-title {
		margin: 5vw 0 2vw;
	}

	.news-area-title a {
		display: block;
		margin-bottom: 4vw;
		padding-bottom: 1vw;
		border-bottom: 1px solid #ccc;
		text-decoration: none;
		color: #333;
		font-size: 13pt;
		font-weight: bold;
	}

	.post-headline {
		margin: 0 0 5vw;
	}

	.post-headline-thumb {
		display: none;
	}

	.post-headline-date {
		font-size: 12px;
	}

	.post-headline-title {
		margin: 0.5vw 0 0;
	}

	.post-headline-title a {
		text-decoration: none;
		color: #405896;
		font-weight: bold;
		font-size: 13px;
	}

	.post-headline-sdgs-pc {
		display: none;
	}

	.inBanner-area {
		margin: 0 3vw;
	}

	.inBanner-area-item {
		display: block;
		border: 1px solid #ccc;
		border-radius: 5px;
		margin: 3vw 0;
	}

	.inBanner-area-item img {
		display: block;
		margin: 0 auto;
		width: 65vw;
	}

	#outBanner-area {
		display: none;
	}

	.footer-wrapper {
		display: none;
	}

	.footer-ci {
		margin: 5vw 0;
		padding-top: 2vw;
		border-top: 1px solid #ccc;
		text-align: center;
		font-size: 13px;
		font-weight: bold;
	}

	.footer-sub-menu-pc {
		display: none;
	}

	.footer-sub-menu-sp {
		margin: 3vw 0 5vw;
		display: flex;
		justify-content: center;
	}

	.footer-sub-menu-sp-item {
		display: block;
	}

	.footer-sub-menu-sp-item a {
		display: block;
		margin: 0 2vw;
		text-decoration: none;
		color: #333;
		font-size: 12px;
	}

	.single-sp {
		margin: 0 3vw;
		width: 94vw;
	}

	.inBanner-area-sp {
		display: none;
	}

	#sub #post-back-num { display:block; margin: 0 3vw; }
	#sub #post-back-num h3 { margin: 15px 0 8px; font-size:15px; text-align: center; }
	#sub #post-back-num h4 { margin: 15px 0 8px; font-size:15px; text-align: center; }
	
	#sub #post-back-num ul {
		display: flex;
		flex-wrap: wrap;
		list-style-type: none;
		width: 94vw;
	}

	#sub #post-back-num ul li {
		background-color: #c8d2dd;
		text-align: center;
		width: 36vw;
		height: 6vw;
		margin: 2vw 2vw;
		padding: 2vw 2vw;
		border-radius: 6vw;
		line-height: 6vw;
		font-size: 12px;
	}

	#sub #post-back-num ul li a {
		text-decoration: none;
		color: #333;
	}

	#sub #local-menu { display:block; margin: 0 3vw; }
	#sub #local-menu h3 { margin: 15px 0 8px; font-size:15px; text-align: center; }
	#sub #local-menu h4 { margin: 15px 0 8px; font-size:15px; text-align: center; }
	
	#sub #local-menu ul {
		display: flex;
		flex-wrap: wrap;
		list-style-type: none;
		width: 94vw;
	}

	#sub #local-menu ul li {
		background-color: #c8d2dd;
		text-align: center;
		width: 36vw;
		height: 6vw;
		margin: 2vw 2vw;
		padding: 2vw 2vw;
		border-radius: 6vw;
		line-height: 6vw;
		font-size: 12px;
	}

	#sub #local-menu ul li a {
		text-decoration: none;
		color: #333;
	}

	.category .main-header { display:block; margin:0 0 10px 0!important; }
	.category .main-header h3 { margin: 15px 0 8px; font-size:15px; text-align: center; }
	.category .main-content h4 { margin: 15px 0 8px; font-size:15px; text-align: center; }

	/*一覧表示共通（カテゴリだけでなく、ページでも使用）*/
	article.post-wrap { margin:10px 20px; padding:10px 0; display:block; border-bottom:solid 1px #eee; font-size: 11px; }
	article.post-wrap img { display:block; width:100px; height:auto; float:left; margin:0 20px 0 0; }
	article.post-wrap h5 { display:block; padding:5px 0 2px; }
	article.post-wrap h5 a { color:#333; text-decoration:none; }
	article.post-wrap h5 a:hover { color:#F60; text-decoration:underline; }
	article.post-wrap dl { border-bottom:none!important; }

	.wp-pagenavi {
		text-align: center;
	}



	/**************************

	pages

	**************************/


	/*会社概要*/
	.page-company #main .main-header h3 {
		text-align: center;
		font-size: 15px;
		font-weight: bold;
		margin-bottom: 4vw;
		padding-bottom: 1vw;
		border-bottom: 1px solid #ccc;
	}

	.page-company #main .main-content {
		margin: 0 3vw;
		font-size: 12px;
	}

	.page-company #main .main-content h3 {
		font-size: 13px;
		font-weight: bold;
		text-align: center;
		margin: 5px 0 10px;
	}

	.page-company #main .in-wrap {
		line-height: 2;
	}

	.page-company #main p {
		margin: 20px 0;
	}

	.page-company #main .main-content dl dt { box-sizing:border-box; width:94vw !important; height:100%; background:#EBE9DC; padding:10px; margin:0 10px 0 0; }
	.page-company #main .main-content dl dd { box-sizing:border-box; width:94vw; padding:10px; }
	.page-company #main .main-content dl dd img { width:100%; display:block; margin:5px 0; }
	.page-company #main .main-content p { text-indent:1em; }
	.page-company #main .main-content .btn01 { text-align: center; }

	.page-company #sub #local-menu h3 {
		display: none;
	}

	/*交通アクセス*/
	.page-access #main .main-header h3 {
		font-size: 15px;
		font-weight: bold;
		text-align: center;
		margin: 5px 0 10px;
	}

	.page-access #main .main-content h4 {
		font-size: 13px;
		text-align: center;
		margin: 5px 0 10px;
	}

	.page-access #main .main-content iframe {
		width: 100%;
		margin-bottom: 20px;
	}

	.page-access #sub #local-menu h3 {
		display: none;
	}

	/*サイトマップ*/
	.page-sitemap #main .main-header h3 { display:block; background: url(img/titles/page-sitemap.svg) no-repeat left; }
	.page-sitemap #sub #local-menu h3 { background:url(img/sidebar-h3-title01.png) no-repeat #666; }

	/*土木・建築*/
	.page-publicworks #main .main-header h3 {
		font-size: 15px;
        font-weight: bold;
        text-align: center;
        margin: 5px 0 20px;
        padding-bottom: 1vw;
        border-bottom: 1px solid #ccc;
	}
	.page-publicworks #main .main-content {
        margin: 0 3vw;
        font-size: 12px;
    }
	.page-publicworks #main .post-back-num { display:block; margin:20px 10px; padding:10px; border:solid 1px #ccc; }
	.page-publicworks #main .post-back-num h4 { display:block; margin:0 auto 15px!important; padding:7px!important; background:#f5f5f5; font-size:1.8em!important; font-weight:normal; color:#333; text-align:center; border-top:solid 1px #eee; border-bottom:solid 1px #eee; }


	/*社会貢献*/
	.page-csr #main .main-header h3 {
		font-size: 15px;
        font-weight: bold;
        text-align: center;
        margin: 5px 0 20px;
        padding-bottom: 1vw;
        border-bottom: 1px solid #ccc;
	}
	.page-csr #main .main-content {
        margin: 0 3vw;
        font-size: 12px;
    }
	.page-csr #main .post-back-num { display:block; margin:20px 10px; padding:10px; border:solid 1px #ccc; }
	.page-csr #main .post-back-num h4 { display:block; margin:0 auto 15px!important; padding:7px!important; background:#f5f5f5; font-size:1.8em!important; font-weight:normal; color:#333; text-align:center; border-top:solid 1px #eee; border-bottom:solid 1px #eee; }

	/*ISO*/
	.page-iso #main .main-header h3 {
		font-size: 15px;
		font-weight: bold;
		text-align: center;
		margin: 5px 0 20px;
		padding-bottom: 1vw;
		border-bottom: 1px solid #ccc;
	}

	.page-iso #main .main-content {
		margin: 0 3vw;
		font-size: 12px;
	}

	.page-iso #main .main-content h3 {
		margin: 15px 0;
		font-size: 13px;
		text-align: center;
	}

	.page-iso #main .main-content h4 {
		margin: 25px 0 8px;
		font-size: 13px;
		font-weight: bold;
	}

	.page-iso #sub #local-menu h3 { display: none; }
	
	.page-iso #main p.copy {
		font-size: 13px !important;
		font-weight: bold;
	}

	/* SDGs */
	#main.sdgs-declaration{}
	#sdgs-headline{margin: 0 3vw; margin-bottom: 50px; text-align: center;} 
	#sdgs-headline p{font-size: 1.6em;}
	#sdgs-headline a,.sdgs-declaration #sdgs-content a{color: #F60;}
	#sdgs-headline img{width: 100%;}
	#sdgs-content {margin: 0 3vw;}

	.sdgs-declaration #sdgs-content p{margin: 10px 0 10px;font-size: 1.4em;}
	.sdgs-declaration #sdgs-content ul{margin: 0 15px;}
	.sdgs-declaration #sdgs-content li{font-size: 1.4em;}
	.sdgs-declaration #sdgs-content h3{background-color:white; border-left:solid 10px #CF462A; font-size: 2em; padding: 7px 12px;margin-bottom: 10px;}
	.sdgs-declaration #sdgs-content h4{background-color:#EBE9DC; padding: 5px; margin:0 0 10px;display: inline-block; font-weight: bold;font-size: 1.4em;}
	
	.activity{margin-bottom:35px}
	.activity-text,.activity-img{}
	.activity-img{}
	.activity-img img{width: 90vw; margin: 10px auto; display: block;}

	/*新卒*/
	.page-newgraduates #main .main-header h3 {
		font-size: 15px;
        font-weight: bold;
        text-align: center;
        margin: 5px 0 20px;
        padding-bottom: 1vw;
        border-bottom: 1px solid #ccc;
	}
	.page-newgraduates #main .main-content h4 { display:block; margin:30px 3vw 15px!important; padding:7px!important; font-size:2em!important; font-weight:normal; color:#333; text-align:left; }
	.page-newgraduates #main .main-content h5 { font-size:1.6em; line-height:1.1; color:#333; display:block; margin:20px 0 10px 0; padding:10px 0 10px 10px; /*border-left:solid 5px #ccc;*/ border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%);  }
	.page-newgraduates #main .main-content dl {
		margin: 10px 0;
		font-size: 12px;
		border-bottom: 1px solid #ccc;
		padding-bottom: 10px;
	}
	.page-newgraduates #main .main-content dl dt {
		font-weight: bold;
	}
	.page-newgraduates #main .in-wrap {
		margin: 0 3vw;
	}
	.page-newgraduates #sub #local-menu h3 { display: none; }


	/*既卒*/
	.page-experienced #main .main-header h3 {
		font-size: 15px;
        font-weight: bold;
        text-align: center;
        margin: 5px 0 20px;
        padding-bottom: 1vw;
        border-bottom: 1px solid #ccc;
	}
	.page-experienced #main .main-content h4 { display:block; margin:30px auto 15px!important; padding:7px!important; font-size:2.3em!important; font-weight:normal; color:#333; text-align:left; }
	.page-experienced #main .main-content h5 { font-size:1.6em; line-height:1.1; color:#333; display:block; margin:20px 0 10px 0; padding:10px 0 10px 10px; /*border-left:solid 5px #ccc;*/ border-bottom:solid 1px #EFEFEF; background:linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%);  }
	.page-experienced #main .main-content dl {
		margin: 10px 0;
		font-size: 12px;
		border-bottom: 1px solid #ccc;
		padding-bottom: 10px;
	}
	.page-experienced #main .main-content dl dt {
		font-weight: bold;
	}
	.page-experienced #main .in-wrap {
		margin: 0 3vw;
	}
	.page-experienced #sub #local-menu h3 { display: none; }


	/* 環境パフォーマンス */
	.page-emissions-co2 #main .main-header h3 {
		font-size: 15px;
        font-weight: bold;
        text-align: center;
        margin: 5px 0 20px;
        padding-bottom: 1vw;
        border-bottom: 1px solid #ccc;
	}
	.page-emissions-co2 #sub {display: none;}
	.page-emissions-co2 #main {}
	.page-emissions-co2 #emissions-contents {
		margin: 0 3vw;
	}
	.page-emissions-co2 #emissions-contents .main-header h3 {}
	.emissions-co2 a{color: #CF462A;}
	.emissions-co2 #emissions-contents h2{
		font-size: 15px;
		text-align: center;
		margin: 15px 0;
	}
	.emissions-co2 #emissions-contents .lead-cont .text{
		font-size: 12px;
		line-height: 2;
	}
	.emissions-co2 #emissions-contents h3{background: white;border-left: solid 10px #CF462A;font-size: 2em;padding: 7px 12px;margin: 0 0 10px 0;border-bottom: none;}
	.emissions-co2 #emissions-contents .imgWrap{
		margin: 20px 0 30px;
	}
	.emissions-co2 #emissions-contents .imgWrap img{width: 100%;}
	.emissions-co2 #emissions-contents .lead-cont .imgWrap {}


	/*お問合せ*/
	.page-inquiry #main .main-header h3 {
		font-size: 15px;
		font-weight: bold;
		text-align: center;
		margin: 5px 0 20px;
		padding-bottom: 1vw;
		border-bottom: 1px solid #ccc;
	}
	.page-inquiry #main .main-content {
		margin: 0 3vw;
		font-size: 12px;
	}
	.page-inquiry #main .in-wrap {
		line-height: 2;
	}

	.page-inquiry #main p {
		margin: 20px 0;
	}
	.page-inquiry #sub #local-menu h3 { display: none; }

	/*プライバシーポリシー*/
	.page-pp #main .main-header h3 {
		font-size: 15px;
		font-weight: bold;
		text-align: center;
		margin: 5px 0 20px;
		padding-bottom: 1vw;
		border-bottom: 1px solid #ccc;
	}
	.page-pp #main .main-content {
		margin: 0 3vw;
		font-size: 12px;
	}
	.page-pp #main .main-content h4 {
		margin: 25px 0 8px;
		font-size: 13px;
		font-weight: bold;
	}
	.page-pp #main .in-wrap {
		line-height: 2;
	}

	.page-pp #main p {
		margin: 5px 0;
	}

	.page-pp ul {
		margin: 0 0 20px 20px;
	}
	.page-pp #sub #local-menu h3 { display: none; }

	/*single*/
	.single .pw-single .main-header h3 { font-size: 15px; font-weight: bold; margin: 3vw 0 3vw; text-align: center; }
	.single .arch-single .main-header h3 { font-size: 15px; font-weight: bold; margin: 3vw 0 3vw; text-align: center; }
	.single .csr-single .main-header h3 { font-size: 15px; font-weight: bold; margin: 3vw 0 3vw; text-align: center; }
 
	.single #main .main-header h4 { font-size:13px; line-height:1.1; color:#333; }
	.single #main .main-header h5 { font-size:13px; line-height:1.1; color:#333; border-bottom: 1px solid #ccc; margin-bottom: 10px; padding-bottom: 10px; text-align: center; }

	.single #main .main-content .photo-area { display:block; margin:0; }
	.single #main .main-content .photo-area a img { width:90%; display:block; margin: 20px auto; }

	.single #main .main-content dl dt { box-sizing:border-box; width:94vw; background:#EBE9DC; padding:10px; margin:0 10px 0 0; }
	.single #main .main-content dl dd { box-sizing:border-box; width:94vw; padding:10px; }

}



/* スマートフォン縦持ち */
@media screen and (max-width: 767px) and (orientation: portrait) {
}




/* スマートフォン横持ち */
@media screen and (min-width: 360px) and (max-width: 767px) and (orientation: landscape) {
	.g-navi-sp {
		margin: 2vw 0;
	}

	.g-navi-sp-item a {
		height: 3vw;
		margin: 2vw 0 1.5vw;
	}

	.news-area-title {
		margin: 3vw 0 2vw;
	}

	.news-area-title a {
		margin-bottom: 2vw;
		padding-bottom: 1vw;
		font-size: 14pt;
	}

	.post-headline {
		margin: 0 0 2vw;
	}

	.inBanner-area {
		display: flex;
		flex-wrap: wrap;
	}

	.inBanner-area-item {
		display: block;
		border: 1px solid #ccc;
		border-radius: 5px;
		box-sizing: border-box;
		margin: 3vw;
	}

	.inBanner-area-item img {
		display: block;
		margin: 0 auto;
		width: 40.5vw;
	}

	#outBanner-area {
		display: none;
	}

	.footer-ci {
		margin: 5vw 0 3vw;
		padding-top: 2vw;
		font-size: 15px;
	}

	.single #main .main-content .photo-area a img { width:75%; display:block; margin: 20px auto; }
}
