@charset "UTF-8";
#mv::after {/*background-color: rgba(0,0,0,.3);*/	content: "";	width: 100%;	height: 100%;	position: absolute;	top: 0;	left: 0;	z-index: 123;}
/*#top-header-wrap { position: absolute; width: 100%; height: 100vh; top: 0; left: 0; z-index: 123;
}*/
#top-contents{opacity: 0; /* ←初期値を変更。透明に。*/ animation: 2s fadeIn forwards; /* ←追加 */}@keyframes fadeIn { /* ←追加 */ from { opacity: 0; } to { opacity: 1; }}
#company{opacity: 0; /* ←初期値を変更。透明に。*/ animation: 2s fadeIn forwards; /* ←追加 */}@keyframes fadeIn { /* ←追加 */ from { opacity: 0; } to { opacity: 1; }}
#top-h1 { font-size: 400%; border-bottom: solid 4px #b2b2b2;}
.to-list { position: absolute; right: 1vw; top: 1vw; font-size: 80%;}.list-box { min-height: 12vw; overflow: auto;}.list-box li { border-bottom: dotted 1px ; margin-top: .8vw; padding-bottom: .8vw;}a.list-link { text-decoration: underline; color: #b2b2b2;}a.list-link:hover { text-decoration: none;}.date-box { background-color: #b2b2b2; padding-top: .3vw; color: ;}
.cont-photo { background-repeat: no-repeat; background-size: cover; background-position: center center; height: 50vw;}
#fadein-y { transition: .6s ease-out; transform: translateY(40px); opacity: 0; }#fadein-y.delighter.started { transform: translateY(0); opacity: 1;}#fadein-x { transition: .6s ease-out; transform: translateX(40px); opacity: 0; overflow: hidden; }#fadein-x.delighter.started { transform: translateX(0); opacity: 1; overflow: hidden; }.container {overflow: hidden;}
#fadein-y h2{width:65%;	margin: auto;}/*
#top-contents h2 { display: flex; justify-content: center; align-items: center;}
#top-contents h2::before,#top-contents h2::after { content: ""; width: 30px; height: 30px;}
#top-contents h2::before { margin: -30px 20px 0 0; border-top: 10px solid #959595; border-left: 10px solid #6a6a6a;}
#top-contents h2::after { margin: 0 0 -30px 20px; border-right: 10px solid #6a6a6a; border-bottom: 10px solid #959595;}*/
.sub-contents h3 { display: flex; justify-content: center; align-items: center;}.sub-contents img { border-radius:10px;}
.sub-contents h3::before,.sub-contents h3::after { content: ""; width: 15px; height: 15px;}
.sub-contents h3::before { margin: 0px 9px 0 0; border-top: 15px solid #959595; border-left: 15px solid #6a6a6a;}
.sub-contents h3::after { margin: 0 0 0px 9px; border-right: 15px solid #6a6a6a; border-bottom: 15px solid #959595;}
.center_box {text-align: center;}.center_box ul {display: inline-block;
text-align: left;}
.h2-jp { font-size: 60%;}
a.bnr-link { position: relative; overflow: hidden; height: 20vw; padding: 1vw;}.bnr-link::after { content: ''; position: absolute; top: 0; left: 0; background-color: rgb(255,255,255); width: 100%; height: 100%; z-index: 12; opacity: .3; transition: 0.4s ease-out;}a.bnr-link:hover::after { opacity: .6;}.bnr-bg,.bnr-bg2 { transition: transform 0.3s ease-out; position: absolute; top: 50%; left: 50%; transform: scale(1) translate(-50%, -50%);}.bnr-bg { height: 100%;}.bnr-bg2 { width: 100%;}.bnr-link:hover .bnr-bg,.bnr-link:hover .bnr-bg2 { transform: scale(1.02) translate(-50%, -50%);}.h2-banner { position: absolute; top: 60%; right: 10%; width: 90%; max-width: 50%; text-align: center; z-index: 123; font-size: 100%; transition: 0.4s ease-out;}/*.bnr-link:hover .h2-banner { top: 55%;
}*/
.bnr-ttl-jp,.bnr-ttl-en { height: 1.8vw;}.bnr-ttl-jp { background-color: #595757; color: #b2b2b2; padding-top: 0.1vw;}.bnr-ttl-en { background-color: #b2b2b2; color: #595757; padding-top: 0.4vw;}.bnr-line { content: ""; position: absolute; z-index: 123; border: solid 1px #fff; display: block; transition: 0.2s ease-out;}.vt,.vb { border-width: 0 0 0 1px; height: 19vw;}.hr,.hl { border-width: 1px 0 0 0; width: 33vw;}.vt { right: 6%; bottom: -20vw;}.bnr-link:hover .vt { right: 6%; bottom: 17%;}.vb { left: 36%; top: 20vw;}.bnr-link:hover .vb { left: 36%; top: 55%;}.hl { right: -33vw; bottom: 17%;}.bnr-link:hover .hl { right: 6%; bottom: 17%;}.hr { left: -33vw; top: 55%;}.bnr-link:hover .hr { left: 36%; top: 55%;}
#info, #office, #history { padding: 5vw;}.com-title { font-size: 180%;}
#info-text,#office-text ,#history-text { border: solid 1px rgba(#595757,.4); background-color: rgba(#595757,.07);}.info-area dl,.office-area dl,.history-area dl { border-bottom: solid 1px #fff;}.info-area-br dl{ border-bottom: solid 1px #333!important;}.office-area dl a { color: #b2b2b2}
/*top 会社概要*/
/*top 採用情報*/
#recruit { background-color:#efe2da;}
.recruit-link { transition: 0.5s ;
width: 75%!important;}
.recruit-link:hover {opacity: 0.8 ;}
/*top 採用情報*/
@charset "UTF-8";
.works-list-wrap,.ba-list-wrap { }
.works-list-wrap h2 { border-bottom: solid 1px #595757;}.w-list, .ba-list { padding-top: 2vw; padding-bottom: 2vw;}a.works-frame { color: #ffffff; text-shadow: 0 0 1px rgba(0,0,0,1);}.works-frame i { transition: 0.2s ease-in-out;}.works-frame:hover i { transform: scale(1.2);}.works-des, .ba-des { line-height: 1.7vw;}
.ba-list-inner { background-color: rgba(#595757,.07);}.before, .after { position: relative; z-index: 2;}.after { z-index: 1;}
.before:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; content: '\f101'; position: absolute; font-size: 300%; color: #b2b2b2; top: 35%; right: -2vw; z-index: 123;}
@media (min-width: 1300px){ .works-list-wrap, .ba-list-wrap { font-size: 1.1rem; }}
@media (max-width: 991px){ .before:after { font-size: 580%; right: -4vw; }}
@media (max-width: 767px){ #works-list, #ba-list { padding: 4vw 0 2vw; } .works-list-wrap ul { margin: 0; } .works-des, .ba-des { line-height: 4vw; } .w-list, .ba-list { padding-top: 3.5vw; padding-bottom: 3.5vw; } .before:after { font-size: 280%; }}@media (max-width: 575px){ .before:after { content: '\f103'; right: 45%; font-size: 400%; top: auto; bottom: -11vw; } .after { margin-top: 8vw; }}/*top 施工事例*/
@media (min-width: 1200px){ #top-header-wrap, #greeting, .list-box { font-size: 1.1rem; } .cont-photo { height: 390px; } #top-contents { font-size: 1.1rem;} } #sub-contents li{ font-size: 1rem; }}
@media (max-width: 991px){ .bnr-link::after { opacity: .6; }}
@media (max-width: 767px){ #header,#mv { height: 100vw; } /*#top-header-wrap { height: 100vw; }*/ #top-h1 { font-size: 250%; } #top-bottom-text { font-size: 130%; } #greeting { line-height: 5.3vw; } #g-header-wrap { width: 100%; } a.bnr-link { height: 55vw; } .bnr-ttl-jp, .bnr-ttl-en { height: 5vw; } .bnr-line { display: none; } .bnr-ttl-en { padding-top: 1.1vw; } .index-header::after { top: 2vw; } .to-list { top: 5.5vw; } .list-box { min-height: 30vw; } .list-box li { margin-top: 4vw; padding-bottom: 4vw; }}@media (max-width: 575px){ #greeting { line-height: 6vw; }
}