@charset "UTF-8";

.pc_off {
  display: none !important;
}

html {
  font-family: 'Noto Sans JP', 'Noto Sans Japanese', '游ゴシック体', 'YuGothic', 'Yu Gothic', 'Helvetica', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;
  font-size:min(2vw,17px);
  background-color: #F0F0F0;
}

html * {
  font-weight: 600;
}

/* 共通初期化 */
body {
  position: relative;
}

a {
  color: #FF9501;
}

.wrap {
  width: 90%;
  max-width: 1000px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

.body_bg1 {
  position: absolute;
  z-index: -1;
  bottom: 33%;
  right: 0;
  width: 17.5%;
}
.body_bg2 {
  position: absolute;
  z-index: -1;
  top: 33%;
  left: 0;
  width: 17.5%;
}

.header {
  background-color: #000000;
  background-image: url('../images/header_bg.png');
  background-position: top right;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 25px 5%;
}
.header_logo {
  width: 250px;
  max-width: 25%;
  float: left;
}
.header_links {
  width: 50%;
  float: right;
  text-align: right;
  padding-top: 2vh;
}
.header_links li {
  display: inline-block;
  margin-left: 15px;
}
.header_links li img {
  height: 20px;
}

main {
}

.footer_contact {
  padding: 100px 0 50px 0;
  background-color: #F0F0F0;
}
.footer_contact .wrap {
  border: 10px solid #FF9501;
  background-color: #FFF;
  padding: 50px;
}
.footer_contact .wrap .left {
  width: 45%;
  float: left;
}
.footer_contact .wrap .left h3 {
  font-size: 2em;
  color: #FF9501;
  line-height: 1.5;
  font-weight: 800;
  margin-bottom: 25px;
}
.footer_contact .wrap .left p {
  line-height: 1.5;
  font-size: 1.25em;
  font-weight: 600;
}
.footer_contact .wrap .right {
  width: 50%;
  float: right;
}
.footer_contact .wrap .right .date {
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 15px;
}
.footer_contact .wrap .right .tel {
  display: block;
  margin-bottom: 15px;
}
.footer_contact .wrap .right .form {
  border: 5px solid #FF9501;
  font-size: 1.5em;
  display: block;
  padding: 15px;
  text-align: center;
  line-height: 1.5;
  font-weight: 600;
}
.footer_contact .wrap .right .form:hover {
  background-color: #fff08f;
}
.footer_contact_icon {
  position: absolute;
  z-index: 10;
  left: -10%;
  bottom: 50%;
  width: 25%;
}

.footer {
  position: relative;
  padding: 50px 0;
  background-color: #012851;
  color: #FFF;
}
.footer_image {
  position: absolute;
  z-index: 10;
  right: 0;
  bottom: 0;
  width: 40%;
}
.footer h3 {
  margin-bottom: 15px;
  font-size: 1.25em;
}
.footer p {
  line-height: 1.5;
}

.footer_copy {
  padding: 5px 0;
  text-align: center;
  color: #012851;
  font-weight: 600;
}

/* 共通 */
.sub_link {
  background-image: url('../images/sub_link_bg.png');
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: cover;
  color: #FFF;
  font-size: 1.75em;
  font-weight: 800;
  text-align: center;
  padding: 25px 50px 50px 50px;
}

.sub1 {
  padding: 25px 0 0 0;
}
.sub1 h2 {
  text-align: center;
}
.sub1_icon {
  position: absolute;
  right: 0;
  bottom: 15%;
  z-index: 10;
  width: 25%;
}

.sub_h3 {
  font-size: 3em;
  font-weight: 600;
  color: #012851;
  margin-bottom: 25px;
}
.sub_h3 b {
  display: inline-block;
  font-size: 0.75em;
  font-weight: 400;
  color: #C9AA6D;
  font-family: "Anton", sans-serif;
  vertical-align: baseline;
}

.sub_inbox {
  padding: 25px;
  background-color: #FFF;
  line-height: 1.5;
  position: relative;
}

.sub_table tr {
  border-bottom: solid 1px #DDD;
}
.sub_table th {
  font-weight: 600;
  padding: 15px;
  text-align: left;
  vertical-align: top;
  line-height: 1.5;
  width: 20%;
}
.sub_table td {
  padding: 15px;
  text-align: left;
  vertical-align: top;
  line-height: 1.5;
}

.sub_partition .wrap {
  margin-top: 100px;
  background-image: url('../images/partition_bg.png');
  background-position: center;
  background-repeat: repeat-x;
  text-align: center;
}

/* HOME */
.home1 h1 {
  text-align: center;
}

.home2 {
  background-image: url('../images/home/home2_bg.png');
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 66%;
  padding-top: 250px;
}
.home2a {
  text-align: right;
  margin-bottom: 50px;
}
.home2a img {
  width: 33%;
}
.home2b {
  padding-left: 50%;
  line-height: 1.5;
  margin-bottom: 50px;
}
.home2c {
  text-align: right;
  margin-bottom: 50px;
}

.home3 {
  background-image: url('../images/home/home3_bg.png');
  background-position: top 50px left;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 100px;
}
.home3 .left {
  float: left;
  width: 47.5%;
}
.home3 .right {
  float: right;
  width: 47.5%;
}
.home3b {
}
.home3c {
  padding-left: 15%;
  margin-bottom: 50px;
  line-height: 1.5;
  margin-bottom: 50px;
}
.home3d {
  text-align: right;
  margin-bottom: 50px;
}
.home3e {
  margin-bottom: 50px;
}
.home3e img {
  width: 40%;
}
.home3f li {
  margin-bottom: 100px;
  background-color: #FFF;
}
.home3f li:last-child {
  margin-bottom: 0;
}
.home3f figure {
  margin-bottom: 25px;
}
.home3f h4 {
  padding: 25px;
  padding-bottom: 0;
  margin-bottom: 0;
}
.home3f p {
  line-height: 1.5;
  font-size: 1.25em;
  padding: 25px;
}




/* 事業紹介 */
.service1 {
  margin-top: 100px;
}
.service2 {
  margin-top: 100px;
}
.service3 {
  margin-top: 100px;
}
.service4 {
  margin-top: 100px;
}
.service5 {
  margin-top: 100px;
}

.service_box {
  background-color: #FFF;
}
.service_box figure {
  margin-bottom: 25px;
}
.service_box h4 {
  padding: 25px;
  padding-bottom: 0;
  margin-bottom: 0;
}
.service_box p {
  line-height: 1.5;
  font-size: 1.25em;
  padding: 25px;
}
.service_box ul {
  padding: 0 25px 25px 25px;
}
.service_box li {
  float: left;
  width: 47.5%;
  margin-bottom: 25px;
}
.service_box li:last-child {
  margin-bottom: 0;
}
.service_box li:nth-child(2n) {
  float: right;
}
.service_box li:nth-child(2n+1) {
  clear: both;
}
.service_box li h5 {
  font-size: 1.25em;
  color: #012851;
  font-weight: 800;
  margin-top: 15px;
}


/* 会社概要 */
.aboutus1 {
  margin-top: 100px;
  padding-bottom: 100px;
}
.aboutus1 p {
  line-height: 1.5;
}
.aboutus1 figure {
  margin-top: 25px;
  text-align: right;
}
.aboutus1_icon {
  position: absolute;
  bottom: -42.5%;
  right: 0;
  z-index: 10;
  width: 33%;
}

.aboutus2 {
  margin-top: 100px;
}
.aboutus2 .sub_table p {
  line-height: 1.5;
}
.aboutus2 .sub_table p b {
  font-weight: 600;
}
.aboutus2 .sub_table .map {
  padding: 15px 0;
}

.aboutus3 {
  margin-top: -150px;
}

.news_list li {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: solid 1px #DDD;
}
.news_list h4 {
  font-size: 1.25em;
  color: #012851;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 15px;
}
.news_list .detail {
  line-height: 1.5;
  margin-bottom: 15px;
}
.news_list .date {
  text-align: right;
  font-size: 0.75em;
}
.news_more {
  text-align: right;
  font-weight: 600;
  color: #FF9501;
}

/* 採用情報 */
.recruit1 {
  margin-top: -150px;
}
.recruit1 .notice {
  margin-bottom: 50px;
  line-height: 1.5;
  font-size: 1.25em;
  font-weight: 600;
  color: #012851;
}
.recruit1a {
  position: absolute;
  z-index: 10;
  top: -200px;
  right: -75px;
  width: 33%;
}

.recruit2 {
  margin-top: 100px;
}
.recruit2a {
  position: absolute;
  z-index: 10;
  top: -125px;
  right: -75px;
  width: 33%;
}

.recruit3 {
  margin-top: 100px;
}
.recruit3a {
  position: absolute;
  z-index: 10;
  bottom: -25px;
  right: -15px;
  width: 33%;
}

/* お問い合わせ */
.contact_form {
  margin-top: 100px;
}
.contact_form .notice {
  margin-bottom: 25px;
  line-height: 1.5;
  font-size: 1.25em;
  font-weight: 600;
  color: #012851;
}
.contact_form .privacy {
  margin-top: 25px;
  border: 1px solid #DDD;
  padding: 25px;
}
.contact_form .privacy h4 {
  font-size: 1.25em;
  color: #012851;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 15px;
}
.contact_form .privacy p {
  line-height: 1.5;
  margin-bottom: 15px;
}
.contact_form .privacy_agree {
  color: #AA0000;
  font-size: 1.25em;
  font-weight: 600;
  text-align: center;
}
.contact_form .button {
  margin-top: 25px;
  text-align: center;
}
.contact_form button {
  padding: 15px 30px;
  text-align: center;
  background-color: #008CFA;
  color: #FFF;
  font-size: 1.25em;
  font-weight: 600;
}
