@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Sans:wght@500&family=Roboto:wght@400;500&display=swap");
h1, h2, h3, h4, h5, h6 { font-weight: 700; }

.RobotoHeadLine01 { font-size: clamp(29.25px, 4.6875vw, 45px); font-weight: 500; line-height: 0.93; font-family: 'Roboto', sans-serif; }

.RobotoHeadLine02 { font-weight: 400; line-height: 1.875; letter-spacing: 0.11em; font-family: 'Roboto', sans-serif; }

.NSJHeadLine01 { font-size: clamp(14px, 2.0835vw, 20px); font-weight: 700; line-height: 1.8; }

.NSJHeadLine02 { font-size: clamp(19.5px, 3.1245vw, 30px); font-weight: 500; line-height: 1.5; }

.NSJHeadLine03 { font-size: clamp(19.5px, 3.1245vw, 30px); font-weight: 600; line-height: 1.5; }

.NSJHeadLine04 { font-size: clamp(14px, 2.0835vw, 20px); font-weight: 400; line-height: 1.8; }

.NSJLead01 { font-size: clamp(14px, 2.0835vw, 20px); font-weight: 400; line-height: 1.8; }

.NSLead01 { font-family: 'Noto Sans', sans-serif; font-weight: 500; line-height: 2.37; }

/*----------------------------------------------
	pageHeadBox
----------------------------------------------*/
.pageHeadBox.company-overviewIndex { height: 500px; background: url("../img/company-overview/company-overview_index_pagehead_bg01.jpg") center center no-repeat; background-size: cover; }

@media only screen and (max-width: 767px) { .pageHeadBox.company-overviewIndex { height: 200px; } }
/*----------------------------------------------
	company-overviewIndexGreetingBox
----------------------------------------------*/
.company-overviewIndexGreetingBox .box01 { max-width: 1055px; margin: 100px auto; display: flex; column-gap: 100px; }

.company-overviewIndexGreetingBox .box01 .clm01 { width: 300px; flex-shrink: 0; }

.company-overviewIndexGreetingBox .box01 .txt01 { margin: 0; }

.company-overviewIndexGreetingBox .box01 .name { width: 279px; margin: 5em 0 0 0; }
.en .company-overviewIndexGreetingBox .box01 .name { font-style: italic; width: 80%; }
.en .company-overviewIndexGreetingBox .box01 .name em { font-size: 2.0rem; font-weight: 700; font-style: italic; }
@media only screen and (max-width: 767px) { .en .company-overviewIndexGreetingBox .box01 .name em { font-size: 1.6rem; } }

.company-overviewIndexGreetingBox .imgWrapper01 { margin: 80px auto 0; max-width: 936px; position: relative; }

.company-overviewIndexGreetingBox .imgWrapper01 .imgBox01 { width: calc(100% * 501 / 936); margin: 0 0 0 auto; position: relative; z-index: 2; }

.company-overviewIndexGreetingBox .imgWrapper01 .imgBox02 { width: calc(100% * 504 / 936); margin: -14% 0 0 0; position: relative; z-index: 1; }

.company-overviewIndexGreetingBox .imgWrapper01 .imgBox03 { width: calc(100% * 551 / 936); margin: 120px auto 0; }

@media only screen and (max-width: 767px) { .company-overviewIndexGreetingBox .box01 { margin: 50px auto; display: block; }
  .company-overviewIndexGreetingBox .box01 .clm01 { width: 150px; margin: 0 auto; }
  .company-overviewIndexGreetingBox .box01 .clm02 { margin-top: 30px; }
  .company-overviewIndexGreetingBox .box01 .name { width: 200px; }
  .company-overviewIndexGreetingBox .imgWrapper01 .imgBox03 { margin-top: 60px; } }
/*----------------------------------------------
	company-overviewIndexConceptBox
----------------------------------------------*/
.company-overviewIndexConceptBox { margin: 140px 0; }

.commonTtlWrapper01 { display: flex; }

.commonTtlWrapper01 > .clm01 { width: 50%; }

.commonTtlWrapper01 > .clm02 { width: 50%; }

.company-overviewIndexConceptBox .lead01 { margin: 0; color: #004E9D; font-size: 4.3rem; font-weight: 500; line-height: 1.67; }

.company-overviewIndexConceptBox .box01 { margin: 80px 0 0 0; display: flex; column-gap: 60px; }

.company-overviewIndexConceptBox .box01 .clm02 { width: 50%; flex-shrink: 0; }

.company-overviewIndexConceptBox .box01 .txtBox01 p { margin: 0; }

.company-overviewIndexConceptBox .box01 .txtBox01 p + p { margin-top: 1em; }

.company-overviewIndexConceptBox .box01 .imgBox01 { text-align: center; }

.company-overviewIndexConceptBox .box01 .imgBox01 + .imgBox01 { margin-top: 20px; }

@media only screen and (max-width: 767px) { .company-overviewIndexConceptBox { margin: 70px 0; }
  .commonTtlWrapper01 { display: block; }
  .commonTtlWrapper01 > .clm01 { width: auto; }
  .commonTtlWrapper01 > .clm02 { width: auto; }
  .company-overviewIndexConceptBox .lead01 { font-size: 2.2rem; margin-top: 1em; }
  .company-overviewIndexConceptBox .box01 { margin-top: 40px; display: block; }
  .company-overviewIndexConceptBox .box01 .clm02 { width: auto; margin-top: 30px; } }
/*----------------------------------------------
	company-overviewIndexBrandlogoBox
----------------------------------------------*/
.company-overviewIndexBrandlogoBox { margin: 140px 0; }

.company-overviewIndexBrandlogoBox .box01 { display: flex; }

.company-overviewIndexBrandlogoBox .box01 .clm01 { width: 50%; }

.company-overviewIndexBrandlogoBox .box01 .clm02 { width: 50%; flex-shrink: 0; }

.company-overviewIndexBrandlogoBox .txtBox01 { margin: 2em 0 0 0; }

@media only screen and (max-width: 767px) { .company-overviewIndexBrandlogoBox { margin: 70px 0; }
  .company-overviewIndexBrandlogoBox .box01 { display: block; }
  .company-overviewIndexBrandlogoBox .box01 .clm01 { width: auto; }
  .company-overviewIndexBrandlogoBox .logo { width: 64px; }
  .company-overviewIndexBrandlogoBox .box01 .clm02 { width: auto; margin-top: 30px; } }
/* corporate-information */
/*----------------------------------------------
	pageHeadBox
----------------------------------------------*/
.pageHeadBox.company-overviewCorporate-information { height: 380px; background: url("../img/company-overview/company-overview_corporate-information_pagehead_bg01.jpg") center center no-repeat; background-size: cover; }

@media only screen and (max-width: 767px) { .pageHeadBox.company-overviewCorporate-information { height: 180px; } }
/*----------------------------------------------
	company-overviewCorporate-informationPhilosophyBox
----------------------------------------------*/
.company-overviewCorporate-informationPhilosophyBox { margin: 140px 0; }

.company-overviewCorporate-informationPhilosophyBox .list01 { max-width: 990px; margin: 2em auto 0; padding: 0; list-style-type: none; color: #004E9D; font-size: 3rem; font-weight: 500; line-height: 1.67; }

.company-overviewCorporate-informationPhilosophyBox .list01 > li { margin: 0; display: flex; column-gap: 1em; }

.company-overviewCorporate-informationPhilosophyBox .list01 > li + li { margin-top: 2em; }

.company-overviewCorporate-informationPhilosophyBox .list01 > li .num { font-family: 'URW DIN', sans-serif; font-size: 6rem; font-weight: 600; line-height: 1; color: rgba(255, 255, 255, 0); -webkit-text-stroke: 1px #004E9D; }

@media only screen and (max-width: 767px) { .company-overviewCorporate-informationPhilosophyBox { margin: 70px 0; }
  .company-overviewCorporate-informationPhilosophyBox .list01 { font-size: 1.6rem; }
  .company-overviewCorporate-informationPhilosophyBox .list01 > li .num { font-size: 3rem; } }
/*----------------------------------------------
	company-overviewCorporate-informationInformationBox
----------------------------------------------*/
.company-overviewCorporate-informationInformationBox { margin: 140px 0; }

.company-overviewCorporate-informationInformationBox .box01 { margin: 0 0 0 240px; padding: 70px 70px; border-left: 2px solid #81B4F2; }

.company-overviewCorporate-informationInformationBox .tbl01 { border-collapse: collapse; border-spacing: 0; }

.company-overviewCorporate-informationInformationBox .tbl01 th, .company-overviewCorporate-informationInformationBox .tbl01 td { text-align: left; vertical-align: middle; padding: 1em 0; border-bottom: 1px solid #A2A2A2; }

.company-overviewCorporate-informationInformationBox .tbl01 th { font-weight: normal; width: 12em; }

@media only screen and (max-width: 767px) { .company-overviewCorporate-informationInformationBox { margin: 70px 0; }
  .company-overviewCorporate-informationInformationBox .box01 { margin: 30px 0 0 0; padding: 0; border-left: none; }
  .company-overviewCorporate-informationInformationBox .tbl01 th { width: 6em; } }
/* business-summary-history */
/*----------------------------------------------
	pageHeadBox
----------------------------------------------*/
.pageHeadBox.company-overviewBusiness-summary-history { height: 380px; background: url("../img/company-overview/company-overview_corporate-information_pagehead_bg01.jpg") center center no-repeat; background-size: cover; }

@media only screen and (max-width: 767px) { .pageHeadBox.company-overviewBusiness-summary-history { height: 180px; } }
/*----------------------------------------------
	company-overviewBusiness-summary-historyLeadBox
----------------------------------------------*/
/*----------------------------------------------
	company-overviewBusiness-summary-historyBusinesscategoryBox
----------------------------------------------*/
.company-overviewBusiness-summary-historyBusinesscategoryBox { margin: 140px 0; }

.company-overviewBusiness-summary-historyBusinesscategoryBox .list01 { margin: 60px 0 0 0; padding: 0; list-style-type: none; display: flex; justify-content: center; align-items: flex-start; column-gap: 60px; }

.company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li { margin: 0; text-align: center; }

.company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .name { margin: 1em 0 0 0; padding: 0 0 0.8em 0; font-size: 2.5rem; font-weight: 500; position: relative; }

.company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .name::after { content: ""; display: block; width: 60px; height: 5px; background: #81B4F2; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }

.company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .txt01 { line-height: 1.4444444444; margin-top: 1.25em; }

.company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .btn01 { margin: 2em auto 0; }

@media only screen and (max-width: 767px) { .company-overviewBusiness-summary-historyBusinesscategoryBox { margin: 70px 0; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 { display: block; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li { text-align: left; display: grid; grid-template-columns: 113px auto; grid-template-rows: auto auto auto; gap: 0 20px; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li + li { margin-top: 30px; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .logo { grid-column: 1; grid-row: 1 / 4; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .name { grid-column: 2; grid-row: 1; margin: 0; font-size: 2rem; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .name::after { left: 0; transform: translateX(0); }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .txt01 { grid-column: 2; grid-row: 2; }
  .company-overviewBusiness-summary-historyBusinesscategoryBox .list01 > li .btn01 { grid-column: 2; grid-row: 3; margin: 1em 0 0 0; } }
/*----------------------------------------------
	company-overviewBusiness-summary-historyHistoryBox
----------------------------------------------*/
.company-overviewBusiness-summary-historyHistoryBox { margin: 140px 0; padding: 70px 0; background: #D2E5FD; }

.company-overviewBusiness-summary-historyHistoryBox .leadWrapper { margin: 60px 0; display: flex; column-gap: 55px; }

.company-overviewBusiness-summary-historyHistoryBox .leadWrapper .clm02 { flex-shrink: 0; }

.company-overviewBusiness-summary-historyHistoryBox .leadWrapper .lead01 { margin: 0; }

.company-overviewBusiness-summary-historyHistoryBox .box01 { margin: 0 0 0 240px; padding: 70px 70px; border-left: 2px solid #81B4F2; }

.company-overviewBusiness-summary-historyHistoryBox .tbl01 { border-collapse: collapse; border-spacing: 0; }

.company-overviewBusiness-summary-historyHistoryBox .tbl01 th, .company-overviewBusiness-summary-historyHistoryBox .tbl01 td { text-align: left; vertical-align: top; padding: 1em 0; border-bottom: 1px solid #A2A2A2; }

.company-overviewBusiness-summary-historyHistoryBox .tbl01 th { font-weight: normal; width: 12em; }

.company-overviewBusiness-summary-historyHistoryBox .notion01 { font-size: 1.4rem; margin: 0.5em 0 0 0; }
.company-overviewBusiness-summary-historyHistoryBox .notion01 em { font-style: italic; }

@media only screen and (max-width: 767px) { .company-overviewBusiness-summary-historyHistoryBox { margin: 70px 0; }
  .company-overviewBusiness-summary-historyHistoryBox .leadWrapper { display: block; }
  .company-overviewBusiness-summary-historyHistoryBox .leadWrapper .clm02 { margin-top: 30px; }
  .company-overviewBusiness-summary-historyHistoryBox .box01 { margin: 30px 0 0 0; padding: 0; border-left: none; }
  .company-overviewBusiness-summary-historyHistoryBox .tbl01 th { width: 10em; } }
#accessArea { margin-top: min(140px,19.444vw); }
#accessArea .mapArea { margin: 0 auto; max-width: 900px; width: 90%; }
#accessArea .mapArea .mapBox { position: relative; padding-bottom: 61.777%; height: 0; overflow: hidden; }
#accessArea .mapArea .mapBox iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#accessArea .mapArea p { margin-top: 1em; }
#accessArea .routeBox { width: 90%; margin: min(110px,15.278vw) auto 0; justify-content: space-between; }
#accessArea .routeBox dl { width: 47.02%; }
#accessArea .routeBox dl dt { font-size: clamp(19.5px, 3.1245vw, 30px); font-weight: 700; letter-spacing: 0.06em; color: #004E9D; border-bottom: 1px solid #004E9D; }
#accessArea .routeBox dl dd p.lead { font-size: clamp(14px, 2.0835vw, 20px); font-weight: 700; letter-spacing: 0.06em; line-height: 1.5; margin-top: 1em; }
#accessArea .routeBox dl dd p.text { font-size: clamp(14px, 1.875vw, 18px); letter-spacing: 0.06em; line-height: 1.9444444444; margin-top: 0.5em; }
#accessArea .routeBox dl dd + dd { margin-top: min(50px,6.944vw); }
@media (max-width: 480px) { #accessArea .routeBox dl { width: 100%; }
  #accessArea .routeBox dl + dl { margin-top: 60px; } }
