@charset "utf-8";
/* fonts
===================================================== */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900|Noto+Serif+JP:400,600|PT+Sans+Narrow:400,700&subset=japanese');
@font-face{font-family:'sne'; src:url('../fonts/sne.woff?xb9g9o') format('woff'); font-weight:normal; font-style:normal;}
body{font-family: 'Noto Sans JP', sans-serif; font-weight:400;}
.min{font-family: 'Noto Serif JP', serif;}
.latin{font-family: 'PT Sans Narrow', sans-serif;}
.icn,
*::before,
*::after{font-family:'sne' !important; font-style:normal; font-weight:normal !important; font-variant:normal !important; text-transform:none; line-height:1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing:grayscale;}

/* INITIALIZE
2019.02.03 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,input{
margin:0;padding:0; border:0; font-size:100%; 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{vertical-align:text-top; font-size:75%;}
sub{vertical-align:text-bottom; font-size:75%;}
small{font-size:85%;}
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;}
i{font-style:normal;}
button{cursor:pointer;}

/* common 
===================================================== */
a{color:#143c8c; text-decoration:none;}
a:visited{color:#143c8c;}
.spbr{display:none;}
.grad{background: linear-gradient(to right, rgba(255,0,0,1) 0%,rgba(20,60,140,1) 100%);}
strong.highlight{color:#143C8C; font-size:140%; font-weight:700;}
strong.highlight,
span.mark{display:block; line-height:30px;}

/* base layouts 
====================================================== */
#wrapper{clear:both; position:relative; padding-top:140px;}
main#pageBody{width:1168px; margin:0 auto; display:flex; justify-content:space-between; flex-direction:row-reverse; flex-wrap:wrap; /*opacity:0;*/}
main#pageBody article{width:868px; margin-bottom:80px;position: relative;}
#pageAside{width:268px; margin-bottom:50px;}

/* site header
====================================================== */
.headContainer{box-shadow:0 0 10px rgba(0,0,0,.1); height:146px; z-index:1000; position:fixed; left:0; top:0; width:100%; background:#fff; transition:top .3s ease-out;}
.headContainer::before{height:6px; background:linear-gradient(to right, rgba(255,0,0,1) 0%,rgba(20,60,140,1) 100%); content:''; display:block;}
@media screen and (min-width:768px){
	.headContainer.hide{top:-150px;}
}
#siteHeader{width:1168px; margin:0 auto; position:relative; height:140px;}
#siteID{width:750px; height:51px; position:absolute; left:0; top:10px;}
#siteHeader nav{position:relative; top:80px;}
#siteHeader nav .toggle{display:none;}
#mainMenu{}
ul#global{display:flex; height:60px;}
ul#global > li{width:140px; height:60px; font-weight:700; font-size:13px;}
ul#global > li#gnHome{width:190px; font-weight:bold; font-size:19px; line-height:1.2; margin-right:30px}
ul#global > li#gnHome small{display:block; font-size:12px;}
ul#global > li#gnHome span{display:none;}
ul#global > li.kwd{width:108px;}
ul#global > li > a{text-align:center; height:60px; color:#000; text-decoration:none; display:flex; align-items:center; justify-content:center; position:relative;}
ul#global > li#gnHome > a{flex-direction:column;}
ul#global > li#gnHome > a{background:#143c8c; color:#fff;}
ul#global > li > a::after{position:absolute; left:0; bottom:0; width:100%; height:4px; background:linear-gradient(to right, rgba(255,0,0,1) 0%,rgba(20,60,140,1) 100%); content:''; opacity:0; transition:opacity .3s ease-out;}
ul#global > li:hover a::after{opacity:1;}
ul#global > li.hasChild > a::before{content:'\e904'; color:#999; font-size:10px; padding-right:4px; vertical-align:middle; position:relative; top:2px; transform:scale(.8);}
ul#global > li.kwd > a{text-indent:-9999px; text-align:left; overflow:hidden; white-space:nowrap; display:block;}
ul#global > li.kwd > a::before{content:'\e912'; position:absolute; left:50%; top:50%; margin:-8px 0 0 -8px; text-indent:0; font-size:16px; width:16px; height:16px;}

/*#siteHeader ul.siteFunctions{position:absolute; right:210px; top:-80px;; width:200px; height:80px; display:flex; justify-content:flex-end;}
#siteHeader ul.siteFunctions li{margin-left:15px; font-size:10px; font-weight:700; text-align:center;}*/
#siteHeader ul.siteFunctions{
	position:absolute;
	right:210px;
	top:-80px;
	width:auto;
	height:80px;
	display:flex;
	justify-content:flex-end;
}
#siteHeader ul.siteFunctions li{
	font-size:10px;
	font-weight:700;
	text-align:center;
}


#siteHeader ul.siteFunctions li a{display:block; color:#000; text-decoration:none; padding:8px 0 0 0; position:relative; max-height:78px; overflow:hidden; transition:opacity .3s ease-out;}
#siteHeader ul.siteFunctions li a::before{font-size:30px; display:block; text-align:center; line-height:45px;}
#siteHeader ul.siteFunctions li a:hover{opacity:.7;}
#siteHeader ul.siteFunctions li:first-child a::before{content:'\e907';}
#siteHeader ul.siteFunctions li:last-child a::before{content:'\e907';}
/*#siteHeader ul.siteFunctions li:last-child a::before{content:'\e90d';}*/
#siteHeader ul.siteFunctions + ul{display:none;}
#siteHeader .parentalLink{width:160px; height:20px; position:absolute; right:0; top:-52px;}
#siteHeader .parentalLink a img{transition:opacity .3s ease; width:160px; height:auto;}
#siteHeader .parentalLink a:hover img{opacity:.5;}
#siteHeader .parentalLink a:hover::after{display:none;}

/* drop down */
#siteHeader .ddm{background:rgba(7,22,51,.9); width:100vw; color:#fff; position:absolute; top:60px; font-weight:400; max-height:0; overflow:hidden; transition:max-height .9s ease-out .1s;}
#siteHeader .ddm{left:590px; margin-left:-50vw;}
#siteHeader .ddm nav{width:1168px; margin:80px auto 60px; top:auto;}
#siteHeader .ddm h1{font-size:28px; font-weight:700;}
#siteHeader .ddm h1 small{font-family: 'PT Sans Narrow', sans-serif; font-size:13px; display:block; padding-top:10px;}
#siteHeader .ddm a{color:#fff; text-decoration:none;}
#siteHeader #gnIntro .ddm nav{display:flex; justify-content:space-between;}
#siteHeader #gnIntro .ddm h1,#siteHeader #gnIntro .ddm dl,#siteHeader #gnIntro .ddm > div{width:268px;}
#siteHeader #gnIntro .ddm dt{padding-top:140px; background-position:center top; background-repeat:no-repeat; font-size:16px; font-weight:700; margin-bottom:10px;}
#siteHeader #gnIntro .ddm dt.specialSteel{background-image:url(../images/common/navSteel.jpg);}
#siteHeader #gnIntro .ddm dt.spaceStructure{background-image:url(../images/common/navSpace.jpg);}
#siteHeader #gnIntro .ddm dt.absorber{background-image:url(../images/common/navAbsorb.jpg);}
#siteHeader #gnIntro .ddm dt.bridgeMaterials{background-image:url('/steelstructures/wp/wp-content/uploads/2024/10/navBridge.jpg');}
#siteHeader #gnIntro .ddm dt a::before{content:'\e903'; padding-right:5px; vertical-align:middle; position:relative; top:-2px;}
#siteHeader #gnIntro .ddm dd{font-weight:400; margin-bottom:10px; font-size:13px;}
#siteHeader #gnIntro .ddm dl{margin-bottom:40px;}
#siteHeader #gnIntro .ddm a{transition:opacity .3s ease-out;}
#siteHeader #gnIntro .ddm a:hover{opacity:.7;}
#siteHeader #gnProducts .ddm nav{display:flex;}
#siteHeader #gnProducts .ddm nav h1{width:300px;}
#siteHeader #gnProducts .ddm nav ul{width:868px; display:flex; flex-wrap:wrap; justify-content:space-between;}
#siteHeader #gnProducts .ddm nav ul li{width:calc(50% -  15px); margin-bottom:30px; font-size:16px; text-align:center;}
#siteHeader #gnProducts .ddm nav ul li a{display:block; line-height:58px; border:1px #fff solid; transition:background-color .3s ease-out;}
#siteHeader #gnProducts .ddm nav ul li a:hover{background-color:rgba(255,255,255,.3);}
#siteHeader .kwd .ddm nav{width:800px;}
#siteHeader .kwd .ddm nav form div{position:relative; margin-bottom:15px;}
#siteHeader .kwd .ddm nav form div input{width:100%; height:50px; background:none #fff; border-radius:6px; border:0 none; padding:15px;}
#siteHeader .kwd .ddm nav form div button{position:absolute; right:0; top:0; border:none; background:none; width:50px; height:50px; display:block; text-indent:-9999px;}
#siteHeader .kwd .ddm nav form div button::before{content:'\e912'; position:absolute; left:0; top:0; text-indent:0; font-size:16px; width:50px; height:50px; text-align:center; line-height:50px; transition:color .3s ease;}
#siteHeader .kwd .ddm nav form div button:hover{color:#ccc;}
#siteHeader .kwd .ddm nav dt,
#siteHeader .kwd .ddm nav dd{display:inline-block; padding-right:10px;}
#siteHeader .kwd .ddm nav dd.indexLink{display:none;}
#siteHeader .kwd .ddm nav dt{color:#999;}
#siteHeader .kwd .ddm nav dd a{text-decoration:underline; padding-right:10px;}
#siteHeader .kwd .ddm nav dd a:hover{text-decoration:none;}
/*
#siteHeader #gnRelated .ddm nav{display:flex; justify-content:space-between;}
#siteHeader #gnRelated .ddm nav h1{width:150px;}
#siteHeader #gnRelated .ddm nav ul{width:950px; display:flex; flex-wrap:nowrap; justify-content:space-between;}
#siteHeader #gnRelated .ddm nav ul li{width:290px; height:80px; margin:0 0 30px;}
#siteHeader #gnRelated .ddm nav ul li a{display:block; height:80px; text-indent:-9999px; background-size:cover; background-repeat:no-repeat; background-position:center;}
#siteHeader #gnRelated .ddm nav ul li a.eng{background-image:url('/images/banners/bnrNssmc.jpg');}
#siteHeader #gnRelated .ddm nav ul li a.gcn{background-image:url('/images/banners/bnrArch.jpg');}
#siteHeader #gnRelated .ddm nav ul li a.stn{background-image:url('/images/banners/bnrStanPkg.jpg');}
*/
#siteHeader #gnWorks .ddm nav{display:flex; justify-content:space-between;}
#siteHeader #gnWorks .ddm nav h1{width:150px;}
#siteHeader #gnWorks .ddm nav ul{width:950px; display:flex; flex-wrap:nowrap; justify-content:space-between;}
#siteHeader #gnWorks .ddm nav ul li{width:290px; height:80px; margin:0 0 30px;}
#siteHeader #gnWorks .ddm nav ul li a{display:block; height:80px; text-indent:-9999px; background-size:cover; background-repeat:no-repeat; background-position:center;}
#siteHeader #gnWorks .ddm nav ul li a.steel{background-image:url('../images/common/works_steel.jpg');}
#siteHeader #gnWorks .ddm nav ul li a.bridge{background-image:url('../images/common/works_bridge.jpg'); pointer-events:none; opacity:0.3;}
#siteHeader #gnWorks .ddm nav ul li a.isolation{background-image:url('../images/common/works_isolation.jpg'); pointer-events:none; opacity:0.3;}
#siteHeader #gnWorks .ddm nav ul li a:hover{background-color:rgba(255,255,255,.3); opacity:.7;}
#siteHeader li.hasChild:hover .ddm,
#siteHeader li.kwd:hover .ddm{max-height:150vh;}

/* breadcrumbs
====================================================== */
.breadcrumbs{width:1168px; margin:0 auto; padding:30px 0;}
.breadcrumbs.btm{display:none;}
.breadcrumbs ul{}
.breadcrumbs ul li{display:inline-block; font-size:11px; padding:0 10px 0 0;}
.breadcrumbs ul li::after{content:'/'; padding-left:10px; color:#143c8c;}
.breadcrumbs ul li:last-child::after{content:none;}
.breadcrumbs ul li:last-child{color:#f00;}

/* site footer
====================================================== */
#siteFooter{background:#000; color:#fff; padding:40px 0; position:relative;}
#siteFooter::before{height:6px; background:linear-gradient(to right, rgba(255,0,0,1) 0%,rgba(20,60,140,1) 100%); content:''; display:block; position:absolute; left:0; top:-6px; width:100%;}
#siteFooter .logo{width:1168px; margin:0 auto 40px;}
#siteFooter .sitemap{width:1168px; margin:0 auto; display:flex; justify-content:space-between;}
#siteFooter .sitemap ul,
#siteFooter .sitemap dl{width:268px; margin-right:32px;}
#siteFooter .sitemap dl:last-child{margin-right:0;}
#siteFooter .sitemap li{font-size:11px; margin-bottom:10px; list-style:none;}
#siteFooter .sitemap li{font-size:11px; margin-bottom:10px;}
#siteFooter .sitemap dt{font-size:16px; margin-bottom:20px; font-weight:700;}
#siteFooter .sitemap dd{font-size:11px; margin-bottom:10px; color:#999;}
#siteFooter .sitemap dd a{color:#999;}
#siteFooter .sitemap dd + dt{margin-top:30px;}
#siteFooter a{color:#fff; text-decoration:none;}
#siteFooter a:hover{text-decoration:underline;}
#siteFooter .bottom{display:flex; flex-direction:row-reverse; width:1168px; margin:0 auto; padding-top:40px; flex-wrap:nowrap;}
#siteFooter .bottom ul{display:flex; justify-content:flex-end; width:50%; line-height:1;}
#siteFooter .bottom ul li{font-size:11px; list-style:none; color:#999; margin-left:1em; padding-left:1em; position:relative;}
#siteFooter .bottom ul li::before{background:#999; content:''; width:1px; height:50%; display:block; position:absolute; left:0; top:2px;}
#siteFooter .bottom ul li:first-child::before{display:none;}
#siteFooter .bottom ul li a{color:#999;}
#siteFooter .bottom .copyrights{font-size:13px; font-family:'PT Sans Narrow', sans-serif; color:#999; width:50%; line-height:1;}
div.pgUp{position:fixed; right:35px; bottom:25px; width:160px; height:25px; transform:rotate(90deg); transform-origin:right bottom; z-index:999;}
div.pgUp a{font-family:'PT Sans Narrow', sans-serif; text-decoration:none; color:#000; font-weight:700; font-size:14px; width:160px; height:25px; text-align:right; transition:all .2s ease-out; display:block; letter-spacing:0.025em; padding:5px 10px;}
div.pgUp a::before{content:''; display:block; width:80px; height:1px; background:#000; position:absolute; left:10px; top:50%;}
div.pgUp.bottom a{color:#fff; background:transparent;}
div.pgUp.bottom a::before{background:#fff;}
div.pgUp a:hover{right:30px; bottom:20px;}

/* user interfaces */
a.btn,
.btn a,
button.btn{color:#fff; background:#000; display:inline-block; font-size:16px; font-weight:700; position:relative; text-decoration:none; transition: all 1.2s cubic-bezier(0.2, 1, 0.2, 1); text-align:center; padding:10px;}
button.btn{border:none; background:#000 none;}
a.btn:hover,
.btn a:hover,
button.btn:hover{background:#143c8c;}

a.btn.download::before{content:'\e909'; font-size:120%; margin-right:.5em; vertical-align:middle; position:relative; top:-2px;}

/* page aside
====================================================== */
#pageAside nav{margin-bottom:30px;}
#pageAside nav dl{}
#pageAside nav dl dt{border-top:3px #000 solid; background:#f2f2f2; border-bottom:1px #ddd solid;}
#pageAside nav.local dl dt{border-top:6px #143c8c solid; background:#fff; border-bottom:1px #ddd solid;}
#pageAside nav dl dt a,
#pageAside nav dl dt span{padding:23px 15px; display:block; font-size:20px; font-weight:700; color:#000;}
#pageAside nav.local dl dt a{padding:30px 15px; color:#143c8c;}
#pageAside nav.local dl dt a::before{content:'\e904   '; font-size:14px;}
#pageAside nav dl dd{margin-bottom:30px;}
#pageAside nav dl dd ul li{border-bottom:1px #ddd solid;}
#pageAside nav dl dd ul li a{padding:13px 15px; display:block; font-weight:700; font-size:13px;}
#pageAside nav dl dd ul li a::before{content:'\e904   '; font-size:10px;}
#pageAside nav dl dd ul li a.active{color:#f00;}
#pageAside nav dl dd ul li.hasChildren .active::before{content:'\e901   ';}
#pageAside nav dl dd ul li.hasChildren.open a::before{content:'\e901   ';}
#pageAside nav dl dd ul li ul{display:none; border-top:1px #ddd solid; padding:7px 0;}
#pageAside nav dl dd ul li.hasChildren  a.active + ul,
#pageAside nav dl dd ul li.hasChildren.open ul{display:block;}
#pageAside nav dl dd ul li ul li{border:0 none;}
#pageAside nav dl dd ul li ul li a{padding:5px 5px 5px 30px; font-weight:400;}
#pageAside nav dl dd ul li ul li a::before{content:none; display:none;}
#pageAside .ctg,
#pageAside nav dl dd ul li.head{border-top:2px #000 solid; background:#f2f2f2; padding:12px 15px; font-size:13px; line-height:1; border-bottom:1px #ddd solid;}

#pageAside nav.regular dl dd.searchBox{padding:30px 15px 22px; border-bottom:1px #ddd solid;}
#pageAside nav.regular dl dd.searchBox div{position:relative; margin-bottom:15px;}

#pageAside nav.regular dl dd.searchBox div input{width:100%; height:36px; background:none #fff; border-radius:4px; padding:5px; font-size:13px; border:1px #ddd solid;}
#pageAside nav.regular dl dd.searchBox div button{position:absolute; right:0; top:0; border:none; background:none; width:36px; height:36px; display:block; text-indent:-9999px;}
#pageAside nav.regular dl dd.searchBox div button::before{content:'\e912'; position:absolute; left:0; top:0; text-indent:0; font-size:12px; width:36px; height:36px; text-align:center; line-height:36px; transition:color .3s ease;}
#pageAside nav.regular dl dd.searchBox div button:hover{color:#ccc;}
#pageAside nav.regular dl dd.searchBox .kwd{font-size:12px;}
#pageAside nav.regular dl dd.searchBox .kwd a{white-space:nowrap; display:inline-block; margin:0 6px 6px 0; text-decoration:underline;}
#pageAside nav.regular dl dd.searchBox .kwd a:hover{text-decoration:none;}
#pageAside nav.regular ul.utils{}
#pageAside nav.regular ul.utils li{margin-bottom:10px; font-weight:700;}
#pageAside nav.regular ul.utils li a{padding:15px 15px 15px 60px; border:1px #143c8c solid; display:block; position:relative; transition:all .3s ease;}
#pageAside nav.regular ul.utils li a::before{width:40px; height:40px; line-height:40px; text-align:center; content:''; display:block; position:absolute; left:10px; top:50%; margin-top:-20px;}
#pageAside nav.regular ul.utils li.glossary a::before{content:'\e915'; font-size:24px;}
#pageAside nav.regular ul.utils li.download a::before{content:'\e909'; font-size:24px;}
#pageAside nav.regular ul.utils li.faq a::before{content:'\e90b'; font-size:28px;}
#pageAside nav.regular ul.utils li a:hover{background:#143c8c; color:#fff;}
nav.local.head{display:none;}
#pageAside .indexLink{display:none;}
#pageAside nav a:hover{color:#f00;}
#pageAside nav dl.absorber dd{margin-bottom:0;}
/* add 2021 12 02 */
#pageAside nav dl dd .menuBtn{border-top:2px #000 solid; margin-top:-1px; border-bottom:1px #ddd solid;}
#pageAside nav dl dd .menuBtn a{position:relative; display:block; background:#f2f2f2; padding:13px 15px; font-size:14px; font-weight:bold; color:#000;}
#pageAside nav dl dd .menuBtn a::after{content:'\e904'; color:#999; font-size:10px; position:absolute; top: calc(50% - 4px); transform: scale(.8) rotate(0); right:15px; transition: transform .8s ease;}
#pageAside nav dl dd .menuBtn.toggleHead a::after{transform: scale(.8) rotate(-90deg);}
#pageAside nav dl dd .menuBtn.toggleHead a.open::after{transform: scale(.8) rotate(90deg);}

/* content internal elements
=========================================================== */
.pageHeader{padding:60px 0; border-top:6px #143c8c solid; border-bottom: 1px #000 solid; margin-bottom:50px; position:relative;}
.pageHeader h1{font-size:40px; font-weight:700; color:#143c8c;}
.pageHeader .thumb{position:absolute; right:0; top:50%; margin-top:-60px; width:180px; height:auto;}
.visualHeader{height:582px; background-position:center; background-repeat:no-repeat; background-size:cover; color:#fff; margin-bottom:50px; text-align:center;padding-top:180px;}
.visualHeader h1{font-size:28px; font-weight:700; margin-bottom:10px;}
.visualHeader h1::before{content:'\e90f'; font-size:110px; font-weight:normal; display:block; margin-bottom:30px;}
.visualHeader p{font-size:16px; font-weight:700;}
#pageBody article h2{font-size:28px; padding-bottom:10px; margin-bottom:20px; font-weight:700; border-bottom:3px #000 solid;}
#pageBody article h2.num{text-indent:-1em; padding-left:1em;}
#pageBody article h3{font-size:20px; font-weight:700; margin-bottom:15px;}
#pageBody article h3.regular{padding-bottom:5px; border-bottom:2px #ddd solid;}
#pageBody article h4{font-size:18px; font-weight:700; margin-bottom:10px;}
#pageBody article p{font-size:16px; line-height:1.7; margin-bottom:.75em;}
#pageBody article p.catch{font-size:20px; font-weight:700; margin-bottom:15px; color:#143c8c;}
#pageBody article p.note{font-size:13px; line-height:1.5; margin-bottom:2em; color:#777;}
#pageBody article p.notes{font-size:13px; line-height:1.5; margin-bottom:2em; color:#777; padding-left:1em; text-indent:-1em;}
#pageBody article a[target=_blank]::after{content:'\e916'; padding-left:5px; font-size:12px;}
#pageBody article section{margin-bottom:50px;}
#pageBody nav.index h2,
#pageBody article .headSection h2{border-bottom:3px #ddd solid; color:#143c8c; position:relative;}
#pageBody article .headSection p.catch{color:#000;}
#pageBody nav.index h2::after,
#pageBody article .headSection h2::after{content:''; width:260px; background:#143c8c; height:3px; position:absolute; left:0; bottom:-3px;}
#pageBody article hr{display:block; margin:0; padding:0; margin-block-start:0; margin-block-end:0; border:0; height:1px; background:#ddd;}
#pageBody article figure{margin-bottom:20px;}
#pageBody article .relatedTopics{margin-top:100px;}
#pageBody article .relatedTopics h2{border-top:3px #000 solid; border-bottom:0; margin-bottom:0; padding:20px 0;}
#pageBody article .mc .col h3{font-size:18px; margin-bottom:10px;}
#pageBody article .pageHeader .pageNote{font-size:14px; text-align:right; position:absolute; width:100%; left:0; bottom:10px; margin-bottom:0;}

/* block multi column */
#pageBody article section{margin-bottom:50px;}
#pageBody article section .block{margin:30px 0;}
#pageBody article section .block:last-child{margin-bottom:0;}
#pageBody article .mc{display:flex; justify-content:space-between; flex-wrap:wrap;}
#pageBody article .mc.duo .col{width:418px; margin-bottom:20px;}
#pageBody article .mc .btn a,
#pageBody article .mc a.btn{display:block; margin-top:20px;}
#pageBody article section p:last-child,
#pageBody article section .block:last-child,
#pageBody article section figure:last-child,
#pageBody article .mc.duo .col:last-child,
#pageBody article .mc.duo .col:nth-last-child(2){margin-bottom:0;}

/* block multi column for products templete ===================================================================================================== */
#pageBody article.products section{margin-bottom:50px;}
#pageBody article.products section .block{margin:30px 0;}
#pageBody article.products section .block.follow{margin-top:-20px;}
#pageBody article.products section .block.beta.follow{margin-top:-30px; padding-top:10px;}
#pageBody article.products section .block.beta{background:#f2f2f2; padding:30px;}
#pageBody article.products section .block:last-child{margin-bottom:0;}
#pageBody article.products .mc{display:flex; justify-content:space-between; flex-wrap:wrap;}
body.regular.products.steel #pageBody article.products section.mc.duo {margin-bottom: 0;margin-top: 25px;}
#pageBody article.products .mc.duo .col{width:calc(50% - 16px); margin-bottom:30px;}
#pageBody article.products .mc.trio .col{width:calc(100% / 3 - 16px); margin-bottom:30px;}
#pageBody article.products section .block ul,
#pageBody article.products section .block ol{margin:0 0 1.5em 1.5em;}
#pageBody article.products section .block ul li,
#pageBody article.products section .block ol li{margin-bottom:.5em;}
#pageBody article.products section a.btn{min-width:268px;}

#pageBody article.products .mc .btn a,
#pageBody article.products .mc a.btn{display:block; margin-top:20px;}
#pageBody article.products section p:last-child,
#pageBody article.products section .block:last-child,
#pageBody article.products section figure:last-child,
#pageBody article.products .mc.duo .col:last-child,
#pageBody article.products .mc.duo .col:nth-last-child(2){margin-bottom:0;}

#pageBody article.products img{max-width:100%; height:auto;}
#pageBody article.products .col img{margin:0 auto;}

#pageBody article h3.merit{clear:both; padding-bottom:15px; font-size:20px; font-weight:700; color:#143c8c; border-bottom:2px #ddd solid; line-height:1.4; margin-bottom:15px; display:flex; justify-content:flex-start; align-items: center; align-content:center;}
#pageBody article h3.merit i{display:inline-block; background:#143c8c; color:#fff; font-size:12px; height:20px; line-height:20px; text-align:center; padding:0 20px; margin:0 15px 0 0; border-radius:10px;}

#pageBody article .movieFrame{}
#pageBody article .movieFrame iframe{width:100%; height:calc(862px * 9 / 16);}
#pageBody article .beta .movieFrame iframe{width:100%; height:calc(800px * 9 / 16);}
#pageBody article.products section .block ul.gallaryPhoto{margin:0 0 10px 0;}
#pageBody article.products section .block ul.gallaryPhoto li{list-style:none;}
#pageBody article.products section .block ul.gallaryThumb {margin:0 -5px;}
#pageBody article.products section .block ul.gallaryThumb li.slick-current img{border:2px #143c8c solid; display:block; box-sizing:border-box;}
#pageBody article.products section .block ul.gallaryThumb li{margin:0 5px;}
#pageBody article.products section .block ul.gallaryThumb .slick-track{margin-left:0; margin-right:0;}

#pageBody article a.imgLink{position:relative; display:block; transition:all .3s ease;}
#pageBody article a.imgLink:hover{opacity:.7;}
#pageBody article a.imgLink::after,
#pageBody article a.imgLink[target=_blank]::after{content:'\e918'; color:#fff; background:#143c8c; width:40px; height:40px; position:absolute; right:0; bottom:0; text-align:center; line-height:40px; font-size:20px; text-indent: -5px;}
#pageBody article a.imgLink img{display:block;}
/* patrs
======================================================== */
/* list */
dl.newsList{width:868px; border-top:1px #ddd solid; padding-top:25px; margin-bottom:15px;}
dl.newsList dt{margin-bottom:15px; color:#999;}
dl.newsList dt span{font-size:11px; display:inline-block; line-height:1; padding:5px 20px; border:1px #cccaca solid; border-radius:12px; vertical-align:middle; margin-left:15px; position:relative; top:-2px;}
dl.newsList dd{padding-bottom:25px; margin-bottom:30px; border-bottom:1px #ddd solid;}
dl.newsList dd a:hover{text-decoration:underline;}
dl.newsList dd a[target=_blank]::after{content:'\e916';}
dl.topicList{border-top:1px #ddd solid; padding-top:25px; margin-bottom:25px;}
dl.topicList dt{margin-bottom:5px; color:#000; font-weight:700;}
dl.topicList dt span{font-size:11px; display:inline-block; line-height:1; padding:5px 20px; background:#042d7e; vertical-align:middle; margin-left:15px; position:relative; top:-2px; width:130px; text-align:center; color:#fff; font-weight:400;}
dl.topicList dd{padding-bottom:25px; margin-bottom:25px; border-bottom:1px #ddd solid;}
dl.topicList dd a{color:#222;}
dl.topicList dd a:hover{text-decoration:underline;}
dl.topicList dd a[target=_blank]::after{content:'\e916';}
dl.topicList + p.btn,
ul.faqList + p.btn{clear:both; display:flex; justify-content:flex-end;}
dl.topicList + p.btn a,
ul.faqList + p.btn a{font-size:13px; width:268px; height:40px; padding:0; line-height:40px;}
ul.wordList{display:flex; flex-wrap:wrap; justify-content:flex-start;}
ul.wordList li{list-style:none; margin-bottom:1em; text-indent:-14px; padding-left:14px; width:calc(100% / 3);}
ul.faqList li{list-style:none; margin-bottom:1em; text-indent:-14px; padding-left:14px;}

ul.wordList li a:hover,
ul.faqList li a:hover{text-decoration:underline;}
ul.wordList li::before,
ul.faqList li::before{content:'\e904'; font-size:10px; display:inline-block; position:relative; top:-2px; width:14px; text-indent:0;}

ul.pageAnchor{display:flex; flex-wrap:wrap; justify-content:flex-start; margin-bottom:50px;}
ul.pageAnchor li{width:calc(25% - 25px); margin-bottom:15px; list-style:none; margin-right:32px;}
ul.pageAnchor li:nth-child(4n){margin-right:0;}
ul.pageAnchor li a{padding:10px 5px; border:1px #143c8c solid; display:block; transition: all .3s ease; text-align:center; font-size:16px; font-weight:700;}
ul.pageAnchor li a:hover{background:#143c8c; color:#fff;}
ul.pageAnchor2{display:flex; flex-wrap:wrap; justify-content:flex-start; margin-bottom:50px;}
ul.pageAnchor2 li{width:100% ; margin-bottom:15px; list-style:none;}
ul.pageAnchor2 li:nth-child(4n){margin-right:0;}
ul.pageAnchor2 li a{padding:15px 5px; border:1px #143c8c solid; display:block; transition: all .3s ease; text-align:center; font-size:16px; font-weight:700;}
ul.pageAnchor2 li a:hover{background:#143c8c; color:#fff;}

#pageBody article ul.regular,
#pageBody article ol.regular{margin:0 0 30px 1.5em;}
#pageBody article ul.regular li,
#pageBody article ol.regular li{margin:0 0 .5em;}
ul.notes{margin:0 0 30px;}
ul.notes li{font-size:14px; line-height:1.4; margin-bottom:.25em; text-indent:-1em; padding-left:1em; list-style:none;}
ul.notes li::before{content:'※';}

ul.typeS{}
ul.typeS li{list-style:none; text-indent:-1em; padding-left:1em; margin-bottom:.75em; line-height:1.75;}
ul.typeS li::before{content:'■';}
ul.internalLink{border-top:1px #ddd solid;}
ul.internalLink li{border-bottom:1px #ddd solid; padding:10px 0; list-style:none;}
ul.internalLink li a{display:block; padding:15px 0 15px 20px; position:relative;}
ul.internalLink li a::before{content:'\e904'; width:10px; height:10px; text-align:center; line-height:10px; position:absolute; left:10px; top:50%; margin-top:-6px; font-size:10px; color:#777; }

#pageBody article ol.parentheses{list-style:none; font-weight:bold; counter-reset:parentheses; margin:0 0 1.5em 0 !important;}
#pageBody article ol.parentheses li{text-indent:-2.5em; padding-left:2.5em; margin-bottom:.5em;}
#pageBody article ol.parentheses li:before{counter-increment:parentheses; content:'（'counter(parentheses)'）'; font-weight:700; font-family:'Noto Sans JP', sans-serif !important;}

/* table */
#pageBody article section table{width:100%; margin-bottom:30px;}
#pageBody article section table th,
#pageBody article section table td{border:1px #ccc solid; padding:10px; font-size:12px;}
#pageBody article section table th{background:#f2f2f2; font-weight:700; color:#777;}
#pageBody article section table thead th{text-align:center;}
#pageBody article section table.fixed{table-layout:fixed;}
#pageBody article section table.valueTable td{text-align:right;}
#pageBody article section table.zebra tbody tr:nth-child(even) th{background:#ddd;}
#pageBody article section table.zebra tbody tr:nth-child(even) td{background:#f5f5f5;}
#pageBody article section table .nowrap{white-space:nowrap;}
#pageBody article section table.ctr th,
#pageBody article section table.ctr td{text-align:center;} 
#pageBody article section table th.ctr,
#pageBody article section table td.ctr{text-align:center;} 
#pageBody article section table th.aRt,
#pageBody article section table td.aRt{text-align:right;}
#pageBody article section table th.aLt,
#pageBody article section table td.aLt{text-align:left;}
#pageBody article section p.tableCaption{margin-top:-25px; font-size:14px;}

/* figure and image */
#pageBody article figure{margin-bottom:30px;}
#pageBody article figcaption{padding:5px 0; font-size:14px;}

/* conversion */
/*ul.conversion{display:flex; justify-content:flex-start; width:868px; margin:0 auto 60px;}*/
ul.conversion{
	display:flex;
	justify-content:center;
	width:868px;
	margin:0 auto 60px;
}
ul.conversion li{width:268px; height:268px; list-style:none; position:relative; margin-right:32px;}
ul.conversion li:nth-child(3n){margin-right:0;}
ul.conversion li a{display:block; position:relative; height:268px; color:#fff; text-decoration:none; background:#143c8c; font-size:20px; font-weight:700; text-align:center; box-shadow:5px 5px 25px rgba(0,0,0,.4); left:0; top:0; transition:all .2s ease-out; display:flex; align-content:center; justify-content:center; align-items:center;}
ul.conversion li small{font-size:12px; font-weight:400; display:block; padding-top:15px;}
ul.conversion li small.ext::after{content:'\e916'; padding-left:5px; font-size:10px;}
ul.conversion li a:hover{box-shadow:none; left:5px; top:5px;}
ul.conversion li a span{display:block; text-align:center;}
ul.conversion li a span::before{content:''; display:block; width:100%; height:60px; font-size:60px; line-height:60px; text-align:center; margin-bottom:10px;}
ul.conversion li.contact a span::before{content:'\e907';}
ul.conversion li.brochure a span::before{content:'\e908';}
ul.conversion li.download a span::before{content:'\e909';}
ul.conversion li.regist a span::before{content:'\e90c';}

ul.conversion li.download a[target=_blank]::after{content:''; display:none;}
ul.conversion li.download a i{font-size:12px; font-weight:400; display:block;}
ul.conversion li.download a i img{display:block; margin:15px auto 10px;}

/* related */
section.related ul.btn{display:flex; justify-content:flex-start; margin-bottom:80px; flex-wrap:wrap}
section.related ul.btn li{width:268px; margin:0 32px 32px 0; list-style:none;}
section.related ul.btn li:nth-child(3n){margin-right:0;}
section.related ul.btn li a{display:block; padding:12px;}
section.related ul.btn li a.here{background:#999; pointer-events:none;}
/* banners */
aside.banners h1{font-size:24px; margin-bottom:40px; text-align:center;}
aside.banners{background:#f2f2f2; padding:50px;}
aside.banners ul{display:flex; justify-content:space-between; width:1168px; margin:0 auto;}
aside.banners li{list-style:none; text-align:center;}

/* form objects
======================================================= */
/* select */
label.select{position:relative; height:40px; display:inline-block; background:#f2f2f2; z-index:0;}
label.select select{height:40px; background:transparent none; border:none; min-width:210px; padding:0 40px 0 20px; z-index:100; -webkit-appearance:none; -moz-appearance:none; appearance:none;}
label.select::before{position:absolute; width:40px; height:40px; background:#143c8c; content:'\e901'; color:#fff; display:block; text-align:center; line-height:40px; font-size:10px; right:0; top:0; z-index:-1;}


/*  ====================================================================================================================================================== smartphone ================================================================================================================= */

@media screen and (max-width:767px){
/* base layouts 
====================================================== */
body{font-size:14px; word-break:break-all;}
.spbr{display:inline;}
.pcbr{display:none;}
#wrapper{padding-top:80px; min-width:320px; overflow-x:hidden; position:relative; z-index:0;}
#wrapper.wNav{padding-top:120px;}
#wrapper::before{content:''; display:none;}
img{max-width:100%; height:auto;}
main#pageBody{width:auto; display:block;}
main#pageBody article{width:auto; margin-bottom:15px; padding:15px;}
#pageAside{width:auto; margin-bottom:30px;}
input,select{font-size:16px;}


/* site header
====================================================== */
.headContainer{box-shadow:0 0 7px rgba(0,0,0,.2); position:fixed; left:0; top:0; width:100%; height:65px; z-index:10000;}
.headContainer::before{height:5px; background:linear-gradient(to right, rgba(255,0,0,1) 0%,rgba(20,60,140,1) 100%); content:''; display:block; width:100vw;}
#siteHeader{width:100%; height:60px; background:#fff; position:absolute; left:0; top:5px; z-index:10001}
#siteID{width:190px; height:42px; left:15px; top:8px;}
#siteID img{width:100%; height:auto; display:block;}
#siteHeader > nav{position:relative; top:-5px; left:0; width:100vw; z-index:10010;}
#siteHeader > nav.open{background:rgba(0,0,0,.8); padding-top:65px; position:relative;}
#siteHeader nav .toggle{display:block; position:absolute; right:0; top:0; width:60px; height:65px; z-index:1002;}
#siteHeader nav .toggle::before{content:''; width:1px; height:60px; background:#ccc; position:absolute; left:0; top:5px;}
#siteHeader nav .toggle a{width:17px; height:2px; background:#000; color:#000; position:absolute; left:23px; top:26px; text-indent:-9999px; pointer-events:none;}
#siteHeader nav .toggle a::before,
#siteHeader nav .toggle a::after{width:17px; height:2px; background:#000; position:absolute; left:0; content:''; display:block;}
#siteHeader nav .toggle a::before{top:7px;}
#siteHeader nav .toggle a::after{top:15px;}
#siteHeader nav .toggle.open{}
#siteHeader nav .toggle.open::before{height:65px; background:#777; top:0px;}
#siteHeader nav .toggle.open a{left:24px; top:24px; transform:rotate(45deg); transform-origin:left top; background:#fff; width:21px;}
#siteHeader nav .toggle.open a::before{display:none;}
#siteHeader nav .toggle.open a::after{transform:rotate(90deg); transform-origin:left bottom; top:-12px; left:9px; background:#fff; width:21px;}
#mainMenu{overflow:auto; height:auto; height:calc(100vh - 65px); display:none; position:relative; background:rgba(0,0,0,.7); padding-bottom:40px;}
ul#global{display:block; height:auto;}
ul#global > li{width:auto; height:auto; border-bottom:0; border-top:1px #777 solid;}
ul#global > li#gnHome{width:auto; font-weight:bold; font-size:14px; margin-right:0;}
ul#global > li#gnHome small{display:none;}
ul#global > li#gnHome span{display:inline;}
ul#global > li.kwd{width:auto;}
ul#global > li > a{text-align:left; height:auto; color:#fff; display:block; padding:20px 15px; background:#000;}
ul#global > li > a::after{display:none; content:none;}
ul#global > li.hasChild > a::before{content:'\e90f'; font-size:12px; padding-right:0; position:absolute; top:50%; transform:scale(1); right:15px; color:#fff; margin-top:-6px;}
ul#global > li.hasChild > a.open::before{content:'\e90e';}
ul#global > li.kwd{padding:15px; border-bottom:1px #777 solid;}
ul#global > li.kwd > a{display:none;}

/*#siteHeader ul.siteFunctions{position:relative; right:auto; top:auto;; width:auto; height:auto; justify-content:space-between; padding:30px 15px; margin-bottom:0;}*/
#siteHeader ul.siteFunctions{
	position:relative;
	right:auto;
	top:auto;
	width:auto;
	height:auto;
	justify-content:center;
	padding:30px 15px;
	margin-bottom:0;
}

#siteHeader ul.siteFunctions li{margin-left:0; width:44vw; height:28vw;}
#siteHeader ul.siteFunctions li a{display:block; color:#fff; padding:0; position:relative; max-height:none; height:100%; transition:none; background:#143c8c; padding-top:7.25vw;}
#siteHeader ul.siteFunctions li a::before{font-size:24px; display:block; text-align:center; line-height:30px;}
#siteHeader ul.siteFunctions li a:hover{opacity:1;}

#siteHeader .parentalLink{display:block; position:relative; width:auto; left:auto; top:auto; right:auto; bottom:auto; padding:0 15px;}
#siteHeader ul.siteFunctions + ul{display:block; margin:0 0 65px;}
#siteHeader .parentalLink{width:100%; border:none; display:block; padding:0 15px; margin-bottom:15px; height:auto;}
#siteHeader .parentalLink a{display:block; background:#fff; padding:15px;}
#siteHeader .parentalLink a img{display:block; margin:0 auto; width:160px;}


/* drop down */
#siteHeader .ddm{background:none; width:auto; position:static; top:auto; max-height:none; height:auto; overflow:visible; left:auto; margin-left:0; display:none;}
#siteHeader .ddm.searchForm{display:block;}
#siteHeader .ddm nav{width:100%; margin:0;}
#siteHeader .ddm h1{font-size:13px; font-weight:400; border-top:1px #777 solid;}
#siteHeader .ddm h1 small{display:none;}
#siteHeader .ddm h1 a{display:block; padding:20px 15px; background:#444;}
#siteHeader .ddm h1 a::after{content:'TOP'; font-family:'Noto Sans JP', sans-serif; font-size:inherit; font-weight:700;}
#siteHeader #gnIntro .ddm nav{display:block;}
#siteHeader #gnIntro .ddm h1,#siteHeader #gnIntro .ddm dl,#siteHeader #gnIntro .ddm > div{width:auto;}
#siteHeader #gnIntro .ddm h1,
#siteHeader #gnWorks .ddm h1{display:none;}
#siteHeader #gnIntro .ddm dt{padding-top:0; font-size:13px; margin-bottom:0; border-bottom:1px #777 solid; border-top:1px #777 solid;}
#siteHeader #gnIntro .ddm dt.specialSteel,
#siteHeader #gnIntro .ddm dt.spaceStructure,
#siteHeader #gnIntro .ddm dt.absorber,
#siteHeader #gnIntro .ddm dt.bridgeMaterials{background:none;}
#siteHeader #gnIntro .ddm dt a{background:#444; display:block; padding:15px 35px; position:relative;}
#siteHeader #gnIntro .ddm dt a::before{content:'\e901'; padding-right:0; position:absolute; left:15px; top:50%; margin-top:-4px; font-size:10px; transition:transform .3s ease;}
#siteHeader #gnIntro .ddm dt.open a::before{transform:rotate(180deg);}
#siteHeader #gnIntro .ddm dd{font-weight:400; margin-bottom:0; font-size:11px; display:none;}
#siteHeader .kwd .ddm nav dd.indexLink{display:block;}
#siteHeader #gnIntro .ddm dd a{display:block; padding:10px 35px; background:#666;}
#siteHeader #gnIntro .ddm dl{margin-bottom:0;}
#siteHeader #gnIntro .ddm a{transition:none}
#siteHeader #gnIntro .ddm a:hover{opacity:1;}
#siteHeader #gnProducts{}
#siteHeader #gnProducts .ddm nav,
#siteHeader #gnRelated .ddm nav,
#siteHeader #gnWorks .ddm nav{display:block;}
#siteHeader #gnProducts .ddm nav h1,
#siteHeader #gnRelated .ddm nav h1{width:100%;}
#siteHeader #gnProducts .ddm nav ul,
#siteHeader #gnRelated .ddm nav ul,
#siteHeader #gnWorks .ddm nav ul{width:auto; display:block; border-top:1px #777 solid;}
#siteHeader #gnProducts .ddm nav ul li,
#siteHeader #gnRelated .ddm nav ul li,
#siteHeader #gnWorks .ddm nav ul li{width:auto; margin-bottom:0; font-size:14px; text-align:left; border-bottom:1px #777 solid; height:auto;}
#siteHeader #gnProducts .ddm nav ul li:last-child,
#siteHeader #gnRlated .ddm nav ul li:last-child,
#siteHeader #gnWorks .ddm nav ul li:last-child{border-bottom:0;}
#siteHeader #gnProducts .ddm nav ul li a,
#siteHeader #gnRelated .ddm nav ul li a,
#siteHeader #gnWorks .ddm nav ul li a{display:block; line-height:1; border:0; padding:20px 15px; background:#444 none; height:auto; text-indent:0;}
#siteHeader #gnProducts .ddm nav ul li a:hover{background-color:inherit;}
#siteHeader .kwd .ddm nav{width:auto}
#siteHeader .kwd .ddm nav form div{position:relative; margin-bottom:5px;}
#siteHeader .kwd .ddm nav form div input{width:100%; display:block; height:40px; padding:5px;}
#siteHeader .kwd .ddm nav form div button{width:40px; height:40px;}
#siteHeader .kwd .ddm nav form div button::before{width:40px; height:40px; line-height:40px;}
#siteHeader .kwd .ddm nav dt{display:none;}
#siteHeader .kwd .ddm nav dd a{color:#999; padding-right:5px; font-size:10px;}
#siteHeader .kwd .ddm nav dd a:hover{text-decoration:none;}
/*
#siteHeader #gnRelated .ddm nav ul li a{position:relative;}
#siteHeader #gnRelated .ddm nav ul li a::after{content:'\e916'; width:14px; height:14px; position:absolute; right:15px; top:50%; margin-top:-7px;}
#siteHeader #gnRelated .ddm nav ul li a.eng,
#siteHeader #gnRelated .ddm nav ul li a.gcn,
#siteHeader #gnRelated .ddm nav ul li a.stn{background-image:none;}
*/
#siteHeader #gnWorks .ddm nav ul li a{position:relative; height:auto;}
#siteHeader #gnWorks .ddm nav ul li a::after{}
#siteHeader #gnWorks .ddm nav ul li a.steel,
#siteHeader #gnWorks .ddm nav ul li a.bridge,
#siteHeader #gnWorks .ddm nav ul li a.isolation{background-image:none;}
#siteHeader #gnWorks .ddm nav ul li a.bridge,
#siteHeader #gnWorks .ddm nav ul li a.isolation{display:none;}

#siteHeader li.hasChild:hover .ddm,
#siteHeader li.kwd:hover .ddm{max-height:none;}
#siteHeader li#gnProducts .ddm h1,
#siteHeader li#gnRelated .ddm h1{display:none;}


/* breadcrumbs
====================================================== */
.breadcrumbs{width:auto; padding:15px; background:#f2f2f2; display:none; margin-bottom:6px;}
.breadcrumbs.btm{display:block;}
.breadcrumbs ul{}
.breadcrumbs ul li{display:inline-block; font-size:11px; padding:0 10px 0 0; color:#f00;}
.breadcrumbs ul li::after{content:'/'; padding-left:10px; color:#143c8c;}
.breadcrumbs ul li:last-child::after{content:none;}

/* site footer
====================================================== */
#siteFooter{padding:30px 30px 30px 15px;}
#siteFooter .logo{display:none;}
#siteFooter .sitemap{width:auto; display:block;}
#siteFooter .sitemap ul{display:flex; flex-direction:column; height:124px; flex-wrap:wrap; width:100%;}
#siteFooter .sitemap dl{display:none;}
#siteFooter .sitemap li{margin-bottom:0; line-height:30px; width:50%;}
#siteFooter .sitemap li a::before{content:'\e904'; font-size:8px; color:#777; padding-right:5px;}
#siteFooter .bottom{display:block; width:auto; padding-top:40px;}
#siteFooter .bottom ul{display:flex; justify-content:flex-start; width:100%; margin-bottom:30px;}
#siteFooter .bottom ul li{font-size:11px; list-style:none; color:#999; margin-left:0; padding-left:1em; margin-right:1em; position:relative;}
#siteFooter .bottom ul li::before{height:100%; top:0px;}
#siteFooter .bottom ul li:first-child{padding-left:0;}
#siteFooter .bottom ul li a{color:#999;}
#siteFooter .bottom .copyrights{font-size:12px; width:100%; line-height:1.5;}
div.pgUp{right:25px; bottom:15px;}

/* page aside & local navigation
====================================================== */
#pageAside nav{margin-bottom:30px;}
#pageAside nav dl dt{}
#pageAside nav dl dt a,
#pageAside nav dl dt span{padding:15px 15px; font-size:16px;}
#pageAside nav dl dd{margin-bottom:20px;}
#pageAside nav dl dd ul li a{padding:12px 15px;}
#pageAside nav dl dd ul li a::before{content:'\e904'; font-size:10px; margin-right:5px; color:#999;}
#pageAside nav.local dl dt{background:#eee;}
#pageAside nav.local dl dt a{padding:15px;}
#pageAside nav.regular dl dd.searchBox{padding:20px 15px 15px;}
#pageAside nav.regular dl dd.searchBox div input{height:40px;}
#pageAside nav.regular dl dd.searchBox div button{width:40px; height:40px;}
#pageAside nav.regular dl dd.searchBox div button::before{font-size:16px; width:40px; height:40px; line-height:40px;}
#pageAside nav.regular dl dd.searchBox .kwd{font-size:11px;}
#pageAside nav.regular ul.utils{padding:10px 15px;}

nav.local.head{display:block; position:fixed; left:0; top:65px; width:100%; background:#031539; z-index:10; box-shadow:0 0 10px rgba(0,0,0,.3); max-height:calc(100vh - 65px); overflow-y:auto;}
#pageAside .indexLink{display:block;}
nav.local.head a{color:#fff; text-decoration:none;}
nav.local.head dl{}
nav.local.head dl dt{height:50px; border-bottom:1px #444 solid;}
nav.local.head dl dt a{line-height:50px; padding:0 15px; position:relative; display:block;}
nav.local.head dl dt a::after{content:'\e90f'; position:absolute; right:15px; top:50%; width:12px; height:12px; font-size:12px; text-align:center; line-height:12px; margin-top:-6px;}
nav.local.head dl dt a.open::after{content:'\e90e';}
nav.local.head dl dd{display:none;}
nav.local.head dl dd a{background:#133c8c; display:block; padding:12px 15px;}
nav.local.head dl dd a::before{content:'\e904  '; font-size:10px; color:#85a2dc;}
nav.local.head dl dd a.active::before{content:'\e901  ';}
nav.local.head dl dd li{border-bottom:1px #051537 solid;}
nav.local.head dl dd div.ctg{display:none;}
nav.local.head dl dd li ul{display:none; border-top:1px #051537 solid;}
nav.local.head dl dd li ul li a{padding:10px 30px; background: #152f68;}
nav.local.head dl dd li ul li a::before{color:#fff;}
nav.local.head dl dd li ul li a.active{background:#254689;}
/* 2021 12 02 */
nav.local.head dl dd .menuBtn.toggleHead{display:none;}
nav.local.head dl dd .menuBtn a.active::before{content:'\e904  ';}
/* content internal elements
=========================================================== */
.pageHeader{padding:30px 0; border-top:4px #143c8c solid; border-bottom: 1px #000 solid; margin-bottom:30px;}
.pageHeader h1{font-size:30px;}
.pageHeader .thumb{display:none;}
.visualHeader{height:420px; margin-bottom:30px; ;padding-top:150px;}
.visualHeader h1{font-size:25px; margin-bottom:15px;}
.visualHeader h1::before{font-size:90px; margin-bottom:40px;}
.visualHeader p{font-size:16px; font-weight:700;}
#pageBody article h2{font-size:20px; padding-bottom:8px; margin-bottom:15px; border-bottom:2px #000 solid;}
#pageBody article section{margin-bottom:30px;}
#pageBody article p{font-size:14px;}
#pageBody article p.catch{line-height:1.4; font-size:16px;}
#pageBody article p.note{font-size:12px;}
#pageBody nav.index h2,
#pageBody article h2.highlight{border-bottom:2px #ddd solid;}
#pageBody nav.index h2::after,
#pageBody article h2.highlight::after{width:30vw; height:2px; position:absolute; left:0; bottom:-2px;}
#pageBody article .relatedTopics{margin:20px 0;}
#pageBody article .relatedTopics h2{padding:15px 0;}
#pageBody article h3{font-size:18px;}
#pageBody article h4{font-size:16px;}
#pageBody article .pageHeader .pageNote{font-size:11px; text-align:left; position:relative; left:auto; bottom:auto; margin:15px 0 -15px;}

/* block multi column */
#pageBody article section{margin-bottom:50px;}
#pageBody article section .block{margin:20px 0;}
#pageBody article .mc{display:block;}
#pageBody article .mc.duo .col{width:auto; margin-bottom:15px;}
#pageBody article .mc.duo .col:last-child,
#pageBody article .mc.duo .col:nth-last-child(2){margin-bottom:15px;}

/* block multi column for products templete ===================================================================================================== */
#pageBody article.products section .block.beta{padding:15px;}
#pageBody article.products .mc{display:block;}
#pageBody article.products .mc.duo .col,
#pageBody article.products .mc.trio .col{width:auto;}

#pageBody article.products .mc.trio.trio-duo{display:flex;}
#pageBody article.products .mc.trio.trio-duo .col{width:calc(50% - 10px); margin-bottom:15px;}

#pageBody article.products .mc .btn a,
#pageBody article.products .mc a.btn{display:block; margin-top:20px;}

#pageBody article h3.merit{font-size:16px; padding:5px 0 10px 0px; margin-bottom:10px;}
#pageBody article h3.merit i{font-size:10px; height:16px; line-height:16px; text-align:left; padding:0 10px; margin-top:0; border-radius:8px; display:inline-block; min-width:7em;}
#pageBody article .movieFrame iframe{width:100%; height:calc((100vw - 30px) * 9 / 16);}
#pageBody article .beta .movieFrame iframe{width:100%; height:calc((100vw - 60px) * 9 / 16);}
#pageBody article.products section .block ul.gallaryThumb {margin:0 -5px 30px;}

#pageBody article.products section p:last-child,
#pageBody article.products section .block:last-child,
#pageBody article.products section figure:last-child,
#pageBody article.products .mc.duo .col:last-child,
#pageBody article.products .mc.duo .col:nth-last-child(2){margin-bottom:20px;}

/* patrs
======================================================== */
/* list */
dl.newsList{width:auto; padding-top:0; margin:0 auto 15px; border-top:0;}
dl.newsList dt{margin-bottom:10px;}
dl.newsList dt span{font-size:10px; float:right;}
dl.newsList dd{padding-bottom:15px; margin-bottom:20px;}
dl.topicList{padding-top:15px; margin-bottom:15px;}
dl.topicList dt{margin-bottom:5px; font-size:12px;}
dl.topicList dt span{font-size:10px; padding:4px; width:90px; float:right; top:0;}
dl.topicList dd{padding-bottom:15px; margin-bottom:15px;}
dl.topicList + a.btn{float:none; width:100%; padding:10px;}
ul.pageAnchor{margin-bottom:20px; justify-content:space-between;}
ul.pageAnchor li{width:calc(50% - 10px); margin-bottom:10px; margin-right:0;}
ul.pageAnchor li a{padding:9px 0; font-size:12px;}
ul.pageAnchor li a:hover{background:#143c8c; color:#fff;}
ul.internalLink li{padding:0;}
ul.internalLink li a{display:block; padding:15px 0 15px 20px; position:relative;}
ul.internalLink li a::before{content:'\e904'; width:10px; height:10px; text-align:center; line-height:10px; position:absolute; left:10px; top:50%; margin-top:-6px; font-size:10px; color:#777; }
ul.conversion{margin-bottom:40px; display:block; width:auto;}
ul.conversion li{width:auto; height:auto; margin-bottom:15px; margin-right:0;}
ul.conversion li:nth-child(3n){margin-right:0;}
ul.conversion li a{height:100%; font-size:13px; box-shadow:none; padding:20px;}
ul.conversion li small{font-size:8px; bottom:10px;}
ul.conversion li a:hover{box-shadow:none; left:5px; top:5px;}
ul.conversion li a span::before{height:auto; font-size:12vw; line-height:1; margin-bottom:5px;}

/* table */
#pageBody article section table th,
#pageBody article section  table td{padding:6px; font-size:10px;}

#pageBody article section table.stackTable{border-bottom:1px #ddd solid;}
#pageBody article section table.stackTable th,
#pageBody article section table.stackTable td{display:block; width:100%; border-bottom:0 none;}


.ftParent{width:100%; position:relative; overflow-x:scroll; margin-bottom:30px;}
.ftParent::-webkit-scrollbar{height:10px;}
.ftParent::-webkit-scrollbar-track{background:#dddddd;}
.ftParent::-webkit-scrollbar-thumb{background:#2cc2e4;}
.ftInner{width:750px;}
#pageBody article section .ftInner table{margin-bottom:0;}

/* related */
section.related ul.btn{margin-bottom:40px; justify-content:space-between;}
section.related ul.btn li{width:calc(50% - 5px); margin:0 0 10px 0;}
section.related ul.btn li a{padding:10px 5px; height:100%; display:flex; align-content:center; flex-wrap:wrap; align-items:center; justify-content:center;}
section.related ul.btn li small{display:block; width:100%;}

/* figure and image */
#pageBody article figure{margin-bottom:20px;}
#pageBody article figcaption{padding:5px 0; font-size:12px;}

/* user interfaces */
a.btn,
.btn a,
button.btn{font-size:14px; padding:5px 10px;}

/* form objects
======================================================= */
/* select */
label.select{width:100%;}
label.select select{min-width:0; font-size:16px; width:100%;}
input{font-size:16px;}


}



/* border 20220121 da /product/base_isolation/damper_u/authentication_du/ */
#pageBody .bd-1 {border-bottom: 1px solid #ccc;}

/* list 20220126 da /product/base_isolation/nsssb/ */
#pageBody .catalog {display: flex; margin: 27px 0 0;}
#pageBody .catalog + .catalog {margin-top: 27px;}
#pageBody .catalog .col.img {/* flex-shrink: 0.5; */margin: 0 30px 0 0;width: 200px; min-width: 200px;}
#pageBody .catalog .col.img a {display: inline-block;}
#pageBody .catalog .title {font-size: 20px; font-weight: 700; color: #143c8c; line-height: 1.4;}
#pageBody .catalog small {display: block;color: #000;margin: 10px 0 0;}
#pageBody article section .catalog p:nth-child(n) {margin: 10px 0 0;}
#pageBody .catalog img {border: 1px solid #ccc}
#pageBody article .catalog a,
#pageBody .catalog a {display: inline-block;}
#pageBody .catalog a:after {display: none;}
@media screen and (max-width: 767px) {
		#pageBody .catalog {flex-flow: row wrap;}
		#pageBody .catalog .col.img {margin: 0 0 20px; width: auto; min-width: none;}
		#pageBody .catalog .col:nth-child(n) {width: 100%;}
}

/* font color blue 20220126 da /steelstructures/product/base_isolation/ns_steel_panel/ */
.fc-blue01 {
	color: #143c8c;
}

/* font font-size small 20220126 da /steelstructures/product/base_isolation/ns_steel_panel/ */
#pageBody article h2 span.fs-16{font-size:16px;}
#pageBody article h2 span.fw-normal{font-weight:normal;}

/* adjust margin 20220126 da /steelstructures/product/base_isolation/unbondedbrace/ */
#pageBody article h2 + h2.point {margin-top: 20px;}
@media screen and (max-width: 767px) {
        #pageBody article h2 + h2.point {border-top: none;margin-top: -15px;}
}

/* block 20220126 da /steelstructures/product/base_isolation/ns_steel_panel/authentication_nssp/ */
#pageBody .history {background: #f1f2f4;padding: 20px;}
#pageBody .history .title {margin-bottom: 10px}
#pageBody .history .ul {list-style: none;}
#pageBody .history .li {margin: 0 0 0 0}
@media screen and (max-width: 767px) {
		#pageBody .history {padding: 10px;}
		#pageBody .history .title {margin-bottom: 5px}
}

/* .relatedTopics 20220126 da /steelstructures/product/base_isolation/ */

#pageBody article .visualHeader + .relatedTopics {background: #f1f2f4; margin-bottom: 50px; margin-top: 50px; padding: 40px;}
@media screen and (max-width: 767px) {
		#pageBody article .visualHeader + .relatedTopics {margin-bottom: 50px;margin-top: 50px;padding: 25px 20px 5px;}
}

/* NS Steel Panel 第三者認証 20220301 da /steelstructures/product/base_isolation/ns_steel_panel/authentication_nssp/ */

#c_thumb {position: absolute;right: 0;top: 35px;z-index: 1;}

@media screen and (max-width:767px){
	#c_thumb {display:none;}
}

/* 事業紹介 20220314 da /steelstructures/about/ */

.bizIntro.col3 {display:flex; flex-wrap:wrap; justify-content:space-between;}
.bizIntro.col3 li{width:265px; height:265px; margin-bottom:32px; text-align:center; font-size:20px; font-weight:700;}
.bizIntro.col3 li a{display:flex; height:100%; position:relative; text-align:center; align-content:center; align-items:center; justify-content:center; transition:opacity .3s ease;}
.bizIntro.col3 li a span{display:block;}
.bizIntro.col3 li a span::before{width:100%;display:block;text-align:center;font-size:87.5px;/* color:#fff; */margin-bottom:10px;}
.bizIntro.col3 li a.disabled{background:#999; pointer-events:none;}

/* 製品紹介 20250425 */
.imgSetBox{
	display:block;
	overflow:hidden;
	text-align:center;
	width:min(100%,640px);
	margin:1em auto;
}

.imgSetBox > .leftBox{
	float:left;
}

.imgSetBox > .rightBox{
	float:right;
}

.imgSetBox > .fullBox{
	clear:both;
}

.imgSetBox > p+p{
	margin-top:1em;
}

@media screen and (max-width: 767px) {
	
	.imgSetBox > .leftBox,
	.imgSetBox > .rightBox{
		float:none;
	}
	.imgSetBox > p > img{
		width:100%;
		height:auto;
	}
}