
@charset "UTF-8";
/* ==========================================================================
  foundation
  ========================================================================== */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent; 
}

body {
    line-height: 1; 
}

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

nav ul {
    list-style: none; 
}

blockquote,
q {
    quotes: none; 
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none; 
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent; 
}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none; 
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold; 
}

del {
    text-decoration: line-through; 
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help; 
}

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

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0; 
}

input,
select {
    vertical-align: middle; 
}

/* box siging */
*,
*::before,
*::after {
    box-sizing: border-box; 
}

/* form reset */
input,
button,
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
    font: inherit;
    outline: none; 
}

textarea {
    resize: vertical; 
}

input[type='checkbox'],
input[type='radio'] {
    display: none; 
}

input[type='submit'],
input[type='button'],
label,
button,
select {
    cursor: pointer; 
}

select::-ms-expand {
    display: none; 
}

/* breakpoint */
/* 767pxを基本とする */
/* ヘッダー　スマホメニュー切替 */
/* color */
/* Common
  ----------------------------------------------------------------- */
html {
    font-size: 62.5%; 
}

body {
    font-family: 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    background: #fff;
    color: #000;
    line-height: 1.5; 
}

img {
    max-width: 100%; 
}

hr {
    margin: 0;
    border-top-color: #000; 
}

a {
    color: inherit;
    text-decoration: none; 
}

legend {
    display: none;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both; 
}
#l-header {
    width: 100%;
    /*min-height: 153px;*/
    background-color: #fff;
    box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.05);
    position: fixed;
    z-index: 999;
    top: 0;
}
/* @media screen and (max-width: 1250px) {
    #l-header {
        min-height: 196px; 
    } 
} */
@media screen and (max-width: 767px) {
    #l-header {
        position: fixed;
        min-height: 80px; 
    } 
}
@media print {
    #l-header {
        display: none; 
    } 
}

.l-header__reed {
    display: block;
    min-height: 33px;
    padding: 6px 23px 0 23px;
    background: url("../image/icon_arrow-down.png") no-repeat calc(100% - 25px) 15px;
    font-size: 1.1rem;
    line-height: 1.6;
    text-align: right;
}
@media screen and (max-width: 767px) {
    .l-header__reed {
        min-height: 30px;
        padding: 4px 15px 0px 15px;
        background: url("../image/icon_arrow-down.png") no-repeat 284px 15px;
        text-align: left; 
    } 
}
.l-header__reed-btn {
    display: inline-block;
    padding-right: 12px;
    padding-left: 12px; 
}
@media screen and (max-width: 767px) {
    .l-header__reed-btn {
        border: none; 
    } 
}
@media screen and (max-width: 767px) {
    .l-header__reed-btn {
        padding-left: 5px; 
    } 
}
.l-header__reed__detail {
    display: none;
    margin-top: 10px;
    margin-bottom: 10px; 
}
.l-header__reed__detail::after {
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0; 
}
.l-header__reed__detail__wrapper {
    width: 50%;
    float: left;
    text-align: left; 
}
@media screen and (max-width: 767px) {
    .l-header__reed__detail__wrapper {
        width: 100%; 
    } 
}
.l-header__reed__detail__img {
    float: left;
    width: 20%;
    text-align: right;
    padding-right: 10px; }
    .l-header__reed__detail__img__img {
        max-width: 32px;
        width: 100%; 
    }
.l-header__reed__detail__text-wrap {
    float: left;
    width: 80%; 
}
.l-header__reed__detail__title {
    font-weight: bold;
    font-size: 14px; 
}

.l-header__block-wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
    position: relative;
    margin-top: 7px; 
}
@media screen and (max-width: 1250px) {
    .l-header__block-wrap {
        display: block; 
    } 
}
@media screen and (max-width: 767px) {
    .l-header__block-wrap {
        /* font-size: 0; */
        height: 50px;
        display: flex; 
    } 
}
@keyframes headerscroll {
    from {
        opacity: 0; 
    }
    to {
        opacity: 1; 
    } 
}

.l-header__left {
    margin-left: 10px;
    margin-top: -10px;
    min-width: 570px;
}
.l-header__left__text {
    display: block;
} 
@media screen and (max-width: 1250px) {
    .l-header__left {
        width: 100%;
        float: left; 
    } 
}
@media screen and (max-width: 767px) {
    .l-header__left {
        margin-top: 0;
        min-width: 0;
        z-index: 100; 
    } 
}
.l-header__brand-wrap {
    padding-left: 20px;
    padding-top: 3px;
    max-width: 350px;
    width: 100%;
    font-size: 0; 
}
@media screen and (max-width: 767px) {
    .l-header__brand-wrap {
        padding-top: 0; 
    } 
}
.l-header__brand-wrap--navnone {
    float: left; 
}
@media screen and (max-width: 1250px) {
    .l-header__brand-wrap {
        float: left; 
    } 
}
@media screen and (max-width: 767px) {
    .l-header__brand-wrap {
        max-width: 100%;
        padding-top: 10px; 
    } 
}
.l-header__brand__keisansho-link {
    text-decoration: none;
    display: block;
    float: left; 
}
.l-header__brand__keisansho-link:hover {
    text-decoration: none;
    opacity: inherit;
    opacity: 1; 
}
.l-header__brand__keisansho-link img {
    width: 132px;
    height: auto;
    vertical-align: bottom;
}
@media screen and (max-width: 767px) {
    .l-header__brand__keisansho-link img {
        width: 114px;
        height: auto; 
    } 
}

.l-header__brand_cyuukicyo {
    width: 70px;
    position: relative;
    left: 23px;
}
@media screen and (max-width: 767px) {
    .l-header__brand_cyuukicyo {
        top: 0;
        left: 0px;
        width: 45.07px;
        height: auto; 
    } 
}
.l-header__brand__keisansho-link.sp {
    display: none; 
}
.logo__sp {
    display: none; 
}
@media screen and (max-width: 767px) {
    .logo__pc {
        display: none; 
    }

    .logo__sp {
        display: block;
        float: left;
        width: 110px;
        padding-right: 5px;
        border-right: 1px solid #E6E6E6;
        margin-right: 5px; 
    }
    .logo__sp > span {
        font-size: 9px;
        font-weight: bold; 
    }
    .l-header__brand__keisansho-link {
        width: 35px;
        margin-right: 5px; 
    }
    .l-header__brand__keisansho-link.tb {
        display: none; 
    }
    .l-header__brand__keisansho-link.sp {
        display: block; 
    } 
}
.l-header__right {
    width: calc(100% - 350px);
    text-align: right; 
}
@media screen and (max-width: 1250px) {
    .l-header__right {
        width: 100%; 
    } 
}
@media screen and (max-width: 767px) {
    .l-header__right {
        display: none; 
    } 
}
.l-header__icon_japan {
    position: relative;
    top: 4px;
    padding-right: 10px; 
}
.l-header__simple .l-header__block-wrap {
    display: block; 
}
.l-header__simple .l-header__block-wrap .l-header__left {
    float: left; 
}
.l-header__simple .l-header__block-wrap .l-header__right-logo {
    float: right;
    width: 167px;
    padding: 0 23px 5px;
    box-sizing: content-box; 
}
.l-header__simple .l-header__block-wrap .l-header__right-logo > span {
    display: block; 
}
.l-header__simple .l-header__block-wrap .l-header__right-logo > span > span {
    display: block;
    font-weight: bold;
    font-size: 1.1rem; 
}
@media screen and (max-width: 767px) {
    .l-header__simple .l-header__block-wrap .l-header__right-logo {
        display: none; 
    } 
}
@media screen and (max-width: 1170px) {
    .l-header__simple {
        min-height: auto !important; 
    }
    .l-header__simple .l-header__block-wrap .l-header__left {
        width: 540px; 
    } 
}

/* main
  ----------------------------------------------------------------- */

.l-main {
    position: relative;
    padding-bottom: 60px;
    line-height: 1.8;
    display: block; 
}

@media screen and (min-width: 768px) {
    .l-main {
        margin-top: 163px; 
    } 
}
@media screen and (max-width: 1250px) {
    .l-main {
        margin-top: 235px; 
    } 
}
@media screen and (max-width: 767px) {
    .l-main {
        padding-bottom: 0px;
        margin-top: 152px; 
    } 
}

.p-maintenance {
    width: 1000px;
    margin: 60px auto 100px;
}

@media screen and (max-width: 1000px) {
    .p-maintenance {
        width: calc( 100% - 40px );
    }
}

@media screen and (max-width: 767px) {
    .p-maintenance {
        width: 100%;
        margin: 40px auto 60px;
    }
}

.p-maintenance__logo {
    width: 30%;
    margin: auto;
}

@media screen and (max-width: 767px) {
    .p-maintenance__logo {
        width: 65%;
        margin: auto;
    }
}

.p-maintenance__logo > img {
    width: 100%;
}

.p-maintenance__lead {
    font-size: 3.2rem;
    font-weight: bold;
    margin: 40px 0;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-maintenance__lead {
        font-size: 2rem;
        margin: 40px auto 20px;
        width: 95%;
    }
}

.p-maintenance__box {
    background-color: #F7F7F7;
    padding: 40px 0 60px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .p-maintenance__box {
        width: 95%;
        margin: auto;
    }
}

.p-maintenance__box__bottomblock {
    margin-top: 60px;
}

.p-maintenance__date {
    font-size: 2.4rem;
    font-weight: bold;
    margin: 40px 0 20px;
}

@media screen and (max-width: 767px) {
    .p-maintenance__date {
        font-size: 2rem;
        font-weight: bold;
        margin: 30px 0 20px;
    }
}

.u-display--sponly {
    display: none;
}

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


/* footer
  ----------------------------------------------------------------- */
@media print {
    .l-footer {
        display: none; 
    } 
}
.l-footer__copyright {
    display: block;
    margin-bottom: 38px;
    font-size: 1.2rem;
    text-align: center; 
}
.l-footer__copyright--only {
    padding-top: 38px;
    border-top: 5px solid #00597B; 
}
.l-footer__copyright__sp {
    display: none; 
}
@media screen and (max-width: 767px) {
    .l-footer__copyright__sp {
        display: block; 
    } 
}
@media screen and (max-width: 767px) {
    .l-footer__copyright {
        margin: 0;
        padding: 20px;
        border-top: 1px solid #E6E6E6;
        text-align: left; 
    }
    .l-footer__copyright--only {
        border-top: 5px solid #00597B; 
    } 
}

/* PageTop */
#c-pagetop {
    position: fixed;
    width: 70px;
    height: 70px;
    right: 20px;
    bottom: 20px;
    background: url(../image/icon_pagetop_hover.png) no-repeat left top/100% 100%; 
}
@media screen and (max-width: 767px) {
    #c-pagetop {
        width: 50px;
        height: 50px;
        right: 6px;
        bottom: 6px; 
    } 
}
#c-pagetop img {
    transition: 0.3s; 
}
#c-pagetop:hover img {
    opacity: 0; 
}
