@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 ----- */
  a.block {
    display: block;
    color: #333;
  }
  [class^="heading-lv"] a.block,
  a.link-inline {
    color: #3860c3;
  }
  .index-layout-v2 .index_caption .link-button > li > a {
    color: #fff;
  }
  
  /* ----- opacity ----- */
  
  /* ----- transition ----- */
  .accordion-layout > .accordion_trigger,
  .accordion-layout-v2 > .accordion_trigger,
  .navi-pulldown .navi_inner,
  .navi-pulldown .navi_inner .navi_list {
    -webkit-transition: box-shadow .2s ease-out 0s;
    transition: box-shadow .2s ease-out 0s;
  }
  .accordion-layout .accordion_label::after,
  .accordion-layout-v2 .accordion_label::after,
  .accordion-layout-v3 .accordion_label::after,
  .navi-pulldown .navi_title .navi_label::before {
    -webkit-transition: transform .2s ease-out 0s;
    transition: transform .2s ease-out 0s;
  }
  .accordion-layout-v2.type-qa > .accordion_trigger .accordion_label .accordion_question_head::after {
    -webkit-transition: height .2s ease-out 0s;
    transition: height .2s ease-out 0s;
  }
  .radio-list > li > input[type="radio"] + label::after {
    -webkit-transition: background-color .2s ease-out 0s;
    transition: background-color .2s ease-out 0s;
  }
  
  /* ----- link icon ----- */
  .a-blank::after,
  .a-pdf::after,
  .a-print::after,
  .a-mail::after,
  .a-excel::after,
  .a-word::after,
  .a-ppt::after,
  .a-rss::after,
  .a-zip::after,
  .a-video::after,
  .a-modal::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .panel-index-layout .a-blank .index_title::after,
  .panel-index-layout .a-pdf .index_title::after,
  .panel-index-layout-v2 .a-blank .index_title::after,
  .panel-index-layout-v2 .a-pdf .index_title::after,
  .panel-index-layout-v3 .a-blank .index_title::after,
  .panel-index-layout-v3 .a-pdf .index_title::after,
  .index-layout-v3 .a-blank .index_title::after,
  .index-layout-v3 .a-pdf .index_title::after,
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after {
    vertical-align: top;
    content: "";
  }
  .a-blank::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  .panel-index-layout .a-blank .index_title::after,
  .panel-index-layout-v2 .a-blank .index_title::after,
  .panel-index-layout-v3 .a-blank .index_title::after,
  .index-layout-v3 .a-blank .index_title::after,
  .news-layout .a-blank .news_title::after {
    width: 15px;
    height: 15px;
    background: url(/english/common/img/cmn_link_blank_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 15px 15px;
    background-size: 15px 15px;
  }
  .a-pdf::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .panel-index-layout .a-pdf .index_title::after,
  .panel-index-layout-v2 .a-pdf .index_title::after,
  .panel-index-layout-v3 .a-pdf .index_title::after,
  .index-layout-v3 .a-pdf .index_title::after,
  .news-layout .a-pdf .news_title::after {
    width: 15px;
    height: 15px;
    background: url(/english/common/img/cmn_link_pdf_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 15px 15px;
    background-size: 15px 15px;
  }
  .a-print::after {
    width: 14px;
    height: 12px;
    background: url(/english/common/img/cmn_link_print_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 14px 12px;
    background-size: 14px 12px;
  }
  .a-mail::after {
    width: 12px;
    height: 10px;
    background: url(/english/common/img/cmn_link_mail_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 12px 10px;
    background-size: 12px 10px;
  }
  .a-excel::after {
    width: 12px;
    height: 12px;
    background: url(/english/common/img/cmn_link_excel_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
  }
  .a-word::after {
    width: 12px;
    height: 12px;
    background: url(/english/common/img/cmn_link_word_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
  }
  .a-ppt::after {
    width: 12px;
    height: 12px;
    background: url(/english/common/img/cmn_link_ppt_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
  }
  .a-rss::after {
    width: 12px;
    height: 12px;
    background: url(/english/common/img/cmn_link_rss_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
  }
  .a-zip::after {
    width: 10px;
    height: 12px;
    background: url(/english/common/img/cmn_link_zip_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 10px 12px;
    background-size: 10px 12px;
  }
  .a-video::after {
    width: 13px;
    height: 11px;
    background: url(/english/common/img/cmn_link_movie_ic01-r2x.png) no-repeat 0 0;
    -webkit-background-size: 13px 11px;
    background-size: 13px 11px;
  }
  .a-modal::after {
    width: 23px;
    height: 22px;
    background: url(/english/common/img/cmn_link_modal_ic03-r2x.png) no-repeat 0 0;
    -webkit-background-size: 23px 22px;
    background-size: 23px 22px;
  }
  [class*="heading-lv"] .a-blank::after,
  [class*="heading-lv"] .a-pdf::after,
  .panel-index-layout .a-blank::after,
  .panel-index-layout .a-pdf::after,
  .panel-index-layout-v2 .a-blank::after,
  .panel-index-layout-v2 .a-pdf::after,
  .panel-index-layout-v3 .a-blank::after,
  .panel-index-layout-v3 .a-pdf::after,
  .index-layout-v3 .a-blank::after,
  .index-layout-v3 .a-pdf::after,
  .news-layout .a-blank::after,
  .news-layout .a-pdf::after {
    display: none;
  }
  .link-inline.a-blank::after,
  .link-inline.a-pdf::after {
    display: inline-block;
    margin: .25em 8px 0 8px;
  }
  .link-text > li > .a-blank::after,
  .link-text > li > .a-pdf::after,
  .link-text > li > .a-rss::after {
    display: inline-block;
    margin: .2em 0 0 8px;
  }
  .link-text > li > .a-rss::after {
    display: inline-block;
    margin: .25em 0 0 8px;
  }
  .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-zip::after,
  .link-text > li > .a-video::after {
    display: inline-block;
    margin: .3em 0 0 8px;
  }
  .link-button > li > .a-blank::after,
  .link-button > li > .a-pdf::after,
  .link-button-v2 > li > .a-blank::after,
  .link-button-v2 > li > .a-pdf::after,
  .link-button-v3 > li > .a-blank::after,
  .link-button-v3 > li > .a-pdf::after {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -8px;
  }
  .link-button > li > .a-modal::after,
  .link-button-v2 > li > .a-modal::after,
  .link-button-v3 > li > .a-modal::after {
    position: absolute;
    top: 50%;
    right: 14px;
    margin-top: -11px;
  }
  .link-button > li > .a-excel::after,
  .link-button > li > .a-word::after,
  .link-button > li > .a-ppt::after,
  .link-button > li > .a-zip::after,
  .link-button > li > .a-print::after,
  .link-button > li > .a-rss::after,
  .link-button > li > .a-video::after,
  .link-button-v2 > li > .a-excel::after,
  .link-button-v2 > li > .a-word::after,
  .link-button-v2 > li > .a-ppt::after,
  .link-button-v2 > li > .a-zip::after,
  .link-button-v2 > li > .a-print::after,
  .link-button-v2 > li > .a-rss::after,
  .link-button-v2 > li > .a-video::after,
  .link-button-v3 > li > .a-excel::after,
  .link-button-v3 > li > .a-word::after,
  .link-button-v3 > li > .a-ppt::after,
  .link-button-v3 > li > .a-zip::after,
  .link-button-v3 > li > .a-print::after,
  .link-button-v3 > li > .a-rss::after,
  .link-button-v3 > li > .a-video::after {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -6px;
  }
  .link-button > li > .a-mail::after,
  .link-button-v2 > li > .a-mail::after,
  .link-button-v3 > li > .a-mail::after {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -5px;
  }
  .heading-lv2 .a-blank .heading_title::after,
  .heading-lv2 .a-pdf .heading_title::after,
  .heading-lv3 .a-blank .heading_title::after,
  .heading-lv3 .a-pdf .heading_title::after,
  .heading-lv4 .a-blank .heading_title::after,
  .heading-lv4 .a-pdf .heading_title::after {
    display: inline-block;
    margin: .3em 0 0 10px;
  }
  .panel-index-layout .a-blank .index_title::after,
  .panel-index-layout .a-pdf .index_title::after,
  .panel-index-layout-v2 .a-blank .index_title::after,
  .panel-index-layout-v2 .a-pdf .index_title::after,
  .panel-index-layout-v3 .a-blank .index_title::after,
  .panel-index-layout-v3 .a-pdf .index_title::after {
    display: inline-block;
    margin: .2em 0 0 10px;
  }
  .index-layout-v3 .a-blank .index_title::after,
  .index-layout-v3 .a-pdf .index_title::after {
    display: inline-block;
    margin: .2em 0 0 10px;
  }
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after {
    display: inline-block;
    margin: .2em 0 0 10px;
  }
  
  /* ----- 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-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;
  }
  .radio-list[data-row-sp="auto"] {
    margin-right: -30px;
    margin-bottom: -.75em;
  }
  .radio-list[data-row-sp="auto"] > li {
    margin-right: 30px;
    margin-bottom: .75em;
  }
  
  /* ------------------------------------------------------
   * Element >>> Heading
  ------------------------------------------------------ */
  [class*="heading-lv"] .heading_title {
    line-height: 1.3;
  }
  [class*="heading-lv"] a:not(.a-blank):not(.a-pdf) .heading_title::after {
    display: inline-block;
    position: relative;
    height: 10px;
    width: 10px;
    margin-left: 5px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  #main .heading-lv1 + * {
    margin-top: 2.15em;
  }
  #main .heading-lv2 + *,
  #main .heading-lv2-v2 + *,
  #main .heading-lv3 + * {
    margin-top: 1.45em;
  }
  #main .heading-lv2-v3 + *,
  #main .heading-lv3-v2 + * {
    margin-top: 1.25em;
  }
  #main .heading-lv4 + * {
    margin-top: 1.1em;
  }
  #main .heading-lv5 + * {
    margin-top: .5em;
  }
  
  /* ----- heading-lv1 ----- */
  .heading-lv1 {
    margin: 0 0 2.15em;
  }
  .heading-lv1 .heading_title {
    font-size: 2.4rem;
    font-weight: bold;
  }
  .heading-lv1 .heading_subtitle {
    margin-bottom: .25em;
    color: #666;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.3;
  }
  
  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    margin: 2.85em 0 1.45em;
  }
  .heading-lv2 .block {
    color: #363581;
  }
  .heading-lv2 .heading_title {
    position: relative;
    padding-bottom: 15px;
    font-size: 2.1rem;
  }
  .heading-lv2 .heading_title::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 1px;
    background-color: #363581;
    content: "";
  }
  .heading-lv2 a:not(.a-blank):not(.a-pdf) .heading_title::after {
    top: -3px;
  }
  .heading-lv2 .heading_subtitle {
    margin-bottom: .25em;
    color: #363581;
    font-size: 1.3rem;
    font-weight: bold;
  }
  /* v2 */
  .heading-lv2-v2 {
    margin: 2.5em 0 1.25em;
  }
  .heading-lv2-v2 .heading_title {
    position: relative;
    font-size: 2rem;
    font-weight: bold;
  }
  .heading-lv2-v2 a:not(.a-blank):not(.a-pdf) .heading_title::after {
    top: -3px;
  }
  .heading-lv2-v2[class*="has-icon"] .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .heading-lv2-v2[class*="has-icon"] .heading_icon {
    text-align: center;
  }
  .heading-lv2-v2.has-icon1 .heading_icon {
    width: 50px;
    padding-right: 10px;
  }
  .heading-lv2-v2.has-icon1 .heading_title {
    width: calc(100% - 50px);
  }
  .heading-lv2-v2.has-icon2 .heading_icon {
    width: 60px;
    padding-right: 10px;
  }
  .heading-lv2-v2.has-icon2 .heading_title {
    width: calc(100% - 60px);
  }
  .heading-lv2-v2[class*="has-text-icon"] .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .heading-lv2-v2.has-text-icon1 {
    margin-top: 1.5em;
  }
  .heading-lv2-v2.has-text-icon1 .heading_icon {
    width: 24px;
    height: 24px;
    margin-right: 12px;
    padding-top: 4px;
    border-radius: 50%;
    background-color: #7171b2;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .heading-lv2-v2.has-text-icon1 .heading_title {
    width: calc(100% - 36px);
  }
  
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    margin: 2.15em 0 1.45em;
    background-color: #f5f5f5;
  }
  .heading-lv3 .block {
    padding: 10px;
  }
  .heading-lv3 .heading_title {
    font-size: 2rem;
    font-weight: bold;
  }
  .heading-lv3 a:not(.a-blank):not(.a-pdf) .heading_title::after {
    top: -2px;
  }
  .heading-lv3 .heading_subtitle {
    margin-bottom: .25em;
    color: #333;
    font-size: 1.3rem;
  }
  /* v2 */
  .heading-lv3-v2 {
    margin: 2.15em 0 1.45em;
  }
  .heading-lv3-v2 .block {
    text-align: center;
  }
  .heading-lv3-v2 .heading_title {
    display: inline-block;
    padding-bottom: 10px;
    border-bottom: 2px solid #000;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .heading-lv3-v2 .heading_title .heading_title_em {
    display: inline-block;
    position: relative;
    top: 3px;
    margin-left: 5px;
    color: #363581;
    font-size: 4.1rem;
    font-weight: bold;
    vertical-align: bottom;
    line-height: 1;
  }
  .heading-lv3-v2 a:not(.a-blank):not(.a-pdf) .heading_title::after {
    top: -2px;
  }
  /* v3 */
  .heading-lv2-v3 {
    margin: 2.15em 0 1em;
  }
  .heading-lv2-v3 .block {
    color: #363581;
  }
  .heading-lv2-v3 .heading_title {
    width: 100%;
    padding: 12px 15px;
    background-color: #ebebfa;
    font-size: 2.1rem;
    text-align: center;
  }
  .heading-lv2-v3 a:not(.a-blank):not(.a-pdf) .heading_title::after {
    top: -2px;
  }
  .heading-lv2-v3 .heading_subtitle {
    padding: 10px 15px;
    background-color: #363581;
    color: #7372a7;
    font-size: 2rem;
    text-align: center;
    line-height: 1.3;
  }
  .heading-lv2-v3 .heading_subtitle .heading_subtitle_em {
    display: inline-block;
    position: relative;
    top: 0;
    margin-left: 5px;
    font-size: 3rem;
    line-height: 1;
  }
  
  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 2.15em 0 1.1em;
  }
  .heading-lv4 .heading_title {
    font-size: 1.8rem;
    font-weight: bold;
  }
  .heading-lv4 a:not(.a-blank):not(.a-pdf) .heading_title::after {
    top: -2px;
  }
  
  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 1.5em 0 .5em;
  }
  .heading-lv5 .block {
     color: #363581;
  }
  .heading-lv5 .heading_title {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.5;
  }
  
  /* ------------------------------------------------------
   * Element >>> Text
  ------------------------------------------------------ */
  /* ----- text-paragraph ----- */
  .text-paragraph {
    margin-top: 1em;
  }
  .text-paragraph[data-gap-sp="x0"]   { margin-top: 0 !important; }
  .text-paragraph[data-gap-sp="x0.5"] { margin-top: .5em !important; }
  .text-paragraph[data-gap-sp="x1"]   { margin-top: 1em !important; }
  .text-paragraph[data-gap-sp="x1.5"] { margin-top: 1.5em !important; }
  .text-paragraph[data-gap-sp="x2"]   { margin-top: 2em !important; }
  .text-paragraph[data-gap-sp="x2.5"] { margin-top: 2.5em !important; }
  .text-paragraph[data-gap-sp="x3"]   { margin-top: 3em !important; }
  
  /* ----- text-lead ----- */
  .text-lead {
    margin: 1.5em 0 .75em;
    font-size: 1.8rem;
    font-weight: bold;
  }
  /* ----- v2 ----- */
  .text-lead-v2 {
    font-size: 1.8rem;
    font-weight: 700;
  }
  .text-lead-v2 .lead-strong{
    font-size: 2.1rem;
    color: #363581;
  }
  
  /* ----- text-title ----- */
  .text-title {
    margin: 1.5em 0 .75em;
    color: #363581;
    font-weight: bold;
  }
  #main .text-title + * {
    margin-top: .75em;
  }
  
  /* ----- text-unit ----- */
  .text-unit {
    margin: 1.5em 0 .75em;
    color: #707070;
    font-size: 1.3rem;
    text-align: right;
  }
  #main .text-unit + * {
    margin-top: .75em;
  }
  
  /* ----- text-tel ----- */
  .text-tel {
    margin-top: 1em;
  }
  .text-tel + .text-tel {
    margin-top: 0;
  }
  .address-layout + .text-tel {
    margin-top: .5em;
  }
  .text-tel .text_head {
    display: block;
    float: left;
    margin-right: .25em;
  }
  .text-tel .text_head::after {
    content: ":";
  }
  .text-tel .text_number {
    display: block;
    overflow: hidden;
  }
  
  /* ----- committee-layout ----- */
  .committee-description {
    margin-top: 2em;
  }
  .committee-description + .committee-description {
    margin-top: 1.75em;
  }
  .committee-description > dt {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .committee-description > dt .committee_num {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-right: 10px;
    padding-top: 4px;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .committee-description > dt .committee_num.color1 {
    background-color: #7171b2;
  }
  .committee-description > dt .committee_num.color2 {
    background-color: #f08d66;
  }
  .committee-description > dt .committee_title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .committee-description > dd {
    margin-top: 1em;
  }
  .committee-description > dd > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Element >>> List
  ------------------------------------------------------ */
  [class*="list-note"],
  [class*="list-bullet"],
  [class*="list-order"] {
    margin-top: 1em;
  }
  [class*="list-note"][data-gap-sp="x0"],
  [class*="list-bullet"][data-gap-sp="x0"],
  [class*="list-order"][data-gap-sp="x0"]   { margin-top: 0 !important; }
  [class*="list-note"][data-gap-sp="x0.5"],
  [class*="list-bullet"][data-gap-sp="x0.5"],
  [class*="list-order"][data-gap-sp="x0.5"] { margin-top: .5em !important; }
  [class*="list-note"][data-gap-sp="x1"],
  [class*="list-bullet"][data-gap-sp="x1"],
  [class*="list-order"][data-gap-sp="x1"]   { margin-top: 1em !important; }
  [class*="list-note"][data-gap-sp="x1.5"],
  [class*="list-bullet"][data-gap-sp="x1.5"],
  [class*="list-order"][data-gap-sp="x1.5"] { margin-top: 1.5em !important; }
  [class*="list-note"][data-gap-sp="x2"],
  [class*="list-bullet"][data-gap-sp="x2"],
  [class*="list-order"][data-gap-sp="x2"]   { margin-top: 2em !important; }
  [class*="list-note"][data-gap-sp="x2.5"],
  [class*="list-bullet"][data-gap-sp="x2.5"],
  [class*="list-order"][data-gap-sp="x2.5"] { margin-top: 2.5em !important; }
  [class*="list-note"][data-gap-sp="x3"],
  [class*="list-bullet"][data-gap-sp="x3"],
  [class*="list-order"][data-gap-sp="x3"]   { margin-top: 3em !important; }
  [class*="list-description"] {
    margin-top: 1.5em;
  }
  [class*="list-description"][data-gap-sp="x0"]   { margin-top: 0 !important; }
  [class*="list-description"][data-gap-sp="x0.5"] { margin-top: .75em !important; }
  [class*="list-description"][data-gap-sp="x1"]   { margin-top: 1.5em !important; }
  [class*="list-description"][data-gap-sp="x1.5"] { margin-top: 2.25em !important; }
  [class*="list-description"][data-gap-sp="x2"]   { margin-top: 3em !important; }
  [class*="list-description"][data-gap-sp="x2.5"] { margin-top: 3.75em !important; }
  [class*="list-description"][data-gap-sp="x3"]   { margin-top: 4.5em !important; }
  [class*="list-note"] > li + li,
  [class*="list-bullet"] > li + li,
  [class*="list-order"] > li + li {
    margin-top: .5em;
  }
  [class*="list-"].is-nest {
    margin: .5em 0 .75em;
  }
  [class*="list-note"] > li > .list_detail,
  [class*="list-bullet"] > li > .list_detail,
  [class*="list-order"] > li > .list_detail {
    margin-top: .25em;
  }
  [class*="list-note"] > li > .list_detail > *:first-child,
  [class*="list-note"] > li > .list_detail > section:first-child > [class*="heading-lv"],
  [class*="list-bullet"] > li > .list_detail > *:first-child,
  [class*="list-bullet"] > li > .list_detail > section:first-child > [class*="heading-lv"],
  [class*="list-order"] > li > .list_detail > *:first-child,
  [class*="list-order"] > li > .list_detail > section:first-child > [class*="heading-lv"],
  [class*="list-description"] > dd > *:first-child,
  [class*="list-description"] > dd > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- list-al-right ----- */
  .list-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-top: 1em;
  }
  .list-al-right > [class*="list-"] {
    margin-top: 0;
  }
  
  /* ----- list-note ----- */
  .list-note > li {
    position: relative;
    padding-left: 1em;
    font-size: 1.3rem;
  }
  .list-note > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* ----- list-note-order ----- */
  .list-note-order > li {
    position: relative;
    padding-left: 2.25em;
    font-size: 1.3rem;
  }
  .list-note-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note-order > li > .list_mark::after {
    content: ".";
  }
  /* v2 */
  .list-note-order-v2 > li {
    position: relative;
    padding-left: 2em;
    font-size: 1.3rem;
  }
  .list-note-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note-order-v2 > li > .list_mark::after {
    content: ".";
  }
  /* v3 */
  .list-note-order-v3 > li {
    position: relative;
    padding-left: 2.3em;
    font-size: 1.2rem;
  }
  .list-note-order-v3 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note-order-v3 > li > .list_mark::after {
    content: ".";
  }
  /* ----- list-bullet ----- */
  .list-bullet > li {
    position: relative;
    padding-left: 17px;
  }
  .list-bullet.type-small > li {
    padding-left: 15px;
    font-size: 1.2rem;
  }
  .list-bullet > li::before {
    position: absolute;
    top: .45em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #363581;
    content: "";
  }
  .list-bullet.type-small > li::before {
    top: .45em;
    width: 5px;
    height: 5px;
  }
  /* v2 */
  .list-bullet-v2 > li {
    position: relative;
    padding-left: 13px;
  }
  .list-bullet-v2 > li::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }
  /* v3 */
  .list-bullet-v3 > li {
    position: relative;
    padding-left: 10px;
  }
  .list-bullet-v3 > li::before {
    position: absolute;
    top: .45em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }
  
  /* ----- list-order ----- */
  .list-order > li {
    position: relative;
    padding-left: 2em;
  }
  .list-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
    font-weight: bold;
  }
  /* v2 */
  .list-order-v2 > li {
    position: relative;
    padding-left: 2.25em;
  }
  .list-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
    color: #666;
  }
  /* v3 */
  .list-note-order-v2 .list-order-v3.is-nest {
    margin-left: -1.3em;
  }
  .list-order-v3 > li {
    position: relative;
    padding-left: 1.75em;
    font-size: 1.3rem;
  }
  .list-order-v3 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-description ----- */
  .list-description > dt {
    margin: 1.5em 0 .5em;
    font-weight: bold;
  }
  .list-description > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description > dd > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Element >>> Link
  ------------------------------------------------------ */
  [class*="link-text"] {
    margin-top: 1em;
  }
  [class*="link-text"][data-gap-sp="x0"]   { margin-top: 0 !important; }
  [class*="link-text"][data-gap-sp="x0.5"] { margin-top: .5em !important; }
  [class*="link-text"][data-gap-sp="x1"]   { margin-top: 1em !important; }
  [class*="link-text"][data-gap-sp="x1.5"] { margin-top: 1.5em !important; }
  [class*="link-text"][data-gap-sp="x2"]   { margin-top: 2em !important; }
  [class*="link-text"][data-gap-sp="x2.5"] { margin-top: 2.5em !important; }
  [class*="link-text"][data-gap-sp="x3"]   { margin-top: 3em !important; }
  [class*="link-text"] > li + li {
    margin-top: .75em;
  }
  [class*="link-button"] {
    margin-top: 1.5em;
  }
  [class*="link-button"].type-news {
    margin-top: 3.5em;
  }
  [class*="link-button"] > li + li {
    margin-top: 1em;
  }
  [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;
  }
  [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-inline ----- */
  a.link-inline {
    text-decoration: underline;
  }
  
  /* ----- link-text ----- */
  .link-text > li > a {
    display: inline-block;
    position: relative;
    padding-left: 14px;
  }
  .link-text > li > a::before {
    position: absolute;
    top: .35em;
    left: -3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 8px;
    height: 8px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    content: "";
  }
  
  /* ----- link-button ----- */
  .link-button > li > a {
    display: block;
    position: relative;
    padding: 12px 10px;
    border: 1px solid #ccc;
    background-color: #fff;
    color: #333;
    font-size: 1.5rem;
    line-height: 1.3;
    text-align: center;
  }
  .link-button > li > a.a-blank,
  .link-button > li > a.a-pdf,
  .link-button > li > a.a-excel,
  .link-button > li > a.a-word,
  .link-button > li > a.a-ppt,
  .link-button > li > a.a-zip,
  .link-button > li > a.a-print,
  .link-button > li > a.a-rss,
  .link-button > li > a.a-mail,
  .link-button > li > a.a-video {
    padding-right: 35px;
  }
  .link-button > li > a.a-modal {
    padding-right: 40px;
  }
  .link-button > li > a::before {
    position: absolute;
    bottom: -2px;
    left: -1px;
    width: calc(100% + 2px);
    height: 1px;
    background-color: #ccc;
    content: "";
  }
  .link-button .link_label {
    display: inline-block;
    width: 100%;
    line-height: 1.3;
  }
  /* v2 */
  .link-button-v2 > li > a {
    display: block;
    position: relative;
    padding: 12px 10px;
    border: 1px solid #ccc;
    background-color: #fff;
    color: #333;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
  }
  .link-button-v2 > li > a.a-blank,
  .link-button-v2 > li > a.a-pdf,
  .link-button-v2 > li > a.a-excel,
  .link-button-v2 > li > a.a-word,
  .link-button-v2 > li > a.a-ppt,
  .link-button-v2 > li > a.a-zip,
  .link-button-v2 > li > a.a-print,
  .link-button-v2 > li > a.a-rss,
  .link-button-v2 > li > a.a-mail,
  .link-button-v2 > li > a.a-video {
    padding-right: 35px;
  }
  .link-button-v2 > li > a.a-modal {
    padding-right: 40px;
  }
  .link-button-v2 > li > a::before {
    position: absolute;
    bottom: -2px;
    left: -1px;
    width: calc(100% + 2px);
    height: 1px;
    background-color: #ccc;
    content: "";
  }
  .link-button-v2 .link_label {
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.3;
  }
  .link-button-v2 .link_size {
    font-size: 1.5rem;
    font-weight: 500;
  }
  /* v3 */
  .link-button-v3 > li > a {
    display: block;
    position: relative;
    padding: 12px 10px;
    border: 1px solid #9b9ac0;
    background-color: #363581;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
  }
  .link-button-v3 > li > a.a-blank,
  .link-button-v3 > li > a.a-pdf,
  .link-button-v3 > li > a.a-excel,
  .link-button-v3 > li > a.a-word,
  .link-button-v3 > li > a.a-ppt,
  .link-button-v3 > li > a.a-zip,
  .link-button-v3 > li > a.a-print,
  .link-button-v3 > li > a.a-rss,
  .link-button-v3 > li > a.a-mail,
  .link-button-v3 > li > a.a-video {
    padding-right: 35px;
  }
  .link-button-v3 > li > a.a-modal {
    padding-right: 40px;
  }
  .link-button-v3 > li > a::before {
    position: absolute;
    bottom: -3px;
    left: -1px;
    width: calc(100% + 2px);
    height: 2px;
    background-color: #9b9ac0;
    content: "";
  }
  .link-button-v3 .link_label {
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.3;
  }
  .link-button-v3 .link_size {
    font-size: 1.5rem;
    font-weight: 500;
  }
  
  /* ------------------------------------------------------
   * Element >>> Image
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .image-set {
    margin-top: 1.5em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .image-set .image_caption {
    margin-top: .7em;
    font-size: 1.3rem;
    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.type-shot .image_inner {
    max-width: 60% !important;
  }
  .image-set.type-shot2 .image_inner {
    padding: 0 15px;
  }
  .image-set .image_inner > .a-modal {
    position: relative;
  }
  .image-set .image_inner > .a-modal::before {
    content: "";
    display: block;
    position: absolute;
    right: 7px;
    bottom: 7px;
    width: 23px;
    height: 22px;
    background: url(/english/common/img/cmn_link_modal_ic03-r2x.png) no-repeat;
    background-size: cover;
  }
  
  /* ------------------------------------------------------
   * Element >>> Video
  ------------------------------------------------------ */
  /* ----- video-set ----- */
  .video-set {
    margin-top: 1.5em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .video-set.gp-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  .video-set.gp-al-left {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .video-set .video_inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .video-set .video_inner > video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  /* ----- youtube-set ----- */
  .youtube-set {
    margin-top: 1.5em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .youtube-set.gp-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  .youtube-set.gp-al-left {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .youtube-set .youtube_inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .youtube-set .youtube_inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  /* ------------------------------------------------------
   * Element >>> Form
  ------------------------------------------------------ */
  .radio-list {
    margin-top: 1em;
  }
  .radio-list > li {
    position: relative;
    overflow: hidden;
  }
  .radio-list > li + li {
    margin-top: .75em;
  }
  .radio-list > li > input[type="radio"] {
    position: absolute;
    top: 0;
    left: -9999px;
  }
  .radio-list > li > input[type="radio"] + label {
    display: inline-block;
    position: relative;
    padding-left: 25px;
  }
  .radio-list > li > input[type="radio"] + label::before {
    position: absolute;
    top: 2px;
    left: 0;
    width: 16px;
    height: 16px;
    border: 1px solid #999;
    border-radius: 50%;
    background-color: #fff;
    content: "";
  }
  .radio-list > li > input[type="radio"] + label::after {
    position: absolute;
    top: 6px;
    left: 4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #fff;
    content: "";
  }
  .radio-list > li > input[type="radio"]:checked + label::after {
    background-color: #363581;
  }
  
  /* ------------------------------------------------------
   * Element >>> Other
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * 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: 2em;
  }
  .column-layout > .column_item + .column_item {
    margin-top: 1.25em;
  }
  .column-layout[data-row-sp="1"] > .column_item.sp-has-border {
    padding-top: 1.25em;
    border-top: 1px solid #ccc; 
  }
  .column-layout.type-section {
    margin-top: 2.5em;
  }
  .column-layout.type-section > .column_item + .column_item {
    margin-top: 2.5em;
  }
  /* v2 */
  .column-layout-v2 {
    margin-top: 2em;
  }
  .column-layout-v2 > .column_item + .column_item {
    margin-top: 0;
  }
  /* v3 */
  .column-layout-v3 {
    margin-top: 2em;
  }
  .column-layout-v3 > .column_item + .column_item {
    margin-top: 1.25em;
  }
  .column-layout-v3.type-section > .column_item + .column_item {
    margin-top: 2em;
  }
  /* v4 */
  .column-layout-v4 {
    margin-top: 2em;
  }
  .column-layout-v4 > .column_item + .column_item {
    margin-top: 1.25em;
  }
  .column-layout-v4.type-section > .column_item + .column_item {
    margin-top: 2em;
  }
  .column-layout-v4.type-gallery > .column_item + .column_item {
    margin-top: 2em;
  }
  /* v5 */
  .column-layout-v5 {
    margin-top: 2em;
  }
  .column-layout-v5 > .column_item + .column_item {
    margin-top: 1.25em;
  }
  .column-layout-v5.type-section > .column_item + .column_item {
    margin-top: 2em;
  }
  /* v6 */
  .column-layout-v6 {
    margin-top: 2em;
  }
  .column-layout-v6 > .column_item + .column_item {
    margin-top: 2.5em;
  }
  .column-layout-v6.type-section > .column_item + .column_item {
    margin-top: 2em;
  }
  .column-layout-v6 > .column_item > .image-set + section > .column_title {
    margin: 1.4em 0 0;
  }
  .column-layout-v6 > .column_item > .image-set + section > .column_title + p {
    margin-top: 0.2em!important;
  }
  /* ----- column-media ----- */
  .column-media {
    margin-top: 2em;
  }
  .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="row"] > .column_detail[data-wraparound="false"] {
    overflow: hidden;
  }
  .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-media.column-interview{
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Table
  ------------------------------------------------------ */
  [class*="table-layout"] .table_inner {
    table-layout: fixed;
  }
  [class*="table-layout"] caption > *:first-child {
    margin-top: 0 !important;
  }
  [class*="table-layout"] caption > *:last-child {
    margin-bottom: 0 !important;
  }
  [class*="table-layout"] .cell-style1 {
    background-color: #7171b2;
    color: #fff;
  }
  [class*="table-layout"] .cell-style2 {
    background-color: #f7f7fb;
  }
  [class*="table-layout"] .cell-style3 {
    background-color: #f9e2e7;
  }
  [class*="table-layout"] .cell-style4 {
    background-color: #f2e6f1;
  }
  [class*="table-layout"] .cell-style5 {
    background-color: #eaf4eb;
  }
  [class*="table-layout"] .cell-style6 {
    background-color: #e5f4fc;
  }
  [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;
  }
  [class*="table-layout"][data-layout-sp="scroll"] {
    padding-bottom: 20px;
    overflow-x: auto;
  }
  [class*="table-layout"][data-layout-sp="scroll"]::-webkit-scrollbar {
    height: 10px;
  }
  [class*="table-layout"][data-layout-sp="scroll"]::-webkit-scrollbar-track {
    background: #f1f1f1;
  }
  [class*="table-layout"][data-layout-sp="scroll"]::-webkit-scrollbar-thumb {
    background: #434188;
  }
  [data-sidebar="true"] [class*="table-layout"][data-layout-sp="scroll"] .table_inner {
    width: 912px;
  }
  [data-sidebar="false"] [class*="table-layout"][data-layout-sp="scroll"] .table_inner {
    width: 1200px;
  }
  [class*="table-layout"][data-layout-sp="vertical"] col,
  [class*="table-layout"][data-layout-sp="vertical"] tbody,
  [class*="table-layout"][data-layout-sp="vertical"] tr,
  [class*="table-layout"][data-layout-sp="vertical"] th,
  [class*="table-layout"][data-layout-sp="vertical"] td {
    display: block;
    width: 100% !important;
  }
  
  /* ----- table-layout ----- */
  .table-layout {
    margin-top: 2em;
    overflow: hidden;
  }
  [class*="table-layout"].type-small th,
  [class*="table-layout"].type-small td {
    padding: 10px 5px!important;
    font-size: 1.2rem!important;
  }
  .table-layout .table_inner {
    width: calc(100% + 1px);
  }
  .table-layout caption {
    text-align: left;
    margin-bottom: .75em;
  }
  .table-layout .table_title {
    font-weight: bold;
    color: #363581;
  }
  .table-layout .table_caption {
    margin: .5em 0;
    font-size: 1.3rem;
  }
  .table-layout th,
  .table-layout td {
    padding: 18px 11px;
    vertical-align: top;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    font-weight: normal;
    text-align: left;
  }
  .table-layout th.cell-style1,
  .table-layout th.cell-style2,
  .table-layout th.cell-style3,
  .table-layout th.cell-style4,
  .table-layout th.cell-style5,
  .table-layout th.cell-style6 {
    font-weight: bold;
    vertical-align: middle;
  }
  .table-layout .cell-style1 {
    border-bottom: 1px solid #8d8dc1;
    border-right: 1px solid #8d8dc1;
  }
  .table-layout[data-layout-sp="vertical"] .cell-style1 {
    border-right: none;
  }
  /* v2 */
  .table-layout-v2 {
    margin-top: 2em;
    overflow: hidden;
  }
  .table-layout-v2 .table_inner {
    width: 100%;
  }
  .table-layout-v2 caption {
    text-align: left;
    margin-bottom: .75em;
  }
  .table-layout-v2 .table_title {
    font-weight: 700;
    color: #363581;
  }
  .table-layout-v2 .table_caption {
    margin: .5em 0;
    font-size: 1.3rem;
  }
  .table-layout-v2 .table_inner tbody {
    width: 100%;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
  }
  .table-layout-v2 th,
  .table-layout-v2 td {
    padding: 18px 11px;
    vertical-align: top;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    background-color: #fff;
    font-weight: 500;
    text-align: left;
  }
  .table-layout-v2 th.cell-style1,
  .table-layout-v2 th.cell-style2,
  .table-layout-v2 th.cell-style3,
  .table-layout-v2 th.cell-style4,
  .table-layout-v2 th.cell-style5,
  .table-layout-v2 th.cell-style6 {
    font-weight: 700;
    vertical-align: middle;
  }
  .table-layout-v2 .cell-style1 {
    border-bottom: 1px solid #8d8dc1;
    border-right: 1px solid #8d8dc1;
  }
  .table-layout-v2[data-layout-sp="vertical"] .cell-style1 {
    border-right: none;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Box
  ------------------------------------------------------ */
  [class*="box-layout"] {
    margin-top: 2em;
  }
  [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 {
    padding: 25px 15px;
    background-color: #f7f7fb;
  }
  .box-layout > .box_title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .box-layout > .box_title + .box_detail {
    margin-top: 1.5em;
  }
  .box-layout > .box_detail > *:first-child {
    margin-top: 0 !important;
  }
  /* v2 */
  .box-layout-v2 {
    padding: 25px 15px;
    background-color: #f7f7fb;
  }
  .box-layout-v2 > .box_title {
    color: #363581;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
  }
  .box-layout-v2 > .box_title + .box_detail {
    margin-top: .75em;
  }
  /* v3 */
  .box-layout-v3 {
    padding: 25px 15px;
    background-color: #f7f7fb;
  }
  .box-layout-v3 > .box_title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .box-layout-v3 > .box_title + .box_detail {
    margin-top: .75em;
  }
  /* v4 */
  .box-layout-v4 {
    padding: 25px 15px;
    background-color: #fff;
  }
  .box-layout-v4 > .box_title {
    color: #363581;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
  }
  .box-layout-v4 > .box_title + .box_detail {
    margin-top: 1.25em;
  }
  /* v5 */
  .box-layout-v5 > .box_heading {
    padding: 20px 15px;
    background-color: #ebebfa;
  }
  .box-layout-v5 > .box_heading .box_title {
    text-align: center;
  }
  .box-layout-v5 > .box_heading .box_title .box_title_label {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .box-layout-v5 > .box_heading .box_title .box_title_label .box_title_label_em {
    display: inline-block;
    position: relative;
    top: 5px;
    margin-left: 5px;
    color: #363581;
    font-size: 4.1rem;
    font-weight: bold;
    vertical-align: bottom;
    line-height: 1;
  }
  .box-layout-v5 > .box_heading .box_balloon {
    position: relative;
    margin-top: 22px;
    padding: 15px 10px;
    background-color: #fff;
    text-align: center;
  }
  .box-layout-v5 > .box_heading .box_balloon::before {
    position: absolute;
    top: -32px;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -12px;
    border-top: 16px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 16px solid #fff;
    border-left: 12px solid transparent;
    content: "";
  }
  .box-layout-v5 > .box_heading .box_balloon .box_balloon_label {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  .box-layout-v5 > .box_heading .box_balloon .box_balloon_label .box_balloon_label_em {
    display: inline-block;
    position: relative;
    top: 5px;
    margin-left: 5px;
    color: #363581;
    font-size: 4.1rem;
    font-weight: bold;
    vertical-align: bottom;
    line-height: 1;
  }
  .box-layout-v5 > .box_detail {
    padding: 25px 15px;
    background-color: #f7f7fb;
  }
  
  /* ----- search-box-layout ----- */
  .search-box-layout {
    margin: 2em -15px 0;
    padding: 25px 15px 30px;
    background-color: #f7f7fb;
  }
  .search-box-layout > .box_title {
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  .search-box-layout > .box_title + .box_detail {
    margin-top: 1.75em;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Other
  ------------------------------------------------------ */
  /* ----- accordion-layout ----- */
  [class*="accordion-layout"] > [class*="accordion_detail"] > *:first-child,
  [class*="accordion-layout"] > [class*="accordion_detail"] > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .accordion-layout {
    margin-top: 2em;
  }
  .accordion-layout > .accordion_trigger {
    position: relative;
    border-bottom: 1px solid #ccc;
  }
  .accordion-layout > .accordion_trigger.is-active {
    -webkit-box-shadow: 0 0 7px 2px rgba(204,204,204,.8);
    box-shadow: 0 0 7px 2px rgba(204,204,204,.8);
  }
  .accordion-layout .accordion_label {
    display: block;
    padding: 15px 40px 15px 22px;
    border: 1px solid #ccc;
    background-color: #fff;
    color: #363581;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .accordion-layout > .accordion_trigger.is-active .accordion_label {
    border-color: #f7f7fb;
    background-color: #f7f7fb;
  }
  .accordion-layout > .accordion_detail {
    padding-top: 1.5em;
  }
  .accordion-layout .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 14px;
    height: 14px;
    margin-top: -10px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    content: "";
  }
  .accordion-layout > .accordion_trigger.is-active .accordion_label::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -2px;
  }
  /* v2 */
  .accordion-layout-v2 {
    margin-top: 2em;
  }
  .accordion-layout-v2 + .accordion-layout-v2 {
    margin-top: 1.5em;
  }
  .accordion-layout-v2 > .accordion_trigger {
    position: relative;
    border-bottom: 1px solid #ccc;
  }
  .accordion-layout-v2 > .accordion_trigger.is-active {
    -webkit-box-shadow: 0 0 7px 2px rgba(204,204,204,.8);
    box-shadow: 0 0 7px 2px rgba(204,204,204,.8);
  }
  .accordion-layout-v2 .accordion_label {
    display: block;
    padding: 12px 45px 12px 15px;
    background-color: #f5f5f5;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .accordion-layout-v2.type-icon .accordion_label {
    position: relative;
    padding-left: 65px;
    border: 1px solid #ccc;
    background-color: #fff;
  }
  .accordion-layout-v2.type-icon .accordion_label .accordion_label_icon {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 10px;
    width: 45px;
    margin-top: -23px;
  }
  .accordion-layout-v2.type-qa .accordion_label {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    padding: 0 45px 0 0;
    border: 1px solid #ccc;
    background-color: #fff;
  }
  .accordion-layout-v2 > .accordion_trigger.is-active .accordion_label {
    border-color: #f7f7fb;
    background-color: #f7f7fb;
  }
  .accordion-layout-v2.type-qa .accordion_label .accordion_question_head {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 32px;
    padding: 12px 0;
    background-color: #7171b2;
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .accordion-layout-v2.type-qa > .accordion_trigger .accordion_label .accordion_question_head::after {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #7171b2;
    content: "";
  }
  .accordion-layout-v2.type-qa > .accordion_trigger.is-active .accordion_label .accordion_question_head::after {
    height: 1px;
  }
  .accordion-layout-v2.type-qa .accordion_label .accordion_question_num {
    display: -webkit-flex;
    display: flex;
    width: 40px;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 12px 0;
    color: #363581;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .accordion-layout-v2.type-qa .accordion_label .accordion_question_title {
    display: -webkit-flex;
    display: flex;
    width: calc(100% - 72px);
    -webkit-align-items: center;
    align-items: center;
    padding: 12px 0;
  }
  .accordion-layout-v2 > .accordion_detail {
    padding-top: 20px;
  }
  .accordion-layout-v2 .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 14px;
    height: 14px;
    margin-top: -10px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    content: "";
  }
  .accordion-layout-v2 > .accordion_trigger.is-active .accordion_label::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -4px;
  }
  
  /* v3 */
  .accordion-layout-v3 {
    margin-top: 2em;
  }
  .accordion-layout-v3 + .accordion-layout-v3 {
    margin-top: 1.5em;
  }
  .accordion-layout-v3 > .accordion_trigger {
    position: relative;
    border-bottom: 1px solid #b2b2b2;
  }
  .accordion-layout-v3 > .accordion_trigger.is-active {
    border-bottom: none;
  }
  .accordion-layout-v3 .accordion_label {
    display: block;
    padding: 16px 45px 15px 15px;
    border: 1px solid #b2b2b2;
    background-color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .accordion-layout-v3 > .accordion_detail {
    padding: 16px 15px 15px;
    border: 1px solid #b2b2b2;
    border-width: 0 1px 2px;
  }
  .accordion-layout-v3 .accordion_label::before {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 19px;
    height: 1px;
    background: #363581;
    content: "";
  }
  .accordion-layout-v3 .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    width: 19px;
    height: 1px;
    background: #363581;
    content: "";
  }
  .accordion-layout-v3 > .accordion_trigger.is-active .accordion_label::after {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  
  /* ----- tab-layout ----- */
  .tab-layout {
    margin-top: 2em;
  }
  .tab-layout > .tab_navi {
    overflow: hidden;
  }
  .tab-layout .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin: 0 -2px;
    border-bottom: 1px solid #363581;
  }
  .tab-layout .tab_list > li {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    padding: 6px 2px 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%;
    padding: 12px 10px;
    border: 1px solid #363581;
    border-bottom: none;
    background-color: #363581;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .tab-layout .tab_list > .is-current {
    padding-top: 0;
  }
  .tab-layout .tab_list > .is-current > a {
    border-color: #363581;
    background-color: #fff;
    color: #363581;
  }
  .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: 1.5em;
  }
  .tab-layout > .tab_detail > *:first-child {
    margin-top: 0 !important;
  }
  /* type-bottom */
  .tab-layout .type-bottom  {
    padding-top: 1.5em;
  }
  .tab-layout .type-bottom .tab_list {
    margin: 0 -2px;
    border-top: 1px solid #363581;
    border-bottom: none;
  }
  .tab-layout .type-bottom .tab_list > li {
    padding: 0 2px 6px;
  }
  .tab-layout .type-bottom .tab_list > li > a {
    padding: 12px 10px;
    border: 1px solid #363581;
    border-top: none;
  }
  .tab-layout .type-bottom .tab_list > .is-current {
    padding-top: 0;
  }
  .tab-layout .type-bottom .tab_list > .is-current > a::after {
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    content: "";
  }

  
  /* ------------------------------------------------------
   * Component >>> Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    margin: 2.5em 0 2em;
  }
  .navi-anchor .navi_inner {
    font-size: 1.5rem;
  }
  .navi-anchor .navi_inner > li + li {
    margin-top: .5em;
  }
  .navi-anchor .navi_inner[data-row-sp] > li {
    padding-left: 15px;
    border-left: 1px solid #ccc;
  }
  .navi-anchor .navi_inner[data-row-sp="1"] > li,
  .navi-anchor .navi_inner[data-row-sp="2"] > li:nth-child(2n+1),
  .navi-anchor .navi_inner[data-row-sp="3"] > li:nth-child(3n+1) {
    border-left: none;
  }
  .navi-anchor .navi_inner > li > a {
    display: inline-block;
    position: relative;
    width: 100%;
    padding-left: 23px;
  }
  .navi-anchor .navi_inner > li > a::before {
    position: absolute;
    top: .15em;
    left: 2px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 8px;
    height: 8px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    content: "";
  }
  
  /* ----- navi-pulldown ----- */
  .navi-pulldown {
    margin: 2em 0;
  }
  .navi-pulldown + * {
    margin-top: 2em;
  }
  .navi-pulldown .navi_inner {
    position: relative;
  }
  .navi-pulldown.gp-al-right .navi_inner {
    text-align: left !important;
  }
  .navi-pulldown .navi_inner.is-active {
    -webkit-box-shadow: 0 0 7px 2px rgba(204,204,204,.5);
    box-shadow: 0 0 7px 2px rgba(204,204,204,.5);
  }
  .navi-pulldown .navi_title {
    position: relative;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    z-index: 11;
  }
  .navi-pulldown .navi_inner.is-active .navi_title {
    border-color: #f7f7fb;
  }
  .navi-pulldown .navi_title .navi_label {
    display: block;
    padding: 12px 40px 12px 22px;
    background-color: #fff;
    font-size: 1.5rem;
    text-decoration: none;
    outline: none;
  }
  .navi-pulldown .navi_inner.is-active .navi_title .navi_label {
    background-color: #f7f7fb;
  }
  .navi-pulldown .navi_title .navi_label::before {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -10px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    content: "";
  }
  .navi-pulldown .navi_inner.is-active .navi_title .navi_label::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -2px;
  }
  .navi-pulldown .navi_list {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    max-height: 300px;
    border-bottom: 2px solid #ccc;
    overflow-y: auto;
    z-index: 10;
  }
  .navi-pulldown .navi_inner.is-active .navi_list {
    -webkit-box-shadow: 0 0 7px 2px rgba(204,204,204,.5);
    box-shadow: 0 0 7px 2px rgba(204,204,204,.5);
  }
  .navi-pulldown .navi_list > li + li {
    border-top: 1px solid #ccc;
  }
  .navi-pulldown .navi_list .navi_label {
    display: block;
    padding: 12px 22px;
    background-color: #fff;
    font-size: 1.5rem;
    text-decoration: none;
    outline: none;
  }
  /* ------------------------------------------------------
   * Component >>> Index
  ------------------------------------------------------ */
  [class*="index-layout"] .index_caption > *:first-child,
  [class*="index-layout"] .index_caption > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- index-layout ----- */
  .index-layout {
    margin-top: 2em;
  }
  .index-layout > .block {
    background-color: #f7f7fb;
  }
  .index-layout .index_image img {
    width: 100%;
  }
  .index-layout .index_caption {
    padding: 25px 15px 30px;
  }
  .index-layout .index_title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  #main .index-layout .index_title + * {
    margin-top: 1.5em;
  }
  .index-layout .index_text {
    margin-top: 1em;
  }
  /* v2 */
  .index-layout-v2 {
    margin: 2em -15px 0;
  }
  .index-layout-v2 > .block {
    background-color: #363581;
    color: #fff;
  }
  .index-layout-v2 .index_image img {
    width: 100%;
  }
  .index-layout-v2 .index_caption {
    padding: 25px 15px 30px;
  }
  .index-layout-v2 .index_caption .link-button > li > a {
    border-color: #9b9ac0;
    background-color: #363581;
  }
  .index-layout-v2 .index_caption .link-button > li > a::before {
    background-color: #9b9ac0;
  }
  .index-layout-v2 .index_text {
    margin-top: 1em;
  }
  /* v3 */
  .index-layout-v3 {
    margin-top: 2em;
  }
  .column-layout-v2 > .column_item + .column_item .index-layout-v3 {
    margin-top: -1px !important;
  }
  .index-layout-v3 > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: center;
    align-items: center;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout-v3 .index_image {
    width: 80px;
  }
  .index-layout-v3 .index_caption {
    width: calc(100% - 80px);
    padding: 10px 20px;
  }
  .index-layout-v3 .index_title {
    font-size: 1.5rem;
    font-weight: bold;
  }
  
  /* ----- index-panel-layout ----- */
  .panel-index-layout {
    margin-top: 2em;
  }
  .panel-index-layout a {
    border-bottom: 1px solid #b2b2b2;
    background: #f7f7fb;
  }
  .panel-index-layout .index_caption,
  .panel-index-layout .index_image {
    width: 100%;
  }
  .panel-index-layout .index_image > img {
    width: 100%;
  }
  .panel-index-layout .index_caption {
    padding: 16px 15px 15px;
  }
  .panel-index-layout .index_title {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .panel-index-layout .index_text {
    margin-top: 1em;
  }
  /* v2 */
  .panel-index-layout-v2 {
    margin-top: 2em;
  }
  .panel-index-layout-v2 a {
    display: -webkit-flex;
    display: flex;
    height: 100%;
    border-bottom: 1px solid #b2b2b2;
    background: #f7f7fb;
  }
  .panel-index-layout-v2 .index_caption {
    width: 100%;
    min-width: 58%;
  }
  .panel-index-layout-v2 .index_caption {
    padding: 18px 17px 20px;
  }
  .panel-index-layout-v2 .index_title {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
  }
  #main .panel-index-layout-v2 .index_title + * {
    margin-top: .5em;
  }
  .panel-index-layout-v2 .index_text {
    margin-top: 1em;
  }
  .panel-index-layout-v2 .index_image {
    padding: 16px 16px 16px 0;
  }
  /* v3 */
  .panel-index-layout-v3 {
    margin-top: 2em;
  }
  .panel-index-layout-v3 a {
    height: 100%;
    border-bottom: 1px solid #cccccc;
    background: #ffffff;
  }
  .panel-index-layout-v3 .index_caption {
    width: 100%;
    padding: 15px;
  }
  .panel-index-layout-v3 .index_title {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
  }
  #main .panel-index-layout-v3 .index_title + * {
    margin-top: .5em;
  }
  .panel-index-layout-v3 .index_text {
    margin-top: 1em;
  }
  .panel-index-layout-v3 .index_image {
    padding: 0 1px;
  }
  .panel-index-layout-v3 .index_image > img {
    width: 100%;
  }
  
  /* ----- anc-index-layout ----- */
  .anc-index-layout {
    margin-top: 2em;
  }
  .anc-index-layout .index_visual {
    position: relative;
  }
  .anc-index-layout .index_visual .index_anc {
    position: absolute;
    bottom: -40px;
    left: 50%;
    width: calc(100% - 40px);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .anc-index-layout .index_visual .index_anc > a {
    display: table;
    position: relative;
    width: 100%;
    height: 80px;
    border-bottom: 1px solid #ccc;
    background-color: #363581;
    color: #fff;
  }
  .anc-index-layout .index_visual .index_anc > a::after {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 14px;
    height: 14px;
    margin-top: -10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: "";
  }
  .anc-index-layout .index_visual .index_anc .index_anc_label {
    display: table-cell;
    padding: 10px 45px 10px 20px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: left;
    vertical-align: middle;
    line-height: 1.3;
  }
  .anc-index-layout .index_caption {
    margin-top: 50px;
    padding: 0 20px;
  }
  
  /* ----- activity-index-layout ----- */
  .activity-index-layout {
    margin-top: 2em;
  }
  .activity-index-layout .index_image {
    text-align: center;
  }
  .activity-index-layout .index_caption {
    margin-top: 1em;
  }
  .activity-index-layout .index_caption > *:first-child {
    margin-top: 0 !important;
  }
  .activity-index-layout .index_title {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  .activity-index-layout .index_title .index_title_label {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  .activity-index-layout .index_value {
    margin-top: .5em;
  }
  .activity-index-layout .index_value .index_value_item {
    padding-bottom: 5px;
    border-bottom: 2px solid #000;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
  }
  .activity-index-layout .index_value.type-column .index_value_item + .index_value_item {
    margin-top: .75em;
  }
  .activity-index-layout .index_value .index_value_em {
    display: inline-block;
    position: relative;
    top: 0;
    color: #363581;
    font-size: 3rem;
    vertical-align: bottom;
    line-height: 1;
  }
  
  /* ------------------------------------------------------
   * Component >>> Other
  ------------------------------------------------------ */
  /* ----- hero-layout ----- */
  .hero-layout {
    margin: 2.5em -15px 0;
  }
  .hero-layout .hero_inner {
    margin-top: 1.75em;
    padding: 0 15px;
  }
  .hero-layout .hero_title {
    position: relative;
    padding-bottom: 12px;
    color: #363581;
    font-size: 2.1rem;
    line-height: 1.3;
  }
  .hero-layout .hero_title::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 1px;
    background-color: #363581;
    content: "";
  }
  .hero-layout .hero_caption {
    margin-top: 1.75em;
    padding: 0 15px;
  }
  .hero-layout .hero_caption > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- news-layout ----- */
  .news-layout {
    margin-top: 2em;
  }
  .news-layout .news_article + .news_article {
    margin-top: 1.5em;
  }
  .news-layout .block {
    outline: none;
  }
  .news-layout .news_property {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .news-layout .news_date {
    color: #666;
    font-size: 1.2rem;
  }
  .news-layout .news_icon {
    display: inline-block;
    width: 100px;
    margin-left: 10px;
    border: 1px solid #ccc;
    background-color: #f7f7fb;
    color: #666;
    font-size: 1.2rem;
    line-height: 16px;
    text-align: center;
  }
  .news-layout .news_icon.type-news {
    border-color: #4897ae;
    background-color: #4897ae;
    color: #fff;
  }
  .news-layout .news_icon.type-ir {
    border-color: #605f99;
    background-color: #605f99;
    color: #fff;
  }
  .news-layout .news_icon.type-press_release {
    border-color: #b87a77;
    background-color: #b87a77;
    color: #fff;
  }
  .news-layout .news_icon.type-human_resources {
    border-color: #6593ba;
    background-color: #6593ba;
    color: #fff;
  }
  .news-layout .news_title {
    margin-top: .5em;
  }
  .news-layout .news-more-button {
    width: 100%;
    margin: 1.5em auto 0;
    padding: 0 30px;
  }
  .news-layout .news-more-button a {
    position: relative;
    padding: 12px 40px 12px 22px;
    border: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    font-size: 1.5rem;
    text-align: center;
    text-decoration: none;
  }
  .news-layout .news-more-button a::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    width: 12px;
    height: 12px;
    margin-top: -10px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  
  /* ----- news-icon-list ----- */
  .news-icon-list li {
    display: inline-block;
    width: 100px;
    margin: 0 10px 1em 0;
    border: 1px solid #ccc;
    background-color: #f7f7fb;
    color: #666;
    font-size: 1.2rem;
    line-height: 16px;
    text-align: center;
  }
  .news-icon-list li:last-of-type {
    margin-right: 0;
  }
  .news-icon-list li.type-news {
    border-color: #4897ae;
    background-color: #4897ae;
    color: #fff;
  }
  .news-icon-list li.type-ir {
    border-color: #605f99;
    background-color: #605f99;
    color: #fff;
  }
  .news-icon-list li.type-press_release {
    border-color: #b87a77;
    background-color: #b87a77;
    color: #fff;
  }
  .news-icon-list li.type-human_resources {
    border-color: #6593ba;
    background-color: #6593ba;
    color: #fff;
  }
  
  /* ----- article-layout ----- */
  .article-layout {
  }
  .article-layout .article_time{
    text-align: right;
  }
  .article-layout .article_time + *,
  .article-layout .article_time + section:first-child > [class*="heading-lv"]{
    margin-top: 35px!important;
  }
  .article-layout .editor-contents > *:first-child,
  .article-layout .editor-contents > section:first-child > [class*="heading-lv"] {
    margin-top: 0!important;
  }
  
  /* ----- flow-layout ----- */
  .flow-layout {
    margin-top: 2em;
  }
  .flow-layout > .flow_item {
    position: relative;
  }
  .flow-layout > .flow_item + .flow_item {
    margin-top: 5em;
  }
  .flow-layout > .flow_item + .flow_item::before {
    position: absolute;
    top: -5.25em;
    left: 50%;
    width: 44px;
    height: 44px;
    margin-left: -22px;
    border-top: 1px solid #363581;
    border-right: 1px solid #363581;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    content: "";
  }
  .flow-layout > .flow_item > *:first-child,
  .flow-layout > .flow_item > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- intro-layout ----- */
  .intro-layout {
    margin-top: 2em;
  }
  .intro-layout > .intro_item + .intro_item {
    margin-top: 1.75em;
  }
  .intro-layout > .intro_item .intro_image {
    text-align: center;
  }
  .intro-layout > .intro_item .intro_caption {
    margin-top: 1.25em;
  }
  .intro-layout > .intro_item .intro_caption > *:first-child,
  .intro-layout > .intro_item .intro_caption > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .intro-layout .intro_title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  #main .intro-layout .intro_title + * {
    margin-top: .75em;
  }
  
  /* ----- button-column-layout ----- */
  [class*="button-column-layout"] {
    margin-top: 3.57em;
    background-color: #f7f7fb;
  }
  [class*="button-column-layout"] > .button_title {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  [class*="button-column-layout"] > .button_content {
    margin-top: 1.5em;
  }
  [class*="button-column-layout"] > .button_content > *:first-child {
    margin-top: 0 !important;
  }
  .button-column-layout {
    padding: 20px 15px 10px;
  }
  /* v2 */
  .button-column-layout-v2 {
    padding: 25px 15px;
  }
  
  /* ----- lead-box-layout ----- */
  .lead-box-layout {
    margin: 1.5em 0;
    padding: 15px 10px;
    border: 3px solid #363581;
    background-color: #fff;
  }
  .lead-box-layout > *:first-child {
    margin-top: 0 !important;
  }
  #main .lead-box-layout + * {
    margin-top: 2em;
  }
  .lead-box-layout .lead_text {
    margin-top: 1em;
    color: #363581;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  /* v2 */
  .lead-box-layout-v2 {
    margin: 1.5em 0;
  }
  .lead-box-layout-v2 > *:first-child {
    margin-top: 0 !important;
  }
  #main .lead-box-layout-v2 + * {
    margin-top: 1.5em;
  }
  .lead-box-layout-v2 .lead_icon {
    display: inline-block;
    min-width: 80px;
    margin-bottom: .75em;
    padding: 5px 10px;
    border: 2px solid #363581;
    background-color: #fff;
    color: #363581;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .lead-box-layout-v2 .lead_text {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  
  /* ----- app-layout ----- */
  .app-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 2em;
  }
  .app-layout > .app_item {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    width: calc((100% - 15px) / 2);
    margin: 1em 0 0 15px;
  }
  .app-layout > .app_item:nth-child(-n+2) {
    margin-top: 0;
  }
  .app-layout > .app_item:nth-child(2n+1) {
    margin-left: 0;
  }
  .app-layout .app_banner {
    text-align: center;
  }
  .app-layout .app_qr {
    display: none;
  }
  
  /* ----- table-colum-layout ----- */
  .table-colum-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin-top: 2em;
  }
  .table-colum-layout > .colum_item {
    width: 100%;
  }
  .table-colum-layout > .colum_item.is-emphasis {
    position: relative;
  }
  .table-colum-layout > .colum_item.is-emphasis::after {
    display: block;
    position: absolute;
    top: -3px;
    left: -3px;
    width:  calc(100% + 6px);
    height: calc(100% + 6px);
    border: 3px solid #363581;
    pointer-events: none;
    content: "";
  }
  .table-colum-layout > .colum_item .colum_cell {
    display: table;
    width: 100%;
    padding: 18px 11px;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
  }
  .table-colum-layout > .colum_item .colum_cell.cell-style1 {
    border-bottom: 1px solid #8d8dc1;
    background-color: #7171b2;
    color: #fff;
    font-weight: bold;
  }
  .table-colum-layout > .colum_item + .colum_item .colum_cell.cell-style1 {
    border-left: 1px solid #8d8dc1;
  }
  .table-colum-layout > .colum_item.is-emphasis .colum_cell.cell-style1 {
    border-left: none;
  }
  .table-colum-layout > .colum_item .colum_cell.cell-style2 {
    background-color: #f7f7fb;
    font-weight: bold;
  }
  .table-colum-layout > .colum_item .colum_cell > *:first-child {
    margin-top: 0 !important;
  }
  .table-colum-layout > .colum_item .colum_cell .colum_cell_label {
    display: table-cell;
    text-align: left;
    vertical-align: middle;
  }
  
  /* ----- qa-layout ----- */
  .qa-layout {
    margin-top: 2em;
  }
  .qa-layout .qa_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    float: left;
    width: 72px;
  }
  .qa-layout .qa_heading .qa_heading_label {
    display: -webkit-flex;
    display: flex;
    width: 32px;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 12px 0;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .qa-layout.type-question .qa_heading .qa_heading_label {
    background-color: #7171b2;
    color: #fff;
  }
  .qa-layout.type-answer .qa_heading .qa_heading_label {
    background-color: #ebebfa;
    color: #363581;
  }
  .qa-layout .qa_heading .qa_heading_num {
    display: -webkit-flex;
    display: flex;
    width: 40px;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 12px 0;
    color: #363581;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .qa-layout .qa_deatil {
    min-height: 48px;
    padding-top: 5px;
    overflow: hidden
  }
  .qa-layout .qa_deatil > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- company-info-layout ----- */
  .company-info-layout {
    margin-top: 2em;
    padding: 20px 15px;
    background-color: #f7f7fb;
  }
  .company-info-layout > *:first-child {
    margin-top: 0 !important;
  }
  .company-info-layout .info_column {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .company-info-layout .info_column > .info_item {
    width: 50%;
    padding: 3px 0;
    margin-top: .5em;
  }
  .company-info-layout .info_column > .info_item:nth-child(2n) {
    padding-left: 14px;
    border-left: 1px solid #ccc;
  }
  .company-info-layout .info_column > .info_item:nth-child(2n+1) {
    padding-right: 14px;
  }
  .company-info-layout .info_column > .info_item:nth-child(-n+2) {
    margin-top: 0 !important;
  }
  .company-info-layout .info_column > .info_item .info_key {
    float: left;
    max-width: 75%;
    margin-right: .25em;
    font-weight: bold;
  }
  .company-info-layout .info_column > .info_item .info_key::after {
    content: ": ";
  }
  .company-info-layout .info_column > .info_item .info_value {
    overflow: hidden;
  }
  
  /* ----- report-column-layout ----- */
  .report-column-layout {
    margin-top: 2em;
  }
  .report-column-layout .report_image {
    text-align: center;
  }
  .report-column-layout .report_detail {
    margin-top: 1em;
  }
  .report-column-layout .report_detail > *:first-child {
    margin-top: 0 !important;
  }
  .report-column-layout .report_date {
    margin-top: .5em;
  }
  .report-column-layout .report_date .report_date_label {
    display: inline-block;
    padding: 5px 10px;
    background-color: #f7f7fb;
    color: #666;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1;
  }
  /* v2 */
  .report-column-layout-v2 {
    margin-top: 2em;
  }
  .report-column-layout-v2 .report_image {
    text-align: center;
  }
  .report-column-layout-v2 .report_image img {
    max-width: 50%;
  }
  .report-column-layout-v2 .report_detail {
    margin-top: 1.5em;
  }
  .report-column-layout-v2 .report_detail > *:first-child {
    margin-top: 0 !important;
  }
  .report-column-layout-v2 .report_date {
    margin-top: .5em;
  }
  .report-column-layout-v2 .report_date .report_date_label {
    display: inline-block;
    padding: 5px 10px;
    background-color: #f7f7fb;
    color: #666;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1;
  }
  
  /* ----- theme-layout ----- */
  .theme-layout {
    margin-top: 2em;
    padding: 15px;
    background-color: #f7f7fb;
  }
  .theme-layout .theme_title {
    color: #363581;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
  }
  #main .theme-layout .theme_title + * {
    margin-top: 1em;
  }
  .theme-layout .theme_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: -5px;
    overflow: hidden;
  }
  .theme-layout .theme_list > li {
    width: 45px;
    margin: 0 5px 10px;
    text-align: center;
  }
  
  /* ----- theme-column-layout ----- */
  .theme-column-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-top: 2em;
  }
  .theme-column-layout > .theme_item {
    width: calc((100% - 30px) / 3);
    margin: 1em 0 0 15px;
  }
  .theme-column-layout > .theme_item:nth-child(-n+3) {
    margin-top: 0 !important;
  }
  .theme-column-layout > .theme_item:nth-child(3n+1) {
    margin-left: 0 !important;
  }
  .theme-column-layout .theme_image {
    text-align: center;
  }
  .theme-column-layout .theme_image img {
    max-width: 45px;
  }
  .theme-column-layout .theme_caption {
    margin-top: .5em;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: center;
  }
  
  /* ----- theme-media-layout ----- */
  .theme-media-layout {
    margin-top: 2em;
  }
  .theme-media-layout > .theme_image {
    text-align: center;
  }
  .theme-media-layout > .theme_detail {
    margin-top: 1.25em;
  }
  .theme-media-layout > .theme_detail > *:first-child {
    margin-top: 0 !important;
  }
  .theme-media-layout > .theme_detail > .theme_title {
    margin-top: 1.5rem;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
  }
  #main .theme-media-layout > .theme_detail > .theme_title + * {
    margin-top: 1em;
  }
  
  /* ----- phase-anchor-layout ----- */
  .phase-anchor-layout {
    margin: 2em 0;
    overflow: hidden;
  }
  #main .phase-anchor-layout + * {
    margin-top: 2em;
  }
  .phase-anchor-layout > .anchor_list {
    
  }
  .phase-anchor-layout > .anchor_list > li + li {
    margin-top: .75em;
  }
  .phase-anchor-layout > .anchor_list > li > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    padding: 12px 45px 12px 20px;
    background-color: #363581;
    color: #fff;
  }
  .phase-anchor-layout > .anchor_list > li > a.block::after {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 14px;
    height: 14px;
    margin-top: -7px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    content: "";
  }
  .phase-anchor-layout .anchor_phase {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    display: block;
    color: #7372a7;
    font-size: 2rem;
    margin-right: 15px;
    line-height: 1.3;
    white-space: nowrap;
  }
  .phase-anchor-layout .anchor_phase .anchor_phase_num {
    display: inline-block;
    position: relative;
    top: 0;
    margin-left: 5px;
    font-size: 3rem;
    line-height: 1;
    vertical-align: bottom;
  }
  .phase-anchor-layout .anchor_title {
    width: 100%;
  }
  .phase-anchor-layout .anchor_label {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  
  /* ----- initiative-layout ----- */
  .initiative-layout {
    margin-top: 2em;
  }
  .initiative-layout .initiative_title {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  #main .initiative-layout .initiative_title + * {
    margin-top: 1.25em;
  }
  .initiative-layout .initiative_column {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    font-size: 1.5rem;
  }
  .initiative-layout .initiative_column > .initiative_item {
    display: table;
    width: calc((100% - 15px) / 2);
    margin: 15px 0 0 15px;
  }
  .initiative-layout .initiative_column > .initiative_item:nth-child(2n+1) {
    margin-left: 0 !important;
  }
  .initiative-layout .initiative_column > .initiative_item:nth-child(-n+2) {
    margin-top: 0 !important;
  }
  .initiative-layout .initiative_column > .initiative_item .initiative_box {
    display: table-cell;
    padding: 12px 10px;
    background-color: #ebebfa;
    color: #363581;
    text-align: center;
    vertical-align: middle;
  }
  .initiative-layout .initiative_column > .initiative_item .initiative_box > *:first-child {
    margin-top: 0 !important;
  }
  .initiative-layout .initiative_column > .initiative_item .initiative_box .initiative_box_title {
    font-size: 1.3rem;
    font-weight: bold;
  }
  .initiative-layout .initiative_column > .initiative_item .initiative_box .initiative_box_subtitle {
    font-size: 1.1rem;
  }
  
  /* ----- icon-column-layout ----- */
  .icon-column-layout {
    display: table;
    width: 100%;
    margin-top: 2em;
    table-layout: fixed;
  }
  .icon-column-layout > * {
    display: table-cell;
  }
  .icon-column-layout > .icon_image {
    width: 75px;
    padding-right: 10px;
    text-align: center;
    vertical-align: top;
  }
  .icon-column-layout > .icon_detail {
    text-align: left;
    vertical-align: middle;
  }
  .icon-column-layout > .icon_detail > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- vision-column-layout ----- */
  .vision-column-layout {
    margin-top: 2em;
  }
  .vision-column-layout > .vision_item {
    padding: 20px 15px 25px;
    background-color: #f7f7fb;
  }
  .vision-column-layout > .vision_item + .vision_item {
    margin-top: .75em;
  }
  .vision-column-layout > .vision_item > *:first-child {
    margin-top: 0 !important;
  }
  .vision-column-layout .vision_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .vision-column-layout .vision_heading .vision_heading_num {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 45px;
    margin-right: 10px;
    color: #bdbcd6;
    font-size: 6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .vision-column-layout .vision_heading .vision_title {
    width: 100%;
    color: #363581;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .vision-column-layout .vision_detail {
    margin-top: 1em;
  }
  .vision-column-layout .vision_detail > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- address-layout ----- */
  .address-layout {
    margin-top: 1em;
  }
  
  /* ----- committee-description ----- */
  .committee-layout {
    margin-top: 2em;
  }
  .committee-layout > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- search-form ----- */
  .search-form {
    margin-top: 2em;
  }
  .search-form > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- search-input-widget ----- */
  .search-input-widget {
    margin-top: 2em;
  }
  .search-input-widget > .search_title {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin-bottom: .5em;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  .search-input-widget > .search_input {
    position: relative;
    border-bottom: 1px solid #ccc;
  }
  .search-input-widget .search_text {
    width: 100%;
    height: 50px;
    margin: 0;
    padding: 0 50px 0 10px;
    background: #fff;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-border-radius: 0;
    border-radius: 0;
    outline: none;
  }
  .search-input-widget .search_submit {
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    padding: 0;
    border: none;
    border-radius: 0;
    background-color: #fff;
    background-image: url(/english/common/img/hdr_search_ic01-r2x.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-background-size: 22px 22px;
    background-size: 22px 22px;
    text-indent: -9999em;
    overflow: hidden;
    outline: none;
  }
  
  /* ----- search-sort-layout ----- */
  .search-sort-layout {
    margin-top: 2em;
  }
  .search-sort-layout > .sort_item {
    padding-bottom: 25px;
    border-bottom: 1px solid #ccc;
  }
  .search-sort-layout > .sort_item + .sort_item {
    margin-top: 25px;
  }
  .search-sort-layout > .sort_item > .sort_title {
    margin-bottom: .5em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .search-sort-layout > .sort_item > .sort_detail {
  }
  .search-sort-layout > .sort_item > .sort_detail > *:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- products-process-layout ----- */
  .products-process-layout {
    margin-top: 2em;
    overflow-x: auto;
  }
  .products-process-layout > .process_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    position: relative;
    margin: 0 -2px;
  }
  .products-process-layout > .process_inner::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(99% - 4px);
    height: 10px;
    background-color: #b8b8d8;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    content: "";
  }
  .products-process-layout > .process_inner > .process_item {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    margin: 0 2px;
    padding: 5px 3px;
    background-color: #ebebfa;
    color: #363581;
    text-align: center;
    line-height: 1.3;
    z-index: 1;
  }
  .products-process-layout > .process_inner > .process_item.is-start,
  .products-process-layout > .process_inner > .process_item.is-end {
    background-color: #363581;
    color: #fff;
  }
  .products-process-layout > .process_inner > .process_item.is-end {
    position: relative;
  }
  .products-process-layout > .process_inner > .process_item.is-end:after {
    position: absolute;
    top: 50%;
    left: 0;
    width: 0;
    height: 0;
    margin-top: -5px;
    border-top: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #b8b8d8;
    content: "";
  }
  .products-process-layout .process_box {
    width: 100%;
  }
  .products-process-layout .process_box > *:first-child {
    margin-top: 0 !important;
  }
  .products-process-layout .process_box .process_title {
    font-size: 1.1rem;
    font-weight: bold;
  }
  .products-process-layout .process_box .process_subtitle {
    font-size: 1rem;
    font-weight: bold;
  }
  .products-process-layout .process_box .process_num {
    margin-bottom: 5px;
    color: #b4b4d5;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1;
  }
  .products-process-layout .process_box .process_icon {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .products-process-layout .process_box .process_icon > li {
    width: 15px;
    height: 15px;
    margin: 5px 2px 0;
    padding-top: 2px;
    border-radius: 50%;
    background-color: #7171b2;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  
  /* ----- chart-layout ----- */
  .chart-layout {
    margin-top: 1.5rem;
  }
  .chart-layout .chart_unit {
    margin-bottom: 10px;
    color: #707070;
    font-size: 1.3rem;
  }
  .chart-layout .chart_canvas ~ .chart_unit {
    margin: 5px 0 0;
  }
  .chart-layout .chart_unit .chart_unit_left {
    float: left;
  }
  .chart-layout .chart_unit .chart_unit_right {
    float: right;
  }
  
  /* ----- heading-category ----- */
  .heading-category {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100vw;
    min-height: 144px;
    padding: 0 15px;
  }
  #main .heading-category {
    margin: -25px -15px 30px !important;
  }
  .heading-category.is-form {
    background-image: url(/english/common/img/cmn_hero_bg01-r2x.jpg);
    background-size: cover;
  }
  .heading-category.is-csr {
    background-image: url(/english/common/img/cmn_hero_bg02-r2x.jpg);
    background-size: cover;
  }
  .heading-category.is-company {
    background-image: url(/english/common/img/cmn_hero_bg03-r2x.jpg);
    background-size: cover;
    color: #ffffff;
  }
  .heading-category_inner {
    width: auto;
    margin: 0 0 0 -15px;
    padding: 0 0 0 15px;
  }
  .is-form .heading-category_inner {
    background-color: rgba(255, 255, 255, .8);
  }
  .heading-category_title {
    font-size: 2.4rem;
    font-weight: bold;
  }
  .heading-category.is-csr .heading-category_title {
    color: #ffffff;
  }
  .is-form .heading-category_title {
    margin-left: -15px;
    padding: 15px;
  }
  .heading-category_subtitle {
    font-size: 1.2rem;
  }
  .heading-category_text {
    margin-top: 0.5rem;
    font-size: 1.2rem;
  }
  #main .heading-wrap-video {
    margin: -25px 0 20px !important;
  }
  #main .pageHead .heading-wrap-video {
    margin: -30px 0 20px !important;
  }
  #main .heading-wrap-video .heading-category.is-company {
    margin: 0 -15px!important;
  }
  .heading-wrap-video .is-company + .heading-category_video {
    margin-top: 20px;
  }
  .heading-wrap-video .is-company + .heading-category_video > .youtube-set {
    margin-top: 0!important;
  }
  
  /* ----- noteBox-layout ----- */
  .noteBox-layout {
    margin-top: 30px;
    padding: 20px;
    width: auto;
    border: 1px solid #ff3333;
    background-color: #fff0f0;
  }
  .noteBox_title {
    margin: -20px -20px 20px;
    padding: 15px;
    background-color: #fff;
    font-size: 1.8rem;
    color: #f33;
    font-weight: bold;
    text-align: center;
  }
  .noteBox_title span {
    vertical-align: middle;
  }
  .noteBox_title:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    width: 19px;
    height: 18px;
    background: url(/english/common/img/cmn_caution_ic02-r2x.png) 0 0 no-repeat;
    background-size: contain;
  }
  
  /* ----- index-hr ----- */
  .index-hr {
    margin: 50px -15px;
    display: block;
    border-top: 1px solid #cccccc;
  }
  
  /* ----- plugin-layout ----- */
  .plugin-layout {
    margin-top: 1.5em;
    padding: 15px;
    border: 1px solid #dddddd;
  }
  .plugin-layout .plugin_banner {
    width: 134px;
  }
  .plugin-layout .plugin_detail {
    margin-top: 1em;
    font-size: 1.3rem;
  }
  
  /* ----- modal ----- */
  #cboxContent {
    background: #ffffff;
  }
  #cboxClose {
    display: block;
    position: absolute;
    top: 10px;
    right: 7px;
    width: 13px;
    height: 13px;
    background: url(/english/common/img/cmn_link_modal_ic04-r2x.png) no-repeat top center;
    background-size: cover;
    text-indent: -9999px;
  }
  #cboxLoadedContent {
    border: 5px solid #ffffff;
    padding: 30px 10px 10px;
  }
  a.table_modalLink {
    position: relative;
    display: block;
    font-weight: bold;
    color: #3860c3;
    padding: 0 15px 0 0;
    font-size: 1.3rem;
  }
  a.table_modalLink:before {
    position: absolute;
    z-index: 2;
    right: 0;
    content: "";
    display: block;
    top: calc(50% - 7px);
    width: 14px;
    height: 14px;
    background: url(/english/common/img/cmn_link_modal_ic01-r2x.png) 0 0 no-repeat;
    background-size: contain;
  }
  .modal-wrap--inline {
    display: none;
  }
  .modal-content > *:first-child {
    margin-top: 0 !important;
  }
  .a-close:after {
    position: static;
    margin-top: -2px;
    margin-left: 10px;
    vertical-align: middle;
    display: inline-block;
    content: "";
    background: url(/english/common/img/cmn_link_modal_ic02-r2x.png) 0 0 no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
  }
  /* ----- map-layout ----- */
  .map-layout {
    display: block;
    width: 100%;
    margin-top: 1.5em;
    height: 280px;
  }
  .map-layout > iframe {
    width: 100%;
    height: 100%;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .column-media[data-layout-sp="row"]::after,
  .company-info-layout .info_column > .info_item::after,
  .chart-layout .chart_unit::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * Media Queries
====================================================== */
/***
@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: 480px) {
}
@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) {
}
***/