@charset "UTF-8";
/* st-PageIntro
-----------------------------------*/
.is-company .st-PageIntro::before {
  background-image: url("../img/bg_company_01.jpg");
}

/* company-Intro
-----------------------------------*/
.company-Intro {
  max-width: 1180px;
  margin: 87px auto 0;
  padding: 0 20px;
}
.company-Intro_Col {
  max-width: 560px;
}
.company-Intro_Col-image {
  margin-top: 46px;
}
.company-Intro_Text {
  font-size: 123.1%;
}
.company-Intro_Text + .company-Intro_Text {
  margin-top: 10px;
}
.company-Intro_Text + .company-Intro_SubImage {
  margin-top: 43px;
}
.company-Intro_SubImage_Item {
  width: 100%;
  height: auto;
}
.company-Intro_Image {
  width: 100%;
  height: auto;
}

@media only screen and (min-width: 600px) {
  .company-Intro {
    display: flex;
    justify-content: space-between;
  }
  .company-Intro_Col {
    width: calc((100% - 30px) / 2);
  }
  .company-Intro_Col-image {
    margin-top: 3px;
  }
  .company-Intro_Text + .company-Intro_SubImage {
    margin-top: 37px;
  }
}
@media only screen and (min-width: 960px) {
  .company-Intro {
    margin-top: 137px;
    padding: 0 40px;
  }
  .company-Intro_Col {
    width: calc((100% - 60px) / 2);
  }
}
/* company-Overview
-----------------------------------*/
.company-Overview {
  max-width: 810px;
  margin: 70px auto 0;
  padding: 0 20px;
}
.company-Overview_Item {
  font-size: 123.1%;
  border-top: 1px solid #c8c8c8;
  padding-bottom: 13px;
}
.company-Overview_Item:last-of-type {
  border-bottom: 1px solid #c8c8c8;
  padding-bottom: 10px;
}
.company-Overview_Item-link {
  padding-bottom: 3px;
}
.company-Overview_Title {
  color: #646464;
  padding-top: 11px;
}
.company-Overview_Data {
  margin-top: 7px;
}
.company-Overview_OfficeList_Item {
  list-style: none;
}
.company-Overview_OfficeList_Item + .company-Overview_OfficeList_Item {
  border-top: 1px solid #c8c8c8;
  margin-top: 5px;
  padding-top: 11px;
}
.company-Overview_TelList_Item {
  list-style: none;
}
.company-Overview_TelList_Item + .company-Overview_TelList_Item {
  border-top: 1px solid #c8c8c8;
  margin-top: 11px;
  padding-top: 11px;
}
.company-Overview_TelList_Item .js-TelLink {
  text-decoration: none;
}
.company-Overview_Icon {
  margin-left: -10px;
  margin-top: -5px;
}
.company-Overview_Icon_Link {
  display: inline-block;
  padding: 10px;
}
.company-Overview_Icon_Image {
  width: 30px;
  height: auto;
}

@media only screen and (min-width: 600px) {
  .company-Overview_Item {
    display: flex;
    justify-content: space-between;
    padding-bottom: 25px;
  }
  .company-Overview_Item:last-of-type {
    padding-bottom: 26px;
  }
  .company-Overview_Item-link {
    padding-bottom: 0;
  }
  .company-Overview_Title {
    width: 170px;
    padding-top: 31px;
  }
  .company-Overview_Data {
    width: calc(100% - 225px);
    margin-top: 31px;
  }
  .company-Overview_OfficeList {
    margin-top: -31px;
  }
  .company-Overview_OfficeList_Item {
    position: relative;
    padding-right: 60px;
    padding-top: 30px;
    padding-bottom: 25px;
  }
  .company-Overview_OfficeList_Item + .company-Overview_OfficeList_Item {
    padding-top: 30px;
    margin-top: 0;
  }
  .company-Overview_TelList_Item + .company-Overview_TelList_Item {
    padding-top: 30px;
    margin-top: 25px;
  }
  .company-Overview_Icon {
    margin-left: 0;
    margin-top: 0;
    position: absolute;
    top: 20px;
    right: 10px;
  }
  .company-Overview_Group {
    position: relative;
    padding-right: 60px;
  }
  .company-Overview_Group .company-Overview_Icon {
    top: -20px;
  }
}
@media only screen and (min-width: 960px) {
  .company-Overview {
    margin-top: 80px;
    padding: 0 40px;
  }
  .company-Overview_Item {
    padding-right: 33px;
  }
  .company-Overview_Item-link, .company-Overview_Item-tel {
    padding-right: 0;
  }
  .company-Overview_Title {
    padding-left: 33px;
  }
  .company-Overview_Icon {
    top: 17px;
    right: 25px;
  }
  .company-Overview_Icon_Link:hover {
    opacity: 0.7;
  }
  .company-Overview_Icon_Link:hover .company-Overview_Icon_Image {
    transform: translateY(2px);
  }
  .company-Overview_Icon_Image {
    transition: all 0.2s ease;
  }
  .company-Overview_Group .company-Overview_Icon {
    right: -7px;
  }
}
/* company-Certification
-----------------------------------*/
.company-Certification {
  margin-top: 50px;
  padding-inline: 20px;
  position: relative;
}
.company-Certification::after {
  content: "";
  display: block;
  background-color: #F0F0F0;
  width: 100%;
  height: auto;
  position: absolute;
  top: 20px;
  bottom: -30px;
  left: 0;
  z-index: -1;
}
.company-Certification_Image {
  margin-inline: auto;
  display: block;
  width: 100%;
  max-width: 560px;
  height: auto;
}

@media only screen and (min-width: 960px) {
  .company-Certification {
    padding-inline: 40px;
  }
  .company-Certification::after {
    top: 40px;
    bottom: -47px;
  }
}
/* company-Access
-----------------------------------*/
.company-Access {
  max-width: 1000px;
  margin: 60px auto 0;
  padding: 0 20px;
}
.company-Access_Item + .company-Access_Item {
  margin-top: 60px;
}
.company-Access_Map_Item {
  width: 100%;
  height: 192px;
  vertical-align: bottom;
}
.company-Access_Info {
  margin-top: 21px;
}
.company-Access_Title {
  font-size: 123.1%;
}
.company-Access_Title_Lg {
  font-size: 120%;
}
.company-Access_Text {
  font-size: 123.1%;
}
.company-Access_Text .js-TelLink {
  text-decoration: none;
}
.company-Access_Btn {
  margin-top: 43px;
}
.company-Access_Btn .sw-Btn01 {
  width: 100%;
  max-width: 260px;
}

@media only screen and (min-width: 600px) {
  .company-Access_Map_Item {
    height: 250px;
  }
}
@media only screen and (min-width: 750px) {
  .company-Access_Item {
    display: flex;
    justify-content: space-between;
  }
  .company-Access_Info {
    width: calc(50% - 40px);
    margin-top: 63px;
  }
  .company-Access_Map {
    width: 50%;
  }
  .company-Access_Map_Item {
    height: 300px;
  }
}
@media only screen and (min-width: 960px) {
  .company-Access {
    margin-top: 100px;
    padding-left: 40px;
    padding-right: 40px;
  }
  .company-Access_Info {
    width: calc(50% - 70px);
  }
  .company-Access_Btn {
    margin-top: 39px;
  }
}
/* company-Picture
-----------------------------------*/
.company-Picture {
  margin-top: 80px;
}
.company-Picture_Item {
  height: 160px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.company-Picture_Item-01 {
  background-image: url("../img/img_company_03.jpg");
}
.company-Picture_Item-02 {
  background-image: url("../img/img_company_04.jpg");
}

@media only screen and (min-width: 600px) {
  .company-Picture {
    display: flex;
  }
  .company-Picture_Item {
    width: 50%;
  }
}
@media only screen and (min-width: 960px) {
  .company-Picture {
    margin-top: 110px;
  }
  .company-Picture_Item {
    height: 400px;
  }
}
/* company-History
-----------------------------------*/
.company-History {
  margin-top: 86px;
}
.company-History_Title {
  font-size: 167%;
  color: #002850;
  text-align: center;
}
.company-History_List {
  font-size: 123.1%;
  max-width: 810px;
  margin: 32px auto 0;
  padding: 0 20px;
}
.company-History_List_Day {
  color: #646464;
  padding-top: 12px;
}
.company-History_List_Day:first-of-type {
  border-top: 1px solid #c8c8c8;
}
.company-History_List_Data {
  border-bottom: 1px solid #c8c8c8;
  margin-top: 5px;
  padding-bottom: 14px;
}

@media only screen and (min-width: 600px) {
  .company-History_List {
    display: flex;
    flex-wrap: wrap;
  }
  .company-History_List_Day {
    width: 170px;
    box-sizing: border-box;
    border-bottom: 1px solid #c8c8c8;
    padding-top: 31px;
    padding-bottom: 23px;
  }
  .company-History_List_Data {
    width: calc(100% - 170px);
    box-sizing: border-box;
    margin-top: 0;
    padding-top: 31px;
    padding-bottom: 23px;
  }
  .company-History_List_Data:first-of-type {
    border-top: 1px solid #c8c8c8;
  }
}
@media only screen and (min-width: 960px) {
  .company-History {
    margin-top: 176px;
  }
  .company-History_List {
    padding: 0 40px;
  }
  .company-History_List_Day {
    width: 205px;
    padding-left: 35px;
    padding-right: 20px;
  }
  .company-History_List_Data {
    width: calc(100% - 205px);
    padding-right: 35px;
  }
}
/* company-Philosophy
-----------------------------------*/
.company-Philosophy {
  margin-top: 85px;
  background: url("../img/bg_company_02.jpg") no-repeat center;
  background-size: cover;
  padding-top: 62px;
  padding-bottom: 69px;
}
.company-Philosophy_Item {
  max-width: 520px;
  margin: 0 auto;
  padding: 0 20px;
  text-align: center;
}
.company-Philosophy_Item + .company-Philosophy_Item {
  margin-top: 48px;
}
.company-Philosophy_Item_Title {
  font-size: 123.1%;
  color: #fff;
  text-align: center;
}
.company-Philosophy_Item_Title::before {
  content: "［";
}
.company-Philosophy_Item_Title::after {
  content: "］";
}
.company-Philosophy_Item_Text {
  font-size: 153.9%;
  color: #f0be00;
  display: inline-block;
  text-align: left;
}
.company-Philosophy_Item_Text-lg {
  font-size: 167%;
}
.company-Philosophy_Item_Title + .company-Philosophy_Item_Text {
  margin-top: 4px;
}

@media only screen and (min-width: 960px) {
  .company-Philosophy {
    margin-top: 167px;
    padding-top: 87px;
    padding-bottom: 95px;
  }
  .company-Philosophy_Item + .company-Philosophy_Item {
    margin-top: 60px;
  }
}
/* company-Group
-----------------------------------*/
.company-Group {
  max-width: 1180px;
  margin: 105px auto 0;
  padding: 0 20px;
}
.company-Group_Link {
  text-decoration: none;
}
.company-Group_Image {
  overflow: hidden;
}
.company-Group_Image_Item {
  width: 100%;
  height: auto;
}
.company-Group_Inner {
  margin-top: 24px;
}
.company-Group_Title {
  font-size: 167%;
  color: #002850;
}
.company-Group_Text {
  font-size: 123.1%;
}
.company-Group_Title + .company-Group_Text {
  margin-top: 16px;
}
.company-Group_Text + .company-Group_Text {
  margin-top: 10px;
}
.company-Group_Btn {
  margin-top: 34px;
}
.company-Group_Btn .sw-Btn01 {
  width: 100%;
  max-width: 260px;
}

@media only screen and (min-width: 700px) {
  .company-Group_Link {
    display: flex;
    justify-content: space-between;
  }
  .company-Group_Image, .company-Group_Inner {
    width: calc((100% - 30px) / 2);
  }
  .company-Group_Inner {
    margin-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  .company-Group {
    margin-top: 150px;
    padding: 0 40px;
  }
  .company-Group_Link {
    transition: all 0.2s ease;
  }
  .company-Group_Link:hover .sw-Btn01 {
    color: #fff;
    background-color: #0aa0eb;
  }
  .company-Group_Link:hover .company-Group_Image_Item {
    transform: scale(1.12);
  }
  .company-Group_Image, .company-Group_Inner {
    width: calc((100% - 60px) / 2);
  }
  .company-Group_Image_Item {
    transition: all 0.6s ease;
  }
  .company-Group_Title + .company-Group_Text {
    margin-top: 18px;
  }
  .company-Group_Btn {
    margin-top: 37px;
  }
}
@media only screen and (min-width: 1050px) {
  .company-Group_Inner {
    margin-top: 16px;
  }
}
@media only screen and (min-width: 1150px) {
  .company-Group_Inner {
    margin-top: 46px;
  }
}
/* company-Menu01
-----------------------------------*/
.company-Menu01 {
  margin-top: 100px;
}

@media only screen and (min-width: 960px) {
  .company-Menu01 {
    margin-top: 154px;
  }
}