@charset "UTF-8";
/*-----------------------------------------
事業拠点 CSS
-------------------------------------------*/
#header .current:after {
  background: #3cb2eb;
}

.top-area {
  height: 190px;
  background: url(../img/location/location-bg@sp.jpg) no-repeat center center;
  background-size: cover;
}
@media (min-width: 751px) {
  .top-area {
    height: 380px;
    background: url(../img/location/location-bg.jpg) no-repeat center center;
    background-size: cover;
  }
}

.page .page-nav ul {
  width: 100%;
  max-width: 1080px;
  justify-content: space-evenly;
  margin: auto;
  line-height: 1.375;
}
@media (min-width: 751px) {
  .page .page-nav ul {
    justify-content: center;
  }
  .page .page-nav ul li {
    margin: 0 58px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  .page .page-nav ul li {
    margin: 0 4.02778vw;
  }
}

@media (max-width: 750px) {
  .page .page-nav ul {
    line-height: 1.53846;
  }
}
.page .intro-section {
  padding-top: 50px;
  margin-bottom: 70px;
  padding-bottom: 0;
}
@media (min-width: 751px) {
  .page .intro-section {
    padding-top: 110px;
    margin-bottom: 110px;
    padding-bottom: 0;
  }
}
.page .intro-section .section__ttl {
  margin-bottom: 30px;
}
@media (min-width: 751px) {
  .page .intro-section .section__ttl {
    margin-bottom: 50px;
  }
}
.page .intro-section .intro__txt {
  margin-top: 0;
}

/*-----------------------------------------
事業拠点マップCSS
-------------------------------------------*/
.page .map {
  position: relative;
}
@media (min-width: 751px) {
  .page .section__inner {
    width: calc(100% - 40px);
  }
}
.page .map--national {
  width: 100%;
  max-width: 691px;
  margin: auto;
  /*
  		@media (min-width: 751px)
  		{
  			width: (691/1080)*100%;
  		}
  */
}
.page .map--oversea {
  width: 100%;
}
.page .location-list {
  /*
  		#location8
  		{
  			@include setPosition1(286,1401);
  			@media (max-width: 750px)
  			{
  			 	left: -20px;   
  			}
  		}
  */
}
.page .location-list li {
  position: absolute;
  width: 16.26667vw;
  height: 4vw;
}
@media (min-width: 751px) {
  .page .location-list li {
    width: 130px;
    height: 28px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page .location-list li {
    /*
    					width: (130/1280)*100vw;
    					height: (28/1280)*100vw;
    */
  }
}

.page .location-list li a {
  display: block;
  width: 100%;
  height: 100%;
  color: white;
  line-height: 1.1em;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6vw;
  font-weight: bold;
  background: #135398;
}
@media (max-width: 750px) {
  .page .location-list li a span {
    display: inline-block;
    transform: scale(0.8);
    transform-origin: center center;
  }
}
@media (min-width: 751px) {
  .page .location-list li a {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
  }
  .page .location-list li a span {
    display: inline-block;
    transform: translateY(1px);
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page .location-list li a {
    /*
    						line-height: (28/1280)*100vw;
    						font-size: (18/1280)*100vw;
    */
  }
}

.page .location-list #location1 {
  top: 67.02128%;
  left: 75.90361%;
}
.page .location-list #location2 {
  top: 8.37766%;
  left: 44.57831%;
}
@media (max-width: 750px) {
  .page .location-list #location2 {
    top: 8.37766%;
    left: 47.59036%;
  }
}
.page .location-list #location3 {
  top: 50.13298%;
  left: 76.20482%;
}
.page .location-list #location4 {
  top: 61.96809%;
  left: 76.20482%;
}
.page .location-list #location5 {
  top: 52.26064%;
  left: 26.50602%;
}
@media (max-width: 750px) {
  .page .location-list #location5 {
    top: 52.26064%;
    left: 29.51807%;
  }
}
.page .location-list #location6 {
  top: 81.25%;
  left: 56.4759%;
}
.page .location-list #location7 {
  top: 65.42553%;
  left: 7.22892%;
}
@media (max-width: 750px) {
  .page .location-list #location7 {
    top: 65.42553%;
    left: 10.24096%;
  }
}
.page .location-list #location_s1 {
  top: 31.26177%;
  left: 88.51852%;
}
.page .location-list #location_s2 {
  top: 35.78154%;
  left: 62.5%;
}
@media (min-width: 751px) and (max-width: 1023px) {
  .page .location-list #location_s2 {
    top: 35.78154%;
    left: 55.37037%;
  }
}

@media (max-width: 750px) {
  .page .location-list #location_s2 {
    top: 35.78154%;
    left: 56.94444%;
  }
}
.page .location-list #location_s3 {
  top: 44.63277%;
  left: 88.51852%;
}
@media (min-width: 751px) and (max-width: 1023px) {
  .page .location-list #location_s3 {
    top: 42.74953%;
    left: 88.51852%;
  }
}

@media (max-width: 750px) {
  .page .location-list #location_s3 {
    top: 42.74953%;
    left: 88.51852%;
  }
}
.page .location-list #location_s4 {
  top: 53.29567%;
  left: 88.51852%;
}

/*-----------------------------------------
事業拠点所在地CSS
-------------------------------------------*/
.page--location .location-list .location {
  border-top: solid 1px #e3e3e3;
  padding: 20px 0;
}
@media (min-width: 751px) {
  .page--location .location-list .location {
    padding: 28px;
  }
}
.page--location .location-list .location:last-child {
  border-bottom: solid 1px #e3e3e3;
}
.page--location .location-list .txt-right {
  text-align: right;
}
@media (max-width: 750px) {
  .page--location .location-list .txt-right {
    margin-top: 1.5em;
  }
}
@media (min-width: 751px) {
  .page--location .location-list .txt-right {
    margin-left: auto;
    min-width: 140px;
  }
}
.page--location .location-list .txt-right .map-link {
  font-weight: bold;
  color: #0071be;
}
.page--location .location-list .location__info {
  text-align: left;
  line-height: 1.61538;
}
@media (min-width: 751px) {
  .page--location .location-list .location__info {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    line-height: 2;
  }
}
.page--location .location-list .location__info .map-link {
  margin-left: auto;
  font-weight: bold;
  color: #0071be;
}
.page--location .location-list .location__info .location__name {
  width: 145px;
  font-weight: bold;
}
.page--location .location-list .location__info .location__name a {
  color: #0071be;
}
@media (max-width: 750px) {
  .page--location .location-list .location__info .location__name a {
    text-decoration: underline;
  }
}
@media (max-width: 750px) {
  .page--location .location-list .location__info .location__name {
    margin-bottom: 1.5em;
  }
}
.page--location .location-list .location__info .location__data a {
  color: inherit;
}
@media (min-width: 751px) {
  .page--location .location__bottom-txt {
    display: flex;
    display: -webkit-flex;
  }
  .page--location .location__bottom-txt:before {
    content: "・";
  }
}
.page--location .iframe {
  margin-top: 30px;
  width: 100%;
}

/*-----------------------------------------
関係会社拠点マップCSS
-------------------------------------------*/
@media (min-width: 751px) {
  .page--affiliates .section__inner {
    width: calc(100% - 40px);
  }
}
.page--affiliates .map {
  position: relative;
}
.page--affiliates .map--national {
  width: 100%;
  margin: auto;
  max-width: 713px;
}
.page--affiliates .map--oversea {
  width: 100%;
}
.page--affiliates .location-list {
  /*
  		#location3
  		{
  			@include setPosition1(885,1383);
  		}
  */
}
.page--affiliates .location-list li {
  position: absolute;
  width: 16.26667vw;
}
@media (max-width: 750px) {
  .page--affiliates .location-list li {
    min-width: 90px;
  }
}
@media (min-width: 751px) {
  .page--affiliates .location-list li {
    width: 180px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list li {
    width: 14.0625vw;
  }
}

.page--affiliates .location-list li:not(.multi) {
  height: 3.6vw;
}
@media (min-width: 751px) {
  .page--affiliates .location-list li:not(.multi) {
    height: 24px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list li:not(.multi) {
    height: 1.875vw;
  }
}

.page--affiliates .location-list li:not(.multi) a {
  height: 100%;
  line-height: 3.6vw;
}
@media (min-width: 751px) {
  .page--affiliates .location-list li:not(.multi) a {
    line-height: 24px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list li:not(.multi) a {
    line-height: 1.875vw;
  }
}

.page--affiliates .location-list li a {
  display: block;
  width: 100%;
  color: white;
  text-align: center;
  font-size: 1.6vw;
  font-weight: bold;
  background: #135398;
}
@media (max-width: 750px) {
  .page--affiliates .location-list li a span {
    display: block;
    transform: scale(0.8);
    transform-origin: left center;
  }
}
@media (min-width: 751px) {
  .page--affiliates .location-list li a {
    font-size: 1.6rem;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list li a {
    font-size: 1.25vw;
  }
}

.page--affiliates .location-list #location1 {
  top: 59.17553%;
  left: 73.91304%;
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location1 {
    top: 59.17553%;
    left: 71.80926%;
  }
}

@media (min-width: 751px) and (max-width: 1279px) and (max-width: 1023px) {
  .page--affiliates .location-list #location1 {
    transform: translateX(15%);
  }
}

.page--affiliates .location-list #location2 {
  top: 66.35638%;
  left: 75.73633%;
  width: 29.86667vw;
  line-height: 1.5;
  padding: 12px;
  background: #135398;
}
.page--affiliates .location-list #location2 a {
  text-align: left;
}
.page--affiliates .location-list #location2 .indent {
  text-indent: .5em;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location2 {
    left: inherit;
    right: -20px;
  }
}
@media (min-width: 751px) {
  .page--affiliates .location-list #location2 {
    width: 329px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location2 {
    width: 25.70313vw;
  }
}

.page--affiliates .location-list #location4 {
  top: 42.95213%;
  left: 34.92286%;
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location4 {
    top: 42.95213%;
    left: 39.69144%;
  }
}

@media (min-width: 751px) and (max-width: 1279px) and (max-width: 1023px) {
  .page--affiliates .location-list #location4 {
    transform: translateX(15%);
  }
}

.page--affiliates .location-list #location5 {
  top: 48.53723%;
  left: 14.02525%;
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location5 {
    top: 49.06915%;
    left: 18.79383%;
  }
}

@media (min-width: 751px) and (max-width: 1279px) and (max-width: 1023px) {
  .page--affiliates .location-list #location5 {
    transform: translateX(15%);
  }
}

.page--affiliates .location-list #location6 {
  top: 63.96277%;
  left: 7.01262%;
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location6 {
    top: 65.0266%;
    left: 12.20196%;
  }
}

@media (min-width: 751px) and (max-width: 1279px) and (max-width: 1023px) {
  .page--affiliates .location-list #location6 {
    transform: translateX(15%);
  }
}

.page--affiliates .location-list #location7 {
  top: 76.75%;
  left: -16.42216%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location7 {
    left: -20px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location7 {
    top: 77.75%;
    left: -12.20196%;
  }
}

@media (min-width: 751px) and (max-width: 1279px) and (max-width: 1023px) {
  .page--affiliates .location-list #location7 {
    top: 77.54787%;
    left: -12.20196%;
    left: -65px;
  }
}

.page--affiliates .location-list #location8 {
  top: 71.2766%;
  left: -11.5007%;
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location8 {
    top: 72.60638%;
    left: -11.5007%;
  }
}

@media (min-width: 751px) and (max-width: 1279px) and (max-width: 1023px) {
  .page--affiliates .location-list #location8 {
    left: -40px;
  }
}

@media (max-width: 750px) {
  .page--affiliates .location-list #location8 {
    left: -20px;
  }
}
.page--affiliates .location-list .multi {
  background: #135398;
  line-height: 1.5;
}
.page--affiliates .location-list .multi a {
  text-align: left;
}
.page--affiliates .location-list #location_s1 {
  top: 34.0824%;
  right: 27.79317%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s1 {
    width: 33.6vw;
    top: 34.0824%;
    right: 27.79317%;
  }
}
@media (min-width: 751px) {
  .page--affiliates .location-list #location_s1 {
    width: 269px;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location_s1 {
    width: 21.46875vw;
    top: 34.0824%;
    right: 27.79317%;
  }
}

.page--affiliates .location-list #location_s2 {
  top: 10.86142%;
  left: 80.79409%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s2 {
    left: inherit;
    right: -20px;
    width: 28.8vw;
    white-space: nowrap;
  }
}
.page--affiliates .location-list #location_s3 {
  top: 43.63296%;
  right: 27.79317%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s3 {
    white-space: nowrap;
    width: 35.84vw;
    top: 44.00749%;
    right: 27.79317%;
  }
}
.page--affiliates .location-list #location_s4 {
  top: 63.29588%;
  left: 1.38504%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s4 {
    width: 38.4vw;
  }
}
.page--affiliates .location-list #location_s5 {
  top: 24.34457%;
  right: 27.79317%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s5 {
    width: 38.4vw;
    top: 24.34457%;
    right: 27.79317%;
  }
}
.page--affiliates .location-list #location_s6 {
  top: 49.06367%;
  right: 27.79317%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s6 {
    width: 35.84vw;
    top: 50.93633%;
    right: 27.79317%;
  }
}
.page--affiliates .location-list #location_s7 {
  top: 90.6367%;
  left: 61.77285%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s7 {
    width: 38.4vw;
  }
}
.page--affiliates .location-list #location_s8 {
  top: 70.59925%;
  left: 30.10157%;
}
.page--affiliates .location-list #location_s8 a {
  text-align: left;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s8 {
    width: 54.4vw;
    top: 70.97378%;
    left: 9.60295%;
    padding: 0px 0;
  }
}
@media (min-width: 751px) and (max-width: 1279px) {
  .page--affiliates .location-list #location_s8 {
    top: 70.59925%;
    left: 31.94829%;
  }
}

.page--affiliates .location-list #location_s9 {
  top: 47.56554%;
  left: 84.85688%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s9 {
    width: 19.2vw;
    left: inherit;
    right: -20px;
  }
  .page--affiliates .location-list #location_s9 a {
    padding-left: 0;
  }
}
.page--affiliates .location-list #location_s10 {
  top: 10.86142%;
  left: 46.44506%;
  left: inherit;
  right: 30%;
}
@media (max-width: 750px) {
  .page--affiliates .location-list #location_s10 {
    width: 38.4vw;
  }
}
.page--affiliates .map--oversea .location-list li {
  background: #135398;
}
@media (min-width: 751px) {
  .page--affiliates .map--oversea .location-list li {
    width: inherit;
  }
}
@media (max-width: 750px) {
  .page--affiliates .map--oversea .location-list li {
    height: inherit;
    min-width: inherit;
  }
  .page--affiliates .map--oversea .location-list li a {
    text-align: left;
    padding-left: 1em;
  }
  .page--affiliates .map--oversea .location-list li span {
    transform-origin: left center;
  }
}
@media (max-width: 750px) and (max-width: 750px) {
  .page--affiliates .map--oversea .location-list li span {
    white-space: nowrap;
    transform: scale(0.7);
  }
}

@media (min-width: 751px) {
  .page--affiliates .map--oversea .location-list li {
    white-space: nowrap;
  }
}
.page--affiliates .map--oversea .location-list li a {
  box-sizing: border-box;
}
@media (max-width: 750px) {
  .page--affiliates .map--oversea .location-list li a {
    line-height: 1;
  }
}
@media (min-width: 751px) {
  .page--affiliates .map--oversea .location-list li a {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/*-----------------------------------------
関係会社所在地CSS
-------------------------------------------*/
@media (min-width: 751px) {
  .page--location .location-list .location__info .company__logo {
    width: 11.53846%;
    margin-right: 6.92308%;
    text-align: center;
  }
  .page--location .location-list .location__info .location__data1 {
    width: 51%;
    padding-right: 2.22222%;
    display: flex;
    display: -webkit-flex;
    align-items: center;
  }
  .page--location .location-list .location__info .location__data1 .location__txt {
    width: 77%;
  }
  .page--location .location-list .location__info .location__data1 .location__name {
    width: 100%;
  }
}

@media (min-width: 751px) {
  .affiliates-location .location__info .txt-right {
    margin: 0;
    margin-left: auto;
  }
}
@media (max-width: 750px) {
  .affiliates-location .location__info .location__txt {
    margin-bottom: 1.5em;
  }
  .affiliates-location .location__info .location__sp {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    margin-bottom: 1em;
  }
  .affiliates-location .location__info .location__sp .company__logo {
    width: 5.33333vw;
    margin-right: 5px;
    line-height: 1;
  }
  .affiliates-location .location__info .location__sp .location__name {
    margin-bottom: 0;
    width: 100%;
    line-height: 1;
  }
}
.affiliates-location .location-list--oversea .location__info .location__name {
  width: 100%;
}
@media (min-width: 751px) {
  .affiliates-location .location-list--oversea .location__info .location__txt {
    width: 29.62963%;
  }
}
@media (min-width: 751px) {
  .affiliates-location .location-list--oversea .location__info .location__data {
    width: 46%;
  }
}

@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*-----------------------------------------
共通CSS
-------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

sup {
  font-size: 70%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}

a {
  transition: 0.3s ease-out;
  text-decoration: none;
}

a:hover {
  opacity: .8;
}

.flex {
  display: flex;
  display: -webkit-flex;
}

.flex--space {
  justify-content: space-between;
}

.flex--center {
  justify-content: center;
}

.flex--item-center {
  align-items: center;
}

.flex--wrap {
  flex-wrap: wrap;
}

@media (min-width: 751px) {
  .flex--pc {
    display: flex;
    display: -webkit-flex;
  }

  .sp_only {
    display: none !important;
  }
}
@media (max-width: 750px) {
  .pc_only {
    display: none !important;
  }

  .inner--sp {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 1279px) {
  .tb_hide {
    display: none !important;
  }
}
html {
  font-size: 62.5%;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.corporate-site {
  font-family: Meiryo, メイリオ, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", Sans-Serif;
}

body {
  font-size: 1.5rem;
  color: #2b2b2b;
}
@media (max-width: 750px) {
  body {
    font-size: 1.3rem;
  }
}

div {
  box-sizing: border-box;
}

/*-----------------------------------------
Header
-------------------------------------------*/
@media (max-width: 750px) {
  #wrapper {
    padding-top: 55px;
  }
}

#header {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  box-sizing: border-box;
  height: 55px;
}
@media (max-width: 750px) {
  #header {
    background-size: auto 55px;
  }
}
@media (max-width: 750px) {
  #header {
    position: fixed;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 20px;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 9999;
  }
  #header .menu-btn--sp {
    width: 55px;
    height: 55px;
    display: inline-block;
    background: url(../img/common/menu-icon.png) no-repeat center center;
    background-size: 25px;
  }
  #header .menu-btn--sp:hover {
    opacity: 1;
  }
  #header .menu-btn--sp.on {
    background: url(../img/common/close-icon.png) no-repeat center center;
    background-size: 20px;
  }
  #header .nav li {
    border-bottom: solid 1px #362e2b;
  }
  #header .nav li a {
    display: block;
    padding: 0 30px;
    padding-right: 50px;
    line-height: 55px;
    height: 55px;
    color: #2b2b2b;
    font-size: 1.3rem;
    background: url(../img/common/link-icon.png) no-repeat right 30px center;
    background-size: 7px;
  }
  #header .entry {
    display: block;
    width: 315px;
    margin: auto;
    margin-top: 50px;
    color: white;
    background: #0071be;
    text-align: center;
    height: 50px;
    line-height: 50px;
    font-size: 1.4rem;
  }
}
#header a {
  text-decoration: none;
  color: #2b2b2b;
  font-weight: bold;
}
#header .entry {
  font-family: "Lato", sans-serif;
  font-weight: 700;
}
@media (min-width: 751px) {
  #header {
    padding-left: 35px;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    height: 90px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header {
    height: 6.25vw;
    background-size: 16.80556vw;
    padding-left: 2.43056vw;
    font-size: 1.04167vw;
  }
}
@media (min-width: 751px) {
  #header .logo {
    margin-right: 98px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header .logo {
    margin-right: 6.80556vw;
  }
}
@media (min-width: 751px) and (max-width: 1023px) {
  #header .logo {
    margin-right: 1.30208vw;
  }
}
@media (min-width: 751px) {
  #header .nav ul {
    display: flex;
    display: -webkit-flex;
  }
  #header .nav ul li:not(:last-child) {
    margin-right: 38px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header .nav ul li:not(:last-child) {
    margin-right: 1.5vw;
  }
}
@media (min-width: 751px) and (max-width: 1023px) {
  #header .nav ul li:not(:last-child) {
    margin-right: 1.30208vw;
  }
}
@media (min-width: 751px) {
  #header .nav a:hover {
    color: #135398;
    opacity: 1;
  }
  #header .nav .current {
    position: relative;
  }
  #header .nav .current:after {
    content: "";
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -10px;
    height: 4px;
  }
}
@media (min-width: 751px) and (min-width: 751px) {
  #header .nav .current:after {
    bottom: -10px;
    height: 4px;
  }
}
@media (min-width: 751px) and (min-width: 751px) and (max-width: 1440px) {
  #header .nav .current:after {
    bottom: -0.69444vw;
    height: 0.27778vw;
  }
}

@media (min-width: 751px) {
  #header .entry {
    margin-left: auto;
    display: block;
    color: white;
  }
}
@media (max-width: 750px) {
  #header .nav-area {
    position: absolute;
    left: 0;
    top: 55px;
    width: 100%;
    background: white;
    overflow: hidden;
    height: 0;
    transition: 0.3s ease-out;
  }
}
@media (max-width: 750px) {
  #header .menu-btn--sp.on + .nav-area {
    height: calc(100vh - 55px);
    overflow-y: scroll;
    padding-bottom: 44px;
    -webkit-overflow-scrolling: touch;
  }
}
#header .logo {
  text-align: center;
  width: 150px;
}
@media (min-width: 751px) {
  #header .logo {
    width: 238px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header .logo {
    width: 16.52778vw;
  }
}
@media (min-width: 751px) {
  #header .logo p {
    font-weight: bold;
    font-size: 1.5rem;
    margin-top: .5em;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header .logo p {
    font-size: 1.04167vw;
  }
}

@media (max-width: 750px) {
  #header.header--corporate {
    background: white;
  }
  #header.header--corporate .menu-btn--sp {
    background: #135398 url(../img/common/menu-icon.png) no-repeat center center;
    background-size: 25px;
    transition: 0s;
  }
  #header.header--corporate .menu-btn--sp.on {
    background: #135398 url(../img/common/close-icon.png) no-repeat center center;
    background-size: 20px;
  }
}
@media (min-width: 751px) {
  #header.header--corporate .nav-area {
    align-items: flex-start;
    margin-left: auto;
  }
  #header.header--corporate .nav-area .nav {
    flex-direction: column-reverse;
    display: flex;
    display: -webkit-flex;
  }
  #header.header--corporate .nav-area .nav .current:after {
    max-width: 50px;
    margin: auto;
    right: 0;
  }
  #header.header--corporate .nav-area .nav .loginArea {
    margin-left: auto;
    justify-content: flex-end;
    margin-bottom: 22px;
    /*
    					position: absolute;
    					right: 0;
    					top: 0;
    */
    font-size: 1.3rem;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header.header--corporate .nav-area .nav .loginArea {
    margin-bottom: 1.52778vw;
    font-size: 0.90278vw;
  }
}
@media (min-width: 751px) {
  #header.header--corporate .nav-area .nav .loginArea li {
    margin: 0;
    padding: 10px 20px 0;
    /*border-left: solid 1px #dddddd;*/
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header.header--corporate .nav-area .nav .loginArea li {
    padding: 0.69444vw 1.38889vw 0;
  }
}
@media (min-width: 751px) {
  #header.header--corporate .nav-area .nav .page-nav {
    /*
    				height: 90px;
    				align-items: center;
    				@media (max-width: 1440px)
    				{
    					height: (90/1440)*100vw;
    				}
    */
  }
  #header.header--corporate .nav-area .nav .page-nav li {
    margin-right: 66px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header.header--corporate .nav-area .nav .page-nav li {
    margin-right: 4.58333vw;
  }
}

@media (min-width: 751px) and (max-width: 1440px) and (max-width: 1023px) {
  #header.header--corporate .nav-area .nav .page-nav li {
    margin-right: 3em;
  }
}

#header.header--corporate .contact {
  background: #135398;
  color: white;
  margin-left: auto;
  text-align: center;
}
@media (max-width: 750px) {
  #header.header--corporate .contact {
    display: block;
    width: 315px;
    margin: auto;
    margin-top: 50px;
    color: white;
    background: #135398;
    text-align: center;
    height: 50px;
    line-height: 50px;
    font-size: 1.4rem;
  }
}
@media (min-width: 751px) {
  #header.header--corporate .contact {
    height: 90px;
    width: 150px;
    line-height: 90px;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header.header--corporate .contact {
    width: 10.41667vw;
    height: 6.25vw;
    line-height: 6.25vw;
  }
}

#header.header--recruit {
  background: url(../img/common/header-bg@sp.png) no-repeat right top white;
}
@media (max-width: 750px) {
  #header.header--recruit {
    background-size: auto 55px;
  }
}
@media (min-width: 751px) {
  #header.header--recruit {
    padding-right: 55px;
    background: url(../img/common/header-bg.png) no-repeat right top;
  }
}
@media (min-width: 751px) and (max-width: 1023px) {
  #header.header--recruit {
    background: none;
  }
  #header.header--recruit .entry {
    color: #135398;
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header.header--recruit {
    padding-right: 3.81944vw;
  }
}
@media (min-width: 751px) {
  #header.header--recruit .nav-area {
    width: calc(100% - 238px);
  }
}
@media (min-width: 751px) and (max-width: 1440px) {
  #header.header--recruit .nav-area {
    width: calc(100% - (238/1440)*100vw);
  }
}

/*-----------------------------------------
Footer
-------------------------------------------*/
#footer {
  background: #3f3f3f;
  align-items: center;
  justify-content: space-between;
  font-size: 1.2rem;
  position: relative;
}
@media (max-width: 750px) {
  #footer {
    font-size: 1.1rem;
    padding: 33px 0 22px;
  }
}
@media (min-width: 751px) {
  #footer {
    height: 80px;
  }
}
@media (max-width: 750px) {
  #footer .page-top {
    position: absolute;
    width: 40px;
    height: 40px;
    right: 20px;
    top: -40px;
    background: url(../img/common/icon-up.png) no-repeat center center #135398;
    background-size: 14px;
    text-indent: -9999px;
  }
}
@media (min-width: 751px) {
  #footer .page-top {
    width: 150px;
    height: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: white;
    background: #135398;
    margin-left: 38px;
    font-family: "Lato", sans-serif;
  }
  #footer .page-top:before {
    width: 13px;
    height: 9px;
    content: "";
    display: block;
    margin-bottom: 13px;
    background: url(../img/common/icon-up.png) no-repeat;
  }
}
#footer a {
  color: white;
}
@media (max-width: 750px) {
  #footer .footer-right {
    text-align: center;
    color: white;
  }
}
@media (min-width: 751px) {
  #footer .footer-right {
    height: 100%;
    display: flex;
    display: -webkit-flex;
    color: white;
    align-items: center;
  }
}
@media (max-width: 750px) {
  #footer .footer-nav {
    line-height: 2.18182;
    margin-bottom: 33px;
  }
}
@media (min-width: 751px) {
  #footer .footer-nav {
    padding-left: 40px;
  }
}
#footer .footer-nav ul {
  display: flex;
  display: -webkit-flex;
}
@media (max-width: 750px) {
  #footer .footer-nav ul {
    justify-content: center;
  }
}
#footer .footer-nav ul li:not(:last-child):after {
  color: white;
  content: "|";
  margin: 0 .5em;
}

/*-----------------------------------------
Footer追加 2023/05/23 K.SUZUKI
-------------------------------------------*/
.footer_750 .footer_container {
    box-sizing: border-box;
    width: 100%;
    max-width: 1200px;
    padding: 30px 13px 20px;
    position: relative;
    margin: 0 auto;
    overflow: hidden;
    display: flex;
    display: -webkit-flex;
}


.footer_750 .footer_container .footer_col{
    box-sizing: border-box;
    width: 50%;
}

.footer_category{
    margin-top:0px;
    margin-bottom:20px;
    font-size:1.08em;
    font-weight:700;
    color:#000
}

.footer_categorylinks li{
    margin-bottom:10px;
}

.footer_categorylinks a{
    display:inline-block;
    padding-left:14px;
    background:url("/shared/img/business/automobile/products/index/icon03.png") no-repeat 2px 2px;
    background-size: 8px auto;
    color: #135398;
}

.footer_categorylinks a[target="_blank"]:after {
  display:inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(/shared/img/common/window-icon.png) no-repeat;
  background-size: 100%;
  margin-left: 6px;
}

.footer_col .contact {
    display: inline-block;
    margin-top: 20px;
    padding: 20px 30px;
    color: white;
    background: #135398;
    font-size: 1.4rem;
}
/*-----------------------------------------
Breadcrumb
-------------------------------------------*/
.breadcrumb {
  padding: 0 20px;
  max-width: 1080px;
  width: calc(100% - 40px);
  margin: auto;
  padding: 1em 0;
  font-size: 1.2rem;
  color: #2d2d2d;
}
.breadcrumb a {
  color: #2d2d2d;
}
.breadcrumb ul {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  line-height: 1.5;
}
.breadcrumb ul li:last-child {
  color: #8a8a8a;
}
.breadcrumb ul li:not(:last-child):after {
  content: ">";
  margin: 0 .5em;
}

/*-----------------------------------------
Page Common
-------------------------------------------*/
.page {
  overflow: hidden;
}
.page .page-nav {
  background: #f3f8fc;
  height: 68px;
}
.page .page-nav * {
  outline: none;
}
@media (min-width: 751px) {
  .page .page-nav {
    font-size: 1.6rem;
  }
}
.page .page-nav ul {
  height: 100%;
  display: flex;
  display: -webkit-flex;
  align-items: center;
  justify-content: space-evenly;
}
.page .page-nav a {
  color: #333;
  display: inline-block;
  min-width: 65px;
  text-align: center;
  outline: none;
}
.page .page-nav a:hover {
  opacity: 1;
  color: #135398;
}
.page .page-nav .current {
  position: relative;
}
.page .page-nav .current a {
  color: #135398;
  font-weight: bold;
}
.page .page-nav .current:after {
  display: block;
  position: absolute;
  bottom: -16px;
  left: 0;
  right: 0;
  margin: auto;
  content: "";
  width: 65px;
  height: 9px;
  background: url(../img/common/current-page-bg.png) no-repeat;
  background-size: 100% 100%;
}
@media (max-width: 750px) {
  .page .page-nav .current:after {
    width: 48px;
    height: 6px;
    bottom: -12px;
  }
}
@media (min-width: 751px) {
  .page .page-nav {
    height: 120px;
  }
}
.page .mb50 {
  margin-bottom: 20px;
}
@media (min-width: 751px) {
  .page .mb50 {
    margin-bottom: 50px;
  }
}
.page .top-area {
  position: relative;
}
.page .top-area .page__ttl {
  font-size: 3rem;
  font-weight: bold;
  color: white;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  text-align: center;
}
.page .top-area .page__ttl small {
  margin-bottom: 13px;
  display: inline-block;
  font-size: 2rem;
}
@media (max-width: 750px) {
  .page .top-area .page__ttl {
    left: 0%;
    transform: translate(0%, -50%);
    width: 100%;
    font-size: 2rem;
    text-align: center;
  }
  .page .top-area .page__ttl small {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
}
.page .top-area .breadcrumb {
  max-width: 100%;
  position: absolute;
  left: 20px;
  bottom: 20px;
  margin-bottom: 0;
  padding: 0;
}
@media (max-width: 750px) {
  .page .top-area .breadcrumb {
    bottom: 10px;
  }
}
.page .top-area .breadcrumb li {
  color: white;
}
.page .top-area .breadcrumb a {
  color: white;
}
.page .intro-section {
  padding: 50px 0;
}
@media (min-width: 751px) {
  .page .intro-section {
    padding: 77px 0 67px;
    margin-bottom: 96px;
  }
}
.page .intro-section .section__ttl {
  text-align: center;
  font-weight: bold;
  font-size: 2.2rem;
  color: #135398;
  margin-bottom: 30px;
}
@media (min-width: 751px) {
  .page .intro-section .section__ttl {
    font-size: 4rem;
    margin-bottom: .5em;
  }
}
.page .intro-section .section .section__ttl {
  color: inherit;
}
.page .intro-section .intro__txt {
  color: #2b2b2b;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.7;
  font-weight: bold;
}
.page .intro-section .intro__txt:not(:last-child) {
  margin-bottom: 30px;
}
@media (min-width: 751px) {
  .page .intro-section .intro__txt:not(:last-child) {
    margin-bottom: 2.7em;
  }
}
@media (min-width: 751px) {
  .page .intro-section .intro__txt {
    margin-top: 1em;
    font-size: 2rem;
  }
}
.page .intro-section .section__txt {
  line-height: 2.5;
  font-size: 1.3rem;
}
@media (min-width: 751px) {
  .page .intro-section .section__txt {
    font-size: 1.6rem;
  }
}
.page .section__inner {
  width: calc(100% - 40px);
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 751px) {
  .page .section__inner {
    width: 80%;
    max-width: 1080px;
  }
}
@media (min-width: 751px) and (max-width: 1023px) {
  .page .section__inner {
    padding: 0 40px;
    width: 100%;
  }
}

.page .last-section {
  padding-bottom: 50px;
}
@media (min-width: 751px) {
  .page .last-section {
    padding-bottom: 96px;
  }
}
.page .section:not(.last-section) {
  padding: 0 0 50px;
}
@media (min-width: 751px) {
  .page .section:not(.last-section) {
    padding: 0 0 160px;
  }
}
.page .section .section__ttl {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}
@media (max-width: 750px) {
  .page .section .section__ttl {
    line-height: 1.5;
  }
}
@media (min-width: 751px) {
  .page .section .section__ttl {
    font-size: 3.6rem;
    margin-bottom: 60px;
  }
}
.page .section .section__ttl:after {
  display: block;
  content: "";
  width: 30px;
  height: 2px;
  background: #3cb2eb;
  margin: 13px auto 0;
}
@media (min-width: 751px) {
  .page .section .section__ttl:after {
    margin: 18px auto 0;
    width: 50px;
    height: 4px;
  }
}
.page .section .section__txt {
  line-height: 2;
  font-size: 1.3rem;
}
@media (min-width: 751px) {
  .page .section .section__txt {
    font-size: 1.6rem;
  }
}
.page .bg--lightblue {
  background: #f3f8fc;
}
.page .figure {
  margin-top: 40px;
}
.page .photo:not(:first-child) {
  margin-top: 20px;
}
@media (min-width: 751px) {
  .page .photo:not(:first-child) {
    margin-top: 45px;
  }
}
.page .sub-section:not(:last-child) {
  margin-bottom: 60px;
}
@media (min-width: 751px) {
  .page .sub-section:not(:last-child) {
    margin-bottom: 120px;
  }
}
.page .sub-section .sub-section__ttl {
  color: #0071be;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 30px;
}
@media (max-width: 750px) {
  .page .sub-section .sub-section__ttl {
    line-height: 1.38889;
  }
}
@media (min-width: 751px) {
  .page .sub-section .sub-section__ttl {
    font-size: 2.6rem;
    margin-bottom: 48px;
    /*
    				@media (max-width: 1440px)
    				{
    					font-size: (26/1440)*100vw;			
    					margin-bottom: (48/1440)*100vw;		
    					@media (max-width: 1023px)
    					{
    						font-size: 1.6rem;						
    					}
    				}
    */
  }
}
.page .banner-area {
  width: 100%;
  box-sizing: border-box;
  max-width: 1440px;
  padding: 0 20px 90px;
  margin: auto;
}
@media (min-width: 751px) {
  .page .banner-area .object-fit-img {
    object-fit: cover;
    font-family: 'object-fit: cover;';
    height: 100%;
    width: 100%;
    transform: scale(1);
    transition: 0.3s ease-out;
  }
}
.page .banner-area a {
  overflow: hidden;
  display: block;
}
.page .banner-area a:hover {
  opacity: 1;
}
@media (min-width: 751px) {
  .page .banner-area a:hover .object-fit-img {
    transform: scale(1.2);
  }
}
.page .banner-area li {
  position: relative;
}
.page .banner-area li .banner__info {
  display: flex;
  display: -webkit-flex;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  color: white;
}
.page .banner-area li .banner__info dt {
  font-size: 1.6rem;
  margin-bottom: 1em;
}
.page .banner-area li .banner__info .button {
  display: block;
  border: solid 1px white;
  color: white;
  background: url(/shared/img/common/link-icon-white.png) no-repeat right 15px center;
  background-size: 5px;
  text-align: center;
  height: 35px;
  line-height: 35px;
  max-width: 190px;
  width: 190px;
}
@media (max-width: 750px) {
  .page .banner-area li .banner__info .button {
    font-size: 1rem;
  }
}
@media (min-width: 751px) {
  .page .banner-area li {
    width: 100%;
  }
  .page .banner-area li img {
    width: 100%;
  }
  .page .banner-area li .banner__info dt {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 32px;
  }
  .page .banner-area li .banner__info .button {
    background-size: 7px;
    background-position-x: right 25px;
    height: 60px;
    line-height: 60px;
    max-width: 340px;
    width: 340px;
  }
}
.page .blue-box {
  background: #f3f8fc;
  border: solid 1px #d8d8d8;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  padding: 30px 20px;
  font-size: 1.3rem;
}
@media (min-width: 751px) {
  .page .blue-box {
    padding: 58px 40px;
    font-size: 1.6rem;
  }
}
.page .blue-box ol {
  counter-reset: item;
  font-weight: bold;
}
.page .blue-box ol li {
  display: flex;
  display: -webkit-flex;
  line-height: 1.61538;
}
.page .blue-box ol li:not(:last-child) {
  margin-bottom: 1.5em;
}
.page .blue-box ol li:before {
  counter-increment: item;
  content: counter(item) ".";
  margin-right: .5em;
}
.page .txt-list {
  line-height: 2.25;
  font-weight: bold;
}
@media (max-width: 750px) {
  .page .txt-list {
    line-height: 1.61538;
  }
  .page .txt-list li:not(:last-child) {
    margin-bottom: 1.5em;
  }
}
.page .txt-list li {
  display: flex;
  display: -webkit-flex;
}
.page .txt-list li:before {
  content: "●";
}

