@charset "utf-8";
/**************************************************
 * Reset CSS
 *		2017.04.05
 **************************************************/

/****** 共通 ***************************************/
html,body,h1,h2,h3,h4,h5,h6,div,p,blockquote,dl,dt,dd,pre,form,fieldset,figure,input,textarea,th,td,time{ margin:0; padding:0; }

/****** テキスト ************************************/
html{ font-size:62.5%; }
body{ text-align:center; overflow-y:scroll; -webkit-text-size-adjust:100%; }
body,input,textarea{
	font-size:1.6rem;
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	color:#000;
}
h1,h2,h3,h4,h5,h6,div,p,blockquote,dl,dt,dd,pre,form,fieldset,input,textarea,th,td{
	font-weight:normal;
	font-style:normal;
	line-height:100%;
}
h1,h2,h3,h4,h5,h6,caption,th{ letter-spacing:0.16rem; }
div,p,blockquote,li,dt,dd,pre,figcaption,input,textarea,td{ letter-spacing:0.08rem; }
address,caption,cite,code,dfn,th,var{ font-weight:normal; font-style:normal; }
p,li,dt,dd,th,td,address,blockquote,figcaption{ line-height:150%; }
p{ margin-bottom:0.5em; }
p:last-of-type{ margin-bottom:0; }

/****** リンク ************************************/
a{ color:#000; text-decoration:none; outline:none; }
a:hover{ color:#f90; }

/****** list **************************************/
ol,ul{ margin:1rem 2.5rem; }
li{ padding:0; text-align:left; }

/****** 画像・fieldset ******************************/
fieldset, img{ border:0; }
li img, h2 img, iframe{ vertical-align:bottom; }
figcaption{}

/****** table *************************************/
table{ border-collapse:collapse; border-spacing:0; box-sizing:border-box; empty-cells:show; font-size:inherit; width:100%; }
caption{ padding:6px; }
th, td{ text-align:left; padding:6px 10px; vertical-align:top; }
th{ font-weight:bold; }

/****** blockquote ********************************/
blockquote{ margin:2rem; }

/****** input *************************************/
input, button, textarea, select{
	margin:0;
	padding:0;
}
input[type="radio"], input[type="checkbox"]{ margin-right:3px; }
input[type="text"], textarea{ padding:6px 10px; border:1px solid #ccc; }
input[type="text"]:placeholder-shown, textarea:placeholder-shown{ color:#aaa; }
input[type="text"]::-webkit-input-placeholder, textarea::-webkit-input-placeholder{ color:#aaa; }
input[type="text"]:-moz-placeholder, textarea:-moz-placeholder{ color:#aaa; opacity:1; }
input[type="text"]::-moz-placeholder, textarea::-moz-placeholder{ color:#aaa; opacity:1; }
input[type="text"]:-ms-input-placeholder, textarea:-ms-input-placeholder{ color:#aaa; }

/****** float **********************************/
.flLt{ float:left; margin:0 1rem 1rem 0; }
.flRt{ float:right; margin:0 0 1rem 1rem; }

/****** clearfix **********************************/
.clearfix:after{
	content:"";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
}
.clearfix{ min-height:1px; }
* html .clearfix{
	height:1px;
	/*¥*//*/
	height:auto;
	overflow:hidden;
	/**/
}

/****** フォーマット ********************************/

/* letter-spacing */
.ltNor{ letter-spacing:normal; }

/* 上付き・下付き */
.sup{ vertical-align:super; font-size:1rem; }
.sub{ vertical-align:sub; font-size:1rem; }

/* marker */
.markerPinkDf{ background:linear-gradient( transparent 60%, #f9f 60% ); }
.markerPinkFt{ background:linear-gradient( transparent 0%, #f9f 0% ); }

/* width */
.wd02rem{ width: 2rem; }
.wd03rem{ width: 3rem; }
.wd04rem{ width: 4rem; }
.wd05rem{ width: 5rem; }
.wd06rem{ width: 6rem; }
.wd07rem{ width: 7rem; }
.wd08rem{ width: 8rem; }
.wd09rem{ width: 9rem; }
.wd10rem{ width:10rem; }
.wd11rem{ width:11rem; }
.wd12rem{ width:12rem; }
.wd13rem{ width:13rem; }
.wd14rem{ width:14rem; }
.wd15rem{ width:15rem; }
.wd20rem{ width:20rem; }
.wd22rem{ width:22rem; }
.wd25rem{ width:25rem; }

.wd25pr { width: 25%; }
.wd50pr { width: 50%; }
.wd70pr { width: 70%; }
.wd80pr { width: 80%; }
.wd100pr{ width:100%; }
.wd25pr, wd50pr, .wd70pr, .wd80pr, .wd100pr{ height:auto; }

/* font size */
.txt09{ font-size:0.9rem; }
.txt10{ font-size:1.0rem; }
.txt11{ font-size:1.1rem; }
.txt12{ font-size:1.2rem; }
.txt14{ font-size:1.4rem; }
.txt16{ font-size:1.6rem; }
.txt18{ font-size:1.8rem; }
.txt20{ font-size:2.0rem; }
.txt24{ font-size:2.4rem; }
.txt28{ font-size:2.8rem; }

/* text color */
.txtGray { color:#666; }
.txtPink { color:#ec828a; }
.txtRed  { color:#c00; }
.txtGreen{ color:#090; }

/* margin top */
.mrTop06{ margin-top: 6px; }
.mrTop10{ margin-top:10px; }
.mrTop16{ margin-top:16px; }
.mrTop26{ margin-top:26px; }
.mrTop30{ margin-top:30px; }
.mrTop42{ margin-top:42px; }
.mrTop68{ margin-top:68px; }

/* margin left */
.mrLft06{ margin-left: 6px; }
.mrLft10{ margin-left:10px; }
.mrLft16{ margin-left:16px; }
.mrLft26{ margin-left:26px; }
.mrLft42{ margin-left:42px; }
.mrLft68{ margin-left:68px; }

/* margin right */
.mrRit06{ margin-right: 6px; }
.mrRit10{ margin-right:10px; }
.mrRit16{ margin-right:16px; }
.mrRit26{ margin-right:26px; }
.mrRit42{ margin-right:42px; }
.mrRit68{ margin-right:68px; }

/* margin bottom */
.mrBtm06{ margin-bottom: 6px; }
.mrBtm10{ margin-bottom:10px; }
.mrBtm16{ margin-bottom:16px; }
.mrBtm26{ margin-bottom:26px; }
.mrBtm30{ margin-bottom:30px; }
.mrBtm42{ margin-bottom:42px; }
.mrBtm68{ margin-bottom:68px; }

/* padding top */
.pdTop06{ padding-top: 6px; }
.pdTop10{ padding-top:10px; }
.pdTop16{ padding-top:16px; }
.pdTop26{ padding-top:26px; }
.pdTop42{ padding-top:42px; }
.pdTop68{ padding-top:68px; }

/* padding left */
.pdLft06{ padding-left: 6px; }
.pdLft10{ padding-left:10px; }
.pdLft16{ padding-left:16px; }
.pdLft26{ padding-left:26px; }
.pdLft42{ padding-left:42px; }
.pdLft68{ padding-left:68px; }

/* padding right */
.pdRit06{ padding-right: 6px; }
.pdRit10{ padding-right:10px; }
.pdRit16{ padding-right:16px; }
.pdRit26{ padding-right:26px; }
.pdRit42{ padding-right:42px; }
.pdRit68{ padding-right:68px; }

/* padding bottom */
.pdBtm06{ padding-bottom: 6px; }
.pdBtm10{ padding-bottom:10px; }
.pdBtm16{ padding-bottom:16px; }
.pdBtm26{ padding-bottom:26px; }
.pdBtm42{ padding-bottom:42px; }
.pdBtm68{ padding-bottom:68px; }

/* format */
.txtAlgLt{ text-align:left; }
.txtAlgRt{ text-align:right; }
.txtAlgCr{ text-align:center; }
.txtBold { font-weight:bold; }
.txtNorm { font-weight:normal; }
.txt2moji{ letter-spacing:1em; }
.kome{ text-indent:-1em; padding-left:1em; }
.nobr{ white-space:nowrap; }



/**************************************************
 * CSS
 *		2017.04.01
 **************************************************/

/*** 共通 ******************************************/
body{ border-top:12px solid #52ae32; box-sizing:border-box; }
.telNumber a{ color:#008543; font-family:'Poppins', sans-serif; }
.telNumber a:before{ content:'\f095'; font-family:'FontAwesome'; margin-right:3px; }
.htp{ display:none; }
.brSp{display:none;}

/*** header ***************************************/
#headerRt ul{ list-style-type:none; margin:0; padding:0; }
#headerRt ul li:nth-child(2):before{ content:'\f003'; font-family:'FontAwesome'; margin-right:3px; }

/*** navi *****************************************/
header nav ul{ list-style-type:none; margin:0; padding:0; }

/*** contact **************************************/
section.contactSection{ padding:26px 0; }
section.contactSection ul{ list-style-type:none; margin:0; padding:0; }
section.contactSection ul li:last-child a{ font-weight:bold; }

/*** footer ***************************************/
footer{ background:#017f40; color:#fff; }
footer nav{ background:#53af33; }
footer ul{ list-style-type:none; margin:0; padding:0; }
footer nav ul li a{ color:#fff; }
footer nav ul li a:before{ content:'\f138'; font-family:'FontAwesome'; margin-right:3px; }
footer > .fix{ padding:26px 0; }
footer p small{ letter-spacing:normal; }
.infoAddress dt{ font-weight:bold; }
#btnPageTop{ bottom:6px; position:fixed; right:6px; }
#btnPageTop a{
  background:rgba( 0, 0, 0, .7 );
  border-radius:10px;
  box-sizing:border-box;
  color:#fff;
  display:block;
  font-size:1.2rem;
  height:64px;
  letter-spacing:normal;
  line-height:64px;
  width:72px;
}
#btnPageTop a:hover{ background:#52ae32; }
#footerRt li, #footerRt img{/*background-color:#fff;*/}

/*** index ****************************************/
#index01 h2{
  background:transparent url(/img/bk_top_index.jpg) no-repeat center -1px;
  box-sizing:border-box;
  font-weight:bold;
  text-shadow:#fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px, #fff -2px -2px 2px;
}
#index01 ul{ list-style-type:none; margin:0; padding:0; }

/*** 下層ページ共通 *********************************/
#under h2{
  color:#fff;
  font-weight:bold;
  text-shadow:2px 2px 6px rgba( 0, 0, 0, .4 ), -2px 2px 6px rgba( 0, 0, 0, .4 ), 2px -2px 6px rgba( 0, 0, 0, .4 ), -2px -2px 6px rgba( 0, 0, 0, .4 );
  width:100%;
}
#under h3{ background:url(/img/icon_logo.jpg) no-repeat left top; color:#333; font-weight:bold; }
#under th, #under td{ border:1px solid #fff; }
#under th{ background:#c4dca8; font-weight:normal; }
#under td{ background:#ecf5e4; }
#under .basicTable td ul{ list-style-type:none; margin:0; padding:0; }
#under .basicTable td dt{
  clear:left;
  display:block;
  float:left;
  width:11.5em;
}
#under .basicTable td dd{ padding-left:8em; }

/*** 会社概要 ***********************************/
#infoAddress h4, #infoTokyo h4{ font-weight:bold; }
#infoAddress ul, #infoTokyo ul{ list-style-type:none; margin:0; padding:0; }
#sdgsList,#sdgsImageList
{
	list-style-type:none;
	margin:0;
	padding:0;
}
#sdgsList li
{
	padding:0 0 1em 1em;
	text-indent:-1em;
}
#sdgsList li:last-child{padding-bottom:0;}
#sdgsWrap2024 img{height:auto;max-width:983px;}
#sdgsList2024{list-style-type:none;margin:0;padding:0;}
#sdgsList2024 li:nth-child(n+2){margin-top:1em;}
#csrSection .item{margin-top:2em;}
#csrSection .item h4{font-size:1.125em;margin-bottom:.5em;}
#csrSection .item p{margin-left:1em;}
#kkksWrap figure.item, .infoWrap figure.item{text-align:center;}
#kkksWrap figure.item img, .infoWrap figure.item img{height:auto; max-width:241px;}
#yokohamaChiikiKouken figure.item img{max-width:180px !important;}

/*** 採用情報 ***********************************/
#recruitFlow{ list-style-type:none; margin:0; padding:0; }
#recruitFlow li{ background:#ecf5e4; box-sizing:border-box; list-style-position:inside; }

/*** お問い合わせ ***********************************/
#inquiryPhone{ text-align:center; }
#under .errTr td{ background:#fcc; }
.errMsg{ color:#c00; }
#formTable .inpReq, #formTable .inpOpt{ background-repeat:no-repeat; }
#formTable .inpReq{ background-image:url(/img/icon_require.gif); }
#formTable .inpOpt{ background-image:url(/img/icon_option.gif); }
#formTable td input, #formTable td textarea{ width:calc( 100% - 22px ); }
#formTable td textarea{ height:160px; }
#inquirySubmit01, #inquirySubmit02{ list-style-type:none; margin:10px 0 0; padding:0; }

/*** 経営理念 2025.08.26追加 ************************/
/*
#sectionPhilosophy h4,
#sectionPhilosophy p,
#sectionPhilosophy li{text-align:center;}
*/
#sectionPhilosophy ul
{
	list-style:none;
	margin:0;
	padding:0;
	text-indent:0;
}


/**************************************************
 * 解像度の幅が 1200px以上
 **************************************************/
@media screen and (min-width:1200px){

/*** 共通 ******************************************/
  .fix{ margin:0 auto; width:1200px; }
  .pcNone{ display:none; }
  .tbNone{}
  .spNone{}
  thead th{ text-align:center; }

/*** header ***************************************/
  header{ text-align:left; }
  h1{ padding:20px 0 12px; font-size:1.6rem; }
  #headerLt{ float:left; padding-top:4px; width:445px; }
  #headerRt{ float:right; width:360px; }
  #headerRt .telNumber a{ display:block; font-size:4.2rem; height:1.3em; line-height:normal; overflow:hidden; }
  #headerRt ul li:nth-child(n+2){ float:left; height:25px; line-height:25px; margin-right:16px; }
  #headerRt ul li:nth-child(2){ padding-left:40px; }
  #headerRt ul li:last-child{ margin-right:0; }
  #headerRt ul li:last-child a{
    background:url(/img/bk_mail02_off.png) no-repeat center center;
    color:#fff;
    display:block;
    font-size:1.4rem;
    height:25px;
    line-height:25px;
    text-align:center;
    width:118px;
  }
  #headerRt ul li:last-child a:hover{ background:url(/img/bk_mail02_on.png) no-repeat center center; }

/*** navi *****************************************/
  header nav ul{ height:70px; margin-top:16px; overflow:hidden; width:100%; }
  header nav ul li{ float:left; margin-right:1px; width:calc( 20% - 1px ); }
  header nav ul li:last-child{ margin-right:0; width:20%; }
  header nav ul li a{
    background:url(/img/bk_nav.png) repeat-x 0 0;
    display:block;
    height:70px;
    line-height:70px;
    text-align:center;
    width:100%;
  }
  header nav ul li.active a, header nav ul li a:hover{ background:url(/img/bk_nav.png?v=2) repeat-x 0 -70px; color:#000; }
  header nav ul li.active a{ cursor:default; }

/*** contact **************************************/
  section.contactSection{ margin:0 auto; width:60%; }
  section.contactSection p{ font-size:1.4rem; letter-spacing:normal; text-align:center; }
  #under section.contactSection p > span{ display:inline; }
  section.contactSection ul li{ text-align:center; height:41px; line-height:41px; margin-top:16px; }
  section.contactSection ul li:first-child{ float:left; width:55%; }
  section.contactSection ul li:last-child{ float:right; width:45%; }
  section.contactSection ul li:first-child a{ font-size:4.2rem; }
  section.contactSection ul li:last-child a{
    background:url(/img/bk_mail01_off.png) no-repeat center center;
    color:#fff;
    font-size:1.8rem;
    display:block;
    width:297px;
  }
  section.contactSection ul li:last-child a:hover{ background:url(/img/bk_mail01_on.png) no-repeat center center; }
	
/*** footer ***************************************/
  footer nav{ height:72px; }
  footer nav ul{ text-align:center; }
  footer nav ul li{ display:inline; line-height:72px; margin:0 6px; }
  footer > .fix{ text-align:left; }
  footer p small{ font-size:1.4rem; }
  .infoAddress dt{ float:left; width:13em; }
  .infoAddress dd{ padding-left:13em; }
  .infoAddress dd address{ letter-spacing:normal; }
  .infoAddress dd ul{ margin:0; padding:0; }
  .infoAddress dd ul li{ display:inline; letter-spacing:normal; }
	#footerWrap
	{
		display:flex;
		justify-content:space-between;
	}
	#footerLt{width:65%;}
	#footerRt{width:33%;}
	#footerRt ul
	{
		display:flex;
		justify-content:flex-end;
		padding-right:60px;
	}
	#footerRt ul li{padding:0;}
	#footerRt ul li img{height:42px; width:auto;}

/*** index ****************************************/
  #index01{ text-align:center; }
  #index01 h2{ height:360px; margin-bottom:42px; padding-top:160px; width:100%; }
  #index01 h2 span{ padding:6px 0; }
  #index01 h2 span:first-of-type{ display:block; }
  #index01 ul{ margin-top:42px; }
  #index01 li{ float:left; height:210px; margin-right:13px; position:static; text-align:center; width:290px; }
  #index01 li:last-child{ margin-right:0; }
  #index01 img{ border:1px solid #ccc; border-radius:10px; box-sizing:border-box; }
  #index01 li span{ bottom:33px; display:block; position:relative; }

/*** 下層ページ共通 *********************************/
  #under section{ margin:0 auto; padding:42px 0; text-align:left; width:1116px; }
  #under h2{ box-sizing:border-box; height:140px; line-height:140px; padding-left:42px; text-align:left; }
  #under h3{
    font-size:2.4rem;
    height:48px;
    line-height:48px;
    margin-bottom:26px;
    padding:0 0 10px 70px;
    position:relative;
  }
  #under h3:after{
    background:#4faf34;
    bottom:-2px;
    content:'';
    height:2px;
    left:0;
    position:absolute;
    width:100%;
    z-index:2;
  }
  #under section p{ margin-bottom:26px; }
  #under section p:last-of-type{ margin-bottom:0; }
  #under section p > span{ display:block; }
  #under .catchCopy{ font-size:2rem; text-align:center; }
  #under .basicTable th{ width:13em; }

/*** 会社概要 ***********************************/
  #under h2#infoTitle{ background:url(/img/bk_top_gaiyou.jpg) no-repeat center -1px; }
  #infoLogo{ float:right; margin:0 0 10px 10px; }
  #infoSign{ padding-right:210px; text-align:right; }
	#accessWrap
	{
		display:flex;
		flex-direction:row-reverse;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#accessWrap .item{width:50%;}
	#accessWrap .item:nth-of-type(n+3){margin-top:2em;}
	#gglMap,#tokyoMap{height:300px;}
	#gglMap iframe, #tokyoMap iframe{border:0;height:300px;width:100%;}
/*
  #gglMap{ float:left; height:300px; margin-right:20px;  width:50%; }
	#gglMap iframe{border:0;height:300px;width:100%;}
*/
	#infoAddress,#infoTokyo{box-sizing:border-box; padding-left:20px;}
  #infoAddress h4, #infoTokyo h4{ margin-bottom:16px; }
  #infoAddress ul{ margin:0 0 26px; }
	#sdgsWrap
	{
		display:flex;
		justify-content:space-between;
	}
	#sdgsList{width:63%;}
	#sdgsWrap2024
	{
		display:flex;
		flex-direction:row-reverse;
		justify-content:space-between;
	}
	#sdgsWrap2024 #sdgsList2024{width:calc(100% - 261px);}
	#sdgsWrap2024 figure.item{width:241px;}
	#sdgsWrap2024 figure.item img{width:100%;}
	#sdgsImageList{width:36%;}
	#sdgsImageList li:nth-child(n+2){margin-top:.5em;}
	#sdgsImageList li img
	{
		border:1px solid #ccc;
		box-sizing:border-box;
		height:auto;
		padding:1em;
		width:100%;
	}
	#kkksWrap, .infoWrap
	{
		display:flex;
		justify-content:space-between;
	}
	.infoWrap{flex-direction:row-reverse;}
	#kkksWrap div.item, .infoWrap div.item{width:calc(100% - 261px);}
	#kkksWrap figure.item, .infoWrap figure.item{width:241px;}

/*** 事業内容 ***********************************/
  #under h2#businessTitle{ background:url(/img/bk_top_jigyou.jpg) no-repeat center -1px; }
  #bizList{ margin:0 0 0 2em; padding:0; }
  #bizList li{ margin-bottom:6px; }
  #bizList li:last-child{ margin-bottom:0; }
  #expList .expItem{
    float:left;
    margin:0 42px 42px 0;
    width:537px;
  }
  #expList .expItem:nth-of-type(even){ margin-right:0; }
  #expList .expItem ul{ list-style-type:none; margin:0; padding:0; }
  #expList .expItem li{ text-align:center; }

/*** 採用情報 ***********************************/
  #under h2#recruitTitle{ background:url(/img/bk_top_saiyou.jpg) no-repeat center -1px; }
  #recruitFlow li{ float:left; margin:0 5% 0 0; min-height:164px; padding:16px; width:21.25%; }
  #recruitFlow li:last-child{ margin-right:0; }
  #recruitFlow li h4{ font-size:2rem; font-weight:bold; text-align:center; margin-bottom:10px; }

/*** お問い合わせ ***********************************/
  #under h2#inquiryTitle{ background:url(/img/bk_top_toiawase.jpg) no-repeat center -1px; }
  #inquiryPhone{ font-size:4.2rem; }
  #formTable .inpReq, #formTable .inpOpt{ background-position:12em .6em; }
  #inquirySubmit01 li{ margin:0 auto; width:100%; }
  #inquirySubmit02 li{ float:left; margin:0 2% 0 0; width:49%; }
  #inquirySubmit02 li:nth-child(even){ margin-right:0; }
  #inquirySubmit01 li input, #inquirySubmit02 li input{
    border:1px solid #ccc;
    cursor:pointer;
    height:6.8rem;
    line-height:6.8rem;
    width:100%;
  }
  #inquirySubmit01 li input, #inquirySubmit02 li:first-child input{ background:#c00; color:#fff; }
  #inquirySubmit02 li:nth-child(2) input{ background:#ddd; }
  #inquirySubmit01 li input:hover, #inquirySubmit02 li:first-child input:hover{ background:#f00; }
  #inquirySubmit02 li:nth-child(2) input:hover{ background:#e8e8e8; }

/*** 経営理念 2025.08.26追加 ************************/
	#sectionPhilosophy h4
	{
		font-size:2rem;
		margin-top:3em;
	}
	#sectionPhilosophy ul{margin-top:1em;}
	#sectionPhilosophy li
	{
		font-size:2.6rem;
		letter-spacing:.2em;
	}
	#philosophy
	{
		font-size:2.6rem;
		line-height:1.75em;
	}
}


/**************************************************
 * 解像度の幅が 960px以上 1199px以下
 **************************************************/
@media screen and (min-width:960px) and (max-width:1199px){

/*** 共通 ******************************************/
  .fix{ margin:0 auto; width:960px; }
  .pcNone{ display:none; }
  .tbNone{}
  .spNone{}
  thead th{ text-align:center; }

/*** header ***************************************/
  header{ text-align:left; }
  h1{ padding:20px 0 12px; font-size:1.6rem; }
  #headerLt{ float:left; padding-top:4px; width:445px; }
  #headerRt{ float:right; width:360px; }
  #headerRt .telNumber a{ display:block; font-size:4.2rem; height:1.3em; line-height:normal; overflow:hidden; }
  #headerRt ul li:nth-child(n+2){ float:left; height:25px; line-height:25px; margin-right:16px; }
  #headerRt ul li:nth-child(2){ padding-left:40px; }
  #headerRt ul li:last-child{ margin-right:0; }
  #headerRt ul li:last-child a{
    background:url(/img/bk_mail02_off.png) no-repeat center center;
    color:#fff;
    display:block;
    font-size:1.4rem;
    height:25px;
    line-height:25px;
    text-align:center;
    width:118px;
  }
  #headerRt ul li:last-child a:hover{ background:url(/img/bk_mail02_on.png) no-repeat center center; }

/*** navi *****************************************/
  header nav ul{ margin-top:16px; }
  header nav ul li{ float:left; margin-right:1px; width:calc( 20% - 1px ); }
  header nav ul li:last-child{ margin-right:0; width:20%; }
  header nav ul li a{
    background:url(/img/bk_nav.png) repeat-x 0 0;
    display:block;
    height:70px;
    line-height:70px;
    text-align:center;
    width:100%;
  }
  header nav ul li.active a, header nav ul li a:hover{ background:url(/img/bk_nav.png?v=2) repeat-x 0 -70px; color:#000; }
  header nav ul li.active a{ cursor:default; }

/*** contact **************************************/
  section.contactSection{ margin:0 auto; width:80%; }
  section.contactSection p{ font-size:1.8rem; text-align:center; }
  #under section.contactSection p > span{ display:inline; }
  section.contactSection ul{ margin-top:16px; }
  section.contactSection ul li{ text-align:center; height:41px; line-height:41px; }
  section.contactSection ul li:first-child{ float:left; width:55%; }
  section.contactSection ul li:last-child{ float:right; width:45%; }
  section.contactSection ul li:first-child a{ font-size:4.2rem; }
  section.contactSection ul li:last-child a{
    background:url(/img/bk_mail01_off.png) no-repeat center center;
    color:#fff;
    font-size:1.8rem;
    display:block;
    width:297px;
  }
  section.contactSection ul li:last-child a:hover{ background:url(/img/bk_mail01_on.png) no-repeat center center; }

/*** footer ***************************************/
  footer nav{ height:72px; }
  footer nav ul{ text-align:center; }
  footer nav ul li{ display:inline; line-height:72px; margin:0 6px; }
  footer > .fix{ text-align:left; }
  footer p small{ font-size:1.4rem; }
  .infoAddress dt{ float:left; font-size:1.4rem; width:13em; }
  .infoAddress dd{ font-size:1.4rem; padding-left:13em; }
  .infoAddress dd address{ letter-spacing:normal; }
  .infoAddress dd ul{ margin:0; padding:0; }
  .infoAddress dd ul li{ display:inline; letter-spacing:normal; }
	#footerWrap
	{
		display:flex;
		justify-content:space-between;
	}
	#footerLt{width:70%;}
	#footerRt{width:30%;}
	#footerRt ul
	{
		display:flex;
		justify-content:flex-end;
		padding-right:60px;
	}
	#footerRt ul li{padding:0;}
	#footerRt ul li img{height:42px; width:auto;}

/*** index ****************************************/
  #index01{ text-align:center; }
  #index01 h2{ height:360px; margin-bottom:42px; padding-top:160px; width:100%; }
  #index01 h2 span{ padding:6px 0; }
  #index01 h2 span:first-of-type{ display:block; }
  #index01 ul{ margin-top:42px; }
  #index01 li{ float:left; margin-right:10px; position:static; text-align:center; width:calc( ( 100% - 30px ) / 4 ); }
  #index01 li:last-child{ margin-right:0; }
  #index01 img{ border:1px solid #ccc; border-radius:10px; box-sizing:border-box; height:auto; width:100%; }
  #index01 li span{ display:block; position:relative; top:-30px; }

/*** 下層ページ共通 *********************************/
  #under section{ margin:0 auto; padding:42px 0; text-align:left; width:100%; }
  #under h2{ box-sizing:border-box; height:140px; line-height:140px; padding-left:42px; text-align:left; }
  #under h3{
    font-size:2.4rem;
    height:48px;
    line-height:48px;
    margin-bottom:26px;
    padding:0 0 10px 70px;
    position:relative;
  }
  #under h3:after{
    background:#4faf34;
    bottom:-2px;
    content:'';
    height:2px;
    left:0;
    position:absolute;
    width:100%;
    z-index:2;
  }
  #under section p{ margin-bottom:26px; }
  #under section p:last-of-type{ margin-bottom:0; }
  #under section p > span{ display:block; }
  #under .catchCopy{ font-size:2rem; text-align:center; }
  #under .basicTable th{ width:13em; }

/*** 会社概要 ***********************************/
  #under h2#infoTitle{ background:url(/img/bk_top_gaiyou.jpg) no-repeat center -1px; }
  #infoLogo{ float:right; margin:0 0 10px 10px; }
  #infoSign{ padding-right:210px; text-align:right; }
	#accessWrap
	{
		display:flex;
		flex-direction:row-reverse;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#accessWrap .item{width:50%;}
	#accessWrap .item:nth-of-type(n+3){margin-top:2em;}
	#gglMap,#tokyoMap{height:300px;}
	#gglMap iframe, #tokyoMap iframe{border:0;height:300px;width:100%;}
	#infoAddress,#infoTokyo{box-sizing:border-box; padding-left:10px;}
  #infoAddress h4, #infoTokyo h4{ margin-bottom:16px; }
  #infoAddress ul{ margin:0 0 26px; }
/*
  #gglMap{ float:left; height:300px; margin-right:20px;  width:50%; }
	#gglMap iframe{border:0;height:300px;width:100%;}
  #infoAddress h4{ margin-bottom:16px; }
  #infoAddress ul{ margin:0 0 26px; }
*/
	#sdgsWrap
	{
		display:flex;
		justify-content:space-between;
	}
	#sdgsWrap2024
	{
		display:flex;
		flex-direction:row-reverse;
		justify-content:space-between;
	}
	#sdgsWrap2024 #sdgsList2024{width:calc(100% - 261px);}
	#sdgsWrap2024 figure.item{width:241px;}
	#sdgsWrap2024 figure.item img{width:100%;}
	#sdgsList{width:63%;}
	#sdgsImageList{width:36%;}
	#sdgsImageList li:nth-child(n+2){margin-top:.5em;}
	#sdgsImageList li img
	{
		border:1px solid #ccc;
		box-sizing:border-box;
		height:auto;
		padding:1em;
		width:100%;
	}
	#kkksWrap, .infoWrap
	{
		display:flex;
		justify-content:space-between;
	}
	.infoWrap{flex-direction:row-reverse;}
	#kkksWrap div.item, .infoWrap div.item{width:calc(100% - 261px);}
	#kkksWrap figure.item, .infoWrap figure.item{width:241px;}

/*** 事業内容 ***********************************/
  #under h2#businessTitle{ background:url(/img/bk_top_jigyou.jpg) no-repeat center -1px; }
  #bizList{ margin:0 0 0 2em; padding:0; }
  #bizList li{ margin-bottom:6px; }
  #bizList li:last-child{ margin-bottom:0; }
  #expList .expItem{
    float:left;
    margin:0 42px 42px 0;
    width:459px;
  }
  #expList .expItem:nth-of-type(even){ margin-right:0; }
  #expList .expItem ul{ list-style-type:none; margin:0; padding:0; }
  #expList .expItem li{ text-align:center; }

/*** 採用情報 ***********************************/
  #under h2#recruitTitle{ background:url(/img/bk_top_saiyou.jpg) no-repeat center -1px; }
  #recruitFlow li{ float:left; margin:0 5% 0 0; min-height:182px; padding:16px; width:21.25%; }
  #recruitFlow li:last-child{ margin-right:0; }
  #recruitFlow li h4{ font-size:2rem; font-weight:bold; text-align:center; margin-bottom:10px; }

/*** お問い合わせ ***********************************/
  #under h2#inquiryTitle{ background:url(/img/bk_top_toiawase.jpg) no-repeat center -1px; }
  #inquiryPhone{ font-size:4.2rem; }
  #formTable .inpReq, #formTable .inpOpt{ background-position:12em .6em; }
  #inquirySubmit01 li{ margin:0 auto; width:100%; }
  #inquirySubmit02 li{ float:left; margin:0 2% 0 0; width:49%; }
  #inquirySubmit02 li:nth-child(even){ margin-right:0; }
  #inquirySubmit01 li input, #inquirySubmit02 li input{
    border:1px solid #ccc;
    cursor:pointer;
    height:6.8rem;
    line-height:6.8rem;
    width:100%;
  }
  #inquirySubmit01 li input, #inquirySubmit02 li:first-child input{ background:#c00; color:#fff; }
  #inquirySubmit02 li:nth-child(2) input{ background:#ddd; }
  #inquirySubmit01 li input:hover, #inquirySubmit02 li:first-child input:hover{ background:#f00; }
  #inquirySubmit02 li:nth-child(2) input:hover{ background:#e8e8e8; }

/*** 経営理念 2025.08.26追加 ************************/
	#sectionPhilosophy h4
	{
		font-size:2rem;
		margin-top:3em;
	}
	#sectionPhilosophy ul{margin-top:1em;}
	#sectionPhilosophy li
	{
		font-size:2.6rem;
		letter-spacing:.2em;
	}
	#philosophy
	{
		font-size:2.6rem;
		line-height:1.75em;
	}

}


/**************************************************
 * 解像度の幅が 768px以上 959px以下
 **************************************************/
@media screen and (min-width:768px) and (max-width:959px){

/*** 共通 ******************************************/
  .fix{ margin:0 auto; width:748px; }
  .pcNone{}
  .tbNone{ display:none; }
  .spNone{}
  thead th{ text-align:center; }

/*** header ***************************************/
  header{ text-align:left; }
  h1{ padding:20px 0 12px; font-size:1.4rem; }
  #headerLt{ float:left; padding-top:4px; width:370px; }
  #headerLt img{ height:auto; width:100%; }
  #headerRt{ float:right; width:340px; }
  #headerRt .telNumber a{ display:block; font-size:3.8rem; height:1.2em; line-height:normal; overflow:hidden; }
  #headerRt ul li:nth-child(n+2){ float:left; height:25px; line-height:25px; margin-right:16px; }
  #headerRt ul li:nth-child(2){ padding-left:20px; }
  #headerRt ul li:last-child{ margin-right:0; }
  #headerRt ul li:last-child a{
    background:url(/img/bk_mail02_off.png) no-repeat center center;
    color:#fff;
    display:block;
    font-size:1.4rem;
    height:25px;
    line-height:25px;
    text-align:center;
    width:118px;
  }
  #headerRt ul li:last-child a:hover{ background:url(/img/bk_mail02_on.png) no-repeat center center; }

/*** navi *****************************************/
  header nav ul{ margin-top:16px; }
  header nav ul li{ float:left; margin-right:1px; width:calc( 20% - 1px ); }
  header nav ul li:last-child{ margin-right:0; width:20%; }
  header nav ul li a{
    background:url(/img/bk_nav.png) repeat-x 0 0;
    display:block;
    height:70px;
    line-height:70px;
    text-align:center;
    width:100%;
  }
  header nav ul li.active a, header nav ul li a:hover{ background:url(/img/bk_nav.png?v=2) repeat-x 0 -70px; color:#000; }
  header nav ul li.active a{ cursor:default; }

/*** contact **************************************/
  section.contactSection{ margin:0 auto; width:100%; }
  section.contactSection p{ font-size:1.8rem; text-align:center; }
  #under section.contactSection p > span{ display:inline; }
  section.contactSection ul{ margin-top:16px; }
  section.contactSection ul li{ text-align:center; height:41px; line-height:41px; }
  section.contactSection ul li:first-child{ float:left; width:55%; }
  section.contactSection ul li:last-child{ float:right; width:45%; }
  section.contactSection ul li:first-child a{ font-size:4.2rem; }
  section.contactSection ul li:last-child a{
    background:url(/img/bk_mail01_off.png) no-repeat center center;
    color:#fff;
    font-size:1.8rem;
    display:block;
    width:297px;
  }
  section.contactSection ul li:last-child a:hover{ background:url(/img/bk_mail01_on.png) no-repeat center center; }

/*** footer ***************************************/
  footer nav{ height:72px; }
  footer nav ul{ text-align:center; }
  footer nav ul li{ display:inline; line-height:72px; margin:0 6px; }
  footer > .fix{ text-align:left; margin:0 auto; width:748px; }
  footer p small{ font-size:1.4rem; }
  .infoAddress dt{ float:left; font-size:1.4rem; width:13em; }
  .infoAddress dd{ font-size:1.4rem; padding-left:13em; }
  .infoAddress dd address{ letter-spacing:normal; }
  .infoAddress dd ul{ margin:0; padding:0; }
  .infoAddress dd ul li{ display:inline; letter-spacing:normal; }
	#footerLt{}
	#footerRt{margin-top:1em;}
	#footerRt ul
	{
		display:flex;
		justify-content:flex-end;
		padding-right:80px;
	}
	#footerRt ul li{padding:0;}
	#footerRt ul li img{height:42px; width:auto;}

/*** index ****************************************/
  #index01{ text-align:center; }
  #index01 h2{ height:360px; margin-bottom:42px; padding-top:160px; width:100%; }
  #index01 h2 span{ padding:6px 0; }
  #index01 h2 span:first-of-type{ display:block; }
  #index01 ul{ margin-top:42px; }
  #index01 li{ float:left; margin-right:10px; position:static; text-align:center; width:calc( ( 100% - 30px ) / 4 ); }
  #index01 li:last-child{ margin-right:0; }
  #index01 img{ border:1px solid #ccc; border-radius:10px; box-sizing:border-box; height:auto; width:100%; }
  #index01 li span{ display:block; position:relative; top:-26px; }

/*** 下層ページ共通 *********************************/
  #under section{ margin:0 auto; padding:42px 0; text-align:left; width:100%; }
  #under h2{ box-sizing:border-box; height:140px; line-height:140px; padding-left:42px; text-align:left; }
  #under h3{
    font-size:2.4rem;
    height:48px;
    line-height:48px;
    margin-bottom:26px;
    padding:0 0 10px 70px;
    position:relative;
  }
  #under h3:after{
    background:#4faf34;
    bottom:-2px;
    content:'';
    height:2px;
    left:0;
    position:absolute;
    width:100%;
    z-index:2;
  }
  #under section p{ margin-bottom:26px; }
  #under section p:last-of-type{ margin-bottom:0; }
  #under section p > span{ display:block; }
  #under .catchCopy{ font-size:2rem; text-align:center; }
  #under .basicTable th{ width:13em; }

/*** 会社概要 ***********************************/
  #under h2#infoTitle{ background:url(/img/bk_top_gaiyou.jpg) no-repeat center -1px; }
  #infoLogo{ float:right; margin:0 0 10px 10px; }
  #infoSign{ padding-right:210px; text-align:right; }
	#accessWrap
	{
		display:flex;
		flex-direction:row-reverse;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#accessWrap .item:nth-of-type(odd){width:58%;}
	#accessWrap .item:nth-of-type(even){width:40%;}
	#accessWrap .item:nth-of-type(n+3){margin-top:2em;}
	#gglMap,#tokyoMap{height:300px;}
	#gglMap iframe, #tokyoMap iframe{border:0;height:300px;width:100%;}
	#infoAddress,#infoTokyo{box-sizing:border-box;}
  #infoAddress h4, #infoTokyo h4{ margin-bottom:16px; }
  #infoAddress ul{ margin:0 0 26px; }
/*
  #gglMap{ float:left; height:300px; margin-right:20px;  width:40%; }
	#gglMap iframe{border:0;height:300px;width:100%;}
  #infoAddress h4{ margin-bottom:16px; }
  #infoAddress ul{ margin:0 0 26px; }
  #infoAddress ul li{ font-size:1.4rem; }
*/
	#sdgsWrap
	{
		display:flex;
		justify-content:space-between;
	}
	#sdgsWrap2024
	{
		display:flex;
		flex-direction:row-reverse;
		justify-content:space-between;
	}
	#sdgsWrap2024 #sdgsList2024{width:calc(100% - 261px);}
	#sdgsWrap2024 figure.item{width:241px;}
	#sdgsWrap2024 figure.item img{width:100%;}
	#sdgsList{width:63%;}
	#sdgsImageList{width:36%;}
	#sdgsImageList li:nth-child(n+2){margin-top:.5em;}
	#sdgsImageList li img
	{
		border:1px solid #ccc;
		box-sizing:border-box;
		height:auto;
		padding:1em;
		width:100%;
	}
	#kkksWrap, .infoWrap
	{
		display:flex;
		justify-content:space-between;
	}
	.infoWrap{flex-direction:row-reverse;}
	#kkksWrap div.item, .infoWrap div.item{width:calc(100% - 261px);}
	#kkksWrap figure.item, .infoWrap figure.item{width:241px;}

/*** 事業内容 ***********************************/
  #under h2#businessTitle{ background:url(/img/bk_top_jigyou.jpg) no-repeat right -1px; }
  #bizList{ margin:0 0 0 2em; padding:0; }
  #bizList li{ margin-bottom:6px; }
  #bizList li:last-child{ margin-bottom:0; }
  #expList .expItem{
    float:left;
    margin:0 20px 42px 0;
    width:364px;
  }
  #expList .expItem:nth-of-type(even){ margin-right:0; }
  #expList .expItem ul{ list-style-type:none; margin:0; padding:0; }
  #expList .expItem li{ text-align:center; }

/*** 採用情報 ***********************************/
  #under h2#recruitTitle{ background:url(/img/bk_top_saiyou.jpg) no-repeat center -1px; }
  #recruitFlow li{ float:left; margin:0 3% 0 0; min-height:162px; padding:16px; width:22.75%; }
  #recruitFlow li:last-child{ margin-right:0; }
  #recruitFlow li h4{ font-size:1.6rem; font-weight:bold; text-align:center; margin-bottom:10px; }
  #recruitFlow li p{ font-size:1.4rem; }

/*** お問い合わせ ***********************************/
  #under h2#inquiryTitle{ background:url(/img/bk_top_toiawase.jpg) no-repeat center -1px; }
  #inquiryPhone{ font-size:4.2rem; }
  #formTable .inpReq, #formTable .inpOpt{ background-position:12em .6em; }
  #inquirySubmit01 li{ margin:0 auto; width:100%; }
  #inquirySubmit02 li{ float:left; margin:0 2% 0 0; width:49%; }
  #inquirySubmit02 li:nth-child(even){ margin-right:0; }
  #inquirySubmit01 li input, #inquirySubmit02 li input{
    border:1px solid #ccc;
    cursor:pointer;
    height:6.8rem;
    line-height:6.8rem;
    width:100%;
  }
  #inquirySubmit01 li input, #inquirySubmit02 li:first-child input{ background:#c00; color:#fff; }
  #inquirySubmit02 li:nth-child(2) input{ background:#ddd; }
  #inquirySubmit01 li input:hover, #inquirySubmit02 li:first-child input:hover{ background:#f00; }
  #inquirySubmit02 li:nth-child(2) input:hover{ background:#e8e8e8; }

/*** 経営理念 2025.08.26追加 ************************/
	#sectionPhilosophy h4
	{
		font-size:2rem;
		margin-top:3em;
	}
	#sectionPhilosophy ul{margin-top:1em;}
	#sectionPhilosophy li
	{
		font-size:2.6rem;
		letter-spacing:.2em;
	}
	#philosophy
	{
		font-size:2.6rem;
		line-height:1.75em;
	}

}


/**************************************************
 * 解像度の幅が767px以下
 **************************************************/
@media screen and (max-width:767px){

/*** 共通 ******************************************/
  .fix{ margin:0 auto; width:98%; }
  .pcNone{}
  .tbNone{}
  .spNone{ display:none; }
	.spBlock{display:block;line-height:1.5em;}
	.brSp{display:block;}

/*** header ***************************************/
  header{ text-align:left; }
  h1{ font-size:1.0rem; letter-spacing:normal; padding:10px 0 0; text-align:center; }
	h1 span{ display:block; line-height:1.5em; }
  #headerLt{ margin:16px 0; text-align:center; }
  #headerLt img{ height:auto; max-width:445px; width:80%; }
  #headerRt{ margin:0 0 16px; text-align:center; }
  #headerRt .telNumber a{ display:block; font-size:3rem; height:1.2em; line-height:normal; overflow:hidden; }
  #headerRt ul li{ text-align:center; }
  #headerRt ul li:nth-child(2){ display:none; }
  #headerRt ul li:last-child{ margin:10px auto 16px; width:297px; }
  #headerRt ul li:last-child a{
    background:url(/img/bk_mail01_off.png) no-repeat center center;
    color:#fff;
    display:block;
    font-size:1.8rem;
    font-weight:bold;
    height:41px;
    line-height:41px;
    text-align:center;
    width:297px;
  }

/*** navi *****************************************/
  header nav ul{}
  header nav ul li{ float:left; margin-right:1px; width:calc( 25% - 1px ); }
  header nav ul li:nth-child(4){ margin-right:0; width:25%; }
  header nav ul li:last-child{ display:none; }
  header nav ul li a{
    background:url(/img/bk_nav.png) repeat-x 0 0;
    display:block;
    font-size:1.4rem;
    height:70px;
    line-height:70px;
    text-align:center;
    width:100%;
  }
  header nav ul li.active a{ background:url(/img/bk_nav.png?v=2) repeat-x 0 -70px; color:#000; }

/*** contact **************************************/
  section.contactSection{ margin:0 auto; width:100%; }
  section.contactSection p{ font-size:1.2rem; text-align:center; }
  section.contactSection p span{ display:block; }
  section.contactSection ul{ margin-top:16px; }
  section.contactSection ul li{ text-align:center; height:41px; line-height:41px; }
  section.contactSection ul li:first-child{}
  section.contactSection ul li:last-child{ margin:10px auto 0; width:297px; }
  section.contactSection ul li:first-child a{ font-size:3rem; }
  section.contactSection ul li:last-child a{
    background:url(/img/bk_mail01_off.png) no-repeat center center;
    color:#fff;
    font-size:1.8rem;
    display:block;
    width:297px;
  }

/*** footer ***************************************/
  footer nav{ height:72px; }
  footer nav ul{ text-align:center; }
  footer nav ul li{ display:inline; font-size:1.2rem; line-height:72px; margin:0 3px; }
  footer nav ul li:last-child{ display:none; }
  footer > .fix{ text-align:left; margin:0 auto; width:94%; }
  .infoAddress dt{ font-size:1.4rem; }
  footer p small, .infoAddress dd{ font-size:1.2rem; }
  .infoAddress dd address{ letter-spacing:normal; }
  .infoAddress dd address .postCode{ display:block; }
  .infoAddress dd ul{ margin:0; padding:0; }
  .infoAddress dd ul li{ display:inline-block; letter-spacing:normal; margin-right:1em; }
  .infoAddress dd ul li:last-child{ margin-right:0; }
	#footerLt{}
	#footerRt{margin-top:1em;}
	#footerRt ul
	{
		display:flex;
		justify-content:flex-end;
		padding-right:80px;
	}
	#footerRt ul li{padding:0;}
	#footerRt ul li img{height:42px; width:auto;}

/*** index ****************************************/
  #index01{ text-align:center; }
  #index01 h2{ font-size:2rem; height:360px; line-height:150%; margin-bottom:42px; padding-top:120px; width:100%; }
  #index01 p{ font-size:1.4rem; }
  #index01 h2 span, #index01 p span{ display:block; padding:0; }
  #index01 ul{ margin-top:42px; }
  #index01 li{ float:left; margin-right:10px; position:static; text-align:center; width:calc( ( 100% - 10px ) / 2 ); }
  #index01 li:nth-child(even){ margin-right:0; }
  #index01 img{ border:1px solid #ccc; border-radius:10px; box-sizing:border-box; height:auto; width:100%; }
  #index01 li span{ display:block; position:relative; top:-24px; }

/*** 下層ページ共通 *********************************/
  #under section{ margin:0 auto; padding:42px 0; text-align:left; width:100%; }
  #under h2{ box-sizing:border-box; height:140px; line-height:140px; padding-left:42px; text-align:left; }
  #under h3{
    font-size:2.4rem;
    height:48px;
    line-height:48px;
    margin-bottom:26px;
    padding:0 0 10px 70px;
    position:relative;
  }
  #under h3:after{
    background:#4faf34;
    bottom:-2px;
    content:'';
    height:2px;
    left:0;
    position:absolute;
    width:100%;
    z-index:2;
  }
  #under h3.lines
	{
		height:auto;
		line-height:1.25em;
	}
  #under section p{ margin-bottom:26px; }
  #under section p:last-of-type{ margin-bottom:0; }
  #under section p > span{ display:block; }
  #under .catchCopy{ text-align:center; }
  #under .basicTable th, #under .basicTable td{ display:block; font-size:1.4rem; width:auto; }

/*** 会社概要 ***********************************/
  #under h2#infoTitle{ background:url(/img/bk_top_gaiyou.jpg) no-repeat center -1px; }
  #under #infoSection01 p span, #under #infoSection02 p span{ display:inline; }
  #infoLogo{ float:right; height:auto; margin:0 0 10px 10px; width:100px; }
  #infoSign{ text-align:right; }
	#accessWrap .item{margin-top:2em;}
	#accessWrap .item:first-of-type{margin-top:0;}
	#gglMap,#tokyoMap{height:300px;}
	#gglMap iframe, #tokyoMap iframe{border:0;height:300px;width:100%;}
	#infoAddress,#infoTokyo{box-sizing:border-box;}
  #infoAddress h4, #infoTokyo h4{ margin-bottom:16px; }
  #infoAddress ul{ margin:0 0 26px; }
/*
  #gglMap{ height:300px; width:100%; }
	#gglMap iframe{border:0;height:300px;width:100%;}
  #infoAddress h4{ margin:16px 0; }
  #infoAddress ul{ margin:0 0 26px; }
  #infoAddress ul:last-of-type{ margin:0; }
  #infoAddress ul li{ font-size:1.4rem; }
*/
	#sdgsWrap{}
	#sdgsWrap2024{}
	#sdgsWrap2024 figure.item{margin-top:1em;text-align:center;}
	#sdgsWrap2024 figure.item img{width:241px;}
	#sdgsList{}
	#sdgsImageList{margin-top:1em;}
	#sdgsImageList li{text-align:center;}
	#sdgsImageList li:nth-child(n+2){margin-top:1em;}
	#sdgsImageList li img
	{
		border:1px solid #ccc;
		box-sizing:border-box;
		height:auto;
		padding:.5em;
		width:80%;
	}
	#kkksWrap figure.item, .infoWrap figure.item{margin-top:1em;text-align:center;}

/*** 事業内容 ***********************************/
  #under h2#businessTitle{ background:url(/img/bk_top_jigyou.jpg) no-repeat right -1px; }
  #bizList{ margin:0 0 0 2em; padding:0; }
  #bizList li{ font-size:1.3rem; margin-bottom:6px; }
  #bizList li:last-child{ margin-bottom:0; }
  #expList .expItem{
    margin:0 auto 26px 0;
    width:100%;
  }
  #expList .expItem:nth-of-type(even){ margin-right:0; }
  #expList .expItem ul{ list-style-type:none; margin:0; padding:0; }
  #expList .expItem li{ text-align:center; }
  #bizTable thead{ display:none; }
  #bizTable td{ display:block; width:auto; }
  #bizTable tr td:first-of-type{ background:#c4dca8; font-weight:bold; }
  #bizTable td:nth-of-type(n+2){ padding-left:5.2em; text-indent:-4.9em; }
  #bizTable td:nth-of-type(2):before{ color:#787878; content:'工事場所：'; }
  #bizTable td:nth-of-type(3):before{ color:#787878; content:'工事種別：'; }
  #bizTable td:nth-of-type(4):before{ color:#787878; content:'物件概要：'; }

/*** 採用情報 ***********************************/
  #under h2#recruitTitle{ background:url(/img/bk_top_saiyou.jpg) no-repeat center -1px; }
  #recruitFlow li{ margin:0 0 6px; padding:16px; }
  #recruitFlow li:last-child{ margin:0; }
  #recruitFlow li h4{ font-size:1.6rem; font-weight:bold; margin-bottom:10px; }
  #recruitFlow li p{ font-size:1.2rem; }

/*** お問い合わせ ***********************************/
  #under h2#inquiryTitle{ background:url(/img/bk_top_toiawase.jpg) no-repeat left -1px; }
  #inquiryPhone{ font-size:2.6rem; }
  #formTable .inpReq, #formTable .inpOpt{ background-position:14em .6em; }
  #inquirySubmit01 li{ margin:0 auto; width:100%; }
  #inquirySubmit02 li{ float:left; margin:0 2% 0 0; width:49%; }
  #inquirySubmit02 li:nth-child(even){ margin-right:0; }
  #inquirySubmit01 li input, #inquirySubmit02 li input{
    border:1px solid #ccc;
    cursor:pointer;
    height:6.8rem;
    line-height:6.8rem;
    width:100%;
  }
  #inquirySubmit01 li input, #inquirySubmit02 li:first-child input{ background:#c00; color:#fff; }
  #inquirySubmit02 li:nth-child(2) input{ background:#ddd; }
  #inquirySubmit01 li input:hover, #inquirySubmit02 li:first-child input:hover{ background:#f00; }
  #inquirySubmit02 li:nth-child(2) input:hover{ background:#e8e8e8; }

/*** 経営理念 2025.08.26追加 ************************/
	#sectionPhilosophy h4
	{
		font-size:2rem;
		margin-top:3em;
	}
	#sectionPhilosophy ul{margin-top:1em;}
	#sectionPhilosophy li
	{
		font-size:2.6rem;
		letter-spacing:.2em;
	}
	#philosophy
	{
		font-size:2rem;
		line-height:1.75em;
	}

}