@charset "UTF-8";

/* ===============================================================
  Article - style
=============================================================== */

@media print, screen and (min-width: 641px) {
    /* ===========================================
    BASE
  =========================================== */
    body {
        line-height: 1.7;
    }
    /* ===========================================
    PC 見出し
  =========================================== */
    h1 {
        color: #1b1464;
        font-weight: bold;
    }
    h2 {
        color: #1b1464;
        font-weight: bold;
        border-bottom: solid 1px #ffffff;
        margin-bottom: 20px;
    }
    h2 span {
        text-shadow: 1px 1px 0px white;
        letter-spacing: 0;
        font-weight: bold;
        color: #171c61;
        text-align: left;
        padding: 10px 10px 8px 15px;
        background-color: #d5e9ff;
        /* Old browsers */
        /* FF3.6+ */
        background: -webkit-gradient(linear, left top, right top, color-stop(0%, #d5e9ff), color-stop(100%, #f7fbff));
        /* Chrome,Safari4+ */
        background: -webkit-linear-gradient(left, #d5e9ff 0%, #f7fbff 100%);
        /* Chrome10+,Safari5.1+ */
        background: -o-linear-gradient(left, #d5e9ff 0%, #f7fbff 100%);
        /* Opera 11.10+ */
        /* IE10+ */
        background: -webkit-gradient(linear, left top, right top, from(#d5e9ff), to(#f7fbff));
        background: linear-gradient(to right, #d5e9ff 0%, #f7fbff 100%);
        /* W3C */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d5e9ff', endColorstr='#f7fbff', GradientType=1);
        /* IE6-9 */
        border-left: 4px solid #414d82;
        display: block;
        overflow: hidden;
        -webkit-box-shadow: 0px 1px 0px #babcd0;
        box-shadow: 0px 1px 0px #babcd0;
    }
    h3 {
        border-left: 4px solid #414d82;
        border-bottom: 1px dotted #0041a9;
        margin-bottom: .85em;
        padding-left: 18px;
        color: #1f3f86;
        font-weight: bold;
        overflow: hidden;
    }
    h4 {
        margin: 0 0 10px;
        padding: 0 0 0 24px;
        color: #1f3f86;
        font-weight: bold;
        position: relative;
        overflow: hidden;
    }
    h5 {
        margin: 0 0 10px;
        color: #4e6c9c;
        font-size: 1.5rem;
        font-weight: bold;
        overflow: hidden;
    }
    h5 span {
        border: 1px solid #4e6c9c;
        padding: 0 24px;
        display: inline-block;
    }
    h6 {
        margin: 0 0 5px;
        padding: 0 0 0 26px;
        color: #4e6c9c;
        font-size: 1.5rem;
        font-weight: bold;
        position: relative;
        overflow: hidden;
    }
    h4:before {
        height: 14px;
        left: 0;
        position: absolute;
        top: 5px;
        width: 14px;
        background-color: #414d82;
        content: "";
    }
    /* ===========================================
    PC 詳細ページ title
  =========================================== */
    .main-title {
        float: left;
    }
    .main-title h1 {
        margin-bottom: 0;
        letter-spacing: 0;
        margin-bottom: 5px;
    }
    .main-title p {
        font-size: 1.5rem;
        letter-spacing: 0;
        margin-bottom: 0;
        padding: 0;
    }
    /* ===========================================
    PC 右上印刷アイコン
  =========================================== */
    .icon {
        margin: 0 0 10px;
        float: right;
    }
    .icon p {
        text-align: right;
        margin-bottom: 10px;
        padding-left: 0;
        padding-right: 0;
    }
    .icon ul li {
        float: right;
        margin: 0 5px 0 0;
        font-size: 1%;
        line-height: 0;
        position: relative;
    }
    .icon ul li:last-child {
        margin: 0;
    }
    .icon ul li a {
        display: block;
    }
    .icon .fb-share-button {
        padding-bottom: 2px;
        background-color: #c4cce3;
        border-radius: 4px;
    }
    .icon .twitter-share-button {
        padding-bottom: 2px;
        background-color: #bddff6;
        border-radius: 4px;
    }
    /* ===========================================
    PC 汎用テーブル
  =========================================== */
    table {
        border: 1px solid #cccccc;
    }
    table tr th {
        font-weight: bold;
        background-color: #e8f4ff;
        color: #1a4e73;
        border-right: 1px solid #cccccc;
        padding: 8px 15px;
        text-align: center;
    }
    table tr td {
        border-top: 1px solid #cccccc;
        border-right: 1px solid #cccccc;
        padding: 15px;
    }
    /* ===========================================
    PC この記事へのお問い合わせはこちら
  =========================================== */
    #tmp_inquiry {
        border-left: #00499a 1px solid;
        border-right: #00499a 1px solid;
        border-bottom: #00499a 1px solid;
        box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px;
        -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px;
        -moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px;
        margin: 0 20px 20px;
        overflow: hidden;
    }
    #tmp_inquiry h2,#tmp_inquiry > p {
        background: #00499a; /* Old browsers */
        background: -moz-linear-gradient(left,  #00499a 0%, #1d81bd 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left,  #00499a 0%,#1d81bd 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right,  #00499a 0%,#1d81bd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        color: #FFFFFF;
        padding: 10px 0 10px 25px;
        font-weight: bold;
        border-left: 0px;
        border-bottom: 0px;
        letter-spacing: 0px;
        margin: 0;
    }
    #tmp_inquiry dl {
        border-bottom: 0px;
    }
    .article-contact dl dt {
        text-decoration: none;
        margin-left: 0;
    }
    #tmp_inquiry dd {
        margin-left: 0;
    }
    dd.margin-left-20 {
        margin-left: 20px;
    }
    #tmp_inquiry .tmp_inquiry_cnt {
        padding: 20px;
    }
    #tmp_inquiry .tmp_inquiry_cnt p {
        margin-bottom: 0;
    }
    #tmp_inquiry .tmp_inquiry_cnt p.shortName_text {
        padding-bottom: 10px;
    }
    .tmp_inquiry_cnt:after {
    content: ".";
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
}
#tmp_inquiry .tmp_inquiry_cnt {
        border-bottom: 1px solid #dcdddd;
        display: table;
        margin: 0 2%;
        overflow: hidden;
        width: 96%;
    }
    #tmp_inquiry .tmp_inquiry_cnt:last-child {
        border-bottom: none;
    }
    
    #tmp_inquiry .tmp_inquiry_cnt .phone_number {
        display: flex;
    }
    #tmp_inquiry .tmp_inquiry_cnt .phone_number p.fax {
        margin-left: 20px;
    }

    #tmp_inquiry .mail-contact {
        display: table-cell;
        vertical-align: middle;
    }
    #tmp_inquiry .mail-contact p .btn-large {
        padding: 12px 10px;
        width: 190px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
    #tmp_inquiry .mail-contact p a span {
        line-height: 1;
        vertical-align: middle !important;
    }
    .contact-block p {
        margin: 0;
        padding-left: 0;
        padding-right: 0;
    }
    .contact-block p.fax {
        margin-left: 20px;
    }
}

/* ======================================================================================
  SP
====================================================================================== */

@media screen and (max-width: 640px) {
    /* ===========================================
    SP 見出し
  =========================================== */
    h1 {
        color: #1b1464;
        font-weight: bold;
        padding: 10px;
    }
    h2 {
        color: #1b1464;
        font-weight: bold;
        border-bottom: solid 1px #ffffff;
        -webkit-box-shadow: 0px 1px 0px #babcd0;
        box-shadow: 0px 1px 0px #babcd0;
        margin: 0 0 20px;
    }
    h2 span {
        text-shadow: 1px 1px 0px white;
        letter-spacing: 0;
        font-weight: bold;
        color: #171c61;
        text-align: left;
        padding: 10px 10px 8px 13px;
        background: #d5e9ff;
        background: -webkit-gradient(linear, left top, right top, color-stop(0%, #d5e9ff), color-stop(100%, #f7fbff));
        background: -webkit-linear-gradient(left, #d5e9ff 0%, #f7fbff 100%);
        background: -o-linear-gradient(left, #d5e9ff 0%, #f7fbff 100%);
        background: -webkit-gradient(linear, left top, right top, from(#d5e9ff), to(#f7fbff));
        background: linear-gradient(to right, #d5e9ff 0%, #f7fbff 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d5e9ff', endColorstr='#f7fbff', GradientType=1);
        border-left: 4px solid #414d82;
        display: block;
    }
    h3 {
        border-left: 4px solid #414d82;
        border-bottom: 1px dotted #0041a9;
        padding: 0 0 0 16px;
        color: #2b4f89;
        font-weight: bold;
        margin: 0 0 10px;
    }
    h4 {
        margin: 0 0 10px;
        padding: 0 0 0 24px;
        color: #1f3f86;
        font-weight: bold;
        position: relative;
    }
    h5 {
        margin: 0 0 10px 0;
        color: #4e6c9c;
        font-size: 1.5rem;
        font-weight: bold;
    }
    h5 span {
        border: 1px solid #4e6c9c;
        padding: 0 14px;
        display: inline-block;
    }
    h6 {
        margin: 0 0 10px 0;
        padding: 0 0 0 15px;
        color: #4e6c9c;
        font-size: 1.5rem;
        font-weight: bold;
        position: relative;
    }
    h4:before {
        height: 14px;
        left: 0;
        position: absolute;
        top: 5px;
        width: 14px;
        background-color: #414d82;
        content: "";
    }
    /* ===========================================
    SP アコーディオン共通
  =========================================== */
    dd.toggle-contents {
        display: none;
        margin-left: 0;
    }
    /* ===========================================
    SP 詳細ページタイトル
  =========================================== */
    .main-title {
        background-color: #fff;
        overflow: hidden;
    }
    .main-title p {
        margin: 0;
        padding: 0 10px 20px;
        font-size: 1.6rem;
    }
    /* SP 左側テーブル
  =========================================== */
    .article-contents-text table {
        border-top: 1px solid #CCC;
        border-left: 1px solid #CCC;
        border-right: 1px solid #CCC;
    }
    .article-contents-text table tr {
        vertical-align: top;
    }
    .article-contents-text table tr th {
        background: #EDF7FF;
        color: #2b4f89;
        display: block;
        font-weight: bold;
        padding: 10px 12px;
        width: auto;
        border: none;
        border-bottom: 1px solid #C6C6C6;
    }
    .article-contents-text table tr td {
        border: none;
        border-bottom: 1px solid #CCCCCC;
        display: block;
        padding: 12px;
    }
    .article-contents-text table tr td ul li {
        padding-top: 5px;
        padding-left: 12px;
        padding-right: 12px;
    }
    .article-contents-text table tr td ul li {
        padding-bottom: 5px;
    }
    .article-contents-text table .boarding-position td li {
        border-bottom: none;
    }
    /* ===========================================
    SP この記事へのお問い合わせはこちら
  =========================================== */
    #tmp_inquiry {
        border-left: 1px solid #00499a;
        border-right: 1px solid #00499a;
        border-bottom: 1px solid #00499a;
        box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px;
        -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px;
        -moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px;
        margin: 0 0 10px 0;
        background-color: #fff;
        overflow: hidden;
    }
    #tmp_inquiry_ttl {
        padding: 0;
    }
    #tmp_inquiry_ttl h2 {
        background: #00499a; /* Old browsers */
        background: -moz-linear-gradient(left,  #00499a 0%, #1d81bd 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left,  #00499a 0%,#1d81bd 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right,  #00499a 0%,#1d81bd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        color: #FFFFFF;
        margin: 0;
        border: none;
        padding: 10px;
    }
    .tmp_inquiry_cnt {
        padding: 0;
    }
    .tmp_inquiry_cnt p.shortName_text {
        display: block;
        border-top: 1px solid #a7c5e6;
        border-bottom: 1px solid #a7c5e6;
        color: #1b1464;
        background-color: #f2f9ff;
        margin: 0 0 20px;
        padding: 12px 32px 12px 12px;
    }
    .tmp_inquiry_cnt p {
        display: inline-block;
        padding-right: 20px;
        padding-left: 20px;
        margin-bottom: 20px;
    }
    .tmp_inquiry_cnt p.fax {
        margin-left: 0;
    }
    


    .article-contact .padding-15,
    .article-contact .padding-20,
    .article-contact .padding-bottom-10 {
        padding: 0;
    }
    .article-contact .telephone {
        display: inline-block;
        padding-right: 20px;
        padding-left: 20px;
    }
    p.fax {
        margin-left: 20px;
    }
    p.mailAddress {
        display: inline-block;
        padding-right: 20px;
        padding-left: 20px;
    }
    .article-contact .mail-contact {
        padding: 0 0 10px !important;
    }
    .article-contact .mail-contact > p {
        text-align: center;
    }
    .article-contact .mail-contact > p .btn.btn-large {
        width: 220px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
    span.shortName_text {
        background-size: 11px 21px;
        display: block;
        padding: 12px 32px 12px 12px;
    }
    .contact-infomation > p a span.shortName_text {
        background: url(/images/shared-arrow-right-sp.png) no-repeat 96% 50% #f2f9ff;
        background-size: 11px 21px;
        padding: 12px 32px 12px 12px;
        text-decoration: none;
        display: block;
        color: #171c61;
    }
    .contact-infomation span.shortName_text {
        border-top: 1px solid #a7c5e6;
        border-bottom: 1px solid #a7c5e6;
        color: #1b1464;
        background-color: #f2f9ff;
        margin: 0 0 10px;
    }
}