@charset "utf-8";
/* INITIALIZE
2013.11.10 Reset CSS including HTML5 tags (with box-sizing to border-box)
Masayuki Fukumoto (OSSI Inc.)
==================================================== */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form, label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main,summary,time,mark,audio,video,a{margin:0;padding:0; border:0; background:transparent; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main{display:block;}
nav ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:''; content:none;}
pre,code,kbd,samp{font-family:monospace,monospace; font-size:inherit;}
table{border-collapse:collapse; border-spacing:0;}
img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal; font-weight:normal;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%; font-weight:normal;}
sup,sub{font-size:75%; position:relative; line-height:1; vertical-align:baseline;}
sup{bottom:.75ex;}
sub{bottom:.0ex;}
input,textarea,select{vertical-align:middle; font-family:inherit; font-size:inherit; font-weight:inherit;}
a{outline:none;}
audio:not([controls]){display:none;}
time{display:inline;}
[hidden]{display:none;}
input::-ms-clear,input::-ms-reveal,input:focus::-ms-clear,input:focus::-ms-reveal{visibility:hidden; display:none;}
button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner{padding:0; border:0;}
input,textarea,select{-moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
i,em{font-style:normal;}
/* BASE CONFIGURATIONS
==================================================== */
html,body{height:100%;}
/*a{-webkit-transition:all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition:all 0.3s ease; -ms-transition:all 0.3s ease; transition:all 0.3s ease;}*/
a:link{color:#03f; text-decoration:underline;}
a:visited{color:#90f; text-decoration:underline;}
a:hover{color:#e60012; text-decoration:none;}
a:active{color:#c00;}
a img,button,input[type=button],input[type=submit],input[type=reset],a div{-webkit-transition:all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition:all 0.3s ease; -ms-transition:all 0.3s ease; transition:all 0.3s ease;}
a img:hover,a:hover img,button:hover,input[type=button]:hover,input[type=submit]:hover,input[type=reset]:hover,a div:hover{opacity:0.7;}
/* force alignment */
.aCt{text-align:center;}
.aRt{text-align:right;}
/* colors */
@main-color{color:#000;}
@sub-color{color:#8b8b8b;}
@active-color{color:#bfbfbf;}
@border-color{border-color:#ddd;}
@bg-color{background:#f2f2f2;}
/* link anchor */
a.blankAfter::after{content:'\e904'; font-family:rybicons; font-size:80%; color:#000; display:inline-block; margin-left:.5em; font-weight:normal;}

/* clear element 
==================================================== */
.clr{clear:both;}
.clrFx{clear:both;}
.clrFx:after{content:''; clear:both; display:block;}
main,article,section,footer{clear:both;}
main:after,article:after,section:after,footer:after{content:''; clear:both; display:block;}

/* font global 
==================================================== */
@font-face {
  font-family: 'rybicons';
  src:
    url('/common/fonts/rybicons.ttf?8jre56') format('truetype'),
    url('/commonfonts/rybicons.woff?8jre56') format('woff'),
    url('/commonfonts/rybicons.svg?8jre56#rybicons') format('svg');
  font-weight: normal;
  font-style: normal;
}
body,
input,
textarea,
select,
button{font-size:16px; font-family:'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Helvetica,Arial,sans-serif; color:#000; line-height:1.75; font-weight:normal; -webkit-font-smoothing: antialiased; font-smoothing: antialiased;}
.icon{font-family:rybicons;}

#sensor{width:5px; height:5px; position:absolute; left:-50px; bottom:-50px; visibility:hidden;}


/*
content wrapper
==================================================== */
#wrapper,
#container,
#siteHeader,
#siteFooter,
#pageBody,
article,
section{width:100%; clear:both;}


#wrapper:after,
#container:after,
#siteHeader:after,
#siteFooter:after,
#pageBody:after,
article:after,
section:after{content:''; clear:both; display:block;}
section > .inner,
#siteHeader .inner,
#siteFooter .inner{width:1160px; margin:0 auto;}
#wrapper{margin-top:0 /*100px removed 202202*/; overflow:hidden;}

#container{position:relative; z-index:1;}

/* form objects
==================================================== */
button{border:1px #ddd solid; background:#f2f2f2; border-radius:5px; cursor:pointer;}
input[type=text],
input[type=url],
input[type=tel],
input[type=number],
input[type=date],
select,
textarea{border:1px #ddd solid; padding:1px 3px;}

/* site header
==================================================== */
#siteHeader{height:100px; border-bottom:1px #ddd solid; background:#fff; width:100%; z-index:100; position:relative; /*position:fixed; left:0; top:0; removed 202202*/}
#siteHeader .inner{position:relative; height:99px;}
#siteID{width:300px; height:30px; position:absolute; left:0; top:34px;}
#siteHeader .toggle{display:none;}
#siteHeader .search{width:100%; height:auto; /*padding:15px 0;*/ text-align:center; position:fixed; left:0; /*top:100px;*/ border-bottom:1px #ddd solid; background:#fff; display:none; top:0; padding:24px 0;}
#siteHeader .search form{text-align:center; margin:0 auto; width:1160px; position:relative;}
#siteHeader .search input{width:600px; height:50px; padding:10px; border:1px #ddd solid; border-radius:5px;}
#siteHeader .search button{width:70px; height:50px; background:#666; color:#fff; border:0 none;}
#siteHeader .search .searchClose{width:14px; height:14px; text-indent:120px; overflow:hidden; white-space:nowrap; display:block; position:absolute; right:0; top:50%; margin-top:-7px;}
#siteHeader .search .searchClose:after{content:'\e903'; font-family:rybicons; text-indent:0; text-align:center; color:#666; width:14px; height:14px; display:block; line-height:1; position:absolute; left:0; top:0;}
body.searchResult #siteHeader .search .searchClose:after{content:''; text-indent:-9999; background:url("/common/images/closeIcon.png") no-repeat center; background-size:cover;}


.drawer{}
#global{position:absolute; left:140px; top:43px; width:100%;}
#global .toggleClose{display:none;}
#global > ul{min-width:600px; line-height:1.1; z-index:50;}
.isIE #global > ul{min-width:600px; line-height:1.4;}

#global > ul > li{display:block; float:left; margin-right:15px; font-size:14px; font-weight:bold; position:relative; height:57px; white-space:nowrap; text-align:center;}
#global > ul > li.news,
#global > ul > li.corp,
#global > ul > li.prj,
#global > ul > li.rec{width:66px;}
#global > ul > li.csr{width:40px;}
#global > ul > li.ir{width:85px;}
#global > ul > li.info{width:95px;}


#global > ul li a{color:#000; text-decoration:none; display:block; position:relative; font-size:14px;}
#global > ul li a:hover,
#global > ul li a.active{color:#bfbfbf; text-decoration:underline; height:52px;}
#global > ul li a.on{color:#bfbfbf; height:52px;}
/*#global > ul li a.active:after{content:'▲'; display:block; width:12px; height:12px; position:absolute; left:50%; bottom:0px; margin-left:-9px; font-size:16px; text-align:center; color:#ddd;}
.isIE #global > ul li a.active:after{bottom:-16px;}*/
#siteHeader dl{position:absolute; right:45px; top:40px; line-height:1;}
.isIE #siteHeader dl{line-height:1.4;}
#siteHeader dl dt{display:inline-block; margin-right:20px; font-size:12px;}
#siteHeader dl dd{display:inline-block; font-size:12px;}
#siteHeader dl dd a{color:#000; text-decoration:none; display:inline-block; margin-right:20px;}
#siteHeader dl dd a:hover,
#siteHeader dl dd a.active{color:#bfbfbf; text-decoration:underline;}
#siteHeader .toggleSearch{width:40px; height:40px; position:absolute; right:0; top:30px; display:block; overflow:hidden; text-indent:50px; text-decoration:none;}
#siteHeader .toggleSearch:after{content:'\e902'; font-family:rybicons; text-indent:0; text-align:center; color:#666; width:40px; height:40px; display:block; line-height:1; position:absolute; left:0; top:0; font-size:40px;}
body.searchResult #siteHeader .toggleSearch:after{content:''; background:url("/common/images/searchIcon.png") no-repeat center; background-size:cover; text-indent:-9999px;}


#global > ul li > div{display:none; position:fixed; left:0; top:100px; background:#ddd; width:100%; font-weight:normal; z-index:100;}

#global > ul li > div.drop:before{content:''; display:block; width:16px; height:16px; background:#ddd; position:absolute; left:50%; top:-8px; transform:rotate(45deg);}
#global > ul li > div.drop.corp:before{margin-left:-336px;}
#global > ul li > div.drop.prj:before{margin-left:-253px;}
#global > ul li > div.drop.csr:before{margin-left:-184px;}
#global > ul li > div.drop.ir:before{margin-left:-110px;}

#global > ul li > div .dropBg{position:absolute; top:-41px; left:0px; background:url(/common/images/spacer.gif) left center repeat; width:100%; height:40px; display:block; z-index:100; } 


#global > ul li > div .inner{padding:30px 0 40px; min-height:400px; white-space:normal; text-align:left;}
#global > ul li > div .inner .header{margin-bottom:40px; clear:both;}
#global > ul li > div .inner .header:after{content:''; display:block; clear:both;}
#global > ul li > div .inner .header div{font-size:36px; float:left; width:300px; line-height:1.4;}
#global > ul li > div .inner .header p{line-height:1.75;}
#global > ul li > div .inner .topLink{float:left;}
#global > ul li > div .inner .topLink a{display:inline;}
#global > ul li > div .inner .topLink:before{content:'\e901'; font-family:rybicons; font-size:12px; margin-right:5px; display:inline-block;}
body.searchResult #global > ul li > div .inner .topLink:before{content:'+'; font-size:16px;}
#global > ul li > div .inner .colParent{padding-left:300px;}
#global > ul li > div .inner .colParent:after{content:''; display:block; clear:both;}
#global > ul li > div .inner .colParent ul{float:left;}
#global > ul li > div .inner .colParent ul:nth-child(1){width:40%; float:left;}
#global > ul li > div .inner .colParent ul:nth-child(2){width:28%; float:left;}
#global > ul li > div .inner .colParent ul:nth-child(3){width:28%; float:left;}
#global > ul li > div .inner .colParent ul li{margin-bottom:1em; text-align:left; float:none; height:auto;}
#global > ul li > div .inner .colParent ul li a{display:inline;}
#global > ul li > div .inner .colParent ul li figure{width:100%; padding-right:60px; margin:8px 0 0; display:block;}
#global > ul li > div .inner .colParent ul li figure img{width:100%; height:auto; display:block;}
#global > ul li > div .inner .colParent ul li figcaption{padding:5px; font-size:12px; line-height:1.4;}
#global > ul li > div .inner .colParent:after{content:''; display:block; clear:both;}
#global > ul li > div.drop.prj .inner .topLink{float:none;}
/*#global > ul li > div.drop.prj .inner .colParent{padding-left:0px;}*/
#global > ul li > div.drop.prj .inner .colParent ul{width:30%; margin-right:18px; }
#global > ul li > div.drop.prj .inner .colParent ul:last-child{margin-right:0px;}
#global > ul li > div.drop.prj .inner .colParent ul li{text-align:center;}
#global > ul li > div.drop.prj .inner .colParent ul li figure{padding-right:0px; margin-bottom:10px;}

#global > ul li > div .inner .colParent ul.irImgMenu{width:28% !important;}
#global > ul li > div .inner .colParent ul.irImgMenu li figure{padding-right:30px;}
/* site footer
==================================================== */
nav#subLink{max-width:1200px; margin:0 auto 60px;}
nav#subLink ul{clear:both;}
nav#subLink ul:after{content:''; display:block; clear:both;}
nav#subLink li{width:33.33%; float:left; text-align:center;}
nav#subLink li img{display:block; margin-bottom:10px; width:100%; height:auto;}
nav#subLink li a{color:#000; text-decoration:none;}
nav#subLink li a:hover{text-decoration:underline;}
nav#subLink li a img{transition:none;}

#siteFooter{background:#333; color:#fff;}
#siteFooter nav{background:#fff; border-top:1px #ddd solid; padding:15px; text-align:center;}
#siteFooter nav ul{margin:0;}
#siteFooter nav ul li{display:inline; padding:0 15px; margin:0; font-size:16px;}
#siteFooter nav ul li a{color:#000; text-decoration:none;}
#siteFooter nav ul li a:hover{text-decoration:underline;}

#siteFooter .inner{width:1200px; margin:0 auto; clear:both; padding:30px 0;}
#siteFooter .inner:after{clear:both; content:''; display:block;}
#siteFooter a{color:#fff; text-decoration:none;}
#siteFooter a:hover{text-decoration:underline;}
#siteFooter p.groupID{font-size:16px; margin-bottom:15px;}
#siteFooter .col{float:left; width:16.6%; padding:0 30px 30px;}
#siteFooter p{font-size:13px; margin-bottom:7px; line-height:1.4;}
#siteFooter p+p{margin-top:15px;}
#siteFooter ul{margin-bottom:15px;}
#siteFooter li{font-size:11px; list-style:none; line-height:1.3; margin-bottom:7px;}
.copyright{text-align:center; padding:20px; line-height:1.3; clear:both; background:#fff; color:#000; font-size:14px; margin:0;}
.copyright small{font-size:10px;}
a.pgTop{background:rgba(0,0,0,.7); width:50px; height:50px; border-radius:25px; position:fixed; right:40px; bottom:40px; display:block; text-indent:-9999px; overflow:hidden; display:none; border:1px #fff solid; z-index:1;}
a.pgTop:before{content:'\f106'; color:#fff; width:50px; height:50px; border-radius:25px; position:absolute; right:0; bottom:0; display:block; text-indent:0; text-align:center; line-height:40px; font-family:rybicons; font-size:36px;}

body.searchResult a.pgTop:before{content:''; text-indent:-9999px; background:url("/common/images/upIcon.png") no-repeat center; background-size:cover;}

/* local nav
==================================================== */
nav#local{border-bottom:1px #ddd solid; padding:10px; min-height:40px;}
nav#local header{display:none;}
nav#local ul{max-width:1161px; margin:0 auto;}
nav#local ul li{display:inline-block; font-size:13px; margin-right:10px;}
nav#local ul li a{color:#000; text-decoration:none;}
nav#local ul li a:hover{color:#000; text-decoration:underline;}
nav#local ul li a.active{color:#999;}
/* redesign 202202 */
nav#local{width:100%; background:rgba(255,255,255,.95); z-index:10; padding:10px;}
nav#local.fixed{position:fixed; left:0; top:0;}
nav#local ul{clear:both;}
nav#local ul::after{content:''; display:block; clear:both;}
nav#local ul li{display:block; float:left; margin:3px 24px 3px 0; line-height:1.5;}
nav#local ul li:first-child{font-size:20px; line-height:1.2; margin:0px 60px 3px 0; font-weight:bold;}
nav#local ul li a{display:inline-block; border-bottom:1px #fff solid;}
nav#local ul li a:hover,
nav#local ul li a.active{color:#000; border-bottom:1px #E70012 solid; text-decoration:none;}
nav#local ul li:first-child a.active{color:#000; border:0 none;}
nav#local ul li a.active.all{border-bottom:0; padding-bottom:0;}
body[data-active-nav=news] nav#local ul li a.active.all{border-bottom:1px #E70012 solid; padding-bottom:0;}

/* page body
==================================================== */
#pageBody > header{/*border-bottom:1px #ddd solid;*/ position:relative;}
#pageBody > header h1{font-size:36px; padding:40px 0; max-width:1160px; margin:0 auto;}
article.regular{padding:40px 0; margin:0 auto; width:960px;}
article h1{font-size:28px; margin-bottom:60px; text-align:center;}
article h2{font-size:24px; margin-bottom:20px;}

#pageBody p{margin-bottom:1em;}
em.required{color:#f00;}

/* tables
==================================================== */
#pageBody table.regular{font-size:16px; width:100%;}
#pageBody table.regular th{background:#f2f2f2; vertical-align:top; font-weight:bold;}
#pageBody table.regular th,
#pageBody table.regular td{padding:15px 25px 15px; border:1px solid #ddd;}
#pageBody table.regular tr th:first-child,
#pageBody table.regular tr td:first-child{border-left:0;}
#pageBody table.regular tr th:last-child,
#pageBody table.regular tr td:last-child{border-right:0 none;}
#pageBody table.regular caption{caption-side:bottom; padding:10px 0 0;}
#pageBody table.regular.capTop caption{caption-side:top; padding:0 0 10px;}
#pageBody table.regular.compact{font-size:14px;}
#pageBody table.regular.compact th,
#pageBody table.regular.compact td{padding:10px 5px;}
#pageBody table.regular td ul.regular:last-child{margin-bottom: 0;}
#pageBody table.regular thead th{vertical-align:middle;}
#pageBody table.regular + p{margin-top:2em;}
#pageBody table.regular tfoot th,
#pageBody table.regular tfoot td{border-top-style:double; border-top-width:3px;}

/* lists
==================================================== */
#pageBody ul.regular{margin:0 0 1.5em 1.5em;}
#pageBody ul.regular li{line-height:1.5; margin-bottom:0.5em;}
#pageBody ul.asterisk{margin:0 0 1em 0;}
#pageBody ul.asterisk li{line-height:1.5; margin-bottom:0.5em; padding-left:1em; text-indent:-1em; list-style:none;}
#pageBody ul.asterisk li::before{content:'※';}
/* add202309 */
#pageBody ol.regular{margin:0 0 1.5em 1.5em;}
#pageBody ol.regular li{line-height:1.5; margin-bottom:0.5em;}

/* box
==================================================== */
#pageBody .noticeBox{border:1px #c00 solid; background:#FFF0F1; padding:15px; margin-bottom:40px;}
#pageBody .noticeBox p{font-weight:bold;}
#pageBody .noticeBox p:last-child{margin-bottom:0 !important;}



/* inquiry
==================================================== */
.inqHeader{margin:0 auto; height:100px; border-bottom:1px #ddd solid;}
.inqHeader .inner{width:960px; margin:0 auto; height:100px; position:relative;}
.inqHeader .inner .logo{height:100px; line-height:100px; float:left; margin-right:20px;}
.inqHeader .inner .logo img{display:block;}
.inqHeader .inner .cName{font-size:20px; float:left; line-height:100px;}
.inqHeader .inner .return{position:absolute; right:0; top:50%; height:25px; margin-top:-13px;}
.inqHeader .inner .return a{background:#000; color:#fff; font-size:14px; text-decoration:none; padding:0 15px; line-height:25px; display:inline-block; border-radius:5px;}
.inqHeader .inner .return a:hover{background:#666;}
.inqFooter{text-align:center; padding:30px; font-size:12px; border-top:1px #ddd solid; clear:both;}

/* movie container (universal)
==================================================== */
.movieContainer{margin:50px 0; width:fit-content; aspect-ratio:16/9;}
@media screen and (max-width:768px){
	.movieContainer{margin:30px 0; width:100%;}
	.movieContainer iframe{width:100%; height:100%;}
}


@media print{
body{zoom:0.7 !important;}
#wrapper{margin-top:0;}
#siteHeader,
nav#local,
nav#local.fixed{position:relative !important;}
#siteFooter,
#mainVisual.top{display:none;}
#pageBody.recruit header nav.recsubNav.fixed,
#pageBody.ir header nav.irsubNav.fixed,
#pageBody.csr header nav.csrsubNav.fixed{position:relative !important;}
a.pgTop{display:none !important;}
}


@media screen and (min-width:1000px) and (max-width:1240px){
/* for liquid layout between narrow screen and tablet like viewport */
section > .inner,
#siteHeader{width:100%;}
#siteHeader .inner{width:calc(100% - 80px);}
#siteFooter .inner{width:100%; padding:0 40px;}
#pageBody > header h1{padding:40px;}
nav#subLink{width:100%;}
#siteHeader .search form{width:80%;}
#global > ul li > div.drop.prj .inner .colParent ul{margin-right:15px;}
nav#local{padding-left:40px;}
}
@media screen and (min-width:1000px) and (max-width:1100px){
#siteHeader dl dt{display:none;}
}

@media screen and (min-width:768px) and (max-width:1000px){
.ff #container{width:1200px; margin:0 auto; overflow: hidden;}
.isIE #subLink,.ff #subLink,
.isIE #siteFooter,.ff #siteFooter{min-width:1200px;}
.isIE #container{width:1200px; margin:0 auto; overflow: hidden;}

}

@media screen and (max-width:768px){
	#sensor{width:1px; height:1px;}
	/* for mobile devices */
	/* font global 
	==================================================== */
	body,
	input,
	textarea,
	select,
	button{font-size:14px;}
	/*
	content wrapper
	==================================================== */
	#container:has(.subNav.builderProducts){padding-top:50px;}
	section > .inner,
	#siteHeader .inner,
	#siteFooter .inner{width:100%;}
	#wrapper{margin-top:50px; min-width:320px;}
	body.hasNav #wrapper{margin-top:95px;}

	/* site header
	==================================================== */
	#siteHeader{height:50px; position:fixed; left:0; top:0;}
	#siteHeader > .inner{height:50px;}
	#siteID{width:100px; height:30px; left:15px; top:9px;}
	#siteID img{width:100%; height:auto;}
	#siteHeader .toggle{display:block; width:50px; height:50px; position:absolute; right:0; top:0; text-indent:50px; white-space:nowrap; color:#000; overflow:hidden;}
	#siteHeader .toggle:after{content:'\e900'; font-family:rybicons; width:50px; height:50px; position:absolute; right:0; top:0; text-indent:0; text-align:center; font-size:30px; line-height:44px;}
	body.searchResult #siteHeader .toggle:after{content:''; background:url("/common/images/menuIcon.png") no-repeat center; background-size:cover; text-indent:-9999px; text-align:left;}
	#siteHeader .search{padding:15px; position:absolute; left:0; top:50px; z-index:11; background:#fff; width:100%; border:none; display:none; box-shadow:0 5px 4px 0 rgba(0,0,0,0.1);}
	#siteHeader .search form{width:auto; text-align:left; position:relative;}
	#siteHeader .search input{width:100%; height:40px; padding:5px 40px 5px 5px; display:block; border-radius:4px; background:url(/common/images/searchBox.png) no-repeat center center #fff; background-size:60px auto;}
	#siteHeader .search button{width:40px; height:40px; display:block; position:absolute; right:40px; top:0px; text-indent:50px; white-space:nowrap; overflow:hidden; background:transparent; display:none;}
	#siteHeader .search button:after{content:'\e902'; font-family:rybicons; text-align:center; line-height:40px; text-indent:0; font-size:30px; color:#666; width:40px; height:40px; display:block; position:absolute; left:0; top:0;}
	#siteHeader .search .searchClose{display:none;}

	/* update 2022 05 23 */
	#siteHeader .search input{width:calc(100% - 40px);}
	#siteHeader .search .searchClose{display:block; width:40px; height:40px; margin-top:-20px;}
	#siteHeader .search .searchClose::after{width:40px; height:40px; line-height:40px; font-size:24px;}
	/* //update 2022 05 23 */


	.drawer{position:fixed; left:auto; right:-100%; top:0; background:#666; width:70%; height:100%; overflow:auto; z-index:10}
	#global{position:relative; left:auto; top:auto; width:100%; z-index:10001;}
	#global .toggleClose{display:block; padding:0 15px; height:49px; line-height:49px; text-align:right; color:#fff; text-decoration:none; font-size:14px;}
	#global .toggleClose:before{content:'\e903'; font-family:rybicons; margin-right:3px; vertical-align:middle; font-size:16px; position:relative; top:-1px;} 
	body.searchResult #global .toggleClose:before{content:'';}

	#global > ul{min-width:0; border-top:1px #ddd solid;}
	#global > ul > li{display:block; margin-right:0; font-size:13px; position:relative; height:auto; overflow:hidden; border-bottom:1px #ddd solid; font-weight:normal; float:none; width:auto !important; text-align:left;}
	#global > ul > li a{position:relative; padding:15px;}
	#global > ul > li a:hover,
	#global > ul > li a.active{text-decoration:none; color:#fff; height:auto;}
	#global > ul > li a:after{content:'\f105'; font-family:rybicons; color:#ddd; font-size:16px; position:absolute; right:10px; top:50%; margin-top:-5px; width:10px; height:10px; text-align:center; line-height:10px; font-weight:normal;}
	#global > ul > li a:after{content:'';}
	#global > ul li a{color:#fff; padding:10px;}
	#global > ul li a.on{height:auto;}
	#global > ul li > div .inner{min-height:0;}
	#global > ul li.dropTrig.open{padding-bottom:0;}
	#global > ul li.dropTrig > a:after{content:'\f107';}
	#global > ul li.dropTrig.open > a:after{content:'\f106';}
	#global > ul li.dropTrig ul li a:after{content:'\f105';}
	#siteHeader dl{right:auto; left:70px; top:15px; display:none;}
	#siteHeader dl dt{display:inline-block; margin-right:20px; font-size:8px;}
	#siteHeader dl dd{display:none;}


	body.searchResult #global > ul li.dropTrig.open,
	body.searchResult #global > ul li.dropTrig > a:after,
	body.searchResult #global > ul li.dropTrig.open > a:after,
	body.searchResult #global > ul li.dropTrig ul li a:after{content:'';}

	#siteHeader .toggleSearch{width:50px; height:50px; position:absolute; right:50px; top:0;}
	#siteHeader .toggleSearch:after{width:50px; height:50px; font-size:30px; line-height:48px;}

	#global > ul li > div{display:none; position:relative; left:auto; top:auto; background:transparent; width:auto;}
	#global > ul li > div:after{display:none;}
	#global > ul li > div .inner{padding:0; height:auto; padding-left:10px;}
	#global > ul li > div .inner .header{display:none;}
	#global > ul li > div .inner .topLink{float:none; font-size:12px;}
	#global > ul li > div .inner .topLink a{display:block; padding:10px 20px; background:#555; border-bottom:1px #666 solid;}
	#global > ul li > div .inner .topLink a:after{content:'\f105';}
	#global > ul li > div .inner .topLink:before{content:'none'; display:none;}
	#global > ul li > div .inner .colParent{padding-left:0; background:#444;}
	#global > ul li > div .inner .colParent ul{width:auto; float:none; border-top:0;}
	#global > ul li > div .inner .colParent ul li{margin-bottom:0; font-size:12px; border-bottom:1px #666 solid;}
	#global > ul li > div .inner .colParent ul li a{display:block; padding:10px 20px;}
	#global > ul li > div .inner .colParent ul li a.here{background:#666;}
	#global > ul li > div .inner .colParent ul li figure{display:none;}
	#global > ul li > div .inner .colParent ul:last-child li:last-child{margin-bottom:5px;}
	#global > ul li > div .inner .colParent ul:nth-child(1),
	#global > ul li > div .inner .colParent ul:nth-child(2){width:100% !important; float:none;}
	#global > ul li > div .inner .colParent ul:nth-child(3){width:100%; float:none;}
	#global > ul li > div.drop.prj .inner .colParent ul{width:100%; margin-right:0px;}
	#global > ul li > div.drop.prj .inner .colParent ul li{text-align:left;}
	#global > ul li > div .dropBg{position:static; top:0px; left:0px; background:none; width:100%; height:40px; display:none; z-index:100; } 
	#global > ul li > div.drop.prj:before,
	#global > ul li > div.drop.csr:before,
	#global > ul li > div.drop.ir:before{margin-left:-336px;}
	#global > ul li.dropTrig > a.on + div.drop{display:block;}

	/* site footer
	==================================================== */
	nav#subLink{margin:0 auto 20px; padding:0 10px; width:100%;}
	nav#subLink li{width:50%; padding:0 5px; font-size:13px; text-align:left; margin-bottom:10px;}
	nav#subLink li img{display:block; margin-bottom:2px; width:100%; height:auto;}

	#siteFooter nav{background:#333; border-top:0; padding:5px;}
	#siteFooter nav ul{margin:0; clear:both;}
	#siteFooter nav ul:after{content:''; display:block; clear:both;}
	#siteFooter nav ul li{font-size:12px; margin:0; padding:0;}
	#siteFooter nav ul li:after{content:'・';}
	#siteFooter nav ul li:last-child:after{content:'';}
	#siteFooter nav ul li a{color:#fff; text-decoration:none; display:inline-block; padding:7px 0;}
	#siteFooter .inner{display:none;}
	#siteFooter .copyright{padding:10px 15px; background:#000; color:#fff; font-size:10px; margin-bottom:0; line-height:1.6;}
	a.pgTop{width:40px; height:40px; border-radius:20px; right:20px; bottom:20px;}
	a.pgTop:before{width:40px; height:40px; border-radius:20px; line-height:36px; font-size:30px;}

	/* local nav
	==================================================== */
	nav#local{padding:0; min-height:0; background:#fff; position:fixed; left:0; top:50px; background:#f5f5f5;}
	nav#local header{display:block; font-size:14px; color:#000; position:relative; cursor:pointer; padding:10px; padding-left:15px;}
	nav#local header:after{content:'\f107'; font-family:rybicons; position:absolute; right:10px; top:50%; margin-top:-14px; color:#818181; font-size:18px;}
	nav#local header.open{background:#f5f5f5;}
	nav#local header.open:after{content:'\f106';}
	nav#local ul{max-width:none; padding:0; display:none;  border-top:1px #ddd solid; clear:both;}
	nav#local ul:after{content:''; display:block; clear:both;}
	nav#local ul li{display:block; font-size:12px; margin-right:0; border-bottom:1px #eee dotted; background:#f5f5f5;}
	nav#local ul li:last-child{border-bottom:none;}
	nav#local ul li a{color:#818181; padding:7px 10px; display:block; position:relative;}
	nav#local ul li a:after{content:'\f105'; font-family:rybicons; color:#888; font-size:16px; position:absolute; right:10px; top:50%; margin-top:-5px; width:10px; height:10px; text-align:center; line-height:10px; font-weight:normal;}
	nav#local ul li a.active{background:#ddd;}
	/* redesign 202202 */
	nav#local ul li{display:block; float:none; margin:0;}
	nav#local ul li:first-child{font-size:12px; margin-right:0; line-height:inherit; margin-bottom:0; font-weight:normal;}
	nav#local ul li a{display:block; padding:7px 10px;}
	nav#local ul li a:hover,
	nav#local ul li a.active{color:#000; border-bottom:0; padding-bottom:7px; text-decoration:none;}
	body[data-active-nav=news] nav#local ul li a.active.all{border-bottom:0; padding-bottom:7px;}

	nav#local ul li:first-child a.active{color:#000;}

	/* page body
	==================================================== */
	#pageBody > header{border-bottom:1px #ddd solid;}
	#pageBody > header h1{font-size:18px; padding:15px; width:auto; line-height:1.4;}
	article.regular{padding:10px; width:auto;}
	article h1{font-size:18px; margin-bottom:15px; text-align:center;}
	article h2{font-size:16px; margin-bottom:10px;}
	/*
	==================================================== */
	#pageBody table.regular{font-size:13px;}
	#pageBody table.regular th{}
	#pageBody table.regular th,
	#pageBody table.regular td{padding:10px; border:1px #ddd solid;}
	#pageBody table.regular caption{padding:5px 0; width:100%;}
	#pageBody table.regular.compact{font-size:12px;}
	#pageBody table.regular.compact th,
	#pageBody table.regular.compact td{padding:5px 5px;}

	#pageBody .stackTable table{border-bottom:1px #ddd solid;}
	#pageBody .stackTable table caption,
	#pageBody .stackTable table.regular caption{display:block;}
	#pageBody .stackTable table tr{width:100%; display:block;}
	#pageBody .stackTable table th,
	#pageBody .stackTable table td{display:block; width:100%; border-bottom:0 none;}
	#pageBody .stackTable table th{padding:5px 10px;}
	#pageBody .stackTable table.regular tr th:first-child,
	#pageBody .stackTable table.regular tr td:first-child{border-left:1px #ddd solid;}
	#pageBody .stackTable table.regular tr th:last-child,
	#pageBody .stackTable table.regular tr td:last-child{border-right:1px #ddd solid;}

	#pageBody .flowTable{margin:0 0 20px; overflow:hidden; position:relative;}
	#pageBody .flowTable .ftInner{width:100%; height:100%; overflow:auto;}
	#pageBody .flowTable:before{width:1px; height:100%; position:absolute; left:-1px; top:0; content:''; display:block; box-shadow:0 0 10px rgba(0,0,0,1);}
	#pageBody .flowTable:after{width:1px; height:100%; position:absolute; right:-1px; top:0; content:''; display:block; box-shadow:0 0 10px rgba(0,0,0,1);}
	#pageBody .flowTable table{width:700px; background:#fff; margin-bottom:0;}

	/* inquiry
	==================================================== */
	.inqHeader{margin:0 auto; height:55px;}
	.inqHeader .inner{width:auto; height:55px; padding:0 10px; text-align:center;}
	.inqHeader .inner .logo{height:55px; line-height:55px; margin-right:5px;}
	.inqHeader .inner .logo img{height:55px; width:auto;}
	.inqHeader .inner .cName{font-size:14px; line-height:55px; height:55px; display:inline-block;}
	.inqHeader .inner .return{position:absolute; right:10px; top:0%; height:25px; margin-top:0;}
	.inqHeader .inner .return a{font-size:12px; border-radius:0 0 5px 5px;}
	.inqHeader .inner .return a span{display:none;}
	.inqFooter{padding:15px; font-size:10px;}
	.inqFooter{text-align:center; padding:15px; font-size:12px; border-top:1px #ddd solid; clear:both;}
	article.regular.form{padding:15px;}
	article.regular.form section{padding:0;}

}