@charset "UTF-8";
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

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

body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

ol, ul {
  list-style: none;
  list-style-type: none;
}

@-webkit-keyframes line-stretch {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@keyframes line-stretch {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@-webkit-keyframes fade-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fade-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes fade-slide-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes fade-slide-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@-webkit-keyframes fade-slide-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes fade-slide-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@-webkit-keyframes fade-slide-left-bg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px) skew(15deg);
            transform: translateX(-40px) skew(15deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) skew(15deg);
            transform: translateX(0) skew(15deg);
  }
}

@keyframes fade-slide-left-bg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px) skew(15deg);
            transform: translateX(-40px) skew(15deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) skew(15deg);
            transform: translateX(0) skew(15deg);
  }
}

@-webkit-keyframes fade-slide-right-bg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px) skew(-15deg);
            transform: translateX(-40px) skew(-15deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) skew(-15deg);
            transform: translateX(0) skew(-15deg);
  }
}

@keyframes fade-slide-right-bg {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px) skew(-15deg);
            transform: translateX(-40px) skew(-15deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) skew(-15deg);
            transform: translateX(0) skew(-15deg);
  }
}

@-webkit-keyframes wipe-left {
  0% {
    opacity: 0;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  1% {
    opacity: 1;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  40% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  60% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  99% {
    opacity: 1;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    opacity: 0;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
}

@keyframes wipe-left {
  0% {
    opacity: 0;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  1% {
    opacity: 1;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  40% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  60% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  99% {
    opacity: 1;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    opacity: 0;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
}

@-webkit-keyframes scroll {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  5% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(32px);
            transform: translateY(32px);
  }
}

@keyframes scroll {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  5% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(32px);
            transform: translateY(32px);
  }
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@media (min-width: 769px) {
  * {
    outline: none !important;
  }
  *:hover, *:focus, *:active {
    outline: none !important;
  }

  .section-title {
    color: #011A6A;
  }
  .section-title.white {
    color: #fff;
  }
  .section-title .title-en {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    font-size: 36px;
    letter-spacing: 2px;
    line-height: 1;
    margin-bottom: 20px;
    display: block;
  }
  .section-title .title-jp {
    font-size: 14px;
    font-weight: bold;
    display: block;
    letter-spacing: 2px;
  }
  .section-title.align-center {
    text-align: center;
  }
  .section-title.align-left {
    text-align: left;
  }
  .section-title.small .title-en {
    font-size: 32px;
  }
  .section-title.white > * {
    color: #fff;
    text-shadow: 0 0 12px rgba(0, 0, 0, 0.6);
  }
  .section-header {
    position: relative;
  }
  .section-header-description {
    text-align: center;
    max-width: 840px;
    margin: 0 auto;
    padding-top: 48px;
    line-height: 2;
    font-size: 14px;
    color: #011A6A;
    font-weight: bold;
  }
  .section-header-description.white {
    color: #fff;
    text-shadow: 0 0 12px rgba(0, 0, 0, 0.6);
  }
  .btn {
    text-decoration: none;
    border: 2px solid #011A6A;
    color: #011A6A;
    letter-spacing: 2px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    height: 48px;
    padding: 0 48px 0 40px;
    font-size: 14px;
    font-weight: bold;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .btn i {
    position: relative;
    z-index: 5;
  }
  .btn:hover {
    color: #fff;
  }
  .btn:hover .label:before {
    -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
            transform: scaleX(1);
  }
  .btn:hover:after {
    right: 12px;
    border-color: #fff !important;
  }
  .btn .label {
    font-weight: bold;
    z-index: 5;
  }
  .btn .label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transform-origin: left;
        -ms-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    background: #011A6A;
    z-index: -1;
  }
  .btn:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 16px;
    top: calc(50% - 4px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    z-index: 5;
  }
  .btn.white-btn {
    border-color: #fff;
    color: #fff;
  }
  .btn.white-btn:hover {
    color: #011A6A;
  }
  .btn.white-btn:hover:after {
    border-color: #011A6A !important;
  }
  .btn.white-btn .label:before {
    background: #fff;
  }
  .btn.white-btn:after {
    border-color: #fff;
  }
  .btn.btn-l {
    border-width: 2px;
    height: 64px;
    width: 240px;
  }
  .arrow {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .arrow.white {
    border-color: #fff;
  }
  .container {
    width: 100%;
    max-width: 1112px;
    margin: 0 auto;
    padding: 0 16px;
  }
  .container.d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container .side-column {
    width: 240px;
  }
  .container .main-column {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .full-container {
    width: 100%;
  }
  .full-container.d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .full-container .side-column {
    width: 220px;
    border-right: 1px solid #dddddd;
    position: relative;
  }
  .full-container .main-column {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 976px;
            flex: 1 1 976px;
    margin: 0 auto;
    padding: 0 32px 64px;
    max-width: 976px;
  }
  .main-header {
    background: #fff;
    z-index: 1000;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  }
  .main-header .logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 16px 24px;
    width: 220px;
  }
  .main-header .logo img {
    height: 24px;
    width: auto;
  }
  _:-ms-lang(x)::-ms-backdrop, .main-header {
    position: relative;
  }
  .c-header-menu {
    width: 80%;
  }
  .c-header-menu .global-nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-header-menu .global-nav .global-nav-item {
    margin: 0 16px;
  }
  .c-header-menu .global-nav .global-nav-item.has-child > a:after {
    content: "";
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    display: inline-block;
    margin-left: 8px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .c-header-menu .global-nav .global-nav-item > a {
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    font-size: 14px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 64px;
  }
  .c-header-menu .global-nav .global-nav-extra-item {
    margin-left: auto;
    margin-right: 12px;
  }
  .c-header-menu .language-select {
    height: 24px;
    width: 64px;
    border-radius: 4px;
    border: 1px solid #011A6A;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  .c-header-menu .language-select a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    width: 50%;
  }
  .c-header-menu .language-select a.active {
    background: #011A6A;
    color: #fff;
  }
  .c-header-social-lists {
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .c-header-social-lists .social-item {
    padding: 0 8px;
  }
  .c-header-social-lists .social-item a {
    color: #011A6A;
    text-decoration: none;
    font-size: 16px;
  }
  .c-header-social-lists .social-item a:hover {
    opacity: 0.75;
  }
  .c-header-extra-menu {
    margin-left: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .c-header-extra-menu .extra-menu-item {
    width: 64px;
    height: 64px;
    margin: 0;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-decoration: none;
    color: #fff;
    background: #011A6A;
  }
  .c-header-extra-menu .extra-menu-item:first-child {
    background: #00071e;
  }
  .c-header-extra-menu .extra-menu-item .icon {
    display: block;
    font-size: 20px;
    margin-bottom: 8px;
  }
  .c-header-extra-menu .extra-menu-item .label {
    font-size: 10px;
    font-weight: bold;
    display: block;
  }
  .menu-toggle {
    display: none;
  }
  .app-banner {
    position: absolute;
    left: 50%;
    bottom: -44px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    max-width: 500px;
  }
	a.app-banner {
	text-decoration: none;
  }
  .app-banner img {
    max-width: 100%;
  }
  .header-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .global-nav-item:hover .l-header-mega-menu {
    visibility: visible;
    overflow: visible;
    opacity: 1;
    pointer-events: all;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .global-nav-item:hover a {
    color: #011A6A;
  }
  .global-nav-item:last-child > a:after {
    display: none;
  }
  .l-header-mega-menu,
  .c-header-search-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 2;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: 1.2s;
    -o-transition: 1.2s;
    transition: 1.2s;
    position: absolute;
    width: 100%;
    left: 0;
    top: 100%;
    padding: 24px;
    -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.1);
    background: rgba(1, 26, 106, 0.8);
  }
  .l-header-mega-menu:before,
  .c-header-search-content:before {
    content: "";
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.4);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    pointer-events: none;
  }
  .l-header-mega-menu .mega-menu-container,
  .c-header-search-content .mega-menu-container {
    padding: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
  .l-header-mega-menu .mega-menu-header,
  .c-header-search-content .mega-menu-header {
    width: 20%;
    color: #fff;
  }
  .l-header-mega-menu .mega-menu-header a,
  .c-header-search-content .mega-menu-header a {
    color: #fff !important;
  }
  .l-header-mega-menu .mega-menu-header .btn.white-btn:hover,
  .c-header-search-content .mega-menu-header .btn.white-btn:hover {
    color: #011A6A !important;
  }
  .l-header-mega-menu .mega-menu-header .mega-menu-title,
  .c-header-search-content .mega-menu-header .mega-menu-title {
    margin-bottom: 24px;
  }
  .l-header-mega-menu .mega-menu-header .mega-menu-title .title-en,
  .c-header-search-content .mega-menu-header .mega-menu-title .title-en {
    font-family: 'Roboto', sans-serif;
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 8px;
    letter-spacing: 2px;
    display: block;
  }
  .l-header-mega-menu .mega-menu-header .mega-menu-title .title-jp,
  .c-header-search-content .mega-menu-header .mega-menu-title .title-jp {
    font-weight: bold;
    color: #fff;
    font-size: 14px;
    letter-spacing: 2px;
    display: block;
  }
  .l-header-mega-menu .mega-menu-content,
  .c-header-search-content .mega-menu-content {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 8px);
    margin: 0 -4px;
  }
  .l-header-mega-menu .mega-menu-content.column-4 .maga-menu-item,
  .c-header-search-content .mega-menu-content.column-4 .maga-menu-item {
    width: calc(25% - 8px);
  }
  .l-header-mega-menu .mega-menu-content.column-3 .mega-menu-item,
  .c-header-search-content .mega-menu-content.column-3 .mega-menu-item {
    width: calc((100% / 3) - 8px);
  }
  .l-header-mega-menu .maga-menu-item,
  .c-header-search-content .maga-menu-item {
    margin: 4px;
  }
  .l-header-mega-menu .maga-menu-item.small-menu-item,
  .c-header-search-content .maga-menu-item.small-menu-item {
    min-height: 64px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .l-header-mega-menu .maga-menu-item.small-menu-item a,
  .c-header-search-content .maga-menu-item.small-menu-item a {
    min-height: 28px;
    height: 28px;
    padding: 8px 12px;
  }
  .l-header-mega-menu .maga-menu-item.icon-menu a,
  .c-header-search-content .maga-menu-item.icon-menu a {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-header-mega-menu .maga-menu-item.icon-menu a .mega-menu-thumb,
  .c-header-search-content .maga-menu-item.icon-menu a .mega-menu-thumb {
    width: 64px;
    height: 64px;
    margin-right: 16px;
    background: #011b6a;
  }
  .l-header-mega-menu .maga-menu-item.icon-menu a .mega-menu-thumb img,
  .c-header-search-content .maga-menu-item.icon-menu a .mega-menu-thumb img {
    width: 100%;
    height: auto;
    display: block;
  }
  .l-header-mega-menu .maga-menu-item a,
  .c-header-search-content .maga-menu-item a {
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 64px;
    padding: 16px 12px;
    text-decoration: none;
    color: #444;
    background: #fff;
    border-radius: 2px;
    position: relative;
    overflow: hidden;
  }
  .l-header-mega-menu .maga-menu-item a:after,
  .c-header-search-content .maga-menu-item a:after {
    content: "";
    width: 16px;
    height: 16px;
    background: #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    left: -8px;
    top: -8px;
  }
  .l-header-mega-menu .maga-menu-item a:before,
  .c-header-search-content .maga-menu-item a:before {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
  }
  .l-header-mega-menu .maga-menu-item .mega-menu-item-title,
  .c-header-search-content .maga-menu-item .mega-menu-item-title {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #011A6A;
    margin: 0;
  }
  .l-header-mega-menu .maga-menu-item .mega-menu-item-title .title-jp,
  .c-header-search-content .maga-menu-item .mega-menu-item-title .title-jp {
    display: block;
    margin-top: 2px;
    font-size: 11px;
  }
  .c-header-search-content.search-open {
    visibility: visible;
    pointer-events: all;
    opacity: 1;
  }
  .c-header-search-content.search-open form {
    width: 100%;
  }
  .search-form-content {
    width: 100%;
  }
  .search-form-content .search-form-select-block {
    width: calc(100% + 16px);
    margin: 0 -8px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .search-form-content .search-form-select-block .select-block {
    width: calc(25% - 16px);
    margin: 0 8px;
  }
  .search-form-content .search-form-select-block select {
    width: 100%;
  }
  .search-form-content .search-form-text-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 32px 0 24px;
    margin-top: 32px;
    border-top: 1px solid rgba(255, 255, 255, 0.25);
  }
  .search-form-content .search-form-text-block input {
    height: 48px;
    width: calc(80% - 16px);
    margin-right: 16px;
  }
  .search-form-content .search-submit {
    width: 20%;
    height: 48px;
    background: transparent;
    border-radius: 0;
    border: 2px solid #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 14px;
    font-weight: bold;
    padding: 0 64px;
    color: #fff;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    cursor: pointer;
  }
  .search-form-content .search-submit i {
    margin-right: 4px;
  }
  .search-form-content .search-submit:hover {
    background: #fff;
    color: #011A6A;
  }
  .c-footer-banner-area .footer-banner-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .c-footer-banner-area .footer-banner-item {
    width: calc(100% / 3);
    position: relative;
    overflow: hidden;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    background: rgba(1, 26, 106, 0.2);
  }
  .c-footer-banner-area .footer-banner-item:last-child {
    border-right: none;
  }
  .c-footer-banner-area .footer-banner-item:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .c-footer-banner-area .footer-banner-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
    position: relative;
    width: 100%;
    padding: 24px;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .c-footer-banner-area .footer-banner-item a:hover {
    background: rgba(1, 26, 106, 0.05);
  }
  .c-footer-banner-area .footer-banner-item a:hover .arrow {
    -webkit-transform: translateX(12px) rotate(45deg);
        -ms-transform: translateX(12px) rotate(45deg);
            transform: translateX(12px) rotate(45deg);
  }
  .c-footer-banner-area .footer-banner-item a .icon {
    background: #011A6A;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 20px;
    color: #fff;
    margin-right: 16px;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #011A6A;
    font-weight: bold;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text .title-en {
    display: block;
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    margin-bottom: 8px;
    letter-spacing: 2px;
    font-weight: bold;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text .title-jp {
    font-size: 12px;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text .arrow {
    position: absolute;
    right: 2rem;
    top: calc(50% - 4px);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .main-footer {
    background: #011A6A;
  }
  .main-footer .c-footer-link-area {
    padding: 56px 0 40px;
  }
  .main-footer .footer-link-title {
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    padding: 12px 0;
    margin: 0 0 24px;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }
  .main-footer .c-footer-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 32px);
    margin: 0 -16px;
  }
  .main-footer .c-footer-link .link-block {
    width: calc(25% - 32px);
    margin: 0 16px 16px;
    font-size: 12px;
  }
  .main-footer .c-footer-link .link-parent {
    display: block;
    font-weight: bold;
    padding: 4px 0 4px 16px;
    margin: 0 0 4px 0;
    position: relative;
  }
  .main-footer .c-footer-link .link-parent:hover {
    text-decoration: underline;
  }
  .main-footer .c-footer-link .link-parent:before {
    content: "";
    width: 8px;
    height: 1px;
    position: absolute;
    left: 4px;
    top: 10px;
    background: #fff;
    opacity: 0.5;
  }
  .main-footer .c-footer-link .link-child {
    padding-left: 8px;
  }
  .main-footer .c-footer-link .link-child a {
    display: block;
    padding: 2px 0 2px 16px;
    margin: 0 0 4px 0;
    position: relative;
  }
  .main-footer .c-footer-link .link-child a:hover {
    text-decoration: underline;
  }
  .main-footer .c-footer-link .link-child a:before {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    left: -4px;
    top: 2px;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    opacity: 0.5;
  }
  .main-footer a {
    text-decoration: none;
    color: #fff;
  }
  .main-footer .link-item {
    display: block;
    color: #fff;
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    padding: 12px 40px 12px 0;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }
  .main-footer .link-item:hover {
    text-decoration: underline;
  }
  .main-footer .link-item:hover:after {
    right: 4px;
  }
  .main-footer .link-item:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: 8px;
    top: calc(50% - 4px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .main-footer .c-footer-bottom {
    background: #010e37;
    padding: 32px 0;
  }
  .main-footer .footer-logo {
    width: 25%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .main-footer .footer-logo img {
    height: 56px;
  }
  .main-footer .c-footer-bottom-link {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .main-footer .c-footer-bottom-link .link-block {
    width: calc(100% / 3);
    padding-left: 32px;
  }
  .main-footer .c-footer-bottom-link .link-block-child {
    padding-top: 16px;
  }
  .main-footer .c-footer-bottom-link .link-block-child a {
    display: block;
    font-size: 12px;
    padding: 4px 0 4px 16px;
    margin: 0 0 4px 0;
    position: relative;
  }
  .main-footer .c-footer-bottom-link .link-block-child a:hover {
    text-decoration: underline;
  }
  .main-footer .c-footer-bottom-link .link-block-child a:before {
    content: "";
    width: 8px;
    height: 1px;
    position: absolute;
    left: 0;
    top: 10px;
    background: #fff;
    opacity: 0.5;
  }
  .main-footer .c-footer-copyright {
    background: black;
    font-size: 12px;
    color: #fff;
    padding: 28px 16px;
  }
  .main-footer .c-footer-copyright .copyright {
    text-align: center;
    opacity: 0.75;
  }
  .fixed-scroll-top {
    position: fixed;
    right: 24px;
    bottom: 32px;
    z-index: 10;
    background: rgba(0, 0, 0, 0.4);
    color: #fff;
    text-align: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-decoration: none;
  }
  .fixed-scroll-top i {
    font-size: 24px;
  }
  .l-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 64px;
    z-index: 100;
  }
  .side-section-item .side-section-title {
    padding: 32px 24px;
    border-bottom: 1px solid #dddddd;
    position: relative;
    overflow: hidden;
  }
  .side-section-item .side-section-title:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .side-section-item .side-section-title .title-en {
    display: block;
    font-family: "Roboto", sans-serif;
    font-size: 20px;
    color: #011A6A;
    letter-spacing: 2px;
    font-weight: bold;
    margin-bottom: 4px;
  }
  .side-section-item .side-section-title .title-jp {
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
  }
  .side-section-item .sidebar-nav-list {
    padding: 12px 0;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item {
    position: relative;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item:hover {
    background: rgba(1, 26, 106, 0.2);
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item a {
    padding: 16px 40px 16px 24px;
    display: block;
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item a:after {
    content: "";
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item:hover .side-nav-child {
    visibility: visible;
    opacity: 1;
    pointer-events: all;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: 220px;
    top: 0;
    background: rgba(1, 14, 55, 0.95);
    white-space: nowrap;
    -webkit-box-shadow: 0 8px 12px rgba(0, 0, 0, 0.05), 0 4px 24px rgba(0, 0, 0, 0.05);
            box-shadow: 0 8px 12px rgba(0, 0, 0, 0.05), 0 4px 24px rgba(0, 0, 0, 0.05);
    z-index: 1000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: auto;
    min-width: 560px;
    padding: 12px 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li {
    width: 50%;
    position: relative;
    padding: 8px 32px 8px 0;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li a {
    padding: 0 0 0 24px;
    font-size: 14px;
    font-weight: normal;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    color: #fff;
    white-space: nowrap;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li a:after {
    width: 6px;
    height: 1px;
    border: none;
    background: #fff;
    right: auto;
    top: 50%;
    left: 16px;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    opacity: 0.75;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li a:hover {
    text-decoration: underline;
  }
  .c-product-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 40px);
    margin: 0 -20px;
  }
  .product-item {
    width: calc((100% / 3) - 40px);
    margin: 0 20px 48px;
  }
  .product-item .item-thumb {
    max-width: 100%;
    height: 160px;
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .product-item .item-thumb:after {
    content: "VIEW MORE";
    position: absolute;
    font-family: "Roboto", sans-serif;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
    letter-spacing: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    opacity: 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .product-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .product-item a {
    text-decoration: none;
    color: #444;
  }
  .product-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .product-item a:hover .item-title {
    color: #011A6A;
    opacity: 0.75;
  }
  .product-item .new-tag {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background: #EA176F;
    height: 24px;
    padding: 0 8px;
    margin: auto 0 auto 8px;
    letter-spacing: 0;
    position: relative;
  }
  .product-item .new-tag:after {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: 10px;
    height: 24px;
    background: #EA176F;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    right: -5px;
    top: 0;
  }
  .product-item .item-title {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .product-item .item-title:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .product-item .item-info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 8px;
  }
  .product-item .item-info dl dt {
    width: 64px;
    line-height: 1.25;
  }
  .product-item .item-info dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.25;
  }
  .download-page .c-product-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 40px);
    margin: 0 -20px;
  }
  .download-page .product-item.catalog {
    width: calc((100% / 3) - 40px);
    margin: 0 20px 48px;
  }
  .download-page .product-item.catalog .item-text {
    margin-top: 28px;
  }
  .download-page .product-item {
    width: calc((100% / 4) - 40px);
    margin: 0 20px 48px;
  }
  .download-page .product-item .item-thumb {
    max-width: 100%;
    height: 160px;
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .download-page .product-item .item-thumb:after {
    content: "VIEW MORE";
    position: absolute;
    font-family: "Roboto", sans-serif;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
    letter-spacing: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    opacity: 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .download-page .product-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .download-page .product-item a {
    text-decoration: none;
    color: #444;
  }
  .download-page .product-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .download-page .product-item a:hover .item-title {
    color: #011A6A;
    opacity: 0.75;
  }
  .download-page .product-item .btn {
    font-size: 12px;
    padding: 0 24px 0 12px;
    width: 100%;
  }
  .download-page .product-item .btn:hover {
    color: #fff;
  }
  .download-page .product-item .item-title {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .download-page .product-item .item-title:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .download-page .product-item .item-info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 8px;
  }
  .download-page .product-item .item-info dl dt {
    width: 64px;
    line-height: 1.25;
  }
  .download-page .product-item .item-info dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.25;
  }
  .breadcrumb {
    padding: 16px 24px;
    background: #fff;
    border-top: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
  }
  .breadcrumb ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .breadcrumb ol li {
    font-size: 12px;
    white-space: nowrap;
    margin-right: 12px;
    color: #666;
  }
  .breadcrumb ol li:after {
    content: '/';
    margin-left: 12px;
    opacity: 0.5;
  }
  .breadcrumb ol li:last-child:after {
    display: none;
  }
  .breadcrumb ol li a {
    text-decoration: none;
    color: #011A6A;
  }
  .breadcrumb ol li a:hover {
    text-decoration: underline;
  }
  .post-header {
    width: 100%;
    height: 280px;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .post-header:after {
    content: "";
    width: calc(40% +  40px);
    height: 100%;
    position: absolute;
    left: -40px;
    top: 0;
    background: #011A6A;
    opacity: 0.75;
    -webkit-transform: skew(-15deg);
        -ms-transform: skew(-15deg);
            transform: skew(-15deg);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
  }
  .post-header > img {
    width: 100%;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .post-header .post-title {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #fff;
    z-index: 10;
    letter-spacing: 4px;
    position: relative;
  }
  .post-header .post-title .title-sub {
    display: block;
    font-size: 16px;
    margin-top: 8px;
    margin-bottom: 12px;
    font-weight: bold;
  }
  .post-header .post-title .title-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 36px;
    font-weight: bold;
  }
  .post-header .post-title .new-tag {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background: #EA176F;
    height: 24px;
    padding: 0 8px;
    margin-left: 12px;
    letter-spacing: 0;
    position: relative;
  }
  .post-header .post-title .new-tag:after {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: 10px;
    height: 24px;
    background: #EA176F;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    right: -5px;
    top: 0;
  }
  .c-footer-pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .pagination ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border: 1px solid #dddddd;
  }
  .pagination ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 32px;
    min-width: 32px;
    border-right: 1px solid #dddddd;
    font-weight: bold;
    font-size: 16px;
    font-family: 'Roboto', sans-serif;
  }
  .pagination ul li:last-child {
    border-right: none;
  }
  .pagination ul li.active {
    background: #011A6A;
    color: #fff;
    padding: 0 8px;
  }
  .pagination ul li.next a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    margin-left: -2px;
  }
  .pagination ul li.prev a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-left: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    margin-right: -2px;
  }
  .pagination ul a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 32px;
    min-width: 32px;
    text-decoration: none;
    padding: 0 8px;
    color: #011A6A;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .pagination ul a:hover {
    background: rgba(1, 26, 106, 0.2);
  }
  input, button, textarea, select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background: transparent;
    border-radius: 0;
  }
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="password"],
  textarea {
    padding: 0.5rem;
    min-height: 40px;
    border: 1px solid #dddddd;
    font-size: 16px;
    color: #444;
    background: #fff;
    -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05) inset;
            box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05) inset;
  }
  input[type="text"]:placeholder-shown,
  input[type="email"]:placeholder-shown,
  input[type="tel"]:placeholder-shown,
  input[type="number"]:placeholder-shown,
  input[type="password"]:placeholder-shown,
  textarea:placeholder-shown {
    color: #ccc;
  }
  input[type="text"]::-webkit-input-placeholder,
  input[type="email"]::-webkit-input-placeholder,
  input[type="tel"]::-webkit-input-placeholder,
  input[type="number"]::-webkit-input-placeholder,
  input[type="password"]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #ccc;
  }
  input[type="text"]:-moz-placeholder,
  input[type="email"]:-moz-placeholder,
  input[type="tel"]:-moz-placeholder,
  input[type="number"]:-moz-placeholder,
  input[type="password"]:-moz-placeholder,
  textarea:-moz-placeholder {
    opacity: 1;
    color: #ccc;
  }
  input[type="text"]::-moz-placeholder,
  input[type="email"]::-moz-placeholder,
  input[type="tel"]::-moz-placeholder,
  input[type="number"]::-moz-placeholder,
  input[type="password"]::-moz-placeholder,
  textarea::-moz-placeholder {
    opacity: 1;
    color: #ccc;
  }
  input[type="text"]:-ms-input-placeholder,
  input[type="email"]:-ms-input-placeholder,
  input[type="tel"]:-ms-input-placeholder,
  input[type="number"]:-ms-input-placeholder,
  input[type="password"]:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #ccc;
  }
  input[type="text"].full,
  input[type="email"].full,
  input[type="tel"].full,
  input[type="number"].full,
  input[type="password"].full,
  textarea.full {
    width: 100%;
  }
  .submit {
    text-align: center;
    padding: 1rem;
    font-size: 15px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    position: relative;
    width: 260px;
    margin: 16px auto 16px;
    border: 2px solid #011A6A;
    overflow: hidden;
    display: block;
  }
  select {
    border: 1px solid #dddddd;
    position: relative;
    padding: 0.5rem 1rem 0.5rem 0.5rem;
    height: 40px;
    font-size: 16px;
    background: #fff;
    color: #444;
    border-radius: 0;
    position: relative;
  }
  select:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-bottom: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 2px);
  }
  .select {
    position: relative;
  }
  .select:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-bottom: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
    pointer-events: none;
  }
  .form-block {
    margin-bottom: 2rem;
  }
  .form-caution {
    font-size: 12px;
    color: #444;
    opacity: 0.75;
    line-height: 1.6;
  }
  .form-label {
    margin-bottom: 8px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .form-label.white label {
    color: #fff;
  }
  .form-label label {
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
  }
  .form-label label.required:after {
    content: "必須";
    font-size: 10px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 2px 4px;
    background: #EA176F;
    color: #fff;
    font-weight: bold;
    margin-left: 4px;
  }
  /* チェックボックス01 */
  input[type=checkbox] {
    display: none;
  }
  .mwform-checkbox-field-text {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
  }
  .mwform-checkbox-field-text::before {
    background: #fff;
    border: 1px solid #231815;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
  }
  .mwform-checkbox-field-text::after {
    border-right: 3px solid #011A6A;
    border-bottom: 3px solid #011A6A;
    content: '';
    display: block;
    height: 9px;
    left: 10px;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 50%;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    width: 5px;
  }
  input[type=checkbox]:checked + .mwform-checkbox-field-text::after {
    opacity: 1;
  }
  /* ラジオボタン01 */
  input[type=radio] {
    display: none;
  }
  .radio01 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
  }
  .radio01::before {
    background: #fff;
    border: 1px solid #231815;
    border-radius: 50%;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
  }
  .radio01::after {
    background: #ed7a9c;
    border-radius: 50%;
    content: '';
    display: block;
    height: 10px;
    left: 9px;
    margin-top: -4px;
    opacity: 0;
    position: absolute;
    top: 50%;
    width: 10px;
  }
  input[type=radio]:checked + .radio01::after {
    opacity: 1;
  }
  .l-new-arrival {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 100vw;
    overflow: hidden;
    background-color: #f8f8f8;
  }
  .l-new-arrival .new-arrival-header {
    padding: 96px 160px 88px 72px;
    position: relative;
    z-index: 10;
  }
  .l-new-arrival .new-arrival-header.animated-on .section-title {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-new-arrival .new-arrival-header.animated-on .c-invitation-btn {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-new-arrival .new-arrival-header:before {
    content: "";
    width: calc(100% +  40px);
    height: 100%;
    position: absolute;
    right: -40px;
    top: 0;
    background: #011A6A;
    -webkit-transform: skew(-15deg);
        -ms-transform: skew(-15deg);
            transform: skew(-15deg);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
  }
  .l-new-arrival .new-arrival-header .new-arrival-header-content {
    position: relative;
  }
  .l-new-arrival .new-arrival-header .section-title {
    opacity: 0;
  }
  .l-new-arrival .new-arrival-header .c-invitation-btn {
    padding-top: 24px;
    opacity: 0;
  }
  .l-new-arrival .new-arrival-content {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    overflow: hidden;
    padding: 56px 0 48px 56px;
    opacity: 0;
    -webkit-transition: 0.4s opacity;
    -o-transition: 0.4s opacity;
    transition: 0.4s opacity;
  }
  .l-new-arrival .new-arrival-content.animated-on {
    opacity: 1;
  }
  .l-new-arrival .slider-item {
    width: 280px;
    margin: 0 24px;
    outline: none;
  }
  .l-new-arrival .slider-item:focus, .l-new-arrival .slider-item:hover {
    outline: none;
  }
  .l-new-arrival .slider-item:focus > *, .l-new-arrival .slider-item:hover > * {
    outline: none;
  }
  .l-new-arrival .slider-item .item-thumb {
    max-width: 100%;
    height: 160px;
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-new-arrival .slider-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .l-new-arrival .slider-item a {
    text-decoration: none;
    color: #444;
  }
  .l-new-arrival .slider-item .item-title {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .l-new-arrival .slider-item .item-title:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .l-new-arrival .slider-item .item-info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 8px;
  }
  .l-new-arrival .slider-item .item-info dl dt {
    width: 64px;
    line-height: 1.25;
  }
  .l-new-arrival .slider-item .item-info dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.25;
  }
  .l-new-arrival .slick-arrow {
    color: transparent;
    font-size: 0;
    width: 32px;
    height: 32px;
    overflow: hidden;
    position: absolute;
    background: transparent;
    border: none;
    border-top: 2px solid #011A6A;
    border-left: 2px solid #011A6A;
    top: calc(50% - 16px);
    opacity: 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    z-index: 10;
  }
  .l-new-arrival .slick-arrow:hover {
    opacity: 0.75;
  }
  .l-new-arrival .slick-arrow.slick-next {
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg);
    right: 24px;
  }
  .l-new-arrival .slick-arrow.slick-prev {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    left: -32px;
  }
  .l-new-arrival .new-arrival-item-slider:hover .slick-arrow {
    opacity: 1;
  }
  .l-categories {
    background: #f8f8f8;
    padding: 104px 0 112px;
  }
  .l-categories .categories-header {
    margin-bottom: 48px;
    opacity: 0;
  }
  .l-categories .categories-header.animated-on {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-categories .categories-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -4px;
    width: calc(100% + 8px);
  }
  .l-categories _:-ms-lang(x)::-ms-backdrop, .l-categories .category-item {
    margin: 0 3px 8px;
  }
  .l-categories .category-item {
    position: relative;
    width: calc((100% / 3) - 8px);
    margin: 0 4px 8px;
    overflow: hidden;
  }
  .l-categories .category-item:after {
    content: "";
    background: #fff;
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
        -ms-transform-origin: left;
            transform-origin: left;
  }
  .l-categories .category-item.animated-on a {
    opacity: 1;
  }
  .l-categories .category-item.animated-on:after {
    -webkit-animation: wipe-left 1s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0.2s forwards;
            animation: wipe-left 1s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0.2s forwards;
  }
  .l-categories .category-item a {
    background: #fff;
    display: block;
    text-decoration: none;
    position: relative;
    opacity: 0;
    -webkit-transition: 0.1s 0.6s opacity;
    -o-transition: 0.1s 0.6s opacity;
    transition: 0.1s 0.6s opacity;
  }
  .l-categories .category-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .l-categories .category-item a:hover .arrow {
    -webkit-transform: translateX(8px) rotate(45deg);
        -ms-transform: translateX(8px) rotate(45deg);
            transform: translateX(8px) rotate(45deg);
  }
  .l-categories .category-item a:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-categories .category-item .item-thumb {
    max-width: 100%;
    height: 208px;
    padding: 24px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .l-categories .category-item .item-thumb:after {
    content: "VIEW MORE";
    position: absolute;
    font-family: "Roboto", sans-serif;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
    letter-spacing: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    opacity: 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .l-categories .category-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .l-categories .category-item .item-title {
    padding: 20px;
    background: #011A6A;
  }
  .l-categories .category-item .item-title .title-en {
    font-family: 'Roboto', sans-serif;
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 4px;
    letter-spacing: 2px;
    display: block;
  }
  .l-categories .category-item .item-title .title-jp {
    font-size: 12px;
    color: #fff;
    letter-spacing: 4px;
  }
  .l-categories .category-item .arrow {
    position: absolute;
    right: 24px;
    bottom: 36px;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .l-categories .categories-footer {
    padding: 48px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-feature-area {
    padding: 104px 0;
    max-width: 100vw;
    overflow: hidden;
    position: relative;
    background: #010e37;
  }
  .l-feature-area .c-feature-area-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../img/feature_bg.jpg) no-repeat center top transparent;
    background-attachment: fixed;
    background-size: cover;
    opacity: 0.75;
  }
  .l-feature-area .feature-header {
    margin-bottom: 88px;
  }
  .l-feature-area .feature-header .white-btn,
  .l-feature-area .feature-header .section-title,
  .l-feature-area .feature-header .section-header-description {
    opacity: 0;
  }
  .l-feature-area .feature-header .white-btn {
    margin: 16px auto;
    max-width: 280px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-feature-area .feature-header.animated-on .section-title {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-feature-area .feature-header.animated-on .section-header-description {
    -webkit-animation: fade-up 0.4s 0.2s forwards;
            animation: fade-up 0.4s 0.2s forwards;
  }
  .l-feature-area .feature-header.animated-on .white-btn {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-feature-area .feature-item-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .l-feature-area .feature-item {
    position: relative;
    width: calc(1080px + ((100vw - 1080px) / 2) + 176px);
    margin: 0 0 176px;
    counter-increment: feature-count;
  }
  .l-feature-area .feature-item.animated-on:before {
    -webkit-animation: line-stretch 1.2s ease-in forwards;
            animation: line-stretch 1.2s ease-in forwards;
  }
  .l-feature-area .feature-item.animated-on:after {
    -webkit-animation: fade-slide-left 0.4s 1s forwards;
            animation: fade-slide-left 0.4s 1s forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-content:after {
    -webkit-animation: wipe-left 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86) forwards;
            animation: wipe-left 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86) forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-bg {
    opacity: 1;
  }
  .l-feature-area .feature-item.animated-on .feature-item-title {
    -webkit-animation: fade-slide-left 0.4s 1s forwards;
            animation: fade-slide-left 0.4s 1s forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-description {
    -webkit-animation: fade-slide-left 0.4s 1s forwards;
            animation: fade-slide-left 0.4s 1s forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-image {
    -webkit-animation: fade-up 0.4s 1s forwards;
            animation: fade-up 0.4s 1s forwards;
  }
  .l-feature-area .feature-item:last-child {
    margin-bottom: 0;
  }
  .l-feature-area .feature-item:before {
    content: "";
    display: block;
    height: 1px;
    width: 100vw;
    background: rgba(255, 255, 255, 0.4);
    position: absolute;
    top: 112px;
    -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
            transform: scaleX(0);
  }
  .l-feature-area .feature-item:after {
    content: "0" counter(feature-count) ".";
    font-family: 'Roboto', sans-serif;
    font-size: 200px;
    font-weight: 700;
    position: absolute;
    color: rgba(255, 255, 255, 0.4);
    line-height: 1;
    top: -80px;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    z-index: 100;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-content {
    min-height: 472px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
  }
  .l-feature-area .feature-item .feature-item-content:after {
    content: "";
    background: #011A6A;
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
        -ms-transform-origin: left;
            transform-origin: left;
  }
  .l-feature-area .feature-item:nth-child(odd) {
    padding-left: 176px;
    margin-left: auto;
  }
  .l-feature-area .feature-item:nth-child(odd).animated-on .feature-item-text:before {
    -webkit-animation: fade-slide-left-bg 0.4s 1s forwards;
            animation: fade-slide-left-bg 0.4s 1s forwards;
  }
  .l-feature-area .feature-item:nth-child(odd):before {
    right: 50%;
    -webkit-transform-origin: left;
        -ms-transform-origin: left;
            transform-origin: left;
  }
  .l-feature-area .feature-item:nth-child(odd):after {
    left: 40px;
  }
  .l-feature-area .feature-item:nth-child(odd) .feature-item-text {
    padding: 136px 112px 80px 32px;
  }
  .l-feature-area .feature-item:nth-child(odd) .feature-item-text:before {
    right: 0;
    -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: skew(15deg);
        -ms-transform: skew(15deg);
            transform: skew(15deg);
    background: rgba(1, 26, 106, 0.9);
  }
  .l-feature-area .feature-item:nth-child(even) {
    padding-right: 176px;
    margin-right: auto;
  }
  .l-feature-area .feature-item:nth-child(even).animated-on .feature-item-text:before {
    -webkit-animation: fade-slide-right-bg 0.4s 1s forwards;
            animation: fade-slide-right-bg 0.4s 1s forwards;
  }
  .l-feature-area .feature-item:nth-child(even) .feature-item-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .l-feature-area .feature-item:nth-child(even):before {
    left: 50%;
    -webkit-transform-origin: right;
        -ms-transform-origin: right;
            transform-origin: right;
  }
  .l-feature-area .feature-item:nth-child(even):after {
    right: 32px;
  }
  .l-feature-area .feature-item:nth-child(even) .feature-item-text {
    padding: 136px 32px 80px 128px;
  }
  .l-feature-area .feature-item:nth-child(even) .feature-item-text:before {
    left: 0;
    -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: skew(-15deg);
        -ms-transform: skew(-15deg);
            transform: skew(-15deg);
    background: rgba(0, 7, 30, 0.9);
  }
  .l-feature-area .feature-item .feature-item-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #dddddd;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    opacity: 0;
    -webkit-transition: 0.1s 0.4s opacity;
    -o-transition: 0.1s 0.4s opacity;
    transition: 0.1s 0.4s opacity;
  }
  .l-feature-area .feature-item .feature-item-image {
    position: absolute;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-text {
    width: 50%;
    max-width: 540px;
    position: relative;
    overflow: hidden;
  }
  .l-feature-area .feature-item .feature-item-text:before {
    content: "";
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-text > * {
    position: relative;
  }
  .l-feature-area .feature-item .feature-item-title {
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
    margin-bottom: 24px;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-description {
    font-size: 14px;
    color: #fff;
    line-height: 1.75;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-image {
    width: calc(1080px - 540px);
    position: relative;
  }
  .l-feature-area .feature-item .feature-item-image img {
    position: absolute;
    display: block;
  }
  .l-feature-area .feature-item:nth-child(1) img {
    right: -80px;
    bottom: -40px;
    width: 810px;
    height: auto;
  }
  .l-feature-area .feature-item:nth-child(2) .image-01 {
    width: auto;
    height: 510px;
    left: 224px;
    bottom: -44px;
    z-index: 10;
  }
  .l-feature-area .feature-item:nth-child(2) .image-02 {
    width: auto;
    height: 260px;
    left: -119px;
    bottom: -56px;
  }
  .l-feature-area .feature-item:nth-child(3) .image-01 {
    width: auto;
    height: 533px;
    left: -214px;
    bottom: -16px;
  }
  .l-feature-area .feature-item:nth-child(3) .image-02 {
    width: auto;
    height: 250px;
    right: 36px;
    bottom: 300px;
  }
  .l-news-section {
    background: #f8f8f8;
    padding: 88px 0;
  }
  .l-news-section .news-header {
    width: 264px;
    margin-right: 20px;
  }
  .l-news-section .c-invitation-btn {
    padding-top: 24px;
  }
  .l-news-section .news-content {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .news-list {
    border-top: 1px solid #dddddd;
  }
  .news-list .news-item {
    border-bottom: 1px solid #dddddd;
  }
  .news-list .news-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-decoration: none;
    color: #444;
    width: 100%;
    overflow: hidden;
    position: relative;
  }
  .news-list .news-item a:hover .arrow {
    right: 4px;
  }
  .news-list .news-item a:hover .news-title {
    text-decoration: underline;
  }
  .news-list .news-item .date {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #011A6A;
    width: 88px;
    font-size: 14px;
  }
  .news-list .news-item .news-category {
    padding: 4px 8px;
    width: 88px;
    background: #011A6A;
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 12px;
    margin-right: 8px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    letter-spacing: 2px;
  }
  .news-list .news-item .news-title {
    padding-right: 16px;
    font-size: 14px;
    color: #444;
    font-weight: normal;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
  }
  .news-list .news-item .arrow {
    position: absolute;
    right: 8px;
    top: calc(50% - 4px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .c-gallery-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 4px);
    margin: 0 -2px 24px;
    overflow: hidden;
    position: relative;
  }
  .c-gallery-slider .slider-item {
    background: #dddddd;
    width: calc((960px / 3) - 4px);
    height: auto;
    margin: 0 2px;
  }
  .c-gallery-slider .slider-item .thumb {
    width: 100%;
    padding-top: 66%;
    position: relative;
    overflow: hidden;
  }
  .c-gallery-slider .slider-item .thumb img {
    width: 100%;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .c-gallery-slider .slick-arrow {
    color: transparent;
    font-size: 0;
    width: 28px;
    height: 48px;
    overflow: hidden;
    position: absolute;
    background: #011A6A;
    border: none;
    top: calc(50% - 24px);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 10;
  }
  .c-gallery-slider .slick-arrow:after {
    content: "";
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    display: inline-block;
  }
  .c-gallery-slider .slick-arrow:hover {
    opacity: 0.75;
  }
  .c-gallery-slider .slick-arrow.slick-next {
    right: 0;
    border-radius: 2px 0 0 2px;
    padding-left: 4px;
  }
  .c-gallery-slider .slick-arrow.slick-next:after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .c-gallery-slider .slick-arrow.slick-prev {
    left: 2px;
    border-radius: 0 2px 2px 0;
    padding-right: 4px;
  }
  .c-gallery-slider .slick-arrow.slick-prev:after {
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
  .product-main-image {
    width: 100%;
    padding-top: 56px;
    position: relative;
  }
  .product-main-image > img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .product-main-image .product-advantage-icons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: absolute;
    right: 0;
    top: 56px;
  }
  .product-main-image .product-advantage-icons > img {
    display: block;
    max-height: 48px;
    max-width: 120px;
    width: auto;
    height: auto;
    margin-left: 12px;
  }
  .product-feature-point {
    padding: 16px 0;
  }
  .product-feature-point li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 12px;
    counter-increment: point;
  }
  .product-feature-point li:before {
    content: "POINT 0" counter(point);
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    width: 80px;
    height: 24px;
    margin-right: 24px;
    color: #fff;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 4px 4px 4px 8px;
    z-index: 1;
    background: #011A6A;
  }
  .product-feature-point li:after {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: 80px;
    height: 24px;
    background: #011A6A;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    left: 4px;
    top: 0;
  }
  .product-params {
    width: calc(100% + 4px);
    margin: 0 -2px 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .product-params .params-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: #f8f8f8;
    width: calc(25% - 4px);
    margin: 0 2px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .product-params .params-item img {
    width: 56px;
    height: 56px;
  }
  .product-params .params-item .params-item-text {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 8px 10px;
  }
  .product-params .params-item .params-item-text dt {
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
    margin-bottom: 4px;
  }
  .product-params .params-item .params-item-text dd span {
    font-size: 13px;
    line-height: 1.2;
    font-weight: bold;
    color: #011A6A;
  }
  .product-detail-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 24px 20px 16px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: bold;
    color: #222;
    margin-left: auto;
    font-size: 20px;
    position: relative;
  }
  .product-detail-title:before {
    content: "";
    width: 8px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    top: calc(50% + 5px);
  }
  .product-detail .c-spacifications {
    margin-bottom: 24px;
  }
  .product-detail .c-spacifications li {
    padding: 8px 16px;
    font-size: 12px;
    line-height: 1.4;
  }
  .product-detail .c-spacifications li:nth-child(odd) {
    background: #f8f8f8;
  }
  .product-detail .c-feature {
    margin-bottom: 24px;
    background: #f8f8f8;
    padding: 16px 24px;
  }
  .product-detail .c-feature li {
    padding: 8px 0 8px 20px;
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    border-bottom: 1px dotted #dddddd;
  }
  .product-detail .c-feature li:last-child {
    border-bottom: none;
  }
  .product-detail .c-feature li:before {
    content: "";
    width: 10px;
    height: 6px;
    position: absolute;
    left: 0;
    top: 14px;
    border-bottom: 2px solid #011A6A;
    border-left: 2px solid #011A6A;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .product-movie {
    margin-bottom: 24px;
  }
  .product-movie .movie-wrapper {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .product-movie .movie-wrapper iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .product-movie .movie-link {
    text-align: right;
    padding-top: 24px;
  }
  .product-movie .movie-link .text-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 14px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
  }
  .product-movie .movie-link .text-link:hover {
    text-decoration: underline;
  }
  .product-movie .movie-link .text-link span {
    margin-left: 4px;
  }
  .product-link-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 4px);
    margin: 0 -2px;
    padding-top: 40px;
    border-top: 1px solid #dddddd;
  }
  .product-link-list a {
    width: calc((100% / 3) - 4px);
    margin: 0 2px;
  }
  .product-link-list a span {
    font-weight: bold;
    white-space: nowrap;
  }
  .product-link-list a i {
    margin-right: 8px;
    font-size: 20px;
  }
  .l-product-list {
    padding: 48px 0;
  }
  .post-index-section-title {
    border-bottom: 1px solid #dddddd;
    position: relative;
    padding-bottom: 12px;
    margin-bottom: 2rem;
    font-size: 28px;
    font-weight: bold;
    color: #444;
    line-height: 1.4;
  }
  .post-index-section-title:after {
    content: "";
    width: 40px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .category-section-title {
    font-size: 18px;
    position: relative;
    width: calc((100%) - 40px);
    margin: 24px 20px;
    padding-top: 40px;
    border-top: 1px solid #dddddd;
    font-weight: bold;
  }
  .category-section-title span {
    height: 40px;
    font-weight: bold;
    color: #fff;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 8px 12px 8px 16px;
    z-index: 1;
    background: #011A6A;
    position: absolute;
    left: 0;
    top: 0;
  }
  .category-section-title span:before {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    width: 100%;
    height: 40px;
    background: #011A6A;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    left: 8px;
    top: 0;
  }
  .category-section-description {
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    width: calc((100%) - 40px);
    margin: 0 20px 36px;
  }
  .c-series-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 40px);
    margin: 0 -20px 42px;
  }
  .series-item {
    width: calc((100% / 3) - 40px);
    margin: 0 20px 48px;
    padding: 24px 24px 24px;
    background: #f8f8f8;
    position: relative;
    overflow: hidden;
    color: #444;
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 1rem;
  }
  .series-item > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .series-item > *:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .series-item:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .series-item .series-logo {
    max-width: 100%;
    height: auto;
    margin-bottom: 16px;
    padding: 8px;
    background: #fff;
  }
  .series-item .series-logo img {
    width: 100%;
    height: auto;
  }
  .series-item a {
    text-decoration: none;
    color: #444;
  }
  .series-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .series-item a:hover .item-title {
    color: #011A6A;
    opacity: 0.75;
  }
  .series-item .series-name {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .series-item .series-name:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  #company_history_lists *:before {
    display: none;
  }
  #company_history_lists > li {
    padding: 1rem 0;
    border-bottom: 1px dotted #dddddd;
  }
  #company_history_lists > li > dl > dt {
    width: 200px;
  }
  #company_history_lists > li > dl dl {
    margin-bottom: 8px;
  }
  #company_history_lists > li > dl dl:last-child {
    margin-bottom: 0;
  }
  #company_history_lists > li > dl dl > dt {
    width: 64px;
    font-size: 14px;
    line-height: 1.75;
  }
  #company_history_lists dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0;
  }
  #company_history_lists dt {
    margin-bottom: 0;
  }
  #company_history_lists ul.lists {
    margin-bottom: 0;
  }
  #company_history_lists ul.lists li {
    padding: 0;
    margin-bottom: 8px;
  }
  #company_history_lists ul.lists li:last-child {
    margin-bottom: 0;
  }
  .l-brand-page .brand-header {
    width: 100%;
    background: url(../img/brand-hero.jpg) center center no-repeat;
    background-size: cover;
    padding: 20vh 24px 80px;
    min-height: 80vh;
  }
  .l-brand-page .brand-header .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-brand-page .brand-header .brand-header-content {
    width: 40%;
    margin-left: auto;
    margin-right: 0;
  }
  .l-brand-page .brand-header .brand-navi {
    padding-left: 80px;
  }
  .l-brand-page .brand-header .brand-navi li a {
    width: 100%;
    display: block;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    color: #5E5D5D;
    font-size: 24px;
    letter-spacing: 2px;
    text-decoration: none;
    -webkit-transition: .4s;
    -o-transition: .4s;
    transition: .4s;
    position: relative;
    z-index: 1;
  }
  .l-brand-page .brand-header .brand-navi li a .over {
    opacity: 0;
    position: absolute;
    left: 0;
    top: -28px;
    z-index: 0;
    font-size: 16;
    font-weight: bold;
    color: #Fff;
    background: #011A6A;
    padding: 12px 16px;
    position: relative;
    z-index: 10;
    -webkit-transition: .2s;
    -o-transition: .2s;
    transition: .2s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-brand-page .brand-header .brand-navi li a .over .main-lead {
    margin-right: 8px;
  }
  .l-brand-page .brand-header .brand-navi li a .over .sub-lead {
    font-size: 13px;
  }
  .l-brand-page .brand-header .brand-navi li a .over:after {
    content: "";
    width: calc(100% + 40px);
    height: 100%;
    position: absolute;
    right: -40px;
    top: 0;
    z-index: -1;
    background: #011A6A;
    -webkit-transform: skew(-15deg);
        -ms-transform: skew(-15deg);
            transform: skew(-15deg);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
  }
  .l-brand-page .brand-header .brand-navi li a:hover {
    color: #011A6A;
  }
  .l-brand-page .brand-header .brand-navi li a:hover .over {
    opacity: 1;
  }
  .l-brand-page .brand-section {
    padding: 120px 0 120px;
    overflow: hidden;
    position: relative;
    background: url(../img/brand-bg-blue.png) left top no-repeat;
    background-size: cover;
  }
  .l-brand-page .brand-section.brand-visual {
    background: url(../img/brand-visual-bg.png) right top no-repeat;
    background-size: contain;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-content .visual-img {
    max-width: 100%;
    opacity: 0;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents {
    width: 50%;
    margin: 550px 0 0 auto;
    color: #fff;
    position: relative;
    text-align: left;
    opacity: 0;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents .visual-contents-title {
    margin-bottom: 16px;
    font-size: 22px;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents .visual-contents-title strong {
    font-weight: bold;
    font-family: "Roboto", sans-serif;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents p {
    margin-bottom: 2rem;
    line-height: 1.8;
    font-size: 16px;
  }
  .l-brand-page .brand-section.reverse {
    background: url(../img/brand-bg-gray.png) left top no-repeat;
    background-size: cover;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items .brand-feature-content {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    text-align: left;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items .brand-feature-main-image {
    position: relative;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    padding-right: 40px;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items .brand-link-button {
    margin-left: auto;
    margin-right: 0;
  }
  .l-brand-page .brand-feature-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .l-brand-page .brand-feature-items.animated-on .brand-feature-title {
    -webkit-animation: fade-slide-left 0.2s 0.2s forwards;
            animation: fade-slide-left 0.2s 0.2s forwards;
  }
  .l-brand-page .brand-feature-items.animated-on .brand-feature-description,
  .l-brand-page .brand-feature-items.animated-on .brand-feature-visial-contents {
    -webkit-animation: fade-slide-left 0.2s 0.2s forwards;
            animation: fade-slide-left 0.2s 0.2s forwards;
  }
  .l-brand-page .brand-feature-items.animated-on .brand-feature-main-image,
  .l-brand-page .brand-feature-items.animated-on .brand-feature-content img {
    -webkit-animation: fade-up 0.2s 0.2s forwards;
            animation: fade-up 0.2s 0.2s forwards;
  }
  .l-brand-page .brand-feature-items .brand-feature-content {
    width: 44%;
    margin-bottom: 24px;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-title {
    color: #011A6A;
    line-height: 1.4;
    margin-bottom: 40px;
    opacity: 0;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-title .main-title {
    font-family: "Roboto", sans-serif;
    font-size: 60px;
    margin-bottom: 6px;
    font-weight: bold;
    display: block;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-title .sub-title {
    font-size: 20px;
    display: block;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-description {
    opacity: 0;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-description p {
    margin-bottom: 2rem;
    line-height: 1.8;
    font-size: 16px;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-description p strong {
    display: block;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 8px;
  }
  .l-brand-page .brand-feature-items .brand-feature-main-image {
    opacity: 0;
    width: 56%;
    padding-left: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-brand-page .brand-feature-items .brand-feature-main-image img {
    max-width: 100%;
  }
  .l-brand-page .brand-feature-items .brand-link-button {
    padding: 16px 24px;
    text-align: center;
    background: #011A6A;
    color: #fff;
    display: block;
    margin: 0 0 16px;
    max-width: 320px;
    text-decoration: none;
  }
  .l-brand-page .brand-feature-items .brand-link-button i {
    font-size: 16px;
    margin-left: 8px;
  }
  .l-brand-page .brand-sub-page-main {
    position: relative;
    background-size: cover;
    height: 96vh;
    padding-top: 8px;
    font-family: serif;
  }
  .l-brand-page .brand-sub-page-main .title-container {
    max-width: 724px;
    text-align: right;
  }
  .l-brand-page .brand-sub-page-main .title-container span {
    background: rgba(0, 0, 0, 0.6);
    display: inline-block;
    padding: 4px 8px;
  }
  .l-brand-page .brand-sub-page-main .main-title {
    color: #fff;
    font-size: 56px;
    line-height: 1.4;
    letter-spacing: 3px;
    margin: 40vh 0 16px;
  }
  .l-brand-page .brand-sub-page-main .sub-title {
    color: #fff;
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: 1px;
  }
  .l-brand-page .brand-sub-page-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 240px 0;
    font-family: serif;
  }
  .l-brand-page .brand-sub-page-section.animated-on .section-image {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-brand-page .brand-sub-page-section.animated-on .section-sub-title {
    -webkit-animation: fade-slide-left 0.4s 0.2s forwards;
            animation: fade-slide-left 0.4s 0.2s forwards;
  }
  .l-brand-page .brand-sub-page-section .section-image {
    width: 50%;
    opacity: 0;
  }
  .l-brand-page .brand-sub-page-section img {
    max-width: 100%;
  }
  .l-brand-page .brand-sub-page-section .section-sub-title {
    width: 50%;
    font-size: 20px;
    letter-spacing: 1px;
    line-height: 2.4;
    padding: 0 40px 0 120px;
    opacity: 0;
  }
  .l-brand-page .brand-sub-page-section.right-image.animated-on .section-image {
    -webkit-animation: fade-slide-right 0.4s forwards;
            animation: fade-slide-right 0.4s forwards;
  }
  .l-brand-page .brand-sub-page-section.right-image.animated-on .section-sub-title {
    -webkit-animation: fade-slide-right 0.4s 0.2s forwards;
            animation: fade-slide-right 0.4s 0.2s forwards;
  }
  .l-brand-page .brand-sub-page-section.right-image .section-image {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .l-brand-page .brand-sub-page-section.right-image .section-sub-title {
    padding: 0 40px 0 120px;
  }
  .l-brand-page .brand-sub-page-section.last-section {
    margin-bottom: 0;
  }
  .l-brand-page .brand-sub-page-section.last-section .section-sub-title {
    letter-spacing: 4px;
    font-size: 24px;
  }
  .l-display-page {
    padding-bottom: 80px;
  }
  .l-display-page .post-header:after {
    width: calc(90% + 0px);
  }
  .l-display-page .post-header .post-title {
    line-height: 1.6;
    text-align: center;
  }
  .l-display-page .post-header .post-title .title-main {
    font-size: 48px;
    width: 100%;
    display: block;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
  }
  .l-display-page img {
    max-width: 100%;
  }
  .l-display-page .display-section {
    padding: 80px 0 0;
  }
  .l-display-page .display-title-h2 {
    font-weight: bold;
    color: #fff;
    background: #011A6A;
    margin-bottom: 24px;
    padding: 16px 32px 16px;
    font-size: 40px;
    text-align: center;
  }
  .l-display-page .display-about-box {
    background: url(../img/display-about.jpg) no-repeat left top;
    background-size: 100% auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-display-page .display-about-box .display-about-image {
    width: 38%;
    height: 600px;
    position: relative;
  }
  .l-display-page .display-about-box .display-about-contents {
    width: 62%;
    padding: 60px 60px 32px 0px;
  }
  .l-display-page .display-about-box .display-about-contents h2 {
    font-weight: bold;
    color: #fff;
    background: #011A6A;
    margin-bottom: 16px;
    padding: 16px 32px 16px;
    font-size: 40px;
  }
  .l-display-page .display-about-box .display-about-contents h3 {
    font-weight: bold;
    font-size: 32px;
    letter-spacing: 2px;
    margin-bottom: 16px;
    border-bottom: 8px solid yellow;
  }
  .l-display-page .display-about-box .display-about-contents p {
    line-height: 1.8;
    font-size: 16px;
  }
  .l-display-page .display-about-box .display-about-contents .caution {
    margin-top: 24px;
    font-size: 12px;
  }
  .l-display-page .display-point .display-point-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-display-page .display-point .display-point-item {
    width: 48%;
    margin: 0 auto 24px;
  }
  .l-display-page .display-point .display-point-item:last-child {
    width: 100%;
  }
  .l-display-page .display-point .display-point-image {
    width: 100%;
  }
  .l-display-page .display-point .display-point-contents h3 {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 16px;
    border-bottom: 8px solid yellow;
  }
  .l-display-page .display-point .display-point-contents p {
    line-height: 1.8;
    font-size: 16px;
    margin-bottom: 16px;
  }
  .l-display-page .display-search .display-search-message {
    font-weight: bold;
    font-size: 30px;
    margin-bottom: 32px;
    text-align: center;
  }
  .l-display-page .display-search .display-search-message div {
    font-size: 16px;
    margin: 12px auto;
  }
  .l-display-page .display-search .display-search-shops-area h3 {
    font-weight: bold;
    font-size: 24px;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #011A6A;
    color: #011A6A;
  }
  .l-display-page .display-search .display-search-shops-area h4 {
    font-weight: bold;
    font-size: 20;
    margin-bottom: 16px;
    color: #011A6A;
  }
  .l-display-page .display-search .display-search-shops-area table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 auto 32px;
  }
  .l-display-page .display-search .display-search-shops-area table th {
    border: 1px solid #ddd;
    padding: 16px 16px 16px;
    width: 33.33%;
    font-weight: bold;
    background: #eee;
  }
  .l-display-page .display-search .display-search-shops-area table td {
    border: 1px solid #ddd;
    padding: 16px 24px 16px;
  }
  .l-post-template {
    padding: 48px 0;
    line-height: 1.4;
  }
  .l-post-template > *:last-child {
    margin-bottom: 0;
  }
  .l-post-template section {
    margin-bottom: 3rem;
  }
  .l-post-template h2, .l-post-template h3, .l-post-template h4, .l-post-template h5 {
    color: #222;
    font-weight: bold;
    line-height: 1.4;
    margin: 0 0 1.5rem;
    padding-top: 1rem;
  }
  .l-post-template h2 {
    font-size: 24px;
    border-bottom: 1px solid #dddddd;
    position: relative;
    padding-bottom: 12px;
  }
  .l-post-template h2:after {
    content: "";
    width: 40px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .l-post-template h3 {
    font-size: 22px;
    padding-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .l-post-template h3:after {
    content: "";
    width: 20px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .l-post-template h4 {
    font-size: 20px;
    position: relative;
  }
  .l-post-template h4:before {
    content: "";
    width: 8px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: -16px;
    top: calc(50% - 1px + 0.5rem);
  }
  .l-post-template h5 {
    font-size: 18px;
  }
  .l-post-template p {
    line-height: 1.75;
    font-size: 15px;
    color: #444;
    margin-bottom: 1rem;
  }
  .l-post-template p.text-emphasize {
    font-size: 15px;
    line-height: 2.8;
  }
  .l-post-template p.text-caution {
    font-size: 12px;
    opacity: 0.8;
    margin-bottom: 0;
  }
  .l-post-template p.text-display {
    font-size: 20px;
    font-weight: bold;
    color: #011A6A;
    margin-bottom: 0.5rem;
    line-height: 1;
  }
  .l-post-template a {
    color: #011A6A;
    text-decoration: underline;
  }
  .l-post-template table {
    border: 1px solid #dddddd;
    background: #fff;
    border-spacing: 0;
    border-collapse: separate;
    width: 100%;
  }
  .l-post-template table tr:last-child th, .l-post-template table tr:last-child td {
    border-bottom: none;
  }
  .l-post-template table tr th:last-child, .l-post-template table tr td:last-child {
    border-right: none;
  }
  .l-post-template table th {
    text-align: left;
    padding: 1rem;
    font-size: 14px;
    line-height: 1.25;
    font-weight: bold;
    color: #011A6A;
    background: #f8f8f8;
    border-bottom: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
  }
  .l-post-template table td {
    padding: 1rem;
    font-size: 15px;
    color: #444;
    line-height: 1.6;
    border-bottom: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
  }
  .l-post-template ul {
    margin-bottom: 2rem;
  }
  .l-post-template ul li {
    padding: 8px 0 8px 12px;
  }
  .l-post-template ul li:before {
    content: "";
    width: 6px;
    height: 2px;
    position: absolute;
    left: 0;
    top: 18px;
    background: #011A6A;
  }
  .l-post-template ol {
    margin-bottom: 2rem;
    padding-left: 1.5rem;
    list-style-type: decimal-leading-zero;
  }
  .l-post-template ol li {
    padding: 8px 0;
  }
  .l-post-template li {
    font-size: 15px;
    line-height: 1.6;
    position: relative;
  }
  .l-post-template ul.link-block-list {
    list-style: none;
    width: calc(100% + 8px);
    margin: 0 -4px 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-post-template ul.link-block-list li {
    width: calc((100% / 3) - 8px);
    margin: 0 4px 8px;
    padding: 0;
    border: 2px solid #011A6A;
    overflow: hidden;
  }
  .l-post-template ul.link-block-list li:before {
    display: none;
  }
  .l-post-template ul.link-block-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1rem;
    font-size: 15px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    position: relative;
  }
  .l-post-template ul.link-block-list li a .icon {
    background: #011A6A;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 18px;
    color: #fff;
    margin-right: 12px;
  }
  .l-post-template ul.link-block-list li a span {
    font-weight: bold;
  }
  .l-post-template ul.link-block-list li a:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template ul.link-block-list li a:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
  }
  .l-post-template ul.link-block-list _:-ms-lang(x)::-ms-backdrop, .l-post-template ul.link-block-list li {
    margin: 0 3px 8px;
  }
  .l-post-template dl {
    margin-bottom: 3rem;
  }
  .l-post-template dl dt {
    font-weight: bold;
    color: #011A6A;
    font-size: 16px;
    margin-bottom: 8px;
  }
  .l-post-template dl dt > * {
    font-weight: bold;
  }
  .l-post-template dl dd {
    font-size: 14px;
    line-height: 1.75;
    color: #444;
  }
  .l-post-template blockquote,
  .l-post-template .card {
    padding: 24px;
    background: #f8f8f8;
    position: relative;
    overflow: hidden;
    color: #444;
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 1rem;
  }
  .l-post-template blockquote > *:first-child,
  .l-post-template .card > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .l-post-template blockquote > *:last-child,
  .l-post-template .card > *:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .l-post-template blockquote:after,
  .l-post-template .card:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .card-white {
    border: 1px solid #dddddd;
    border-radius: 2px;
    overflow: hidden;
    display: block;
    padding: 24px;
    font-size: 15px;
    color: #011A6A;
    text-decoration: none;
    position: relative;
  }
  .l-post-template .card-white:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .card-white > *:last-child {
    margin-bottom: 0;
  }
  .l-post-template .image-card {
    border: 1px solid #dddddd;
    border-radius: 2px;
    overflow: hidden;
    display: block;
    font-size: 15px;
    color: #011A6A;
    text-decoration: none;
    position: relative;
  }
  .l-post-template .image-card:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .image-card .thumb {
    width: 100%;
    padding-top: 75%;
    position: relative;
    background: #f8f8f8;
    overflow: hidden;
  }
  .l-post-template .image-card .thumb img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 120%;
  }
  .l-post-template .image-card .text {
    padding: 24px;
  }
  .l-post-template .image-card .text > *:last-child {
    margin-bottom: 0 !important;
  }
  .l-post-template .image-card .text .title {
    font-weight: bold;
    color: #011A6A;
    font-size: 18px;
    margin-bottom: 16px;
  }
  .l-post-template .columned {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 16px);
    margin: 0 -8px 16px;
  }
  .l-post-template .columned > * {
    margin: 0 8px;
  }
  .l-post-template .columned.column-2 > * {
    width: calc(50% - 16px);
  }
  .l-post-template .columned.column-3 > * {
    width: calc((100% / 3) - 16px);
  }
  .l-post-template .columned.column-4 > * {
    width: calc(25% - 16px);
  }
  .l-post-template img {
    max-width: 100%;
    height: auto;
  }
  .l-post-template .button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1rem;
    font-size: 15px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    position: relative;
    max-width: 300px;
    margin: 16px 4px 16px;
    border: 2px solid #011A6A;
    overflow: hidden;
  }
  .l-post-template .button .icon {
    background: #011A6A;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 18px;
    color: #fff;
    margin-right: 12px;
  }
  .l-post-template .button span {
    font-weight: bold;
  }
  .l-post-template .button:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .button:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
  }
  .l-post-template .movie-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-post-template .movie-lists li {
    width: 33.33%;
    border: 1px solid #eee;
    padding: 16px 24px;
    margin-bottom: 24px;
  }
  .l-post-template .movie-lists li:before {
    display: none;
  }
  .l-post-template .qa-list {
    margin-bottom: 2rem;
  }
  .l-post-template .qa-list dt {
    padding: 1rem 3rem 1rem 1rem;
    border: 1px solid #ddd;
    position: relative;
  }
  .l-post-template .qa-list dt:before {
    content: "Q.";
    margin-right: 8px;
  }
  .l-post-template .qa-list dt:after {
    content: "\f067";
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    right: 1rem;
    top: 50%;
    margin-top: -8px;
    color: #ddd;
  }
  .l-post-template .qa-list dt:hover {
    cursor: pointer;
  }
  .l-post-template .qa-list dd {
    display: none;
    padding: 1rem;
    border: 1px solid #eee;
  }
  .l-post-template .qa-list dd:before {
    content: "A.";
    margin-right: 8px;
    font-weight: bold;
    font-size: 16px;
  }
  .l-post-template .qa-list.active dt:after {
    content: "\f068";
  }
  .l-post-template .company-list li {
    padding-left: 0;
  }
  .l-post-template .company-list li:before {
    display: none;
  }
  .l-post-template .company_access_map {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
  .l-post-template .company_access_map dt {
    width: 53%;
  }
  .l-post-template .company_access_map dd {
    width: 47%;
  }
  .l-post-template .about-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .l-post-template .about-lists .image-card {
    width: 48%;
    margin-bottom: 16px;
    border: none;
  }
  .l-post-template .about-lists .image-card .text {
    font-size: 14px;
    line-height: 1.4;
    border: 1px solid #dddddd;
  }
  .l-post-template .about-lists .image-card .thumb {
    width: 100%;
    padding-top: 0;
    position: relative;
    background: none;
    overflow: hidden;
  }
  .l-post-template .about-lists .image-card img {
    width: 100%;
    min-height: 40px;
    position: static;
    left: auto;
    top: auto;
    -webkit-transform: translate(0%, 0%);
        -ms-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto 16px;
  }
  .l-post-template .repair-flow {
    padding-left: 0;
  }
  .l-post-template .repair-flow > li {
    position: relative;
    text-align: center;
  }
  .l-post-template .repair-flow > li .fas {
    position: absolute;
    left: 50%;
    bottom: 0px;
    font-size: 20px;
    margin-left: -10px;
  }
  .l-post-template .repair-flow > li .title {
    font-weight: bold;
    font-size: 18px;
    padding: 8px !important;
    margin-bottom: 32px;
    color: #fff;
    background: #011A6A;
    position: relative;
  }
  .l-post-template .repair-flow > li .title .fas {
    bottom: -30px;
    color: #011A6A;
  }
  .l-post-template .repair-flow > li ol {
    padding-left: 0;
  }
  .l-post-template .repair-flow > li li {
    list-style: none;
    margin-bottom: 32px;
    padding-left: 0;
  }
  .l-post-template .repair-flow > li li .fas {
    bottom: -28px;
  }
  .l-post-template .cnt_box01 {
    line-height: 1.6 !important;
  }
  .l-post-template .go-contact {
    padding-top: 24px;
    margin-top: 24px;
    border-top: 1px solid #efefef;
  }
  .l-post-template .contact-index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-post-template .contact-index li {
    margin-right: 24px;
    margin-bottom: 24px;
  }
  .l-post-template .contact-index li:before {
    display: none;
  }
  .l-post-template .contact-index li i {
    margin-right: 8px;
    font-size: 24px;
  }
  .l-post-template .back-top {
    margin: 32px 0;
    text-align: right;
  }
  .l-post-template .back-top i {
    font-size: 18px;
    margin-right: 6px;
  }
  .l-post-template .sdgs-top {
    margin-bottom: 80px;
  }
  .l-post-template .sdgs-top p {
    font-family: sun-serif;
    margin-top: 16px;
    font-weight: bold;
    font-size: 18px;
  }
  .l-post-template .sdgs-card {
    position: relative;
    margin-bottom: 80px;
  }
  .l-post-template .sdgs-card .sdgs-card-title {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: bold;
    font-size: 48px;
    position: relative;
    margin-bottom: 16px;
  }
  .l-post-template .sdgs-card .sdgs-card-title span {
    position: absolute;
    right: 0;
    top: 0px;
    color: #011A6A;
    font-size: 60px;
    opacity: 0.4;
    font-family: 'EB Garamond', serif;
  }
  .l-post-template .sdgs-card .sdgs-card-title .sub {
    font-size: 18px;
    font-family: sun-serif;
    font-weight: bold;
    letter-spacing: 1px;
    color: #011A6A;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid #eee;
  }
  .l-post-template .sdgs-card .sdgs-card-title .sdgs-icon {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid #eee;
  }
  .l-post-template .sdgs-card.ecology .sdgs-card-title span {
    color: #3AA528;
  }
  .l-post-template .sdgs-card.ecology .sub {
    color: #3AA528;
    border-bottom: 4px solid #3AA528;
  }
  .l-post-template .sdgs-card.ecology .sdgs-content-title:after {
    background: #3AA528;
  }
  .l-post-template .sdgs-card.ecology .sdgs-icon {
    border-bottom: 1px solid #3AA528;
  }
  .l-post-template .sdgs-card.life .sdgs-card-title span {
    color: #E65606;
  }
  .l-post-template .sdgs-card.life .sub {
    color: #E65606;
    border-bottom: 4px solid #E65606;
  }
  .l-post-template .sdgs-card.life .sdgs-content-title:after {
    background: #E65606;
  }
  .l-post-template .sdgs-card.life .sdgs-icon {
    border-bottom: 1px solid #E65606;
  }
  .l-post-template .sdgs-card.working .sdgs-card-title span {
    color: #053991;
  }
  .l-post-template .sdgs-card.working .sub {
    color: #053991;
    border-bottom: 4px solid #053991;
  }
  .l-post-template .sdgs-card.working .sdgs-content-title:after {
    background: #053991;
  }
  .l-post-template .sdgs-card.working .sdgs-icon {
    border-bottom: 1px solid #053991;
  }
  .l-post-template .sdgs-card .sdgs-content-title {
    margin-bottom: 24px;
    width: 100%;
    height: 160px;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-post-template .sdgs-card .sdgs-content-title:after {
    content: "";
    width: calc(80% +  40px);
    height: 100%;
    position: absolute;
    left: -20px;
    top: 0;
    background: #011A6A;
    opacity: 1;
    -webkit-transform: skew(-15deg);
        -ms-transform: skew(-15deg);
            transform: skew(-15deg);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
  }
  .l-post-template .sdgs-card .sdgs-content-title .title-image {
    width: 240px;
    height: auto;
    position: absolute;
    right: 0;
    top: 0;
  }
  .l-post-template .sdgs-card .sdgs-content-title .title {
    font-size: 24px;
    line-height: 1.6;
    color: #fff;
    position: relative;
    z-index: 10;
    padding: 0 0 0 40px;
  }
  .l-post-template .sdgs-card .sdgs-card-content {
    margin-bottom: 40px;
  }
  .l-post-template .sdgs-card .sdgs-meta {
    margin-bottom: 24px;
  }
  .l-post-template .sdgs-card .sdgs-meta .label {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 4px;
  }
  .l-post-template .sdgs-card .sdgs-meta .info {
    font-size: 20px;
    line-height: 1.6;
    opacity: 0.8;
  }
  .sp-only {
    display: none !important;
  }
  .en-only {
    display: none;
  }
  .jp-only {
    display: block;
  }
  .en-main-content .en-only {
    display: block;
  }
  .en-main-content .jp-only {
    display: none;
  }
}

@media (max-width: 768px) {
  * {
    outline: none !important;
  }
  *:hover, *:focus, *:active {
    outline: none !important;
  }

  .section-title {
    color: #011A6A;
  }
  .section-title .title-en {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    font-size: 28px;
    letter-spacing: 2px;
    line-height: 1;
    margin-bottom: 12px;
    display: block;
  }
  .section-title .title-jp {
    font-size: 12px;
    font-weight: bold;
    display: block;
    letter-spacing: 2px;
  }
  .section-title.align-center {
    text-align: center;
  }
  .section-title.align-left {
    text-align: center;
  }
  .section-title.small .title-en {
    font-size: 32px;
  }
  .section-title.white > * {
    color: #fff;
  }
  .section-title.sp-normal > * {
    color: #011A6A !important;
  }
  .section-header {
    position: relative;
  }
  .section-header-description {
    max-width: 640px;
    margin: 0 auto;
    padding: 32px 0;
    line-height: 1.75;
    font-size: 12px;
    color: #011A6A;
    font-weight: bold;
  }
  .section-header-description.white {
    color: #fff;
    text-shadow: 0 0 12px rgba(0, 0, 0, 0.6);
  }
  .btn {
    text-decoration: none;
    border: 2px solid #011A6A;
    color: #011A6A;
    letter-spacing: 2px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    height: 48px;
    padding: 0 48px 0 40px;
    font-size: 14px;
    font-weight: bold;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .btn i {
    position: relative;
    z-index: 5;
  }
  .btn:hover {
    color: #fff;
  }
  .btn:hover .label:before {
    -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
            transform: scaleX(1);
  }
  .btn:hover:after {
    right: 12px;
    border-color: #fff !important;
  }
  .btn .label {
    font-weight: bold;
    z-index: 5;
  }
  .btn:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 16px;
    top: calc(50% - 4px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    z-index: 5;
  }
  .btn.white-btn {
    border-color: #fff;
    color: #fff;
  }
  .btn.white-btn .label:before {
    background: #fff;
  }
  .btn.white-btn:after {
    border-color: #fff;
  }
  .btn.white-btn.sp-normal-btn {
    border-color: #011A6A;
    color: #011A6A;
  }
  .btn.white-btn.sp-normal-btn:after {
    border-color: #011A6A;
  }
  .btn.btn-l, .btn.sp-btn-l {
    border-width: 2px;
    height: 64px;
    width: 240px;
  }
  .arrow {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .arrow.white {
    border-color: #fff;
  }
  .container {
    width: 100%;
    max-width: 768px;
    margin: 0 auto;
  }
  .full-container {
    width: 100%;
  }
  .full-container.d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .full-container .side-column {
    width: 100%;
    position: relative;
    border-top: 1px solid #dddddd;
  }
  .full-container .main-column {
    width: 100vw;
    margin: auto;
    padding: 0 16px 64px;
    max-width: 640px;
  }
  .category-8 .full-container {
    width: 100%;
  }
  .category-8 .full-container.d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .main-header {
    background: #fff;
    z-index: 1000;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    padding-right: 48px;
  }
  .main-header .logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 16px 12px;
  }
  .main-header .logo img {
    height: 16px;
    width: auto;
  }
  .c-header-search-content {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100vw;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    background: #011A6A;
    padding: 32px 16px;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .c-header-search-content:before {
    content: "";
    width: 100%;
    height: calc(100vh - 72px);
    position: fixed;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: -1;
  }
  .c-header-search-content.search-open {
    visibility: visible;
    pointer-events: all;
    opacity: 1;
  }
  .c-header-search-content .search-form-text-block,
  .c-header-search-content .select-block {
    margin-bottom: 1rem;
  }
  .c-header-search-content .search-form-text-block input,
  .c-header-search-content .search-form-text-block select,
  .c-header-search-content .select-block input,
  .c-header-search-content .select-block select {
    width: 100%;
  }
  .c-header-search-content .search-form-text-block {
    border-top: 1px solid rgba(255, 255, 255, 0.25);
    padding-top: 1rem;
    margin-top: 1rem;
  }
  .c-header-search-content .search-form-text-block input {
    margin-bottom: 1.5rem;
  }
  .c-header-search-content .search-submit {
    width: 100%;
    height: 48px;
    background: transparent;
    border-radius: 0;
    border: 2px solid #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
  }
  .c-header-search-content .search-submit i {
    margin-right: 4px;
  }
  .c-header-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100vw;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    background: #fff;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .c-header-menu:before {
    content: "";
    width: 100%;
    height: calc(100vh - 50px);
    position: fixed;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: -1;
  }
  .c-header-menu.header-open {
    visibility: visible;
    pointer-events: all;
    opacity: 1;
  }
  .c-header-menu .global-nav {
    background: #fff;
  }
  .c-header-menu .global-nav .global-nav-item {
    border-bottom: 1px solid rgba(221, 221, 221, 0.25);
    background: #011A6A;
  }
  .c-header-menu .global-nav .global-nav-item > a {
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    display: block;
    position: relative;
    padding: 20px 16px;
  }
  .c-header-menu .global-nav .global-nav-item > a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 16px;
    top: calc(50% - 4px);
  }
  .c-header-menu .global-nav-extra-item {
    padding: 20px 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .c-header-menu .language-select {
    height: 24px;
    width: 64px;
    border-radius: 4px;
    border: 1px solid #011A6A;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  .c-header-menu .language-select a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    width: 50%;
  }
  .c-header-menu .language-select a.active {
    background: #011A6A;
    color: #fff;
  }
  .c-header-social-lists {
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .c-header-social-lists .social-item {
    padding: 0 8px;
  }
  .c-header-social-lists .social-item a {
    color: #011A6A;
    text-decoration: none;
    font-size: 16px;
  }
  .c-header-social-lists .social-item a:hover {
    opacity: 0.75;
  }
  .c-header-extra-menu {
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .c-header-extra-menu .extra-menu-item {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-decoration: none;
    margin: 0 4px;
    min-width: 32px;
    color: #011A6A;
  }
  .c-header-extra-menu .extra-menu-item .icon {
    display: block;
    font-size: 20px;
    margin-bottom: 4px;
  }
  .c-header-extra-menu .extra-menu-item .label {
    font-size: 10px;
    font-weight: bold;
    display: block;
    -webkit-transform-origin: top center;
        -ms-transform-origin: top center;
            transform-origin: top center;
    -webkit-transform: scale(0.8);
        -ms-transform: scale(0.8);
            transform: scale(0.8);
  }
  .menu-toggle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 40px;
    height: 40px;
    position: absolute;
    right: 4px;
    top: calc(50% - 20px);
  }
  .menu-toggle.toggle-on .icon {
    background: transparent;
  }
  .menu-toggle.toggle-on .icon:before {
    top: 0;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .menu-toggle.toggle-on .icon:after {
    bottom: 0;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .menu-toggle .icon {
    display: inline-block;
    position: relative;
    width: 24px;
    height: 2px;
    background: #011A6A;
  }
  .menu-toggle .icon:after, .menu-toggle .icon:before {
    content: "";
    width: 100%;
    height: 2px;
    background: #011A6A;
    position: absolute;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    left: 0;
  }
  .menu-toggle .icon:before {
    top: -8px;
  }
  .menu-toggle .icon:after {
    bottom: -8px;
  }
  .app-banner {
    position: absolute;
    left: 5%;
    bottom: -32px;
    -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
            transform: translateX(0%);
    max-width: 90%;
  }
	a.app-banner {
	text-decoration: none;
  }
  .app-banner img {
    max-width: 100%;
  }
  .header-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header-nav-item {
    width: calc(100% / 6);
    text-align: center;
  }
  .header-nav-item:hover .l-header-mega-menu {
    visibility: visible;
    overflow: visible;
    opacity: 1;
  }
  .header-nav-item:hover a {
    color: #011A6A;
  }
  .header-nav-item:last-child > a:after {
    display: none;
  }
  .header-nav-item > a {
    display: block;
    height: 48px;
    padding: 16px 8px;
    width: 100%;
    color: #444;
    font-weight: bold;
    text-decoration: none;
    font-weight: bold;
    position: relative;
  }
  .header-nav-item > a:after {
    content: "";
    display: block;
    height: 48px;
    border-right: 1px solid #dddddd;
    position: absolute;
    right: 0;
    top: 0;
  }
  .header-nav-item > a .nav-item-title {
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
  }
  .header-nav-item:last-child > a {
    background: #011A6A;
  }
  .header-nav-item:last-child > a .nav-item-title {
    color: #fff;
  }
  .l-header-mega-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: -1;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    position: absolute;
    width: 100%;
    left: 0;
    top: 100%;
    -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.1);
  }
  .l-header-mega-menu:before {
    content: "";
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.4);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    pointer-events: none;
  }
  .l-header-mega-menu .header-mega-menu-title {
    color: #fff;
    padding: 40px 24px;
    background: #011A6A;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: left;
    width: 20%;
  }
  .l-header-mega-menu .header-mega-menu-title .mega-menu-title {
    font-size: 28px;
    font-weight: bold;
    padding: 0 4px;
    margin-bottom: 16px;
  }
  .l-header-mega-menu .header-mega-menu-title .mega-menu-title span {
    display: block;
    font-size: 11px;
    padding: 8px 2px 0;
  }
  .l-header-mega-menu .header-mega-menu-title .to-parent-page-top {
    display: inline-block;
    color: #fff;
    text-decoration: none;
    border: 2px solid #fff;
    font-size: 12px;
    padding: 12px 24px;
    border-radius: 20px;
    font-weight: bold;
  }
  .header-mega-menu {
    margin: 0 auto;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 0 16px;
    position: relative;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05) inset;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05) inset;
  }
  .header-mega-menu .header-mega-menu-item {
    width: calc(25% - 32px);
    margin: 0 16px;
  }
  .header-mega-menu .header-mega-menu-item a {
    display: block;
    padding: 40px 0;
    text-decoration: none;
    color: #444;
  }
  .header-mega-menu .header-mega-menu-item .mega-menu-image {
    width: 100%;
    height: 120px;
    background: #ccc;
    margin-right: 8px;
    overflow: hidden;
    position: relative;
  }
  .header-mega-menu .header-mega-menu-item .mega-menu-image img {
    max-width: 100%;
    width: auto;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .header-mega-menu .header-mega-menu-item .mega-menu-text {
    padding: 16px 4px 0;
  }
  .header-mega-menu .mega-menu-item-title {
    font-weight: bold;
    font-size: 14px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header-mega-menu .mega-menu-item-title img {
    width: 16px;
    height: 16px;
    display: inline-block;
    margin-right: 6px;
  }
  .c-footer-banner-area .footer-banner-item {
    width: 100%;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    background: rgba(1, 26, 106, 0.2);
  }
  .c-footer-banner-area .footer-banner-item:last-child {
    border-bottom: none;
  }
  .c-footer-banner-area .footer-banner-item:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .c-footer-banner-area .footer-banner-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
    color: #fff;
    position: relative;
    width: 100%;
    padding: 16px 24px 16px 16px;
  }
  .c-footer-banner-area .footer-banner-item a:hover img {
    opacity: 0.4;
  }
  .c-footer-banner-area .footer-banner-item a:hover .arrow {
    -webkit-transform: translateX(12px) rotate(45deg);
        -ms-transform: translateX(12px) rotate(45deg);
            transform: translateX(12px) rotate(45deg);
  }
  .c-footer-banner-area .footer-banner-item a .icon {
    background: #011A6A;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 16px;
    color: #fff;
    margin-right: 16px;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #011A6A;
    font-weight: bold;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text h5 {
    margin: 0;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text .title-en {
    display: block;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    margin-bottom: 4px;
    letter-spacing: 2px;
    font-weight: bold;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text .title-jp {
    font-size: 12px;
  }
  .c-footer-banner-area .footer-banner-item a .footer-banner-item-text .arrow {
    position: absolute;
    right: 16px;
    top: calc(50% - 4px);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .main-footer {
    background: #011A6A;
  }
  .main-footer .c-footer-link-area {
    padding: 32px 16px;
  }
  .main-footer .footer-link-title {
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    padding: 12px 0;
    margin: 0 0 24px;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }
  .main-footer .c-footer-link {
    width: 100%;
  }
  .main-footer .c-footer-link .link-block {
    width: 100%;
    margin: 0 0 16px;
    font-size: 12px;
  }
  .main-footer .c-footer-link .link-parent {
    display: block;
    font-weight: bold;
    padding: 4px 0 4px 16px;
    margin: 0 0 4px 0;
    position: relative;
  }
  .main-footer .c-footer-link .link-parent:hover {
    text-decoration: underline;
  }
  .main-footer .c-footer-link .link-parent:before {
    content: "";
    width: 8px;
    height: 1px;
    position: absolute;
    left: 4px;
    top: 10px;
    background: #fff;
    opacity: 0.5;
  }
  .main-footer .c-footer-link .link-child {
    padding-left: 8px;
  }
  .main-footer .c-footer-link .link-child a {
    display: block;
    padding: 2px 0 2px 16px;
    margin: 0 0 4px 0;
    position: relative;
  }
  .main-footer .c-footer-link .link-child a:before {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    left: -4px;
    top: 2px;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    opacity: 0.5;
  }
  .main-footer a {
    text-decoration: none;
    color: #fff;
  }
  .main-footer .link-item {
    display: block;
    color: #fff;
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    padding: 12px 40px 12px 0;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }
  .main-footer .link-item:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: 8px;
    top: calc(50% - 4px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .main-footer .c-footer-bottom {
    background: #010e37;
    padding: 32px 16px;
  }
  .main-footer .c-footer-bottom .d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .main-footer .footer-logo {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 32px 16px 0;
  }
  .main-footer .footer-logo img {
    height: 40px;
  }
  .main-footer .c-footer-bottom-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .main-footer .c-footer-bottom-link .link-block {
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    padding-bottom: 12px;
  }
  .main-footer .c-footer-bottom-link .link-block-child {
    padding-top: 16px;
  }
  .main-footer .c-footer-bottom-link .link-block-child a {
    display: block;
    font-size: 12px;
    padding: 4px 0 4px 16px;
    margin: 0 0 4px 0;
    position: relative;
  }
  .main-footer .c-footer-bottom-link .link-block-child a:hover {
    text-decoration: underline;
  }
  .main-footer .c-footer-bottom-link .link-block-child a:before {
    content: "";
    width: 8px;
    height: 1px;
    position: absolute;
    left: 0;
    top: 10px;
    background: #fff;
    opacity: 0.5;
  }
  .main-footer .c-footer-copyright {
    background: black;
    font-size: 12px;
    color: #fff;
    padding: 28px 16px;
  }
  .main-footer .c-footer-copyright .copyright {
    text-align: center;
    opacity: 0.75;
  }
  .fixed-scroll-top {
    display: none;
  }
  .l-sidebar {
    z-index: 100;
  }
  .side-section-item .side-section-title {
    padding: 24px 16px;
    border-bottom: 1px solid #dddddd;
    position: relative;
    overflow: hidden;
  }
  .side-section-item .side-section-title:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .side-section-item .side-section-title .title-en {
    display: block;
    font-family: "Roboto", sans-serif;
    font-size: 20px;
    color: #011A6A;
    letter-spacing: 2px;
    font-weight: bold;
    margin-bottom: 4px;
  }
  .side-section-item .side-section-title .title-jp {
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item {
    position: relative;
    border-bottom: 1px solid #dddddd;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item:last-child {
    border-bottom: none;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item a {
    padding: 20px 40px 20px 16px;
    display: block;
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item a:after {
    content: "";
    position: absolute;
    right: 16px;
    top: calc(50% - 4px);
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item:hover .side-nav-child {
    visibility: visible;
    opacity: 1;
    pointer-events: all;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child {
    display: none;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: calc(100% + 1px);
    top: 0;
    background: #fff;
    white-space: nowrap;
    -webkit-box-shadow: 0 8px 12px rgba(0, 0, 0, 0.05), 0 4px 24px rgba(0, 0, 0, 0.05);
            box-shadow: 0 8px 12px rgba(0, 0, 0, 0.05), 0 4px 24px rgba(0, 0, 0, 0.05);
    z-index: 100;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li {
    position: relative;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li a {
    padding: 16px 64px 16px 24px;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .side-section-item .sidebar-nav-list .sidebar-nav-item .side-nav-child li a:hover {
    background: rgba(1, 26, 106, 0.2);
  }
  .c-product-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 32px);
    margin: 0 -16px;
  }
  .product-item {
    width: 100%;
    border-bottom: 1px solid #dddddd;
  }
  .product-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 16px 32px 16px 12px;
    text-decoration: none;
    color: #444;
    position: relative;
  }
  .product-item a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 16px;
    top: calc(50% - 4px);
  }
  .product-item .item-thumb {
    width: 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .product-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .product-item .item-text {
    padding-left: 12px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .product-item .new-tag {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background: #EA176F;
    height: 24px;
    padding: 0 8px;
    margin: auto 0 auto 8px;
    letter-spacing: 0;
    position: relative;
  }
  .product-item .new-tag:after {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: 10px;
    height: 24px;
    background: #EA176F;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    right: -5px;
    top: 0;
  }
  .product-item .item-title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .product-item .item-title:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .product-item .item-info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 8px;
  }
  .product-item .item-info dl dt {
    width: 64px;
    line-height: 1.25;
    font-weight: bold;
    opacity: 0.6;
  }
  .product-item .item-info dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.25;
  }
  .download-page .c-product-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 40px);
    margin: 0 -20px;
  }
  .download-page .product-item {
    width: calc((100% / 1) - 40px);
    margin: 0 20px 48px;
  }
  .download-page .product-item .item-thumb {
    max-width: 100%;
    width: 100%;
    height: auto;
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .download-page .product-item .item-thumb:after {
    content: "VIEW MORE";
    position: absolute;
    font-family: "Roboto", sans-serif;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
    letter-spacing: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    opacity: 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .download-page .product-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .download-page .product-item a {
    text-decoration: none;
    color: #444;
  }
  .download-page .product-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .download-page .product-item a:hover .item-title {
    color: #011A6A;
    opacity: 0.75;
  }
  .download-page .product-item .item-title {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .download-page .product-item .item-title:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .download-page .product-item .item-info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 8px;
  }
  .download-page .product-item .item-info dl dt {
    width: 64px;
    line-height: 1.25;
  }
  .download-page .product-item .item-info dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.25;
  }
  .breadcrumb {
    padding: 12px 0 12px 16px;
    background: #fff;
    border-top: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
    overflow: hidden;
    max-width: 100vw;
  }
  .breadcrumb ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: scroll;
  }
  .breadcrumb ol li {
    font-size: 12px;
    white-space: nowrap;
    margin-right: 12px;
    color: #666;
  }
  .breadcrumb ol li:after {
    content: '/';
    margin-left: 12px;
    opacity: 0.5;
  }
  .breadcrumb ol li:last-child:after {
    display: none;
  }
  .breadcrumb ol li a {
    text-decoration: none;
    color: #011A6A;
  }
  .post-header {
    width: 100%;
    height: 160px;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .post-header:after {
    content: "";
    width: calc(75% +  40px);
    height: 100%;
    position: absolute;
    left: -40px;
    top: 0;
    background: #011A6A;
    opacity: 0.75;
    -webkit-transform: skew(-15deg);
        -ms-transform: skew(-15deg);
            transform: skew(-15deg);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
  }
  .post-header > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .post-header .post-title {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #fff;
    z-index: 100;
    position: relative;
    padding: 0 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
  .post-header .post-title .title-sub {
    display: block;
    font-size: 12px;
    margin-bottom: 8px;
    font-weight: bold;
  }
  .post-header .post-title .title-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 28px;
    font-weight: bold;
  }
  .post-header .post-title .new-tag {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    height: 20px;
    padding: 0 8px;
    margin-left: 12px;
    background: #EA176F;
    letter-spacing: 0;
    position: relative;
  }
  .post-header .post-title .new-tag:after {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: 10px;
    height: 20px;
    background: #EA176F;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    right: -5px;
    top: 0;
  }
  .c-footer-pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-top: 24px;
  }
  .pagination ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border: 1px solid #dddddd;
  }
  .pagination ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 32px;
    min-width: 32px;
    border-right: 1px solid #dddddd;
    font-weight: bold;
    font-size: 16px;
    font-family: 'Roboto', sans-serif;
  }
  .pagination ul li:last-child {
    border-right: none;
  }
  .pagination ul li.active {
    background: #011A6A;
    color: #fff;
    padding: 0 8px;
  }
  .pagination ul li.next a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    margin-left: -2px;
  }
  .pagination ul li.prev a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-left: 2px solid #011A6A;
    border-top: 2px solid #011A6A;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    margin-right: -2px;
  }
  .pagination ul a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 32px;
    min-width: 32px;
    text-decoration: none;
    padding: 0 8px;
    color: #011A6A;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .pagination ul a:hover {
    background: rgba(1, 26, 106, 0.2);
  }
  input, button, textarea, select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background: transparent;
    border-radius: 0;
  }
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="password"],
  textarea {
    width: 100%;
    min-height: 40px;
    padding: 0.5rem;
    border: 1px solid #dddddd;
    font-size: 16px;
    color: #444;
    background: #fff;
    -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05) inset;
            box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05) inset;
  }
  input[type="text"]:placeholder-shown,
  input[type="email"]:placeholder-shown,
  input[type="tel"]:placeholder-shown,
  input[type="number"]:placeholder-shown,
  input[type="password"]:placeholder-shown,
  textarea:placeholder-shown {
    color: #ccc;
  }
  input[type="text"]::-webkit-input-placeholder,
  input[type="email"]::-webkit-input-placeholder,
  input[type="tel"]::-webkit-input-placeholder,
  input[type="number"]::-webkit-input-placeholder,
  input[type="password"]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #ccc;
  }
  input[type="text"]:-moz-placeholder,
  input[type="email"]:-moz-placeholder,
  input[type="tel"]:-moz-placeholder,
  input[type="number"]:-moz-placeholder,
  input[type="password"]:-moz-placeholder,
  textarea:-moz-placeholder {
    opacity: 1;
    color: #ccc;
  }
  input[type="text"]::-moz-placeholder,
  input[type="email"]::-moz-placeholder,
  input[type="tel"]::-moz-placeholder,
  input[type="number"]::-moz-placeholder,
  input[type="password"]::-moz-placeholder,
  textarea::-moz-placeholder {
    opacity: 1;
    color: #ccc;
  }
  input[type="text"]:-ms-input-placeholder,
  input[type="email"]:-ms-input-placeholder,
  input[type="tel"]:-ms-input-placeholder,
  input[type="number"]:-ms-input-placeholder,
  input[type="password"]:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #ccc;
  }
  input[type="text"].full,
  input[type="email"].full,
  input[type="tel"].full,
  input[type="number"].full,
  input[type="password"].full,
  textarea.full {
    width: 100%;
  }
  .submit {
    text-align: center;
    padding: 1rem;
    font-size: 15px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    position: relative;
    width: 260px;
    margin: 16px auto 16px;
    border: 2px solid #011A6A;
    overflow: hidden;
    display: block;
  }
  select {
    border: 1px solid #dddddd;
    background: #fff;
    position: relative;
    height: 40px;
    padding: 0.5rem 1.5rem 0.5rem 0.5rem;
    font-size: 16px;
    color: #444;
    position: relative;
    border-radius: 0;
  }
  select option {
    min-height: 1rem !important;
  }
  .select {
    position: relative;
  }
  .select:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #011A6A;
    border-bottom: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
    pointer-events: none;
  }
  .form-block {
    margin-bottom: 1rem;
  }
  .form-caution {
    font-size: 12px;
    color: #444;
    opacity: 0.75;
    line-height: 1.6;
  }
  .form-label {
    margin-bottom: 8px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .form-label.white label {
    color: #fff;
  }
  .form-label label {
    font-size: 12px;
    font-weight: bold;
    color: #011A6A;
  }
  .form-label label.required:after {
    content: "必須";
    font-size: 10px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 2px 4px;
    background: #EA176F;
    color: #fff;
    font-weight: bold;
    margin-left: 4px;
  }
  .l-new-arrival {
    max-width: 100vw;
    overflow: hidden;
    position: relative;
    padding-bottom: 144px;
  }
  .l-new-arrival .new-arrival-header {
    padding: 56px 16px 24px;
    z-index: 10;
  }
  .l-new-arrival .new-arrival-header.animated-on .section-title {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-new-arrival .new-arrival-header .section-title {
    opacity: 0;
  }
  .l-new-arrival .new-arrival-header .c-invitation-btn {
    position: absolute;
    bottom: 56px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-new-arrival .new-arrival-header .c-invitation-btn .btn {
    min-width: 240px;
  }
  .l-new-arrival .new-arrival-content {
    width: 100%;
    overflow: hidden;
    padding: 0;
    opacity: 0;
    -webkit-transition: 0.4s opacity;
    -o-transition: 0.4s opacity;
    transition: 0.4s opacity;
    position: relative;
  }
  .l-new-arrival .new-arrival-content.animated-on {
    opacity: 1;
  }
  .l-new-arrival .slider-item {
    width: 280px;
    height: auto;
    margin: 0 8px;
    outline: none;
    opacity: 0.4;
    padding: 16px;
    border: 1px solid rgba(221, 221, 221, 0.4);
    border-radius: 2px;
  }
  .l-new-arrival .slider-item:focus, .l-new-arrival .slider-item:hover {
    outline: none;
  }
  .l-new-arrival .slider-item:focus > *, .l-new-arrival .slider-item:hover > * {
    outline: none;
  }
  .l-new-arrival .slider-item.slick-current {
    opacity: 1;
  }
  .l-new-arrival .slider-item .item-thumb {
    max-width: 100%;
    height: 144px;
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-new-arrival .slider-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .l-new-arrival .slider-item a {
    text-decoration: none;
    color: #444;
  }
  .l-new-arrival .slider-item .item-title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .l-new-arrival .slider-item .item-title:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  .l-new-arrival .slider-item .item-info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 8px;
  }
  .l-new-arrival .slider-item .item-info dl dt {
    width: 64px;
    line-height: 1.25;
    font-weight: bold;
    opacity: 0.6;
  }
  .l-new-arrival .slider-item .item-info dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.25;
  }
  .l-new-arrival .slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 16px;
  }
  .l-new-arrival .slick-dots li button {
    display: inline-block;
    width: 12px;
    height: 4px;
    overflow: hidden;
    background: #ccc;
    margin: 0 2px;
    padding: 0;
    color: transparent;
    font-size: 0;
    border: none;
    border-radius: 0;
  }
  .l-new-arrival .slick-dots li.slick-active button {
    background: #011A6A;
  }
  .l-new-arrival .slick-arrow {
    color: transparent;
    font-size: 0;
    width: 28px;
    height: 48px;
    overflow: hidden;
    position: absolute;
    background: #011A6A;
    border: none;
    top: calc(50% - 24px);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 10;
  }
  .l-new-arrival .slick-arrow:after {
    content: "";
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    display: inline-block;
  }
  .l-new-arrival .slick-arrow.slick-next {
    right: 0;
    border-radius: 2px 0 0 2px;
    padding-left: 4px;
  }
  .l-new-arrival .slick-arrow.slick-next:after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-new-arrival .slick-arrow.slick-prev {
    left: 0;
    border-radius: 0 2px 2px 0;
    padding-right: 4px;
  }
  .l-new-arrival .slick-arrow.slick-prev:after {
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
  .l-new-arrival .new-arrival-item-slider:hover .slick-arrow {
    opacity: 1;
  }
  .l-categories {
    background: #f8f8f8;
    padding: 56px 16px;
  }
  .l-categories .categories-header {
    margin-bottom: 32px;
    opacity: 0;
  }
  .l-categories .categories-header.animated-on {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-categories .categories-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -4px;
    width: calc(100% + 8px);
  }
  .l-categories .category-item {
    position: relative;
    width: calc((100% / 2) - 8px);
    margin: 0 4px 8px;
    overflow: hidden;
  }
  .l-categories .category-item:after {
    content: "";
    background: #fff;
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
        -ms-transform-origin: left;
            transform-origin: left;
  }
  .l-categories .category-item.animated-on a {
    opacity: 1;
  }
  .l-categories .category-item.animated-on:after {
    -webkit-animation: wipe-left 1s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0.2s forwards;
            animation: wipe-left 1s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0.2s forwards;
  }
  .l-categories .category-item a {
    background: #fff;
    display: block;
    text-decoration: none;
    position: relative;
    opacity: 0;
    -webkit-transition: 0.1s 0.6s opacity;
    -o-transition: 0.1s 0.6s opacity;
    transition: 0.1s 0.6s opacity;
  }
  .l-categories .category-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .l-categories .category-item a:hover .arrow {
    -webkit-transform: translateX(8px) rotate(45deg);
        -ms-transform: translateX(8px) rotate(45deg);
            transform: translateX(8px) rotate(45deg);
  }
  .l-categories .category-item a:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-categories .category-item .item-thumb {
    max-width: 100%;
    height: 120px;
    padding: 24px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .l-categories .category-item .item-thumb:after {
    content: "VIEW MORE";
    position: absolute;
    font-family: "Roboto", sans-serif;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #011A6A;
    font-size: 14px;
    letter-spacing: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    opacity: 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .l-categories .category-item .item-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .l-categories .category-item .item-title {
    padding: 20px 16px;
    background: #011A6A;
  }
  .l-categories .category-item .item-title .title-en {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 4px;
    display: block;
  }
  .l-categories .category-item .item-title .title-jp {
    font-size: 12px;
    color: #fff;
  }
  .l-categories .category-item .arrow {
    position: absolute;
    right: 12px;
    bottom: 36px;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .l-categories .categories-footer {
    padding: 48px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-feature-area {
    padding: 56px 0 0;
    max-width: 100vw;
    overflow: hidden;
    position: relative;
    background: #010e37;
  }
  .l-feature-area .c-feature-area-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../img/feature_bg.jpg) no-repeat center top transparent;
    background-size: 1100px auto;
    opacity: 0.75;
  }
  .l-feature-area .feature-header {
    padding: 0 24px 88px;
  }
  .l-feature-area .feature-header .section-title,
  .l-feature-area .feature-header .section-header-description {
    opacity: 0;
  }
  .l-feature-area .feature-header .white-btn {
    margin: 16px auto;
    max-width: 280px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #fff;
    border-color: #fff;
  }
  .l-feature-area .feature-header .white-btn:after {
    color: #fff;
  }
  .l-feature-area .feature-header.animated-on .section-title {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-feature-area .feature-header.animated-on .section-header-description {
    -webkit-animation: fade-up 0.4s 0.2s forwards;
            animation: fade-up 0.4s 0.2s forwards;
  }
  .l-feature-area .feature-item-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .l-feature-area .feature-item {
    position: relative;
    width: 100%;
    counter-increment: feature-count;
  }
  .l-feature-area .feature-item.animated-on:after {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-title {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-description {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-feature-area .feature-item.animated-on .feature-item-image {
    -webkit-animation: fade-up 0.4s forwards;
            animation: fade-up 0.4s forwards;
  }
  .l-feature-area .feature-item:last-child {
    margin-bottom: 0;
  }
  .l-feature-area .feature-item:after {
    content: "0" counter(feature-count) ".";
    font-family: 'Roboto', sans-serif;
    font-size: 120px;
    font-weight: 700;
    position: absolute;
    color: rgba(255, 255, 255, 0.4);
    line-height: 1;
    top: -80px;
    left: 24px;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    z-index: 100;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-content {
    position: relative;
  }
  .l-feature-area .feature-item:nth-child(odd) .feature-item-text:before {
    background: rgba(1, 26, 106, 0.975);
  }
  .l-feature-area .feature-item:nth-child(even) .feature-item-text:before {
    background: rgba(0, 7, 30, 0.975);
  }
  .l-feature-area .feature-item .feature-item-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #dddddd;
    background-size: 1100px auto;
    background-position: center center;
    -webkit-transition: 0.1s 0.6s opacity;
    -o-transition: 0.1s 0.6s opacity;
    transition: 0.1s 0.6s opacity;
  }
  .l-feature-area .feature-item .feature-item-text {
    width: 100%;
    position: relative;
    padding: 56px 24px 144px;
  }
  .l-feature-area .feature-item .feature-item-text:before {
    content: "";
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: skewY(-15deg);
        -ms-transform: skewY(-15deg);
            transform: skewY(-15deg);
  }
  .l-feature-area .feature-item .feature-item-text > * {
    position: relative;
  }
  .l-feature-area .feature-item .feature-item-title {
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
    margin-bottom: 20px;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-description {
    font-size: 14px;
    color: #fff;
    line-height: 1.75;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-image {
    width: 100%;
    position: relative;
    height: 280px;
    opacity: 0;
  }
  .l-feature-area .feature-item .feature-item-image img {
    position: absolute;
    display: block;
  }
  .l-feature-area .feature-item:nth-child(1) img {
    right: 24px;
    top: -136px;
    width: 320px;
    max-width: calc(100% - 48px);
    height: auto;
  }
  .l-feature-area .feature-item:nth-child(2) .image-01 {
    width: auto;
    height: 304px;
    right: 96px;
    top: -120px;
  }
  .l-feature-area .feature-item:nth-child(2) .image-02 {
    width: auto;
    height: 104px;
    left: 32px;
    bottom: 144px;
  }
  .l-feature-area .feature-item:nth-child(3) .image-01 {
    width: auto;
    height: 304px;
    left: 48px;
    top: -80px;
  }
  .l-feature-area .feature-item:nth-child(3) .image-02 {
    width: auto;
    height: 72px;
    right: 24px;
    bottom: 80px;
  }
  .l-news-section {
    background: #f8f8f8;
    padding: 0 16px 160px;
    position: relative;
  }
  .l-news-section .news-header {
    width: 100%;
    padding: 56px 0 24px;
  }
  .l-news-section .c-invitation-btn {
    position: absolute;
    bottom: 48px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .l-news-section .c-invitation-btn .btn {
    min-width: 240px;
  }
  .l-news-section .news-content {
    width: 100%;
  }
  .news-list {
    border-top: 1px solid #dddddd;
  }
  .news-list .news-item {
    border-bottom: 1px solid #dddddd;
  }
  .news-list .news-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 16px 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    text-decoration: none;
    color: #444;
    width: 100%;
    overflow: hidden;
    position: relative;
  }
  .news-list .news-item a:hover .arrow {
    right: 4px;
  }
  .news-list .news-item a:hover .news-title {
    text-decoration: underline;
  }
  .news-list .news-item .date {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: #011A6A;
    width: 88px;
    font-size: 14px;
    padding: 2px 0;
  }
  .news-list .news-item .news-category {
    padding: 4px 8px;
    width: 72px;
    background: #011A6A;
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 10px;
    margin-right: 8px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    letter-spacing: 2px;
  }
  .news-list .news-item .news-title {
    padding: 8px 16px 0 0;
    font-size: 14px;
    color: #444;
    font-weight: normal;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    width: 100%;
    margin: 0;
  }
  .news-list .news-item .arrow {
    position: absolute;
    right: 8px;
    top: calc(50% - 4px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  .c-gallery-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 32px);
    margin: 0 -16px 24px;
    padding-left: 16px;
    overflow: hidden;
    position: relative;
  }
  .c-gallery-slider .slider-item {
    background: #dddddd;
    width: calc(100vw - 32px);
    height: auto;
    margin: 0 2px;
  }
  .c-gallery-slider .slider-item .thumb {
    width: 100%;
    padding-top: 66%;
    position: relative;
    overflow: hidden;
  }
  .c-gallery-slider .slider-item .thumb img {
    width: 100%;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .c-gallery-slider .slick-arrow {
    color: transparent;
    font-size: 0;
    width: 24px;
    height: 24px;
    overflow: hidden;
    position: absolute;
    background: transparent;
    border: none;
    border-top: 2px solid #011A6A;
    border-left: 2px solid #011A6A;
    top: calc(50% - 12px);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    z-index: 100;
    cursor: pointer;
  }
  .c-gallery-slider .slick-arrow:hover {
    opacity: 0.75;
  }
  .c-gallery-slider .slick-arrow.slick-next {
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg);
    right: 24px;
  }
  .c-gallery-slider .slick-arrow.slick-prev {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    left: 24px;
  }
  .product-main-image {
    width: 100%;
    padding-top: 40px;
    position: relative;
  }
  .product-main-image > img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .product-main-image .product-advantage-icons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: absolute;
    right: 0;
    top: 40px;
  }
  .product-main-image .product-advantage-icons > img {
    display: block;
    max-height: 40px;
    max-width: 124px;
    width: auto;
    height: auto;
    margin-left: 8px;
  }
  .product-feature-point {
    padding: 16px 0;
  }
  .product-feature-point li {
    position: relative;
    font-size: 16px;
    line-height: 1.25;
    font-weight: bold;
    margin-bottom: 16px;
    padding: 28px 0 0 0;
    border-top: 1px solid #dddddd;
    counter-increment: point;
  }
  .product-feature-point li:before {
    content: "POINT 0" counter(point);
    font-family: 'Roboto', sans-serif;
    font-size: 12px;
    width: 72px;
    height: 20px;
    color: #fff;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2px 4px 2px 8px;
    z-index: 1;
    background: #011A6A;
    position: absolute;
    left: 0;
    top: 0;
  }
  .product-feature-point li:after {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: 72px;
    height: 20px;
    background: #011A6A;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    left: 4px;
    top: 0;
  }
  .product-params {
    width: calc(100% + 4px);
    margin: 0 -2px 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .product-params .params-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: #f8f8f8;
    width: calc(50% - 4px);
    margin: 0 2px 4px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .product-params .params-item img {
    width: 48px;
    height: 48px;
  }
  .product-params .params-item .params-item-text {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 8px;
  }
  .product-params .params-item .params-item-text dt {
    font-size: 10px;
    font-weight: bold;
    color: #011A6A;
    margin-bottom: 4px;
  }
  .product-params .params-item .params-item-text dd span {
    font-size: 12px;
    line-height: 1.2;
    font-weight: bold;
    color: #011A6A;
  }
  .product-detail-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 24px 20px 16px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: bold;
    color: #222;
    margin-left: auto;
    font-size: 20px;
    position: relative;
  }
  .product-detail-title:before {
    content: "";
    width: 10px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    top: calc(50% + 5px);
  }
  .product-detail .c-spacifications {
    margin-bottom: 24px;
    width: calc(100% + 32px);
    margin: 0 -16px;
  }
  .product-detail .c-spacifications li {
    padding: 12px 16px;
    font-size: 12px;
    line-height: 1.4;
  }
  .product-detail .c-spacifications li:nth-child(odd) {
    background: #f8f8f8;
  }
  .product-detail .c-feature {
    width: calc(100% + 32px);
    margin: 0 -16px 24px;
    background: #f8f8f8;
    padding: 8px 16px;
  }
  .product-detail .c-feature li {
    padding: 16px 0 16px 20px;
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    border-bottom: 1px solid #dddddd;
  }
  .product-detail .c-feature li:last-child {
    border-bottom: none;
  }
  .product-detail .c-feature li:before {
    content: "";
    width: 10px;
    height: 6px;
    position: absolute;
    left: 0;
    top: 22px;
    border-bottom: 2px solid #011A6A;
    border-left: 2px solid #011A6A;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .product-movie {
    margin-bottom: 24px;
  }
  .product-movie .movie-wrapper {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .product-movie .movie-wrapper iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .product-movie .movie-link {
    padding-top: 24px;
    text-align: right;
  }
  .product-movie .movie-link .text-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 14px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
  }
  .product-movie .movie-link .text-link:hover {
    text-decoration: underline;
  }
  .product-movie .movie-link .text-link span {
    margin-left: 4px;
  }
  .product-link-list {
    padding-top: 40px;
    border-top: 1px solid #dddddd;
  }
  .product-link-list a {
    width: 100%;
    margin: 4px 0;
  }
  .product-link-list a span {
    font-weight: bold;
    white-space: nowrap;
  }
  .product-link-list a i {
    margin-right: 8px;
    font-size: 20px;
  }
  .l-product-list {
    padding: 48px 0 0;
  }
  .post-index-section-title {
    border-bottom: 1px solid #dddddd;
    position: relative;
    padding-bottom: 12px;
    margin: 0;
    font-size: 20px;
    font-weight: bold;
    color: #444;
    line-height: 1.4;
  }
  .post-index-section-title:after {
    content: "";
    width: 40px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
    /*
  .category-section-title {
    font-size: 22px;
    padding-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
    width: 90%;
    margin: 32px auto 24px;
  }*/
  .category-section-title:after {
    content: "";
    width: 20px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .category-section-description {
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    width: 100%;
    margin: 0 20px 36px;
  }
  .c-series-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 40px);
    margin: 0 -20px 42px;
  }
  .series-item {
    width: calc((100% / 0) - 40px);
    margin: 24px 20px 48px;
    padding: 24px 24px 24px;
    background: #f8f8f8;
    position: relative;
    overflow: hidden;
    color: #444;
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 1rem;
  }
  .series-item > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .series-item > *:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .series-item:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .series-item .series-logo {
    max-width: 100%;
    height: auto;
    margin-bottom: 16px;
    padding: 8px;
    background: #fff;
  }
  .series-item .series-logo img {
    width: 100%;
    height: auto;
  }
  .series-item a {
    text-decoration: none;
    color: #444;
  }
  .series-item a:hover .item-thumb:after {
    opacity: 1;
  }
  .series-item a:hover .item-title {
    color: #011A6A;
    opacity: 0.75;
  }
  .series-item .series-name {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .series-item .series-name:after {
    content: "";
    width: 16px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: -1px;
  }
  #company_history_lists *:before {
    display: none;
  }
  #company_history_lists > li {
    padding: 0 0 1.5rem;
    border-top: 1px dotted #dddddd;
  }
  #company_history_lists > li > dl > dt {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 4px 0 12px;
    margin-bottom: 1rem;
    position: relative;
    background: #011A6A;
    color: #fff;
    height: 20px;
    font-size: 12px;
  }
  #company_history_lists > li > dl > dt:before {
    content: "";
    z-index: 0;
    display: block;
    position: absolute;
    width: calc(100% + 4px);
    height: 20px;
    background: #011A6A;
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: skew(-20deg);
        -ms-transform: skew(-20deg);
            transform: skew(-20deg);
    left: 4px;
    top: 0;
    z-index: -1;
  }
  #company_history_lists > li > dl dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: px;
  }
  #company_history_lists > li > dl dl:last-child {
    margin-bottom: 0;
  }
  #company_history_lists > li > dl dl > dt {
    width: 48px;
    font-size: 14px;
    line-height: 1.75;
  }
  #company_history_lists dl {
    margin-bottom: 0;
  }
  #company_history_lists dt {
    margin-bottom: 0;
  }
  #company_history_lists ul.lists {
    margin-bottom: 0;
  }
  #company_history_lists ul.lists li {
    padding: 0;
    margin-bottom: 8px;
  }
  #company_history_lists ul.lists li:last-child {
    margin-bottom: 0;
  }
  .l-brand-page .brand-header {
    width: 100%;
    background: url(../img/brand-hero.jpg) center center no-repeat;
    background-size: cover;
    padding: 40px 16px 40px;
    min-height: 10vh;
  }
  .l-brand-page .brand-header .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-brand-page .brand-header .brand-header-content {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .l-brand-page .brand-header .brand-navi {
    padding-left: 0px;
    text-align: right;
  }
  .l-brand-page .brand-header .brand-navi li {
    margin-bottom: 16px;
  }
  .l-brand-page .brand-header .brand-navi li a {
    width: 100%;
    display: block;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    color: #5E5D5D;
    font-size: 16px;
    letter-spacing: 2px;
    text-decoration: none;
    -webkit-transition: .4s;
    -o-transition: .4s;
    transition: .4s;
    position: relative;
    z-index: 1;
    line-height: 1;
  }
  .l-brand-page .brand-header .brand-navi li a .over {
    display: none;
  }
  .l-brand-page .brand-section {
    padding: 40px 16px 40px;
    background: url(../img/brand-bg-blue.png) left top no-repeat;
    background-size: cover;
  }
  .l-brand-page .brand-section.brand-visual {
    background: none;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-content .visual-img {
    max-width: 100%;
    opacity: 1;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents {
    width: 100%;
    margin: 24 0 0 auto;
    color: #333;
    position: relative;
    text-align: left;
    opacity: 0;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents .sp-only {
    max-width: 100%;
    margin-bottom: 12px;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents .visual-contents-title {
    margin-bottom: 16px;
    font-size: 22px;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents .visual-contents-title strong {
    font-weight: bold;
    display: block;
    margin-top: 8px;
    font-family: "Roboto", sans-serif;
  }
  .l-brand-page .brand-section.brand-visual .brand-feature-visial-contents p {
    margin-bottom: 2rem;
    line-height: 1.8;
    font-size: 16px;
  }
  .l-brand-page .brand-section.reverse {
    background: url(../img/brand-bg-gray.png) left top no-repeat;
    background-size: cover;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items .brand-feature-content {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: left;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items .brand-feature-main-image {
    position: relative;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    padding-right: 0px;
  }
  .l-brand-page .brand-section.reverse .brand-feature-items .brand-link-button {
    margin-left: auto;
    margin-right: 0;
  }
  .l-brand-page .brand-feature-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .l-brand-page .brand-feature-items.animated-on .brand-feature-title {
    -webkit-animation: fade-slide-left 0.2s 0.2s forwards;
            animation: fade-slide-left 0.2s 0.2s forwards;
  }
  .l-brand-page .brand-feature-items.animated-on .brand-feature-description,
  .l-brand-page .brand-feature-items.animated-on .brand-feature-visial-contents {
    -webkit-animation: fade-slide-left 0.2s 0.2s forwards;
            animation: fade-slide-left 0.2s 0.2s forwards;
  }
  .l-brand-page .brand-feature-items.animated-on .brand-feature-main-image,
  .l-brand-page .brand-feature-items.animated-on .brand-feature-content img {
    -webkit-animation: fade-up 0.2s 0.2s forwards;
            animation: fade-up 0.2s 0.2s forwards;
  }
  .l-brand-page .brand-feature-items .brand-feature-content {
    width: 100%;
    margin-bottom: 24px;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-title {
    color: #011A6A;
    line-height: 1.4;
    margin-bottom: 40px;
    opacity: 0;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-title .main-title {
    font-family: "Roboto", sans-serif;
    font-size: 40px;
    margin-bottom: 6px;
    font-weight: bold;
    display: block;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-title .sub-title {
    font-size: 20px;
    display: block;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-description {
    opacity: 0;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-description p {
    margin-bottom: 2rem;
    line-height: 1.8;
    font-size: 16px;
  }
  .l-brand-page .brand-feature-items .brand-feature-content .brand-feature-description p strong {
    display: block;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 8px;
  }
  .l-brand-page .brand-feature-items .brand-feature-main-image {
    opacity: 0;
    width: 100%;
    padding-left: 0px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-brand-page .brand-feature-items .brand-feature-main-image img {
    max-width: 100%;
  }
  .l-brand-page .brand-feature-items .brand-link-button {
    padding: 16px 24px;
    text-align: center;
    background: #011A6A;
    color: #fff;
    display: block;
    margin: 0 0 16px;
    max-width: 320px;
    text-decoration: none;
  }
  .l-brand-page .brand-feature-items .brand-link-button i {
    font-size: 16px;
    margin-left: 8px;
  }
  .l-brand-page .brand-sub-page-main {
    position: relative;
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 840px auto;
    height: 80vh;
    padding-top: 8px;
    font-family: serif;
  }
  .l-brand-page .brand-sub-page-main .title-container span {
    background: rgba(0, 0, 0, 0.6);
    display: inline-block;
    padding: 4px 8px;
  }
  .l-brand-page .brand-sub-page-main .main-title {
    color: #fff;
    font-size: 24px;
    line-height: 1.4;
    letter-spacing: 3px;
    margin: 46vh 0 16px;
    text-align: center;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
  }
  .l-brand-page .brand-sub-page-main .sub-title {
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: 1px;
    text-align: center;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
  }
  .l-brand-page .brand-sub-page-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 80px 0;
    font-family: serif;
  }
  .l-brand-page .brand-sub-page-section.animated-on .section-image {
    -webkit-animation: fade-slide-left 0.4s forwards;
            animation: fade-slide-left 0.4s forwards;
  }
  .l-brand-page .brand-sub-page-section.animated-on .section-sub-title {
    -webkit-animation: fade-slide-left 0.4s 0.2s forwards;
            animation: fade-slide-left 0.4s 0.2s forwards;
  }
  .l-brand-page .brand-sub-page-section .section-image {
    width: 100%;
    opacity: 0;
    overflow: hidden;
  }
  .l-brand-page .brand-sub-page-section img {
    max-width: 100%;
  }
  .l-brand-page .brand-sub-page-section .section-sub-title {
    width: 100%;
    font-size: 15px;
    letter-spacing: 0.4px;
    line-height: 2;
    padding: 32px 16px 0 16px;
    opacity: 0;
  }
  .l-brand-page .brand-sub-page-section.right-image.animated-on .section-image {
    -webkit-animation: fade-slide-right 0.4s forwards;
            animation: fade-slide-right 0.4s forwards;
  }
  .l-brand-page .brand-sub-page-section.right-image.animated-on .section-sub-title {
    -webkit-animation: fade-slide-right 0.4s 0.2s forwards;
            animation: fade-slide-right 0.4s 0.2s forwards;
  }
  .l-brand-page .brand-sub-page-section.right-image .section-image {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .l-brand-page .brand-sub-page-section.right-image .section-sub-title {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    padding: 24px 16px 0 16px;
  }
  .l-brand-page .brand-sub-page-section.last-section {
    margin-bottom: 0;
  }
  .l-brand-page .brand-sub-page-section.last-section .section-sub-title {
    letter-spacing: 1px;
    font-size: 18px;
    padding-top: 40px;
    padding-bottom: 80px;
    text-align: center;
  }
  .l-display-page {
    padding-bottom: 40px;
  }
  .l-display-page .post-header:after {
    width: calc(90% + 0px);
  }
  .l-display-page .post-header .post-title {
    line-height: 1.6;
    text-align: center;
  }
  .l-display-page .post-header .post-title .title-main {
    font-size: 24px;
    width: 100%;
    display: block;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
  }
  .l-display-page img {
    max-width: 100%;
  }
  .l-display-page .display-section {
    padding: 40px 0 0;
  }
  .l-display-page .display-title-h2 {
    font-weight: bold;
    color: #fff;
    background: #011A6A;
    margin-bottom: 24px;
    padding: 16px 16px 16px;
    font-size: 20px;
    line-height: 1.4;
    text-align: center;
  }
  .l-display-page .display-about-box {
    background: url(../img/display-about-sp.jpg) repeat-y center top;
    background-size: 100% auto;
    padding-bottom: 16px;
  }
  .l-display-page .display-about-box .display-about-image {
    width: 100%;
    height: 520px;
    position: relative;
  }
  .l-display-page .display-about-box .display-about-contents {
    width: 100%;
    padding: 16px 20px 16px;
  }
  .l-display-page .display-about-box .display-about-contents h2 {
    font-weight: bold;
    color: #fff;
    background: #011A6A;
    margin-bottom: 16px;
    text-align: center;
    padding: 16px 16px 16px;
    font-size: 20px;
  }
  .l-display-page .display-about-box .display-about-contents h3 {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 16px;
    border-bottom: 4px solid yellow;
    text-align: center;
  }
  .l-display-page .display-about-box .display-about-contents p {
    line-height: 1.5;
    font-size: 14px;
  }
  .l-display-page .display-about-box .display-about-contents .caution {
    margin-top: 12px;
    font-size: 11px;
  }
  .l-display-page .display-point {
    padding: 0 20px;
  }
  .l-display-page .display-point .display-point-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-display-page .display-point .display-point-item {
    width: 100%;
    margin: 0 auto 24px;
  }
  .l-display-page .display-point .display-point-item:last-child {
    width: 100%;
  }
  .l-display-page .display-point .display-point-image {
    width: 100%;
  }
  .l-display-page .display-point .display-point-image iframe {
    height: 300px;
  }
  .l-display-page .display-point .display-point-contents h3 {
    font-weight: bold;
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 16px;
  }
  .l-display-page .display-point .display-point-contents p {
    line-height: 1.5;
    font-size: 14px;
    margin-bottom: 16px;
  }
  .l-display-page .display-search {
    padding: 0 20px;
  }
  .l-display-page .display-search .display-search-message {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 16px;
    text-align: center;
    line-height: 1.4;
  }
  .l-display-page .display-search .display-search-message div {
    font-size: 14px;
    margin: 12px auto;
  }
  .l-display-page .display-search .display-search-shops-area h3 {
    font-weight: bold;
    font-size: 20px;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #011A6A;
    color: #011A6A;
  }
  .l-display-page .display-search .display-search-shops-area h4 {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 16px;
    color: #011A6A;
  }
  .l-display-page .display-search .display-search-shops-area table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 auto 32px;
    font-size: 12px;
  }
  .l-display-page .display-search .display-search-shops-area table th {
    border: 1px solid #ddd;
    padding: 12px 12px 12px;
    width: 33.33%;
    font-weight: bold;
    background: #eee;
  }
  .l-display-page .display-search .display-search-shops-area table td {
    border: 1px solid #ddd;
    padding: 12px 12px 12px;
  }
  .l-post-template {
    padding: 48px 0 0;
    line-height: 1.4;
  }
  .l-post-template > *:last-child {
    margin-bottom: 0;
  }
  .l-post-template section {
    margin-bottom: 3rem;
  }
  .l-post-template h2, .l-post-template h3, .l-post-template h4, .l-post-template h5 {
    color: #222;
    font-weight: bold;
    line-height: 1.4;
    margin: 0 0 1.5rem;
    padding-top: 1rem;
  }
  .l-post-template h2 {
    font-size: 20px;
    border-bottom: 1px solid #dddddd;
    position: relative;
    padding-bottom: 12px;
  }
  .l-post-template h2:after {
    content: "";
    width: 40px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .l-post-template h3 {
    font-size: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid #dddddd;
    position: relative;
  }
  .l-post-template h3:after {
    content: "";
    width: 20px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .l-post-template h4 {
    font-size: 16px;
    position: relative;
  }
  .l-post-template h4:before {
    content: "";
    width: 8px;
    height: 2px;
    background: #011A6A;
    position: absolute;
    left: -16px;
    top: calc(50% - 1px + 0.5rem);
  }
  .l-post-template h5 {
    font-size: 15px;
  }
  .l-post-template p {
    line-height: 1.75;
    font-size: 14px;
    color: #444;
    margin-bottom: 1rem;
  }
  .l-post-template p.text-emphasize {
    font-size: 15px;
    line-height: 2.8;
  }
  .l-post-template p.text-caution {
    font-size: 12px;
    opacity: 0.8;
    margin-bottom: 0;
  }
  .l-post-template p.text-display {
    font-size: 18px;
    font-weight: bold;
    color: #011A6A;
    margin-bottom: 0.5rem;
    line-height: 1;
  }
  .l-post-template a {
    color: #011A6A;
    text-decoration: underline;
  }
  .l-post-template table {
    border: 1px solid #dddddd;
    background: #fff;
    width: 100%;
    border-spacing: 0;
    border-collapse: separate;
  }
  .l-post-template table tr:last-child th, .l-post-template table tr:last-child td {
    border-bottom: none;
  }
  .l-post-template table tr th:last-child, .l-post-template table tr td:last-child {
    border-right: none;
  }
  .l-post-template table th {
    padding: 1rem;
    font-size: 12px;
    text-align: left;
    line-height: 1.25;
    font-weight: bold;
    color: #011A6A;
    background: #f8f8f8;
    border-bottom: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
  }
  .l-post-template table td {
    padding: 1rem;
    font-size: 14px;
    color: #444;
    line-height: 1.6;
    border-bottom: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
  }
  .l-post-template ul {
    margin-bottom: 2rem;
  }
  .l-post-template ul li {
    padding: 8px 0 8px 12px;
  }
  .l-post-template ul li:before {
    content: "";
    width: 6px;
    height: 2px;
    position: absolute;
    left: 0;
    top: 18px;
    background: #011A6A;
  }
  .l-post-template ol {
    margin-bottom: 2rem;
    padding-left: 1.5rem;
    list-style-type: decimal-leading-zero;
  }
  .l-post-template ol li {
    padding: 8px 0;
  }
  .l-post-template li {
    font-size: 14px;
    line-height: 1.6;
    position: relative;
  }
  .l-post-template ul.link-block-list {
    list-style: none;
    width: calc(100% + 8px);
    margin: 0 -4px 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-post-template ul.link-block-list li {
    width: calc((100% / 1) - 8px);
    margin: 0 4px 8px;
    padding: 0;
    border: 2px solid #011A6A;
    overflow: hidden;
  }
  .l-post-template ul.link-block-list li:before {
    display: none;
  }
  .l-post-template ul.link-block-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem;
    font-size: 14px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    position: relative;
  }
  .l-post-template ul.link-block-list li a .icon {
    background: #011A6A;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 18px;
    color: #fff;
    margin-right: 12px;
  }
  .l-post-template ul.link-block-list li a span {
    font-weight: bold;
  }
  .l-post-template ul.link-block-list li a:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template ul.link-block-list li a:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
  }
  .l-post-template dl {
    margin-bottom: 3rem;
  }
  .l-post-template dl dt {
    font-weight: bold;
    color: #011A6A;
    font-size: 15px;
    margin-bottom: 8px;
  }
  .l-post-template dl dt > * {
    font-weight: bold;
  }
  .l-post-template dl dd {
    font-size: 14px;
    line-height: 1.75;
    color: #444;
  }
  .l-post-template blockquote,
  .l-post-template .card {
    padding: 16px;
    background: #f8f8f8;
    position: relative;
    overflow: hidden;
    color: #444;
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 1rem;
  }
  .l-post-template blockquote > *:first-child,
  .l-post-template .card > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .l-post-template blockquote > *:last-child,
  .l-post-template .card > *:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .l-post-template blockquote:after,
  .l-post-template .card:after {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .card-white {
    border: 1px solid #dddddd;
    border-radius: 2px;
    overflow: hidden;
    display: block;
    padding: 16px;
    font-size: 14px;
    color: #011A6A;
    text-decoration: none;
    position: relative;
  }
  .l-post-template .card-white:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .card-white > *:last-child {
    margin-bottom: 0;
  }
  .l-post-template .image-card {
    border: 1px solid #dddddd;
    border-radius: 2px;
    overflow: hidden;
    display: block;
    font-size: 14px;
    color: #011A6A;
    text-decoration: none;
    position: relative;
  }
  .l-post-template .image-card:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .image-card .thumb {
    width: 100%;
    padding-top: 75%;
    position: relative;
    background: #f8f8f8;
    overflow: hidden;
  }
  .l-post-template .image-card .thumb img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 120%;
  }
  .l-post-template .image-card .text {
    padding: 16px;
  }
  .l-post-template .image-card .text > *:last-child {
    margin-bottom: 0 !important;
  }
  .l-post-template .image-card .text .title {
    font-weight: bold;
    color: #011A6A;
    font-size: 18px;
    margin-bottom: 16px;
  }
  .l-post-template .columned {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 16px);
    margin: 0 -8px 16px;
  }
  .l-post-template .columned > * {
    margin: 0 8px;
  }
  .l-post-template .columned.column-2 > * {
    width: calc(100% - 16px);
  }
  .l-post-template .columned.column-3 > * {
    width: calc((100%) - 16px);
  }
  .l-post-template .columned.column-4 > * {
    width: calc(50% - 16px);
  }
  .l-post-template img {
    max-width: 100%;
    height: auto;
  }
  .l-post-template .button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1rem;
    font-size: 15px;
    font-weight: bold;
    color: #011A6A;
    text-decoration: none;
    position: relative;
    max-width: 300px;
    margin: 16px 4px 16px;
    border: 2px solid #011A6A;
    overflow: hidden;
  }
  .l-post-template .button .icon {
    background: #011A6A;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 18px;
    color: #fff;
    margin-right: 12px;
  }
  .l-post-template .button span {
    font-weight: bold;
  }
  .l-post-template .button:before {
    content: "";
    width: 20px;
    height: 20px;
    background: #011A6A;
    position: absolute;
    left: -10px;
    top: -10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .l-post-template .button:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #011A6A;
    border-right: 2px solid #011A6A;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 12px;
    top: calc(50% - 4px);
  }
  .l-post-template .movie-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .l-post-template .movie-lists li {
    width: 100%;
    border: 1px solid #eee;
    padding: 12px;
    margin-bottom: 16px;
  }
  .l-post-template .movie-lists li:before {
    display: none;
  }
  .l-post-template .qa-list {
    margin-bottom: 2rem;
  }
  .l-post-template .qa-list dt {
    padding: 1rem 3rem 1rem 1rem;
    border: 1px solid #ddd;
    position: relative;
    line-height: 1.2;
  }
  .l-post-template .qa-list dt:before {
    content: "Q.";
    margin-right: 8px;
  }
  .l-post-template .qa-list dt:after {
    content: "\f067";
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    right: 1rem;
    top: 50%;
    margin-top: -8px;
    color: #ddd;
  }
  .l-post-template .qa-list dt:hover {
    cursor: pointer;
  }
  .l-post-template .qa-list dd {
    display: none;
    padding: 1rem;
    border: 1px solid #eee;
  }
  .l-post-template .qa-list dd:before {
    content: "A.";
    margin-right: 8px;
    font-weight: bold;
    font-size: 16px;
  }
  .l-post-template .qa-list.active dt:after {
    content: "\f068";
  }
  .l-post-template .company-list li {
    padding-left: 0;
  }
  .l-post-template .company-list li:before {
    display: none;
  }
  .l-post-template .company_access_map {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .l-post-template .company_access_map dt {
    width: 100%;
    margin-bottom: 8px;
  }
  .l-post-template .company_access_map dd {
    width: 100%;
    margin-bottom: 8px;
  }
  .l-post-template .about-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .l-post-template .about-lists .image-card {
    width: 100%;
    margin-bottom: 16px;
    border: none;
  }
  .l-post-template .about-lists .image-card .text {
    font-size: 14px;
    line-height: 1.4;
    border: 1px solid #dddddd;
  }
  .l-post-template .about-lists .image-card .thumb {
    width: 100%;
    padding-top: 0;
    position: relative;
    background: none;
    overflow: hidden;
  }
  .l-post-template .about-lists .image-card img {
    width: 100%;
    min-height: 40px;
    position: static;
    left: auto;
    top: auto;
    -webkit-transform: translate(0%, 0%);
        -ms-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto 16px;
  }
  .l-post-template .repair-flow {
    padding-left: 0;
  }
  .l-post-template .repair-flow > li {
    position: relative;
    text-align: center;
  }
  .l-post-template .repair-flow > li .fas {
    position: absolute;
    left: 50%;
    bottom: 0px;
    font-size: 20px;
    margin-left: -10px;
  }
  .l-post-template .repair-flow > li .title {
    font-weight: bold;
    font-size: 18px;
    padding: 8px !important;
    margin-bottom: 32px;
    color: #fff;
    background: #011A6A;
    position: relative;
  }
  .l-post-template .repair-flow > li .title .fas {
    bottom: -30px;
    color: #011A6A;
  }
  .l-post-template .repair-flow > li ol {
    padding-left: 0;
  }
  .l-post-template .repair-flow > li li {
    list-style: none;
    margin-bottom: 32px;
    padding-left: 0;
  }
  .l-post-template .repair-flow > li li .fas {
    bottom: -28px;
  }
  .l-post-template .cnt_box01 {
    line-height: 1.6 !important;
  }
  .l-post-template .sdgs-top p {
    margin-top: 16px;
    font-weight: bold;
    font-size: 18px;
  }
  .l-post-template .sdgs-card {
    position: relative;
    margin: 40px auto 40px;
  }
  .l-post-template .sdgs-card .sdgs-card-title {
    text-align: center;
    font-weight: bold;
    font-size: 30px;
    position: relative;
    margin-bottom: 16px;
  }
  .l-post-template .sdgs-card .sdgs-card-title span {
    position: absolute;
    left: 0%;
    top: -24px;
    width: 100%;
    color: #011A6A;
    font-size: 16px;
    opacity: 0.4;
    text-align: center;
    font-family: 'EB Garamond', serif;
  }
  .l-post-template .sdgs-card .sdgs-card-title .sub {
    font-size: 14px;
    letter-spacing: 1px;
    color: #011A6A;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #eee;
  }
  .l-post-template .sdgs-card .sdgs-card-title .sdgs-icon {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #eee;
  }
  .l-post-template .sdgs-card.ecology .sdgs-card-title span {
    color: #3AA528;
  }
  .l-post-template .sdgs-card.ecology .sub {
    color: #3AA528;
    border-bottom: 4px solid #3AA528;
  }
  .l-post-template .sdgs-card.ecology .sdgs-content-title .title {
    background: #3AA528;
  }
  .l-post-template .sdgs-card.ecology .sdgs-icon {
    border-bottom: 1px solid #3AA528;
  }
  .l-post-template .sdgs-card.life .sdgs-card-title span {
    color: #E65606;
  }
  .l-post-template .sdgs-card.life .sub {
    color: #E65606;
    border-bottom: 4px solid #E65606;
  }
  .l-post-template .sdgs-card.life .sdgs-content-title .title {
    background: #E65606;
  }
  .l-post-template .sdgs-card.life .sdgs-icon {
    border-bottom: 1px solid #E65606;
  }
  .l-post-template .sdgs-card.working .sdgs-card-title span {
    color: #053991;
  }
  .l-post-template .sdgs-card.working .sub {
    color: #053991;
    border-bottom: 4px solid #053991;
  }
  .l-post-template .sdgs-card.working .sdgs-content-title .title {
    background: #053991;
  }
  .l-post-template .sdgs-card.working .sdgs-icon {
    border-bottom: 1px solid #053991;
  }
  .l-post-template .sdgs-card .sdgs-content-title {
    margin-bottom: 24px;
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-post-template .sdgs-card .sdgs-content-title:after {
    display: none;
  }
  .l-post-template .sdgs-card .sdgs-content-title .title-image {
    width: 100%;
    height: auto;
    margin-bottom: 0;
  }
  .l-post-template .sdgs-card .sdgs-content-title .title {
    font-size: 18px;
    line-height: 1.8;
    color: #fff;
    padding: 16px 16px 16px;
  }
  .l-post-template .sdgs-card .sdgs-content-title .title br {
    display: none;
  }
  .l-post-template .sdgs-card .sdgs-card-content {
    margin-bottom: 40px;
  }
  .l-post-template .sdgs-card .sdgs-meta {
    margin-bottom: 24px;
  }
  .l-post-template .sdgs-card .sdgs-meta .label {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 4px;
  }
  .l-post-template .sdgs-card .sdgs-meta .info {
    font-size: 13px;
    line-height: 1.6;
    opacity: 0.8;
  }
  .pc-only {
    display: none !important;
  }
  .en-only {
    display: none;
  }
  .jp-only {
    display: block;
  }
  .en-main-content .en-only {
    display: block;
  }
  .en-main-content .jp-only {
    display: none;
  }
}
