@charset "utf-8";

/* ======================================================
 * parts_pc.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Element >>> Heading
 * - Element >>> Text
 * - Element >>> List
 * - Element >>> Link
 * - Element >>> Image
 * - Element >>> Video
 * - Element >>> Form
 * - Element >>> Other
 * - Layout >>> Section
 * - Layout >>> Column
 * - Layout >>> Table
 * - Layout >>> Box
 * - Layout >>> Other
 * - Component >>> Navi
 * - Component >>> Index
 * - Component >>> Other
 * - Clearfix
 * Media Queries
 * Print
====================================================== */

@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- font ----- */
  
  /* ----- a ----- */
  a:link img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  a.block {
    display: block;
  }
  
  /* ----- opacity ----- */
  a img.imgover:hover,
  .image-set a.a-modal:hover img,
  #cboxClose:hover,
  .accordion-layout-v2 > .accordion_trigger.js-accordion_trigger:hover,
  .shop-index-layout > a.block:hover .index_image img,
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow:hover::before,
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow:hover::before,
  .gallery-layout > .gallery_list .slick-dots > li:hover img,
  .gallery-layout > .gallery_list .slick-dots > li.slick-active img,
  .head-info-layout > .info_content .info_heading .info_time .info_time_update:hover {
    opacity: .7;
  }
  
  /* ----- transition ----- */
  .link-button > li > a,
  .link-button-v2 > li > a,
  .link-button-v4 > li > a,
  .link-button-v5 > li > a,
  .station-accordion-layout > .accordion_trigger {
    -webkit-transition: all .1s ease-out 0s;
    transition: all .1s ease-out 0s;
  }
  img.imgover,
  .image-set a.a-modal img,
  #cboxClose,
  .accordion-layout-v2 > .accordion_trigger,
  .shop-index-layout > a.block .index_image img,
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow::before,
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow::before,
  .gallery-layout > .gallery_list .slick-dots > li img {
    -webkit-transition: opacity .2s ease-out 0s;
    transition: opacity .2s ease-out 0s;
  }
  .image-set a.a-modal::before,
  .navi-guide .navi_visual > a.block .navi_title .navi_label,
  .accordion-layout > .accordion_trigger,
  .model-course-layout .model-course_navi .model-course_select {
    -webkit-transition: background-color .2s ease-out 0s;
    transition: background-color .2s ease-out 0s;
  }
  .gallery-layout > .gallery_list .slick-dots > li::after {
    -webkit-transition: border-color .2s ease-out 0s;
    transition: border-color .2s ease-out 0s;
  }
  .accordion-layout > .accordion_trigger::before,
  .accordion-layout-v2 > .accordion_trigger::before,
  .station-accordion-layout > .accordion_trigger::before {
    -webkit-transition: transform .2s ease-out 0s;
    transition: transform .2s ease-out 0s;
  }
  
  /* ----- link icon ----- */
  .a-blank::after,
  .a-pdf::after,
  .a-print::after,
  .a-mail::after,
  .a-excel::after,
  .a-word::after,
  .a-ppt::after,
  .a-rss::after,
  .a-zip::after,
  .a-video::after,
  .a-modal::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .link-button-v3 > li > .a-mail > .link_label::before,
  .index-layout-v2 > .a-blank .index_title::after,
  .index-layout-v2 > .a-pdf .index_title::after,
  .index-layout-v3 > .a-blank .index_title::after,
  .index-layout-v3 > .a-pdf .index_title::after,
  .index-layout-v5 > .a-blank .index_title::after,
  .index-layout-v5 > .a-pdf .index_title::after,
  .index-layout-v6 > .a-blank .index_title::after,
  .index-layout-v6 > .a-pdf .index_title::after,
  .shop-index-layout > .a-blank .index_title::after,
  .shop-index-layout > .a-pdf .index_title::after,
  .model-index-layout > .a-blank .index_title::after,
  .model-index-layout > .a-pdf .index_title::after,
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after,
  .news-layout-v2 .a-blank .news_title::after,
  .news-layout-v2 .a-pdf .news_title::after,
  [data-browser="ie11"] .twitter-timeline-layout .twitter-timeline::after {
    vertical-align: top;
    content: "";
  }
  .a-blank::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  .index-layout-v2 > .a-blank .index_title::after,
  .index-layout-v3 > .a-blank .index_title::after,
  .index-layout-v5 > .a-blank .index_title::after,
  .index-layout-v6 > .a-blank .index_title::after,
  .shop-index-layout > .a-blank .index_title::after,
  .model-index-layout > .a-blank .index_title::after,
  .news-layout .a-blank .news_title::after,
  .news-layout-v2 .a-blank .news_title::after,
  [data-browser="ie11"] .twitter-timeline-layout .twitter-timeline::after {
    width: 14px;
    height: 11px;
    background: url(/common/img/cmn_link_blank_ic01.png) no-repeat 0 0;
  }
  .a-pdf::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .index-layout-v2 > .a-pdf .index_title::after,
  .index-layout-v3 > .a-pdf .index_title::after,
  .index-layout-v5 > .a-pdf .index_title::after,
  .index-layout-v6 > .a-pdf .index_title::after,
  .shop-index-layout > .a-pdf .index_title::after,
  .model-index-layout > .a-pdf .index_title::after,
  .news-layout .a-pdf .news_title::after,
  .news-layout-v2 .a-pdf .news_title::after {
    width: 18px;
    height: 20px;
    background: url(/common/img/cmn_link_pdf_ic01.png) no-repeat 0 0;
  }
  .a-print::after {
    width: 17px;
    height: 14px;
    background: url(/common/img/cmn_link_print_ic01.png) no-repeat 0 0;
  }
  .a-mail::after {
    width: 14px;
    height: 12px;
    background: url(/common/img/cmn_link_mail_ic01.png) no-repeat 0 0;
  }
  .a-excel::after {
    width: 17px;
    height: 17px;
    background: url(/common/img/cmn_link_excel_ic01.png) no-repeat 0 0;
  }
  .a-word::after {
    width: 17px;
    height: 17px;
    background: url(/common/img/cmn_link_word_ic01.png) no-repeat 0 0;
  }
  .a-ppt::after {
    width: 17px;
    height: 17px;
    background: url(/common/img/cmn_link_ppt_ic01.png) no-repeat 0 0;
  }
  .a-rss::after {
    width: 14px;
    height: 14px;
    background: url(/common/img/cmn_link_rss_ic01.png) no-repeat 0 0;
  }
  .a-zip::after {
    width: 13px;
    height: 16px;
    background: url(/common/img/cmn_link_zip_ic01.png) no-repeat 0 0;
  }
  .a-video::after {
    width: 15px;
    height: 12px;
    background: url(/common/img/cmn_link_movie_ic01.png) no-repeat 0 0;
  }
  .a-modal::after {
    height: 24px;
    width: 24px;
    background: url(/common/img/cmn_link_modal_ic01.png) no-repeat 0 0;
  }
  .link-button-v3 > li > .a-mail > .link_label::before {
    width: 31px;
    height: 21px;
    background: url(/common/img/cmn_mail_ic01.png) no-repeat 0 0;
  }
  [class*="heading-lv"] .a-blank::after,
  [class*="heading-lv"] .a-pdf::after,
  .link-button-v3 > li > [class*="a-"]::after,
  .index-layout-v2 > .a-blank::after,
  .index-layout-v2 > .a-pdf::after,
  .index-layout-v3 > .a-blank::after,
  .index-layout-v3 > .a-pdf::after,
  .index-layout-v5 > .a-blank::after,
  .index-layout-v5 > .a-pdf::after,
  .index-layout-v6 > .a-blank::after,
  .index-layout-v6 > .a-pdf::after,
  .shop-index-layout > .a-blank::after,
  .shop-index-layout > .a-pdf::after,
  .model-index-layout > .a-blank::after,
  .model-index-layout > .a-pdf::after,
  .news-layout .a-blank::after,
  .news-layout .a-pdf::after,
  .news-layout-v2 .a-blank::after,
  .news-layout-v2 .a-pdf::after {
    display: none;
  }
  .link-inline.a-blank::after {
    display: inline-block;
    margin: .45em 8px 0 8px;
  }
  .info-layout > .info_article .info_title a.a-blank::after {
    display: inline-block;
    margin: .45em 0 0 8px;
  }
  .link-inline.a-pdf::after {
    display: inline-block;
    margin: .15em 8px 0 8px;
  }
  .info-layout > .info_article .info_title a.a-pdf::after {
    display: inline-block;
    margin: .15em 0 0 8px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-inline.a-blank::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .info-layout > .info_article .info_title .a-blank::after {
    margin-top: .25em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-inline.a-pdf::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .info-layout > .info_article .info_title .a-pdf::after {
    margin-top: 0;
  }
  .link-text > li > .a-blank::after,
  .index-layout-v2 > .a-blank .index_title::after,
  .index-layout-v2 > .block .index_title a.a-blank::after,
  .index-layout-v3 > .a-blank .index_title::after,
  .index-layout-v5 > .a-blank .index_title::after,
  .index-layout-v6 > .a-blank .index_title::after,
  .shop-index-layout > .a-blank::after,
  .model-index-layout > .a-blank::after,
  .navi-local .navi_list > li > .a-blank::after,
  [data-browser="ie11"] .twitter-timeline-layout .twitter-timeline::after {
    display: inline-block;
    margin: .45em 0 0 12px;
  }
  .link-text > li > .a-pdf::after,
  .index-layout-v2 > .a-pdf .index_title::after,
  .index-layout-v2 > .block .index_title a.a-pdf::after,
  .index-layout-v3 > .a-pdf .index_title::after,
  .index-layout-v5 > .a-pdf .index_title::after,
  .index-layout-v6 > .a-pdf .index_title::after,
  .shop-index-layout > .a-pdf::after,
  .model-index-layout > .a-pdf::after,
  .navi-local .navi_list > li > .a-pdf::after {
    display: inline-block;
    margin: .15em 0 0 12px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-blank::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v2 > .a-blank .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v2 > .block .index_title a.a-blank::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v3 > .a-blank .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v5 > .a-blank .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v6 > .a-blank .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .shop-index-layout > .a-blank .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .model-index-layout > .a-blank .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-local .navi_list > li > .a-blank::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .twitter-timeline-layout .twitter-timeline::after {
    margin-top: .25em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-pdf::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v2 > .a-pdf .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v2 > .block .index_title a.a-pdf::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v3 > .a-pdf .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v5 > .a-pdf .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v6 > .a-pdf .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .shop-index-layout > .a-pdf .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .model-index-layout > .a-pdf .index_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-local .navi_list > li > .a-pdf::after {
    margin-top: 0;
  }
  .link-text > li > .a-excel::after,
  .link-text > li > .a-word::after,
  .link-text > li > .a-ppt::after,
  .link-text > li > .a-zip::after {
    display: inline-block;
    margin: .2em 0 0 12px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-excel::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-word::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-ppt::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-zip::after {
    margin-top: .1em;
  }
  .link-text > li > .a-print::after,
  .link-text > li > .a-rss::after,
  .link-text > li > .a-mail::after {
    display: inline-block;
    margin: .4em 0 0 12px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-print::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-rss::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-mail::after {
    margin-top: .3em;
  }
  .link-text > li > .a-video::after {
    display: inline-block;
    margin: .5em 0 0 12px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > .a-video::after {
    margin-top: .3em;
  }
  .link-button > li > .a-blank::after,
  .link-button-v2 > li > .a-blank::after,
  .link-button-v4 > li > .a-blank::after,
  .link-button-v5 > li > .a-blank::after,
  .gmap-layout .gmap_button > .a-blank::after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -6px;
  }
  .link-button > li > .a-pdf::after,
  .link-button-v2 > li > .a-pdf::after,
  .link-button-v4 > li > .a-pdf::after,
  .link-button-v5 > li > .a-pdf::after {
    position: absolute;
    top: 50%;
    right: 12px;
    margin-top: -10px;
  }
  .link-button > li > .a-excel::after,
  .link-button > li > .a-word::after,
  .link-button > li > .a-ppt::after,
  .link-button > li > .a-zip::after,
  .link-button > li > .a-mail::after,
  .link-button-v2 > li > .a-excel::after,
  .link-button-v2 > li > .a-word::after,
  .link-button-v2 > li > .a-ppt::after,
  .link-button-v2 > li > .a-zip::after,
  .link-button-v2 > li > .a-mail::after,
  .link-button-v4 > li > .a-excel::after,
  .link-button-v4 > li > .a-word::after,
  .link-button-v4 > li > .a-ppt::after,
  .link-button-v4 > li > .a-zip::after,
  .link-button-v4 > li > .a-mail::after,
  .link-button-v5 > li > .a-excel::after,
  .link-button-v5 > li > .a-word::after,
  .link-button-v5 > li > .a-ppt::after,
  .link-button-v5 > li > .a-zip::after,
  .link-button-v5 > li > .a-mail::after {
    position: absolute;
    top: 50%;
    right: 13px;
    margin-top: -8px;
  }
  .link-button > li > .a-print::after,
  .link-button > li > .a-rss::after,
  .link-button > li > .a-video::after,
  .link-button-v2 > li > .a-print::after,
  .link-button-v2 > li > .a-rss::after,
  .link-button-v2 > li > .a-video::after,
  .link-button-v4 > li > .a-print::after,
  .link-button-v4 > li > .a-rss::after,
  .link-button-v4 > li > .a-video::after,
  .link-button-v5 > li > .a-print::after,
  .link-button-v5 > li > .a-rss::after,
  .link-button-v5 > li > .a-video::after {
    position: absolute;
    top: 50%;
    right: 13px;
    margin-top: -7px;
  }
  .link-button-v3 > li > .a-mail > .link_label::before {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -11px;
  }
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after {
    display: inline-block;
  }
  .heading-lv2 .a-blank .heading_title::after {
    margin: .55em 0 0 15px;
  }
  .heading-lv2 .a-pdf .heading_title::after {
    margin: .35em 0 0 15px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv2 .a-blank .heading_title::after {
    margin-top: .45em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv2 .a-pdf .heading_title::after {
    margin-top: .25em;
  }
  .heading-lv3 .a-blank .heading_title::after {
    margin: .45em 0 0 15px;
  }
  .heading-lv3 .a-pdf .heading_title::after {
    margin: .25em 0 0 15px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv3 .a-blank .heading_title::after {
    margin-top: .35em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv3 .a-pdf .heading_title::after {
    margin-top: .15em;
  }
  .heading-lv4 .a-blank .heading_title::after {
    margin: .4em 0 0 15px;
  }
  .heading-lv4 .a-pdf .heading_title::after {
    margin: .2em 0 0 15px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv4 .a-blank .heading_title::after {
    margin-top: .25em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv4 .a-pdf .heading_title::after {
    margin-top: .05em;
  }
  .heading-lv5 .a-blank .heading_title::after {
    margin: .4em 0 0 15px;
  }
  .heading-lv5 .a-pdf .heading_title::after {
    margin: .2em 0 0 15px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv5 .a-blank .heading_title::after {
    margin-top: .3em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv5 .a-pdf .heading_title::after {
    margin-top: .1em;
  }
  .image-set a.a-modal::after {
    position: absolute;
    bottom: 8px;
    right: 7px;
    z-index: 1;
  }
  .index-layout > .index_visual > .a-blank::after {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -6px;
  }
  .index-layout > .index_visual > .a-pdf::after {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -10px;
  }
  .news-layout .news_article .a-blank .news_title::after,
  .news-layout-v2 .news_article .a-blank .news_title::after {
    display: inline-block;
    margin: .2em 0 0 12px;
  }
  .news-layout .news_article .a-pdf .news_title::after,
  .news-layout-v2 .news_article .a-pdf .news_title::after {
    display: inline-block;
    margin: .1em 0 0 12px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .news-layout .news_article .a-blank .news_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .news-layout-v2 .news_article .a-blank .news_title::after {
    margin-top: .1em;
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .news-layout .news_article .a-pdf .news_title::after,
  [data-browser="ie11"]:not([data-font="meiryo"]) .news-layout-v2 .news_article .a-pdf .news_title::after {
    margin-top: 0;
  }
  
  /* ----- data-row-pc ----- */
  [data-row-pc]:not([data-row-pc="1"]) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  [data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-left: 36px;
  }
  [data-row-pc="1"] > *:nth-child(-n+1),
  [data-row-pc="2"] > *:nth-child(-n+2),
  [data-row-pc="3"] > *:nth-child(-n+3),
  [data-row-pc="4"] > *:nth-child(-n+4),
  [data-row-pc="5"] > *:nth-child(-n+5),
  [data-row-pc="6"] > *:nth-child(-n+6) {
    margin-top: 0 !important;
  }
  [data-row-pc="1"] > *,
  [data-row-pc="2"] > *:nth-child(2n+1),
  [data-row-pc="3"] > *:nth-child(3n+1),
  [data-row-pc="4"] > *:nth-child(4n+1),
  [data-row-pc="5"] > *:nth-child(5n+1),
  [data-row-pc="6"] > *:nth-child(6n+1) {
    margin-left: 0 !important;
  }
  [data-row-pc="2"] > * { width: calc((100% -  36px) / 2); }
  [data-row-pc="3"] > * { width: calc((100% -  72px) / 3); }
  [data-row-pc="4"] > * { width: calc((100% - 108px) / 4); }
  [data-row-pc="5"] > * { width: calc((100% - 144px) / 5); }
  [data-row-pc="6"] > * { width: calc((100% - 180px) / 6); }
  /* for IE11 & Edge */
  [data-browser="ie11"] [data-row-pc="2"] > * { width: calc(((100% -  36px) / 2) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="3"] > * { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="4"] > * { width: calc(((100% - 108px) / 4) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="5"] > * { width: calc(((100% - 144px) / 5) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="6"] > * { width: calc(((100% - 180px) / 6) - 0.1px); }
  [data-browser="edge"] [data-row-pc="2"] > * { width: calc(((100% -  36px) / 2) - 0.1px); }
  [data-browser="edge"] [data-row-pc="3"] > * { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="edge"] [data-row-pc="4"] > * { width: calc(((100% - 108px) / 4) - 0.1px); }
  [data-browser="edge"] [data-row-pc="5"] > * { width: calc(((100% - 144px) / 5) - 0.1px); }
  [data-browser="edge"] [data-row-pc="6"] > * { width: calc(((100% - 180px) / 6) - 0.1px); }
  [data-row-pc="auto"] {
    margin-bottom: -.5em;
    overflow: hidden;
  }
  [data-row-pc="auto"] > * {
    margin-top: 0 !important;
    margin-right: 36px;
    margin-bottom: .5em;
    margin-left: 0;
  }
  .link-text[data-row-pc="auto"] {
    margin-bottom: -.5em;
  }
  .link-text[data-row-pc="auto"] > li {
    margin-right: 60px;
    margin-bottom: .5em;
  }
  .navi-anchor .navi_inner[data-row-pc="auto"],
  .navi-anchor-v2 .navi_inner[data-row-pc="auto"] {
    margin-bottom: -1em;
  }
  .navi-anchor .navi_inner[data-row-pc="auto"] > li,
  .navi-anchor-v2 .navi_inner[data-row-pc="auto"] > li {
    margin-right: 50px;
    margin-bottom: 1em;
  }
  
  /* ------------------------------------------------------
   * Element >>> Heading
  ------------------------------------------------------ */
  [class^="heading-lv"] .heading_title {
    line-height: 1.5;
  }
  [class*="heading-lv"] > .block {
    display: inline-block;
    text-decoration: none;
  }
  [class*="heading-lv"] a:link .heading_title {
    text-decoration: underline;
  }
  [class*="heading-lv"] a:hover .heading_title {
    text-decoration: none;
  }
  #main .heading-lv1 + *,
  #main .heading-lv1 + section > [class*="heading-lv"]:first-child {
    margin-top: 2.5em;
  }
  #main .heading-lv2 + * {
    margin-top: 1.9em;
  }
  #main .heading-lv3 + *,
  #main .heading-lv4 + * {
    margin-top: 1.25em;
  }
  #main .heading-lv5 + * {
    margin-top: .95em;
  }
  
  /* ----- heading-lv1 ----- */
  .heading-lv1 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    margin: 0 0 2.5em;
  }
  .heading-lv1 > .block {
    width: 100%;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv1 > .block {
    padding-top: 5px;
  }
  .heading-lv1 > .heading_image,
  .heading-lv1.has-icon > .heading_icon {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
  }
  .heading-lv1 > .heading_image {
    width: 210px;
    margin-right: 36px;
    text-align: center;
  }
  .heading-lv1 > .heading_image.size-3col {
    width: calc((100% - 72px) /3);
  }
  .heading-lv1 > .heading_image.size-4col {
    width: calc((100% - 108px) /4);
  }
  .heading-lv1 > .heading_image.size-5col {
    width: calc((100% - 144px) /5);
  }
  .heading-lv1 > .heading_image.size-6col {
    width: calc((100% - 180px) /6);
  }
  .heading-lv1.has-icon > .heading_icon {
    width: 80px;
    margin-right: 15px;
    text-align: center;
  }
  .heading-lv1 .heading_title {
    font-size: 3.2rem;
  }
  .heading-lv1 .heading_subtitle {
    margin-bottom: .25em;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.5;
  }
  
  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    position: relative;
    margin: 5em 0 1.9em;
    padding-top: 25px;
    border-top: 1px solid #ddd;
    text-align: center;
  }
  .heading-lv2::before {
    position: absolute;
    top: -1px;
    left: 50%;
    width: 212px;
    height: 1px;
    margin-left: -106px;
    background-color: #003b83;
    content: "";
  }
  .heading-lv2 .heading_title {
    font-size: 2.8rem;
    font-weight: 700;
  }
  .heading-lv2.has-icon .heading_title {
    display: inline-block;
    position: relative;
    padding-left: 55px;
  }
  .heading-lv2.has-icon .heading_title .heading_icon {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 36px;
    height: 36px;
    margin-top: -18px;
    padding: 1px 0 0 1px;
    border-radius: 50%;
    background-color: #003b83;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 700;
    font-style: normal;
    line-height: 1;
  }
  .heading-lv2.has-icon .heading_title .heading_icon-v2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 36px;
    height: 36px;
    margin-top: -18px;
    padding: 1px 0 0 1px;
    border-radius: 50%;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 700;
    font-style: normal;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv2.has-icon .heading_title .heading_icon,
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv2.has-icon .heading_title .heading_icon-v2 {
    margin-top: -23px;
    padding-top: 7px;
  }
  .heading-lv2 .heading_subtitle {
    margin-bottom: .25em;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.5;
  }
  
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    position: relative;
    margin: 3.75em 0 1.25em;
    padding-left: 36px;
  }
  .heading-lv3::before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 6px;
    height: 100%;
    border-radius: 3px;
    background-color: #003b83;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv3::before {
    margin-top: -2px;
  }
  .heading-lv3 .heading_title {
    font-size: 2.4rem;
    font-weight: 700;
  }
  .heading-lv3 .heading_subtitle {
    color: #333;
    font-size: 1.8rem;
    line-height: 1.5;
  }
  
  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 2.5em 0 1.25em;
  }
  .heading-lv4 .heading_title {
    position: relative;
    padding-left: 25px;
    font-size: 1.8rem;
    font-weight: 700;
  }
  .heading-lv4 .heading_title::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 16px;
    height: 6px;
    border-radius: 3px;
    background-color: #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .heading-lv4 .heading_title::before {
    top: .35em;
  }
  .heading-lv4 .heading_subtitle {
    color: #333;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  
  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 1.9em 0 .95em;
  }
  .heading-lv5 .heading_title {
    font-size: 1.8rem;
    font-weight: 700;
  }
  .heading-lv4 .heading_subtitle {
    color: #333;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  
  /* ------------------------------------------------------
   * Element >>> Text
  ------------------------------------------------------ */
  /* ----- text-paragraph ----- */
  .text-paragraph {
    margin-top: 1em;
  }
  .text-paragraph[data-gap-pc="x0"]   { margin-top: 0 !important; }
  .text-paragraph[data-gap-pc="x0.5"] { margin-top: .5em !important; }
  .text-paragraph[data-gap-pc="x1"]   { margin-top: 1em !important; }
  .text-paragraph[data-gap-pc="x1.5"] { margin-top: 1.5em !important; }
  .text-paragraph[data-gap-pc="x2"]   { margin-top: 2em !important; }
  .text-paragraph[data-gap-pc="x2.5"] { margin-top: 2.5em !important; }
  .text-paragraph[data-gap-pc="x3"]   { margin-top: 3em !important; }
  
  /* ----- text-lead ----- */
  .text-lead {
    margin: 1.5em 0 1em;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  #main .text-lead + * {
    margin-top: 1.5em;
  }
  
  /* ----- text-title ----- */
  .text-title {
    margin: 1.5em 0 .5em;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  #main .text-title + * {
    margin-top: .5em;
  }
  
  /* ----- text-title ----- */
  .text-unit {
    margin: 2.5em 0 .5em;
    text-align: right;
  }
  #main .text-unit + * {
    margin-top: .75em;
  }
  
  /* ----- text-tel ----- */
  .text-tel:not(span) {
    margin-top: 1em;
  }
  
  /* ----- news-text-note ----- */
  .news-text-note {
    margin-top: 2.5em;
    padding: 12px 15px;
    background-color: #f4f4f4;
    color: #666;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .news-text-note {
    padding-top: 15px;
  }
  
  /* ----- text-icon ----- */
  .text-icon {
    display: inline-block;
    position: relative;
    top: -1px;
    margin-left: 10px;
    padding: 4px 8px 3px;
    background-color: #bbb;
    color: #fff;
    font-size: 1.3rem;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .text-icon {
    padding: 6px 8px 2px;
  }
  .text-icon.color1 {
    background-color: #e6204d;
  }
  
  /* ----- text-pasmo ----- */
  .text-pasmo {
    position: relative;
    margin-top: 1em;
    padding-left: 80px;
  }
  .text-pasmo .text_image {
    position: absolute;
    top: .25em;
    left: 0;
    width: 70px;
  }
  
  /* ------------------------------------------------------
   * Element >>> List
  ------------------------------------------------------ */
  [class*="list-note"],
  [class*="list-bullet"],
  [class*="list-order"] {
    margin-top: 1em;
  }
  [class*="list-note"][data-gap-pc="x0"],
  [class*="list-bullet"][data-gap-pc="x0"],
  [class*="list-order"][data-gap-pc="x0"]   { margin-top: 0 !important; }
  [class*="list-note"][data-gap-pc="x0.5"],
  [class*="list-bullet"][data-gap-pc="x0.5"],
  [class*="list-order"][data-gap-pc="x0.5"] { margin-top: .5em !important; }
  [class*="list-note"][data-gap-pc="x1"],
  [class*="list-bullet"][data-gap-pc="x1"],
  [class*="list-order"][data-gap-pc="x1"]   { margin-top: 1em !important; }
  [class*="list-note"][data-gap-pc="x1.5"],
  [class*="list-bullet"][data-gap-pc="x1.5"],
  [class*="list-order"][data-gap-pc="x1.5"] { margin-top: 1.5em !important; }
  [class*="list-note"][data-gap-pc="x2"],
  [class*="list-bullet"][data-gap-pc="x2"],
  [class*="list-order"][data-gap-pc="x2"]   { margin-top: 2em !important; }
  [class*="list-note"][data-gap-pc="x2.5"],
  [class*="list-bullet"][data-gap-pc="x2.5"],
  [class*="list-order"][data-gap-pc="x2.5"] { margin-top: 2.5em !important; }
  [class*="list-note"][data-gap-pc="x3"],
  [class*="list-bullet"][data-gap-pc="x3"],
  [class*="list-order"][data-gap-pc="x3"]   { margin-top: 3em !important; }
  [class*="list-description"] {
    margin-top: 1.5em;
  }
  [class*="list-note"].is-caution {
    color: #e6204d;
    font-weight: 700;
  }
  [class*="list-description"][data-gap-pc="x0"]   { margin-top: 0 !important; }
  [class*="list-description"][data-gap-pc="x0.5"] { margin-top: .75em !important; }
  [class*="list-description"][data-gap-pc="x1"]   { margin-top: 1.5em !important; }
  [class*="list-description"][data-gap-pc="x1.5"] { margin-top: 2.25em !important; }
  [class*="list-description"][data-gap-pc="x2"]   { margin-top: 3em !important; }
  [class*="list-description"][data-gap-pc="x2.5"] { margin-top: 3.75em !important; }
  [class*="list-description"][data-gap-pc="x3"]   { margin-top: 4.5em !important; }
  [class*="list-note"] > li + li,
  [class*="list-bullet"] > li + li,
  [class*="list-order"] > li + li {
    margin-top: .5em;
  }
  [class*="list-"].is-nest {
    margin: .5em 0 .75em;
  }
  [class*="list-note"] > li > .list_detail,
  [class*="list-bullet"] > li > .list_detail,
  [class*="list-order"] > li > .list_detail {
    margin-top: .25em;
  }
  [class*="list-note"] > li > .list_detail > *:first-child,
  [class*="list-note"] > li > .list_detail > section:first-child > [class*="heading-lv"],
  [class*="list-bullet"] > li > .list_detail > *:first-child,
  [class*="list-bullet"] > li > .list_detail > section:first-child > [class*="heading-lv"],
  [class*="list-order"] > li > .list_detail > *:first-child,
  [class*="list-order"] > li > .list_detail > section:first-child > [class*="heading-lv"],
  [class*="list-description"] > dd > *:first-child,
  [class*="list-description"] > dd > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- list-al-right ----- */
  .list-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  
  /* ----- list-note ----- */
  .list-note > li {
    position: relative;
    padding-left: 1.25em;
    font-size: 1.4rem;
  }
  .list-note > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v2 */
  .list-note-v2 > li {
    position: relative;
    padding-left: .75em;
    font-size: 1.3rem;
  }
  .list-note-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-note-order ----- */
  .list-note-order > li {
    position: relative;
    padding-left: 2.5em;
    font-size: 1.4rem;
  }
  .list-note-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v2 */
  .list-note-order-v2 > li {
    position: relative;
    padding-left: 2em;
    font-size: 1.3rem;
  }
  .list-note-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-bullet ----- */
  .list-bullet > li {
    position: relative;
    padding-left: 20px;
  }
  .list-bullet > li::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .list-bullet > li::before {
    top: .45em;
  }
  /* v2 */
  .list-bullet-v2 > li {
    position: relative;
    padding-left: 16px;
    font-size: 1.4rem;
  }
  .list-bullet-v2 > li::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .list-bullet-v2 > li::before {
    top: .45em;
  }
  /* v3 */
  .list-bullet-v3 > li {
    position: relative;
    padding-left: 16px;
  }
  .list-bullet-v3 > li::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .list-bullet-v3 > li::before {
    top: .5em;
  }
  
  /* ----- list-order ----- */
  .list-order > li {
    position: relative;
    padding-left: 1.75em;
  }
  .list-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
    color: #003b83;
    font-weight: 700;
  }
  /* v2 */
  .list-order-v2 > li {
    position: relative;
    padding-left: 3em;
    font-size: 1.4rem;
  }
  .list-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-description ----- */
  .list-description > dt {
    margin: .75em 0 .25em;
    font-weight: 700;
  }
  .list-description > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description > dd:first-child {
    margin-top: 0 !important;
  }
  /* v2 */
  .list-description-v2 + .list-description-v2 {
    margin-top: .75em;
  }
  .list-description-v2 > dt {
    position: relative;
    margin: .75em 0 .25em;
    padding-left: 16px;
    font-weight: 700;
  }
  .list-description-v2 > dt::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .list-description-v2 > dt::before {
    top: .5em;
  }
  .list-description-v2 > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description-v2 > dd {
    padding-left: 16px;
  }
  .list-description-v2 > dd:first-child {
    margin-top: 0 !important;
  }
  /* v3 */
  .list-description-v3 > dt {
    float: left;
    margin-right: .25em;
  }
  .list-description-v3 > dt::after {
    content: "：";
  }
  .list-description-v3 > dd {
    overflow: hidden;
  }
  .list-description-v3 > dd > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Element >>> Link
  ------------------------------------------------------ */
  [class*="link-text"] {
    margin-top: 1em;
  }
  [class*="link-text"][data-gap-pc="x0"]   { margin-top: 0 !important; }
  [class*="link-text"][data-gap-pc="x0.5"] { margin-top: .5em !important; }
  [class*="link-text"][data-gap-pc="x1"]   { margin-top: 1em !important; }
  [class*="link-text"][data-gap-pc="x1.5"] { margin-top: 1.5em !important; }
  [class*="link-text"][data-gap-pc="x2"]   { margin-top: 2em !important; }
  [class*="link-text"][data-gap-pc="x2.5"] { margin-top: 2.5em !important; }
  [class*="link-text"][data-gap-pc="x3"]   { margin-top: 3em !important; }
  [class*="link-text"] > li + li {
    margin-top: .75em;
  }
  [class*="link-text"] > li > a:hover {
    text-decoration: underline;
  }
  [class*="link-button"] {
    margin-top: 1.5em;
  }
  [class*="link-button"][data-gap-pc="x0"]   { margin-top: 0 !important; }
  [class*="link-button"][data-gap-pc="x0.5"] { margin-top: .75em !important; }
  [class*="link-button"][data-gap-pc="x1"]   { margin-top: 1.5em !important; }
  [class*="link-button"][data-gap-pc="x1.5"] { margin-top: 2.25em !important; }
  [class*="link-button"][data-gap-pc="x2"]   { margin-top: 3em !important; }
  [class*="link-button"][data-gap-pc="x2.5"] { margin-top: 3.75em !important; }
  [class*="link-button"][data-gap-pc="x3"]   { margin-top: 4.5em !important; }
  [class*="link-button"] > li + li {
    margin-top: 1em;
  }
  [class*="link-button"] a {
    line-height: 1.5;
  }
  [class*="link-button"] a.gp-w-100per {
    min-width: 0;
  }
  [class*="link-button"].gp-al-center:not(.link-button-v4):not(.link-button-v5) {
    margin-top: 2em;
  }
  [class*="link-button"].is-centering {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 2em;
  }
  [class*="link-button"].is-centering > li {
    display: -webkit-flex;
    display: flex;
  }
  [class*="link-button"].is-centering > li + li {
    margin-top: 0;
    margin-left: 36px;
  }
  [class*="link-button"][data-row-pc] > li {
    display: -webkit-flex;
    display: flex;
  }
  [class*="link-button"][data-row-pc] > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    min-width: 0;
  }
  [class*="link-button"] > li > a[class*="js-equalHeight_"] {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  [class*="link-"].is-nest {
    margin: .5em 0 1em;
  }
  
  /* ----- link-inline ----- */
  a.link-inline {
    text-decoration: underline;
  }
  a.link-inline:hover {
    text-decoration: none;
  }
  [class*="list-note"] > li > a.link-inline,
  [class*="list-bullet"] > li > a.link-inline,
  [class*="list-order"] > li > a.link-inline {
    color: #333;
    text-decoration: none;
  }
  [class*="list-note"] > li > a.link-inline:hover,
  [class*="list-bullet"] > li > a.link-inline:hover,
  [class*="list-order"] > li > a.link-inline:hover {
    color: #003b83;
    text-decoration: underline;
  }
  
  /* ----- link-text ----- */
  .link-text > li > a {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    color: #333;
  }
  .link-text > li > a:hover {
    color: #003b83;
  }
  .link-text > li > a::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-text > li > a::before {
    top: .45em;
  }
  
  /* ----- link-button ----- */
  .link-button > li {
    padding-bottom: 2px;
  }
  .link-button > li > a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    padding: 15px 35px 15px 55px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    text-align: center;
    vertical-align: top;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .link-button > li > a:hover {
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .link-button > li > a::before {
    position: absolute;
    top: 50%;
    left: 30px;
    width: 0;
    height: 0;
    margin-top: -4px;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  .link-button .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-button .link_label {
    padding-top: 4px;
  }
  .link-button.type-news {
    margin-top: 2.75em;
    text-align: center;
  }
  .link-button.type-news > li > a {
    min-width: 230px;
    padding-right: 55px;
  }
  /* v2 */
  .link-button-v2 > li {
    padding-bottom: 2px;
  }
  .link-button-v2 > li > a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    padding: 15px 35px 15px 55px;
    border-radius: 3px;
    background-color: #003b83;
    color: #fff;
    font-weight: 700;
    text-align: center;
    vertical-align: top;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .link-button-v2 > li > a:hover {
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .link-button-v2 > li > a::before {
    position: absolute;
    top: 50%;
    left: 30px;
    width: 0;
    height: 0;
    margin-top: -4px;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #fff;
    content: "";
  }
  .link-button-v2 .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-button-v2 .link_label {
    padding-top: 4px;
  }
  /* v3 */
  .link-button-v3 > li {
    padding-bottom: 2px;
  }
  .link-button-v3 > li > a {
    display: inline-block;
    position: relative;
    min-width: 340px;
    padding: 15px 35px;
    border-radius: 3px;
    background-color: #e6204d;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    vertical-align: top;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .link-button-v3 > li > a:hover {
    background-color: #ee6383;
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .link-button-v3 .link_label {
    position: relative;
    display: inline-block;
    line-height: 1.5;
  }
  .link-button-v3 > li > .a-mail > .link_label {
    padding-left:  45px;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-button-v3 .link_label {
    padding-top: 4px;
  }
  /* v4 */
  .link-button-v4 > li {
    padding-bottom: 2px;
  }
  .link-button-v4 > li > a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    padding: 12px 10px 10px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    font-weight: 700;
    text-align: center;
    vertical-align: top;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .link-button-v4 > li > a.a-blank,
  .link-button-v4 > li > a.a-pdf {
    padding: 12px 35px 10px;
  }
  .link-button-v4 > li > a:hover {
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .link-button-v4 .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-button-v4 .link_label {
    padding-top: 4px;
  }
  /* v5 */
  .link-button-v5 > li {
    padding-bottom: 2px;
  }
  .link-button-v5 > li > a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    padding: 13px 11px 11px;
    border-radius: 3px;
    background-color: #003b83;
    color: #fff;
    font-weight: 700;
    text-align: center;
    vertical-align: top;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .link-button-v5 > li > a.a-blank,
  .link-button-v5 > li > a.a-pdf {
    padding: 13px 35px 11px 55px;
  }
  .link-button-v5 > li > a:hover {
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .link-button-v5 .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .link-button-v5 .link_label {
    padding-top: 4px;
  }
  
  /* ------------------------------------------------------
   * Element >>> Image
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .image-set {
    margin-top: 1em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .image-set .image_caption {
    margin-top: .7em;
    font-size: 1.4rem;
    text-align: left;
  }
  .image-set.gp-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  .image-set.gp-al-left {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  /* for IE11 */
  [data-browser="ie11"] .image-set > .image_inner {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }
  .image-set a.a-modal {
    display: block;
    position: relative;
  }
  .image-set a.a-modal::before {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 40px;
    border-radius: 9px 0 0 0;
    background-color: #003b83;
    z-index: 1;
    content: "";
  }
  .image-set a.a-modal:hover::before {
    background-color: #0e57b0;
  }
  .image-set.type-poster .image_inner {
    width: 83%;
    padding: 5px;
    border: 1px solid #ccc;
    background-color: #fff;
  }
  
  /* ----- pasmo-image-icon ----- */
  .pasmo-image-icon {
    position: relative;
    font-size: 0;
    vertical-align: top;
  }
  .pasmo-image-icon img {
    width: 70px;
  }
  span.pasmo-image-icon {
    display: inline-block;
    margin-left: 10px;
  }
  .heading-lv1 span.pasmo-image-icon {
    top: 10px;
  }
  .heading-lv1 span.pasmo-image-icon img {
    width: 110px;
  }
  div.pasmo-image-icon {
    padding-top: 5px;
  }
  
  /* ------------------------------------------------------
   * Element >>> Video
  ------------------------------------------------------ */
  /* ----- youtube-layout ----- */
  [class*="youtube-layout"] .youtube_inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  [class*="youtube-layout"] .youtube_inner > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .youtube-layout {
    width: 800px;
    max-width: 100%;
    margin: 2em auto 0;
  }
  
  /* ------------------------------------------------------
   * Element >>> Form
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element >>> Other
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Layout >>> Section
  ------------------------------------------------------ */
  /* ----- section-wide-layout ----- */
  section[class*="section-wide-layout"] {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 0 40px;
    background-color: #fff;
  }
  section.section-wide-layout.color1 {
    padding-bottom: 40px;
    background-color: #e8f1ff;
  }
  section[class*="section-wide-layout"] > * {
    width: 1200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  section[class*="section-wide-layout"][class*="color"] > .heading-lv2 {
    width: auto;
    max-width: none;
    margin-left: -40px;
    margin-right: -40px;
    padding-left: 40px;
    padding-right: 40px;
  }
  section[class*="section-wide-layout"][class*="color"] > .heading-lv2 > .block {
    width: 1200px;
    max-width: 100%;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Column
  ------------------------------------------------------ */
  [class*="column-layout"] > [class*="column_item"] > *:first-child,
  [class*="column-layout"] > [class*="column_item"] > section:first-child > [class*="heading-lv"],
  [class*="column-media"] > [class*="column_"] > *:first-child,
  [class*="column-media"] > [class*="column_"] > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- column-layout ----- */
  .column-layout {
    margin-top: 2.5em;
  }
  .column-layout[data-gap-pc="x0"]   { margin-top: 0 !important; }
  .column-layout[data-gap-pc="x0.5"] { margin-top: 1.25em !important; }
  .column-layout[data-gap-pc="x1"]   { margin-top: 2.5em !important; }
  .column-layout[data-gap-pc="x1.5"] { margin-top: 3.75em !important; }
  .column-layout[data-gap-pc="x2"]   { margin-top: 5em !important; }
  .column-layout > .column_item {
    margin-top: 1.5em;
  }
  .column-layout.type-door > .column_item {
    margin-top: 2em;
  }
  
  /* ----- column-media ----- */
  .column-media {
    margin-top: 2.5em;
  }
  .column-media[data-gap-pc="x0"]   { margin-top: 0 !important; }
  .column-media[data-gap-pc="x0.5"] { margin-top: 1.25em !important; }
  .column-media[data-gap-pc="x1"]   { margin-top: 2.5em !important; }
  .column-media[data-gap-pc="x1.5"] { margin-top: 3.75em !important; }
  .column-media[data-gap-pc="x2"]   { margin-top: 5em !important; }
  .column-media[data-media-size="2/3"] > .column_image { width: calc(((100% - 72px) / 3) * 2 + 36px); }
  .column-media[data-media-size="1/2"] > .column_image { width: calc((100% -  36px) / 2); }
  .column-media[data-media-size="1/3"] > .column_image { width: calc((100% -  72px) / 3); }
  .column-media[data-media-size="1/4"] > .column_image { width: calc((100% - 108px) / 4); }
  .column-media[data-media-size="1/5"] > .column_image { width: calc((100% - 144px) / 5); }
  .column-media[data-media-size="1/6"] > .column_image { width: calc((100% - 180px) / 6); }
  .column-media > .column_image[data-image="right"] {
    float: right;
    margin-left: 36px;
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .column-media[data-media-size="2/3"] > .column_image { width: calc((((100% - 72px) / 3) * 2) + 36px - 0.1px); }
  [data-browser="ie11"] .column-media[data-media-size="1/2"] > .column_image { width: calc(((100% -  36px) / 2) - 0.1px); }
  [data-browser="ie11"] .column-media[data-media-size="1/3"] > .column_image { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="ie11"] .column-media[data-media-size="1/4"] > .column_image { width: calc(((100% - 108px) / 4) - 0.1px); }
  [data-browser="ie11"] .column-media[data-media-size="1/5"] > .column_image { width: calc(((100% - 144px) / 5) - 0.1px); }
  [data-browser="ie11"] .column-media[data-media-size="1/6"] > .column_image { width: calc(((100% - 180px) / 6) - 0.1px); }
  [data-browser="edge"] .column-media[data-media-size="2/3"] > .column_image { width: calc((((100% - 72px) / 3) * 2) + 36px - 0.1px); }
  [data-browser="edge"] .column-media[data-media-size="1/2"] > .column_image { width: calc(((100% -  36px) / 2) - 0.1px); }
  [data-browser="edge"] .column-media[data-media-size="1/3"] > .column_image { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="edge"] .column-media[data-media-size="1/4"] > .column_image { width: calc(((100% - 108px) / 4) - 0.1px); }
  [data-browser="edge"] .column-media[data-media-size="1/5"] > .column_image { width: calc(((100% - 144px) / 5) - 0.1px); }
  [data-browser="edge"] .column-media[data-media-size="1/6"] > .column_image { width: calc(((100% - 180px) / 6) - 0.1px); }
  
  .column-media > .column_image[data-image="left"] {
    float: left;
    margin-right: 36px;
  }
  .column-media > .column_image .image-set + .image-set {
    margin-top: .75em;
  }
  .column-media > .column_detail[data-wraparound="false"] {
    overflow: hidden;
  }
  
  /* ----- manner-column-layout ----- */
  .manner-column-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin-top: 2.5em;
  }
  .manner-column-layout > .column_item {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: calc((100% - 130px) / 3);
    margin-left: 65px;
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .manner-column-layout > .column_item { width: calc(((100% - 130px) / 3) - 0.1px); }
  [data-browser="edge"] .manner-column-layout > .column_item { width: calc(((100% - 130px) / 3) - 0.1px); }
  
  .manner-column-layout > .column_item:not(.is-result) {
    position: relative;
    padding: 60px 20px 30px;
    border-radius: 10px;
    background-color: #fff;
  }
  .manner-column-layout > .column_item + .column_item:not(.is-result)::before {
    position: absolute;
    top: 50%;
    left: -45px;
    width: 27px;
    height: 27px;
    margin-top: -14px;
    background: url(/common/img/cmn_manner_ic01_01.png) no-repeat 0 0;
    content: "";
  }
  .manner-column-layout > .column_item + .column_item.is-result::before {
    position: absolute;
    top: 50%;
    left: -47px;
    width: 31px;
    height: 17px;
    margin-top: -9px;
    background: url(/common/img/cmn_manner_ic01_02.png) no-repeat 0 0;
    content: "";
  }
  .manner-column-layout > .column_item:nth-child(3n+1) {
    margin-left: 0 !important;
  }
  .manner-column-layout > .column_item .column_item_title {
    position: absolute;
    top: 20px;
    left: 50%;
    text-align: center;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .manner-column-layout > .column_item .column_item_title .column_item_title_label {
    display: inline-block;
    width: 105px;
    padding: 5px 10px;
    border-radius: 15px;
    background-color: #48312b;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.25;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .manner-column-layout > .column_item .column_item_title .column_item_title_label {
    padding: 8px 10px 3px;
  }
  .manner-column-layout > .column_item .column_item_detail {
    display: table;
    width: 100%;
    height: 110px;
  }
  .manner-column-layout > .column_item .column_item_detail .column_item_text {
    display: table-cell;
    color: #48312b;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    line-height: 1.25;
  }
  .manner-column-layout > .column_item.is-result .column_item_result {
    color: #48312b;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.25;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Table
  ------------------------------------------------------ */
  [class^="table-layout"] {
    overflow-x: auto;
    padding-bottom: 1px;
  }
  [class*="table-layout"] th > *:first-child,
  [class*="table-layout"] th > section:first-child > [class*="heading-lv"],
  [class*="table-layout"] td > *:first-child,
  [class*="table-layout"] td > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- table-layout ----- */
  .table-layout {
    margin-top: 2.5em;
  }
  .table-layout .table_inner {
    width: 100%;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    table-layout: fixed;
  }
  .table-layout .table_inner .gp-br-nowrap {
    white-space: normal !important;
  }
  .table-layout caption {
    margin-bottom: .75em;
    text-align: left;
  }
  .table-layout caption > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout caption > *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout .table_title {
    font-size: 1.8rem;
    font-weight: 700;
  }
  .table-layout .table_caption {
    margin-top: .5em;
  }
  .table-layout th,
  .table-layout td {
    padding: 12px 15px;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    background-color: #fff;
    font-weight: 500;
    text-align: left;
    vertical-align: top;
  }
  .table-layout th {
    font-weight: 700;
  }
  .table-layout th.type-time,
  .table-layout td.type-time {
    font-size: 1.4rem;
  }
  .table-layout thead th {
    vertical-align: middle;
  }
  .table-layout .cell-style1 {
    background-color: #eee;
  }
  .table-layout .cell-style2 {
    background-color: #f9f9f9;
  }
  .table-layout .cell-style3 {
    background-color: #f9e2e7;
  }
  .table-layout .cell-style4 {
    background-color: #f2f6ff;
  }
  
  /* ----- shop-table-layout ----- */
  .shop-table-layout {
    margin-top: 2.5em;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
  }
  .shop-table-layout .table_head_row,
  .shop-table-layout .table_body_row {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
  }
  .shop-table-layout .table_head_cell,
  .shop-table-layout .table_body_cell {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    padding: 12px 15px;
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  .shop-table-layout .table_head_cell {
    font-weight: 700;
    background-color: #eee;
  }
  .shop-table-layout .table_body_cell {
    background-color: #fff;
  }
  .shop-table-layout .table_head_cell > *:first-child,
  .shop-table-layout .table_body_cell > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Box
  ------------------------------------------------------ */
  [class*="box-layout"] {
    margin-top: 2.5em;
  }
  [class*="box-layout"] > [class*="box_detail"] > *:first-child,
  [class*="box-layout"] > [class*="box_detail"] > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- box-layout ----- */
  .box-layout {
    border: 1px solid #ddd;
    border-radius: 3px;
    overflow: hidden;
  }
  .box-layout > .box_title {
    padding: 15px 30px;
    background-color: #f4f4f4;
    line-height: 1.5;
  }
  .box-layout > .box_detail {
    padding: 25px 30px;
    background-color: #fff;
  }
  /* v2 */
  .box-layout-v2 {
    padding: 25px 30px 30px;
    border: 1px solid #ddd;
    border-radius: 10px;
    background-color: #fff;
    overflow: hidden;
  }
  .section-wide-layout.color1 .box-layout-v2 {
    border-color: #fff;
  }
  .box-layout-v2 > .box_title {
    font-size: 2.2rem;
    text-align: center;
    line-height: 1.5;
  }
  .box-layout-v2 > .box_title + .box_detail {
    margin-top: 1.25em;
  }
  /* v3 */
  .box-layout-v3 {
    padding: 25px 30px 30px;
    border: 1px solid #ddd;
    border-radius: 3px;
    background-color: #fff;
    overflow: hidden;
  }
  .section-wide-layout.color1 .box-layout-v3 {
    border-color: #fff;
  }
  .box-layout-v3 > .box_title {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
  }
  .box-layout-v3 > .box_title + .box_detail {
    margin-top: 1.25em;
  }
  /* v4 */
  .box-layout-v4 {
    padding: 25px 30px 30px;
    border: none;
    border-radius: 3px;
    background-color: #f4f4f4;
    overflow: hidden;
  }
  .box-layout-v4 > .box_title {
    font-size: 1.8rem;
    text-align: left;
    line-height: 1.5;
  }
  .box-layout-v4 > .box_title + .box_detail {
    margin-top: 1.25em;
  }
  
  /* ----- caution-box-layout ----- */
  .caution-box-layout {
    margin-top: 1.5em;
    padding: 10px 15px;
    border: 1px solid #e6204d;
    background-color: #fff;
  }
  
  /* ----- transport-box-layout ----- */
  .transport-box-layout {
    margin-top: 2.5em;
    padding-top: 15px;
    border-top: 1px solid #d2d2d2;
  }
  .transport-box-layout > .box_title {
    position: relative;
    padding-left: 40px;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .transport-box-layout > .box_title .box_title_icon {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 35px;
    font-size: 0;
    vertical-align: top;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .transport-box-layout > .box_title + .box_detail {
    margin-top: .75em;
  }
  .transport-box-layout [class*="list-bullet"] {
    margin-top: .5em;
  }
  
  /* ----- route-box-layout ----- */
  .route-box-layout {
    margin-top: 1em;
  }
  .route-box-layout > *:first-child {
    margin-top: 0 !important;
  }
  .route-box-layout .route_point,
  .route-box-layout .route_distance {
    margin-top: 10px;
  }
  .route-box-layout .route_point > .block {
    padding: 12px 20px;
    background-color: #e8f1ff;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .route-box-layout .route_point > a.block {
    text-decoration: underline;
  }
  .route-box-layout .route_point > a.block:hover {
    text-decoration: none;
  }
  .route-box-layout .route_point > .block > *:first-child {
    margin-top: 0 !important;
  }
  .route-box-layout .route_distance {
    position: relative;
  }
  .route-box-layout .route_distance::before,
  .route-box-layout .route_distance::after {
    position: absolute;
    left: 20px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #003b83;
    border-right: 2px solid #003b83;
    z-index: 1;
    content: "";
  }
  .route-box-layout .route_distance::before {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(-45deg);
  }
  .route-box-layout .route_distance::after {
    bottom: 0;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .route-box-layout .route_distance > .route_distance_inner {
    position: relative;
    padding: 5px 0 5px 45px;
  }
  .route-box-layout .route_distance > .route_distance_inner::before {
    position: absolute;
    top: 10px;
    left: 23px;
    width: 4px;
    height: calc(100% - 20px);
    border-left: dotted 4px #003b83;
    content: "";
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .route-box-layout .route_distance > .route_distance_inner::before,
  [data-browser="edge"] .route-box-layout .route_distance > .route_distance_inner::before {
    top: 7px;
    height: calc(100% - 14px);
  }
  /* for Firefox */
  [data-browser="firefox"] .route-box-layout .route_distance > .route_distance_inner::before {
    top: 5px;
    height: calc(100% - 10px);
  }
  .route-box-layout .route_distance > .route_distance_inner > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- recommend-box-layout ----- */
  .recommend-box-layout {
    margin-top: 1em;
    padding: 17px 22px;
    border: 1px solid #ccc;
  }
  .recommend-box-layout > .box_title {
    position: relative;
    padding-left: 35px;
    font-weight: 700;
    line-height: 1.5;
  }
  .recommend-box-layout > .box_title::before {
    position: absolute;
    top: -.3em;
    left: 0;
    width: 26px;
    height: 26px;
    background: url(/common/img/cmn_recommend_ic01.png) no-repeat 0 0;
    content: "";
  }
  .recommend-box-layout > .box_title + .box_detail {
    margin-top: .5em;
  }
  
  /* ----- answer-box-layout ----- */
  .answer-box-layout {
    position: relative;
    margin-top: 1.5em;
    min-height: 36px;
    padding-left: 55px;
  }
  .answer-box-layout > .box_title {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 36px;
    height: 36px;
    padding-top: 2px;
    border-radius: 50%;
    background-color: #e6204d;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .answer-box-layout > .box_title {
    padding: 8px 0 0 1px;
  }
  
  /* ----- manner-box-layout ----- */
  .manner-box-layout {
    padding: 20px 75px 30px;
    border-radius: 9px;
    background-color: #fff9ce;
    overflow: hidden;
  }
  .manner-box-layout > .box_title {
    text-align: center;
  }
  .manner-box-layout > .box_title .box_title_label {
    display: inline-block;
    padding-bottom: 5px;
    border-bottom: 2px dotted #48312b;
    color: #48312b;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .manner-box-layout > .box_title .box_title_color1 {
    color: #e98523;
  }
  .manner-box-layout > .box_title + .box_detail {
    margin-top: 1.25em;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Other
  ------------------------------------------------------ */
  /* ----- popup-container ----- */
  .popup-container {
    padding: 40px;
    background-color: #fff;
  }
  .popup-container > *:first-child,
  .popup-container > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- wide-container ----- */
  .wide-container {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-top: 2.5em;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 60px 40px;
    background-color: #fff;
  }
  .wide-container.color1 {
    background-color: #f4f4f4;
  }
  .wide-container.color2 {
    background-color: #e8f1ff;
  }
  .wide-container > * {
    width: 1200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .wide-container > *:first-child,
  .wide-container > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- colorbox ----- */
  #cboxContent {
    background: #fff;
  }
  #cboxClose {
    display: block;
    position: absolute;
    top: 30px;
    right: 30px;
    width: 24px;
    height: 24px;
    background: none;
    text-indent: -9999em;
    outline: none;
  }
  #cboxClose::before,
  #cboxClose::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 32px;
    height: 2px;
    margin-top: -2px;
    background-color: #003b83;
    content: "";
  }
  #cboxClose::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  #cboxClose::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #cboxLoadedContent {
    padding: 75px 30px 30px;
    border: none;
  }
  
  /* ----- accordion-layout ----- */
  [class*="accordion-layout"] > .accordion_detail > *:first-child,
  [class*="accordion-layout"] > .accordion_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .accordion-layout {
    margin-top: 1.5em;
    border: 1px solid #ddd;
    border-radius: 3px;
    overflow: hidden;
  }
  .accordion-layout > .accordion_trigger {
    position: relative;
    background-color: #fff;
    cursor: pointer;
  }
  .accordion-layout > .accordion_trigger:hover,
  .accordion-layout > .accordion_trigger.is-active {
    background-color: #f4f4f4;
  }
  .accordion-layout > .accordion_trigger::before,
  .accordion-layout > .accordion_trigger::after {
    position: absolute;
    top: 50%;
    right: 25px;
    width: 16px;
    height: 1px;
    margin-top: -1px;
    background-color: #666;
    content: "";
  }
  .accordion-layout > .accordion_trigger::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout > .accordion_trigger.is-active::before {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  .accordion-layout .accordion_label {
    display: block;
    width: 930px;
    max-width: 100%;
    margin: 0 auto;
    padding: 15px 65px;
    text-align: center;
    line-height: 1.5;
  }
  .accordion-layout > .accordion_detail {
    display: none;
    padding: 25px 30px;
    background-color: #fff;
  }
  /* v2 */
  .accordion-layout-v2 {
    margin-top: 3.5em;
  }
  .accordion-layout-v2 > .accordion_trigger {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    position: relative;
    padding: 15px 20px;
    background-color: #e8f1ff;
  }
  .accordion-layout-v2 > .accordion_trigger.js-accordion_trigger {
    padding-right: 65px;
    cursor: pointer;
  }
  .accordion-layout-v2 > .accordion_trigger.js-accordion_trigger::before,
  .accordion-layout-v2 > .accordion_trigger.js-accordion_trigger::after {
    position: absolute;
    top: 50%;
    right: 25px;
    width: 25px;
    height: 1px;
    margin-top: -1px;
    background-color: #003b83;
    content: "";
  }
  .accordion-layout-v2 > .accordion_trigger.js-accordion_trigger::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout-v2 > .accordion_trigger.js-accordion_trigger.is-active::before {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  .accordion-layout-v2 .accordion_label {
    display: block;
    width: 100%;
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .accordion-layout-v2 .accordion_number {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    display: block;
    margin-right: 20px;
    padding-top: 10px;
    color: #003b83;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1;
  }
  .accordion-layout-v2 > .accordion_detail {
    display: none;
    padding-top: 30px;
  }
  
  /* ----- station-accordion-layout ----- */
  .station-accordion-layout {
    margin-top: 1.5em;
  }
  .station-accordion-layout > .accordion_trigger {
    position: relative;
    float: right;
    min-width: 170px;
    padding: 12px 35px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 1.4rem;
    text-align: center;
    line-height: 1.5;
    cursor: pointer;
  }
  .station-accordion-layout > .accordion_trigger:hover,
  .station-accordion-layout > .accordion_trigger.is-active {
    background-color: #f4f4f4;
  }
  .station-accordion-layout > .accordion_trigger.is-active {
    padding-bottom: 24px;
    border-bottom: none;
    border-radius: 3px 3px 0 0;
  }
  .station-accordion-layout > .accordion_trigger::before,
  .station-accordion-layout > .accordion_trigger::after {
    position: absolute;
    top: 1.55em;
    right: 15px;
    width: 16px;
    height: 1px;
    margin-top: -1px;
    background-color: #666;
    content: "";
  }
  .station-accordion-layout > .accordion_trigger::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .station-accordion-layout > .accordion_trigger.is-active::before {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  .station-accordion-layout > .accordion_trigger .accordion_label {
    display: inline-block;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-accordion-layout > .accordion_trigger .accordion_label {
    padding-top: 2px;
  }
  .station-accordion-layout > .accordion_detail {
    display: none;
    clear: both;
    padding: 30px;
    border: 1px solid #ddd;
    background-color: #fff;
  }
  
  /* ----- tab-layout ----- */
  .tab-layout {
    margin-top: 2.5em;
  }
  .tab-layout > .tab_navi {
    overflow: hidden;
  }
  .tab-layout .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin: 0 -2px;
  }
  .tab-layout .tab_list > li {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    padding: 0 2px;
  }
  .tab-layout .tab_list > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 25px 10px;
    border-top: 3px solid #f4f4f4;
    border-bottom: 1px solid #dee2e6;
    background-color: #f4f4f4;
    color: #333;
    font-size: 1.8rem;
    text-decoration: none;
    line-height: 1.5;
  }
  .tab-layout .tab_list > li:not(.is-current) > a:hover {
    text-decoration: underline;
  }
  .tab-layout .tab_list > .is-current > a {
    border-top-color: #003b83;
    border-bottom-color: #fff;
    background-color: #fff;
  }
  .tab-layout > .tab_detail {
    display: none;
    padding-top: 20px;
  }
  .tab-layout > .tab_detail > *:first-child,
  .tab-layout > .tab_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- menu-tab-layout ----- */
  .menu-tab-layout {
    margin-top: 2.5em;
  }
  .menu-tab-layout .js-tabs-menu_detail_sp {
    display: none !important;
  }
  .menu-tab-layout .tab_navi .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
  }
  .menu-tab-layout .tab_navi .tab_list > li {
    display: -webkit-flex;
    display: flex;
    width: 100%;
  }
  .menu-tab-layout .tab_navi .tab_list > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 30px 15px 25px;
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    color: #333;
  }
  .menu-tab-layout .tab_navi .tab_list > li:first-child > a {
    border-left: none;
  }
  .menu-tab-layout .tab_navi .tab_list > li > a:not(.is-current):hover {
    color: #003b83;
  }
  .menu-tab-layout .tab_navi .tab_list > li > a.is-current {
    border-bottom-color: #fff;
    text-decoration: none;
  }
  .menu-tab-layout .tab_navi .tab_list > li > a.is-current:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #003b83;
    content: "";
  }
  .menu-tab-layout .tab_detail {
    display: none;
    padding: 40px 35px;
    background-color: #fff;
  }
  .menu-tab-layout > .tab_detail > *:first-child,
  .menu-tab-layout > .tab_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .menu-tab-layout > .tab_detail .link-button {
    margin-top: 2em;
  }
  .menu-tab-layout > .tab_detail .link-button > li + li {
    margin-top: 1.75em;
  }
  .menu-tab-layout > .tab_detail .link-button > li > a {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    padding-top: 12px;
    padding-bottom: 12px;
  }
  
  /* ------------------------------------------------------
   * Component >>> Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    margin: 2.5em 0 1.5em;
    overflow: hidden;
  }
  .navi-anchor .navi_inner > li + li {
    margin-top: 1em;
  }
  .navi-anchor .navi_inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 30px;
    color: #333;
    font-size: 1.8rem;
  }
  .navi-anchor .navi_inner > li > a::before {
    position: absolute;
    top: .4em;
    left: 2px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 10px;
    height: 10px;
    border-top: 1px solid #003b83;
    border-right: 1px solid #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-anchor .navi_inner > li > a::before {
    top: .2em;
  }
  /* v2 */
  .navi-anchor-v2 {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-top: 2.5em;
    margin-bottom: 1.5em;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 15px 40px 0;
    border-top: 1px solid #ddd;
    overflow: hidden;
  }
  .navi-anchor-v2 .navi_inner {
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
  }
  .navi-anchor-v2 .navi_inner > li + li {
    margin-top: 1em;
  }
  .navi-anchor-v2 .navi_inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 30px;
    color: #333;
    font-size: 1.8rem;
  }
  .navi-anchor-v2 .navi_inner > li > a::before {
    position: absolute;
    top: .4em;
    left: 2px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 10px;
    height: 10px;
    border-top: 1px solid #003b83;
    border-right: 1px solid #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-anchor-v2 .navi_inner > li > a::before {
    top: .2em;
  }
  
  /* ----- navi-local ----- */
  .navi-local {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-top: 3.5em;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 60px 40px;
    background-color: #e0eaff;
  }
  #main .contents > .navi-local:last-child {
    margin-top: 75px;
    margin-bottom: 0;
  }
  .navi-local > * {
    width: 1200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .navi-local > .navi_title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .navi-local > .navi_title .navi_title_label {
    display: inline-block;
    position: relative;
  }
  .navi-local > .navi_title a.navi_title_label {
    padding-left: 18px;
    color: #333;
  }
  .navi-local > .navi_title a.navi_title_label:hover {
    color: #003b83;
  }
  .navi-local > .navi_title a.navi_title_label::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-local > .navi_title a.navi_title_label::before {
    top: .45em;
  }
  .navi-local > .navi_title + * {
    margin-top: .75em;
  }
  .navi-local > .navi_inner {
    padding: 25px 30px;
    background-color: #fff;
  }
  .navi-local .navi_list {
    margin-top: 1em;
  }
  .navi-local .navi_list > li + li {
    margin-top: .75em;
  }
  .navi-local .navi_list > li > a {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    color: #333;
  }
  .navi-local .navi_list > li > a:hover {
    color: #003b83;
  }
  .navi-local .navi_list > li > a::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-local .navi_list > li > a::before {
    top: .45em;
  }
  .navi-local > *:first-child,
  .navi-local > section:first-child > [class*="heading-lv"],
  .navi-local > .navi_inner > *:first-child,
  .navi-local > .navi_inner > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v2 */
  .navi-local-v2 {
    width: calc(100% + 80px) !important;
    margin-top: 3.5em;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 60px 40px;
    background-color: #e0eaff;
  }
  .navi-local-v2 > .navi_inner {
    width: 1200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .navi-local-v2 [class*="link-button"] {
    margin-top: 1.75em;
  }
  .navi-local-v2 [class*="link-button"] > li + li {
    margin-top: 1.75em;
  }
  .navi-local-v2 .link-button > li > a {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .navi-local-v2 > .navi_inner > *:first-child,
  .navi-local-v2 > .navi_inner > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- navi-guide ----- */
  .navi-guide {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    position: relative;
    margin-top: 2.5em;
    border: 1px solid #ccc;
    border-radius: 9px;
    overflow: hidden;
    z-index: 1;
  }
  .navi-guide .navi_visual {
    width: 65.66%;
  }
  .navi-guide .navi_visual > .block {
    position: relative;
  }
  .navi-guide .navi_visual .navi_title {
    position: absolute;
    top: 20px;
    left: 0;
    max-width: 75%;
  }
  .navi-guide .navi_visual .navi_title .navi_label {
    display: inline-block;
    padding: 15px 20px;
    background-color: #003b83;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .navi-guide .navi_visual > a.block .navi_title .navi_label {
    position: relative;
    padding-left: 40px;
  }
  .navi-guide .navi_visual > a.block:hover .navi_title .navi_label {
    background-color: #0e57b0;
  }
  .navi-guide .navi_visual > a.block .navi_title .navi_label::before {
    position: absolute;
    top: 50%;
    left: 20px;
    width: 0;
    height: 0;
    margin-top: -4px;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #fff;
    content: "";
  }
  .navi-guide .navi_visual .navi_image img {
    width: 100%;
  }
  .navi-guide .navi_caption {
    width: 34.34%;
  }
  .navi-guide .navi_caption .navi_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    height: 100%;
  }
  .navi-guide .navi_caption .navi_list > li {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    position: relative;
    width: 50%;
    padding-top: 1px;
  }
  .navi-guide .navi_caption .navi_list > li:nth-child(1),
  .navi-guide .navi_caption .navi_list > li:nth-child(2) {
    padding-top: 0;
  }
  .navi-guide .navi_caption .navi_list > li:nth-child(2n+1) {
    border-right: 1px solid #eee;
  }
  .navi-guide .navi_caption .navi_list > li:nth-child(2n+1)::before {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(200% + 2px);
    height: 1px;
    background-color: #eee;
    content: "";
  }
  .navi-guide .navi_caption .navi_list > li:first-child::before {
    display: none;
  }
  .navi-guide .navi_caption .navi_list > li > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-direction: column;
    flex-direction: column;
    position: relative;
    width: 100%;
    padding: 10px;
    background-color: #fff;
    color: #333;
  }
  .navi-guide .navi_caption .navi_list > li > a.block:hover {
    color: #003b83;
    background-color: #f4f4f4;
  }
  .navi-guide .navi_caption .navi_list .navi_list_icon {
    width: 100%;
    text-align: center;
  }
  .navi-guide .navi_caption .navi_list .navi_list_icon img {
    width: auto;
    height: 50px;
  }
  .navi-guide .navi_caption .navi_list .navi_list_text {
    margin-top: 5px;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
  }
  
  /* ----- navi-category ----- */
  .navi-category {
    width: calc(100% + 80px) !important;
    margin-top: 3em;
    margin-right: -40px !important;
    margin-left: -40px !important;
    padding: 45px 40px 80px;
    background-color: #f4f4f4;
  }
  .navi-category > * {
    width: 1200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .navi-category > .navi_title {
    font-size: 2.2rem;
    text-align: center;
    line-height: 1.5;
  }
  .navi-category > .navi_title + .navi_detail {
    margin-top: 1.5em;
  }
  .navi-category > .navi_detail > *:first-child,
  .navi-category > .navi_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .navi-category .navi_contents .navi_contents_title {
    padding-bottom: 15px;
    border-bottom: 1px solid #ddd;
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .navi-category .navi_contents .navi_contents_detail {
    display: block !important;
  }
  .navi-category .navi_contents .navi_contents_title + .navi_contents_detail {
    margin-top: 1.75em;
  }
  .navi-category .navi_contents .navi_contents_detail > *:first-child,
  .navi-category .navi_contents .navi_contents_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .navi-category .navi_button {
    margin-top: 3.5em;
    text-align: center;
  }
  .navi-category .navi_button > a {
    display: inline-block;
    position: relative;
    width: 785px;
    max-width: 100%;
    padding: 20px 60px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    line-height: 1.5;
    overflow: hidden;
  }
  .navi-category .navi_button > a::before {
    position: absolute;
    top: 50%;
    left: 25px;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  .navi-category .navi_button > a:hover {
    background-color: #f4f4f4;
  }
  .navi-category .navi_button > a .navi_button_label {
    display: inline-block;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .navi-category .navi_button > a .navi_button_label {
    padding-top: 7px;
  }
  .navi-category .column-layout > .column_item {
    margin-top: 2.5em;
  }
  
  /* ------------------------------------------------------
   * Component >>> Index
  ------------------------------------------------------ */
  /* ----- index-layout ----- */
  [class*="index-layout"] .index_caption > *:first-child,
  [class*="index-layout"] .index_caption > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout {
    border: 1px solid #ccc;
    border-radius: 8px;
    background-color: #fff;
    overflow: hidden;
  }
  .index-layout > .index_visual {
    border-bottom: 1px solid #ccc;
  }
  .index-layout > .index_visual > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    background-color: #003b83;
    color: #fff;
    text-decoration: none;
  }
  .index-layout > .index_visual > a.block {
    position: relative;
  }
  .index-layout > .index_visual > a.block:hover {
    background-color: #0e57b0;
  }
  .index-layout > .index_visual > a.block:not(.a-blank):not(.a-pdf)::after {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 0;
    height: 0;
    margin-top: -5px;
    border-top: 5px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 12px solid #fff;
    content: "";
  }
  .index-layout > .index_visual > .block > .index_image {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 60%;
  }
  .index-layout > .index_visual > .block > .index_image img {
    width: 100%;
  }
  .index-layout > .index_visual > .block > .index_title {
    width: 100%;
    padding: 33px 0;
    text-align: center;
  }
  .index-layout > .index_visual > .block > .index_image + .index_title {
    padding: 0;
  }
  .index-layout > .index_visual > .block > .index_title .index_icon {
    display: block;
    margin-bottom: .25em;
    text-align: center;
  }
  .index-layout > .index_visual > .block > .index_title .index_icon img {
    width: 85px;
  }
  .index-layout > .index_visual > .block > .index_title .index_label {
    display: block;
    font-size: 2.2rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
  }
  .index-layout > .index_caption {
    padding: 25px 30px;
  }
  /* v2 */
  .index-layout-v2 > .block {
    border: 1px solid #ccc;
    border-radius: 9px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    overflow: hidden;
    outline: none;
  }
  .index-layout-v2 > a.block:hover {
    background-color: #f4f4f4;
  }
  .index-layout-v2 > .block .index_image {
    border-bottom: 1px solid #ccc;
  }
  .index-layout-v2 > .block .index_image img {
    width: 100%;
  }
  .index-layout-v2 > .block .index_caption {
    padding: 20px 22px;
  }
  .index-layout-v2 > .block .index_caption[class*="js-equalHeight_"] {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-justify-content: center;
    justify-content: center;
  }
  [data-row-pc="5"] .index-layout-v2 > .block .index_caption,
  [data-row-pc="6"] .index-layout-v2 > .block .index_caption {
    padding: 15px;
  }
  .index-layout-v2 > .block .index_title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .banner-layout .banner_carousel .banner_carousel_list .banner_carousel_item.is-new .index-layout-v2 > .block .index_title .index_label::after {
    color: #e6204d;
    font-weight: 700;
    content: "[NEW]";
  }
  [data-row-pc="5"] .index-layout-v2 > .block .index_title,
  [data-row-pc="6"] .index-layout-v2 > .block .index_title {
    font-size: 1.6rem;
  }
  .index-layout-v2 > .block .index_title a {
    color: #333;
  }
  .index-layout-v2 > a.block:hover .index_title,
  .index-layout-v2 > .block .index_title a:hover {
    color: #003b83;
    text-decoration: underline;
  }
  .index-layout-v2 > .block .index_text {
    margin-top: .5em;
  }
  .index-layout-v2 > .block .index_icon_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: .5em 0 .25em;
    color: #333;
  }
  .index-layout-v2 > .block .index_caption > .index_icon_list:first-child {
    margin-top: -8px !important;
  }
  .index-layout-v2 > .block .index_icon_list > li {
    margin: 0 5px .25em 0;
    padding: 5px 8px;
    border: 1px solid #ccc;
    background-color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .index-layout-v2 > .block .index_icon_list > li {
    padding: 10px 5px 4px;
  }
  .index-layout-v2 > .block .index_period {
    margin: .5em 0;
    color: #333;
    font-size: 1.4rem;
  }
  .index-layout-v2 > .block [class*="link-text"] {
    margin-top: .5em;
  }
  /* v3 */
  .index-layout-v3 > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 9px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    overflow: hidden;
    outline: none;
  }
  .index-layout-v3 > a.block:hover {
    background-color: #f4f4f4;
  }
  .index-layout-v3 > .block .index_image {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 48%;
  }
  .index-layout-v3 > .block .index_image img {
    width: 100%;
  }
  .index-layout-v3 > .block .index_caption {
    width: 100%;
    padding: 10px 25px;
  }
  .index-layout-v3 > .block .index_title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .index-layout-v3 > a.block:hover .index_title {
    color: #003b83;
    text-decoration: underline;
  }
  .index-layout-v3 > .block .index_text {
    margin-top: .5em;
  }
  /* v4 */
  .index-layout-v4 > .index_visual {
    position: relative;
    padding-top: 100%;
  }
  .index-layout-v4 > .index_visual .index_image {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .index-layout-v4 > .index_visual .index_image img {
    max-width: 100%;
    max-height: 100%;
  }
  /* for IE11 */
  [data-browser="ie11"] .index-layout-v4 > .index_visual .index_image img {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }
  .index-layout-v4 > .index_visual + .index_caption {
    margin-top: 1em;
  }
  .index-layout-v4 > .index_caption .index_title {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .index-layout-v4 > .index_caption .index_title + * {
    margin-top: 1em;
  }
  /* v5 */
  .index-layout-v5 > .block {
    padding-bottom: 20px;
    border: 1px solid #ccc;
    border-radius: 9px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    overflow: hidden;
    outline: none;
  }
  .index-layout-v5 > a.block:hover {
    background-color: #f4f4f4;
  }
  .index-layout-v5 > .block .index_image img {
    width: 100%;
  }
  .index-layout-v5 > .block .index_caption {
    padding: 20px 22px 0;
  }
  .index-layout-v5 > .block .index_title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .index-layout-v5 > a.block:hover .index_title {
    color: #003b83;
    text-decoration: underline;
  }
  .index-layout-v5 > .block .index_text {
    margin-top: .5em;
    padding: 0 22px;
  }
  /* v6 */
  .index-layout-v6 > .block {
    border: 1px solid #ccc;
    border-radius: 9px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    overflow: hidden;
    outline: none;
  }
  .index-layout-v6 > a.block:hover {
    background-color: #f4f4f4;
  }
  .index-layout-v6 > .block .index_image {
    border-bottom: 1px solid #ccc;
  }
  .index-layout-v6 > .block .index_image img {
    width: 100%;
  }
  .index-layout-v6 > .block .index_caption {
    padding: 30px 35px;
  }
  .index-layout-v6 > .block .index_period {
    margin: -30px -35px 0 !important;
  }
  .index-layout-v6 > .block .index_period .index_period_label {
    display: inline-block;
    padding: 10px 30px;
    background-color: #003b83;
    color: #fff;
    font-weight: 700;
    line-height: 1.25;
  }
  .index-layout-v6 > .block .index_period + * {
    margin-top: .75em;
  }  
  .index-layout-v6 > .block .index_title {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .index-layout-v6 > a.block:hover .index_title {
    color: #003b83;
    text-decoration: underline;
  }
  .index-layout-v6 > .block .index_place {
    margin-bottom: .5em;
    color: #e6204d;
  }
  .index-layout-v6 > .block .index_place .index_place_label + .index_place_label::before {
    content: "・";
  }
  
  /* ----- shop-index-layout ----- */
  .shop-index-layout > .block {
    color: #333;
    text-decoration: none;
    outline: none;
  }
  .shop-index-layout > .block .index_image {
    position:  relative;
    padding-top: 81%;
    border: 1px solid #ccc;
    border-radius: 9px;
    background-color:  #fff;
    overflow: hidden;
  }
  .shop-index-layout > .block .index_image img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    max-height: 100%;
    max-width: 100%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
  }
  .shop-index-layout > .block .index_caption {
    margin-top: 1em;
  }
  .shop-index-layout > .block .index_title {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .shop-index-layout > a.block:hover .index_title {
    color: #003b83;
    text-decoration: underline;
  }
  .shop-index-layout > .block .index_icon {
    margin-bottom: .25em;
  }
  .shop-index-layout > .block .index_icon .index_icon_label {
    display: inline-block;
    margin-bottom: .25em;
    padding: 5px 8px;
    background-color: #d0dffb;
    color: #003b83;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .shop-index-layout > .block .index_icon .index_icon_label {
    padding: 10px 5px 4px;
  }
  .shop-index-layout > .block .index_open {
    margin-top: .5em;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .shop-index-layout > .block .index_floor {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .shop-index-layout > .block .index_pasmo {
    margin-top: .75em;
  }
  .shop-index-layout > .block .index_pasmo img {
    width: 70px;
  }
  
  /* ----- model-index-layout ----- */
  .model-index-layout > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 9px;
    background: url(/common/img/cmn_footprints_ic02_01.png) no-repeat top 12px right 18px #fff;
    color: #333;
    text-decoration: none;
    overflow: hidden;
    outline: none;
  }
  .model-index-layout > a.block:hover {
    background: url(/common/img/cmn_footprints_ic02_02.png) no-repeat top 12px right 18px #f4f4f4;
  }
  .model-index-layout > .block .index_image {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: calc((100% - 36px) / 2);
  }
  .model-index-layout > .block .index_image img {
    width: 100%;
  }
  .model-index-layout > .block .index_caption {
    width: 100%;
    padding: 10px 25px;
  }
  .model-index-layout > .block .index_title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .model-index-layout > a.block:hover .index_title {
    color: #003b83;
    text-decoration: underline;
  }
  .model-index-layout > .block .index_time {
    position: relative;
    margin-top: .75em;
    padding-left: 38px;
    font-weight: 700;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .model-index-layout > .block .index_time {
    padding-top: 3px;
  }
  .model-index-layout > .block .index_time::before {
    position: absolute;
    top: 0;
    left: 3px;
    width: 28px;
    height: 27px;
    background: url(/common/img/cmn_time_ic01.png) no-repeat 0 0;
    content: "";
  }
  .model-index-layout > .block .index_text {
    margin-top: 1em;
  }
  
  /* ------------------------------------------------------
   * Component >>> Other
  ------------------------------------------------------ */
  /* ----- station-hero-layout ----- */
  .station-hero-layout {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-top: 2.5em;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 0 40px;
  }
  .station-hero-layout > .hero_heading {
    margin: 0 -40px;
    background-color: #eee;
  }
  .station-hero-layout > .hero_heading .hero_panel {
    width: 750px;
    margin: 0 auto;
    padding: 25px 30px;
    background-color: #e6204d;
    color: #fff;
    text-align: center;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_panel_inner {
    display: inline-block;
    margin-left: -30px;
    text-align: left;
    vertical-align: text-bottom;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound {
    margin-bottom: 10px;
    line-height: 1.25;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound,
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound {
    max-width: calc(50% - 5px);
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound,
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound {
    padding-top: 4px;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound {
    float: left;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound {
    float: right;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound > .block,
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound > .block {
    display: -webkit-flex;
    display: flex;
    position: relative;
    color: #fff;
    text-align: left;
    text-decoration: none;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound > .block {
    padding-left: 40px;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound > .block {
    padding-right: 40px;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound > .block::after,
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound > .block::after {
    position: absolute;
    top: 0;
    width: 30px;
    height: 28px;
    content: "";
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_inbound > .block::after {
    left: 0;
    background: url(/common/img/cmn_arrow_ic01_01.png) no-repeat 0 0;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound > .hero_outbound > .block::after {
    right: 0;
    background: url(/common/img/cmn_arrow_ic01_02.png) no-repeat 0 0;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound .hero_bound_number {
    display: inline-block;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin-right: 12px;
    padding-top: 3px;
    font-size: 2rem;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound .hero_bound_label {
    display: inline-block;
    width: 100%;
    font-size: 2.4rem;
    font-weight: 700;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_bound a.block:hover .hero_bound_label {
    text-decoration: underline;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_ruby {
    margin-bottom: .25em;
    padding-left: 120px;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_title {
    position: relative;
    padding-left: 120px;
    line-height: 1;
  }
   /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-hero-layout > .hero_heading .hero_panel .hero_title {
    padding-top: 5px;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_title .hero_title_number {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -3px;
    font-size: 4.5rem;
    vertical-align: top;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
   /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-hero-layout > .hero_heading .hero_panel .hero_title .hero_title_number {
    margin-top: 2px;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_title .hero_title_label {
    display: inline-block;
    position: relative;
    padding-bottom: 8px;
    font-size: 4.8rem;
    font-weight: 700;
    vertical-align: top;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_title .hero_title_label::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    content: "";
  }
   /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-hero-layout > .hero_heading .hero_panel .hero_title .hero_title_label::after {
    bottom: 5px;
  }
  .station-hero-layout > .hero_heading .hero_panel .hero_romanization {
    margin-top: .25em;
    padding-left: 120px;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1;
  }
  .station-hero-layout > .hero_detail {
    width: 1200px;
    max-width: 100%;
    margin: 1.5em auto 0;
  }
  .station-hero-layout .hero_detail > *:first-child,
  .station-hero-layout .hero_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .station-hero-layout .hero_detail .train-stop-list + .station-accordion-layout {
    margin-top: -1.5em;
  }
  
  /* ----- news-layout ----- */
  .news-layout {
    margin-top: 2.5em;
  }
  .news-layout > *:first-child {
    margin-top: 0 !important;
  }
  .news-layout .news_link {
    margin: .25em 0;
    text-align: right;
  }
  .news-layout .news_link > a {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    color: #333;
  }
  .news-layout .news_link > a:hover {
    color: #003b83;
  }
  .news-layout .news_link > a::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  .news-layout .news_article + .news_article {
    border-top: 1px solid #dee2e6;
  }
  .news-layout .news_article > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    padding: 23px 0 22px;
    color: #333;
    text-decoration: none;
    outline: none;
  }
  .news-layout .news_article .news_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex: 1;
    flex: 1;
  }
  .news-layout .news_article .news_property {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin-right: 25px;
  }
  .news-layout .news_article .news_date {
    display: inline-block;
    min-width: 120px;
    color: #999;
    font-size: 1.4rem;
  }
  .news-layout .news_article .news_title {
    -webkit-flex: 1;
    flex: 1;
    line-height: 1.5;
  }
  .news-layout .news_article a .news_title {
    color: #003b83;
  }
  .news-layout .news_article a:hover .news_title {
    text-decoration: underline;
  }
  .news-layout .news_article.is-new .news_title .news_title_label::after {
    margin-left: .5em;
    color: #e6204d;
    font-weight: 700;
    content: "[NEW]";
  }
  /* v2 */
  .news-layout-v2 {
    margin-top: 2.5em;
  }
  .news-layout-v2 > *:first-child {
    margin-top: 0 !important;
  }
  .news-layout-v2 .news_link {
    margin: .25em 0;
    text-align: right;
  }
  .news-layout-v2 .news_link > a {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    color: #333;
  }
  .news-layout-v2 .news_link > a:hover {
    color: #003b83;
  }
  .news-layout-v2 .news_link > a::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  .news-layout-v2 .news_article + .news_article {
    margin-top: .75em;
  }
  .news-layout-v2 .news_article > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    color: #333;
    text-decoration: none;
    outline: none;
  }
  .news-layout-v2 .news_article .news_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex: 1;
    flex: 1;
  }
  .news-layout-v2 .news_article .news_property {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin-right: 25px;
  }
  .news-layout-v2 .news_article .news_date {
    display: inline-block;
    min-width: 120px;
    color: #999;
    font-size: 1.4rem;
  }
  .news-layout-v2 .news_article .news_title {
    -webkit-flex: 1;
    flex: 1;
    font-weight: 700;
    line-height: 1.5;
  }
  .news-layout-v2 .news_article a .news_title {
    color: #003b83;
  }
  .news-layout-v2 .news_article a:hover .news_title {
    text-decoration: underline;
  }
  .news-layout-v2 .news_article.is-new .news_title .news_title_label::after {
    margin-left: .5em;
    color: #e6204d;
    font-weight: 700;
    content: "[NEW]";
  }
  
  /* ----- article-news ----- */
  .article-news {
    margin-top: 2em;
  }
  .article-news .article_time {
    margin-top: 1em;
    text-align: right;
  }
  .article-news .article_writer {
    text-align: right;
  }
  .article-news .article_contents {
    margin-top: 2em;
  }
  .article-news > *:first-child,
  .article-news .article_contents > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- contact-layout ----- */
  .contact-layout {
    margin-top: 2.5em;
    border-radius: 3px;
    border: 1px solid #ccc;
    background-color: #fff;
  }
  .contact-layout > .contact_title {
    margin: -1px -1px 0;
    padding: 15px 30px;
    border-radius: 3px 3px 0 0;
    background-color: #003b83;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
  }
  .contact-layout > .contact_detail {
    padding: 25px 30px;
  }
  .contact-layout > .contact_detail > *:first-child,
  .contact-layout > .contact_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .contact-layout > .contact_detail > .contact_detail_title {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
  }
  .contact-layout > .contact_detail > .contact_detail_title + * {
    margin-top: 1em;
  }
  .contact-layout .contact_column {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .contact-layout .contact_column > * {
    width: 50%;
  }
  .contact-layout .contact_column > *:nth-child(2n+1) {
    padding-right: 30px;
  }
  .contact-layout .contact_column > *:nth-child(2n) {
    padding-left: 30px;
    border-left: 1px solid #ccc;
  }
  .contact-layout .contact_column > *:nth-child(-n+2) {
    margin-top: 0 !important;
  }
  .contact-layout .contact_guide {
    margin-top: 1.5em;
  }
  .contact-layout .contact_guide .contact_guide_title {
    position: relative;
    padding-left: 25px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .contact-layout .contact_guide .contact_guide_title::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 16px;
    height: 6px;
    border-radius: 3px;
    background-color: #003b83;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .contact-layout .contact_guide .contact_guide_title::before {
    top: .35em;
  }
  .contact-layout .contact_guide .contact_guide_title + .contact_guide_detail {
    margin-top: .75em;
    padding-left: 25px;
  }
  .contact-layout .contact_guide > *:first-child,
  .contact-layout .contact_guide > section:first-child > [class*="heading-lv"],
  .contact-layout .contact_guide .contact_guide_detail > *:first-child,
  .contact-layout .contact_guide .contact_guide_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .contact-layout .contact_guide [class*="list-note"] {
    margin-top: .5em;
  }
  .contact-layout .contact_guide [class*="list-note"] > li {
    margin-top: .25em;
  }
  .contact-layout .contact_guide .contact_guide_title + .link-button-v3 {
    margin-top: 1.25em;
  }
  .contact-layout .contact_freedial {
    margin-top: 1em;
  }
  .contact-layout .contact_freedial .contact_freedial_label {
    display: inline-block;
    position: relative;
    padding-left: 48px;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1;
  }
  .contact-layout .contact_freedial .contact_freedial_label::before {
    position: absolute;
    left: 0;
    top: .2em;
    width: 39px;
    height: 20px;
    background: url(/common/img/cmn_freedial_ic01.png) no-repeat 0 0;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .contact-layout .contact_freedial .contact_freedial_label::before {
    top: .1em;
  }
  .contact-layout .contact_tel {
    margin-top: 1em;
  }
  .contact-layout .contact_tel .contact_tel_label {
    display: inline-block;
    position: relative;
    padding-left: 48px;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1;
  }
  .contact-layout .contact_tel .contact_tel_label::before {
    position: absolute;
    left: 0;
    top: .15em;
    width: 33px;
    height: 22px;
    background: url(/common/img/cmn_tel_ic01.png) no-repeat 0 0;
    content: "";
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .contact-layout .contact_tel .contact_tel_label::before {
    top: .05em;
  }
  .contact-layout .contact_reception {
    margin-top: .25em;
  }
  .contact-layout .contact_freedial .contact_reception,
  .contact-layout .contact_tel .contact_reception {
    display: inline-block;
    position: relative;
    top: -.4em;
    margin: 0 0 0 20px;
  }
  .contact-layout .contact_mail {
    margin-top: 1em;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .contact-layout .contact_mail a.contact_mail_label {
    color: #333;
  }
  .contact-layout .contact_mail a.contact_mail_label:hover {
    color: #003b83;
  }
  
  /* ----- faq-layout ----- */
  .faq-layout {
    margin-top: 2.5em;
  }
  .faq-layout > .faq_item {
    margin-top: -1px;
    border-top: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
  }
  .faq-layout > .faq_item > .block {
    padding: 17px 0;
    background-color: #fff;
  }
  
  /* ----- pagination-layout ----- */
  .pagination-layout {
    margin-top: 3em;
  }
  .pagination-layout .pagination_navi {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  .pagination-layout .pagination_navi .pagination_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
  }
  .pagination-layout .pagination_navi .pagination_list.type-prev {
    margin-right: 10px;
  }
  .pagination-layout .pagination_navi .pagination_list.type-next {
    margin-left: 10px;
  }
  .pagination-layout .pagination_navi .pagination_list > li {
    padding-bottom: 2px;
  }
  .pagination-layout .pagination_navi .pagination_list > li > a,
  .pagination-layout .pagination_navi .pagination_list > li > span {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 40px;
    padding: 2px 0 0;
    line-height: 1;
    overflow: hidden;
    outline: none;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .pagination-layout .pagination_navi .pagination_list > li > a,
  [data-browser="ie11"]:not([data-font="meiryo"]) .pagination-layout .pagination_navi .pagination_list > li > span {
    padding-top: 6px;
  }
  .pagination-layout .pagination_navi .pagination_list > li > a {
    border: 1px solid #ccc;
    background-color: #fff;
    color: #333;
    font-size: 1.8rem;
    font-weight: 700;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .pagination-layout .pagination_navi .pagination_list > li > span {
    border: 1px solid #f4f4f4;
    background-color: #f4f4f4;
    color: #a6a6a6;
    font-size: 1.6rem;
  }
  .pagination-layout .pagination_navi .pagination_list:not(.type-prev):not(.type-next) > li > a,
  .pagination-layout .pagination_navi .pagination_list:not(.type-prev):not(.type-next) > li > span {
    width: 40px;
  }
  .pagination-layout .pagination_navi .pagination_list:not(.type-prev):not(.type-next) > li:first-child > a,
  .pagination-layout .pagination_navi .pagination_list:not(.type-prev):not(.type-next) > li:first-child > span {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
  }
  .pagination-layout .pagination_navi .pagination_list:not(.type-prev):not(.type-next) > li:last-child > a,
  .pagination-layout .pagination_navi .pagination_list:not(.type-prev):not(.type-next) > li:last-child > span {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
  }
  .pagination-layout .pagination_navi .pagination_list > li:not(.is-current) + li > a,
  .pagination-layout .pagination_navi .pagination_list > li:not(.is-current) + li > span {
    border-left: none;
  }
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > a,
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > span,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > a,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > span {
    position: relative;
    border-radius: 3px;
  }
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > a,
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > span {
    padding-right: 10px;
    padding-left: 27px;
  }
  .pagination-layout .pagination_navi .pagination_list.type-next > li > a,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > span {
    padding-right: 27px;
    padding-left: 10px;
  }
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > a::before,
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > span::before,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > a::before,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > span::before {
    position: absolute;
    top: 50%;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > a::before,
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > span::before {
    left: 2px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .pagination-layout .pagination_navi .pagination_list.type-next > li > a::before,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > span::before {
    right: 2px;
  }
  .pagination-layout .pagination_navi .pagination_list.type-prev > li > span::before,
  .pagination-layout .pagination_navi .pagination_list.type-next > li > span::before {
    border-left-color: #a6a6a6;
  }
  
  /* ----- info-layout ----- */
  .info-layout {
    margin-top: 2.5em;
  }
  .info-layout > .info_article {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row-reverse nowrap;
    flex-flow: row-reverse nowrap;
  }
  .info-layout > .info_article + .info_article {
    margin-top: 2.5em;
  }
  .info-layout > .info_article > .info_image {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: calc((100% - 72px) / 3);
    margin-left: 36px;
    text-align: center;
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .info-layout > .info_article > .info_image { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="edge"] .info-layout > .info_article > .info_image { width: calc(((100% -  72px) / 3) - 0.1px); }
  .info-layout > .info_article > .info_detail {
    width: 100%;
  }
  .info-layout > .info_article > .info_detail > *:first-child,
  .info-layout > .info_article > .info_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .info-layout > .info_article .info_icon_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: .5em 0 .25em;
    color: #333;
  }
  .info-layout > .info_article .info_icon_list > li {
    margin: 0 5px .25em 0;
    padding: 5px 8px;
    border: 1px solid #ccc;
    background-color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .info-layout > .info_article .info_icon_list > li {
    padding: 10px 5px 4px;
  }
  .info-layout > .info_article .info_period {
    margin: .5em 0;
    color: #333;
  }
  .info-layout > .info_article .info_title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .info-layout > .info_article .info_title a {
    color: #333;
  }
  .info-layout > .info_article .info_title a:hover {
    color: #003b83;
  }
  .info-layout > .info_article .info_text {
    margin-top: .5em;
  }
  .info-layout > .info_article .info_date {
    margin-top: .75em;
    color: #999;
    font-size: 1.6rem;
  }
  
  /* ----- model-course-layout ----- */
  .model-course-layout {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-top: 2.5em;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 0 40px;
  }
  .model-course-layout .model-course_navi {
    position: relative;
    margin: 1.5em -40px 0;
    background-color: #f9f7e2;
  }
  .model-course-layout .model-course_navi::after {
    position: absolute;
    bottom: -24px;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -12px;
    border-top: 12px solid #f9f7e2;
    border-right: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 12px solid transparent;
    content: "";
  }
  .model-course-layout .model-course_navi .model-course_inner {
    position: relative;
    width: 450px;
    margin: 0 auto;
    padding: 15px 0 20px;
  }
  .model-course-layout .model-course_navi .model-course_inner::before,
  .model-course-layout .model-course_navi .model-course_inner::after {
    position: absolute;
    content: "";
  }
  .model-course-layout .model-course_navi .model-course_inner::before {
    top: 10px;
    left: -115px;
    width: 84px;
    height: 60px;
    background: url(/common/img/cmn_footprints_ic01_01.png) no-repeat 0 0;
  }
  .model-course-layout .model-course_navi .model-course_inner::after {
    bottom: 0;
    right: -160px;
    width: 114px;
    height: 86px;
    background: url(/common/img/cmn_footprints_ic01_02.png) no-repeat 0 0;
  }
  .model-course-layout .model-course_navi .model-course_text {
    margin-bottom: .5em;
    text-align: center;
  }
  .model-course-layout .model-course_navi .model-course_select {
    position: relative;
    width: 100%;
    padding: 12px 45px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #555;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
    overflow: hidden;
    cursor: pointer;
  }
  .model-course-layout .model-course_navi .model-course_select:hover {
    background-color: #f4f4f4;
  }
  .model-course-layout .model-course_navi .model-course_select::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-top: 6px solid #666;
    border-right: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    content: "";
  }
  .model-course-layout .model-course_navi .model-course_select select {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    background: none !important;
    opacity: 0;
    cursor: pointer;
    text-transform: none;
    -webkit-appearance: none;
    z-index: 1;
  }
  .model-course-layout .model-course_detail {
    width: 1200px;
    max-width: 100%;
    margin: 2.5em auto 0;
  }
  .model-course-layout .model-course_detail > *:first-child,
  .model-course-layout .model-course_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- model-map-layout ----- */
  .model-map-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    margin-top: 2.5em;
  }
  .model-map-layout .model-map_visual {
    position: relative;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 65%;
    margin-right: 36px;
  }
  .model-map-layout .model-map_anc > li {
    position: absolute;
    padding-bottom: 2px;
  }
  .model-map-layout .model-map_anc > li > a {
    display: inline-block;
    position: relative;
    padding: 12px 15px 12px 75px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    font-size: 1.4rem;
    text-align: center;
    vertical-align: top;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .model-map-layout .model-map_anc > li > a::before {
    position: absolute;
    top: 50%;
    left: 13px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 10px;
    height: 10px;
    margin-top: -7px;
    border-top: 1px solid #003b83;
    border-right: 1px solid #003b83;
    content: "";
  }
  .model-map-layout .model-map_anc > li > a:hover {
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .model-map-layout .model-map_anc > li .model_anc_icon {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 42px;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    border-radius: 50%;
    background-color: #003b83;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    font-style: normal;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .model-map-layout .model-map_anc > li .model_anc_icon {
    padding-top: 6px;
  }
  .model-map-layout .model-map_anc > li .model_anc_label {
    display: inline-block;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .model-map-layout .model-map_anc > li .model_anc_label {
    padding-top: 5px;
  }
  .model-map-layout .model-map_detail {
    width: 100%;
  }
  .model-map-layout .model-map_detail > *:first-child,
  .model-map-layout .model-map_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- kawara-layout ----- */
  .kawara-layout {
    margin-top: 2.5em;
  }
  .kawara-layout > .kawara_item {
    padding-bottom: 20px;
    border-bottom: 1px solid #d2d2d2;
  }
  .kawara-layout > .kawara_item + .kawara_item {
    margin-top: 1.25em;
  }
  .kawara-layout > .kawara_item > *:first-child,
  .kawara-layout > .kawara_item > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .kawara-layout > .kawara_item .column-media > .column_image {
    width: 120px;
  }
  .kawara-layout > .kawara_item.type-old .column-media > .column_image {
    width: 170px;
  }
  
  /* ----- station-list-layout ----- */
  .station-list-layout {
    margin-top: 2.5em;
    overflow: hidden;
  }
  .station-list-layout .station_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    overflow-x: auto;
  }
  .station-list-layout .station_list > li {
    position: relative;
    width: 100%;
    padding-bottom: 2px;
  }
  .station-list-layout .station_list > li::before,
  .station-list-layout .station_list > li::after {
    position: absolute;
    top: 7px;
    width: 50%;
    height: 3px;
    background-color: #bbc9e7;
    content: "";
  }
  .station-list-layout .station_list > li::before {
    left: 0;
  }
  .station-list-layout .station_list > li::after {
    right: 0;
  }
  .station-list-layout .station_list > li:first-child::before,
  .station-list-layout .station_list > li:last-child::after {
    display: none;
  }
  .station-list-layout .station_list > li > .station_list_inner {
    position: relative;
    padding: 30px 4px 0;
  }
  .station-list-layout .station_list > li > .station_list_inner::before,
  .station-list-layout .station_list > li > .station_list_inner::after {
    position: absolute;
    left: 50%;
    border-radius: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    content: "";
  }
  .station-list-layout .station_list > li > .station_list_inner::before {
    top: 3px;
    width: 12px;
    height: 12px;
    background-color: #bbc9e7;
    z-index: 1;
  }
  .station-list-layout .station_list > li.is-principal > .station_list_inner::before {
    top: 0;
    width: 16px;
    height: 16px;
  }
  .station-list-layout .station_list > li > .station_list_inner::after {
    top: 6px;
    width: 6px;
    height: 6px;
    background-color: #fff;
    z-index: 1;
  }
  .station-list-layout .station_list > li.is-principal > .station_list_inner::after {
    top: 3px;
    width: 10px;
    height: 10px;
  }
  .station-list-layout .station_list > li > .station_list_inner > .block {
    height: 220px;
    padding: 10px 5px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    line-height: 1.5;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 0 0 #ccc;
    box-shadow: 0 2px 0 0 #ccc;
  }
  .station-list-layout .station_list > li > .station_list_inner > a.block:hover {
    background-color: #f4f4f4;
    -webkit-box-shadow: 0 0 0 0 #ccc;
    box-shadow: 0 0 0 0 #ccc;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  .station-list-layout .station_list > li .station_list_number {
    text-align: center;
    line-height: 1;
  }
  .station-list-layout .station_list > li .station_list_number .station_list_number_label {
    display: inline-block;
    position: relative;
    padding-bottom: 3px;
    color: #003b83;
    font-size: 1.1rem;
    font-weight: 700;
  }
  .station-list-layout .station_list > li .station_list_number .station_list_number_label::after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #003b83;
    content: "";
  }
  .station-list-layout .station_list > li .station_list_name {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    margin-top: 10px;
    padding-right: 1px;
    font-weight: 700;
    text-align: left;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
   /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .station-list-layout .station_list > li .station_list_name {
    padding-right: 5px;
  }
  
  /* ----- station-link-list ----- */
  .station-link-list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-top: 1.5em;
  }
  .station-link-list > li {
    display: -webkit-flex;
    display: flex;
    width: calc(100% / 5);
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  .station-link-list > li:nth-child(5n+1) {
    border-left: 1px solid #ccc;
  }
  .station-link-list > li:nth-child(n+6) {
    border-top: none;
  }
  .station-link-list > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: 100%;
    padding: 12px 15px 10px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    line-height: 1.25;
  }
  .station-link-list > li > a:hover {
    background-color: #f4f4f4;
  }
  .station-link-list > li > a .station_link_number {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    position: relative;
    margin-right: 10px;
    padding: 2px 0;
    color: #003b83;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
  }
  .station-link-list > li > a .station_link_number::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #003b83;
    content: "";
  }
  .station-link-list > li > a .station_link_name {
    width: 100%;
    font-weight: 700;
  }
  
  /* ----- station-map-layout ----- */
  .station-map-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 2.5em;
  }
  .station-map-layout .station_image {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: calc(((100% - 72px) / 3) * 2 + 36px);
    border-radius: 3px;
    background-color: #fff;
    overflow: hidden;
  }
  /* for IE11 */
  [data-browser="ie11"] .station-map-layout .station_image > img {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }
  .station-map-layout .station_detail {
    width: calc((100% - 72px) / 3);
  }
  .station-map-layout .station_detail > *:first-child,
  .station-map-layout .station_detail > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .station-map-layout .link-button-v4 > li > a {
    font-size: 1.8rem;
    font-weight: 500;
  }
  
  /* ----- barrier-free-layout ----- */
  .barrier-free-layout {
    margin-top: 1.5em;
  }
  .barrier-free-layout > .barrier-free_item {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .barrier-free-layout > .barrier-free_item + .barrier-free_item {
    margin-top: 1.25em;
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_icon,
  .barrier-free-layout > .barrier-free_item .barrier-free_existence {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_icon {
    width: 40px;
    margin-right: 10px;
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_text {
    width: 100%;
    line-height: 1.25;
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_existence {
    position: relative;
    width: 20px;
    margin-left: 10px;
    text-indent: -9999em;
    overflow: hidden;
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_existence::before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "";
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_existence.type-no::before {
    width: 20px;
    height: 1px;
    margin: -1px 0 0 -10px;
    background-color: #bbb;
  }
  .barrier-free-layout > .barrier-free_item .barrier-free_existence.type-yes::before {
    width: 18px;
    height:18px;
    margin: -9px 0 0 -9px;
    border: 2px solid #e6204d;
    border-radius: 50%;
  }
  
  /* ----- banner-layout ----- */
  .banner-layout {
    margin-top: 2.5em;
  }
  .banner-layout > *:first-child {
    margin-top: 0 !important;
  }
  .banner-layout > .banner_title {
    font-size: 2.2rem;
    text-align: center;
    line-height: 1.5;
  }
  .banner-layout .banner_carousel {
    margin-top: 1em;
    overflow: hidden;
  }
  .banner-layout .banner_carousel .banner_carousel_list {
    margin: 0 -18px;
    padding-bottom: 1px;
    overflow: hidden;
  }
  .banner-layout .banner_carousel .banner_carousel_list:not(.slick-initialized) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .banner-layout .banner_carousel .banner_carousel_list .banner_carousel_item {
    padding: 0 18px;
  }
  .banner-layout .banner_carousel .banner_carousel_list > .banner_carousel_item {
    width: calc(100% / 3);
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .banner-layout .banner_carousel .banner_carousel_list > .banner_carousel_item,
  [data-browser="edge"] .banner-layout .banner_carousel .banner_carousel_list > .banner_carousel_item {
    width: calc((100% / 3) - 0.1px);
  }
  .banner-layout .banner_carousel .banner_carousel_list > .banner_carousel_item:nth-child(n+4) {
    display: none;
  }
  /* slick */
  .banner-layout .banner_carousel .banner_carousel_list .slick-track {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-track,
  .banner-layout .banner_carousel .banner_carousel_list .slick-track .slick-slide {
    display: -webkit-flex;
    display: flex;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-track .slick-slide {
    height: auto;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-track .slick-slide > div,
  .banner-layout .banner_carousel .banner_carousel_list .slick-track .slick-slide .banner_carousel_item,
  .banner-layout .banner_carousel .banner_carousel_list .slick-track .slick-slide .banner_carousel_item > [class*="index-layout"] {
    display: -webkit-flex !important;
    display: flex !important;
    width: 100% !important;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-track .slick-slide .banner_carousel_item > [class*="index-layout"] > .block {
    width: 100%;
  }
  .banner-layout .banner_carousel .banner_carousel_list .banner_carousel_item > [class*="index-layout"] > .block > .index_image {
    position: relative;
    padding-top: 56.4%;
    overflow: hidden;
  }
  .banner-layout .banner_carousel .banner_carousel_list .banner_carousel_item > [class*="index-layout"] > .block > .index_image > img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    max-height: 100%;
    max-width: 100%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow {
    position: absolute;
    top: 60px;
    width: 50px;
    height: 90px;
    padding: 0;
    border: none;
    background-color: rgba(0,0,0,0.3);
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    z-index: 1;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 22px;
    margin-top: -11px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow.slick-prev {
    left: 18px;
    border-radius: 0 3px 3px 0;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow.slick-prev::before {
    margin-left: -6px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow.slick-next {
    right: 18px;
    border-radius: 3px 0 0 3px;
  }
  .banner-layout .banner_carousel .banner_carousel_list .slick-arrow.slick-next::before {
    margin-left: -16px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  /* ----- banner-layout-v2 ----- */
  .banner-layout-v2 {
    margin-top: 2.5em;
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-left: -40px !important;
    margin-right: -40px !important;
    padding: 40px 40px 45px;
    background-color: #e8f1ff;
  }
  .banner-layout-v2 > * {
    width: 1200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .banner-layout-v2 > *:first-child {
    margin-top: 0 !important;
  }
  .banner-layout-v2 > .banner_title {
    font-size: 2.2rem;
    text-align: center;
    line-height: 1.5;
  }
  .banner-layout-v2 .banner_carousel {
    margin-top: 1em;
    overflow: hidden;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list {
    margin: 0 -18px;
    overflow: hidden;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list:not(.slick-initialized) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .banner_carousel_item {
    padding: 0 18px;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list > .banner_carousel_item {
    width: calc(100% / 4);
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .banner-layout-v2 .banner_carousel .banner_carousel_list > .banner_carousel_item,
  [data-browser="edge"] .banner-layout-v2 .banner_carousel .banner_carousel_list > .banner_carousel_item {
    width: calc((100% / 4) - 0.1px);
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list > .banner_carousel_item:nth-child(n+5) {
    display: none;
  }
  /* slick */
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-track {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow {
    position: absolute;
    top: 65px;
    width: 50px;
    height: 90px;
    padding: 0;
    border: none;
    background-color: rgba(0,0,0,0.3);
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    z-index: 1;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 22px;
    margin-top: -11px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow.slick-prev {
    left: 18px;
    border-radius: 0 3px 3px 0;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow.slick-prev::before {
    margin-left: -6px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow.slick-next {
    right: 18px;
    border-radius: 3px 0 0 3px;
  }
  .banner-layout-v2 .banner_carousel .banner_carousel_list .slick-arrow.slick-next::before {
    margin-left: -16px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  
  /* ----- train-stop-list ----- */
  .train-stop-list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin-top: 1em;
  }
  .train-stop-list > dt {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin-right: 12px;
    padding-top: 1px;
    font-size: 1.3rem;
  }
  .train-stop-list > dd {
    width: 100%;
  }
  .train-stop-list > dd > *:first-child {
    margin-top: 0 !important;
  }
  .train-stop-list > dd .train_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .train-stop-list > dd .train_list > li {
    padding: 5px 8px;
    background-color: #777;
    color: #fff;
    font-size: 1.3rem;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .train-stop-list > dd .train_list > li {
    padding: 7px 8px 3px;
  }
  .train-stop-list > dd .train_list > li + li {
    margin-left: 2px;
  }
  .train-stop-list > dd .train_list > li.color1 {
    background-color: #da1437;
  }
  .train-stop-list > dd .train_list > li.color2 {
    background-color: #e88200;
  }
  .train-stop-list > dd .train_list > li.color3 {
    background-color: #035eb9;
  }
  .train-stop-list > dd .train_list > li.color4 {
    background-color: #777;
  }
  
  /* ----- gmap-layout ----- */
  .gmap-layout {
    margin-top: 5em;
  }
  .gmap-layout .gmap_canvas {
    border: 1px solid #ccc;
  }
  .gmap-layout .gmap_canvas iframe {
    width: 100%;
    height: 600px;
    vertical-align: top;
  }
  .gmap-layout .gmap_button {
    margin-top: 1.75em;
    text-align: center;
  }
  .gmap-layout .gmap_button > a {
    display: inline-block;
    position: relative;
    width: 785px;
    max-width: 100%;
    padding: 20px 50px;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    text-decoration: none;
    line-height: 1.5;
    overflow: hidden;
  }
  .gmap-layout .gmap_button > a:hover {
    background-color: #f4f4f4;
  }
  .gmap-layout .gmap_button > a .gmap_button_label {
    display: inline-block;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .gmap-layout .gmap_button > a .gmap_button_label {
    padding-top: 7px;
  }
  
  /* ----- gallery-layout ----- */
  .gallery-layout {
    margin-top: 2.5em;
  }
  .gallery-layout > .gallery_list {
    position: relative;
    font-size: 0;
  }
  .gallery-layout > .gallery_list > .gallery_item:first-child {
    position: relative;
    z-index: 1;
  }
  .gallery-layout > .gallery_list > .gallery_item + .gallery_item {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* slick */
  .gallery-layout > .gallery_list .slick-dots {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-top: 10px;
  }
  .gallery-layout > .gallery_list .slick-dots > li {
    position: relative;
    width: calc((100% - 24px) / 4);
    margin: 8px 0 0 8px;
    cursor: pointer;
  }
  /* for IE11 & Edge */
  [data-browser="ie11"] .gallery-layout > .gallery_list .slick-dots > li,
  [data-browser="edge"] .gallery-layout > .gallery_list .slick-dots > li {
    width: calc(((100% - 24px) / 4) - 0.1px);
  }
  .gallery-layout > .gallery_list .slick-dots > li::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border: 3px solid transparent;
    content: "";
  }
  .gallery-layout > .gallery_list .slick-dots > li.slick-active::after {
    border-color: #003c84;
  }
  .gallery-layout > .gallery_list .slick-dots > li:nth-child(4n+1) {
    margin-left: 0 !important;
  }
  .gallery-layout > .gallery_list .slick-dots > li:nth-child(-n+4) {
    margin-top: 0 !important;
  }
  
  /* ----- head-info-layout ----- */
  .head-info-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    background-color: #fff;
    -webkit-box-shadow: 0 2px 2px 0 rgba(204,204,204,0.3);
    box-shadow: 0 2px 2px 0 rgba(204,204,204,0.3);
    overflow: hidden;
  }
  .head-info-layout > .info_content {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    width: 100%;
    padding-right: 20px;
  }
  .head-info-layout > .info_content .info_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    position: relative;
    width: 320px;
    padding: 20px 0 20px 20px;
    color: #fff;
    line-height: 1.5;
  }
  .head-info-layout > .info_content .info_heading::before {
    display: inline-block;
    position: absolute;
    top: -170px;
    left: 0;
    width: 320px;
    height: 320px;
    border-radius: 0 0 50% 0;
    background-color: #003b83;
    content: "";
  }
  .head-info-layout > .info_content .info_heading .info_title,
  .head-info-layout > .info_content .info_heading .info_time {
    position: relative;
    z-index: 1;
  }
  .head-info-layout > .info_content .info_heading .info_title {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin-right: 8px;
    font-size: 1.8rem;
    font-weight: 700;
  }
  .head-info-layout > .info_content .info_heading .info_time {
    width: 100%;
    padding-top: 5px;
    font-size: 1.2rem;
  }
  .head-info-layout > .info_content .info_heading .info_time .info_time_update {
    display: inline-block;
    position: relative;
    width: 15px;
    height: 19px;
    margin: -1px 0 0 10px;
    background: url(/common/img/cmn_update_ic01.png) no-repeat 0 0;
    text-indent: -9999em;
    vertical-align: top;
    overflow: hidden;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .head-info-layout > .info_content .info_heading .info_time .info_time_update {
    margin-top: -3px;
  }
  .head-info-layout > .info_content .info_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: 100%;
    padding: 20px 0 20px 15px;
  }
  .head-info-layout > .info_content .info_detail .info_status {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin: 2px 10px 0 0;
    padding: 4px 11px;
    background-color: #d0dffb;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .head-info-layout > .info_content .info_detail .info_status {
    margin-top: 0;
    padding: 7px 11px 3px;
  }
  .head-info-layout > .info_content .info_detail.is-delayed .info_status {
    background-color: #e6204d;
    color: #fff;
  }
  .head-info-layout > .info_content .info_detail .info_message {
    width: 100%;
    font-weight: 700;
  }
  .head-info-layout > .info_content .info_detail.is-delayed .info_message {
    color: #e6204d;
  }
  .head-info-layout > .info_utility {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    padding: 15px 20px 15px 0;
  }
  .head-info-layout .info_link_button {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .head-info-layout .info_link_button > li {
    display: -webkit-flex;
    display: flex;
    min-width: 140px;
  }
  .head-info-layout .info_link_button > li + li {
    margin-left: 10px;
  }
  .head-info-layout .info_link_button > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 8px 15px 6px;
    border: 1px solid #ccc;
    border-radius: 2px;
    background-color: #fff;
    color: #333;
    font-size: 1.4rem;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    line-height: 1.5;
  }
  .head-info-layout .info_link_button > li > a.info_history {
    padding-left: 40px;
  }
  .head-info-layout .info_link_button > li > a.info_certificate {
    padding-left: 43px;
    border-color: #003b83;
    background-color: #003b83;
    color: #fff;
  }
  .head-info-layout .info_link_button > li > a.info_history::before {
    position: absolute;
    top: 50%;
    left: 10px;
    width: 21px;
    height: 18px;
    margin-top: -10px;
    background: url(/common/img/cmn_history_ic01.png) no-repeat 0 0;
    content: "";
  }
  .head-info-layout .info_link_button > li > a.info_certificate::before {
    position: absolute;
    top: 50%;
    left: 14px;
    width: 17px;
    height: 15px;
    margin-top: -8px;
    background: url(/common/img/cmn_certificate_ic01.png) no-repeat 0 0;
    content: "";
  }
  .head-info-layout .info_link_button > li > a:hover {
    background-color: #f4f4f4;
  }
  .head-info-layout .info_link_button > li > a.info_certificate:hover {
    border-color: #0e57b0;
    background-color: #0e57b0;
  }
  .head-info-layout .info_link_button > li > a .info_link_label {
    display: inline-block;
  }
  /* for IE11 */
  [data-browser="ie11"]:not([data-font="meiryo"]) .head-info-layout .info_link_button > li > a .info_link_label {
    padding-top: 2px;
  }
  
  /* ----- plugin-layout ----- */
  .plugin-layout {
    margin-top: 3.5em;
  }
  .plugin-layout .plugin_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .plugin-layout .plugin_banner {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 159px;
    margin-right: 30px;
  }
  .plugin-layout .plugin_detail > *:first-child {
    margin-top: 0 !important;
  }
  .plugin-layout .plugin_text {
    font-size: 1.4rem;
  }
  
  /* ----- twitter-timeline-layout ----- */
  .twitter-timeline-layout {
    width: 500px;
    max-width: 100%;
    margin: 2em auto 0;
    border: 1px solid #ddd;
  }
  /* for IE11 */
  [data-browser="ie11"] .twitter-timeline-layout {
    border: none;
    width: auto;
  }
  [data-browser="ie11"] .twitter-timeline-layout .twitter-timeline {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    color: #333;
  }
  [data-browser="ie11"] .twitter-timeline-layout .twitter-timeline:hover {
    color: #003b83;
  }
  [data-browser="ie11"] .twitter-timeline-layout .twitter-timeline::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 8px solid #003b83;
    content: "";
  }
  [data-browser="ie11"]:not([data-font="meiryo"]) .twitter-timeline-layout .twitter-timeline::before {
    top: .45em;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .list-description-v3::after,
  .column-media::after,
  .station-accordion-layout::after,
  .station-hero-layout > .hero_heading .hero_panel .hero_bound::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * Print
====================================================== */
@media print {
}