@charset 'utf-8';
/* company
------------------------------------------------ */
.page-headline{ background-image: url(img/visual.jpg); }
.company-container{ padding-top: 117px; }
.company-container .wrap{ max-width: 1040px; }
.company--title{ position: relative; font-size: 3rem; font-weight: bold; letter-spacing: 0.072em; line-height: normal; }
.company--title::after{ margin-top: 10px; content: ''; display: block; width: 40px; height: 6px; background-color: #32A0EF; }
.company--table{ margin-top: -16px; width: 100%; font-size: 1.8rem; letter-spacing: 0.072em; line-height: calc(27 / 18); border-collapse: collapse; }
.company--table th{ padding:21px 10px 21px 17.3%; font-weight: bold; width: 40%; text-align: left; vertical-align: top; }
.company--table td{ padding: 21px 0; width: 60%; font-weight: 400; }
.company--row+.company--row{ padding-top: 144px; }

.company--map iframe{ width: 100%; height: 450px; }
.company--address{ margin-top: 45px; }
.company--address dt{ display: block; padding-left: 36px; font-size: 1.8rem; font-weight: bold; letter-spacing: 0.072em; line-height: calc(27 / 18); background-repeat: no-repeat; background-position: 0 center; background-size: 26px auto; }
.company--address dt.subway{ background-image: url(../img/share/train.png); }
.company--address dt.car{ background-image: url(../img/share/car.png); }
.company--address dt:not(:nth-child(-n+1)){ margin-top: 40px; }
.company--address dd{ margin-top: 10px; display: block; font-size: 1.6rem; font-weight: 400; letter-spacing: 0.072em; line-height: calc(27 / 16); }

.corporate-txt{ max-width: 570px; font-size: 2.2rem; font-weight: bold; letter-spacing: 0.072em; line-height: calc(34 / 22); }
.corporate--pht{ margin-top: 45px; margin-left: 20px; max-width: 530px; }
.action-pointer--pht{ max-width: 754px; }

.company--history{ font-size: 1.8rem; letter-spacing: 0.072em; line-height: calc(27 / 18); }
.company--history dt{ position: relative; width: 210px; font-weight: bold; }
.company--history dt:after{ content: ''; position: absolute; right: 15px; top: 13px; width: 70px; height: 1px; background-color: #B1B1B1; }
.company--history dd{ width: calc(100% - 210px); font-weight: 400; }
.company--history dd a{ color:#32A0EF; }


@media only screen and (min-width: 769px) {
    .company--row{ display: flex; flex-wrap: wrap; }
    .col-left{ width: 246px; }
    .col-right{ width: calc(100% - 246px); }
    .company--table tr:not(:last-child) th,
    .company--table tr:not(:last-child) td{ border-bottom: 1px dashed #707070; }
    .company--table tr:last-child th,
    .company--table tr:last-child td{ padding-bottom: 0; }
    .company--history{ display: flex; flex-wrap: wrap; align-items: flex-start; }
    .company--history dt:not(:last-of-type),
    .company--history dd:not(:last-of-type){ min-height: 90px; padding-bottom: 10px; }
    .company--map{ padding-top: 12px; }

    [data-lang="en"] .company--history dt:after{ width: 28px; }
    [data-lang="en"] .company--title{ font-size: 2.5rem; text-transform: uppercase; }
    [data-lang="en"] .corporate-txt{ font-size: 1.8rem; }
}

@media only screen and (max-width: 1024px) and (min-width: 769px) {
    .col-left{ width: 200px; }
    .col-right{ width: calc(100% - 200px); }
}

@media only screen and (max-width: 768px) {
    .page-headline{ background-image: url(img/visual-sp.jpg); }
    .company-container{ padding-top: 50px; }
    .company--row+.company--row{ padding-top: 70px; }
    .col-right{ margin-top: 35px; }
    .company--title{ font-size: 1.6rem; }
    .company--title::after{ margin-top: 6px; width: 20px; height: 3px; }

    .company--table { margin-top: 0; font-size: 1.4rem; line-height: calc(50 / 28); }
    .company--table th,
    .company--table td{ display: block; width: 100%; }
    .company--table th{ padding: 0; }
    .company--table td{ padding: 6px 0 0; }
    .company--table tr:not(:last-child) td{ padding-bottom: 20px; border-bottom: 1px dashed #707070; }
    .company--table tr:not(:first-child) th{ margin-top: 23px; }
    .company--map iframe{ height: 60vw; }
    .company--address{ margin-top: 30px; }
    .company--address dt,
    .company--address dd{ font-size: 1.4rem; line-height: calc(44 / 28); }
    .company--address dt{ padding-left: 29px; background-size: 19px auto; }
    .company--address dt:not(:nth-child(-n+1)){ margin-top: 25px; }
    .corporate-txt{ display: table; margin: 0 auto; max-width: unset; font-size: 1.6rem; line-height: calc(53 / 32); }
    .corporate--pht{ margin: 33px 0 0; max-width: unset; }

    .company--history dt,
    .company--history dd{ font-size: 1.4rem; line-height: calc(44 / 28); }
    .company--history dt{ width: 145px; }
    .company--history dt:after{ width: 50px; top: 10px; right: 0; }
    .company--history dd{ margin-top: 8px; width: 100%; }
    .company--history dd:not(:last-of-type){ padding-bottom: 32px; }
    
}

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