@charset "UTF-8";
/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
/* Normalization */
:root { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; }

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

details { display: block; }

input[type="number"] { width: auto; }

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

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

main { display: block; }

summary { display: block; }

pre { overflow: auto; }

progress { display: inline-block; }

small { font-size: 75%; }

template { display: none; }

textarea { overflow: auto; }

[hidden] { display: none; }

[unselectable] { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

/* Universal inheritance */
*, ::before, ::after { box-sizing: inherit; }

* { font-size: inherit; line-height: inherit; }

::before, ::after { text-decoration: inherit; vertical-align: inherit; }

/* Opinionated defaults */
*, ::before, ::after { border-style: solid; border-width: 0; }

* { margin: 0; padding: 0; }

:root { box-sizing: border-box; cursor: default; font: 16px / 1.5 sans-serif; text-rendering: optimizeLegibility; }

html { background-color: #FFFFFF; }

a { text-decoration: none; }

audio, canvas, iframe, img, svg, video { vertical-align: middle; }

button, input, select, textarea { background-color: transparent; }

button, input, select, textarea { color: inherit; font-family: inherit; font-style: inherit; font-weight: inherit; }

button, [type="button"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="reset"], [type="search"], [type="submit"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], select, textarea { min-height: 1.5em; }

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

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

select { -moz-appearance: none; -webkit-appearance: none; }

select::-ms-expand { display: none; }

select::-ms-value { color: currentColor; }

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

textarea { resize: vertical; }

::-moz-selection { background-color: #B3D4FC; text-shadow: none; }

::selection { background-color: #B3D4FC; text-shadow: none; }

@media screen { [hidden~="screen"] { display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) { clip: rect(0 0 0 0) !important; position: absolute !important; } }

body { position: fixed; width: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; text-rendering: auto; font-size: 14px; font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; color: #22252c; background-color: #fff; line-height: 1; word-wrap: break-word; overflow-x: hidden; overflow-y: auto; }

body.is-loading-end { position: static; width: auto; }

.no-js body { position: static; width: auto; }

@media (min-width: 768px) { head { font-family: pc; } }

@media (max-width: 767px) { head { font-family: sp; } }

a { outline: none; }

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

em { font-style: normal; }

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }

.slick-list:focus { outline: none; }

.slick-list.dragging { cursor: pointer; cursor: hand; }

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

.slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; }

.slick-track:before, .slick-track:after { content: ""; display: table; }

.slick-track:after { clear: both; }

.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }

[dir="rtl"] .slick-slide { float: right; }

.slick-slide img { display: block; }

.slick-slide.slick-loading img { display: none; }

.slick-slide.dragging img { pointer-events: none; }

.slick-initialized .slick-slide { display: block; }

.slick-loading .slick-slide { visibility: hidden; }

.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

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

@media (min-width: 768px) { .is-pc { display: block; } }

@media (max-width: 767px) { .is-pc { display: none; } }

@media (min-width: 768px) { .is-sp { display: none; } }

@media (max-width: 767px) { .is-sp { display: block; } }

@media (min-width: 768px) { .is-pc-img { display: inline; } }

@media (max-width: 767px) { .is-pc-img { display: none; } }

@media (min-width: 768px) { .is-sp-img { display: none; } }

@media (max-width: 767px) { .is-sp-img { display: inline; } }

.global-footer { background-color: #22252c; }

@media (min-width: 768px) { .global-footer__inner { position: relative; height: 400px; max-width: 1800px; margin: auto; } }

@media (max-width: 767px) { .global-footer__inner { padding: 55px 30px 35px; } }

@media (min-width: 768px) { .global-footer__logo { position: absolute; top: 210px; left: 50px; } }

@media (max-width: 767px) { .global-footer__logo { margin-bottom: 20px; } }

.global-footer__logo-img { fill: #fff; }

@media (min-width: 768px) { .global-footer__logo-img { width: 101px; height: 60px; } }

@media (max-width: 767px) { .global-footer__logo-img { width: 60px; height: 71px; } }

.global-footer__nav { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media (min-width: 768px) { .global-footer__nav { position: absolute; top: 220px; left: 200px; width: 400px; margin-top: -25px; } }

@media (max-width: 767px) { .global-footer__nav { width: 260px; margin-top: -10px; margin-bottom: 20px; } }

.global-footer__nav-item { width: 25%; }

@media (min-width: 768px) { .global-footer__nav-item { margin-top: 25px; } }

@media (max-width: 767px) { .global-footer__nav-item { margin-top: 10px; } }

.global-footer__nav-item a { color: #fff; font-weight: 700; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.12em; }

@media (min-width: 768px) { .global-footer__nav-item a { font-size: 14px; } }

@media (max-width: 767px) { .global-footer__nav-item a { font-size: 10px; } }

.global-footer__copyright { color: #fff; font-size: 10px; font-weight: 300; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.06em; }

@media (min-width: 768px) { .global-footer__copyright { position: absolute; top: 260px; right: 50px; } }

@media (min-width: 768px) and (max-width: 1024px) { .global-footer__copyright { position: absolute; top: 340px; left: 50px; } }

/**********************************
animation settings
**********************************/
.global-footer__nav-item a { -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1); transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1); }

/**********************************
hover
**********************************/
@media (min-width: 768px) { .global-footer__nav-item a:hover { color: rgba(255, 255, 255, 0.2); } }

/**********************************
keyframes
**********************************/
@-webkit-keyframes spinner { to { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes spinner { to { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }

@-webkit-keyframes sound-line { 0% { -webkit-transform: scaleY(0); transform: scaleY(0); }
  50% { -webkit-transform: scaleY(1); transform: scaleY(1); }
  100% { -webkit-transform: scaleY(0.2); transform: scaleY(0.2); } }

@keyframes sound-line { 0% { -webkit-transform: scaleY(0); transform: scaleY(0); }
  50% { -webkit-transform: scaleY(1); transform: scaleY(1); }
  100% { -webkit-transform: scaleY(0.2); transform: scaleY(0.2); } }

@-webkit-keyframes hide-txt { 0% { opacity: 1; }
  100% { opacity: 0; } }

@keyframes hide-txt { 0% { opacity: 1; }
  100% { opacity: 0; } }

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

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

.cmn-loader { position: fixed; top: 0; left: 0; z-index: 9999; width: 100%; height: 100%; }

.cmn-loader.is-loader-hide { display: none; }

.no-js .cmn-loader { display: none; }

.cmn-loader__bg-top, .cmn-loader__bg-bottom { display: block; position: absolute; left: 0; width: 100%; height: 50%; background-color: #fff; }

.cmn-loader__bg-top.is-loader-hide, .cmn-loader__bg-bottom.is-loader-hide { -webkit-animation: hide-bg 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s alternate forwards; animation: hide-bg 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s alternate forwards; }

.cmn-loader__bg-top { top: 0; -webkit-transform-origin: top left; -ms-transform-origin: top left; transform-origin: top left; }

@media (max-width: 767px) { .cmn-loader--lower .cmn-loader__bg-top { height: 220px; } }

.cmn-loader__bg-bottom { bottom: 0; -webkit-transform-origin: top right; -ms-transform-origin: top right; transform-origin: top right; }

@media (max-width: 767px) { .cmn-loader--lower .cmn-loader__bg-bottom { height: calc(100% - 220px); } }

.cmn-loader__inner { position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; }

.cmn-loader__txt { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

@media (min-width: 768px) { .cmn-loader__txt { width: 578px; height: 96px; } }

@media (max-width: 767px) { .cmn-loader__txt { width: 206px; height: 34px; } }

@media (min-width: 768px) { .cmn-loader__txt img { width: 578px; height: 96px; } }

@media (max-width: 767px) { .cmn-loader__txt img { width: 206px; height: 34px; } }

.cmn-loader__txt path { fill: #22252c; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--left-1 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--right-1 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--left-2 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--right-2 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--left-3 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.45s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.45s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--right-3 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.45s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.45s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--left-4 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--right-4 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--left-5 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.55s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.55s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--right-5 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.55s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.55s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--left-6 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s alternate forwards; }

.cmn-loader__txt.is-loader-hide .cmn-loader__txt-letter--right-6 { -webkit-animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s alternate forwards; animation: hide-txt 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s alternate forwards; }

.cmn-loader__spinner { display: block; position: absolute; top: 80%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

@media (min-width: 768px) { .cmn-loader__spinner { width: 42px; height: 42px; } }

@media (max-width: 767px) { .cmn-loader__spinner { width: 21px; height: 21px; } }

.cmn-loader__spinner.is-loader-hide { opacity: 0; visibility: hidden; pointer-events: none; -webkit-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-loader__spinner:before, .cmn-loader__spinner:after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; border-style: solid; border-color: transparent; border-bottom-color: #22252c; }

@media (min-width: 768px) { .cmn-loader__spinner:before, .cmn-loader__spinner:after { border-width: 6px; } }

@media (max-width: 767px) { .cmn-loader__spinner:before, .cmn-loader__spinner:after { border-width: 3px; } }

.cmn-loader__spinner:before { border-left-color: #22252c; -webkit-animation: spinner 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; animation: spinner 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; }

.cmn-loader__spinner:after { border-right-color: #22252c; -webkit-animation: spinner 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.05s infinite; animation: spinner 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.05s infinite; }

.cmn-loader__sound { position: absolute; top: 80%; left: 50%; width: 100%; text-align: center; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

@media (max-width: 767px) { .cmn-loader__sound { display: none; } }

.cmn-loader__sound-inner { visibility: hidden; opacity: 0; pointer-events: none; -webkit-transform: translateY(10%); -ms-transform: translateY(10%); transform: translateY(10%); -webkit-transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-loader__sound.is-loader-show .cmn-loader__sound-inner { visibility: visible; opacity: 1; pointer-events: auto; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.cmn-loader__sound-txt { margin-bottom: 20px; color: #22252c; font-size: 16px; font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.12em; text-align: center; }

.cmn-loader__sound-btns { display: inline-block; }

.cmn-loader__sound-btn { display: inline-block; }

@media (min-width: 768px) { .cmn-loader__sound-btn:hover .cmn-loader__sound-btn-circle:before { -webkit-transform: scale(1.05); -ms-transform: scale(1.05); transform: scale(1.05); } }

.cmn-loader__sound-btn + .cmn-loader__sound-btn { margin-left: 64px; }

.cmn-loader__sound-btn-circle { position: relative; width: 64px; height: 64px; margin-bottom: 10px; padding: 5px; border-radius: 50%; }

.cmn-loader__sound-btn-circle:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; background-color: #b2b2c2; -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-loader__sound-btn-circle-inner { position: relative; width: 100%; height: 100%; border-radius: 50%; background-color: #fff; }

.cmn-loader__sound-btn-circle-lines { display: block; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); font-size: 0; }

.cmn-loader__sound-btn-circle-line { display: inline-block; width: 100%; height: 100%; background-color: #22252c; }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-lines { width: 16px; height: 13px; }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-line { width: 1px; height: 100%; -webkit-transform-origin: left bottom; -ms-transform-origin: left bottom; transform-origin: left bottom; -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-line:nth-of-type(1) { -webkit-animation: sound-line .4s ease-out 0s infinite alternate; animation: sound-line .4s ease-out 0s infinite alternate; }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-line:nth-of-type(2) { -webkit-animation: sound-line .3s ease-out .1s infinite alternate; animation: sound-line .3s ease-out .1s infinite alternate; }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-line:nth-of-type(3) { -webkit-animation: sound-line .5s ease-out 0s infinite alternate; animation: sound-line .5s ease-out 0s infinite alternate; }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-line:nth-of-type(4) { -webkit-animation: sound-line .5s ease-out .2s infinite alternate; animation: sound-line .5s ease-out .2s infinite alternate; }

.cmn-loader__sound-btn--on .cmn-loader__sound-btn-circle-line + .cmn-loader__sound-btn-circle-line { margin-left: 4px; }

.cmn-loader__sound-btn--off .cmn-loader__sound-btn-circle-lines { width: 16px; height: 1px; }

.cmn-loader__sound-btn--off .cmn-loader__sound-btn-circle-line { width: 100%; height: 1px; }

.cmn-loader__sound-btn-txt { color: #22252c; font-size: 14px; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.11em; }

.cmn-svg { display: none; }

.cmn-btn { display: inline-block; position: relative; width: 100%; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: 400; text-align: center; }

@media (min-width: 768px) { .cmn-btn { font-size: 14px; line-height: 74px; } }

@media (max-width: 767px) { .cmn-btn { font-size: 12px; line-height: 55px; } }

.cmn-btn[target="_blank"]:before { content: ''; display: inline-block; width: 10px; height: 10px; margin-right: 3px; background-repeat: no-repeat; background-position: 0 0; background-size: cover; }

.cmn-btn__line:before, .cmn-btn__line:after { content: ''; display: block; position: absolute; }

.cmn-btn__line:after { z-index: 1; }

.cmn-btn__line--top:before, .cmn-btn__line--top:after { top: 0; left: 0; width: 100%; height: 1px; }

.cmn-btn__line--right:before, .cmn-btn__line--right:after { top: 0; right: 0; width: 1px; height: 100%; }

.cmn-btn__line--bottom:before, .cmn-btn__line--bottom:after { bottom: 0; left: 0; width: 100%; height: 1px; }

.cmn-btn__line--left:before, .cmn-btn__line--left:after { top: 0; left: 0; width: 1px; height: 100%; }

.cmn-btn__txt span { letter-spacing: 0.11em; }

.cmn-btn--dark { background-color: #22252c; }

.cmn-btn--dark[target="_blank"]:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/ico-blank-white.svg"); }

@media (min-width: 768px) { .cmn-btn--dark:hover[target="_blank"]:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/ico-blank-black.svg"); } }

.cmn-btn--dark .cmn-btn__line:before { background-color: transparent; }

.cmn-btn--dark .cmn-btn__line:after { background-color: #22252c; }

.cmn-btn--dark .cmn-btn__txt span { color: #fff; }

.cmn-btn--border-dark[target="_blank"]:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/ico-blank-black.svg"); }

@media (min-width: 768px) { .cmn-btn--border-dark:hover[target="_blank"]:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/ico-blank-white.svg"); } }

.cmn-btn--border-dark .cmn-btn__line:before { background-color: #22252c; }

.cmn-btn--border-dark .cmn-btn__line:after { background-color: #fff; }

.cmn-btn--border-dark .cmn-btn__txt span { color: #22252c; }

.cmn-btn--border-white[target="_blank"]:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/ico-blank-white.svg"); }

@media (min-width: 768px) { .cmn-btn--border-white:hover[target="_blank"]:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/ico-blank-black.svg"); } }

.cmn-btn--border-white .cmn-btn__line:before { background-color: #fff; }

.cmn-btn--border-white .cmn-btn__line:after { background-color: #22252c; }

.cmn-btn--border-white .cmn-btn__txt span { color: #fff; }

.cmn-btn--contact .cmn-btn__txt span { letter-spacing: 0.06em; }

.cmn-btn--guide .cmn-btn__txt span { letter-spacing: 0.06em; }

/**********************************
keyframes
**********************************/
@-webkit-keyframes bg-dark-transparent { 0% { background-color: #22252c; }
  100% { background-color: transparent; } }
@keyframes bg-dark-transparent { 0% { background-color: #22252c; }
  100% { background-color: transparent; } }

@-webkit-keyframes bg-transparent-dark { 0% { background-color: transparent; }
  100% { background-color: #22252c; } }

@keyframes bg-transparent-dark { 0% { background-color: transparent; }
  100% { background-color: #22252c; } }

@-webkit-keyframes bg-transparent-white { 0% { background-color: transparent; }
  100% { background-color: #fff; } }

@keyframes bg-transparent-white { 0% { background-color: transparent; }
  100% { background-color: #fff; } }

@-webkit-keyframes dark-to-white { 0% { color: #22252c; }
  100% { color: #fff; } }

@keyframes dark-to-white { 0% { color: #22252c; }
  100% { color: #fff; } }

@-webkit-keyframes white-to-dark { 0% { color: #fff; }
  100% { color: #22252c; } }

@keyframes white-to-dark { 0% { color: #fff; }
  100% { color: #22252c; } }

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

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

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

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

/**********************************
animation settings
**********************************/
.cmn-btn__line--top:after, .cmn-btn__line--bottom:after { -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); }

.cmn-btn__line--right:after, .cmn-btn__line--left:after { -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); }

.cmn-btn__line--top:after { -webkit-transform-origin: left top; -ms-transform-origin: left top; transform-origin: left top; }

.cmn-btn__line--right:after { -webkit-transform-origin: left top; -ms-transform-origin: left top; transform-origin: left top; }

.cmn-btn__line--bottom:after { -webkit-transform-origin: bottom right; -ms-transform-origin: bottom right; transform-origin: bottom right; }

.cmn-btn__line--left:after { -webkit-transform-origin: bottom left; -ms-transform-origin: bottom left; transform-origin: bottom left; }

/**********************************
hover
**********************************/
@media (min-width: 768px) { .cmn-btn--dark:hover { -webkit-animation: bg-dark-transparent 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0s alternate forwards; animation: bg-dark-transparent 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0s alternate forwards; }
  .cmn-btn--dark:hover .cmn-btn__line--top:after, .cmn-btn--dark:hover .cmn-btn__line--bottom:after { -webkit-animation: line-horizontal 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; animation: line-horizontal 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; }
  .cmn-btn--dark:hover .cmn-btn__line--right:after, .cmn-btn--dark:hover .cmn-btn__line--left:after { -webkit-animation: line-vertical 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; animation: line-vertical 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--view-site .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--store .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--store .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--store .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--store .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--store .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(10) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(11) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.53s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.53s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(12) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.56s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.56s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--back .cmn-btn__txt span:nth-of-type(13) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.59s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.59s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(10) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(11) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.53s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.53s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--home .cmn-btn__txt span:nth-of-type(12) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.56s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.56s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--contact .cmn-btn__txt span:nth-of-type(10) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--guide .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--dark:hover.cmn-btn--product .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; } }

@media (min-width: 768px) { .cmn-btn--border-dark:hover { -webkit-animation: bg-transparent-dark 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; animation: bg-transparent-dark 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; }
  .cmn-btn--border-dark:hover .cmn-btn__line--top:after, .cmn-btn--border-dark:hover .cmn-btn__line--bottom:after { -webkit-animation: line-horizontal 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; animation: line-horizontal 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; }
  .cmn-btn--border-dark:hover .cmn-btn__line--right:after, .cmn-btn--border-dark:hover .cmn-btn__line--left:after { -webkit-animation: line-vertical 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; animation: line-vertical 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--border-dark:hover.cmn-btn--support .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: dark-to-white 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; } }

@media (min-width: 768px) { .cmn-btn--border-white:hover { -webkit-animation: bg-transparent-white 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; animation: bg-transparent-white 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate both; }
  .cmn-btn--border-white:hover .cmn-btn__line--top:after, .cmn-btn--border-white:hover .cmn-btn__line--bottom:after { -webkit-animation: line-horizontal 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; animation: line-horizontal 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; }
  .cmn-btn--border-white:hover .cmn-btn__line--right:after, .cmn-btn--border-white:hover .cmn-btn__line--left:after { -webkit-animation: line-vertical 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; animation: line-vertical 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(1) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.23s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(2) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.26s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(3) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.29s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(4) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.32s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(5) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(6) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.38s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(7) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.41s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(8) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(9) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.47s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(10) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(11) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.53s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.53s alternate both; }
  .cmn-btn--border-white:hover.cmn-btn--view-gw .cmn-btn__txt span:nth-of-type(12) { -webkit-animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.56s alternate both; animation: white-to-dark 0s cubic-bezier(0.39, 0.575, 0.565, 1) 0.56s alternate both; } }

.cmn-btn-grad { display: inline-block; position: relative; border: 1px solid #0b76b6; color: #fff; background: -webkit-linear-gradient(top, #4098e0 0%, #007bc1 100%); background: linear-gradient(to bottom, #4098e0 0%, #007bc1 100%); -webkit-transition: border-color 1s cubic-bezier(0.39, 0.575, 0.565, 1); transition: border-color 1s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-btn-grad:before { content: ''; }

.cmn-btn-grad:after { content: ''; display: block; position: absolute; top: 0; left: 0; opacity: 0; width: 100%; height: 100%; background-color: #4098e0; -webkit-transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }

@media (min-width: 768px) { .cmn-btn-grad:hover:after { opacity: 1; } }

.cmn-btn-grad span { position: relative; z-index: 1; }

@media (min-width: 768px) { .cmn-footlink { max-width: 1800px; margin: auto; padding: 80px 0; } }

@media (max-width: 767px) { .cmn-footlink { padding: 55px 40px; } }

.cmn-footlink__nav { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }

@media (min-width: 768px) { .cmn-footlink__nav { width: 720px; margin: auto; } }

@media (min-width: 768px) { .cmn-footlink__nav-item { width: 240px; } }

@media (max-width: 767px) { .cmn-footlink__nav-item { width: 48%; } }

.cmn-footlink__nav-item-link { margin-bottom: 20px; }

@media (min-width: 768px) { .cmn-footlink__nav-item-link a { font-size: 16px; } }

.cmn-footlink__nav-item-txt { display: block; color: #b2b2c2; font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; text-align: center; letter-spacing: 0.06em; }

@media (min-width: 768px) { .cmn-footlink__nav-item-txt { font-size: 14px; } }

@media (max-width: 767px) { .cmn-footlink__nav-item-txt { font-size: 10px; } }

@media (max-width: 767px) { .cmn-footlink__nav-item-txt em { display: block; font-size: 12px; } }

.cmn-pagetop { display: block; text-align: center; }

@media (min-width: 768px) { .cmn-pagetop { max-width: 1800px; margin: auto; } }

@media (max-width: 767px) { .cmn-pagetop { padding: 0 35px; } }

.cmn-pagetop__inner { display: block; }

@media (min-width: 768px) { .cmn-pagetop__inner { padding: 0 9.375%; } }

.cmn-pagetop__cont { display: block; border-bottom: 1px solid #e7e7e7; }

@media (min-width: 768px) { .cmn-pagetop__cont { padding: 70px 0; } }

@media (max-width: 767px) { .cmn-pagetop__cont { padding: 40px 0; } }

.cmn-pagetop__ico { fill: #22252c; }

@media (min-width: 768px) { .cmn-pagetop__ico { width: 42px; height: 21px; -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); } }

@media (max-width: 767px) { .cmn-pagetop__ico { width: 21px; height: 10.5px; } }

@media (min-width: 768px) { .cmn-pagetop:hover:hover .cmn-pagetop__ico { -webkit-transform: scaleX(0.7); -ms-transform: scaleX(0.7); transform: scaleX(0.7); } }

.cmn-pagetop-wall { visibility: hidden; position: fixed; top: 0; left: 0; z-index: 2000; width: 100%; height: 100%; pointer-events: none; }

.cmn-pagetop-wall.is-pagetop-active { visibility: visible; }

.cmn-pagetop-wall__block { display: block; position: absolute; top: 0; left: 0; opacity: 0; width: 100%; height: 100%; background-color: #fff; -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); }

.cmn-logo { position: absolute; z-index: 999; }

@media (min-width: 768px) { .cmn-logo { top: 80px; left: 80px; } }

@media (max-width: 767px) { .cmn-logo { top: 20px; left: 20px; } }

.cmn-logo__img { fill: #22252c; }

@media (min-width: 768px) { .cmn-logo__img { width: 80px; height: 48px; } }

@media (max-width: 767px) { .cmn-logo__img { width: 61.5px; height: 37px; } }

.cmn-logo--top .cmn-logo__img { fill: #f1f3f5; }

/**********************************
keyframes
**********************************/
@-webkit-keyframes menu-open-img { 0% { opacity: 0.7;
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  100% { opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }
@keyframes menu-open-img { 0% { opacity: 0.7;
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  100% { opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes menu-open-nav { 0% { opacity: 0;
    -webkit-transform: translateX(-10%);
            transform: translateX(-10%); }
  100% { opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@keyframes menu-open-nav { 0% { opacity: 0;
    -webkit-transform: translateX(-10%);
            transform: translateX(-10%); }
  100% { opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

.cmn-menu { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; visibility: hidden; position: fixed; top: 0; left: 0; z-index: 1001; opacity: 0; width: 100%; height: 100vh; background-color: #fff; pointer-events: none; -webkit-transform: scale(1.01); -ms-transform: scale(1.01); transform: scale(1.01); -webkit-transition: opacity .3s ease-out, visibility .3s ease-out, -webkit-transform .3s ease-out; transition: opacity .3s ease-out, visibility .3s ease-out, -webkit-transform .3s ease-out; transition: opacity .3s ease-out, transform .3s ease-out, visibility .3s ease-out; transition: opacity .3s ease-out, transform .3s ease-out, visibility .3s ease-out, -webkit-transform .3s ease-out; }

.cmn-menu.is-menu-open { visibility: visible; opacity: 0.95; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); pointer-events: auto; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(1) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.05s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.05s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(2) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(3) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.15s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.15s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(4) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(5) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.25s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.25s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(6) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(7) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.35s alternate forwards; }

.cmn-menu.is-menu-open .cmn-menu__nav-item:nth-of-type(8) .cmn-menu__nav-item-txt { -webkit-animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s alternate forwards; animation: menu-open-nav 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s alternate forwards; }

@media (min-width: 768px) { .cmn-menu {
	width:450px; margin-left:90px;
}.cmn-menu__imgs { overflow: hidden; width: 50%; height: 100%; padding: 40px; } }

@media (min-width: 768px) and (max-width: 1024px) { .cmn-menu__imgs { display: none; } }

@media (max-width: 767px) {  .cmn-menu__imgs { display: none; } }

.cmn-menu__imgs-inner { position: relative; overflow: hidden; height: 100%; }

.cmn-menu__img { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #22252c; }

@media (min-width: 768px) { .cmn-menu__img:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform-origin: top center; -ms-transform-origin: top center; transform-origin: top center; } }

.cmn-menu__img.is-nav-current { z-index: 1; }

.cmn-menu__img.is-nav-current:before { opacity: 1; }

.cmn-menu__img.is-nav-active { z-index: 2; }

.cmn-menu__img.is-nav-active:before { -webkit-animation: menu-open-img 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; animation: menu-open-img 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards; }

.cmn-menu__img--top:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-top.jpg"); }

.cmn-menu__img--style:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-style.jpg"); }

.cmn-menu__img--gw:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-gw.jpg"); }

.cmn-menu__img--plan:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-plan.jpg"); }

.cmn-menu__img--product:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-product.jpg"); }

.cmn-menu__img--column:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-column.jpg"); }

.cmn-menu__img--store:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-store.jpg"); }

.cmn-menu__img--support:before { background-image: url("../wp-content/themes/intelligenthome/assets/images/cmn-menu-bg-support.jpg"); }

.cmn-menu__nav { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; height: 100%; }

@media (min-width: 768px) { .cmn-menu__nav { width: 80%; margin:0 auto; } }

@media (min-width: 768px) and (max-width: 1024px) { .cmn-menu__nav { width: 100%; } }

@media (max-width: 767px) { .cmn-menu__nav { width: 80%; margin:0 auto; } }

.cmn-menu__nav-items { overflow-y: auto; width: 100%; text-align: center; }

.cmn-menu__nav-item a { display: block; padding: 15px 0; }

@media (min-width: 768px) { .cmn-menu__nav-item a:hover .cmn-menu__nav-item-txt:before { -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); } }

@media (min-width: 768px) { .cmn-menu__nav-item a:hover .cmn-menu__nav-item-txt svg { fill: #22252c; } }

.cmn-menu__nav-item a.is-nav-current .cmn-menu__nav-item-txt:before { -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); }

.cmn-menu__nav-item a.is-nav-current .cmn-menu__nav-item-txt svg { fill: #22252c; }

.cmn-menu__nav-item-txt { display: inline-block; position: relative; opacity: 0; -webkit-transform: translateX(-10%); -ms-transform: translateX(-10%); transform: translateX(-10%); font-family:Arial, Helvetica, sans-serif; font-size:18px; }

.cmn-menu__nav-item-txt:before { content: ''; display: block; position: absolute; top: 50%; left: 0; width: 120%; height: 1px; margin-left: -10%; background-color: #22252c; -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-menu__nav-item-txt svg { fill: #b2b2c2; -webkit-transition: fill 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: fill 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }

.nav-waku { border:1px solid #d2d2d2;font-family:Arial, Helvetica, sans-serif; font-size:18px;}
.nav-waku small {
	display:block;
	font-size:12px;
	line-height:14px;
}



@media (min-width: 768px) { .cmn-menu__nav-item-txt svg { height: 14px; } }

@media (max-width: 767px) { .cmn-menu__nav-item-txt svg { height: 12px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--top svg { width: 47px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--top svg { width: 40.5px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--style svg { width: 71px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--style svg { width: 63.5px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--gw svg { width: 119px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--gw svg { width: 105.5px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--plan svg { width: 61px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--plan svg { width: 54px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--product svg { width: 119px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--product svg { width: 106px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--column svg { width: 106px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--column svg { width: 94.5px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--store svg { width: 79px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--store svg { width: 69.5px; } }

@media (min-width: 768px) { .cmn-menu__nav-item--support svg { width: 115px; } }

@media (max-width: 767px) { .cmn-menu__nav-item--support svg { width: 102px; } }

/**********************************
keyframes
**********************************/
@-webkit-keyframes hover-line-1 { 0% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }
  100% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); } }
@keyframes hover-line-1 { 0% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }
  100% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); } }

@-webkit-keyframes hover-line-2 { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@keyframes hover-line-2 { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@keyframes hide-txt { 0% { opacity: 1; }
  100% { opacity: 0; } }

@-webkit-keyframes show-txt { 0% { opacity: 0; }
  100% { opacity: 1; } }

@keyframes show-txt { 0% { opacity: 0; }
  100% { opacity: 1; } }

.cmn-menu-open { position: fixed; z-index: 1000; letter-spacing: -0.4em; }

@media (min-width: 768px) { .cmn-menu-open { top: 29px; left: 32px; } }

@media (max-width: 767px) { .cmn-menu-open { top: 23px; left: 23px; } }

.cmn-menu-open.is-menu-open { visibility: hidden; pointer-events: none; }

.cmn-menu-open.is-init-scroll .cmn-menu-open__txt span { opacity: 0; pointer-events: none; }

.cmn-menu-open.is-menu-reverse .cmn-menu-open__line { background-color: #22252c; }

.cmn-menu-open__txt { display: inline-block; color: #22252c; font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.9em; vertical-align: middle; }

@media (min-width: 768px) { .cmn-menu-open__txt { margin-right: 10px; } }

@media (max-width: 767px) { .cmn-menu-open__txt { display: none; } }

.cmn-menu-open__txt span:nth-of-type(1) { -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s; transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s; }

.cmn-menu-open__txt span:nth-of-type(2) { -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s; transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s; }

.cmn-menu-open__txt span:nth-of-type(3) { -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s; transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s; }

.cmn-menu-open__txt span:nth-of-type(4) { -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s; transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s; transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s; }

.cmn-menu-open--top .cmn-menu-open__txt { color: #f1f3f5; }

.cmn-menu-open__lines { display: inline-block; position: relative; width: 17px; vertical-align: middle; letter-spacing: 0; }

@media (min-width: 768px) { .cmn-menu-open__lines:hover .cmn-menu-open__line:nth-of-type(1) { -webkit-animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s forwards alternate; animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s forwards alternate; } }

@media (min-width: 768px) { .cmn-menu-open__lines:hover .cmn-menu-open__line:nth-of-type(2) { -webkit-animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s forwards alternate; animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s forwards alternate; } }

@media (min-width: 768px) { .cmn-menu-open__lines:hover .cmn-menu-open__line:nth-of-type(3) { -webkit-animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s forwards alternate; animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s forwards alternate; } }

.cmn-menu-open__line { display: block; width: 100%; height: 1px; background-color: #22252c; -webkit-transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-menu-open__line + .cmn-menu-open__line { margin-top: 5px; }

.cmn-menu-open--top .cmn-menu-open__line { background-color: #22252c; }

/**********************************
keyframes
**********************************/
@keyframes hover-line-1 { 0% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }
  100% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); } }

@keyframes hover-line-2 { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

.cmn-menu-close { visibility: hidden; position: fixed; z-index: 1002; letter-spacing: -0.4em; pointer-events: none; }

@media (min-width: 768px) { .cmn-menu-close { top: 31px; left: 32px; } }

@media (max-width: 767px) { .cmn-menu-close { top: 25px; left: 23px; } }

.cmn-menu-close.is-menu-open { visibility: visible; pointer-events: auto; }

.cmn-menu-close__txt { display: inline-block; color: #22252c; font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.9em; vertical-align: middle; }

@media (min-width: 768px) { .cmn-menu-close__txt { margin-right: 10px; } }

@media (max-width: 767px) { .cmn-menu-close__txt { display: none; } }

.cmn-menu-close__lines { display: inline-block; position: relative; width: 17px; height: 17px; vertical-align: middle; letter-spacing: 0; }

@media (min-width: 768px) { .cmn-menu-close__lines:hover .cmn-menu-close__line:first-of-type:before { -webkit-animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s forwards alternate; animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.4s forwards alternate; } }

@media (min-width: 768px) { .cmn-menu-close__lines:hover .cmn-menu-close__line:last-of-type:before { -webkit-animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s forwards alternate; animation: hover-line-1 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s forwards alternate, hover-line-2 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s forwards alternate; } }

.cmn-menu-close__line { display: block; position: absolute; top: 50%; left: 0; width: 100%; height: 1px; margin-top: -1px; -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; }

.cmn-menu-close__line:first-of-type { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

.cmn-menu-close__line:last-of-type { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

.cmn-menu-close__line:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #22252c; -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); -webkit-backface-visibility: hidden; backface-visibility: hidden; }

@-webkit-keyframes scroll-bar { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleY(0);
            transform: scaleY(0); }
  50% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  75% { -webkit-transform-origin: bottom left; transform-origin: bottom left;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  100% { -webkit-transform-origin: bottom left; transform-origin: bottom left;
    -webkit-transform: scaleY(0);
            transform: scaleY(0); } }

@keyframes scroll-bar { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleY(0);
            transform: scaleY(0); }
  50% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  75% { -webkit-transform-origin: bottom left; transform-origin: bottom left;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  100% { -webkit-transform-origin: bottom left; transform-origin: bottom left;
    -webkit-transform: scaleY(0);
            transform: scaleY(0); } }

.cmn-pageheader { position: relative; overflow: hidden; }

@media (min-width: 768px) { .cmn-pageheader { max-width: 1800px; margin: auto; } }

.cmn-pageheader:before { content: ''; display: block; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; border-style: solid; border-color: #fff; pointer-events: none; }

@media (min-width: 768px) { .cmn-pageheader:before { border-width: 30px; } }

@media (max-width: 767px) { .cmn-pageheader:before { border-width: 5px; } }

.cmn-pageheader__ttl { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; width: 100%; }

@media (min-width: 768px) { .cmn-pageheader__ttl { height: 50vh; padding-bottom: 70px; } }

@media (max-width: 767px) { .cmn-pageheader__ttl { height: 220px; padding-bottom: 55px; } }

.cmn-pageheader__ttl-en { display: block; }

@media (min-width: 768px) { .cmn-pageheader__ttl-en { margin-bottom: 25px; } }

@media (max-width: 767px) { .cmn-pageheader__ttl-en { margin-bottom: 15px; } }

.cmn-pageheader__ttl-en-txt path { opacity: 0.5; fill: #22252c; }

.cmn-pageheader__ttl-ja { display: block; font-weight: bold; }

@media (min-width: 768px) { .cmn-pageheader__ttl-ja { font-size: 18px; letter-spacing: 0.44em; } }

@media (max-width: 767px) { .cmn-pageheader__ttl-ja { font-size: 10px; letter-spacing: 0.33em; } }

.cmn-pageheader__ttl-ja span { opacity: 0.5; color: #22252c; }

@media (min-width: 768px) { .cmn-pageheader__bg { position: relative; width: 100%; height: 50vh; padding: 0 30px 30px; } }

@media (max-width: 767px) { .cmn-pageheader__bg { padding: 0 5px 5px; } }

.cmn-pageheader__bg-inner { display: block; position: relative; overflow: hidden; width: 100%; }

@media (min-width: 768px) { .cmn-pageheader__bg-inner { height: 100%; } }

@media (max-width: 767px) { .cmn-pageheader__bg-inner { padding-top: 74%; } }

.cmn-pageheader__bg-img { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center top; background-size: cover; -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }

.cmn-pageheader__bar { display: block; position: absolute; left: 50%; bottom: 80px; z-index: 1; width: 40px; height: 70px; margin-left: -20px; }

@media (min-width: 768px) and (max-width: 1024px) { .cmn-pageheader__bar { display: none; }
  .desktop .cmn-pageheader__bar { display: block; } }

@media (max-width: 767px) { .cmn-pageheader__bar { display: none; } }

.cmn-pageheader__bar span { display: block; position: absolute; top: 0; left: 50%; width: 1px; height: 100%; margin-left: -0.5px; background-color: #fff; pointer-events: none; -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: top left; -ms-transform-origin: top left; transform-origin: top left; -webkit-animation: scroll-bar 2.5s cubic-bezier(0.075, 0.82, 0.165, 1) infinite forwards; animation: scroll-bar 2.5s cubic-bezier(0.075, 0.82, 0.165, 1) infinite forwards; }

.cmn-main { position: relative; z-index: 1; -webkit-transition: -webkit-transform 2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 2s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 2s cubic-bezier(0.39, 0.575, 0.565, 1); }

@media (min-width: 768px) { .cmn-main { -webkit-transform: translateY(-60px); -ms-transform: translateY(-60px); transform: translateY(-60px); } }

@media (max-width: 767px) { .cmn-main { -webkit-transform: translateY(-15px); -ms-transform: translateY(-15px); transform: translateY(-15px); } }

.cmn-main.is-init-scroll { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

@media (min-width: 768px) { .cmn-main__tip { max-width: 1800px; padding: 0 15.625%; height: 60px; margin: auto; } }

@media (max-width: 767px) { .cmn-main__tip { padding: 0 20px; height: 15px; } }

.cmn-main__tip:before { content: ''; display: block; height: 100%; background-color: #fff; }

.cmn-pager__lists { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }

.cmn-pager__list { display: block; width: 24px; line-height: 24px; color: #999; font-size: 10px; font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; text-align: center; }

.cmn-pager__list.is-pager-current { background-color: #22252c; color: #fff; }

.cmn-pager__list a { display: block; background-color: #ebebeb; color: inherit; -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1); transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1); }

@media (min-width: 768px) { .cmn-pager__list a:hover { background-color: #999; color: #fff; } }

.cmn-pager__list-omit { display: block; width: 24px; color: #999; font-size: 10px; text-align: center; line-height: 24px; }

.cmn-pager__list-prev, .cmn-pager__list-next { display: block; width: 24px; line-height: 24px; text-align: center; }

.cmn-pager__list-prev a, .cmn-pager__list-next a { display: block; }

.cmn-pager__list-prev a:hover svg, .cmn-pager__list-next a:hover svg { -webkit-transform: scale(1.5); -ms-transform: scale(1.5); transform: scale(1.5); }

.cmn-pager__list-prev svg, .cmn-pager__list-next svg { width: 4px; height: 6.5px; fill: #22252c; -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }

.cmn-article { border-bottom: 1px solid #e7e7e7; }

.cmn-article a { display: block; position: relative; }

@media (min-width: 768px) { .cmn-article a:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #22252c; -webkit-transform-origin: top right; -ms-transform-origin: top right; transform-origin: top right; -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); } }

@media (min-width: 768px) { .cmn-article a:hover:before { -webkit-transform-origin: top left; -ms-transform-origin: top left; transform-origin: top left; -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); } }

@media (min-width: 768px) { .cmn-article a:hover .cmn-article__ttl { color: #fff; } }

.cmn-article a:hover .cmn-article__fig-img { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }

@media (min-width: 768px) { .cmn-article__cols { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; position: relative; z-index: 1; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 50px 7.69231%; } }

@media (max-width: 767px) { .cmn-article__cols { padding: 35px 0; } }

@media (min-width: 768px) { .cmn-article__col--fig { width: 31.81818%; } }

@media (max-width: 767px) { .cmn-article__col--fig { margin-bottom: 25px; } }

.cmn-article__fig { position: relative; overflow: hidden; padding-top: 67%; }

.cmn-article__fig-img { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); transition: -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); -webkit-backface-visibility: hidden; backface-visibility: hidden; }

@media (min-width: 768px) { .cmn-article__col--cont { width: 68.18182%; padding-left: 9.09091%; } }

.cmn-article__info { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }

@media (min-width: 768px) { .cmn-article__info { margin-bottom: 30px; } }

@media (max-width: 767px) { .cmn-article__info { margin-bottom: 10px; } }

.cmn-article__category { margin-right: 10px; color: #007bc1; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: 400; letter-spacing: 0.22em; }

@media (min-width: 768px) { .cmn-article__category { font-size: 12px; } }

@media (max-width: 767px) { .cmn-article__category { font-size: 10px; } }

.cmn-article__date { color: #b2b2c2; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: 400; letter-spacing: 0.22em; }

@media (min-width: 768px) { .cmn-article__date { font-size: 12px; } }

@media (max-width: 767px) { .cmn-article__date { font-size: 10px; } }

.cmn-article__ttl { color: #22252c; font-weight: bold; letter-spacing: 0.06em; line-height: 1.5; }

@media (min-width: 768px) { .cmn-article__ttl { font-size: 24px; } }

@media (max-width: 767px) { .cmn-article__ttl { font-size: 12px; } }

/**********************************
keyframes
**********************************/
@-webkit-keyframes sound-slash { 0% { -webkit-transform: scaleY(0); transform: scaleY(0); }
  100% { -webkit-transform: scaleY(1); transform: scaleY(1); } }
@keyframes sound-slash { 0% { -webkit-transform: scaleY(0); transform: scaleY(0); }
  100% { -webkit-transform: scaleY(1); transform: scaleY(1); } }

@keyframes sound-line { 0% { -webkit-transform: scaleY(0); transform: scaleY(0); }
  50% { -webkit-transform: scaleY(1); transform: scaleY(1); }
  100% { -webkit-transform: scaleY(0.2); transform: scaleY(0.2); } }

@keyframes scroll-bar { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleY(0);
            transform: scaleY(0); }
  50% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  75% { -webkit-transform-origin: bottom left; transform-origin: bottom left;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  100% { -webkit-transform-origin: bottom left; transform-origin: bottom left;
    -webkit-transform: scaleY(0);
            transform: scaleY(0); } }

@-webkit-keyframes column-ttl-1 { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@keyframes column-ttl-1 { 0% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% { -webkit-transform-origin: top left; transform-origin: top left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@-webkit-keyframes column-ttl-2 { 0% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }
  100% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); } }

@keyframes column-ttl-2 { 0% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }
  100% { -webkit-transform-origin: top right; transform-origin: top right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0); } }

.top-hero { position: relative; height: 100vh; }

.top-hero:before { content: ''; display: block; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; border-style: solid; border-color: #fff; }

@media (min-width: 768px) { .top-hero:before { border-width: 0px; } }

@media (min-width: 768px) and (max-width: 1024px) { .top-hero:before { border-width: 0px; } }

@media (max-width: 767px) { .top-hero:before { border-width: 0px; } }

.top-hero__bg { position: relative; overflow: hidden; width: 100%; height: 100%; }

@media (min-width: 768px) and (max-width: 1024px) { .top-hero__bg { height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; background-image:url(../img/top-hero-bg-sp.jpg); -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; transition: -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; transition: transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; transition: transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1s, -webkit-transform 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; }
 }

@media (max-width: 767px) { .top-hero__bg { height: 100%; background-repeat: no-repeat; background-position: center center; background-size: 100% auto; background-image:url(../img/top-hero-bg-sp.jpg); -webkit-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2); -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; transition: -webkit-transform 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; transition: transform 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; transition: transform 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) 1s, -webkit-transform 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) 1s; } 
}

.top-hero.is-hero-tween .top-hero__bg { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }

.no-js .top-hero__bg { background-image:url(../img/top-hero-bg-sp.jpg); }

/*.top-hero__bg:before { content: ''; display: block; position: absolute; top: 50%; left: 0; width: 100%; height: 6px; background-color: #fff; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }*/

@media (min-width: 768px) { .top-hero__bg:before { display: none; } }

@media (min-width: 768px) and (max-width: 1024px) { .top-hero__bg:before { display: block; } }

@media (max-width: 767px) { .top-hero__bg:before { display: block; } }

.top-hero__bg-yt { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; }

@media (max-width: 767px) { .top-hero__bg-yt { display: none; } }

.top-hero__ttl { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

@media (min-width: 768px) { .top-hero__ttl { width: 409px; height: 107px; } }

@media (max-width: 767px) { .top-hero__ttl { width: 206px; height: 54px; } }

.top-hero__ttl svg { fill: #fff; }

@media (min-width: 768px) { .top-hero__ttl svg { width: 409px; height: 107px; } }

@media (max-width: 767px) { .top-hero__ttl svg { width: 206px; height: 54px; } }

.top-hero__sound { position: absolute; right: 80px; bottom: 80px; z-index: 1; letter-spacing: -0.4em; }
.top-hero__sound img {
	margin-bottom:15px;
}

@media (min-width: 768px) and (max-width: 1024px) { .top-hero__sound { display: none; }
  .desktop .top-hero__sound { display: block; } }

@media (max-width: 767px) { .top-hero__sound { display: none; } }

.top-hero__sound.is-muted .top-hero__sound-slash:before { -webkit-animation: sound-slash 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0s alternate forwards; animation: sound-slash 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0s alternate forwards; }

.top-hero__sound.is-muted .top-hero__sound-line { -webkit-animation: none; animation: none; }

.top-hero__sound-txt { display: inline-block; color: #f1f3f5; font-size: 10px; font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: 0.9em; vertical-align: middle; }

.top-hero__sound-eq { display: inline-block; position: relative; margin-left: 10px; vertical-align: middle; letter-spacing: 0; }

.top-hero__sound-lines { display: block; position: relative; font-size: 0; overflow: hidden; -webkit-transform-origin: bottom left; -ms-transform-origin: bottom left; transform-origin: bottom left; -webkit-transition: -webkit-transform .5s ease-out; transition: -webkit-transform .5s ease-out; transition: transform .5s ease-out; transition: transform .5s ease-out, -webkit-transform .5s ease-out; }

.top-hero__sound-slash { display: block; position: absolute; top: 50%; left: 50%; width: 1px; height: 100%; -webkit-transform-origin: top left; -ms-transform-origin: top left; transform-origin: top left; -webkit-transform: rotate(30deg) translate(-50%, -50%); -ms-transform: rotate(30deg) translate(-50%, -50%); transform: rotate(30deg) translate(-50%, -50%); }

.top-hero__sound-slash:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #f1f3f5; -webkit-transform-origin: left top; -ms-transform-origin: left top; transform-origin: left top; -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); }

.top-hero__sound-line { display: inline-block; width: 1px; height: 13px; background-color: #f1f3f5; -webkit-transform-origin: left bottom; -ms-transform-origin: left bottom; transform-origin: left bottom; -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); }

.top-hero__sound-line:nth-of-type(1) { -webkit-animation: sound-line .4s ease-out 0s infinite alternate; animation: sound-line .4s ease-out 0s infinite alternate; }

.top-hero__sound-line:nth-of-type(2) { -webkit-animation: sound-line .3s ease-out .1s infinite alternate; animation: sound-line .3s ease-out .1s infinite alternate; }

.top-hero__sound-line:nth-of-type(3) { -webkit-animation: sound-line .5s ease-out 0s infinite alternate; animation: sound-line .5s ease-out 0s infinite alternate; }

.top-hero__sound-line:nth-of-type(4) { -webkit-animation: sound-line .5s ease-out .2s infinite alternate; animation: sound-line .5s ease-out .2s infinite alternate; }

.top-hero__sound-line + .top-hero__sound-line { margin-left: 4px; }

.top-hero__column { position: absolute; z-index: 1; }

@media (min-width: 768px) { .top-hero__column { left: 80px; bottom: 80px; } }

@media (max-width: 767px) { .top-hero__column { left: 20px; bottom: 30px; } }

.top-hero__column-article a { color: #f1f3f5; }

.top-hero__column-article a:hover .top-hero__column-ttl:before { -webkit-animation: column-ttl-1 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards, column-ttl-2 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s alternate forwards; animation: column-ttl-1 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) alternate forwards, column-ttl-2 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s alternate forwards; }

.top-hero__column-info { font-weight: 400; font-family: "Roboto Condensed", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; letter-spacing: -0.4em; }

@media (min-width: 768px) { .top-hero__column-info { margin-bottom: 15px; font-size: 12px; } }

@media (max-width: 767px) { .top-hero__column-info { margin-bottom: 5px; font-size: 10px; } }

.top-hero__column-category { display: inline-block; margin-right: 5px; padding-right: 5px; border-right: 1px solid #fff; vertical-align: middle; letter-spacing: 0.11em; }

.top-hero__column-date { display: inline-block; vertical-align: middle; letter-spacing: 0.11em; }

.top-hero__column-ttl { position: relative; letter-spacing: 0.26em; }

@media (min-width: 768px) { .top-hero__column-ttl { padding-bottom: 5px; font-size: 12px; } }

@media (max-width: 767px) { .top-hero__column-ttl { font-size: 10px; } }

.top-hero__column-ttl:before { content: ''; display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #fff; -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); }

.top-hero__bar { display: block; position: absolute; left: 50%; bottom: 80px; z-index: 1; width: 40px; height: 70px; margin-left: -20px; }

@media (min-width: 768px) and (max-width: 1024px) { .top-hero__bar { display: none; }
  .desktop .top-hero__bar { display: block; } }

@media (max-width: 767px) { .top-hero__bar { display: none; } }

.top-hero__bar span { display: block; position: absolute; top: 0; left: 50%; width: 1px; height: 100%; margin-left: -0.5px; background-color: #f5f5f5; pointer-events: none; -webkit-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: top left; -ms-transform-origin: top left; transform-origin: top left; -webkit-animation: scroll-bar 2.5s cubic-bezier(0.075, 0.82, 0.165, 1) infinite forwards; animation: scroll-bar 2.5s cubic-bezier(0.075, 0.82, 0.165, 1) infinite forwards; }
