@charset "utf-8";

/* ===========================================================================
    facility
=========================================================================== */
.keyvisual { margin-bottom:0; }

/* mainvisual */
.main .mainvisual { background:url(../img/img-mainvisual.jpg) 50% 0 / cover no-repeat; position:relative; margin:0 -20px; z-index:2; }
.main .mainvisual img { display:none; width:100%; }
.main .mainvisual div { background-image:linear-gradient(-25deg, rgba(57,111,185,0.9) 70%, rgba(57,111,185,0) 70.2%, rgba(57,111,185,0) 100%); background-image:-webkit-linear-gradient(-25deg, rgba(57,111,185,0.9) 70%, rgba(57,111,185,0) 70.2%, rgba(57,111,185,0) 100%); background-image:-moz-linear-gradient(-25deg, rgba(57,111,185,0.9) 70%, rgba(57,111,185,0) 70.2%, rgba(57,111,185,0) 100%); background-image:-ms-linear-gradient(-25deg, rgba(57,111,185,0.9) 70%, rgba(57,111,185,0) 70.2%, rgba(57,111,185,0) 100%); color:#fff; padding:15px 20px; }
.main .mainvisual p { line-height:1.5; width:65%; margin:0; }
.main .mainvisual p.copy { font-size:18px; line-height:1.3; width:80%; margin:0 0 10px; }
.main .mainvisual p.copy .eng { display:inline-block; margin:0 0 5px; }

/* facility01 */
.facility01 h1 + h2 { font-size:18px; text-align:center; }
.facility01 table { border:1px solid #c5c5c5; width:100%; }
.facility01 table th,
.facility01 table td { border:1px solid #c5c5c5; vertical-align:top; padding:8px 10px; }
.facility01 table th { background:#edf4fd; text-align:center; }
.facility01 table td { background:#fff; }
.facility01 .facility-box { border:3px solid #e7e7e7; clear:both; position:relative; margin:40px 0 0; padding:10px 15px 15px; }
.facility01 .facility-box h2 { background:#487ac0; background-image:linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); background-image:-webkit-linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); background-image:-moz-linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); background-image:-ms-linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); color:#fff; font-size:18px; text-align:center; line-height:30px; position:absolute; top:-18px; left:50%; width:8em; margin-left:-4em; padding:3px 10px; }
.facility01 .facility-box .clm-r { text-align:center; margin:15px 0 0; }

/* facility02 */
.facility02 .factory-box { background:#efefef; clear:both; position:relative; margin:40px -20px 0; padding:15px 20px 20px; }
.facility02 .factory-box h2 { background:#487ac0; background-image:linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); background-image:-webkit-linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); background-image:-moz-linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); background-image:-ms-linear-gradient(-45deg, #487ac0 50%, #396fb9 50%, #396fb9 100%); color:#fff; font-size:18px; line-height:30px; position:absolute; top:-18px; left:20px; padding:3px 20px; }
.facility02 .factory-box h2::before { border-style:solid; border-width:18px 0 0 18px; border-color:transparent transparent transparent #19509b; content:""; width:0; height:0; position:absolute; top:0; right:-18px; }
.facility02 .factory-box .clm-l p img { display:block; margin:0 auto 10px; }
.facility02 .factory-box .clm-l dl { line-height:1.57; }
.facility02 .factory-box .clm-l dl dt { background:#545454; color:#fff; text-align:center; width:5em; margin:10px 0 5px; padding:2px 0; }
.facility02 .factory-box .clm-l .gmap { clear:both; padding-top:55%; margin:15px 0 0; }
.facility02 .factory-box .clm-r { text-align:center; margin:15px 0 0; }
.facility02 .factory-box .clm-r ul li { margin:10px 0 0; }


@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {
}

@media print, only screen and (max-width:639px){
/* facility01 */
.facility01 table { border:1px solid #c5c5c5; width:100%; line-height:1.4; }
.facility01 table th,
.facility01 table td { border:none; padding:0 10px; }
.facility01 table thead { display:none; }
.facility01 table td { display:block; }
.facility01 table td::before { content:attr(data-title)"："; }
.facility01 table tr td:first-child { padding-top:8px; }
.facility01 table tr td:last-child { border-bottom:1px solid #c5c5c5; padding-bottom:8px; }
.facility01 table tr:last-child td:last-child { border-bottom:none; }
}


@media screen and (min-width: 640px) {
.keyvisual { margin-bottom:0; }

/* mainvisual */
.main .mainvisual { background:none; margin:0; }
.main .mainvisual::before { background-image:linear-gradient(-25deg, rgba(57,111,185,0.9) 80%, rgba(57,111,185,0) 80.1%, rgba(57,111,185,0) 100%); background-image:-webkit-linear-gradient(-25deg, rgba(57,111,185,0.9) 80%, rgba(57,111,185,0) 80.1%, rgba(57,111,185,0) 100%); background-image:-moz-linear-gradient(-25deg, rgba(57,111,185,0.9) 80%, rgba(57,111,185,0) 80.1%, rgba(57,111,185,0) 100%); background-image:-ms-linear-gradient(-25deg, rgba(57,111,185,0.9) 80%, rgba(57,111,185,0) 80.1%, rgba(57,111,185,0) 100%); content:""; position:absolute; top:0; left:0; right:0; bottom:0; }
.main .mainvisual img { display:block; }
.main .mainvisual div { background:transparent; position:absolute; top:50%; left:5%; padding:0; transform:translate(0,-50%); }
.main .mainvisual p { font-size:1.14em; line-height:2.25; width:70%; }
.main .mainvisual p.copy { font-size:2.76em; width:632px; margin:0 0 36px; }
.main .mainvisual p.copy .eng { margin:0 0 12px; }

/* facility01 */
.facility01 { max-width:824px; margin:97px auto 0; padding:0 20px; }
.facility01 h1 + h2 { font-size:1.29em; margin:-23px 0 30px; }
.facility01 table { margin:0 0 -6px; }
.facility01 table th,
.facility01 table td { padding:6px 18px; }
.facility01 table tr td:nth-child(3),
.facility01 table tr td:nth-child(4),
.facility01 table tr td:nth-child(5) { text-align:center; }
.facility01 .facility-box { border:5px solid #e7e7e7; margin:97px 0 0; padding:34px 42px 38px 48px; }
.facility01 .facility-box h2 { font-size:1.29em; line-height:49px; top:-31px; width:254px; margin-left:-127px; padding:0; }
.facility01 .facility-box .clm-l { width:58%; margin:-20px 0 0; }
.facility01 .facility-box .clm-l p { line-height:2.14; }
.facility01 .facility-box .clm-r { text-align:right; width:39%; max-width:298px; margin:0; }

/* facility02 */
.facility02 { clear:both; margin:118px 0 0; }
.facility02 .factory-box { position:relative; margin:81px 0 0; padding:49px 0 54px; }
.facility02 .factory-box .box-inner { max-width:1110px; margin:0 auto; padding:0 20px; }
.facility02 .factory-box#akasaka { margin:58px 0 0; }
.facility02 .factory-box h2 { font-size:1.29em; text-align:center; line-height:49px; width:254px; top:-23px; left:190px; padding:0; }
.facility02 .factory-box h2::before { border-width:23px 0 0 23px; right:-23px; }
.facility02 .factory-box .clm-l { float:none; margin:-15px 0 0; }
.facility02 .factory-box .clm-l p { line-height:2.14; }
.facility02 .factory-box .clm-l p.copy { font-size:1.29em; }
.facility02 .factory-box .clm-l p img { display:inline; float:right; margin:0 16px 0 25px; }
.facility02 .factory-box .clm-l dl { margin:25px 0 0; }
.facility02 .factory-box .clm-l dl dt { clear:left; float:left; margin:18px 0 0; padding:5px 0; }
.facility02 .factory-box .clm-l dl dd { float:left; margin:18px 0 0 15px; padding:5px 0; }
.facility02 .factory-box .clm-l dl dd:last-child { margin:13px 0 0 15px; padding:0; }
.facility02 .factory-box .clm-l .gmap { padding-top:50%; margin:20px 0 0; }
.facility02 .factory-box .clm-r { clear:both; float:none; margin:40px 0 0; }
.facility02 .factory-box .clm-r ul { display:flex; flex-wrap:wrap; justify-content:space-around; margin:-33px 0 0; }
.facility02 .factory-box .clm-r ul::after { display:none; }
.facility02 .factory-box .clm-r ul li { font-size:0.86em; width:298px; margin:33px 0 0; }
}

@media print, only screen and (min-width:900px){
/* facility02 */
.facility02 .factory-box .clm-r ul li { width:24%; }
}

@media print, only screen and (min-width:1100px){
/* mainvisual */
.main .mainvisual::before { background-image:linear-gradient(-25deg, rgba(57,111,185,0.9) 50%, rgba(57,111,185,0) 50.1%, rgba(57,111,185,0) 100%); background-image:-webkit-linear-gradient(-25deg, rgba(57,111,185,0.9) 50%, rgba(57,111,185,0) 50.1%, rgba(57,111,185,0) 100%); background-image:-moz-linear-gradient(-25deg, rgba(57,111,185,0.9) 50%, rgba(57,111,185,0) 50.1%, rgba(57,111,185,0) 100%); background-image:-ms-linear-gradient(-25deg, rgba(57,111,185,0.9) 50%, rgba(57,111,185,0) 50.1%, rgba(57,111,185,0) 100%); }
.main .mainvisual p { width:395px; }
.main .mainvisual p.copy { width:632px; }

/* facility02 */
.facility02 .factory-box { padding:49px 60px 54px 190px; }
.facility02 .factory-box .box-inner { max-width:1150px; padding:0; }
.facility02 .factory-box .clm-l { float:left; width:43.48%; max-width:500px; }
.facility02 .factory-box .clm-r { clear:none; float:right; width:54.5%; margin:0; }
.facility02 .factory-box .clm-r ul { justify-content:space-between; }
.facility02 .factory-box .clm-r ul li { width:49%; max-width:298px; }
}


@media only screen and (min-width: 639px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-width: 639px) and (min-device-pixel-ratio: 2) {
}
