@charset "utf-8";

/* ======================================================
 * parts_pc.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Element >>> Heading
 * - Element >>> Text
 * - Element >>> List
 * - Element >>> Link
 * - Element >>> Image
 * - Element >>> Video
 * - Element >>> Form
 * - Element >>> Other
 * - Layout >>> Column
 * - Layout >>> Table
 * - Layout >>> Box
 * - Layout >>> Other
 * - Component >>> Navi
 * - Component >>> Index
 * - Component >>> Other
 * - Clearfix
 * Media Queries
 * Print
====================================================== */

@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- font ----- */

  /* ----- a ----- */
  a:link img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  a.block {
    display: block;
  }

  /* ----- opacity ----- */
  .link-inline:hover,
  .link-text > li > a:hover,
  .navi-anchor .navi_inner > li > a:hover,
  .navi-anchor-v2 .navi_inner-v2 > li > a:hover,
  [class*="news-layout"] a:hover .news_thumbnail,
  [class*="news-layout"] a:hover .news_title,
  .plugin-layout a:hover .a-blank {
    opacity: .6;
  }

  /* ----- transition ----- */

  /* ----- sprite ----- */
  .a-blank::after,
  .a-pdf::after,
  .a-print::after,
  .a-mail::after,
  .a-excel::after,
  .a-word::after,
  .a-ppt::after,
  .a-rss::after,
  .a-zip::after,
  .a-csv::after,
  .a-video::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  [class*="news-layout"] .a-blank .news_title::after,
  [class*="news-layout"] .a-pdf .news_title::after,
  .plugin-layout a .a-blank::after {
    background: url(/common/img/com_sprite01.png) no-repeat;
    vertical-align: top;
    content: "";
  }
  .a-blank::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="news-layout"] .a-blank .news_title::after,
  .plugin-layout a .a-blank::after { width: 14px; height: 14px; background-position: 0 0; }
  .a-pdf::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  [class*="news-layout"] .a-pdf .news_title::after { width: 14px; height: 14px; background-position: -14px 0; }
  .a-print::after { width: 16px; height: 14px; background-position: -103px 0; }
  .a-mail::after { width: 14px; height: 12px; background-position: -160px 0; }
  .a-excel::after { width: 17px; height: 17px; background-position: -30px 0; }
  .a-word::after { width: 17px; height: 17px; background-position: -49px 0; }
  .a-ppt::after { width: 17px; height: 17px; background-position: -68px 0; }
  .a-rss::after { width: 14px; height: 14px; background-position: -120px -40px; }
  .a-zip::after { width: 13px; height: 13px; background-position: -87px 0; }
  .a-csv::after { width: 18px; height: 19px; background-position: -180px 0; }
  .a-video::after { width: 16px; height: 13px; background-position: -200px -40px; }
  [class*="heading-lv"] .a-blank::after,
  [class*="heading-lv"] .a-pdf::after,
  [class*="news-layout"] .a-blank::after,
  [class*="news-layout"] .a-pdf::after {
    display: none;
  }
  .link-inline.a-blank::after,
  .link-inline.a-pdf::after {
    display: inline-block;
    margin: .45em 8px 0 8px;
  }
  .link-text > li > .a-blank::after,
  .link-text > li > .a-pdf::after,
  .link-text > li > .a-print::after,
  .link-text > li > .a-mail::after,
  .link-text > li > .a-excel::after,
  .link-text > li > .a-word::after,
  .link-text > li > .a-ppt::after,
  .link-text > li > .a-rss::after,
  .link-text > li > .a-zip::after,
  .link-text > li > .a-video::after {
    display: inline-block;
    margin: .45em 0 0 10px;
  }
  .link-text > li > .a-csv::after {
    display: inline-block;
    margin: .25em 0 0 10px;
  }
  .link-button > li > .a-blank::after,
  .link-button > li > .a-pdf::after,
  .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-csv::after,
  .link-button > li > .a-print::after,
  [class*="link-button-v"] > li > .a-blank::after,
  [class*="link-button-v"] > li > .a-pdf::after,
  [class*="link-button-v"] > li > .a-excel::after,
  [class*="link-button-v"] > li > .a-word::after,
  [class*="link-button-v"] > li > .a-ppt::after,
  [class*="link-button-v"] > li > .a-zip::after,
  [class*="link-button-v"] > li > .a-csv::after,
  [class*="link-button-v"] > li > .a-print::after {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -7px;
  }
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after {
    display: inline-block;
    margin: .4em 0 0 15px;
  }
  [class*="news-layout"] .a-blank .news_title::after,
  [class*="news-layout"] .a-pdf .news_title::after {
    display: inline-block;
    margin: .25em 0 0 12px;
  }
  .plugin-layout a .a-blank::after {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: .3em 9px 0 9px;
  }
  .research_item .item_heading .a-pdf .item_heading_title::after {
    display: inline-block;
    background: url(/common/img/com_sprite01.png) no-repeat;
    vertical-align: middle;
    content: "";
    width: 14px;
    height: 14px;
    background-position: -14px 0;
  }

  /* ----- data-row-pc ----- */
  [data-row-pc]:not([data-row-pc="1"]) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  [data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-top: 1.25em;
    margin-left: 36px;
  }
  .index-layout-v8[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-top: 2em;
  }
  [data-row-pc="2"] > *:nth-child(-n+2),
  [data-row-pc="3"] > *:nth-child(-n+3),
  [data-row-pc="4"] > *:nth-child(-n+4),
  [data-row-pc="5"] > *:nth-child(-n+5),
  [data-row-pc="6"] > *:nth-child(-n+6) {
    margin-top: 0 !important;
  }
  [data-row-pc="1"] > *,
  [data-row-pc="2"] > *:nth-child(2n+1),
  [data-row-pc="3"] > *:nth-child(3n+1),
  [data-row-pc="4"] > *:nth-child(4n+1),
  [data-row-pc="5"] > *:nth-child(5n+1),
  [data-row-pc="6"] > *:nth-child(6n+1) {
    margin-left: 0 !important;
  }
  [data-row-pc="2"] > * { width: calc((100% -  36px) / 2); }
  [data-row-pc="3"] > * { width: calc((100% -  72px) / 3); }
  [data-row-pc="4"] > * { width: calc((100% - 108px) / 4); }
  [data-row-pc="5"] > * { width: calc((100% - 144px) / 5); }
  [data-row-pc="6"] > * { width: calc((100% - 180px) / 6); }
  [data-row-pc="auto"] {
    margin-right: -36px;
    margin-bottom: -.5em;
  }
  [data-row-pc="auto"] > * {
    margin-top: 0 !important;
    margin-right: 36px;
    margin-bottom: .5em;
    margin-left: 0;
  }
  .link-text[data-row-pc="auto"] {
    margin-right: -60px;
    margin-bottom: -.5em;
  }
  .link-text[data-row-pc="auto"] > li {
    margin-right: 60px;
    margin-bottom: .5em;
  }

  /* ------------------------------------------------------
   * Element >>> Heading
  ------------------------------------------------------ */
  [class^="heading-lv"] .heading_title {
    line-height: 1.5;
  }
  [class^="heading-lv"] .heading_title[class*="js-equalHeight_"] {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  [class^="heading-lv"] .heading_type {
    margin-top: 0.5em;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    display: inline-block;
  }
  [class^="heading-lv"] .heading_type::after {
   content: "　";
  }
  [class*="heading-lv"] a:link .heading_title {
  }
  #main .heading-lv1 + *,
  #main .heading-lv1 + section > [class*="heading-lv"]:first-child {
    margin-top: 2.5em;
  }
  #main .heading-lv2 + * {
    margin-top: 1.9em;
  }
  #main .heading-lv3 + *,
  #main .heading-lv4 + * {
    margin-top: 1.25em;
  }
  #main .heading-lv5 + * {
    margin-top: .95em;
  }

  /* ----- pageHead ----- */

  .pageHead {
    background-color: #008574;
  }
  .pageHead > [class^="heading-lv"] {
    max-width: 1200px;
    margin: 0 auto;
  }
  .pageHead.heading-bg_movement {
    background: url("/common/img/heading_bg_movement.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_research {
    background: url("/common/img/heading_bg_research.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_about {
    background: url("/common/img/heading_bg_about.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_seminar {
    background: url("/common/img/heading_bg_seminar.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_book {
    background: url("/common/img/heading_bg_book.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_consulting {
    background: url("/common/img/heading_bg_consulting.jpg") no-repeat 0 32%;
    background-size: cover;
  }
  .pageHead.heading-bg_diary {
    background: url("/common/img/heading_bg_diary.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_voice {
    background: url("/common/img/heading_bg_voice.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_news {
    background: url("/common/img/heading_bg_news.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_mailmag {
    background: url("/common/img/heading_bg_mailmag_pc.jpg") no-repeat 0 0;
    background-size: cover;
  }
  .pageHead.heading-bg_training_cruises {
    background: url("/common/img/heading_bg_training_cruises.jpg") no-repeat 0 0;
    background-size: cover;
  }
  /* ----- heading-lv1 ----- */
  .pageHead > .heading-lv1 {
    display: flex;
    align-items: flex-end;
    padding: 50px 0;
  }
  .heading-lv1 > .block {
    flex-grow: 1;
  }
  .heading-lv1 .heading_title {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
  }
  .heading-lv1 .heading_subtitle {
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .heading-lv1 .heading_date {
    color: #fff;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .heading-lv1 .icon_news_wrap {
    /*display: flex;*/
    width: 100%;
    margin-bottom: 20px;
  }
  .heading-lv1 .icon_news_wrap .news_icon {
    float: left;
    margin-right: 10px;
    border: 1px solid #fff;
   width: 150px;
  }
  .heading-lv1 .icon_news_wrap.typeWhite{
    flex-wrap: wrap
  }
  .icon_news_wrap.typeWhite .news_icon{
    margin-bottom: 0.5em;
    padding: 0 10px;
    align-self: flex-start;
    width: auto;
    color: #333;
    background-color: #fff;
  }
  .heading-lv1 .heading_title > .title_subText{
    font-size: 1.8rem;
  }
  /* ----- heading-lv1 ----- */
  .pageHead > .heading-lv1-v2 {
    display: flex;
    align-items: flex-end;
    padding: 45px 0;
  }
  .heading-lv1-v2 > .block {
  }
  .heading-lv1-v2 .heading_title {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
  }
  .heading-lv1-v2 .heading_subtitle {
    margin-top: 0.5em;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .heading-lv1-v2 .heading_date {
    color: #fff;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .heading-lv1-v2 .icon_news_wrap {
    display: flex;
    flex-flow: wrap;
    width: 100%;
    flex-wrap: wrap;
    margin-bottom: 20px;
    margin-top: -5px;
  }
  .heading-lv1-v2 .icon_news_wrap [class*="news_icon"] {
    width: auto;
    font-size: 1.3rem;
    color: #333;
    margin-top: 5px;
    padding: 0 13px;
    margin-right: 10px;
    background-color: #eee;
    white-space: nowrap;
  }

  /* ----- heading-lv1-bg ----- */
  .heading-lv1-bg {
    display: flex;
    align-items: center;
    padding: 40px 0 20px;
    min-height: 190px;
  }
  [data-browser="ie11"] .heading-lv1-bg {
   height: 260px;
  }
  [data-browser="ie11"] .heading-bg_saiyo .heading-lv1-bg {
   height: auto;
  }
  .heading-lv1-bg > .block {
    position: relative;
    width: 100%;
    padding: 0 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
  }
  .heading-lv1-bg > .block::after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    display: block;
    width: 84px;
    height: 2px;
    background-color: #fff;
  }
  .heading-lv1-bg .heading_title {
    max-width: 100%;
    display: inline-block;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
  }
  .heading-lv1-bg .heading_subtitle {
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .heading-lv1-bg .heading_date {
    color: #fff;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .heading-lv1-bg .icon_news_wrap {
    display: flex;
    margin-bottom: 20px;
  }
  .heading-lv1-bg .icon_news_wrap [class*="news_icon"] {
    width: auto;
    font-size: 1.3rem;
    color: #333;
    padding: 0 13px;
    margin: 0 5px;
    background-color: #eee;
    white-space: nowrap;
  }

  /* ----- heading-lv1-v2-bg ----- */
  .heading-lv1-v2-bg--wrap {
    background-color: #999;
  }
  .heading-lv1-v2-bg {
    display: flex;
    align-items: center;
    margin: 0 auto;
    max-width: 1200px;
    padding: 40px 0 20px;
    min-height: 190px;
  }
  .heading-lv1-v2-bg > .block {
    position: relative;
    width: 100%;
    padding: 0 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
  }
  .heading-lv1-v2-bg > .block::after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    display: block;
    width: 84px;
    height: 2px;
    background-color: #fff;
  }
  .heading-lv1-v2-bg .heading_title {
    max-width: 100%;
    display: inline-block;
    font-size: 3rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    color: #fff;
  }
  .heading-lv1-v2-bg .heading_subtitle {
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
  }

  /* ----- heading-lv1-seminar ----- */
  .heading-lv1-seminar {
    padding: 50px 0 40px;
  }
  .heading-lv1-seminar > .block {
    position: relative;
    width: 100%;
    padding: 0 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
  }
  .heading-lv1-seminar > .block::after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    display: block;
    width: 84px;
    height: 2px;
    background-color: #fff;
  }
  .heading-lv1-seminar .heading_title {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
  }
  .heading-lv1-seminar .heading_subtitle {
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .heading-lv1-seminar .heading_date {
    color: #fff;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .heading-lv1-seminar .icon_news_wrap {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin-bottom: 20px;
    margin-top: -5px;
  }
  .heading-lv1-seminar .icon_news_wrap [class*="news_icon"] {
    width: auto;
    font-size: 1.3rem;
    color: #333;
    padding: 0 13px;
    margin: 5px 5px 0;
    background-color: #eee;
    white-space: nowrap;
  }

  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    margin: 3.75em 0 30px;
  }
  .heading-lv2 .block {
    display: block;
    padding: 0 0 10px 0;
    color: #333;
    border-bottom: 2px solid #333;
  }
  .heading-lv2 .sort-block {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 100%;
  }
  .heading-lv2 a.block:hover {
    color: #53a700;
    text-decoration: none;
  }
  .heading-lv2 .heading_title {
    position: relative;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv2 .heading_subtitle {
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv2 .heading_subtext {
    font-size: 1.6rem;
    padding-left: 10px;
  }
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    margin: 2.5em 0 20px;
  }
  .heading-lv3 .block {
    position: relative;
    display: block;
    padding: 0 0 0 18px;
    border-left: 2px solid #008574;
    text-decoration: none;
    color: #333;
  }
  .heading-lv3 a.block:hover {
    color: #53a700;
    text-decoration: none;
  }
  .heading-lv3 .heading_title {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv3 .heading_subtitle {
    font-weight: bold;
    font-size: 1.4rem;
  }
  .heading-lv3 a:hover .heading_title {
    text-decoration: underline;
  }

  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 2.5em 0 1.25em;
  }
  .heading-lv4 .heading_title {
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    color: #008574;
  }
  .heading-lv4 a.block:hover .heading_title {
    color: #53a700;
    text-decoration: underline;
  }

  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 1.9em 0 .95em;
  }
  .heading-lv5 .heading_title {
    position: relative;
    padding-left: 26px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv5 .heading_title::before {
    position: absolute;
    top: .45em;
    left: 0;
    width: 10px;
    height: 10px;
    border: 2px solid #555;
    content: "";
  }
  .heading-lv5-v2 {
    margin-bottom: 5px;
  }
  .heading-lv5-v2 .heading_title {
    position: relative;
    padding-left: 15px;
    line-height: 1.5;
  }
  .heading-lv5-v2 .heading_title::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #008574;
    content: "";
  }
  /* ----- heading-lv6 ----- */
  .heading-lv6 {
    margin: 2em 0 0;
  }
  .heading-lv6 .heading_title {
    font-weight: bold;
    line-height: 1.5;
  }

  /* ----- heading-pos ----- */
  [class^="heading-lv"] .block.heading-pos {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  [class^="heading-lv"] .block.heading-pos > .heading-item {
    margin-top: 0;
  }
  /* ----- heading-link ----- */
  .heading-link.gp-mt-ver02 {
    margin: 3.75em 0 30px;
  }
  .heading-link {
    display: block;
    padding: 0 0 10px 0;
    color: #333;
    border-bottom: 2px solid #666;
  }
  .heading-link a.block:hover {
    color: #53a700;
    text-decoration: none;
  }
  .heading-link .heading_title {
    position: relative;
    display: inline-block;
    padding-right: 25px;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-link .heading_title::after {
    position: absolute;
    content: "";
    top: 0.5em;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008574;
  }

  /* ------------------------------------------------------
   * Element >>> Text
  ------------------------------------------------------ */
  /* ----- 通常テキスト(TX-1) ----- */
  p{
    font-size: 1.9rem;
  }
  /* ----- text-paragraph ----- */
  .text-paragraph {
    margin-top: 1em;
  }
  .text-paragraph-v2 {
    margin-top: 1.5em;
  }
  .text-paragraph-v3 {
    margin-top: 2em;
  }
  .text-paragraph-v4 {
    margin-top: 3.75em;
  }
  /* ----- text-note ----- */
  .text-note {
    font-size: 1.4rem;
  }
  .text-note-v2   {
    font-size: 1.2rem;
  }

  /* ----- f-highlight-v2 ----- */
  .f-highlight-v2 {
    font-weight: bold;
    color: #008574;
  }

  /* ----- text-lead ----- */
  .text-lead {
    margin: 1em 0 .75em;
    font-size: 2.2rem;
    font-weight: bold;
    color: #008574;
    line-height: 1.6363;
  }
  /* ----- text-lead-v2 ----- */
  .text-lead-v2 {
    margin: 1em 0 .75em;
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
    line-height: 1.6363;
  }
  /* ----- text-lead-v2 ----- */
  .text-lead-v3 {
    margin: 1em 0 .75em;
    font-size: 2.2rem;
    font-weight: bold;
    color: #333;
    line-height: 1.6363;
  }
  /* ----- text-title ----- */
  .text-title {
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    color: #008574;
  }
  /* ----- text-filesize ----- */
  .text-filesize {
    font-size: 75%;
  }
  /* ------------------------------------------------------
   * Element >>> List
  ------------------------------------------------------ */
  [class*="list-note"],
  [class*="list-bullet"],
  [class*="list-order"],
  [class*="list-check"] {
    margin-top: 1em;
  }
  [class*="list-description"] {
    margin-top: 1.5em;
  }
  [class*="list-note"] > li + li,
  [class*="list-bullet"] > li + li,
  [class*="list-order"] > li + li,
  [class*="list-check"] > 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,
  [class*="list-check"] > 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-check"] > li > .list_detail > *:first-child,
  [class*="list-check"] > 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;
  }
  [class*="list-note"].wide > li + li,
  [class*="list-bullet"].wide > li + li,
  [class*="list-order"].wide > li + li,
  [class*="list-check"].wide > li + li {
    margin-top: 1em;
  }

  /* ----- 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: 1.2em;
    font-size: 1.7rem;
    color: #666;
  }
  .list-note > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note.list_note_al_center {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .list-note-v2 > li {
    position: relative;
    padding-left: 2.7em;
    font-size: 1.9rem;
    color: #666;
  }
  .list-note-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }

  /* ----- list-note-order ----- */
  .list-note-order > li {
    position: relative;
    padding-left: 3em;
    font-size: 1.4rem;
  }
  .list-note-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note-order > li > .list_mark::after {
    content: ".";
  }

  /* ----- list-bullet ----- */
  .list-bullet > li {
    position: relative;
    padding-left: 20px;
    font-size: 1.9rem;
  }

  .list-bullet > li::before {
    position: absolute;
    top: .7em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #008574;
    content: "";
  }
  /* v2 */
  .list-bullet-v2 > li {
    position: relative;
    padding-left: 16px;
    font-size: 1.7rem;
  }
  .list-bullet-v2 > li::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }

  /* ----- list-order ----- */
  .list-order > li {
    position: relative;
    padding-left: 2em;
    font-size: 1.9rem;
  }
  .list-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-order > li > .list_mark_heading {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .list-order > li > .list_text_heading {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.5;
  }
  /* v2 */
  .list-order-v2 > li {
    position: relative;
    padding-left: 3em;
    font-size: 1.9rem;
  }
  .list-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }

  /* ----- list-description ----- */
  .list-description > dt {
    margin: 1em 0 0;
    font-size: 1.9rem;
    font-weight: bold;
    color: #008574;
  }
  .list-description > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description > .list-description_dt {
    margin: 1em 0 0;
    font-size: 1.6rem;
    font-weight: bold;
    color: #008574;
  }
  .list-description > dd {
    font-size: 1.9rem;
  }

  [class^="list-description-v"] > * {
    font-size: 1.5rem;
  }
  /* ----- list-description-v2 ----- */
  .list-description-v2 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 0;
  }
  .list-description-v2 > dt {
    width: 31%;
    margin-right: 2%;
    font-weight: bold;
  }
  .list-description-v2 > dd {
    width: 67%;
  }
  /* ----- list-description-v3 ----- */
  .list-description-v3 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 0;
  }
  .list-description-v3 > dt {
    width: 42%;
    margin-right: 2%;
    font-weight: bold;
  }
  .list-description-v3 > dd {
    width: 56%;
  }
  /* ----- list-description-v4 ----- */
  .list-description-v4 {
    display: -webkit-flex;
    display: flex;
    margin-top: 0;
  }
  .list-description-v4 > dt {
    margin-right: 2em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    color: #008574;
  }
  .list-description-v4 > dd {
  }
  .list-description-inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .list-description-inner > li {
    position: relative;
  }
  .list-description-inner > li + li {
    margin-left: 0.5em;
  }
  .list-description-inner > li + li::before {
    content: "／";
    margin-right: 0.5em;
    vertical-align: middle;
  }
  /* ----- list-description-v5 ----- */
  .list-description-v5 {
    display: -webkit-flex;
    display: flex;
    margin-top: 0.5em;
  }
  .list-description-v5 > dt {
    min-width: 47px;
    margin-right: 2em;
  }
  /* ----- list-description-v7 ----- */
  .list-description-v7 > dt {
    margin: 1em 0 0;
    font-size: 1.4rem;
    font-weight: bold;
    color: #008574;
  }
  .list-description-v7 > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description-v7 > dd {
  }

  /* ----- list-check ----- */
  [class*="list-check"] > li {
    position: relative;
    padding-left: 40px;
    min-height: 30px;
  }
  .list-check > li {
    font-size: 1.9rem;
  }
  .list-check-v2 > li {
    font-weight: bold;
  }
  .list-check-v2 > li + li {
    margin-top: .5em;
  }
  [class*="list-check"] > li::before {
    position: absolute;
    top: -0.2em;
    left: 0;
    width: 30px;
    height: 30px;
    content: "";
    display: block;
    background: url("/common/img/com_sprite01.png") no-repeat -180px -130px;
  }
  .list-check > li::before {
    top: 0;
  }
  /* ----- notice-list ----- */
  .notice-list {
    margin: 1em 0 0;
  }
  .notice-list > dt {
    font-weight: bold;
  }
  .notice-list > dd {
    margin-top: 0.5em;
  }

  /* ------------------------------------------------------
   * Element >>> Link
  ------------------------------------------------------ */
  [class*="link-text"] {
    margin-top: 1em;
  }
  [class*="link-text"].gp-mt-ver02 {
    margin-top: 2em;
  }
  [class*="link-text"] > li + li {
    margin-top: .5em;
  }
  [class*="link-text"] > li > a:hover {
    text-decoration: underline;
  }
  [class*="link-button"] {
    margin-top: 1.5em;
  }
  [class*="link-button"] > li + li {
    margin-top: 1em;
  }
  [class*="link-button"] a {
    line-height: 1.5;
  }
  [class*="link-button"].gp-al-center {
    margin-top: 2em;
  }
  [class*="link-button"].is-centering {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 2em;
  }
  [class*="link-button"].is-centering > li {
    display: -webkit-flex;
    display: flex;
  }
  [class*="link-button"].is-centering > li + li {
    margin-top: 0;
    margin-left: 36px;
  }
  [class*="link-button"][data-row-pc] > li {
    display: -webkit-flex;
    display: flex;
  }
  [class*="link-button"][data-row-pc] > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    min-width: 0;
  }
  [class*="link-button"] > li > a[class*="js-equalHeight_"] {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  [class*="link-"].is-nest {
    margin: .5em 0 1em;
  }

  /* ----- link-inline ----- */
  a.link-inline {
  }
  a.link-inline:hover {
  }

  /* ----- link-text ----- */
  .link-text > li{
    font-size: 1.9rem;
  }
  .link-text > li > .not {
    position: relative;
    padding-left: 20px;
  }
  .link-text > li > .not::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #008574;
    content: "";
  }
  .link-text > li > a,
  .link-text > li > span.block {
    display: inline-block;
    position: relative;
    padding-left: 18px;
  }
  .link-text > li > a::before,
  .link-text > li > span.block::before {
    position: absolute;
    top: .5em;
    left: 1px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }

  /* ----- link-button ----- */
  .link-button > li > a {
    display: inline-block;
    position: relative;
    margin-bottom: 4px;
    min-width: 273px;
    border: 1px solid #bbb;
    border-radius: 42px;
    box-shadow: 0px 2px 0px 0px rgba(221, 221, 221, 1);
    background-color: #fff;
    font-weight: bold;
    color: #333;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .link-button > li > a > .button_inner {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding: 17px 35px 17px 45px;
    border-radius: 40px;
  }
  .link-button > li > a:hover {
    color: #fff;
    border: 1px solid #ddd;
    box-shadow: none;
    transform: translate3d(0, 2px, 0);
  }
  .link-button > li > a:hover > .button_inner {
    background-color: #53a700;
  }
  .link-button .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  .link-button > li > a::before {
    position: absolute;
    top: 50%;
    left: 30px;
    margin-top: -5px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .link-button > li > a:hover::before {
    left: 30px;
    border-color: transparent transparent transparent #fff;
  }
  .link-button > li > .a-blank > .button_inner,
  .link-button > li > .a-pdf > .button_inner,
  .link-button > li > .a-excel > .button_inner,
  .link-button > li > .a-word > .button_inner,
  .link-button > li > .a-ppt > .button_inner,
  .link-button > li > .a-zip > .button_inner,
  .link-button > li > .a-csv > .button_inner,
  .link-button > li > .a-print > .button_inner {
    padding-right: 42px;
  }
  /* ----- link-button-v2 ----- */
  .link-button-v2 > li > a {
    display: inline-block;
    position: relative;
    margin-bottom: 4px;
    border: 1px solid #e96300;
    border-radius: 50px;
    box-shadow: 0px 4px 0px 0px rgba(178, 76, 0, 1);
    background-color: #e96300;
    font-weight: bold;
    color: #fff;
    line-height: 1.5;
    font-size: 2.2rem;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .link-button-v2 > li > a > .button_inner {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    border: 1px solid #e96300;
    padding: 17px 52px 17px 62px;
    border-radius: 48px;
  }
  .link-button-v2 > li > a:hover {
    border: 1px solid #e96300;
    color: #e96300;
    box-shadow: none;
    transform: translate3d(0, 4px, 0);
  }
  .link-button-v2 > li > a:hover > .button_inner {
    border: 1px solid #e96300;
    background-color: #fff;
  }
  .link-button-v2 .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  .link-button-v2 > li > a::before {
    position: absolute;
    top: 50%;
    left: 32px;
    margin-top: -5px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #fff;
    content: "";
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .link-button-v2 > li > a:hover::before {
    left: 32px;
    border-color: transparent transparent transparent #e96300;
  }
  .link-button-v2 > li > .a-blank > .button_inner,
  .link-button-v2 > li > .a-pdf > .button_inner,
  .link-button-v2 > li > .a-excel > .button_inner,
  .link-button-v2 > li > .a-word > .button_inner,
  .link-button-v2 > li > .a-ppt > .button_inner,
  .link-button-v2 > li > .a-zip > .button_inner,
  .link-button-v2 > li > .a-csv > .button_inner,
  .link-button-v2 > li > .a-print > .button_inner {
    padding-right: 62px;
  }
  .link-button-v2 > li > .a-seminar > .button_inner {
    min-width: 581px;
  }
  .link-button-v2 > li > .a-seminar > .button_inner > .link_label {
    position: relative;
    padding-left: 55px;
  }
  .link-button-v2 > li > .a-seminar > .button_inner > .link_label::before {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -15px;
    content: "";
    display: block;
    width: 36px;
    height: 33px;
    background: url("/common/img/com_sprite01.png") no-repeat 0 -33px;
  }
  .link-button-v2 > li > .a-seminar:hover > .button_inner > .link_label::before {
    background: url("/common/img/com_sprite01.png") no-repeat -130px -33px;
  }
  /* ----- link-button-v3 ----- */
  .link-button-v3 > li > a {
    display: inline-block;
    position: relative;
    margin-bottom: 4px;
    min-width: 376px;
    border: 1px solid #008574;
    border-radius: 42px;
    box-shadow: 0px 4px 0px 0px rgba(0, 95, 83, 1);
    background-color: #008574;
    font-weight: bold;
    color: #fff;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .link-button-v3 > li > a > .button_inner {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding: 17px 35px 17px 45px;
    border: 1px solid #008574;
    border-radius: 40px;
  }
  .link-button-v3 > li > a:hover {
    color: #008574;
    border: 1px solid #008574;
    box-shadow: none;
    transform: translate3d(0, 4px, 0);
  }
  .link-button-v3 > li > a:hover > .button_inner {
    background-color: #fff;
    border: 1px solid #008574;
  }
  .link-button-v3 .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  .link-button-v3 > li > a::before {
    position: absolute;
    top: 50%;
    left: 30px;
    margin-top: -5px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #fff;
    content: "";
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .link-button-v3 > li > a:hover::before {
    left: 30px;
    border-color: transparent transparent transparent #008574;
  }
  .link-button-v3 > li > .a-blank > .button_inner,
  .link-button-v3 > li > .a-pdf > .button_inner,
  .link-button-v3 > li > .a-excel > .button_inner,
  .link-button-v3 > li > .a-word > .button_inner,
  .link-button-v3 > li > .a-ppt > .button_inner,
  .link-button-v3 > li > .a-zip > .button_inner,
  .link-button-v3 > li > .a-csv > .button_inner,
  .link-button-v3 > li > .a-print > .button_inner {
    padding-right: 42px;
  }
  /* ----- cv-button ----- */
  .cv-button {
    margin-top: 20px;
  }
  .cv-button > li > a {
    display: inline-block;
    position: relative;
    min-width: 376px;
    border: 1px solid #008574;
    border-radius: 42px;
    box-shadow: 0px 4px 0px 0px rgba(0, 95, 83, 1);
    background-color: #008574;
    font-weight: bold;
    color: #fff;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .cv-button > li > a.a-blank::after {
    position: absolute;
    background-position: -120px 0;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
  }
  .cv-button > li > a.a-pdf::after {
    position: absolute;
    background-position: -14px 0;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
  }
  .cv-button > li > a > .button_inner {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding: 17px 35px 17px 45px;
    border: 1px solid #008574;
    border-radius: 40px;
  }
  .cv-button > li > a:hover {
    color: #008574;
    border: 1px solid #008574;
    box-shadow: none;
    transform: translate3d(0, 4px, 0);
  }
  .cv-button > li > a:hover > .button_inner {
    background-color: #fff;
    border: 1px solid #008574;
  }
  .cv-button .link_label {
    display: inline-block;
    line-height: 1.5;
  }
  .cv-button > li > a::before {
    position: absolute;
    top: 50%;
    left: 30px;
    margin-top: -5px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #fff;
    content: "";
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .cv-button > li > a:hover::before {
    left: 30px;
    border-color: transparent transparent transparent #008574;
  }
  .cv-button-v2 {
    margin-top: 25px;
  }
  .cv-button-v2 > li > a {
    display: inline-block;
    position: relative;
    width: 100%;
    border: 1px solid #e96300;
    border-radius: 42px;
    box-shadow: 0px 4px 0px 0px rgba(178, 76, 0, 1);
    background-color: #e96300;
    font-weight: bold;
    color: #fff;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  .cv-button-v2 > li > a > .button_inner {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding: 20px 35px 20px 65px;
    border: 1px solid #e96300;
    border-radius: 40px;
  }
  .cv-button-v2 > li > a > .button_inner > .link_label {
    position: relative;
  }
  .cv-button-v2 > li > a > .button_inner > .link_label::before {
    position: absolute;
    content: "";
    width: 35px;
    height: 32px;
    top: 0.2em;
    left: -45px;
    background: url("/common/img/com_sprite01.png") no-repeat 0 -33px;
  }
  .cv-button-v2 > li > a:hover {
    border: 1px solid #e96300;
    box-shadow: none;
    transform: translate3d(0, 4px, 0);
  }
  .cv-button-v2 > li > a:hover > .button_inner {
  }
  .cv-button-v2 .link_label {
    display: inline-block;
    line-height: 1.5;
    font-size: 2.2rem;
  }
  .cv-button-v2 > li > a::before {
    position: absolute;
    top: 50%;
    left: 30px;
    margin-top: -5px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #fff;
    content: "";
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  /* ----- cv-column-layout ----- */
  .cv-column-layout {
    margin-top: 25px !important;
    margin-bottom: 25px;
  }
  .cv-column-layout .cv-heading-lv3 {
    position: relative;
    padding-bottom: 0.5em;
    border-bottom: 2px solid #ddd;
    text-align: center;
  }
  .cv-column-layout .cv-heading-lv3::before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #dddddd transparent transparent transparent;
  }
  .cv-column-layout .cv-heading-lv3::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    bottom: -8px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #ffffff transparent transparent transparent;
    z-index: 1;
  }
  .cv-column-layout.ver02 .cv-heading-lv3::after {
    border-color: #f4f4f4 transparent transparent transparent;
  }
  .cv-column-layout .cv-heading-lv3 .heading_title {
    font-size: 2.0rem;
    font-weight: bold;
  }
  .cv-column-layout .cv-heading-lv3 .heading_title > em {
    color: #e96300;
    font-style: normal;
    font-size: 2.6rem;
  }

  /* ------------------------------------------------------
   * Element >>> Image
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .image-set {
    margin-top: 1em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .image-set .image_caption {
    margin-top: .7em;
    font-size: 1.7rem;
    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.book-cover .image_inner > img {
    width: 273px;
  }
  /* for IE11 hack */
  _:-ms-lang(x)::-ms-backdrop, .image-set.gp-al-center > .image_inner,
  _:-ms-lang(x)::-ms-backdrop, .image-set.gp-al-right > .image_inner{
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }
  _:-ms-lang(x)::-ms-backdrop, .image-set > .image_inner > img {
   width: 100%;
  }

  /* ------------------------------------------------------
   * Element >>> Video
  ------------------------------------------------------ */

  /* ----- movie-set ----- */
  .movie-set {
    margin-top: 1em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  [data-row-pc="3"] .movie-iframe {
    width: 100%;
    height: 211px;
  }
  [data-sidebar="true"] [data-row-pc="3"] .movie-iframe {
    width: 100%;
    height: 154px;
  }
  /* for IE11 hack */
  _:-ms-lang(x)::-ms-backdrop, .movie-set.gp-al-center > .movie_inner,
  _:-ms-lang(x)::-ms-backdrop, .movie-set.gp-al-right > .movie_inner{
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }

  /* ------------------------------------------------------
   * Element >>> Form
  ------------------------------------------------------ */

  /* ------------------------------------------------------
   * 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*="feature-layout"] > [class*="column_item"] > *:first-child,
  [class*="feature-layout"] > [class*="column_item"] > section:first-child > [class*="heading-lv"],
  [class*="comment-layout"] > [class*="column_item"] > *:first-child,
  [class*="comment-layout"] > [class*="column_item"] > section:first-child > [class*="heading-lv"],
  [class*="profile-layout"] > [class*="column_item"] > *:first-child,
  [class*="profile-layout"] > [class*="column_item"] > section:first-child > [class*="heading-lv"],
  [class*="office-layout"] > [class*="column_item"] > *:first-child,
  [class*="office-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;
  }
  [class*="column-layout"] > [class*="column_item"] > section:first-child > .heading-lv2 {
    margin-top: 2.5em !important;
  }
  [class*="column-layout"] > [class*="column_item"] > section:first-child > *.gp-mt-0 {
    margin-top: 0 !important;
  }
  [class*="column-layout"] > [class*="column_item"] > section:first-child > .heading-lv3 {
    margin-top: 1.25em !important;
  }

  /* ----- column-layout ----- */
  .column-layout {
    margin-top: 1em;
  }
  .column-layout-v2 {
    align-items: center;
  }
  .column_item-v2 {
    margin-top: 3em !important;
  }
  .column-layout > .column_item {
    margin-top: 1em;
  }
  .column-layout-v2 > .column_item {
    width: 60% !important;
    text-align: center;
  }
  .column-layout-v2 > .column_item.column_btn {
    width: 40% !important;
    margin-left: 0
  }
  .column-layout-v2 > .column_item.column_btn .link-button > li > a {
    min-width: 380px;
  }

  /* ----- column-media ----- */
  .column-media {
    margin-top: 1em;
  }
  .column-media[data-media-size="1/2"] > .column_image { width: calc((100% -  36px) / 2); }
  .column-media[data-media-size="1/3"] > .column_image { width: calc((100% -  72px) / 3); }
  .column-media[data-media-size="1/4"] > .column_image { width: calc((100% - 108px) / 4); }
  .column-media[data-media-size="1/5"] > .column_image { width: calc((100% - 144px) / 5); }
  .column-media[data-media-size="1/6"] > .column_image { width: calc((100% - 180px) / 6); }
  .column-media > .column_image[data-image="right"] {
    float: right;
    margin-left: 36px;
  }
  .column-media > .column_image[data-image="left"] {
    float: left;
    margin-right: 36px;
  }
  .column-media > .column_detail[data-wraparound="false"] {
    overflow: hidden;
  }
  .column-media.detail_padding > .column_detail[data-wraparound="false"] {
    padding-top: 35px;
  }
  /* ----- feature-layout ----- */
  .feature-layout {
    margin-top: 1em;
  }
  .feature-layout > .column_item {
    margin-top: 1em;
    position: relative;
  }
  .feature-layout > .column_item > dt {
    position: absolute;
    top: 0;
    left: -10px;
    width: 58px;
    height: 58px;
    padding-top: 12px;
    font-size: 1.35rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.2;
    color: #fff;
    border-radius: 50%;
    background-color: #008574;
  }
  .feature-layout > .column_item > dt > span {
    font-size: 2.025rem;
    line-height: 1.2;
  }
  .feature-layout > .column_item > dd {
    margin-top: 27px;
    padding: 35px 28px 30px;
    background-color: #fff9e3;
  }
  .feature-layout > .column_item > dd > .feature-dd-heading {
    margin-bottom: 1em;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .feature-layout > .column_item > dd .column-media-feature {
   display: flex;
   flex-flow: row-reverse;
   justify-content: center;
  }
  .feature-layout > .column_item > dd .column-media-feature .column_image {
    flex-shrink: 0;
    margin-left: 18px;
  }
  /* ----- comment-layout ----- */
  .comment-layout {
    margin-top: 1em;
  }
  .comment-layout-v2 {
    margin-top: 15px;
  }
  .comment-layout > .column_item {
    margin-top: 1em;
    position: relative;
  }
  .comment-layout-v2 > .column_item {
    position: relative;
    padding-right: 57px;
  }
  .comment-layout > .column_item > dt {
    position: absolute;
    bottom: -3px;
    right: 0;
    padding-right: 68px;
    font-size: 1.4rem;
    text-align: right;
    font-weight: bold;
    line-height: 1.2;
    min-height: 1.68rem;
  }
  .comment-layout > .column_item > dd {
    margin-bottom: 34px;
    padding: 30px;
    background-color: #fff;
    border: 2px solid #f7f7f7;
    border-radius: 10px;
  }
  .comment-layout-v2 > .column_item > div {
    padding: 10px 20px;
    background-color: #f8fbf8;
    border: 2px solid #d9e9d9;
    border-radius: 10px;
  }
  .comment-layout > .column_item > dd::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    right: 9px;
    width: 56px;
    height: 44px;
  }
  .comment-layout-v2 > .column_item::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 59px;
    height: 44px;
  }
  .comment-layout > .column_item.type01 > dd {
    background-color: #f8fbf8;
    border: 2px solid #d9e9d9;
  }
  .comment-layout > .column_item.type01 > dt::after {
    background: url("/common/img/com_sprite01.png") no-repeat -40px -210px;
  }
  .comment-layout-v2 > .column_item::after {
    background: url("/common/img/com_sprite01.png") no-repeat 0 -340px;
  }
  .comment-layout > .column_item.type02 > dd {
    background-color: #fff0f0;
    border: 2px solid #f5dddd;
  }
  .comment-layout > .column_item.type02 > dt::after {
    background: url("/common/img/com_sprite01.png") no-repeat -100px -210px;
  }
  .comment-layout > .column_item.type03 > dd {
    background-color: #f3fafd;
    border: 2px solid #cfe7f2;
  }
  .comment-layout > .column_item.type03 > dt::after {
    background: url("/common/img/com_sprite01.png") no-repeat -40px -260px;
  }
  .comment-layout > .column_item.type04 > dd {
    background-color: #fff4de;
    border: 2px solid #efdcb7;
  }
  .comment-layout > .column_item.type04 > dt::after {
    background: url("/common/img/com_sprite01.png") no-repeat -100px -260px;
  }
  /* ----- profile-layout ----- */
  .profile-layout {
    margin-top: 1em;
  }
  .profile-layout > .column_item {
    margin-top: 1em;
    position: relative;
    display: flex;
    align-items: center;
    background-color: #fff9e3;
    padding: 30px;
  }
  .profile-layout > .column_item > .column-media {
    display: flex;
    align-items: center;
  }
  .profile-layout > .column_item > .column-media > .column_image[data-image="left"] {
    float: left;
    margin-right: 30px;
    flex-shrink: 0;
  }
  .profile-layout .profile_affiliation {
    font-weight: bold;
    font-size: 1.4rem;
  }
  .profile-layout .profile_name {
    font-weight: bold;
    font-size: 1.8rem;
  }
  /* ----- office-layout ----- */
  .office-layout {
    margin-top: 1em;
  }
  .office-layout .office-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding: 15px 30px;
    background-color: #f4f4f4;
  }
  .office-layout .office-info > dt {
    font-weight: bold;
    font-size: 1.8rem;
    color: #008574;
  }
  .office-layout .office-info-sub {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 7px 30px;
  }
  .office-layout .office-info-sub + .office-info {
   margin-top: 1em;
  }

  /* ------------------------------------------------------
   * Layout >>> Table
  ------------------------------------------------------ */
  [class^="table-layout"] {
    overflow-x: auto;
    padding-bottom: 1px;
  }
  [class*="table-layout"] th > *:first-child,
  [class*="table-layout"] th > section:first-child > [class*="heading-lv"],
  [class*="table-layout"] td > *:first-child,
  [class*="table-layout"] td > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }

  /* ----- table-layout ----- */
  .table-layout {
    margin-top: 1em;
  }
  .table-layout .table_inner {
    width: 100%;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .table-layout caption {
    text-align: left;
    margin-bottom: 0.5em;
  }
  .table-layout caption > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout caption > *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout .table_title {
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
  }
  .table-layout .table_caption {
    margin: .5em 0;
    font-size: 1.4rem;
  }
  .table-layout th,
  .table-layout td {
    padding: 7px 20px;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    background-color: #fff;
    font-weight: normal;
    text-align: left;
  }
  .table-layout thead th {
    vertical-align: middle;
  }
  .table-layout th > *:first-child,
  .table-layout td > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout .cell-style1 {
    background-color: #555;
    color: #fff;
  }
  .table-layout th.cell-style1 {
    font-weight: bold;
  }
  .table-layout .cell-style2 {
    background-color: #f4f4f4;
    font-weight: bold;
  }
  .table-layout .cell-style3 {
    background-color: #fff0f0;
    font-weight: bold;
  }

  /* ------------------------------------------------------
   * Layout >>> CV
  ------------------------------------------------------ */
  [class*="cv-layout"] {
    margin-top: 2.5em;
  }
  [class*="cv-layout"] > [class*="cv_detail"] > *:first-child,
  [class*="cv-layout"] > [class*="cv_detail"] > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }

  /* ----- cv-layout ----- */
  [class*="cv-layout"] {
    margin-top: 1.85em;
    border: 2px solid #d0eadb;
  }
  [class*="cv-layout"].gp-mt-ver02 {
    margin-top: 0;
  }
  [class*="cv-layout"] > .cv_title {
    padding: 15px 25px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    background-color: #d0eadb;
  }
  [class*="cv-layout"] > .cv_detail {
    padding: 25px 70px;
  }
  [data-sidebar="true"] [class*="cv-layout"] > .cv_detail {
    padding: 25px 20px;
  }

  [class*="cv-layout"] .cv_web_title,
  [class*="cv-layout"] .cv_tel_title {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 1.8rem;
  }
  [class*="cv-layout"] .cv_web_title > .text_label {
    display: inline-block;
    text-align: center;
    position: relative;
    padding-left: 43px;
    min-height: 22px;
    font-weight: bold;
    color: #008574;
  }
  [class*="cv-layout"] .cv_tel_title > .text_label {
    display: inline-block;
    text-align: center;
    position: relative;
    padding-left: 26px;
    min-height: 26px;
    font-weight: bold;
    color: #008574;
  }
  [class*="cv-layout"] .cv_web_title > .text_label::before {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -11px;
    content: "";
    display: block;
    width: 32px;
    height: 23px;
    background: url("/common/img/com_sprite01.png") no-repeat 0 -180px;
  }
  [class*="cv-layout"] .cv_tel_title > .text_label::before {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -13px;
    content: "";
    display: block;
    width: 22px;
    height: 26px;
    background: url("/common/img/com_sprite01.png") no-repeat -40px -180px;
  }
  [class*="cv-layout"] .cv_telnumber-list {
    display: flex;
    flex-flow: column;
    align-items: center;
    margin-top: -0.5em;
  }
  [data-wide="false"] .cv_telnumber-list {
    flex-flow: column;
    align-items: center;
  }
  [class*="cv-layout"] .cv_telnumber-list > li {
    font-weight: bold;
    font-size: 2.3rem;
  }
  [class*="cv-layout-v2"] > .cv_detail {
    padding: 25px 30px;
  }
  [class*="cv-layout-v2"] .cv_telnumber-list > li {
    font-weight: bold;
    font-size: 2.3rem;
  }
  [class*="cv-layout-v2"] .cv-button > li > a {
    min-width: inherit;
    width: 312px;
  }
  [data-wide="false"]  [class*="cv-layout-v2"] .cv-button > li > a {
    max-width: 100%;
  }


  /* ------------------------------------------------------
   * Layout >>> Box
  ------------------------------------------------------ */
  [class*="box-layout"] {
    margin-top: 2.5em;
  }
  [class*="box-layout"] > [class*="box_detail"] > *:first-child,
  [class*="box-layout"] > [class*="box_detail"] > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }

  /* ----- box-layout ----- */
  .box-layout {
    margin-top: 1.85em;
    padding: 30px;
    background-color: #fff9e3;
  }
  .box-layout > .box_title {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
    line-height: 1.5;
  }
  .box-layout > .box_detail {
  }
  .wide .box-layout {
    margin-top: 0.5em;
  }
  /* ----- box-layout-v2 ----- */
  .box-layout-v2 {
    margin-top: 1.85em;
    padding: 30px;
    background-color: #f7f7f7;
  }
  .box-layout-v2.verSeminar {
    padding: 25px 30px;
  }
  .box-layout-v2 > .box_title {
    position: relative;
    margin-bottom: 20px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .box-layout-v2.verSeminar > .box_title {
    margin-bottom: 0.5em;
  }
  .box-layout-v2 > .box_title.type-download {
    padding-left: 36px;
  }
  .box-layout-v2 > .box_title.type-download::after {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -14px;
    content: "";
    display: block;
    width: 22px;
    height: 28px;
    background: url("/common/img/com_sprite01.png") no-repeat -120px -130px;
  }
  .box-layout-v2 > .box_title.type-relation {
    padding-left: 36px;
  }
  .box-layout-v2 > .box_title.type-relation::after {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -12px;
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background: url("/common/img/com_sprite01.png") no-repeat -150px -130px;
  }
  /* ----- box-layout-v3 ----- */
  .box-layout-v3 {
    margin-top: 1em;
    padding: 28px;
    border: 1px solid #ddd;
  }
  .box-layou-v3 > .box_title {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
    line-height: 1.5;
  }
  .box-layout-v3 > .box_detail {
  }
  /* ----- box-layout-v4 ----- */
  .box-layout-v4 {
    margin-top: 2em;
    padding: 15px 20px;
    background-color: #f4f4f4;
  }
  .box-layout-v4 > .box_detail {
  }
  /* ----- box-layout-v5 ----- */
  .box-layout-v5 {
    margin-top: 1.5em;
    padding: 25px 30px;
    border: 1px solid #ddd;
  }
  .box-layout-v5 > .box_title {
    margin-bottom: 1em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    color: #008574;
  }
  .box-layout-v5 > .box_detail > .link-text[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-top: 0.5em;
  }
  /* ----- box-layout-v6 ----- */
  .box-layout-v6 {
    margin-top: 2.5em;
    padding: 30px 35px;
    background-color: #fff;
  }
  .box-layout-v6 > .box_title {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
    line-height: 1.5;
  }
  /* ----- box-layout-v7 ----- */
  .box-layout-v7 {
    margin: 90px 0 50px;
    padding: 30px 35px;
    background-color: #fff9e3;
  }
  .box-layout-v7.gp-mt-ver02 {
    margin: 35px 0 60px;
  }
  .box-layout-v7 > .box_title {
    margin-bottom: 1em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
  }
  .box-layout-v7 > .box_detail > .cv-button > li > a {
    min-width: 500px;
    box-shadow: 0px 2px 0px 0px rgb(221, 221, 221);
    font-size: 1.8rem;
  }
  .box-layout-v7 > .box_detail > .cv-button > li > a:hover {
    box-shadow: none;
    transform: translate3d(0, 2px, 0);
  }
  .box-layout-v7 > .box_detail > .cv-button > li > a > .button_inner {
    padding: 13px 35px 13px 45px;
  }
  /* ----- box-layout-v8 ----- */
  .box-layout-v8 {
    margin-top: 2em;
    padding: 20px 35px 30px;
    background-color: #fff9e3;
  }
  .box-layout-v8 > .box_title {
    margin-bottom: 1em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 2;
    text-align: center;
  }
  .box-layout-v8 .box_detail.saiyo_detail {
    padding: 0 40px;
  }
  .box-layout-v8 .link-button > li > a {
    min-width: 500px;
  }
  .box-layout-v8 .link-button > li > a > .button_inner {
    padding: 10px 35px 10px 45px;
  }
  /* ----- box-layout-v9 ----- */
  .box-layout-v9 {
    margin-top: 2em;
    padding: 15px 35px 20px;
    background-color: #fff9e3;
  }
  .box-layout-v9 > .box_title {
    margin-bottom: 0.5em;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 2;
    text-align: center;
  }
  .box-layout-v9 .box_detail.saiyo_detail {
    padding: 0 40px;
  }
  .box-layout-v9 [class*="link-text"] > li + li {
    margin-top: .2em;
  }
  /* ----- subscription-box ----- */
  .subscription-box {
    display: flex;
    justify-content: center;
    margin: 1.85em 0;
    padding: 25px;
    border: 2px solid #ddd;
  }
  .subscription-detail strong  {
    font-size: 2.3rem;
    font-weight: bold;
  }
  /* ----- heading-seminar-box ----- */
  .heading-seminar-box {
    margin-top: 30px;
    padding: 37px 40px;
    background-color: #fff;
  }
  .heading-seminar-box > *:first-child {
    margin-top: 0;
  }
  /* ----- seminar-layout ----- */
  .seminar-layout {
    padding: 35px 40px 25px;
    background-color: #fff;
  }
  .seminar-layout > .seminar-dl {
    display: flex;
  }
  .seminar-layout > .seminar-dl + .seminar-dl {
    margin-top: 0.7em;
  }
  .seminar-layout > .seminar-dl > dt {
    width: 90px;
    font-size: 1.8rem;
    color: #008574;
    font-weight: bold;
  }
  .seminar-layout > .seminar-dl > dd {
    width: calc(100% - 90px);
  }


  /* ------------------------------------------------------
   * Layout >>> Other
  ------------------------------------------------------ */
  /* ----- [class*="accordion-layout"] ----- */
  [class*="accordion-layout"] {
    margin-top: 1.85em;
    border: 1px solid #ddd;
  }
  .accordion-layout-v2 {
    border: none;
  }
  [class*="accordion-layout"] > .accordion_trigger {
    position: relative;
  }
  [class*="accordion-layout"] .accordion_label {
    display: block;
    padding: 25px 80px 25px 28px;
    background-color: #fff;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.5;
    cursor: pointer;
  }
  .accordion-layout-v2 .accordion_label {
    border: 1px solid #ddd;
    color: #008574;
  }
  [class*="accordion-layout"] .accordion_label:hover {
    color: #008574;
  }
  [class*="accordion-layout"] .is-active .accordion_label {
    color: #008574;
  }
  [class*="accordion-layout"] > .accordion_detail {
    padding: 20px 28px;
    border-top: 1px solid #ddd;
    background-color: #fff;
  }
  .accordion-layout-v2 > .accordion_detail {
    padding: 20px 0;
    border-top: none;
  }
  [class*="accordion-layout"] > .accordion_trigger::after {
    position: absolute;
    top: 50%;
    right: 28px;
    margin-top: -10px;
    content: "";
    display: block;
    width: 30px;
    height: 20px;
    background: url("/common/img/com_sprite01.png") no-repeat -120px -180px;
    cursor: pointer;
  }
  [class*="accordion-layout"] > .accordion_trigger.is-active::after {
    background: url("/common/img/com_sprite01.png") no-repeat -120px -160px;
  }
  [class*="accordion-layout"] > .accordion_detail > *:first-child {
    margin-top: 0;
  }
  [class*="accordion-layout"].toContents {
    position: relative;
    padding-bottom: 40px;
  }
  [class*="accordion-layout"].toContents::after {
    position: absolute;
    content: "";
    bottom: -5px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 27.5px 0 27.5px;
    border-color: #008573 transparent transparent transparent;
  }

  /* ----- tab-layout ----- */
  .tab-layout {
    margin-top: 1em;
  }
  .js-select-filter + .tab-layout {
    margin-top: 40px;
  }
  .tab-layout > .tab_navi {
    border-bottom: 2px solid #008572;
    margin: 0 -100vw;
    padding: 0 100vw;
  }
  .tab-layout .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: nowrap;
    flex-flow: nowrap;
    width: 1200px;
    margin: 0 auto;
  }
  .tab-layout .tab_list > li {
    position: relative;
    display: -webkit-flex;
    display: flex;
    width: 100%;
  }
  .tab-layout .tab_list > li > a,
  .tab-layout.tab-news .tab_list > li > .non {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 10px 5px 9px;
    border: 1px solid #ddd;
    border-bottom: none;
    background-color: #fff;
    font-size: 2.0rem;
    color: #333;
    text-decoration: none;
  }
  .tab-layout.tab-news .tab_list > li > .non {
    padding: 10px 5px 9px;;
    font-weight: bold;
  }
  .tab-layout .tab_list > li > a > .tab_label {
    font-weight: bold;
    display: inline-block;
    position: relative;
    padding-left: 18px;
    margin-left: -18px;
  }
  .tab-layout .tab_list > li > a > .tab_label::before {
    position: absolute;
    top: .5em;
    left: 1px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }
  .tab-layout .tab_list > .is-current,
  .tab-layout.tab-news .tab_list > li.is-current {
    padding-top: 0;
  }
  .tab-layout .tab_list > .is-current::before,
  .tab-layout.tab-news .tab_list > li.is-current::before {
    display: block;
    position: absolute;
    bottom: -10px;
    left: 47%;
    margin: 0 auto;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #008573 transparent transparent transparent;
    content: "";
  }
  .tab-layout.tab-news .tab_list > li.is-current::before {
    left: 50%;
    margin-left: -10px;
  }
  .tab-layout .tab_list > li > a:hover {
    color: #008573;
  }
  .tab-layout .tab_list > .is-current > a,
  .tab-layout .tab_list > .is-current > a:hover,
  .tab-layout.tab-news .tab_list > li.is-current > .non,
  .tab-layout.tab-news .tab_list > li.is-current > .non:hover {
    border-color: #008572;
    background-color: #008572;
    color: #fff;
  }
  .tab-layout .tab_list > .is-current > a::after,
  .tab-layout.tab-news .tab_list > li.is-current > .non::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #008572;
    content: "";
  }
  .tab-layout > .tab_detail {
    display: none;
    width: 1200px;
    margin: 0 auto;
    padding-top: 20px;
  }
  .tab-layout > .tab_detail.link-tab_detail {
    display: block;
  }
  .tab-layout > .tab_detail > *:first-child {
    margin-top: 0 !important;
  }
  [data-sidebar="true"] .tab-layout > .tab_navi {
    margin: 0;
    padding: 0;
  }
  [data-wide="false"] .tab-layout > .tab_detail {
    width: 891px;
  }
  [data-wide="false"] .tab-layout .tab_list {
    width: 891px;
  }

  /* ------------------------------------------------------
   * Component >>> Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    margin-top: 1em;
  }
  .navi-anchor .navi_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .navi-anchor .navi_inner > li {
    width:25%;
    padding: .5em 30px 0 0;
  }
  .navi-anchor .navi_inner[data-row-pc="2"] > li {
    width:50%;
    padding: .5em 30px 0 0;
  }
  .navi-anchor .navi_inner > li:nth-child(-n+4) {
    padding-top: 0;
  }
  .navi-anchor .navi_inner > li:nth-child(4n) {
    border-right: none;
  }
  .navi-anchor .navi_inner > li:nth-child(4n+1) {
    margin-left: 0;
  }
  .navi-anchor .navi_inner[data-row-pc="2"] > li:nth-child(-n+4) {
    padding-top: .5em;
  }
  .navi-anchor .navi_inner[data-row-pc="2"] > li {
    margin-top: 0;
    margin-left: 0;
  }
  .navi-anchor .navi_inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    font-size: 1.9rem;
  }
  .navi-anchor .navi_inner > li > a::before {
    position: absolute;
    top: 0.55em;
    left: 0;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    border-color: #008573 transparent transparent transparent;
    content: "";
  }
  /* ----- navi-anchor-v2 ----- */
  .navi-anchor-v2 {
    margin-top: 1em;
  }
  .navi-anchor-v2 .navi_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .navi-anchor-v2 .navi_inner > li {
    width:33.3333%;
    padding: .5em 30px 0 0;
  }
  .navi-anchor-v2 .navi_inner > li:nth-child(-n+3) {
    padding-top: 0;
  }
  .navi-anchor-v2 .navi_inner > li:nth-child(3n) {
    border-right: none;
  }
  .navi-anchor-v2 .navi_inner > li:nth-child(3n+1) {
    margin-left: 0;
  }
  .navi-anchor-v2 .navi_inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 18px;
    font-size: 1.9rem;
  }
  .navi-anchor-v2 .navi_inner > li > a::before {
    position: absolute;
    top: 0.55em;
    left: 0;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    border-color: #008573 transparent transparent transparent;
    content: "";
  }
  /* ----- faq-layout ----- */
  .faq-layout {
    margin-top: 1.85em;
    border: 1px solid #ddd;
  }
  .faq-layout > .faq_trigger {
    position: relative;
  }
  .faq-layout .faq_label {
    display: block;
    padding: 25px 80px 25px 90px;
    background-color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    cursor: pointer;
  }
  .faq-layout .faq_label:hover {
    color: #008574;
  }
  .faq-layout .is-active .faq_label {
    color: #008574;
  }
  .faq-layout > .faq_detail {
    position: relative;
    padding: 45px 28px 20px 90px;
    border-top: 1px solid #ddd;
    background-color: #fff;
  }
  .faq-layout > .faq_trigger::before {
    position: absolute;
    top: 50%;
    left: 28px;
    margin-top: -20px;
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background: url("/common/img/com_sprite01.png") no-repeat -160px -210px;
    cursor: pointer;
  }
  .faq-layout > .faq_detail::before {
    position: absolute;
    top: 40px;
    left: 28px;
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background: url("/common/img/com_sprite01.png") no-repeat -160px -260px;
  }
  .faq-layout > .faq_trigger::after {
    position: absolute;
    top: 50%;
    right: 28px;
    margin-top: -10px;
    content: "";
    display: block;
    width: 30px;
    height: 20px;
    background: url("/common/img/com_sprite01.png") no-repeat -120px -180px;
    cursor: pointer;
  }
  .faq-layout > .faq_trigger.is-active::after {
    background: url("/common/img/com_sprite01.png") no-repeat -120px -160px;
  }

  /* ------------------------------------------------------
   * Component >>> Index
  ------------------------------------------------------ */
  [class*="index-layout"] {
    margin-top: 1em;
  }
  [class*="index-layout"] .index_caption > *:first-child,
  [class*="index-layout"] .index_caption > section:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }

  [class*="index-layout"] .index_item > .block {
    position: relative;
    color: #333;
    background-color: #fff;
  }
  [class*="index-layout"] .index_item > a.block:hover {
    color: #53a700;
    text-decoration: none;
    box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.2);
  }
  [class*="index-layout"] .index_item .item_image > img {
    max-width: 100%;
  }
  [class*="index-layout"] .index_item > .block > .item_detail {
    padding: 18px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
  [class*="index-layout"] .index_item > .block > .item_detail > *:last-child {
    margin-bottom: 0;
  }
  [class*="index-layout"] .index_item .item_copy {
    position: relative;
    min-height: 30px;
    margin-bottom: 12px;
  }
  [class*="index-layout"] .index_item .item_copy_text {
    font-size: 1.3rem;
    padding-right: 32px;
  }
  [class*="index-layout"] .index_item .item_favorite {
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    cursor: pointer;
    z-index: 3;
  }
  [class*="index-layout"] .index_item .item_favorite::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    background: url("/common/img/com_sprite01.png") no-repeat 0 -240px;
  }
  [class*="index-layout"] .index_item .item_favorite.is-favorite::after {
    background: url("/common/img/com_sprite01.png") no-repeat 0 -270px;
  }
  [class*="index-layout"] .index_item .item_heading {
    position: relative;
    margin-bottom: 12px;
  }
  [class*="index-layout"] .index_item .item_heading_title {
    font-weight: bold;
    font-size: 1.6rem;
  }
  [class*="index-layout"] .index_item a.a-blank .item_heading_title::after {
    display: inline-block;
    content: "";
    background: url(/common/img/com_sprite01.png) no-repeat;
    width: 14px;
    height: 14px;
    background-position: 0 0;
    margin: 0 0 0 10px;
  }
  [class*="index-layout"] .index_item a.a-pdf .item_heading_title::after {
    display: inline-block;
    content: "";
    background: url(/common/img/com_sprite01.png) no-repeat;
    width: 14px;
    height: 14px;
    background-position: -14px 0;
    margin: 0 0 0 10px;
  }
  [class*="index-layout"] .index_item .item_heading_title .text-age {
    font-size: 1.4rem;
  }
  [class*="index-layout"] .index_item .item_date {
    font-size: 1.4rem;
    font-weight: bold;
    color: #666;
  }
  [class*="index-layout"] .index_item > a.block:hover .item_date {
    color: #53a700;
  }
  [class*="index-layout"] .index_item .item_type {
    font-size: 1.4rem;
    font-weight: bold;
    color: #666;
    display: inline;
  }
  [class*="index-layout"] .index_item > a.block:hover .item_type {
    color: #53a700;
  }
  [class*="index-layout"] .index_item .item_type + .item_type::before {
   content: "　";
  }
  [class*="index-layout"] .index_item .item_icon {
    position: absolute;
    top: 4px;
    left: 0;
    display: inline-block;
    padding: 0 15px;
    border-radius: 15px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #fff;
  }
  [class*="index-layout"] .index_item .item_icon.type01,
  [class*="index-layout"] .index_item .item_icon.type-accept {
    background-color: #eb6b6b;
  }
  [class*="index-layout"] .index_item .item_icon.type02,
  [class*="index-layout"] .index_item .item_icon.type-closed {
    background-color: #999;
  }
  [class*="index-layout"] .index_item .item_icon.type03 {
    background-color: #999;
  }
  [class*="index-layout"] .index_item .item_icon.type-rank {
    background-color: #555;
  }
  .index-layout .index_item > .block > .item_image {
    text-align: center;
    height: 205px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .index-layout .index_item .item_image > img {
    max-height: 205px;
  }
  .index-layout .index_item .item_date-box > .item_date_dl {
    display: flex;
    font-size: 1.4rem;
    color: #666;
  }
  .index-layout .index_item .item_date-box > .item_date_dl > dt {
    width: 70px;
  }
  .index-layout .index_item .item_date-box > .item_date_dl > dd {
    width: calc(100% - 70px);
  }
  .index-layout.ver02 > .index_item > .block > .item_image {
    border: 1px solid #ddd;
  }
  .index-layout .index_item > .a-pdf::after,
  .index-layout .index_item > .a-blank::after {
   display: none;
  }
  .index-layout-v2 > .index_item > .block {
    width: 100%;
    display: flex;
    flex-flow: row-reverse;
    align-items: center;
    border: 1px solid #ddd;
  }
  .index-layout-v2 > .index_item > .block > .item_image {
    flex-shrink: 0;
  }
  .index-layout-v2 > .index_item > .block > .item_detail {
    padding: 10px 0 10px 20px;
    border: none;
    flex-grow: 1;
  }
  .index-layout-v2 > .index_item > a.block .item_heading_title {
    padding-left: 20px;
  }
  .index-layout-v2 > .index_item > a.block .item_heading_title::before {
    position: absolute;
    top: 50%;
    left: 1px;
    margin-top: -5px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }
  .index-layout-v2 > .index_item > .index_item_text {
    margin-top: 1em;
    font-size: 1.9rem;
  }
  .index-layout-v3 > .index_item {
    border-top: 1px solid #008574;
  }
  .index-layout-v3 > .index_item:last-child {
    border-bottom: 1px solid #008574;
  }
  .index-layout-v3 > .index_item > .block {
    display: flex;
    width: 100%;
    padding: 40px 30px;
  }
  .index-layout-v3 .index_item > a.block:hover {
    color: #333;
    text-decoration: none;
    box-shadow: none;
    background-color: #f4fff9;
  }
  .index-layout-v3 > .index_item > .block > .item_image {
    margin-right: 30px;
  }
  .index-layout-v3 > .index_item > .block > .item_image > img {
    max-width: 332px;
  }
  .index-layout-v3 > .index_item > .block > .item_detail {
    padding: 0;
    border: none;
  }
  .index-layout-v3 > .index_item > a.block .item_heading {
    margin-bottom: 1em;
    padding-left: 17px;
    font-weight: bold;
  }
  .index-layout-v3 > .index_item > a.block .item_heading::before {
    position: absolute;
    top: .75em;
    left: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }
  .index-layout-v3 > .index_item > .block .item_heading_title  {
    font-size: 2.2rem;
  }
  .index-layout-v3 > .index_item > .block .item_heading_sub  {
    font-size: 1.8rem;
  }
  .index-layout-v3 > .index_item .item_info {
    padding-left: 17px;
  }
  .index-layout-v3 > .index_item .item_info .item_info_text{
    font-size: 1.6rem;
  }
  .index-layout-v3 > .index_item .item_info .item_info_date {
    margin-top: 0.5em;
    font-size: 1.4rem;
    color: #666;
    font-weight: bold;
  }
  .index-layout-v4.gp-mt-ver02 {
    margin-top: 4em;
  }
  .index-layout-v4[data-row-pc="1"] > .index_item + .index_item {
    margin-top: 1.25em;
  }
  .index-layout-v4 > .index_item > .block {
    padding: 20px;
    border: 1px solid #ddd;
  }
  .index-layout-v4 > .index_item > .block > .item_detail {
    display: block;
    padding: 0;
    border: none;
  }
  .index-layout-v4 > .index_item > a.a-blank::after {
    display: none;
  }
  .index-layout-v4 > .index_item > a.block .item_heading {
    margin-bottom: 1em;
    padding-left: 20px;
    font-weight: bold;
  }
  .index-layout-v4 > .index_item > a.block .item_heading::before {
    position: absolute;
    top: .75em;
    left: 2px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }
  .index-layout-v4 > .index_item > .block .item_heading_title  {
    position: relative;
    font-size: 2.2rem;
  }
  .index-layout-v4 > .index_item > a.a-blank .item_heading_title::after {
    display: inline-block;
    background: url(/common/img/com_sprite01.png) no-repeat;
    vertical-align: middle;
    content: "";
    width: 14px;
    height: 14px;
    background-position: 0 0;
    margin-left: 10px;
  }
  .index-layout-v4 > .index_item > .block .item_heading_sub  {
    font-size: 1.8rem;
  }
  .index-layout-v4 > .index_item .item_info {
    color: #333;
    padding-left: 20px;
  }
  .index-layout-v4 > .index_item .item_info .item_info_text{
    font-size: 1.9rem;
  }
  .index-layout-v5 {
    margin-top: 30px;
  }
  .index-layout-v5 .index_item .item_copy {
    margin-bottom: 5px;
  }
  .index-layout-v5 .index_item .item_image {
    text-align: center;
  }
  .index-layout-v5 .index_item > .block > .item_image {
    text-align: center;
    height: 205px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .index-layout-v5 .index_item .item_image > img {
    max-height: 205px;
  }
  .index-layout-v5 > .index_item .item_detail .item_heading .item_heading_title {
    /*padding-right: 30px;*/
  }
  .index-layout-v5 > .index_item .item_copy_text {
   padding-right: 0;
  }
  .index-layout-v5 > .index_item .item_detail .item_money {
    margin-bottom: 25px;
    color: #666;
    font-size: 1.4rem;
  }
  .index-layout-v5 > .index_item > a.block:hover .item_detail .item_money {
    color: #53a700;
  }
  .index-layout-v5 > .index_item .item_detail .item_date {
    font-size: 1.3rem;
  }
  .index-layout-v6 {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
    border-left: 1px solid #ddd;
  }
  .index-layout-v6.link-list-min {
    margin-top: 40px;
  }
  .index-layout-v6 > .index_item {
    width: 50%;
  }
  .index-layout-v6 > .index_item > a.block {
    position: relative;
  }
  .index-layout-v6 > .index_item > a.block.a-blank::after,
  .index-layout-v6 > .index_item > a.block.a-pdf::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
  }
  .index-layout-v6 > .index_item > a.block.a-blank::after {
    width: 14px;
    height: 14px;
    background-position: 0 0;
  }
  .index-layout-v6 > .index_item > a.block.a-pdf::after {
    width: 14px;
    height: 14px;
    background-position: -14px 0;
  }
  .index-layout-v6 .index_item a[target="_blank"] .item_heading_title::after {
    display: none;
  }
  .index-layout-v6 .index_item a.a-pdf .item_heading_title::after {
    display: none;
  }
  .index-layout-v6 > .index_item > .block > .item_detail {
    padding: 23px 45px;
    border-top: 1px solid #ddd;
    border-left: none;
  }
  .index-layout-v6 > .index_item:nth-child(n+3) {
    margin-top: -1px;
  }
  .index-layout-v6.link-list-min > .index_item > .block > .item_detail {
    padding: 18px 40px 15px;
  }
  .index-layout-v6.link-list-min > .index_item > .block > .item_detail .item_heading_title {
    font-weight: normal;
  }
  .index-layout-v6 > .index_item > .block > .item_detail .item_heading {
    margin-bottom: 0;
  }
  .index-layout-v6 > .index_item > a.block .item_detail .item_heading_title {
    position: relative;
    color: #336699;
  }
  .index-layout-v6 > .index_item > a.block .item_detail .item_heading_title::before {
    position: absolute;
    content: "";
    top: 0.5em;
    left: -15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
  }
  .index-layout-v6 > .index_item > a.block:hover .item_detail .item_heading_title {
    text-decoration: underline;
  }
  .index-layout-v6 > .index_item > .block > .item_detail .item_date {
    color: #333;
    font-weight: normal;
  }
  .index-layout-v6 > .index_item > a.block:hover .item_detail .item_date {
    color: #333;
  }
  .index-layout-v7 + .index-layout-v7 {
    margin-top: 60px;
  }
  .index-layout-v7[data-row-pc="4"] > :nth-child(-n+4) {
    padding-top: 0 !important;
  }
  .index-layout-v7[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-top: 0;
    padding-top: 1.25em;
  }
  .index-layout-v7.column-layout[data-row-pc="2"] > * {
    margin-left: 0;
    margin-right: 0;
  }
  .index-layout-v7.column-layout[data-row-pc="2"] > :nth-child(even) {
    margin-right: 36px;
  }
  .index-layout-v7 > .index_item {
  }
  .index-layout-v7 > .index_item > .block {
    height: 100%;
  }
  .index-layout-v7.column-layout > .index_item > .block {
    display: -webkit-flex;
    display: flex;
  }
  .index-layout-v7 > .index_item > .block > .item_image {
    margin-bottom: 20px;
  }
  .index-layout-v7.column-layout > .index_item > .block > .item_image {
    width: 195px;
    margin-bottom: 20px;
  }
  .index-layout-v7 > .index_item > .block > .item_detail {
    border: none;
    padding: 0;
  }
  .index-layout-v11 .index_item .item_image {
    text-align: center;
    height: 205px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .index-layout-v11 .index_item .item_image > img {
    max-height: 205px;
    max-width: 100%;
  }
  .index-layout-v7.column-layout > .index_item > .block > .item_detail {
    width: calc(100% - 230px);
    padding: 0;
    margin-top: 0;
    margin-left: 35px;
    border-top: none;
  }
  .index-layout-v7[data-row-pc="4"] > :nth-child(n+5) > .block > .item_detail {
    border-top: 1px solid #ddd;
    padding: 25px 0 0;
  }
  .index-layout-v7 > .index_item > .block > .item_image + .item_detail {
    border-top: none;
    padding: 0;
  }
  .index-layout-v7 > .index_item > .block > .item_detail > .item_class {
    margin-bottom: 0.5em;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .index-layout-v7 > .index_item > .block > .item_detail > .item_name {
    margin-bottom: 0.5em;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    color: #008574;
  }
  .index-layout-v8 .index_item .item_image {
    text-align: center;
    height: 205px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .index-layout-v8 .index_item .item_image > img {
    max-height: 205px;
    max-width: 100%;
  }
  .index-layout-v8 > .index_item .item_copy_text {
    padding-right: 0;
  }
  .index-layout-v9 {
    display: -webkit-flex;
    display: flex;
    margin-top: 0.6em;
  }
  .index-layout-v9 > .index_item.movement-link {
    width: 66.5%;
  }
  .index-layout-v9 > .index_item.movement-link > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    color: #333;
    max-height: 225px;
    background: url(/movement/img/index_bg01.jpg) no-repeat 0 0 / cover;
    text-shadow: 1px 1px 0px rgba(255,255,255,.5);
  }
  .index-layout-v9 > .index_item.movement-link > a.block:hover {
    box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.2);
  }
  .index-layout-v9 > .index_item.movement-link > .block > .item_detail {
    border: none;
    padding: 0 50px;
  }
  .index-layout-v9 > .index_item.movement-link > .block > .item_detail .item_heading_title {
    position: relative;
    font-size: 2.0rem;
  }
  .index-layout-v9 > .index_item.movement-link > .block > .item_detail .item_heading_title::before {
    position: absolute;
    content: "";
    top: 0.6em;
    left: -20px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-color: transparent transparent transparent #008573;
  }
  .index-layout-v9 > .index_item.movement-movie {
    width: 32.6%;
    margin-left: 0.9%;
  }
  .index-layout-v9 > .index_item.movement-movie > iframe {
    width: 100%;
    max-height: 225px;
  }
  .index-layout-v10 {
    margin-top: 0;
  }
  .js-slider-indexLayout .slick-track {
    height: 100%;
  }
  .js-slider-indexLayout .index_item {
    background-color: #fff;
    height: 100%;
  }
  .index-layout-v10 > .index_item > .block {
    display: -webkit-flex;
    display: flex;
    border: 1px solid #ddd;
  }
  .index-layout-v10.ver02 > .index_item > .block {
    -webkit-align-items: center;
    align-items: center;
  }
  .index-layout-v10 .index_item > .block > .item_image {
    width: 194px;
    border-right: 1px solid #ddd;
  }
  .index-layout-v10 .index_item > .block > .item_image > img {
    width: 100%;
  }
  .index-layout-v10.ver02 .index_item > .block > .item_image {
    width: 273px;
  }
  .index-layout-v10 .index_item > .block > .item_detail {
    border: none;
    width: calc(100% - 194px);
  }
  .index-layout-v10.ver02 .index_item > .block > .item_detail {
    width: calc(100% - 273px);
  }
  .index-layout-v10 .index_item > .block > .item_detail .item_info_text {
    font-size: 1.4rem;
  }
  .index-layout-v11 .index_item .item_image {
    text-align: center;
    height: 205px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .index-layout-v11 .index_item .item_image > img {
    max-height: 205px;
    max-width: 100%;
  }
  .contents > .index-layout-v12:first-child {
    margin-top: 75px !important;
  }
  .index-layout-v12 > .index_item {
    border-top: 1px solid #008574;
  }
  .index-layout-v12 > .index_item:last-child {
    border-bottom: 1px solid #008574;
  }
  .index-layout-v12 > .index_item > .block {
    display: block;
    width: 100%;
    padding: 30px 40px;
  }
  .index-layout-v12 .index_item > a.block:hover {
    color: #333;
    text-decoration: none;
    box-shadow: none;
    background-color: #f4fff9;
  }
  .index-layout-v12 > .index_item > .block > .item_detail {
    padding: 0;
    border: none;
  }
  .index-layout-v12 > .index_item > a.block .item_heading {
    margin-bottom: 1em;
    padding-left: 17px;
    font-weight: bold;
  }
  .index-layout-v12 > .index_item > a.block .item_heading::before {
    position: absolute;
    top: .75em;
    left: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }
  .index-layout-v12 > .index_item > .block .item_heading_title  {
    font-size: 2.2rem;
  }
  .index-layout-v12 > .index_item > .block .item_heading_sub  {
    font-size: 1.6rem;
  }

  .hierarchy-title {
    margin-bottom: 25px;
    font-weight: bold;
    font-size: 2.2rem;
    text-align: center;
  }
  .index-layout-hierarchy > .index_item > .block {
    width: 100%;
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
  }
  .index-layout-hierarchy > .index_item > .block > .item_image {
   flex-shrink: 0;
  }
  .index-layout-hierarchy > .index_item > .block > .item_detail {
    padding: 10px 18px;
    border: none;
    flex-grow: 1;
    line-height: 1.2;
  }
  .index-layout-seminar {
    padding-bottom: 1.25em;
  }


  /* ------------------------------------------------------
   * Component >>> Other
  ------------------------------------------------------ */
  /* ----- news-layout ----- */
  [class*="news-layout"] {
    margin-top: 1em;
  }
  [class*="news-layout"] .news_article + .news_article {
    border-top: 1px dotted #ddd;
  }
  [class*="news-layout"] .block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    padding: 23px 0 22px;
    color: #333;
    text-decoration: none;
    outline: none;
  }
  [class*="news-layout"] .news_image {
    width: 90px;
    margin-right: 20px;
  }
  [class*="news-layout"] .news_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex: 1;
    flex: 1;
  }
  [class*="news-layout"] .news_property {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  [class*="news-layout"] .news_date {
    font-size: 1.6rem;
    line-height: 1.8;
    width: 180px;
  }
  [class*="news-layout"] .icon_news_wrap {
    margin-right: 20px;
    width: 150px;
  }
  [class*="news_icon"] {
    display: inline-block;
    width: 110px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    border-radius: 30px;
  }
  [class*="news-layout"] [class*="news_icon"] {
   width: 150px;
  }
  [class*="news-layout"] [class*="news_icon"] + [class*="news_icon"] {
    margin-top: 5px;
  }
  .news_icon.type1,
  .news_icon.type-information {
    background-color: #008574;
  }
  .news_icon.type2,
  .news_icon.type-event {
    background-color: #d99900;
  }
  .news_icon.type3,
  .news_icon.type-research {
    background-color: #2180ab;
  }
  [class*="news-layout"] .news_title {
    -webkit-flex: 1;
    flex: 1;
    line-height: 1.8;
  }
  [class*="news-layout"] a .news_title {
    color: #336699;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  [class*="news-layout"] a:hover .news_thumbnail,
  [class*="news-layout"] a:hover .news_title {
    color: #53a700;
    text-decoration: underline;
  }
  [class*="news-layout"] .news_image + .news_detail {
    display: block;
  }
  [class*="news-layout"] .news_image + .news_detail .news_title {
    margin-top: .5em;
  }
  .news-layout.news-sleisure_list .news_date {
    width: 250px;
  }
  .news-layout-v3 .news_article:first-child .block {
    padding-top: 0;
  }
  .news-layout-v3 .news_detail {
    display: block;
  }
  .news-layout-v3 .icon_news_wrap {
    display: -webkit-flex;
    display: flex;
    margin: 0 0 0.5em;
    width: auto;
  }
  .news-layout-v3  .news_date {
    width: 155px;
  }
  .news-layout-v3 .icon_news_wrap [class*="news_icon"] {
    width: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
  .news-layout-v3 .icon_news_wrap [class*="news_icon"] + [class*="news_icon"] {
    margin-top: 0;
    margin-left: 10px;
  }

  .news-layout-v4_wrap{
    margin-top: 55px;
  }
  .news-layout-v4_wrap > *:first-child{
    margin-top: 0;
  }
  .news-layout-v4_heading {
    margin: 55px 0 11px;
  }
  .news-layout-v4_heading .news-layout-v4_title {
    margin: 0;
    font-weight: bold;
    font-size: 1.6rem;
  }
  .news-layout-v4_heading + .news-layout-v4  {
    margin-top: 0;
  }
  .news-layout-v4 .news_article ,
  .news-layout-v4 .news_article + .news_article {
    border-top: 1px solid #ddd;
  }
  .news-layout-v4 .news_article:last-child {
    border-bottom: 1px solid #ddd;
  }
  .news-layout-v4 .icon_news_wrap {
    width: 100px;
    margin-right: 20px;
  }
  .news-layout-v4 .icon_news_wrap .news_icon {
    width: 100px;
    padding-left: 15px;
    padding-right: 15px;
    background: #eb6b6b;
  }

  .news-layout-v5_wrap{
    margin-top: 55px;
  }
  .news-layout-v5_wrap > *:first-child{
    margin-top: 0;
  }
  .news-layout-v5_heading {
    margin: 55px 0 8px;
  }
  .news-layout-v5_heading .news-layout-v5_title {
    margin: 0;
    font-weight: bold;
    font-size: 1.6rem;
  }
  .news-layout-v5_heading + .news-layout-v5  {
    margin-top: 0;
  }
  .news-layout-v5 .news_article {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    border-top: 1px solid #ddd;
  }
  .news-layout-v5 .news_article + .news_article {
    border-top: 1px solid #ddd;
  }
  .news-layout-v5 .news_article:last-child {
    border-bottom: 1px solid #ddd;
  }
  .news-layout-v5 .news_article .block{
    display: block;
    width: calc((100% - (36px * 2)) / 3);
    margin-right: 36px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .news-layout-v5 .news_article .block:nth-of-type(3n){
    margin-right: 0;
  }
  .news-layout-v5 .news_article .block > *:first-child{
    margin-top: 0;
  }
  .news-layout-v5 .news_detail{
    display: block;
  }
  .news-layout-v5 .news_title{
    margin-top: 14px;
  }
  .news-layout-v5 .a-blank .news_title::after,
  .news-layout-v5 .a-pdf .news_title::after {
    display: none;
    content: none;
  }
  .news-layout-v5 .icon_news_wrap {
    width: 100px;
    margin-right: 20px;
  }
  .news-layout-v5 .icon_news_wrap .news_icon {
    width: 100px;
    padding-left: 15px;
    padding-right: 15px;
    background: #eb6b6b;
  }

  .news-layout-v6_wrap{
    margin-top: 55px;
  }
  .news-layout-v6_wrap > *:first-child{
    margin-top: 0;
  }
  .news-layout-v6_heading {
    margin: 55px 0 11px;
  }
  .news-layout-v6_heading .news-layout-v6_title {
    margin: 0;
    font-weight: bold;
    font-size: 1.6rem;
  }
  .news-layout-v6_heading + .news-layout-v6  {
    margin-top: 0;
  }
  .news-layout-v6 .news_article ,
  .news-layout-v6 .news_article + .news_article {
    border-top: 1px solid #ddd;
  }
  .news-layout-v6 .news_article:last-child {
    border-bottom: 1px solid #ddd;
  }
  .news-layout-v6 .block {
    display: block;
    padding-top: 22px;
    padding-bottom: 22px;
  }
  .news-layout-v6 .icon_news_wrap {
    width: 100px;
    margin-right: 8px;
  }
  .news-layout-v6 .icon_news_wrap .news_icon {
    width: 100px;
    padding-left: 15px;
    padding-right: 15px;
    background: #eb6b6b;
  }
  .news-layout-v6 .a-blank .news_title::after,
  .news-layout-v6 .a-pdf .news_title::after {
    display: none;
    content: none;
  }
  .news-layout-v6 .news_body {
    margin-top: 14px;
    margin-left: 180px;
  }
  .news-layout-v6 .news_text {
    font-size: 1.4rem;
  }
  .news-layout-v6 .news_note-text {
    position: relative;
    padding-left: 1.4em;
    font-size: 1.4rem;
  }
  .news-layout-v6 .news_note-text > .news_note-text_mark{
    position: absolute;
    top: 0;
    left: 0;
  }


  /* ----- selectfield-item ----- */
  .sort-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .sort-layout > .from-text {
    margin: 0 0.7em;
  }
  .selectfield-item {
    position: relative;
    width: 275px;
  }
  .selectfield-item .selectfield_trigger {
    position: relative;
    padding: 17px 45px 13px 25px;
    border: 1px solid #ddd;
    background-color: #fff;
    line-height: 1.1;
    cursor: pointer;
  }
  .selectfield-item .selectfield_trigger.first-text {
    color: #999;
  }
  .selectfield-item .selectfield_trigger::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    border-color: #008574 transparent transparent transparent;
    z-index: 1;
  }
  .selectfield-item .selectfield_balloon {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    border: 1px solid #ddd;
    border-top: none;
    background-color: #fff;
    z-index: 3;
    display: none;
  }
  .selectfield-item .selectfield_list > li {
    display: block;
    padding: 15px 30px 13px;
    color: #333;
    line-height: 1.1;
    text-decoration: none;
  }
  .selectfield-item .selectfield_list > li[data-sort-category] {
    cursor: pointer;
  }
  .selectfield-item .selectfield_list > li[data-sort-category]:hover {
    background-color: #ebf1ed;
  }
  .selectfield-item .selectfield_list > li.is-current {
    cursor: default;
  }
  .selectfield-item .selectfield_list > li.is-current:hover {
    background-color: transparent;
  }
  /* ----- sort-item-select ----- */
  .sort-item-select > select {
    width: 275px;
    background-color: white;
    border: 1px solid #ddd;
    display: inline-block;
    font: inherit;
    font-size: 1.6rem;
    padding: 10px 45px 10px 20px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
  }
  .sort-item-select > select::-ms-expand {
    display: none;
  }
  /* arrows */
  .sort-item-select > select {
    background-image:
      linear-gradient(45deg, transparent 50%, #008574 50%),
      linear-gradient(135deg, #008574 50%, transparent 50%),
      linear-gradient(to right, #fff, #fff);
    background-position:
      calc(100% - 25px) calc(1.3em + 2px),
      calc(100% - 19px) calc(1.3em + 2px),
      20px 50%;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
  }

  /* ----- news-no-text ----- */
  .tab-layout > .tab_detail > .news-no-text:first-child {
    margin-top: 35px !important;
  }
  /* ----- research-contents ----- */
  body[data-search-loading="true"]:after {
    content: "";
    position: fixed;
    top: 0;
    right: 80px;
    bottom: 0;
    left: 0;
    background: url(/common/plugin/colorbox/images/loading.gif) no-repeat center center #000;
    opacity: 0.7;
    z-index: 10;
  }
  .research-contents {
    padding: 40px 0;
    background-color: #f4f4f4;
  }
  .research-contents .research-heading .heading_title {
    margin-bottom: 1em;
    font-size: 2.7rem;
    font-weight: bold;
    text-align: center;
  }
  .research-contents > .research-contents-wrap {
    max-width: 1200px;
    margin: 0 auto;
  }
  .research-contents > .research-contents-wrap .search-box .kakueki-search {
    margin-top: 30px;
  }
  .research-contents > .research-contents-wrap .search-box .search-box_inner .search-form,
  .research-contents-v2 .search-form {
    display: -webkit-flex;
    display: flex;
  }
  .research-contents > .research-contents-wrap .search-box .search-box_inner .search-form .search-text,
  .research-contents-v2 .search-form .search-text {
    width: 87.5%;
    padding: 12px 28px;
    border-radius: 0;
    border: solid 1px #ddd;
    box-shadow:2px 2px 3px -3px #dddddd inset;
    outline: none;
    background: none;
    background-color: #fff;
    font-size: 1.8rem;
  }
  .research-contents > .research-contents-wrap .search-box .search-box_inner .search-form .search-submit,
  .research-contents-v2 .search-form .search-submit {
    position: relative;
    width: 12.5%;
    background: #555;
  }
  .research-contents > .research-contents-wrap .search-box .search-box_inner .search-form .search-submit::before,
  .research-contents-v2 .search-form .search-submit::before {
    position: absolute;
    content: "";
    width: 23px;
    height: 24px;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -155px -164px;
    vertical-align: middle;
  }
  .research-contents > .research-contents-wrap .search-box .search-box_inner .search-form .search-submit [type="submit"],
  .research-contents-v2 .search-form .search-submit [type="submit"] {
    position: relative;
    width: 100%;
    border: none;
    background: none;
    padding: 15px 20px 15px 30px;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: bold;
    cursor: pointer;
  }
  .research-contents > .research-contents-wrap .results-box {
    margin-top: 20px;
    padding: 25px 30px;
    background-color: #fff;
  }
  .research-contents-v2 .results-box {
    margin-top: 20px;
    padding: 25px 30px;
  }
  .research-contents > .research-contents-wrap .results-layout,
  .research-contents-v2 .results-layout {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .research-contents > .research-contents-wrap .results-layout .results-item,
  .research-contents-v2 .results-layout .results-item {
    width: calc(100% - 250px);
  }
  .research-contents > .research-contents-wrap .results-layout .results-item.button-item,
  .research-contents-v2 .results-layout .results-item.button-item {
    width: 222px;
  }
  .research-contents > .research-contents-wrap .results-layout .results-item > :first-child,
  .research-contents-v2 .results-layout .results-item > :first-child {
    margin-top: 0 !important;
  }
  .research-contents > .research-contents-wrap .results-box .results-description > dt,
  .research-contents-v2 .results-box .results-description > dt {
    margin-bottom: 0.5em;
    font-weight: bold;
  }
  .research-contents > .research-contents-wrap .results-box .results-description > dd > span,
  .research-contents-v2 .results-box .results-description > dd > span {
    display: block;
  }
  .research-contents > .research-contents-wrap .results-box .results-description > dd > span + span,
  .research-contents-v2 .results-box .results-description > dd > span + span {
    margin-top: 0.5em;
  }
  .research-contents > .research-contents-wrap .results-box .results-item.button-item .link-button-v3 > li > a,
  .research-contents-v2 .results-box .results-item.button-item .link-button-v3 > li > a {
    min-width: 222px;
  }
  .research-contents > .research-contents-wrap .results-box .results-item.button-item .link-button-v3 > li > a .link_label::after,
  .research-contents-v2 .results-box .results-item.button-item .link-button-v3 > li > a .link_label::after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 14px;
    margin-left: 10px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -122px 0;
    vertical-align: middle;
  }
  .research-contents-v2 {
    display: flex;
  }
  .research-contents-v2 .box_search {
    width: 80%;
  }
  .research-contents-v2 .search-form .search-text {
    width: 84.5%;
  }
  .research-contents-v2 .search-form .search-submit {
    width: 15.5%;
  }
  .research-contents-v2 .box_search + .box_search {
    width: 18.5%;
    margin-left: 1.5%;
  }
  .research-contents-v2 .box_search .results-box {
    padding: 0;
    margin: 0;
    background: none;
  }
  .research-contents-v2 .box_search .results-box [class*="link-button"] {
    margin: 0;
  }
  .research-contents-v2 .box_search .results-box .button_inner {
    padding: 13px 35px 13px 45px;
  }

  /* ----- research-layout ----- */
  .research_item + .research_item {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #ddd;
  }
  .research-layout .item_info {
    display: -webkit-flex;
    display: flex;
    margin-bottom: 20px;
  }
  .research-layout .item_info > .item_date {
    width: 145px;
  }
  .research-layout .item_info > .item_icon_wrap {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% - 145px);
  }
  .research-layout .item_info > .item_icon_wrap > .item_icon {
    display: inline-block;
    min-width: 100px;
    margin-right: 10px;
    margin-bottom: 0.5em;
    padding: 2px 20px 0;
    background-color: #008574;
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.5em;
    text-align: center;
    border-radius: 30px;
  }
  [data-browser="ie11"] .research-layout .item_info > .item_icon_wrap > .item_icon {
    padding: 5px 20px 0;
  }
  .research-layout .item_heading .item_heading_title {
    font-size: 2.0rem;
  }
  .research-layout .item_text {
    margin-top: 20px;
  }
  .research-layout .item_text .speakers-sub {
    font-size: 1.4rem;
  }
  .research-layout .item_detail {
    margin-top: 20px;
    padding: 25px 30px;
    background-color: #fff9e3;
  }
  .research-layout .item_detail > :first-child {
    margin-top: 0 !important;
  }
  .research_item .item_heading .a-pdf::after {
   display: none;
  }
  .sp-FollowSearch {
    display: none;
  }

  /* ----- box-layout-contents ----- */
  .box-layout-contents {
    margin-top: 0;
    background: #f4f4f4;
  }
  .box-layout-contents > .box-layout-contents-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 0;
  }
  .box-layout-contents .image-set.profile-photo > .image_inner {
    width: 310px;
  }
  .box-layout-contents .heading-lv4 {
    margin-bottom: 0.5em;
  }
  #main .box-layout-contents .heading-lv4 + * {
    margin-top: 0.5em;
  }

  /* ----- over-container ----- */
  .over-container {
    width: 100vw;
    margin: 60px calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background: #f4f4f4;
  }
  [data-sidebar="true"] .over-container {
    margin-left:  calc(50% - 120px - 50vw);
    margin-right:  calc(50% - 120px - 50vw);
  }
  .over-container-v2 {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 60px;
    padding: 0 calc(50vw - 50%);
    background: #f4f4f4;
  }
  .over-container > .over-container-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 55px 0;
  }
  .over-container-v2 > .over-container-wrap-v2 {
    max-width: 1200px;
    margin: 0 auto;
    padding: 25px 0;
  }

  /* ----- graph-layout ----- */
  .graph-layout {
    margin-top: 2em;
  }
  .graph-layout .image_caption {
    margin-top: 0;
    margin-bottom: 0.2em;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
  }
  .graph-layout-v2 {
    max-width: 790px;
    margin: 40px auto 0;
    padding: 20px 30px;
    border: 1px solid #d8d8d8;
    text-align: center;
  }
  .graph-layout-v2 .box_title {
    margin-bottom: 1.5em;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
  }
  .graph-layout-v2 .box_detail {
    text-align: left;
  }
  .graph-layout-v2 .box_detail > .image-set-layout {
    margin-top: 35px;
  }
  .graph-layout-v2 .box_detail .list-note > li {
    color: #666;
  }

  /* ----- formula-layout ----- */
  .formula-layout-v1 {
    margin: 25px 0;
  }
  .formula-layout-v2 {
  }
  [class*="formula-layout"] .image-set {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .formula-layout-v2 .image-set {
    margin-top: 0.2em;
  }
  /* ----- flow-layout ----- */
  .flow-layout {
   margin-top: 2em;
  }
  .flow-layout + .flow-layout {
   margin-top: 2em;
  }
  .flow-layout > dt,
  .flow-layout > p.flow-layout_dt {
   position: relative;
   padding-left: 120px;
   padding-top: 0.1em;
   font-weight: bold;
   font-size: 1.8rem;
  }
  .flow-layout > dd {
   margin-top: 1em;
  }
  .flow-layout > dt > .step-icon,
  .flow-layout > p.flow-layout_dt > .step-icon {
   position: absolute;
   top: 0;
   left: 0;
   display: inline-block;
   min-width: 107px;
   padding: 4px 12px;
   background-color: #eb6b6b;
   border-radius: 20px;
   font-size: 1.6rem;
   text-align: center;
   color: #fff;
   line-height: 1.1;
  }
  .flow-layout > dt > .step-icon-type02,
  .flow-layout > p.flow-layout_dt > .step-icon-type02 {
   position: absolute;
   top: 0;
   left: 0;
   display: inline-block;
   min-width: 107px;
   padding: 7px 12px;
   background-color: #eb6b6b;
   border-radius: 20px;
   font-size: 1.6rem;
   text-align: center;
   color: #fff;
   line-height: 1.1;
  }
  .flow-layout > dt > .step-icon > span,
  .flow-layout > p.flow-layout_dt > .step-icon > span {
   font-size: 2.0rem;
  }
  [data-browser="ie11"] .flow-layout > dt,
  [data-browser="ie11"] .flow-layout > p.flow-layout_dt {
   padding-top: 0.3em;
  }
  [data-browser="ie11"] .flow-layout > dt > .step-icon,
  [data-browser="ie11"] .flow-layout > p.flow-layout_dt > .step-icon {
   padding-top: 8px;
   padding-bottom: 1px;
  }


  /* ------------------------------------------------------
   * Element >>> Modal
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .modal-set {
    margin-top: 1em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .modal-set.gp-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  .modal-set.gp-al-left {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .modal-set .a-modal {
    position: relative;
    outline: none;
  }
  [class^="js-modal-"] {
    outline: none !important;
  }
  .modal-set .a-modal:hover {
    box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.2);
  }
  .modal-set .a-modal::after {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 40px;
    height: 40px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -180px -160px;
    cursor: pointer;
    content: "";
  }
  [data-browser="ie11"] .modal-set .modal_inner img {
   width: 100%;
  }

  /* for IE11 hack */
  _:-ms-lang(x)::-ms-backdrop, .modal-set.gp-al-center > .modal_inner,
  _:-ms-lang(x)::-ms-backdrop, .modal-set.gp-al-right > .modal_inner{
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }

  /* ----- modal-area ----- */
  .modal-area {
    display: none;
  }
  /* modal-photo */
  #colorbox.modal-photo {
   max-width: 914px;
  }
  #cboxOverlay.modal-photo {
   opacity: 0.7 !important;
  }
  #colorbox.modal-photo #cboxLoadedContent {
   padding: 60px 30px 30px;
  }
  #colorbox.modal-photo #cboxLoadedContent {
      border: none;
  }
  #colorbox.modal-photo #cboxClose {
    position: absolute;
    top: 18px;
    right: 18px;
    display: block;
    width: 30px;
    height: 30px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -170px -30px;
    cursor: pointer;
  }
  #colorbox.modal-photo #cboxClose:hover {
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -200px -30px;
  }
  /* modal-photo */
  #colorbox.modal-youtube {
   max-width: 914px;
  }
  #cboxOverlay.modal-youtube {
   opacity: 0.7 !important;
  }
  #colorbox.modal-youtube #cboxLoadedContent {
   padding: 60px 30px 30px;
  }
  #colorbox.modal-youtube #cboxLoadedContent {
      border: none;
  }
  #colorbox.modal-youtube .cboxIframe {
      border: none;
  }
  #colorbox.modal-youtube #cboxClose {
    position: absolute;
    top: 18px;
    right: 18px;
    display: block;
    width: 30px;
    height: 30px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -170px -30px;
    cursor: pointer;
  }
  #colorbox.modal-youtube #cboxClose:hover {
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -200px -30px;
  }

  /* research_modal */
  #colorbox.research_modal #cboxContent {
    margin-top: 0;
    background: none;
  }
  #colorbox.research_modal #cboxLoadedContent {
      border: none;
  }
  #colorbox.research_modal #cboxClose {
    display: none !important;
  }
  /* ----- research-layout ----- */
  #colorbox.research_modal .results-heading {
    position: relative;
    padding: 15px 0 15px;
    background-color: #008574;
  }
  #colorbox.research_modal .results-heading > .closeBtn {
    position: absolute;
    top: 20px;
    right: 20px;
    display: block;
    width: 27px;
    height: 27px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -73px -65px;
    cursor: pointer;
  }
  #colorbox.research_modal .results-heading .heading_title {
    color: #fff;
    font-size: 2.0rem;
    font-weight: bold;
    text-align: center;
  }
  #colorbox.research_modal .results-heading-lv4 .heading_title {
    margin-bottom: 0.5em;
    font-size: 1.8rem;
  }
  #colorbox.research_modal .results-heading-lv5 {
    margin-bottom: 0.5em;
  }
  #colorbox.research_modal .results-heading-lv5[class*="icon"] {
    position: relative;
    padding-left: 35px;
  }
  #colorbox.research_modal .results-heading-lv5[class*="icon"]::before {
    position: absolute;
    content: "";
    top: 0.2em;
    left: 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
  }
  #colorbox.research_modal .results-heading-lv5.icon01::before,
  #colorbox.research_modal .results-heading-lv5.icon-training::before {
    width: 25px;
    height: 22px;
    background-position:  0 -312px;
  }
  #colorbox.research_modal .results-heading-lv5.icon02::before,
  #colorbox.research_modal .results-heading-lv5.icon-challenge::before {
    width: 24px;
    height: 26px;
    background-position:  -30px -312px;
  }
  #colorbox.research_modal .results-heading-lv5.icon03::before,
  #colorbox.research_modal .results-heading-lv5.icon-skill::before {
    width: 18px;
    height: 21px;
    background-position:  -59px -312px;
  }
  #colorbox.research_modal .results-heading-lv5.icon04::before,
  #colorbox.research_modal .results-heading-lv5.icon-other::before {
    width: 22px;
    height: 22px;
    background-position:  -82px -312px;
  }
  #colorbox.research_modal .results-heading-lv5 .heading_title {
    font-weight: bold;
  }
  #colorbox.research_modal .results_modal-wrap {
    padding: 25px 70px 35px;
  }
  #colorbox.research_modal .results_modal-wrap > section + section {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid #ddd;
  }
  #colorbox.research_modal .results_modal-wrap > section > section + section {
    margin-top: 25px;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list > li {
    width: 32%;
    margin-right: 2%;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list.no-col > li {
    width: auto;
    margin-right: 8%;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list > li:nth-child(3n) {
    margin-right: 0;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list.no-col  > li:nth-child(3n) {
    margin-right: 8%;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list > li:nth-child(n+4) {
    margin-top: 0.5em;
  }
  #colorbox.research_modal .results_modal-wrap .checkbox-list.no-col > li:nth-child(n+4) {
    margin-top: 0;
  }
  #colorbox.research_modal .search_checkbox {
    position: relative;
    display: inline-block;
    cursor: pointer;
    line-height: 1.3;
  }
  #colorbox.research_modal .search_checkbox input[type="checkbox"] {
    position: absolute;
    z-index: -1;
  }
  #colorbox.research_modal .search_checkbox .checkbox_label {
    position: relative;
    display: inline-block;
    padding: 0 0 0 35px;
    color: #336699;
    line-height: 1.3;
  }
  #colorbox.research_modal .search_checkbox .checkbox_label::before,
  #colorbox.research_modal .search_checkbox .checkbox_label::after {
    content: "";
    position: absolute;
    pointer-events: none;
  }
  #colorbox.research_modal .search_checkbox .checkbox_label::before {
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background-color: #fff;
    border: 1px solid #ddd;
  }
  #colorbox.research_modal .search_checkbox .checkbox_label::after {
    top: 0;
    left: 0;
    transform: rotate(-45deg);
    width: 12px;
    height: 8px;
    margin: 4px 0 0 4px;
    border-bottom: 3px solid #fff;
    border-left: 3px solid #fff;
    transition: all .2s ease-out 0s;
    opacity: 0;
  }
  #colorbox.research_modal .search_checkbox input[type="checkbox"]:checked + .checkbox_label {
  }
  #colorbox.research_modal .search_checkbox input[type="checkbox"]:checked + .checkbox_label::before {
    border-color: #008574;
    background-color: #008574;
  }
  #colorbox.research_modal .search_checkbox input[type="checkbox"]:checked + .checkbox_label::after {
    opacity: 1;
  }
  #colorbox.research_modal .results-execution {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 25px;
  }
  #colorbox.research_modal .results-execution > .results-calculation {
    margin-right: 30px;
    font-size: 1.8rem;
    font-weight: bold;
  }
  #colorbox.research_modal .results-execution > .results-calculation > .num {
    display: inline-block;
    margin-left: 5px;
    font-size: 2.7rem;
    font-weight: bold;
  }
  #colorbox.research_modal .results-execution > .results-search > .results-button {
    position: relative;
    display: inline-block;
    width: 290px;
    border: 1px solid #008574;
    border-radius: 42px;
    box-shadow: 0px 4px 0px 0px rgba(0, 95, 83, 1);
    background-color: #008574;
    -webkit-transition: all 0.07s ease-out 0s;
    transition: all 0.07s ease-out 0s;
  }
  #colorbox.research_modal .results-execution > .results-search > .results-button:hover {
    background-color: #fff;
    border: 1px solid #008574;
    box-shadow: none;
    transform: translate3d(0, 4px, 0);
  }
  #colorbox.research_modal .results-execution > .results-search > .results-button::before {
    position: absolute;
    content: "";
    width: 23px;
    height: 24px;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -155px -164px;
    vertical-align: middle;
  }
  #colorbox.research_modal .results-execution > .results-search > .results-button [type="submit"] {
    position: relative;
    width: 100%;
    border: none;
    background: none;
    padding: 15px 20px 15px 30px;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: bold;
    cursor: pointer;
  }
  #colorbox.research_modal .results-execution > .results-search > .results-button:hover [type="submit"] {
    color: #008574;
  }
  /* ----- non-research-text ----- */
  .non-research-text {
    margin: 80px 0;
    color: #cc0000;
    font-size: 2.2rem;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
  }
  .non-research-text:first-child {
    margin-top: 80px !important;
  }
  /* ----- plugin-layout ----- */
  .plugin-layout {
    margin-top: 1em;
  }
  .plugin-layout a {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    padding: 27px 39px 26px;
    border: 1px solid #ddd;
    color: #333;
    text-decoration: none;
    outline: none;
  }
  .plugin-layout .plugin_detail {
    padding-left: 36px;
  }
  .plugin-layout a .a-blank {
    color: #0075c2;
    text-decoration: underline;
  }
  .plugin-layout a:hover .a-blank {
    text-decoration: none;
  }
  /* ----- slider-banner ----- */
  .slider-banner {
    position: relative;
    padding: 0 40px;
  }
  .slider-banner li {
    padding: 0 10px;
  }
  .slider-banner .slick-prev,
  .slider-banner .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    display: block;
    width: 15px;
    height: 25px;
    padding: 0;
    background: url(/common/img/com_sprite01.png) no-repeat -20px -210px;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
  }
  .slider-banner .slick-prev {
    left: -40px;
    background: url(/common/img/com_sprite01.png) no-repeat 0 -210px;
  }
  .slider-banner .slick-next {
    right: -40px;
  }

  .slider-banner-v2 ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .slider-banner-v2 ul li {
    padding: 0 10px;
  }

  .slider-imagelink {
    position: relative;
    margin-top: 2em;
  }
  .slider-imagelink ul li {
    position: relative;
  }
  .slider-imagelink ul li figure img {
    margin-left: auto;
    margin-right: auto;
  }
  .slider-imagelink ul li .imagelink_text {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: rgba(0,0,0,0.5);
    padding: 15px 20px;
    color: #fff;
    font-weight: bold;
    font-size: 2.2rem;
  }
  .hero-slider-contents .slider-imagelink ul li .imagelink_text {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    margin: 0 auto;
    background: #008574;
    padding: 18px 135px 18px 25px;
    font-size: 2.6rem;
    line-height: 1.4;
  }
  .slider-imagelink .slick-prev,
  .slider-imagelink .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    margin-top: -27px;
    display: block;
    width: 36px;
    height: 54px;
    padding: 0;
    background: url(/common/img/com_sprite01.png) no-repeat -160px -70px;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    z-index: 10;
  }
  .slider-imagelink .slick-prev {
    left: 20px;
    background: url(/common/img/com_sprite01.png) no-repeat -120px -70px;
  }
  .slider-imagelink .slick-next {
    right: 20px;
  }

  .slider-imagelink .slick-dotted.slick-slider {
    margin-bottom: 30px;
  }
  .hero-slider-contents .slider-imagelink .slick-dotted.slick-slider {
    margin-bottom: 0;
  }

  .slider-imagelink .slick-dots {
    display: block;
    bottom: -25px;
    padding: 0;
    width: auto;
    margin: 0 auto;
    list-style: none;
    text-align: center;
  }
  .slider-imagelink .slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
  }
  .slider-imagelink .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 10px;
    height: 10px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
  }
  .slider-imagelink .slick-dots li button:hover,
  .slider-imagelink .slick-dots li button:focus {
    outline: none;
  }
  .slider-imagelink .slick-dots li button:hover:before,
  .slider-imagelink .slick-dots li button:focus:before {
    opacity: 1;
  }
  .slider-imagelink .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    content: '';
    border-radius: 50%;
    background-color: #bbb;
    text-align: center;
  }
  .slider-imagelink .slick-dots li.slick-active button:before {
    background-color: #008574;
  }
  .hero-slider-contents .slider-imagelink .slick-dots {
    position: absolute;
    right: 55px;
    bottom: 28px;
  }
  .hero-slider-contents .slider-imagelink .slick-dots li button::before {
    background-color: #fff;
  }
  .hero-slider-contents .slider-imagelink .slick-dots li.slick-active button::before {
    background-color: #999;
  }

  .imagelink_control {
    position: absolute;
    width: 15px;
    height: 17px;
    right: 0;
    bottom: 0;
  }
  .imagelink_control .imagelink_play,
  .imagelink_control .imagelink_stop {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 17px;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    cursor: pointer;
    z-index: 10;
  }
  .imagelink_control .imagelink_play {
    display: none;
  }
  .imagelink_control .imagelink_play::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 17px;
    background: url("/common/img/com_sprite01.png") no-repeat -90px -180px;
  }
  .imagelink_control .imagelink_stop::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 17px;
    background: url("/common/img/com_sprite01.png") no-repeat -70px -180px;
  }
  .hero-slider-contents .imagelink_control {
    right: 30px;
    bottom: 28px;
  }
  .hero-slider-contents .imagelink_control .imagelink_stop::after {
    background: url("/common/img/com_sprite01.png") no-repeat -111px -311px;
  }
  .hero-slider-contents .imagelink_control .imagelink_play::after {
    background: url("/common/img/com_sprite01.png") no-repeat -131px -311px;
  }

  .map-iframe {
    max-width: 100%;
  }
  .movie-iframe {
    max-width: 100%;
  }

  .slider-index-layout {
    margin-top: 75px;
  }
  .slider-index-layout > [class*="indexLayout"] {
    margin: 40px -20px 0 !important
  }
  .slider-index-layout > [class*="indexLayout"] .index_item {
    width: 275px;
    margin: 0 20px;
    border: 1px solid #ddd;
  }
  .slider-index-layout > [class*="indexLayout"] .index_item > .block > .item_detail {
    border: none;
  }
  .slider-index-layout > [class*="indexLayout"] .index_item > .block > .item_detail .item_info_text {
    font-size: 1.4rem;
  }
  .slider-index-layout .slick-prev,
  .slider-index-layout .slick-next,
  .slider-indexLayout02 .slick-prev,
  .slider-indexLayout02 .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    margin-top: -70px;
    display: block;
    width: 36px !important;
    height: 54px !important;
    padding: 0;
    background: url(/common/img/com_sprite01.png) no-repeat -160px -70px;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    z-index: 10;
  }
  .slider-index-layout .slick-prev,
  .slider-indexLayout02 .slick-prev {
    left: 20px;
    background: url(/common/img/com_sprite01.png) no-repeat -120px -70px;
  }
  .slider-index-layout .slick-next,
  .slider-indexLayout02 .slick-next {
    right: 20px;
  }
  .slider-indexLayout02 .slick-prev,
  .slider-indexLayout02 .slick-next {
    top: 30%;
  }
  .slider-index-layout .slick-dots {
    display: block;
    bottom: 0;
    padding: 0;
    width: auto;
    margin: 10px auto 0;
    list-style: none;
    text-align: center;
  }
  .slider-index-layout .slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
  }
  .slider-index-layout .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 10px;
    height: 10px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
  }
  .slider-index-layout .slick-dots li button:hover,
  .slider-index-layout .slick-dots li button:focus {
    outline: none;
  }
  .slider-index-layout .slick-dots li button:hover:before,
  .slider-index-layout .slick-dots li button:focus:before {
    opacity: 1;
  }
  .slider-index-layout .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    content: '';
    border-radius: 50%;
    background-color: #bbb;
    text-align: center;
  }
  .slider-index-layout .slick-dots li.slick-active button:before {
    background-color: #008574;
  }

  /* ----- slider-indexLayout02 ----- */
  .slider-indexLayout02.slick-slider {
    display: block !important;
    margin: 0 -18px;
  }
  .slider-indexLayout02.slick-slider[data-row-pc="4"] > * {
    width: auto;
    margin: 20px 0 0 !important;
  }
  .slider-indexLayout02.slick-slider .index_item {
    width: auto;
    margin: 0 18px;
  }
  .slider-indexLayout02 .slick-dots {
    display: block;
    bottom: 0;
    padding: 0;
    width: auto;
    margin: 10px auto 0;
    list-style: none;
    text-align: center;
  }
  .slider-indexLayout02 .slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
  }
  .slider-indexLayout02 .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 10px;
    height: 10px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
  }
  .slider-indexLayout02 .slick-dots li button:hover,
  .slider-indexLayout02 .slick-dots li button:focus {
    outline: none;
  }
  .slider-indexLayout02 .slick-dots li button:hover:before,
  .slider-indexLayout02 .slick-dots li button:focus:before {
    opacity: 1;
  }
  .slider-indexLayout02 .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    content: '';
    border-radius: 50%;
    background-color: #bbb;
    text-align: center;
  }
  .slider-indexLayout02 .slick-dots li.slick-active button:before {
    background-color: #008574;
  }


  /* ------------------------------------------------------
   * component
  ------------------------------------------------------ */

  /*--- B48 ---*/
  .dl-box{
    padding: 30px;
    border: 1px solid #ddd;
  }
  .dl-box .heading-lv4 {
    margin: 0;
  }
  .contact-layout{
    display: flex;
  }
  .contact-layout > .cv-layout:last-child{
    width: 31.3%;
  }
  .contact-layout > .cv-layout:first-child{
    margin-right: 36px;
    width: 65.6%;
  }
  .contact-layout > .cv-layout > .cv_detail{
    padding: 25px 30px;
  }
  .contact-layout  > .cv-layout:first-child .cv-button > li > a{
    min-width: 343px;
  }
  .contact-layout  > .cv-layout:last-child .cv-button > li > a{
    min-width: 312px;
  }
  .contact-layout  > .cv-layout .cv_telnumber-list{
    justify-content: center;
  }
  .contact-layout  > .cv-layout .cv_tel_title{
    margin-bottom: 7px;
  }
  .contact-layout  > .cv-layout .list-note{
    margin-top: 0.4em;
  }
  .contact-column-layout {
    display: flex;
  }
  .contact-column-layout .cv-layout-v2 {
    max-width: 380px;
    margin-left: 35px;
  }
  .contact-column-layout [class*="cv-layout"] > .cv_detail {
    padding: 25px 30px;
  }
  .contact-column-layout .cv-button > li > a {
    min-width: auto;
    width: 100%;
  }
  .contact-column-layout .cv-layout .cv_telnumber-list {
    display: block;
    text-align: center;
  }
  .contact-column-layout .cv-layout .cv_tel_title {
    margin-bottom: 0;
  }

  /*--- B66 ---*/
  [class*="index-layout"] .index_item .item_heading_lead {
    font-size: 1.4rem;
  }
  /*--- B67 ---*/
  .fellow-layout > .inner > *:first-child{
    margin-top: 0;
  }
  .fellow-layout .fellow_title{
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.2;
    color: #008574;
  }
  .fellow-layout .fellow_title + *{
    margin-top: 0.8em;
  }
  .fellow-layout .fellow-box{
    margin-top: 2.45em;
    padding: 35px 40px;
    background-color: #fff;
  }
  .fellow-layout .fellow_list{
    display: flex;
    margin-top: 0.4em;
  }
  .fellow-layout .fellow_title + .fellow_list{
    margin-top: 0.6em;
  }
  .fellow-layout .fellow_list > dt{
    margin-right: 28px;
  }

  /*--- B94 ---*/
  .satisfaction-layout {
    margin: 80px 0 45px;
    padding: 40px 110px;
    background: url(/research/jcsi/img/index_bg01.jpg) no-repeat 0 0;
    background-size: cover;
    color: #fff;
  }
  .satisfaction-layout > section > .heading-lv2 {
    margin: 0 0 30px;
  }
  .satisfaction-layout > section > .heading-lv2 .block {
    padding: 0;
    color: #fff;
    border-bottom: none;
  }
  .satisfaction-layout > section > .heading-lv2 .block > .heading_subtitle {
    font-size: 2.0rem;
  }
  .satisfaction-layout > section > p {
    line-height: 1.6;
  }
  .business-layout {
    margin-bottom: 2em;
  }
  .business-layout > .column_item {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .business-layout[data-row-pc]:not([data-row-pc="1"]):not([data-row-pc="auto"]) > * {
    margin-top: 4em;
  }
  .business-layout > .column_item > .item_icon + div {
    width: calc(100% - 180px);
    margin-left: 30px;
  }
  .business-layout > .column_item .column_detail > .column_text-lead {
    margin-bottom: 1em;
    font-size: 2.2rem;
    font-weight: bold;
  }
  .business-layout > .column_item > .link-button {
    width: calc(100% - 170px);
    margin-left: auto;
  }
  .business-layout > .column_item > .link-button > li > a {
    width: 100%;
    min-width: auto;
  }

  /*--- C6 ---*/
  .history-layout > .history_article {
    border-bottom: 1px solid #ddd;
  }
  .history-layout > .history_article > .block {
    padding: 20px 0;
  }
  .history-layout > .history_article > .block > .history_detail {
    display: -webkit-flex;
    display: flex;
  }
  .history-layout > .history_article > .block > .history_detail > .history_property {
    width: 115px;
    color: #666;
    font-weight: bold;
  }
  .history-layout > .history_article > .block > .history_detail > .history_item {
    display: -webkit-flex;
    display: flex;
    width: calc(100% - 115px);
  }
  .history-layout > .history_article > .block > .history_detail > .history_item-v2 {
  }
  .history-layout > .history_article > .block > .history_detail > .history_item-v3 {
    width: calc(100% - 115px);
  }
  .history-layout > .history_article > .block > .history_detail > .history_item-v3 > .history_title {
    display: -webkit-flex;
    display: flex;
  }
  .history-layout > .history_article > .block > .history_detail > .history_item > .history_title {
    display: -webkit-flex;
    display: flex;
    width: calc(100% - 300px);
  }
  .history-layout > .history_article > .block > .history_detail .history_title > .history-logo {
    display: inline-block;
    margin-left: 1.5em;
  }
  .history-layout > .history_article > .block > .history_detail > .history_item > .history_image {
    min-width: 280px;
    margin-left: auto;
  }
  [data-browser="ie11"] .history-layout > .history_article > .block > .history_detail > .history_item > .history_image img,
  [data-browser="ie11"] .history-layout > .history_article > .block > .history_detail > .history_item-v2 > .history_image img,
  [data-browser="ie11"] .history-layout > .history_article > .block > .history_detail > .history_item-v3 > .history_image img {
    width: 280px;
  }
  .history-layout > .history_article > .block > .history_detail > .history_item-v2 > .history_image > .image_inner,
  .history-layout > .history_article > .block > .history_detail > .history_item-v3 > .history_image > .image_inner {
    text-align: center;
  }
  .column_detail.column_person {
    padding-top: 2em;
  }
  .column_detail.column_person > .person-name {
    font-weight: bold;
  }

  /*--- C17 ---*/
  .heading-bg_saiyo {
    background-color: #fff
  }
  .heading-bg_saiyo >.heading-lv1-bg {
    width: 100%;
    max-width: none;
    margin: 0 auto;
    display: flex;
    align-items: center;
    padding: 0;
    min-height: 190px;
  }
  .heading-bg_saiyo .heading-lv1-bg > .block {
    display: block;
    padding: 0;
  }
  .heading-bg_saiyo .heading-lv1-bg > .block::after {
    display: none;
  }
  .history-lead {
    margin-bottom: 2em;
    font-size: 1.8rem;
    line-height: 2;
    font-weight: bold;
    text-align: center;
  }
  .history-lead-end {
    margin: 4em 0;
    font-size: 1.8rem;
    line-height: 2;
    text-align: center;
    font-weight: bold;
  }
  .column-history {
    display: flex;
  }
  .column-history > .column_image {
    width: 376px;
    margin-right: 35px;
  }
  .column-history > .column_image .image-set {
    margin-top: 0;
  }
  .column-history > .column_image .image-set .image_caption {
    font-size: 1.6rem;
  }
  .column-history > .column_image .image-set .image_caption .name_caption {
    font-weight: bold;
  }
  .column-history > .column_detail {
    width: calc(100% - 411px);
  }

  /*--- D ---*/
  .seminar-heading .heading_title,
  .over-container .over-container-wrap > .over-container-heading .heading_title {
    margin: 0 auto 1em;
    font-size: 2.7rem;
    font-weight: bold;
    text-align: center;
  }
  .over-container .over-container-wrap > .over-container-heading-v2 .heading_title {
    margin: 0 auto 1em;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
  }
  .over-container .over-container-wrap > .over-container-heading.ver02 .heading_title {
    margin-top: 2em;
  }
  .seminar-column-layout {
    margin-bottom: 30px;
  }
  .seminar-column-layout,
  .seminar-column02-layout {
    display: -webkit-flex;
    display: flex;
  }
  .seminar-column02-layout + .seminar-column02-layout {
    margin-top: 1em;
  }
  .seminar-column-layout > .column_item-left {
    width: 23%;
  }
  .seminar-column-layout > .column_item-right {
    width: 74%;
    margin-left: 3%;
  }
  .seminar-column02-layout > .column_item-v2min {
    width: 30%;
  }
  .seminar-column02-layout > .column_item-v2wide {
    width: 66%;
  }
  .seminar-column02-layout > [class*="column_item"] + [class*="column_item"] {
    margin-left: 4%;
  }
  .seminar-column-layout > [class*="column_item"] .seminar-column-inner {
    margin-top: 0 !important;
    padding: 30px;
    background-color: #fff;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 {
    margin-bottom: 0;
    background-color: #008574;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .block {
    -webkit-align-items: center;
    align-items: center;
    padding: 10px 10px 10px 30px;
    border-bottom: none;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .block .heading_title {
    color: #fff;
    font-size: 1.8rem;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .link-button.heading-min {
    margin-top: 0;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .link-button.heading-min > li > a {
    min-width: auto;
    border: none;
    box-shadow: none;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .link-button.heading-min > li > a:hover {
    transform: translate3d(0, 0, 0);
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .link-button.heading-min > li > a::before {
    display: none;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv2 .link-button.heading-min > li > a > .button_inner {
    padding: 5px 20px 5px 20px;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3 {
    position: relative;
    margin: 0;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3 .block {
    padding: 0 0 10px 30px;
    border-left: none;
    border-bottom: 1px solid #008574;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3[class*="icon"]::before {
    position: absolute;
    content: "";
    top: 0.2em;
    left: 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon01::before,
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon-training::before {
    width: 25px;
    height: 22px;
    background-position:  0 -312px;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon02::before,
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon-challenge::before {
    width: 24px;
    height: 26px;
    background-position:  -30px -312px;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon03::before,
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon-skill::before {
    width: 18px;
    height: 21px;
    background-position:  -59px -312px;
  }
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon04::before,
  .seminar-column-layout > [class*="column_item"] .heading-lv3.icon-other::before {
    width: 22px;
    height: 22px;
    background-position:  -82px -312px;
  }

  .seminar-column-layout > [class*="column_item"] .heading-lv3 .block .heading_title {
    font-size: 1.6rem;
  }
  .seminar-column-layout > [class*="column_item"] .seminar-column-inner > .link-text {
    margin-top: 0 !important;
  }
  .seminar-slider-banner-box {
    border-top: 1px solid #ddd;
    margin: 70px -100vw 0;
    padding: 40px 100vw 0;
  }
  .link-button.minimum > li > a > .button_inner {
    padding: 17px 25px 17px 35px;
  }
  .accordion-SP_trigger-v2 {
    display: none;
  }


  /* point-layout */
  .point_lead_v1{
    color: #008574;
    font-weight: bold;
    font-size: 2.2rem;
    line-height: 1.2;
    text-align: center;
  }
  .point_lead_v2{
    margin-top: 1.2em;
    text-align: center;
  }
  .point-listWrap{
    margin-top: 2.1em;
    display: flex;
    justify-content: center;
  }
  .point-list{
    margin-right: 74px;
    display: flex;
    align-items: center;
  }
  .point-list:last-child{
    margin-right: 0;
  }
  .point-list > dt{
    width: 80px;
    margin-right: 18px;
  }
  .point-list > dd{
    font-weight: bold;
  }
  /* program-layout */
  .program-layout{
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .program-layout:first-child{
    border-top: 1px solid #ddd;
  }
  .program-layout > .program_head{
    padding: 25px 0 25px 28px;
  }
  .program-layout > .program_head {
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: contain;
  }
  .program-layout > .program_head.director{
    background-color: #472719;
  }
  .program-layout > .program_head.next_generations{
    background-color: #8d549f;
  }
  .program-layout > .program_head.general_manager{
    background-color: #4998a4;
  }
  .program-layout > .program_head.manager{
    background-color: #e39855;
  }
  .program-layout > .program_head.chief{
    background-color: #4aa6c8;
  }
  .program-layout > .program_head.mid{
    background-color: #5f70b1;
  }
  .program-layout > .program_head.young{
    background-color: #135ab7;
  }
  .program-layout > .program_head.freshman{
    background-color: #6cb034;
  }
  .program-layout > .program_head.senior{
    background-color: #3c3c3c;
  }
  .program-layout > .program_head.union_leader{
    background-color: #ad8153;
  }
  .program-layout > .program_head .head_tite > a{
    display: inline-block;
    position: relative;
    padding-left: 18px;
    color: #fff !important;
    font-size: 2rem;
    font-weight: bold;
  }
  .program-layout > .program_head .head_tite > a::before {
    position: absolute;
    top: .5em;
    left: 1px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #ffffff;
    content: "";
  }
  .program-layout > .program_head .head_lead{
    color: #fff;
  }
  .program-layout > .program_itemWrap{
    display: flex;
  }
  .program-layout .program_item{
    padding: 30px;
    width: 33.3%;
    border-right: 1px solid #ddd;
  }
  .program-layout .program_item:nth-child(3n){
    border: none;
  }
  .program-layout .program_item > .item_icon{
    display: inline-block;
    padding: 5px 20px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    line-height: 1;
    border-radius: 15px;
    background-color: #008574;
  }
  [data-browser="ie11"] .program-layout .program_item > .item_icon {
    padding-top: 9px;
    padding-bottom: 5px;
  }
  /*--- D14 ---*/
  .lineup-layout{
    margin-top: 2.5em;
  }
  .lineup-title > .text_label {
    display: inline-block;
    position: relative;
    padding-left: 34px;
    font-size: 2.2rem;
    font-weight: bold;
    color: #008574;
    line-height: 1.3;
    min-height: 25px;
  }
  .lineup-title > .text_label::before {
    position: absolute;
    top: 50%;
    left: 0;
    content: "";
    display: block;
  }
  .lineup-title.training > .text_label::before {
    margin-top: -13px;
    width: 28px;
    height: 24px;
    background: url("/common/img/com_sprite02.png") no-repeat 0 0;
  }
  .lineup-title.challenge > .text_label::before {
    margin-top: -14px;
    width: 26px;
    height: 29px;
    background: url("/common/img/com_sprite02.png") no-repeat -38px 0;
  }
  .lineup-title.skill > .text_label::before {
    margin-top: -14px;
    width: 22px;
    height: 25px;
    background: url("/common/img/com_sprite02.png") no-repeat -75px 0;
  }
  .lineup-title.other > .text_label::before {
    margin-top: -14px;
    width: 24px;
    height: 24px;
    background: url("/common/img/com_sprite02.png") no-repeat -107px 0;
  }
  .lineup-layout > .index-layout-lineup{
    margin-top: 1.2em;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .lineup-layout > .index-layout-lineup + .index-layout-lineup{
    margin-top: 0.62em;
  }
  .index-layout-lineup > .index_item{
    width: calc((100% - 20px) / 3);
    margin-top: 0.62em;
    margin-left: 10px;
  }
  .index-layout-lineup > .index_item:nth-child(3n+1){
    margin-left: 0;
  }
  .index-layout-lineup > .index_item:nth-child(-n+3){
    margin-top: 0;
  }
  .index-layout-lineup > .index_item > .block {
    position: relative;
    color: #333;
    width: 100%;
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
  }
  .index-layout-lineup > .index_item > .block > .item_image {
   flex-shrink: 0;
  }
  .index-layout-lineup > .index_item > .block > .item_detail {
    width: calc(100% - 99px);
    padding: 10px 18px;
    border: none;
    flex-grow: 1;
    line-height: 1.2;
  }
  .index-layout-lineup > .index_item .item_heading_title > .text_sub{
    display: block;
    margin-top: 0.4em;
    font-size: 1.2rem;
  }

  /*--- D129 ---*/
  .heading-ordermade{
    font-size: 2.7rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
  }
  .heading-ordermade + *{
    margin-top: 1.9em;
  }
  /* connote-layout */
  .tab-layout > .tab_detail > .connote-layout{
    margin-top: 0.87em !important;
  }
  .connote-layout.bc-layout {
    margin-top: 40px;
  }
  .connote-layout{
    display: flex;
    flex-flow: row-reverse;
    justify-content: space-between;
  }
  .connote-sidebar{
    width: 273px;
    margin-right: 36px;
    flex-shrink: 0;
  }
  .connote-sidebar > .sidebar-nav > .nav_list{
    border-top: 1px solid #ddd;
  }
  .connote-sidebar > .selectfield_trigger {
    display: none;
  }
  .connote-sidebar > .sidebar-nav > .nav_list > li{
    border-bottom: 1px solid #ddd;
  }
  .connote-sidebar > .sidebar-nav > .nav_list > li > a{
    display: block;
    padding: 15px 10px;
    color: #333;
  }
  .connote-sidebar > .sidebar-nav > .nav_list > li.is-active > a,
  .connote-sidebar > .sidebar-nav > .nav_list > li.is-current > a,
  .connote-sidebar > .sidebar-nav > .nav_list > li > a:hover{
    color: #008574;
    font-weight: bold;
    background-color: #ebf2ed;
  }
  .connote-sidebar > .sidebar-nav > .nav_list > li > a > span{
    display: inline-block;
    position: relative;
    padding-left: 18px;
  }
  .connote-sidebar > .sidebar-nav > .nav_list > li > a > span::before {
    position: absolute;
    top: .5em;
    left: 1px;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #008573;
    content: "";
  }
  .connote-contents{
    margin-top: 40px;
    width: 891px;
  }
  .tabs-vertical_contents {
   margin-top: -40px;
  }
  .connote-contents + .connote-contents{
  }
  .connote-contents .heading-lv3{
    margin-top: 0 !important;
  }
  .link-button-ordermade{
    width: 796px;
    margin: 1.8em auto 0;
    justify-content: space-between;
  }
  .link-button-ordermade > *{
    width: calc((100% - 56px) / 2);
  }
  .link-button-v2 > li > .a-mail > .button_inner {
    min-width: 463px;
  }
  .link-button-v2 > li > .a-mail > .button_inner > .link_label {
    position: relative;
    padding-left: 42px;
  }
  .link-button-v2 > li > .a-mail > .button_inner > .link_label:before {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -10px;
    content: "";
    display: block;
    width: 27px;
    height: 21px;
    background: url("/common/img/com_sprite01.png") no-repeat -190px -470px;
  }
  .link-button-v2 > li > .a-mail:hover > .button_inner > .link_label:before {
    background: url("/common/img/com_sprite01.png") no-repeat -220px -470px;
  }


  /*--- E217 ---*/
  .voice-column{
    margin-top: 2.5em;
    display: flex;
  }
  .voice-description-v1{
    display: flex;
    font-size: 1.8rem;
  }
  .voice-description-v1 > dt{
    width: 220px;
    font-weight: bold;
    color: #008574;
  }
  .voice-description-v1 > dd > .link-text{
    margin: 0 !important;
  }
  .voice-description-v2{
  }
  .voice-description-v2 > dt{
    width: 100px;
    margin-right: 20px;
    font-weight: bold;
    float: left;
  }
  .voice-description-v2 > dd{
    width: calc(100% - 120px);
    overflow: hidden;
  }
  .voice-box{
    margin-top: 1.4em;
    padding: 22px 30px;
    background-color: #fff;
  }
  .voice-column > .column_image figure{
    margin-left: 36px;
  }
  .voice-column > .column_image img{
    max-width: inherit;
  }

  /*--- F ---*/
  .book-column{
    display: flex;
  }
  .book-column > .column_item{
    padding: 35px 40px 40px;
    width: calc((100% - 36px)/2);
  }
  .book-column > .column_item.type01{
    background: url("/book/img/book_im01.jpg") no-repeat 100% 0 #fff;
  }
  .book-column > .column_item.type02{
    background: url("/book/img/book_im02.jpg") no-repeat 100% 0 #fff;
  }
  .book-column > .column_item + .column_item{
    margin-left: 36px;
  }
  .book-column > .column_item > .item_title{
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
  }
  .book-column > .column_item > .item_text{
    margin-top: 1em;
    width: 290px;
  }
  .column-layout.typeBook > .column_item{
    margin-top: 2.5em;
  }
  .column-layout.typeBook .block .image-set {
    margin-top: 0;
  }
  .column-layout.typeBook .image-set .image_inner{
    text-align: center;
    max-height: 356px;
    width: 100%;
  }
  .column-layout.typeBook .image-set .image_inner > img{
    max-height: 356px;
    border: 1px solid #ddd;
    width: auto;
  }
  .book-box{
    width: 249px;
    margin: 1.6em auto 0;
  }
  .book-box > .box_data{
    margin-top: 0.8em;
    font-size: 1.4rem;
    color: #666666;
  }

  /*--- F1 ---*/
  .column-media.typeBook .image-set > .image_inner{
    border: 1px solid #ddd;
    max-width: 271px;
    max-height: 395px;
  }

  .seminar-heading-lv2 {
    display: flex;
    align-items: center;
  }
  .seminar_detail_heading {
    font-size: 1.8rem;
    color: #008574;
    font-weight: bold;
  }
  .seminar-icon-wrap {
    width: 90%;
    display: flex;
  }
  .heading-lv2-icon {
    width: 87px;
    font-weight: normal;
    font-size: 1.3rem;
    color: #ffffff;
    background-color: #008574;
    white-space: nowrap;
    margin-left: 20px;
  }
  .seminar-info-box {
    display: none;
    position: absolute;
    bottom: 60px;
    left: -145px;
    width: 340px;
    color: #333333;
    font-size: 1.4rem;
    font-weight: normal;
    padding: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    background-color: #f3f8f5;
    pointer-events: none
  }
  .seminar-info-box::after {
    position: absolute;
    content: "";
    width: 15px;
    height: 15px;
    top: 100%;
    left: 45.5%;
    background: url(/seminar/detail/img/seminar-ic02.png) no-repeat 0 0/15px 15px;
  }
  .seminar-btn {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 21px;
    height: 33px;
  }
  .seminar-btn-inner {
    cursor: pointer;
    display: inline-block;
    width: 21px;
    height: 33px;
    margin-left: 5px;
    line-height: 1;
    background: url(/common/img/com_sprite01.png) no-repeat -134px 5px;
  }
  .seminar-btn-inner:hover {
    background: url(/common/img/com_sprite01.png) no-repeat -155px 6px;
  }
  .seminar_table_layout {
    display: flex;
    flex-flow: wrap;
    margin-top: 2em;
    border-left: 1px solid #ddd;
  }
  .seminar_table_layout > .seminar_table_detail {
    position: relative;
    width: calc(100% / 3);
    margin-top: -1px;
    padding: 23px 30px;
    vertical-align: top;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    background-color: #fff;
    font-weight: normal;
    text-align: left;
  }
  .seminar_table_layout .seminar_detail_heading {
    display: inline-block;
    font-size: 1.8rem;
    color: #008574;
    font-weight: bold;
    margin-bottom: 0.25em;
  }
/*
  .seminar_table_layout > .table_inner td > .link-text {
    margin-top: 0.295%;
    margin-bottom: 2.656%;
  }
  .seminar_table_layout {
    overflow: visible;
    margin-top: 3.085%;
  }
  .seminar_table_layout td {
    position: relative;
    padding: 23px 30px;
    background-color: transparent;
  }
  .seminar_table_layout td > .seminar_detail_heading {
    padding-bottom: 1%;
  }
  .seminar_detail_heading {
    font-size: 1.8rem;
    color: #008574;
    font-weight: bold;
  }
  */
  .event_article_list {
    width: 84%;
    font-weight: bold;
    margin-left: 6.75%;
  }
  .event_article_list li{
    position: relative;
    padding-left: 9.5%;
  }
  .event_article_list li .seminar_detail_icon{
    width: 26%;
    position: absolute;
    left: 0;
  }
  .event_article_list .seminar_detail_icon {
    font-weight: normal;
  }
  .event_article_list .event_area {
    font-weight: normal;
  }
  .seminar_avatar_lead {
    font-weight: bold;
    font-size: 1.4rem;
  }
  .seminar-table-title {
    font-size: 1.8rem;
    font-weight: bold;
    color: #008574;
    text-align: left;
    margin-bottom: 0.5em;
  }
  .seminar-table {
    width: 100%;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    display: -webkit-flex;
    display: flex;
  }
  .seminar-table-col {
    width: 33.3%;
  }
  .seminar-table-lv01 {
    background-color: #555;
    color: #fff;
    font-weight: bold;
    padding: 7px 20px;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    text-align: left;
  }
  .seminar-table-desc {
    padding: 7px 20px;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    background-color: #fff;
    font-weight: normal;
    text-align: left;
  }
  .seminar_lead > .seminar_detail_heading {
    font-size: 1.6rem;
  }
  .seminar_lead_text {
    font-size: 1.4rem;
  }
  .seminar_avatar_lead .seminar_avatar_name {
    font-size: 1.8rem;
  }
  .seminar_detail_icon {
    width: auto;
    font-size: 1.3rem;
    color: #333;
    background-color: #eeeeee;
    white-space: nowrap;
  }
  .seminar-layout {
    margin-top: 2.417%;
  }
  .seminar_event_article {
    display: -webkit-flex;
    display: flex;
  }
  .seminar_event_article:nth-of-type(n+2) {
    margin-top: 1.334%;
    padding-top: 1.667%;
  }
  .seminar_event_article:nth-of-type(n+3) {
    border-top: 1px dotted #dddddd;
  }
  .event_article_list {
    display: -webkit-flex;
    display: flex;
  }
  .seminar_avatar_desc {
    padding: 23px 30px 21px;
    background-color: #fff9e3;
  }
  .seminar_avatar_desc > .column_image {
    margin-top: 7px;
  }
  .seminar_avatar_desc > .column_image > .image-set > .seminar-avatar-img {
    width: 195px;
  }
  .seminar-column:nth-of-type(4n+1) dd {
    background-color: #f8fbf8;
    border: 2px solid #d9e9d9;
  }
  .seminar-column:nth-child(4n+2) dd {
    background-color: #fff0f0;
    border: 2px solid #f5dddd;
  }
  .seminar-column:nth-child(4n+3) dd {
    background-color: #f3fafd;
    border: 2px solid #cfe7f2;
  }
  .seminar-column:nth-child(4n+4) dd {
    background-color: #fff4de;
    border: 2px solid #efdcb7;
  }
  .seminar-column:nth-child(4n+1) dd::after {
    background: url("/common/img/com_sprite01.png") no-repeat -40px -210px;
  }
  .seminar-column:nth-child(4n+2) dd::after {
    background: url("/common/img/com_sprite01.png") no-repeat -100px -210px;
  }
  .seminar-column:nth-child(4n+3) dd::after {
    background: url("/common/img/com_sprite01.png") no-repeat -40px -260px;
  }
  .seminar-column:nth-child(4n+4) dd::after {
    background: url("/common/img/com_sprite01.png") no-repeat -100px -260px;
  }

  /*--- G1 ---*/
  .lineup-list {
    margin-top: 25px;
  }
  .lineup-list > .lineup-list-heading .heading_title {
    margin-bottom: 0.3em;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .lineup-list > .lineup-list-layout {
    display: flex;
    flex-flow: row wrap;
  }
  .lineup-list > .lineup-list-layout > li {
    width: 24%;
    margin-right: 1.3%;
  }
  .lineup-list > .lineup-list-layout > li:nth-child(4n) {
    margin-right: 0;
  }
  .lineup-list > .lineup-list-layout > li:nth-child(n+5) {
    margin-top: 10px;
  }
  .diary-layout {
    display: flex;
    flex-flow: row wrap;
    height: 100%;
    padding: 23px 25px 30px;
    background-color: #fff;
    text-align: center;
  }
  section + .diary-layout {
    margin-top: 20px;
  }
  .diary-layout > * {
    width: 100%;
  }
  .diary-layout .box_detail {
    width: 100%;
    margin-bottom: 1em;
  }
  .diary-layout .box_title {
    font-size: 1.6rem;
    color: #008574;
    font-weight: bold;
  }
  .diary-layout [class*="link-button"] {
    margin-top: auto !important;
  }
  .diary-layout .link-button > li > a {
    min-width: 370px;
  }
  .accordion-layout-v2.accordion-diary {
    margin-top: 4em;
  }
  .accordion-layout-v2.accordion-diary .accordion_detail {
    padding: 40px 0 0;
  }
  .accordion-layout-v2.accordion-diary .accordion_detail .column-layout.diary-column {
    margin-top: 2.5em;
  }

  /*--- H29 ---*/
  .json-training_cruises .index_item .item_icon{
    padding: 3px 22px;
  }
  .json-training_cruises .index_item .item_icon.type02 {
    background-color: #555;
  }
  .json-training_cruises .index_item > .block > .item_detail {
    padding: 16px 18px;
  }
  .json-training_cruises .index_item .item_copy {
    margin-bottom: 7px;
  }
  .json-training_cruises .index_item .item_heading {
    margin-bottom: 5px;
    line-height: 1.5;
  }
  .json-training_cruises .index_item .item_date {
    font-weight: normal;
    color: #666;
    line-height: 1.5;
  }
  .training_cruises-tab {
    margin-top: 90px;
  }
  .training_cruises-tab .tab_navi-SP {
    display: none;
  }
  .training_cruises-tab > .tab_detail {
    padding-top: 30px;
  }
  .training_cruises-tab .tab_list > li > a {
    font-size: 1.8rem;
  }
  .training_cruises-tab .tab_list > li > a > .tab_label {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .training_cruises-tab .tab_list > li > a > .tab_label::before {
    top: 50%;
    margin-top: -3px;
  }
  .training_cruises-tab .tab_list > li > a > .tab_label > .tab_icon {
    margin-right: 1em
  }
  .training_cruises-tab [class*="list-description"] {
    margin-top: 0.5em;
  }
  .training_cruises-tab [class^="list-description-v"] > * {
    font-size: 1.4rem;
  }
  .training_cruises-tab .list-description-v6 {
    display: flex;
  }
  .training_cruises-tab .list-description-v6.ver02 {
    display: block;
  }
  .training_cruises-tab .list-description-v6 > dt {
    width: 70px;
    font-weight: bold;
  }
  .training_cruises-tab .list-description-v6 > dd {
    width: calc(100% - 70px);
  }
  .training_cruises-tab .list-description-v6.ver02 > dt,
  .training_cruises-tab .list-description-v6.ver02 > dd,
  .training_cruises-tab .list-description-v6.ver04 > dt,
  .training_cruises-tab .list-description-v6.ver04 > dd {
    width: auto;
  }
  .training_cruises-tab .list-description-v6.ver02 > dd > .list-bullet {
    margin-top: 0.5em !important;
  }
  .training_cruises-tab .list-description-v6.ver03 > dt {
    width: 105px;
    font-weight: bold;
  }
  .training_cruises-tab .list-description-v6.ver03 > dd {
    width: calc(100% - 105px);
  }
  .training_cruises-tab .list-description-v6.ver03 > dd > .list-bullet {
    margin-top: 0 !important;
  }
  /* -----process-layout ----- */
  /* process-shipName */
  .process-layout > .process-shipName > ul {
    display: -webkit-flex;
    display: flex;
    width: 52.4%;
    margin: 0 0 0 auto;
  }
  .process-layout > .process-shipName > ul > li {
    width: 50%;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
  }
  .process-layout > .process-shipName > ul > li > em {
    font-size: 2.2rem;
    font-style: normal;
    text-align: center;
  }
  .process-layout > .process-shipName > ul > li::after {
    display: inline-block;
    content: "";
    width: 36px;
    height: 19px;
    margin-bottom: 5px;
    margin-left: 5px;
    background: url("/theme-hierarchy/training_cruises/img/process_ic01.png") no-repeat 0 0;
    background-size: 36px;
    vertical-align: middle;
  }
  /* process-order */
  .process-layout > .process-order > .order-layout > .order-col {
    display: -webkit-flex;
    display: flex;
  }
  .process-layout > .process-order > .order-layout > .order-col:nth-child(odd) {
    background-color: #f7f7f7;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-title {
    width: 47.5%;
    border-right: 1px solid #ddd;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-title > .title-text {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px;
    color: #008574;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-title > .title-text .num {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 36px;
    height: 36px;
    margin-right: 7px;
    padding-top: 2px;
    border-radius: 50%;
    background-color: #008574;
    color: #fff;
    font-size: 2.2rem;
    line-height: 1;
    font-weight: bold;
  }
  _:-ms-lang(x)::-ms-backdrop, .process-layout > .process-order > .order-layout > .order-col > .order-title > .title-text .num {
    padding-top: 0.35em;
  }
  _:-ms-lang(x)::-ms-backdrop, .process-layout > .process-order > .order-layout > .order-col > .order-title > .title-text .num + span {
    padding-top: 0.4em;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-date {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 52.5%;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-date::before {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background-color: #ddd;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .process-layout > .process-order > .order-layout > .order-col.gp-full > .order-date::before {
    display: none;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-date > .date-col {
    width: 50%;
    padding: 23px 10px 20px;
    font-size: 1.8rem;
    text-align: center;
  }
  _:-ms-lang(x)::-ms-backdrop, .process-layout > .process-order > .order-layout > .order-col > .order-date > .date-col {
    padding-bottom: 15px;
  }
  .process-layout > .process-order > .order-layout > .order-col.gp-full > .order-date > .date-col {
    width: 100%;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-date.link-wrap > .link-box {
    position: relative;
    width: 62%;
    bottom: 20px;
    left: 0;
    right: 0;
    margin: 10px auto 0;
    padding: 15px 0 15px 35px;
    background-color: #fff;
  }
  .process-layout > .process-order > .order-layout > .order-col > .order-date.link-wrap > .link-box > .link-text,
  .process-layout > .process-order > .order-layout > .order-col > .order-date.link-wrap > .link-box > .link-text > li {
    margin-top: 0;
  }

  /* ------------------------------------------------------
   * for IE11
  ------------------------------------------------------ */
  [data-browser="ie11"] [data-row-pc="2"] > * { width: calc(((100% - (36px * 1)) / 2) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="3"] > * { width: calc(((100% - (36px * 2)) / 3) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="4"] > * { width: calc(((100% - (36px * 3)) / 4) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="5"] > * { width: calc(((100% - (36px * 4)) / 5) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="6"] > * { width: calc(((100% - (36px * 5)) / 6) - 0.1px); }

  [data-browser="ie11"] [class*="news_icon"] {
    padding-top: 4px;
    line-height: 20px;
  }
  [data-browser="ie11"] .heading-lv1  .icon_news_wrap.typeWhite .news_icon{
    padding-top: 4px;
  }
  [data-browser="ie11"] .heading-lv1-seminar .icon_news_wrap [class*="news_icon"] {
    padding-top: 4px;
  }
  [data-browser="ie11"] .heading-lv1-v2 .icon_news_wrap {
    width: 1200px;
  }
  [data-browser="ie11"] .heading-lv1-v2 .icon_news_wrap [class*="news_icon"] {
    padding-top: 4px;
  }
  [data-browser="ie11"] .list-bullet > li::before {
    top: .5em;
  }
  [data-browser="ie11"] .list-bullet-v2 > li::before {
    top: .4em;
  }
  [data-browser="ie11"] .link-text > li > a::before {
    top: .3em;
  }
  [data-browser="ie11"] .link-button > li > a > .button_inner {
    padding-top: 21px;
    padding-bottom: 13px;
  }
  [data-browser="ie11"] .link-button-v2 > li > a > .button_inner {
    padding-top: 21px;
    padding-bottom: 13px;
  }
  [data-browser="ie11"] .link-button-v3 > li > a > .button_inner {
    padding-top: 21px;
    padding-bottom: 13px;
  }
  [data-browser="ie11"] [class*="index-layout"] .index_item .item_icon {
    padding: 4px 15px 0;
    line-height: 20px;
  }
  [data-browser="ie11"] .cv-button > li > a > .button_inner {
    padding-top: 21px;
    padding-bottom: 13px;
  }
  [data-browser="ie11"] .heading-lv3 .block {
    padding: 4px 0 0 18px;
    line-height: 1;
  }
  [data-browser="ie11"] .icon_news_wrap.typeWhite .news_icon{
    padding-top: 4px;
  }
  [data-browser="ie11"]   .seminar_table_layout > .seminar_table_detail {
    width: 33.3%;
  }

  /* for Edge */
  [data-browser="edge"] [data-row-pc="2"] > * { width: calc(((100% - (36px * 1)) / 2) - 0.1px); }
  [data-browser="edge"] [data-row-pc="3"] > * { width: calc(((100% - (36px * 2)) / 3) - 0.1px); }
  [data-browser="edge"] [data-row-pc="4"] > * { width: calc(((100% - (36px * 3)) / 4) - 0.1px); }
  [data-browser="edge"] [data-row-pc="5"] > * { width: calc(((100% - (36px * 4)) / 5) - 0.1px); }
  [data-browser="edge"] [data-row-pc="6"] > * { width: calc(((100% - (36px * 5)) / 6) - 0.1px); }




  /* ----- local-government-archive-list ----- */
  .local-government-archive-list {
    display: -webkit-flex;
    display: flex;
    border-bottom: 1px solid #dddddd;
    padding-bottom: 18px;
  }
  .local-government-archive-list:nth-of-type(n+2) {
    padding-top: 18px;
  }
  .local-government-archive-layout > .local-government-archive-list > .link-text {
    margin-top: 0px;
  }
  /* ----- local-government-archive-date ----- */
  .local-government-archive-date {
    width: 38%;
    margin-right: 1em;
    position: relative
  }
  .local-government-archive-date .local-government-archive {
    display: block;
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 0;
    padding-left: 11.3125em;
  }
/* -----list_introduction ----- */
  .list_introduction {
    text-align: center;
    font-weight: bold;
    margin-top: 3.875em;
  }
/* -----diary_catalog_layout ----- */
  .diary_catalog_layout {
    margin-top: 4em;
    padding: 24px 20px 27px;
      text-align: center;
      background-color: #fff9e3;
  }
  .diary_catalog_layout .catalog_heading {
    font-size: 1.8rem;
    font-weight: bold;
  }
/* -----diary_product_layout ----- */
  .diary_product_layout {
    margin-top: 3.75em;
    padding-bottom: 0.75em;
  }
  .diary_product_layout .diary_product_inner {
    border: 1px solid #d8d8d8;
    padding: 23px 33px 22px 30px;
  }
  .diary_product_layout .diary_product_title {
    font-size: 1.8rem;
    font-weight: bold;
  }
  .diary_product_layout .diary_product_detail {
    margin-top: 0.875em;
    font-weight: bold;
  }
/* ----- history_archive_layout ----- */
  .history_archive_layout {
    padding-bottom: 0.875em;
  }
  .history_archive_list {
    display: -webkit-flex;
    display: flex;
    border-bottom: 1px solid #dddddd;
    padding-bottom: 13px;
    font-weight: bold;
  }
  .history_archive_list:nth-of-type(n+2) {
    padding-top: 17px;
    padding-bottom: 16px;
  }
  .history_archive_list .history_list_year {
    width: 6%;
  }
  .history_archive_list .history_list_desc {
    width: 90%;
    margin-left: 4.0625em;
  }
/* -----diary_about_text ----- */
  .diary_about_text {
    margin-top: 2.75em;
  }
/* -----akademeia-list ----- */
  .akademeia-list {

  }
  .akademeia-list > .akademeia-position {
    font-weight: bold;
    float: left;
    width: 9em;
  }
  .akademeia-list > dd {
    font-weight: bold;
    overflow: hidden;
  }
  .akademeia-list > dd > .akademeia-name {
    display: inline-block;
    width: 7em;
  }

  /* ----- special-feature-layout ----- */
  .special-feature-layout {
    margin-top: 2em;
  }
  .special-feature-layout .special-feature-head {
    margin-top: 1em;
    display: flex;
  }
  .special-feature-head .special-feature-head_icon-wrap {
    margin-right: 22px;
  }
  .special-feature-head .special-feature-head_icon-wrap .special-feature-head_icon {
    display: inline-block;
    min-width: 100px;
    width: auto;
    border-radius: 30px;
    padding-left: 15px;
    padding-right: 15px;
    background: #eb6b6b;
    text-align: center;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 24px;
    color: #fff;
  }
  .special-feature-head .special-feature-head_title {
    flex: 1;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.6;
  }
  .special-feature-layout .special-feature-body {
    margin-top: 32px;
  }
  .special-feature-body .special-feature-item {
    display: block;
    border-top: 1px solid #dddddd;
    padding-top: 24px;
    padding-bottom: 22px;
  }
  .special-feature-body .special-feature-item:last-child {
    border-bottom: 1px solid #dddddd;
  }
  .special-feature-item .special-feature-item_head {
    position: relative;
    padding-left: 88px;
    font-weight: bold;
    font-size: 1.8rem;
    color: #333333;
    line-height: 1.3;
  }
  .special-feature-item .special-feature-item_head .special-feature-item_icon {
    position: absolute;
    top: 0;
    left: 0;
    font-weight: bold;
    font-size: 2.0rem;
    color: #eb6b6b;
    line-height: 1.2;
  }
  .special-feature-item .special-feature-item_head .special-feature-item_icon .special-feature-item_icon-num {
    font-size: 2.6rem;
    line-height: 0.9;
    vertical-align: bottom;
  }
  .special-feature-item .special-feature-item_body {
    margin-top: 20px;
  }
  .special-feature-item .special-feature-item_body .special-feature-item_text {
    font-size: 1.6rem;
  }
  .special-feature-item .special-feature-item_body .special-feature-item_text-note {
    position: relative;
    padding-left: 1.3em;
    font-size: 1.4rem;
    color: #666666;
  }
  .special-feature-item .special-feature-item_body .special-feature-item_text-note > .special-feature-item_text-note_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .special-feature-layout .special-feature-foot {
    margin-top: 14px;
  }
  .special-feature-foot .special-feature-foot_indent-text {
    position: relative;
    padding-left: 6.8em;
    font-size: 1.6rem;
  }
  .special-feature-foot .special-feature-foot_indent-text > .indent {
    position: absolute;
    top: 0;
    left: 0;
    width: 5em;
    text-align: right;
  }

  /* ----- magazine-description-list ----- */
  .magazine-description-list-layout {
    display: flex;
    flex-wrap: wrap;
  }
  .magazine-description-list-layout > .magazine-description-list {
    width: calc((100% - 32px) /2);
    margin-top: 50px;
    margin-right: 32px;
  }
  .magazine-description-list-layout > .magazine-description-list:nth-child(-n+2) {
    margin-top: 0;
  }
  .magazine-description-list-layout > .magazine-description-list:nth-child(2n) {
    margin-right: 0;
  }
  .magazine-description-list .magazine-description-list_head {
    font-weight: bold;
    font-size: 1.8rem;
  }
  .magazine-description-list .magazine-description-list_head a,
  .magazine-description-list .magazine-description-list_head span.block {
    position: relative;
    display: inline-block;
    padding-left: 16px;
  }
  .magazine-description-list .magazine-description-list_head a::before,
  .magazine-description-list .magazine-description-list_head span.block::before {
    position: absolute;
    top: 0.8em;
    left: 0;
    display: block;
    margin-top: -5px;
    border-left: 6px solid #138e7e;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    content: '';
  }
  .magazine-description-list .magazine-description-list_body {
    margin-top: 18px;
  }
  .magazine-description-list .magazine-description-list-item {
    display: flex;
    margin-top: 11px;
    border-bottom: 1px solid #dddddd;
    padding-bottom: 8px;
    padding-left: 16px;
  }
  .magazine-description-list-item .magazine-description-list-item_title {
    margin-right: 1em;
    font-weight: bold;
    font-size: 1.6rem;
    color: #138e7e;
  }
  .magazine-description-list-item .magazine-description-list-item_detail {
    flex: 1 1;
  }
  /* ----- movement-paper-detail-heading ----- */
  .movement-paper-detail-heading {
    position: relative;
    display: flex;
    column-gap: 27px;
    margin: 2.5em 0 30px;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #333;
  }
  .movement-paper-detail-heading .movement-paper-detail-heading_mark {
    flex-shrink: 0;
    color: #333;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .movement-paper-detail-heading .movement-paper-detail-heading_title {
    width: 100%;
  }
  .movement-paper-detail-heading .movement-paper-detail-heading_label {
    color: #333;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 1.5;
  }

  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .column-media::after,
  .heading-lv1 .icon_news_wrap::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * Media Queries
====================================================== */
@media screen and (min-width: 768px) and (max-width: 1150px) {
  .over-container,
  .over-container-v2 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }
}

/* ======================================================
 * Print
====================================================== */
@media print {
  [class^="table-layout"] {
    overflow-x: visible;
  }
  .over-container,
  .over-container-v2 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }

}