@charset "utf-8";

/* ======================================================
 * parts_sp.css
 * ------------------------------------------------------
 * @media only screen and (max-width: 767px)
 * - Common
 * - Element >>> Heading
 * - Element >>> Text
 * - Element >>> List
 * - Element >>> Link
 * - Element >>> Image
 * - Element >>> Video
 * - Element >>> Form
 * - Element >>> Other
 * - Layout >>> Column
 * - Layout >>> Table
 * - Layout >>> Box
 * - Layout >>> Other
 * - Component >>> Navi
 * - Component >>> Index
 * - Component >>> Other
 * - Clearfix
 * Media Queries
====================================================== */

@media only screen and (max-width: 767px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- font ----- */
  
  /* ----- a ----- */
  
  /* ----- opacity ----- */
  
  /* ----- transition ----- */
  
  /* ----- sprite ----- */
  .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,
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after,
  .plugin-layout a .a-blank::after,
  .news-compo .a-blank .news_title::after,
  .news-compo .a-pdf .news_title::after {
    vertical-align: top;
    content: "";
  }
  .a-blank::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  .news-layout .a-blank .news_title::after,
  .plugin-layout a .a-blank::after,
  .news-compo .a-blank .news_title::after { width: 10px; height: 10px; background: url(/common/img/com_ic41.png) no-repeat 0 0; background-size: 10px auto; }
  .a-pdf::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .news-layout .a-pdf .news_title::after,
  .news-compo .a-pdf .news_title::after { width: 13px; height: 16px; background: url(/common/img/com_ic42.png) no-repeat 0 0; background-size: 14px auto; }
  .a-print::after { width: 14px;  height: 12px; background: url(/common/img/com_ic45.png) no-repeat 0 0; background-size: 14px auto; }
  .a-mail::after { width: 14px; height: 10px; background: url(/common/img/com_ic46.png) no-repeat 0 0; background-size: 14px auto; }
  .a-excel::after { width: 13px; height: 16px; background: url(/common/img/com_ic47.png) no-repeat 0 0; background-size: 14px auto; }
  .a-word::after { width: 13px; height: 16px; background: url(/common/img/com_ic48.png) no-repeat 0 0; background-size: 14px auto; }
  .a-ppt::after { width: 13px; height: 16px; background: url(/common/img/com_ic49.png) no-repeat 0 0; background-size: 14px auto; }
  .a-rss::after { width: 12px; height: 12px; background: url(/common/img/com_ic50.png) no-repeat 0 0; background-size: 12px auto; }
  .a-zip::after { width: 16px; height: 13px; background: url(/common/img/com_ic51.png) no-repeat 0 0; background-size: 16px auto; }
  .a-video::after { width: 17px; height: 15px; background: url(/common/img/com_ic52.png) no-repeat 0 0; background-size: 17px auto; }
  [class*="heading-lv"] .a-blank::after,
  [class*="heading-lv"] .a-pdf::after,
  .news-layout .a-blank::after,
  .news-layout .a-pdf::after,
  .news-compo .a-blank::after,
  .news-compo .a-pdf::after {
    display: none;
  }
  .link-inline.a-blank::after {
    display: inline-block;
    margin: .4em 8px 0 8px;
  }
  .link-inline.a-pdf::after {
    display: inline-block;
    margin: .2em 8px 0 8px;
  }
  .link-text > li > .a-blank::after,
  .link-text > li > .a-pdf::after,
  .link-text > li > .a-print::after,
  .link-text > li > .a-mail::after,
  .link-text > li > .a-excel::after,
  .link-text > li > .a-word::after,
  .link-text > li > .a-ppt::after,
  .link-text > li > .a-rss::after,
  .link-text > li > .a-zip::after,
  .link-text > li > .a-video::after {
    display: inline-block;
    margin: .3em 0 0 8px;
  }
  .link-button > li > .a-blank::after,
  .link-button-v2 > li > .a-blank::after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -6px;
  }
  .link-button > li > a .link_label,
  .link-button-v2 > li > a .link_label {
    position: relative;
  }
  .link-button > li > .a-pdf .link_label::before,
  .link-button-v2 > li > .a-pdf .link_label::before {
    position: absolute;
    content: "";
    width: 14px;
    height: 16px;
    top: 50%;
    margin-top: -8px;
    left: -20px;
    background: url(/common/img/com_ic42.png) no-repeat 0 0;
    background-size: 14px auto;
    vertical-align: top;
  }
  .link-button > li > .a-print .link_label::before,
  .link-button-v2 > li > .a-print .link_label::before {
    position: absolute;
    content: "";
    width: 14px;
    height: 12px;
    top: 50%;
    margin-top: -6px;
    left: -20px;
    background: url(/common/img/com_ic45.png) no-repeat 0 0;
    background-size: 14px auto;
    vertical-align: top;
  }
  .link-button-v2 > li > .a-print .link_label::before {
    background: url(/common/img/com_ic44.png) no-repeat 0 0;
    background-size: 14px auto;
  }
  .link-button > li > .a-pdf::after,
  .link-button > li > .a-print::after,
  .link-button-v2 > li > .a-pdf::after,
  .link-button-v2 > li > .a-print::after {
    display: none;
  }
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after {
    display: inline-block;
    margin: .4em 0 0 10px;
  }
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after {
    display: inline-block;
    margin: .25em 0 0 10px;
  }
  .news-compo .a-blank .news_title::after,
  .news-compo .a-pdf .news_title::after {
    display: inline-block;
    margin: 0 0 0 10px;
    vertical-align: middle;
  }
  .plugin-layout a .a-blank::after {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: .45em 5px 0 7px;
  }
  .link-button.iconNew a {
    margin-top: 15px;
    padding: 15px 55px 15px;
  }
  .link-button.iconNew a::before {
    position: absolute;
    content: "NEW";
    width: 52px;
    height: 22px;
    top: -15px;
    left: 10px;
    padding-top: 1px;
    border-radius: 10em;
    background-color: #0096e0;
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
  }
  
  /* ----- data-row-sp ----- */
  [data-row-sp]:not([data-row-sp="1"]) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  [data-row-sp]:not([data-row-sp="1"]):not([data-row-sp="auto"]) > * {
    margin-top: 1.25em;
    margin-left: 15px;
  }
  [data-row-sp="2"] > *:nth-child(-n+2),
  [data-row-sp="3"] > *:nth-child(-n+3) {
    margin-top: 0 !important;
  }
  [data-row-sp="2"] > *:nth-child(2n+1),
  [data-row-sp="3"] > *:nth-child(3n+1) {
    margin-left: 0 !important;
  }
  [data-row-sp="2"] > * { width: calc((100% - 15px) / 2); }
  [data-row-sp="3"] > * { width: calc((100% - 30px) / 3); }
  [data-row-sp="auto"] {
    margin-right: -15px;
    margin-bottom: -.5em;
  }
  [data-row-sp="auto"] > * {
    margin-top: 0 !important;
    margin-right: 15px;
    margin-bottom: .5em;
    margin-left: 0;
  }
  .link-text[data-row-sp="auto"] {
    margin-right: -30px;
    margin-bottom: -.5em;
  }
  .link-text[data-row-sp="auto"] > li {
    margin-right: 30px;
    margin-bottom: .5em;
  }
  .tab-layout-kakueki .table-layout .link-text {
    display: block;
    margin-right: 0;
  }
  
  /* ------------------------------------------------------
   * Element >>> Heading
  ------------------------------------------------------ */
  [class^="heading-lv"] .heading_title {
    line-height: 1.25;
  }
  [class*="heading-lv"] a:link .heading_title {
    text-decoration: underline;
  }
  [class*="heading-lv"] a:hover .heading_title {
    text-decoration: none;
  }
  #main .heading-lv1 + * {
    margin: 2.86em 0;
  }
  #main .heading-lv2 + * {
    margin-top: 1.45em;
  }
  #main .heading-lv3 + *,
  #main .heading-lv4 + *,
  #main .heading-lv5 + * {
    margin-top: 1.1em;
  }
  
  /* ----- heading-lv1 ----- */
  .heading-lv1 {
    margin: 0 0 2.5em;
  }
  .heading-lv1 .heading_title {
    position: relative;
    display: inline-block;
    padding-bottom: 8px;
    border-bottom: 2px solid #0096e0;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.5;
  }
  .heading-lv1 .heading_subtitle {
    color: #333;
    font-size: 1.8rem;
  }
  .heading-lv1 .heading_title::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto -6px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid #0096e0;
    background-color: #fff;
    z-index: 1;
  }
  .heading-mv-lv1 {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 100vw;
    min-height: 103px;
    margin: 0 calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-size: auto 100% !important;
  }
  .heading-mv-lv1.mv01 {
    background: url(/common/img/index_h01.jpg) no-repeat 60% 0;
  }
  .heading-mv-lv1.mv02 {
    background: url(/common/img/index_h02.jpg) no-repeat 60% 0;
  }
  .heading-mv-lv1.mv03 {
    background: url(/common/img/index_h03.jpg) no-repeat 60% 0;
  }
  .heading-mv-lv1 .heading-mv_title {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    min-height: 103px;
    margin: 0 auto;
    padding: 0 15px;
    color: #fff;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
  }
  
  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    margin: 1.43em 0;
  }
  .heading-lv2 .block {
    display: block;
    text-decoration: none;
  }
  .heading-lv2 .heading_title {
    position: relative;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv2 .heading_subtitle {
    color: #333;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    margin: 2em 0 1.5em 20px;
  }
  .news-layout-contents .heading-lv3 {
    margin-bottom: 0;
  }
  .heading-lv3 .block {
    display: block;
    text-decoration: none;
  }
  .heading-lv3 .heading_title {
    position: relative;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv3 .heading_title::before {
    position: absolute;
    content: "";
    top: 0.3em;
    left: -20px;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 4px solid #0096e0;
  }
  .heading-lv3 .heading_subtitle {
    color: #333;
    font-size: 1.1rem;
  }
  .heading-lv3 .heading_title.type-not::before {
    position: absolute;
    content: "";
    top: 0.7em;
    left: -20px;
    width: 15px;
    height: 3px;
    border-radius: 0;
    border: none;
    background: #d20023;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .heading-lv3 .heading_title.type-not::after {
    position: absolute;
    content: "";
    top: 0.7em;
    left: -20px;
    width: 15px;
    height: 3px;
    border-radius: 0;
    border: none;
    background: #d20023;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  
  /* ----- heading-lv3-zoom----- */
  .heading-lv3-zoom {
    margin: 1.5em 0 0.8em 0;
  }
  section + section .heading-lv3-zoom {
    margin-top: 3em;
  }
  .heading-lv3-zoom .heading-lv3 {
    margin-bottom: 0;
  }
  .heading-lv3-zoom .heading_title {
    position: relative;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1.5;
  }
  
  /* ----- heading-app-lv3 ----- */
  .app-section {
    padding-bottom: 1.8em;
    border-bottom: 1px solid #ddd;
  }
  .heading-app-lv3 {
    margin: 1em 0 1em;
  }
  .heading-app-lv3 .heading_title {
    display: flex;
    align-items: center;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-app-lv3 .heading_title .image_inner {
    max-width: 40px;
    margin-right: 10px;
  }
  
  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 1.45em 0 1.08em;
  }
  .heading-lv4 .heading_title {
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv4 .heading_subtitle {
    color: #333;
    font-size: 1.1rem;
  }
  
  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 1.45em 0 1.08em;
  }
  .heading-lv5 .heading_title {
    position: relative;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv5 .heading_subtitle {
    color: #333;
    font-size: 1.0rem;
  }
  
  /* ------------------------------------------------------
   * Element >>> Text
  ------------------------------------------------------ */
  /* ----- text-paragraph ----- */
  .text-paragraph {
    margin-top: 1.08em;
  }
  
  /* ----- text-lead ----- */
  .text-lead {
    margin: 1.88em 0 0.95em;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .text-lead_2 {
    margin: 1.88em 0 0.95em;
    color: #0096e0;
    font-size: 1.8rem;
    font-weight: bold;
  }
  /* ----- text-title ----- */
  .text-title {
    font-size: 1.8rem;
    font-weight: bold;
  }
  /* ----- text-icon ----- */
  .text-icon {
    vertical-align: middle;
  }

  /* ------------------------------------------------------
   * Element >>> List
  ------------------------------------------------------ */
  [class*="list-note"] {
    margin-top: 1.08em;
  }
  [class*="list-bullet"],
  [class*="list-order"] {
    margin-top: 1.43em;
  }
  [class*="list-description"] {
    margin-top: 1.3em;
  }
  [class*="list-note"] > li + li {
    margin-top: 1em;
  }
  .list-order > li > [class*="list-note"] {
    margin-top: 0;
  }
  [class*="list-bullet"] > li + li,
  [class*="list-order"] > li + li {
    margin-top: .6em;
  }
  [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;
    margin-top: 1em;
  }
  .list-al-right > [class*="list-"] {
    margin-top: 0;
  }
  
  /* ----- list-note ----- */
  .list-note > li {
    position: relative;
    padding-left: 1em;
    font-size: 1.1rem;
  }
  .list-note > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-note-order ----- */
  .list-note-v2 > li {
    position: relative;
    padding-left: 2.5em;
    font-size: 1.1rem;
  }
  .list-note-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note-v2 > li > .list_mark::after {
    content: ".";
  }
  
  /* ----- list-note-v3 ----- */
  .list-note-v3 > li {
   color: #555555;
  }
  .list-note-v3 {
    margin-top: 0;
  }
  .list-note-v3 > li {
    position: relative;
    padding-left: 1.2em;
    color: #555555;
    font-size: 1.1rem;
  }
  .list-note-v3 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-bullet ----- */
  .list-bullet > li {
    position: relative;
    padding-left: 1em;
  }
  
  .list-bullet > li::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #0096e0;
    content: "";
  }
  /* v2 */
  .list-bullet-v2 > li {
    position: relative;
    padding-left: 1em;
    font-size: 1.4rem;
  }
  .list-bullet-v2 > li::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #969696;
    content: "";
  }
  
  /* ----- list-order ----- */
  .list-order > li {
    position: relative;
    padding-left: 1.5em;
  }
  .list-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* 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: 1em 0 .2em;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .list-description > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description > dd {
  }
  
  /* ------------------------------------------------------
   * Element >>> Link
  ------------------------------------------------------ */
  [class*="link-text"] {
    margin-top: 1.08em;
  }
  [class*="link-text"] > li + li {
    margin-top: .75em;
  }
  [class*="link-button"] {
    margin-top: 1em;
  }
  [class*="link-button"] > li + li {
    margin-top: .75em;
  }
  [class*="link-button"] > li > a {
    width: 100%;
  }
  [class*="link-button"].is-centering {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  [class*="link-button"].is-centering > li {
    display: -webkit-flex;
    display: flex;
    width: calc((100% - 15px) / 2);
  }
  [class*="link-button"].is-centering > li + li {
    margin-top: 0;
    margin-left: 15px;
  }
  [class*="link-button"].is-centering > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  [class*="link-button"][data-row-sp] > li {
    display: -webkit-flex;
    display: flex;
    margin-top: .75em;
  }
  [class*="link-button"][data-row-sp] > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
  }
  [class*="link-"].is-nest {
    margin: .5em 0 1em;
  }
  
  /* ----- link-text ----- */
  .link-text > li > a {
    display: inline-block;
    position: relative;
    padding-left: 25px;
    text-decoration: none;
  }
  .link-text > li > a:hover {
    text-decoration: underline;
  }
  .link-text > li > a::before {
    position: absolute;
    top: .3em;
    left: 0;
    width: 15px;
    height: 14px;
    background: url(/common/img/com_ic60.png) no-repeat 0 0;
    background-size: 15px auto;
    content: "";
  }
  /* ----- link-text-mail ----- */
  .link-text-mail a {
    text-decoration: none;
  }
  
  /* ----- link-pageTop ----- */
  .link-text.link-pageTop a::before {
    position: absolute;
    top: .3em;
    left: 0;
    width: 14px;
    height: 15px;
    background: url(/common/img/com_ic73.png) no-repeat 0 0; 
    background-size: 14px auto;
    content: "";
  }
  /* ----- link-text type-new ----- */
  .link-text i.type-new::after {
    content: "NEW";
    display: inline-block;
    margin: 0 0 0 10px;
    padding: 3px 5px;
    background-color: #d20023;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1.1;
    vertical-align: middle;
  }
  
  /* ----- link-button ----- */
  .link-button > li > a {
    display: inline-block;
    position: relative;
    min-width: 61.11%;
    padding: 12px 32px 12px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.5rem;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .link-button .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  /* v2 */
  .link-button-v2 > li > a {
    display: inline-block;
    position: relative;
    min-width: 61.11%;
    padding: 15px 32px 15px;
    box-shadow:0px 1px 1px -1px #555;
    border-radius: 10em;
    background-color: #555;
    color: #fff;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v2 .link_label {
    display: inline-block;
    line-height: 1.5;
  }

  /* ------------------------------------------------------
   * 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.2rem;
    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;
  }
  .image-set.gp-al-right.gp-al-center-sp {
    -webkit-justify-content: center;
    justify-content: center;
  }
  .image-set.gp-al-left.gp-al-center-sp {
    -webkit-justify-content: center;
    justify-content: center;
  }
  .image-set .image_inner.sp-minHeight-img img {
    width: auto;
    height: 195px;
  }
  .image-set .image_inner.sp-magazine-img img {
    width: 190px;
    height: auto;
  }
  .tab_detail .image-set .image_inner.js-fitWidth {
    width: auto !important;
  }
  .image-set.image-border .image_inner {
    border: 1px solid #ccc;
  }
  
  /* ------------------------------------------------------
   * Element >>> Video
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element >>> Form
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element >>> Other
  ------------------------------------------------------ */
  /* ----- line-layout ----- */
  .line-layout {
    margin: 20px calc(50% - 50vw);
    width: 100vw;
  }
  .line-layout.type02 {
    margin: 20px 0;
    width: 100%;
  }
  .line-layout .line_hr {
    display: block;
    height: 1px;
    margin: 0;
    border-top: 1px solid #ddd;
  }
  
  /* ------------------------------------------------------
   * 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: 1em;
  }
  
  /* ----- column-layout-movie ----- */
  .column-layout-movie {
    margin-top: 10px;
  }
  .column-layout-movie > .column_item + .column_item {
    margin-top: 15px;
  }
  .column-layout-movie > .column_item,
  .column-layout-movie > .column_item .column_item-inner {
    margin: 0;
    padding: 0;
    display: block;
    width: 100%;
    position: relative;
    text-align: left;
  }
  .column-layout-movie > .column_item .column_item-inner {
    padding-bottom: 56.25%;
  }
  
  /* ----- column-layout-movie-v2 ----- */
  .column-layout-movie-v2 {
    margin-top: 20px;
  }
  .column-layout-movie-v2 > .column_item,
  .column-layout-movie-v2 > .column_item .column_item-inner {
    margin: 0 auto;
    padding: 0;
    display: block;
    width: 100%;
    position: relative;
    text-align: left;
  }
  .column-layout-movie-v2 > .column_item .column_item-inner {
    padding-bottom: 56.25%;
  }
  
  /* ----- allLink-wrap ----- */
  .column_item.allLink-wrap > a {
    color: #333;
    text-decoration: none;
  }
  .column_item.allLink-wrap > a .text-lead {
    margin: 1em 0 0.5em;
    font-size: 2.1rem;
    font-weight: bold;
  }
  .column_item.allLink-wrap > a .image-set {
    margin-bottom: 0.5em;
  }
  .column_item.allLink-wrap > a:hover .text-lead {
    color: #1e2d66;
    text-decoration: underline;
  }
  .column_item.allLink-wrap > a:hover .link-button {
    text-align: center;
  }
  .column_item.allLink-wrap > a .link-button > li > .block {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 12px 32px 12px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.5rem;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  
  /* ----- section-layout ----- */
  .column-layout.section-layout {
    margin: 70px 0;
  }
  .column-layout > .column_item {
    margin-top: 1em;
  }
  
  /* ----- column-media ----- */
  .column-media {
    margin-top: 1em;
  }
  .column-media[data-layout-sp="row"] > .column_image {
    max-width: calc((100% - 15px) / 2);
  }
  .column-media[data-layout-sp="row"] > .column_image[data-image="right"] {
    float: right;
    margin-left: 15px;
  }
  .column-media[data-layout-sp="row"] > .column_image[data-image="left"] {
    float: left;
    margin-right: 15px;
  }
  .column-media[data-layout-sp="col"] > .column_detail,
  .column-media[data-layout-sp="col-reverse"] > .column_image {
    margin-top: 1em;
  }
  .column-media[data-layout-sp="col-reverse"] {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .column-layout > .column_item .image_inner {
    text-align: center;
  }
  .column-media > .column_detail[data-wraparound="false"] {
    overflow: hidden;
  }
  
  .image_inner.csr-pdfImg {
    width: 135px !important;
  }
  
  /* ------------------------------------------------------
   * 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: 1em;
  }
  .table-layout .table_inner {
    width: 100%;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .table-layout caption {
    text-align: left;
  }
  .table-layout caption > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout .table_title {
    margin-bottom: .4em;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .table-layout .table_caption {
    margin: 0 0 1em;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .table-layout th,
  .table-layout td {
    padding: 20px 10px;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    background-color: #fff;
    font-size: 1.3rem;
    font-weight: normal;
    text-align: left;
  }
  .table-layout.eir-table th,
  .table-layout.eir-table td {
    padding: 15px 5px;
  }
  .table-layout thead th {
    vertical-align: middle;
  }
  .table-layout th > *:first-child,
  .table-layout td > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout .cell-style1 {
    background-color: #adadad;
    font-size: 1.4rem;
    color: #fff;
  }
  .table-layout th.cell-style1 {
    font-size: 1.4rem;
    font-weight: bold;
  }
  .table-layout .cell-style2 {
    background-color: #f1f1f1;
  }
  .table-layout .cell-style3 {
    background-color: #fff0f0;
    font-weight: bold;
  }
  .table-layout[data-layout-sp="scroll"] {
    overflow-x: auto;
    padding-bottom: 4px;
  }
  .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar {
    height: 12px;
  }
  .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar-track {
    border-radius: 12px;
    background: #f1f1f1;
  }
  .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar-thumb {
    border-radius: 12px;
    background: #888;
  }
  .table-layout[data-layout-sp="scroll"] th,
  .table-layout[data-layout-sp="scroll"] td {
    white-space: nowrap;
  }
  .table-layout[data-layout-sp="vertical"] col,
  .table-layout[data-layout-sp="vertical"] tbody,
  .table-layout[data-layout-sp="vertical"] tr,
  .table-layout[data-layout-sp="vertical"] th,
  .table-layout[data-layout-sp="vertical"] td {
    display: block;
    width: 100% !important;
  }
  .table-layout .cell-style1 {
    background-color: #ddf3ff;
    font-size: 1.8rem;
    color: #333;
    text-align: center;
  }
  .table-layout th.cell-style1 {
    font-weight: bold;
  }
  .table-layout .cell-style2 {
    background-color: #f0faff;
    font-weight: bold;
    vertical-align: middle;
  }
  .table-layout .cell-style3 {
    background-color: #ffe9ea;
    font-weight: bold;
  }
  .table-layout .cell-style4 {
    background-color: #f3f3f3;
    font-weight: bold;
  }
  .table-layout .border-style1 {
    border-top: 1px solid #fff!important;
    border-bottom: 1px solid #fff!important;
  }
  
  /* ----- table-layout.typeWing_sp ----- */
  .table-layout.typeWing_sp th,
  .table-layout.typeWing_sp td {
    padding: 15px 0px;
    text-align: center;
  }
  .table-layout.typeWing_sp .cell-style1 {
    background-color: #0096e0;
    font-size: 1.5rem;
    color: #fff;
  }
  .table-layout.typeWing_sp .cell-style2 {
    background-color: #ddf3ff !important;
    font-weight: bold;
    vertical-align: middle;
  }
  .table-layout.typeWing_sp tr:nth-child(odd) td {
    background-color: #f3f3f3;
  }
  
  /* ----- table-layout-v2 ----- */
  .table-layout-v2 {
    margin-top: 1em;
  }
  .table-layout-v2 .table_inner {
    width: 100%;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
  }
  .table-layout-v2 caption {
    text-align: left;
  }
  .table-layout-v2 caption > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout-v2 .table_title {
    margin-bottom: .5em;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .table-layout-v2 .table_caption {
    margin: 0 0 1em;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: bold;
  }
  .table-layout-v2 th,
  .table-layout-v2 td {
    padding: 10px 5px;
    vertical-align: top;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    background-color: #fff;
    font-size: 2.1rem;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
  }
  .table-layout-v2 tr td:first-child,
  .table-layout-v2 tr td:nth-child(2) {
    font-size: 1.5rem;
  }
  .table-layout-v2 .nonstop-tr {
    border-left: 1px solid #ccc;
  }
  .table-layout-v2 .nonstop-tr td {
    border-left: none;
  }
  .table-layout-v2 thead th {
    vertical-align: middle;
  }
  .table-layout-v2 th > *:first-child,
  .table-layout-v2 td > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout-v2 .cell-style1 {
    background-color: #0096e0;
    font-size: 1.4rem;
    color: #fff;
    text-align: center;
  }
  .table-layout-v2 .cell-style2 {
    background-color: #fff2ac;
    vertical-align: middle;
  }
  .table-layout-v2 tr .cell-style2 .arrowBox {
    position: relative;
  }
  .table-layout-v2 tr .cell-style2 .arrowBox:first-child::before {
    position: absolute;
    content: "";
    bottom: -17px;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    margin: 0 auto;
    border-style: solid;
    border-width: 11px 10px 0 10px;
    border-color: #fff2ac transparent transparent transparent;
    z-index: 1;
  }
  .table-layout-v2 tr .cell-style2 .arrowBox:first-child::after {
    position: absolute;
    content: "";
    bottom: -16px;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    margin: 0 auto;
    border-style: solid;
    border-width: 8px 6px 0 6px;
    border-color: #888888 transparent transparent transparent;
    z-index: 1;
  }
  .table-layout-v2 tr.leadLast .cell-style2::before {
    display: none;
  }
  .table-layout-v2 tr.leadLast .cell-style2::after {
    display: none;
  }
  .table-layout-v2 .nbspBox {
    position: relative;
    width: 26px;
    height: 17px;
    margin: auto;
  }
  .table-layout-v2 .nbspBox::after {
    position: absolute;
    content: "";
    top: 7px;
    left: 0;
    width: 0;
    height: 0;
    margin: auto;
    border-style: solid;
    border-width: 17px 13px 0 13px;
    border-color: #d32325 transparent transparent transparent;
  }
  .table-layout-v2 .nonstop-lead {
    color: #e60012;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .table-layout-v2 .nonstop-lead em {
    font-size: 2.1rem;
    font-weight: bold;
    font-style: normal;
  }
  .table-layout-v2 .nonstop-lead .marker-text {
    background: linear-gradient(transparent 60%, #ffe400 0%);
    font-size: 2.3rem;
    font-weight: bold;
    font-style: italic;
  }
  
  /* ----- table-layout.pc-scroll ----- */
  .table-layout.pc-scroll {
    margin-top: 1em;
  }
  .table-layout.pc-scroll th,
  .table-layout.pc-scroll td {
    padding: 10px 5px;
    text-align: center;
  }
  .table-layout.pc-scroll .cell-style1 {
    color: #fff;
    background-color: #0096e0;
  }
  .table-layout.pc-scroll .cell-style1 > span {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Box
  ------------------------------------------------------ */
  [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 {
    margin-top: 2.85em;
    border-radius: 5px;
    border: 1px solid #ddd;
    overflow: hidden;
  }
  .box-layout > .box_title {
    padding: 20px 10px 20px;
    border-bottom: 1px solid #ddd;
    background-color: #f1f1f1;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.2;
  }
  .box-layout > .box_detail {
    padding: 20px 10px 20px;
    background-color: #fff;
  }
  .box-layout > .box_detail > *:first-child {
    margin-top: 0 !important;
  }
  /* ----- box-layout-v2 ----- */
  .box-layout-v2 {
    margin-top: 1.85em;
    padding: 15px 10px;
    border-radius: 5px;
    background-color: #f3f3f3;
  }
  .box-layout-v2.wFull {
    width: 100vw;
    margin: 1.85em calc(50% - 50vw) 0;
    padding: 15px calc(50vw - 50%);
    border-radius: 0;
  }
  .box-layout-v2.wide {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .box-layout-v2.wide.sp-min {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .box-layout-v2.ver2 {
    background-color: #fdeded;
  }
  .box-layout-v2.ver3 {
    background-color: #ddf3ff;
  }
  .box-layout-v2.ver4 {
    background-color: #ffffff;
  }
  .box-layout-v2 > .box_title,
  .box-layout-v2 .box-inner-wrap > .box_title {
    margin-bottom: 0.3em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .box-layout-v2 > .box_title.case-indent {
    margin-left: 2.5em;
    text-indent: -2.5em;
  }
  .box-layout-v2 > .box_detail {
  }
  .box-layout-v2.info-layout {
    display: block;
  }
  .box-layout-v2.info-layout > .box_title {
    margin-bottom: 0;
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1.5;
    text-align: center;
  }
  .box-layout-v2.textBanner-layout .box-inner-wrap {
    display: block;
    text-align: center;
  }
  .box-layout-v2.textBanner-layout .box-inner-wrap > .box_title {
    margin-bottom: 20px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.5;
  }
  .box-layout-v2.textBanner-layout .box-inner-wrap [class*="link-button"] {
    margin-top: 0 !important;
  }

  /* ----- box-layout-v3 ----- */
  .box-layout-v3 {
    margin-top: 1em;
    border-radius: 5px;
    border: 1px solid #ddd;
    overflow: hidden;
  }
  .box-layout-v3 > .box_title {
    padding: 17px 10px 17px;
    border-bottom: 1px solid #ddd;
    background-color: #f1f1f1;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.2;
  }
  .box-layout-v3 > .box_detail {
    padding: 17px 10px 17px;
    background-color: #fff;
  }
  .box-layout-v3 > .box_detail > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- box-layout-v5 ----- */
  .box-layout-v5 {
    margin: 0 !important;
    padding: 10px 5px 15px 0;
    background-color: #c0151b;
  }
  .box-layout-v5 .box_detail {
    position: relative;
    padding: 0 0 0 70px;
  }
  .box-layout-v5 .box_detail::before {
    position: absolute;
    content: "";
    top: 18px;
    left: 20px;
    width: 35px;
    height: 4px;
    border-radius: 0;
    border: none;
    background: #f2d0d1;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .box-layout-v5 .box_detail::after {
    position: absolute;
    content: "";
    top: 18px;
    left: 20px;
    width: 35px;
    height: 4px;
    border-radius: 0;
    border: none;
    background: #f2d0d1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .box-layout-v5 .box_detail ul > li {
    position: relative;
    padding-left: 10px;
    color: #fff;
    font-size: 1.3rem;
  }
  .box-layout-v5 .box_detail ul > li + li {
    margin-top: 1em;
  }
  .box-layout-v5 .box_detail ul > li::before {
    position: absolute;
    top: .55em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #fff;
    content: "";
  }
  
  /* ----- box-layout-v6 ----- */
  .box-layout-v6 {
    margin: 0 !important;
    padding: 10px 0 15px 80px;
    background: url(/ride/img/yuso_ex01_sp.png) no-repeat 0 0;
    background-size: 69px auto;
  }

  /* ----- box-layout-app ----- */
  .box-layout-app {
    display: flex;
    margin: 1em -15px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
  }
  .box-layout-app > .box_title {
    display: flex;
    align-items: center;
    width: 39%;
    padding: 5px 11% 5px;
    background-color: #f1f1f1;
    text-align: center;
  }
  .box-layout-app > .box_detail {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 61%;
    padding: 10px 10% 10px;
    background-color: #fff;
  }
  .box-layout-app > .box_detail > .column-layout .column_item {
    width: 100%;
  }
  .box-layout-app > .box_detail > .column-layout .column_item + .column_item {
    margin-top: 10px;
  }
  .box-layout-app .column-layout > .column_item,
  .box-layout-app > .box_detail > .column-layout .image-set {
    margin-top: 0;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Other
  ------------------------------------------------------ */
  /* ----- accordion-layout ----- */
  .accordion-layout {
    margin-top: 1.3em;
  }
  .accordion-layout > .accordion_trigger {
    position: relative;
  }
  .accordion-layout .accordion_label {
    display: block;
    padding: 12px 40px 12px 20px;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
    cursor: pointer;
  }
  .accordion-layout > .accordion_detail {
    padding: 20px 10px;
  }
  .accordion-layout > .accordion_detail > *:first-child {
    margin-top: 0;
  }
  .accordion-layout .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
    content: "";
  }
  .accordion-layout > .accordion_trigger.is-active .accordion_label::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -3px;
  }
  
  /* ----- qa-layout ----- */
  .qa-layout-wrap {
    margin-top: 1.85em;
  }
  .qa-layout-wrap > .qa-layout {
    border-radius: 5px;
    border: 1px solid #ccc;
    overflow: hidden;
  }
  .qa-layout-wrap > .qa-layout + .qa-layout {
    margin-top: 15px;
  }
  .qa-layout-wrap .que_trigger {
    position: relative;
  }
  .qa-layout-wrap .accordion_label {
    display: block;
    padding: 15px 40px 15px 50px;
    background-color: #f3f3f3;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
    cursor: pointer;
  }
  .qa-layout-wrap .ans_detail {
    position: relative;
    padding: 12px 15px 15px 50px;
    border-top: 1px solid #ccc;
    background-color: #fff;
  }
  .qa-layout-wrap .que_trigger::before {
    position: absolute;
    top: 50%;
    left: 10px;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    background-color: #0096e0;
    border-radius: 5px;
    content: "";
    cursor: pointer;
  }
  .qa-layout-wrap .que_trigger::after {
    position: absolute;
    content: 'Q';
    top: 50%;
    left: 18px;
    margin-top: -16px;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Myriad Pro, Myriad, Arial, sans-serif;
  }
  .qa-layout-wrap .ans_detail::before {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 30px;
    height: 30px;
    border: 1px solid #f6ccd3;
    background-color: #fdeded;
    border-radius: 5px;
    content: "";
    cursor: pointer;
  }
  .qa-layout-wrap .ans_detail::after {
    position: absolute;
    content: 'A';
    top: 9px;
    left: 19px;
    color: #d10123;
    font-size: 2.0rem;
    font-weight: bold;
    font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Myriad Pro, Myriad, Arial, sans-serif;
  }
  .qa-layout-wrap .accordion_label::before,
  .qa-layout-wrap .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 16px;
    height: 2px;
    margin-top: -1px;
    background-color: #666;
    content: "";
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .qa-layout-wrap .accordion_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .qa-layout-wrap .que_trigger.is-active .accordion_label::before {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  
  /* ----- tab-layout ----- */
  .tab-layout {
    margin-top: 2em;
    margin-bottom: 2em;
  }
  .tab-layout > .tab_navi {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-bottom: 1px solid #ddd;
  }
  .tab-layout > .tab_detail + .tab_navi {
    margin-top: 20px;
    border-top: 1px solid #ddd;
    border-bottom: none;
  }
  .tab-layout.is-pink > .tab_detail + .tab_navi {
    margin-top: 0;
  }
  .tab-layout .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    width: 100%;
    max-width: 1200px;
  }
  .tab-layout .tab_list > li {
    display: -webkit-flex;
    display: flex;
  }
  .tab-layout [data-row-sp="2"] > * { width: calc((100%) / 2); }
  .tab-layout [data-row-sp="3"] > * { width: calc((100%) / 3); }
  .tab-layout [data-row-sp="4"] > * { width: calc((100%) / 4); }
  .tab-layout [data-row-sp="5"] > * { width: calc((100%) / 5); }
  .tab-layout [data-row-sp="6"] > * { width: calc((100%) / 6); }
  .tab-layout [data-row-sp]:not([data-row-sp="1"]):not([data-row-sp="auto"]) > * {
    margin-left: 0;
  }
  .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%;
    margin-bottom: -2px;
    padding: 8px 5px 12px;
    border-top: 1px solid #f3f3f3;
    border-bottom: 1px solid #ddd;
    background-color: #f3f3f3;
    color: #1e2d66;
    font-size: 1.6rem;
    text-decoration: none;
    font-weight: 400;
  }
  .tab-layout > .tab_detail + .tab_navi .tab_list > li > a {
    margin-top: -2px;
    margin-bottom: 0;
    border-top: 1px solid #ddd;
    border-bottom: 2px solid #fff;
  }
  .tab-layout .tab_list > .is-current > a {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom-color: #fff;
    border-top-color: #0096e0;
    background-color: #fff;
    color: #333;
    font-weight: bold;
  }
  .tab-layout .tab_list > li:first-child.is-current > a {
    border-left: none;
  }
  .tab-layout .tab_list > li:last-child.is-current > a {
    border-right: none;
  }
  .tab-layout > .tab_detail + .tab_navi .tab_list > .is-current > a {
    border-top-color: #fff;
    border-bottom: 3px solid #0096e0;
  }
  .tab-layout .tab_list > .is-current > a::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .tab-layout > .tab_detail {
    display: none;
    padding-top: 20px;
  }
  .tab-layout.is-pink > .tab_detail {
    width: 100%;
    margin: 0;
    padding: 20px calc(50vw - 50%);
    background: #fff2f2;
  }
  .tab-layout > .tab_detail.non-jsTabs {
    display: block;
  }
  .tab-layout > .tab_detail > *:first-child {
    margin-top: 0 !important;
  }
  .tab-layout.sp-acc_tabs .tab_navi {
    display: none;
  }
  .tab-layout.sp-acc_tabs {
    border-radius: 3px;
    border: 1px solid #ddd;
  }
  .tab-layout.sp-acc_tabs .sp-tabs_navi {
    display: block;
    position: relative;
    width: auto;
    margin-bottom: -2px;
    padding: 10px 17px 14px;
    font-size: 1.7rem;
    font-weight: bold;
  }
  .tab-layout.sp-acc_tabs > .tab_detail + .sp-tabs_navi {
    border-top: 1px solid #ddd;
  }
  .tab-layout.sp-acc_tabs .sp-tabs_navi::after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
    content: "";
  }
  .tab-layout.sp-acc_tabs .sp-tabs_navi.is-current::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -3px;
  }
  .tab-layout.sp-acc_tabs > .tab_detail {
    display: none;
    padding: 15px 10px 15px;
    border-top: 1px solid #ddd;
  }

  /* ------------------------------------------------------
   * Component >>> Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    margin-top: 1em;
  }
  .navi-anchor .navi_inner {
  }
  .navi-anchor .navi_inner > li {
  }
  .navi-anchor .navi_inner > li + li {
    padding: 1em 0 0;
  }
  .navi-anchor .navi_inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 19px;
    text-decoration: none;
  }
  .navi-anchor .navi_inner > li > a:hover {
    text-decoration: underline;
  }
  .navi-anchor .navi_inner > li > a::before {
    position: absolute;
    top: .25em;
    left: 0;
    width: 14px;
    height: 15px;
    background: url(/common/img/com_ic61.png) no-repeat 0 0;
    background-size: 14px auto;
    content: "";
  }
  /* ----- navi-anchor.app-list ----- */
  .navi-anchor.app-list .navi_inner {
    display: flex;
    flex-wrap: wrap;
  }
  .navi-anchor.app-list .navi_inner > li {
    width: 23.1%;
    margin-right: 2.5%;
    padding: 0 0 10px;
  }
  .navi-anchor.app-list .navi_inner > li.wide {
    width: 48%;
    margin-right: 0;
  }
  .navi-anchor.app-list .navi_inner > li:nth-child(4n) {
    margin-right: 0;
  }
  .navi-anchor.app-list .navi_inner > li > a {
    padding-left: 0;
  }
  .navi-anchor.app-list .navi_inner > li > a::before {
    display: none;
  }
  .navi-anchor.app-list .navi_inner > li > a {
    padding-left: 0;
  }
  .navi-anchor.app-list .navi_inner > li > a::before {
    display: none;
  }
  .navi-anchor.app-list .navi_inner > li.wide .image_inner {
    text-align: center;
  }
  .navi-anchor.app-list .navi_inner > li img {
    height: 60px;
    width: auto;
  }
  .navi-anchor.app-list .navi_inner > li .navi_label {
    display: block;
    position: relative;
    padding: 1px 0 0 15px;
    font-size: 1.2rem;
  }
  .navi-anchor.app-list .navi_inner > li .navi_label::before {
    position: absolute;
    top: .3em;
    left: 0;
    width: 14px;
    height: 15px;
    background: url(/common/img/com_ic61.png) no-repeat 0 0;
    background-size: 11px auto;
    content: "";
  }
  
  /* ------------------------------------------------------
   * Component >>> Index
  ------------------------------------------------------ */
  [class*="index-layout"] .index_caption > *:first-child,
  [class*="index-layout"] .index_caption > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Component >>> Other
  ------------------------------------------------------ */
  /* ----- news-layout ----- */
  .news-layout {
    margin-top: 0 !important;
  }
  .news-layout .block {
    display: block;
    padding: 5px 0;
    color: #1e2d66;
    text-decoration: none;
    outline: none;
  }
  .news-layout .block .news_title {
    display: inline-block;
    font-size: 1.4rem;
  }
  .news-layout .block[target="_blank"] .news_title::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    margin-left: 5px;
    background: url(/common/img/com_ic41.png) no-repeat 100% 0;
    background-size: 10px auto;
  }
  .news-layout .block[href$=".pdf"] .news_title::after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 16px;
    margin-left: 5px;
    background: url(/common/img/com_ic11.png) no-repeat 100% 0;
    background-size: 14px auto;
  }
  .news-layout .block .news_date {
    color: #555;
    font-size: 1.1rem;
  }
  
  /* ----- news-layout-v2----- */
  .news-layout-v2{
    margin-top: 0 !important;
  }
  .news-layout-v2 .block {
    display: block;
    padding: 10px 0;
    text-decoration: none;
    outline: none;
  }
  .news-layout-v2 a.block {
    color: #1e2d66;
  }
  .news-layout-v2:first-child .block {
    padding-top: 0;
  }
  .news-layout-v2 .block .news_title {
    display: inline-block;
    font-size: 1.4rem;
  }
  .news-layout-v2 .a-blank .news_title::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    margin-left: 5px;
    background: url(/common/img/com_ic41.png) no-repeat 100% 0;
    background-size: 10px auto;
  }
  .news-layout-v2 .a-pdf .news_title::after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 16px;
    margin-left: 5px;
    background: url(/common/img/com_ic11.png) no-repeat 100% 0;
    background-size: 14px auto;
  }
  .news-layout-v2 .block .news_date {
    color: #555;
    font-size: 1.1rem;
  }
  
  /* ----- plugin-layout ----- */
  .plugin-layout {
    margin-top: 1em;
  }
  .plugin-layout a {
    display: block;
    padding: 15px 10px 15px;
    border-radius: 5px;
    border: 1px solid #ccc;
    color: #333;
    text-decoration: none;
    outline: none;
  }
  .plugin-layout .plugin_detail {
    padding-top: 10px;
  }
  .plugin-layout a .a-blank {
    color: #1e2d66;
    font-weight: 400;
    text-decoration: underline;
  }
  .plugin-layout a:hover .a-blank {
    text-decoration: none;
  }
  
  /* ----- index-layout-v2 ----- */
  .index-layout-v2.as-catch {
    margin: 15px 0 60px;
  }
  .index-layout-v2.as-catch .index_item {
    display: block;
    border: 1px solid #ddd;
    color: #333;
    text-decoration: none;
  }
  .index-layout-v2.as-catch .index_item::after {
    display: none;
  }
  .index-layout-v2.as-catch .index_item + .index_item {
    margin-top: 1em;
  }
  .index-layout-v2.as-catch .index_item .item_img img {
    width: 100%;
  }
  .index-layout-v2.as-catch .index_item .item_panel .item_title,
  .index-layout-v2.as-catch .index_item .item_panel .item_title {
    position: relative;
    padding: 10px 20px 10px 35px;
    background: #f9f9f9;
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: bold;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .index-layout-v2.as-catch div.index_item .item_panel .item_title {
    padding: 10px 20px 10px;
  }
  .index-layout-v2.as-catch a.index_item .item_panel .item_title::before {
    position: absolute;
    top: 1em;
    left: 10px;
    width: 15px;
    height: 14px;
    background: url(/common/img/com_ic60.png) no-repeat 0 0;
    background-size: 15px auto;
    content: "";
  }
  .index-layout-v2.as-catch .index_item.a-blank .item_panel .item_title::after {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-left: 10px;
    background: url(/common/img/com_ic41.png) no-repeat 0 0;
    background-size: 10px auto;
    content: "";
    vertical-align: middle;
  }
  .index-layout-v2.as-catch .index_item.a-pdf .item_panel .item_title::after {
    display: inline-block;
    width: 15px;
    height: 19px;
    margin: 0 0 0 10px;
    background: url(/common/img/com_ic42.png) no-repeat 0 0;
    background-size: 14px auto;
    content: "";
    vertical-align: middle;
  }
  .index-layout-v2.as-catch .index_item .item_panel .detail_text {
    padding: 10px 10px;
  }
  .index-layout-v2.index-list_box .index_item {
    display: grid;
    grid-template-rows: 83px;
    grid-template-columns: 165px;
    border: none;
    border-top: 1px solid #ddd;
    color: #333;
    text-decoration: none;
    overflow: hidden;
  }
  .index-layout-v2.index-list_box .index_item.type-v2 {
    border-bottom: 1px solid #ddd;
  }
  .index-layout-v2.index-list_box.no-image .index_item {
    display: block;
    border: 1px solid #ddd;
  }
  .index-layout-v2.index-list_box .index_item + .index_item {
    margin-top: 1em;
  }
  .index-layout-v2.index-list_box .index_item .item_img {
    grid-row: 1 / 2;
    border-left: 1px solid #ddd;
  }
  .index-layout-v2.index-list_box .index_item .item_img img {
    width: 100%;
  }
  .index-layout-v2.index-list_box .index_item .item_title {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    grid-row: 1 / 2;
    padding: 10px 14% 10px 7%;
    background: #f9f9f9;
    border-right: 1px solid #ddd;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: bold;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .index-layout-v2.index-list_box.no-image .index_item .item_title {
    display: block;
    padding: 10px 10px 10px 10px;
    border-right: none;
  }
  .index-layout-v2.index-list_box .index_item:hover .item_title {
    color: #0096e0;
    text-decoration: underline;
  }
  .index-layout-v2.index-list_box .index_item .item_title span {
    position: relative;
    padding-left: 20px;
  }
  .index-layout-v2.index-list_box .index_item .item_title span::before {
    position: absolute;
    top: 0.3em;
    left: 0;
    width: 15px;
    height: 14px;
    background: url(/common/img/com_ic60.png) no-repeat 0 0;
    background-size: 15px auto;
    content: "";
  }
  .index-layout-v2.index-list_box .index_item.a-blank .item_title::after {
    position: absolute;
    width: 10px;
    height: 10px;
    top: 50%;
    right: 10px;
    margin-top: -5px;
    background: url(/common/img/com_ic41.png) no-repeat 0 0;
    background-size: 10px auto;
    content: "";
    vertical-align: middle;
  }
  .index-layout-v2.index-list_box .index_item.a-pdf .item_title::after {
    position: absolute;
    width: 14px;
    height: 17px;
    top: 50%;
    right: 10px;
    margin-top: -6px;
    background: url(/common/img/com_ic42.png) no-repeat 0 0;
    background-size: 14px auto;
    content: "";
    vertical-align: middle;
  }
  .index-layout-v2.index-list_box .index_item .item_detail {
    grid-column: 1 / 3;
    padding: 10px 0;
    border-top: 1px solid #ddd;
  }
  .index-layout-v2.index-list_box .index_item .item_detail.non {
    padding: 0;
  }
  .index-layout-v2.index-list_box.no-image .index_item .item_detail {
    padding: 10px;
  }
  
   /* ----- contact-layout ----- */
  .contact-layout {
    margin-top: 3em;
    border-radius: 5px;
    border: 1px solid #ccc;
    overflow: hidden;
  }
  .contact-layout .contact_title {
    padding: 15px 10px 15px;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.2;
    background-color: #f3f3f3;
  }
  .contact-layout .contact_detail .contact_main {
  }
  .contact-layout .contact_detail .contact_main .contact_col + .contact_col {
    margin-top: 1.2em;
  }
  .contact-layout .contact_detail .contact_main .contact_col {
  }
  .contact-layout .contact_detail {
    padding: 10px 10px 18px;
  }
  .contact-layout .contact_tel_title,
  .contact-layout .contact_web_title {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
  }
  .contact-layout .contact_tel_text {
    margin-top: 10px;
  }
  .contact-layout .contact_tel_text a {
    display: block;
    position: relative;
    width: auto;
    padding: 9px 32px 7px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 3.2rem;
    color: #333;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
  }
  .contact-layout .contact_col .link-button-v2 {
    margin-top: 10px;
  }
  .contact-layout .contact_col .link-button-v2 > li > a {
    padding: 13px 32px 13px;
    font-size: 1.5rem;
  }
  .contact-layout .contact_web_title::before {
    position: relative;
    display: inline-block;
    content: '';
    width: 22px;
    height: 15px;
    margin: 0 10px -2px 0px;
    background: url(/common/img/com_ic54.png) no-repeat 0 0;
    background-size: 22px auto;
  }
  .contact-layout .contact_tel_title::before {
    position: relative;
    display: inline-block;
    content: '';
    width: 15px;
    height: 18px;
    margin: 0 7px -3px 0;
    background: url(/common/img/com_ic53.png) no-repeat 0 0;
    background-size: 15px auto;
  }
  .contact-layout .contact_web_lend {
    margin-top: 1em;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
  }
  .contact-layout .contact_detail .contact_conversion {
    margin-top: 15px;
  }
  .contact-layout .contact_detail .contact_conversion .conversion_text {
    font-size: 1.3rem;
  }
  .contact-layout .contact_detail .contact_conversion .conversion_address_tel {
    margin-top: 10px;
  }
  .contact-tel-layout {
    margin: 15px 10px 0;
  }
  .contact-tel-layout .conversion_address_tel + .conversion_address_tel {
    margin-top: 15px;
  }
  .contact-layout .contact_detail .contact_conversion .conversion_address_tel a,
  .contact-tel-layout .conversion_address_tel a,
  .contact-tel-layout.flee .conversion_address_tel a {
    display: block;
    position: relative;
    width: auto;
    padding: 9px 32px 7px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 3.0rem;
    color: #333;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
  }
  .contact-layout .contact_detail .contact_conversion .conversion_address_tel a::before,
  .contact-tel-layout.flee .conversion_address_tel a::before {
    position: relative;
    display: inline-block;
    content: '';
    width: 38px;
    height: 23px;
    margin: 0 5px 0 0;
    background: url(/common/img/com_ic55.png) no-repeat 0 0;
    background-size: 37px auto;
  }
  .contact-tel-layout .conversion_address_tel a,
  .contact-tel-layout.flee .conversion_address_tel a {
    display: block;
    position: relative;
    width: auto;
    padding: 9px 32px 7px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 3.0rem;
    color: #333;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
  }
  .contact-tel-layout .conversion_address_time {
    margin-top: 1em;
  }
  
   /* ----- banner-slider ----- */
  .banner-slider_contents {
    display: block;
    text-align: center;
  }
  .banner-slider_heading {
    margin-top: 2em;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .banner-slider {
    display: -webkit-flex;
    display: flex !important;
    -webkit-lex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 1.8em;
    text-align: center;
  }
  .banner-slider .banner_item {
    width: 50%;
    position: relative;
  }
  .banner-slider .banner_item a {
    text-decoration: none;
  }
  .banner-slider .banner_item img {
    width: 100%;
  }
  .banner-slider .banner_item .banner_caption {
    padding: 10px;
    color: #333;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
  }

  
   /* ----- carousel_contents ----- */
  .carousel_contents {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 40px;
  }
  .carousel_contents .carousel_item img {
    width: 100%;
  }
  
   /* ----- photo-gallery_contents ----- */
  .photo-gallery_contents {
    width: 100vw;
    margin: 20px calc(50% - 50vw) 0;
    padding: 20px calc(50vw - 50%);
    background-color: #ddf3ff;
  }
  .photo-gallery_contents .photo-gallery_heading {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  .photo-gallery_contents .photo-gallery_heading .heading_inner {
    margin-bottom: 0.8em;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .photo-gallery_contents .modal-media {
    display: block;
    margin: 0 -5px;
    text-align: center;
  }
  .photo-gallery_contents .modal-media .carousel_item {
    padding: 0 5px;
  }
  .photo-gallery_contents .modal-media .carousel_item a {
    position: relative;
    display: block;
  }
  .photo-gallery_contents .modal-media .carousel_item a::after {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30px;
    height: 30px;
    background: url(/common/img/com_ic56.png) no-repeat 0 0;
    background-size: 30px auto;
    content: "";
  }
    
  /* ----- modal-media_btn ----- */
  .modal-media_btn {
    margin-top: 15px;
  }
  .modal-media_btn a {
    display: block;
    width: auto;
    position: relative;
    padding: 14px 0 13px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.5rem;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .modal-media_btn a span {
    position: relative;
    padding-left: 13px;
  }
  .modal-media_btn a span::after {
    position: absolute;
    content: '';
    top: 50%;
    left: -15px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url(/common/img/com_ic57.png) no-repeat 0 0;
    background-size: 20px auto;
  }
    
  /* ----- modal-media-rideContents ----- */
  .modal-media-rideContents {
    position: relative;
    padding: 5px;
    margin-bottom: 2em;
    border: 2px solid #0096e0;
    text-align: center;
  }
    
  /* ----- modal-media-wide-rideContents ----- */
  .modal-media-wide-rideContents {
    position: relative;
    margin: 2em -15px 40px;
    text-align: center;
  }
    
  /* ----- modal-media-ride_btn ----- */
  .modal-media-ride_btn {
    position: absolute;
    bottom: -22px;
    right: -5px;
    border: 1px solid #ccc;
    border-radius: 50%;
    background: #fff;
  }
  .modal-media-wide-rideContents .modal-media-ride_btn {
    right: 15px;
  }
  .modal-media-ride_btn a {
    position: relative;
    display: block;
    width: 45px;
    height: 45px;
  }
  .modal-media-ride_btn a::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    margin: -10px 0 0 -10px;
    width: 20px;
    height: 20px;
    background: url(/common/img/com_ic57.png) no-repeat 0 0;
    background-size: 20px;
  }
  
  /* ----- smp-accordion_contents ----- */
  .smp-accordion_contents .heading-lv3.sp-js-smp-accordion_trigger,
  .smp-accordion_contents .heading-lv3.sp-js-smp-accordion_trigger02 {
    margin: 1.5em 0;
  }
  .smp-accordion_contents .heading-lv2 {
    margin-top: 1.5em;
  }
  .smp-accordion_contents .sp-js-smp-accordion_trigger .heading_title,
  .smp-accordion_contents .sp-js-smp-accordion_trigger02 .heading_title {
    display: block;
    width: auto;
    position: relative;
    padding: 12px 50px 11px 18px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 3px;
    background-color: #fff;
    font-size: 1.7rem;
    color: #333;
    line-height: 1.5;
    text-decoration: none;
  }
  .smp-accordion_contents .sp-js-smp-accordion_trigger .heading_title::before,
  .smp-accordion_contents .sp-js-smp-accordion_trigger02 .heading_title::before {
    display: none;
  }
  .smp-accordion_contents .sp-js-smp-accordion_trigger .heading_title::after,
  .smp-accordion_contents .sp-js-smp-accordion_trigger02 .heading_title::after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
    content: "";
  }
  .smp-accordion_contents .sp-js-smp-accordion_trigger.is-active .heading_title::after,
  .smp-accordion_contents .sp-js-smp-accordion_trigger02.is-active .heading_title::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -3px;
  }
  .smp-accordion_contents .sp-js-smp-accordion_detail,
  .smp-accordion_contents .sp-js-smp-accordion_detail02 {
    display: none;
    padding: 0px 10px 30px;
  }
  .smp-accordion_contents .sp-js-smp-accordion_detail > .column-layout:first-child,
  .smp-accordion_contents .sp-js-smp-accordion_detail > .column-layout > .column_item:first-child,
  .smp-accordion_contents .sp-js-smp-accordion_detail > .table-layout:first-child,
  .smp-accordion_contents .sp-js-smp-accordion_detail02 > .column-layout:first-child,
  .smp-accordion_contents .sp-js-smp-accordion_detail02 > .column-layout > .column_item:first-child,
  .smp-accordion_contents .sp-js-smp-accordion_detail02 > .table-layout:first-child {
    margin-top: 0;
  }
  
  /* ----- pageNav-layout ----- */
  .pageNav-layout {
    margin: 20px 0 30px;
  }
  .pageNav-layout .pageNav_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
  .pageNav-layout .pageNav_inner .prev {
    margin-right: 5%;
  }
  .pageNav-layout .pageNav_inner .page {
    margin-right: 5%;
  }
  .pageNav-layout .pageNav_inner .page a {
    font-size: 1.6rem;
  }
  .pageNav-layout .pageNav_inner .prev .block,
  .pageNav-layout .pageNav_inner .next .block{
    display: block;
    width: 80px;
    position: relative;
    padding: 3px 0 5px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .pageNav-layout .pageNav_inner .prev.is-disabled .block,
  .pageNav-layout .pageNav_inner .next.is-disabled .block{
    border: 1px solid #f2f2f2;
    border-bottom: 2px solid #f2f2f2;
    box-shadow: 0px 1px 1px -1px #ccc;
    color: #ccc;
  }
  
  /* ----- navi-anchor_list ----- */
  .navi-anchor_list {
    margin: 25px auto 0;
  }
  .navi-anchor_list .navi_inner {
    display: block;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 5px;
    background-color: #fff;
  }
  .navi-anchor_list .navi_inner[data-row-sp] {
    display: flex;
    width: 100%;
  }
  .navi-anchor_list .navi_inner[data-row-sp="1"] {
    display: block;
  }
  .navi-anchor_list .navi_inner > li {
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-bottom: -1px;
  }
  .navi-anchor_list .navi_inner > li.gp-sp-w-100per {
    border-right: 0;
  }
  .navi-anchor_list .navi_inner:not([data-row-sp]) li {
    width: 100%;
  }
  .navi-anchor_list .navi_inner > li > a {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 16px 25px 16px 9px;
    color: #333;
    font-size: 1.4rem;
    text-decoration: none;
  }
  .navi-anchor_list [data-row-sp="1"] > li + li,
  .navi-anchor_list [data-row-sp="2"] > li:nth-child(n+3),
  .navi-anchor_list [data-row-sp="3"] > li:nth-child(n+4),
  .navi-anchor_list [data-row-sp="4"] > li:nth-child(n+5){
    border-top: 1px solid #ccc;
  }
  .navi-anchor_list .navi_inner:not([data-row-sp]) li,
  .navi-anchor_list [data-row-sp="1"] > li,
  .navi-anchor_list [data-row-sp="2"] > li:nth-child(even),
  .navi-anchor_list [data-row-sp="3"] > li:nth-child(3n),
  .navi-anchor_list [data-row-sp="4"] > li:nth-child(4n){
    border-right: none;
  }
  .navi-anchor_list [data-row-sp="1"] > * { width: 100%; }
  .navi-anchor_list [data-row-sp="2"] > * { width: calc((100%) / 2); }
  .navi-anchor_list [data-row-sp="3"] > * { width: calc((100%) / 3); }
  .navi-anchor_list [data-row-sp="4"] > * { width: calc((100%) / 4); }
  .navi-anchor_list [data-row-sp]:not([data-row-sp="1"]):not([data-row-sp="auto"]) > *,
  .navi-anchor_list [data-row-sp="auto"] {
    margin-top: 0;
    margin-left: 0;
  }
  .navi-anchor_list .navi_inner > li > a::after {
    position: absolute;
    content: '';
    top: 50%;
    right: 10px;
    width: 14px;
    height: 14px;
    margin-top: -7px;
    background: url(/common/img/com_ic62.png) no-repeat 0 0;
    background-size: 14px auto;
  }
  
  /* ----- more-Contents ----- */
  .more-Contents_btn,
  .more-Contents_btn-v2 {
    margin: 30px 0;
  }
  .more-Contents_btn a,
  .more-Contents_btn-v2 a {
    display: block;
    width: auto;
    position: relative;
    padding: 13px 0 13px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow:0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.5rem;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .more-Contents_btn a::before,
  .more-Contents_btn-v2 a::before {
    position: absolute;
    content: '';
    top: 50%;
    right: 28px;
    width: 4px;
    height: 18px;
    margin-top: -9px;
    border-radius: 3px;
    background-color: #0096e0;
  }
  .more-Contents_btn-v2.is-active a::before {
    display: none;
  }
  .more-Contents_btn a::after,
  .more-Contents_btn-v2 a::after {
    position: absolute;
    content: '';
    top: 50%;
    right: 21px;
    width: 18px;
    height: 4px;
    margin-top: -2px;
    border-radius: 3px;
    background-color: #0096e0;
  }
  .more-Contents_after,
  .more-Contents_after-v2 {
    display: none;
  }
  
  /* ----- map-layout ----- */
  .map-layout {
    margin-top: 20px;
  }
  .map-layout > iframe {
    width: 100%;
  }
  
   /* ----- tarin-layout ----- */
  .tarin-layout > *:first-child {
    margin-top: 0 !important;
  }
  .tarin-layout .tarin_column {
    display: flex;
    align-items: center;
    margin: 15px 0 0;
  }
  .tarin-layout .tarin_column > .column_heading {
    flex: 1;
  }
  .tarin-layout .tarin_column > .column_icon {
    margin: 0 0 0 20px;
    white-space: nowrap;
  }
  .tarin-layout .tarin_column > .column_link > *:first-child {
    margin-top: 0;
  }
  .tarin-layout .train_heading {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .tarin-layout .train_icon {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    border: 1px solid #ccc;
  }
  .tarin-layout .train_icon > li {
    width: 41px;
    padding: 5px;
    box-sizing: border-box;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .tarin-layout .train_icon > li + li {
    border-left: 1px solid #ccc;
  }
  .tarin-layout .train_icon > li.type-down {
    background-color: #f0faff;
  }
  .tarin-layout .train_icon > li.type-up {
    background-color: #fffeec;
  }
  .tarin-layout .tarin_column_2 {
    margin: 20px 0 0;
  }
  .tarin-layout .tarin_column_2 > .column_text {
    font-weight: 700;
  }
  .tarin-layout .train_table {
    overflow-x: auto;
    margin: 15px 0 0;
    padding-bottom: 20px;
  }
  .tarin-layout .train_table::-webkit-scrollbar {
    height: 10px;
  }
  .tarin-layout .train_table::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #f1f1f1;
  }
  .tarin-layout .train_table::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #999;
  }
  .tarin-layout .train_table .table_inner {
    table-layout: fixed;
    width: 1200px;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
  }
  .tarin-layout .train_table .table_inner > * > tr > * {
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    vertical-align: middle;
    font-size: 1.3rem;
    line-height: 1.2;
    text-align: center;
  }
  .tarin-layout .train_table .table_inner > thead > tr > th {
    padding: 10px 0;
    background-color: #f3f3f3;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td {
    height: 50px;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-down {
    background-color: #f0faff;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-up {
    background-color: #fffeec;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-row {
    height: 25px;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-col {
    padding: 0 0 0 17px;
    background-image: url("/ride/train/img/train_ex01.png");
    background-repeat: repeat-y;
    background-position: 0 50%;
    background-size: 17px auto;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-arrow {
    background-repeat: repeat-y, no-repeat;
    background-position: 0 50%, 2px 50%;
    background-size: 17px auto, 12px 7px;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-down.type-arrow {
    background-image: url("/ride/train/img/train_ex02.png"), url("/ride/train/img/train_ex03.png");
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-up.type-arrow {
    background-image: url("/ride/train/img/train_ex02.png"), url("/ride/train/img/train_ex04.png");
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-pass {
    line-height: 0;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-pass::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 7px;
    background-repeat: no-repeat;
    background-position: 0 0;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-down.type-pass::before {
    background-image: url("/ride/train/img/train_ex03.png");
    background-size: 12px;
  }
  .tarin-layout .train_table .table_inner > tbody > tr > td.type-up.type-pass::before {
    background-image: url("/ride/train/img/train_ex04.png");
    background-size: 12px;
  }
  .tarin-layout .train_image {
    text-align: center;
  }
  .tarin-layout .train_image img {
    max-width: 235px;
  }
  
  /* ----- release-contents ----- */
  .release-contents {
    display: flex;
    align-items: center;
  }
  .release-contents > .link-text {
    margin: 0 0 0 20px;
  }
  .release-contents .eir_controller_year select {
    width: 100%;
  }
  
  /* ----- news-compo ----- */
  .news-compo {
    margin: 1.43em 0 0;
  }
  .heading-lv2.sp-hidden + .news-compo {
    margin-top: 0 !important;
  }
  .news-compo .news_article + .news_article {
    margin: 1em 0 0;
  }
  .news-compo .news_article .block {
    display: block;
  }
  .news-compo .news_article a.block {
    text-decoration: none;
  }
  .news-compo .news_article .news_detail > .news_property {
    display: flex;
    align-items: center;
  }
  .news-compo .news_article .news_detail > .news_property .news_date,
  .news-compo .news_article .news_detail > .news_property .news_icon {
    color: #555;
  }
  .news-compo .news_article .news_detail > .news_property .news_date {
    width: 9em;
  }
  .news-compo .news_article .news_detail > .news_property .news_icon .icon-news {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 17px;
    box-sizing: border-box;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    font-size: 1.1rem;
    line-height: 1.1;
    font-style: normal;
    text-align: center;
  }
  .news-compo .news_article .news_detail > .news_describe {
    margin: 0.3em 0 0;
  }
  .news-compo .news_article .type-new .news_detail > .news_describe::after {
    content: "NEW";
    display: inline-block;
    margin: 0 0 0 10px;
    padding: 3px 5px;
    background-color: #d20023;
    color: #fff;
    font-size: 1.0rem;
    line-height: 1.1;
    vertical-align: middle;
  }
  .news-compo .news_article .news_detail > .news_describe .news_title {
    display: inline;
  }
  
  /* ----- route-search-contents ----- */
  .ride_heading .heading_inner {
    position: relative;
    font-size: 2.0rem;
    line-height: 1.5;
    font-weight: bold;
  }
  .ride_heading.icon01 .heading_inner {
    padding-left: 50px;
  }
  .ride_heading.icon02 .heading_inner {
    margin: 30px 0 25px;
    padding-left: 36px;
  }
  .ride_heading.icon03 .heading_inner {
    padding-left: 50px;
  }
  .ride_heading .heading_inner::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .ride_heading.icon01 .heading_inner::before {
    width: 39px;
    height: 28px;
    background: url(/ride/img/ride_ic01.png) no-repeat 0 0;
    background-size: 39px auto;
  }
  .ride_heading.icon02 .heading_inner::before {
    width: 29px;
    height: 24px;
    background: url(/ride/img/ride_ic02.png) no-repeat 0 0;
    background-size: 29px auto;
  }
  .ride_heading.icon03 .heading_inner::before {
    left: 5px;
    width: 39px;
    height: 28px;
    background: url(/visit/haneda-airport/img/visit_ic01.png) no-repeat 0 0;
    background-size: 39px auto;
  }
  /* ----- route-search-contents ----- */
  .ride_heading .heading_inner {
    position: relative;
    font-size: 2.0rem;
    line-height: 1.5;
    font-weight: bold;
  }
  .ride_heading.icon01 .heading_inner {
    padding-left: 50px;
  }
  .ride_heading.icon02 .heading_inner {
    margin: 30px 0 25px;
    padding-left: 36px;
  }
  .ride_heading.icon03 .heading_inner {
    padding-left: 50px;
  }
  .ride_heading .heading_inner::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .ride_heading.icon01 .heading_inner::before {
    width: 39px;
    height: 28px;
    background: url(/ride/img/ride_ic01.png) no-repeat 0 0;
    background-size: 39px auto;
  }
  .ride_heading.icon02 .heading_inner::before {
    width: 29px;
    height: 24px;
    background: url(/ride/img/ride_ic02.png) no-repeat 0 0;
    background-size: 29px auto;
  }
  .ride_heading.icon03 .heading_inner::before {
    left: 5px;
    width: 39px;
    height: 28px;
    background: url(/visit/haneda-airport/img/visit_ic01.png) no-repeat 0 0;
    background-size: 39px auto;
  }
  .route-search-contents {
    padding: 30px 15px 15px;
    background-color: #fff;
  }
  .route-search-contents .home_heading {
    margin: 0 0 20px;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .route-search-contents .home_heading > span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 50px;
  }
  .route-search-contents .home_heading > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 39px;
    height: 28px;
    background-image: url("/img/home_guide_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .route-search-contents .home_frame {
    padding: 25px 15px;
    background-color: #fff;
    border-radius: 5px;
  }
  .route-search-contents .home_frame > *:first-child {
    margin-top: 0;
  }
  .route-search-contents .home_title {
    position: relative;
    margin: 15px 0 0;
    padding: 0 0 0 25px;
    color: #555;
    font-size: 1.5rem;
  }
  .route-search-contents .home_title::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .route-search-contents .home_title.type-icon1::before {
    width: 18px;
    height: 18px;
    background-image: url("/img/home_search_ic01.png");
  }
  .route-search-contents .home_title.type-icon2::before {
    width: 15px;
    height: 23px;
    background-image: url("/img/home_search_ic02.png");
  }
  .route-search-contents .home_title.type-icon3::before {
    width: 18px;
    height: 18px;
    background-image: url("/img/home_search_ic03.png");
  }
  .route-search-contents .home_title + * {
    margin-top: 10px !important;
  }
  .route-search-contents .home_input {
    margin: 10px 0 0;
    border: 1px solid #ddd;
  }
  .route-search-contents .home_input input {
    width: 100%;
    height: 45px;
    padding: 5px 10px;
    border: none;
    background: none;
    border-radius: 0px;
    outline: none;
  }
  .route-search-contents .home_radio .radio_set {
    margin: 20px 0 0;
    padding: 20px 0 0;
    background-image: url("/img/home_search_ex01_sp.png");
    background-repeat: repeat-x;
    background-position: 0 0;
    background-size: 8px 3px;
  }
  .route-search-contents .home_radio .radio_set > dt {
    color: #555;
  }
  .route-search-contents .home_radio .radio_set > dd {
    margin: 10px 0 0;
  }
  .route-search-contents .home_radio .radio_set > dd > *:first-child {
    margin-top: 0;
  }
  .route-search-contents .home_radio .radio_list {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: -10px !important;
  }
  .route-search-contents .home_radio .radio_list > li {
    margin: 10px 35px 0 0;
  }
  .route-search-contents .home_radio .radio_list > li:last-child {
    margin-right: 0;
  }
  .route-search-contents .home_radio .radio_list > li > label {
    position: relative;
    cursor: pointer;
  }
  .route-search-contents .home_radio .radio_list > li > label > input[type="radio"] {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .route-search-contents .home_radio .radio_list > li > label > span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 30px;
  }
  .route-search-contents .home_radio .radio_list > li > label > span::before,
  .route-search-contents .home_radio .radio_list > li > label > span::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    border-radius: 50%;
    transform: translateY(-50%);
  }
  .route-search-contents .home_radio .radio_list > li > label > span::before {
    width: 20px;
    height: 20px;
    background-color: #fff;
    border: 1px solid #ddd;
  }
  .route-search-contents .home_radio .radio_list > li > label > span::after {
    left: 5px;
    width: 10px;
    height: 10px;
    background-color: #0096e0;
    opacity: 0;
    transition: all .2s ease-out 0s;
  }
  .route-search-contents .home_radio .radio_list > li > label > input[type="radio"]:checked + span::after {
    opacity: 1;
  }
  .route-search-contents .home_radio_2 {
    display: flex;
    align-items: center;
    margin: 15px 0 0;
  }
  .route-search-contents .home_radio_2 > li {
    display: flex;
    width: 50%;
  }
  .route-search-contents .home_radio_2 > li > label {
    position: relative;
    display: flex;
    width: 100%;
    cursor: pointer;
  }
  .route-search-contents .home_radio_2 > li > label > input[type="radio"] {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .route-search-contents .home_radio_2 > li > label > span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 5px;
    background-color: #fff;
    border: 1px solid #ddd;
    line-height: 1.1;
    text-align: center;
    transition: all .2s ease-out 0s;
  }
  .route-search-contents .home_radio_2 > li:first-child > label > span {
    border-right: none;
  }
  .route-search-contents .home_radio_2 > li + li > label > span {
    border-left: none;
  }
  .route-search-contents .home_radio_2 > li > label > input[type="radio"]:checked + span {
    background-color: #96d8fd;
    border-color: #96d8fd;
    font-weight: 700;
  }
  .route-search-contents .home_select {
    position: relative;
    background-color: #fff;
    border: 1px solid #ddd;
  }
  .route-search-contents .home_select.type-size1 {
    width: 130px;
  }
  .route-search-contents .home_select.type-size2 {
    width: 60px;
  }
  .route-search-contents .home_select.type-size3 {
    width: 70px;
  }
  .route-search-contents .home_select::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin-top: -7px;
    box-sizing: border-box;
    border: 1px solid;
    border-color: #575757 #575757 transparent transparent;
    transform: rotate(135deg);
    pointer-events: none;
  }
  .route-search-contents .home_select select {
    width: 100%;
    height: 45px;
    padding: 5px 25px 5px 10px;
    background-color: transparent;
    border: none;
    font-size: 1.5rem;
    line-height: 1.1;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .route-search-contents .home_select option {
    padding: 0;
  }
  .route-search-contents .home_chain + .home_chain {
    position: relative;
    margin-top: 10px;
  }
  .route-search-contents .home_chain + .home_chain::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 50%;
    width: 3px;
    height: 27px;
    background-image: url("/img/home_search_ex02.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateX(-50%);
  }
  .route-search-contents .home_date {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 15px 0 0;
  }
  .route-search-contents .home_date > .date_col {
    margin: 0 10px 0 0;
  }
  .route-search-contents .home_date > .date_col:last-child {
    margin-right: 0;
  }
  .route-search-contents .home_toggle {
    margin: 20px 0 0;
  }
  .route-search-contents .home_toggle .toggle_switch {
    position: relative;
    padding: 15px 50px 15px 15px;
    background-color: #f3f3f3;
    border-bottom: 1px solid #ddd;
    font-size: 1.5rem;
    line-height: 1.1;
  }
  .route-search-contents .home_toggle .toggle_switch::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
  }
  .route-search-contents .home_toggle .toggle_switch.is-active::after {
    margin-top: -3px;
    transform: rotate(-45deg);
  }
  .route-search-contents .home_button {
    margin: 30px 0 0;
  }
  .route-search-contents .home_button .button_submit,
  .route-search-contents .home_button .link-button-v2{
    padding: 0 25px;
  }
  .route-search-contents .home_button .link-button-v2 > li > a {
    padding: 15px 27px 15px 17px;
  }
  .route-search-contents .home_button .button_submit > li > button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 15px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.25);
    background-color: #555;
    border: none;
    border-radius: 30px;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .route-search-contents .home_button .button_ekitan {
    margin: 15px 0 0;
  }
  .route-search-contents .home_button .button_ekitan > li {
    text-align: center;
  }

  /* ----- rideMain-btn ----- */
  .link-button .rideMain-btn01 > a > .link_label,
  .link-button .rideMain-btn02 > a > .link_label {
    position: relative;
    padding-left: 25px;
    font-weight: bold;
  }
  .link-button .rideMain-btn01 > a > .link_label::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 16px;
    height: 20px;
    margin-top: -10px;
    background: url(/ride/img/ride_ic05.png) no-repeat 0 0;
    background-size: 16px;
  }
  .link-button .rideMain-btn02 .link_label {
    font-size: 1.4rem;
  }
  .link-button .rideMain-btn02 > a > .link_label::before {
    display: inline-block;
    content: "";
    margin-right: 5px;
    width: 147px;
    height: 30px;
    background: url(/ride/img/index_logo01.png) no-repeat 0 0;
    background-size: 147px auto;
    vertical-align: middle;
  }
  
  /* ----- column-layout-ride ----- */
  .column-layout-ride {
    margin-top: 40px; 
  }
  
  /* ----- link-button-block01 ----- */
  .link-button-block01 {
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow: 0px 1px 2px 0px #ccc;
    border-radius: 5px;
    overflow: hidden;
  }
  .link-button-block01[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    width: 25%;
    margin-left: 0;
    margin-top: 0;
}
  .link-button-block01 > li + li {
    border-left: 1px solid #ccc;
  }
  .link-button-block01 > li > a {
    position: relative !important;
    padding: 33px 10px 7px;
    color: #333333;
    text-decoration: none;
    font-size: 1.4rem;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
  }
  .link-button-block01 > li > a::before {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    content: "";
  }
  .link-button-block01 > li.icon01 > a::before {
    width: 26px;
    height: 19px;
    top: 10px;
    background: url(/ride/img/index_ic01.png) no-repeat 0 0;
    background-size: 26px auto;
  }
  .link-button-block01 > li.icon02 > a::before {
    width: 27px;
    height: 20px;
    top: 10px;
    background: url(/ride/img/index_ic02_sp.png) no-repeat 0 0;
    background-size: 27px auto;
  }
  .link-button-block01 > li.icon03 > a::before {
    width: 36px;
    height: 20px;
    top: 6px;
    background: url(/ride/img/index_ic03_sp.png) no-repeat 0 0;
    background-size: 36px auto;
  }
  .link-button-block01 > li.icon04 > a::before {
    width: 28px;
    height: 27px;
    top: 6px;
    background: url(/ride/img/index_ic04_sp.png) no-repeat 0 0;
    background-size: 28px auto;
  }
  
  /* ----- box-layout-links ----- */
  .box-layout-links {
    margin-top: 0;
    padding: 35px 0 15px;
  }
  .box-layout-links > .column-layout {
    align-items: center;
    margin-top: 0;
  }
  .box-layout-links > .column-layout .link-button-banner {
    box-shadow: 0px 1px 2px 0px #ccc;
    border-radius: 5px;
    overflow: hidden;
  }
  .box-layout-links .link-text-noIcon > li + li {
    margin-top: 0.5em;
  }
  .box-layout-links .link-text-noIcon > li a {
    text-decoration: none;
    font-size: 1.3rem;
  }
  
  /* ----- link-banner-index-layout ----- */
  .link-banner-index-layout {
    display: flex;
  }
  .link-banner-index-layout .banner_item {
    width: 50%;
  }
  .link-banner-index-layout .banner_item + .banner_item {
    margin-left: 0;
  }
  .link-banner-index-layout .banner_item a {
    position: relative;
    display: block;
    color: #333;
    text-decoration: none;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .link-banner-index-layout .banner_item a:hover {
    opacity: 0.8;
  }
  .link-banner-index-layout .banner_item a .banner_caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 12px 10px;
    background: rgba(255, 255, 255, 0.9);
  }
  .link-banner-index-layout .banner_item a .banner_caption .banner_title .banner_label {
    color: #333;
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: bold;
}
  
  /* ----- link-button-banner-v2 ----- */
  .link-button-banner-v2 {
    margin: 0;
  }
  .link-button-banner-v2 > * {
    width: calc((100% - 20px) / 2);
  }
  .link-button-banner-v2[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-left: 20px;
  }
  
  /* ----- kakueki-search ----- */
  .kakueki-search {
    margin-top: 20px;
  }
  .kakueki-search .kakueki-search_inner [type="text"] {
    width: 65%;
    padding: 13px 15px;
    border-radius: 0;
    border: solid 1px #ccc;
    outline: none;
    background: none;
    background-color: #fff;
    font-size: 1.4rem;
  }
  .kakueki-search .kakueki-search_inner [type="submit"] {
    width: 31%;
    border: none;
    border-radius: 10em;
    background: #555;
    margin-left: 3%;
    padding: 15px 15px 15px;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: bold;
    cursor: pointer;
  }

  /* ----- accordion-layout-kakueki ----- */
  .accordion-layout-ride {
    margin-top: 15px;
  }
  .accordion-layout-ride .accordion_trigger-ride {
    position: relative;
    padding: 12px 40px 12px 20px;
    border-radius: 5px;
    background: #fff;
    font-size: 1.7rem;
    line-height: 1.5;
    font-weight: bold;
    cursor: pointer;
  }
  .accordion-layout-ride .accordion_trigger-ride.is-active {
    border-radius: 5px 5px 0 0;
  }
  .accordion-layout-ride .accordion_trigger-ride::after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -8px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
    content: "";
  }
  .accordion-layout-ride .accordion_trigger-ride.is-active::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -2px;
  }
  .accordion-layout-ride .accordion_detail-ride {
    display: none;
  }
  .accordion-layout-ride .table-layout {
    margin: 0;
  }
  
  /* ----- routeMap-info ----- */
  .routeMap-info {
    padding: 15px 15px;
    border-radius: 5px;
    background: #f3f3f3;
  }
  .routeMap-info .routeMap-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .routeMap-info .routeMap-list li {
    position: relative;
    width: 49%;
    padding: 5px 0 5px 30px;
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .routeMap-info .routeMap-list li:nth-child(even) {
    margin-left: 2%;
  }
  .routeMap-info .routeMap-list li.lv02,
  .routeMap-info .routeMap-list li.lv05 {
    padding-left: 45px;
  }
  .routeMap-info .routeMap-list li::before {
    position: absolute;
    content: "";
    width: 20px;
    height: 7px;
    left: 0;
    top: 50%;
    margin-top: -4px;
  }
  .routeMap-info .routeMap-list li.lv01::before {
    background-color: #999;
  }
  .routeMap-info .routeMap-list li.lv02::before {
    background-color: #0d83c3;
  }
  .routeMap-info .routeMap-list li.lv03::before {
    background-color: #ea0104;
  }
  .routeMap-info .routeMap-list li.lv04::before {
    background-color: #379412;
  }
  .routeMap-info .routeMap-list li.lv05::before {
    background-color: #fa9715;
  }
  .routeMap-info .routeMap-list li::after {
    position: absolute;
    content: "";
    width: 13px;
    height: 13px;
    left: 30px;
    top: 50%;
    margin-top: -6px;
    background-size: 13px auto !important;
  }
  .routeMap-info .routeMap-list li.lv02::after {
    background: url(/ride/kakueki/img/kakueki_ic03.png) no-repeat 0 0;
  }
  .routeMap-info .routeMap-list li.lv05::after {
    background: url(/ride/kakueki/img/kakueki_ic04.png) no-repeat 0 0;
  }
  
  /* ----- station-info-layout ----- */
  .box-layout-v2.kakueki_head {
    padding-top: 10px;
    padding-bottom: 15px;
  }
  .station-info-layout {
  }
  .station-info-layout .station-contents {
    border: solid 3px #3a3a3a;
    background: #1d2e66;
  }
  .station-info-layout .station-contents > .station-name {
    display: flex;
    justify-content: center;
    margin-top: 10px;
  }
  .station-info-layout .station-contents > .station-name > .station-name-inner {
    position: relative;
    padding: 0 20px 0 40px;
    text-align: center;
  }
  .station-info-layout .station-contents.no-lineNum > .station-name > .station-name-inner {
    padding-left: ;
  }
  .station-info-layout .station-contents > .station-name > .station-name-inner .station-num {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 33px;
    height: 33px;
    padding: 3px 0 0;
    border-radius: 50%;
    border: 2px solid #0096e0;
    background: #fff;
    color: #1d2e66;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
  }
  .station-info-layout .station-contents > .station-name > .station-name-inner .station-num .sub {
    display: block;
    width: 26px !important;
    margin: 0 auto;
    font-size: 1.0rem;
    font-weight: bold;
  }
  .station-info-layout .station-contents > .station-name > .station-name-inner .station-num .num {
    display: block;
    width: 26px !important;
    margin: 0 auto;
    font-size: 1.3rem;
    font-weight: bold;
  }
  .station-info-layout .station-contents > .station-name > .station-name-inner .station-title {
    color: #fff;
    font-size: 2.5rem;
    line-height: 1.4;
    font-weight: bold;
  }
  .station-info-layout .station-contents > .station-name > .station-name-inner .station-title .sub {
    display: block;
    font-size: 1.0rem;
    font-weight: normal;
  }
  .station-info-layout .station-contents > .station-up-down {
    display: flex;
    margin-top: 0;
    padding-bottom: 10px;
    border-bottom: 4px solid #0db0e9;
    justify-content: space-between;
  }
  .station-info-layout .station-contents > .station-up-down > p {
    padding: 0 10px;
    color: #fff;
    font-size: 1.1rem;
    line-height: 1.2;
    font-weight: bold;
  }
  .station-info-layout .station-contents > .station-line {
    border-top: 3px solid #fff;
  }
  .station-info-layout .station-contents > .station-line .station-line-item {
    display: flex;
    align-items: center;
  }
  .station-info-layout .station-contents > .station-line .station-line-item + .station-line-item {
    border-top: 1px solid #4a5885;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col {
    width: 33.3%;
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col a {
    position: relative;
    display: flex;
    padding: 10px 20px 9px;
    color: #fff;
    text-decoration: none;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col.line-next a {
    justify-content: flex-end;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col a::before {
    position: absolute;
    content: '';
    top: 50%;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background-size: 18px auto !important;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col.line-name {
    font-size: 1.2rem;
    font-weight: normal;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col.line-prev a {
    padding-left: 5px;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col.line-next a {
    padding-right: 5px;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col.line-prev a::before {
    right: 0;
    background: url(/common/img/com_ic70.png) no-repeat 0 0; 
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col.line-next a::before {
    left: 0;
    background: url(/common/img/com_ic71.png) no-repeat 0 0; 
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col a .station-num {
    display: inline-block;
    width: 26px;
    height: 26px;
    margin-right: 5px;
    padding: 1px 0 0 0;
    border-radius: 50%;
    border: 2px solid #0096e0;
    background: #fff;
    color: #1d2e66;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
    vertical-align: middle;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col a .station-num .sub {
    display: block;
    width: 22px !important;
    margin: 0 auto;
    font-size: .9rem;
    font-weight: bold;
  }
  .station-info-layout .station-contents > .station-line .station-line-item > .line-col a .station-num .num {
    display: block;
    width: 22px !important;
    margin: 0 auto;
    font-size: 1.0rem;
    font-weight: bold;
  }
  .station-info-layout .station-attribute {
    margin-top: 12px;
  }
  .station-info-layout .station-attribute .attribute-head {
    margin-bottom: 15px;
    font-size: 2.0rem;
  }
  .station-info-layout .station-attribute .attribute-type {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .station-info-layout .station-attribute .attribute-type > li:not(:first-child) {
    width: 32.6%;
    margin-right: 1%;
    padding: 3px 2px 3px;
    border-radius: 3px;
    border: 2px solid;
    background: #fff;
    line-height: 1.2;
    font-size: 1.2rem;
    text-align: center;
    font-weight: bold;
  }
  .station-info-layout .station-attribute .attribute-type > li:first-child {
    width: 33.5%;
    line-height: 1.2;
    font-size: 1.4rem;
    text-align: left;
    font-weight: bold;
  }
  .station-info-layout .station-attribute .attribute-type > li.lv01 {
    border-color: #666;
  }
  .station-info-layout .station-attribute .attribute-type > li.lv02 {
    padding-left: 15px;
    border-color: #0d83c3;
    background: #fff url(/ride/kakueki/img/kakueki_ic03.png) no-repeat 5px 55%;
    background-size: 10px auto;
  }
  .station-info-layout .station-attribute .attribute-type > li.lv03 {
    border-color: #ea0104;
  }
  .station-info-layout .station-attribute .attribute-type > li.lv04 {
    border-color: #379412;
  }
  .station-info-layout .station-attribute .attribute-type > li.lv05 {
    padding-left: 15px;
    border-color: #fa9715;
    background: #fff url(/ride/kakueki/img/kakueki_ic04.png) no-repeat 5px 55%;
    background-size: 10px auto;
  }

  .station-info-layout .station-attribute .attribute-type > li.off {
    color: #666;
    border-color: #eee;
    background: #eee;
  }
  .station-info-layout .station-attribute .attribute-type > li.lv02.off,
  .station-info-layout .station-attribute .attribute-type > li.lv05.off {
    padding-left: 15px;
    background: #eee  url(/ride/kakueki/img/kakueki_ic05.png) no-repeat 4px 55%;
    background-size: 10px auto;
  }
  .station-info-layout .station-attribute .attribute-type > li:nth-child(3n) {
    margin-right: 0;
  }
  .station-info-layout .station-attribute .attribute-type > li:nth-child(n+4) {
    margin-top: 1%;
  }
  /* no-lineNum */
  .station-info-layout .station-contents.no-lineNum {
    background: #fff;
  }
  .station-info-layout .station-contents.no-lineNum > .station-name {
    margin-top: 0;
    padding-top: 6px;
    border-top: 5px solid #0db0e9;
  }
  .station-info-layout .station-contents.no-lineNum > .station-name > .station-name-inner {
    padding-left: 20px;
  }
  .station-info-layout .station-contents.no-lineNum > .station-name > .station-name-inner .station-title {
    color: #333;
  }
  .station-info-layout .station-contents.no-lineNum > .station-up-down {
    border-bottom-color: #fff;
  }
  .station-info-layout .station-contents.no-lineNum > .station-up-down > p {
    color: #333;
  }
  .station-info-layout .station-contents.no-lineNum > .station-line {
    border-bottom: 5px solid #0db0e9;
  }
  .station-info-layout .station-contents.no-lineNum > .station-line .station-line-item > .line-col {
    color: #333;
  }
  .station-info-layout .station-contents.no-lineNum > .station-line .station-line-item > .line-col a {
    color: #333;
  }
  .station-info-layout .station-contents.no-lineNum > .station-line .station-line-item > .line-col.line-prev a::before {
    background: url(/common/img/com_ic76.png) no-repeat 0 0;
  }
  
  /* ----- wide-section ----- */
  .wide-section {
    margin: 35px 0;
  }
  
  /* ----- station-line-info ----- */
  .station-line-info {
    border-radius: 5px;
    background: #f3f3f3;
  }
  .column_item.link02 {
    width: calc((100% + 115px) / 2);
  }
  .station-line-info .station-line-info_head {
    margin: 0;
    padding: 7px 10px;
  }
  .station-line-info .station-line-info_head .heading_title {
    padding-left: 20px;
    font-size: 1.4rem;
  }
  .station-line-info .station-line-info_head .heading_title::before {
    left: 0;
  }
  .station-line-info .station-line-info_head .heading_title .sub {
    font-weight: normal;
  }
  .station-line-info .station-line-info_data {
    margin-top: 0 !important;
    border-radius: 5px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow: 0px 1px 2px -1px #ccc;
    overflow: hidden;
  }
  .station-line-info .station-line-info_data .info-list {
    display: flex;
  }
  .station-line-info .station-line-info_data .info-list > li {
    width: 33.3%;
  }
  .column_item.link02 .station-line-info .station-line-info_data .info-list > li {
    width: 50%;
  }
  .station-line-info .station-line-info_data .info-list > li + li {
    border-left: 1px solid #ccc;
  }
  .station-line-info .station-line-info_data .info-list > li > a {
    display: block;
    height: 100%;
    padding: 10px;
    background: #fff url(/common/img/com_ic41.png) no-repeat 98% 90%;
    background-size: 10px auto;
    color: #333;
    line-height: 1.5;
    font-size: 1.4rem;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
  }
  .station-line-info .station-line-info_data .info-list > li.col01 > a {
    background-color: #ffe9ea;
  }
  
  /* ----- station-change ----- */
  .station-change {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
  }
  .station-change dt {
    position: relative;
    width: 20%;
    height: 32px;
    padding: 5px 5px 5px 30px;
    border-radius: 5px;
    background-color: #0096e0;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .station-change dt.train {
    background: #0096e0 url(/ride/kakueki/img/kakueki_ic16.png) no-repeat 10px 50%;
    background-size: 15px auto;
  }
  .station-change dt.bus {
    background: #0096e0 url(/ride/kakueki/img/kakueki_ic17.png) no-repeat 10px 50%;
    background-size: 14px auto;
  }
  .station-change dt::after {
    position: absolute;
    content: "";
    top: 50%;
    right: -6px;
    margin-top: -14px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 7px;
    border-color: transparent transparent transparent #0095e0;
  }
  .station-change dd {
    width: 70%;
    margin-left: 5%;
  }
  .station-change > *:nth-child(n+3) {
    margin-top: 0.4em;
  }
  .station-change dd .link-text {
    margin-top: 0;
  }
  .station-change dd .link-text li {
    margin-right: 30px;
    font-size: 1.5rem;
  }
  .station-change dd .link-text li a {
    font-size: 1.5rem;
  }
  
  /* ----- station-facility ----- */
  .station-facility {
    border: 1px solid #ccc;
  }
  .station-facility + .station-facility {
    margin-top: 30px;
  }
  .station-facility .station-facility-item {
    display: flex;
    height: 50px;
  }
  .station-facility .station-facility-item + .station-facility-item {
    border-top: 1px solid #ccc;
  }
  .station-facility .station-facility-item > .facility-col {
    width: 83%;
    display: flex;
    align-items: center;
    border-right: 1px solid #ccc;
    background: #ddf3ff;
    font-size: 1.3rem;
  }
  .station-facility .station-facility-item > .facility-col .sub {
    font-size: 0.9rem;
    font-weight: normal;
  }
  .station-facility .station-facility-item .facility-head > span {
    position: relative;
    display: block;
    line-height: 1.3;
    padding-left: 35px;
  }
  .station-facility .station-facility-item .facility-head > span::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 7px;
    margin-top: -10px;
    background-position: 0 0;
    background-repeat: no-repeat;
  }
  .station-facility .station-facility-item.facility01 .facility-head > span::before { width: 26px;  height: 21px; background-image: url(/ride/kakueki/img/kakueki_ic06.png); background-size: 26px auto; }
  .station-facility .station-facility-item.facility02 .facility-head > span::before { width: 24px;  height: 25px; background-image: url(/ride/kakueki/img/kakueki_ic07.png); background-size: 24px auto; }
  .station-facility .station-facility-item.facility03 .facility-head > span::before { width: 18px;  height: 24px; background-image: url(/ride/kakueki/img/kakueki_ic08.png); background-size: 18px auto; }
  .station-facility .station-facility-item.facility04 .facility-head > span::before { width: 21px;  height: 22px; background-image: url(/ride/kakueki/img/kakueki_ic09.png); background-size: 21px auto; }
  .station-facility .station-facility-item.facility05 .facility-head > span::before { width: 24px;  height: 18px; background-image: url(/ride/kakueki/img/kakueki_ic10.png); background-size: 24px auto; }
  .station-facility .station-facility-item.facility06 .facility-head > span::before { width: 20px;  height: 26px; background-image: url(/ride/kakueki/img/kakueki_ic11.png); background-size: 20px auto; }
  .station-facility .station-facility-item.facility07 .facility-head > span::before { width: 17px;  height: 28px; margin-top: -14px; background-image: url(/ride/kakueki/img/kakueki_ic12.png); background-size: 17px auto; }
  .station-facility .station-facility-item.facility08 .facility-head > span::before { width: 22px;  height: 17px; background-image: url(/ride/kakueki/img/kakueki_ic13.png); background-size: 22px auto; }
  .station-facility .station-facility-item.facility09 .facility-head > span::before { width: 19px;  height: 17px; background-image: url(/ride/kakueki/img/kakueki_ic14.png); background-size: 19px auto; }
  .station-facility .station-facility-item.facility10 .facility-head > span::before { width: 20px;  height: 23px; background-image: url(/ride/kakueki/img/kakueki_ic15.png); background-size: 20px auto; }
  .station-facility .station-facility-item.facility01.not .facility-head > span::before { width: 26px;  height: 21px; background-image: url(/ride/kakueki/img/kakueki_ic06_off.png); background-size: 26px auto; }
  .station-facility .station-facility-item.facility02.not .facility-head > span::before { width: 24px;  height: 25px; background-image: url(/ride/kakueki/img/kakueki_ic07_off.png); background-size: 24px auto; }
  .station-facility .station-facility-item.facility03.not .facility-head > span::before { width: 18px;  height: 24px; background-image: url(/ride/kakueki/img/kakueki_ic08_off.png); background-size: 18px auto; }
  .station-facility .station-facility-item.facility04.not .facility-head > span::before { width: 21px;  height: 22px; background-image: url(/ride/kakueki/img/kakueki_ic09_off.png); background-size: 21px auto; }
  .station-facility .station-facility-item.facility05.not .facility-head > span::before { width: 24px;  height: 18px; background-image: url(/ride/kakueki/img/kakueki_ic10_off.png); background-size: 24px auto; }
  .station-facility .station-facility-item.facility06.not .facility-head > span::before { width: 20px;  height: 26px; background-image: url(/ride/kakueki/img/kakueki_ic11_off.png); background-size: 20px auto; }
  .station-facility .station-facility-item.facility07.not .facility-head > span::before { width: 17px;  height: 28px; margin-top: -14px; background-image: url(/ride/kakueki/img/kakueki_ic12_off.png); background-size: 17px auto; }
  .station-facility .station-facility-item.facility08.not .facility-head > span::before { width: 22px;  height: 17px; background-image: url(/ride/kakueki/img/kakueki_ic13_off.png); background-size: 22px auto; }
  .station-facility .station-facility-item.facility09.not .facility-head > span::before { width: 19px;  height: 17px; background-image: url(/ride/kakueki/img/kakueki_ic14_off.png); background-size: 19px auto; }
  .station-facility .station-facility-item.facility10.not .facility-head > span::before { width: 20px;  height: 23px; background-image: url(/ride/kakueki/img/kakueki_ic15_off.png); background-size: 20px auto; }
  .station-facility .station-facility-item > .facility-detail {
    position: relative;
    width: 17%;
  }
  .station-facility .station-facility-item.not > .facility-col,
  .station-facility .station-facility-item.not > .facility-detail {
    color: #666;
    background: #eee;
  }
  .station-facility .station-facility-item > .facility-detail::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    margin: -10px 0 0 -10px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 3px solid #0096e0;
  }
  .station-facility .station-facility-item.not > .facility-detail::before,
  .station-facility .station-facility-item.not > .facility-detail::after{
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    margin: -2px 0 0 -8px;
    width: 17px;
    height: 2px;
    border-radius: 0;
    border: none;
    background-color: #666;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .station-facility .station-facility-item.not > .facility-detail::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .station-facility .station-facility-item > .facility-detail > .facility-sign {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
  }
  
  /* ----- station-section ----- */
  .station-section + .station-section {
    margin-top: 60px;
    padding-top: 10px;
    border-top: 1px solid #ccc;
  }
  
  /* ----- banner-station-slider_contents ----- */
  .banner-station-slider_contents {
    display: block;
    text-align: center;
  }
  .banner-station-slider_contents .banner_link {
    color: #333;
    text-decoration: none;
    text-align: center;
  }
  .banner-station-slider_contents .banner_link .banner_title {
    margin-top: 15px;
    text-align: left;
  }
  .banner-station-slider_contents .banner_link .banner_title .banner_label {
    font-size: 1.4rem;
    font-weight: bold;
  }
  
  /* ----- link-text-img ----- */
  .link-text-img {
    margin-bottom: 10px;
  }
  .link-text-img a {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    text-decoration: none;
  }
  .link-text-img .station-banner-img {
    margin-right: 10px;
    width: 108px;
  }
  .link-text-img .station-banner-img + span {
    position: relative;
    padding-right: 5px;
    width: 100%;
  }
  .link-text-img .station-banner-img + span::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    margin-left: 5px;
    background: url(/common/img/com_ic41.png) no-repeat 100% 0;
    background-size: 10px auto;
  }
  
  /* ----- kakueki-station-moreInfo ----- */
  .kakueki-station-moreInfo {
    margin-top: 40px;
  }
  .kakueki-station-moreInfo .column-layout {
    margin-top: 0;
  }
  .kakueki-station-moreInfo [data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > *,
  .kakueki-station-moreInfo.more-v1 .moreInfo-01,
  .kakueki-station-moreInfo.more-v2 .moreInfo-02 {
    width: auto;
    margin: 0 -15px;
    padding: 30px 15px;
  }
  .kakueki-station-moreInfo .column_item.moreInfo-01,
  .kakueki-station-moreInfo.more-v1 .moreInfo-01 {
    background-color: #fff8eb;
  }
  .kakueki-station-moreInfo .column_item.moreInfo-02,
  .kakueki-station-moreInfo.more-v2 .moreInfo-02 {
    background-color: #f2f5ff;
  }
  .kakueki-station-moreInfo .heading-lv3 {
    position: relative;
    margin: 0 0 25px;
    text-align: center;
  }
  .kakueki-station-moreInfo .moreInfo-01 .heading-lv3 {
    border-bottom: 1px solid #ffa800;
  }
  .kakueki-station-moreInfo .moreInfo-02 .heading-lv3 {
    border-bottom: 1px solid #96a7d9;
  }
  .kakueki-station-moreInfo .heading-lv3::before {
    position: absolute;
    content: "";
    bottom: -9px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 8px;
  }
  .kakueki-station-moreInfo .heading-lv3::after {
    position: absolute;
    content: "";
    bottom: -8px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 8px;
  }
  .kakueki-station-moreInfo .moreInfo-01 .heading-lv3::before {
    border-color: #ffa800 transparent transparent transparent;
  }
  .kakueki-station-moreInfo .moreInfo-02 .heading-lv3::before {
    border-color: #96a7d9 transparent transparent transparent;
  }
  .kakueki-station-moreInfo .moreInfo-01 .heading-lv3::after {
    border-color: #fff8eb transparent transparent transparent;
  }
  .kakueki-station-moreInfo .moreInfo-02 .heading-lv3::after {
    border-color: #f2f5ff transparent transparent transparent;
  }
  .kakueki-station-moreInfo .heading-lv3 .block {
    display: inline-block;
  }
  .kakueki-station-moreInfo .heading-lv3 .heading_title {
    font-size: 1.5rem;
    padding: 0 0 10px 15px;
  }
  .kakueki-station-moreInfo .heading-lv3 .heading_title::before {
    width: 9px;
    height: 9px;
    top: 0.5em;
    left: 0;
    border: 2px solid #0096e0;
  }
  .kakueki-station-moreInfo .moreInfo-01 .heading-lv3 .heading_title::before {
    border-color: #ffa800;
  }
  .kakueki-station-moreInfo .moreInfo-02 .heading-lv3 .heading_title::before {
    border-color: #bec9ea;
  }
  .kakueki-station-moreInfo .link-button > li > a {
  }
  
  /* ----- tab-layout-kakueki ----- */
  .tab-layout-kakueki colgroup col {
    width: 100% !important;
  }
  .tab-layout-kakueki .tab_list-kakueki li a {
    display: block;
    color: #333;
    font-size: 1.8rem;
    text-decoration: none;
    text-align: center;
  }
  .tab-layout-kakueki .tab_list-kakueki li a:first-child {
    position: relative;
    padding: 17px 20px 14px;
    border-radius: 5px 5px 0 0;
    border-right: 1px solid #d6e7f0;
    border-left: 1px solid #d6e7f0;
    background: #fff;
  }
  .tab-layout-kakueki .tab_list-kakueki li.notNavs a {
    position: relative;
    padding: 15px 32px 15px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow: 0px 2px 2px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.8rem;
    color: #333;
    line-height: 1.5;
  }
  .tab-layout-kakueki .accordion_trigger-ride {
    position: relative;
    display: block;
    padding: 12px 40px 12px 20px;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: bold;
    cursor: pointer;
  }
  .tab-layout-kakueki .accordion_trigger-ride::after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -8px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
    content: "";
  }
  .tab-layout-kakueki .accordion_trigger-ride.is-active::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -2px;
  }
  .tab-layout-kakueki .tab_detail {
    display: none;
  }
  .tab-layout-kakueki .table-layout {
    font-size: 1.3rem;
  }
  .tab-layout-kakueki .table-layout .table_inner {
    border-top: none;
  }
  .tab-layout-kakueki .accordion_detail-ride {
    display: none;
  }
  .tab-layout-kakueki .table-layout {
    margin: 0;
  }
  .tab-layout-kakueki .table-layout th,
  .tab-layout-kakueki .table-layout td {
    display: block;
    width: 100%;
    padding: 15px 15px;
  }
  .tab-layout-kakueki .table-layout .link-text {
    display: flex;
    flex-wrap: wrap;
  }
  .tab-layout-kakueki .table-layout .link-text[data-row-sp]:not([data-row-sp="1"]):not([data-row-sp="auto"]) > * {
    margin-top: 0.6em;
  }
  .tab-layout-kakueki .table-layout .link-text li {
    width: 49%;
  }
  .tab-layout-kakueki .table-layout .link-text li:nth-child(even) {
    margin-left: 2%
  }

  
  /* ----- list-note ----- */
  .text-case-layout {
    position: relative;
    color: #555;
  }
  .text-case-layout > .text_mark {
    display: block;
  }
  .text-case-layout .list-bullet {
    margin-top: 0 !important;
  }
  
  /* ----- contact-tel-list ----- */
  .contact-tel-list {
  }
  .contact-tel-list .contact-tel-col {
    display: flex;
    align-items: center;
    background-color: #f3f3f3;
    padding: 10px;
  }
  .contact-tel-list .contact-tel-col + .contact-tel-col {
    margin-top: 10px;
  }
  .contact-tel-list .contact-tel-col .conversion_address_name {
    width: 50%;
    margin-right: 1em;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
  }
  .contact-tel-list .contact-tel-col .conversion_address_tel {
    width: 50%;
  }
  .contact-tel-list .contact-tel-col .conversion_address_tel a {
    display: block;
    position: relative;
    padding: 13px 10px 11px 35px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow: 0px 1px 1px -1px #ccc;
    border-radius: 10em;
    background: #fff url(/common/img/com_ic74.png) no-repeat 15px 50%;
    background-size: 18px auto;
    color: #333;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .contact-tel-list .contact-tel-col:last-child .conversion_address_tel {
    margin-right: 0;
  }
  
  /* ----- train-vehiclePhoto ----- */
  .train-vehiclePhoto {
    margin-bottom: 35px;
  }
  .train-vehiclePhoto .slick-dots {
    bottom: 20px;
  }
  
  /* ----- kakueki_link_box ----- */
  a.kakueki_link_box {
    color: #333;
    text-decoration: none;
  }
  .kakueki_link_box .kakueki_item {
    position: relative;
    margin-bottom: 30px;
  }
  .kakueki_link_box .kakueki_item .kakueki_caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px 25px;
    background: rgba(255, 255, 255, 0.9);
    color: #333;
    font-weight: bold;
    text-align: center;
  }
  .kakueki_link_box .kakueki_item .kakueki_caption .station-name {
    display: inline-block;
    position: relative;
    padding-left: 60px;
  }
  .kakueki_link_box .kakueki_item .kakueki_caption .station-title {
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.2;
  }
  .kakueki_link_box .kakueki_item .kakueki_caption .station-num {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 47px;
    height: 47px;
    padding: 5px 1px 0 0;
    border-radius: 50%;
    border: 3px solid #0096e0;
    background: #fff;
    color: #1d2e66;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
  }
  .kakueki_link_box .kakueki_item .kakueki_caption .station-num .sub {
    display: block;
    width: 100%;
    font-size: 1.3rem;
    font-weight: bold;
  }
  .kakueki_link_box .kakueki_item .kakueki_caption .station-num .num {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .kakueki_link_box .link-button {
    margin: 1.5em 0 2em;
  }
  .kakueki_link_box .link-button > li > .block {
    display: inline-block;
    position: relative;
    min-width: 280px;
    padding: 15px 30px 15px 35px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow: 0px 2px 2px -1px #ccc;
    border-radius: 10em;
    background-color: #fff;
    font-size: 1.8rem;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .kakueki_link_box .link-button > li > .block:hover {
    background-color: #f0faff;
  }
  
  /* ----- routeMap-main ----- */
  .routeMap-main {
    margin: 30px -15px 0;
  }
  .routeMap-main .routeMap-main-wrap {
    width: 375px;
    margin: 0 auto;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col {
    position: relative;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col:first-child {
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col:last-child {
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 2;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col01 > .routeMap-main-list {
    margin-top: 1485px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col03 > .routeMap-main-list {
    margin-top: 1175px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list > ul {
    margin: 10% 16.7% 0 22%;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list > .routeMapBtn {
    position: absolute;
    content: "";
    width: 70px;
    height: 140px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list > .routeMapBtn.next { right: 0; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list > .routeMapBtn.prev { left: 0; }
  
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col01 > .routeMap-main-list > .routeMapBtn.right01 { top: -90px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col01 > .routeMap-main-list > .routeMapBtn.right02 { top: 2500px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col01 > .routeMap-main-list > .routeMapBtn.right03 { top: 3226px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col02 > .routeMap-main-list > .routeMapBtn.center01 { top: 1083px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col02 > .routeMap-main-list > .routeMapBtn.center02 { top: 1395px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col02 > .routeMap-main-list > .routeMapBtn.center03 { top: 3985px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col02 > .routeMap-main-list > .routeMapBtn.center04 { top: 4711px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col.col03 > .routeMap-main-list > .routeMapBtn.left01 { top: -92px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks {
    display: block;
    border: 2px solid #ddd;
    background-color: #fff;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks a {
    display: block;
    color: #333;
    text-decoration: none;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-name {
    display: block;
    position: relative;
    border-bottom: 3px solid #1d2e66;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-name > .station-num {
    position: absolute;
    display: inline-block;
    top: 16px;
    left: 10px;
    height: 37px;
    padding: 1px 0 0 0;
    border-radius: 50%;
    border: 3px solid #0096e0;
    background: #fff;
    color: #1d2e66;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
    vertical-align: middle;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-name > .station-num .sub {
    display: block;
    width: 31px;
    margin-top: 2px;
    font-size: 0.9rem;
    font-weight: bold;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-name > .station-num .num {
    display: block;
    width: 31px;
    font-size: 1.5rem;
    font-weight: bold;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-name .station-title {
    padding: 12.7px 10px 11.7px 55px;
    border-bottom: 4px solid #0db0e9;
    color: #1d2e66;
    font-size: 1.7rem;
    line-height: 1.45;
    font-weight: bold;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks a:hover .station-name .station-title {
    color: #0096e0;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.A07 .station-name .station-title {
    padding-left: 10px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-name .station-title .sub {
    display: block;
    font-size: 1.0rem;
    font-weight: normal;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-transfer {
    position: relative;
    padding: 9px 5px 9px 40px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk01 .station-transfer {
    height: 72px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk37 .station-transfer {
    height: 126px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk22 .station-transfer,
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk46 .station-transfer {
    height: 54px;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks .station-transfer > .icon {
    position: absolute;
    content: "";
    width: 20px;
    height: 16px;
    top: 10px;
    left: 10px;
    background: url(/ride/kakueki/img/index_ic01.png) no-repeat 0 0;
    background-size: 20px auto;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
  }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-spImg {
    position: relative;
    padding-bottom: 80px;
    z-index: 1;
  }
  /* maplinks margin */
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks + .maplinks { margin-top: 15px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.lv1 { margin-right: 28%; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.lv2 { margin-right: 19%; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.lv3 { margin-right: 13.5%; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.lv4 { margin-right: 9%; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.lv5 { margin-right: 0; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.A07 .station-title { padding: 8px 0 8px 55px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk51 { margin-top: 2080px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk62 { margin-top: 415px; }
  .routeMap-main .routeMap-main-wrap .routeMap-main-col > .routeMap-main-list .maplinks.kk65 { margin-top: 100px; }
  
  /* ----- is-movie_inner ----- */
  .is-movie_inner {
    width: 255px;
  }
  .is-movie_inner > div {
    width: 255px !important;
    height: 150px !important;
  }
  .is-movie_inner .image_caption {
    padding-top: 150px;
  }
  
    /* ----- train-nonstop-contents ----- */
  .train-nonstop-contents {
    margin: 20px 0 30px;
    padding: 20px;
    background-color: #f8f6ee;
  }
  .train-nonstop-contents > .train-nonstop-wrap {
    position: relative;
  }
  .train-nonstop-contents > .train-nonstop-wrap::before {
    position: absolute;
    content: "";
    width: 5px;
    height: 100%;
    top: 0;
    left: 50%;
    margin-left: -52px;
    background-color: #d32325;
  }
  .train-nonstop-contents .kakueki-list {
    display: block;
    position: relative;
  }
  .train-nonstop-contents .kakueki-list > li {
    display: block;
    position: relative;
    width: calc(100% - 100px);
    padding: 5px 10px;
    border: 2px solid #ddd;
    background-color: #ffffff;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1.1;
    text-align: center;
  }
  .train-nonstop-contents .kakueki-list > li + li {
    margin-top: 10px;
    margin-left: 0;
  }
  .train-nonstop-contents.type02 .kakueki-list > li + li {
    margin-top: 10px;
    margin-left: 0;
  }
  .train-nonstop-contents .kakueki-list > li.nonstop-endless {
    border: 2px solid #a1c3d5;
    background-color: #f8f6ee;
    color: #a1c3d5;
  }
  .train-nonstop-contents .kakueki-list > li.nonstop-text {
    display: block;
    position: relative;
    align-items: center;
    width: calc(100% - 100px);
    margin-top: 10px;
    margin-left: 0;
    padding: 0;
    border: none;
    background: none;
    color: #555;
    font-size: 1.3rem;
    font-weight: normal;
    line-height: 1.1;
    text-shadow: 
    #f8f6ee 2px 0px,  #f8f6ee -2px 0px,
    #f8f6ee 0px -2px, #f8f6ee 0px 2px,
    #f8f6ee 2px 2px , #f8f6ee -2px 2px,
    #f8f6ee 2px -2px, #f8f6ee -2px -2px,
    #f8f6ee 1px 2px,  #f8f6ee -1px 2px,
    #f8f6ee 1px -2px, #f8f6ee -1px -2px,
    #f8f6ee 2px 1px,  #f8f6ee -2px 1px,
    #f8f6ee 2px -1px, #f8f6ee -2px -1px;
  }
  .train-nonstop-contents .kakueki-list > li.nonstop-stop,
  .train-nonstop-contents.type02 .kakueki-list > li.nonstop-stop {
    margin-top: 100px;
    margin-left: 0;
  }
  .train-nonstop-contents .kakueki-list > li.nonstop-stop::before {
    position: absolute;
    content: "";
    width: 20px;
    height: 5px;
    top: 0;
    left: 50%;
    margin: -14px 0 0 -2px;
    background-color: #d32325;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .train-nonstop-contents .kakueki-list > li.nonstop-endless::before {
    position: absolute;
    content: "";
    width: 30px;
    height: 10px;
    top: 0;
    left: 50%;
    margin: -12px 0 0 -5px;
    background-color: #f8f6ee;
  }
  .train-nonstop-contents .kakueki-list > li.nonstop-endless::after {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    top: 0;
    left: 50%;
    margin: -12px 0 0 0;
    border-bottom: none;
    border-left: 3px dotted #a1c3d5;
  }
  .train-nonstop-contents .nonstop-balloon {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    position: absolute;
    width: 75px;
    min-width: auto;
    height: 300px;
    top: auto;
    bottom: 0;
    right: 0;
    padding: 25px 10px;
    background-color: #e60012;
    text-align: center;
  }
  .train-nonstop-contents.type02 .nonstop-balloon {
    top: 0;
    bottom: auto;
    right: 0;
    left: auto;
  }
  .train-nonstop-contents .nonstop-balloon::before {
    position: absolute;
    content: "";
    top: 55%;
    bottom: auto;
    left: -15px;
    right: auto;
    width: 0;
    height: 0;
    margin: 0;
    border-style: solid;
    border-width: 10px 15px 10px 0;
    border-color: transparent #e60013 transparent transparent;
  }
  .train-nonstop-contents.type02 .nonstop-balloon::before {
    top: 70px;
    bottom: auto;
  }
  .train-nonstop-contents .nonstop-balloon .nonstop-balloon-head {
    display: block;
    color: #fff;
    font-size: 1.95rem;
    font-weight: bold;
    line-height: 1.2;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
  .train-nonstop-contents .nonstop-balloon .nonstop-balloon-head em {
    font-size: 2.4rem;
    font-weight: bold;
    font-style: normal;
  }
  .train-nonstop-contents .nonstop-balloon .nonstop-balloon-marker {
    display: block;
    padding: 0;
    background: none;
    color: #ffe400;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1;
    font-style: italic;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
  }
  
  /* ----- login-mainView ----- */
  .login-mainView {
    position: relative;
  }
  .login-mainView > .login-newMemBox {
    position: relative;
    width: 100%;
    top: auto;
    left: auto;
    padding: 0 0 20px;
    background-color: #fff;
  }
  .login-mainView > .login-newMemBox > p {
    line-height: 1.7;
  }
  .login-mainView > .login-newMemBox > p + p {
    margin-top: 0.5em;
  }
  .login-mainView > .login-newMemBox > [class*="link-button"] {
    margin-top: 0.7em;
  }
  .login-mainView > .login-newMemBox > [class*="link-button"] > li > a {
    min-width: auto;
  }
  .login-mainView > .login-alreMemBox {
    position: relative;
    bottom: auto;
    right: auto;
  }
  .login-mainView > .login-alreMemBox .link-button > li > a {
    padding-left: 30px;
    padding-right: 30px;
  }
  
  /* ----- index_item_members ----- */
  .index_item_members > .item_title {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 10px;
    background-color: #ddf3ff;
  }
  .index_item_members > .item_title > span {
    color: #0096e0;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .index_item_members > .item_detail {
    margin-top: 0.5em;
  }
  .index_item_members > .item_img img {
    width: 100%;
  }
  
  /* ----- index_item_campaign ----- */
  .index_item_campaign > a {
    text-decoration: none;
  }
  .index_item_campaign .item_img > img {
    width: 100%;
  }
  .index_item_campaign .item_detail {
    margin-top: 0.5em;
  }
  .index_item_campaign .item_detail > .detail_data {
    font-weight: bold;
  }
  .index_item_campaign .item_detail > .detail_text {
    margin-top: 0.2em;
  }
  .index_item_campaign a[target="_blank"] .item_detail > .detail_text::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    margin-left: 5px;
    background: url(/common/img/com_ic41.png) no-repeat 100% 0;
    background-size: 10px auto;
  }
  
  /* ----- register-box-layout ----- */
  .register-box-layout {
    padding: 20px 10px;
    background-color: #ddf3ff;
  }
  .register-box-layout > .register-box-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .register-box-layout > .register-box-wrap > .register-step {
    position: relative;
    width: 43%;
    margin-right: 7%;
    padding: 15px 5px;
    border: 1px solid #0096e0;
    background-color: #fff;
    text-align: center;
  }
  .register-box-layout > .register-box-wrap > .register-step.step01,
  .register-box-layout > .register-box-wrap > .register-step.step04 {
    padding-top: 23px;
  }
  .register-box-layout > .register-box-wrap > .register-step.stepQR {
    margin: 15px auto 0;
    padding: 10px 5px 15px;
    border: 2px solid #fff;
  }
  .register-box-layout > .register-box-wrap > .register-step::before {
    position: absolute;
    content: "";
    top: 50%;
    right: -15px;
    width: 0;
    height: 0;
    margin-top: -14px;
    border-style: solid;
    border-width: 14px 0 14px 15px;
    border-color: transparent transparent transparent #0095e0;
  }
  .register-box-layout > .register-box-wrap > .register-step.step04::before,
  .register-box-layout > .register-box-wrap > .register-step.stepQR::before {
    display: none;
  }
  .register-box-layout > .register-box-wrap > .register-step:nth-child(n+3) {
    margin-top: 15px;
  }
  .register-box-layout > .register-box-wrap > .register-step p {
    margin-top: 15px;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.2;
  }
  .register-box-layout > .register-box-wrap > .register-step.step01 p {
    margin-top: 15px;
  }
  .register-box-layout > .register-box-wrap > .register-step.step02 p {
    margin-top: 20px;
  }
  .register-box-layout > .register-box-wrap > .register-step.step04 p {
    font-size: 1.6rem;
  }
  .register-box-layout > .register-box-wrap > .register-step.stepQR p {
    margin-top: 6px;
    font-size: 1.1rem;
    font-weight: normal;
  }
  .register-box-layout > .register-box-wrap > .register-step.stepQR .register-lead {
    margin-bottom: 6px;
    color: #0096e0;
    font-size: 1.2rem;
  }
  .register-box-layout > .register-box-wrap > .register-step .stepNum {
    position: absolute;
    top: 0;
    left: 0;
    border-top: 20px solid #0096e0;
    border-right: 20px solid #fff;
    border-bottom: 20px solid #fff;
    border-left: 20px solid #0096e0;
  }
  .register-box-layout > .register-box-wrap > .register-step .stepNum > span {
    position: absolute;
    top: -18px;
    left: -14px;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.2;
    font-weight: bold;
  }
  .register-box-layout > .register-box-wrap > .register-step .item_img {
    position: relative;
  }
  .register-box-layout > .register-box-wrap > .register-step .item_img img {
    width: auto;
    height: 50px;
  }
  .register-box-layout > .register-box-wrap > .register-step.step01 .item_img img {
    height: 43px;
  }
  .register-box-layout > .register-box-wrap > .register-step.step02 .item_img img {
    padding-left: 15px;
  }
  .register-box-layout > .register-other-text {
    margin-top: 15px;
    padding: 10px 10px;
    color: #d20023;
    font-weight: bold;
    background-color: #fff;
  }
  
  /* ----- terms-contents ----- */
  .terms-contents {
    height: 400px;
    margin-bottom: 35px;
    border: 1px solid #ccc;
    overflow-y: scroll;
  }
  .terms-contents .terms-contents-wrap {
    padding: 10px 10px;
  }
  .terms-contents .terms-heading {
    color: #0096e0;
    font-size: 1.6rem;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
  }
  
  /* ----- agree-box-layout ----- */
  .agree-box-layout {
    height: 100%;
    padding: 15px 10px 20px;
    background-color: #f9f9f9;
    border-radius: 5px;
    border: 1px solid #ccc;
    text-align: center;
  }
  .agree-box-layout > p:first-child {
    font-size: 1.4rem;
    text-align: left;
  }
  .agree-box-layout > p.agree-text-lead {
    font-size: 1.8rem;
    color: #0096e0;
    font-weight: bold;
    text-align: left;
  }
  .agree-box-layout > [class*="link-text"] {
    margin-top: 1em;
  }
  .agree-box-layout > [class*="link-text"] > li {
    text-align: left;
  }
  .agree-box-layout > [class*="link-text"] > li + li {
    margin-top: 0.7em;
  }
  .agree-box-layout > .agree-checkbox {
    display: inline-block;
    position: relative;
    margin: 15px 0 25px;
    padding-left: 30px;
    cursor: pointer;
    line-height: 1.2;
    vertical-align: middle;
  }
  .agree-box-layout > .agree-checkbox::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 20px;
    height: 20px;
    margin-top: -9px;
    display: block;
    border: 1px solid #9a9a9a;
    background-color: #ffffff;
  }
  .agree-box-layout > .agree-checkbox::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    display: block;
    opacity: 0;
    width: 10px;
    height: 14px;
    margin-top: -8px;
    border-width: 0 3px 3px 0;
    border-color: #0096e0;
    border-style: solid;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .agree-box-layout > .agree-checkbox.is-checked::after {
    opacity: 1;
  }
  .agree-box-layout > .agree-checkbox .js-agree-checkbox {
    display: none;
  }
  .agree-box-layout > .agree-btn-application a {
    display: block;
    pointer-events: none;
    width: 100%;
    position: relative;
    padding: 15px 0 15px;
    margin: 0 auto;
    border-radius: 10em;
    background-color: #d0d0d0;
    font-size: 1.4rem;
    color: #fff;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
  }
  .agree-box-layout > .agree-btn-application a:hover {
    background-color: #d0d0d0
  }
  .agree-box-layout > .agree-checkbox.is-checked + .agree-btn-application a,
  .agree-box-layout > .agree-checkbox.is-checked + .agree-btn-application a:hover{
    pointer-events: inherit;
    box-shadow: 0px 2px 2px -1px #555;
    background-color: #555;
  }
  .agree-box-layout > .agree-checkbox.is-checked + .agree-btn-application a:hover {
    background-color: #777;
  }
  
  /* ----- barrierfree-iconList ----- */
  .barrierfree-iconList > li {
    display: inline-block;
    margin-top: 5px;
  }
  
  /* ----- csr-content-layout ----- */
  .csr-content-layout {
    background: url(/company/csr/img/index_bg02.png) no-repeat 0 0;
    background-size: auto 100%;
  }
  .csr-content-layout > .csr-content-list {
    padding: 25px 0 25px 120px;
  }
  .csr-content-layout > .csr-content-list > .item {
    width: 100%;
    border-radius: 5px;
    border: 1px solid #ddd;
    box-shadow: 0px 2px 2px -1px #ccc;
    overflow: hidden;
  }
  .csr-content-layout > .csr-content-list > .item + .item {
    margin-top: 10px;
  }
  .csr-content-layout > .csr-content-list > .item .item_title {
    padding: 7px 10px 7px;
    background: #ddf3ff;
  }
  .csr-content-layout > .csr-content-list > .item .item_title > .link-text {
    margin-top: 0;
  }
  .csr-content-layout > .csr-content-list > .item .item_title > .link-text > li,
  .csr-content-layout > .csr-content-list > .item .item_title > .link-text > li > a {
    font-size: 1.5rem;
    font-weight: bold;
  }
  .csr-content-layout > .csr-content-list > .item .item_title > .link-text > li > a::before {
    top: .3em;
  }
  .csr-content-layout > .csr-content-list > .item .item_detail {
    padding: 5px 10px 5px;
    background: #fff;
  }
  
  /* ----- csr-media-link ----- */
  .csr-media-link {
    margin-top: 15px;
  }
  .csr-media-link .csr-media-link-wrap {
    display: flex;
    align-items: center;
  }
  .csr-media-link .csr-media-link-wrap > * {
    width: 50%;
  }
  .csr-media-link > a {
    color: #555;
    text-decoration: none;
  }
  .csr-media-link .column_image .image-set {
    margin-top: 0;
  }
  .csr-media-link .column_detail .list-note {
    margin-top: 0;
    margin-left: 10px;
  }
  .column-media.csr-column .column_detail .link-button > li > .a-pdf .link_label::before {
    right: -20px;
    left: auto;
  }
    
  /* ----- modal-area ----- */
  .modal-area {
    display: none;
  }
  .modal-area .carousel_item img {
    margin: 0 auto;
  }
  .modal-area .modalInner-layout-v2 .carousel_item img {
    cursor: pointer;
  }
  
  #cboxContent {
    background: #fff;
  }
  #cboxLoadedContent {
    padding: 50px 0;
    border: none;
  }
  #cboxLoadedContent .modal-inline-inner {
    padding: 0 10px;
  }
  .modal_Inner01_box #cboxLoadedContent {
    padding: 50px 0 35px;
  }
  #cboxClose {
    position: absolute;
    top: 15px;
    right: 15px;
    display: block;
    background: none;
    width: 20px;
    height: 20px;
  }
  #cboxClose::after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background: url(/common/img/com_ic67.png) no-repeat 0 0;
    background-size: 20px auto;
  }
  #cboxTitle {
    position: absolute;
    top: auto;
    left: 10px;
    color: #333;
    bottom: 5px;
  }

  /* ----- slick ----- */
  .modalInner-layout-v2 .slick-dotted.slick-slider {
    margin-bottom: 0;
  }
  .banner-slider_contents .slick-dots,
  .photo-gallery_contents .slick-dots {
    position: relative;
    display: inline-block;
    bottom: -5px;
    width: auto;
    margin: 0 10px;
  }
  .carousel-Full .slick-dots {
    display: inline-block;
    width: auto;
    left: 0;
    right: 0;
    z-index: 1;
  }
  .ir-sp-slider .slick-dots {
    bottom: -35px;
  }
  .slick-dots li button::before {
    font-size: 12px;
    color: #a2a2a2;
    opacity: 1;
  }
  .slick-dots li.slick-active button::before {
    opacity: 1;
    color: #0096e0;
  }
  .modalInner-layout-v2 .slick-prev,
  .modalInner-layout-v2 .slick-next {
    top: 50%;
    width: 27px;
    height: 26px;
    color: inherit;
    background: none;
  }
  .slick-custom-prev,
  .slick-custom-next {
    position: absolute;
    left: 0;
    width: 27px;
    height: 26px;
    margin-top: 5px;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    opacity: 1;
    z-index: 2;
  }
  .banner-slider .slick-custom-prev,
  .banner-slider .slick-custom-next {
    margin-top: 12px;
  }
  .carousel_contents .slick-custom-prev,
  .carousel_contents .slick-custom-next {
    width: 16px;
    height: 16px;
    left: 15px;
    z-index: 2;
  }
  .banner-slider_contents .slick-custom-prev,
  .banner-slider_contents .slick-custom-next {
    bottom: -5px;
  }
  .slick-custom-next {
    left: auto;
    right: 0;
  }
  .carousel_contents .slick-custom-next {
    left: auto;
    right: 15px;
  }
  .ir-sp-slider .slick-custom-prev,
  .ir-sp-slider .slick-custom-next{
    margin-top: 15px;
    width: 16px;
    height: 16px;
  }
  .modalInner-layout-v2 .slick-prev::before,
  .modalInner-layout-v2 .slick-next::before,
  .ir-sp-slider .slick-custom-prev::before,
  .ir-sp-slider .slick-custom-next::before,
  .slick-custom-prev::before,
  .slick-custom-next::before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 27px;
    height: 26px;
    background: url(/common/img/com_ic63.png) no-repeat 0 0;
    background-size: 27px auto;
  }
  .ir-sp-slider .slick-custom-prev::before,
  .ir-sp-slider .slick-custom-next::before {
    width: 16px;
    height: 15px;
    background-size: 16px auto !important;
  }
  .modalInner-layout-v2 .slick-prev,
  .modalInner-layout-v2 .slick-next {
    margin-top: 0;
    top: auto;
    bottom: -3px;
    left: 15px;
    z-index: 5;
  }
  .modalInner-layout-v2 .slick-next {
    left: auto;
    right: 15px;
  }
  .modalInner-layout-v2 .slick-prev::before,
  .carousel-layout-v2 .slick-custom-prev::before,
  .ir-sp-slider .slick-custom-prev::before {
    background: url(/common/img/com_ic65.png) no-repeat 0 0;
    background-size: 27px auto;
  }
  .modalInner-layout-v2 .slick-next::before,
  .carousel-layout-v2 .slick-custom-next::before,
  .ir-sp-slider .slick-custom-next::before {
    background: url(/common/img/com_ic66.png) no-repeat 0 0;
    background-size: 27px auto;
  }
  .slick-custom-next::before {
    background: url(/common/img/com_ic64.png) no-repeat 0 0;
    background-size: 27px auto;
  }
  .carousel_contents .slick-custom-prev::before,
  .carousel_contents .slick-custom-next::before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    background: url(/common/img/com_ic58.png) no-repeat 0 0;
    background-size: 16px auto;

  }
  .carousel_contents .slick-custom-next::before {
    background: url(/common/img/com_ic59.png) no-repeat 0 0;
    background-size: 16px auto;

  }
  .modalInner-layout-v2 .carousel_img {
    max-width: 280px;
    margin: 0 auto;
  }
  .modalInner-layout-v2 .slick-dots {
    position: relative;
    bottom: 0;
    z-index: 1;
  }
  .modalInner-layout-v2 .slick-dots li {
    width: 25%;
    margin: 0 2px;
    max-width: 65px;
    height: auto;
    border: 2px solid #fff;
  }
  .modalInner-layout-v2 .slick-dots li.slick-active {
    border-color: #0096e0;
  }
  .modal-inline-box {
    display: none;
  }
  
  /* ----- pasmo-about-layout ----- */
  .pasmo-about-layout .about_frame {
    padding: 10px;
    background-color: #fff;
    border-radius: 5px;
  }
  .pasmo-about-layout .about_frame > *:first-child,
  .pasmo-about-layout .about_frame > section:first-child > *:first-child {
    margin-top: 0 !important;
  }
  .pasmo-about-layout .about_frame_2 {
    margin: 10px -10px;
    padding: 0 10px;
    background-color: #fff;
  }
  .pasmo-about-layout .about_point {
    padding: 20px 0;
  }
  .pasmo-about-layout .about_point .point_outer {
    display: flex;
    align-items: center;
    min-height: 77px;
  }
  .pasmo-about-layout .about_point .point_inner {
    position: relative;
    width: 100%;
    padding: 0 0 0 85px;
  }
  .pasmo-about-layout .about_point .point_inner::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .pasmo-about-layout .about_point .point_inner.type-icon1::before {
    width: 69px;
    height: 77px;
    background-image: url("/ride/pasmo/img/about_ic01.png");
  }
  .pasmo-about-layout .about_point .point_inner.type-icon2::before {
    width: 72px;
    height: 77px;
    background-image: url("/ride/pasmo/img/about_ic02.png");
  }
  .pasmo-about-layout .about_point .point_inner > *:first-child {
    margin-top: 0;
  }
  .pasmo-about-layout .about_point .point_inner > *:last-child {
    margin-bottom: 0;
  }
  .pasmo-about-layout .about_point .point_text {
    font-weight: 700;
    line-height: 1.5;
  }
  .pasmo-about-layout .about_point .point_text + * {
    margin-top: 5px;
  }
  .pasmo-about-layout .heading-lv3 {
    margin-bottom: 10px;
  }
  .pasmo-about-layout .heading-lv3 .heading_title::before {
    top: 50%;
    border-color: #eb6da5;
    transform: translateY(-50%);
  }
  .pasmo-about-layout .heading-lv3 + .column-media {
    margin-top: 10px !important;
  }
  .pasmo-about-layout .column-media[data-layout-sp="col"] > .column_detail {
    margin-top: 10px;
  }
  .pasmo-about-layout .column-media[data-layout-sp="col"] > .column_detail .list-note,
  .pasmo-about-layout .column-media[data-layout-sp="col"] > .column_detail .list-note > li {
    margin-top: 0;
  }
  
  /* ----- pasmo-about-layout-v2 ----- */
  .pasmo-about-layout-v2 {
    margin: 1.6em 0 0;
  }
  .pasmo-about-layout-v2 .about_frame {
    overflow: hidden;
    border: 1px solid #ccc;
    border-radius: 5px;
  }
  .pasmo-about-layout-v2 .about_frame > .frame_title {
    padding: 15px 10px;
    background-color: #f3f3f3;
  }
  .pasmo-about-layout-v2 .about_frame > .frame_title .title_text {
    font-size: 1.3rem;
    font-weight: 700;
  }
  .pasmo-about-layout-v2 .about_frame > .frame_detail {
    padding: 10px;
    border-top: 1px solid #ccc;
  }
  .pasmo-about-layout-v2 .about_frame > * > *:first-child {
    margin-top: 0;
  }
  
  /* ----- unkou-index-layout ----- */
  .unkou-index-layout .index_unit > dt {
    font-size: 1.2rem;
  }
  .unkou-index-layout .index_unit > dd {
    margin: 0.5em 0 0;
  }
  
  /* ----- unkou-index-button ----- */
  .unkou-index-button > li > a {
    position: relative;
    display: block;
    padding: 15px 73px 15px 67px;
    box-shadow: 0 1px 2px 0px rgba(0,0,0,0.3);
    background-color: #fff21d;
    border-radius: 5px;
    color: #333;
    text-decoration: none;
  }
  .unkou-index-button > li > a::before,
  .unkou-index-button > li > a::after {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
  }
  .unkou-index-button > li > a::before {
    top: 50%;
    left: 12px;
    width: 44px;
    height: 44px;
    background-image: url("/ride/unkou/img/index_ex01.png");
    transform: translateY(-50%);
  }
  .unkou-index-button > li > a::after {
    right: 10px;
    bottom: 0;
    width: 55px;
    height: 77px;
    background-image: url("/ride/unkou/img/index_ex02.png");
  }
  .unkou-index-button > li > a > dl > dt {
    font-size: 1.9rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .unkou-index-button > li > a > dl > dd {
    margin: 0.8em 0 0;
    font-size: 1.2rem;
    line-height: 1.66;
  }
  
  /* ----- unkou-index-button*v2 ----- */
  .unkou-index-button-v2 > li > a {
    padding-left: 45px;
    font-weight: 700;
  }
  .unkou-index-button-v2 > li > a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 13px;
    width: 19px;
    height: 16px;
    background-image: url("/ride/unkou/img/index_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  
  /* ----- service-icon-list ----- */
  .service-icon-list {
    align-items: center;
  }
  .service-icon-list > .image_inner + .image_inner {
    margin-left: 5px;
  }
  .service-icon-list > .image_inner > img {
    vertical-align: middle;
  }
  
  /* ----- multi-infoBox ----- */
  .multi-infoBox > .movie-contents {
    margin-top: 20px;
  }
  .multi-infoBox > .movie-contents > .video-thumbnail,
  .multi-infoBox > .movie-contents > .video-thumbnail > .video-thumbnail-inner {
    margin: 0;
    padding: 0;
    display: block;
    width: 100%;
    position: relative;
    text-align: left;
  }
  .multi-infoBox > .movie-contents > .video-thumbnail + .video-thumbnail {
    margin-top: 15px;
  }
  .multi-infoBox > .movie-contents > .video-thumbnail > .video-thumbnail-inner {
    padding-bottom: 56.25%;
  }

  /* ----- enjoy-haneda-comp ----- */
  .enjoy-haneda-comp {
    margin: 40px 0 0;
  }
  .enjoy-haneda-comp > *:first-child {
    margin-top: 0 !important;
  }
  .enjoy-haneda-comp .enjoy-haneda_heading {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .enjoy-haneda-comp .enjoy-haneda_column {
    margin: 20px 0 0;
  }
  .enjoy-haneda-comp .enjoy-haneda_column > .column_col + .column_col {
    margin-top: 20px;
  }
  .enjoy-haneda-comp .enjoy-haneda_column > .column_col > .col_outer {
    border: 1px solid #ddd;
    background-color: #fff;
  }
  .enjoy-haneda-comp .enjoy-haneda_column > .column_col > a.col_outer {
    display: block;
    text-decoration: none;
  }
  .enjoy-haneda-comp .enjoy-haneda_column > .column_col .col_image img {
    width: 100%;
  }
  .enjoy-haneda-comp .enjoy-haneda_column > .column_col .col_title {
    position: relative;
    padding: 10px 10px 10px 35px;
    background-color: #f9f9f9;
    color: #333;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.6;
  }
  .enjoy-haneda-comp .enjoy-haneda_column > .column_col > a.col_outer .col_title::before {
    content: "";
    position: absolute;
    top: 1em;
    left: 10px;
    width: 15px;
    height: 14px;
    background-image: url(/common/img/com_ic60.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 15px auto;
  }
  
  /* ----- international-detail-layout ----- */
  .international-detail-layout {
    margin: 0 -15px;
    background-color: #fff;
  }
  .international-detail-layout .detail_column > .column_heading {
    position: relative;
    padding: 20px;
    background-color: #36aee9;
    z-index: 1;
  }
  .international-detail-layout .detail_column > .column_heading::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 15px;
    width: 190px;
    height: 93px;
    background-image: url("/visit/enjoy-haneda/international/img/international_ex01_sp.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    z-index: -1;
  }
  .international-detail-layout .detail_heading {
    padding: 0 0 0 15px;
    border-left: 2px solid #fff;
    color: #fff;
  }
  .international-detail-layout .detail_heading .heading_title {
    line-height: 1.1;
  }
  .international-detail-layout .detail_heading .heading_lead {
    margin: 10px 0 0;
    font-size: 2.4rem;
    line-height: 1.25;
  }
  .international-detail-layout .detail_image img {
    width: 100%;
  }
  
  /* ----- international-detail-layout-v2 ----- */
  .international-detail-layout-v2 .detail_lead {
    position: relative;
    margin: 0 -15px;
    padding: 40px 15px 35px;
    z-index: 1;
  }
  .international-detail-layout-v2 .detail_lead::before,
  .international-detail-layout-v2 .detail_lead::after {
    content: "";
    position: absolute;
    z-index: -1;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
  }
  .international-detail-layout-v2 .detail_lead::before {
    top: 0;
    left: 0;
    width: 66px;
    height: 47px;
    background-image: url("/visit/enjoy-haneda/international/img/international_ex02_sp.png");
  }
  .international-detail-layout-v2 .detail_lead::after {
    right: 0;
    bottom: 11px;
    width: 49px;
    height: 42px;
    background-image: url("/visit/enjoy-haneda/international/img/international_ex03_sp.png");
  }
  .international-detail-layout-v2 .detail_lead .text-lead_2 {
    margin: 0;
  }
  .international-detail-layout-v2 .detail_lead + * {
    margin-top: 0 !important;
  }
  .international-detail-layout-v2 .detail_image {
    background-color: #fff;
    border: 2px solid #ddf3ff;
    text-align: center;
  }
  .international-detail-layout-v2 .detail_image img {
    width: 100%;
    max-width: 288px;
  }
  
  /* ----- international-detail-layout-v3 ----- */
  .international-detail-layout-v3 {
    margin: 40px 0 0;
  }
  .international-detail-layout-v3 > *:first-child {
    margin-top: 0 !important;
  }
  .international-detail-layout-v3 .frame_list {
    margin: 10px 0 0;
  }
  .international-detail-layout-v3 .frame_list > dt {
    width: 80px;
    padding: 5px;
    background-color: #fff;
    border: 1px solid #ccc;
    line-height: 1.1;
    text-align: center;
  }
  .international-detail-layout-v3 .frame_list > dd {
    margin: 5px 0 0;
  }
  
  /* ----- keikyu_ANA-layout ----- */
  .keikyu_ANA-layout .keikyu_ANA_section {
    margin: 30px 0 0;
  }
  .keikyu_ANA-layout .keikyu_ANA_heading {
    position: relative;
    padding: 0 0 0 30px;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .keikyu_ANA-layout .keikyu_ANA_heading .heading_index {
    position: absolute;
    top: 50%;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23px;
    height: 23px;
    padding: 0 0 2px;
    background-color: #0096e0;
    border-radius: 50%;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    transform: translateY(-50%);
  }
  
  /* ----- history-chronology-layout ----- */
  .history-chronology-layout {
    margin: 30px 0 0 0;
  }
  .history-chronology-layout .chronology_pulldown {
    margin: 30px 0 0;
    position: relative;
    z-index: 1;
  }
  .history-chronology-layout .chronology_pulldown > dt {
    position: relative;
    padding: 20px;
    box-shadow: 0 1px 1px 0 rgba(15,10,10,0.3);
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 2px;
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .history-chronology-layout .chronology_pulldown > dt::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-top: 1px solid #666;
    border-right: 1px solid #666;
    transform: rotate(135deg);
  }
  .history-chronology-layout .chronology_pulldown.is-open > dt::before {
    margin-top: -2px;
    transform: rotate(-45deg);
  }
  .history-chronology-layout .chronology_pulldown > dd {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    margin: -1px 0 0;
    padding: 0 20px 20px;
    box-shadow: 0 1px 1px 0 rgba(15,10,10,0.3);
    background-color: #fff;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 2px 2px;
    z-index: 2;
  }
  .history-chronology-layout .chronology_tab .tab_nav {
    border-bottom: 1px solid #ccc;
  }
  .history-chronology-layout .chronology_tab .tab_nav > li {
    border-top: 1px solid #ccc;
  }
  .history-chronology-layout .chronology_tab .tab_nav > li > a {
    display: block;
    padding: 10px;
    color: #1e2d66;
    text-decoration: none;
  }
  .history-chronology-layout .chronology_heading {
    margin: 30px -15px 0;
    padding: 40px 15px;
    background-image: url("/history/img/chronology_bg01.png");
    background-repeat: repeat;
    background-position: 50% 50%;
    background-size: 94px 94px;
  }
  .history-chronology-layout .chronology_heading .heading_title {
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .history-chronology-layout .chronology_frame {
    margin: 0 -15px;
    padding: 30px 15px;
  }
  .history-chronology-layout .chronology_frame:nth-of-type(2n+1) {
    background-color: #fff;
  }
  .history-chronology-layout .chronology_frame:nth-of-type(2n) {
    background-color: #f3f1ea;
  }
  .history-chronology-layout .chronology_frame > .chronology_section > *:first-child {
    margin-top: 0;
  }
  .ir-individual-img {
    margin-top: 1em;
    position: relative;
    background: url(/ir/individual/img/index_im01.jpg) no-repeat center 0;
    background-size: contain;
    width:100%;
    padding-bottom: 32.4324%;
    margin: 0 auto;
  }
  .ir-individual-img p{
    position: absolute;
    top: 16.666666%;
    left: 6.756756%;
    font-size: 1.35rem;
    font-weight:bold;
    color:#336699;
    line-height: 1.4;
  }
  /* ------------------------------------------ */
  /* ---------------train-guide---------------- */
  /* ------------------------------------------ */
  .column-layout.type-1010-layout[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > .column_item + .column_item {
    margin-top: 10px !important;
  }
  .column-layout.type-1010-layout[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > .column_item + .column_item.type-dataGuide {
    margin-top: 20px !important;
  }
  /* ----- heading-lv2 ----- */
  .heading-lv2.type-trainGuide {
    margin-top: 3em;
  }
  
  /* ----- link-button ----- */
  .link-button.type-trainGuide {
    margin-top: 1.5em;
  }
  .link-button.type-trainGuide.type-v2 {
    margin-top: 1.5em;
  }
  .link-button.type-trainGuide .link_label {
    align-items: center;
  }
  .link-button.type-trainGuide .link_label > .logo-img {
    display: inline-block;
    width: 103px;
    margin: 5px 5px 0;
  }
  
  /* ----- station-info-layout-v2 ----- */
  .station-info-layout-v2 {
    padding-top: 20px;
  }
  .station-info-layout-v2 .station-contents {
    background: #1d2e66;
  }
  .station-info-layout-v2 .station-contents > .station-name {
    display: flex;
    justify-content: center;
    padding: 10px 0;
    border-bottom: 4px solid #0db0e9;
  }
  .station-info-layout-v2 .station-contents > .station-name > .station-name-inner {
    position: relative;
    padding: 0 15px 0 35px;
    text-align: center;
  }
  .station-info-layout-v2 .station-contents.no-lineNum > .station-name > .station-name-inner {
    padding-left: 15px;
  }
  .station-info-layout-v2 .station-contents > .station-name > .station-name-inner .station-num {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 33px;
    height: 33px;
    padding: 3px 0 0;
    border-radius: 50%;
    border: 2px solid #0096e0;
    background: #fff;
    color: #1d2e66;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
  }
  .station-info-layout-v2 .station-contents > .station-name > .station-name-inner .station-num .sub {
    display: block;
    width: 26px !important;
    margin: 0 auto;
    font-size: 1.0rem;
    font-weight: bold;
  }
  .station-info-layout-v2 .station-contents > .station-name > .station-name-inner .station-num .num {
    display: block;
    width: 26px !important;
    margin: 0 auto;
    font-size: 1.3rem;
    font-weight: bold;
  }
  .station-info-layout-v2 .station-contents > .station-name > .station-name-inner .station-title {
    color: #fff;
    font-size: 2.5rem;
    line-height: 1.4;
    font-weight: bold;
  }
  .station-info-layout-v2 .station-contents > .station-name > .station-name-inner .station-title .sub {
    display: block;
    font-size: 1.0rem;
    font-weight: normal;
  }
  .station-info-layout-v2 .station-contents > .station-detail {
    border-top: 3px solid #fff;
    padding: 15px 15px 15px;
    color: #fff;
  }
  .station-info-layout-v2 .station-images > .image_inner img {
    width: 100%;
  }
  
  /* ----- station-info-layout-v3 ----- */
  .station-info-layout-v3 {
    margin-top: 10px;
  }
  .station-info-layout-v3 > .col {
    padding: 10px 15px 15px;
    border-radius: 5px;
    background: #f3f3f3;
  }
  .station-info-layout-v3 > .col + .col {
    margin-top: 10px;
  }
  .station-info-layout-v3 .station-attribute {
  }
  .station-info-layout-v3 .station-attribute .attribute-head {
    margin-bottom: 10px;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
  }
    
  /* ----- attribute-type ----- */
  .station-info-layout-v3 .station-attribute .attribute-type {
    display: flex;
    flex-wrap: wrap;
    margin: 0 12%;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li {
    width: 49%;
    padding: 4px 5px 4px;
    border-radius: 3px;
    border: 2px solid;
    background: #fff;
    line-height: 1.2;
    font-size: 1.2rem;
    text-align: center;
    font-weight: bold;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv01 {
    border-color: #666;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv02 {
    padding-left: 15px;
    border-color: #0d83c3;
    background: #fff url(/ride/kakueki/img/kakueki_ic03.png) no-repeat 5px 55%;
    background-size: 10px auto;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv03 {
    border-color: #ea0104;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv04 {
    border-color: #379412;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv05 {
    padding-left: 15px;
    border-color: #fa9715;
    background: #fff url(/ride/kakueki/img/kakueki_ic04.png) no-repeat 5px 55%;
    background-size: 10px auto;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.off {
    color: #999;
    border-color: #dddddd;
    background: #f3f3f3;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv02.off,
  .station-info-layout-v3 .station-attribute .attribute-type > li.lv05.off {
    padding-left: 15px;
    background: #f3f3f3  url(/ride/kakueki/img/kakueki_ic05.png) no-repeat 4px 55%;
    background-size: 10px auto;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li:nth-child(even) {
    margin-left: 1.5%;
  }
  .station-info-layout-v3 .station-attribute .attribute-type > li:nth-child(n+3) {
    margin-top: 5px;
  }
    
  /* ----- attribute-time ----- */
  .station-info-layout-v3 .attribute-time > li + li {
    margin-top: 5px;
  }
  .station-info-layout-v3 .attribute-time > li > dl {
    display: flex;
    border-radius: 5px;
    overflow: hidden;
  }
  .station-info-layout-v3 .attribute-time > li > dl > dt {
    position: relative;
    width: 39%;
    padding: 3px 5px;
    border-radius: 0 5px 5px 0;
    background: #0096e0;
    color: #fff;
    font-size: 1.3rem;
    text-align: center;
  }
  .station-info-layout-v3 .attribute-time > li > dl > dt::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: -5px;
    margin: auto 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 6px;
    border-color: transparent transparent transparent #0095e0;
  }
  .station-info-layout-v3 .attribute-time > li > dl > dt em {
    font-size: 1.6rem;
    font-style: normal;
  }
  .station-info-layout-v3 .attribute-time > li > dl > dd {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 61%;
    background: #ffffff;
    font-size: 1.6rem;
    text-align: center;
  }
    
  /* ----- attribute-transfer ----- */
  .station-info-layout-v3 .attribute-transfer > li {
    display: block;
    padding: 5px 0 12px;
    border-bottom: 1px solid #ccc;
    font-size: 1.4rem;
    text-align: center;
  }
  .station-info-layout-v3 .attribute-transfer > li:nth-child(n+3) {
    margin-top: 5px;
  }
    
  /* ----- point-box_Layout ----- */
  .point-box_Layout .col {
    height: 100%;
    padding: 15px 15px 30px;
    border-radius: 5px;
    background-color: #ddf3ff;
    text-align: center;
  }
  .point-box_Layout .col > .point-num {
    display: inline-block;
    width: 30px;
    height: 30px;
    border: 2px solid #0196e0;
    border-radius: 50%;
    background-color: #fff;
    color: #0196e0;
    font-size: 1.5rem;
    line-height: 1.6;
    text-align: center;
  }
  .point-box_Layout .col > .box_detail {
    margin-top: 5px;
    text-align: left;
  }
  .point-box_Layout .col > .box_detail .f-highlight-v2 {
    color: #0096e0;
  }
    
  /* ----- facility-list ----- */
  .facility-list {
    display: flex;
  }
  .facility-list > .facility-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc((100% - 30px) / 3);
    margin-right: 15px;
    padding: 55px 0 10px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    box-shadow: 0px 1px 1px -1px #ccc;
    border-radius: 5px;
  }
  .facility-list > .facility-icon:nth-child(3n) {
    margin-right: 0;
  }
  .facility-list > .facility-icon:nth-child(n+4) {
    margin-top: 15px;
  }
  /* on */
  .facility-list > .facility-icon.hospitals { background: url(/live/train-guide/img/train-guide_ic01.png) no-repeat 50% 15px/40px auto; }
  .facility-list > .facility-icon.parks { background: url(/live/train-guide/img/train-guide_ic02.png) no-repeat 50% 12px/41px auto; }
  .facility-list > .facility-icon.shopping { background: url(/live/train-guide/img/train-guide_ic03.png) no-repeat 50% 10px/42px auto; }
  .facility-list > .facility-icon.government { background: url(/live/train-guide/img/train-guide_ic04.png) no-repeat 50% 10px/51px auto; }
  .facility-list > .facility-icon.kindergartens { background: url(/live/train-guide/img/train-guide_ic05.png) no-repeat 50% 10px/44px auto; }
  .facility-list > .facility-icon.stationShops { background: url(/live/train-guide/img/train-guide_ic06.png) no-repeat 50% 12px/43px auto; }
  /* off */
  .facility-list > .facility-icon.hospitals.off { background: #ddd url(/live/train-guide/img/train-guide_ic01off.png) no-repeat 50% 15px/40px auto; }
  .facility-list > .facility-icon.parks.off { background: #ddd url(/live/train-guide/img/train-guide_ic02off.png) no-repeat 50% 12px/41px auto; }
  .facility-list > .facility-icon.shopping.off { background: #ddd url(/live/train-guide/img/train-guide_ic03off.png) no-repeat 50% 10px/42px auto; }
  .facility-list > .facility-icon.government.off { background: #ddd url(/live/train-guide/img/train-guide_ic04off.png) no-repeat 50% 10px/51px auto; }
  .facility-list > .facility-icon.kindergartens.off { background: #ddd url(/live/train-guide/img/train-guide_ic05off.png) no-repeat 50% 10px/44px auto; }
  .facility-list > .facility-icon.stationShops.off { background: #ddd url(/live/train-guide/img/train-guide_ic06off.png) no-repeat 50% 12px/43px auto; }
  .facility-list > .facility-icon > .facility-icon-text {
    font-size: 1.5rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
  }
    
  /* ----- index-layout-v3 ----- */
  .index-layout-v3 {
    display: flex;
    flex-wrap: wrap;
  }
  .index-layout-v3 > .index_item {
    display: flex;
    width: 100%;
    border: 1px solid #ddd;
    color: #333;
    font-size: 1.5rem;
    font-weight: bold;
    text-decoration: none;
  }
  .index-layout-v3 > .index_item + .index_item {
    margin-top: 10px;
  }
  .index-layout-v3 > .index_item .item_img {
    display: flex;
    padding: 22px 0 22px;
    align-items: center;
    width: 165px;
  }
  .index-layout-v3 > .index_item .item_title {
    display: flex;
    align-items: center;
    width: calc(100% - 165px);
    padding: 0 10px 0 15px;
    background: #f9f9f9;
  }
  .index-layout-v3 > .index_item .item_title > span {
    position: relative;
    display: inline-block;
    padding-left: 18px;
  }
  .index-layout-v3 > .index_item .item_title > span::before {
    position: absolute;
    top: .3em;
    left: 0;
    width: 15px;
    height: 14px;
    background: url(/common/img/com_ic60.png) no-repeat 0 0;
    background-size: 15px auto;
    content: "";
  }
    
  /* ----- box_title ----- */
  .box_title.type-train-guide {
    margin-bottom: 0.5em;
    color: #0096e0;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .box_title.type-train-guide + .box_detail {
    margin: 0px 11%;
  }
    
  /* ----- rent-box-layout ----- */
  .rent-box-layout {
    height: 100%;
    padding: 0 20px 15px;
    border-radius: 5px;
    border: 2px solid #0096e0;
    text-align: center;
  }
  .rent-box-layout .rent-col-img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 104px;
  }
  .rent-box-layout.single .icon-img > img { width: 40px; }
  .rent-box-layout.dinks .icon-img > img { width: 67px; }
  .rent-box-layout.family01 .icon-img > img { width: 75px; }
  .rent-box-layout.family02 .icon-img > img { width: 75px; }
  .rent-box-layout .rent-type {
    display: inline-block;
    width: 100%;
    padding: 3px 5px;
    border-radius: 10em;
    background: #0096e0;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: bold;
  }
  .rent-box-layout .rent-floorPlan {
    margin-top: 15px;
  }
  .rent-box-layout .rent-floorPlan > li {
    position: relative;
    display: inline-block;
    margin-right: 1em;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: bold;
  }
  .rent-box-layout .rent-floorPlan > li + li {
    margin-left: 0;
  }
  .rent-box-layout .rent-floorPlan > li:last-child {
    margin-right: 0;
  }
  .rent-box-layout .rent-floorPlan > li::before {
    position: absolute;
    content: "";
    top: 0.6em;
    right: -12px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #0096e0;
  }
  .rent-box-layout .rent-floorPlan > li:last-child::before {
    display: none;
  }
  .rent-box-layout .rent-price {
    margin-top: 10px;
    color: #0096e0;
    font-size: 2.0rem;
    line-height: 1;
    font-weight: bold;
  }
  .rent-box-layout .rent-price > em {
    font-size: 4.0rem;
    font-style: normal;
    font-weight: bold;
  }
  .rent-box-layout .rent-price > em > span {
    font-size: 3.2rem;
    font-weight: bold;
  }
  .rent-box-layout .rent-note {
    margin-top: 1em;
    color: #555;
    font-size: 1.2rem;
  }
  
  /* ----- text-size-S ----- */
  .text-size-S {
    color: #666;
    font-size: 1.1rem;
  }
  
  /* ----- map-layout-v2 ----- */
  .map-layout-v2 iframe {
    width: 100% !important;
  }
  
  /* ----- housing-info-col ----- */
  .housing-info-col > a {
    text-decoration: none;
  }
  .housing-info-col .link-text > li {
    position: relative;
    padding-left: 20px;
    line-height: 1.5;
  }
  .housing-info-col .link-text > li::before {
    position: absolute;
    top: .3em;
    left: 0;
    width: 15px;
    height: 14px;
    background: url(/common/img/com_ic60.png) no-repeat 0 0;
    background-size: 15px auto;
    content: "";
  }
  
  /* ----- box-layout-v2 ----- */
  .box-layout-v2.verTrain-guide01 {
    width: auto;
    margin: 1.85em -20px 0;
    padding: 30px 20px;
  }
  .box-layout-v2.verTrain-guide02 {
    width: auto;
    margin: 0 -20px 0;
    padding: 35px 0;
    background-color: #0096e0;
  }
  .box-layout-v2.verTrain-guide02 .box_Dl {
  }
  .box-layout-v2.verTrain-guide02 .box_Dl > dt {
    color: #fff;
    font-size: 2.0rem;
    font-weight: bold;
    text-align: center;
  }
  .box-layout-v2.verTrain-guide02 .box_Dl > dd .link-button-v2 {
    margin: 10px 15px 0;
  }
  .box-layout-v2.verTrain-guide02 .box_Dl > dd .link-button-v2 > li > a {
    font-size: 1.5rem;
    font-weight: bold;
  }
  /* ----------------
   * IR
  ---------------- */
  /* ----- heading-lv1.heading-ir ----- */
  .heading-lv1.heading-ir {
    position: relative;
  }
  /* ----- heading-ir-lv2 ----- */
  .heading-ir-lv2 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 2em 0 0.7em;
  }
  .heading-ir-lv2 .heading_title {
    font-size: 1.8rem;
    font-weight: bold;
  }
  .heading-ir-lv2 .ir-rss-btn { 
    margin-left: 30px;
  }
  .heading-ir-lv2 .ir-rss-btn a { 
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 5px;
    border-bottom: 1px solid #d2d1d1;
    background: #f3f3f3 url(/common/img/com_ic78.png) no-repeat 50% 50%;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .heading-ir-lv2 .ir-rss-btn a:hover {
    opacity: 0.8;
  }
  /* ----- text-controller ----- */
  .heading-lv1.heading-ir > .text-controller {
    position: relative;
    display: block;
    align-items: center;
    bottom: auto;
    right: auto;
    font-size: 1.1rem;
  }
  .heading-lv1.heading-ir > .text-controller .lang-ctrl {
    margin-top: 5px;
  }
  .text-controller .text-controller-btn > li {
    display: inline-block;
    padding: 7px 20px;
    border-radius: 5px;
    border-bottom: 2px solid #d2d1d1;
    background-color: #f3f3f3;
    color: #555;
    text-align: center;
  }
  .text-controller .text-controller-btn > li > a {
    color: #555;
    text-decoration: none;
  }
  /* ----- ir-lead-contents ----- */
  .ir-lead-contents {
    margin-bottom: 25px;
  }
  .ir-lead-contents .ir-lead-layout {
    box-shadow: 0px 2px 2px -1px #ccc;
  }
  .ir-lead-contents .ir-lead-layout .ir-lead-col.link-col {
  }
  .ir-lead-contents .ir-lead-layout .ir-lead-col.link-col a {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 20px 15px 17px;
    background: #0096e0;
    text-decoration: none;
    color: #fff;
    font-size: 2.0rem;
    font-weight: bold;
  }
  .ir-lead-contents .ir-lead-layout .ir-lead-col.link-col a span {
    padding-left: 20px;
    background: url(/common/img/com_ic71.png) no-repeat 0 0.5em;
    background-size: 15px auto;
  }
  .ir-lead-contents .ir-lead-layout .ir-lead-col.text-col {
    align-items: center;
    padding: 15px 15px 20px;
    background: #f5fafe url(/ir/img/index_bg02.png) no-repeat 100% 100%;
    background-size: auto 100%;
  }
  /* ----- box-layout-vIR ----- */
  .box-layout-vIR {
    padding: 20px 10px;
    border-radius: 10px;
    background: #f9f9f9;
  }
  .box-layout-vIR > .box_detail {
  }
  .box-layout-vIR > .box_detail > .box_title {
    margin-bottom: 5px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
  }
  .box-layout-vIR > .box_detail > .box_button > .link-button-DL,
  .box-layout-vIR > .box_detail > .box_links > .link-text {
    margin-top: 0;
  }
  .box-layout-vIR > .box_detail > .box_links > [class*="link-text"] > li + li {
    margin-top: 1em;
  }
  /* box-layout-vIR.wFull */
  .box-layout-vIR.wFull {
    width: 100vw;
    margin: 4em calc(50% - 50vw) 0;
    padding: 40px calc(50vw - 50%);
  }
  .box-layout-vIR.wFull .ir-linkList-layout {
    display: flex;
    width: 100%;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col {
    width: calc((100% - 90px) / 4);
    border-radius: 8px;
    box-shadow: 0px 2px 2px 0px #ccc;
    background: #fff;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col + .col {
    margin-left: 30px;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-head a {
    position: relative;
    display: block;
    padding: 20px 40px 20px 15px;
    font-size: 2.0rem;
    line-height: 1.5;
    color: #1e2d66;
    font-weight: bold;
    text-decoration: none;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-head a:hover {
    color: #0096e0;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-head a::before {
    position: absolute;
    content: "";
    width: 2px;
    height: 1.5em;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
    background: #0196e0;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-head a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 13px;
    margin: auto 0;
    width: 20px;
    height: 20px;
    background: url(/common/img/com_ic60.png) no-repeat 0 0; 
    background-size: 20px auto;
    content: "";
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-detail {
    padding: 15px 10px 20px 15px;
    border-top: 1px solid #ddd;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-detail .link-text {
    margin-top: 0;
  }
  .box-layout-vIR.wFull .ir-linkList-layout > .col .ir-linkList-detail .link-text > li + li {
    margin-top: 1em;
  }
  /* ----- ir-news-layout ----- */
  .ir-news-layout .ir-news_article + .ir-news_article {
    margin-top: 15px;
  }
  .ir-news-layout .ir-news_article .block {
    text-decoration: none;
  }
  .ir-news-layout .ir-news_article .block::after {
    display: none;
  }
  .ir-news-layout .ir-news_detail {
    margin-bottom: 5px;
  }
  .ir-news-layout .ir-news_property {
  }
  .ir-news-layout .ir-news_date {
    color: #555555;
    font-size: 1.1rem;
  }
  .ir-news-layout [class*="ir-news_icon"] {
    display: inline-block;
    min-width: 5.5em;
    line-height: 1;
    padding: 0.3em 0.5em;
    margin-left: 15px;
    color: #555555;
    font-size: 1.1rem;
    text-align: center;
    border: 1px solid #ddd;
    background: #f9f9f9;
  }
  .ir-news-layout .ir-news_title {
    display: inline-block;
  }
  .ir-news-layout .block.a-blank .ir-news_title::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    margin-left: 5px;
    background: url(/common/img/com_ic41.png) no-repeat 100% 0;
    background-size: 10px auto;
  }
  .ir-news-layout .block.a-pdf .ir-news_title::after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 16px;
    margin-left: 5px;
    background: url(/common/img/com_ic11.png) no-repeat 100% 0;
    background-size: 14px auto;
  }
  .ir-news-layout .ir-news_title .ir-news_text {
    margin-top: 0.8em;
    color: #222;
    font-size: 1.4rem;
  }
  .ir-news-layout a .ir-news_title {
    line-height: 1.4;
  }
  .link-button.ir-news-button.gp-al-center > li > a {
    min-width: 61.11%;
  }
  
  
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .column-media[data-layout-sp="row"]::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * Media Queries
====================================================== */
@media only screen and (max-width: 480px) {
  .ir-individual-img p{
    font-size: 1.1rem;
  }
}
/***
@media only screen and (min-width: 320px) and (max-width: 767px) {
}
@media only screen and (max-width: 736px) {
}
@media only screen and (max-width: 667px) {
}
@media only screen and (max-width: 640px) {
}
@media only screen and (max-width: 568px) {
}
@media only screen and (max-width: 414px) {
}
@media only screen and (max-width: 375px) {
}
@media only screen and (max-width: 360px) {
}
@media only screen and (max-width: 320px) {
}
***/