@charset "UTF-8";

@import url("style_reset.css");
@import url("style_common.css");
@import url("style_news.css");
@import url("style_recruit.css");
@import url("safety_management.css");
@import url("style_business.css");
@import url("style_company.css");
@import url("style_contact.css");
@import url("style_parts.css");
@import url("print.css");

/*******************************************/
/*リセット
/*******************************************/
a,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

div,
pre,
p,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
figure,
figcaption,
ul,
ol,
li {
  margin: 0;
  padding: 0;
}

* {
  box-sizing: border-box;
}

address {
  font-style: normal;
}

/*******************************************/
/*共通 ※sectionのpaddingは適宜変更
/*******************************************/

section {
  width: 100%;
  padding-bottom: 12rem;
}

section:last-of-type {
  margin-bottom: 4.6rem;
}

.inner {
  width: 95%;
  max-width: 1640px;
  margin: 0 auto 0;
}

body {
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  background: #ffffff;
  color: #000000;
  font-size: 1.87rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

.yug {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

.yum {
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.f-bold {
  font-weight: bold;
}

.f-nomal {
  font-weight: normal;
}

img {
  width: auto;
  border: 0;
  vertical-align: bottom;
  -ms-interpolation-mode: bicubic;
}

ul {
  list-style-type: none;
}

ol {
  list-style-type: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

table th,
table td {
  padding: 0;
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
}

/*リンクテキスト*/
a {
  color: #000000;
  overflow: hidden;
  text-decoration: none;
  outline: none;
  transition: 0.3s;
}

a:hover {
  opacity: 0.6;
}

a[href^="tel:"] {
  display: inline;
  text-decoration: none;
  cursor: default;
}

a[href^="tel:"]:hover {
  opacity: inherit;
}

.page-top {
  cursor: pointer;
}

/*******************************************/
/*文字サイズ
/*******************************************/

.afs8 {
  font-size: 1.07rem;
}

.afs9 {
  font-size: 1.2rem;
}

.afs10 {
  font-size: 1.33rem;
}

.afs105 {
  font-size: 1.4rem;
}

.afs11 {
  font-size: 1.47rem;
}

.afs12 {
  font-size: 1.6rem;
}

.afs13 {
  font-size: 1.73rem;
}

.afs14 {
  font-size: 1.87rem;
}

.afs15 {
  font-size: 2rem;
}

.afs16 {
  font-size: 2.13rem;
}

.afs17 {
  font-size: 2.27rem;
}

.afs18 {
  font-size: 2.4rem;
}

.afs19 {
  font-size: 2.53rem;
}

.afs20 {
  font-size: 2.67rem;
}

.afs21 {
  font-size: 2.8rem;
}

.afs22 {
  font-size: 2.93rem;
}

.afs23 {
  font-size: 3.07rem;
}

.afs24 {
  font-size: 3.2rem;
}

.afs25 {
  font-size: 3.33rem;
}

.afs26 {
  font-size: 3.47rem;
}

.afs27 {
  font-size: 3.6rem;
}

.afs28 {
  font-size: 3.73rem;
}

.afs29 {
  font-size: 3.87rem;
}

.afs30 {
  font-size: 4rem;
}

.afs31 {
  font-size: 4.13rem;
}

.afs32 {
  font-size: 4.27rem;
}

.afs33 {
  font-size: 4.4rem;
}

.afs34 {
  font-size: 4.53rem;
}

.afs35 {
  font-size: 4.67rem;
}

.afs36 {
  font-size: 4.8rem;
}

.afs37 {
  font-size: 4.93rem;
}

.afs38 {
  font-size: 5.07rem;
}

.afs39 {
  font-size: 5.2rem;
}

.afs40 {
  font-size: 5.33rem;
}

.afs41 {
  font-size: 5.47rem;
}

.afs42 {
  font-size: 5.6rem;
}

.afs43 {
  font-size: 5.73rem;
}

.afs44 {
  font-size: 5.87rem;
}

.afs45 {
  font-size: 6rem;
}

.afs46 {
  font-size: 6.13rem;
}

.afs47 {
  font-size: 6.27rem;
}

.afs48 {
  font-size: 6.4rem;
}

.afs49 {
  font-size: 6.53rem;
}

.afs50 {
  font-size: 6.67rem;
}

.afs51 {
  font-size: 6.8rem;
}

.afs52 {
  font-size: 6.93rem;
}

.afs53 {
  font-size: 7.07rem;
}

.afs54 {
  font-size: 7.2rem;
}

.afs55 {
  font-size: 7.33rem;
}

.afs56 {
  font-size: 7.47rem;
}

.afs57 {
  font-size: 7.6rem;
}

.afs58 {
  font-size: 7.73rem;
}

.afs59 {
  font-size: 7.87rem;
}

.afs60 {
  font-size: 8rem;
}

.afs61 {
  font-size: 8.13rem;
}

.afs62 {
  font-size: 8.27rem;
}

.afs63 {
  font-size: 8.4rem;
}

.afs64 {
  font-size: 8.53rem;
}

.afs65 {
  font-size: 8.67rem;
}

.afs66 {
  font-size: 8.8rem;
}

.afs67 {
  font-size: 8.93rem;
}

.afs68 {
  font-size: 9.07rem;
}

.afs69 {
  font-size: 9.2rem;
}

html {
  font-size: 62.5%;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 1680px) {
  html {
    font-size: 54.6%;
  }
}

@media screen and (max-width: 1600px) {
  html {
    font-size: 52%;
  }
}

@media screen and (max-width: 1400px) {
  html {
    font-size: 45.5%;
  }
}

@media screen and (max-width: 1280px) {
  html {
    font-size: 41.6%;
  }
}

@media screen and (max-width: 1024px) {
  html {
    font-size: 33.3%;
  }
}

/*******************************************/
/*全体テキスト
/*******************************************/

a,
p,
th,
td,
ul,
ol,
li,
dl,
dt,
dd {
  color: #000;
  font-size: 1.87rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

@media screen and (max-width: 1279px) {

  a,
  p,
  th,
  td,
  ul,
  ol,
  li,
  dl,
  dt,
  dd {
    font-size: 16px !important;
  }
}

/*******************************************/
/*h1タイトル
/*******************************************/
h1 {
  color: #000;
  font-size: 11px;
  font-weight: normal;
  text-align: right;
}

/*******************************************/
/*h2タイトル
/*******************************************/
h2 {
  margin: 0 auto;
  font-size: 4.2rem;
  font-weight: normal;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
  color: #004366;
  text-align: left;
}

/*backgroundがある場合*/
.h2-attached {
  /* width: 60%; */
  /* max-width: 220px; */
  display: inline-block;
  margin: 0 auto 6rem;
  padding: 6px 7rem;
  border-radius: 20px;
  background: #004366;
  text-align: center;
  color: #fff;
}

@media screen and (max-width: 1279px) {
  h2 {
    font-size: 24px;
  }

  .h2-attached {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  h2 {
    font-size: 20px;
    margin-bottom: 3rem;
  }
}

/*******************************************/
/*h3タイトル　※サイトによって違うので適宜変更
/*******************************************/
h3 {
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
  color: #1B2249;
  font-size: 4.27rem;
  text-align: center;
  letter-spacing: 0.1px;
}

.h3-attached {
  font-size: 2.4rem;
  color: #1B2249;
  margin: auto 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

.h3_flex {
  display: flex;
}

@media screen and (max-width: 1279px) {
  h3 {
    font-size: 28px;
  }
}

/*******************************************/
/*h4タイトル　※サイトによって色が違うので適宜変更。この元画像のサイズの色を変えること。
/*******************************************/

h4 {
  display: flex;
  padding-left: 30px;
  background: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/image244.png) no-repeat left center;
  color: #000;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 2rem;
}

@media screen and (max-width: 1279px) {
  h4 {
    font-size: 24px;
  }
}

@media screen and (max-width: 767px) {
  h4 {
    font-size: 20px;
  }
}

/*******************************************/
/*h5タイトル
/*******************************************/
h5 {
  font-size: 2.66rem;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

@media screen and (max-width: 1279px) {

  h5 {
    font-size: 22px;
  }
}

@media screen and (max-width: 767px) {

  h5 {
    font-size: 16px;
  }
}

/*******************************************/
/*h6タイトル
/*******************************************/

h6 {
  font-size: 2.66rem;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

@media screen and (max-width: 1279px) {

  h6 {
    font-size: 22px;
  }
}

@media screen and (max-width: 767px) {

  h6 {
    font-size: 16px;
  }
}

/*******************************************/
/*文字寄せ
/*******************************************/
.tac {
  text-align: center;
}

.tal {
  text-align: left;
}

.tar {
  text-align: right;
}

/*******************************************/
/*margin
/*******************************************/

.ma {
  margin: 0 auto;
}

.mb0 {
  margin-bottom: 0;
}

.mb5 {
  margin-bottom: 0.5rem;
}

.mb10 {
  margin-bottom: 1rem;
}

.mb15 {
  margin-bottom: 1.5rem;
}

.mb20 {
  margin-bottom: 2rem;
}

.mb25 {
  margin-bottom: 2.5rem;
}

.mb30 {
  margin-bottom: 3rem;
}

.mb35 {
  margin-bottom: 3.5rem;
}

.mb40 {
  margin-bottom: 4rem;
}

.mb45 {
  margin-bottom: 4.5rem;
}

.mb50 {
  margin-bottom: 5rem;
}

.mb55 {
  margin-bottom: 5.5rem;
}

.mb60 {
  margin-bottom: 6rem;
}

.mb65 {
  margin-bottom: 6.5rem;
}

.mb70 {
  margin-bottom: 7rem;
}

.mb75 {
  margin-bottom: 7.5rem;
}

.mb80 {
  margin-bottom: 8rem;
}

.mb85 {
  margin-bottom: 8.5rem;
}

.mb90 {
  margin-bottom: 9rem;
}

.mb95 {
  margin-bottom: 9.5rem;
}

.mb100 {
  margin-bottom: 10rem;
}


.mt05 {
  margin-top: 0.5rem;
}

.mt10 {
  margin-top: 1rem;
}

.mt15 {
  margin-top: 1.5rem;
}

.mt20 {
  margin-top: 2rem;
}

.mt25 {
  margin-top: 2.5rem;
}

.mt30 {
  margin-top: 3rem;
}

.mt35 {
  margin-top: 3.5rem;
}

.mt40 {
  margin-top: 4rem;
}

.mt45 {
  margin-top: 4.5rem;
}

.mt50 {
  margin-top: 5rem;
}

.mt55 {
  margin-top: 5.5rem;
}

.mt60 {
  margin-top: 6rem;
}

.mt65 {
  margin-top: 6.5rem;
}

.mt70 {
  margin-top: 7rem;
}

.mt75 {
  margin-top: 7.5rem;
}

.mt80 {
  margin-top: 8rem;
}

.mt85 {
  margin-top: 8.5rem;
}

.mt90 {
  margin-top: 9rem;
}

.mt95 {
  margin-top: 9.5rem;
}

.mt100 {
  margin-top: 10rem;
}

/*******************************************/
/*column
/*******************************************/
.column2,
.column3,
.column4,
.column5 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.column2.center,
.column3.center,
.column4.center,
.column5.center {
  align-items: center;
}

.column2.start,
.column3.start,
.column4.start,
.column5.start {
  align-items: flex-start;
}

@media screen and (max-width: 1279px) {

  .column2,
  .column3,
  .column4,
  .column5 {
    justify-content: space-around;
  }
}

.column2>figure,
.column2>li {
  width: 48%;
}

.column2>div {
  width: 50%;
}

@media screen and (max-width: 767px) {

  .column2>figure,
  .column2>div,
  .column2>li {
    width: 100%;
  }
}

.column3>figure,
.column3>div,
.column3>li {
  width: 31.7%;
}

@media screen and (max-width: 767px) {

  .column3>figure,
  .column3>div,
  .column3>li {
    width: 100%;
  }
}

.column4>figure,
.column4>div,
.column4>li {
  width: 23.2%;
}

@media screen and (max-width: 1279px) {

  .column4>figure,
  .column4>div,
  .column4>li {
    min-width: 45%;
  }
}

.column5>figure,
.column5>div,
.column5>li {
  width: 17%;
}

@media screen and (max-width: 1279px) {

  .column5>figure,
  .column5>div,
  .column5>li {
    min-width: 45%;
  }
}


/*******************************************/
/*fadein 
/*******************************************/

.fadein {
  opacity: 0;
  transform: translate(0, 100px);
  transition: all 500ms;
}

.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.fadein-later {
  opacity: 0;
  transform: translate(0, 100px);
  transition: all 500ms;
}

.fadein-later.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.fadein-box {
  opacity: 0;
  transition: all 0.5s;
}

.fadein-box.active {
  opacity: 1;
}

/*******************************************/
/*ボタン
/*******************************************/

.btn-box {
  position: relative;
  height: 6rem;
  margin: 0 auto;
  overflow: hidden;
  border: #fff solid 1px;
  line-height: 6rem;
  text-align: center;
}

.btn-bg a {
  opacity: 1;
  position: relative;
  z-index: 1;
  transition: 0.3s;
}

.btn-bg a::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transform: scaleX(0);
  width: 100%;
  height: 100%;
  background: #fff;
  content: "";
  transition: transform ease 0.3s;
  transform-origin: 100% 50%;
}

.btn-bg a:hover {
  color: #000;
}

.btn-bg a:hover::before {
  transform: scaleX(1);
  transform-origin: 0% 50%;
}

/* ボタンスライド bg*/
.toppage-btn {
  position: relative;
}

.toppage-btn>a {
  display: inline-block;
  position: relative;
  color: #fff;
  border: 1px solid #1B2249;
  z-index: 1;
  overflow: hidden;
  transition: none;
}

.toppage-btn>a:hover {
  opacity: 1;
  color: #263289;
}

.toppage-btn>a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% + 1px);
  background: #fff;
  transform: scaleX(0);
  transition: transform ease 0.5s;
  transform-origin: 100% 50%;
}

.toppage-btn>a:hover::before {
  transform: scaleX(1);
  transform-origin: 0% 50%;
}

.round_bg_blue{
  display: inline-block;
  color: #fff;
  background-color: #1B2249;
  /* border: solid 1px #1B2249; */
}

.btn_slide_bg {
  position: relative;
  overflow: hidden;
}

.btn_slide_bg::before {
  display: block;
  content: '';
  position: absolute;
  inset: 0;
  background-color: #fff;
  transition: transform 0.6s ease;
  transform: scaleX(0);
  transform-origin: right;
  border: solid 1px #fff;
  z-index: -1;
}

.btn_slide_bg:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}

.btn-style01 a:hover{
  color: #1B2249;
}

.btn-style01 a:hover::after {
    color: #1B2249;
}

/* ボタンスライド bg02*/
.toppage-btn02 {
  position: relative;
}

.toppage-btn02>a {
  display: inline-block;
  position: relative;
  color: #fff;
  border: 1px solid #fff;
  z-index: 1;
  overflow: hidden;
  transition: none;
}

.toppage-btn02>a:hover {
  opacity: 1;
  color: #fff;
}

.toppage-btn02>a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #1B2249;
  transform: scaleX(0);
  transition: transform ease 0.5s;
  transform-origin: 100% 50%;
}

.toppage-btn02>a:hover::before {
  transform: scaleX(1);
  transform-origin: 0% 50%;
}

.round_bg_blue02{
  display: inline-block;
  color: #fff;
  background-color: #1B2249;
  border: solid 1px #fff;
}

.btn_slide_bg02 {
  position: relative;
  overflow: hidden;
}

.btn_slide_bg02::before {
  display: block;
  content: '';
  position: absolute;
  inset: 0;
  background-color: #fff;
  transition: transform 0.6s ease;
  transform: scaleX(0);
  transform-origin: right;
  border: solid 1px #fff;
  z-index: -1;
}

.btn_slide_bg02:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}

.btn-style02 a:hover{
  color: #fff;
}

.btn-style02 a:hover::after {
    color: #fff;
}




/*******************************************/
/*header
/*******************************************/


#header.UpMove {
  animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}

#header.DownMove {
  animation: DownAnime 0.5s forwards;
}

@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media screen and (max-width: 767px) {

  .pos-top {
    animation: none;
    transform: translateY(0) !important;
  }
}

/*******************************************/
/*header-wrapper

firstview-boxのmargin-topとheightを同じ高さにする
/*******************************************/
.header-wrapper {
  position: fixed;
  top: 0;
  width: 100%;
  /* background-color: #fff; */
  z-index: 10000;
  padding: 0 0 10px;
  height: 117px;
}

.header-inner {
  width: 95%;
  max-width: 1640px;
  margin: 0 auto;
}

.header-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header_text{
  font-size: 1.47rem;
  text-align: right;
  letter-spacing: 0.2px;
  color: #fff;
  padding-right: 3rem;
}

@media screen and (max-width: 1279px) {
  .header-wrapper {
    height: auto;
  }
}

/* ------------------------------
 Global Navigation
------------------------------ */

/* .header-right {
  max-width: 620px;
  width: 60%;
} */

.gnavi ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.gnavi ul li {
  position: relative;
}

.gnavi ul li a {
  font-weight: bold;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.gnavi ul li::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  width: 40px;
  height: 2px;
  margin: auto;
  background-color: #fff;
  content: "";
  transition: transform 0.4s cubic-bezier(0.86, 0, 0.07, 1);
  transform: scaleX(0);
  transform-origin: bottom right;
}

.gnavi ul li:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

.gnavi ul li.on::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

@media screen and (max-width: 1279px) {
 .header-right,.header-inner h1{
    display: none;
  }
}

/*******************************************/
/*ヘッダーのlogo
/*******************************************/

.logo-text-area{
  padding-top: 8px;
  padding-left: 18px;
  padding-top: 0.4vw;
  padding-left: 0.95vw;
}

.logo-area{
  width: 26%;
  width: 465px;
  padding-left: 12px;
}

.logo-area img{
  width: 90px;
  width: 86px;
}

.logo-text-area h1{
  font-size: 37.3px;
  letter-spacing: 1px;
  letter-spacing: 0.03em;
  line-height: 1.45;
  color: #fff;
}

div.logo-text-area p{
  font-size: 18.7px;
  letter-spacing: 0.6rem;
  letter-spacing: 0.32em;
  color: #fff;
}

@media screen and (max-width: 1700px) {
.ap_header_title_outer .logo-text-area{
  padding-top: 0.4vw;
  padding-left: 0.95vw;
}

.ap_header_title_outer .logo-area img{
  width: 4.48vw;
}


.ap_header_title_outer .logo-text-area h1{
  font-size: 1.94vw !important;
  text-align: left;
}

.ap_header_title_outer .logo-text-area p {
    font-size: 0.98vw !important;
    text-align: left;
}

.footer_container div.logo-text-area p{
  font-size: 18.7px !important;
}
}

@media screen and (max-width: 767px) {
/* スマホ用ロゴスタイル */
.ap_header_title_outer .logo-text-area{
  padding-top: 0.4vw;
  padding-left: 0.95vw;
}
.ap_header_title_outer .logo-area img{
  width: 7vw;
  width: 49px;
}
.ap_header_title_outer .logo-text-area h1{
  font-size: 2.62vw !important;
  font-size: 19.5px !important;
}
.ap_header_title_outer .logo-text-area p {
    font-size: 1.35vw !important;
    font-size: 10px !important;
}
.logo_subtext{
  padding-left: 3px;
}
}

/*******************************************/
/* sp-menu */
/*******************************************/

@media screen and (max-width: 1279px) {
  .sp-menu {
    display: block;
    position: fixed;
    /* top: 40px; */
    top: 28px;
    right: 1%;
    z-index: 30000;
    width: 50px;
    height: 50px;
    cursor: pointer;
    transform: translateY(-50%);
  }

  .sp-menu span {
    display: inline-block;
    position: absolute;
    left: 14px;
    width: 25px;
    height: 2px;
    border-radius: 5px;
    background: #fff;
    transition: all 0.4s;
  }

  .sp-menu span:nth-of-type(1) {
    top: 13px;
  }

  .sp-menu span:nth-of-type(2) {
    top: 19px;
  }

  .sp-menu span:nth-of-type(3) {
    top: 25px;
  }

  .sp-menu.active {
    background-color: transparent;
  }

  .sp-menu.active span:nth-of-type(1) {
    top: 14px;
    left: 18px;
    width: 30%;
    transform: translateY(6px) rotate(-45deg);
  }

  .sp-menu.active span:nth-of-type(2) {
    opacity: 0;
  }

  .sp-menu.active span:nth-of-type(3) {
    top: 26px;
    left: 18px;
    width: 30%;
    transform: translateY(-6px) rotate(45deg);
  }
}

.sp-navi ul {
  position: fixed;
  top: 0;
  right: -70%;
  width: 70%;
  height: 100vh;
  background:rgba(27,34,73,0.9);
  color: #efefef;
  transition: 0.3s;
  z-index: 20000;
}

.sp-navi ul>li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 7rem;
  line-height: 7rem;
}

.sp-navi ul>li a {
  color: #fff;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.sp-navi ul>li:hover {
  background-color: rgba(255, 255, 255, 0.5);
  color: #333333;
  cursor: pointer;
  transition: 0.3s;
}

.sp-navi ul.open {
  padding-top: 7rem;
  position: fixed;
  right: 0;
}

.sp-navi li img{
  width: 20px;
  margin-right: 10px;
}

.sp-nav-flex{
  display: flex;
  align-items: center;
}

/*******************************************/
/* フッターの上にあるメニュー */
/*******************************************/
.fnavi {
  width: 100%;
  margin: 25px 0 0;
}

.fnavi ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

.fnavi ul li {
  display: inline-block;
  border-right: solid 1px #000;
  line-height: 2.13rem;
  letter-spacing: 0.9px;
  padding-right: 13px;
  margin-right: 13px;
}

.fnavi ul li:last-child {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}

@media screen and (max-width: 1279px) {
  .fnavi {
    display: none;
  }
}

/*******************************************/
/* フッター */
/*******************************************/
.footer-inner {
  width: 95%;
  max-width: 1640px;
  margin: 0 auto;
  padding: 2.5rem 0;
}

.ap_footer_fit{
  width: fit-content;
}

/*******************************************/
/* フッターのロゴ*/
/*ヘッダーと同じ仕様にする場合.header-leftを.footer_flexに置き換えると同じデザインになります。
/*******************************************/
.footer_container{
  display: flex;
  justify-content: center;
  margin-top: 46px;
  margin-bottom: 38px;
}

.footer_container .logo-area{
  width: auto;
  padding-right: 3rem;
}

.footer_container .logo-area h1,.footer_container .logo-area p{
  color: #000;
}

.footer_permit{
  border-left: solid 1px #000;
  padding-left: 3rem;
  margin-top: 1.4rem;
}


.footer_permit p{
  font-size: 17px;
}

.footer_flex {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_flex .logo-text {
  letter-spacing: 1.5px;
}

.footer_flex img {
  width: 35%;
  max-width: 88px;
  margin-right: 1.5rem;
}

.footer_flex .company-name {
  font-size: 3.2rem;
  font-weight: bold;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.footer_flex .company-name_eng {
  padding-left: 0.5rem;
  background: none;
  font-size: 1.87rem;
  letter-spacing: 0.7px;
}

@media screen and (max-width: 1279px) {
  .footer_flex img {
    width: 15%;
    margin-right: 3rem;
  }
}

@media screen and (max-width: 767px) {
.footer_container{
  flex-direction: column;
}

/* footer logo */
.footer_container .logo-area {
    width: auto;
    padding: 0;
    margin: 0 auto;
}

.logo-text-area {
    padding-top: 3px;
    padding-left: 10px;
}

.footer_container .logo-area img {
    width: 70px;
    width: 18.5vw;
}

.footer_container .logo-area h1{
  font-size: 30px;
  font-size: 8vw;
}

.footer_container div.logo-text-area p {
    font-size: 14.7px !important;
    font-size: 3.94vw !important;
}

.footer_permit{
  text-align: center;
  border-left: none;
  border-top: solid 1px #000;
  padding-top: 2rem;
  padding-left: 0;
  margin-top: 2.4rem;
}
}

/*******************************************/
/* フッターのアドレス・コピーライト*/
/*******************************************/

.address-box{
  margin-bottom: 3.2rem;
}

.address-box p{
  font-size: 1.87rem;
  text-align: center;
}

/*******************************************/
/*   フッター追記*/
/*******************************************/
.ap_footer_bg {
  width: 100%;
  aspect-ratio: 64 / 21;
  position: relative;
  background: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/footer_bg.jpg) no-repeat;
  background-size: cover;
}

.ap_footer_bg p{
  min-width: 270px;
  display: inline-block;
  color: #fff;
  text-align: center;
  background-color: #1B2249;
  border-radius: 999px;
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  padding: 2px 12px ;
}

.ap_footer_heading {
  font-weight: lighter;
}

.ap_footer_color_blue {
  color: #004366;
}

.ap_footer_images {
  display: flex;
}

.ap_footer_images div {
  margin-right: 2rem;
}

.ap_footer_images div img {
  width: 10rem;
}

/* 事業内容
------------------------------------------ */
/*******************************************/
/* sectionごとのbottomやbackground指定*/
/*******************************************/
.business_02{
  padding-bottom: 10rem;
}

.business_03{
  padding-bottom: 11.5rem;
}

/*******************************************/
/* 事業紹介*/
/*******************************************/

.main-business .one-business {
  margin-bottom: 2rem;
}

.main-business .one-business img {
  margin-bottom: 1rem;
}

.main-business .one-business p {
  text-align: center;
}

.business_01_content{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.business_01_content div:nth-child(1){
  width: 32.4%;
}

.business_01_content div:nth-child(2){
  width: 66.0%;
}

.business_01_content div img{
  width: 100%;
}

.business_01_midashi{
  display: flex;
  align-items: center;
}

.business_01_midashi p{
  font-size: 2.4rem;
  font-weight: bold;
  margin-left: 13px;
  margin-top: 3px;
}

.business_01_number{
  height:4rem;
  width:4rem !important;
  border-radius:50%;
  line-height:4rem;
  text-align:center;
  background-color: #004366;
  color: #fff;
}

.business_02 .ap_achievements_table th {
  background-color: #f2f2f2;
  font-weight: normal;
  font-size: 1.87rem;
}

.business_02 .ap_achievements_table th:nth-of-type(1n) {
  width: 25%;
}

.business_02 .ap_achievements_table th:nth-of-type(2n) {
  width: 30%;
}

.business_02 .ap_achievements_table th:nth-of-type(3n) {
  width: 25%;
}

.business_02 .ap_achievements_table th:nth-of-type(4n) {
  width: 20%;
}

.business_02 .sctb {
  margin-bottom: 5rem;
}

.ap_business_contact {
  width: 53rem;
  max-width: 520px;
  margin: auto;
}

.ap_business_contact_border{
  border: solid 1px #BFBFBF;
  display: flex;
  height: 9rem;
  align-items: center;
  justify-content: center;
}
.ap_top_sec1_button_business.contact.ap_com_button a {
  padding: 2.15rem 8.5rem;
}
.ap_business_komidashi{
  display: block;
  text-align: center;
  background: none;
  color: #595959;
  padding-left: 0;
}

.subsection-title {
  text-align: center;
  font-size: 2.4rem;
  color: #1B2249;
  line-height: 1.4;
}
.business_01 {
  margin-top: 10.5rem;
}
.column2 .business_01_flex {
  width: 49%;
}
.business_01_flex img{
  width: 100%;
}
.business_01_highlight_text {
  font-size: 3.73rem;
  line-height: 1.8;
}
.business_02_img img,
.business_03_img img {
  width: 100%;
}
section.business_03 {
  margin-bottom: 18.5rem !important;
}

@media screen and (max-width: 767px) {
    .column2 .business_01_flex {
      width: 100%;
      margin-top: 4rem;
    }
    .business_02_img,
    .business_03_img,
    .business_02_text,
    .business_03_text {
        margin-bottom: 4rem !important;
    }
    .business_01_highlight_text {
      font-size: 3.73rem !important;
    }
}

@media screen and (max-width: 1024px){
  .business_01_content div:nth-child(1) {
      width: 100%;
      max-width: 600px;
      margin: auto;
      text-align: center;
      margin-top: 4rem;
  }

  .business_01_content div:nth-child(2) {
    width: 100%;
    max-width: 800px;
    margin: auto;
    margin-top: 4rem;
  }

  .business_01_number{
    margin: 0 !important;
  }

  .business_02 .ap_achievements_table {
    width: 100%;
  }

  .business_02 .ap_achievements_table th:nth-of-type(1n) {
    width: 20%;
  }
  
  .business_02 .ap_achievements_table th:nth-of-type(2n) {
    width: 25%;
  }
  
  .business_02 .ap_achievements_table th:nth-of-type(3n) {
    width: 15%;
  }
  
  .business_02 .ap_achievements_table th:nth-of-type(4n) {
    width: 15%;
  }
}

@media screen and (max-width: 768px){
  .business_02 .sctb {
    margin-bottom: 4rem;
  }
}

/*******************************************/
/* 施工実績*/
/*******************************************/
.sctb {
    /* height: 66rem;
    overflow-y: scroll; */
    margin-bottom: 9rem;
}
@media screen and (max-width: 768px){
  .business_02 .sctb {
    height: unset;
    overflow-x: unset;
    overflow-y: unset;
    margin-bottom: 9rem;
  }
}
.business_02 .sctb {
  overflow-x: unset;
  overflow-y: unset;
}

.ap_achievements_table{
    width: 100%;
}

.ap_achievements_table th {
    border-top: solid 1px #BFBFBF;
    border-bottom: solid 1px #BFBFBF;
    padding: 0.8rem 1rem 0.8rem 3rem;
    font-size: 2.13rem;
}

.ap_achievements_table td{
    border-top: solid 1px #BFBFBF;
    border-bottom: solid 1px #BFBFBF;
    padding: 0.9rem 1rem 0.9rem 3rem;
}

.ap_achievements_table th:nth-of-type(1n){
    width: 42.5%;
}

.ap_achievements_table th:nth-of-type(2n){
    width: 32%;
}
.ap_achievements_table th:nth-of-type(3n){
   width: 25.5%; 
}
.ap_achievements_table th{
    font-weight: bold;
}
@media screen and (max-width: 768px){
  .business_02 .sctb {
    height: unset;
    overflow-x: unset;
    overflow-y: unset;
    margin-bottom: 9rem;
  }
  .business_02 .ap_achievements_table{
    min-width: unset;
  }
  .ap_achievements_table th,
  .ap_achievements_table td{
    width: 30%;
    padding: 1rem;
  }
  .ap_achievements_table .td3{
    width: 10%;
    padding: 1rem 1rem 1rem 0;
  }
  .ap_achievements_table .th{
    padding: 1rem 0 1rem 1rem;
  }
}

/* 企業情報
------------------------------------------ */
/*******************************************/
/*社長挨拶
/*******************************************/
.greeting-box {
  display: flex;
  width: 100%;
  margin: 0 auto -2.5rem;
}

@media screen and (max-width: 1279px) {
  .greeting-box {
    display: block;
  }
}

.greeting-box .greeting-text {
  width: 86%;
  max-width: 130rem;
  padding-right: 5rem;
}

@media screen and (max-width: 1279px) {
  .greeting-box .greeting-text {
    width: 100%;
    max-width: 100%;
    padding-right: 0rem;
  }
}

.greeting-box .greeting-img {
  width: 14%;
}

.greeting-img{
  margin-left: 5rem;
}

@media screen and (max-width: 1279px) {
  .greeting-box .greeting-img {
    width: 100%;
    margin: 0 auto;
  }

  .greeting-box .greeting-img p {
    text-align: center;
  }

  .greeting-img{
    margin-left: 0rem;
  }
}

/*******************************************/
/*経営理念
/*******************************************/
.ap_company_text_main{
  color: #004366;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.ap_company_color{
  color: #004366;
}

@media screen and (max-width: 767px) {
  .ap_company_keiei_box>div{
    margin-bottom: 4rem;
  }
  }

/*******************************************/
/*基本方針
/*******************************************/
.ap_company_line-height{
  line-height: 4rem;
}

/*******************************************/
/*会社概要
/*******************************************/
.overview-story.column2>div {
    width: 49.444444%;
}

.overview-list th {
    border-bottom: 1px solid #bfbfbf;
    padding: 0.9rem 0rem 0.9rem 3rem;
    white-space: nowrap;
}
.overview-list td {
    border-bottom: 1px solid #bfbfbf;
    padding: 0.9rem 1rem 0.9rem 7rem;
}

/*******************************************/
/*沿革
/*******************************************/
.company_02 {
  padding-bottom: 7.5rem;
}
.column2 .company_02_flex {
  width: 48.8%;
}
.company_02_table th{
  border-bottom: 1px solid #bfbfbf;
  padding: 1.1rem 1rem; 
  white-space: nowrap;
  vertical-align: top;
  font-size: 1.73rem;
  width: 21%;
  line-height: 1.6;
}
.company_02_table td {
  border-bottom: 1px solid #bfbfbf;
  padding: 1.1rem 1rem 1.1rem 0;
  font-size: 1.73rem;
  vertical-align: top;
  width: 79%;
  line-height: 1.6;
}
.company_02_table p{
  font-size: 1.73rem;
}
.company_02_table {
  width: 100%;
  border-top: solid 1px #BFBFBF;
}

.ap_company_line_height{
  line-height: 3rem;
}

.ap_country_sharyou{
  line-height: 2.33rem;
}

.ap_company_keiei{
 width: 100%;
}
@media screen and (max-width: 1279px){
  .ap_country_sharyou {
    line-height: inherit;
}
.ap_company_line_height {
  line-height: inherit;
}
}
@media screen and (max-width: 767px) {
.overview-story.column2{
    display: block;
    }
.overview-story.column2>div{
    width: 100%!Important;
    }
.ap_country_sharyou{
  line-height: inherit;
}
.ap_company_line_height{
  line-height: inherit;
}

}

/*******************************************/
/*アクセス
/*******************************************/

.map-box {
  position: relative;
  width: 100%;
  padding-top: 30.6%;
  margin-top: 3rem;
}

.map-box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.access-box{
  margin-bottom: 8rem;
  margin-top: 4.9rem;
}

@media screen and (max-width: 1279px) {

  .access-box{
    margin-bottom: 0rem;
  }
  .access-box>div{
    margin-bottom: 7rem;
  }
}

.company_01 {
  padding-bottom: 9.4rem;
}
.company_01_highlight_text {
  font-size: 3.73rem;
  color: #1B2249;
}
.company_01_president_name {
  font-size: 3.07rem;
  letter-spacing: 2px;
}
.company_01_text,
.company_01_president {
  font-size: 2.13rem;
}
section.company_03 {
  margin-bottom: 2rem !important;
}
@media screen and (max-width: 1279px) {
    .company_03 .map-box {
        padding-top: 50%;
    }
}
@media screen and (max-width: 767px) {
  .column2 .company_02_flex {
    width: 100%;
  }
  .company_02_table_02 {
    margin-top: 4rem;
  }
  .company_01_highlight_text {
    font-size: 3.73rem !important;
  }
}

/* --------------------------------------
            採用情報ページ
-----------------------------------------*/
.syain {
  overflow: hidden;
}

@media screen and (max-width: 767px){
  .ap_recruit_sec5_text{
    text-align: left;
  }
  .ap_recruit_sec5_text_red{
    text-align: left;
  }
}

/*******************************************/
/* 採用のお問い合わせフォーム*/
/*******************************************/
.tbl_form_box {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

.tbl_form_box dl:nth-of-type(1) {
  border-top: solid 1px #c4c4c4;
}

.tbl_form_box dl {
  display: flex;
  align-items: center;
  padding: 0.9rem 1.6rem;
  border-bottom: solid 1px #c4c4c4;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .tbl_form_box dl {
    display: block;
  }
}

.tbl_form_box dl.last {
  margin-bottom: 2em;
}

.tbl_form_box dt {
  width: 30%;
  padding-right: 5px;
  padding-left: 40px;
  background: none;
  font-size: 1.7rem;
  font-weight: normal;
}

.tbl_form_box dd {
  width: 70%;
  padding: 0px 4px;
}

@media screen and (max-width: 767px) {
  .tbl_form_box dt {
    width: 100%;
    padding-left: 0;
    padding-bottom: 1em;
    font-weight: bold;
  }

  .tbl_form_box dd {
    width: 100%;
    margin-left: 0;
    padding-bottom: 1em;
  }

}

.tbl_form_box input,
.tbl_form_box textarea {
  width: 97.5%;
  background: none;
  border: solid 1px #D9D9D9;
  padding: 4px;
  font-size: 1.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

/*年月日のフォーム*/
.tbl_form_box .wid-s {
  width: 60px;
}

.tbl_form_box .wid-m {
  width: 120px;
}

/*横並び*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

/*ラジオ*/
.wpcf7-radio span.wpcf7-list-item {
  display: block;
  margin-left: 1rem;
}

.box-inb .wpcf7-radio span.wpcf7-list-item {
  display: inline-block;
}

.box-inb .wpcf7-radio span.wpcf7-list-item+.wpcf7-list-item {
  margin-left: 2em;
}

.flex-dd .wpcf7-form-control.wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 736px) {
  .flex-dd .wpcf7-form-control.wpcf7-radio {
    display: block;
  }
}

.flex-dd .wpcf7-list-item {
  margin-right: 28px;
}

span.wpcf7-list-item input {
  width: auto;
}

.wpcf7-checkbox .wpcf7-list-item.first {
  margin-left: 0;
}

.radio .wpcf7-list-item.first {
  margin-bottom: 10px;
}

.txt_req::after {
  content: "(必須)";
  display: inline-block;
  margin-left: 5px;
  color: #E71300;
}


.form_submit2 {
  width: 250px;
  margin: 0 auto;
}

.form_submit2 input[type=submit] {
  display: inline-block;
  width: 250px;
  background: #FFBF1F;
  border: none;
  border-radius: 0;
  color: #000;
  font-size: 17px;
  text-align: center;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .form_submit2 input[type=submit] {
    margin-left: auto;
  }

  .wpcf7 .ajax-loader {
    display: block;
    margin: 0 auto;
  }
}

.hr-gry {
  height: 0;
  margin: 0 0 2em;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #D9D9D9;
}

ul.list-non-mark {
  list-style: none;
}

ul.list-non-mark li {
  margin-bottom: 1.5em;
}

dl.privacy {
  margin: 0;
  padding: 0;
}

dl.privacy dt {
  counter-increment: title;
  font-weight: bold;
}

dl.privacy dt::before {
  content: counter(title) "．";
}

dl.privacy dd {
  margin: 0 0 30px 25px;
}

.box-inlbox {
  display: inline-block;
  text-align: left;
}

.head-text {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}

.inhead-text {
  font-size: 2.4rem;
}

.box-bor-gry-in p,
.box-bor-gry-in li {
  font-size: 1.6rem;
}

.box-bor-gry-in2 {
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.1;
}

.box-bor-gry2 p {
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.1;
}

.privacy-check-box {
  margin-bottom: 10px;
  padding: 30px 10px;
  border: solid 1px #d9d9d9;
}

.privacy-check-box:nth-last-of-type(2) {
  margin-bottom: 40px;
}

/*----------------------------
        募集要項 
  ------------------------------*/
/* 募集要項：タブ */
.ap_recruit_sec6_tab#job-select {
  border-bottom: 5px solid #004366;
}

.ap_recruit_sec6_tab#job-select li {
  background: #D9D9D9;
  padding: 1rem 0.5rem 0.5rem;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  border-top: none;
  border-bottom: none;
  border-radius: 0;
  height: auto;
}

.ap_recruit_sec6_tab#job-select li:first-child,
.ap_recruit_sec6_tab#job-select li.active {
  background: #004366;
  color: #fff;
}

.ap_recruit_sec6_tab#job-select li:first-child.nonactive {
  background: #D9D9D9;
  color: #000;
}

/* 募集要項：コンテンツ */
.ap_recruit_sec6_contents .info-cnt01,
.ap_recruit_sec6_contents .info-cnt02,
.ap_recruit_sec6_contents .info-cnt03,
.ap_recruit_sec6_contents .info-cnt04,
.ap_recruit_sec6_contents .info-cnt05,
.ap_recruit_sec6_contents .info-cnt06 {
  display: none;
}

.ap_recruit_sec6_contents table {
  width: 100%;
}

.ap_recruit_sec6_contents tr:first-child {
  border-top: solid 1px #BFBFBF;
}

.ap_recruit_sec6_contents tr {
  border-bottom: solid 1px #BFBFBF;
}

.ap_recruit_sec6_contents th,
.ap_recruit_sec6_contents td {
  font-size: 1.73rem;
  padding: 1.1rem;
}

.ap_recruit_sec6_contents th {
  padding-left: 3rem;
  padding-right: 2.5rem;
  vertical-align: top;
}

.ap_recruit_sec6_contents h4 {
  color: #000;
}

@media only screen and (max-width: 767px) {

  .ap_recruit_sec6_contents th,
  .ap_recruit_sec6_contents td {
    width: 100%;
    display: block;
  }

  .ap_recruit_sec6_contents .column2>div {
    width: 100%;
  }
}

/*******************************************/
/* 募集要項*/
/*******************************************/

#job-parent {
  width: 100%;
  margin: 0 auto 35px;
}

@media only screen and (max-width: 599px) {
  #job-parent {
    margin-bottom: 40px;
  }
}

.job-box {
  width: 100%;
  margin: -1px auto 0;
  background: rgba(255, 255, 255, 0.5);
  overflow-y: auto;
}

.job-box .info-cnt01,
.job-box .info-cnt02,
.job-box .info-cnt03 {
  display: none;
}

.job-select-parent {
  position: relative;
  width: 98%;
  margin: 0 auto;
  z-index: 5;
}

#job-select {
  display: flex;
}

#job-select li {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
  border-right: none;
  border-radius: 8px 8px 0 0;
  background: #D9D9D9;
  cursor: pointer;
  font-weight: bold;
}

#job-select li p {
  width: 100%;
  line-height: 1.3;
  text-align: center;
  font-family: "游明朝", "Yu Mincho", "HGP明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "HiraMinProN-W6", serif;
}

#job-select li:nth-of-type(1) {
  color: #000;
  border-bottom: none;
  background: #fff;
  z-index: 3;
}

#job-select {
  width: 100%;
}

#job-select li.active {
  background: #fff;
  z-index: 5;
}

#job-select li.nonactive {
  background: #D9D9D9;
}

.job-enclose {
  width: 100%;
  margin: 0 auto;
  padding: 4rem 1rem 1rem;
}

@media screen and (max-width: 767px) {
  .job-description {
    margin-bottom: 4rem;
  }
}

/* -------------------------- */
/* ここまでテンプレート         */
/* -------------------------- */
/* 人材育成方針・目標 */
.ap_recruit_sec2 .num {
  background: #004366;
  color: #fff;
  border-radius: 50%;
  margin-right: 2rem;
  width: 4rem;
  height: 4rem;
  line-height: 4rem;
  text-align: center;
}
.ap_recruit_sec2 .num p {
  width: 4rem;
  height: 4rem;
  color: #fff;
}
.ap_recruit_sec2_text{
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .ap_recruit_sec2 .num {
    width: 6rem;
    height: 6rem;
    line-height: 6rem;
  }
  .ap_recruit_sec2 .num p {
    width: 6rem;
    height: 6rem;
  }
}

/* 男性社員の育児休業取得促進 */
.ap_recruit_sec3_contents {
  display: flex;
  flex-wrap: wrap;
}

.ap_recruit_sec3_text {
  width: 77%;
  padding-right: 4.5rem;
}

.ap_recruit_sec3_img {
  width: 23%;
}

.ap_recruit_sec3_img img {
  width: 100%;
}

.ap_recruit_sec3_link {
  color: #C00000;
}

.contact_02.recruit_line_area{
  margin-top: 3.2rem;
}


@media screen and (max-width: 767px) {

  .ap_recruit_sec3_text,
  .ap_recruit_sec3_img {
    width: 100%;
    padding-right: 0;
  }
}
.ap_recruit_sec4_contents {
  display: flex;
  flex-wrap: wrap;
}

.ap_recruit_sec4_img {
  width: 32%;
}

.ap_recruit_sec4_img img {
  width: 100%;
}

.ap_recruit_sec4_text_wrap {
  width: 68%;
  padding-left: 3rem;
}

.ap_recruit_sec4_text {
  display: flex;
}

.ap_recruit_sec4_text_Q {
  color: #fff;
  background: #BD2B3C;
  width: 4rem;
  min-width: 4rem;
  height: 4rem;
  line-height: 4rem;
  text-align: center;
  border-radius: 50%;
  margin-right: 3rem;
}

.ap_recruit_sec4_text_title {
  color: #004366;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .ap_recruit_sec4_text_wrap,
  .ap_recruit_sec4_img {
    width: 100%;
    padding-left: 0;
  }
}

.ap_recruit_sec5_title {
  font-weight: bold;
}

.ap_recruit_sec5_video_outer {
  background-image: url("img/img4005.jpg");
  background-size: cover;
  background-position: center;
  padding: 7rem 0;
}

.ap_recruit_sec5_video_inner {
  max-width: 800px;
  margin: auto;
  width: 95%;
}

.ap_recruit_sec5_video {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
}

.ap_recruit_sec5_video iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

/* 応募方法*/
.ap_recruit_sec7_contents {
  display: flex;
  justify-content: center;
}

.ap_recruit_sec7_contact {
  width: 45%;
  margin-right: 4.5rem;
  max-width: 520px
}

.ap_recruit_sec7_contact_tel,
.ap_recruit_sec7_contact_tel a,
.ap_recruit_sec7_contact_acc {
  color: #004366;
}

.ap_recruit_sec7_contact_button.ap_com_button a {
  padding: 2rem 9.5rem;
}

.ap_recruit_sec7_site {
  width: 50%;
  max-width: 520px;
  margin-left: 4.5rem;
}

.ap_recruit_sec7_site img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .ap_recruit_sec7_contents {
    flex-wrap: wrap;
  }

  .ap_recruit_sec7_site,
  .ap_recruit_sec7_contact {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .ap_recruit_sec7_contact {
    margin-bottom: 4rem;
  }
}

.ap_recruit_sec1 {
  margin-top: 11rem;
}
.ap_recruit_sec1_highlight_text {
  font-size: 2.67rem;
  color: #ED7D31;
}
.ap_recruit_sec2 .ap_recruit_sec2_contents > div,
.ap_recruit_sec3 .ap_recruit_sec3_contents > div {
  width: 48.8%;
}
.ap_recruit_sec2_right_text {
  border-top: 1px solid #BFBFBF;
  border-bottom: 1px solid #BFBFBF;
  padding: 1rem;
}
.ap_recruit_sec3 {
  padding-bottom: 7.5rem;
}
.ap_recruit_sec3_table {
  border-top: 1px solid #BFBFBF;
  width: 91%;
}
.ap_recruit_sec3_table th,
.ap_recruit_sec3_table td {
  border-bottom: 1px solid #BFBFBF;
  padding: 1.1rem 1.6rem;
  text-align: left;
  vertical-align: top;
  font-size: 1.73rem;
}

.ap_recruit_sec3_table td {
  width: 79%;
}
.ap_recruit_sec3_info img {
  margin: 0 auto;
  display: block;
}
.ap_recruit_sec3_info {
  text-align: center;
}
.ap_recruit_sec3_info a {
  display: inline-block;
}
.ap_recruit_sec3_info p {
  color: #1B2249;
  font-size: 1.73rem;
}
.ap_recruit_sec3 img {
  max-width: 760px;
  width: 100%;
}
.ap_recruit_sec4_bg {
  background: #39C936;
  padding-top: 1.3rem;
}
.ap_recruit_sec4_flex {
    max-width: 980px;
    margin: 0 auto;
    justify-content: unset;
}
.ap_recruit_sec4 .ap_recruit_sec4_img_block {
  width: 17.1%;
  margin-left: auto;
  margin-right: 26px;
}
.ap_recruit_sec4 .ap_recruit_sec4_img_block img {
  width: 100%;
}
.ap_recruit_sec4 .ap_recruit_sec4_text_block {
    width: 69%;
    padding-top: .8rem;
}
.ap_recruit_sec4_highlight_text {
  color: #FFFF00;
  font-size: 4.8rem;
  font-weight: bold;
}
.ap_recruit_sec4_text {
  color: #fff;
  font-size: 1.73rem;
  font-weight: bold;
}
.ap_recruit_sec4_btn {
  text-align: center;
}

.address_dd_1 p {
  display: flex;
  align-items: center;
  margin-left: 1rem;
  gap: .9rem;
}
.address_dd_1 input {
  width: 23%;
  padding: 1px;
}
.ap_recruit_sec5_text {
  line-height: 2.1;
} 
.ap_recruit_sec5_text_red {
  font-size: 1.6rem;
  color: #FF0000;
  line-height: 2.3;
}
.tbl_form_box p{
  font-size: 1.73rem;
}
.birthday_dd {
  display: flex;
}
.birthday_dd_1,
.birthday_dd_2,
.birthday_dd_3,
.age_dd {
  width: 15%;
}
.birthday_dd input{
  width: 66.5%;
  margin-right: .7rem;
}
.age_dd {
  margin-left: 9.5rem;
}
.wpcf7-form-control.wpcf7-radio {
  display: flex;
}
.job_contact_dd .wpcf7-radio span.wpcf7-list-item {
  margin-right: 2.9rem;
}
.gender_type_dd .wpcf7-radio span.wpcf7-list-item {
  margin-right: 1.6rem;
}
.tbl_form_box .notes_dl {
  padding-bottom: .1rem;
}
.notes_dd textarea {
  height: 10.5rem;
}
.job_status_dd .wpcf7-radio span.wpcf7-list-item{
  margin-right: 1.5rem;
}
.job_document_dd input{
  padding: .7rem;
  font-size: 1.47rem;
}
.tbl_form_box .job_document_file_msg_dl {
  border-bottom: none;
}
.job_document_file_msg_dd p {
  font-size: 1.6rem;
  color: #C00000;
}
.tbl_form_box .privacy_check_title {
  font-size: 2.4rem;
  font-weight: bold;
}
.privacy_check_contents {
  border: 1px solid #d9d9d9;
  width: 92%;
  margin: 0 auto;
  padding-bottom: 1rem;
}
.privacy_check_text {
  overflow-y: scroll;
  height: 160px;
  padding: 1.8rem 4.7rem;
}
.tbl_form_box .privacy_check_text p {
  font-size: 1.47rem;
}
.tbl_form_box .privacy_check_address {
  border-top: 1px solid #BFBFBF;
  margin: 1.9rem 4.7rem;
  padding-top: 2.5rem;
}
.tbl_form_box .privacy_check_address p {
  font-size: 1.6rem;
}
.privacy_check_address_title {
  font-weight: bold;
}
.privacy_check_agreement {
  margin-top: 2rem;
}
.privacy_check_agreement p{
  text-align: center;
  font-size: 1.6rem;
}
.privacy_check_btn input{
  width: 26.6%;
  font-size: 1.87rem;
  height: 52px;
  color: #000;
  border: solid 1px #000;
  cursor: pointer;
}
.ap_recruit_sec5 {
  margin-bottom: 10.5rem;
}
@media screen and (max-width: 767px) {
  .ap_recruit_sec1_highlight_text {
    font-size: 3.4rem !important;
  }
  .ap_recruit_sec2 .ap_recruit_sec2_contents > div,
  .ap_recruit_sec3 .ap_recruit_sec3_contents > div {
    width: 100%;
  }
  .ap_recruit_sec2 .ap_recruit_sec2_contents div:nth-child(2),
  .ap_recruit_sec3 .ap_recruit_sec3_contents > div:nth-child(2) {
    margin-top: 4rem;
  }
  .ap_recruit_sec3_table {
    width: 100%;
  }
  .ap_recruit_sec3_table tr:first-child {
    border-top: solid 1px #BFBFBF;
  }
  .ap_recruit_sec3_table tr {
    border-bottom: 1px solid #BFBFBF;
  }
  .ap_recruit_sec3_table th,
  .ap_recruit_sec3_table td {
    width: 100%;
    display: block;
    border-bottom: none;
  }
  .ap_recruit_sec3_table td {
    width: 100%;
  }
  .ap_recruit_sec4 .ap_recruit_sec4_text_block {
    width: 95%;
    padding: 2rem 0;
  }
  .ap_recruit_sec4 .ap_recruit_sec4_img_block {
      width: 17%;
      margin: 0;
  }
  .ap_recruit_sec4_highlight_text {
    font-size: 3.8rem !important;
    text-align: center;
  }
  .tbl_form_box .wpcf7-list-item label {
    display: flex;
    align-items: center;
  }
  .tbl_form_box input[type="radio"] {
    margin: 0 5px 0 0;
  }
  .tbl_form_box input {
    height: 33px;
    font-size: 16px;
  }
  .job_document_dd input {
    font-size: 14px;
  }
  .privacy_check_btn input {
    font-size: 15px;
  }
  .address_dd_1 {
    margin-bottom: 8px;
  }
  .birthday_dd_1,
  .birthday_dd_2,
  .birthday_dd_3,
  .age_dd {
    width: 100%;
  }
  .age_dd {
    margin-left: 0;
  }
  .notes_dd textarea {
  font-size: 16px;
  }
  
}
@media screen and (max-width: 599px) {
  .ap_recruit_sec4 .ap_recruit_sec4_img_block {
      width: 23%;
  }
  .ap_recruit_sec3_info p {
      font-size: 1.73rem !important;
  }
  .tbl_form_box .privacy_check_address p {
      font-size: 2.6rem !important;
}

}

/*******************************************/
/*お問い合わせ
/*******************************************/
.contact_01 {
  margin-top: 10.5rem !important;
}

.contact_02{
  margin-top: 1.2rem;
}

.contact_03{
  margin-top: 5rem;
}

.contact-tel{
  font-size: 4.27rem;
  color: #1B2249;
}

p.contact-time{
    font-size: 1.6rem;
    padding-top: 3px;
}

.contact_wrapper{
  max-width: 980px;
  margin: 0 auto;
}

.tel-box{
  display: flex;
  align-items: center;
  border-top: solid 1px #BFBFBF;
  border-bottom: solid 1px #BFBFBF;
  padding: 30px 18px 40px;
  margin-top: 4.5rem;
}

.tel-box div{
  width: 50%;
}

.tel-box-left p{
  font-size: 2.4rem;
}

.tel-box-right{
  padding-left: 48px;
  letter-spacing: 0.03em;
}

.tel-box-right a{
  line-height: 1.2;
  font-size: 4.27rem;
}

.contact_line_container{
  background-color: #39C936;
}

.line_text_area{
  display: flex;
  margin-top: 3.8rem;
}

.line_text_area img{
  width: 165px;
  padding-top: 1rem;
}

.line_text_area p{
  color: #fff;
}

.line_text_area > p{
  width: 29%;
  text-align: right;
  padding: 0 10px;
}

.line_text_area > div{
  width: 71%;
  padding-top: 1.6rem;
  padding-left: 3rem;
}

p.contact_line_title{
  font-size: 4.8rem;
  font-weight: bold;
  color: #ff0;
}


.contact_line_text{
  font-size: 1.73rem;
  font-weight: bold;
}

.line_friends_btn{
  text-align: center;
  padding-top: 2rem;
}

.line_friends_btn a{
  display: inline-block;
}

@media only screen and (max-width: 980px) {
    .contact_wrapper {
        width: 95%;
    }
}

@media screen and (max-width: 767px) {
  .tel-box {
    flex-wrap: wrap;
    text-align: center;
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .tel-box div {
    width: 100%;
  }
  .tel-box-right {
    margin-top: 26px;
    padding-left: 0;
  }
  .tel-box-right a {
    font-size: 22px !important;
}
  .line_text_area {
    flex-wrap: wrap;
  }
  .line_text_area > p {
    width: 100%;
    text-align: center;
  }
  .line_text_area > div {
    width: 100%;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 2rem;
  }
  p.contact_line_title {
    font-size: 3.8rem !important;
    text-align: center;
  }
  .line_text_area img {
    width: 120px;
  }
}

/*******************************************/
/*お問い合わせフォーム
/*******************************************/
.contact_mail_text{
  margin-top: 4.6rem;
}

.mailform {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

.common-style dl {
  display: flex;
  justify-content: space-between;
  border-bottom: solid 1px #d9d9d9;
  margin: 0;
}

.common-style dl:first-of-type {
  border-top: solid 1px #d9d9d9;
}

.common-style dt {
    width: 24%;
    font-weight: normal;
    font-size: 1.47rem;
    font-family: 'メイリオ', 'Meiryo', sans-serif;
    display: flex;
    align-items: center;
    padding: 0 0 0 36px;
}

.common-style dd {
    width: 73%;
    padding: 9px 10px;
}

.common-style .common-style-file {
  border-bottom: none;
}

.contact-check{
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .common-style dt,
  .common-style dd {
    padding-left: 0;
  }
}

@media screen and (max-width: 599px) {
  .common-style dl {
    display: block;
  }
  .common-style dt,
  .common-style dd {
    width: 100%;
  }
}

/*テキストエリア*/
.common-style dd input, .common-style dd textarea {
    width: 93.5%;
    padding: 4px;
    border: solid 1px #d9d9d9;
    font-size: 1.4rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

.common-style input[type=submit] {
    max-width: 50px;
    cursor: pointer;
    background-color: #cccccc;
    border: solid 1px #808080;
    color: #000;
    width: 50px;
    height: 4rem;
}
@media screen and (max-width: 599px) {
  .common-style dd input, 
  .common-style dd textarea {
    width: 100%;
  }
}

.common-style .contact-check p {
  text-align: center;
}

.common-style .contact-check a {
  display: inline;
  color: inherit;
  text-decoration: underline;
}

/*スピナーを削除する*/
.wpcf7-spinner{
    display: none;
}

/*******************************************/
/*PRIVACYPOLICY
/*******************************************/

.privacy li {
  padding-bottom: 2rem;
  text-align: left;
 margin-left: 4rem;
}

.privacy_style{
  list-style: decimal outside;
}

/*******************************************/
/*コンタクトフォーム追記
/*******************************************/
.common-style dd.ap_contact_radio input {
  width: auto;
  margin-right: 1.5rem;
}
.common-style dd.ap_contact_radio span {
  display: inline-block;
}
.common-style dd.ap_contact_radio span.wpcf7-list-item-label {
  margin-right: 3.5rem;
}
.ap_contact_red {
  color: #FF0000;
}
.ap_contact_textarea textarea {
  height: 24rem;
}

.contact-forms-area{
  margin: 4rem 0 3rem;
}

.contact-forms-area p{
  font-size: 1.73rem;
}

.contact_mail_text p{
  font-size: 1.87rem;
}

.contact-text-small, p.contact-text-small{
  font-size: 1.6rem;
}

dd.input-border-none input{
  border: none;
}

input.wpcf7-form-control.wpcf7-text.contact_post_code {
    width: 150px;
    margin-bottom: 10px;
}

textarea.contact_request {
  height: 100px;
}

/* 送信ボタン */
.common-style input[type=submit] {
  width: 260px;
  max-width: 260px;
  height: 52px;
  font-size: 1.87rem;
  cursor: pointer;
  background-color: #fff;
  border: solid 1px #808080;
}

@media screen and (max-width: 767px) {
  .common-style input[type=file] {
    font-size: 2.4rem;
  }
  .common-style input[type=submit] {
    font-size: 3rem;
  }
  .common-style dd input, .common-style dd textarea {
    padding: 9px;
    font-size: 16px;
  }
}
@media screen and (max-width: 599px) {
  .common-style .wpcf7-list-item {
      display: block !important;
  }
}

/*******************************************/
/* ページトップ*/
/*******************************************/

.page-top {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 100;
}

@media screen and (max-width: 1279px) {
  .page-top {
    right: 0;
    bottom: 0;
  }
}

/*******************************************/
/* h2-background-wrap */
/*各下層ページのヘッダー。デザインによって違うので適宜変更*/
/*******************************************/

.h2-background-wrap {
  width: 100%;
  height: 51rem;
  padding-top: 2.5rem;
  overflow: hidden;
  background: #222A35 url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/img1001-1.jpg) no-repeat;
  position: relative;
  background-size: cover;
}

.h2-background-wrap.business {
  background-image: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/img1001-1.jpg);
  background-repeat: no-repeat;
}

.h2-background-wrap.company {
  background-image: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/img2001-1.jpg);
  background-repeat: no-repeat;
}

.h2-background-wrap.recruit {
  background-image: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/img3001-1.jpg);
  background-repeat: no-repeat;
}

.h2-background-wrap.contact,
.h2-background-wrap.privacy {
  background-image: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/img4001-1.jpg);
  background-repeat: no-repeat;
}

@media screen and (max-width: 1279px) {
  .h2-background-wrap {
    height: auto;
    aspect-ratio: 127/ 34;
    padding: 4rem 0;
    background-position: center;
    background-blend-mode: lighten;
  }
}

@media screen and (max-width: 767px) {
  .h2-background-wrap {
    display: flex;
    min-height: 25rem;
    align-items: center;
    margin-bottom: 0;
  }
}

/*子階層ヘッダーのタイトル*/
.h2-background-wrap h2 {
  font-size: 5.33rem;
  line-height: 1.3;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .h2-background-wrap h2 {
    margin-bottom: 0;
    color: #000;
  }
}

.path-wrapper {
  width: 95%;
  max-width: 1640px;
  margin: 0 auto;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .path-wrapper {
    display: flex;
    align-items: center;
  }
}

/*******************************************/
/*パンくず*/
/*******************************************/
.topic-path {
  display: flex;
  margin-right: 18px;
}

#pankuzu {
  cursor: pointer;
  /* list-style: none; */
}

@media screen and (max-width: 767px) {
  .topic-path {
    display: none;
  }
}

.topic-path li {
  position: relative;
  padding: 0 1.5rem;
  font-size: 1.6rem !important;
}

.topic-path li:first-of-type {
  padding: 0 3rem 0 0;
}

.topic-path li:last-of-type {
  padding-right: 2.5rem;
  padding-left: 2rem;
}

.topic-path li:last-of-type::after {
  content: "";
}

.topic-path li::after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  font-size: 1rem;
  content: ">";
}

.topic-path li a {
  display: inline;
  color: #000;
  font-size: 1.73rem !important;
}


/*******************************************/
/* 各ページのアンカー*/
/*******************************************/
.page-path ul {
  display: flex;
  align-items: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  .page-path ul {
    display: none;
  }
}

.page-path a {
  display: flex;
  margin-right: 3.5rem;
  align-items: center;
  color: #000;
  font-size: 1.6rem !important;
}

.page-path a::before {
  position: relative;
  color: #000;
  content: "▸";
}

/*******************************************/
/* ファーストビュー*/
/*******************************************/
.firstview-box {
  position: relative;
  /* margin: 13rem auto 5rem; */
  margin: 0 auto 13rem;
}

.firstview-box .firstview-text {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 2rem 0;
  background: rgba(0, 0, 0, 0.5);
}

.firstview-box .firstview-text p {
  margin: 0;
  color: #fff;
  text-align: center;
}

.firstview-box .firstview-text p:nth-child(1) {
  font-size: 4.8rem;
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.firstview-box .firstview-text p:nth-child(2) {
  font-size: 3.2rem;
}

@media screen and (max-width: 767px) {
.firstview-box {
  margin: 0 auto 5rem;
}
}
/*******************************************/
/* index-box 画像拡大*/
/*******************************************/
.index-box .index-text {
  display: flex;
  justify-content: center;
  align-items: center;
  /* font-size: 2.13rem; */
  text-align: center;
}

@media screen and (max-width: 1279px) {
  .index-box .index-text {
    margin-bottom: 4rem;
  }
}

.index-box .imgbox-zoom {
  margin-bottom: 1.5rem;
  overflow: hidden;
}

.index-box img {
  transition: 0.3s;
}

.index-box a:hover {
  opacity: 1;
}

.index-box a:hover>.imgbox-zoom>img {
  transform: scale(1.1);
}

/*******************************************/
/* ファーストビュースライダー*/
/*******************************************/

.slick-slide img {
  width: 100%;
  height: 980px;
  object-fit: cover;
}
.ap_top_slider_img_wrap {
  overflow: hidden;
}
@media screen and (max-width: 1500px) {
  .slick-slide img {
    height: auto;
  }
}

@media screen and (max-width: 767px) {
  .slick-slide img {
    width: 100%;
    object-fit: cover;
    height: auto;
  }
}

/*******************************************/
/* zoom*/
/*******************************************/

.slide-animation img {
  animation: fadezoom 7s 0s forwards;
  -webkit-animation: fadezoom 7s 0s forwards;
}

@-webkit-keyframes fadezoom {
  0% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }

  100% {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
  }
}

@keyframes fadezoom {
  0% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }

  100% {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
  }
}

/*******************************************/
/*   ヘッダー追記*/
/*******************************************/
.ap_header_title_outer {
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #1B2249;
  padding: 1rem 2rem 1.3rem 3rem;
}

.logo-area a{
  display: flex;
  align-items: center;
}

/* nav */
.ap_header_nav_outer{
  width: 54%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-right: 22px;
}

/* header right */
.ap_header_right{
  width: 22%;
  min-width: 410px;
  display: flex;
  align-items: center;
}

.header_tel{
  width: 55%;
}
.header_line{
  width: 45%;
}

.header_tel p{
  letter-spacing: 1.2px;
}

.header_line p{
  letter-spacing: 1.2px;
}

.header_icon_area a{
  display: flex;
  align-items: center;
}

.header_tel a{
  padding-left: 0;
}

.header_line a{
  padding-left: 0;
}

.header_icon_area img{
  width: 40px;
  width: 2.1vw;
  margin-right: 10px;
}

.header_icon_area p{
  font-weight: bold;
  color: #fff;
}

.ap_header_nav_outer .gnavi ul li a {
  color: #fff;
  display: block;
  padding: 1.2rem 1.8rem 0;
  margin: 0 1rem;
}

@media screen and (max-width: 1500px) {
.ap_header_right{
  width: 15%;
  min-width: auto;
  flex-direction: column;
  align-items: flex-start;
}
.header_tel{
  width: 100%;
  margin-bottom: 8px;
}
.header_line{
  width: 100%;
}
}

@media screen and (max-width: 1279px) {
  .ap_header_title_outer {
    padding-left: 0;
    padding-right: 0;
  }

  .ap_header_nav_outer, .ap_header_right {
    display: none;
  }
}

/* パンくず・ページ内リンク */
.ap_path_outer {
  width: 100%;
  padding: 1.1rem 0;
  margin-bottom: 10rem;
}

.path-wrapper {
  width: 95%;
  max-width: 1640px;
  margin: 0 auto;
  display: flex;
}

.ap_path_line a {
  margin-left: 2rem;
  margin-right: 4rem;
  /* color: #fff; */
  color: #f00;
}

.ap_header_subpate_title_wrap {
  position: absolute;
  top: 48%;
  left: 50%;
  transform: translateX(-50%);
}

.page_title{
  font-size: 3.2rem;
}

.page_title, .page_title_en{
  text-align: center;
  color: #fff;
}

.ap_path_sm_title {
  font-size: 24px;
  margin-bottom: 4rem;
  border-bottom: solid 1px #d9d9d9;
  padding: 1rem;
  display: none;
}

.page-path{
  padding-left: 4rem;
}

@media screen and (max-width: 1000px) {
  .ap_path_line,
  .ap_path_outer .page-path {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .path-wrapper {
    display: flex;
    align-items: center;
  }

  .ap_path_outer,
  .ap_header_subpate_title_wrap {
    display: none;
  }

  .ap_path_sm_title {
    display: block;
  }
}

/*******************************************/
/*   スライダー追記*/
/*******************************************/

.ap_top_slider img {
  width: 100%;
}

ul.ap_top_slider p {
  color: #fff;
}

.ap_top_slider_title {
  font-weight: lighter;
  line-height: 2.1;
  display: inline;
  background-color: #1B2249;
}

.ap_top_slider_title span {
  padding: 2rem 1.5rem 2rem 0.8rem;
}

.ap_top_slider_one,
.ap_top_slider_two,
.ap_top_slider_three {
  position: absolute;
}

.ap_top_slider_one {
  top: 12rem;
  right: 3rem;
}

.ap_top_slider_two {
  top: 44%;
  margin-left: 3.73rem;
}

.ap_top_slider_three {
  top: 28rem;
  right: 27rem;
}

@media screen and (max-width: 1279px) {
  .ap_top_slider_title {
    font-size: 24px !important;
  }

  .ap_top_slider_subtitle {
    font-size: 20px !important;
  }
}

@media screen and (max-width: 767px) {
  .ap_top_slider_title {
    font-size: 20px !important;
  }

  .ap_top_slider_subtitle {
    font-size: 18px !important;
  }

  .ap_top_slider li img {
    z-index: -2;
    position: relative;
    min-height: 200px;
  }

  .ap_top_sm_hidden {
    display: none;
  }

  .ap_top_slider_one,
  .ap_top_slider_two,
  .ap_top_slider_three {
    top: initial;
    left: initial;
    right: initial;
    position: relative;
    margin-top: 4rem;
    margin-left: auto;
    margin-right: auto;
    width: 95%;
  }

.ap_top_slider_two{
  width: 100%;
  background-color: #1B2249;
  padding: 8px;
  margin: 0;
}

.ap_top_slider_two p{
  line-height: 1.6;
}

  ul.ap_top_slider .ap_top_slider_one p,
  ul.ap_top_slider .ap_top_slider_two p,
  ul.ap_top_slider .ap_top_slider_three p {
    color: #fff;
  }

  .ap_top_slider_title,
  .ap_top_slider_subtitle {
    text-align: center;
  }
}

/*******************************************/
/*   共通ボタン追記*/
/*******************************************/
.btn-style01, .btn-style02 {
  position: relative;
}

.btn-style01 a{
  min-width: 260px;
  position: relative;
  display: inline-block;
  font-size: 1.87rem;
  color: #fff;
  background-color: #1B2249;
  transition: 0.3s;
  padding: 1.47rem 4rem 1.47rem 2rem;
}

.btn-style01 a::after{
  position: absolute;
  content: "〉";
  font-size: 2.4rem;
  color: #fff;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.btn-style02 a{
  min-width: 260px;
  position: relative;
  display: inline-block;
  font-size: 1.87rem;
  color: #1B2249;
  background-color: #fff;
  transition: 0.3s;
  padding: 1.4rem 5rem 1.4rem 2rem;
}

.btn-style02 a::after{
  position: absolute;
  content: "〉";
  font-size: 2.4rem;
  color: #1B2249;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
.btn-style01 {
  text-align: center;
  margin-bottom: 40px;
}
}


/*******************************************/
/*   トップページ                           */
/*******************************************/
.ap_top_sec1 img, .ap_top_sec2 img, .contact_item img{
  max-width: 100%;
}

.ap_top_sec1{
  position: relative;
  margin-bottom: 3.6rem;
}

.ap_top_sec1_inner{
  padding-left: calc((100vw - 1640px) / 2);
}

.top-col-left{
  width: 55.5%;
}

.top-col-left > div{
  border-top: solid 4px #1B2249;
  margin-left: 4.8vw;
}

.top-col-left h2{
  font-size: 4.27rem;
  color: #000;
  line-height: 1.65;
  margin-bottom: 9px;
  max-width: 100%;
}

.top-col-left h3{
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;;
  font-size: 4.27rem;
  font-weight: normal;
  color: #1B2249;
  text-align: left;
  padding-top: 24px;
  position: relative;
  letter-spacing: 0;
}

.top-col-left h3 span{
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 2.4rem;
  color: #000;
  position: absolute;
  top: 41%;
  padding-left: 1rem;
}

.top-col-left p{
  width: 88%;
  margin-top: 5px;
  line-height: 3.73rem;
  letter-spacing: 0.01em;
  margin-bottom: 40px;
}

.top-col-right {
  width: 44.6%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -10;
}

.top-col-right img{
  width: 100%;
}

h2.title_bg{
  color: #fff;
}

.title_bg{
  display: inline;
  padding: 0 4px 0 0;
  background: linear-gradient(transparent 0%, #1B2249 0%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

@media screen and (max-width: 1905px) {
  .ap_top_sec1_inner{
    padding-left: 2.5%;
  }
}

@media screen and (max-width: 767px) {
.top-col-left{
  width: 100%;
}
.top-col-right {
    width: 100%;
    position: static;
}

.top-col-left h3 span{
  top: 52%;
}

.top-col-left p{
  width: 100%;
}

.top-col-left h2{
  font-size: 5.6vw;
}

}

/* ABOUT US */
.top_about_container{
  width: 100%;
  max-width: 1840px;
  position: relative;
  margin: 0 auto 6.5rem;
}

.top_about_inner{
  width: 95%;
  max-width: 1640px;
  background-color: #1B2249;
  margin: 0 auto;
}

.top_title_02 {
  text-align: center;
  position: relative;
}

.top_title_02 h2 {
  color: #1B2249;
  text-align: center;
  letter-spacing: 1px;
  margin-bottom: 1rem;
}

.subtitle{
    font-size: 2.4rem;
    margin-bottom: 4.53rem;
}

.about-logo {
  width: 10.4vw;
  max-width: 200px;
  position: absolute;
  top: 7rem;
  right: 0rem;
}

.about-logo img{
  max-width: 100%;
}

.top_about_text{
  background-color: #1B2249;
  padding: 24px;
}

.top_about_text h3{
  font-size: 4.27rem;
  color: #fff;
  font-weight: normal;
  text-align: left;
  letter-spacing: .5px;
  margin-bottom: 26px;
}

.top_about_text p{
  line-height: 2;
  margin-bottom: 4.1rem;
}

@media screen and (max-width: 767px) {
.about-logo {
    width: 20vw;
    top: 49rem;
    right: 4rem;
}
}

/* top contact */
section.top_contact_container{
  background: url(https://airily06.sakura.ne.jp/daiso/wp/wp-content/uploads/img09.jpg) no-repeat top;
  background-size: cover;
  padding-top: 8rem;
  padding-bottom: 0;
  margin-bottom: 0;
}

.top_contact_container h2,.top_contact_container h3{
  font-size: 4.27rem;
  color: #fff;
  text-align: center;
}

.top_contact_container .subtitle{
  font-size: 2.4rem;
  color: #fff;
  text-align: center;
}


.contact_item_outer{
  background: rgba(27, 34, 73, 0.5);
  padding: 11.2rem 0 12rem;
  margin-top: 7rem;
}

.contact_item_area{
  display: flex;
  align-items: center;
  justify-content: space-between;  
}

.contact_item{
  width: 31.8%;
  max-width: 520px;
}

.contact_item a{
  display: flex;
  align-items: center;
  background-color: #fff;
  padding: 10px 20px;
}

.contact_icon{
  display: flex;
  align-items: center;
}

.contact_icon p{
  font-size: 2.13rem;
  font-weight: normal;
  padding-left: 22px;
}

.contact_item a > div{
  width: 100%;
  padding-left: 22px;
}

.contact_item a > img{
  width: 38.5%;
  max-width: 200px;
}

.top_contact_container img{
  max-width: 200px;
}

.contact_item a > div > p:nth-of-type(1){
  font-size: 1.87rem;
  font-weight: bold;
}

.contact_item .contact_icon p{
  font-size: 2.13rem;
}

.contact_item a > div > p:nth-of-type(2){
  font-size: 1.47rem;
  text-align: center;
}

.contact_item .contact_icon img{
  width: 32px;
}

@media screen and (max-width: 1279px) {

.contact_item_area{
  flex-direction: column;
}

.contact_item{
  width: 100%;
  padding: 10px 20px;
  margin-bottom: 20px;
}
}

@media screen and (max-width: 600px) {
  .contact_item a{
    flex-direction: column;
  }

  .contact_item img{
    margin-bottom: 10px;
  }

  .contact_item {
    text-align: center;
  }

  .contact_icon {
    display: flex;
    justify-content: center;
}
.contact_icon p {
    padding-left: 8px;
}

.contact_item a > img{
  width: 100%;
  max-width: 100%;
}
}


/* parts */
.text_white{
  color: #fff;
}
.text_red{
  color: #f00;
}

.ap_top_sec2_title {
  background: url("/it-butsuryu/wp/wp-content/uploads/img10.jpg");
  background-size: cover;
  background-position: center;
  padding: 10rem 0 6.5rem;
  margin-bottom: 11rem;
}

.ap_top_sec2 .nottification-box {
  width: 100%;
  height: 520px;
}

.ap_top_sec2_facebook {
  width: 100%;
  height: 520px;
  background: #D9D9D9;
  padding: 1rem 0;
  padding: 10px 20px;
}

.ap_top_sec3_contents img {
  width: 100%;
}

/* コンタクトフォーム用 */
form dd {
  width: 100%;
  margin-left: 0;
}

/* facebook */
.fb-page{
  width: 100%;
}
.ap_facebook_box{
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
}

/* 事業内容 */
.ap_sharyo_number td{
  font-size: 1.73rem;
}
