/** ========================================================
 * @class Common
 * @charset "UTF-8";
** ====================================================== */
/**
 * @library Normalize
 * @include lib/_normalize.scss
** ---------------------------------- */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong,
.bold-02 {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small, .small, .small * {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/**
 * @library slick.js
 * @related /shared/js/lib/slick.min.js
 * @include lib/_slick.scss
** ---------------------------------- */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/** ========================================================
 * @class Common: Extend & Mixin
 * @include _extend.scss
** ====================================================== */
/**
 * Clearfix
 *
 * @extend %clear;
** ---------------------------------- */
.str-inner:after, .compo-modal .compo-modal-inner:after, .site-header .nav-util > ul:after, .site-header .nav-primary:after, .site-header .nav-primary > ul > li.add-tgl-opened-flex .nav-primary-child .col .child:after, .site-header .nav-primary .nav-primary-child .str-4col:after, .site-header .nav-primary .nav-primary-child .str-4col .col .link-list:after, .site-footer .region-foot-copy .link-list:after, .region-aside-sns > ul:after, .block-overview-list .col:after, .region-foot-contact .contact-tel:after, .block-content:after, ul.list-bullet-2col:after, ul.list-bullet-3col:after, ul.list-bullet-4col:after, ul.list-bullet-5col:after, ul.list-number-2col:after, ul.list-number-3col:after, ul.list-number-4col:after, ul.list-number-5col:after, .link-2col-l:after,
.link-3col-l:after,
.link-4col-l:after,
.link-5col-l:after,
.link-6col-l:after, .link-2col-s:after,
.link-3col-s:after,
.link-4col-s:after,
.link-5col-s:after,
.link-6col-s:after, .lyt-movie-2col-l:after,
.lyt-movie-2col-r:after, .lyt-flt-l-01:after,
.lyt-flt-r-01:after, .lyt-2col:after, .lyt-3col:after, .lyt-4col:after, .lyt-5col:after, .lyt-6col:after, .lyt-grid:after, .pnl-index-01-2col:after,
.pnl-index-01-3col:after,
.pnl-index-01-4col:after, .pnl-index-02:after, .btn-list-3col:after, .compo-newspnl-2col ul:after,
.compo-newspnl-3col ul:after, .compo-newslist-02 ul:after, .clear:after {
  display: table;
  clear: both;
  content: "";
}

/**
 * Image mouse over
 * (White opacity: 50%)
 *
 * @extend %cover;
** ---------------------------------- */
.region-common-bnr-01 .list-bnr a:before {
  background: url(/files/user/common/img/bg_cover_02.png);
  position: absolute;
  z-index: 2;
  display: none;
  width: 100%;
  height: 100%;
  content: "";
}

.region-common-bnr-01 .list-bnr a {
  position: relative;
}
.region-common-bnr-01 .list-bnr a:hover:before {
  display: block;
}

/**
 * Filter Opacity
 *
 * @extend %filter;
** ---------------------------------- */
/**
 * Exttend Slick (Carousel)
 *
 * @extend %extend-carousel;
** ---------------------------------- */
[data-script-enabled] .region-carousel-main .block-carousel > .section-item, [data-script-enabled] .region-carousel-2col .block-carousel > .section-item, [data-script-enabled] .region-heading-index .block-carousel > .section-item, [data-script-enabled] .region-inner-news .block-carousel > .section-item, [data-script-enabled] .site-content-foot .region-carousel-content .block-carousel > .section-item, .site-content-foot [data-script-enabled] .region-carousel-content .block-carousel > .section-item {
  display: none;
}
[data-script-enabled] .region-carousel-main .block-carousel > .section-item:first-child, [data-script-enabled] .region-carousel-2col .block-carousel > .section-item:first-child, [data-script-enabled] .region-heading-index .block-carousel > .section-item:first-child, [data-script-enabled] .region-inner-news .block-carousel > .section-item:first-child, [data-script-enabled] .site-content-foot .region-carousel-content .block-carousel > .section-item:first-child, .site-content-foot [data-script-enabled] .region-carousel-content .block-carousel > .section-item:first-child {
  display: block;
}
.region-carousel-main .slick-slide:focus, .region-carousel-2col .slick-slide:focus, .region-heading-index .slick-slide:focus, .region-inner-news .slick-slide:focus, .site-content-foot .region-carousel-content .slick-slide:focus {
  outline: 1px dotted #cccccc;
}
.region-carousel-main .slick-arrow, .region-carousel-2col .slick-arrow, .region-heading-index .slick-arrow, .region-inner-news .slick-arrow, .site-content-foot .region-carousel-content .slick-arrow {
  background: url(/files/user/common/img/bg_cover_01.png);
  position: absolute;
  z-index: 2;
  top: 0;
  display: block;
  overflow: hidden;
  height: 100%;
  padding: 0;
  border: none;
}
.region-carousel-main .slick-arrow > span, .region-carousel-2col .slick-arrow > span, .region-heading-index .slick-arrow > span, .region-inner-news .slick-arrow > span, .site-content-foot .region-carousel-content .slick-arrow > span {
  display: inline-block;
  overflow: hidden;
  height: 0;
}
.region-carousel-main .slick-arrow:focus, .region-carousel-2col .slick-arrow:focus, .region-heading-index .slick-arrow:focus, .region-inner-news .slick-arrow:focus, .site-content-foot .region-carousel-content .slick-arrow:focus {
  outline: 1px dotted #cccccc;
}
.region-carousel-main .slick-prev, .region-carousel-2col .slick-prev, .region-heading-index .slick-prev, .region-inner-news .slick-prev, .site-content-foot .region-carousel-content .slick-prev {
  left: 0;
}
.region-carousel-main .slick-next, .region-carousel-2col .slick-next, .region-heading-index .slick-next, .region-inner-news .slick-next, .site-content-foot .region-carousel-content .slick-next {
  right: 0;
}
.region-carousel-main .slick-dots-outer, .region-carousel-2col .slick-dots-outer, .region-heading-index .slick-dots-outer, .region-inner-news .slick-dots-outer, .site-content-foot .region-carousel-content .slick-dots-outer {
  text-align: left;
  position: relative;
  width: auto;
  max-width: 1010px;
  margin: 0 auto;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  will-change: transform;
}
.region-carousel-main .slick-dots-outer .slick-stop, .region-carousel-2col .slick-dots-outer .slick-stop, .region-heading-index .slick-dots-outer .slick-stop, .region-inner-news .slick-dots-outer .slick-stop, .site-content-foot .region-carousel-content .slick-dots-outer .slick-stop {
  text-indent: -100%;
  white-space: nowrap;
  color: transparent;
  background: url(/files/user/common/img/btn_controller_01.png);
  position: absolute;
  z-index: 4;
  top: -3px;
  left: 32px;
  display: inline-block;
  overflow: hidden;
  width: 26px;
  height: 26px;
  margin: 0;
  padding: 0;
  border: 0;
  will-change: transform;
}
.region-carousel-main .slick-dots-outer .slick-stop:before, .region-carousel-2col .slick-dots-outer .slick-stop:before, .region-heading-index .slick-dots-outer .slick-stop:before, .region-inner-news .slick-dots-outer .slick-stop:before, .site-content-foot .region-carousel-content .slick-dots-outer .slick-stop:before {
  display: none;
}
.region-carousel-main .slick-dots-outer .slick-stop:hover, .region-carousel-2col .slick-dots-outer .slick-stop:hover, .region-heading-index .slick-dots-outer .slick-stop:hover, .region-inner-news .slick-dots-outer .slick-stop:hover, .site-content-foot .region-carousel-content .slick-dots-outer .slick-stop:hover {
  background-position: 0 -26px;
}
.region-carousel-main .slick-dots-outer .slick-stop.is-stop, .region-carousel-2col .slick-dots-outer .slick-stop.is-stop, .region-heading-index .slick-dots-outer .slick-stop.is-stop, .region-inner-news .slick-dots-outer .slick-stop.is-stop, .site-content-foot .region-carousel-content .slick-dots-outer .slick-stop.is-stop {
  background-position: -26px 0;
}
.region-carousel-main .slick-dots-outer .slick-stop.is-stop:hover, .region-carousel-2col .slick-dots-outer .slick-stop.is-stop:hover, .region-heading-index .slick-dots-outer .slick-stop.is-stop:hover, .region-inner-news .slick-dots-outer .slick-stop.is-stop:hover, .site-content-foot .region-carousel-content .slick-dots-outer .slick-stop.is-stop:hover {
  background-position: -26px -26px;
}
.region-carousel-main .slick-dots, .region-carousel-2col .slick-dots, .region-heading-index .slick-dots, .region-inner-news .slick-dots, .site-content-foot .region-carousel-content .slick-dots {
  position: relative;
  z-index: 2;
}
.region-carousel-main .slick-dots li, .region-carousel-2col .slick-dots li, .region-heading-index .slick-dots li, .region-inner-news .slick-dots li, .site-content-foot .region-carousel-content .slick-dots li {
  display: inline-block;
}
.region-carousel-main .slick-dots li button, .region-carousel-2col .slick-dots li button, .region-heading-index .slick-dots li button, .region-inner-news .slick-dots li button, .site-content-foot .region-carousel-content .slick-dots li button {
  text-align: center;
  color: transparent;
  background: none;
  position: relative;
  z-index: 1;
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
}
.region-carousel-main .slick-dots li button:before, .region-carousel-2col .slick-dots li button:before, .region-heading-index .slick-dots li button:before, .region-inner-news .slick-dots li button:before, .site-content-foot .region-carousel-content .slick-dots li button:before {
  background: #fff;
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: -8px 0 0 -4px;
  content: "";
  border-radius: 50%;
  opacity: .7;
}
.region-carousel-main .slick-dots li button .in-button, .region-carousel-2col .slick-dots li button .in-button, .region-heading-index .slick-dots li button .in-button, .region-inner-news .slick-dots li button .in-button, .site-content-foot .region-carousel-content .slick-dots li button .in-button {
  position: relative;
  z-index: -1;
  overflow: hidden;
  height: 1px;
}
.region-carousel-main .slick-dots li button:focus, .region-carousel-2col .slick-dots li button:focus, .region-heading-index .slick-dots li button:focus, .region-inner-news .slick-dots li button:focus, .site-content-foot .region-carousel-content .slick-dots li button:focus {
  outline: 1px dotted #cccccc;
}
.region-carousel-main .slick-dots li.slick-active button:before, .region-carousel-2col .slick-dots li.slick-active button:before, .region-heading-index .slick-dots li.slick-active button:before, .region-inner-news .slick-dots li.slick-active button:before, .site-content-foot .region-carousel-content .slick-dots li.slick-active button:before {
  background: #ffffff;
  width: 18px;
  height: 18px;
  margin: -12px 0 0 -9px;
}
.region-carousel-main .slick-dots li.slick-active button:after, .region-carousel-2col .slick-dots li.slick-active button:after, .region-heading-index .slick-dots li.slick-active button:after, .region-inner-news .slick-dots li.slick-active button:after, .site-content-foot .region-carousel-content .slick-dots li.slick-active button:after {
  background: #0d40b5;
  position: absolute;
  z-index: 3;
  top: 3px;
  left: 6px;
  display: inline-block;
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  content: "";
  border-radius: 50%;
}

/**
 * Exttend Slick (Carousel)
 *
 * @extend %extend-carousel;
** ---------------------------------- */
.region-carousel-main .slick-arrow, .region-heading-index .slick-arrow {
  width: 45px;
}
.region-carousel-main .slick-arrow:before, .region-heading-index .slick-arrow:before {
  position: absolute;
  top: 0;
  margin: 0;
}
:root .region-carousel-main .slick-arrow:before, :root .region-heading-index .slick-arrow:before {
  top: 50%;
  margin: -25px 0 0;
}
.region-carousel-main .slick-dots, .region-heading-index .slick-dots {
  z-index: 3;
  display: block !important;
  box-sizing: border-box;
  max-width: 1010px;
  height: 25px;
}
@media screen and (max-width: 767px) {
  .region-carousel-main .slick-arrow, .region-heading-index .slick-arrow {
    top: 100%;
    height: 50px;
    margin: -47px 0 0;
  }
  .region-carousel-main .slick-arrow:before, .region-heading-index .slick-arrow:before {
    -webkit-transform: scale(0.4);
    -ms-transform: scale(0.4);
    transform: scale(0.4);
  }
  .region-carousel-main .slick-dots-outer, .region-heading-index .slick-dots-outer {
    text-align: center;
    position: absolute;
    bottom: 10px;
    width: 100%;
    -webkit-transform: scale(0.6);
    -ms-transform: scale(0.6);
    transform: scale(0.6);
  }
  .region-carousel-main .slick-dots-outer .slick-stop, .region-heading-index .slick-dots-outer .slick-stop {
    position: relative;
    left: 0;
    display: inline-block;
    margin: 0 16px 0 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .region-carousel-main .slick-dots, .region-heading-index .slick-dots {
    text-align: center;
    position: static;
    display: inline-block !important;
    max-width: none;
    margin: 0;
    padding: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}

.site-header .nav-util .term-lang > a:after, .site-header .nav-util .term-region-child a:before, .site-header .nav-util .term-region-child .nav-region-close:before, .site-header .nav-primary > ul > li > a:before, .site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li.link-root > a > span:before, .site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li > .hdg:before, .site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li > .hdg:after, .site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li.is-open > .hdg:after, .site-footer .region-nav-local .hdg a:before, .site-footer .region-nav-local .link-list a:before, .site-footer .region-nav-footer .hdg a:before, .site-footer .region-nav-footer li a:before, .site-footer .region-foot-pagetop a:before, .site-footer .region-foot-copy .link-list a:before, .region-carousel-main .item-content .btn a:before, .region-carousel-main .slick-prev:before, .region-carousel-main .slick-next:before, .region-carousel-2col .slick-prev:before, .region-carousel-2col .slick-prev:after, .region-carousel-2col .slick-next:before, .region-carousel-2col .slick-next:after, .region-heading-index .slick-prev:before, .region-heading-index .slick-next:before, .region-inner-news .slick-prev:before, .region-inner-news .slick-next:before, .site-content-foot .region-carousel-content .slick-prev:before, .site-content-foot .region-carousel-content .slick-prev:after, .site-content-foot .region-carousel-content .slick-next:before, .site-content-foot .region-carousel-content .slick-next:after, .region-foot-finder .section .link-list-s a:before, .link-l a:before,
.link-list-l a:before,
.link-flex-l a:before,
.link-2col-l a:before,
.link-3col-l a:before,
.link-4col-l a:before,
.link-5col-l a:before,
.link-6col-l a:before, .link-s a:before,
.link-list-s a:before,
.link-flex-s a:before,
.link-2col-s a:before,
.link-3col-s a:before,
.link-4col-s a:before,
.link-5col-s a:before,
.link-6col-s a:before, .link-anchor-s a:before,
.link-anchor-l a:before, .btn-01:before,
.btn-01-s:before, .btn-02:before,
.btn-02-s:before, .btn-03:before,
.btn-03-s:before, .btn-05:before,
.btn-05-s:before, .btn-04:before, .btn-03:active:before, .btn-03:hover:before,
.btn-03-s:active:before,
.btn-03-s:hover:before, .btn-05:active:before, .btn-05:hover:before,
.btn-05-s:active:before,
.btn-05-s:hover:before, .btn-04:active:before, .btn-04:hover:before, .compo-pager-01 li.next a:before, .compo-pager-01 li.prev a:before, .compo-faqlist-01 > ul > li.is-active > .hdg:after, .compo-faqlist-01 > ul > li > .hdg:after, .compo-modal .compo-modal-close button:before, .compo-modal .compo-modal-close button:after, .compo-tab-01 .region-tab-list .tab-list li.is-current a:before, .compo-tab-01 .region-tab-list .tab-list a:before, .compo-filter-01 button:before {
  background-image: url(/files/user/common/img/sprite.png);
  background-repeat: no-repeat;
  display: inline-block;
  content: "";
}

/** ========================================================
 * @class Common: Element
 * @include _element.scss
** ====================================================== */
/**
 * Root Element
**/
html,
body {
  background: #ffffff;
}

html {
  font-size: 62.5%;
}

body {
  font-family: Meiryo, \30e1\30a4\30ea\30aa, \30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33, "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", \FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF, "MS PGothic", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  word-break: break-word;
  color: #777777;
  min-width: 1040px;
}
:root body {
  font-family: Arial, Meiryo, \30e1\30a4\30ea\30aa, \30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33, "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", \FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF, "MS PGothic", sans-serif;
  min-width: 320px;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
  }
}

/**
 * Inline Element
**/
a {
  text-decoration: none;
  color: #0d40b5;
}
a:hover, a:active, a:focus {
  text-decoration: underline;
  color: #0077d9;
}

small, .small, .small * {
  font-size: 14px;
  font-size: 1.4rem;
}

em, .bold-01 {
  font-weight: bold;
  font-style: normal;
}

strong, .bold-02 {
  font-weight: bold;
  color: #daa71c;
}

img {
  vertical-align: top;
  max-width: 100%;
}

/**
 * Block Element
**/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
  margin: 20px 0;
}

p {
  margin: 0 0 22px;
}

ul,
ol {
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

li {
  list-style: none;
}

dl {
  margin: 0 0 22px;
}

table {
  width: 100%;
  margin: 0 0 32px;
}

th,
td {
  text-align: left;
  vertical-align: middle;
}

/**
 * Form Element
**/
input,
button,
select,
textarea {
  font-family: Meiryo, \30e1\30a4\30ea\30aa, \30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33, "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", \FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF, "MS PGothic", sans-serif;
  word-break: break-all;
}

select
iframe {
  border: 0;
}

/** ========================================================
 * @class Common: Structure: Base
 * @incliude structure/_base.scss
** ====================================================== */
/**
 * Structure Site Wrapper
 * .site-wrapper
**/
.site-wrapper {
  min-width: 320px;
  position: relative;
  z-index: 1;
}

/**
 * Structure Content Outer
 * .str-outer
**/
.str-outer, .compo-modal .compo-modal-outer {
  box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}

/**
 * Structure Content Inner
 * .str-inner
**/
.str-inner, .compo-modal .compo-modal-inner {
  max-width: 1010px;
  margin: 0 auto;
}

/** ========================================================
 * @class Common: Structure: Header
 * @incliude structure/_header.scss
** ====================================================== */
/**
 * .site-header
**/
.site-header {
  position: relative;
}

/**
 * .region-logo
**/
.site-header .region-logo .block {
  display: block;
  padding: 36px 0 18px;
}
.site-header .region-logo .logo {
  position: relative;
  z-index: 2;
  display: table;
  margin: 0;
}
.site-header .region-logo .img {
  vertical-align: bottom;
  display: table-cell;
  margin: 0;
}
.site-header .region-logo .img a,
.site-header .region-logo .img span {
  display: block;
  padding: 0 20px 0 0;
}
.site-header .region-logo .lang {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1;
  vertical-align: bottom;
  color: #0e0d6a;
  display: table-cell;
  padding: 0 0 0 15px;
  border-left: 1px solid #d0d0d0;
}
@media screen and (max-width: 767px) {
  .site-header .region-logo .block {
    padding: 10px 0 8px;
  }
  .site-header .region-logo .img a,
  .site-header .region-logo .img span {
    width: 54px;
    padding: 0 12px 2px 0;
  }
  .site-header .region-logo .lang {
    font-size: 10px;
    font-size: 1rem;
    padding: 0 0 2px 11px;
  }
}

/**
 *  .region-navigation
**/
.site-header .region-navigation {
  margin: -97px 0 0;
}
@media screen and (max-width: 767px) {
  .site-header .region-navigation {
    margin: 0;
    position: relative;
  }
}

/**
 * .region-navigation-btn
**/
.site-header .navigation-btn {
  position: absolute;
  top: -44px;
  right: 0;
  display: none;
}
.site-header .navigation-btn .nav-search, .site-header .navigation-btn .nav-btn {
  display: block;
  min-width: 60px;
  height: 44px;
  cursor: pointer;
  border: 0;
}
.site-header .navigation-btn .is-active.nav-search, .site-header .navigation-btn .is-active.nav-btn {
  background: url(/files/user/common/img/header/ico_nav_btn_02.png) center center no-repeat #0e0d6a;
}
.site-header .navigation-btn > p {
  vertical-align: top;
  display: inline-block;
  float: left;
  margin: 0;
}
.site-header .navigation-btn .nav-search {
  background: url(/files/user/common/img/header/ico_nav_btn_01.png) center center no-repeat;
  background-size: 28px;
  display: none;
}
.site-header .navigation-btn .nav-search > span {
  display: block;
  overflow: hidden;
  height: 0;
}
.site-header .navigation-btn .nav-btn {
  background: none;
}
.site-header .navigation-btn .nav-btn .ico,
.site-header .navigation-btn .nav-btn .ico:before,
.site-header .navigation-btn .nav-btn .ico:after {
  background: #1b1d68;
  display: block;
  width: 30px;
  height: 4px;
  margin: 0 auto;
}
.site-header .navigation-btn .nav-btn .ico {
  position: relative;
}
.site-header .navigation-btn .nav-btn .ico:before, .site-header .navigation-btn .nav-btn .ico:after {
  position: absolute;
  left: 0;
  content: "";
}
.site-header .navigation-btn .nav-btn .ico:before {
  top: -8px;
}
.site-header .navigation-btn .nav-btn .ico:after {
  top: 8px;
}
.site-header .navigation-btn .nav-btn .ico span {
  display: block;
  overflow: hidden;
  height: 0;
}
.site-header .navigation-btn .nav-btn.is-active .ico {
  display: none;
}
@media screen and (max-width: 767px) {
  .site-header .navigation-btn {
    display: block;
  }
  .site-header .navigation-btn .nav-search {
    display: none;
  }
}

/**
 *  /navigation-search
**/
.site-header .navigation-search {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: none;
  transform: translate3d(0, 0, 0);
}
.site-header .navigation-search.is-open {
  display: block;
}
.site-header .navigation-search .str-inner {
  position: relative;
}
.site-header .navigation-search .term-search-child {
  background: #444444;
  position: absolute;
  z-index: 5;
  top: 37px;
  right: 0;
  box-sizing: border-box;
  width: 328px;
  padding: 20px;
}
.site-header .navigation-search .term-search-child .form-root-01 {
  position: relative;
}
.site-header .navigation-search .term-search-child .form-root-01 input[type="text"] {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0 36px 0 16px;
}
.site-header .navigation-search .term-search-child .form-root-01 input[type="submit"] {
  background: url(/files/user/common/img/header/ico_nav_btn_01_2.png) center center no-repeat #f7f7f7;
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 100%;
  border: 0;
  border: 1px solid #b4b4b4;
  border-left: 0;
  border-radius: 0;
  -webkit-appearance: none;
}
@media screen and (max-width: 767px) {
  .site-header .navigation-search {
    padding: 0;
  }
  .site-header .navigation-search .term-search-child {
    background: #0e0d6a;
    top: 44px;
    width: 100%;
    min-width: 320px;
    padding: 16px;
  }
}

/**
 *  .navigation-list
**/
@media screen and (max-width: 959px) {
  .site-header .navigation-list {
    min-height: 134px;
  }
}
@media screen and (max-width: 767px) {
  .site-header .navigation-list {
    background: #0e0d6a;
    display: none;
    min-height: auto;
  }
  .site-header .navigation-list.is-open {
    display: block;
  }
}

/**
 *  .block-nav-primary
**/
.site-header .block-nav-primary {
  position: relative;
}
@media screen and (max-width: 767px) {
  .site-header .block-nav-primary {
    padding: 0 0 148px;
  }
}

/**
 *  .nav-util
**/
.site-header .nav-util {
  float: right;
  margin: 0 0 8px;
}
.site-header .nav-util > ul {
  float: left;
  margin: 0;
}
.site-header .nav-util > ul + ul > li:first-child > a:before {
  display: none;
}
.site-header .nav-util > ul > li {
  position: relative;
  float: left;
}
.site-header .nav-util > ul > li > a {
  font-size: 14px;
  font-size: 1.4rem;
  color: #777777;
  position: relative;
  display: block;
  box-sizing: border-box;
  height: 37px;
  padding: 9px 17px 0 39px;
}
.site-header .nav-util > ul > li > a:before {
  background: #d0d0d0;
  position: absolute;
  top: 12%;
  left: 0;
  width: 1px;
  height: 78%;
  content: "";
}
.site-header .nav-util > ul > li > a:after {
  position: absolute;
  top: 50%;
  display: inline-block;
  content: "";
}
.site-header .nav-util .term-personal > a:before {
  display: none;
}
.site-header .nav-util .term-personal > a:after {
  background: url(/files/user/common/img/header/ico_nav-util_04.png);
  left: 22px;
  width: 13px;
  height: 15px;
  margin: -7px 0 0;
}
.site-header .nav-util .term-customer > a {
  padding-right: 24px;
  padding-left: 28px;
}
.site-header .nav-util .term-customer > a:before {
  display: none;
}
.site-header .nav-util .term-customer > a:after {
  background: url(/files/user/common/img/header/ico_nav-util_05.png);
  left: 8px;
  width: 14px;
  height: 15px;
  margin: -7px 0 0;
}
.site-header .nav-util .term-lang {
  position: relative;
}
.site-header .nav-util .term-lang > a {
  padding-right: 46px;
  padding-left: 24px;
}
.site-header .nav-util .term-lang > a:after {
  background-position: 0 -1588px;
  width: 12px;
  height: 6px;
  right: 24px;
  margin: -3px 0 0;
}
.site-header .nav-util .term-lang.is-open .term-lang-child {
  display: block;
}
.site-header .nav-util .term-lang-child {
  background: #ffffff;
  position: absolute;
  z-index: 5;
  top: 37px;
  left: 0;
  display: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 10px 0;
  border: 1px solid #ebebeb;
  box-shadow: 0 1px 0 #f2f2f2;
}
.site-header .nav-util .term-lang-child a {
  font-size: 12px;
  font-size: 1.2rem;
  color: #777777;
  display: block;
  padding: 6px 24px;
}
.site-header .nav-util .term-global {
  background: #ebebeb;
}
.site-header .nav-util .term-global > a {
  padding-left: 18px;
}
.site-header .nav-util .term-region {
  background: #ebebeb;
  position: static;
}
.site-header .nav-util .term-region > a {
  transition: .2s;
}
.site-header .nav-util .term-region > a:after {
  background: url(/files/user/common/img/header/ico_nav-util_01.png);
  left: 16px;
  width: 17px;
  height: 17px;
  margin: -8px 0 0;
}
.site-header .nav-util .term-region > a.is-active {
  color: #ffffff;
  background: #444444;
}
.site-header .nav-util .term-region > a.is-active:after {
  background: url(/files/user/common/img/header/ico_nav-util_01_2.png);
}
.site-header .nav-util .term-region > a.is-active:before {
  display: none;
}
.site-header .nav-util .term-region-child {
  position: absolute;
  z-index: 5;
  top: 37px;
  left: 0;
  display: none;
}
.site-header .nav-util .term-region-child .nav-region {
  background: url(/files/user/common/img/header/bg_nav-region_01.png) center center no-repeat #444444;
  position: relative;
  display: table;
  box-sizing: border-box;
  width: 100%;
  padding: 30px 0;
}
.site-header .nav-util .term-region-child .nav-region:before, .site-header .nav-util .term-region-child .nav-region:after {
  position: absolute;
  top: 15%;
  display: block;
  width: 1px;
  height: 70%;
  content: "";
  border-left: 1px solid #a2a2a2;
}
.site-header .nav-util .term-region-child .nav-region:before {
  left: 44.257425%;
}
.site-header .nav-util .term-region-child .nav-region:after {
  right: 41.683168%;
}
.site-header .nav-util .term-region-child .col {
  position: relative;
  display: table-cell;
  box-sizing: border-box;
  padding: 0 0 0 2.970297%;
}
.site-header .nav-util .term-region-child .col:first-child {
  width: 44.257425%;
}
.site-header .nav-util .term-region-child .col:first-child:before {
  display: none;
}
.site-header .nav-util .term-region-child .col:first-child > ul > li {
  float: left;
  width: 33.333333%;
}
.site-header .nav-util .term-region-child .col:first-child + .col {
  width: 14.059405%;
}
.site-header .nav-util .term-region-child .col:first-child + .col + .col {
  width: 41.683168%;
  padding: 0 8.910891% 0 3.960396%;
}
.site-header .nav-util .term-region-child .col:first-child + .col + .col > ul > li {
  width: 50%;
}
.site-header .nav-util .term-region-child .hdg {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #ffffff;
  margin: 6px 0 8px;
}
.site-header .nav-util .term-region-child ul {
  overflow: hidden;
  margin: 0;
}
.site-header .nav-util .term-region-child li {
  font-size: 12px;
  font-size: 1.2rem;
  float: left;
}
.site-header .nav-util .term-region-child a {
  color: #ffffff;
  position: relative;
  display: block;
  padding: 7px 10px 6px;
}
.site-header .nav-util .term-region-child a:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: .95em;
  left: 0;
}
.site-header .nav-util .term-region-child .nav-region-close {
  background: #b3b3b3;
  position: relative;
  display: none;
  box-sizing: border-box;
  width: 100%;
  height: 30px;
  padding: 0;
  border: 0;
}
.site-header .nav-util .term-region-child .nav-region-close:before {
  background-position: 0 -204px;
  width: 24px;
  height: 12px;
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  zoom: .75;
  margin: -6px 0 0 -12px;
}
.site-header .nav-util .term-region-child .nav-region-close:after {
  background: #b3b3b3;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
}
.site-header .nav-util .term-search {
  display: none;
}
.site-header .nav-util .term-search > a {
  background: #ebebeb;
  transition: .2s;
}
.site-header .nav-util .term-search > a:after {
  background: url(/files/user/common/img/header/ico_nav-util_03.png);
  left: 17px;
  width: 16px;
  height: 16px;
  margin: -9px 0 0;
}
.site-header .nav-util .term-search > a.is-active {
  color: #ffffff;
  background: #444444;
}
.site-header .nav-util .term-search > a.is-active:before {
  display: none;
}
.site-header .nav-util .term-search > a.is-active:after {
  background: url(/files/user/common/img/header/ico_nav-util_03_2.png);
}
@media screen and (max-width: 959px) {
  .site-header .nav-util {
    display: table;
    min-width: 50%;
    direction: rtl;
  }
  .site-header .nav-util > ul {
    font-size: 0;
    text-align: right;
    vertical-align: top;
    float: none;
    direction: ltr;
  }
  .site-header .nav-util > ul + ul {
    display: table-header-group;
    display: table-caption\9;
  }
  .site-header .nav-util > ul > li {
    font-size: medium;
    text-align: left;
    display: inline-block;
    float: none;
  }
}
@media screen and (max-width: 767px) {
  .site-header .nav-util {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    float: none;
    box-sizing: border-box;
    width: 100%;
    height: 148px;
    margin: 0;
    padding: 0 15px;
    direction: ltr;
  }
  .site-header .nav-util > ul > li {
    float: left;
    box-sizing: border-box;
    width: 50%;
  }
  .site-header .nav-util > ul > li > a {
    font-size: 13px;
    font-size: 1.3rem;
    color: #ffffff;
    height: auto;
    padding: 14px 0 14px 35px;
  }
  .site-header .nav-util > ul > li > a:before {
    display: none;
  }
  .site-header .nav-util > ul + ul {
    display: block;
  }
  .site-header .nav-util .term-personal > a {
    padding-left: 18px;
  }
  .site-header .nav-util .term-personal > a:after {
    background: url(/files/user/common/img/header/ico_nav-util_04_2.png);
    left: 0;
    margin: -8px 0 0;
  }
  .site-header .nav-util .term-customer > a {
    padding-right: 0;
    padding-left: 17px;
  }
  .site-header .nav-util .term-customer > a:after {
    background: url(/files/user/common/img/header/ico_nav-util_05_2.png);
    left: -2px;
    margin: -8px 0 0;
  }
  .site-header .nav-util .term-lang {
    position: relative;
    width: 100%;
    margin: 47px 0 10px;
  }
  .site-header .nav-util .term-lang > a {
    font-size: 14px;
    font-size: 1.4rem;
    color: #777777;
    background: #ffffff;
    padding: 11px 15px 12px;
  }
  .site-header .nav-util .term-lang > a:after {
    right: 10px;
  }
  .site-header .nav-util .term-customer + .term-personal,
  .site-header .nav-util .term-customer + .term-lang {
    margin-top: 0;
  }
  .site-header .nav-util .term-lang-child {
    top: 44px;
  }
  .site-header .nav-util .term-search {
    display: none;
  }
  .site-header .nav-util .term-global {
    background: transparent;
    width: 35.862069%;
  }
  .site-header .nav-util .term-global > a {
    padding: 8px 0 20px 24px;
  }
  .site-header .nav-util .term-region {
    background: transparent;
    width: 64.137931%;
  }
  .site-header .nav-util .term-region > a {
    padding: 9px 0 19px 46px;
  }
  .site-header .nav-util .term-region > a:after {
    background: url(/files/user/common/img/header/ico_nav-util_01_2.png);
    left: 24px;
    margin: -14px 0 0;
  }
  .site-header .nav-util .term-region > a.is-active {
    color: #0e0d6a;
    background: #ebebeb;
  }
  .site-header .nav-util .term-region > a.is-active:after {
    background: url(/files/user/common/img/header/ico_nav-util_01_3.png);
  }
  .site-header .nav-util .term-region-child {
    background: #0e0d6a;
    top: inherit;
    margin: -10px 0 0;
    padding: 0 15px 15px;
  }
  .site-header .nav-util .term-region-child .nav-region {
    background: #ebebeb;
    display: block;
    padding: 0 0 18px;
  }
  .site-header .nav-util .term-region-child .nav-region:before, .site-header .nav-util .term-region-child .nav-region:after {
    display: none;
  }
  .site-header .nav-util .term-region-child .col {
    display: block;
    padding: 0 15px 14px;
  }
  .site-header .nav-util .term-region-child .col:first-child {
    width: 100%;
  }
  .site-header .nav-util .term-region-child .col:first-child .hdg {
    border: 0;
  }
  .site-header .nav-util .term-region-child .col:first-child > ul > li {
    width: 50%;
  }
  .site-header .nav-util .term-region-child .col:first-child + .col {
    width: 100%;
  }
  .site-header .nav-util .term-region-child .col:first-child + .col + .col {
    width: 100%;
  }
  .site-header .nav-util .term-region-child .col:first-child + .col + .col > ul > li {
    width: 50%;
  }
  .site-header .nav-util .term-region-child .hdg {
    color: #444444;
    margin: 0;
    padding: 20px 0 0;
    border-top: 1px solid #d0d0d0;
  }
  .site-header .nav-util .term-region-child li {
    font-size: 12px;
    font-size: 1.2rem;
    width: 50%;
  }
  .site-header .nav-util .term-region-child a {
    color: #444444;
  }
  .site-header .nav-util .term-region-child a:before {
    background-image: url(/files/user/common/img/sprite.png);
    background-repeat: no-repeat;
    background-position: 0 -1637px;
    display: inline-block;
    width: 5px;
    height: 8px;
    content: "";
    top: 1.2em;
    zoom: .75;
  }
  .site-header .nav-util .term-region-child .nav-region-close {
    display: block;
  }
}

/**
 *  .nav-primary
**/
.site-header .nav-primary {
  float: right;
  clear: both;
  max-width: 800px;
}
.site-header .nav-primary > ul {
  display: table;
  margin: 0;
}
.site-header .nav-primary > ul > li {
  vertical-align: bottom;
  display: table-cell;
}
.site-header .nav-primary > ul > li.is-current > a {
  border-bottom-color: #0e0d6a;
}
.site-header .nav-primary > ul > li > a {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  color: #0e0d6a;
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 14px 16px 6px 15px;
  transition: .2s;
  border-bottom: 8px solid #cccccc;
}
.site-header .nav-primary > ul > li > a:hover, .site-header .nav-primary > ul > li > a:active, .site-header .nav-primary > ul > li > a.is-active {
  color: #0d40b5;
  border-bottom-color: #0d40b5;
}
.site-header .nav-primary > ul > li > a:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 1.2em;
  left: 15px;
  display: none;
}
.site-header .nav-primary > ul > li.add-tgl-opened-flex .nav-primary-child .col .link-list > li {
  float: none;
  width: 100%;
}
.site-header .nav-primary > ul > li.add-tgl-opened-flex .nav-primary-child .col .child {
  position: relative;
  overflow: hidden;
  margin: 0 0 0 -22px;
}
.site-header .nav-primary > ul > li.add-tgl-opened-flex .nav-primary-child .col .child li {
  display: block;
  float: left;
  box-sizing: border-box;
  width: 33.333333%;
  padding: 0 0 0 22px;
}
.site-header .nav-primary .nav-primary-child {
  color: #ffffff;
  background: #0d40b5;
  position: absolute;
  z-index: 5;
  top: 100%;
  left: 0;
  display: none;
  padding-top: 40px;
  padding-bottom: 40px;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}
.site-header .nav-primary .nav-primary-child a {
  color: #ffffff;
  display: block;
}
.site-header .nav-primary .nav-primary-child.type-horizontal {
  background: transparent;
  padding: 0;
  box-shadow: none;
}
.site-header .nav-primary .nav-primary-child.type-horizontal .str-inner {
  background: #0d40b5;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}
.site-header .nav-primary .nav-primary-child.type-horizontal.of-nallow .str-inner {
  background: transparent;
  box-shadow: none;
}
.site-header .nav-primary .nav-primary-child.type-horizontal.of-nallow .str-inner .link-list {
  background: #0d40b5;
  width: 33.333333%;
  margin: 0 0 0 auto;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}
.site-header .nav-primary .nav-primary-child .str-sidebar {
  position: relative;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list {
  position: relative;
  width: 100%;
  min-height: 340px;
  margin: 0;
  padding-bottom: 60px;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li.link-root {
  position: absolute;
  bottom: 10px;
  left: 0;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li.link-root > a {
  font-size: 14px;
  font-size: 1.4rem;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li.link-root > a > span {
  position: relative;
  display: block;
  padding: 0 0 0 10px;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li.link-root > a > span:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: -2px;
  margin: -5px 0 0;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li.is-open > .hdg {
  background: #2753ba;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li > a, .site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li > .hdg {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
  background: transparent;
  position: relative;
  z-index: 3;
  display: block;
  box-sizing: border-box;
  width: 266px;
  padding: 11px 10px 9px 30px;
  border: 0;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li > .hdg:before {
  background-position: 0 -234px;
  width: 6px;
  height: 12px;
  position: absolute;
  z-index: 3;
  top: 50%;
  right: 10px;
  margin: -7px 0 0 0;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child {
  background: #2753ba;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  min-height: 100%;
  margin: 0;
  padding: 29px 0 30px 266px;
  transform: translate3d(0, 0, 0);
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child:before {
  background: #0d40b5;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: 266px;
  height: 100%;
  content: "";
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child > li {
  padding: 0 297px 0 41px;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child > li > a {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  padding: 8px 0 7px;
}
.site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child > li.img {
  position: absolute;
  top: 40px;
  right: 40px;
  max-width: 236px;
  height: auto;
  padding: 0;
}
.site-header .nav-primary .nav-primary-child .str-4col {
  margin: 0 0 0 -22px;
}
.site-header .nav-primary .nav-primary-child .str-4col .col {
  float: left;
  box-sizing: border-box;
  width: 25%;
  padding: 0 0 0 22px;
}
.site-header .nav-primary .nav-primary-child .str-4col .col.col3of4 {
  width: 75%;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list {
  margin: 0 0 0 -22px;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li:nth-child(3n + 1) {
  clear: both;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li {
  float: left;
  box-sizing: border-box;
  width: 33.333333%;
  padding: 0 0 0 22px;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li > a, .site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li > .hdg {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 13px 8px 10px 8px;
  cursor: pointer;
  border: 0;
  border-top: 1px solid #597fd6;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li > .hdg {
  text-align: left;
  background: none;
  padding: 13px 30px 10px 8px;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li > .hdg:after {
  background-position: 0 -216px;
  width: 12px;
  height: 6px;
  position: absolute;
  top: 50%;
  right: 8px;
  margin: -3px 0 0;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .link-list > li.is-open > .hdg:after {
  background-position: 0 -246px;
  width: 12px;
  height: 6px;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .child {
  margin: 0 0 15px;
}
[data-script-enabled="true"] .site-header .nav-primary .nav-primary-child .str-4col .col .child {
  display: none;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .child.is-open {
  display: block;
}
.site-header .nav-primary .nav-primary-child .str-4col .col .child a {
  font-size: 12px;
  font-size: 1.2rem;
  box-sizing: border-box;
  padding: 4px 16px 5px 16px;
}
@media screen and (max-width: 1179px) {
  .site-header .nav-primary {
    max-width: 720px;
  }
  .site-header .nav-primary > ul > li > a {
    padding: 14px 10px 6px 10px;
  }
}
@media screen and (max-width: 959px) {
  .site-header .nav-primary > ul > li > a {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 13px 13px 9px 13px;
  }
}
@media screen and (max-width: 899px) {
  .site-header .nav-primary {
    max-width: 100%;
  }
  .site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child {
    padding: 29px 0 30px 245px;
  }
  .site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child > li {
    padding: 0 240px 0 40px;
  }
  .site-header .nav-primary .nav-primary-child .str-sidebar .link-list > li .child > li.img {
    right: 20px;
    max-width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .site-header .nav-primary {
    float: none;
  }
  .site-header .nav-primary > ul {
    display: block;
  }
  .site-header .nav-primary > ul > li {
    display: block;
    float: none;
  }
  .site-header .nav-primary > ul > li:hover .nav-primary-child {
    display: none;
  }
  .site-header .nav-primary > ul > li.is-current > a {
    background: #0e0d6a;
    border-bottom-color: #4d4d91;
  }
  .site-header .nav-primary > ul > li > a {
    font-size: 16px;
    font-size: 1.6rem;
    text-align: left;
    color: #ffffff;
    display: block;
    min-height: 0;
    padding: 12px 8px 12px 30px;
    border: 0;
    border-bottom: 1px solid #4d4d91;
  }
  .site-header .nav-primary > ul > li > a:hover {
    border-bottom: 1px solid #4d4d91;
  }
  .site-header .nav-primary > ul > li > a:before {
    display: block;
  }
  .site-header .nav-primary .nav-primary-child {
    display: none !important;
  }
}

/**
 * .block-nav-secondary
**/
.block-nav-secondary {
  background: #0e0d6a;
}
.block-nav-secondary .nav-secondary > ul {
  overflow: hidden;
  box-sizing: border-box;
  margin: 0;
  padding: 5px 0;
}
.block-nav-secondary .nav-secondary > ul > li {
  float: left;
}
.block-nav-secondary .nav-secondary > ul > li > a {
  font-size: 13px;
  font-size: 1.3rem;
  color: #ffffff;
  display: block;
  box-sizing: border-box;
  padding: 6px 20px 6px 0;
}
@media screen and (max-width: 767px) {
  .block-nav-secondary {
    display: none;
  }
}

/**
 * .box-attention
**/
.box-attention {
  background: #f6f6f6;
  padding: 0 15px;
  display: none;
}
.box-attention.is-active {
  display: block;
}
.box-attention .box-attention-inner {
  max-width: 1010px;
  margin: 0 auto;
  padding: 21px 0;
  display: flex;
  align-items: center;
}
.box-attention .box-attention-inner .text-attention {
  font-weight: bold;
  color: #777;
  margin-bottom: 0;
  line-height: 1.31;
}
.box-attention .box-attention-inner .col {
  width: 274px;
  padding: 0 18px 0 32px;
}
.box-attention .box-attention-inner .col .btn-01 {
  margin-bottom: 0;
  width: 100%;
}
.box-attention .box-attention-inner .col .btn-01 button {
  font-size: 1.6rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .box-attention .box-attention-inner {
    display: block;
  }
  .box-attention .box-attention-inner .text-attention {
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
  .box-attention .box-attention-inner .col {
    width: 182px;
    margin: 0 auto;
  }
  .box-attention .box-attention-inner .col .btn-01 button {
    font-size: 1.4rem;
  }
}

/** ========================================================
 * @class Common: Structure: Footer
 * @incliude structure/_footer.scss
** ====================================================== */
/**
 * .region-nav-local
**/
.site-footer .region-nav-local {
  background: #f5f5f5;
  position: relative;
}
.site-footer .region-nav-local .str-inner {
  position: relative;
  z-index: 2;
}
.site-footer .region-nav-local:before {
  background: #d9d9d9;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 48px;
  content: "";
}
.site-footer .region-nav-local .hdg {
  position: relative;
  margin: 0;
}
.site-footer .region-nav-local .hdg a {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #0d40b5;
  display: inline-block;
  box-sizing: border-box;
  min-height: 48px;
  padding: 11px 12px 10px;
}
.site-footer .region-nav-local .hdg a:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 1.1em;
  left: 0;
}
.site-footer .region-nav-local .hdg:before {
  position: absolute;
  bottom: -20px;
  left: 40px;
  box-sizing: border-box;
  width: 22px;
  height: 20px;
  content: "";
  border-top: 10px solid #d9d9d9;
  border-right: 11px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 11px solid transparent;
}
.site-footer .region-nav-local .link-list {
  vertical-align: top;
  overflow: hidden;
  margin: 0 0 0 -22px;
  padding: 23px 0 40px;
}
.site-footer .region-nav-local .link-list li {
  float: left;
  box-sizing: border-box;
  width: 25%;
  padding: 0 0 0 22px;
}
.site-footer .region-nav-local .link-list li.is-current a {
  font-weight: bold;
  text-decoration: none;
  color: #444444;
  cursor: default;
}
.site-footer .region-nav-local .link-list a {
  font-size: 14px;
  font-size: 1.4rem;
  color: #777777;
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 10px 0 10px 12px;
  border-bottom: 1px solid #d0d0d0;
}
.site-footer .region-nav-local .link-list a:before {
  background-position: 0 -1645px;
  width: 4px;
  height: 6px;
  position: absolute;
  top: 1.2em;
  left: 0;
}
@media screen and (max-width: 579px) {
  .site-footer .region-nav-local .link-list {
    margin: 0;
    padding: 10px 0 32px;
  }
  .site-footer .region-nav-local .link-list li {
    float: none;
    width: 100%;
    padding: 0;
  }
  .site-footer .region-nav-local .link-list a {
    height: auto !important;
  }
}

/**
 * .region-nav-footer
**/
.site-footer .region-nav-footer {
  background: #000000;
}
.site-footer .region-nav-footer .nav-footer {
  margin: 0 0 0 -22px;
  padding: 44px 0;
}
.site-footer .region-nav-footer .nav-footer .inner {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.site-footer .region-nav-footer .col {
  vertical-align: top;
  display: table-cell;
  padding: 0 0 0 22px;
}
.site-footer .region-nav-footer a {
  color: #ffffff;
  position: relative;
  display: block;
}
.site-footer .region-nav-footer .hdg {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0 0 11px;
}
.site-footer .region-nav-footer .hdg a {
  padding: 0 0 0 13px;
}
.site-footer .region-nav-footer .hdg a:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: .45em;
  left: 0;
}
.site-footer .region-nav-footer .link-list {
  margin: 0 0 0 13px;
}
.site-footer .region-nav-footer li {
  font-size: 12px;
  font-size: 1.2rem;
  word-break: break-all;
}
.site-footer .region-nav-footer li a {
  padding: 6px 0 6px 14px;
}
.site-footer .region-nav-footer li a:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 0;
  margin: -4px 0 0;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}
@media screen and (max-width: 767px) {
  .site-footer .region-nav-footer .nav-footer {
    display: block;
    padding: 13px 0 14px;
  }
  .site-footer .region-nav-footer .nav-footer .inner {
    display: block;
  }
  .site-footer .region-nav-footer .col {
    display: inline-block;
    width: auto;
    padding: 0 0 0 22px;
  }
  .site-footer .region-nav-footer .hdg {
    margin: 0;
  }
  .site-footer .region-nav-footer .hdg a {
    padding: 8px 0 7px 13px;
  }
  .site-footer .region-nav-footer .hdg a:before {
    top: .95em;
  }
  .site-footer .region-nav-footer .link-list {
    display: none;
  }
}
@media screen and (max-width: 579px) {
  .site-footer .region-nav-footer .nav-footer {
    margin: 0;
  }
  .site-footer .region-nav-footer .col {
    display: block;
    padding: 0;
  }
}

/**
 * .region-foot-pagetop
**/
.site-footer .region-foot-pagetop {
  text-align: right;
  position: fixed;
  z-index: 100;
  right: 0;
  bottom: 62px;
}
.site-footer .region-foot-pagetop > p {
  margin: 0;
}
.site-footer .region-foot-pagetop a {
  line-height: 65px;
  text-align: center;
  background: #b3b3b3;
  position: relative;
  display: block;
  overflow: hidden;
  width: 48px;
  height: 48px;
  margin: 0 0 0 auto;
}
.site-footer .region-foot-pagetop a:hover {
  background: #cccccc;
  transition: .2s;
}
.site-footer .region-foot-pagetop a:before {
  background-position: 0 -204px;
  width: 24px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -6px 0 0 -12px;
}
.site-footer .region-foot-pagetop span {
  display: inline-block;
  overflow: hidden;
  height: 0;
}
@media screen and (max-width: 959px) {
  .site-footer .region-foot-pagetop {
    bottom: 49px;
  }
}
@media screen and (max-width: 767px) {
  .site-footer .region-foot-pagetop {
    bottom: 92px;
  }
  .site-footer .region-foot-pagetop > p {
    position: absolute;
    top: 0;
    right: 0;
  }
  .site-footer .region-foot-pagetop a {
    width: 43px;
    height: 43px;
  }
}

/**
 * .region-foot-info
**/
.site-footer .region-foot-info {
  background: #0d10b5;
  position: relative;
  padding-bottom: 20px;
}
.site-footer .region-foot-info .block-info,
.site-footer .region-foot-info .block-content {
  position: relative;
  z-index: 2;
}
.site-footer .region-foot-info .block-bg {
  text-align: right;
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  overflow: hidden;
  width: 100%;
}
.site-footer .region-foot-info .block-bg img {
  width: auto;
  max-width: none;
}
.site-footer .region-foot-info .block-info .hdg-l2 {
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold;
  margin: 0;
  padding: 48px 0;
  border-top: 0;
}
.site-footer .region-foot-info .block-info .hdg-l2 a {
  color: #ffffff;
  position: relative;
  display: block;
}
.site-footer .region-foot-info .label {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  color: #0d40b5;
  background: #ffffff;
  display: inline-block;
  margin: 60px 0 0 0;
  padding: 6px 15px 5px;
}
.site-footer .region-foot-info .lead {
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.2;
  color: #ffffff;
  margin: 10px 0 26px;
  text-shadow: 1px 1px 0 #1340b3, -1px 1px 0 #1340b3, 1px -1px 0 #1340b3, -1px -1px 0 #1340b3;
}
@media screen and (max-width: 959px) {
  .site-footer .region-foot-info .block-info .hdg-l2 {
    padding: 20px 0 0;
  }
  .site-footer .region-foot-info .label {
    margin: 30px 0 0;
    padding: 6px 9px;
  }
  .site-footer .region-foot-info .lead {
    margin: 11px 0 0 0;
  }
}
@media screen and (max-width: 767px) {
  .site-footer .region-foot-info .block-info .hdg-l2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .site-footer .region-foot-info .label {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .site-footer .region-foot-info .lead {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 11px 0 61px 0;
  }
  .site-footer .region-foot-info .block-bg img {
    max-width: 100%;
    height: auto;
    margin: 0 -10px -30px 0;
  }
}
@media screen and (max-width: 579px) {
  .site-footer .region-foot-info {
    background-size: contain;
  }
}

/**
 * .region-foot-copy
**/
.site-footer .region-foot-copy {
  background: #100e68;
  position: relative;
}
.site-footer .region-foot-copy .link-list {
  text-align: left;
  float: left;
  margin: 0;
  padding: 11px 0 10px;
}
.site-footer .region-foot-copy .link-list li {
  display: block;
  float: left;
}
.site-footer .region-foot-copy .link-list a {
  font-size: 13px;
  font-size: 1.3rem;
  color: #ffffff;
  position: relative;
  display: inline-block;
  padding: 10px 22px 10px 13px;
}
.site-footer .region-foot-copy .link-list a:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 0;
  margin: -4px 0 0;
}
.site-footer .region-foot-copy .copyright {
  text-align: right;
  color: #ffffff;
  float: right;
  margin: 0;
  padding: 18px 0 20px;
}
.site-footer .region-foot-copy .copyright small, .site-footer .region-foot-copy .copyright .small, .site-footer .region-foot-copy .copyright .small *, .small .site-footer .region-foot-copy .copyright * {
  font-size: 13px;
  font-size: 1.3rem;
}
@media screen and (max-width: 899px) {
  .site-footer .region-foot-copy .link-list {
    text-align: center;
    float: none;
    padding: 12px 0 0;
  }
  .site-footer .region-foot-copy .link-list li {
    display: inline-block;
    float: none;
  }
  .site-footer .region-foot-copy .link-list a {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 5px 22px 4px 12px;
  }
  .site-footer .region-foot-copy .copyright {
    text-align: center;
    float: none;
    padding: 9px 0 12px;
  }
  .site-footer .region-foot-copy .copyright small, .site-footer .region-foot-copy .copyright .small, .site-footer .region-foot-copy .copyright .small *, .small .site-footer .region-foot-copy .copyright * {
    font-size: 10px;
    font-size: 1rem;
  }
}

/** ========================================================
 * @class Common: Structure: Content Body
 * @incliude structure/_content_body.scss
** ====================================================== */
/**
 * .site-content
**/
.site-content {
  border-top: 1px solid #ebebeb;
}
.block-nav-secondary + .site-content {
  border-top: 0;
}

/**
 * .region-breadcrumb
**/
.region-breadcrumb .block-breadcrumb ul {
  overflow: hidden;
  margin: 0;
  padding: 6px 0 12px;
}
.region-breadcrumb .block-breadcrumb li {
  font-size: 12px;
  font-size: 1.2rem;
  float: left;
  padding: 0 12px 0 0;
}
.region-breadcrumb .block-breadcrumb li:before {
  display: inline-block;
  padding: 0 12px 0 0;
  content: ">";
}
.region-breadcrumb .block-breadcrumb li:first-child:before {
  display: none;
}
.region-breadcrumb .block-breadcrumb a,
.region-breadcrumb .block-breadcrumb em,
.region-breadcrumb .block-breadcrumb .bold-01 {
  display: inline-block;
  padding: 6px 0 0;
}
@media screen and (max-width: 767px) {
  .region-breadcrumb {
    display: none;
  }
}

/**
 * .region-category
**/
.region-category {
  color: #ffffff;
  background: #aaa;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  position: relative;
  min-height: 260px;
  margin: 0 0 32px;
}
.region-category .str-inner {
  display: table;
  width: 100%;
  height: 260px;
  min-height: 260px;
}
.region-category .block-content {
  text-align: left;
  vertical-align: middle;
  z-index: 2;
  display: table-cell;
  width: 55%;
  padding: 0;
}
.region-category .block-bg {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.region-category .block-bg img {
  vertical-align: top;
  position: absolute;
  right: 50%;
  width: auto;
  max-width: none;
  height: 100%;
  margin: 0 -640px 0 0;
}
.region-category .hdg-l1 {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.3;
  margin: 0 0 22px;
  padding: 22px 0 0;
}
.region-category .lead {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  margin: 22px 0;
}
.region-category .txt {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 22px;
}
.region-category.type-white {
  color: #444444;
}
@media screen and (max-width: 1179px) {
  .region-category .block-bg img {
    right: 0;
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  .region-category {
    background-position: right top;
    background-size: cover;
    height: auto;
    min-height: 150px;
  }
  .region-category .str-inner {
    height: auto;
    min-height: 150px;
  }
  .region-category .block-content {
    vertical-align: middle;
    display: table-cell;
    width: 100%;
    padding: 20px 0;
  }
  .region-category .hdg,
  .region-category .lead {
    background: rgba(0, 0, 0, 0.8);
    display: inline-block;
    padding: 10px;
  }
  .region-category.type-white .hdg,
  .region-category.type-white .lead {
    background: rgba(255, 255, 255, 0.9);
    display: inline-block;
    padding: 10px;
  }
  .region-category .hdg-l1 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.3;
    display: table;
    margin: 0;
    padding: 0;
  }
  .region-category .hdg-l1 .hdg {
    vertical-align: middle;
    display: table-cell;
  }
  .region-category .lead {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3;
    margin: 0;
  }
  .region-category .lead br {
    display: none;
  }
  .region-category .txt {
    font-size: 12px;
    font-size: 1.2rem;
    color: #444444;
    position: absolute;
    top: 100%;
    left: 0;
    margin: 0;
    padding: 10px 15px 32px;
  }
  .region-category .txt br {
    display: none;
  }
}

/**
 * .region-content-flt-l,
 * .region-content-flt-r
**/
.region-content-flt-l,
.region-content-flt-r {
  background-color: #dddee2;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin: 0 0 72px;
  padding-top: 40px;
}
.region-content-flt-l .box,
.region-content-flt-r .box {
  background: rgba(255, 255, 255, 0.8);
  box-sizing: border-box;
  width: 60%;
  margin: 0 0 40px 0;
  padding: 10px;
}
.region-content-flt-l .box .hdg,
.region-content-flt-r .box .hdg {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #0e0d6a;
  margin: 0;
}
.region-content-flt-l .box .txt,
.region-content-flt-r .box .txt {
  margin: 0;
}
@media screen and (max-width: 1179px) {
  .region-content-flt-l,
  .region-content-flt-r {
    background-size: cover;
  }
}
@media screen and (max-width: 767px) {
  .region-content-flt-l,
  .region-content-flt-r {
    background-position: right;
    padding-top: 20px;
  }
  .region-content-flt-l .box,
  .region-content-flt-r .box {
    width: 100%;
    margin: 0 0 20px;
  }
  .region-content-flt-l .box .hdg,
  .region-content-flt-r .box .hdg {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.region-content-flt-r .box {
  margin: 0 0 40px 40%;
}
@media screen and (max-width: 767px) {
  .region-content-flt-r {
    background-position: left;
  }
  .region-content-flt-r .box {
    margin: 0 0 20px;
  }
}

/**
 * .region-carousel-main
**/
.region-carousel-main {
  margin-top: -1px;
  margin-bottom: 72px;
  padding: 0;
}
.region-carousel-main .slick-list {
  width: 100%;
}
.region-carousel-main .section-item {
  position: relative;
}
.region-carousel-main .section-item > a, .region-carousel-main .section-item > .item {
  display: block;
}
.region-carousel-main .section-item > a:hover, .region-carousel-main .section-item > .item:hover {
  text-decoration: none;
}
.region-carousel-main .segment-outer {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.region-carousel-main .segment-inner {
  display: block;
  max-width: 1010px;
  height: 100%;
  margin: 0 auto;
}
.region-carousel-main .item-content {
  color: #ffffff;
  background: #0d40b5;
  display: block;
  box-sizing: border-box;
  width: 50%;
  max-width: 494px;
  height: 100%;
  padding: 37px 35px 0 34px;
}
.region-carousel-main .item-content .lead {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.25;
  letter-spacing: -1px;
  display: block;
  margin: 0 0 24px;
}
.region-carousel-main .item-content .txt {
  font-size: 17px;
  font-size: 1.7rem;
  display: block;
  margin: 0;
}
.region-carousel-main .item-content .btn {
  position: relative;
  display: inline-block;
  float: right;
  clear: both;
  margin: 17px 0 0;
}
.region-carousel-main .item-content .btn a {
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  background: #fff;
  display: inline-block;
  box-sizing: border-box;
  width: 104px;
  padding: 7px 0 6px 15px;
  border-radius: 20px;
}
.region-carousel-main .item-content .btn a:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 16px;
  margin: -5px 0 0;
}
.region-carousel-main .item-img {
  display: block;
  margin: 0;
}
.region-carousel-main .item-img img {
  width: 100%;
  max-width: none;
}
.region-carousel-main .slick-prev:before {
  background-position: 0 -24px;
  width: 24px;
  height: 48px;
  left: 10px;
}
.region-carousel-main .slick-next:before {
  background-position: 0 -72px;
  width: 24px;
  height: 48px;
  right: 10px;
}
.region-carousel-main .slick-dots {
  margin: -45px auto 0;
  padding: 0 0 45px 70px;
}
@media screen and (max-width: 1179px) {
  .region-carousel-main .slick-dots-outer .slick-stop {
    left: 45px;
  }
  .region-carousel-main .item-content {
    padding: 20px 30px 0 50px;
  }
  .region-carousel-main .item-content .lead {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .region-carousel-main .item-content .txt {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .region-carousel-main .slick-dots {
    padding: 0 0 45px 82px;
  }
}
@media screen and (max-width: 959px) {
  .region-carousel-main .item-content {
    padding: 20px 20px 0 50px;
  }
  .region-carousel-main .item-content .lead {
    font-size: 22px;
    font-size: 2.2rem;
    margin: 0 0 10px;
  }
  .region-carousel-main .item-content .txt {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .region-carousel-main .slick-dots-outer .slick-stop {
    margin: -33px 0 0;
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
  }
  .region-carousel-main .slick-dots {
    position: absolute;
    margin: -38px 0 0;
    padding: 0 0 45px 10%;
    -webkit-transform: scale(0.6);
    -ms-transform: scale(0.6);
    transform: scale(0.6);
  }
}
@media screen and (max-width: 767px) {
  .region-carousel-main {
    margin: 0 0 48px;
  }
  .region-carousel-main .segment-outer {
    position: relative;
  }
  .region-carousel-main .segment-inner {
    max-width: none;
  }
  .region-carousel-main .item-content {
    width: 100%;
    max-width: none;
    padding: 13px 14px 43px;
  }
  .region-carousel-main .item-content .lead {
    font-size: 28px;
    font-size: 2.8rem;
    letter-spacing: 0;
    margin: 0 0 12px;
  }
  .region-carousel-main .item-content .txt {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .region-carousel-main .item-content .btn {
    text-align: right;
    display: block;
    float: none;
    width: 104px;
    margin: 10px 0 10px auto;
  }
  .region-carousel-main .item-img {
    overflow: hidden;
  }
  .region-carousel-main .item-img img {
    width: 175%;
    margin: 0 0 0 -75%;
  }
  .region-carousel-main .slick-dots-outer .slick-stop {
    position: relative;
    left: 0;
    display: inline-block;
    margin: 0 16px 0 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .region-carousel-main .slick-dots {
    text-align: center;
    position: static;
    display: inline-block !important;
    max-width: none;
    margin: 0;
    padding: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}

/**
 * .region-carousel-2col
**/
.region-carousel-2col {
  background: #ebebeb;
  margin: 0 0 66px;
  margin-left: 0;
  padding: 40px 0 0;
}
.region-carousel-2col.carousel-empty {
  display: none;
}
.region-carousel-2col .slick-initialized .section-item {
  width: auto;
  margin: 0 0 0 22px;
}
.region-carousel-2col .section-item {
  position: relative;
  float: left;
  box-sizing: border-box;
  width: 50%;
}
.region-carousel-2col .item-content {
  background: #049ba8;
  background: rgba(4, 155, 168, 0.9);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 87px;
}
.region-carousel-2col .item-content > span {
  color: #ffffff;
  display: table;
  width: 100%;
  height: 100%;
  min-height: 87px;
  margin: 0;
}
.region-carousel-2col .item-content .cell {
  vertical-align: middle;
  display: table-cell;
  padding: 0 15px;
}
.region-carousel-2col .item-content .hdg {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  display: block;
}
.region-carousel-2col .item-content .txt {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  padding: 3px 0;
}
.region-carousel-2col .item-img img {
  width: 100%;
  max-width: none;
}
.region-carousel-2col .slick-slider {
  padding: 0 0 16px;
}
.region-carousel-2col .slick-list {
  z-index: 2;
  margin: 0 0 0 -22px;
}
.region-carousel-2col .slick-arrow {
  background: #ebebeb;
  z-index: 3;
  bottom: 0;
  width: 55px;
}
.region-carousel-2col .slick-arrow span {
  display: inline-block;
  overflow: hidden;
  height: 0;
}
.region-carousel-2col .slick-arrow:before, .region-carousel-2col .slick-arrow:after {
  position: absolute;
  bottom: 50%;
  margin: 0 0 5px;
}
.region-carousel-2col .slick-arrow:after {
  display: none;
}
.region-carousel-2col .slick-prev {
  left: -55px;
}
.region-carousel-2col .slick-prev:before, .region-carousel-2col .slick-prev:after {
  left: 6px;
}
.region-carousel-2col .slick-prev:before {
  background-position: 0 -1396px;
  width: 24px;
  height: 48px;
}
.region-carousel-2col .slick-prev:after {
  background-position: 0 -1528px;
  width: 12px;
  height: 24px;
}
.region-carousel-2col .slick-next {
  right: -55px;
}
.region-carousel-2col .slick-next:before, .region-carousel-2col .slick-next:after {
  right: 6px;
}
.region-carousel-2col .slick-next:before {
  background-position: 0 -1444px;
  width: 24px;
  height: 48px;
}
.region-carousel-2col .slick-next:after {
  background-position: 0 -1552px;
  width: 12px;
  height: 24px;
}
.region-carousel-2col .slick-dots {
  text-align: center;
  z-index: 3;
  margin: 0 30px;
  padding: 15px 0 0;
}
.region-carousel-2col .slick-dots li.slick-active button:after {
  background: #049ba8;
}
@media screen and (max-width: 1179px) {
  .region-carousel-2col {
    padding: 24px 0 0;
  }
  .region-carousel-2col .block-carousel {
    overflow: hidden;
  }
  .region-carousel-2col .item-content > span .hdg {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .region-carousel-2col .slick-list {
    z-index: 4;
    padding: 0 15px;
  }
  .region-carousel-2col .slick-arrow:before {
    display: none;
  }
  .region-carousel-2col .slick-arrow:after {
    bottom: 17px;
    display: block;
    margin: 0;
  }
  .region-carousel-2col .slick-prev {
    left: 15px;
  }
  .region-carousel-2col .slick-next {
    right: 15px;
  }
}

/**
 * .region-strength
**/
.region-strength {
  background: #eaeaea;
  padding-top: 30px;
  padding-bottom: 50px;
}
.region-strength .segment {
  margin: 0;
}
.region-strength .segment .ico {
  text-align: center;
  display: block;
}
.region-strength .segment .hdg {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  color: #444;
  display: block;
  margin: 14px 0;
}
.region-strength .txt {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.75;
  text-align: center;
  margin: 14px 0;
}
@media screen and (max-width: 899px) {
  .region-strength .segment .hdg br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .region-strength {
    padding-bottom: 30px;
  }
  .region-strength .segment .hdg {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0 0 14px;
  }
}

/**
 * .region-common-bnr-01
**/
.region-common-bnr-01 {
  background: #f2f2f2;
}
.region-common-bnr-01 .list-bnr {
  overflow: hidden;
  margin: 0 0 0 -19px;
  padding: 20px 0;
}
.region-common-bnr-01 .list-bnr ul {
  display: table;
  margin: 0 auto;
}
.region-common-bnr-01 .list-bnr li {
  display: table-cell;
  box-sizing: border-box;
  padding: 0 0 0 19px;
}
.region-common-bnr-01 .list-bnr a {
  display: block;
}
.region-common-bnr-01 .list-bnr img {
  width: auto;
}
:root .region-common-bnr-01 .list-bnr img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .region-common-bnr-01 {
    display: none;
  }
}

/**
 * .region-aside-sns
**/
.region-aside-sns {
  position: fixed;
  z-index: 101;
  right: 0;
  bottom: 140px;
  min-height: 216px;
}
.region-aside-sns .pnl {
  background: #ffffff;
  position: absolute;
  top: 0;
  left: 64px;
  display: none;
  box-sizing: border-box;
  width: 334px;
  min-height: 100%;
  padding: 0 14px;
  border-left: 1px solid #ebebeb;
}
.region-aside-sns .pnl .hdg-l2-04 {
  margin: 12px 0 7px;
}
.region-aside-sns .pnl .compo-number {
  font-size: 26px;
  font-size: 2.6rem;
  text-align: left;
  position: relative;
  margin: 0 0 6px;
  padding: 0 0 0 38px;
}
.region-aside-sns .pnl .compo-number:before {
  background: url(/files/user/common/img/ico_contact_01.png);
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 27px;
  height: 28px;
  content: "";
}
.region-aside-sns .pnl .txt {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 18px;
  padding: 0 10px 0 38px;
}
.region-aside-sns .pnl .btn-03 a {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 10px 16px 10px 28px;
}
.region-aside-sns .pnl .btn-03:before {
  left: 17px;
}
.region-aside-sns > ul {
  background: #ffffff;
  position: relative;
  display: block;
  margin: 0;
  padding-right: 0;
  transition: .2s;
  border: 1px solid #ebebeb\9;
  border-right: 0;
  will-change: padding;
}
.region-aside-sns > ul:not(:target) {
  border: 0;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
}
.region-aside-sns.is-open > ul {
  padding-right: 334px;
}
.region-aside-sns > ul > li {
  display: block;
}
.region-aside-sns > ul > li > a, .region-aside-sns > ul > li > button {
  font-size: 12px;
  font-size: 1.2rem;
  color: #ffffff;
  display: block;
  padding: 9px 0 9px 22px;
  transition: .2s;
  border: 0;
}
.region-aside-sns > ul > li > a:hover, .region-aside-sns > ul > li > button:hover {
  opacity: .7;
}
.region-aside-sns .term-contact {
  width: 64px;
  margin-bottom: 1px;
}
.region-aside-sns .term-contact > a, .region-aside-sns .term-contact > button {
  text-decoration: none;
  text-align: center;
  background: #d29e20;
  box-sizing: border-box;
  width: 64px;
  padding: 4px 0 3px;
}
.region-aside-sns .term-contact .is-open .pnl {
  display: block;
}
.region-aside-sns .term-facebook > a {
  padding-top: 16px;
}
.region-aside-sns .term-youtube > a {
  padding-bottom: 16px;
}
.region-aside-sns .label {
  font-weight: bold;
  line-height: 1.2;
  display: block;
}
@media screen and (max-width: 959px), screen and (max-height: 600px) {
  .region-aside-sns {
    background: #ffffff;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    min-width: 320px;
    min-height: 0;
  }
  .region-aside-sns.is-open > ul {
    padding: 0;
  }
  .region-aside-sns .pnl {
    position: static;
    width: 100%;
  }
  .region-aside-sns > ul {
    width: 100%;
  }
  .region-aside-sns > ul > li {
    vertical-align: top;
    float: left;
    box-sizing: border-box;
  }
  .region-aside-sns > ul > li > a {
    text-align: center;
    padding: 14px 10px 12px;
  }
  .region-aside-sns .term-contact {
    width: auto;
    margin-bottom: 0;
  }
  .region-aside-sns .term-contact br {
    display: none;
  }
  .region-aside-sns .term-contact > a,
  .region-aside-sns .term-contact > button {
    font-size: 10px;
    font-size: 1rem;
    width: auto;
    padding: 7px;
  }
  .region-aside-sns .term-contact > a img,
  .region-aside-sns .term-contact > button img {
    width: 23px;
  }
  .region-aside-sns .term-facebook > a {
    padding-top: 14px;
    padding-left: 20px;
  }
  .region-aside-sns .term-youtube > a {
    padding-bottom: 12px;
  }
  .region-aside-sns .pnl .hdg-l2-04 {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 14px 0 7px;
  }
  .region-aside-sns .pnl .compo-number {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .region-aside-sns .pnl .txt {
    padding: 3px 0 0;
  }
  .region-aside-sns .pnl .btn-03 a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px), screen and (max-height: 600px) {
  body {
    padding-bottom: 49px;
  }
}
/**
 * .site-content-body
**/
.site-content-body .region-info,
.site-content-body .region-closeup {
  background: #f2f2f2;
}
@media screen and (max-width: 767px) {
  .site-content-body .region-info,
  .site-content-body .region-closeup {
    padding-top: 25px;
    padding-bottom: 0;
  }
}
.site-content-body .region-info {
  margin-bottom: 48px;
  padding-top: 48px;
  padding-bottom: 28px;
}
.site-content-body .region-closeup {
  background: #ebebeb;
  margin-bottom: 48px;
  padding-top: 36px;
  padding-bottom: 8px;
}
.site-content-body .region-closeup .hdg-l2-01 {
  margin-top: 0;
}
.site-content-body .region-clip {
  background: #ebebeb;
  overflow: hidden;
}
.site-content-body .region-separator {
  margin-top: 40px;
  padding-top: 48px;
  border-top: 1px solid #ebebeb;
}
.site-content-body .region-separator .block-content .btn-list-01 {
  margin-bottom: 0;
}

/**
 * .region-global-whykddi
**/
.region-global-whykddi {
  background-color: #0e0d6a;
  background-repeat: no-repeat;
  background-position: left bottom;
  padding-top: 48px;
}
.region-global-whykddi .block-info > [class^="hdg-l2"]:first-child {
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: left;
  color: #0e0d6a;
  background: #d4d3ff;
  display: table;
  box-sizing: border-box;
  width: 100%;
  padding: 65px 0 67px 42px;
  border: 0;
}
.region-global-whykddi .block-info > [class^="hdg-l2"]:first-child > span {
  text-align: left;
  vertical-align: middle;
  display: table-cell;
}
.region-global-whykddi .block-content {
  color: #fff;
}
.region-global-whykddi .block-content > .block-separator {
  padding-bottom: 18px;
  border-top-color: #fff;
}
.region-global-whykddi .block-content > .block-separator .lyt-flex > .row > .col {
  vertical-align: top;
}
.region-global-whykddi .block-content > .block-separator .hdg-l3 {
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  margin: 16px 0 16px;
}
.region-global-whykddi .block-content > .block-separator .lyt-img {
  background: url(/files/user/common/img/bg_cover_04.png);
  margin: 0;
}
.region-global-whykddi .block-content > .block-separator .segment {
  font-weight: bold;
  text-align: center;
  background: url(/files/user/common/img/bg_cover_04.png);
  margin: 0;
  padding-bottom: 22px;
}
.region-global-whykddi .block-content > .block-separator .segment .num {
  font-size: 68px;
  font-size: 6.8rem;
  line-height: 1;
  display: inline-block;
  padding: 4px 0 14px;
}
.region-global-whykddi .block-content > .block-separator .segment .unit {
  display: inline-block;
}
.region-global-whykddi .block-content > .block-separator .segment .caption {
  display: block;
}
@media screen and (max-width: 959px) {
  .region-global-whykddi .block-info > [class^="hdg-l2"]:first-child {
    font-size: 30px;
    font-size: 3rem;
    color: #fff;
    background: transparent;
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .region-global-whykddi .block-content > .block-separator .hdg-l3 {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .region-global-whykddi .block-content > .block-separator .segment .num {
    font-size: 48px;
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 579px) {
  .region-global-whykddi .block-content > .block-separator .hdg-l3 {
    margin: 16px 0 0;
  }
}

/**
 * .region-heading
**/
.region-heading {
  overflow: hidden;
}
.region-heading .hdg-l1-l-01 {
  float: left;
}
.region-heading .compo-snslist-01 {
  float: right;
  margin: 22px 0;
}
@media screen and (max-width: 767px) {
  .region-heading .hdg-l1-l-01 {
    float: none;
  }
  .region-heading .compo-snslist-01 {
    float: none;
  }
}

/**
 * .region-heading-index
**/
.region-heading-index {
  background-repeat: no-repeat;
  background-position: right center;
  background-size: cover;
  position: relative;
  box-sizing: border-box;
  min-height: 400px;
  margin-top: -1px;
  padding: 0;
}
.region-heading-index .slick-list {
  width: 100%;
}
.region-heading-index .str-inner {
  position: relative;
  z-index: 2;
  padding-top: 58px;
}
.region-heading-index .hdg-l1 {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: bold;
  color: #fff;
  background: url(/files/user/common/img/bg_cover_06.png);
  display: inline-block;
  padding: 20px;
}
[data-script-enabled] .region-heading-index > .section-item {
  display: none;
}
[data-script-enabled] .region-heading-index > .section-item:first-child {
  display: block;
}
.region-heading-index .section-item {
  position: relative;
  width: 100%;
  min-height: 400px;
}
.region-heading-index .section-item .item-img {
  background-repeat: no-repeat;
  background-position: right center;
  background-size: cover;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.region-heading-index .section-item .item-img img {
  width: auto;
  height: 100%;
}
.region-heading-index .slick-prev:before {
  background-position: 0 -24px;
  width: 24px;
  height: 48px;
  left: 10px;
}
.region-heading-index .slick-next:before {
  background-position: 0 -72px;
  width: 24px;
  height: 48px;
  right: 10px;
}
.region-heading-index .slick-dots-outer .slick-stop {
  left: 0;
}
.region-heading-index .slick-dots {
  margin: -100px auto 0;
  padding: 0 0 45px 35px;
}
@media screen and (max-width: 1179px) {
  .region-heading-index .section-item {
    padding: 0 50px;
  }
  .region-heading-index .slick-dots-outer .slick-stop {
    left: 50px;
  }
  .region-heading-index .slick-dots {
    padding: 0 0 0 80px;
  }
}
@media screen and (max-width: 767px) {
  .region-heading-index {
    min-height: 150px;
  }
  .region-heading-index .section-item {
    min-height: 150px;
    padding: 0;
  }
  .region-heading-index .str-inner {
    text-align: left;
    display: table;
    box-sizing: border-box;
    min-height: 150px;
    padding: 20px 15px 50px;
  }
  .region-heading-index .hdg-l1 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.3;
    margin: 0;
    padding: 12px;
  }
  .region-heading-index .hdg-l1 br {
    display: none;
  }
  .region-heading-index .slick-dots-outer .slick-stop {
    position: relative;
    left: 0;
    display: inline-block;
    margin: 0 16px 0 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .region-heading-index .slick-dots {
    text-align: center;
    position: static;
    display: inline-block !important;
    max-width: none;
    margin: 0;
    padding: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}

/**
 * .region-inner-news
**/
.region-inner-news {
  background: url(/files/user/common/img/bg_cover_05.png);
  position: relative;
  z-index: 2;
  width: 100%;
  margin: 0;
}
[data-script-enabled="true"] .region-inner-news .add-carousel-news {
  display: none;
}
[data-script-enabled="true"] .region-inner-news .add-carousel-news.slick-initialized {
  display: block;
}
.region-inner-news .slick-arrow {
  width: 36px;
}
.region-inner-news .slick-arrow:before {
  position: absolute;
  top: 50%;
  margin: -12px 0 0;
}
.region-inner-news .slick-prev:before {
  background-position: 0 -434px;
  width: 12px;
  height: 24px;
  left: 0;
}
.region-inner-news .slick-next:before {
  background-position: 0 -458px;
  width: 12px;
  height: 24px;
  right: 0;
}
.region-inner-news .slick-list {
  margin: 0 36px;
}
.region-inner-news .term > a {
  text-decoration: none;
  display: table;
  width: 100%;
  height: 56px;
}
.region-inner-news .term .info {
  vertical-align: middle;
  white-space: nowrap;
  display: table-cell;
}
.region-inner-news .term .label {
  font-size: 14px;
  font-size: 1.4rem;
}
.region-inner-news .term .date {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #777;
  margin: 0 22px 0 10px;
}
.region-inner-news .term .txt {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3;
  vertical-align: middle;
  display: table-cell;
  overflow: hidden;
  width: 100%;
  height: 48px;
  padding: 0;
}
.region-inner-news .term .txt:hover {
  text-decoration: underline;
}
@media screen and (max-width: 959px) {
  .region-inner-news .slick-prev:before {
    left: 15px;
  }
  .region-inner-news .slick-next:before {
    right: 15px;
  }
}
@media screen and (max-width: 767px) {
  .region-inner-news {
    display: none;
  }
}

/**
 * .region-heading-strength
**/
.region-heading-strength {
  color: #fff;
  background-color: #0d40b5;
  background-repeat: no-repeat;
  background-position: right bottom;
  padding-top: 34px;
  padding-bottom: 34px;
  text-shadow: 0 0 1px #0d40b5, 0 0 2px #0d40b5, 0 0 3px #0d40b5;
}
.region-heading-strength .hdg-l1 {
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: bold;
  color: #fff;
  margin: 0;
  padding: 0 0 26px;
}
@media screen and (max-width: 959px) {
  .region-heading-strength {
    background-size: 50%;
  }
  .region-heading-strength .hdg-l1 {
    font-size: 32px;
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 767px) {
  .region-heading-strength {
    padding-top: 24px;
    padding-bottom: 48px;
  }
  .region-heading-strength .hdg-l1 {
    font-size: 26px;
    font-size: 2.6rem;
    padding: 0 0 12px;
  }
}
@media screen and (max-width: 579px) {
  .region-heading-strength {
    background-size: 75%;
  }
}

/**
 * .lyt-strength-[n]
**/
.lyt-strength-01, .lyt-strength-02, .lyt-strength-03 {
  background-size: cover;
  padding-top: 62px;
  padding-bottom: 62px;
}
.lyt-strength-01 .hdg-l2, .lyt-strength-02 .hdg-l2, .lyt-strength-03 .hdg-l2 {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.3;
  color: #444;
  margin: 0 0 32px;
}
.lyt-strength-01 .lyt-img, .lyt-strength-02 .lyt-img, .lyt-strength-03 .lyt-img {
  margin: 0;
}
.lyt-strength-01 .lyt-5col a, .lyt-strength-02 .lyt-5col a, .lyt-strength-03 .lyt-5col a {
  text-decoration: underline;
  display: block;
  transition: .2s;
}
.lyt-strength-01 .lyt-5col a:hover, .lyt-strength-02 .lyt-5col a:hover, .lyt-strength-03 .lyt-5col a:hover {
  text-decoration: none;
  opacity: .7;
}
.lyt-strength-01 .btn-list-01, .lyt-strength-02 .btn-list-01, .lyt-strength-03 .btn-list-01 {
  margin-bottom: 0;
}
.lyt-strength-01 .lyt-img a, .lyt-strength-02 .lyt-img a, .lyt-strength-03 .lyt-img a {
  display: block;
  transition: .2s;
}
.lyt-strength-01 .lyt-img a:hover, .lyt-strength-02 .lyt-img a:hover, .lyt-strength-03 .lyt-img a:hover {
  opacity: .7;
}
.type-white.lyt-strength-01, .type-white.lyt-strength-02, .type-white.lyt-strength-03 {
  color: #fff;
}
.type-white.lyt-strength-01 .hdg-l2, .type-white.lyt-strength-02 .hdg-l2, .type-white.lyt-strength-03 .hdg-l2 {
  color: #fff;
}
.type-white.lyt-strength-01 .txt a, .type-white.lyt-strength-02 .txt a, .type-white.lyt-strength-03 .txt a,
.type-white.lyt-strength-01 .lead a,
.type-white.lyt-strength-02 .lead a,
.type-white.lyt-strength-03 .lead a,
.type-white.lyt-strength-01 .lyt-img a,
.type-white.lyt-strength-02 .lyt-img a,
.type-white.lyt-strength-03 .lyt-img a,
.type-white.lyt-strength-01 .lyt-5col a,
.type-white.lyt-strength-02 .lyt-5col a,
.type-white.lyt-strength-03 .lyt-5col a,
.type-white.lyt-strength-01 ul.list-bullet-01 a,
.type-white.lyt-strength-02 ul.list-bullet-01 a,
.type-white.lyt-strength-03 ul.list-bullet-01 a {
  text-decoration: underline;
  color: #fff;
}
.type-white.lyt-strength-01 .txt a:hover, .type-white.lyt-strength-02 .txt a:hover, .type-white.lyt-strength-03 .txt a:hover,
.type-white.lyt-strength-01 .lead a:hover,
.type-white.lyt-strength-02 .lead a:hover,
.type-white.lyt-strength-03 .lead a:hover,
.type-white.lyt-strength-01 .lyt-img a:hover,
.type-white.lyt-strength-02 .lyt-img a:hover,
.type-white.lyt-strength-03 .lyt-img a:hover,
.type-white.lyt-strength-01 .lyt-5col a:hover,
.type-white.lyt-strength-02 .lyt-5col a:hover,
.type-white.lyt-strength-03 .lyt-5col a:hover,
.type-white.lyt-strength-01 ul.list-bullet-01 a:hover,
.type-white.lyt-strength-02 ul.list-bullet-01 a:hover,
.type-white.lyt-strength-03 ul.list-bullet-01 a:hover {
  text-decoration: none;
}
.type-white.lyt-strength-01 ul.list-bullet-01 > li:before, .type-white.lyt-strength-02 ul.list-bullet-01 > li:before, .type-white.lyt-strength-03 ul.list-bullet-01 > li:before {
  background: #fff;
}
@media screen and (max-width: 767px) {
  .lyt-strength-01 .hdg-l2, .lyt-strength-02 .hdg-l2, .lyt-strength-03 .hdg-l2 {
    font-size: 26px;
    font-size: 2.6rem;
  }
  .lyt-strength-01 .col + .col, .lyt-strength-02 .col + .col, .lyt-strength-03 .col + .col {
    margin-top: 32px;
  }
  .lyt-strength-01 .lyt-5col .col + .col, .lyt-strength-02 .lyt-5col .col + .col, .lyt-strength-03 .lyt-5col .col + .col {
    margin-top: 0;
  }
  .lyt-strength-01 .lyt-5col .lyt-img, .lyt-strength-02 .lyt-5col .lyt-img, .lyt-strength-03 .lyt-5col .lyt-img {
    margin: 0 0 32px;
  }
}

.lyt-strength-01 {
  text-align: center;
}
.lyt-strength-01[style*="background-image"] {
  padding-top: 120px;
  padding-bottom: 120px;
}
.lyt-strength-01 .txt {
  max-width: 666px;
  margin-right: auto;
  margin-left: auto;
}
.lyt-strength-01 .lead {
  font-weight: bold;
  line-height: 1.9;
  max-width: 580px;
  margin-right: auto;
  margin-left: auto;
}
.lyt-strength-01 .colgroup {
  max-width: 950px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .lyt-strength-01 .lyt-5col .col {
    width: 33.333333%;
  }
  .lyt-strength-01[style*="background-image"] {
    padding-top: 62px;
    padding-bottom: 62px;
  }
}
@media screen and (max-width: 579px) {
  .lyt-strength-01 .lyt-5col .col {
    width: 50%;
  }
}

.lyt-strength-02 .lead {
  font-weight: bold;
}

.lyt-strength-03 {
  position: relative;
  overflow: hidden;
}
.lyt-strength-03 .lead {
  font-weight: bold;
}
.lyt-strength-03:after {
  background: #eaeaea;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
}
.lyt-strength-03 .str-inner {
  position: relative;
  z-index: 2;
}
.lyt-strength-03 .str-inner .inner {
  padding: 6px 36px 0 0;
}
.lyt-strength-03 .str-inner .col + .col .inner {
  padding-right: 0;
  padding-left: 36px;
}
.lyt-strength-03 .str-inner .txt {
  line-height: 1.8;
  padding: 0;
}
@media screen and (max-width: 579px) {
  .lyt-strength-03 {
    padding-bottom: 0;
  }
  .lyt-strength-03:after {
    display: none;
  }
  .lyt-strength-03 .hdg-l2-06-l {
    margin: 48px 0 22px;
  }
  .lyt-strength-03 .btn-list-01 {
    margin: 22px 0 0;
  }
  .lyt-strength-03 .btn-list-01 li {
    margin: 0;
  }
  .lyt-strength-03 .str-inner {
    position: relative;
    z-index: 2;
  }
  .lyt-strength-03 .str-inner .lyt-2col {
    margin: 0;
  }
  .lyt-strength-03 .str-inner .inner {
    padding: 0;
  }
  .lyt-strength-03 .str-inner .col {
    width: auto;
    margin: 0 -15px;
    margin-bottom: 48px;
    padding: 0 15px;
  }
  .lyt-strength-03 .str-inner .col + .col {
    background: #eaeaea;
    margin-bottom: 0;
    padding-top: 62px;
    padding-bottom: 48px;
  }
  .lyt-strength-03 .str-inner .col + .col .inner {
    padding-left: 0;
  }
}

/**
 * .block-overview-list
**/
.block-overview-list .heading {
  float: left;
  box-sizing: border-box;
  width: 50%;
}
.block-overview-list .heading > .hdg-l4-01 {
  margin-top: 0;
}
.block-overview-list .desc {
  float: right;
  box-sizing: border-box;
  width: 50%;
  padding: 0 0 0 22px;
}
.block-overview-list .desc > .list-define-01 {
  margin: 0;
}
.block-overview-list .desc > .list-define-01 > dt,
.block-overview-list .desc > .list-define-01 dd {
  margin-top: 0;
  margin-bottom: 0;
}
.block-overview-list .desc > .link-list-s {
  margin: 0 0 10px;
}
.block-overview-list .desc > .link-list-s > li {
  margin-top: 0;
}

/** ========================================================
 * @class Common: Structure: Content Foot
 * @incliude structure/_content_foot.scss
** ====================================================== */
/**
 * .site-content-foot
**/
.site-content-foot {
  margin: 72px 0 0;
}
@media screen and (max-width: 767px) {
  .site-content-foot {
    margin: 48px 0 0;
  }
}

/**
 * .region-carousel-content
**/
.site-content-foot .region-carousel-content {
  padding-bottom: 20px;
}
[data-script-enabled="true"] .site-content-foot .region-carousel-content {
  padding-bottom: 0;
}
.site-content-foot .region-carousel-content .block-content {
  background: #ffffff;
  padding: 20px 20px 8px;
}
.site-content-foot .region-carousel-content .lyt-flt-l-03 img {
  display: inline-block;
}
.site-content-foot .region-carousel-content .lyt-flt-l-03 .figure {
  vertical-align: middle;
  position: relative;
  padding: 0 43px 10px 23px;
}
.site-content-foot .region-carousel-content .lyt-flt-l-03 .figure .lyt-img {
  margin: 0;
}
.site-content-foot .region-carousel-content .lyt-flt-l-03 .figure:after {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 1px;
  height: 100%;
  margin: -20px 0 0;
  padding: 0 0 32px;
  content: "";
  border-left: 1px solid #ebebeb;
}
.site-content-foot .region-carousel-content .lyt-flt-l-03 .content {
  padding-left: 20px;
}
.site-content-foot .region-carousel-content .hdg-l2 {
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  color: #0e0d6a;
  margin: 0;
  padding: 40px 0 12px;
}
.site-content-foot .region-carousel-content .lead {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 16px;
}
.site-content-foot .region-carousel-content.term-promotion {
  background: url(/files/user/common/img/content/bg_region-carousel-content_01.jpg);
  background-size: cover;
}
.site-content-foot .region-carousel-content.term-promotion .block-content {
  border-top: 8px solid #0e0d6a;
}
.site-content-foot .region-carousel-content.term-promotion .lead {
  color: #0e0d6a;
}
.site-content-foot .region-carousel-content.term-example {
  background: url(/files/user/common/img/content/bg_region-carousel-content_02.jpg);
  background-size: cover;
}
.site-content-foot .region-carousel-content.term-example .block-content {
  border-top: 8px solid #049ba8;
}
.site-content-foot .region-carousel-content.term-example .hdg-l2,
.site-content-foot .region-carousel-content.term-example .lead {
  color: #049ba8;
}
.site-content-foot .region-carousel-content.term-example .slick-dots li.slick-active button:after {
  background: #049ba8;
}
.site-content-foot .region-carousel-content.term-example .slick-arrow:before {
  margin: 0 0 8px;
}
.site-content-foot .region-carousel-content .slick-initialized {
  padding: 0 0 27px;
}
.site-content-foot .region-carousel-content .slick-list {
  position: relative;
  z-index: 2;
}
.site-content-foot .region-carousel-content .slick-arrow {
  background: url(/files/user/common/img/bg_cover_01.png);
  z-index: 1;
  width: 55px;
}
.site-content-foot .region-carousel-content .slick-arrow:before, .site-content-foot .region-carousel-content .slick-arrow:after {
  position: absolute;
  bottom: 50%;
  margin: 0 0 -40px;
}
.site-content-foot .region-carousel-content .slick-arrow:after {
  bottom: 20px;
  display: none;
  margin: 0;
}
.site-content-foot .region-carousel-content .slick-prev {
  left: -55px;
}
.site-content-foot .region-carousel-content .slick-prev:before, .site-content-foot .region-carousel-content .slick-prev:after {
  left: 0;
}
.site-content-foot .region-carousel-content .slick-prev:before {
  background-position: 0 -24px;
  width: 24px;
  height: 48px;
}
.site-content-foot .region-carousel-content .slick-prev:after {
  background-position: 0 -156px;
  width: 12px;
  height: 24px;
}
.site-content-foot .region-carousel-content .slick-next {
  right: -55px;
}
.site-content-foot .region-carousel-content .slick-next:before, .site-content-foot .region-carousel-content .slick-next:after {
  right: 0;
}
.site-content-foot .region-carousel-content .slick-next:before {
  background-position: 0 -72px;
  width: 24px;
  height: 48px;
}
.site-content-foot .region-carousel-content .slick-next:after {
  background-position: 0 -180px;
  width: 12px;
  height: 24px;
}
.site-content-foot .region-carousel-content .slick-dots {
  text-align: center;
  margin: 0;
  padding: 18px 0 0;
}
@media screen and (max-width: 1179px) {
  .site-content-foot .region-carousel-content .slick-initialized {
    padding: 0 0 20px;
  }
  .site-content-foot .region-carousel-content .hdg-l2 {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .site-content-foot .region-carousel-content .lead {
    line-height: 1.3;
  }
  .site-content-foot .region-carousel-content .lyt-img {
    margin: 0 0 7px;
  }
  .site-content-foot .region-carousel-content .slick-arrow:before {
    display: none;
  }
  .site-content-foot .region-carousel-content .slick-arrow:after {
    display: block;
  }
  .site-content-foot .region-carousel-content .slick-prev {
    left: 0;
  }
  .site-content-foot .region-carousel-content .slick-next {
    right: 0;
  }
  .site-content-foot .region-carousel-content .slick-dots {
    margin: 0 40px;
    padding: 18px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .site-content-foot .region-carousel-content .lyt-flt-l-03 .figure {
    padding: 0 0 8px;
  }
  .site-content-foot .region-carousel-content .lyt-flt-l-03 .figure:after {
    display: none;
  }
  .site-content-foot .region-carousel-content .lyt-flt-l-03 .content {
    padding: 0;
  }
}

/**
 * .region-foot-contact
**/
.region-foot-contact {
  position: relative;
  overflow: hidden;
  border-top: 8px solid #daa71c;
  border-bottom: 4px solid #daa71c;
}
.site-content-body .region-foot-contact {
  margin-top: 72px;
  margin-bottom: -72px;
}
.region-foot-contact > .str-inner {
  background-repeat: no-repeat !important;
  background-position: right bottom;
  position: relative;
  z-index: 2;
  min-height: 260px;
}
.region-foot-contact .hdg {
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  color: #ffffff;
  background: #daa71c;
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0;
  padding: 4px 22px 6px 22px;
}
.region-foot-contact .lead {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.2;
  color: #daa71c;
  position: relative;
  z-index: 2;
  width: 74%;
  margin: 24px 0 25px;
}
.region-foot-contact .block-content {
  position: relative;
  z-index: 2;
  margin: 25px 0;
}
.region-foot-contact .block-content .section {
  float: left;
  margin: 0 44px 0 0;
}
.region-foot-contact .block-content .section + .section {
  margin: 0 176px 0 0;
}
.region-foot-contact .contact-mail p {
  margin: 0 0 20px;
}
.region-foot-contact .contact-tel {
  position: relative;
  padding: 0 0 0 49px;
}
.region-foot-contact .contact-tel:before {
  background: url(/files/user/common/img/footer/ico_contact_03.png);
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 35px;
  height: 36px;
  content: "";
}
.region-foot-contact .contact-tel p {
  margin: 0;
}
.region-foot-contact .contact-tel .segment {
  background: rgba(255, 255, 255, 0.8);
  float: left;
}
.region-foot-contact .contact-tel .segment + .segment {
  margin-left: 38px;
}
.region-foot-contact .contact-tel .num a {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 2px;
  vertical-align: baseline;
  color: #777777;
  display: inline-block;
  margin: 0 0 5px;
}
.region-foot-contact .contact-tel .num .sub {
  font-weight: bold;
  vertical-align: baseline;
}
.region-foot-contact .contact-tel .txt {
  line-height: 1.3;
  margin: 2px 0 0;
}
.region-foot-contact .contact-tel .txt .sub {
  font-size: 14px;
  font-size: 1.4rem;
}
@media screen and (max-width: 959px) {
  .region-foot-contact > .str-inner {
    background-size: 260px;
  }
}
@media screen and (max-width: 767px) {
  .region-foot-contact > .str-inner {
    background: none !important;
    min-height: auto;
  }
  .region-foot-contact .hdg {
    font-size: 20px;
    font-size: 2rem;
  }
  .region-foot-contact .lead {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3;
    width: auto;
    margin: 10px 0;
  }
  .region-foot-contact .block-content {
    margin: 10px 0 20px;
  }
  .region-foot-contact .block-content .section {
    margin: 0 44px 0 0;
  }
  .region-foot-contact .block-content .section + .section {
    margin: 0;
  }
  .region-foot-contact .btn-03:before {
    left: 22px;
  }
  .region-foot-contact .btn-03 a {
    padding: 10px 22px 10px 35px;
  }
}
@media screen and (max-width: 579px) {
  .region-foot-contact .block-content .section {
    margin: 0;
  }
  .region-foot-contact .contact-tel .segment {
    float: none;
  }
  .region-foot-contact .contact-tel .segment + .segment {
    margin-top: 13px;
    margin-left: 0;
  }
}

/**
 * .region-foot-finder
**/
.region-foot-finder {
  background-position: center;
  background-size: cover;
  padding-top: 27px;
  padding-bottom: 27px;
}
.region-foot-finder .section {
  color: #fff;
  display: table;
  width: 100%;
}
.region-foot-finder .section > .content, .region-foot-finder .section > .figure {
  display: table-cell;
}
.region-foot-finder .section > .content {
  vertical-align: top;
  white-space: nowrap;
}
.region-foot-finder .section > .figure {
  text-align: right;
  vertical-align: middle;
  padding: 0 24px 0 22px;
}
.region-foot-finder .section .hdg-l2 {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  margin: 20px 0;
}
.region-foot-finder .section .link-list-s {
  line-height: 1.75;
}
.region-foot-finder .section .link-list-s a {
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
}
.region-foot-finder .section .link-list-s a:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  top: .7em;
}
@media screen and (max-width: 767px) {
  .region-foot-finder {
    padding-top: 7px;
  }
  .region-foot-finder .section {
    display: block;
    width: auto;
  }
  .region-foot-finder .section > .content, .region-foot-finder .section > .figure {
    display: block;
  }
  .region-foot-finder .section > .content {
    white-space: normal;
  }
  .region-foot-finder .section > .figure {
    padding: 0;
  }
  .region-foot-finder .section .hdg-l2 {
    font-size: 24px;
    font-size: 2.4rem;
    margin: 20px 0;
  }
  .region-foot-finder .section .link-list-s a {
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
  }
}

/** ========================================================
 * @class Common: Module
 * @incliude module/_module.scss
** ====================================================== */
/** ========================================================
 * @class Common: Module: Block
 * @incliude module/_blcok.scss
 * @prefix block-***
** ====================================================== */
.block-content {
  display: block;
  width: auto;
}
.block-content > .block-separator {
  padding: 22px 0 0;
  border-top: 8px solid #bfbfbf;
}

/**
 * .block
**/
.block {
  display: table;
  width: 100%;
}
.block > .block-info, .block > .block-content {
  vertical-align: top;
  display: table-cell;
}
.block > .block-info:after, .block > .block-content:after {
  display: none;
}
.block > .block-info {
  box-sizing: border-box;
  width: 258px;
  min-width: 258px;
  padding: 0 22px 0 0;
}
.block > .block-content {
  width: 100%;
}
@media screen and (max-width: 899px) {
  .block {
    display: block;
    width: auto;
  }
  .block > .block-info, .block > .block-content {
    display: block;
    width: auto;
  }
  .block > .block-info {
    padding: 0;
  }
}

/** ========================================================
 * @class Common: Module: Heading
 * @incliude module/_heading.scss
 * @prefix hdg-***
** ====================================================== */
/**
 * .hdg-l1-l-[n]
**/
.hdg-l1-l-01, .hdg-l1-l-02, .hdg-l1-l-03, .hdg-l1-l-04, .hdg-l1-l-05 {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.3;
  margin: 18px 0 32px;
}
@media screen and (max-width: 767px) {
  .hdg-l1-l-01, .hdg-l1-l-02, .hdg-l1-l-03, .hdg-l1-l-04, .hdg-l1-l-05 {
    font-size: 26px;
    font-size: 2.6rem;
    margin: 22px 0;
  }
}

.hdg-l1-l-01 {
  color: #0e0d6a;
}

.hdg-l1-l-02 {
  color: #0d40b5;
}

.hdg-l1-l-03 {
  color: #049ba8;
}

.hdg-l1-l-04 {
  color: #daa71c;
}

.hdg-l1-l-05 {
  color: #777777;
}

/**
 * .hdg-l1-s-[n]
**/
.hdg-l1-s-01, .hdg-l1-s-02, .hdg-l1-s-03, .hdg-l1-s-04, .hdg-l1-s-05 {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.3;
  margin: 24px 0 30px;
}
@media screen and (max-width: 767px) {
  .hdg-l1-s-01, .hdg-l1-s-02, .hdg-l1-s-03, .hdg-l1-s-04, .hdg-l1-s-05 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

.hdg-l1-s-01 {
  color: #0e0d6a;
}

.hdg-l1-s-02 {
  color: #0d40b5;
}

.hdg-l1-s-03 {
  color: #049ba8;
}

.hdg-l1-s-04 {
  color: #daa71c;
}

.hdg-l1-s-05 {
  color: #777777;
}

/**
 * .hdg-l2-[n]
**/
.hdg-l2-01,
.hdg-l2-01-l, .hdg-l2-02,
.hdg-l2-02-l, .hdg-l2-03,
.hdg-l2-03-l, .hdg-l2-04,
.hdg-l2-04-l, .hdg-l2-05,
.hdg-l2-05-l, .hdg-l2-06,
.hdg-l2-06-l, .hdg-l2-07,
.hdg-l2-07-l {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  margin: 62px 0 22px;
}
@media screen and (max-width: 767px) {
  .hdg-l2-01,
  .hdg-l2-01-l, .hdg-l2-02,
  .hdg-l2-02-l, .hdg-l2-03,
  .hdg-l2-03-l, .hdg-l2-04,
  .hdg-l2-04-l, .hdg-l2-05,
  .hdg-l2-05-l, .hdg-l2-06,
  .hdg-l2-06-l, .hdg-l2-07,
  .hdg-l2-07-l {
    font-size: 20px;
    font-size: 2rem;
    margin: 48px 0 18px;
  }
}

.hdg-l2-01,
.hdg-l2-01-l {
  color: #0e0d6a;
}

.hdg-l2-02,
.hdg-l2-02-l {
  color: #0d40b5;
}

.hdg-l2-03,
.hdg-l2-03-l {
  color: #049ba8;
}

.hdg-l2-04,
.hdg-l2-04-l {
  color: #daa71c;
}

.hdg-l2-05,
.hdg-l2-05-l {
  color: #777777;
}

.hdg-l2-06,
.hdg-l2-06-l {
  color: #444;
}

.hdg-l2-07,
.hdg-l2-07-l {
  color: #fff;
}

.hdg-l2-01-l,
.hdg-l2-02-l,
.hdg-l2-03-l,
.hdg-l2-04-l,
.hdg-l2-05-l,
.hdg-l2-06-l,
.hdg-l2-07-l {
  font-size: 32px;
  font-size: 3.2rem;
  margin: 62px 0 32px;
}
@media screen and (max-width: 767px) {
  .hdg-l2-01-l,
  .hdg-l2-02-l,
  .hdg-l2-03-l,
  .hdg-l2-04-l,
  .hdg-l2-05-l,
  .hdg-l2-06-l,
  .hdg-l2-07-l {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

/**
 * .hdg-l3-[n]
**/
.hdg-l3-01,
.hdg-l3-02,
.hdg-l3-03 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.3;
  color: #444444;
  margin: 48px 0 16px;
  padding: 0 0 6px;
  border-bottom: 1px solid #d0d0d0;
}
@media screen and (max-width: 767px) {
  .hdg-l3-01,
  .hdg-l3-02,
  .hdg-l3-03 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
[class*="hdg-l2"] + .hdg-l3-01, [class*="hdg-l2"] +
.hdg-l3-02, [class*="hdg-l2"] +
.hdg-l3-03 {
  margin-top: 28px;
}

.hdg-l3-02 {
  padding: 0;
  border-bottom: 0;
}

.hdg-l3-03 {
  color: #049ba8;
  padding: 0;
  border-bottom: 0;
}

.hdg-l3-04 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #444444;
  margin-top: 0;
}
.hdg-l3-04 .ico-search {
  position: relative;
  display: block;
  padding-left: 46px;
}
.hdg-l3-04 .ico-search:before {
  background: url(/files/user/common/img/ico-search.png);
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 31px;
  content: "";
}
@media screen and (max-width: 767px) {
  .hdg-l3-04 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/**
 * .hdg-l4-[n]
**/
.hdg-l4-01 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.3;
  color: #777777;
  margin: 22px 0 10px;
}
@media screen and (max-width: 767px) {
  .hdg-l4-01 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

/**
 * .hdg-l5-[n]
**/
.hdg-l5-01 {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  color: #777777;
  margin: 22px 0 10px;
  padding-left: 10px;
  border-left: 3px solid #bfbfbf;
}
@media screen and (max-width: 767px) {
  .hdg-l5-01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

/** ========================================================
 * @class Common: Module: Text
 * @incliude module/_text.scss
 * @prefix none
** ====================================================== */
/**
 * .bold-01
 * @extend em
**/
/**
 * .bold-02
 * @extend strong
**/
/**
 * .bold-03
**/
.bold-03 {
  font-weight: bold;
  color: #db5c5c;
}

/**
 * .under-01
**/
.under-01 {
  text-decoration: underline;
}

/**
 * font-size
**/
/**
 * @extend small
**/
.x-small {
  font-size: 12px;
  font-size: 1.2rem;
}

.xx-small {
  font-size: 10px;
  font-size: 1rem;
}

.large {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3;
}

.x-large {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
}

.xx-large {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.3;
}

/**
 * .lead-[n]
**/
.lead-01 {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .lead-01 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.lead-02 {
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1.3;
  color: #444444;
}
@media screen and (max-width: 767px) {
  .lead-02 {
    font-size: 20px;
    font-size: 2rem;
  }
}

/**
 * .txt-modified
**/
.txt-modified {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right;
  margin: 20px 0 30px;
  padding: 0 0 12px;
  border-bottom: 1px solid #ebebeb;
}
.txt-modified > span {
  display: block;
}
.txt-modified > .number {
  float: left;
  margin: 0 22px 0 0;
}
@media screen and (max-width: 767px) {
  .txt-modified {
    margin-bottom: 24px;
  }
}

/**
 * .txt-author
**/
.txt-author {
  font-weight: bold;
  text-align: right;
}

/**
 * .txt-note
**/
.txt-note {
  margin-top: -16px;
}

/** ========================================================
 * @class Common: Module: List
 * @incliude module/_list.scss
 * @prefix list-***
** ====================================================== */
/**
 * ul.list-bullet-01
**/
ul.list-bullet-01 > li {
  position: relative;
  margin: 7px 0 0;
  padding: 0 0 0 20px;
}
ul.list-bullet-01 > li:first-child {
  margin: 0;
}
ul.list-bullet-01 > li:before {
  background: #777777;
  position: absolute;
  top: .55em;
  width: 6px;
  height: 6px;
  margin: 0 0 0 -20px;
  content: "";
  border-radius: 50%;
}
ul.list-bullet-01 ul,
ul.list-bullet-01 ol {
  margin-bottom: 0;
}
ul.list-bullet-01 ul > li:first-child,
ul.list-bullet-01 ol > li:first-child {
  margin: 7px 0 0;
}

/**
 * ul.list-bullet-[02, 03]
**/
ul.list-bullet-02 > li,
ul.list-bullet-03 > li {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  color: #049ba8;
  position: relative;
  padding: 0 0 0 40px;
}
ul.list-bullet-02 > li:before,
ul.list-bullet-03 > li:before {
  background: url(/files/user/common/img/ico_check_01.png);
  position: absolute;
  top: .1em;
  left: 0;
  display: inline-block;
  width: 22px;
  height: 22px;
  content: "";
}
ul.list-bullet-02 > li + li,
ul.list-bullet-03 > li + li {
  margin-top: 16px;
}
@media screen and (max-width: 767px) {
  ul.list-bullet-02 > li,
  ul.list-bullet-03 > li {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

/**
 * ul.list-bullet-03
**/
ul.list-bullet-03 > li {
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  font-weight: bold;
}
ul.list-bullet-03 > li:before {
  background: url(/files/user/common/img/ico_check_02.png);
  top: .25em;
  left: 4px;
  width: 23px;
  height: 18px;
}
@media screen and (max-width: 767px) {
  ul.list-bullet-03 > li {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

/**
 * ul.list-nobullet
**/
ul.list-nobullet > li {
  position: relative;
  margin: 7px 0 0;
}
ul.list-nobullet > li:first-child {
  margin: 0;
}
ul.list-nobullet ul,
ul.list-nobullet ol {
  margin-bottom: 0;
  padding: 0 0 0 20px;
}
ul.list-nobullet ul > li:first-child,
ul.list-nobullet ol > li:first-child {
  margin: 7px 0 0;
}

/**
 * %list-bullet-col
**/
ul.list-bullet-2col, ul.list-bullet-3col, ul.list-bullet-4col, ul.list-bullet-5col {
  margin-top: -7px;
  margin-left: -22px;
}
ul.list-bullet-2col > li, ul.list-bullet-3col > li, ul.list-bullet-4col > li, ul.list-bullet-5col > li {
  position: relative;
  float: left;
  box-sizing: border-box;
  margin: 7px 0 0;
  padding: 0 0 0 42px;
}
ul.list-bullet-2col > li:before, ul.list-bullet-3col > li:before, ul.list-bullet-4col > li:before, ul.list-bullet-5col > li:before {
  background: #777777;
  position: absolute;
  top: .5em;
  width: 6px;
  height: 6px;
  margin: 0 0 0 -20px;
  content: "";
  border-radius: 50%;
}

/**
 * ul.list-bullet-[n]col
**/
ul.list-bullet-2col > li {
  width: 50%;
}

ul.list-bullet-3col > li {
  width: 33.333333%;
}

ul.list-bullet-4col > li {
  width: 25%;
}

ul.list-bullet-5col > li {
  width: 20%;
}

@media screen and (max-width: 767px) {
  ul.list-bullet-2col > li,
  ul.list-bullet-3col > li,
  ul.list-bullet-4col > li,
  ul.list-bullet-5col > li {
    width: 50%;
  }
}
@media screen and (max-width: 579px) {
  ul.list-bullet-2col,
  ul.list-bullet-3col,
  ul.list-bullet-4col,
  ul.list-bullet-5col {
    overflow: hidden;
    margin-left: 0;
  }
  ul.list-bullet-2col > li,
  ul.list-bullet-3col > li,
  ul.list-bullet-4col > li,
  ul.list-bullet-5col > li {
    float: none;
    width: auto;
    height: auto !important;
    padding: 0 0 0 20px;
  }
}

/**
 * ul.list-number-01
**/
.list-number-01 > li {
  position: relative;
  margin: 7px 0 0;
  padding: 0 0 0 32px;
}
.list-number-01 > li:first-child {
  margin: 0;
}
.list-number-01 > li > .mark {
  text-align: right;
  position: absolute;
  display: inline-block;
  min-width: 28px;
  margin: 0 0 0 -32px;
}
.list-number-01 ul > li:first-child,
.list-number-01 ol > li:first-child {
  margin: 7px 0 0;
}

/**
 * %list-number-col
**/
ul.list-number-2col, ul.list-number-3col, ul.list-number-4col, ul.list-number-5col {
  margin-top: -7px;
  margin-left: -22px;
}
ul.list-number-2col > li, ul.list-number-3col > li, ul.list-number-4col > li, ul.list-number-5col > li {
  position: relative;
  float: left;
  box-sizing: border-box;
  margin: 7px 0 0;
  padding: 0 0 0 52px;
}
ul.list-number-2col > li > .mark, ul.list-number-3col > li > .mark, ul.list-number-4col > li > .mark, ul.list-number-5col > li > .mark {
  text-align: right;
  position: absolute;
  display: inline-block;
  min-width: 28px;
  margin: 0 0 0 -32px;
}

/**
 * ul.list-number-[n]col
**/
ul.list-number-2col > li {
  width: 50%;
}

ul.list-number-3col > li {
  width: 33.333333%;
}

ul.list-number-4col > li {
  width: 25%;
}

ul.list-number-5col > li {
  width: 20%;
}

@media screen and (max-width: 767px) {
  ul.list-number-2col > li,
  ul.list-number-3col > li,
  ul.list-number-4col > li,
  ul.list-number-5col > li {
    width: 50%;
  }
}
@media screen and (max-width: 579px) {
  ul.list-number-2col,
  ul.list-number-3col,
  ul.list-number-4col,
  ul.list-number-5col {
    overflow: hidden;
    margin-left: 0;
  }
  ul.list-number-2col > li,
  ul.list-number-3col > li,
  ul.list-number-4col > li,
  ul.list-number-5col > li {
    float: none;
    width: auto;
    height: auto !important;
    padding: 0 0 0 20px;
  }
}

/**
 * ul.list-notice-01
**/
ul.list-notice-01 > li,
ul.list-notice-02 > li,
ul.list-notice-03 > li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  position: relative;
  margin: 4px 0 0 0;
  padding: 0 0 0 1.5em;
}
ul.list-notice-01 > li:first-child,
ul.list-notice-02 > li:first-child,
ul.list-notice-03 > li:first-child {
  margin: 0;
}
ul.list-notice-01 > li > .mark,
ul.list-notice-02 > li > .mark,
ul.list-notice-03 > li > .mark {
  position: absolute;
  margin: 0 0 0 -1.5em;
}
@media screen and (max-width: 767px) {
  ul.list-notice-01,
  ul.list-notice-02,
  ul.list-notice-03 {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

/**
 * ul.list-notice-02
**/
ul.list-notice-02 > li {
  padding: 0 0 0 2em;
}
ul.list-notice-02 > li > .mark {
  margin: 0 0 0 -2em;
}

/**
 * ul.list-notice-03
**/
ul.list-notice-03 > li {
  padding: 0 0 0 3.5em;
}
ul.list-notice-03 > li > .mark {
  margin: 0 0 0 -3.5em;
}

/**
 * dl.list-define-01
**/
dl.list-define-01 {
  clear: both;
}
dl.list-define-01 dt {
  font-weight: bold;
  float: left;
  clear: both;
  margin: 0 0 5px;
}
dl.list-define-01 dd {
  margin-bottom: 10px;
  padding: 0 0 0 8em;
}
@media screen and (max-width: 767px) {
  dl.list-define-01 dt {
    font-size: 15px;
    font-size: 1.5rem;
    float: none;
    margin: 10px 0 5px;
  }
  dl.list-define-01 dd {
    margin: 0;
    padding: 0 !important;
  }
}

/**
 * .list-define-02
**/
.list-define-02 dt {
  font-weight: bold;
  margin: 0 0 5px;
}
.list-define-02 dd {
  margin: 0;
}
.list-define-02 dd + dt {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .list-define-02 dt {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

/** ========================================================
 * @class Common: Module: Link
 * @incliude module/_link.scss
 * @prefix link-***
** ====================================================== */
/**
 * %extend-link-ico
**/
.link-ico-blank:after, .link-ico-pdf:after, .link-ico-excel:after, .link-ico-word:after {
  vertical-align: baseline;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 0 0 5px;
  content: "";
}

/**
 * .link-ico-[name]
**/
.link-ico-blank:after {
  background: url(/files/user/common/img/ico_window.png);
}

.link-ico-pdf:after {
  background: url(/files/user/common/img/ico_pdf.png);
}

.link-ico-excel:after {
  background: url(/files/user/common/img/ico_excel.png);
}

.link-ico-word:after {
  background: url(/files/user/common/img/ico_word.png);
}

/**
 * %extend-link
**/
.link-l a,
.link-list-l a,
.link-flex-l a,
.link-2col-l a,
.link-3col-l a,
.link-4col-l a,
.link-5col-l a,
.link-6col-l a, .link-s a,
.link-list-s a,
.link-flex-s a,
.link-2col-s a,
.link-3col-s a,
.link-4col-s a,
.link-5col-s a,
.link-6col-s a, .link-anchor-s a,
.link-anchor-l a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
}
.link-l a:before,
.link-list-l a:before,
.link-flex-l a:before,
.link-2col-l a:before,
.link-3col-l a:before,
.link-4col-l a:before,
.link-5col-l a:before,
.link-6col-l a:before, .link-s a:before,
.link-list-s a:before,
.link-flex-s a:before,
.link-2col-s a:before,
.link-3col-s a:before,
.link-4col-s a:before,
.link-5col-s a:before,
.link-6col-s a:before, .link-anchor-s a:before,
.link-anchor-l a:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: .5em;
  left: 0;
}
.link-l .txt,
.link-list-l .txt,
.link-flex-l .txt,
.link-2col-l .txt,
.link-3col-l .txt,
.link-4col-l .txt,
.link-5col-l .txt,
.link-6col-l .txt, .link-s .txt,
.link-list-s .txt,
.link-flex-s .txt,
.link-2col-s .txt,
.link-3col-s .txt,
.link-4col-s .txt,
.link-5col-s .txt,
.link-6col-s .txt, .link-anchor-s .txt,
.link-anchor-l .txt {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  margin: 5px 0 0;
}

/**
 * %extend-link-l
**/
.link-l a,
.link-list-l a,
.link-flex-l a,
.link-2col-l a,
.link-3col-l a,
.link-4col-l a,
.link-5col-l a,
.link-6col-l a, .link-anchor-l a {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
}

.link-l a + a,
.link-s a + a {
  margin-left: 30px;
}

/**
 * .link-list-[size]
**/
.link-list-l > li {
  margin: 7px 0 0;
}
.link-list-l > li:first-child {
  margin: 0;
}
.link-list-l .link-list-l,
.link-list-l .link-list-s {
  margin: 7px 0 0 20px;
}

.link-list-s > li {
  margin: 7px 0 0;
}
.link-list-s > li:first-child {
  margin: 0;
}
.link-list-s .link-list-l,
.link-list-s .link-list-s {
  margin: 7px 0 0 20px;
}

/**
 * .link-flex-[size]
**/
.link-flex-l {
  margin-top: -7px;
}
.link-flex-l > li {
  display: inline-block;
  margin: 7px 22px 0 0;
}

.link-flex-s {
  margin-top: -7px;
}
.link-flex-s > li {
  display: inline-block;
  margin: 7px 35px 0 0;
}

/**
 * .link-anchor-[size]
**/
.link-anchor-s,
.link-anchor-l {
  overflow: hidden;
  margin-top: -5px;
}
.link-anchor-s > li,
.link-anchor-l > li {
  display: inline-block;
  margin: 5px 44px 0 -22px;
  padding: 2px 0 2px 22px;
  border-left: 1px solid #cccccc;
}
.link-anchor-s a,
.link-anchor-l a {
  padding: 0 0 0 16px;
}
.link-anchor-s a:before,
.link-anchor-l a:before {
  background-position: 0 -808px;
  width: 8px;
  height: 5px;
  top: .6em;
}

p.link-anchor-s,
p.link-anchor-l {
  margin-top: 0;
}

/**
 * %extend-link-col
**/
.link-2col-l,
.link-3col-l,
.link-4col-l,
.link-5col-l,
.link-6col-l, .link-2col-s,
.link-3col-s,
.link-4col-s,
.link-5col-s,
.link-6col-s {
  clear: both;
  margin-left: -22px;
}
.link-2col-l > li,
.link-3col-l > li,
.link-4col-l > li,
.link-5col-l > li,
.link-6col-l > li, .link-2col-s > li,
.link-3col-s > li,
.link-4col-s > li,
.link-5col-s > li,
.link-6col-s > li {
  float: left;
  box-sizing: border-box;
  padding-left: 22px;
}
.link-2col-l a,
.link-3col-l a,
.link-4col-l a,
.link-5col-l a,
.link-6col-l a, .link-2col-s a,
.link-3col-s a,
.link-4col-s a,
.link-5col-s a,
.link-6col-s a {
  display: block;
}

/**
 * %extend-link-col-l
**/
.link-2col-l,
.link-3col-l,
.link-4col-l,
.link-5col-l,
.link-6col-l, .link-2col-s,
.link-3col-s,
.link-4col-s,
.link-5col-s,
.link-6col-s {
  margin-top: -7px;
}
.link-2col-l > li,
.link-3col-l > li,
.link-4col-l > li,
.link-5col-l > li,
.link-6col-l > li, .link-2col-s > li,
.link-3col-s > li,
.link-4col-s > li,
.link-5col-s > li,
.link-6col-s > li {
  margin-top: 7px;
}

/**
 * %extend-link-col-s
**/
/**
 * .link-[n]col-[size]
**/
.link-2col-l > li,
.link-2col-s > li {
  width: 50%;
}

.link-3col-l > li,
.link-3col-s > li {
  width: 33.333333%;
}

.link-4col-l > li,
.link-4col-s > li {
  width: 25%;
}

.link-5col-l > li,
.link-5col-s > li {
  width: 20%;
}

.link-6col-l > li,
.link-6col-s > li {
  width: 16.666666%;
}

@media screen and (max-width: 767px) {
  .link-2col-l > li,
  .link-3col-l > li,
  .link-4col-l > li,
  .link-5col-l > li,
  .link-6col-l > li,
  .link-2col-s > li,
  .link-3col-s > li,
  .link-4col-s > li,
  .link-5col-s > li,
  .link-6col-s > li {
    width: 50%;
  }
}
@media screen and (max-width: 579px) {
  .link-2col-l,
  .link-3col-l,
  .link-4col-l,
  .link-5col-l,
  .link-6col-l,
  .link-2col-s,
  .link-3col-s,
  .link-4col-s,
  .link-5col-s,
  .link-6col-s {
    margin-top: 0;
    margin-left: 0;
  }
  .link-2col-l > li,
  .link-3col-l > li,
  .link-4col-l > li,
  .link-5col-l > li,
  .link-6col-l > li,
  .link-2col-s > li,
  .link-3col-s > li,
  .link-4col-s > li,
  .link-5col-s > li,
  .link-6col-s > li {
    float: none;
    width: 100%;
    height: auto !important;
    padding-left: 0;
  }
  .link-2col-l > li:first-child,
  .link-3col-l > li:first-child,
  .link-4col-l > li:first-child,
  .link-5col-l > li:first-child,
  .link-6col-l > li:first-child,
  .link-2col-s > li:first-child,
  .link-3col-s > li:first-child,
  .link-4col-s > li:first-child,
  .link-5col-s > li:first-child,
  .link-6col-s > li:first-child {
    margin-top: 0;
  }
}
/** ========================================================
 * @class Common: Module: Layout
 * @incliude module/_layout.scss
 * @prefix lyt-***
** ====================================================== */
/**
 * .lyt-section
**/
.lyt-section {
  /**
   * This is No meaning
   * e.g. Define the [id] attribute from Anchor link.
   * e.g. Define inside element margins of Unique wrapper.
  **/
  margin: 0;
}
.lyt-section + .lyt-section {
  margin: 62px 0 0;
}

/**
 * %extend-lyt-media
**/
.lyt-img, .lyt-img-l, .lyt-img-r, .lyt-img-showcase .lyt-img-inner, .lyt-map-01, .lyt-movie-16x9 {
  vertical-align: top;
  margin: 0 0 32px;
}
.lyt-img [class^="caption"], .lyt-img-l [class^="caption"], .lyt-img-r [class^="caption"], .lyt-img-showcase .lyt-img-inner [class^="caption"], .lyt-map-01 [class^="caption"], .lyt-movie-16x9 [class^="caption"] {
  text-align: center;
  margin: 7px 0 0;
}
.lyt-img [class^="caption"], .lyt-img-l [class^="caption"], .lyt-img-r [class^="caption"], .lyt-img-showcase .lyt-img-inner [class^="caption"], .lyt-map-01 [class^="caption"], .lyt-movie-16x9 [class^="caption"], .lyt-img + [class^="caption"], .lyt-img-l + [class^="caption"], .lyt-img-r + [class^="caption"], .lyt-img-showcase .lyt-img-inner + [class^="caption"], .lyt-map-01 + [class^="caption"], .lyt-movie-16x9 + [class^="caption"] {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
}
.lyt-img [class^="caption-m"], .lyt-img-l [class^="caption-m"], .lyt-img-r [class^="caption-m"], .lyt-img-showcase .lyt-img-inner [class^="caption-m"], .lyt-map-01 [class^="caption-m"], .lyt-movie-16x9 [class^="caption-m"], .lyt-img + [class^="caption-m"], .lyt-img-l + [class^="caption-m"], .lyt-img-r + [class^="caption-m"], .lyt-img-showcase .lyt-img-inner + [class^="caption-m"], .lyt-map-01 + [class^="caption-m"], .lyt-movie-16x9 + [class^="caption-m"] {
  font-size: 14px;
  font-size: 1.4rem;
}
.lyt-img .caption-l, .lyt-img-l .caption-l, .lyt-img-r .caption-l, .lyt-img-showcase .lyt-img-inner .caption-l, .lyt-map-01 .caption-l, .lyt-movie-16x9 .caption-l {
  text-align: left;
}
.lyt-img .caption-r, .lyt-img-l .caption-r, .lyt-img-r .caption-r, .lyt-img-showcase .lyt-img-inner .caption-r, .lyt-map-01 .caption-r, .lyt-movie-16x9 .caption-r {
  text-align: right;
}
.lyt-img + .link-s, .lyt-img-l + .link-s, .lyt-img-r + .link-s, .lyt-img-showcase .lyt-img-inner + .link-s, .lyt-map-01 + .link-s, .lyt-movie-16x9 + .link-s, .lyt-img + .link-l, .lyt-img-l + .link-l, .lyt-img-r + .link-l, .lyt-img-showcase .lyt-img-inner + .link-l, .lyt-map-01 + .link-l, .lyt-movie-16x9 + .link-l, .lyt-img + [class^="caption"], .lyt-img-l + [class^="caption"], .lyt-img-r + [class^="caption"], .lyt-img-showcase .lyt-img-inner + [class^="caption"], .lyt-map-01 + [class^="caption"], .lyt-movie-16x9 + [class^="caption"] {
  margin-top: -22px;
}

/**
 * .lyt-img
**/
.lyt-img {
  text-align: center;
}

.lyt-img-l {
  text-align: left;
}

.lyt-img-r {
  text-align: right;
}

/**
 * .lyt-img-showcase
**/
.lyt-img-showcase {
  margin: 0 0 62px;
}
.lyt-img-showcase .lyt-img-inner {
  text-align: center;
  background: #ebebeb;
  display: table;
  width: 100%;
  table-layout: fixed;
}
.lyt-img-showcase .lyt-img-inner a {
  vertical-align: middle;
  display: table-cell;
  padding: 10px;
}
.lyt-img-showcase .lyt-img-inner + .link-s {
  margin-top: -22px;
}
@media screen and (max-width: 579px) {
  .lyt-img-showcase {
    height: auto !important;
  }
}

/**
 * .lyt-map-01
**/
.lyt-map-01 iframe {
  width: 100%;
  max-width: 1010px;
  max-height: 400px;
  border: 0;
}

/**
 * .lyt-movie-16x9
**/
.lyt-movie-16x9 {
  position: relative;
}
.lyt-movie-16x9 iframe,
.lyt-movie-16x9 .iframe-cover {
  position: relative;
  z-index: 1;
  display: none;
  visibility: hidden;
  width: 100%;
  border: 0;
}
:root .lyt-movie-16x9 iframe, :root
.lyt-movie-16x9 .iframe-cover {
  display: block;
  visibility: visible;
}
.figure .lyt-movie-16x9 iframe, .figure
.lyt-movie-16x9 .iframe-cover {
  width: auto;
  min-width: auto;
}
.lyt-movie-16x9 .iframe-cover {
  background: transparent;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  display: block;
  top: 0;
  left: 0;
}
.figure .lyt-movie-16x9 .iframe-cover {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .lyt-movie-16x9 {
    padding: 0 0 56.25%;
  }
  .lyt-movie-16x9 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .figure .lyt-movie-16x9 iframe {
    width: 100%;
    height: 100%;
  }
  :root .lyt-movie-16x9 .iframe-cover {
    display: none;
  }
}

/**
 * .lyt-movie
**/
.lyt-movie-2col-l,
.lyt-movie-2col-r {
  display: table;
  width: 100%;
  margin: 0 0 48px;
  direction: rtl;
}
.lyt-movie-2col-l .col,
.lyt-movie-2col-r .col {
  vertical-align: top;
  display: table-cell;
  box-sizing: border-box;
  width: 52%;
  max-width: 100%;
  direction: ltr;
}
.lyt-movie-2col-l .col + .col,
.lyt-movie-2col-r .col + .col {
  width: 48%;
  padding: 0 22px 0 0;
}
.lyt-movie-2col-l .hdg,
.lyt-movie-2col-r .hdg {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #0e0d6a;
  margin: 0 0 12px;
}
.lyt-movie-2col-l .lyt-movie-16x9,
.lyt-movie-2col-r .lyt-movie-16x9 {
  margin: 0;
  padding: 56.25% 0 0 0;
}
.lyt-movie-2col-l .lyt-movie-16x9 iframe,
.lyt-movie-2col-r .lyt-movie-16x9 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .lyt-movie-2col-l,
  .lyt-movie-2col-r {
    display: block;
    direction: ltr;
  }
  .lyt-movie-2col-l .col,
  .lyt-movie-2col-l .col:first-child,
  .lyt-movie-2col-r .col,
  .lyt-movie-2col-r .col:first-child {
    display: block;
    width: 100%;
  }
  .lyt-movie-2col-l .col + .col,
  .lyt-movie-2col-l .col:first-child + .col,
  .lyt-movie-2col-r .col + .col,
  .lyt-movie-2col-r .col:first-child + .col {
    width: 100%;
    padding: 0;
  }
}

.lyt-movie-2col-r {
  direction: ltr;
}
.lyt-movie-2col-r .col + .col {
  padding: 0 0 0 22px;
}

.lyt-movie-w640 {
  max-width: 640px;
  margin: 0 auto;
}

/**
 * .lyt-separator
**/
.lyt-separator-01 > .segment, .lyt-separator-02 > .segment {
  padding: 22px 0 0;
  border-top: 1px solid #ebebeb;
}

.lyt-separator-02 {
  margin: 48px 0 0;
}
.lyt-separator-02 > .segment {
  padding: 48px 0 28px;
}
@media screen and (max-width: 767px) {
  .lyt-separator-02 {
    margin: 28px 0 0;
  }
}

/**
 * .lyt-flt-[n]
**/
.lyt-flt-l-01 .figure,
.lyt-flt-r-01 .figure {
  float: left;
  padding: 0 22px 0 0;
}
@media screen and (max-width: 767px) {
  .lyt-flt-l-01 .figure,
  .lyt-flt-r-01 .figure {
    text-align: center;
    float: none;
    padding: 0;
  }
}
.lyt-flt-l-01 .lyt-img,
.lyt-flt-r-01 .lyt-img {
  padding: 3px 0 0;
}
.lyt-flt-l-01 .content > [class^="hdg-"]:first-child,
.lyt-flt-r-01 .content > [class^="hdg-"]:first-child {
  margin-top: 0;
}

.lyt-flt-r-01 .figure {
  float: right;
  padding: 0 0 0 22px;
}
@media screen and (max-width: 767px) {
  .lyt-flt-r-01 .figure {
    float: none;
    padding: 0;
  }
}

.lyt-flt-l-02,
.lyt-flt-r-02,
.lyt-flt-l-03,
.lyt-flt-r-03 {
  display: table;
  width: 100%;
}
.lyt-flt-l-02 .content,
.lyt-flt-l-02 .figure,
.lyt-flt-r-02 .content,
.lyt-flt-r-02 .figure,
.lyt-flt-l-03 .content,
.lyt-flt-l-03 .figure,
.lyt-flt-r-03 .content,
.lyt-flt-r-03 .figure {
  vertical-align: top;
  display: table-cell;
  direction: ltr;
}
.lyt-flt-l-02 .content,
.lyt-flt-r-02 .content,
.lyt-flt-l-03 .content,
.lyt-flt-r-03 .content {
  width: 100%;
}
.lyt-flt-l-02 .content + .figure,
.lyt-flt-r-02 .content + .figure,
.lyt-flt-l-03 .content + .figure,
.lyt-flt-r-03 .content + .figure {
  padding: 0 0 0 22px;
}
.lyt-flt-l-02 .content > [class^="hdg-"]:first-child,
.lyt-flt-r-02 .content > [class^="hdg-"]:first-child,
.lyt-flt-l-03 .content > [class^="hdg-"]:first-child,
.lyt-flt-r-03 .content > [class^="hdg-"]:first-child {
  margin-top: 0;
}
.lyt-flt-l-02 .figure img,
.lyt-flt-r-02 .figure img,
.lyt-flt-l-03 .figure img,
.lyt-flt-r-03 .figure img {
  max-width: none;
}
@media screen and (max-width: 767px) {
  .lyt-flt-l-02,
  .lyt-flt-r-02,
  .lyt-flt-l-03,
  .lyt-flt-r-03 {
    display: block;
    direction: ltr;
  }
  .lyt-flt-l-02 .content,
  .lyt-flt-l-02 .figure,
  .lyt-flt-r-02 .content,
  .lyt-flt-r-02 .figure,
  .lyt-flt-l-03 .content,
  .lyt-flt-l-03 .figure,
  .lyt-flt-r-03 .content,
  .lyt-flt-r-03 .figure {
    display: block;
    padding: 0;
  }
  .lyt-flt-l-02 .content + .figure,
  .lyt-flt-r-02 .content + .figure,
  .lyt-flt-l-03 .content + .figure,
  .lyt-flt-r-03 .content + .figure {
    padding: 0;
  }
  .lyt-flt-l-02 .figure,
  .lyt-flt-r-02 .figure,
  .lyt-flt-l-03 .figure,
  .lyt-flt-r-03 .figure {
    text-align: center;
  }
  .lyt-flt-l-02 .figure img,
  .lyt-flt-r-02 .figure img,
  .lyt-flt-l-03 .figure img,
  .lyt-flt-r-03 .figure img {
    max-width: 100%;
  }
}

.lyt-flt-l-02,
.lyt-flt-l-03 {
  direction: rtl;
}
.lyt-flt-l-02 .content + .figure,
.lyt-flt-l-03 .content + .figure {
  padding: 0 22px 0 0;
}
@media screen and (max-width: 767px) {
  .lyt-flt-l-02,
  .lyt-flt-l-03 {
    direction: ltr;
  }
  .lyt-flt-l-02 .content + .figure,
  .lyt-flt-l-03 .content + .figure {
    padding: 0;
  }
  .lyt-flt-l-02 .figure,
  .lyt-flt-l-03 .figure {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .lyt-flt-l-03,
  .lyt-flt-r-03 {
    display: table;
  }
  .lyt-flt-l-03 .content,
  .lyt-flt-r-03 .content {
    display: table-cell;
  }
  .lyt-flt-l-03 .figure,
  .lyt-flt-r-03 .figure {
    display: table-caption;
  }
  .lyt-flt-l-03 .figure .lyt-img,
  .lyt-flt-r-03 .figure .lyt-img {
    margin-bottom: 22px;
  }
}

/**
 * .lyt-[n]col
**/
.lyt-2col .col {
  width: 50%;
}
@media screen and (max-width: 579px) {
  .lyt-2col {
    margin: 0;
  }
  .lyt-2col .col {
    width: 100%;
    height: auto !important;
    padding: 0;
  }
}

.lyt-3col .col {
  width: 33.333333%;
}
.lyt-3col .col2of3 {
  width: 66.666666%;
}

.lyt-4col .col {
  width: 25%;
}

.lyt-5col .col {
  width: 20%;
}

.lyt-6col .col {
  width: 16.666666%;
}

.lyt-2col, .lyt-3col, .lyt-4col, .lyt-5col, .lyt-6col {
  margin: 0 0 0 -22px;
}
.lyt-2col .col, .lyt-3col .col, .lyt-4col .col, .lyt-5col .col, .lyt-6col .col {
  float: left;
  box-sizing: border-box;
  padding: 0 0 0 22px;
}
.lyt-2col .col > :first-child, .lyt-3col .col > :first-child, .lyt-4col .col > :first-child, .lyt-5col .col > :first-child, .lyt-6col .col > :first-child {
  margin-top: 0;
}
.lyt-2col .lyt-img, .lyt-3col .lyt-img, .lyt-4col .lyt-img, .lyt-5col .lyt-img, .lyt-6col .lyt-img {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .lyt-3col, .lyt-4col, .lyt-5col, .lyt-6col {
    margin: 0;
  }
  .lyt-3col .col, .lyt-4col .col, .lyt-5col .col, .lyt-6col .col {
    width: 100%;
    height: auto !important;
    padding: 0;
  }
}

/**
 * .lyt-grid
**/
.lyt-grid {
  margin: 0 -11px;
}
.lyt-grid .col {
  float: left;
  box-sizing: border-box;
  padding: 0 11px;
}

/**
 * .lyt-flex
**/
.lyt-flex {
  margin: 0 0 0 -22px;
}
.lyt-flex > .row {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.lyt-flex > .row > .col {
  vertical-align: middle;
  display: table-cell;
  padding: 0 0 0 22px;
}
@media screen and (max-width: 579px) {
  .lyt-flex {
    margin: 0;
  }
  .lyt-flex > .row {
    display: block;
  }
  .lyt-flex > .row > .col {
    display: block;
    width: 100%;
    height: auto !important;
    padding: 0;
  }
}

/** ========================================================
 * @class Common: Module: Panel
 * @incliude module/_panel.scss
 * @prefix pnl-***
** ====================================================== */
/**
 * %extend-pnl-index
**/
.pnl-index-01-2col,
.pnl-index-01-3col,
.pnl-index-01-4col, .pnl-index-02 {
  margin: 0 0 0 -22px;
}
.pnl-index-01-2col > .col,
.pnl-index-01-3col > .col,
.pnl-index-01-4col > .col, .pnl-index-02 > .col {
  float: left;
  box-sizing: border-box;
  margin-bottom: 36px;
  padding-left: 22px;
}
.pnl-index-01-2col > .col > a,
.pnl-index-01-3col > .col > a,
.pnl-index-01-4col > .col > a, .pnl-index-02 > .col > a {
  text-decoration: none;
  color: #ffffff;
  background: #777777;
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0 0 12px;
}
.pnl-index-01-2col > .col > a:before,
.pnl-index-01-3col > .col > a:before,
.pnl-index-01-4col > .col > a:before, .pnl-index-02 > .col > a:before {
  background: #0e0d6a;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #0e0d6a 50%, #3e3d88 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(50%, #0e0d6a), color-stop(100%, #3e3d88));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #0e0d6a 50%, #3e3d88 100%);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #0e0d6a 50%, #3e3d88 100%);
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #0e0d6a 50%, #3e3d88 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #0e0d6a 50%, #3e3d88 100%);
  position: absolute;
  z-index: 2;
  top: 100%;
  left: 0;
  display: block;
  width: 100%;
  height: 200%;
  content: "";
  transition: .3s;
  opacity: 0;
}
.pnl-index-01-2col > .col > a:hover:before,
.pnl-index-01-3col > .col > a:hover:before,
.pnl-index-01-4col > .col > a:hover:before, .pnl-index-02 > .col > a:hover:before {
  top: -100%;
  opacity: 1;
}
.pnl-index-01-2col > .col > a:hover > .segment .cell,
.pnl-index-01-3col > .col > a:hover > .segment .cell,
.pnl-index-01-4col > .col > a:hover > .segment .cell, .pnl-index-02 > .col > a:hover > .segment .cell {
  vertical-align: middle;
}
.pnl-index-01-2col > .col > a:hover > .segment .txt,
.pnl-index-01-3col > .col > a:hover > .segment .txt,
.pnl-index-01-4col > .col > a:hover > .segment .txt, .pnl-index-02 > .col > a:hover > .segment .txt {
  display: block;
}
.pnl-index-01-2col > .col > a > .segment,
.pnl-index-01-3col > .col > a > .segment,
.pnl-index-01-4col > .col > a > .segment, .pnl-index-02 > .col > a > .segment {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.pnl-index-01-2col > .col > a > .segment .row,
.pnl-index-01-3col > .col > a > .segment .row,
.pnl-index-01-4col > .col > a > .segment .row, .pnl-index-02 > .col > a > .segment .row {
  display: table;
  width: 100%;
  height: 100%;
}
.pnl-index-01-2col > .col > a > .segment .cell,
.pnl-index-01-3col > .col > a > .segment .cell,
.pnl-index-01-4col > .col > a > .segment .cell, .pnl-index-02 > .col > a > .segment .cell {
  display: table-cell;
  padding: 0 10px;
}
.pnl-index-01-2col > .col > a > .segment .ico,
.pnl-index-01-3col > .col > a > .segment .ico,
.pnl-index-01-4col > .col > a > .segment .ico, .pnl-index-02 > .col > a > .segment .ico {
  text-align: center;
  display: block;
  box-sizing: border-box;
  width: 100%;
}
.pnl-index-01-2col > .col > a > .segment .hdg,
.pnl-index-01-3col > .col > a > .segment .hdg,
.pnl-index-01-4col > .col > a > .segment .hdg, .pnl-index-02 > .col > a > .segment .hdg {
  font-weight: bold;
  text-align: center;
  display: block;
}
.pnl-index-01-2col > .col > a > .segment .txt,
.pnl-index-01-3col > .col > a > .segment .txt,
.pnl-index-01-4col > .col > a > .segment .txt, .pnl-index-02 > .col > a > .segment .txt {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  display: none;
}
.pnl-index-01-2col > .col > a > .img,
.pnl-index-01-3col > .col > a > .img,
.pnl-index-01-4col > .col > a > .img, .pnl-index-02 > .col > a > .img {
  display: block;
}
.pnl-index-01-2col > .col > a > .img img,
.pnl-index-01-3col > .col > a > .img img,
.pnl-index-01-4col > .col > a > .img img, .pnl-index-02 > .col > a > .img img {
  width: 100%;
  height: auto;
}

/**
 * .pnl-index-01
**/
.pnl-index-01-2col,
.pnl-index-01-3col,
.pnl-index-01-4col {
  margin-top: 72px;
}
.pnl-index-01-2col > .col > a:hover > .segment,
.pnl-index-01-3col > .col > a:hover > .segment,
.pnl-index-01-4col > .col > a:hover > .segment {
  background: #0e0d6a;
}
:root .pnl-index-01-2col > .col > a:hover > .segment, :root
.pnl-index-01-3col > .col > a:hover > .segment, :root
.pnl-index-01-4col > .col > a:hover > .segment {
  background: transparent;
}
.pnl-index-01-2col > .col > a:hover > .segment .hdg,
.pnl-index-01-3col > .col > a:hover > .segment .hdg,
.pnl-index-01-4col > .col > a:hover > .segment .hdg {
  margin: 8px 0;
}
.pnl-index-01-2col > .col > a > .segment .cell,
.pnl-index-01-3col > .col > a > .segment .cell,
.pnl-index-01-4col > .col > a > .segment .cell {
  vertical-align: bottom;
}
.pnl-index-01-2col > .col > a > .segment .hdg,
.pnl-index-01-3col > .col > a > .segment .hdg,
.pnl-index-01-4col > .col > a > .segment .hdg {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.3;
  margin: 8px 0 20px;
}
.pnl-index-01-2col > .col > a > .img,
.pnl-index-01-3col > .col > a > .img,
.pnl-index-01-4col > .col > a > .img {
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: 100%;
}
.pnl-index-01-2col > .col > a > .img img,
.pnl-index-01-3col > .col > a > .img img,
.pnl-index-01-4col > .col > a > .img img {
  width: 100%;
  max-width: none;
  height: auto;
}

.pnl-index-01-2col > .col {
  width: 50%;
}
.pnl-index-01-2col > .col > a {
  margin: 0 0 12px;
}
.pnl-index-01-2col > .col > a:hover > .segment {
  background: #0e0d6a;
}
:root .pnl-index-01-2col > .col > a:hover > .segment {
  background: transparent;
}
.pnl-index-01-2col > .col > a:hover > .segment .ico {
  margin: -5px 0 0;
}
.pnl-index-01-2col > .col > a:hover > .segment .hdg {
  margin: 0 0 15px;
}
.pnl-index-01-2col > .col > a > .segment .ico {
  margin: 3px 0;
}
.pnl-index-01-2col > .col > a > .segment .cell {
  vertical-align: middle;
}
.pnl-index-01-2col > .col > a > .segment .hdg {
  margin: 0;
}
.pnl-index-01-2col > .col > a > .segment .txt {
  max-width: 300px;
  margin: 0 auto;
}
.pnl-index-01-2col > .col > a > .img {
  position: relative;
  height: 0;
  padding-top: 44.534412%;
}
.pnl-index-01-2col > .col > a > .img:before {
  background: url(/files/user/common/img/bg_cover_07.png) center bottom repeat-x;
  background-size: contain;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
}
.pnl-index-01-2col > .col > a > .img img {
  position: absolute;
  top: -33.333333%;
  left: 0;
  width: 100%;
}
@media screen and (max-width: 959px) {
  .pnl-index-01-2col > .col > a > .img {
    height: auto;
    padding: 0;
  }
  .pnl-index-01-2col > .col > a > .img img {
    position: relative;
    top: 0;
  }
}

.pnl-index-01-3col > .col {
  width: 33.333333%;
}

.pnl-index-01-4col > .col {
  width: 25%;
}
.pnl-index-01-4col > .col > a:hover > .segment .ico {
  opacity: 1;
}
.pnl-index-01-4col > .col > a > .img {
  height: 100%;
  max-height: 100%;
}
.pnl-index-01-4col > .col > a > .img img {
  max-width: 100%;
}
.pnl-index-01-4col > .col > a > .img:before {
  background: url(/files/user/common/img/bg_cover_07.png) center bottom repeat-x;
  background-size: contain;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
}
.pnl-index-01-4col > .col > a > .segment .row {
  table-layout: fixed;
}
.pnl-index-01-4col > .col > a > .segment .ico {
  transition: .2s;
  opacity: 0;
}
.pnl-index-01-4col > .col > a > .segment .hdg {
  font-size: 18px;
  font-size: 1.8rem;
}
.pnl-index-01-4col > .col > a > .segment .txt {
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 1179px) {
  .pnl-index-01-2col > .col > a > .segment .ico,
  .pnl-index-01-3col > .col > a > .segment .ico,
  .pnl-index-01-4col > .col > a > .segment .ico {
    padding: 0 50px;
  }
}
@media screen and (max-width: 959px) {
  .pnl-index-01-2col > .col,
  .pnl-index-01-3col > .col,
  .pnl-index-01-4col > .col {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .pnl-index-01-2col > .col,
  .pnl-index-01-3col > .col,
  .pnl-index-01-4col > .col {
    margin-bottom: 22px;
  }
}
@media screen and (max-width: 579px) {
  .pnl-index-01-2col > .col,
  .pnl-index-01-3col > .col,
  .pnl-index-01-4col > .col {
    width: 100%;
    height: auto !important;
  }
  .pnl-index-01-2col > .col > a > .segment .hdg,
  .pnl-index-01-3col > .col > a > .segment .hdg,
  .pnl-index-01-4col > .col > a > .segment .hdg {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/**
 * .pnl-index-02
**/
.pnl-index-02 > .col {
  width: 33.333333%;
  margin: 0 0 10px;
}
.pnl-index-02 > .col > a {
  text-decoration: none;
  color: #0d40b5;
  background: #f5f5f5;
  width: 100%;
  min-height: 242px;
  border-top: 3px solid #0e0d6a;
}
.pnl-index-02 > .col > a:hover {
  color: #ffffff;
}
.pnl-index-02 > .col > a:hover > .segment .cell {
  vertical-align: middle;
}
.pnl-index-02 > .col > a:hover > .segment .ico {
  display: none;
  padding: 0;
}
.pnl-index-02 > .col > a:hover > .segment .ico.is-active {
  display: block;
}
.pnl-index-02 > .col > a > .segment .cell {
  vertical-align: top;
}
.pnl-index-02 > .col > a > .segment .ico {
  text-align: center;
  display: block;
  width: 100%;
  padding: 35px 0 0;
}
.pnl-index-02 > .col > a > .segment .ico.is-active {
  display: none;
}
.pnl-index-02 > .col > a > .segment .hdg {
  font-size: 20px;
  font-size: 2rem;
  padding: 4px 0 8px;
}
@media screen and (max-width: 959px) {
  .pnl-index-02 > .col > a > .segment .hdg {
    font-size: 19px;
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 899px) {
  .pnl-index-02 > .col {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .pnl-index-02 > .col {
    margin-bottom: 22px;
  }
  .pnl-index-02 > .col > a > .segment .hdg {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .pnl-index-02 > .col > a > .segment .hdg br {
    display: none;
  }
}
@media screen and (max-width: 579px) {
  .pnl-index-02 > .col {
    width: 100%;
    height: auto !important;
  }
}

/**
 * .pnl-case-01
**/
.pnl-case-01 {
  text-align: center;
  color: #049ba8;
  margin-bottom: 32px;
}
.pnl-case-01 .lyt-img + [class^="caption"] {
  font-size: 16px;
  font-size: 1.6rem;
}

/** ========================================================
 * @class Common: Module: Box
 * @incliude module/_box.scss
 * @prefix box-***
** ====================================================== */
/**
 * %extend-box
**/
.box-01, .box-02 {
  overflow: hidden;
  margin: 0 0 32px;
  padding: 10px 24px 0;
}
.box-01 .box-01, .box-02 .box-01,
.box-01 .box-02,
.box-02 .box-02 {
  margin-top: 22px;
  margin-bottom: 22px;
}
@media screen and (max-width: 767px) {
  .box-01, .box-02 {
    padding: 10px 15px 0;
  }
}

/**
 * .box-01
**/
.box-01 {
  background: #ffffff;
  position: relative;
  box-sizing: border-box;
  border: 1px solid #ebebeb;
}
.box-01 > .segment {
  display: table;
  width: 100%;
}
.box-01 > .segment > .content, .box-01 > .segment > .figure {
  vertical-align: top;
  display: table-cell;
}
.box-01 > .segment > .content + .figure {
  padding-left: 20px;
}
.box-01 > .segment > .figure img {
  max-width: none;
}
.box-01:before {
  background: #0e0d6a;
  position: absolute;
  z-index: 1;
  top: -1px;
  left: 0;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 4px;
  content: "";
}
.box-01 > .hdg {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #0e0d6a;
  margin: 12px 0;
}
.box-01 .hdg-s {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #0e0d6a;
  margin: 0 0 10px;
}
@media screen and (max-width: 767px) {
  .box-01 > .segment {
    display: table;
    table-layout: fixed;
  }
  .box-01 > .segment > .content {
    display: table-cell;
  }
  .box-01 > .segment > .figure {
    display: table-header-group;
  }
  .box-01 > .segment > .figure img {
    max-width: 100%;
  }
  .box-01 > .segment > .content + .figure {
    padding-right: 0;
  }
}

/**
 * .box-02
**/
.box-02 {
  background: #f5f5f5;
  border-top: 4px solid #d4d4d4;
}
.box-02 > .hdg {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 12px 0;
}

/**
 * .box-error
**/
.box-error {
  background: #f7e5e7;
  margin: 32px 0;
  padding: 16px 16px 0;
  border: 1px solid #db5c5c;
}
.box-error > .hdg {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #db5c5c;
  position: relative;
  margin: 0 0 10px;
  padding: 0 0 0 40px;
}
.box-error > .hdg:before {
  background: url(/files/user/common/img/ico_form_error.png);
  position: absolute;
  left: 0;
  display: block;
  width: 28px;
  height: 25px;
  content: "";
}
@media screen and (max-width: 767px) {
  .box-error > .hdg {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/** ========================================================
 * @class Common: Module: Table
 * @incliude module/_table.scss
 * @prefix tbl-***
** ====================================================== */
/**
 * .tbl-scl
**/
.tbl-scl {
  position: relative;
  margin: 0 0 22px;
}
@media screen and (max-width: 767px) {
  .tbl-scl {
    overflow-x: auto;
    width: 100%;
  }
  .tbl-scl table {
    width: 720px;
  }
}

/**
 * .tbl-01
 * .tbl-01-rwd
**/
.tbl-01 caption,
.tbl-01-rwd caption {
  margin: 0 0 5px;
}
.tbl-01 caption .hdg,
.tbl-01-rwd caption .hdg {
  text-align: left;
  float: left;
  font-weight: bold;
}
.tbl-01 caption .sup,
.tbl-01-rwd caption .sup {
  vertical-align: bottom;
  font-size: 14px;
  font-size: 1.4rem;
  float: right;
}
.tbl-01 th,
.tbl-01 td,
.tbl-01-rwd th,
.tbl-01-rwd td {
  vertical-align: middle;
  padding: 10px 15px;
  border-top: 1px solid #d0d0d0;
}
.tbl-01 th,
.tbl-01-rwd th {
  font-weight: bold;
  background: #ebebeb;
}
.tbl-01 td,
.tbl-01-rwd td {
  background: #ffffff;
}
.tbl-01 td > *:first-child,
.tbl-01-rwd td > *:first-child {
  margin-top: 0;
}
.tbl-01 td > *:last-child,
.tbl-01-rwd td > *:last-child {
  margin-bottom: 0;
}
.tbl-01 thead th,
.tbl-01 thead td,
.tbl-01-rwd thead th,
.tbl-01-rwd thead td {
  color: #ffffff;
  background: #777777;
  padding-top: 6px;
  padding-bottom: 6px;
  border-top: 0;
}
.tbl-01 tbody,
.tbl-01-rwd tbody {
  font-size: 14px;
  font-size: 1.4rem;
  border-top: 2px solid #777777;
  border-bottom: 2px solid #777777;
}
.tbl-01 tbody .thsup,
.tbl-01-rwd tbody .thsup {
  font-weight: normal;
  background: #f5f5f5;
}

/**
 * .tbl-01-rwd
**/
@media screen and (max-width: 767px) {
  .tbl-01-rwd {
    display: block;
    overflow: hidden;
  }
  .tbl-01-rwd caption,
  .tbl-01-rwd tr,
  .tbl-01-rwd thead,
  .tbl-01-rwd tbody,
  .tbl-01-rwd tfoot,
  .tbl-01-rwd th,
  .tbl-01-rwd td {
    display: block;
    float: left;
    clear: both;
    box-sizing: border-box;
    width: 100%;
  }
  .tbl-01-rwd th,
  .tbl-01-rwd td {
    word-break: break-all;
    border: 0;
  }
  .tbl-01-rwd th {
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .tbl-01-rwd td {
    padding: 10px 15px;
  }
}

/**
 * .tbl-sup
**/
.tbl-sup {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right;
  margin: 0 0 5px;
}

/** ========================================================
 * @class Common: Module: Button
 * @incliude module/_btn.scss
 * @prefix btn-***
** ====================================================== */
/**
 * %extend-btn
**/
.btn-01,
.btn-01-s, .btn-02,
.btn-02-s, .btn-03,
.btn-03-s, .btn-05,
.btn-05-s, .btn-04 {
  position: relative;
  display: inline-block;
}
.btn-01 a,
.btn-01-s a, .btn-02 a,
.btn-02-s a, .btn-03 a,
.btn-03-s a, .btn-05 a,
.btn-05-s a, .btn-04 a,
.btn-01 button,
.btn-01-s button,
.btn-02 button,
.btn-02-s button,
.btn-03 button,
.btn-03-s button,
.btn-05 button,
.btn-05-s button,
.btn-04 button,
.btn-01 span.btn,
.btn-01-s span.btn,
.btn-02 span.btn,
.btn-02-s span.btn,
.btn-03 span.btn,
.btn-03-s span.btn,
.btn-05 span.btn,
.btn-05-s span.btn,
.btn-04 span.btn,
.btn-01 input[type="button"],
.btn-01-s input[type="button"],
.btn-02 input[type="button"],
.btn-02-s input[type="button"],
.btn-03 input[type="button"],
.btn-03-s input[type="button"],
.btn-05 input[type="button"],
.btn-05-s input[type="button"],
.btn-04 input[type="button"],
.btn-01 input[type="submit"],
.btn-01-s input[type="submit"],
.btn-02 input[type="submit"],
.btn-02-s input[type="submit"],
.btn-03 input[type="submit"],
.btn-03-s input[type="submit"],
.btn-05 input[type="submit"],
.btn-05-s input[type="submit"],
.btn-04 input[type="submit"],
.btn-01 input[type="reset"],
.btn-01-s input[type="reset"],
.btn-02 input[type="reset"],
.btn-02-s input[type="reset"],
.btn-03 input[type="reset"],
.btn-03-s input[type="reset"],
.btn-05 input[type="reset"],
.btn-05-s input[type="reset"],
.btn-04 input[type="reset"] {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  text-decoration: none;
  vertical-align: middle;
  color: #ffffff;
  display: inline-block;
  box-sizing: border-box;
  padding: 9px 32px 9px 45px;
  transition: .2s;
  border: 0;
  border-radius: 26px;
}
.btn-01:before,
.btn-01-s:before, .btn-02:before,
.btn-02-s:before, .btn-03:before,
.btn-03-s:before, .btn-05:before,
.btn-05-s:before, .btn-04:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 32px;
  margin: -4px 0 0;
}
@media screen and (max-width: 767px) {
  .btn-01 a,
  .btn-01-s a, .btn-02 a,
  .btn-02-s a, .btn-03 a,
  .btn-03-s a, .btn-05 a,
  .btn-05-s a, .btn-04 a,
  .btn-01 button,
  .btn-01-s button,
  .btn-02 button,
  .btn-02-s button,
  .btn-03 button,
  .btn-03-s button,
  .btn-05 button,
  .btn-05-s button,
  .btn-04 button,
  .btn-01 span.btn,
  .btn-01-s span.btn,
  .btn-02 span.btn,
  .btn-02-s span.btn,
  .btn-03 span.btn,
  .btn-03-s span.btn,
  .btn-05 span.btn,
  .btn-05-s span.btn,
  .btn-04 span.btn,
  .btn-01 input[type="button"],
  .btn-01-s input[type="button"],
  .btn-02 input[type="button"],
  .btn-02-s input[type="button"],
  .btn-03 input[type="button"],
  .btn-03-s input[type="button"],
  .btn-05 input[type="button"],
  .btn-05-s input[type="button"],
  .btn-04 input[type="button"],
  .btn-01 input[type="submit"],
  .btn-01-s input[type="submit"],
  .btn-02 input[type="submit"],
  .btn-02-s input[type="submit"],
  .btn-03 input[type="submit"],
  .btn-03-s input[type="submit"],
  .btn-05 input[type="submit"],
  .btn-05-s input[type="submit"],
  .btn-04 input[type="submit"],
  .btn-01 input[type="reset"],
  .btn-01-s input[type="reset"],
  .btn-02 input[type="reset"],
  .btn-02-s input[type="reset"],
  .btn-03 input[type="reset"],
  .btn-03-s input[type="reset"],
  .btn-05 input[type="reset"],
  .btn-05-s input[type="reset"],
  .btn-04 input[type="reset"] {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 9px 28px 9px 42px;
    border-radius: 23px;
  }
  .btn-01:before,
  .btn-01-s:before, .btn-02:before,
  .btn-02-s:before, .btn-03:before,
  .btn-03-s:before, .btn-05:before,
  .btn-05-s:before, .btn-04:before {
    left: 28px;
  }
}
.btn-01 .compo-ico-added,
.btn-01-s .compo-ico-added, .btn-02 .compo-ico-added,
.btn-02-s .compo-ico-added, .btn-03 .compo-ico-added,
.btn-03-s .compo-ico-added, .btn-05 .compo-ico-added,
.btn-05-s .compo-ico-added, .btn-04 .compo-ico-added {
  display: none;
}

/**
 * .btn-01-[size]
**/
.btn-01 a,
.btn-01 button,
.btn-01 span.btn,
.btn-01 input[type="button"],
.btn-01 input[type="submit"],
.btn-01 input[type="reset"],
.btn-01-s a,
.btn-01-s button,
.btn-01-s span.btn,
.btn-01-s input[type="button"],
.btn-01-s input[type="submit"],
.btn-01-s input[type="reset"] {
  background: #0d40b5;
  border: 2px solid #0d40b5;
}
.btn-01 a:active, .btn-01 a:hover,
.btn-01 button:active,
.btn-01 button:hover,
.btn-01 span.btn:active,
.btn-01 span.btn:hover,
.btn-01 input[type="button"]:active,
.btn-01 input[type="button"]:hover,
.btn-01 input[type="submit"]:active,
.btn-01 input[type="submit"]:hover,
.btn-01 input[type="reset"]:active,
.btn-01 input[type="reset"]:hover,
.btn-01-s a:active,
.btn-01-s a:hover,
.btn-01-s button:active,
.btn-01-s button:hover,
.btn-01-s span.btn:active,
.btn-01-s span.btn:hover,
.btn-01-s input[type="button"]:active,
.btn-01-s input[type="button"]:hover,
.btn-01-s input[type="submit"]:active,
.btn-01-s input[type="submit"]:hover,
.btn-01-s input[type="reset"]:active,
.btn-01-s input[type="reset"]:hover {
  background: #0077d9;
  border: 2px solid #0077d9;
}

/**
 * .btn-02-[size]
**/
.btn-02 a,
.btn-02 button,
.btn-02 span.btn,
.btn-02 input[type="button"],
.btn-02 input[type="submit"],
.btn-02 input[type="reset"],
.btn-02-s a,
.btn-02-s button,
.btn-02-s span.btn,
.btn-02-s input[type="button"],
.btn-02-s input[type="submit"],
.btn-02-s input[type="reset"] {
  background: #daa71c;
  border: 2px solid #daa71c;
}
.btn-02 a:active, .btn-02 a:hover,
.btn-02 button:active,
.btn-02 button:hover,
.btn-02 span.btn:active,
.btn-02 span.btn:hover,
.btn-02 input[type="button"]:active,
.btn-02 input[type="button"]:hover,
.btn-02 input[type="submit"]:active,
.btn-02 input[type="submit"]:hover,
.btn-02 input[type="reset"]:active,
.btn-02 input[type="reset"]:hover,
.btn-02-s a:active,
.btn-02-s a:hover,
.btn-02-s button:active,
.btn-02-s button:hover,
.btn-02-s span.btn:active,
.btn-02-s span.btn:hover,
.btn-02-s input[type="button"]:active,
.btn-02-s input[type="button"]:hover,
.btn-02-s input[type="submit"]:active,
.btn-02-s input[type="submit"]:hover,
.btn-02-s input[type="reset"]:active,
.btn-02-s input[type="reset"]:hover {
  background: #edbb2f;
  border: 2px solid #edbb2f;
}

/**
 * .btn-03-[size]
**/
.btn-03:before,
.btn-03-s:before {
  background-position: 0 -1364px;
  width: 5px;
  height: 8px;
}
.btn-03:active:before, .btn-03:hover:before,
.btn-03-s:active:before,
.btn-03-s:hover:before {
  background-position: 0 -265px;
  width: 5px;
  height: 8px;
}
.btn-03 a,
.btn-03 button,
.btn-03 span.btn,
.btn-03 input[type="button"],
.btn-03 input[type="submit"],
.btn-03 input[type="reset"],
.btn-03-s a,
.btn-03-s button,
.btn-03-s span.btn,
.btn-03-s input[type="button"],
.btn-03-s input[type="submit"],
.btn-03-s input[type="reset"] {
  color: #daa71c;
  background: #ffffff;
  border: 2px solid #daa71c;
}
.btn-03 a:active, .btn-03 a:hover,
.btn-03 button:active,
.btn-03 button:hover,
.btn-03 span.btn:active,
.btn-03 span.btn:hover,
.btn-03 input[type="button"]:active,
.btn-03 input[type="button"]:hover,
.btn-03 input[type="submit"]:active,
.btn-03 input[type="submit"]:hover,
.btn-03 input[type="reset"]:active,
.btn-03 input[type="reset"]:hover,
.btn-03-s a:active,
.btn-03-s a:hover,
.btn-03-s button:active,
.btn-03-s button:hover,
.btn-03-s span.btn:active,
.btn-03-s span.btn:hover,
.btn-03-s input[type="button"]:active,
.btn-03-s input[type="button"]:hover,
.btn-03-s input[type="submit"]:active,
.btn-03-s input[type="submit"]:hover,
.btn-03-s input[type="reset"]:active,
.btn-03-s input[type="reset"]:hover {
  color: #ffffff;
  background: #daa71c;
}

/**
 * .btn-05-[size]
**/
.btn-05:before,
.btn-05-s:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
}
.btn-05:active:before, .btn-05:hover:before,
.btn-05-s:active:before,
.btn-05-s:hover:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
}
.btn-05 a,
.btn-05 button,
.btn-05 span.btn,
.btn-05 input[type="button"],
.btn-05 input[type="submit"],
.btn-05 input[type="reset"],
.btn-05-s a,
.btn-05-s button,
.btn-05-s span.btn,
.btn-05-s input[type="button"],
.btn-05-s input[type="submit"],
.btn-05-s input[type="reset"] {
  color: #0d40b5;
  background: #fff;
  border: 2px solid #fff;
}
.btn-05 a:active, .btn-05 a:hover,
.btn-05 button:active,
.btn-05 button:hover,
.btn-05 span.btn:active,
.btn-05 span.btn:hover,
.btn-05 input[type="button"]:active,
.btn-05 input[type="button"]:hover,
.btn-05 input[type="submit"]:active,
.btn-05 input[type="submit"]:hover,
.btn-05 input[type="reset"]:active,
.btn-05 input[type="reset"]:hover,
.btn-05-s a:active,
.btn-05-s a:hover,
.btn-05-s button:active,
.btn-05-s button:hover,
.btn-05-s span.btn:active,
.btn-05-s span.btn:hover,
.btn-05-s input[type="button"]:active,
.btn-05-s input[type="button"]:hover,
.btn-05-s input[type="submit"]:active,
.btn-05-s input[type="submit"]:hover,
.btn-05-s input[type="reset"]:active,
.btn-05-s input[type="reset"]:hover {
  background: #fff;
  border: 2px solid #fff;
}

/**
 * small
**/
.btn-01-s a,
.btn-01-s button,
.btn-01-s span.btn,
.btn-01-s input[type="button"],
.btn-01-s input[type="submit"],
.btn-01-s input[type="reset"],
.btn-02-s a,
.btn-02-s button,
.btn-02-s span.btn,
.btn-02-s input[type="button"],
.btn-02-s input[type="submit"],
.btn-02-s input[type="reset"],
.btn-03-s a,
.btn-03-s button,
.btn-03-s span.btn,
.btn-03-s input[type="button"],
.btn-03-s input[type="submit"],
.btn-03-s input[type="reset"],
.btn-05-s a,
.btn-05-s button,
.btn-05-s span.btn,
.btn-05-s input[type="button"],
.btn-05-s input[type="submit"],
.btn-05-s input[type="reset"] {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.3;
  padding-top: 14px;
  padding-bottom: 14px;
}
@media screen and (max-width: 767px) {
  .btn-01-s a,
  .btn-01-s button,
  .btn-01-s span.btn,
  .btn-01-s input[type="button"],
  .btn-01-s input[type="submit"],
  .btn-01-s input[type="reset"],
  .btn-02-s a,
  .btn-02-s button,
  .btn-02-s span.btn,
  .btn-02-s input[type="button"],
  .btn-02-s input[type="submit"],
  .btn-02-s input[type="reset"],
  .btn-03-s a,
  .btn-03-s button,
  .btn-03-s span.btn,
  .btn-03-s input[type="button"],
  .btn-03-s input[type="submit"],
  .btn-03-s input[type="reset"],
  .btn-05-s a,
  .btn-05-s button,
  .btn-05-s span.btn,
  .btn-05-s input[type="button"],
  .btn-05-s input[type="submit"],
  .btn-05-s input[type="reset"] {
    font-size: 14px;
    font-size: 1.4rem;
    padding-top: 12px;
    padding-bottom: 12px;
    border-radius: 23px;
  }
}

/**
 * .btn-04
**/
.btn-04:before {
  background-position: 0 -813px;
  width: 5px;
  height: 8px;
}
.btn-04:active:before, .btn-04:hover:before {
  background-position: 0 -257px;
  width: 5px;
  height: 8px;
}
.btn-04 a,
.btn-04 button,
.btn-04 span.btn,
.btn-04 input[type="button"],
.btn-04 input[type="submit"],
.btn-04 input[type="reset"] {
  font-size: 16px;
  font-size: 1.6rem;
  color: #0d40b5;
  background: #ffffff;
  padding-top: 13px;
  padding-bottom: 13px;
  border: 1px solid #0d40b5;
}
.btn-04 a:active, .btn-04 a:hover,
.btn-04 button:active,
.btn-04 button:hover,
.btn-04 span.btn:active,
.btn-04 span.btn:hover,
.btn-04 input[type="button"]:active,
.btn-04 input[type="button"]:hover,
.btn-04 input[type="submit"]:active,
.btn-04 input[type="submit"]:hover,
.btn-04 input[type="reset"]:active,
.btn-04 input[type="reset"]:hover {
  color: #ffffff;
  background: #0d40b5;
}
@media screen and (max-width: 767px) {
  .btn-04 a,
  .btn-04 button,
  .btn-04 span.btn,
  .btn-04 input[type="button"],
  .btn-04 input[type="submit"],
  .btn-04 input[type="reset"] {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

/**
 * .btn-list-01
**/
.btn-list-01 {
  font-size: 0;
  text-align: center;
  position: relative;
  margin: 32px 0;
}
.btn-list-01 li {
  font-size: medium;
  display: inline-block;
  margin: 0 10px;
}
.btn-list-01 li.fixed-left, .btn-list-01 li.fixed-right {
  position: absolute;
  top: 0;
  margin: 0;
}
.btn-list-01 li.fixed-left {
  left: 0;
}
.btn-list-01 li.fixed-right {
  right: 0;
}
@media screen and (max-width: 767px) {
  .btn-list-01 li {
    position: relative;
    display: inline-block;
    margin: 0 10px 24px;
  }
  .btn-list-01 li.fixed-left, .btn-list-01 li.fixed-right {
    position: relative;
    margin: 0 10px 24px;
  }
}

/**
 * .btn-list-3col
**/
.btn-list-3col {
  font-size: 0;
  text-align: center;
  margin: 0 0 0 -22px;
}
.btn-list-3col > .col {
  font-size: medium;
  display: inline-block;
  box-sizing: border-box;
  width: 33.333333%;
  padding: 0 0 0 22px;
}
.btn-list-3col .label {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 5px;
}
@media screen and (max-width: 767px) {
  .btn-list-3col {
    margin: 0;
  }
  .btn-list-3col > .col {
    width: 100%;
    padding: 0;
  }
}

/** ========================================================
 * @class Common: Module: Component
 * @incliude module/_component.scss
 * @prefix compo-***
** ====================================================== */
/**
 * .compo-number
**/
.compo-number {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  text-align: center;
}
.compo-number .num {
  text-decoration: none;
  color: inherit;
}
@media screen and (max-width: 767px) {
  .compo-number {
    font-size: 20px;
    font-size: 2rem;
  }
  .compo-number .num {
    text-decoration: underline;
    color: inherit;
  }
}

/**
 * .compo-ico-added
**/
.compo-ico-added {
  vertical-align: baseline;
  display: inline-block;
  max-width: none;
  margin: 0 0 0 5px;
}

/**
 * .add-blocklink-blank
**/
[data-script-enabled="true"] .add-blocklink-blank.region-foot-info {
  transition: .2s;
}
[data-script-enabled="true"] .add-blocklink-blank.region-foot-info:hover {
  background-color: #0077d9;
  cursor: pointer;
}
[data-script-enabled="true"] .add-blocklink-blank.region-foot-info:hover .label {
  color: #0077d9;
}
[data-script-enabled="true"] .add-blocklink-blank.region-foot-info:hover * {
  text-decoration: none;
  text-shadow: none !important;
}

/**
 * .compo-blocklink-[01, 02]
**/
.compo-blocklink-01,
.compo-blocklink-02 {
  margin: 0 0 32px;
}
.compo-blocklink-01 > a, .compo-blocklink-01 > p,
.compo-blocklink-02 > a,
.compo-blocklink-02 > p {
  position: relative;
  display: block;
}
.compo-blocklink-01 > a:hover *,
.compo-blocklink-02 > a:hover * {
  text-decoration: underline;
}
.compo-blocklink-01 .hdg,
.compo-blocklink-02 .hdg {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.compo-blocklink-01 .hdg .cell,
.compo-blocklink-02 .hdg .cell {
  text-align: center;
  display: table;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 0 10px;
}
.compo-blocklink-01 .hdg .cell span,
.compo-blocklink-02 .hdg .cell span {
  vertical-align: middle;
  display: table-cell;
}
.compo-blocklink-01 .img,
.compo-blocklink-02 .img {
  vertical-align: top;
  display: block;
}
.compo-blocklink-01 .img img,
.compo-blocklink-02 .img img {
  width: 100%;
}

.compo-blocklink-01 > a, .compo-blocklink-01 > p {
  color: #ffffff;
}

/**
 * .compo-blocklink-[03, 04]
**/
.compo-blocklink-03,
.compo-blocklink-04 {
  position: relative;
  margin: 0 0 32px;
}
.compo-blocklink-03 > a:hover *,
.compo-blocklink-04 > a:hover * {
  text-decoration: underline;
}
.compo-blocklink-03 .segment,
.compo-blocklink-04 .segment {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.compo-blocklink-03 .segment .row,
.compo-blocklink-04 .segment .row {
  display: table;
  width: 100%;
  height: 100%;
}
.compo-blocklink-03 .segment .row .cell,
.compo-blocklink-04 .segment .row .cell {
  text-align: left;
  vertical-align: middle;
  display: table-cell;
  padding: 0 50px;
}
.compo-blocklink-03 .hdg,
.compo-blocklink-04 .hdg {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.3;
  display: block;
  max-width: 48%;
  margin: 22px 0;
}
.compo-blocklink-03 .lead,
.compo-blocklink-04 .lead {
  display: block;
  max-width: 48%;
  margin: 22px 0;
}
.compo-blocklink-03 .img,
.compo-blocklink-04 .img {
  vertical-align: top;
  display: block;
}
.compo-blocklink-03 .img img,
.compo-blocklink-04 .img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .compo-blocklink-03,
  .compo-blocklink-04 {
    margin: 0 0 12px;
  }
  .compo-blocklink-03 .segment,
  .compo-blocklink-04 .segment {
    position: relative;
    height: auto;
  }
  .compo-blocklink-03 .segment .row,
  .compo-blocklink-04 .segment .row {
    display: block;
  }
  .compo-blocklink-03 .segment .row .cell,
  .compo-blocklink-04 .segment .row .cell {
    display: block;
    padding: 0;
  }
  .compo-blocklink-03 .hdg,
  .compo-blocklink-04 .hdg {
    font-size: 18px;
    font-size: 1.8rem;
    max-width: none;
    margin: 10px 0;
  }
  .compo-blocklink-03 .lead,
  .compo-blocklink-04 .lead {
    max-width: none;
    margin: 10px 0;
  }
}

.compo-blocklink-03 {
  color: #ffffff;
}
.compo-blocklink-03 > a {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .compo-blocklink-03 {
    color: inherit;
  }
  .compo-blocklink-03 > a {
    color: #0d40b5;
  }
  .compo-blocklink-03 > a:hover {
    color: #0077d9;
  }
}

.compo-blocklink-04 {
  color: #444444;
}

/**
 * .compo-snslist-01
**/
.compo-snslist-01,
.compo-snslist-02,
.compo-snslist-03 {
  text-align: right;
  margin: 0 0 20px;
}
.compo-snslist-01 ul,
.compo-snslist-02 ul,
.compo-snslist-03 ul {
  overflow: hidden;
  margin: 0;
}
.compo-snslist-01 li,
.compo-snslist-02 li,
.compo-snslist-03 li {
  display: inline-block;
  margin: 0 0 0 11px;
}
.compo-snslist-01 a,
.compo-snslist-02 a,
.compo-snslist-03 a {
  display: block;
  transition: .2s;
}
.compo-snslist-01 a:hover,
.compo-snslist-02 a:hover,
.compo-snslist-03 a:hover {
  opacity: .6;
}

.compo-snslist-02 {
  text-align: left;
  margin: 32px 0;
}
.compo-snslist-02 li {
  margin: 0 11px 0 0;
}

.compo-snslist-03 {
  float: right;
  margin: 22px 0;
  line-height: 0;
}
.compo-snslist-03 li {
  vertical-align: top;
}
.compo-snslist-03 li:first-child {
  margin: 0;
}
.compo-snslist-03 li .fb-share-button * {
  vertical-align: top !important;
}
.compo-snslist-03 li * {
  vertical-align: baseline;
}
@media screen and (max-width: 767px) {
  .compo-snslist-03 {
    margin: 0 0 12px;
  }
}

/**
 * .compo-fb-plugin
**/
.compo-fb-plugin {
  overflow: hidden;
  max-width: 100%;
}

/**
 * .compo-pager-01
**/
.compo-pager-01 ul {
  text-align: center;
  overflow: hidden;
  margin: 0 0 32px;
}
.compo-pager-01 li {
  vertical-align: top;
  display: inline-block;
  margin: 0 0 0 6px;
}
.compo-pager-01 li a {
  font-weight: bold;
  line-height: 38px;
  text-decoration: none;
  text-align: center;
  color: #777777;
  background: #ebebeb;
  display: inline-block;
  width: 38px;
  height: 38px;
  transition: .2s;
}
.compo-pager-01 li:hover a, .compo-pager-01 li.is-current a {
  color: #ffffff;
  background: #0e0d6a;
}
.compo-pager-01 li.is-current a {
  cursor: default;
}
.compo-pager-01 li.next span, .compo-pager-01 li.prev span {
  display: inline-block;
  overflow: hidden;
  height: 0;
}
.compo-pager-01 li.next a, .compo-pager-01 li.prev a {
  background: inherit;
  position: relative;
}
.compo-pager-01 li.next a:before, .compo-pager-01 li.prev a:before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -12px 0 0 -6px;
}
.compo-pager-01 li.next a:hover, .compo-pager-01 li.prev a:hover {
  opacity: .5;
}
.compo-pager-01 li.next a:before {
  background-position: 0 -1552px;
  width: 12px;
  height: 24px;
}
.compo-pager-01 li.prev a:before {
  background-position: 0 -1528px;
  width: 12px;
  height: 24px;
}

/**
 * .compo-captcha-01
**/
.compo-captcha-01 {
  text-align: center;
}
.compo-captcha-01 .inner {
  text-align: left;
  position: relative;
  display: inline-block;
  margin: 0 auto;
  border: 2px solid #d0d0d0;
  border-radius: 3px;
}
.compo-captcha-01 .inner:after {
  background: #f0f0f0;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  width: 182px;
  height: 100%;
  content: "";
}
.compo-captcha-01 table {
  position: relative;
  z-index: 2;
  max-width: 484px;
  margin: 0;
}
.compo-captcha-01 table td {
  font-size: 14px;
  vertical-align: middle;
  padding: 16px 16px 16px 204px;
  border-radius: 3px;
}
.compo-captcha-01 table td br {
  display: none;
}
.compo-captcha-01 table td img {
  position: absolute;
  top: 50%;
  left: 16px;
  display: block;
  margin: -30px 0 0;
}
.compo-captcha-01 table td input[type="text"] {
  max-width: 264px;
  margin: 0 0 10px;
}
@media screen and (max-width: 767px) {
  .compo-captcha-01 .inner:after {
    width: 100%;
    height: 92px;
  }
  .compo-captcha-01 table td {
    padding: 16px;
  }
  .compo-captcha-01 table td img {
    position: static;
    margin: 0 auto 32px;
  }
  .compo-captcha-01 table td input[type="text"] {
    max-width: 100%;
  }
}

/**
 * .compo-steplist-01
**/
.compo-steplist-01 ul {
  background: #ebebeb;
  display: table;
  overflow: hidden;
  width: 100%;
  margin: 0 0 32px;
  table-layout: fixed;
}
.compo-steplist-01 li {
  text-align: center;
  vertical-align: middle;
  position: relative;
  display: table-cell;
}
.compo-steplist-01 li > span {
  font-weight: bold;
  line-height: 36px;
  color: #777777;
  width: 100%;
  min-height: 36px;
}
.compo-steplist-01 li > span:before, .compo-steplist-01 li > span:after {
  position: absolute;
  top: 50%;
  display: none;
  box-sizing: border-box;
  width: 28px;
  height: 28px;
  margin: -14px 0 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  border: 1px solid transparent;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
}
:root .compo-steplist-01 li > span:before, :root .compo-steplist-01 li > span:after {
  display: block;
}
.compo-steplist-01 li > span:before {
  left: -14px;
}
.compo-steplist-01 li > span:after {
  right: -14px;
}
.compo-steplist-01 li.is-current {
  background: #666;
}
.compo-steplist-01 li.is-current > span {
  color: #ffffff;
}
:root .compo-steplist-01 li.is-current > span:after {
  background: #666;
}
:root .compo-steplist-01 li.is-current > span:before {
  background: #ebebeb;
}
.compo-steplist-01 li:first-child > span:before {
  display: none;
}
@media screen and (max-width: 767px) {
  .compo-steplist-01 li {
    display: block;
    border-bottom: 1px solid #ffffff;
  }
  .compo-steplist-01 li > span {
    line-height: 28px;
    min-height: 28px;
  }
  :root .compo-steplist-01 li > span:before, :root .compo-steplist-01 li > span:after {
    display: none;
  }
}

/**
 * .compo-faqlist-01
**/
.compo-faqlist-01 > ul {
  border-top: 1px solid #ebebeb;
}
.compo-faqlist-01 > ul > li {
  border-bottom: 1px solid #ebebeb;
}
[data-script-enabled="true"] .compo-faqlist-01 > ul > li.is-active > .content {
  display: block;
}
.compo-faqlist-01 > ul > li.is-active > .hdg:after {
  background-position: 0 -1618px;
  width: 12px;
  height: 6px;
}
.compo-faqlist-01 > ul > li > .hdg, .compo-faqlist-01 > ul > li > .content {
  position: relative;
}
.compo-faqlist-01 > ul > li > .hdg:before, .compo-faqlist-01 > ul > li > .content:before {
  font-weight: bold;
  line-height: 30px;
  text-align: center;
  color: #ffffff;
  position: absolute;
  left: 0;
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.compo-faqlist-01 > ul > li > .hdg {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left;
  background: none;
  display: block;
  width: 100%;
  padding: 18px 30px 18px 50px;
  cursor: pointer;
  border: 0;
}
.compo-faqlist-01 > ul > li > .hdg:before {
  font-size: 16px;
  font-size: 1.6rem;
  background: #0e0d6a;
  top: 1em;
  content: "Q";
}
.compo-faqlist-01 > ul > li > .hdg:after {
  background-position: 0 -1588px;
  width: 12px;
  height: 6px;
  position: absolute;
  top: 50%;
  right: 10px;
  margin: -2px 0 0;
}
.compo-faqlist-01 > ul > li > .content {
  display: block;
  padding: 2px 0 5px 50px;
}
[data-script-enabled="true"] .compo-faqlist-01 > ul > li > .content {
  display: none;
}
.compo-faqlist-01 > ul > li > .content:before {
  background: #049ba8;
  top: 0;
  content: "A";
}
@media screen and (max-width: 767px) {
  .compo-faqlist-01 > ul > li > .hdg {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.3;
    padding: 18px 30px 18px 46px;
  }
  .compo-faqlist-01 > ul > li > .hdg:before {
    top: 50%;
    margin: -15px 0 0;
  }
  .compo-faqlist-01 > ul > li > .hdg:after {
    right: 0;
  }
  .compo-faqlist-01 > ul > li > .content {
    padding: 0 0 5px 46px;
  }
  .compo-faqlist-01 > ul > li > .content p,
  .compo-faqlist-01 > ul > li > .content ul,
  .compo-faqlist-01 > ul > li > .content ol,
  .compo-faqlist-01 > ul > li > .content dl,
  .compo-faqlist-01 > ul > li > .content table {
    margin-bottom: 10px;
  }
}

/**
 * .compo-modal
**/
.compo-modal {
  background: url(/files/user/common/img/bg_cover_03.png);
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  display: none;
  visibility: hidden;
  overflow-y: auto;
  width: 100%;
  height: 100%;
}
.compo-modal.is-visible {
  visibility: visible;
}
.compo-modal .compo-modal-inner {
  padding-top: 64px;
  padding-bottom: 64px;
}
.compo-modal .compo-modal-movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.compo-modal .compo-modal-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.compo-modal .compo-modal-close {
  position: fixed;
  top: 10px;
  right: 10px;
  display: block;
  width: 44px;
  height: 44px;
}
.compo-modal .compo-modal-close button {
  text-indent: 100%;
  background: transparent;
  position: relative;
  overflow: hidden;
  width: 44px;
  height: 0;
  height: 44px;
  padding: 0;
  border: 0;
}
.compo-modal .compo-modal-close button span {
  display: block;
  overflow: hidden;
  height: 1px;
}
.compo-modal .compo-modal-close button:before {
  background-position: 0 -144px;
  width: 24px;
  height: 12px;
  position: absolute;
  top: 12px;
  left: 10px;
}
.compo-modal .compo-modal-close button:after {
  background-position: 0 -204px;
  width: 24px;
  height: 12px;
  position: absolute;
  bottom: 12px;
  left: 10px;
}
@media screen and (max-width: 767px) {
  .compo-modal {
    display: none;
  }
  .compo-modal.is-visible {
    visibility: hidden;
  }
}

/**
 * .compo-tab-01
 * @description Structure & Region Tab
**/
.compo-tab-01 .compo-fixed-scroll-outer {
  margin-top: 48px;
  margin-bottom: 62px;
}
.compo-tab-01 .region-tab-list {
  background: #ffffff;
  margin-top: 48px;
  margin-bottom: 62px;
  border-bottom: 1px solid #dedede;
  box-sizing: border-box;
}
.compo-tab-01 .region-tab-list .tab-list ul {
  display: table;
  width: 100%;
  margin: 0;
  table-layout: fixed;
}
.compo-tab-01 .region-tab-list .tab-list li {
  vertical-align: middle;
  display: table-cell;
  transition: .2s;
}
.compo-tab-01 .region-tab-list .tab-list li.is-current {
  background: #0e0d6a;
}
.compo-tab-01 .region-tab-list .tab-list li.is-current a {
  color: #ffffff;
}
.compo-tab-01 .region-tab-list .tab-list li.is-current a:before {
  background-position: 0 -252px;
  width: 8px;
  height: 5px;
  left: 12px;
  margin: -1px 0 0;
}
.compo-tab-01 .region-tab-list .tab-list a {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #0d40b5;
  position: relative;
  display: block;
  padding: 11px 10px 10px 28px;
  transition: .2s;
}
.compo-tab-01 .region-tab-list .tab-list a:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 14px;
  margin: -3px 0 0;
}
@media screen and (max-width: 767px) {
  .compo-tab-01 .region-tab-list {
    border-top: 1px solid #ebebeb;
    border-bottom: 0;
  }
  .compo-tab-01 .region-tab-list .tab-list {
    margin: 0 -15px;
  }
  .compo-tab-01 .region-tab-list .tab-list ul {
    position: relative;
    display: block;
    overflow: hidden;
  }
  .compo-tab-01 .region-tab-list .tab-list ul:before {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    margin: 0 0 0 -1px;
    content: "";
    border-left: 1px solid #ebebeb;
  }
  .compo-tab-01 .region-tab-list .tab-list li {
    display: block;
    float: left;
    box-sizing: border-box;
    width: 50%;
    border-bottom: 1px solid #ebebeb;
  }
  .compo-tab-01 .region-tab-list .tab-list a {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
  }
}
.compo-tab-01 .region-tab-list.is-fixed {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: 0;
}
[data-script-enabled="true"] .compo-tab-01 .region-tab-panel .tab-panel {
  display: none;
}
[data-script-enabled="true"] .compo-tab-01 .region-tab-panel .tab-panel:first-child {
  display: block;
}
.compo-tab-01 .region-tab-panel .tab-panel.is-current {
  display: block;
}
[data-script-enabled="true"] .compo-tab-01.add-break .tab-panel {
  display: block !important;
}
[data-script-enabled="true"] .compo-tab-01.add-break .tab-panel:first-child {
  display: block !important;
}
.compo-tab-01.add-break .tab-panel.is-current {
  display: block !important;
}

/**
 * .compo-tab-02
**/
.compo-tab-02 .tab-list {
  margin-bottom: 55px;
}
.compo-tab-02 .tab-list > ul {
  display: table;
  width: 100%;
  margin: 0;
  table-layout: fixed;
}
.compo-tab-02 .tab-list > ul > li {
  text-align: center;
  vertical-align: top;
  color: #0d40b5;
  position: relative;
  display: table-cell;
  border-top: 8px solid #bfbfbf;
  border-bottom: 8px solid #bfbfbf;
}
.compo-tab-02 .tab-list > ul > li.is-current {
  border-top: 8px solid #0d40b5;
  border-bottom: 8px solid #0d40b5;
}
.compo-tab-02 .tab-list > ul > li.is-current:before, .compo-tab-02 .tab-list > ul > li.is-current:after {
  display: block;
}
.compo-tab-02 .tab-list > ul > li:before, .compo-tab-02 .tab-list > ul > li:after {
  position: absolute;
  top: 100%;
  left: 50%;
  display: none;
  box-sizing: border-box;
  content: "";
}
.compo-tab-02 .tab-list > ul > li:before {
  z-index: 1;
  width: 50px;
  height: 42px;
  margin: 0 0 0 -25px;
  border: 25px solid transparent;
  border-top: 21px solid #0d40b5;
}
.compo-tab-02 .tab-list > ul > li:after {
  z-index: 2;
  width: 24px;
  height: 20px;
  margin: 0 0 0 -12px;
  border: 12px solid transparent;
  border-top: 10px solid #ffffff;
}
.compo-tab-02 .tab-list > ul > li > a {
  text-decoration: none;
  display: block;
  box-sizing: border-box;
  height: 100%;
  padding: 16px 20px 22px;
}
.compo-tab-02 .tab-list .img {
  display: block;
}
.compo-tab-02 .tab-list .hdg {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  display: block;
  padding: 11px 0 8px;
}
.compo-tab-02 .tab-list .txt {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: bold;
  display: block;
}
[data-script-enabled="true"] .compo-tab-02 .tab-panel {
  display: none;
}
[data-script-enabled="true"] .compo-tab-02 .tab-panel:first-child {
  display: block;
}
@media screen and (max-width: 767px) {
  .compo-tab-02 .tab-list .hdg {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 -15px;
  }
  .compo-tab-02 .tab-list .txt {
    display: none;
  }
}

/**
 * .compo-filter-01
 * @path [template]/news_list.html
**/
.compo-filter-01 {
  display: none;
}
[data-script-enabled="true"] .compo-filter-01 {
  display: block;
}
.compo-filter-01 .add-filter-empty {
  background: #f2f2f2;
  display: none;
  padding: 10px;
}
.compo-filter-01 ul {
  overflow: hidden;
  margin: 0;
  padding: 0 0 14px;
}
.compo-filter-01 li {
  float: left;
  box-sizing: border-box;
  margin: 0 25px 0 0;
  transition: .2s;
}
.compo-filter-01 li.is-current button {
  text-decoration: none;
  color: #ffffff;
  cursor: default;
}
.compo-filter-01 li.is-current button:before {
  display: none;
}
.compo-filter-01 li.is-current button:after {
  display: inline-block;
}
.compo-filter-01 li.is-current.term-all {
  background: #0e0d6a;
}
.compo-filter-01 li.is-current.term-all button:after {
  border-top-color: #0e0d6a;
}
.compo-filter-01 li.is-current.term-press {
  background: #0d40b5;
}
.compo-filter-01 li.is-current.term-press button:after {
  border-top-color: #0d40b5;
}
.compo-filter-01 li.is-current.term-topics {
  background: #049ba8;
}
.compo-filter-01 li.is-current.term-topics button:after {
  border-top-color: #049ba8;
}
.compo-filter-01 li.is-current.term-event {
  background: #7b3ed7;
}
.compo-filter-01 li.is-current.term-event button:after {
  border-top-color: #7b3ed7;
}
.compo-filter-01 button {
  text-align: center;
  color: #0d40b5;
  background: transparent;
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 6px 23px 6px 24px;
  border: 0;
}
.compo-filter-01 button:before {
  background-position: 0 -821px;
  width: 5px;
  height: 8px;
  position: absolute;
  top: .8em;
  left: 10px;
}
.compo-filter-01 button:after {
  position: absolute;
  bottom: -12px;
  left: 50%;
  display: none;
  box-sizing: border-box;
  width: 13px;
  height: 7px;
  margin: 0 0 0 -7px;
  content: "";
  border-top: 6px solid;
  border-right: 7px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 7px solid transparent;
}
.compo-filter-01 button:hover {
  text-decoration: underline;
  color: #0077d9;
}
@media screen and (max-width: 767px) {
  .compo-filter-01 {
    margin: 0 -15px;
  }
  .compo-filter-01 ul {
    position: relative;
    padding: 0;
    border-bottom: 1px solid #ebebeb;
  }
  .compo-filter-01 ul:after {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    margin: 0 0 0 -1px;
    content: "";
    border-left: 1px solid #ebebeb;
  }
  .compo-filter-01 li {
    float: left;
    box-sizing: border-box;
    width: 50%;
    margin: 0;
    border-top: 1px solid #ebebeb;
  }
  .compo-filter-01 button {
    text-align: left;
    width: 100%;
    padding: 14px 10px 13px 24px;
  }
  .compo-filter-01 button:before {
    top: 1.35em;
    left: 14px;
  }
  .compo-filter-01 button:after {
    opacity: 0;
  }
}

/**
 * %extend-news-label
**/
.region-inner-news .label, .compo-newspnl-2col .label,
.compo-newspnl-3col .label, .compo-newslist-01 .label, .compo-newslist-02 .label {
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  color: #ffffff;
  background: #555;
  display: inline-block;
  width: 120px;
  min-width: 120px;
  padding: 2px 0;
}
.region-inner-news .term-press .label, .compo-newspnl-2col .term-press .label,
.compo-newspnl-3col .term-press .label, .compo-newslist-01 .term-press .label, .compo-newslist-02 .term-press .label {
  background: #0d40b5;
}
.region-inner-news .term-topics .label, .compo-newspnl-2col .term-topics .label,
.compo-newspnl-3col .term-topics .label, .compo-newslist-01 .term-topics .label, .compo-newslist-02 .term-topics .label {
  background: #049ba8;
}
.region-inner-news .term-evt_campaign .label, .compo-newspnl-2col .term-evt_campaign .label,
.compo-newspnl-3col .term-evt_campaign .label, .compo-newslist-01 .term-evt_campaign .label, .compo-newslist-02 .term-evt_campaign .label {
  background: #7b3ed7;
}

/**
 * .compo-newspnl-[n]col
**/
.compo-newspnl-2col ul,
.compo-newspnl-3col ul {
  position: relative;
  margin: 0 0 0 -22px;
}
.compo-newspnl-2col li,
.compo-newspnl-3col li {
  position: relative;
  display: block;
  float: left;
  box-sizing: border-box;
  padding: 0 0 20px 22px;
}
.compo-newspnl-2col a,
.compo-newspnl-3col a {
  text-decoration: none;
  background: #ffffff;
  position: relative;
  display: block;
}
.compo-newspnl-2col a:hover .txt,
.compo-newspnl-3col a:hover .txt {
  text-decoration: underline;
}
.compo-newspnl-2col .label,
.compo-newspnl-3col .label {
  position: absolute;
  top: 0;
  left: 0;
}
.compo-newspnl-2col .label + .txt,
.compo-newspnl-3col .label + .txt {
  padding-top: 32px;
}
.compo-newspnl-2col .txt,
.compo-newspnl-3col .txt {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  padding: 14px 16px 4px;
}
.compo-newspnl-2col .img,
.compo-newspnl-3col .img {
  display: block;
}
.compo-newspnl-2col .img img,
.compo-newspnl-3col .img img {
  width: 100%;
}
.compo-newspnl-2col .date,
.compo-newspnl-3col .date {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right;
  color: #777777;
  display: block;
  padding: 0 16px 10px;
}
@media screen and (max-width: 579px) {
  .compo-newspnl-2col ul,
  .compo-newspnl-3col ul {
    margin: 0;
  }
  .compo-newspnl-2col li,
  .compo-newspnl-3col li {
    float: none;
    margin: 0 !important;
    padding: 0 0 12px;
  }
}

.compo-newspnl-2col li {
  width: 50%;
}
@media screen and (max-width: 579px) {
  .compo-newspnl-2col li {
    width: 100%;
  }
}

.compo-newspnl-3col li {
  width: 33.33333%;
}
@media screen and (max-width: 579px) {
  .compo-newspnl-3col li {
    width: 100%;
  }
}

/**
 * .compo-newslist-01
**/
.compo-newslist-01 {
  margin: 0;
}
.compo-newslist-01 ul {
  margin: 22px 0 0;
}
.compo-newslist-01 ul.combine {
  margin: 70px 0 0;
}
.compo-newslist-01 li {
  margin: 14px 0 0;
  border-bottom: 1px solid #ebebeb;
}
.compo-newslist-01 li .content {
  display: block;
  margin: 0;
  padding: 0 0 12px 116px;
}
.compo-newslist-01 .date {
  font-size: 14px;
  font-size: 1.4rem;
  color: #777777;
  display: inline-block;
  float: left;
  width: 94px;
  padding: 3px 0 0;
}
.compo-newslist-01 .label {
  float: left;
  margin: 2px 0 0;
}
.compo-newslist-01 a {
  display: block;
  padding: 0 0 0 142px;
}
@media screen and (max-width: 767px) {
  .compo-newslist-01 ul.combine {
    margin: 22px 0 0;
  }
  .compo-newslist-01 a {
    clear: both;
    padding: 12px 0 0;
  }
  .compo-newslist-01 li .content {
    padding: 0 0 10px;
  }
  .compo-newslist-01 .label {
    margin-left: 20px;
  }
}
.compo-newslist-01 + p {
  margin-top: 32px;
}

/**
 * .compo-newslist-02
**/
.compo-newslist-02 ul {
  position: relative;
  margin: 0 0 0 -22px;
}
.compo-newslist-02 li {
  position: relative;
  display: block;
  float: left;
  box-sizing: border-box;
  width: 33.33333%;
  padding: 0 0 20px 22px;
}
.compo-newslist-02 li a {
  text-decoration: none;
  background: #ffffff;
  position: relative;
  display: block;
}
.compo-newslist-02 li a:hover .txt {
  text-decoration: underline;
}
.compo-newslist-02 .label {
  font-size: 13px;
  font-size: 1.3rem;
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 72px;
  padding: 0 0 2px;
}
.compo-newslist-02 .label.press {
  background: #0d40b5;
}
.compo-newslist-02 .label.events {
  background: #049ba8;
}
.compo-newslist-02 .label.campaign {
  background: #7b3ed7;
}
.compo-newslist-02 .label + .txt {
  padding-top: 32px;
}
.compo-newslist-02 .txt {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  padding: 16px 16px 8px;
}
.compo-newslist-02 .img {
  display: block;
  border-bottom: 1px solid #e6e6e6;
}
.compo-newslist-02 .img img {
  width: 100%;
}
.compo-newslist-02 .date {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: right;
  color: #777777;
  display: block;
  padding: 2px 16px 12px;
}
@media screen and (max-width: 579px) {
  .compo-newslist-02 ul {
    margin: 0;
  }
  .compo-newslist-02 li {
    float: none;
    width: 100%;
    margin: 0 !important;
    padding: 0 0 12px;
  }
}

/** ========================================================
 * @class Common: Module: Form
 * @incliude module/_form.scss
 * @prefix form-***
** ====================================================== */
.form-root-01 .optional,
.form-root-01 .required {
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  color: #ffffff;
  display: inline-block;
  float: right;
  min-width: 67px;
  margin: 1px 0 0 5px;
}
.form-root-01 .optional {
  background: #999;
}
.form-root-01 .required {
  background: #db5c5c;
}
.form-root-01 .note,
.form-root-01 .notice,
.form-root-01 .form-group {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 10px 0;
}
.form-root-01 .notice {
  position: relative;
  padding: 0 0 0 20px;
}
.form-root-01 .notice .mark {
  position: absolute;
  margin: 0 0 0 -20px;
}
.form-root-01 .unit {
  vertical-align: middle;
  display: inline-block;
  margin: 0 5px;
}
.form-root-01 .form-unit {
  position: relative;
  display: inline-block;
}
.form-root-01 .form-unit + .form-unit {
  margin-left: 24px;
}
.form-root-01 .form-block {
  display: block;
  margin: 10px 0;
}
.form-root-01 input[type="text"],
.form-root-01 input[type="email"],
.form-root-01 input[type="password"],
.form-root-01 textarea {
  vertical-align: middle;
  -webkit-appearance: none;
}
.form-root-01 input[type="text"],
.form-root-01 input[type="email"],
.form-root-01 input[type="password"],
.form-root-01 select,
.form-root-01 textarea {
  background: #f7f7f7;
  border: 1px solid #b4b4b4;
  border-radius: 0;
}
.form-root-01 input[type="text"]:active, .form-root-01 input[type="text"]:focus,
.form-root-01 input[type="email"]:active,
.form-root-01 input[type="email"]:focus,
.form-root-01 input[type="password"]:active,
.form-root-01 input[type="password"]:focus,
.form-root-01 select:active,
.form-root-01 select:focus,
.form-root-01 textarea:active,
.form-root-01 textarea:focus {
  background: #ffffff;
}
.form-root-01 input[type="text"][disabled],
.form-root-01 input[type="email"][disabled],
.form-root-01 input[type="password"][disabled],
.form-root-01 select[disabled],
.form-root-01 textarea[disabled] {
  background: #b4b4b4;
}
.form-root-01 input[type="text"],
.form-root-01 input[type="email"],
.form-root-01 input[type="password"],
.form-root-01 select {
  line-height: 36px;
  vertical-align: middle;
  box-sizing: border-box;
  width: 100%;
  max-width: 490px;
  height: 36px;
  padding: 0 10px;
}
.form-root-01 input[type="text"],
.form-root-01 input[type="email"],
.form-root-01 input[type="password"] {
  padding: 0 10px;
}
.form-root-01 select {
  vertical-align: middle;
  padding: 0 0 0 10px;
}
.form-root-01 textarea {
  box-sizing: border-box;
  width: 100%;
  max-width: 490px;
  min-height: 138px;
  padding: 10px;
  resize: vertical;
}
.form-root-01 input[type="radio"],
.form-root-01 input[type="checkbox"] {
  vertical-align: middle;
  cursor: pointer;
}
.form-root-01 input[type="radio"] + label,
.form-root-01 input[type="checkbox"] + label {
  vertical-align: middle;
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 0 0 0 3px;
  cursor: pointer;
  border: 1px dotted transparent;
}
@media (min-width: 1px) {
  .form-root-01 input[type="radio"],
  .form-root-01 input[type="checkbox"] {
    position: absolute;
    z-index: -1;
  }
  .form-root-01 input[type="radio"] + label:before, .form-root-01 input[type="radio"] + label:after,
  .form-root-01 input[type="checkbox"] + label:before,
  .form-root-01 input[type="checkbox"] + label:after {
    position: absolute;
    top: .15em;
    display: inline-block;
    content: "";
  }
  .form-root-01 input[type="radio"] + label:after,
  .form-root-01 input[type="checkbox"] + label:after {
    display: none;
  }
  .form-root-01 input[type="radio"]:checked + label:after,
  .form-root-01 input[type="checkbox"]:checked + label:after {
    display: block;
  }
  .form-root-01 input[type="radio"]:focus + label,
  .form-root-01 input[type="checkbox"]:focus + label {
    border: 1px dotted #cccccc;
  }
}
.form-root-01 input[type="radio"] + label {
  position: relative;
  padding: 0 0 0 20px;
}
.form-root-01 input[type="radio"] + label:before {
  background: #cccccc;
  z-index: 1;
  left: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
}
.form-root-01 input[type="radio"] + label:after {
  background: #db5c5c;
  z-index: 2;
  left: 2px;
  width: 10px;
  height: 10px;
  margin: 2px 0 0;
  border-radius: 50%;
}
.form-root-01 input[type="checkbox"] + label {
  position: relative;
  padding: 0 0 0 20px;
}
.form-root-01 input[type="checkbox"] + label:before {
  z-index: 1;
  left: 0;
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #cccccc;
  border-radius: 2px;
}
.form-root-01 input[type="checkbox"] + label:after {
  z-index: 2;
  left: 2px;
  width: 8px;
  height: 4px;
  margin-top: 2px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: 2px solid #db5c5c;
  border-left: 2px solid #db5c5c;
}
@media screen and (max-width: 767px) {
  .form-root-01 input[type="text"],
  .form-root-01 input[type="email"],
  .form-root-01 input[type="password"],
  .form-root-01 select,
  .form-root-01 textarea {
    width: 100%;
    max-width: none;
  }
}
.form-root-01 input[type="checkbox"][value*="hiddenbutton"],
.form-root-01 input[type="radio"][value*="hiddenbutton"] {
  display: none;
}
.form-root-01 input[type="checkbox"][value*="hiddenbutton"] + label,
.form-root-01 input[type="radio"][value*="hiddenbutton"] + label {
  padding-left: 0;
  cursor: text;
}
.form-root-01 input[type="checkbox"][value*="hiddenbutton"] + label:before, .form-root-01 input[type="checkbox"][value*="hiddenbutton"] + label:after,
.form-root-01 input[type="radio"][value*="hiddenbutton"] + label:before,
.form-root-01 input[type="radio"][value*="hiddenbutton"] + label:after {
  display: none !important;
}

/** ========================================================
 * @class Common: Module: Connect
 * @incliude module/_connect.scss
 * @prefix none
** ====================================================== */
/**
 * @desc Header menu ".compo-blocklink-01" vertial align.
 * @class .site-header in .compo-blocklink-01
 * @for .site-header
**/
.site-header .nav-primary .nav-primary-child .str-4col .compo-blocklink-01 .hdg .cell span {
  vertical-align: bottom;
  padding-bottom: 12px;
}

/**
 * @desc Heading button in toggle module (.add-tgl).
 * @class .add-tgl [class*="hdg-l"] button
**/
.add-tgl [class*="hdg-l"] > .hdg {
  display: inline-block;
}
.add-tgl [class*="hdg-l"] button {
  text-align: left;
  background: none;
  position: relative;
  padding: 0 0 0 34px;
  border: 0;
}
.add-tgl [class*="hdg-l"] button:before {
  background: url(/files/user/common/img/ico_tgl_plus_01.png) no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: -12px 0 0;
  content: "";
}
.add-tgl [class*="hdg-l2"] button:before {
  margin: -13px 0 0;
}
.add-tgl.is-open [class*="hdg-l"] button:before {
  background: url(/files/user/common/img/ico_tgl_minus_01.png) no-repeat;
}
[data-script-enabled="true"] .add-tgl .add-tgl-content {
  display: none;
}
[data-script-enabled="true"] .add-tgl.is-open .add-tgl-content {
  display: block;
}

[data-script-enabled="true"] .add-tgl2 .add-tgl2-content {
  display: none;
}
[data-script-enabled="true"] .add-tgl2.is-open .add-tgl2-content {
  display: block;
}

/**
 * @class .region-heading and .region-category
**/
.region-heading + .region-category {
  min-height: 400px;
}
.region-heading + .region-category .str-inner {
  height: 400px;
  min-height: 400px;
}
@media screen and (max-width: 767px) {
  .region-heading + .region-category {
    height: auto;
    min-height: 150px;
  }
  .region-heading + .region-category .str-inner {
    height: auto;
    min-height: 150px;
  }
}

.region-category + .region-carousel-2col,
.region-category + .region-strength, .region-category + [class*="region-content-flt"],
.region-category + .compo-tab-01 > .region-tab-panel > .tab-panel > [class*="region-content-flt"]:first-child {
  margin-top: -32px;
}
@media screen and (max-width: 767px) {
  .region-category + .region-carousel-2col,
  .region-category + .region-strength, .region-category + [class*="region-content-flt"],
  .region-category + .compo-tab-01 > .region-tab-panel > .tab-panel > [class*="region-content-flt"]:first-child {
    margin-top: 0;
  }
}
.region-category + .compo-tab-01 > .compo-fixed-scroll-outer + .region-tab-panel > .tab-panel > [class*="region-content-flt"]:first-child {
  margin-top: -61px;
}
@media screen and (max-width: 767px) {
  .region-category + .compo-tab-01 > .compo-fixed-scroll-outer + .region-tab-panel > .tab-panel > [class*="region-content-flt"]:first-child {
    margin-top: 0;
  }
}
.region-category + .compo-tab-01 > .region-tab-panel > .tab-panel > .str-outer > .str-inner > [class*="lyt-flt"]:first-child {
  margin-top: 62px;
}

/**
 * layout + hedding
**/
[class^="lyt-flt"] + [class^="hdg-l2"],
.lyt-2col + [class^="hdg-l2"] {
  margin-top: 40px;
}

[class^="lyt-flt"] + [class^="hdg-l3"] {
  margin-top: 26px;
}

/**
 * @path /_mlc/template/ja/sitemap.html
**/
.lyt-2col .col > .hdg-l2-01:first-child {
  margin-top: 50px;
}
.lyt-2col .col:first-child > .hdg-l2-01:first-child, .lyt-2col .col:first-child + .col .hdg-l2-01:first-child {
  margin-top: 0;
}
.lyt-2col .col > .hdg-l3-01:first-child {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .lyt-2col .col:first-child > .hdg-l2-01:first-child {
    margin-top: 0;
  }
  .lyt-2col .col > .hdg-l2-01:first-child,
  .lyt-2col .col:first-child + .col > .hdg-l2-01:first-child {
    margin-top: 26px;
  }
}

/**
 * @path /_mlc/template/ja/network.html
**/
[class^="hdg-l2"] + .pnl-index-03-2col {
  margin-top: -48px;
}
@media screen and (max-width: 959px) {
  [class^="hdg-l2"] + .pnl-index-03-2col {
    margin-top: -16px;
  }
}

/**
 * @path All (e.g. /_mlc/template/ja/contact_list.html)
**/
.region-heading + .str-outer > .str-inner > [class^="hdg-l2"]:first-child {
  margin-top: 0;
}

/**
 * @path /_mlc/template/ja/resource.html
 * @path /_mlc/template/ja/gotomypc2.html(more products)
**/
.lyt-img-showcase + * {
  margin-top: -52px;
}

/**
 * @path /_mlc/template/ja/resource.html
**/
.lyt-2col + .btn-list-01 {
  margin-top: 10px;
}

[class^="lyt-flt"] + .btn-list-01 {
  margin-top: 0;
}

/**
 * @desc region margins
 * @path /index.html
**/
.region-carousel-main + .region-common-bnr-01 {
  margin-top: -72px;
  margin-bottom: 72px;
}

/**
 * @desc Hide javascript added icon.
 * @path /index.html
**/
.compo-newslist-02 .compo-ico-added {
  display: none;
}

/**
 * @desc .block-info, .block-content in heading margin-top.
**/
.block-info > [class^="hdg-l"]:first-child,
.block-content > [class^="hdg-l"]:first-child {
  margin-top: 0;
}

.block-info > [class^="hdg-l2"]:first-child {
  font-size: 32px;
  font-size: 3.2rem;
  margin-top: 0;
  padding-top: 20px;
  border-top: 8px solid;
}
@media screen and (max-width: 959px) {
  .block-info > [class^="hdg-l2"]:first-child {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .block-info > [class^="hdg-l2"]:first-child br {
    display: none;
  }
}

/**
 * @desc .block-content in link and button's margin.
 * @path /index.html
 * @class .block-content .tab-panel .link-3col-s li
 * @class .block-content .btn-list-01
**/
.block-content .tab-panel .link-3col-s {
  margin-top: -14px;
  margin-bottom: 36px;
}
.block-content .tab-panel .link-3col-s li {
  margin-top: 14px;
}
.block-content .btn-list-01 {
  margin-bottom: 72px;
}
.region-info .block-content .btn-list-01 {
  margin-bottom: 20px;
}

/**
 * @class .form-root-01 in .tbl-01, .tbl-01-rwd
 * @path /_mlc/template/ja/contact.html
**/
.form-root-01 .tbl-01 th,
.form-root-01 .tbl-01 td,
.form-root-01 .tbl-01-rwd th,
.form-root-01 .tbl-01-rwd td {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .form-root-01 .tbl-01 th,
  .form-root-01 .tbl-01-rwd th {
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .form-root-01 .tbl-01 td,
  .form-root-01 .tbl-01-rwd td {
    padding: 10px 15px;
  }
}

/**
 * @class [^lyt-flt] + [^lyt-flt]
**/
[class^="lyt-flt"] + [class^="lyt-flt"] {
  margin-top: 16px;
}

/**
 * @class [class^="pnl-index-01"] in .link-list-s
 * @class [class^="pnl-index-01"] in .link-2col-s
 * @path /ja/products_services/
**/
[class^="pnl-index-01"] .link-list-s,
[class^="pnl-index-01"] .link-2col-s {
  margin-bottom: 0;
}

/**
 * @class [^pnl-index] + [^pnl-index]
 * @class [^hdg-l2] + [^pnl-index]
 * @path /ja/products_services/
**/
[class^="pnl-index"] + [class^="pnl-index"],
[class^="hdg-l2"] + [class^="pnl-index"] {
  margin-top: 0;
}

/** ========================================================
 * @class Common: Module: Adjust
 * @incliude module/_adjust.scss
 * @prefix none
 * @comment Do not use as much as possible
** ====================================================== */
/**
 * Adjust aline.
**/
.alg-l {
  text-align: left !important;
}

.alg-c {
  text-align: center !important;
}

.alg-r {
  text-align: right !important;
}

.valg-t {
  vertical-align: top !important;
}

.valg-m {
  vertical-align: middle !important;
}

.valg-b {
  vertical-align: bottom !important;
}

.alg-c-block {
  margin-left: auto !important;
  margin-right: auto !important;
}

/**
 * Adjust width.
**/
.w-5 {
  width: 5% !important;
}

.w-10 {
  width: 10% !important;
}

.w-15 {
  width: 15% !important;
}

.w-20 {
  width: 20% !important;
}

.w-25 {
  width: 25% !important;
}

.w-30 {
  width: 30% !important;
}

.w-35 {
  width: 35% !important;
}

.w-40 {
  width: 40% !important;
}

.w-45 {
  width: 45% !important;
}

.w-50 {
  width: 50% !important;
}

.w-55 {
  width: 55% !important;
}

.w-60 {
  width: 60% !important;
}

.w-65 {
  width: 65% !important;
}

.w-70 {
  width: 70% !important;
}

.w-75 {
  width: 75% !important;
}

.w-80 {
  width: 80% !important;
}

.w-85 {
  width: 85% !important;
}

.w-90 {
  width: 90% !important;
}

.w-95 {
  width: 95% !important;
}

.w-100 {
  width: 100% !important;
}

.w-16 {
  width: 16.666666% !important;
}

.w-17 {
  width: 17% !important;
}

.w-18 {
  width: 18% !important;
}

.w-19 {
  width: 19% !important;
}

.w-33 {
  width: 33.333333% !important;
}

.w-66 {
  width: 66.666666% !important;
}

.w-94 {
  width: 94% !important;
}

/**
 * Adjust string length for dl.list-define-01.
**/
.leng-2 dd {
  padding-left: 2em !important;
}

.leng-4 dd {
  padding-left: 4em !important;
}

.leng-6 dd {
  padding-left: 6em !important;
}

.leng-8 dd {
  padding-left: 8em !important;
}

.leng-10 dd {
  padding-left: 10em !important;
}

.leng-12 dd {
  padding-left: 12em !important;
}

.leng-14 dd {
  padding-left: 14em !important;
}

.leng-16 dd {
  padding-left: 16em !important;
}

.leng-18 dd {
  padding-left: 18em !important;
}

.leng-20 dd {
  padding-left: 20em !important;
}

.leng-22 dd {
  padding-left: 22em !important;
}

.leng-24 dd {
  padding-left: 24em !important;
}

.leng-26 dd {
  padding-left: 26em !important;
}

.leng-28 dd {
  padding-left: 28em !important;
}

.leng-30 dd {
  padding-left: 30em !important;
}

.leng-32 dd {
  padding-left: 32em !important;
}

.leng-34 dd {
  padding-left: 34em !important;
}

.leng-36 dd {
  padding-left: 36em !important;
}

.leng-38 dd {
  padding-left: 38em !important;
}

.leng-40 dd {
  padding-left: 40em !important;
}

/**
 * For table module.
**/
.fixed {
  table-layout: fixed;
}

.nowrap {
  white-space: nowrap;
}

.pc-nowrap {
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .pc-nowrap {
    white-space: normal;
  }
}

/**
 * Float & Clear.
**/
.flt-l {
  float: left;
}

.flt-r {
  float: right;
}

.clear {
  clear: both;
}

/*# sourceMappingURL=common.css.map */
