@charset 'utf-8';
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/* ----------------------------------------------------------------
    Normalize
----------------------------------------------------------------- */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: sans-serif;
  line-height: 1.15;
}

body {
  margin: 0;
}

article, aside, footer, header, nav, section {
  display: block;
}

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

figcaption, figure, main {
  display: block;
}

figure {
  margin: 1em 40px;
}

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

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

a {
  background-color: transparent;

  -webkit-text-decoration-skip: objects;
}

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

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: inherit;
}

b, strong {
  font-weight: bolder;
}

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

dfn {
  font-style: italic;
}

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

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

audio, video {
  display: inline-block;
}

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

img {
  border-style: none;
}

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

button, input, optgroup, select, textarea {
  margin: 0;
  font-size: 100%;
  font-family: sans-serif;
  line-height: 1.15;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html [type='button'], [type='reset'], [type='submit'] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

button:-moz-focusring, [type='button']:-moz-focusring, [type='reset']:-moz-focusring, [type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  margin: 0 2px;
  padding: .35em .625em .75em;
  border: 1px solid #c0c0c0;
}

legend {
  display: table;
  box-sizing: border-box;
  padding: 0;
  max-width: 100%;
  color: inherit;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

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

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

[type='search'] {
  outline-offset: -2px;

  -webkit-appearance: textfield;
}

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

::-webkit-file-upload-button {
  font: inherit;

  -webkit-appearance: button;
}

details, menu {
  display: block;
}

summary {
  display: list-item;
}

canvas {
  display: inline-block;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

:root {
  font-size: 62.5%;
}

html.is-ios {
  /* [BUGFIX] html のクリックイベントが取得できないバグを回避 */
  cursor: pointer;
}

html, body, h1, h2, h3, h4, h5, h6, ul, ol, li, p, dl, dt, dd, table, th, td {
  margin: 0;
  padding: 0;
}

body {
  color: #777;
  font-size: 1.4em;
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 1.2rem;
  }
}

a {
  -webkit-tap-highlight-color: transparent;
}

a, a:active {
  color: #ec6c00;
}
a img:not([class*='icon-']), a:active img:not([class*='icon-']) {
  transition: opacity .7s cubic-bezier(.23, 1, .32, 1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

a:visited {
  color: #e3951e;
  text-decoration: none;
}

a:hover, a:focus {
  color: #ec6c00;
  text-decoration: underline;
}
a:hover img:not([class*='icon-']), a:focus img:not([class*='icon-']) {
  opacity: .7;
}

a:not([href]):hover, a:not([href]):focus {
  text-decoration: none !important;
}

@media only screen and (max-width: 767px) {
  a:hover, a:focus, a:active {
    text-decoration: none !important;
  }
}

*:focus {
  outline: none;
}

p, ul, ol, dl {
  margin: 0 0 30px;
  padding: 0;
}

em {
  font-weight: bold;
  font-style: normal;
}

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

ul, ol {
  list-style: none;
}
ul > :last-child, ol > :last-child {
  margin-bottom: 0;
}

dl > :last-child {
  margin-bottom: 0;
}

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

input, select, button {
  margin: 0;
  padding: 0;
  font: inherit;
  cursor: pointer;
}

@media only screen and (max-width: 860px) {
  input {
    -webkit-appearance: none;
  }
}

dfn {
  font-style: normal;
}

small {
  font-size: 100%;
}

/* ----------------------------------------------------------------
    clearfix
----------------------------------------------------------------- */
.header-inner::after, .header-utility::after, .header-region-content ul::after, .header-link-list::after, .nav-global > ul::after, .nav-global-grid::after, .topic-path-inner::after, .local-panel > .local-nav::after, .footer-inner::after, .footer-nav-inner::after, .footer-grid::after, .footer-link-list-02::after, .hdg-l1 .hdg-inner::after, .hdg-l1 .hdg-media::after, .hdg-l1-02 .hdg-inner::after, .hdg-l1-06 .hdg-inner::after, .txt-estimate::after, .grid::after, .nav-toc ul::after, .nav-page .nav-link::after, .nav-archive::after, .media-lyt::after, .panel-profile .panel-list::after, .carousel-item::after, .uni-list-case::after, .uni-nav-panel .nav-list-02::after, .uni-hdg-column .hdg-inner::after, .uni-panel-search .panel-list::after, .uni-grid-seminar::after, .uni-grid-seminar .grid-list::after, .t-bnr-list::after, .t-panel-02 .panel-link-list::after, .r-hdg-l1 .hdg-inner::after, .r-list-02::after, .r-list-03::after, .r-grid::after, .r-grid-02::after, .r-grid-03::after, .content-fluid::after, .content-fluid-02::after, .content-fluid-03::after, .content-inner::after {
  display: block;
  clear: both;
  content: '';
}

/* ----------------------------------------------------------------
    pseudo element
----------------------------------------------------------------- */
/* block
----------------------------------------------- */
.header-menu-btn button::before, .header-menu-btn button::after, .header-menu-btn .header-menu-btn-inner::before, .header-region-btn button::before, .header-region-btn button::after, .header-region-content li::before, .header-link-list li a::before, .header-link-list li a::after, .nav-global > ul > li > a::after, .nav-global-btn > a::before, .nav-global-btn > button::before, .nav-global-btn > a::after, .nav-global-btn > button::after, .nav-global-hdg > a::before, .nav-global-link-list a::before, .local-panel > .local-hdg > a::before, .local-panel > .local-nav > li::after, .footer-nav-top a::before, .footer-link-list a::before, .footer-link-list-02 li::after, .hdg-l2 a::before, .hdg-l3 a::before, .hdg-l4 a::before, .hdg-l5 a::before, .hdg-l6 a::before, .hdg-l1 .hdg-btn a::before, .hdg-l3::before, .hdg-l1-05 .hdg-btn a::before, .txt-conclusion > strong::before, .txt-convo::before, .list > li::before, .list-flow > li::after, .ccm-block-page-list-title a::before, .ccm-block-file a::before, a.link::before, .link-list > li > a::before, .btn::before, .btn-more::before, .btn-primary::before, .btn-myhulft::before, .btn-close::before, .btn-close::after, .btn-media a::before, .nav-toc ul li::before, .nav-top > a > span::before, .nav-panel .nav-link::before, .nav-panel-02 .nav-hdg::before, .nav-panel-03::before, .nav-panel-03::after, .nav-panel-03 .nav-panel-inner::before, .nav-panel-03 .nav-panel-inner::after, .nav-panel-03 a::before, .nav-panel-03 a::after, .nav-page .nav-link li::after, .nav-archive li::after, .tab .tab-list::after, .tab.js-tabs .tab-list li a::before, a .media-caption::before, .panel-attention > .panel-hdg::before, .panel-faq > .panel-link a::before, .panel-faq > .panel-link a::after, .lyt-outline > .lyt-hdg::before, .lyt-cv .lyt-btn-list li a::before, .carousel-inner::before, .carousel-inner::after, .carousel-control .carousel-prev button::before, .carousel-control .carousel-next button::before, .carousel-control .carousel-player button::before, .carousel-control .carousel-player button::after, .carousel-control .carousel-player button span::after, .modal-hdg::before, .dialog-close .dialog-btn-close::before, .dialog-close .dialog-btn-close::after, .filter button::before, .uni-lyt-filter .lyt-list > li .lyt-btn button::before, .uni-lyt-filter .lyt-list > li.lyt-btn-02 button::before, .uni-nav-panel .nav-hdg::before, .uni-txt-faq::before, .uni-txt-faq span::before, .uni-txt-faq span::after, .uni-panel-faq .panel-txt span::before, .uni-panel-faq .panel-txt span::after, .uni-panel-search .panel-list li input[type='radio'] + span::before, .uni-list-result .list-hdg a::before, .uni-nav-pagination li.nav-prev a div::before, .uni-nav-pagination li.nav-next a div::before, .uni-grid-seminar > .grid-col::before, .wysiwyg-list ul > li::before, .t-panel-02 .panel-hdg::after, .r-list-03 .list-txt::before, .r-lyt-graph .lyt-year > span::before, .r-lyt-graph-02::before, .r-lyt-graph-02::after, .r-lyt-graph-02 > .lyt-inner::before, .animate-scroll.is-active .animate-flash-item::before, .animate-scroll.is-active .animate-flash-item::after {
  display: block;
  content: '';
}

/* ----------------------------------------------------------------
    sprite-image load
----------------------------------------------------------------- */
.header-region-btn button::before, .header-link-list li._myhulft a::before, .txt-conclusion > strong::before, .btn-myhulft::before, .btn-myhulft:hover::before, .btn-myhulft:active::before, .btn-myhulft:focus::before, .panel-attention > .panel-hdg::before, .uni-txt-faq._right::before, .uni-txt-faq._wrong::before, .t-panel-02 .panel-hdg._customer::after, .t-panel-02 .panel-hdg._partner::after {
  background-image: url(/application/themes/hulftglobaljp/images/icon/sprite.png);
}

/* ----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
/* .header
----------------------------------------------- */
.header {
  position: relative;
  z-index: 101;
  padding: 15px 0 0;
  border-bottom: 3px solid #ec6c00;
  background: #fff;
}
@media only screen and (max-width: 900px) {
  .header {
    padding: 15px 0 14px;
    border-bottom-width: 2px;
  }
}

/* .header-inner
----------------------------------------------- */
.header-inner {
  position: relative;
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
  line-height: 1;
}
@media only screen and (max-width: 860px) {
  .header-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .header-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media only screen and (max-width: 900px) {
  .header-inner {
    position: static;
  }
}

/* .header-logo
----------------------------------------------- */
.header-logo {
  z-index: 50;
  float: left;
  margin: 2px 0 0;
  font-size: 1rem;
  line-height: 1;
}
.header-logo span {
  display: block;
  margin: 0 0 11px 0;
  color: #333;
  font-weight: normal;
  font-size: 1.2rem;
}
@media only screen and (max-width: 900px) {
  .header-logo {
    margin: 0;
  }
  .header-logo span {
    margin-bottom: 7px;
    font-size: .9rem;
  }
  .header-logo img {
    height: 19px;
  }
}

/* .header-menu-btn
----------------------------------------------- */
.header-menu-btn {
  display: none;
  overflow: hidden;
  width: 22px;
  height: 20px;
}
.header-menu-btn button {
  position: relative;
  width: 22px;
  height: 20px;
  border: none;
  background-color: transparent;
}
.header-menu-btn button::before, .header-menu-btn button::after {
  position: absolute;
  left: 50%;
  margin-left: -11px;
  width: 22px;
  height: 4px;
  border-radius: 3px;
  background-color: #ec6c00;
  transition: all .4s cubic-bezier(.23, 1, .32, 1);
}
.header-menu-btn button::before {
  top: 0;
}
.header-menu-btn button::after {
  top: 16px;
}
.header-menu-btn .header-menu-btn-inner {
  position: relative;
  display: block;
  color: transparent;
}
.header-menu-btn .header-menu-btn-inner::before {
  position: absolute;
  top: 5px;
  left: 50%;
  margin-left: -11px;
  width: 22px;
  height: 4px;
  border-radius: 3px;
  background-color: #ec6c00;
}
.header-menu-btn .header-menu-btn-state {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  color: transparent;
}
@media only screen and (max-width: 900px) {
  .header-menu-btn {
    position: absolute;
    top: 31px;
    right: 15px;
    display: block;
  }
  .header-menu-btn button {
    outline: none;
  }
  .is-expand .header-menu-btn button::before {
    top: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .is-expand .header-menu-btn button::after {
    top: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .is-expand .header-menu-btn .header-menu-btn-inner::before {
    opacity: 0;
  }
}
@media only screen and (max-width: 767px) {
  .header-menu-btn .header-menu-btn-inner::before {
    top: 4px;
  }
}

/* .header-menu-content
----------------------------------------------- */
@media only screen and (max-width: 900px) {
  .header-menu-content {
    position: absolute;
    top: 67px;
    left: 0;
    z-index: 101;
    width: 100%;
    background: #fff;
  }
}

/* .header-utility
----------------------------------------------- */
.header-utility {
  padding: 33px 0 10px;
  line-height: 1;
}
.header-utility .header-utility-inner {
  display: table;
  float: right;
}
@media only screen and (max-width: 900px) {
  .header-utility {
    padding: 0;
  }
  .header-utility .header-utility-inner {
    display: block;
    float: none;
  }
}

/* .header-search
----------------------------------------------- */
.header-search {
  display: table-cell;
  padding-right: 19px;
  vertical-align: middle;
}
@media only screen and (max-width: 900px) {
  .header-search {
    display: block;
    padding: 15px;
    border-bottom: 1px solid #ccc;
    background: #ebebeb;
  }
}

/* .header-search-inner
----------------------------------------------- */
.header-search-inner {
  position: relative;
  margin: 0;
}
.header-search-inner input {
  box-sizing: border-box;
  padding: 5px 32px 5px 5px;
  width: 210px;
  height: 30px;
  border: none;
  background-color: #ebebeb;
}
.header-search-inner button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 7px;
  height: 100%;
  border: none;
  background-color: #ebebeb;
}
@media only screen and (max-width: 900px) {
  .header-search-inner {
    display: block;
    padding-right: 0;
  }
  .header-search-inner input {
    padding: 5px 43px 5px 11px;
    width: 100%;
    height: 44px;
    border: 1px solid #d7d9d9;
    background: #fff;
  }
  .header-search-inner button {
    padding: 5px 12px 5px 11px;
    border-width: 1px 1px 1px 0;
    border-style: solid;
    border-color: #d7d9d9;
    background: #fff;
  }
}

/* .header-region
----------------------------------------------- */
.header-region {
  position: relative;
  display: table-cell;
  min-width: 120px;
  vertical-align: middle;
}
@media only screen and (max-width: 900px) {
  .header-region {
    display: block;
    width: 100%;
    border-bottom: 1px solid #ccc;
  }
}

/* .header-region-btn
----------------------------------------------- */
.header-region-btn {
  position: relative;
}
.header-region-btn button {
  position: relative;
  box-sizing: border-box;
  padding: 5px 20px 5px 34px;
  width: 100%;
  height: 30px;
  border: none;
  background-color: #ebebeb;
  color: #777;
  text-align: left;
  font-size: 1.4rem;
}
.header-region-btn button::before {
  position: absolute;
  top: 6px;
  left: 10px;
  width: 18px;
  height: 18px;
  background-position: -107px -64px;
  background-size: 147px auto;
}
.header-region-btn button::after {
  position: absolute;
  top: .7em;
  right: 12px;
  width: 6px;
  height: 6px;
  border-right: 1px solid #ec6c00;
  border-bottom: 1px solid #ec6c00;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.header-region-btn button .header-region-btn-state {
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0;
}
@media only screen and (max-width: 900px) {
  .header-region-btn {
    display: none;
  }
}

/* .header-region-content
----------------------------------------------- */
.header-region-content {
  position: absolute;
  top: 30px;
  left: 0;
  z-index: 101;
  width: 100%;
  background: rgba(255, 255, 255, .95);
  opacity: 1;
}
.header-region-content ul {
  margin: 0;
  padding: 15px 10px 15px 34px;
  font-size: 1.4rem;
}
.header-region-content li {
  margin-top: 32px;
}
.header-region-content li:first-child {
  margin-top: 0;
}
.header-region-content a {
  color: #777;
  text-decoration: none;
}
.header-region-content a:hover, .header-region-content a:active, .header-region-content a:focus {
  color: #ec6c00;
}
@media only screen and (max-width: 900px) {
  .header-region-content {
    position: static;
    background: #ebebeb;
  }
  .header-region-content ul {
    padding: 14px 15px 13px;
    font-size: 1.2rem;
  }
  .header-region-content li {
    position: relative;
    float: left;
    margin: 0 19px 0 0;
    padding-left: 9px;
    font-weight: bold;
  }
  .header-region-content li::before {
    position: absolute;
    top: .2em;
    left: -3px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #ec6c00;
    border-right: 1px solid #ec6c00;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .header-region-content a {
    color: #777;
  }
}

/* .header-link-list
----------------------------------------------- */
.header-link-list {
  position: absolute;
  top: 3px;
  right: 0;
  margin: 0;
  font-size: 1.3rem;
}
.header-link-list li {
  float: left;
  margin: 0 20px 0 0;
}
.header-link-list li:last-child {
  margin-right: 0;
}
.header-link-list li a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
  text-decoration: none;
}
.header-link-list li a::before {
  position: absolute;
  top: 2px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.header-link-list li a:hover, .header-link-list li a:active, .header-link-list li a:focus {
  text-decoration: underline;
}
.header-link-list li._myhulft a {
  padding-left: 27px;
}
.header-link-list li._myhulft a::before {
  top: -3px;
  left: 0;
  width: 19px;
  height: 19px;
  border: none;
  background-position: -86px -64px;
  background-size: 147px auto;
  -webkit-transform: none;
  transform: none;
}
@media only screen and (max-width: 900px) {
  .header-link-list {
    position: static;
  }
  .header-link-list li {
    box-sizing: border-box;
    margin: 0;
    width: 50%;
    border-bottom: 1px solid #ccc;
  }
  .header-link-list li:nth-child(2n+1) {
    clear: both;
    border-right: 1px solid #ccc;
  }
  .header-link-list li a {
    display: block;
    padding: 12px 30px 12px 15px;
  }
  .header-link-list li a::before {
    display: none;
  }
  .header-link-list li a::after {
    position: absolute;
    top: 50%;
    right: 17px;
    margin: -5px 0 0;
    width: 6px;
    height: 6px;
    border: 1px solid #ec6c00;
    border-bottom: transparent;
    border-left: transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .header-link-list li._myhulft a {
    padding-left: 44px;
  }
  .header-link-list li._myhulft a::before {
    top: 50%;
    left: 15px;
    display: block;
    margin: -10px 0 0;
  }
}

/* ----------------------------------------------------------------
    Global Navigation
----------------------------------------------------------------- */
/* .nav-global
----------------------------------------------- */
.nav-global > ul {
  position: relative;
  margin: 0;
  padding: 0 8px;
}
.nav-global > ul > li {
  float: left;
  font-size: 1.47rem;
}
.nav-global > ul > li > a {
  position: relative;
  display: inline-block;
  padding: 17px 15px;
  color: #555;
  text-decoration: none;
  letter-spacing: .09em;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.nav-global > ul > li > a:hover, .nav-global > ul > li > a:active, .nav-global > ul > li > a:focus {
  background: #ec6c00;
  color: #fff;
}
.nav-global > ul > li.is-current > a {
  color: #ec6c00;
}
.nav-global > ul > li.is-current > a b {
  font-weight: normal;
}
.nav-global > ul > li.is-current > a:hover, .nav-global > ul > li.is-current > a:active, .nav-global > ul > li.is-current > a:focus {
  color: #fff;
}

@media only screen and (max-width: 900px) {
  .nav-global > ul {
    padding: 0;
  }
  .nav-global > ul > li {
    float: none;
    border-bottom: 1px solid #ccc;
    font-size: 1.2rem;
  }
  .nav-global > ul > li > a {
    display: block;
    padding: 14px 34px 13px 15px;
  }
  .nav-global > ul > li > a::after {
    position: absolute;
    top: 50%;
    right: 17px;
    margin: -5px 0 0;
    width: 6px;
    height: 6px;
    border: 1px solid #ec6c00;
    border-bottom: transparent;
    border-left: transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

/* .nav-global-btn
----------------------------------------------- */
.nav-global-btn > a, .nav-global-btn > button {
  position: relative;
  display: inline-block;
  padding: 17px 15px 17px 35px;
  border: none;
  background: none;
  color: #555;
  text-decoration: none;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.nav-global-btn > a::before, .nav-global-btn > button::before {
  position: absolute;
  top: 50%;
  left: 16px;
  margin-top: -5px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.nav-global-btn > a:hover, .nav-global-btn > a:active, .nav-global-btn > a:focus, .nav-global-btn > button:hover, .nav-global-btn > button:active, .nav-global-btn > button:focus {
  background: #ec6c00;
  color: #fff;
}
.nav-global-btn > a:hover::before, .nav-global-btn > a:active::before, .nav-global-btn > a:focus::before, .nav-global-btn > button:hover::before, .nav-global-btn > button:active::before, .nav-global-btn > button:focus::before {
  border-color: #fff;
}

.nav-global > ul > li.is-current .nav-global-btn > a, .nav-global > ul > li.is-current .nav-global-btn > button {
  color: #ec6c00;
}
.nav-global > ul > li.is-current .nav-global-btn > a b, .nav-global > ul > li.is-current .nav-global-btn > button b {
  font-weight: normal;
}
.nav-global > ul > li.is-current .nav-global-btn > a:hover, .nav-global > ul > li.is-current .nav-global-btn > a:active, .nav-global > ul > li.is-current .nav-global-btn > a:focus, .nav-global > ul > li.is-current .nav-global-btn > button:hover, .nav-global > ul > li.is-current .nav-global-btn > button:active, .nav-global > ul > li.is-current .nav-global-btn > button:focus {
  color: #fff;
}

@media only screen and (max-width: 900px) {
  .nav-global-btn > a, .nav-global-btn > button {
    display: block;
    padding: 14px 34px 13px 15px;
  }
  .nav-global-btn > a::before, .nav-global-btn > button::before {
    display: none;
  }
  .nav-global-btn > a::after, .nav-global-btn > button::after {
    position: absolute;
    top: 50%;
    right: 17px;
    margin: -5px 0 0;
    width: 6px;
    height: 6px;
    border: 1px solid #ec6c00;
    border-bottom: transparent;
    border-left: transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

/* .nav-global-content
----------------------------------------------- */
.nav-global-content {
  position: absolute;
  top: 52px;
  left: 0;
  z-index: 100;
  box-sizing: border-box;
  padding: 30px;
  width: 100%;
  background: #fff;
}

/* .nav-global-hdg
----------------------------------------------- */
.nav-global-hdg {
  margin: 0 0 25px;
  padding: 0 0 20px;
  border-bottom: 1px solid #d7d9d9;
  font-weight: bold;
  font-size: 2rem;
}
.nav-global-hdg > a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
  text-decoration: none;
}
.nav-global-hdg > a::before {
  position: absolute;
  top: 6px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.nav-global-hdg > a:hover, .nav-global-hdg > a:active, .nav-global-hdg > a:focus {
  text-decoration: underline;
}

/* .nav-global-grid
----------------------------------------------- */
.nav-global-grid {
  margin-left: -3.57143%;
}
.nav-global-grid > .grid-col {
  margin-left: 3.44828%;
  width: 29.88506%;
}
.nav-global-grid > .grid-col:nth-child(3n+1) {
  clear: both;
}
.nav-global-grid > .grid-col {
  float: left;
}
.nav-global-grid > .grid-col > :last-child {
  margin-bottom: 0;
}

/* .nav-global-link-list
----------------------------------------------- */
.nav-global-link-list {
  line-height: 1.5;
}
.nav-global-link-list > li {
  margin: 0 0 30px;
}
.nav-global-link-list > li > a {
  font-weight: bold;
  font-size: 1.6rem;
}
.nav-global-link-list > li > b {
  color: #ec6c00;
  font-weight: bold;
  font-size: 1.6rem;
}
.nav-global-link-list > li > p {
  margin: 10px 0 0;
  color: #777;
  font-size: 1.2rem;
}
.nav-global-link-list > li > ul {
  margin: 10px 0 0 20px;
  font-size: 1.4rem;
}
.nav-global-link-list > li > ul > li {
  margin: 7px 0 0;
}
.nav-global-link-list a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
  text-decoration: none;
}
.nav-global-link-list a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.nav-global-link-list a:hover, .nav-global-link-list a:active, .nav-global-link-list a:focus {
  text-decoration: underline;
}

/* ----------------------------------------------------------------
    Contents
----------------------------------------------------------------- */
/* .topic-path
----------------------------------------------- */
.topic-path {
  background: #f5f5f5;
}

/* .topic-path-inner
----------------------------------------------- */
.topic-path-inner {
  margin: 0 auto;
  padding: 6px 0;
  max-width: 900px;
  text-align: left;
  font-size: 1.2rem;
}
@media only screen and (max-width: 860px) {
  .topic-path-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .topic-path-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.topic-path-inner li {
  position: relative;
  float: left;
}
.topic-path-inner li::before {
  position: relative;
  top: -1px;
  display: inline-block;
  margin: 0 15px;
  color: #444;
  content: '\003e';
}
.topic-path-inner li:first-child::before {
  content: none;
}
.topic-path-inner li b {
  color: #434343;
}
.topic-path-inner li a {
  color: #434343;
}
.topic-path-inner li a:hover, .topic-path-inner li a:active, .topic-path-inner li a:focus {
  text-decoration: none;
}

/* ----------------------------------------------------------------
    Local Navigation
----------------------------------------------------------------- */
.local-panel {
  padding: 15px 20px 20px;
  background: #f5f5f5;
}
.local-panel > :last-child {
  margin-bottom: 0;
}
.local-panel > .local-hdg {
  margin: 0 0 22px 0;
  border-bottom: 2px solid #d7d9d9;
  font-size: 1.6rem;
}
.local-panel > .local-hdg > a {
  position: relative;
  display: inline-block;
  padding: 0 0 13px 15px;
  text-decoration: none;
}
.local-panel > .local-hdg > a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.local-panel > .local-hdg > a:hover, .local-panel > .local-hdg > a:active, .local-panel > .local-hdg > a:focus {
  text-decoration: underline;
}
.local-panel > .local-nav {
  margin-top: -15px;
}
.local-panel > .local-nav > li {
  position: relative;
  float: left;
  margin: 15px 20px 0 0;
  padding: 0 22px 0 0;
}
.local-panel > .local-nav > li::after {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -8px 0 0;
  width: 2px;
  height: 15px;
  background: #d7d9d9;
}
.local-panel > .local-nav > li > a {
  text-decoration: none;
}
.local-panel > .local-nav > li > a:hover, .local-panel > .local-nav > li > a:active, .local-panel > .local-nav > li > a:focus {
  text-decoration: underline;
}
.local-panel > .local-nav > li.is-current > a {
  color: #777;
}
.local-panel > .local-nav > li.is-current > a:hover, .local-panel > .local-nav > li.is-current > a:active, .local-panel > .local-nav > li.is-current > a:focus {
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .local-panel > .local-hdg {
    font-size: 1.2rem;
  }
}

/* ----------------------------------------------------------------
    Footer
----------------------------------------------------------------- */
/* .footer-inner
----------------------------------------------- */
.footer-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
}
.footer-inner > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 860px) {
  .footer-inner {
    padding: 0 15px;
    width: auto;
  }
}
@media only screen and (max-width: 767px) {
  .footer-group .footer-inner {
    padding: 0;
  }
}

/* .footer-nav-top
----------------------------------------------- */
.footer-nav-top {
  margin: 0 auto 27px;
  max-width: 900px;
  text-align: right;
  line-height: 1;
}
.footer-nav-top a {
  position: relative;
  display: inline-block;
  overflow: hidden;
  box-sizing: border-box;
  padding: 5px;
  width: 52px;
  height: 48px;
  background: #777;
  opacity: .7;
}
.footer-nav-top a::before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -3px 0 0 -7px;
  width: 12px;
  height: 12px;
  border: 2px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
}
.footer-nav-top a span {
  color: transparent;
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .footer-nav-top {
    margin-bottom: 12px;
    padding: 0 15px;
  }
  .footer-nav-top a {
    width: 26px;
    height: 24px;
  }
  .footer-nav-top a::before {
    margin: -2px 0 0 -4px;
    width: 7px;
    height: 7px;
    border-width: 1px;
  }
}

/* .footer-group
----------------------------------------------- */
.footer-group {
  padding: 47px 0;
  background: #555;
}
@media only screen and (max-width: 767px) {
  .footer-group {
    padding: 0;
    border-bottom: 1px solid #b1b1b1;
  }
}

/* .footer-group-02
----------------------------------------------- */
.footer-group-02 {
  padding: 24px 0 23px;
  background: #333;
}
@media only screen and (max-width: 767px) {
  .footer-group-02 {
    padding: 20px 0;
  }
}

/* .footer-group-03
----------------------------------------------- */
.footer-group-03 {
  padding: 10px 0 9px;
  background: #f5f5f5;
}

/* .footer-nav-inner
----------------------------------------------- */
.footer-nav-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
}
.footer-nav-inner > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 860px) {
  .footer-nav-inner {
    padding: 0 15px;
    width: auto;
  }
}
@media only screen and (max-width: 767px) {
  .footer-nav-inner {
    padding: 0;
  }
  .footer-nav-02 .footer-nav-inner {
    padding: 0 15px;
  }
}

/* .footer-grid
----------------------------------------------- */
.footer-grid {
  margin-left: -2.33333%;
}
.footer-grid > .grid-col {
  margin-left: 2.28013%;
  width: 31.0532%;
}
.footer-grid > .grid-col:nth-child(3n+1) {
  clear: both;
}
.footer-grid > .grid-col {
  float: left;
}
.footer-grid > .grid-col > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .footer-grid {
    margin: 0;
  }
  .footer-grid > .grid-col {
    float: none;
    margin: 0;
    width: 100%;
  }
}

/* .footer-link-list
----------------------------------------------- */
.footer-link-list {
  margin: 0 0 20px 0;
}
.footer-link-list > li {
  margin: 0 0 20px;
  font-size: 1.6rem;
}
.footer-link-list > li > :last-child {
  margin-bottom: 0;
}
.footer-link-list > li > ul {
  margin: 0 0 0 19px;
  font-size: 1.4rem;
}
.footer-link-list > li > ul > li {
  margin: 7px 0 0;
}
.footer-link-list a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 19px;
  color: #fff;
  text-decoration: none;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.footer-link-list a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.footer-link-list a:hover, .footer-link-list a:active, .footer-link-list a:focus {
  color: #ec6c00;
}
@media only screen and (max-width: 767px) {
  .footer-link-list > li {
    margin: 0;
    border-top: 1px solid #b1b1b1;
    font-size: 1.4rem;
  }
  .footer-link-list > li > ul {
    display: none;
  }
  .footer-link-list a {
    display: block;
    padding: 8px 37px 8px 30px;
  }
  .footer-link-list a::before {
    top: 50%;
    left: 12px;
    margin-top: -5px;
  }
  .footer-link-list a .icon-blank {
    position: absolute;
    top: 50%;
    right: 10px;
    margin: -8px 0 0;
  }
}

/* .footer-link-list-02
----------------------------------------------- */
.footer-link-list-02 {
  margin: -5px 0 15px 0;
  text-align: center;
  letter-spacing: -.4em;
}
.footer-link-list-02 li {
  position: relative;
  display: inline-block;
  margin: 5px 10px 0 0;
  padding: 0 10px 0 0;
  letter-spacing: normal;
}
.footer-link-list-02 li::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 14px;
  background: #fff;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.footer-link-list-02 li:last-child {
  margin-right: 0;
  padding-right: 0;
}
.footer-link-list-02 li:last-child::after {
  display: none;
}
.footer-link-list-02 li a {
  color: #fff;
  text-decoration: none;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.footer-link-list-02 li a:hover, .footer-link-list-02 li a:active, .footer-link-list-02 li a:focus {
  color: #ec6c00;
}
@media only screen and (max-width: 767px) {
  .footer-link-list-02 {
    margin: -15px 0 15px -3.44828%;
    text-align: left;
  }
  .footer-link-list-02 li {
    float: left;
    margin: 15px 0 0 3.33333%;
    padding: 0;
    width: 46.66667%;
  }
  .footer-link-list-02 li::after {
    display: none;
  }
  .footer-link-list-02 li:nth-child(2n+1) {
    clear: both;
  }
}

/* .footer-copyright
----------------------------------------------- */
.footer-copyright {
  color: #555;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .footer-copyright {
    font-size: .9rem;
  }
}

/* ----------------------------------------------------------------
    Heading
----------------------------------------------------------------- */
/* 見出しのベーススタイル
----------------------------------------------- */
.hdg-l2, .hdg-l3, .hdg-l4, .hdg-l5, .hdg-l6 {
  color: #555;
}
.hdg-l2 a, .hdg-l3 a, .hdg-l4 a, .hdg-l5 a, .hdg-l6 a {
  position: relative;
  display: inline-block;
  color: #555;
  text-decoration: none;
}
.hdg-l2 a::before, .hdg-l3 a::before, .hdg-l4 a::before, .hdg-l5 a::before, .hdg-l6 a::before {
  position: absolute;
  left: -5px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.hdg-l2 a:hover, .hdg-l3 a:hover, .hdg-l4 a:hover, .hdg-l5 a:hover, .hdg-l6 a:hover, .hdg-l2 a:active, .hdg-l3 a:active, .hdg-l4 a:active, .hdg-l5 a:active, .hdg-l6 a:active, .hdg-l2 a:focus, .hdg-l3 a:focus, .hdg-l4 a:focus, .hdg-l5 a:focus, .hdg-l6 a:focus {
  color: #ec6c00;
}

/* .hdg-l1
----------------------------------------------- */
.hdg-l1 {
  padding: 50px 0;
}
.hdg-l1 .hdg-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .hdg-l1 .hdg-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .hdg-l1 .hdg-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.hdg-l1 .hdg-inner > :last-child {
  margin-bottom: 0;
}
.hdg-l1 .hdg-media {
  margin: 0 0 30px;
}
.hdg-l1 .hdg-media .hdg-media-col, .hdg-l1 .hdg-media .hdg-media-item {
  width: 48.88889%;
}
.hdg-l1 .hdg-media .hdg-media-col {
  float: left;
}
.hdg-l1 .hdg-media .hdg-media-col > :last-child {
  margin-bottom: 0;
}
.hdg-l1 .hdg-media .hdg-media-item {
  float: right;
  margin-left: 2.22222%;
}
.hdg-l1 .hdg-main {
  margin: 0 0 30px;
}
.hdg-l1 .hdg-txt-lead {
  color: #fff;
  font-size: 1.8rem;
}
.hdg-l1 .hdg-txt-lead b {
  font-weight: normal;
}
.hdg-l1 .hdg-btn a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 18px 38px 16px;
  border: 1px solid #fff;
  color: #fff;
  text-decoration: none;
  font-size: 1.6rem;
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
}
.hdg-l1 .hdg-btn a::before {
  position: absolute;
  top: 50%;
  left: 16px;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.hdg-l1 .hdg-btn a:hover, .hdg-l1 .hdg-btn a:active, .hdg-l1 .hdg-btn a:focus {
  background-color: rgba(255, 255, 255, .8);
  color: #ec6c00;
}
.hdg-l1 .hdg-btn a:hover::before, .hdg-l1 .hdg-btn a:active::before, .hdg-l1 .hdg-btn a:focus::before {
  border-color: #ec6c00;
}
@media only screen and (max-width: 767px) {
  .hdg-l1 {
    padding: 30px 0;
  }
  .hdg-l1 .hdg-media .hdg-media-col, .hdg-l1 .hdg-media .hdg-media-item {
    float: none;
    width: 100%;
  }
  .hdg-l1 .hdg-media .hdg-media-item {
    margin: 30px 0 0;
  }
  .hdg-l1 .hdg-media .hdg-media-item img {
    width: 100%;
  }
  .hdg-l1 .hdg-txt-lead {
    font-size: 1.6rem;
  }
  .hdg-l1 .hdg-btn a {
    width: 100%;
    font-size: 1.4rem;
  }
}

/* .hdg-l1-02
----------------------------------------------- */
.hdg-l1-02 {
  padding: 30px 0;
}
.hdg-l1-02 .hdg-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .hdg-l1-02 .hdg-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .hdg-l1-02 .hdg-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.hdg-l1-02 .hdg-inner > :last-child {
  margin-bottom: 0;
}
.hdg-l1-02 .hdg-main {
  margin: 0 0 20px;
}
.hdg-l1-02 .hdg-main img {
  height: 75px;
}
.hdg-l1-02 .hdg-txt-lead {
  color: #fff;
}
.hdg-l1-02 .hdg-txt-lead b {
  font-weight: normal;
}
.hdg-l1-02._hulft-webconnect .hdg-main img, .hdg-l1-02._hulft-webft .hdg-main img, .hdg-l1-02._dataspider .hdg-main img, .hdg-l1-02._dataspider-tableau .hdg-main img {
  height: auto;
}
@media only screen and (max-width: 767px) {
  .hdg-l1-02 .hdg-main img {
    height: auto;
  }
}

/* .hdg-l1, .hdg-l1-02（色設定）
----------------------------------------------- */
.hdg-l1._hulft-8, .hdg-l1-02._hulft-8 {
  background: #eda53f;
}

.hdg-l1._hulft-script, .hdg-l1-02._hulft-script {
  background: #eea841;
}

.hdg-l1._hulft-hub, .hdg-l1-02._hulft-hub {
  background: #6c9bd2;
}

.hdg-l1._hulft-cloud, .hdg-l1-02._hulft-cloud {
  background: #65bcda;
}

.hdg-l1._hulft-webft, .hdg-l1-02._hulft-webft {
  background: #65bcda;
}

.hdg-l1._hulft-webconnect, .hdg-l1-02._hulft-webconnect {
  background: #efb8c9;
}

.hdg-l1._hulft-iot, .hdg-l1-02._hulft-iot {
  background: #eea841;
}

.hdg-l1._hulft-san, .hdg-l1-02._hulft-san {
  background: #a674b0;
}

.hdg-l1._datamagic, .hdg-l1-02._datamagic {
  background: #85a3d0;
}

.hdg-l1._dataspider, .hdg-l1-02._dataspider {
  background: #f29a76;
}

.hdg-l1._dataspider-tableau, .hdg-l1-02._dataspider-tableau {
  background: #f29a76;
}

.hdg-l1._hdc-edi, .hdg-l1-02._hdc-edi {
  background: #888;
}

.hdg-l1._signalert, .hdg-l1-02._signalert {
  background: #f29a76;
}

/* .hdg-l1-03
----------------------------------------------- */
.hdg-l1-03 {
  margin: 60px auto 0;
  max-width: 900px;
  color: #555;
  text-align: center;
  font-weight: normal;
  font-size: 4.8rem;
  line-height: 1.5;
}
@media only screen and (max-width: 900px) {
  .hdg-l1-03 {
    padding: 0 15px;
  }
}
@media only screen and (max-width: 767px) {
  .hdg-l1-03 {
    font-size: 2.4rem;
  }
}

/* .hdg-l1-04
----------------------------------------------- */
.hdg-l1-04 {
  margin: 60px auto 0;
  max-width: 900px;
  font-size: 10px;
}

/* .hdg-l2
----------------------------------------------- */
.hdg-l2 {
  margin: 50px 0 40px;
  padding: 0 0 3px;
  border-bottom: 4px solid #777;
  font-size: 3rem;
}
.hdg-l2 img {
  position: relative;
  top: -2px;
  vertical-align: middle;
}
.hdg-l2 a {
  padding: 0 0 0 20px;
}
.hdg-l2 a::before {
  top: 15px;
  width: 10px;
  height: 10px;
}
.grid-col .hdg-l2 {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  .hdg-l2 {
    font-size: 2rem;
  }
  .hdg-l2 a::before {
    top: 10px;
    left: -3px;
    width: 6px;
    height: 6px;
  }
}

/* .hdg-l3
----------------------------------------------- */
.hdg-l3 {
  position: relative;
  margin: 40px 0 30px;
  padding: 5px 0 1px 22px;
  font-size: 2.4rem;
}
.hdg-l3::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
  background-color: #ec6c00;
  background-image: linear-gradient(to bottom,#ec6c00 0%, #ec6c00 50%, #777 51%, #777 100%);
}
.hdg-l3 a {
  padding: 0 0 0 20px;
}
.hdg-l3 a::before {
  top: 11px;
  width: 10px;
  height: 10px;
}
.grid-col .hdg-l3 {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .hdg-l3 {
    font-size: 1.6rem;
  }
  .hdg-l3 a::before {
    top: 8px;
    left: -3px;
    width: 6px;
    height: 6px;
  }
}

/* .hdg-l4
----------------------------------------------- */
.hdg-l4 {
  margin: 40px 0 30px;
  padding: 0 0 12px 0;
  border-bottom: 1px solid #b1b1b1;
  font-size: 2rem;
}
.hdg-l4 a {
  padding: 0 0 0 20px;
}
.hdg-l4 a::before {
  top: 11px;
  width: 6px;
  height: 6px;
}
.grid-col .hdg-l4 {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .hdg-l4 {
    font-size: 1.5rem;
  }
  .hdg-l4 a::before {
    top: 7px;
  }
}

/* .hdg-l5
----------------------------------------------- */
.hdg-l5 {
  margin: 30px 0 15px;
  padding: 0 0 0 14px;
  border-left: 2px solid #777;
  font-size: 1.6rem;
}
.hdg-l5 a {
  padding: 0 0 0 14px;
}
.hdg-l5 a::before {
  top: 8px;
  width: 6px;
  height: 6px;
}
@media only screen and (max-width: 767px) {
  .hdg-l5 {
    font-size: 1.2rem;
  }
  .hdg-l5 a::before {
    top: 5px;
  }
}

/* .hdg-l6
----------------------------------------------- */
.hdg-l6 {
  margin: 20px 0 15px;
  font-size: 1.4rem;
}
.hdg-l6 a {
  padding: 0 0 0 14px;
}
.hdg-l6 a::before {
  top: 7px;
  width: 6px;
  height: 6px;
}
@media only screen and (max-width: 767px) {
  .hdg-l6 {
    font-size: 1.2rem;
  }
  .hdg-l6 a::before {
    top: 5px;
  }
}

/* .hdg-icon
----------------------------------------------- */
[class*='hdg-l'] .hdg-icon {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 5px 10px 3px;
  min-width: 90px;
  background: #3d4fb3;
  color: #fff;
  text-align: center;
  font-weight: normal;
  font-size: 1.3rem;
  line-height: 1;
}

/* .hdg-l1-05
----------------------------------------------- */
.hdg-l1-05 {
  position: relative;
  padding: 87px 0;
  min-height: 132px;
  background: #f5a000;
}
.hdg-l1-05 .hdg-inner {
  margin: 0 auto;
  max-width: 740px;
}
.hdg-l1-05 .hdg-inner > :last-child {
  margin-bottom: 0;
}
.hdg-l1-05 .hdg-main {
  margin: 0 0 46px;
}
.hdg-l1-05 .hdg-txt-lead {
  color: #fff;
  font-size: 1.8rem;
}
.hdg-l1-05 .hdg-txt-lead b {
  font-weight: normal;
}
.hdg-l1-05 .hdg-btn a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 18px 38px 16px;
  border: 1px solid #fff;
  color: #fff;
  text-decoration: none;
  font-size: 1.6rem;
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
}
.hdg-l1-05 .hdg-btn a::before {
  position: absolute;
  top: 50%;
  left: 16px;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.hdg-l1-05 .hdg-btn a:hover, .hdg-l1-05 .hdg-btn a:active, .hdg-l1-05 .hdg-btn a:focus {
  background-color: rgba(255, 255, 255, .8);
  color: #ec6c00;
}
.hdg-l1-05 .hdg-btn a:hover::before, .hdg-l1-05 .hdg-btn a:active::before, .hdg-l1-05 .hdg-btn a:focus::before {
  border-color: #ec6c00;
}
.hdg-l1-05::before, .hdg-l1-05::after {
  position: absolute;
  background-repeat: no-repeat;
  content: '';
}
.hdg-l1-05::before {
  top: 0;
  left: 0;
  width: 301px;
  height: 208px;
  background: url(/application/themes/hulftglobaljp/images/background/software-hdg-bg-01.png);
}
.hdg-l1-05::after {
  right: 0;
  bottom: 0;
  width: 433px;
  height: 245px;
  background: url(/application/themes/hulftglobaljp/images/background/software-hdg-bg-02.png);
}
@media only screen and (max-width: 1020px) {
  .hdg-l1-05 .hdg-inner {
    max-width: 700px;
  }
}
@media only screen and (max-width: 920px) {
  .hdg-l1-05 .hdg-inner {
    max-width: 680px;
  }
}
@media only screen and (max-width: 900px) {
  .hdg-l1-05 {
    padding: 125px 10px;
    min-height: 114px;
  }
  .hdg-l1-05 .hdg-inner {
    text-align: center;
  }
  .hdg-l1-05 .hdg-main {
    margin-bottom: 26px;
  }
  .hdg-l1-05::before, .hdg-l1-05::after {
    background-size: cover;
  }
  .hdg-l1-05::before {
    width: 149px;
    height: 104px;
  }
  .hdg-l1-05::after {
    width: 217px;
    height: 124px;
  }
}
@media only screen and (max-width: 767px) {
  .hdg-l1-05 .hdg-media .hdg-media-col, .hdg-l1-05 .hdg-media .hdg-media-item {
    float: none;
    width: 100%;
  }
  .hdg-l1-05 .hdg-media .hdg-media-item {
    margin: 30px 0 0;
  }
  .hdg-l1-05 .hdg-media .hdg-media-item img {
    width: 100%;
  }
  .hdg-l1-05 .hdg-txt-lead {
    font-size: 1.6rem;
  }
  .hdg-l1-05 .hdg-btn a {
    width: 100%;
    font-size: 1.4rem;
  }
}

/* .hdg-l1-06
----------------------------------------------- */
.hdg-l1-06 {
  padding: 30px 0;
  background: #f5a000;
}
.hdg-l1-06 .hdg-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .hdg-l1-06 .hdg-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .hdg-l1-06 .hdg-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.hdg-l1-06 .hdg-inner > :last-child {
  margin-bottom: 0;
}
.hdg-l1-06 .hdg-main {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  margin: 0 0 20px;

  -webkit-align-items: center;
  align-items: center;
}
.hdg-l1-06 .hdg-img {
  -ms-flex-negative: 0;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.hdg-l1-06 .hdg-txt {
  margin-top: auto;
  margin-left: 10px;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
}
.hdg-l1-06 .hdg-txt-lead {
  color: #fff;
}
.hdg-l1-06 .hdg-txt-lead b {
  font-weight: normal;
}
.hdg-l1-06._hulft-webconnect .hdg-main img, .hdg-l1-06._hulft-webft .hdg-main img, .hdg-l1-06._dataspider .hdg-main img, .hdg-l1-06._dataspider-tableau .hdg-main img {
  height: auto;
}
@media only screen and (max-width: 767px) {
  .hdg-l1-06 .hdg-main img {
    height: auto;
  }
}

/* ----------------------------------------------------------------
    Texts
----------------------------------------------------------------- */
/* .txt-strong
----------------------------------------------- */
.txt-strong {
  color: #d22626;
}

/* .txt-lead
----------------------------------------------- */
.txt-lead {
  font-size: 2.6rem;
}
.txt-lead > b {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .txt-lead {
    font-size: 1.8rem;
  }
  .txt-lead > b {
    font-size: 1.2rem;
  }
}

/* .txt-conclusion
----------------------------------------------- */
.txt-conclusion > strong {
  position: relative;
  display: inline-block;
  padding: 0 0 0 50px;
  color: #d22626;
  font-size: 2rem;
}
.txt-conclusion > strong::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 26px;
  background-position: 0 -64px;
  background-size: 147px auto;
}

/* .txt-convo
----------------------------------------------- */
.txt-convo {
  position: relative;
  padding-left: 95px;
  color: #777;
  font-weight: bold;
}
.txt-convo::before {
  position: absolute;
  top: .7em;
  left: 0;
  width: 80px;
  height: 1px;
  background-color: #777;
}
@media only screen and (max-width: 767px) {
  .txt-convo {
    padding-left: 50px;
  }
  .txt-convo::before {
    width: 35px;
  }
}

/* .txt-convo-02
----------------------------------------------- */
.txt-convo-02 > .txt-speaker {
  color: #ec6c00;
}
.txt-convo-02 > .txt-speaker > span {
  color: #555;
  font-weight: normal;
  font-size: 1.2rem;
}

@media only screen and (max-width: 767px) {
  .txt-convo-02 .txt-name {
    font-size: 1.4rem;
  }
}

/* .txt-estimate
----------------------------------------------- */
.txt-estimate {
  margin: 0 0 30px;
  padding: 10px 20px;
  background: #f5d3d3;
}
.txt-estimate > :last-child {
  margin-bottom: 0;
}
.txt-estimate .txt-inner {
  float: right;
}
.txt-estimate .txt-inner dt, .txt-estimate .txt-inner dd {
  display: table-cell;
  vertical-align: middle;
}
.txt-estimate .txt-inner dt {
  padding: 0 13px 0 0;
  color: #555;
}
.txt-estimate .txt-inner dd span {
  display: inline-block;
}
.txt-estimate .txt-price {
  color: #d22626;
  font-weight: bold;
  font-size: 3rem;
}
.txt-estimate .txt-tax {
  padding: 0 0 6px;
  color: #d22626;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .txt-estimate {
    padding: 10px 15px;
  }
  .txt-estimate .txt-inner {
    float: none;
  }
  .txt-estimate .txt-inner dt, .txt-estimate .txt-inner dd {
    display: block;
  }
  .txt-estimate .txt-inner dt {
    padding: 0;
  }
  .txt-estimate .txt-inner dd {
    text-align: right;
  }
  .txt-estimate .txt-price {
    font-size: 2rem;
  }
  .txt-estimate .txt-tax {
    padding: 0;
    font-size: 1.2rem;
  }
}

/* .txt-tel
----------------------------------------------- */
.txt-tel img {
  margin: -13px 8px 0 0;
  vertical-align: middle;
}

.txt-tel span {
  color: #555;
  font-weight: normal;
  font-size: 3rem;
}

@media only screen and (max-width: 767px) {
  .txt-tel img {
    margin-top: -6px;
  }
  .txt-tel span {
    font-size: 2rem;
  }
}

/* ----------------------------------------------------------------
    Icon
----------------------------------------------------------------- */
.icon-blank, .icon-pdf, .icon-doc, .icon-xls, .icon-modal, .icon-zip, .icon-new, .icon-mark {
  position: relative;
  display: inline-block;
}

/* .icon-blank
----------------------------------------------- */
.icon-blank {
  top: -5px;
  margin: 0 2px;
}
.header-link-list .icon-blank {
  top: -3px;
}
.footer-link-list .icon-blank {
  top: -8px;
}
@media only screen and (max-width: 767px) {
  .icon-blank {
    top: -4px;
  }
  .header-link-list .icon-blank {
    top: -3px;
  }
}

/* .icon-pdf, icon-doc
----------------------------------------------- */
.icon-pdf, .icon-doc {
  top: -4px;
  margin: 0 2px;
}
@media only screen and (max-width: 767px) {
  .icon-pdf, .icon-doc {
    top: -3px;
  }
}

/* .icon-xls
----------------------------------------------- */
.icon-xls {
  top: -4px;
  margin: 0 2px;
}
@media only screen and (max-width: 767px) {
  .icon-xls {
    top: -3px;
  }
}

/* .icon-modal
----------------------------------------------- */
.icon-modal {
  top: -4px;
}

/* .icon-zip
----------------------------------------------- */
.icon-zip {
  top: -3px;
  margin: 0 2px;
}
@media only screen and (max-width: 767px) {
  .icon-zip {
    top: -1px;
  }
}

/* .icon-new
----------------------------------------------- */
.icon-new {
  top: -1px;
  padding: 2px 5px;
  background: #ec6c00;
  color: #fff;
  font-weight: normal;
  font-size: 1.4rem;
  line-height: 1;
}

/* .icon-package
----------------------------------------------- */
.icon-package {
  display: inline-block;
  padding: 4px 13px 3px;
  border-radius: 4px;
  color: #555;
  font-size: 1.4rem;
  line-height: 1;
}
.icon-package._ap {
  background: #d1e9fb;
}
.icon-package._bp {
  background: #dbefdb;
}
.icon-package._se {
  background: #ebd3ef;
}

/* .icon-mark
----------------------------------------------- */
.icon-mark {
  overflow: hidden;
  height: 1.2em;
  color: transparent;
}
.icon-mark::before {
  position: absolute;
  top: 0;
  left: 0;
  color: #555;
}
.icon-mark._circle, .icon-mark._triangle, .icon-mark._cross {
  width: 1em;
}
.icon-mark._circle::before {
  content: '\0025cb';
}
.icon-mark._triangle::before {
  content: '\0025b3';
}
.icon-mark._cross::before {
  content: '\00d7';
}

/* ----------------------------------------------------------------
    Grid
----------------------------------------------------------------- */
/* .grid[data-col="2"]
----------------------------------------------- */
.grid[data-col='2'] {
  margin-left: -2.22222%;
}
.grid[data-col='2'] > .grid-col {
  margin-left: 2.17391%;
  width: 47.82609%;
}
.grid[data-col='2'] > .grid-col:nth-child(2n+1) {
  clear: both;
}

/* .grid[data-col="3"]
----------------------------------------------- */
.grid[data-col='3'] {
  margin-left: -2.33333%;
}
.grid[data-col='3'] > .grid-col {
  margin-left: 2.28013%;
  width: 31.0532%;
}
.grid[data-col='3'] > .grid-col:nth-child(3n+1) {
  clear: both;
}

/* .grid[data-col="4"]
----------------------------------------------- */
.grid[data-col='4'] {
  margin-left: -2.22222%;
}
.grid[data-col='4'] > .grid-col {
  margin-left: 2.17391%;
  width: 22.82609%;
}
.grid[data-col='4'] > .grid-col:nth-child(4n+1) {
  clear: both;
}

/* .grid[data-col="5"]
----------------------------------------------- */
.grid[data-col='5'] {
  margin-left: -2.22222%;
}
.grid[data-col='5'] > .grid-col {
  margin-left: 2.17391%;
  width: 17.82609%;
}
.grid[data-col='5'] > .grid-col:nth-child(5n+1) {
  clear: both;
}

/* .grid
----------------------------------------------- */
.grid {
  margin-top: -30px;
  margin-bottom: 30px;
}
.grid > .grid-col {
  float: left;
  box-sizing: border-box;
  margin-top: 30px;
  word-break: break-all;
}
.grid > .grid-col > :last-child {
  margin-bottom: 0;
}
.grid.link-list, .grid.lyt-btn-list {
  margin-top: -12px;
}
.grid.link-list > .grid-col, .grid.lyt-btn-list > .grid-col {
  margin-top: 12px;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .grid[data-break='true'] {
    margin-top: 0;
    margin-bottom: 30px;
    margin-left: 0;
  }
  .grid[data-break='true'] > .grid-col {
    float: none;
    margin-top: 0;
    margin-bottom: 30px;
    margin-left: 0;
    width: auto;
  }
  .grid[data-break='true'] > .grid-col:last-child {
    margin-bottom: 0;
  }
  .grid[data-break='true'] > .grid-col .media-item img {
    width: 100%;
  }
  .panel-profile .grid[data-break='true'] > .grid-col .media-item img {
    width: 55% !important;
  }
  .grid[data-break='true'].link-list > .grid-col, .grid[data-break='true'].lyt-btn-list > .grid-col {
    margin-bottom: 12px;
  }
  .grid[data-break='true'].link-list > .grid-col:last-child, .grid[data-break='true'].lyt-btn-list > .grid-col:last-child {
    margin-bottom: 0;
  }
}

/* ----------------------------------------------------------------
    SISCO追加分
----------------------------------------------------------------- */
/* .flex-item
----------------------------------------------- */
@media only screen and (min-width: 320px) {
  .grid.flex-item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: stretch;

    -webkit-align-items: stretch;
    align-items: stretch;
  }
  .grid.flex-item .grid-col {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .grid.flex-item .bottom-btn {
    margin-top: auto;
  }
}

.grid.flex-item .uni-nav-panel .nav-hdg::before {
  content: none;
}

/* ----------------------------------------------------------------
    List
----------------------------------------------------------------- */
/* .list
----------------------------------------------- */
.list > li {
  position: relative;
  margin: 0 0 12px;
  padding: 0 0 0 16px;
}
.list > li::before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #777;
}
.list > li:last-child {
  margin-bottom: 0;
}
.list > li > :last-child {
  margin-bottom: 0;
}
.list > li p {
  margin-bottom: 12px;
}
.list > li > ul, .list > li ol {
  margin-top: 12px;
}
.list > li > ul > li:last-child, .list > li ol > li:last-child {
  margin-bottom: 0;
}
.list > li > .list > li::before {
  width: 4px;
  height: 4px;
  background: #b9b9b9;
}
.list > li > .list > li:last-child {
  margin-bottom: 0;
}

/* .list-number
----------------------------------------------- */
.list-number {
  counter-reset: number;
}
.list-number > li {
  display: table;
  margin: 0 0 12px;
  counter-increment: number;
}
.list-number > li > :last-child {
  margin-bottom: 0;
}
.list-number > li::before {
  /* 出力結果 -> 'n.' */
  display: table-cell;
  padding: 0 .5em 0 0;
  min-width: 1.5em;
  content: counter(number) '.';
  text-align: right;
}
.list-number > li > ul:not(.list-note), .list-number > li ol {
  margin-top: 12px;
}
.list-number > li > ul:not(.list-note) > li:last-child, .list-number > li ol > li:last-child {
  margin-bottom: 0;
}
.list-number > li > .list > li::before {
  width: 4px;
  height: 4px;
  background: #b9b9b9;
}
.list-number > li p {
  margin-bottom: 15px;
}

/* .list-note
----------------------------------------------- */
.list-note {
  margin: -10px 0 30px;
  font-size: 1.2rem;
}
.list-note > li {
  display: table;
  margin: 0 0 8px;
}
.list-note > li:last-child {
  margin-bottom: 0;
}
.list-note > li > .list-mark, .list-note > li > .list-body {
  display: table-cell;
  vertical-align: top;
}
.list-note > li > .list-mark {
  padding: 0 10px 0 0;
  white-space: nowrap;
}
.list-note > li > .list-body > :last-child {
  margin-bottom: 0;
}
.list-note > li > .list-body p {
  margin-bottom: 8px;
}

/* .list-other
----------------------------------------------- */
.list-other > li {
  display: table;
  margin: 0 0 12px;
}
.list-other > li:last-child {
  margin-bottom: 0;
}
.list-other > li > .list-mark, .list-other > li > .list-body {
  display: table-cell;
  vertical-align: top;
}
.list-other > li > .list-mark {
  padding: 0 5px 0 0;
  white-space: nowrap;
}
.list-other > li > .list-body > :last-child {
  margin-bottom: 0;
}
.list-other > li > .list-body > p, .list-other > li > .list-body ul, .list-other > li > .list-body ol {
  margin-bottom: 12px;
}
.list-other > li > .list-body ul > :last-child, .list-other > li > .list-body ol > :last-child {
  margin-bottom: 0;
}

/* .list-desc
----------------------------------------------- */
.list-desc dt {
  position: relative;
  margin: 20px 0 6px;
  color: #555;
  font-weight: bold;
}
.list-desc dt:first-child {
  margin-top: 0;
}

.list-desc dd > :last-child {
  margin-bottom: 0;
}

.list-desc dd p, .list-desc dd ul, .list-desc dd ol, .list-desc dd dl {
  margin-bottom: 15px;
}

/* .list-feature
----------------------------------------------- */
.list-feature li span {
  display: block;
  padding: 25px 10px 19px;
  background: #f5f5f5;
  color: #555;
  text-align: center;
  font-size: 1.6rem;
}
.list-feature li span img {
  display: block;
  margin: 0 auto 10px;
}

@media only screen and (max-width: 767px) {
  .list-feature li span {
    padding: 15px 10px 9px;
    font-size: 1.2rem;
  }
}

/* .list-info
----------------------------------------------- */
.list-info > li {
  display: table;
  margin: 0 0 20px 0;
  width: 100%;
}
.list-info > li:last-child {
  margin-bottom: 0;
}

.list-info .list-date, .list-info .list-label, .list-info .list-title {
  display: table-cell;
  vertical-align: top;
}

.list-info .list-date {
  padding: 0 10px 0 0;
  width: 8.5em;
  color: #333;
}

.list-info .list-label {
  margin: 0;
  padding: 0 10px 0 0;
  width: 8em;
  letter-spacing: -.4em;
}
.list-info .list-label li {
  position: relative;
  top: -1px;
  display: inline-block;
  box-sizing: border-box;
  margin: 0 10px 0 0;
  padding: 3px 10px 2px;
  min-width: 104px;
  color: #fff;
  text-align: center;
  letter-spacing: normal;
  font-size: 1.2rem;
}
.list-info .list-label li:last-child {
  margin-right: 0;
}
.list-info .list-label li._important {
  background: #dd1717;
}
.list-info .list-label li._product {
  background: #0151af;
}
.list-info .list-label li._press {
  background: #2785e5;
}
.list-info .list-label li._other {
  background: #4bad4f;
}
.list-info .list-label li._seminar {
  background: #ed6d00;
}
.list-info .list-label li._event {
  background: #eda10d;
}
.list-info .list-label li._place {
  background: #666;
}

.list-info .list-title a {
  text-decoration: none;
}
.list-info .list-title a:hover, .list-info .list-title a:active, .list-info .list-title a:focus {
  text-decoration: underline;
}

.list-info._event .list-label {
  width: 12.5em;
}
.list-info._event .list-label li {
  min-width: 80px;
}

@media only screen and (max-width: 767px) {
  .list-info > li {
    display: block;
    margin-bottom: 25px;
  }
  .list-info .list-date, .list-info .list-label {
    display: block;
  }
  .list-info .list-date {
    padding: 0;
    width: auto;
  }
  .list-info .list-label {
    margin: 10px 0 0;
    padding: 0;
    width: auto;
  }
  .list-info .list-title {
    display: block;
    margin: 10px 0 0;
  }
  .list-info._event .list-label {
    width: auto;
  }
}

/* .list-flow
----------------------------------------------- */
.list-flow > li {
  position: relative;
  margin: 0 0 10px 0;
  padding: 0 0 25px 0;
  counter-increment: number-flow;
}
.list-flow > li::before {
  position: absolute;
  top: 20px;
  left: 20px;
  display: block;
  box-sizing: border-box;
  padding: 5px 0 0;
  min-width: 37px;
  min-height: 37px;
  background: #ec6c00;
  color: #fff;
  content: counter(number-flow);
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
}
.list-flow > li::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -21px;
  width: 0;
  height: 0;
  border-top: 15px solid #b1b1b1;
  border-right: 21px solid transparent;
  border-left: 21px solid transparent;
}
.list-flow > li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.list-flow > li:last-child::after {
  display: none;
}
.list-flow > li .list-inner {
  display: table;
  box-sizing: border-box;
  padding: 20px 20px 20px 67px;
  width: 100%;
  background: #f5f5f5;
}
.list-flow > li .list-inner > :last-child {
  margin-bottom: 0;
}
.list-flow > li .list-col, .list-flow > li .list-col-02 {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: top;
}
.list-flow > li .list-col > :last-child, .list-flow > li .list-col-02 > :last-child {
  margin-bottom: 0;
}
.list-flow > li .list-col {
  padding: 0 20px 0 0;
  min-width: 226px;
}
.list-flow > li .list-col-02 {
  width: 100%;
}
.list-flow > li .list-hdg {
  padding: 5px 0 0;
  color: #555;
  font-weight: bold;
  font-size: 1.8rem;
}
.list-flow > li .list-hdg-02 {
  margin: 0 0 12px 0;
  padding: 16px 0 0 0;
  border-top: 1px solid #d7d9d9;
  color: #555;
  font-weight: bold;
  font-size: 1.4rem;
}
.list-flow > li .list-btn {
  margin: 0 0 12px 0;
}

@media only screen and (max-width: 767px) {
  .list-flow > li::before {
    top: 15px;
    left: 15px;
    min-width: 30px;
    min-height: 30px;
    font-size: 1.4rem;
  }
  .list-flow > li .list-inner {
    display: block;
    padding: 15px 15px 15px 60px;
  }
  .list-flow > li .list-inner .list-col, .list-flow > li .list-inner .list-col-02 {
    display: block;
  }
  .list-flow > li .list-inner .list-col {
    padding: 0;
    min-width: 0;
  }
  .list-flow > li .list-inner .list-col-02 {
    margin: 20px 0 0;
  }
  .list-flow > li .list-inner .list-hdg {
    font-size: 1.4rem;
  }
  .list-flow > li .list-inner .list-hdg-02 {
    font-size: 1.2rem;
  }
}

/* ----------------------------------------------------------------
    Link
----------------------------------------------------------------- */
/* .link
----------------------------------------------- */
.ccm-block-page-list-title a, .ccm-block-file a, a.link {
  position: relative;
  display: inline-block;
  padding: 0 0 0 18px;
  text-decoration: none;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.ccm-block-page-list-title a::before, .ccm-block-file a::before, a.link::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.ccm-block-page-list-title a:hover, .ccm-block-page-list-title a:active, .ccm-block-page-list-title a:focus, .ccm-block-file a:hover, .ccm-block-file a:active, .ccm-block-file a:focus, a.link:hover, a.link:active, a.link:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .ccm-block-page-list-title a::before, .ccm-block-file a::before, a.link::before {
    top: 5px;
  }
}

/* .link-list
----------------------------------------------- */
.link-list {
  margin: 0 0 30px;
}
.link-list > li {
  margin: 0 0 12px;
}
.link-list > li > :last-child {
  margin-bottom: 0;
}
.link-list > li > a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 18px;
  text-decoration: none;
}
.link-list > li > a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.link-list > li > a:hover, .link-list > li > a:active, .link-list > li > a:focus {
  text-decoration: underline;
}
.link-list > li:last-child {
  margin-bottom: 0;
}
.link-list > li.is-current > a {
  color: #555;
}
.link-list > li.is-current > a:hover, .link-list > li.is-current > a:active, .link-list > li.is-current > a:focus {
  text-decoration: none;
}
.link-list > li > ul, .link-list > li ol {
  margin: 12px 0 0 18px;
}
@media only screen and (max-width: 767px) {
  .link-list > li > a::before {
    top: 5px;
  }
}

/* ----------------------------------------------------------------
    Button
----------------------------------------------------------------- */
/* ボタンのベーススタイル
----------------------------------------------- */
.btn, .btn-more, .btn-primary, .btn-myhulft, .btn-close, .dialog-close .dialog-btn-close {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  text-align: center;
  text-decoration: none;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}

/* .btn
----------------------------------------------- */
.btn {
  padding: 6px 10px 6px 25px;
  min-width: 165px;
  border: 2px solid #555;
  background: #fff;
  color: #ec6c00;
}
.btn::before {
  position: absolute;
  top: 50%;
  left: 7px;
  margin: -4px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn:hover, .btn:active, .btn:focus {
  border-color: #ec6c00;
  background: #ec6c00;
  color: #fff;
  text-decoration: none;
}
.btn:hover::before, .btn:active::before, .btn:focus::before {
  border-color: #fff;
}
.uni-nav-panel .btn {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .btn {
    min-width: 0;
    width: 100%;
  }
}

/* .btn-more
----------------------------------------------- */
.btn-more {
  padding: 6px 10px 6px 25px;
  min-width: 165px;
  border: 2px solid #555;
  background: #fff;
  color: #ec6c00;
}
.btn-more::before {
  position: absolute;
  top: 50%;
  left: 11px;
  margin: -5px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.btn-more:hover, .btn-more:active, .btn-more:focus {
  border-color: #ec6c00;
  background: #ec6c00;
  color: #fff;
}
.btn-more:hover::before, .btn-more:active::before, .btn-more:focus::before {
  border-color: #fff;
}
@media only screen and (max-width: 767px) {
  .btn-more {
    min-width: 0;
    width: 100%;
  }
}

/* .btn-primary
----------------------------------------------- */
.btn-primary {
  padding: 16px 20px 16px 35px;
  min-width: 286px;
  border: 2px solid #ec6c00;
  background: #ec6c00;
  color: #fff;
  font-size: 1.6rem;
}
.btn-primary::before {
  position: absolute;
  top: 50%;
  left: 16px;
  margin: -4px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn-primary:hover, .btn-primary:active, .btn-primary:focus {
  background: #fff;
  color: #ec6c00;
  text-decoration: none;
}
.btn-primary:hover::before, .btn-primary:active::before, .btn-primary:focus::before {
  border-color: #ec6c00;
}
.btn-primary:visited {
  color: #fff;
}
.btn-primary:visited:hover, .btn-primary:visited:active, .btn-primary:visited:focus {
  color: #ec6c00;
}
.grid-col .btn-primary {
  min-width: 100%;
  width: 100%;
}
.btn-primary._thin {
  padding: 6px 10px 6px 23px;
  min-width: 165px;
  font-size: 1.4rem;
}
.btn-primary._thin::before {
  left: 4px;
}
.nav-page .nav-grid-col-02 .btn-primary._thin {
  min-width: 0;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .btn-primary {
    min-width: 0;
    width: 100%;
    font-size: 1.2rem;
  }
}

/* .btn-myhulft
----------------------------------------------- */
.btn-myhulft {
  padding: 6px 15px 6px 43px;
  min-width: 165px;
  border: 2px solid #ec6c00;
  background: #ec6c00;
  color: #fff;
}
.btn-myhulft::before {
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -10px;
  width: 19px;
  height: 19px;
  background-position: -65px -64px;
  background-size: 147px auto;
}
.btn-myhulft:hover, .btn-myhulft:active, .btn-myhulft:focus {
  background: #fff;
  color: #ec6c00;
  text-decoration: none;
}
.btn-myhulft:hover::before, .btn-myhulft:active::before, .btn-myhulft:focus::before {
  width: 19px;
  height: 19px;
  background-position: -86px -64px;
  background-size: 147px auto;
}
.btn-myhulft:visited {
  color: #fff;
}
.btn-myhulft:visited:hover, .btn-myhulft:visited:active, .btn-myhulft:visited:focus {
  color: #ec6c00;
}
@media only screen and (max-width: 767px) {
  .btn-myhulft {
    min-width: 0;
    width: 100%;
  }
}

/* .btn-close
----------------------------------------------- */
.btn-close {
  padding: 6px 20px 6px 25px;
  min-width: 165px;
  border: 2px solid #555;
  background: #fff;
  color: #555;
}
.btn-close::before, .btn-close::after {
  position: absolute;
  top: 15px;
  left: 8px;
  width: 14px;
  height: 2px;
  background: #555;
}
.btn-close::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.btn-close::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn-close:hover, .btn-close:active, .btn-close:focus {
  border-color: #ec6c00;
  background: #ec6c00;
  color: #fff;
}
.btn-close:hover::before, .btn-close:hover::after, .btn-close:active::before, .btn-close:active::after, .btn-close:focus::before, .btn-close:focus::after {
  background: #fff;
}
@media only screen and (max-width: 767px) {
  .btn-close {
    min-width: 0;
    width: 100%;
  }
}

/* .btn-media
----------------------------------------------- */
.btn-media {
  margin: 0 auto 30px;
  max-width: 700px;
}
.btn-media a {
  position: relative;
  display: table;
  box-sizing: border-box;
  padding: 10px 60px;
  width: 100%;
  border: 1px solid #d7d9d9;
  background: #fff;
  color: #ec6c00;
  text-decoration: none;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.btn-media a::before {
  position: absolute;
  top: 50%;
  left: 197px;
  margin: -3px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn-media a .btn-img, .btn-media a .btn-txt {
  display: table-cell;
  vertical-align: middle;
}
.btn-media a .btn-img {
  padding: 0 54px 0 0;
  width: 1px;
  white-space: nowrap;
}
.btn-media a .btn-img img {
  max-width: 86px;
}
.btn-media a .btn-txt {
  position: relative;
  padding: 0 0 0 17px;
  font-size: 1.6rem;
}
.btn-media a .btn-txt::before {
  position: absolute;
  top: 8px;
  left: -3px;
  display: none;
  margin: -3px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn-media:hover a, .btn-media:active a, .btn-media:focus a {
  border-color: #ec6c00;
  background: #ec6c00;
  color: #fff;
  text-decoration: none;
}
.btn-media:hover a::before, .btn-media:active a::before, .btn-media:focus a::before {
  border-color: #fff;
}
.btn-media:hover a .btn-txt::before, .btn-media:active a .btn-txt::before, .btn-media:focus a .btn-txt::before {
  border-color: #fff;
}
@media only screen and (max-width: 767px) {
  .btn-media {
    max-width: auto;
  }
  .btn-media a {
    padding: 15px;
    width: 100%;
  }
  .btn-media a::before {
    display: none;
  }
  .btn-media a .btn-img, .btn-media a .btn-txt {
    display: block;
  }
  .btn-media a .btn-img {
    padding: 0;
    width: 100%;
    text-align: center;
  }
  .btn-media a .btn-img img {
    max-width: 100%;
    width: 100%;
  }
  .btn-media a .btn-txt {
    margin: 15px 0 0;
    font-size: 1.2rem;
  }
  .btn-media a .btn-txt::before {
    display: block;
  }
}

/* .btn-list
----------------------------------------------- */
.btn-list {
  text-align: center;
  letter-spacing: -.4em;
}
.btn-list > li {
  display: inline-block;
  margin: 0 10px;
  letter-spacing: normal;
}
@media only screen and (max-width: 767px) {
  .btn-list {
    text-align: left;
  }
  .btn-list > li {
    display: block;
    margin: 0 0 10px;
  }
}

/* ----------------------------------------------------------------
    Navigation
----------------------------------------------------------------- */
/* .nav-toc
----------------------------------------------- */
.nav-toc {
  margin: 0 0 30px 0;
  padding: 27px 30px 26px;
  border-top: 2px solid #777;
  border-bottom: 1px solid #d8d9da;
  background: #f5f5f5;
}
.nav-toc > :last-child {
  margin-bottom: 0;
}
.nav-toc ul {
  margin: -15px 0 30px 0;
}
.nav-toc ul li {
  position: relative;
  float: left;
  margin: 15px 30px 0 0;
  padding: 0 0 0 18px;
}
.nav-toc ul li::before {
  position: absolute;
  top: 5px;
  left: 1px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.nav-toc ul a {
  text-decoration: none;
}
.nav-toc ul a:hover, .nav-toc ul a:active, .nav-toc ul a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .nav-toc {
    padding: 15px;
  }
  .nav-toc ul li {
    float: none;
    margin-right: 0;
  }
}

/* .nav-top
----------------------------------------------- */
.nav-top {
  text-align: right;
}
.nav-top > a {
  display: inline-block;
  padding: 4px 20px 5px 22px;
  border-radius: 15px;
  background-color: #f5f5f5;
  color: #777;
  text-decoration: none;
  font-size: 1.4rem;
}
.nav-top > a > span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 17px;
}
.nav-top > a > span::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin: -3px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
}
.nav-top > a:hover, .nav-top > a:active, .nav-top > a:focus {
  color: #ec6c00;
}
@media only screen and (max-width: 767px) {
  .nav-top > a {
    padding-top: 5px;
    padding-bottom: 6px;
  }
}

/* .nav-panel
----------------------------------------------- */
.nav-panel {
  margin: 0 0 30px;
}
.nav-panel .nav-txt {
  margin: 0 0 15px;
}
.nav-panel .nav-link {
  position: relative;
  display: inline-block;
  padding: 0 0 0 18px;
  text-decoration: none;
}
.nav-panel .nav-link::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.nav-panel a {
  display: block;
  color: #777;
  text-decoration: none;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.nav-panel a > :last-child {
  margin-bottom: 0;
}
.nav-panel a .nav-link {
  color: #ec6c00;
}
.nav-panel a:hover .nav-link, .nav-panel a:active .nav-link, .nav-panel a:focus .nav-link {
  text-decoration: underline;
}

/* .nav-panel-02
----------------------------------------------- */
.nav-panel-02 {
  margin: 0 0 30px;
  background: #f5f5f5;
}
.nav-panel-02 .nav-hdg {
  position: relative;
  margin: 0 0 8px 0;
  padding: 0 0 0 20px;
  color: #ec6c00;
  font-size: 1.6rem;
}
.nav-panel-02 .nav-hdg::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.nav-panel-02 a {
  display: block;
  padding: 20px;
  color: #777;
  text-decoration: none;
}
.nav-panel-02 a > :last-child {
  margin-bottom: 0;
}
.nav-panel-02 a:hover .nav-hdg, .nav-panel-02 a:active .nav-hdg, .nav-panel-02 a:focus .nav-hdg {
  text-decoration: underline;
}

/* .nav-panel-03
----------------------------------------------- */
.nav-panel-03 {
  position: relative;
  margin: 0 0 30px;
  background: #fff;
}
.nav-panel-03::before, .nav-panel-03::after {
  position: absolute;
  top: 0;
  z-index: 1;
  width: 23px;
  height: 23px;
  border-top: 2px solid #ec6c00;
}
.nav-panel-03::before {
  left: 0;
  border-left: 2px solid #ec6c00;
}
.nav-panel-03::after {
  right: 0;
  border-right: 2px solid #ec6c00;
}
.nav-panel-03 .nav-panel-inner {
  position: relative;
}
.nav-panel-03 .nav-panel-inner > :last-child {
  margin-bottom: 0;
}
.nav-panel-03 .nav-panel-inner::before, .nav-panel-03 .nav-panel-inner::after {
  position: absolute;
  bottom: 0;
  z-index: 1;
  width: 23px;
  height: 23px;
  border-bottom: 2px solid #ec6c00;
}
.nav-panel-03 .nav-panel-inner::before {
  left: 0;
  border-left: 2px solid #ec6c00;
}
.nav-panel-03 .nav-panel-inner::after {
  right: 0;
  border-right: 2px solid #ec6c00;
}
.nav-panel-03 .nav-hdg {
  margin: 0 0 10px 0;
  color: #555;
  font-size: 1.6rem;
}
.nav-panel-03 .nav-media {
  display: table;
  width: 100%;
  direction: rtl;
}
.nav-panel-03 .nav-media > div {
  display: table-cell;
  vertical-align: middle;
}
.nav-panel-03 .nav-media .nav-media-col {
  direction: ltr;
}
.nav-panel-03 .nav-media .nav-media-col > :last-child {
  margin-bottom: 0;
}
.nav-panel-03 .nav-media .nav-media-item {
  padding-right: 25px;
  width: 1px;
  white-space: nowrap;
}
.nav-panel-03 .nav-media .nav-media-item img {
  max-width: none;
}
.nav-panel-03 a {
  position: relative;
  display: block;
  padding: 24px 62px 24px 24px;
  color: #777;
  text-decoration: none;
}
.nav-panel-03 a > :last-child {
  margin-bottom: 0;
}
.nav-panel-03 a::before {
  position: absolute;
  top: 50%;
  right: 24px;
  width: 10px;
  height: 10px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.nav-panel-03 a::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(236, 108, 0, .2);
  opacity: 0;
  transition: all .4s cubic-bezier(.23, 1, .32, 1);
}
.nav-panel-03 a:hover::after, .nav-panel-03 a:active::after, .nav-panel-03 a:focus::after {
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  .nav-panel-03 .nav-hdg {
    font-size: 1.2rem;
  }
  .nav-panel-03 .nav-media .nav-media-item {
    padding-right: 15px;
    width: 60px;
  }
  .nav-panel-03 .nav-media .nav-media-item img {
    max-width: 100%;
  }
  .nav-panel-03 a {
    padding: 15px 42px 15px 15px;
  }
}

/* .nav-page
----------------------------------------------- */
.nav-page {
  margin: 0 0 30px;
  border: 1px solid #d7d9d9;
}
.nav-page > :last-child {
  margin-bottom: 0;
}
.nav-page .nav-link {
  margin: -10px 0 0;
  padding: 29px 20px 29px 40px;
}
.nav-page .nav-link li {
  position: relative;
  float: left;
  margin: 10px 20px 0 0;
  padding: 0 22px 0 0;
  letter-spacing: normal;
}
.nav-page .nav-link li::after {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -8px 0 0;
  width: 2px;
  height: 16px;
  background: #d7d9d9;
}
.nav-page .nav-link li:last-child::after {
  display: none;
}
.nav-page .nav-link li a {
  text-decoration: none;
}
.nav-page .nav-link li a:hover, .nav-page .nav-link li a:active, .nav-page .nav-link li a:focus {
  text-decoration: underline;
}
.nav-page .nav-link li.is-current a {
  color: #555;
}
.nav-page .nav-link li.is-current a:hover, .nav-page .nav-link li.is-current a:active, .nav-page .nav-link li.is-current a:focus {
  text-decoration: none;
}
.nav-page .nav-grid {
  display: table;
  width: 100%;
}
.nav-page .nav-grid-col, .nav-page .nav-grid-col-02 {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: middle;
}
.nav-page .nav-grid-col > :last-child, .nav-page .nav-grid-col-02 > :last-child {
  margin-bottom: 0;
}
.nav-page .nav-grid-col {
  width: 75.33333%;
}
.nav-page .nav-grid-col-02 {
  padding: 20px;
  width: 24.44444%;
  border-left: 1px solid #d7d9d9;
}
@media only screen and (max-width: 767px) {
  .nav-page .nav-link {
    margin-top: -20px;
    padding: 34px 15px;
  }
  .nav-page .nav-link li {
    margin-top: 20px;
  }
  .nav-page .nav-grid-col, .nav-page .nav-grid-col-02 {
    display: block;
    width: 100%;
  }
  .nav-page .nav-grid-col-02 {
    padding: 20px 15px;
    border-top: 1px solid #d7d9d9;
    border-left: none;
    text-align: center;
  }
}

/* .nav-archive
----------------------------------------------- */
.nav-archive {
  margin: -15px 0 30px;
}
.nav-archive li {
  position: relative;
  float: left;
  margin: 15px 20px 0 0;
  padding: 0 22px 0 0;
}
.nav-archive li::after {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -8px 0 0;
  width: 2px;
  height: 15px;
  background: #d7d9d9;
}
.nav-archive li:last-child {
  padding-right: 0;
}
.nav-archive li:last-child::after {
  display: none;
}
.nav-archive li a {
  text-decoration: none;
}
.nav-archive li a:hover, .nav-archive li a:active, .nav-archive li a:focus {
  text-decoration: underline;
}
.nav-archive li.is-current a {
  color: #555;
}
.nav-archive li.is-current a:hover, .nav-archive li.is-current a:active, .nav-archive li.is-current a:focus {
  text-decoration: none;
}

/* ----------------------------------------------------------------
    Tab
----------------------------------------------------------------- */
/* .tab
----------------------------------------------- */
.tab {
  margin: 0 0 30px 0;
}
.tab .tab-list {
  display: table;
  margin: 0;
  width: 100%;
  border-bottom: 2px solid #ec6c00;
  table-layout: fixed;
}
.tab .tab-list li {
  display: table-cell;
  padding: 0 10px 0 0;
  width: 100%;
  vertical-align: middle;
  text-align: center;
}
.tab .tab-list li:last-child {
  padding-right: 0;
}
.tab .tab-list li a {
  display: block;
  padding: 11px 10px 8px;
  background: #d7d9d9;
  color: #333;
  text-align: center;
  text-decoration: none;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.tab .tab-list li a:hover, .tab .tab-list li a:active, .tab .tab-list li a:focus {
  background: #ec6c00;
  color: #fff;
  text-decoration: none;
}
.tab .tab-list li.is-selected a {
  background: #ec6c00;
  color: #fff;
}
.tab .tab-list li.is-current a {
  background: #ec6c00;
  color: #fff;
}
.tab .tab-list li.is-current a b {
  font-weight: normal;
}
.tab .tab-list._bottom {
  margin-top: 30px;
  border-top: 2px solid #ec6c00;
  border-bottom: 0;
}
.tab .tab-contents {
  position: relative;
}
.tab .tab-item {
  padding: 32px 0 0;
  opacity: 0;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(5px);
  transform: translateY(5px);
}
.tab .tab-item > :last-child {
  margin-bottom: 0;
}
.tab .tab-item[aria-hidden='true'] {
  display: none;
}
.tab .tab-item[aria-hidden='false'] {
  display: block;
}
.tab .tab-item.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.tab .tab-hdg {
  margin: 0 0 16px;
  color: #555;
  font-size: 2.8rem;
}
.tab._top .tab-hdg {
  font-size: 2.2rem;
}
.tab.js-tabs .tab-list li a {
  position: relative;
}
.tab.js-tabs .tab-list li a::before {
  position: absolute;
  top: 50%;
  left: 6px;
  margin-top: -6px;
  width: 6px;
  height: 6px;
  border: 1px solid #333;
  border-bottom: transparent;
  border-left: transparent;
  opacity: 0;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.tab.js-tabs .tab-list li a[aria-selected='true'] {
  background: #ec6c00;
  color: #fff;
}
.tab.js-tabs .tab-list li a[aria-selected='true']::before {
  border-color: #fff;
}
@media only screen and (max-width: 900px) {
  .tab .tab-list {
    display: block;
    margin: -20px 0 0 -3.44828%;
    width: auto;
    border: none;
  }
  .tab .tab-list::after {
    clear: both;
  }
  .tab .tab-list li {
    display: block;
    float: left;
    margin: 20px 0 0 3.33333%;
    padding: 0;
    width: 46.66667%;
  }
  .tab .tab-list li:nth-child(2n+1) {
    clear: both;
  }
  .tab .tab-list li a {
    position: relative;
    padding: 11px 15px 10px;
  }
  .tab .tab-list._bottom {
    display: none;
  }
  .tab .tab-contents {
    margin: 20px 0 0;
    border-top: 2px solid #ec6c00;
  }
  .tab .tab-hdg {
    text-align: center;
  }
  .tab.js-tabs .tab-list li a::before {
    opacity: 1;
  }
}
@media only screen and (max-width: 767px) {
  .tab .tab-list {
    margin-top: -10px;
  }
  .tab .tab-list li {
    margin-top: 10px;
  }
  .tab .tab-list li a {
    padding: 12px 20px 10px;
  }
  .tab .tab-contents {
    margin-top: 10px;
  }
  .tab .tab-item {
    padding-top: 16px;
  }
  .tab .tab-hdg {
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
  .tab._top .tab-hdg {
    font-size: 1.8rem;
  }
}

/* JS Off
----------------------------------------------- */
.no-js .tab .tab-item {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ----------------------------------------------------------------
    Image
----------------------------------------------------------------- */
/* .media
----------------------------------------------- */
.media {
  margin: 0 0 30px;
}
.media > .media-item {
  margin: 0;
}
.nav-panel .media {
  margin-bottom: 10px;
}
.nav-panel-02 .media {
  margin-bottom: 15px;
}
.uni-nav-panel .media {
  margin-bottom: 10px;
}

/* .media-item
----------------------------------------------- */
.media-item {
  text-align: center;
}
.media-item a {
  display: block;
  text-decoration: none;
}
.media-item a:hover, .media-item a:active, .media-item a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .media-item a {
    display: block;
  }
  .media-item a img:not([class*='icon-']) {
    width: 100%;
  }
}

/* .media-caption
----------------------------------------------- */
.media-caption {
  display: block;
  margin: 10px 0 0;
  text-align: left;
  font-size: 1.2rem;
}
a .media-caption {
  position: relative;
  padding: 0 0 0 16px;
}
a .media-caption::before {
  position: absolute;
  top: 5px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .media-caption {
    font-size: 1.1rem;
  }
}

/* .media-lyt
----------------------------------------------- */
.media-lyt {
  margin: 0 0 30px;
}
.media-lyt > .media-item {
  margin: 0;
}
.media-lyt > .media-col > :last-child {
  margin-bottom: 0;
}
.media-lyt._left > .media-item {
  float: left;
  margin-right: 20px;
}
.media-lyt._right > .media-item {
  float: right;
  margin-left: 20px;
}
.media-lyt._img-large > .media-item {
  width: 48.88889%;
}
.media-lyt._img-middle > .media-item {
  width: 31.77778%;
}
.media-lyt._img-small > .media-item {
  width: 23.33333%;
}
.media-lyt._profile > .media-item {
  width: 45.45455%;
}
.panel-profile .media-lyt > .media-col {
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .media-lyt > .media-item {
    max-width: 100%;
  }
  .media-lyt > .media-col {
    margin-top: 30px;
  }
  .media-lyt._left > .media-item {
    float: none;
    margin-right: 0;
  }
  .media-lyt._right > .media-item {
    float: none;
    margin-left: 0;
  }
  .media-lyt._img-large > .media-item, .media-lyt._img-middle > .media-item, .media-lyt._img-small > .media-item, .media-lyt._profile > .media-item {
    margin-bottom: 30px;
    width: 100%;
  }
  .media-lyt._img-large > .media-item img, .media-lyt._img-middle > .media-item img, .media-lyt._img-small > .media-item img, .media-lyt._profile > .media-item img {
    width: 100%;
  }
}

/* ----------------------------------------------------------------
    Panel
----------------------------------------------------------------- */
/* .panel
----------------------------------------------- */
.panel {
  margin: 0 0 30px;
  padding: 20px;
  border: 1px solid #d7d9d9;
  background: #fff;
}
.panel > :last-child {
  margin-bottom: 0;
}
.panel > :last-child > :last-child {
  margin-bottom: 0 !important;
}
.panel > .panel-hdg {
  margin: 0 0 17px 0;
  color: #555;
  font-size: 1.6rem;
}
.panel > .panel-hdg-02 {
  margin: 0 0 12px 0;
  padding: 16px 0 0 0;
  border-top: 1px solid #d7d9d9;
  color: #555;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .panel {
    padding: 15px;
  }
  .panel > .panel-hdg {
    font-size: 1.4rem;
  }
  .panel > .panel-hdg-02 {
    font-size: 1.2rem;
  }
}

/* .panel-attention
----------------------------------------------- */
.panel-attention {
  margin: 0 0 30px;
  padding: 20px;
  border: 1px solid #c30000;
}
.panel-attention > :last-child {
  margin-bottom: 0;
}
.panel-attention > .panel-hdg {
  position: relative;
  margin: 0 0 13px;
  padding: 0 0 0 35px;
  color: #c30000;
  font-weight: bold;
  font-size: 1.4rem;
}
.panel-attention > .panel-hdg::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 20px;
  background-position: -38px -64px;
  background-size: 147px auto;
}
@media only screen and (max-width: 767px) {
  .panel-attention {
    padding: 15px;
  }
  .panel-attention > .panel-hdg {
    font-size: 1.4rem;
  }
}

/* .panel-plugin
----------------------------------------------- */
.panel-plugin {
  display: table;
  box-sizing: border-box;
  margin: 0 0 30px;
  padding: 20px;
  width: 100%;
  background: #f5f5f5;
}
.panel-plugin > :last-child {
  margin-bottom: 0;
}
.panel-plugin .panel-col, .panel-plugin .panel-col-02 {
  display: table-cell;
  vertical-align: middle;
}
.panel-plugin .panel-col > :last-child, .panel-plugin .panel-col-02 > :last-child {
  margin-bottom: 0;
}
.panel-plugin .panel-col {
  padding: 0 20px 0 0;
  min-width: 158px;
}
.panel-plugin .panel-col a {
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.panel-plugin .panel-col a:hover, .panel-plugin .panel-col a:active, .panel-plugin .panel-col a:focus {
  opacity: .7;
}
.panel-plugin .panel-col-02 {
  width: 100%;
  color: #555;
}
@media only screen and (max-width: 767px) {
  .panel-plugin {
    display: block;
    padding: 15px;
  }
  .panel-plugin .panel-col, .panel-plugin .panel-col-02 {
    display: block;
  }
  .panel-plugin .panel-col {
    padding: 0;
    text-align: center;
  }
  .panel-plugin .panel-col-02 {
    margin: 15px 0 0;
  }
}

/* .panel-case
----------------------------------------------- */
.panel-case {
  margin: 0 0 30px;
  padding: 20px;
  border-top: 3px solid #ec6c00;
  border-bottom: 1px solid #d8d9da;
  background: #f5f5f5;
}
.panel-case > :last-child {
  margin-bottom: 0;
}
.panel-case > .panel-hdg {
  margin: 0 0 15px;
  color: #555;
  font-size: 2rem;
}
.panel-case > .panel-hdg-02 {
  margin: 0 0 15px;
  color: #fff;
  font-weight: normal;
  font-size: 1.4rem;
}
.panel-case > .panel-hdg-02 > span {
  display: inline-block;
  padding: 3px 5px 1px;
  min-width: 110px;
  background: #555;
  text-align: center;
}
.panel-case > .panel-hdg-02._solution > span {
  background: #ec6c00;
}
@media only screen and (max-width: 767px) {
  .panel-case {
    padding: 15px;
  }
  .panel-case > .panel-hdg {
    font-size: 1.4rem;
  }
  .panel-case > .panel-hdg-02 {
    font-size: 1.2rem;
  }
}

/* .panel-faq
----------------------------------------------- */
.panel-faq {
  margin: 0 0 30px;
  padding: 20px;
  background: #f5f5f5;
}
.panel-faq > :last-child {
  margin-bottom: 0;
}
.panel-faq > .panel-hdg {
  margin: 0 0 12px 0;
  color: #555;
  font-size: 1.6rem;
}
.panel-faq > .panel-link a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 18px;
  text-decoration: none;
  font-weight: bold;
}
.panel-faq > .panel-link a::before {
  position: absolute;
  top: .2em;
  left: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #ec6c00;
}
.panel-faq > .panel-link a::after {
  position: absolute;
  top: .5em;
  left: 3px;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.panel-faq > .panel-link a:hover, .panel-faq > .panel-link a:active, .panel-faq > .panel-link a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .panel-faq {
    padding: 15px;
  }
  .panel-faq > .panel-hdg {
    font-size: 1.4rem;
  }
}

/* .panel-profile
----------------------------------------------- */
.panel-profile {
  margin: 0 0 60px;
  padding: 25px 0 0;
  border-top: 2px solid #d7d9d9;
}
.panel-profile > :last-child {
  margin-bottom: 0;
}
.panel-profile > .panel-hdg {
  margin: 0 0 10px;
  color: #555;
  font-size: 1.6rem;
}
.panel-profile .panel-list {
  margin: -2px 0 30px;
}
.panel-profile .panel-list dt, .panel-profile .panel-list dd {
  float: left;
  margin: 2px 0 0;
}
.panel-profile .panel-list dt {
  clear: both;
}
.panel-profile .panel-txt {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .panel-profile > .panel-hdg {
    font-size: 1.6rem;
  }
  .panel-profile > .panel-inner {
    padding: 15px;
  }
}

/* .panel-scroll
----------------------------------------------- */
.panel-scroll {
  overflow: auto;
  box-sizing: border-box;
  margin: 0 0 30px;
  padding: 20px;
  max-height: 311px;
  border: 1px solid #d7d9d9;
}
.panel-scroll > :last-child {
  margin-bottom: 0;
}
.panel-scroll > .panel-hdg {
  margin: 0 0 17px 0;
  color: #555;
  font-size: 1.6rem;
}
.panel-scroll > .panel-hdg-02 {
  margin: 0 0 12px 0;
  padding: 16px 0 0 0;
  border-top: 1px solid #d7d9d9;
  color: #555;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .panel-scroll {
    padding: 15px;
  }
  .panel-scroll > .panel-hdg {
    font-size: 1.4rem;
  }
  .panel-scroll > .panel-hdg-02 {
    font-size: 1.2rem;
  }
  .panel-scroll::-webkit-scrollbar {
    overflow: hidden;
    width: 5px;
    border-radius: 3px;
    background: #f5f5f5;
  }
  .panel-scroll::-webkit-scrollbar:horizontal {
    height: 5px;
  }
  .panel-scroll::-webkit-scrollbar-button {
    display: none;
  }
  .panel-scroll::-webkit-scrollbar-piece, .panel-scroll::-webkit-scrollbar-piece:start {
    background: #f5f5f5;
  }
  .panel-scroll::-webkit-scrollbar-thumb, .panel-scroll::-webkit-scrollbar-corner {
    overflow: hidden;
    border-radius: 3px;
    background: #d7d9d9;
  }
}

/* .panel-contact
----------------------------------------------- */
.panel-contact {
  margin: 0 0 30px;
  padding: 20px;
  background: #f5f5f5;
}
.panel-contact > :last-child {
  margin-bottom: 0;
}
.panel-contact > .panel-hdg {
  margin: 0 0 17px;
  padding: 0 0 14px;
  border-bottom: 1px solid #d7d9d9;
  color: #555;
  font-size: 1.6rem;
}
.panel-contact .panel-hdg-02 {
  margin: 0 0 12px;
  color: #555;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .panel-contact > .panel-hdg {
    font-size: 1.4rem;
  }
  .panel-contact .panel-hdg-02 {
    font-size: 1.2rem;
  }
}

/* ----------------------------------------------------------------
    Table
----------------------------------------------------------------- */
/* .tbl
----------------------------------------------- */
.tbl {
  margin: 0 0 30px;
  width: 100%;
  border: 1px solid #d7d9d9;
}
.tbl th > :last-child, .tbl td > :last-child {
  margin-bottom: 0;
}
.tbl th > :last-child > :last-child, .tbl td > :last-child > :last-child {
  margin-bottom: 0;
}
.tbl caption {
  margin: 0 0 5px;
  color: #555;
  text-align: left;
  font-weight: bold;
  font-size: 1.8rem;
}
.tbl th, .tbl td {
  padding: 12px 18px 11px;
  border: 1px solid #d7d9d9;
  vertical-align: middle;
  text-align: left;
}
.tbl th p, .tbl th ul, .tbl th ol, .tbl th dl, .tbl td p, .tbl td ul, .tbl td ol, .tbl td dl {
  margin-bottom: 15px;
}
.tbl thead tr:first-child {
  border-top: 3px solid #555;
}
.tbl thead th, .tbl thead td {
  background: #f5f5f5;
  color: #555;
}
.tbl tbody th {
  background: #fbfbfb;
  color: #555;
}
.tbl tbody td {
  background: #fff;
}
.tbl .tbl-cell-em {
  background: #ffee2b;
}
@media only screen and (max-width: 767px) {
  .tbl caption {
    font-size: 1.6rem;
  }
}

/* .tbl-lyt-scroll
----------------------------------------------- */
.tbl-lyt-scroll {
  margin: 0 0 30px;
}
.tbl-lyt-scroll > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 900px) {
  .tbl-lyt-scroll {
    position: relative;
    overflow-x: auto;
  }
  .tbl-lyt-scroll::-webkit-scrollbar {
    overflow: hidden;
    width: 5px;
    border-radius: 3px;
    background: #f5f5f5;
  }
  .tbl-lyt-scroll::-webkit-scrollbar:horizontal {
    height: 5px;
  }
  .tbl-lyt-scroll::-webkit-scrollbar-button {
    display: none;
  }
  .tbl-lyt-scroll::-webkit-scrollbar-piece, .tbl-lyt-scroll::-webkit-scrollbar-piece:start {
    background: #f5f5f5;
  }
  .tbl-lyt-scroll::-webkit-scrollbar-thumb, .tbl-lyt-scroll::-webkit-scrollbar-corner {
    overflow: hidden;
    border-radius: 3px;
    background: #d7d9d9;
  }
  .tbl-lyt-scroll .tbl {
    width: 900px;
  }
}
@media only screen and (max-width: 767px) {
  .tbl-lyt-scroll .tbl {
    width: 767px;
  }
}

/* ----------------------------------------------------------------
    Layout
----------------------------------------------------------------- */
/* .lyt-link
----------------------------------------------- */
.lyt-link {
  padding: 5px 20px 4px;
  background: #ebebeb;
}
.lyt-link strong {
  font-weight: normal;
}
.lyt-link > :last-child {
  margin-bottom: 0;
}

/* .lyt-outline
----------------------------------------------- */
.lyt-outline {
  margin: 0 0 30px;
}
.lyt-outline > :last-child {
  margin-bottom: 0;
}
.lyt-outline > .lyt-hdg {
  position: relative;
  margin: 0 0 10px;
  padding: 196px 0 0;
  color: #555;
  text-align: center;
  font-size: 2rem;
}
.lyt-outline > .lyt-hdg::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -86px;
  width: 172px;
  height: 172px;
  border-radius: 50%;
  background: #f5f5f5;
}
.lyt-outline > .lyt-hdg img {
  position: absolute;
  top: 36px;
  left: 50%;
  margin-left: -50px;
}
@media only screen and (max-width: 767px) {
  .lyt-outline > .panel-hdg {
    font-size: 1.5rem;
  }
}

/* .lyt-cv
----------------------------------------------- */
.lyt-cv > :last-child {
  margin-bottom: 0;
}

.lyt-cv .lyt-inner {
  padding: 30px 0 0;
  border-top: 1px solid #e7e7e7;
}
.lyt-cv .lyt-inner > :last-child {
  margin-bottom: 0;
}

.lyt-cv .lyt-btn {
  margin: 0 0 15px;
}

.lyt-cv .lyt-txt {
  font-size: 1.3rem;
}

.lyt-cv .lyt-btn-list li a {
  position: relative;
  display: block;
  padding: 8px 15px 8px 26px;
  background: #fff;
  text-align: center;
  text-decoration: none;
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
}
.lyt-cv .lyt-btn-list li a::before {
  position: absolute;
  top: 14px;
  left: 12px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.lyt-cv .lyt-btn-list li a:hover, .lyt-cv .lyt-btn-list li a:active, .lyt-cv .lyt-btn-list li a:focus {
  background: #ec6c00;
  color: #fff;
}
.lyt-cv .lyt-btn-list li a:hover::before, .lyt-cv .lyt-btn-list li a:active::before, .lyt-cv .lyt-btn-list li a:focus::before {
  border-color: #fff;
}

@media only screen and (max-width: 767px) {
  .lyt-cv .lyt-txt {
    font-size: 1.2rem;
  }
}

/* ----------------------------------------------------------------
    Carousel
----------------------------------------------------------------- */
/* .carousel
----------------------------------------------- */
.carousel {
  position: relative;
  overflow: hidden;
  max-height: 418px;
  height: 46.44444vw;
}

/* .carousel-inner
----------------------------------------------- */
.carousel-inner {
  position: relative;
  margin: 0 auto;
  max-width: 900px;
}
.carousel-inner::before, .carousel-inner::after {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: 100%;
  background: #fff;
}
.carousel-inner::before {
  left: -100%;
}
.carousel-inner::after {
  right: -100%;
}

/* .carousel-item
----------------------------------------------- */
.carousel-item {
  margin-bottom: 0;
}
.carousel-item > li {
  float: left;
}
.carousel-item.is-animate {
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carousel-item.is-update {
  transition: all 0 ease-out;
}
.carousel-item.is-break {
  transition: all 0 ease-out;
}
.carousel-item.is-swipe {
  transition-duration: 0;
}
.no-js .carousel-item > li:not(:first-child) {
  display: none;
}

/* .carousel-indicator
----------------------------------------------- */
.carousel-indicator {
  position: absolute;
  right: 0;
  bottom: 14px;
  left: 0;
  margin: 0 auto;
  max-width: 900px;
  width: 100%;
  text-align: center;
}
.carousel-indicator button {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 6px;
  background: #ebebeb;
  color: transparent;
  transition: background 2.5s cubic-bezier(.23, 1, .32, 1);
}
.carousel-indicator li {
  display: inline-block;
  overflow: hidden;
  margin: 0 0 0 16px;
  width: 12px;
  height: 12px;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carousel-indicator li:first-child {
  margin-left: 0;
}
.carousel-indicator li button {
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carousel-indicator li.is-current button {
  background: #ec6c00;
}
.carousel-indicator .is-current {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}
@media only screen and (max-width: 767px) {
  .carousel-indicator {
    bottom: 7px;
  }
  .carousel-indicator li {
    width: 6px;
    height: 6px;
  }
}

/* .carousel-control
----------------------------------------------- */
.carousel-control {
  position: relative;
  margin: 0 auto;
  max-width: 900px;
}
.carousel-control .carousel-prev, .carousel-control .carousel-next {
  position: absolute;
  top: 0;
  z-index: 10;
  overflow: hidden;
  margin: -248px 0 0 0;
  width: 35px;
  height: 77px;
}
.carousel-control .carousel-prev button, .carousel-control .carousel-next button {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 0;
  background: #989292;
}
.carousel-control .carousel-prev button::before, .carousel-control .carousel-next button::before {
  position: absolute;
  top: 50%;
  margin-top: -9px;
}
.carousel-control .carousel-prev button span, .carousel-control .carousel-next button span {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
  color: transparent;
}
.carousel-control .carousel-prev:hover button, .carousel-control .carousel-prev:active button, .carousel-control .carousel-prev:focus button, .carousel-control .carousel-next:hover button, .carousel-control .carousel-next:active button, .carousel-control .carousel-next:focus button {
  opacity: .3;
}
.carousel-control .carousel-prev {
  left: 0;
}
.carousel-control .carousel-prev button {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}
.carousel-control .carousel-prev button::before {
  left: 12px;
  width: 15px;
  height: 15px;
  border: 2px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.carousel-control .carousel-next {
  right: 0;
}
.carousel-control .carousel-next button {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}
.carousel-control .carousel-next button::before {
  right: 12px;
  width: 15px;
  height: 15px;
  border: 2px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.carousel-control .carousel-player {
  position: absolute;
  right: 20px;
  bottom: 11px;
  z-index: 10;
  overflow: hidden;
  margin: 0;
  width: 28px;
  height: 28px;
}
.carousel-control .carousel-player button {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 1px solid #fff;
  background: #fff;
  color: transparent;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carousel-control .carousel-player button::before, .carousel-control .carousel-player button::after {
  position: absolute;
  top: 50%;
  margin: -6px 0 0;
  width: 4px;
  height: 12px;
  background: #ec6c00;
  opacity: 1;
}
.carousel-control .carousel-player button::before {
  left: 7px;
}
.carousel-control .carousel-player button::after {
  right: 7px;
}
.carousel-control .carousel-player button span {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
  color: transparent;
}
.carousel-control .carousel-player button span::after {
  position: absolute;
  top: 50%;
  left: 8px;
  margin: -5px 0 0;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 10px solid #ec6c00;
  opacity: 0;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carousel-control .carousel-player:hover button, .carousel-control .carousel-player:active button, .carousel-control .carousel-player:focus button {
  opacity: .7;
}
.carousel-control .carousel-player.is-pause button::before, .carousel-control .carousel-player.is-pause button::after {
  opacity: 0;
}
.carousel-control .carousel-player.is-pause button span::after {
  opacity: 1;
}
@media only screen and (max-width: 900px) {
  .carousel-control .carousel-prev, .carousel-control .carousel-next {
    margin-top: -27.55556vw;
  }
}
@media only screen and (max-width: 767px) {
  .carousel-control .carousel-prev, .carousel-control .carousel-next {
    display: none;
  }
  .carousel-control .carousel-player {
    right: 15px;
    bottom: 5px;
    width: 20px;
    height: 20px;
  }
  .carousel-control .carousel-player button {
    border-color: #c9cbca;
  }
  .carousel-control .carousel-player button::before, .carousel-control .carousel-player button::after {
    margin: -4px 0 0;
    width: 2px;
    height: 8px;
  }
  .carousel-control .carousel-player button::before {
    left: 6px;
  }
  .carousel-control .carousel-player button::after {
    right: 6px;
  }
  .carousel-control .carousel-player button span::after {
    left: 7px;
    border-left-width: 5px;
  }
}

/* ----------------------------------------------------------------
    Toggle
----------------------------------------------------------------- */
/* .toggle-menu
----------------------------------------------- */
.toggle-menu .toggle-menu-hook {
  display: none;
  overflow: hidden;
}

.toggle-menu .toggle-menu-content {
  display: block;
  overflow: visible;
}

@media only screen and (max-width: 900px) {
  .toggle-menu .toggle-menu-hook {
    display: block;
  }
  .toggle-menu .toggle-menu-content {
    display: none;
  }
  .toggle-menu .toggle-menu-content.is-animate {
    display: block;
    opacity: 0;
    transition: all .7s cubic-bezier(.23, 1, .32, 1);
  }
  .toggle-menu.is-expand .toggle-menu-content {
    display: block;
    opacity: 1;
  }
}

/* .toggle
----------------------------------------------- */
.toggle .toggle-content {
  display: none;
  overflow: hidden;
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px);
}
.toggle .toggle-content.is-block {
  display: block;
  opacity: 0;
  transition: all .2s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.toggle .toggle-content.is-animate {
  opacity: 1;
}

.toggle .toggle-state {
  display: none;
}

.toggle.is-expand > .toggle-content {
  display: block;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media only screen and (max-width: 900px) {
  .toggle > .toggle-content.header-region-content {
    display: block;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .toggle:not(.js-pulldown) > .toggle-content {
    overflow: hidden;
  }
  .toggle:not(.js-pulldown) > .toggle-content.is-animate {
    overflow: hidden;
    opacity: 1;
    transition: height .4s cubic-bezier(.23, 1, .32, 1);
  }
  .toggle:not(.js-pulldown).is-expand > .toggle-content {
    display: block;
    opacity: 1;
  }
}

/* ----------------------------------------------------------------
    Modal
----------------------------------------------------------------- */
/* .is-modal-open
----------------------------------------------- */
.is-modal-open, .is-modal-open body, .is-dialog-open, .is-dialog-open body {
  overflow: hidden;
}
.is-modal-open .overlay, .is-modal-open body .overlay, .is-dialog-open .overlay, .is-dialog-open body .overlay {
  z-index: 1000;
}

/* .modal
----------------------------------------------- */
.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1001;
  display: none;
  opacity: 0;
  transition: all .5s ease .2s;
}
.modal.is-modal-render {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
}
.modal.is-modal-show {
  opacity: 1;
}
.modal.is-modal-hide {
  transition-delay: 0s;
}
@media only screen and (max-width: 767px) {
  .modal {
    padding: 0 15px;
  }
}

/* .modal-inner
----------------------------------------------- */
.modal-inner {
  box-sizing: border-box;
  margin: 95px auto;
  padding: 40px;
  max-width: 843px;
  border-top: 4px solid #777;
  background: #fff;
}
.modal-inner > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .modal-inner {
    padding: 20px;
  }
}

/* .modal-hdg
----------------------------------------------- */
.modal-hdg {
  position: relative;
  margin: 0 0 30px;
  padding: 5px 0 1px 22px;
  color: #555;
  font-size: 2.4rem;
}
.modal-hdg::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
  background-color: #ec6c00;
  background-image: linear-gradient(to bottom,#ec6c00 0%, #ec6c00 50%, #777 51%, #777 100%);
}
@media only screen and (max-width: 767px) {
  .modal-hdg {
    font-size: 1.6rem;
  }
}

/* .modal-hdg-02
----------------------------------------------- */
.modal-hdg-02 {
  margin: 40px 0 30px;
  padding: 0 0 12px 0;
  border-bottom: 1px solid #b1b1b1;
  color: #555;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .modal-hdg-02 {
    font-size: 1.5rem;
  }
}

/* .dialog (Modeless)
----------------------------------------------- */
.dialog {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1001;
  display: none;
  opacity: 0;
  transition: all .5s ease .2s;
}
.dialog.modeless {
  position: absolute;
  pointer-events: none;
}
.dialog.is-dialog-render {
  display: block;
}
.dialog.is-dialog-render:not(.modeless) {
  overflow-x: hidden;
  overflow-y: auto;
}
.dialog.is-dialog-show {
  opacity: 1;
}
.dialog.is-dialog-hide {
  transition-delay: 0s;
}
@media only screen and (max-width: 767px) {
  .dialog {
    padding: 0 15px;
  }
}

/* .dialog-inner
----------------------------------------------- */
.dialog-inner {
  position: relative;
  box-sizing: border-box;
  margin: 95px auto;
  padding: 40px;
  max-width: 814px;
  border: 2px solid #ec6c00;
  background: #fff;
}
.modeless .dialog-inner {
  box-shadow: 0 2px 2px 2px rgba(0, 0, 0, .075);
  pointer-events: auto;
}
.dialog-inner > :last-child, .dialog-inner > :nth-last-child(2) {
  margin-bottom: 0;
}
.dialog-inner > p {
  margin-bottom: 10px;
}
.dialog-inner .dialog-us-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  margin: 30px auto -20px;

  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dialog-inner .dialog-us-list > li {
  margin-bottom: 20px;

  -webkit-flex-basis: calc(50% - 10px);
  flex-basis: calc(50% - 10px);
  -ms-flex-preferred-size: calc(50% - 10px);
}
.dialog-inner .dialog-us-list dl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-align: center;
  box-sizing: border-box;
  margin: auto;
  padding: 15px;
  height: 100%;
  background-color: #f5f5f5;

  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dialog-inner .dialog-us-list dt + dd {
  margin-left: 10px;
}
.dialog-inner .dialog-us-list dd {
  max-width: 160px;

  -webkit-flex-basis: 100%;
  flex-basis: 100%;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  -ms-flex-positive: 1;
  -ms-flex-preferred-size: 100%;
}
.dialog-inner .dialog-us-list dd > :last-child {
  margin-bottom: 0;
}
.dialog-inner .dialog-us-list dd > ul > li + li {
  margin-top: 16px;
}
.dialog-inner .dialog-us-list dd .btn-primary {
  box-sizing: border-box;
  padding: 14px 20px 12px 35px;
  min-width: auto;
  width: 100%;
  font-size: 1.6rem;
}
.dialog-inner .dialog-us-list + p:not(.dialog-close) {
  margin-top: 30px;
}
.dialog-inner .license {
  color: #777;
  font-size: 1.2rem;
}
.dialog-inner .license a {
  color: #777;
  text-decoration: none;
}
.dialog-inner .license a:hover, .dialog-inner .license a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .dialog-inner {
    margin: 39px auto;
    padding: 40px 20px 20px;
  }
  .dialog-inner > p {
    margin-bottom: 15px;
  }
  .dialog-inner .dialog-us-list {
    margin: auto;
  }
  .dialog-inner .dialog-us-list > li {
    margin: auto;

    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
  }
  .dialog-inner .dialog-us-list > li + li {
    margin-top: 16px;
  }
  .dialog-inner .dialog-us-list dl {
    display: block;
  }
  .dialog-inner .dialog-us-list dt + dd {
    margin: 16px auto auto auto;
  }
  .dialog-inner .dialog-us-list dd {
    max-width: none;
  }
  .dialog-inner .dialog-us-list dd > :last-child {
    margin-bottom: 0;
  }
  .dialog-inner .dialog-us-list dd > ul > li + li {
    margin-top: 16px;
  }
  .dialog-inner .dialog-us-list dd .btn-primary {
    padding: 14px 20px 12px 35px;
    font-size: 1.6rem;
  }
  .dialog-inner .dialog-us-list + p:not(.dialog-close) {
    margin-top: 18px;
  }
  .dialog-inner .license {
    font-size: 1.1rem;
  }
}

/* .dialog-hdg
----------------------------------------------- */
.dialog-hdg {
  margin: 0 0 30px;
  color: #555;
  font-size: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .dialog-hdg {
    margin-bottom: 15px;
    font-size: 1.6rem;
  }
}

/* .dialog-close
----------------------------------------------- */
.dialog-close {
  position: absolute;
  top: 22px;
  right: 22px;
  overflow: hidden;
  margin: auto;
  width: 21px;
  height: 21px;
}
.dialog-close .dialog-btn-close {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding-top: 21px;
  width: 100%;
  height: 0;
  border: 0;
  background-color: transparent;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.dialog-close .dialog-btn-close::before, .dialog-close .dialog-btn-close::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 2px;
  background: #777;
}
.dialog-close .dialog-btn-close::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.dialog-close .dialog-btn-close::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.dialog-close .dialog-btn-close:hover, .dialog-close .dialog-btn-close:active, .dialog-close .dialog-btn-close:focus {
  opacity: .7;
}
@media only screen and (max-width: 767px) {
  .dialog-close {
    width: 20px;
  }
  .dialog-close .dialog-btn-close {
    padding-top: 20px;
  }
}

/* JS Off
----------------------------------------------- */
.no-js .modal, .no-js .dialog {
  position: static;
  display: block;
  opacity: 1;
}

/* ----------------------------------------------------------------
    Filter
----------------------------------------------------------------- */
/* .filter
----------------------------------------------- */
.filter {
  margin: 0 0 30px;
  text-align: center;
  letter-spacing: -.4em;
}
.filter button {
  position: relative;
  width: 100%;
  border: 0;
  background-color: transparent;
  color: #ec6c00;
  text-align: left;
}
.filter button::before {
  position: absolute;
}
.filter > li {
  position: relative;
  display: inline-block;
  letter-spacing: normal;
}
.filter > li.filter-reset button {
  padding: 10px 27px;
  border: 1px solid #fff;
}
.filter > li.filter-reset button::before {
  top: 1.1em;
  left: 9px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: 0;
  border-left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .filter {
    margin-right: -15px;
    margin-left: -15px;
    border-top: 1px solid #d7d9d9;
    text-align: left;
    font-size: 1.4rem;
  }
  .filter > li {
    display: block;
    border-bottom: 1px solid #d7d9d9;
  }
  .filter > li.filter-reset button {
    padding: 7px 27px;
  }
  .filter > li.filter-reset button::before {
    left: 4px;
  }
}

/* .filter-btn
----------------------------------------------- */
.filter-btn {
  width: 180px;
}
.filter-btn button {
  padding: 10px 27px;
  border: 1px solid #fff;
}
.filter-btn button::before {
  top: 1em;
  left: 9px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-top: 0;
  border-left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.filter .is-expand .filter-btn button {
  border-color: #d7d9d9;
  background-color: #fdefe5;
}
.filter .is-expand .filter-btn button::before {
  top: 1.2em;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
@media only screen and (max-width: 767px) {
  .filter-btn {
    width: auto;
  }
  .filter-btn button {
    padding: 7px 25px;
    border: none;
  }
  .filter-btn button::before {
    left: 10px;
  }
}

/* .filter-content
----------------------------------------------- */
.filter-content {
  position: absolute;
  top: 46px;
  left: 0;
  z-index: 100;
  width: 100%;
  text-align: left;
}
.filter-content ul {
  border-width: 0 1px;
  border-style: solid;
  border-color: #d7d9d9;
  background: #fff;
  font-size: 1.4rem;
}
.filter-content ul li {
  border-bottom: 1px solid #d7d9d9;
}
.filter-content ul button {
  display: block;
  padding: 9px 27px 8px;
  color: #777;
}
.filter-content ul button:hover, .filter-content ul button:active, .filter-content ul button:focus {
  background: #fdefe5;
}
@media only screen and (max-width: 767px) {
  .filter-content {
    top: 36px;
  }
  .filter-content ul {
    border: none;
    font-size: 1.2rem;
  }
  .filter-content ul button {
    padding-left: 34px;
    background-color: #fbfbfb;
  }
}

/* .sort-content
----------------------------------------------- */
.sort-content > * {
  opacity: 0;
  transition: all 1.5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

.sort-content .is-show {
  opacity: 1;
  -webkit-transform: translateY(0) scale(1);
  transform: translateY(0) scale(1);
}
.sort-content .is-show.is-remove {
  opacity: 0;
  transition-delay: 0;
  transition-duration: .5s;
  -webkit-transform: translateY(0) scale(.5);
  transform: translateY(0) scale(.5);
}

/* .sort-txt
----------------------------------------------- */
.sort-txt {
  text-align: center;
}
.grid[data-col='3'] .sort-txt {
  margin-left: 2%;
  padding: 30px 0 0;
}
.sort-txt.is-show.is-remove {
  opacity: 0;
  transition-duration: .5s;
  -webkit-transform: translateY(-30px) scale(1);
  transform: translateY(-30px) scale(1);
}
@media only screen and (max-width: 767px) {
  .grid[data-col='3'] .sort-txt {
    margin-left: 0;
  }
}

/* ----------------------------------------------------------------
    Unique
----------------------------------------------------------------- */
/* .uni-txt-lead
----------------------------------------------- */
.uni-txt-lead {
  color: #555;
  font-size: 1.6rem;
}

/* .uni-list-case
----------------------------------------------- */
.uni-list-case {
  margin: 0 0 30px;
}
.uni-list-case > :nth-last-child(-n+2) {
  margin-bottom: 0;
}
.uni-list-case dt, .uni-list-case dd {
  box-sizing: border-box;
  min-height: 30px;
  font-size: 1.6rem;
}
.uni-list-case dt {
  float: left;
  clear: both;
  margin: 0 10px 10px 0;
  padding: 4px 4px 2px;
  min-width: 110px;
  background: #777;
  color: #fff;
  text-align: center;
}
.uni-list-case dd {
  overflow: hidden;
  margin: 0 0 10px;
  padding: 4px 0 2px;
}
@media only screen and (max-width: 767px) {
  .uni-list-case dt, .uni-list-case dd {
    min-height: 25px;
    font-size: 1.2rem;
  }
}

/* .uni-lyt-filter
----------------------------------------------- */
.uni-lyt-filter {
  margin: 0 0 30px;
  padding: 30px;
  background: #fbfbfb;
}
.uni-lyt-filter > :last-child {
  margin-bottom: 0;
}
.uni-lyt-filter .lyt-list {
  text-align: center;
  letter-spacing: -.4em;
}
.uni-lyt-filter .lyt-list button {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  color: #555;
}
.uni-lyt-filter .lyt-list > li {
  position: relative;
  display: inline-block;
  margin: 0 11px;
  letter-spacing: normal;
}
.uni-lyt-filter .lyt-list > li .lyt-btn {
  min-width: 256px;
}
.uni-lyt-filter .lyt-list > li .lyt-btn button {
  padding: 10px 42px;
  border: 1px solid #d7d9d9;
  background: #fff;
}
.uni-lyt-filter .lyt-list > li .lyt-btn button::before {
  position: absolute;
  top: 50%;
  left: 18px;
  margin-top: -6px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.uni-lyt-filter .lyt-list > li .lyt-btn button:hover, .uni-lyt-filter .lyt-list > li .lyt-btn button:active, .uni-lyt-filter .lyt-list > li .lyt-btn button:focus {
  color: #ec6c00;
}
.uni-lyt-filter .lyt-list > li .lyt-content {
  position: absolute;
  top: 43px;
  left: 0;
  z-index: 10;
  box-sizing: border-box;
  width: 100%;
  border-width: 0 1px 1px;
  border-style: solid;
  border-color: #d7d9d9;
}
.uni-lyt-filter .lyt-list > li .lyt-content > :last-child {
  margin-bottom: 0;
}
.uni-lyt-filter .lyt-list > li .lyt-content li {
  border-top: 1px solid #d7d9d9;
}
.uni-lyt-filter .lyt-list > li .lyt-content li:first-child {
  border-top: 0;
}
.uni-lyt-filter .lyt-list > li .lyt-content button {
  padding: 10px 42px;
  border: 0;
  background: #fff;
  text-align: left;
}
.uni-lyt-filter .lyt-list > li .lyt-content button:hover, .uni-lyt-filter .lyt-list > li .lyt-content button:active, .uni-lyt-filter .lyt-list > li .lyt-content button:focus {
  background: #fdefe5;
}
.uni-lyt-filter .lyt-list > li.lyt-btn-02 button {
  padding: 10px 20px 10px 42px;
  border: 0;
  background: #e7e7e7;
}
.uni-lyt-filter .lyt-list > li.lyt-btn-02 button::before {
  position: absolute;
  top: 50%;
  left: 17px;
  margin-top: -4px;
  width: 6px;
  height: 6px;
  border: 1px solid #555;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uni-lyt-filter .lyt-list > li.lyt-btn-02 button:hover, .uni-lyt-filter .lyt-list > li.lyt-btn-02 button:active, .uni-lyt-filter .lyt-list > li.lyt-btn-02 button:focus {
  opacity: .7;
}
.uni-lyt-filter .lyt-list .is-expand .lyt-btn button {
  color: #ec6c00;
}
.uni-lyt-filter .lyt-list .is-expand .lyt-btn button::before {
  margin-top: -4px;
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
}
@media only screen and (max-width: 900px) {
  .uni-lyt-filter .lyt-list > li .lyt-btn {
    min-width: 230px;
  }
}
@media only screen and (max-width: 767px) {
  .uni-lyt-filter {
    padding: 15px;
  }
  .uni-lyt-filter .lyt-list > li {
    display: block;
    margin: 0 0 15px 0;
  }
  .uni-lyt-filter .lyt-list > li .lyt-btn {
    min-width: 0;
  }
  .uni-lyt-filter .lyt-list > li .lyt-content {
    top: 40px;
  }
}

/* .uni-nav-panel
----------------------------------------------- */
.uni-nav-panel > :last-child {
  margin-bottom: 0;
}

.uni-nav-panel .nav-hdg {
  position: relative;
  margin: 0 0 10px;
  padding: 0 0 0 15px;
  font-size: 1.6rem;
}
.uni-nav-panel .nav-hdg::before {
  position: absolute;
  top: 8px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.uni-nav-panel .nav-txt {
  margin: 0 0 12px;
}

.uni-nav-panel .nav-list {
  margin: -5px 0 15px;
  letter-spacing: -.4em;
  font-size: 1.2rem;
}
.uni-nav-panel .nav-list li {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  margin: 5px 5px 0 0;
  padding: 3px 10px 2px;
  min-width: 98px;
  background: #d7d9d9;
  text-align: center;
  letter-spacing: normal;
}

.uni-nav-panel .nav-list-02 {
  overflow: hidden;
  margin: 0 0 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.uni-nav-panel .nav-list-02 dt, .uni-nav-panel .nav-list-02 dd {
  float: left;
}
.uni-nav-panel .nav-list-02 dt {
  clear: both;
  font-weight: bold;
}
.uni-nav-panel .nav-list-02 a {
  text-decoration: none;
}
.uni-nav-panel .nav-list-02 a:hover, .uni-nav-panel .nav-list-02 a:active, .uni-nav-panel .nav-list-02 a:focus {
  text-decoration: underline;
}
.uni-nav-panel .nav-list-02 span {
  position: relative;
  display: inline-block;
  padding: 0 .75em 0 0;
}
.uni-nav-panel .nav-list-02 span::after {
  position: absolute;
  top: 0;
  right: 0;
  content: '\002F';
}
.uni-nav-panel .nav-list-02 span:last-child {
  padding-right: 0;
}
.uni-nav-panel .nav-list-02 span:last-child::after {
  display: none;
}

.uni-nav-panel > a {
  display: block;
  margin: 0 0 12px;
  text-decoration: none;
}
.uni-nav-panel > a > :last-child {
  margin-bottom: 0;
}
.uni-nav-panel > a .nav-list {
  color: #555;
}
.uni-nav-panel > a .nav-txt {
  color: #777;
}
.uni-nav-panel > a:hover .nav-hdg, .uni-nav-panel > a:active .nav-hdg, .uni-nav-panel > a:focus .nav-hdg {
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  .uni-nav-panel .nav-hdg {
    font-size: 1.4rem;
  }
}

/* .uni-panel-remediation
----------------------------------------------- */
.uni-panel-remediation {
  margin: 0 0 30px;
  border: 1px solid #d8d9da;
}
.uni-panel-remediation > .panel-demand {
  margin: 0;
  padding: 17px 20px;
  border-bottom: 1px solid #d8d9da;
  background: #f5f5f5;
  color: #555;
}
.uni-panel-remediation > .panel-demand > :last-child {
  margin-bottom: 0;
}
.uni-panel-remediation > .panel-demand p, .uni-panel-remediation > .panel-demand ul, .uni-panel-remediation > .panel-demand ol, .uni-panel-remediation > .panel-demand dl {
  margin-bottom: 15px;
}
.uni-panel-remediation > .panel-remediation {
  padding: 20px;
}
.uni-panel-remediation > .panel-remediation > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .uni-panel-remediation > .panel-voice {
    padding: 15px;
  }
  .uni-panel-remediation > .panel-demand {
    padding: 15px;
  }
}

/* .uni-hdg-faq
----------------------------------------------- */
.uni-hdg-faq {
  position: relative;
  margin: 40px 0 20px;
  padding: 3px 0 15px 50px;
  border-bottom: 1px solid #b1b1b1;
  color: #555;
  font-size: 1.8rem;
}
.uni-hdg-faq > span {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  box-sizing: border-box;
  padding: 3px 5px;
  min-width: 32px;
  min-height: 32px;
  background: #777;
  color: #fff;
  text-align: center;
  font-weight: normal;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .uni-hdg-faq {
    font-size: 1.6rem;
  }
  .uni-hdg-faq > span {
    padding: 7px 5px;
    font-size: 1.2rem;
  }
}

/* .uni-hdg-faq-02
----------------------------------------------- */
.uni-hdg-faq-02 {
  margin: 0 0 20px;
}
.uni-hdg-faq-02 > span {
  display: inline-block;
  box-sizing: border-box;
  padding: 4px 5px 3px;
  min-width: 62px;
  background: #777;
  color: #fff;
  text-align: center;
  font-weight: normal;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .uni-hdg-faq-02 > span {
    font-size: 1.2rem;
  }
}

/* .uni-txt-faq
----------------------------------------------- */
.uni-txt-faq {
  position: relative;
  padding: 0 0 0 30px;
  font-weight: bold;
  font-size: 1.6rem;
}
.uni-txt-faq::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7px;
}
.uni-txt-faq span {
  position: relative;
  padding: 0 0 0 20px;
}
.uni-txt-faq span::before, .uni-txt-faq span::after {
  position: absolute;
  left: 0;
}
.uni-txt-faq._right {
  color: #d22626;
}
.uni-txt-faq._right::before {
  width: 19px;
  height: 14px;
  background-position: -127px -64px;
  background-size: 147px auto;
}
.uni-txt-faq._right span::before {
  top: 4px;
  width: 10px;
  height: 10px;
  border: 2px solid #d22626;
  border-radius: 50%;
}
.uni-txt-faq._wrong {
  color: #3e50b4;
}
.uni-txt-faq._wrong::before {
  width: 19px;
  height: 14px;
  background-position: 0 -92px;
  background-size: 147px auto;
}
.uni-txt-faq._wrong span::before, .uni-txt-faq._wrong span::after {
  top: 10px;
  width: 14px;
  height: 2px;
  background: #3e50b4;
}
.uni-txt-faq._wrong span::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.uni-txt-faq._wrong span::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* .uni-panel-faq
----------------------------------------------- */
.uni-panel-faq {
  margin: 0 0 30px;
  padding: 20px;
  background: #f5f5f5;
}
.uni-panel-faq > :last-child {
  margin-bottom: 0;
}
.uni-panel-faq .panel-txt {
  color: #555;
  font-weight: bold;
  font-size: 1.6rem;
}
.uni-panel-faq .panel-txt span {
  position: relative;
  display: inline-block;
  margin: 0 30px 0 0;
  padding: 0 0 0 40px;
  font-size: 2.8rem;
}
.uni-panel-faq .panel-txt span::before, .uni-panel-faq .panel-txt span::after {
  position: absolute;
  left: 0;
}
.uni-panel-faq .panel-txt._right span::before {
  top: 6px;
  width: 20px;
  height: 20px;
  border: 4px solid #555;
  border-radius: 50%;
}
.uni-panel-faq .panel-txt._wrong span::before {
  top: 17px;
  width: 30px;
  height: 4px;
  background: #555;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.uni-panel-faq .panel-txt._wrong span::after {
  top: 17px;
  width: 30px;
  height: 4px;
  background: #555;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .uni-panel-faq {
    padding: 15px;
  }
}

/* .uni-hdg-column
----------------------------------------------- */
.uni-hdg-column {
  background: #f19500;
}
.uni-hdg-column .hdg-inner {
  margin: 0 auto;
  max-width: 900px;
  background: url('/download_file/view_inline/5498') no-repeat 100% 100%;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .uni-hdg-column .hdg-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .uni-hdg-column .hdg-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.uni-hdg-column .hdg-inner > :last-child {
  margin-bottom: 0;
}
.uni-hdg-column .hdg-main {
  display: table-cell;
  height: 170px;
  color: #fff;
  vertical-align: middle;
  font-weight: normal;
  font-size: 3.5rem;
}
@media only screen and (max-width: 767px) {
  .uni-hdg-column .hdg-inner {
    padding-top: 29px;
    padding-bottom: 120px;
    background-size: contain;
  }
  .uni-hdg-column .hdg-main {
    display: block;
    height: auto;
    font-size: 2rem;
  }
}

/* .uni-panel-search
----------------------------------------------- */
.uni-panel-search {
  margin: 0 0 30px 0;
  padding: 20px;
  background: #e7e7e7;
}
.uni-panel-search > .panel-hdg {
  margin: 0 0 10px;
  color: #555;
  font-weight: normal;
  font-size: 1.4rem;
}
.uni-panel-search .panel-lyt {
  position: relative;
  margin: 0 0 15px;
}
.uni-panel-search .panel-form-search {
  box-sizing: border-box;
  padding: 5px 46px 5px 10px;
  width: 100%;
  height: 30px;
  border: 0;
  background: #fdfdfd;
  box-shadow: inset 0 1px 0 #d7d9d9;
}
.uni-panel-search .panel-btn-search {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 14px;
  height: 100%;
  border: 0;
  background: #fdfdfd;
  box-shadow: inset 0 1px 0 #d7d9d9;
}
.uni-panel-search .panel-btn-search img {
  vertical-align: middle;
}
.uni-panel-search .panel-list {
  margin-top: -10px;
}
.uni-panel-search .panel-list li {
  float: left;
  margin: 10px 30px 0 0;
}
.uni-panel-search .panel-list li label {
  cursor: pointer;
}
.uni-panel-search .panel-list li input[type='radio'] {
  display: none;
}
.uni-panel-search .panel-list li input[type='radio'] + span {
  position: relative;
  display: inline-block;
  padding-left: 26px;
}
.uni-panel-search .panel-list li input[type='radio'] + span::before {
  position: absolute;
  top: .15em;
  left: 0;
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  border: 1px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
}
.uni-panel-search .panel-list li input[type='radio']:checked + span::before {
  border-width: 4px;
  border-color: #ec6c00;
}
.uni-panel-search > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .uni-panel-search > .panel-hdg {
    font-size: 1.2rem;
  }
  .uni-panel-search .panel-list {
    margin-top: 0;
  }
  .uni-panel-search .panel-list li {
    float: none;
    margin: 0 0 10px;
  }
  .uni-panel-search .panel-list li input[type='radio'] + span::before {
    top: .1em;
  }
  .uni-panel-search .panel-list li:last-child {
    margin-bottom: 0;
  }
}

/* .uni-list-result
----------------------------------------------- */
.uni-list-result {
  border-top: 1px dotted #d7d9d9;
}
.uni-list-result li {
  padding: 16px 0;
  border-bottom: 1px dotted #d7d9d9;
}
.uni-list-result li > :last-child {
  margin-bottom: 0;
}
.uni-list-result a {
  text-decoration: none;
}
.uni-list-result a:hover, .uni-list-result a:active, .uni-list-result a:focus {
  text-decoration: underline;
}
.uni-list-result p {
  margin-bottom: 0;
}
.uni-list-result .list-hdg {
  margin: 0 0 7px;
  font-size: 1.6rem;
}
.uni-list-result .list-hdg a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
}
.uni-list-result .list-hdg a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uni-list-result .list-txt {
  background: #ffed2b;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .uni-list-result .list-hdg {
    font-size: 1.2rem;
  }
}

/* .uni-nav-pagination
----------------------------------------------- */
.uni-nav-pagination {
  text-align: center;
  letter-spacing: -.4em;
}
.uni-nav-pagination li {
  display: inline-block;
  margin: 0 10px 10px;
  vertical-align: bottom;
  letter-spacing: normal;
  line-height: 1;
}
.uni-nav-pagination li a {
  position: relative;
  display: table;
  overflow: hidden;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  background: #f5f5f5;
  color: #777;
  vertical-align: middle;
  text-decoration: none;
}
.uni-nav-pagination li a span {
  display: table-cell;
  vertical-align: middle;
}
.uni-nav-pagination li a:hover, .uni-nav-pagination li a:active, .uni-nav-pagination li a:focus {
  color: #ec6c00;
}
.uni-nav-pagination li a:not([href]):hover, .uni-nav-pagination li a:not([href]):active, .uni-nav-pagination li a:not([href]):focus {
  color: #777;
}
.uni-nav-pagination li.is-current a {
  background: #ec6c00;
  color: #fff;
}
.uni-nav-pagination li.is-current a:hover, .uni-nav-pagination li.is-current a:active, .uni-nav-pagination li.is-current a:focus {
  color: #fff;
}
.uni-nav-pagination li.nav-prev a div, .uni-nav-pagination li.nav-next a div {
  position: relative;
  overflow: hidden;
  width: 30px;
  height: 30px;
}
.uni-nav-pagination li.nav-prev a div::before, .uni-nav-pagination li.nav-next a div::before {
  position: absolute;
  top: 50%;
  margin-top: -4px;
}
.uni-nav-pagination li.nav-prev a div span, .uni-nav-pagination li.nav-next a div span {
  display: block;
  color: transparent;
  opacity: 0;
}
.uni-nav-pagination li.nav-prev a:hover div::before, .uni-nav-pagination li.nav-prev a:active div::before, .uni-nav-pagination li.nav-prev a:focus div::before, .uni-nav-pagination li.nav-next a:hover div::before, .uni-nav-pagination li.nav-next a:active div::before, .uni-nav-pagination li.nav-next a:focus div::before {
  opacity: .5;
}
.uni-nav-pagination li.nav-prev a:not([href]):hover div::before, .uni-nav-pagination li.nav-prev a:not([href]):active div::before, .uni-nav-pagination li.nav-prev a:not([href]):focus div::before, .uni-nav-pagination li.nav-next a:not([href]):hover div::before, .uni-nav-pagination li.nav-next a:not([href]):active div::before, .uni-nav-pagination li.nav-next a:not([href]):focus div::before {
  opacity: 1;
}
.uni-nav-pagination li.nav-prev a div::before {
  left: 50%;
  margin-left: -2px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.uni-nav-pagination li.nav-next a div::before {
  right: 50%;
  margin-right: -2px;
  width: 6px;
  height: 6px;
  border: 1px solid #ec6c00;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* .uni-lyt-seminar
----------------------------------------------- */
.uni-lyt-seminar {
  position: relative;
  margin: 0 0 30px;
}
.uni-lyt-seminar > :last-child {
  margin-bottom: 0;
}
.uni-lyt-seminar .uni-btn li {
  position: absolute;
}
.uni-lyt-seminar._select ._btn {
  top: 20px;
  right: 0;
}
.uni-lyt-seminar._select ._btn-02 {
  bottom: 0;
  left: 0;
}
.uni-lyt-seminar._select ._btn-03 {
  bottom: 0;
  left: 299px;
}
.uni-lyt-seminar._hulft ._btn {
  top: 21px;
  right: 0;
}
.uni-lyt-seminar._hulft ._btn-02 {
  top: 122px;
  right: 0;
}
.uni-lyt-seminar._hulft ._btn-03 {
  top: 224px;
  right: 0;
}
.uni-lyt-seminar._hulft ._btn-04 {
  right: 0;
  bottom: 18px;
}
.uni-lyt-seminar._hulft-family ._btn {
  top: 21px;
  right: 0;
}
.uni-lyt-seminar._hulft-family ._btn-02 {
  top: 122px;
  right: 0;
}
.uni-lyt-seminar._hulft-family ._btn-03 {
  top: 224px;
  right: 0;
}
.uni-lyt-seminar._hulft-family ._btn-04 {
  right: 0;
  bottom: 18px;
}
@media only screen and (max-width: 900px) {
  .uni-lyt-seminar {
    display: none;
  }
}

/* .uni-grid-seminar
----------------------------------------------- */
.uni-grid-seminar {
  position: relative;
  margin: 0 0 30px;
  padding: 25px 20px;
  background: #f6f6f6;
}
.uni-grid-seminar > .grid-col, .uni-grid-seminar > .grid-col-02 {
  float: left;
}
.uni-grid-seminar > .grid-col > :last-child, .uni-grid-seminar > .grid-col-02 > :last-child {
  margin-bottom: 0;
}
.uni-grid-seminar > .grid-col {
  position: relative;
  margin: 0 54px 0 0;
  padding: 0 60px 0 0;
  width: 242px;
}
.uni-grid-seminar > .grid-col::before {
  position: absolute;
  top: 50%;
  right: -22px;
  margin-top: -22px;
  width: 0;
  height: 0;
  border-top: 22px solid transparent;
  border-right: 22px solid transparent;
  border-bottom: 22px solid transparent;
  border-left: 15px solid #b1b1b1;
}
.uni-grid-seminar > .grid-col-02 {
  width: 504px;
}
.uni-grid-seminar .grid-list {
  margin: -20px 0 0 -20px;
}
.uni-grid-seminar .grid-list li {
  float: left;
  margin: 20px 0 0 20px;
}
@media only screen and (max-width: 900px) {
  .uni-grid-seminar {
    display: none;
  }
}

/* ----------------------------------------------------------------
    Wysiwyg
----------------------------------------------------------------- */
/* .wysiwyg-tbl
----------------------------------------------- */
.wysiwyg-tbl {
  margin: 0 0 30px;
}
.wysiwyg-tbl > :last-child {
  margin-bottom: 0;
}
.wysiwyg-tbl table {
  margin: 0 0 30px;
  width: 100%;
  border: 1px solid #d7d9d9;
}
.wysiwyg-tbl table th > :last-child, .wysiwyg-tbl table td > :last-child {
  margin-bottom: 0;
}
.wysiwyg-tbl table th > :last-child > :last-child, .wysiwyg-tbl table td > :last-child > :last-child {
  margin-bottom: 0;
}
.wysiwyg-tbl table th, .wysiwyg-tbl table td {
  padding: 12px 18px 11px;
  border: 1px solid #d7d9d9;
  vertical-align: middle;
  text-align: left;
}
.wysiwyg-tbl table th p, .wysiwyg-tbl table th ul, .wysiwyg-tbl table th ol, .wysiwyg-tbl table th dl, .wysiwyg-tbl table td p, .wysiwyg-tbl table td ul, .wysiwyg-tbl table td ol, .wysiwyg-tbl table td dl {
  margin-bottom: 15px;
}
.wysiwyg-tbl table thead tr:first-child {
  border-top: 3px solid #555;
}
.wysiwyg-tbl table thead th, .wysiwyg-tbl table thead td {
  background: #f5f5f5;
  color: #555;
}
.wysiwyg-tbl table tbody th {
  background: #fbfbfb;
  color: #555;
}
.wysiwyg-tbl table tbody td {
  background: #fff;
}

/* .wysiwyg-list
----------------------------------------------- */
.wysiwyg-list {
  margin: 0 0 30px;
}
.wysiwyg-list > :last-child {
  margin-bottom: 0;
}
.wysiwyg-list ul > li {
  position: relative;
  margin: 0 0 12px;
  padding: 0 0 0 16px;
}
.wysiwyg-list ul > li::before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #777;
}
.wysiwyg-list ul > li:last-child {
  margin-bottom: 0;
}
.wysiwyg-list ul > li > :last-child {
  margin-bottom: 0;
}
.wysiwyg-list ul > li p {
  margin-bottom: 12px;
}
.wysiwyg-list ul > li > ul, .wysiwyg-list ul > li ol {
  margin-top: 12px;
}
.wysiwyg-list ul > li > ul > li:last-child, .wysiwyg-list ul > li ol > li:last-child {
  margin-bottom: 0;
}
.wysiwyg-list ul > li > ul > li::before {
  width: 4px;
  height: 4px;
  background: #b9b9b9;
}
.wysiwyg-list ul > li > ul > li:last-child {
  margin-bottom: 0;
}
.wysiwyg-list ol {
  counter-reset: number;
}
.wysiwyg-list ol > li {
  display: table;
  margin: 0 0 12px;
  counter-increment: number;
}
.wysiwyg-list ol > li > :last-child {
  margin-bottom: 0;
}
.wysiwyg-list ol > li::before {
  /* 出力結果 -> 'n.' */
  display: table-cell;
  padding: 0 .5em 0 0;
  min-width: 1.5em;
  content: counter(number) '.';
  text-align: right;
}
.wysiwyg-list ol > li > ul, .wysiwyg-list ol > li ol {
  margin-top: 12px;
}
.wysiwyg-list ol > li > ul > li:last-child, .wysiwyg-list ol > li ol > li:last-child {
  margin-bottom: 0;
}
.wysiwyg-list ol > li > ul > li::before {
  width: 4px;
  height: 4px;
  background: #b9b9b9;
}
.wysiwyg-list .link-list > li {
  padding-left: 0;
}
.wysiwyg-list .link-list > li::before {
  display: none;
}

/* ----------------------------------------------------------------
    Top
----------------------------------------------------------------- */
/* .t-content-fluid
----------------------------------------------- */
.t-content-fluid {
  margin: 0 0 30px 0;
}
.t-content-fluid > :last-child {
  margin-bottom: 0;
}

/* .t-content-fluid-02
----------------------------------------------- */
.t-content-fluid-02 {
  padding: 60px 0 30px;
}
.t-content-fluid-02 > :last-child {
  margin-bottom: 0;
}
.t-content-fluid-02 + .t-content-fluid-02 {
  padding-top: 30px;
}
.t-content-fluid-03 + .t-content-fluid-02 {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .t-content-fluid-02 {
    padding: 40px 0 25px;
  }
  .t-content-fluid-02 + .t-content-fluid-02 {
    padding-top: 20px;
  }
  .t-content-fluid-03 + .t-content-fluid-02 {
    padding-top: 20px;
  }
}

/* .t-content-fluid-03
----------------------------------------------- */
.t-content-fluid-03 {
  padding: 5px 0;
  background: #ebebeb;
}
.t-content-fluid-03 > :last-child {
  margin-bottom: 0;
}

/* .t-content-fluid-04
----------------------------------------------- */
.t-content-fluid-04 {
  padding: 50px 0;
  background: #f5f5f5;
}
.t-content-fluid-04 > :last-child {
  margin-bottom: 0;
}

/* .t-hdg-l2
----------------------------------------------- */
.t-hdg-l2 {
  margin: 0 0 20px 0;
  color: #555;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .t-hdg-l2 {
    font-size: 1.8rem;
  }
}

/* .t-txt-lead
----------------------------------------------- */
.t-txt-lead {
  text-align: center;
  font-size: 2.6rem;
}
.t-txt-lead strong {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .t-txt-lead {
    font-size: 1.8rem;
  }
}

/* .t-bnr-list
----------------------------------------------- */
.t-bnr-list {
  margin: -12px 0 0 -4.54545%;
}
.t-bnr-list > li {
  float: left;
  margin: 12px 0 0 4.34783%;
  width: 45.65217%;
}
@media only screen and (max-width: 767px) {
  .t-bnr-list {
    margin-top: -20px;
  }
  .t-bnr-list > li {
    margin-top: 20px;
  }
}

/* .t-bnr-list-02
----------------------------------------------- */
.t-bnr-list-02 img {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .t-bnr-list-02 li {
    margin-bottom: 15px !important;
  }
  .t-bnr-list-02 li:last-child {
    margin-bottom: 0 !important;
  }
}

/* .t-panel
----------------------------------------------- */
.t-panel {
  margin: 0 0 30px 0;
  padding: 20px;
  border: 1px solid #c9cbca;
}
.t-panel > :last-child {
  margin-bottom: 0;
}
.t-panel .panel-grid {
  display: table;
  width: 100%;
}
.t-panel .panel-grid > .panel-col, .t-panel .panel-grid > .panel-col-02 {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: middle;
}
.t-panel .panel-grid > .panel-col > :last-child, .t-panel .panel-grid > .panel-col-02 > :last-child {
  margin-bottom: 0;
}
.t-panel .panel-grid > .panel-col {
  padding-right: 2.331%;
  width: 73.19347%;
}
.t-panel .panel-grid > .panel-col-02 {
  width: 24.47552%;
}
.t-panel p {
  margin: 0;
}
.t-panel b {
  color: #555;
}
@media only screen and (max-width: 767px) {
  .t-panel {
    padding: 20px;
  }
  .t-panel .panel-grid {
    display: block;
  }
  .t-panel .panel-grid > .panel-col, .t-panel .panel-grid > .panel-col-02 {
    display: block;
    width: 100%;
  }
  .t-panel .panel-grid > .panel-col {
    margin: 0 0 20px;
  }
}

/* .t-panel-02
----------------------------------------------- */
.t-panel-02 {
  margin: 0 0 30px 0;
  padding: 30px;
  background: #f5f5f5;
}
.t-panel-02 > :last-child {
  margin-bottom: 0;
}
.t-panel-02 .panel-grid {
  display: table;
  width: 100%;
}
.t-panel-02 .panel-col, .t-panel-02 .panel-col-02 {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: middle;
}
.t-panel-02 .panel-col > :last-child, .t-panel-02 .panel-col-02 > :last-child {
  margin-bottom: 0;
}
.t-panel-02 .panel-col {
  padding-right: 3.57143%;
  width: 21.42857%;
}
.t-panel-02 .panel-hdg {
  position: relative;
  padding: 0 0 78px 0;
  color: #555;
  text-align: center;
  font-size: 2.4rem;
}
.t-panel-02 .panel-hdg span {
  display: block;
  font-weight: normal;
  font-size: 1.4rem;
}
.t-panel-02 .panel-hdg::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.t-panel-02 .panel-hdg._customer::after {
  width: 67px;
  height: 57px;
  background-position: -80px 0;
  background-size: 147px auto;
}
.t-panel-02 .panel-hdg._partner::after {
  width: 78px;
  height: 62px;
  background-position: 0 0;
  background-size: 147px auto;
}
.t-panel-02 .panel-link-list {
  margin: -15px 0 15px;
}
.t-panel-02 .panel-link-list li {
  display: table;
  float: left;
  margin: 15px 0 0 15px;
  width: calc((100% - 30px) / 3);
}
.t-panel-02 .panel-link-list li a {
  display: table-cell;
  padding: 27px 10px 26px;
  background: #fff;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
}
.t-panel-02 .panel-link-list li a:hover, .t-panel-02 .panel-link-list li a:active, .t-panel-02 .panel-link-list li a:focus {
  background: #ec6c00;
  color: #fff;
}
.t-panel-02 .panel-link-list li:nth-child(3n+1) {
  margin-left: 0;
}
@media only screen and (max-width: 767px) {
  .t-panel-02 {
    padding: 20px;
  }
  .t-panel-02 .panel-grid, .t-panel-02 .panel-col, .t-panel-02 .panel-col-02 {
    display: block;
  }
  .t-panel-02 .panel-col {
    margin: 0 0 20px;
    padding-right: 0;
    width: 100%;
  }
  .t-panel-02 .panel-hdg {
    padding-bottom: 60px;
    font-size: 1.6rem;
  }
  .t-panel-02 .panel-hdg span {
    font-size: 1.2rem;
  }
  .t-panel-02 .panel-link-list {
    margin: 0 0 20px;
  }
  .t-panel-02 .panel-link-list li {
    display: block;
    float: none;
    margin: 0 0 10px;
    width: 100%;
  }
  .t-panel-02 .panel-link-list li:last-child {
    margin-bottom: 0;
  }
  .t-panel-02 .panel-link-list li a {
    display: block;
  }
}

/* ----------------------------------------------------------------
    Reason
----------------------------------------------------------------- */
[class^='r-content-fluid'] {
  color: #555;
}
[class^='r-content-fluid'] .list-note {
  margin-top: 0;
}

/* .r-content-fluid
----------------------------------------------- */
.r-content-fluid {
  padding: 74px 0 60px;
  background: #fff url(/download_file/view_inline/5445) no-repeat 50% top;
}
@media only screen and (max-width: 767px) {
  .r-content-fluid {
    padding: 30px 0;
    background-image: none;
  }
}

/* .r-content-fluid-02
----------------------------------------------- */
.r-content-fluid-02 {
  padding: 74px 0 60px;
  background: #e8e8e8 url(/download_file/view_inline/5446) no-repeat 50% bottom;
}
@media only screen and (max-width: 767px) {
  .r-content-fluid-02 {
    padding: 30px 0;
  }
}

/* .r-content-fluid-03
----------------------------------------------- */
.r-content-fluid-03 {
  overflow: hidden;
  padding: 74px 0 60px;
  background: #fff url(/download_file/view_inline/5447) no-repeat 50% bottom;
}
@media only screen and (max-width: 767px) {
  .r-content-fluid-03 {
    padding: 30px 0;
  }
}

/* .r-content-fluid-04
----------------------------------------------- */
.r-content-fluid-04 {
  padding: 74px 0 60px;
  background: #e8e8e8 url(/download_file/view_inline/5448) no-repeat 100% bottom;
}
@media only screen and (max-width: 767px) {
  .r-content-fluid-04 {
    padding: 30px 0;
  }
}

/* .r-content-fluid-05
----------------------------------------------- */
.r-content-fluid-05 {
  padding: 74px 0 60px;
  background: #e0e3e4 url(/download_file/view_inline/5449) no-repeat 50% top;
}
@media only screen and (max-width: 767px) {
  .r-content-fluid-05 {
    padding: 30px 0;
  }
}

/* .r-content-fluid-06
----------------------------------------------- */
.r-content-fluid-06 {
  padding: 74px 0 60px;
  background: #fff;
}
@media only screen and (max-width: 767px) {
  .r-content-fluid-06 {
    padding: 30px 0;
  }
}

/* .r-hdg-l1
----------------------------------------------- */
.r-hdg-l1 {
  box-sizing: border-box;
  padding: 72px 0 18px;
  min-height: 484px;
  background: #000 url(/download_file/view_inline/5444) no-repeat 50% top;
}
.r-hdg-l1 .hdg-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .r-hdg-l1 .hdg-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .r-hdg-l1 .hdg-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.r-hdg-l1 .hdg-inner > :last-child {
  margin-bottom: 0;
}
.r-hdg-l1 .hdg-main {
  color: #fff;
  letter-spacing: .05em;
  font-weight: normal;
  font-size: 6rem;
  line-height: 1.38;
}
.r-hdg-l1 .hdg-main img {
  vertical-align: baseline;
}
.r-hdg-l1 .hdg-media {
  display: table;
  margin: 0 0 40px;
  width: 100%;
}
.r-hdg-l1 .hdg-media .hdg-media-col, .r-hdg-l1 .hdg-media .hdg-media-item {
  display: table-cell;
  vertical-align: middle;
}
.r-hdg-l1 .hdg-media .hdg-media-col > :last-child, .r-hdg-l1 .hdg-media .hdg-media-item > :last-child {
  margin-bottom: 0;
}
.r-hdg-l1 .hdg-media .hdg-media-col {
  width: 48.88889%;
}
.r-hdg-l1 .hdg-media .hdg-media-item {
  padding-left: 2.22222%;
  width: 51.11111%;
  text-align: center;
}
.r-hdg-l1 .list-note {
  color: #b1b1b1;
}
@media only screen and (max-width: 900px) {
  .r-hdg-l1 {
    padding-top: 40px;
    padding-bottom: 36px;
    min-height: auto;
  }
  .r-hdg-l1 .hdg-main {
    text-align: center;
    font-size: 5rem;
  }
  .r-hdg-l1 .hdg-main br {
    display: none;
  }
  .r-hdg-l1 .hdg-media {
    display: block;
    margin-bottom: 30px;
  }
  .r-hdg-l1 .hdg-media .hdg-media-col, .r-hdg-l1 .hdg-media .hdg-media-item {
    display: block;
    width: auto;
  }
  .r-hdg-l1 .hdg-media .hdg-media-item {
    margin: 13px 0 0;
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  .r-hdg-l1 {
    padding-top: 30px;
    padding-bottom: 26px;
  }
  .r-hdg-l1 .hdg-main {
    letter-spacing: 0;
    font-size: 3rem;
  }
}

/* .r-hdg-l2
----------------------------------------------- */
.r-hdg-l2 {
  margin: 0 0 60px;
  text-align: center;
  font-weight: normal;
  font-size: 4.8rem;
  line-height: 1.2;
}
.r-hdg-l2 .hdg-strong {
  font-weight: bold;
  font-size: 7.6rem;
}
.r-hdg-l2 sup, .r-hdg-l2 sub {
  font-size: 1.8rem;
}
@media only screen and (max-width: 900px) {
  .r-hdg-l2 {
    font-size: 4rem;
  }
  .r-hdg-l2 .hdg-strong {
    font-size: 6rem;
  }
}
@media only screen and (max-width: 767px) {
  .r-hdg-l2 {
    margin-bottom: 30px;
    font-size: 2.4rem;
  }
  .r-hdg-l2 .hdg-strong {
    font-size: 3.8rem;
  }
  .r-hdg-l2 sup, .r-hdg-l2 sub {
    font-size: 1.4rem;
  }
}

/* .r-hdg-l2-02
----------------------------------------------- */
.r-hdg-l2-02 {
  margin: 0 0 60px;
  text-align: center;
  font-size: 4.4rem;
  line-height: 1.25;
}
.r-hdg-l2-02 span {
  font-weight: normal;
  font-size: 4rem;
}
@media only screen and (max-width: 900px) {
  .r-hdg-l2-02 {
    font-size: 4rem;
  }
  .r-hdg-l2-02 span {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 767px) {
  .r-hdg-l2-02 {
    margin-bottom: 30px;
    font-size: 2.2rem;
  }
  .r-hdg-l2-02 span {
    font-size: 2rem;
  }
}

/* .r-hdg-l3
----------------------------------------------- */
.r-hdg-l3 {
  display: table;
  box-sizing: border-box;
  margin: 0 0 20px;
  padding: 30px 36px;
  width: 100%;
  background: #fff;
  font-size: 2rem;
  line-height: 1.2;
}
.r-hdg-l3 img, .r-hdg-l3 span {
  display: table-cell;
  vertical-align: middle;
}
.r-hdg-l3 img {
  max-width: none;
}
.r-hdg-l3 span {
  padding: 0 0 0 33px;
}
@media only screen and (max-width: 767px) {
  .r-hdg-l3 {
    display: block;
    font-size: 1.5rem;
  }
  .r-hdg-l3 img, .r-hdg-l3 span {
    display: block;
  }
  .r-hdg-l3 img {
    max-width: 100%;
    width: 100%;
  }
  .r-hdg-l3 span {
    margin: 10px 0 0;
    padding: 0;
  }
}

/* .r-hdg-l3-02
----------------------------------------------- */
.r-hdg-l3-02 {
  margin: 60px 0 30px;
  text-align: center;
  font-weight: normal;
  font-size: 3rem;
}
@media only screen and (max-width: 767px) {
  .r-hdg-l3-02 {
    margin: 30px 0;
    font-size: 2rem;
  }
}

/* .r-txt
----------------------------------------------- */
.r-txt {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .r-txt {
    font-size: 1.2rem;
  }
}

/* .r-txt-02
----------------------------------------------- */
.r-txt-02 {
  color: #ec6c00;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.2;
}
.r-txt-02 .txt-strong {
  color: #ec6c00;
  font-size: 5rem;
}
.r-txt-02 .txt-strong-02 {
  font-size: 3rem;
}
.r-txt-02 .txt-note {
  position: relative;
  top: -10px;
  margin-top: -10px;
  color: #555;
  font-weight: normal;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .r-txt-02 {
    font-size: 1.5rem;
  }
  .r-txt-02 .txt-strong {
    font-size: 2.5rem;
  }
  .r-txt-02 .txt-strong-02 {
    font-size: 2rem;
  }
  .r-txt-02 .txt-note {
    top: 0;
    font-size: 1.1rem;
  }
}

/* .r-list
----------------------------------------------- */
.r-list li {
  margin: 0 0 20px;
}
.r-list li > :last-child {
  margin-bottom: 0;
}

.r-list .list-inner {
  display: table;
  margin: 0;
  width: 100%;
  line-height: 1.2;
}
.r-list .list-inner dt, .r-list .list-inner dd {
  display: table-cell;
  vertical-align: baseline;
  font-weight: bold;
  font-size: 2rem;
}
.r-list .list-inner dt {
  padding: 0 15px 0 0;
}
.r-list .list-inner dt span {
  color: #777;
  font-weight: normal;
  font-size: 1.2rem;
}
.r-list .list-inner dd {
  color: #ec6c00;
  text-align: right;
}
.r-list .list-inner dd em {
  font-size: 4.2rem;
}

.r-list .list-txt {
  color: #777;
  font-size: 1.2rem;
}

@media only screen and (max-width: 767px) {
  .r-list .list-inner {
    display: block;
  }
  .r-list .list-inner dt, .r-list .list-inner dd {
    display: block;
    font-size: 1.6rem;
  }
  .r-list .list-inner dt {
    padding: 0;
  }
  .r-list .list-inner dt span {
    font-size: 1.1rem;
  }
  .r-list .list-inner dd {
    margin: 10px 0 0;
  }
  .r-list .list-inner dd em {
    font-size: 2.2rem;
  }
  .r-list .list-txt {
    margin-top: 10px;
    font-size: 1.1rem;
  }
}

/* .r-list-02
----------------------------------------------- */
.r-list-02 {
  margin: -17px 0 30px -4.42105%;
}
.r-list-02 li {
  position: relative;
  float: left;
  box-sizing: border-box;
  margin: 17px 0 0 4.23387%;
  padding: 0 0 0 33px;
  min-height: 44px;
  width: 45.76613%;
}
.r-list-02 li > :last-child {
  margin-bottom: 0;
}
.r-list-02 li img {
  position: absolute;
  top: 0;
  left: 0;
}
.r-list-02 .list-inner {
  display: table;
  width: 100%;
}
.r-list-02 .list-inner dt, .r-list-02 .list-inner dd {
  display: table-cell;
  vertical-align: baseline;
  font-weight: bold;
}
.r-list-02 .list-inner dt {
  padding: 0 10px 0 0;
  font-size: 1.6rem;
}
.r-list-02 .list-inner dd {
  text-align: right;
  font-size: 2.6rem;
}
.r-list-02 .list-inner dd span {
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  .r-list-02 {
    margin-left: 0;
  }
  .r-list-02 li {
    float: none;
    margin-left: 0;
    width: auto;
  }
  .r-list-02 .list-inner dt {
    padding-right: 0;
    height: 44px;
    vertical-align: middle;
    font-size: 1.2rem;
  }
  .r-list-02 .list-inner dt br {
    display: none;
  }
  .r-list-02 .list-inner dd {
    vertical-align: middle;
    font-size: 1.8rem;
  }
  .r-list-02 .list-inner dd span {
    font-size: 2rem;
  }
}

/* .r-list-03
----------------------------------------------- */
.r-list-03 {
  margin: -30px 0 30px -2.66667%;
}
.r-list-03 li {
  position: relative;
  float: left;
  margin: 30px 0 0 2.5974%;
  width: 22.4026%;
  text-align: center;
}
.r-list-03 li > :last-child {
  margin-bottom: 0;
}
.r-list-03 .list-txt {
  position: relative;
  z-index: 1;
  margin: 0 auto 13px;
  width: 207px;
  height: 207px;
}
.r-list-03 .list-txt::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: #fff;
}
.r-list-03 .list-txt p {
  display: table-cell;
  box-sizing: border-box;
  padding: 0 10px;
  width: 207px;
  height: 207px;
  color: #ec6c00;
  vertical-align: middle;
  font-size: 3rem;
}
.r-list-03 .list-txt p span {
  font-size: 5rem;
}
.r-list-03 .list-txt-02 {
  font-weight: bold;
  font-size: 2rem;
}
@media only screen and (max-width: 900px) {
  .r-list-03 .list-txt {
    width: 168px;
    height: 168px;
  }
  .r-list-03 .list-txt p {
    width: 168px;
    height: 168px;
    font-size: 2.5rem;
  }
  .r-list-03 .list-txt p span {
    font-size: 3.8rem;
  }
  .r-list-03 .list-txt-02 {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .r-list-03 {
    margin-left: -2.66667%;
  }
  .r-list-03 li {
    margin-left: 2.5974%;
    width: 47.4026%;
  }
  .r-list-03 .list-txt {
    width: 140px;
    height: 140px;
  }
  .r-list-03 .list-txt p {
    width: 140px;
    height: 140px;
    font-size: 2rem;
  }
  .r-list-03 .list-txt p span {
    font-size: 2.5rem;
  }
  .r-list-03 .list-txt-02 {
    font-size: 1.5rem;
  }
}

/* .r-grid
----------------------------------------------- */
.r-grid {
  margin: -30px 0 30px -3.77778%;
}
.r-grid > .grid-col, .r-grid > .grid-col-02 {
  float: left;
  margin: 30px 0 0 3.64026%;
}
.r-grid > .grid-col > :last-child, .r-grid > .grid-col-02 > :last-child {
  margin-bottom: 0;
}
.r-grid > .grid-col {
  width: 42.39829%;
}
.r-grid > .grid-col-02 {
  width: 50.3212%;
}
@media only screen and (max-width: 900px) {
  .r-grid {
    margin: 0 0 30px;
  }
  .r-grid > .grid-col, .r-grid > .grid-col-02 {
    float: none;
    margin: 0 0 30px;
    width: auto;
  }
}

/* .r-grid-02
----------------------------------------------- */
.r-grid-02 {
  margin: -30px 0 30px -5%;
}
.r-grid-02 > .grid-col, .r-grid-02 > .grid-col-02 {
  float: left;
  margin: 30px 0 0 4.7619%;
}
.r-grid-02 > .grid-col > :last-child, .r-grid-02 > .grid-col-02 > :last-child {
  margin-bottom: 0;
}
.r-grid-02 > .grid-col {
  width: 40.21164%;
}
.r-grid-02 > .grid-col-02 {
  width: 50.26455%;
}
@media only screen and (max-width: 900px) {
  .r-grid-02 {
    margin: 0 0 30px;
  }
  .r-grid-02 > .grid-col, .r-grid-02 > .grid-col-02 {
    float: none;
    margin: 0 0 30px;
    width: auto;
  }
}

/* .r-grid-03
----------------------------------------------- */
.r-grid-03 {
  margin: -30px 0 30px -7.22222%;
}
.r-grid-03 > .grid-col, .r-grid-03 > .grid-col-02 {
  float: left;
  margin: 30px 0 0 6.73575%;
}
.r-grid-03 > .grid-col > :last-child, .r-grid-03 > .grid-col-02 > :last-child {
  margin-bottom: 0;
}
.r-grid-03 > .grid-col {
  width: 43.00518%;
}
.r-grid-03 > .grid-col-02 {
  width: 43.52332%;
}
@media only screen and (max-width: 900px) {
  .r-grid-03 {
    margin: 0 0 30px;
  }
  .r-grid-03 > .grid-col, .r-grid-03 > .grid-col-02 {
    float: none;
    margin: 0 0 30px;
    width: auto;
  }
  .r-grid-03 > :last-child {
    margin-bottom: 0;
  }
}

/* .r-media
----------------------------------------------- */
.r-media {
  margin: 0 0 30px;
}
.r-media .media-item {
  position: relative;
  margin: 0;
}
.r-media .media-item .media-layer {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
}
.r-media .media-item .media-layer-02 {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
}

/* .r-lyt-graph
----------------------------------------------- */
.r-lyt-graph {
  position: relative;
  margin: 0;
  max-width: 420px;
}
.r-lyt-graph figcaption {
  position: absolute;
  top: -20px;
  right: 28px;
  color: #ec6c00;
  font-size: 1.8rem;
}
.r-lyt-graph .lyt-arrow {
  position: absolute;
  bottom: 58px;
  left: 110px;
  z-index: 1;
}
.r-lyt-graph .lyt-year {
  position: absolute;
  bottom: 27px;
  width: 50px;
  text-align: center;
}
.r-lyt-graph .lyt-year > span {
  position: relative;
  display: block;
  height: 100%;
}
.r-lyt-graph .lyt-year > span::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 26px;
  height: 100%;
  background: #ffcfa4;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.r-lyt-graph .lyt-year > span > span {
  position: relative;
  top: -26px;
  left: 0;
  z-index: 500;
  display: inline-block;
  color: #ec6c00;
  text-shadow: #fff 1px 1px 1px;
  font-weight: bold;
  font-size: 1.6rem;
}
.r-lyt-graph .lyt-year._2010 {
  left: 79px;
  height: 13.14741%;
}
.r-lyt-graph .lyt-year._2011 {
  left: 140px;
  height: 19.52191%;
}
.r-lyt-graph .lyt-year._2012 {
  left: 202px;
  height: 32.66932%;
}
.r-lyt-graph .lyt-year._2013 {
  left: 263px;
  height: 58.96414%;
}
.r-lyt-graph .lyt-year._2014 {
  left: 325px;
  height: 70.91633%;
}
.r-lyt-graph .lyt-year._2014 > span > span {
  top: -40px;
  left: -1em;
  width: 4em;
  font-size: 2.6rem;
}
@media only screen and (max-width: 860px) {
  .r-lyt-graph {
    margin-right: auto;
    margin-left: auto;
    max-width: 420px;
  }
}
@media only screen and (max-width: 450px) {
  .r-lyt-graph figcaption {
    top: -4.44444vw;
    right: 6.22222vw;
    font-size: 1.4rem;
  }
  .r-lyt-graph .lyt-year {
    bottom: 6vw;
    width: 11.11111vw;
  }
  .r-lyt-graph .lyt-year > span::before {
    width: 2.88889vw;
  }
  .r-lyt-graph .lyt-year > span > span {
    top: -5.77778vw;
    font-size: 1.2rem;
  }
  .r-lyt-graph .lyt-year._2010 {
    left: 17.55556vw;
    height: 7.33333vw;
  }
  .r-lyt-graph .lyt-year._2011 {
    left: 31.11111vw;
    height: 10.88889vw;
  }
  .r-lyt-graph .lyt-year._2012 {
    left: 44.88889vw;
    height: 18.22222vw;
  }
  .r-lyt-graph .lyt-year._2013 {
    left: 58.44444vw;
    height: 32.88889vw;
  }
  .r-lyt-graph .lyt-year._2014 {
    left: 72.22222vw;
    height: 39.55556vw;
  }
  .r-lyt-graph .lyt-year._2014 > span > span {
    top: -6.66667vw;
    left: -.5em;
    font-size: 1.4rem;
  }
}

/* .r-lyt-graph-02
----------------------------------------------- */
.r-lyt-graph-02 {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  max-width: 258px;
  max-height: 258px;
  width: 18.42857vw;
  height: 18.42857vw;
  border-radius: 129px;
  background: #f6b680;
}
.r-lyt-graph-02::before {
  position: absolute;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: rgba(236, 108, 0, 0);
  background-image: linear-gradient(to left,#ec6c00 0%, #ec6c00 50%, rgba(236, 108, 0, 0) 51%, rgba(236, 108, 0, 0) 100%);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.r-lyt-graph-02::after {
  position: absolute;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: rgba(246, 182, 128, 0);
  background-image: linear-gradient(to right,#f6b680 0%, #f6b680 50%, rgba(246, 182, 128, 0) 51%, rgba(246, 182, 128, 0) 100%);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.r-lyt-graph-02 > .lyt-inner::before {
  position: absolute;
  top: 0;
  z-index: 50;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: rgba(236, 108, 0, 0);
  background-image: linear-gradient(to left,#ec6c00 0%, #ec6c00 50%, rgba(236, 108, 0, 0) 51%, rgba(236, 108, 0, 0) 100%);
  -webkit-transform: rotate(95deg);
  transform: rotate(95deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.r-lyt-graph-02 > .lyt-inner > .lyt-logo {
  position: absolute;
  bottom: 4.5vw;
  left: 50%;
  z-index: 51;
  margin-left: -77px;
  color: #fff;
}
.r-lyt-graph-02 > .lyt-inner > .lyt-logo img {
  width: 154px;
}
@media only screen and (max-width: 900px) {
  .r-lyt-graph-02 > .lyt-inner > .lyt-logo {
    margin-left: -40px;
  }
  .r-lyt-graph-02 > .lyt-inner > .lyt-logo img {
    width: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .r-lyt-graph-02 > .lyt-inner > .lyt-logo {
    margin-left: -20px;
  }
  .r-lyt-graph-02 > .lyt-inner > .lyt-logo img {
    width: 40px;
  }
}

/* ----------------------------------------------------------------
    Animation
----------------------------------------------------------------- */
/* .animate-scroll
----------------------------------------------- */
.animate-scroll.is-active .animate-item {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
}
.animate-scroll.is-active .animate-item.is-animate {
  opacity: 1;
  transition: all 1s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.animate-scroll.is-active .animate-item._animate-slide {
  /* スライドアニメーション */
  -webkit-transform: translateX(-50px);
  transform: translateX(-50px);
}
.animate-scroll.is-active .animate-item._animate-slide.is-animate {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.animate-scroll.is-active .animate-item .animate-fig, .animate-scroll.is-active .animate-item .animate-fig-02 {
  opacity: 0;
}
.animate-scroll.is-active .animate-item.is-animate .animate-fig {
  opacity: 1;
  /* 図版アニメーション */
  transition: all 3s cubic-bezier(.23, 1, .32, 1) 1.5s;
}
.animate-scroll.is-active .animate-item.is-animate .animate-fig-02 {
  opacity: 1;
  transition: all 3s cubic-bezier(.23, 1, .32, 1) 3s;
}

.animate-scroll.is-active .is-animate-delay.is-animate {
  /* アニメーションの遅延 */
  transition-delay: .7s !important;
}
.animate-scroll.is-active .is-animate-delay.is-animate > span::before {
  transition-delay: .7s !important;
}
.animate-scroll.is-active .is-animate-delay.is-animate > span > span {
  transition-delay: .7s !important;
}

.animate-scroll.is-active .animate-flash-item {
  /* メインビジュアル内のキラキラ */
  position: relative;
  margin: 0 auto;
  max-width: 1400px;
}
.animate-scroll.is-active .animate-flash-item::before, .animate-scroll.is-active .animate-flash-item::after {
  position: absolute;
  background-color: rgba(235, 224, 220, .8);
  box-shadow: 0 0 4px rgba(235, 228, 222, .8);
}
.animate-scroll.is-active .animate-flash-item.is-animate::before {
  -webkit-animation: animate-flash-item-01 6s ease infinite;
  animation: animate-flash-item-01 6s ease infinite;
}
.animate-scroll.is-active .animate-flash-item.is-animate::after {
  -webkit-animation: animate-flash-item-02 6s ease infinite;
  animation: animate-flash-item-02 6s ease infinite;
}
.animate-scroll.is-active .animate-flash-item._first::before {
  top: -1.21429%;
  right: 13.07143%;
  width: 6px;
  height: 6px;
  border-radius: 3px;
}
.animate-scroll.is-active .animate-flash-item._first::after {
  top: 6.42857%;
  right: 46.35714%;
  width: 8px;
  height: 8px;
  border-radius: 4px;
}
.animate-scroll.is-active .animate-flash-item._second::before {
  top: .42857%;
  right: 38.71429%;
  width: 8px;
  height: 8px;
  border-radius: 4px;
}
.animate-scroll.is-active .animate-flash-item._second::after {
  top: 10%;
  right: 16.5%;
  width: 4px;
  height: 4px;
  border-radius: 2px;
}
.animate-scroll.is-active .animate-flash-item._third::before {
  top: 2.92857%;
  right: 31.92857%;
  width: 6px;
  height: 6px;
  border-radius: 3px;
}
.animate-scroll.is-active .animate-flash-item._third::after {
  top: 16.14286%;
  right: 33.21429%;
  width: 4px;
  height: 4px;
  border-radius: 2px;
}

.animate-scroll.is-active .animate-bar-item > span::before {
  height: 0;
}

.animate-scroll.is-active .animate-bar-item > span > span {
  opacity: 0;
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

.animate-scroll.is-active .animate-bar-item.is-animate > span::before {
  height: 100%;
  transition: all 1s cubic-bezier(.23, 1, .32, 1);
}

.animate-scroll.is-active .animate-bar-item.is-animate > span > span {
  opacity: 1;
  transition: all 1s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.animate-scroll.is-active .animate-share-item {
  opacity: 0;
  /* シェア率アニメーション */
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}
.animate-scroll.is-active .animate-share-item.is-animate {
  opacity: 1;
  transition: all 1s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.animate-scroll.is-active .animate-share-item-02 {
  /* 円グラフアニメーション */
}
.animate-scroll.is-active .animate-share-item-02::before {
  opacity: 0;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.animate-scroll.is-active .animate-share-item-02 .animate-graph::before {
  opacity: 0;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
.animate-scroll.is-active .animate-share-item-02 .animate-logo {
  /* 円グラフ内のロゴアニメーション */
  opacity: 0;
  -webkit-transform: scale(3);
  transform: scale(3);
}
.animate-scroll.is-active .animate-share-item-02.is-animate::before {
  opacity: 1;
  transition: all .5s linear;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
.animate-scroll.is-active .animate-share-item-02.is-animate .animate-graph::before {
  opacity: 1;
  transition: opacity .1s linear .5s, -webkit-transform .5s ease .5s;
  transition: opacity .1s linear .5s, transform .5s ease .5s;
  transition: opacity .1s linear .5s, transform .5s ease .5s, -webkit-transform .5s ease .5s;
  -webkit-transform: rotate(95deg);
  transform: rotate(95deg);
}
.animate-scroll.is-active .animate-share-item-02.is-animate .animate-logo {
  opacity: 1;
  transition: all .5s cubic-bezier(.6, .04, .98, .335) 1s;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.animate-scroll.is-active .animate-pin-item {
  /* ピンが落ちるアニメーション */
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.animate-scroll.is-active .animate-pin-item .animate-img {
  opacity: 0;
  -webkit-transform: translateY(-40px);
  transform: translateY(-40px);
}
.animate-scroll.is-active .animate-pin-item .animate-txt {
  opacity: 0;
  -webkit-transform: translateX(25px);
  transform: translateX(25px);
}
.animate-scroll.is-active .animate-pin-item.is-animate .animate-img {
  opacity: 1;
  transition: all .5s cubic-bezier(.6, .04, .98, .335);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.animate-scroll.is-active .animate-pin-item.is-animate .animate-txt {
  opacity: 1;
  transition: all 1s cubic-bezier(.23, 1, .32, 1) 1s;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

/* animate-flash-item-01
----------------------------------------------- */
@-webkit-keyframes animate-flash-item-01 {
  0% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  10% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  30% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes animate-flash-item-01 {
  0% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  10% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  30% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

/* animate-flash-item-02
----------------------------------------------- */
@-webkit-keyframes animate-flash-item-02 {
  0% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  30% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  50% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  80% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes animate-flash-item-02 {
  0% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  30% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  50% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  80% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    opacity: .8;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

/* ----------------------------------------------------------------
    Contents
----------------------------------------------------------------- */
/* .content-fluid
----------------------------------------------- */
.content-fluid {
  padding: 40px 0;
}
.content-secondary .content-fluid {
  padding-top: 0;
}

/* .content-fluid-02
----------------------------------------------- */
.content-fluid-02 {
  padding: 40px 0;
  background: #d7d9d9;
}
.content-fluid + .content-fluid-02 {
  margin: 0 0 40px;
}

/* .content-fluid-03
----------------------------------------------- */
.content-fluid-03 {
  padding: 40px 0;
  background: #f5f5f5;
}
.content-fluid-02 + .content-fluid-03 {
  margin: -40px 0 40px;
}

/* .content-inner
----------------------------------------------- */
.content-inner {
  margin: 0 auto;
  max-width: 900px;
  text-align: left;
  word-break: break-all;
}
@media only screen and (max-width: 860px) {
  .content-inner {
    width: auto;
  }
}
@media only screen and (max-width: 900px) {
  .content-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.content-inner > :first-child:not(.grid) {
  margin-top: 0;
}
.content-inner > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Common
----------------------------------------------------------------- */
/* Control Align
----------------------------------------------- */
.left {
  text-align: left !important;
}

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

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

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

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

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

/* Control 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;
}

/* Control Margin and Padding
----------------------------------------------- */
.p-top0 {
  padding-top: 0 !important;
}

.p-right0 {
  padding-right: 0 !important;
}

.p-bottom0 {
  padding-bottom: 0 !important;
}

.p-left0 {
  padding-left: 0 !important;
}

.m-top0 {
  margin-top: 0 !important;
}

.m-right0 {
  margin-right: 0 !important;
}

.m-bottom0 {
  margin-bottom: 0 !important;
}

.m-left0 {
  margin-left: 0 !important;
}

.p-top5 {
  padding-top: 5px !important;
}

.p-right5 {
  padding-right: 5px !important;
}

.p-bottom5 {
  padding-bottom: 5px !important;
}

.p-left5 {
  padding-left: 5px !important;
}

.m-top5 {
  margin-top: 5px !important;
}

.m-right5 {
  margin-right: 5px !important;
}

.m-bottom5 {
  margin-bottom: 5px !important;
}

.m-left5 {
  margin-left: 5px !important;
}

.p-top10 {
  padding-top: 10px !important;
}

.p-right10 {
  padding-right: 10px !important;
}

.p-bottom10 {
  padding-bottom: 10px !important;
}

.p-left10 {
  padding-left: 10px !important;
}

.m-top10 {
  margin-top: 10px !important;
}

.m-right10 {
  margin-right: 10px !important;
}

.m-bottom10 {
  margin-bottom: 10px !important;
}

.m-left10 {
  margin-left: 10px !important;
}

.p-top15 {
  padding-top: 15px !important;
}

.p-right15 {
  padding-right: 15px !important;
}

.p-bottom15 {
  padding-bottom: 15px !important;
}

.p-left15 {
  padding-left: 15px !important;
}

.m-top15 {
  margin-top: 15px !important;
}

.m-right15 {
  margin-right: 15px !important;
}

.m-bottom15 {
  margin-bottom: 15px !important;
}

.m-left15 {
  margin-left: 15px !important;
}

.p-top20 {
  padding-top: 20px !important;
}

.p-right20 {
  padding-right: 20px !important;
}

.p-bottom20 {
  padding-bottom: 20px !important;
}

.p-left20 {
  padding-left: 20px !important;
}

.m-top20 {
  margin-top: 20px !important;
}

.m-right20 {
  margin-right: 20px !important;
}

.m-bottom20 {
  margin-bottom: 20px !important;
}

.m-left20 {
  margin-left: 20px !important;
}

.p-top25 {
  padding-top: 25px !important;
}

.p-right25 {
  padding-right: 25px !important;
}

.p-bottom25 {
  padding-bottom: 25px !important;
}

.p-left25 {
  padding-left: 25px !important;
}

.m-top25 {
  margin-top: 25px !important;
}

.m-right25 {
  margin-right: 25px !important;
}

.m-bottom25 {
  margin-bottom: 25px !important;
}

.m-left25 {
  margin-left: 25px !important;
}

.p-top30 {
  padding-top: 30px !important;
}

.p-right30 {
  padding-right: 30px !important;
}

.p-bottom30 {
  padding-bottom: 30px !important;
}

.p-left30 {
  padding-left: 30px !important;
}

.m-top30 {
  margin-top: 30px !important;
}

.m-right30 {
  margin-right: 30px !important;
}

.m-bottom30 {
  margin-bottom: 30px !important;
}

.m-left30 {
  margin-left: 30px !important;
}

.p-top35 {
  padding-top: 35px !important;
}

.p-right35 {
  padding-right: 35px !important;
}

.p-bottom35 {
  padding-bottom: 35px !important;
}

.p-left35 {
  padding-left: 35px !important;
}

.m-top35 {
  margin-top: 35px !important;
}

.m-right35 {
  margin-right: 35px !important;
}

.m-bottom35 {
  margin-bottom: 35px !important;
}

.m-left35 {
  margin-left: 35px !important;
}

.p-top40 {
  padding-top: 40px !important;
}

.p-right40 {
  padding-right: 40px !important;
}

.p-bottom40 {
  padding-bottom: 40px !important;
}

.p-left40 {
  padding-left: 40px !important;
}

.m-top40 {
  margin-top: 40px !important;
}

.m-right40 {
  margin-right: 40px !important;
}

.m-bottom40 {
  margin-bottom: 40px !important;
}

.m-left40 {
  margin-left: 40px !important;
}

/* Control Display
----------------------------------------------- */
@media only screen and (max-width: 900px) {
  .hidden-pc {
    display: none;
  }
}

/* .overlay
----------------------------------------------- */
.overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  display: none;
  background: rgba(0, 0, 0, .2);
}
.overlay.is-overlay-animate {
  display: block;
  opacity: 0;
  transition: opacity .7s cubic-bezier(.23, 1, .32, 1);
}
.overlay.is-overlay-render {
  display: block;
  opacity: 1;
}
