@charset "utf-8";
/* Theme Name: ls */
@import url(https://use.fontawesome.com/releases/v5.5.0/css/all.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@300;500;700&display=swap');
@import url(/asset/cnt/themes/ls/css/drawer.min.css);
@import url(/asset/cnt/themes/ls/css/animate.css);
/* ==========================================================================
   Base
   ========================================================================== */
html {width:100%; font-family: 'Noto Sans JP', sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;}
body{ margin:0; padding:0; width:100%; background:#fff; font-family:'Montserrat' ,'Meiryo', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'YuGothicM', 'YuGothic', sans-serif; font-weight:400; letter-spacing:0.03em; color:#000; text-align:center; font-size: 15px; line-height:1.6;}
ol,ul,li,dt,dl,dd,p{list-style: none; padding:0; margin:0;}
table {border-collapse:collapse; border-spacing:0;font-size: 15px; line-height:1.6; margin: auto;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}blockquote, q {quotes: "" "";}
img{ border:none; vertical-align:bottom; margin:0; padding:0; max-width: 100%; height:auto;}
a,a:visited,a:active,a:hover{color:#004267; text-decoration:none; outline: 0; }a:focus { outline: thin dotted;} .ab a{ display: block;}
.cf:after {content: "."; display:block; height:0; clear:both; visibility:hidden;}.cf{ /min-height:1px; /display:inline-block;}.cBoth{clear:both;}
.t8{ font-size:8px; line-height:14px;}.t9{ font-size:9px; line-height:14px;}.t10{ font-size:10px; line-height:14px;}.t11{ font-size:11px; line-height:14px;}.t12{ font-size:12px;}.t13{ font-size:13px;}.t14{ font-size:14px;}.t15{ font-size:15px;}.t16{ font-size:16px;}.t17{ font-size:17px;}.t18{ font-size:18px;}.t20{ font-size:20px;}.t21{ font-size:21px;}.t22{ font-size:22px;}.t24{ font-size:24px;}.t26{ font-size:26px;}.t28{ font-size:28px;}.t30{ font-size:30px;}.t32{ font-size:32px;}.t34{ font-size:34px;}.t36{ font-size:36px;}.t38{ font-size:38px;}.t40{ font-size:40px;}.t42{ font-size:42px;}.t46{ font-size:46px;}.t50{ font-size:50px;}.t52{ font-size:52px;}.t54{ font-size:54px;}.t56{ font-size:56px;}
.gray{ color:#999;}.darkGray{ color:#666;}.white{color: #fff;}
.tG1,.tG2,.tG3,.tG4{font-family: 'Noto Sans JP', sans-serif;}
.tG1{font-weight:400;}.tG2{font-weight:500;}.tG3{font-weight:700;}.tG4{font-weight:900;}
.ls{letter-spacing: 0.05em;}
.tE1,.tE2,.tE3{font-family: 'Montserrat', sans-serif; line-height:1.4;}.tE1{ font-weight: 400;}.tE2{ font-weight: 500;}.tE3{ font-weight: 800;}
h1,h2,h3,h4,h5{ font-family: 'Noto Sans JP', sans-serif; margin:0; font-weight:900;}h1{ line-height: 1.4;}h2,h3,h4,h5{ line-height: 1.6;}
.alignright{float:right;margin:0 0 20px 20px;}.alignleft{float:left;margin:0 20px 20px 0;}.aligncenter{clear: both;display: block;margin-left: auto;margin-right: auto;}
.taLeft{ width: 100%; text-align:left;}.taRight{ width: 100%; text-align:right;}
input,textarea,select{color:#000; font-family: 'Noto Sans JP', sans-serif; font-size: 16px; border:1px solid #ccc;; padding:15px; margin:5px 0px; box-sizing: border-box; width: 100%; border-radius: 5px;}
input[type=checkbox]{width: auto; padding:10px; margin: 0 3px 0 0; vertical-align: middle; border:1px solid #004267;}
input[type=checkbox]:checked{background:#004267;}
.wrap{ width:1000px; margin:auto;}.wrapW{ width:1200px; margin:auto;}.wrapN{ width:800px; margin:auto;}
div,span,li,section,p{box-sizing: border-box;}
.pc{}.tb,.sp{ display:none;}
.youtube{position: relative;width: 100%; padding-top: 56.25%;}
.youtube iframe {position: absolute;top: 0; right: 0;width: 100% !important;height: 100% !important;}
ol.dot{width: auto; display: inline-block;}
ol.dot li{list-style: disc; margin: 3px 0 3px 30px; line-height: 1.3; text-align: left;}
ol.num{width: auto; display: inline-block;}
ol.num li{list-style: decimal; margin: 15px 0 15px 30px; line-height: 1.4; text-align: left;}
ol.num li p{padding-left:1em; text-indent: -1em; margin: 10px auto;}

/* ==========================================================================
   common
   ========================================================================== */
header {margin:20px auto 40px auto;}
header h1{margin-bottom: 10px;}
footer{background: #004986; padding:40px 0 15px 0; color: #fff;}
footer ul li{display: inline-block; margin: 0 10px;}
footer a,footer a:visited{color: #fff;}
footer h1{color: #fff; margin: 20px auto 15px auto;}
footer .cr{margin-top: 20px;}
#page-top{position:fixed; bottom:0; right:0;line-height:0; z-index:9999;}
#page-top a{display: block; background:#fff; color:#004986; font-size:30px; padding:20px;}

/* common */
.more_btn{margin-top: 20px;}
.more_btn a{background: #004267; color: #fff; padding: 7px 20px; letter-spacing: 0.03em; display: inline-block;}
.more_btn a:before{ content: "\f105 "; font-family: "Font Awesome 5 Free"; font-weight: 900; margin-right:5px;}
.pd{padding: 70px 0;}
.bg{background: #f3f3f3;}
.mTtl{ margin-bottom:30px;}
.mTtl h2{ line-height: 1.3 }
.mainPh{background-color: #ccc;}
.mainPh,.mainPh li,.mainPh li .wrapF{height: 700px;}
.mainPh,.mainPh li{width: 100%; background-repeat: repeat; background-position: center center; background-size:cover; background-attachment: fixed;}
.mainPh li .wrapF{display: table; margin: auto;}
.mainPh li .wrapF div{display:table-cell; vertical-align: bottom; text-align: left;}
.mainPh li .wrapF div section{ display: inline-block;  background-color: rgba(0,66,103,0.90);  width:500px; text-align: left;box-sizing: border-box;}
.mainPh li.main .wrapF div{vertical-align: middle; text-align: center;}
.mainPh li.main .wrapF div section{background: none; width:100%; text-align: center; color: #fff; }
.mainPh li.main .wrapF div section h1{ line-height: 1.3; margin-top: 30px; }
ul.li_box li{float: left; width:33.33%; padding: 20px; text-align: center;}
ul.li_box li .ph{width: 250px; height: 250px; background: #ccc; border-radius: 250px; margin: auto; border:2px solid #f6f6f6;}
ul.li_box li h2{line-height: 1.4; margin: 25px 0 15px 0; }
ul.li_box li h3{margin-bottom: 20px;}
ul.li_box.b1 li{float: none; width: 100%;}
.greeting{background-image: url(/asset/cnt/themes/ls/img/greeting.jpg); background-repeat: no-repeat; background-attachment: fixed; background-position: center center; background-size: cover;}
.greeting ul li{float: left; width: 49%;}
.greeting ul li.ph{float: right;}
.greeting ul li.txt{background-color: rgba(0,0,0,0.5); padding: 50px 30px; color: #fff;}
.company ul li{float: right; width: 48%;}
.company ul li.ph{float: left;}
.company ul li.txt table th,.company ul li.txt table td{padding: 15px; border-bottom: 1px solid #f6f6f6; text-align: left;}
.company ul li.txt table th{word-break: break-all;}
.recruit{background-image: url(/asset/cnt/themes/ls/img/recruit.jpg); background-repeat: no-repeat; background-attachment: fixed; background-position: center center; background-size: cover;}
.recruit section{display: inline-block; background-color: rgba(255,255,255,0.8); padding: 60px 80px;}
.recruit section .occupation{border: 1px solid #000; padding: 30px;}
.recruit section .occupation ol{margin-top: 10px;}
.recruit section .form table th,.recruit section .form table td{padding: 5px 10px;}
.recruit section .form table th{text-align: right;}
.recruit section .form table th span{font-weight: normal; display: inline-block; font-size: 10px; border: 1px solid #004267; color: #004267; padding: 3px 5px; margin-right: 8px;}
.recruit section .form table td{text-align: left;}
.recruit section .form table td.btn{padding-top: 10px; text-align: center;}
.recruit section .form table td.btn input{background:#004267; color: #fff; width: inherit; margin: 0 10px; padding: 10px 30px;}
.wpcf7 .wpcf7-validation-errors {color: #ff0000;background-color:none;border:none; text-align: center;}
.wpcf7 .wpcf7-mail-sent-ok {color: #004267; background-color: #fff;border: 5px solid #004267; text-align: center;}
ul.li_mov li{float: left; width: 50%; padding: 20px;}
ul.li_mov li section{text-align: left; padding: 20px; display: block;}
ul.li_mov li section h3{margin-bottom: 13px;}
ul.li_mov li section .cat{margin-top: 15px;}


/* ==========================================================================
   responsive
   ========================================================================== */
@media screen and (max-width:1400px) {
.wrapW{ width:100%;}
}
@media screen and (max-width:1200px) {
}
@media screen and (max-width:1000px) {
.wrapW,.wrap{ width:100%;}
}
@media screen and (max-width:768px) {
.pc{display:none;}.tb{ display:inline-block;}
input{-webkit-appearance: none;border-radius: 0;}
.pc{display:none;}.sp{ display:inline-block;}
.rpsTaLeft{text-align: left;}
.wrapN{ width:100%;}
.wps95{width: 95%; margin: auto;}.wps90{width: 90%; margin: auto; }
footer ul li{display:block; margin: 5px auto;}
#page-top a{font-size:20px; padding:12px;}
.mainPh,.mainPh li,.mainPh li .wrapF{height: 500px;}
.mainPh,.mainPh li{background-attachment: scroll;}
ul.li_box li{float: none; width:100%;}
.greeting ul li{float: none; width: 100%;}
.greeting ul li.ph{float: none; margin-bottom: 20px;}
.greeting ul li.ph img{width: 60%;}
.company ul li{float: none; width: 100%;}
.company ul li.ph{float: none; margin-bottom: 20px;}
.company ul li.ph img{width: 60%;}
.recruit section{padding: 40px 35px;}
.recruit section .form table th,.recruit section .form table td{display: block;}
.recruit section .form table th{text-align: left;}
ul.li_mov li{float: left; width: 100%; padding: 0 0 30px 0;}
}