@charset "UTF-8";
/*============================================================================
	Grid Breakpoints and Class Names
		- Do not change breakpoint variable names
		- Medium breakpoint is also set in theme.js.liquid and inline
		throughout some templates. Be weary of changing unless you know what you're doing.
==============================================================================*/
/*================ Color variables ================*/
/*================ Transition ================*/
/*================ Typography ================*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500&display=swap");
@font-face { font-family: "Calibre"; src: url("../fonts/Calibre-Thin.eot") format("eot"), url("../fonts/Calibre-Thin.woff") format("woff"); font-weight: 100; font-style: normal; }
@font-face { font-family: "Calibre"; src: url("../fonts/Calibre-Light.eot") format("eot"), url("../fonts/Calibre-Light.woff") format("woff"); font-weight: 300; font-style: normal; }
@font-face { font-family: 'Calibre'; src: url("../fonts/Calibre-Regular.eot") format("eot"), url("../fonts/Calibre-Regular.woff") format("woff"); font-weight: 400; font-style: normal; }
/*================ VENDOR ================*/
/* SWIPER */
@font-face { font-family: swiper-icons; src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff"); font-weight: 400; font-style: normal; }
.swiper-container { margin-left: auto; margin-right: auto; position: relative; overflow: hidden; list-style: none; padding: 0; z-index: 1; }
.swiper-container-vertical > .swiper-wrapper { flex-direction: column; }
.swiper-wrapper { position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box; }
.swiper-container-android .swiper-slide, .swiper-wrapper { transform: translateZ(0); }
.swiper-container-multirow > .swiper-wrapper { flex-wrap: wrap; }
.swiper-container-multirow-column > .swiper-wrapper { flex-wrap: wrap; flex-direction: column; }
.swiper-container-free-mode > .swiper-wrapper { transition-timing-function: ease-out; margin: 0 auto; }
.swiper-slide { flex-shrink: 0; width: 100%; height: 100%; position: relative; transition-property: transform; }
.swiper-slide-invisible-blank { visibility: hidden; }
.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide { height: auto; }
.swiper-container-autoheight .swiper-wrapper { align-items: flex-start; transition-property: transform, height; }
.swiper-container-3d { perspective: 1200px; }
.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper { transform-style: preserve-3d; }
.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top { position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; z-index: 10; }
.swiper-container-3d .swiper-slide-shadow-left { background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5), transparent); }
.swiper-container-3d .swiper-slide-shadow-right { background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), transparent); }
.swiper-container-3d .swiper-slide-shadow-top { background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), transparent); }
.swiper-container-3d .swiper-slide-shadow-bottom { background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent); }
.swiper-container-css-mode > .swiper-wrapper { overflow: auto; scrollbar-width: none; -ms-overflow-style: none; }
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar { display: none; }
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide { scroll-snap-align: start start; }
.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper { -ms-scroll-snap-type: x mandatory; scroll-snap-type: x mandatory; }
.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper { -ms-scroll-snap-type: y mandatory; scroll-snap-type: y mandatory; }
.swiper-button-next, .swiper-button-prev { position: absolute; top: 50%; width: 30px; height: 30px; margin-top: calc(-1*30px/2); z-index: 10; cursor: pointer; display: flex; align-items: center; justify-content: center; color: #191919; transition: opacity .3s; }
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled { opacity: 0; cursor: auto; pointer-events: none; }
.swiper-button-next:after, .swiper-button-prev:after { font-family: swiper-icons; font-size: 13px; text-transform: none !important; letter-spacing: 0; text-transform: none; font-variant: normal; }
@media only screen and (min-width: 768px) {
	.swiper-button-next, .swiper-button-prev { width: 50px; height: 50px; margin-top: calc(-1*50px/2); }
	.swiper-button-next:after, .swiper-button-prev:after { font-size: 20px; }
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next { left: 0; right: auto; }
.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after { content: "prev"; }
.swiper-button-next, .swiper-container-rtl .swiper-button-prev { right: 0; left: auto; }
.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after { content: "next"; }
.swiper-button-next.swiper-button-white, .swiper-button-prev.swiper-button-white { background: #fff; }
.swiper-button-next.swiper-button-black, .swiper-button-prev.swiper-button-black { background: #000; }
.swiper-button-lock { display: none; }
.swiper-pagination { position: absolute; text-align: center; transition: opacity .3s; transform: translateZ(0); z-index: 10; }
.swiper-pagination.swiper-pagination-hidden { opacity: 0; }
.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction { bottom: 10px; left: 0; width: 100%; }
.swiper-pagination-bullets-dynamic { overflow: hidden; font-size: 0; }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transform: scale(0.33); position: relative; }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main { transform: scale(1); }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev { transform: scale(0.66); }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev { transform: scale(0.33); }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next { transform: scale(0.66); }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next { transform: scale(0.33); }
.swiper-pagination-bullet { width: 4px; height: 4px; display: inline-block; border-radius: 100%; background: #191919; opacity: 0.2; }
button.swiper-pagination-bullet { border: none; margin: 0; padding: 0; box-shadow: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer; }
.swiper-pagination-bullet-active { opacity: 1; background: #333; }
.swiper-container-vertical > .swiper-pagination-bullets { right: 10px; top: 50%; transform: translate3d(0, -50%, 0); }
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 6px 0; display: block; }
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic { top: 50%; transform: translateY(-50%); width: 8px; }
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { display: inline-block; transition: transform 0.2s, top 0.2s; }
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 0 4px; }
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic { left: 50%; transform: translateX(-50%); white-space: nowrap; }
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transition: transform 0.2s, left 0.2s; }
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transition: transform 0.2s, right 0.2s; }
.swiper-pagination-progressbar { background: rgba(0, 0, 0, 0.25); position: absolute; }
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: #333; position: absolute; left: 0; top: 0; width: 100%; height: 100%; transform: scale(0); transform-origin: left top; }
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { transform-origin: right top; }
.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite { width: 100%; height: 4px; left: 0; top: 0; }
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar { width: 4px; height: 100%; left: 0; top: 0; }
.swiper-pagination-white { background: #fff; }
.swiper-pagination-black { background: #000; }
.swiper-pagination-lock { display: none; }
.swiper-scrollbar { border-radius: 10px; position: relative; -ms-touch-action: none; background: rgba(0, 0, 0, 0.1); }
.swiper-scrollbar { position: relative; margin: 0; z-index: 50; height: 1px; width: auto; }
.swiper-scrollbar-drag { height: 100%; width: 100%; position: relative; background: rgba(0, 0, 0, 0.5); border-radius: 10px; left: 0; top: 0; }
.swiper-scrollbar-cursor-drag { cursor: move; }
.swiper-scrollbar-lock { display: none; }
.swiper-zoom-container { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; text-align: center; }
.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg { max-width: 100%; max-height: 100%; -o-object-fit: contain; object-fit: contain; }
.swiper-slide-zoomed { cursor: move; }
.swiper-lazy-preloader { width: 42px; height: 42px; position: absolute; left: 50%; top: 50%; margin-left: -21px; margin-top: -21px; z-index: 10; transform-origin: 50%; -webkit-animation: swiper-preloader-spin 1s linear infinite; animation: swiper-preloader-spin 1s linear infinite; box-sizing: border-box; border-radius: 50%; border: 4px solid #333; border-top: 4px solid transparent; }
.swiper-lazy-preloader-white { background: #fff; }
.swiper-lazy-preloader-black { background: #000; }
@-webkit-keyframes swiper-preloader-spin { to { transform: rotate(1turn);}
}
@keyframes swiper-preloader-spin { to { transform: rotate(1turn);}
}
.swiper-container .swiper-notification { position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; }
.swiper-container-fade.swiper-container-free-mode .swiper-slide { transition-timing-function: ease-out; }
.swiper-container-fade .swiper-slide { pointer-events: none; transition-property: opacity; }
.swiper-container-fade .swiper-slide .swiper-slide { pointer-events: none; }
.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active { pointer-events: auto; }
.swiper-container-cube { overflow: visible; }
.swiper-container-cube .swiper-slide { pointer-events: none; -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 1; visibility: hidden; transform-origin: 0 0; width: 100%; height: 100%; }
.swiper-container-cube .swiper-slide .swiper-slide { pointer-events: none; }
.swiper-container-cube.swiper-container-rtl .swiper-slide { transform-origin: 100% 0; }
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active { pointer-events: auto; }
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev { pointer-events: auto; visibility: visible; }
.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top { z-index: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.swiper-container-cube .swiper-cube-shadow { position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: #000; opacity: .6; -webkit-filter: blur(50px); filter: blur(50px); z-index: 0; }
.swiper-container-flip { overflow: visible; }
.swiper-container-flip .swiper-slide { pointer-events: none; -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 1; }
.swiper-container-flip .swiper-slide .swiper-slide { pointer-events: none; }
.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active { pointer-events: auto; }
.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top { z-index: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
/*============================================================================
	#Sass Mixins
==============================================================================*/
.clearfix:after { content: ''; display: table; clear: both; }
/*================ Media Query Mixin ================*/
/*================ Responsive Show/Hide Helper ================*/
/*================ Responsive Text Alignment Helper ================*/
/*================ Animation related mixins ================*/
/*================ Functions ================*/
/*================ Animations and keyframes ================*/
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg);}
}
@keyframes fadeIn { 0%, 35% { opacity: 0; } 100% { opacity: 1;}
}
@keyframes heroContentIn { 0%, 35% { opacity: 0; transform: translateY(8px); } 60% { opacity: 1; } 100% { transform: translateY(0);}
}
@keyframes ArrowMore { 0% { transform: translateX(0); } 50% { transform: translateX(100%); } 50.1% { transform: translateX(-100%); } 100% { transform: translateX(0);}
}
@keyframes ArrowBack { 0% { transform: translateX(0); } 50% { transform: translateX(-100%); } 50.1% { transform: translateX(100%); } 100% { transform: translateX(0);}
}
/*================ Global | Normalize ================*/
*, input, :before, :after { -o-box-sizing: border-box; -ms-box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 0; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, select, p, blockquote, th, td, figure, main { margin: 0; padding: 0; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, button, caption, cite, code, dfn, em, input, optgroup, option, select, strong, textarea, th, var { font: inherit; }
del, ins { text-decoration: none; }
li { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 400; }
q:before, q:after { content: ""; }
abbr, acronym { border: 0; font-variant: normal; }
sup { vertical-align: baseline; }
sub { vertical-align: baseline; }
a:hover { text-decoration: inherit; }
button { border: 0; margin: 0; padding: 0; background: transparent; cursor: pointer; font-family: inherit; font-size: inherit; font-weight: inherit; color: inherit; letter-spacing: inherit; line-height: inherit; text-align: inherit; text-transform: inherit; outline: none; }
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
.grid { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin-left: -12px; }
@media only screen and (min-width: 1024px) {
	.grid { margin-left: -24px;}
}
.grid.grid--reverse { flex-direction: row-reverse; }
.grid__item { padding-left: 12px; padding-bottom: 12px; width: 100%; min-height: 1px; }
.grid__item > a { display: block; overflow: hidden; }
@media only screen and (min-width: 1024px) {
	.grid__item { padding-left: 24px; padding-bottom: 24px; }
}
.grid__item.h100 { height: 100%; }
.grid--no-gutters { margin-left: 0; }
.grid--no-gutters > .grid__item { padding-left: 0; padding-bottom: 0; }
.grid--large-gutters { margin-left: -24px; }
.grid--large-gutters .grid__item { padding-left: 24px; }
@media only screen and (min-width: 1024px) {
	.grid--large-gutters { margin-left: -48px; }
	.grid--large-gutters .grid__item { padding-left: 48px; }
}
.grid--flush-bottom { margin-bottom: -24px; overflow: auto; }
.grid--flush-bottom > .grid__item { margin-bottom: 24px; }
.grid--align-bottom { align-items: flex-end; }
.grid--align-center { align-items: center; }
.grid--align-top { align-items: flex-start; }
.grid--justify-center { justify-content: center; }
.grid--full { margin-left: 0; }
.grid--full > .grid__item { padding-left: 0; }
@media only screen and (max-width: 767px) {
	.grid-overflow-wrapper { margin: 0 0 16px; padding: 0 !important; overflow: auto; -webkit-overflow-scrolling: touch; }
	.grid-overflow-wrapper .grid { white-space: nowrap; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; justify-content: unset; }
	.grid-overflow-wrapper .grid:after { content: ""; width: 30px; }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
	.grid-overflow-wrapper .grid:after { width: 16px;}
}
@media only screen and (max-width: 767px) {
	.grid-overflow-wrapper .grid:after { width: 16px; -ms-flex: 0 0 16px; flex: 0 0 16px; display: inline-block; }
	.grid-overflow-wrapper .grid__item { width: 150px; -ms-flex: 0 0 150px; flex: 0 0 150px; white-space: normal; }
	.grid-overflow-wrapper .grid__item:first-child { margin-left: 16px;}
}
/*============================================================================
	Grid Columns
		- Create width classes, prepended by the breakpoint name.
==============================================================================*/
/*================ Grid push classes ================*/
/*================ Clearfix helper on uniform grids ================*/
/*================ Build Base Grid Classes ================*/
/* Whole */
.one-whole { width: 100%; }
/* Halves */
.one-half { width: 50%; }
/* Thirds */
.one-third { width: 33.33333%; }
.two-thirds { width: 66.66667%; }
/* Quarters */
.one-quarter { width: 25%; }
.two-quarters { width: 50%; }
.three-quarters { width: 75%; }
/* Fifths */
.one-fifth { width: 20%; }
.two-fifths { width: 40%; }
.three-fifths { width: 60%; }
.four-fifths { width: 80%; }
/* Sixths */
.one-sixth { width: 16.66667%; }
.two-sixths { width: 33.33333%; }
.three-sixths { width: 50%; }
.four-sixths { width: 66.66667%; }
.five-sixths { width: 83.33333%; }
/* Eighths */
.one-eighth { width: 12.5%; }
.two-eighths { width: 25%; }
.three-eighths { width: 37.5%; }
.four-eighths { width: 50%; }
.five-eighths { width: 62.5%; }
.six-eighths { width: 75%; }
.seven-eighths { width: 87.5%; }
/* Tenths */
.one-tenth { width: 10%; }
.two-tenths { width: 20%; }
.three-tenths { width: 30%; }
.four-tenths { width: 40%; }
.five-tenths { width: 50%; }
.six-tenths { width: 60%; }
.seven-tenths { width: 70%; }
.eight-tenths { width: 80%; }
.nine-tenths { width: 90%; }
/* Twelfths */
.one-twelfth { width: 8.33333%; }
.two-twelfths { width: 16.66667%; }
.three-twelfths { width: 25%; }
.four-twelfths { width: 33.33333%; }
.five-twelfths { width: 41.66667%; }
.six-twelfths { width: 50%; }
.seven-twelfths { width: 58.33333%; }
.eight-twelfths { width: 66.66667%; }
.nine-twelfths { width: 75%; }
.ten-twelfths { width: 83.33333%; }
.eleven-twelfths { width: 91.66667%; }
.show { display: block !important; }
.hide { display: none !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.bgNavy { background: #191919; padding: 1px 0; }
.bgPink { background: #faebe3; padding: 1px 0; }
/*================ Build Responsive Grid Classes ================*/
@media only screen and (max-width: 767px) {
	/* Whole */
	.small--one-whole { width: 100%; }
	/* Halves */
	.small--one-half { width: 50%; }
	/* Thirds */
	.small--one-third { width: 33.33333%; }
	.small--two-thirds { width: 66.66667%; }
	/* Quarters */
	.small--one-quarter { width: 25%; }
	.small--two-quarters { width: 50%; }
	.small--three-quarters { width: 75%; }
	/* Fifths */
	.small--one-fifth { width: 20%; }
	.small--two-fifths { width: 40%; }
	.small--three-fifths { width: 60%; }
	.small--four-fifths { width: 80%; }
	/* Sixths */
	.small--one-sixth { width: 16.66667%; }
	.small--two-sixths { width: 33.33333%; }
	.small--three-sixths { width: 50%; }
	.small--four-sixths { width: 66.66667%; }
	.small--five-sixths { width: 83.33333%; }
	/* Eighths */
	.small--one-eighth { width: 12.5%; }
	.small--two-eighths { width: 25%; }
	.small--three-eighths { width: 37.5%; }
	.small--four-eighths { width: 50%; }
	.small--five-eighths { width: 62.5%; }
	.small--six-eighths { width: 75%; }
	.small--seven-eighths { width: 87.5%; }
	/* Tenths */
	.small--one-tenth { width: 10%; }
	.small--two-tenths { width: 20%; }
	.small--three-tenths { width: 30%; }
	.small--four-tenths { width: 40%; }
	.small--five-tenths { width: 50%; }
	.small--six-tenths { width: 60%; }
	.small--seven-tenths { width: 70%; }
	.small--eight-tenths { width: 80%; }
	.small--nine-tenths { width: 90%; }
	/* Twelfths */
	.small--one-twelfth { width: 8.33333%; }
	.small--two-twelfths { width: 16.66667%; }
	.small--three-twelfths { width: 25%; }
	.small--four-twelfths { width: 33.33333%; }
	.small--five-twelfths { width: 41.66667%; }
	.small--six-twelfths { width: 50%; }
	.small--seven-twelfths { width: 58.33333%; }
	.small--eight-twelfths { width: 66.66667%; }
	.small--nine-twelfths { width: 75%; }
	.small--ten-twelfths { width: 83.33333%; }
	.small--eleven-twelfths { width: 91.66667%; }
	.grid--uniform .small--one-half:nth-child(2n+1), .grid--uniform .small--one-third:nth-child(3n+1), .grid--uniform .small--one-quarter:nth-child(4n+1), .grid--uniform .small--one-fifth:nth-child(5n+1), .grid--uniform .small--one-sixth:nth-child(6n+1), .grid--uniform .small--two-sixths:nth-child(3n+1), .grid--uniform .small--three-sixths:nth-child(2n+1), .grid--uniform .small--one-eighth:nth-child(8n+1), .grid--uniform .small--two-eighths:nth-child(4n+1), .grid--uniform .small--four-eighths:nth-child(2n+1), .grid--uniform .small--five-tenths:nth-child(2n+1), .grid--uniform .small--one-twelfth:nth-child(12n+1), .grid--uniform .small--two-twelfths:nth-child(6n+1), .grid--uniform .small--three-twelfths:nth-child(4n+1), .grid--uniform .small--four-twelfths:nth-child(3n+1), .grid--uniform .small--six-twelfths:nth-child(2n+1) { clear: both; }
	.collection-2 .grid--uniform-2 .small--one-half:nth-child(2n+1), .collection-2 .grid--uniform-2 .small--one-third:nth-child(3n+1), .collection-2 .grid--uniform-2 .small--one-quarter:nth-child(4n+1), .collection-2 .grid--uniform-2 .small--one-fifth:nth-child(5n+1), .collection-2 .grid--uniform-2 .small--one-sixth:nth-child(6n+1), .collection-2 .grid--uniform-2 .small--two-sixths:nth-child(3n+1), .collection-2 .grid--uniform-2 .small--three-sixths:nth-child(2n+1), .collection-2 .grid--uniform-2 .small--one-eighth:nth-child(8n+1), .collection-2 .grid--uniform-2 .small--two-eighths:nth-child(4n+1), .collection-2 .grid--uniform-2 .small--four-eighths:nth-child(2n+1), .collection-2 .grid--uniform-2 .small--five-tenths:nth-child(2n+1), .collection-2 .grid--uniform-2 .small--one-twelfth:nth-child(12n+1), .collection-2 .grid--uniform-2 .small--two-twelfths:nth-child(6n+1), .collection-2 .grid--uniform-2 .small--three-twelfths:nth-child(4n+1), .collection-2 .grid--uniform-2 .small--four-twelfths:nth-child(3n+1), .collection-2 .grid--uniform-2 .small--six-twelfths:nth-child(2n+1) { clear: unset; }
}
@media only screen and (min-width: 768px) {
	/* Whole */
	.medium-up--one-whole { width: 100%; }
	/* Halves */
	.medium-up--one-half { width: 50%; }
	/* Thirds */
	.medium-up--one-third { width: 33.33333%; }
	.medium-up--two-thirds { width: 66.66667%; }
	/* Quarters */
	.medium-up--one-quarter { width: 25%; }
	.medium-up--two-quarters { width: 50%; }
	.medium-up--three-quarters { width: 75%; }
	/* Fifths */
	.medium-up--one-fifth { width: 20%; }
	.medium-up--two-fifths { width: 40%; }
	.medium-up--three-fifths { width: 60%; }
	.medium-up--four-fifths { width: 80%; }
	/* Sixths */
	.medium-up--one-sixth { width: 16.66667%; }
	.medium-up--two-sixths { width: 33.33333%; }
	.medium-up--three-sixths { width: 50%; }
	.medium-up--four-sixths { width: 66.66667%; }
	.medium-up--five-sixths { width: 83.33333%; }
	/* Eighths */
	.medium-up--one-eighth { width: 12.5%; }
	.medium-up--two-eighths { width: 25%; }
	.medium-up--three-eighths { width: 37.5%; }
	.medium-up--four-eighths { width: 50%; }
	.medium-up--five-eighths { width: 62.5%; }
	.medium-up--six-eighths { width: 75%; }
	.medium-up--seven-eighths { width: 87.5%; }
	/* Tenths */
	.medium-up--one-tenth { width: 10%; }
	.medium-up--two-tenths { width: 20%; }
	.medium-up--three-tenths { width: 30%; }
	.medium-up--four-tenths { width: 40%; }
	.medium-up--five-tenths { width: 50%; }
	.medium-up--six-tenths { width: 60%; }
	.medium-up--seven-tenths { width: 70%; }
	.medium-up--eight-tenths { width: 80%; }
	.medium-up--nine-tenths { width: 90%; }
	/* Twelfths */
	.medium-up--one-twelfth { width: 8.33333%; }
	.medium-up--two-twelfths { width: 16.66667%; }
	.medium-up--three-twelfths { width: 25%; }
	.medium-up--four-twelfths { width: 33.33333%; }
	.medium-up--five-twelfths { width: 41.66667%; }
	.medium-up--six-twelfths { width: 50%; }
	.medium-up--seven-twelfths { width: 58.33333%; }
	.medium-up--eight-twelfths { width: 66.66667%; }
	.medium-up--nine-twelfths { width: 75%; }
	.medium-up--ten-twelfths { width: 83.33333%; }
	.medium-up--eleven-twelfths { width: 91.66667%; }
	.grid--uniform .medium-up--one-half:nth-child(2n+1), .grid--uniform .medium-up--one-third:nth-child(3n+1), .grid--uniform .medium-up--one-quarter:nth-child(4n+1), .grid--uniform .medium-up--one-fifth:nth-child(5n+1), .grid--uniform .medium-up--one-sixth:nth-child(6n+1), .grid--uniform .medium-up--two-sixths:nth-child(3n+1), .grid--uniform .medium-up--three-sixths:nth-child(2n+1), .grid--uniform .medium-up--one-eighth:nth-child(8n+1), .grid--uniform .medium-up--two-eighths:nth-child(4n+1), .grid--uniform .medium-up--four-eighths:nth-child(2n+1), .grid--uniform .medium-up--five-tenths:nth-child(2n+1), .grid--uniform .medium-up--one-twelfth:nth-child(12n+1), .grid--uniform .medium-up--two-twelfths:nth-child(6n+1), .grid--uniform .medium-up--three-twelfths:nth-child(4n+1), .grid--uniform .medium-up--four-twelfths:nth-child(3n+1), .grid--uniform .medium-up--six-twelfths:nth-child(2n+1) { clear: both; }
	.collection-2 .grid--uniform-2 .medium-up--one-half:nth-child(2n+1), .collection-2 .grid--uniform-2 .medium-up--one-third:nth-child(3n+1), .collection-2 .grid--uniform-2 .medium-up--one-quarter:nth-child(4n+1), .collection-2 .grid--uniform-2 .medium-up--one-fifth:nth-child(5n+1), .collection-2 .grid--uniform-2 .medium-up--one-sixth:nth-child(6n+1), .collection-2 .grid--uniform-2 .medium-up--two-sixths:nth-child(3n+1), .collection-2 .grid--uniform-2 .medium-up--three-sixths:nth-child(2n+1), .collection-2 .grid--uniform-2 .medium-up--one-eighth:nth-child(8n+1), .collection-2 .grid--uniform-2 .medium-up--two-eighths:nth-child(4n+1), .collection-2 .grid--uniform-2 .medium-up--four-eighths:nth-child(2n+1), .collection-2 .grid--uniform-2 .medium-up--five-tenths:nth-child(2n+1), .collection-2 .grid--uniform-2 .medium-up--one-twelfth:nth-child(12n+1), .collection-2 .grid--uniform-2 .medium-up--two-twelfths:nth-child(6n+1), .collection-2 .grid--uniform-2 .medium-up--three-twelfths:nth-child(4n+1), .collection-2 .grid--uniform-2 .medium-up--four-twelfths:nth-child(3n+1), .collection-2 .grid--uniform-2 .medium-up--six-twelfths:nth-child(2n+1) { clear: unset; }
}
@media only screen and (min-width: 1024px) { /* Whole */
	.large-up--one-whole { width: 100%; }
	/* Halves */
	.large-up--one-half { width: 50%; }
	/* Thirds */
	.large-up--one-third { width: 33.33333%; }
	.large-up--two-thirds { width: 66.66667%; }
	/* Quarters */
	.large-up--one-quarter { width: 25%; }
	.large-up--two-quarters { width: 50%; }
	.large-up--three-quarters { width: 75%; }
	/* Fifths */
	.large-up--one-fifth { width: 20%; }
	.large-up--two-fifths { width: 40%; }
	.large-up--three-fifths { width: 60%; }
	.large-up--four-fifths { width: 80%; }
	/* Sixths */
	.large-up--one-sixth { width: 16.66667%; }
	.large-up--two-sixths { width: 33.33333%; }
	.large-up--three-sixths { width: 50%; }
	.large-up--four-sixths { width: 66.66667%; }
	.large-up--five-sixths { width: 83.33333%; }
	/* Eighths */
	.large-up--one-eighth { width: 12.5%; }
	.large-up--two-eighths { width: 25%; }
	.large-up--three-eighths { width: 37.5%; }
	.large-up--four-eighths { width: 50%; }
	.large-up--five-eighths { width: 62.5%; }
	.large-up--six-eighths { width: 75%; }
	.large-up--seven-eighths { width: 87.5%; }
	/* Tenths */
	.large-up--one-tenth { width: 10%; }
	.large-up--two-tenths { width: 20%; }
	.large-up--three-tenths { width: 30%; }
	.large-up--four-tenths { width: 40%; }
	.large-up--five-tenths { width: 50%; }
	.large-up--six-tenths { width: 60%; }
	.large-up--seven-tenths { width: 70%; }
	.large-up--eight-tenths { width: 80%; }
	.large-up--nine-tenths { width: 90%; }
	/* Twelfths */
	.large-up--one-twelfth { width: 8.33333%; }
	.large-up--two-twelfths { width: 16.66667%; }
	.large-up--three-twelfths { width: 25%; }
	.large-up--four-twelfths { width: 33.33333%; }
	.large-up--five-twelfths { width: 41.66667%; }
	.large-up--six-twelfths { width: 50%; }
	.large-up--seven-twelfths { width: 58.33333%; }
	.large-up--eight-twelfths { width: 66.66667%; }
	.large-up--nine-twelfths { width: 75%; }
	.large-up--ten-twelfths { width: 83.33333%; }
	.large-up--eleven-twelfths { width: 91.66667%; }
	.grid--uniform .large-up--one-half:nth-child(2n+1), .grid--uniform .large-up--one-third:nth-child(3n+1), .grid--uniform .large-up--one-quarter:nth-child(4n+1), .grid--uniform .large-up--one-fifth:nth-child(5n+1), .grid--uniform .large-up--one-sixth:nth-child(6n+1), .grid--uniform .large-up--two-sixths:nth-child(3n+1), .grid--uniform .large-up--three-sixths:nth-child(2n+1), .grid--uniform .large-up--one-eighth:nth-child(8n+1), .grid--uniform .large-up--two-eighths:nth-child(4n+1), .grid--uniform .large-up--four-eighths:nth-child(2n+1), .grid--uniform .large-up--five-tenths:nth-child(2n+1), .grid--uniform .large-up--one-twelfth:nth-child(12n+1), .grid--uniform .large-up--two-twelfths:nth-child(6n+1), .grid--uniform .large-up--three-twelfths:nth-child(4n+1), .grid--uniform .large-up--four-twelfths:nth-child(3n+1), .grid--uniform .large-up--six-twelfths:nth-child(2n+1) { clear: both; }
	.collection-2 .grid--uniform-2 .large-up--one-half:nth-child(2n+1), .collection-2 .grid--uniform-2 .large-up--one-third:nth-child(3n+1), .collection-2 .grid--uniform-2 .large-up--one-quarter:nth-child(4n+1), .collection-2 .grid--uniform-2 .large-up--one-fifth:nth-child(5n+1), .collection-2 .grid--uniform-2 .large-up--one-sixth:nth-child(6n+1), .collection-2 .grid--uniform-2 .large-up--two-sixths:nth-child(3n+1), .collection-2 .grid--uniform-2 .large-up--three-sixths:nth-child(2n+1), .collection-2 .grid--uniform-2 .large-up--one-eighth:nth-child(8n+1), .collection-2 .grid--uniform-2 .large-up--two-eighths:nth-child(4n+1), .collection-2 .grid--uniform-2 .large-up--four-eighths:nth-child(2n+1), .collection-2 .grid--uniform-2 .large-up--five-tenths:nth-child(2n+1), .collection-2 .grid--uniform-2 .large-up--one-twelfth:nth-child(12n+1), .collection-2 .grid--uniform-2 .large-up--two-twelfths:nth-child(6n+1), .collection-2 .grid--uniform-2 .large-up--three-twelfths:nth-child(4n+1), .collection-2 .grid--uniform-2 .large-up--four-twelfths:nth-child(3n+1), .collection-2 .grid--uniform-2 .large-up--six-twelfths:nth-child(2n+1) { clear: unset; }
}
@media only screen and (min-width: 1200px) { /* Whole */
	.widescreen--one-whole { width: 100%; }
	/* Halves */
	.widescreen--one-half { width: 50%; }
	/* Thirds */
	.widescreen--one-third { width: 33.33333%; }
	.widescreen--two-thirds { width: 66.66667%; }
	/* Quarters */
	.widescreen--one-quarter { width: 25%; }
	.widescreen--two-quarters { width: 50%; }
	.widescreen--three-quarters { width: 75%; }
	/* Fifths */
	.widescreen--one-fifth { width: 20%; }
	.widescreen--two-fifths { width: 40%; }
	.widescreen--three-fifths { width: 60%; }
	.widescreen--four-fifths { width: 80%; }
	/* Sixths */
	.widescreen--one-sixth { width: 16.66667%; }
	.widescreen--two-sixths { width: 33.33333%; }
	.widescreen--three-sixths { width: 50%; }
	.widescreen--four-sixths { width: 66.66667%; }
	.widescreen--five-sixths { width: 83.33333%; }
	/* Eighths */
	.widescreen--one-eighth { width: 12.5%; }
	.widescreen--two-eighths { width: 25%; }
	.widescreen--three-eighths { width: 37.5%; }
	.widescreen--four-eighths { width: 50%; }
	.widescreen--five-eighths { width: 62.5%; }
	.widescreen--six-eighths { width: 75%; }
	.widescreen--seven-eighths { width: 87.5%; }
	/* Tenths */
	.widescreen--one-tenth { width: 10%; }
	.widescreen--two-tenths { width: 20%; }
	.widescreen--three-tenths { width: 30%; }
	.widescreen--four-tenths { width: 40%; }
	.widescreen--five-tenths { width: 50%; }
	.widescreen--six-tenths { width: 60%; }
	.widescreen--seven-tenths { width: 70%; }
	.widescreen--eight-tenths { width: 80%; }
	.widescreen--nine-tenths { width: 90%; }
	/* Twelfths */
	.widescreen--one-twelfth { width: 8.33333%; }
	.widescreen--two-twelfths { width: 16.66667%; }
	.widescreen--three-twelfths { width: 25%; }
	.widescreen--four-twelfths { width: 33.33333%; }
	.widescreen--five-twelfths { width: 41.66667%; }
	.widescreen--six-twelfths { width: 50%; }
	.widescreen--seven-twelfths { width: 58.33333%; }
	.widescreen--eight-twelfths { width: 66.66667%; }
	.widescreen--nine-twelfths { width: 75%; }
	.widescreen--ten-twelfths { width: 83.33333%; }
	.widescreen--eleven-twelfths { width: 91.66667%; }
	.grid--uniform .widescreen--one-half:nth-child(2n+1), .grid--uniform .widescreen--one-third:nth-child(3n+1), .grid--uniform .widescreen--one-quarter:nth-child(4n+1), .grid--uniform .widescreen--one-fifth:nth-child(5n+1), .grid--uniform .widescreen--one-sixth:nth-child(6n+1), .grid--uniform .widescreen--two-sixths:nth-child(3n+1), .grid--uniform .widescreen--three-sixths:nth-child(2n+1), .grid--uniform .widescreen--one-eighth:nth-child(8n+1), .grid--uniform .widescreen--two-eighths:nth-child(4n+1), .grid--uniform .widescreen--four-eighths:nth-child(2n+1), .grid--uniform .widescreen--five-tenths:nth-child(2n+1), .grid--uniform .widescreen--one-twelfth:nth-child(12n+1), .grid--uniform .widescreen--two-twelfths:nth-child(6n+1), .grid--uniform .widescreen--three-twelfths:nth-child(4n+1), .grid--uniform .widescreen--four-twelfths:nth-child(3n+1), .grid--uniform .widescreen--six-twelfths:nth-child(2n+1) { clear: both; }
	.collection-2 .grid--uniform-2 .widescreen--one-half:nth-child(2n+1), .collection-2 .grid--uniform-2 .widescreen--one-third:nth-child(3n+1), .collection-2 .grid--uniform-2 .widescreen--one-quarter:nth-child(4n+1), .collection-2 .grid--uniform-2 .widescreen--one-fifth:nth-child(5n+1), .collection-2 .grid--uniform-2 .widescreen--one-sixth:nth-child(6n+1), .collection-2 .grid--uniform-2 .widescreen--two-sixths:nth-child(3n+1), .collection-2 .grid--uniform-2 .widescreen--three-sixths:nth-child(2n+1), .collection-2 .grid--uniform-2 .widescreen--one-eighth:nth-child(8n+1), .collection-2 .grid--uniform-2 .widescreen--two-eighths:nth-child(4n+1), .collection-2 .grid--uniform-2 .widescreen--four-eighths:nth-child(2n+1), .collection-2 .grid--uniform-2 .widescreen--five-tenths:nth-child(2n+1), .collection-2 .grid--uniform-2 .widescreen--one-twelfth:nth-child(12n+1), .collection-2 .grid--uniform-2 .widescreen--two-twelfths:nth-child(6n+1), .collection-2 .grid--uniform-2 .widescreen--three-twelfths:nth-child(4n+1), .collection-2 .grid--uniform-2 .widescreen--four-twelfths:nth-child(3n+1), .collection-2 .grid--uniform-2 .widescreen--six-twelfths:nth-child(2n+1) { clear: unset; }
}
@media only screen and (max-width: 767px) {
	.small--show { display: block !important; }
	.small--hide { display: none !important; }
	.small--text-left { text-align: left !important; }
	.small--text-right { text-align: right !important; }
	.small--text-center { text-align: center !important; }
	.small--bgNavy { background: #191919; padding: 1px 0; }
	.small--bgPink { background: #faebe3; padding: 1px 0; }
}
@media only screen and (min-width: 768px) {
	.medium-up--show { display: block !important; }
	.medium-up--hide { display: none !important; }
	.medium-up--text-left { text-align: left !important; }
	.medium-up--text-right { text-align: right !important; }
	.medium-up--text-center { text-align: center !important; }
	.medium-up--bgNavy { background: #191919; padding: 1px 0; }
	.medium-up--bgPink { background: #faebe3; padding: 1px 0;}
}
@media only screen and (max-width: 1023px) {
	.medium-down--show { display: block !important; }
	.medium-down--hide { display: none !important; }
	.medium-down--text-left { text-align: left !important; }
	.medium-down--text-right { text-align: right !important; }
	.medium-down--text-center { text-align: center !important; }
	.medium-down--bgNavy { background: #191919; padding: 1px 0; }
	.medium-down--bgPink { background: #faebe3; padding: 1px 0;}
}
@media only screen and (min-width: 1024px) {
	.large-up--show { display: block !important; }
	.large-up--hide { display: none !important; }
	.large-up--text-left { text-align: left !important; }
	.large-up--text-right { text-align: right !important; }
	.large-up--text-center { text-align: center !important; }
	.large-up--bgNavy { background: #191919; padding: 1px 0; }
	.large-up--bgPink { background: #faebe3; padding: 1px 0;}
}
@media only screen and (min-width: 1200px) {
	.widescreen--show { display: block !important; }
	.widescreen--hide { display: none !important; }
	.widescreen--text-left { text-align: left !important; }
	.widescreen--text-right { text-align: right !important; }
	.widescreen--text-center { text-align: center !important; }
	.widescreen--bgNavy { background: #191919; padding: 1px 0; }
	.widescreen--bgPink { background: #faebe3; padding: 1px 0;}
}
/*================ Build Grid Push Classes ================*/
@media only screen and (min-width: 768px) { /* Halves */
	.medium-up--push-one-half { left: 50%; }
	/* Thirds */
	.medium-up--push-one-third { left: 33.33333%; }
	.medium-up--push-two-thirds { left: 66.66667%; }
	/* Quarters */
	.medium-up--push-one-quarter { left: 25%; }
	.medium-up--push-two-quarters { left: 50%; }
	.medium-up--push-three-quarters { left: 75%; }
	/* Fifths */
	.medium-up--push-one-fifth { left: 20%; }
	.medium-up--push-two-fifths { left: 40%; }
	.medium-up--push-three-fifths { left: 60%; }
	.medium-up--push-four-fifths { left: 80%; }
	/* Sixths */
	.medium-up--push-one-sixth { left: 16.66667%; }
	.medium-up--push-two-sixths { left: 33.33333%; }
	.medium-up--push-three-sixths { left: 50%; }
	.medium-up--push-four-sixths { left: 66.66667%; }
	.medium-up--push-five-sixths { left: 83.33333%; }
	/* Eighths */
	.medium-up--push-one-eighth { left: 12.5%; }
	.medium-up--push-two-eighths { left: 25%; }
	.medium-up--push-three-eighths { left: 37.5%; }
	.medium-up--push-four-eighths { left: 50%; }
	.medium-up--push-five-eighths { left: 62.5%; }
	.medium-up--push-six-eighths { left: 75%; }
	.medium-up--push-seven-eighths { left: 87.5%; }
	/* Tenths */
	.medium-up--push-one-tenth { left: 10%; }
	.medium-up--push-two-tenths { left: 20%; }
	.medium-up--push-three-tenths { left: 30%; }
	.medium-up--push-four-tenths { left: 40%; }
	.medium-up--push-five-tenths { left: 50%; }
	.medium-up--push-six-tenths { left: 60%; }
	.medium-up--push-seven-tenths { left: 70%; }
	.medium-up--push-eight-tenths { left: 80%; }
	.medium-up--push-nine-tenths { left: 90%; }
	/* Twelfths */
	.medium-up--push-one-twelfth { left: 8.33333%; }
	.medium-up--push-two-twelfths { left: 16.66667%; }
	.medium-up--push-three-twelfths { left: 25%; }
	.medium-up--push-four-twelfths { left: 33.33333%; }
	.medium-up--push-five-twelfths { left: 41.66667%; }
	.medium-up--push-six-twelfths { left: 50%; }
	.medium-up--push-seven-twelfths { left: 58.33333%; }
	.medium-up--push-eight-twelfths { left: 66.66667%; }
	.medium-up--push-nine-twelfths { left: 75%; }
	.medium-up--push-ten-twelfths { left: 83.33333%; }
	.medium-up--push-eleven-twelfths { left: 91.66667%;}
}
@media only screen and (min-width: 1200px) { /* Halves */
	.widescreen--push-one-half { left: 50%; }
	/* Thirds */
	.widescreen--push-one-third { left: 33.33333%; }
	.widescreen--push-two-thirds { left: 66.66667%; }
	/* Quarters */
	.widescreen--push-one-quarter { left: 25%; }
	.widescreen--push-two-quarters { left: 50%; }
	.widescreen--push-three-quarters { left: 75%; }
	/* Fifths */
	.widescreen--push-one-fifth { left: 20%; }
	.widescreen--push-two-fifths { left: 40%; }
	.widescreen--push-three-fifths { left: 60%; }
	.widescreen--push-four-fifths { left: 80%; }
	/* Sixths */
	.widescreen--push-one-sixth { left: 16.66667%; }
	.widescreen--push-two-sixths { left: 33.33333%; }
	.widescreen--push-three-sixths { left: 50%; }
	.widescreen--push-four-sixths { left: 66.66667%; }
	.widescreen--push-five-sixths { left: 83.33333%; }
	/* Eighths */
	.widescreen--push-one-eighth { left: 12.5%; }
	.widescreen--push-two-eighths { left: 25%; }
	.widescreen--push-three-eighths { left: 37.5%; }
	.widescreen--push-four-eighths { left: 50%; }
	.widescreen--push-five-eighths { left: 62.5%; }
	.widescreen--push-six-eighths { left: 75%; }
	.widescreen--push-seven-eighths { left: 87.5%; }
	/* Tenths */
	.widescreen--push-one-tenth { left: 10%; }
	.widescreen--push-two-tenths { left: 20%; }
	.widescreen--push-three-tenths { left: 30%; }
	.widescreen--push-four-tenths { left: 40%; }
	.widescreen--push-five-tenths { left: 50%; }
	.widescreen--push-six-tenths { left: 60%; }
	.widescreen--push-seven-tenths { left: 70%; }
	.widescreen--push-eight-tenths { left: 80%; }
	.widescreen--push-nine-tenths { left: 90%; }
	/* Twelfths */
	.widescreen--push-one-twelfth { left: 8.33333%; }
	.widescreen--push-two-twelfths { left: 16.66667%; }
	.widescreen--push-three-twelfths { left: 25%; }
	.widescreen--push-four-twelfths { left: 33.33333%; }
	.widescreen--push-five-twelfths { left: 41.66667%; }
	.widescreen--push-six-twelfths { left: 50%; }
	.widescreen--push-seven-twelfths { left: 58.33333%; }
	.widescreen--push-eight-twelfths { left: 66.66667%; }
	.widescreen--push-nine-twelfths { left: 75%; }
	.widescreen--push-ten-twelfths { left: 83.33333%; }
	.widescreen--push-eleven-twelfths { left: 91.66667%;}
}
/*================ Partials | Helper Classes ================*/
[tabindex='-1']:focus { outline: none; }
html:not(.tab-outline) *:focus { outline: none; }
.display-table { display: table; table-layout: fixed; width: 100%; }
.display-table-cell { display: table-cell; vertical-align: middle; float: none; }
@media only screen and (min-width: 768px) {
	.medium-up--display-table { display: table; table-layout: fixed; width: 100%; }
	.medium-up--display-table-cell { display: table-cell; vertical-align: middle; float: none;}
}
.visually-hidden { clip: rect(0 0 0 0); clip: rect(0, 0, 0, 0); overflow: hidden; position: absolute; height: 1px; width: 1px; }
html { -ms-touch-action: manipulation; touch-action: manipulation; }
body { position: relative; background-color: #f2f0ed; color: #191919; font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: 300; font-size: 13px; line-height: 1.8; font-feature-settings: 'palt' 1; -webkit-font-kerning: normal; font-kerning: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overscroll-behavior: none; transition: background-color 2s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (max-width: 767px) {
	body { font-size: 12px;}
}
body:before { content: ""; position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; opacity: 0; background: url(../img/purpose_bg.jpg) center; background-size: cover; transition: opacity 2s cubic-bezier(0.19, 1, 0.22, 1); }
.is-bgPink body { background-color: #faebe3; }
.is-bgEarth body { background-color: #fdfbf7; }
.is-bgFire body { background-color: #fcf1ef; }
.is-bgAir body { background-color: #e9f0f6; }
.is-bgPurpose body { background-color: #faebe3; }
.is-bgPurpose body:before { opacity: 1; }
body.no-scroll { overflow: hidden; }
#xhr { position: relative; z-index: 1; }
.xhr-wrap { position: fixed; left: 0; top: 0; right: 0; bottom: 0; height: 100%; width: 100%; z-index: 1; }
.is-mobile .xhr-wrap { position: relative; bottom: auto; height: auto; }
.xhr-body { position: relative; width: 100%; min-height: 100vh; overflow: hidden; }
.is-mobile .xhr-body { min-height: auto; box-sizing: border-box; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; }
.ff { font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif !important; }
.ff-en { font-family: "Calibre", sans-serif; font-weight: 400; font-style: normal; }
.fw-1 { font-weight: 100 !important; }
.fw-4 { font-weight: 400 !important; }
.fw-5 { font-weight: 500 !important; }
.fw-7 { font-weight: 700 !important; }
strong, b { font-weight: 700; }
a { color: #191919; text-decoration: none; }
a:hover { color: #191919; }
a:active { color: #191919; }
.wrapper { max-width: 1800px; margin: 0 auto; }
.page-width { max-width: 1320px; margin: 0 auto; }
.page-width, .section-inner { position: relative; padding: 0 16px; }
@media only screen and (min-width: 768px) {
	.page-width, .section-inner { padding: 0 30px;}
}
@media only screen and (min-width: 1024px) {
	.page-width, .section-inner { padding: 0 40px;}
}
@media only screen and (min-width: 1200px) {
	.page-width, .section-inner { padding: 0 5vw;}
}
.section-inner__pd { position: relative; padding: 16px; }
@media only screen and (min-width: 768px) {
	.section-inner__pd { padding: 30px;}
}
@media only screen and (min-width: 1024px) {
	.section-inner__pd { padding: 40px;}
}
@media only screen and (min-width: 1200px) {
	.section-inner__pd { padding: 5vw;}
}
.inner--left { padding-left: 16px; }
@media only screen and (min-width: 768px) {
	.inner--left { padding-left: 30px;}
}
@media only screen and (min-width: 1024px) {
	.inner--left { padding-left: 40px;}
}
@media only screen and (min-width: 1200px) {
	.inner--left { padding-left: 5vw;}
}
.inner--right { padding-right: 16px; }
@media only screen and (min-width: 768px) {
	.inner--right { padding-right: 30px;}
}
@media only screen and (min-width: 1024px) {
	.inner--right { padding-right: 40px;}
}
@media only screen and (min-width: 1200px) {
	.inner--right { padding-right: 5vw;}
}
.space { display: block; height: 16px; }
@media only screen and (min-width: 768px) {
	.space { height: 30px;}
}
@media only screen and (min-width: 1024px) {
	.space { height: 40px;}
}
@media only screen and (min-width: 1200px) {
	.space { height: 60px;}
}
.space.x2 { height: 32px; }
@media only screen and (min-width: 768px) {
	.space.x2 { height: 60px;}
}
@media only screen and (min-width: 1024px) {
	.space.x2 { height: 80px;}
}
@media only screen and (min-width: 1200px) {
	.space.x2 { height: 120px;}
}
.space.x05 { height: 16px; }

.space--small { height: 16px; }
@media only screen and (min-width: 768px) {
	.space--small { height: 30px;}
}
@media only screen and (max-width: 767px) {
	.page-width--flush-small { padding: 0;}
}
.section { margin: 40px auto; }
@media only screen and (min-width: 768px) {
	.section { margin: 75px auto;}
}
@media only screen and (min-width: 1024px) {
	.section { margin: 100px auto;}
}
@media only screen and (min-width: 1200px) {
	.section { margin: 120px auto;}
}
.section.mt0 { margin-top: 0; }
.section.mb0 { margin-bottom: 0; }
.section-s { margin: 16px 0; }
@media only screen and (min-width: 768px) {
	.section-s { margin: 30px 0;}
}
@media only screen and (min-width: 1024px) {
	.section-s { margin: 40px 0;}
}
@media only screen and (min-width: 1200px) {
	.section-s { margin: 5vw 0;}
}
.bgBody { position: relative; background-color: #f2f0ed; padding: 1px 0; }
.bgWhite { position: relative; background-color: #ffffff; }
.bgPink { position: relative; background-color: #faebe3; padding: 1px 0; }
.bgNavy { position: relative; background-color: #191919; padding: 1px 0; }
.is-mobile .mobile--bgNavy { background-color: #191919; padding: 1px 0; }
.is-mobile .mobile--bgPink { background-color: #faebe3; padding: 1px 0; }
.is-mobile .mobile--bgPurpose { background: #faebe3 url(../img/purpose_bg.jpg) center; background-size: cover; }
#content { padding-top: 1px; }
.fs-xl { display: block; line-height: 1.1; font-family: "Calibre", sans-serif; font-size: 50px; font-weight: 100; letter-spacing: 1px; }
@media only screen and (min-width: 768px) {
	.fs-xl { font-size: 90px; letter-spacing: 3px;}
}
@media only screen and (min-width: 1024px) {
	.fs-xl { font-size: 120px; letter-spacing: 4px; line-height: 1;}
}
.fs-l { display: block; line-height: 1.1; font-family: "Calibre", sans-serif; font-size: 34px; font-weight: 100; letter-spacing: 1px; }
@media only screen and (min-width: 768px) {
	.fs-l { font-size: 70px; letter-spacing: 3px;}
}
@media only screen and (min-width: 1024px) {
	.fs-l { font-size: 85px; letter-spacing: 4px; line-height: 1;}
}
.fs-m { display: block; line-height: 1.1; font-family: "Calibre", sans-serif; font-size: 26px; font-weight: 100; letter-spacing: 1px; }
@media only screen and (min-width: 768px) {
	.fs-m { font-size: 40px;}
}
@media only screen and (min-width: 1024px) {
	.fs-m { font-size: 45px; line-height: 1;}
}
.fs-s2 { display: block; line-height: 1.4; font-size: 16px; letter-spacing: 1px; }
@media only screen and (min-width: 768px) {
	.fs-s2 { font-size: 18px;}
}
@media only screen and (min-width: 1024px) {
	.fs-s2 { font-size: 24px;}
}
.fs-s { display: block; line-height: 1.4; font-size: 16px; font-weight: 300; letter-spacing: 1px; }
@media only screen and (min-width: 768px) {
	.fs-s { font-size: 18px;}
}
@media only screen and (min-width: 1024px) {
	.fs-s { font-size: 20px;}
}
/*================ Common Style ================*/
.btn-wrap { display: block; font-size: 0; }
.btn { position: relative; overflow: hidden; display: inline-block; padding: 5px 20px; box-shadow: 0 0 0 1px #191919 inset; line-height: 1.4; font-size: 12px; font-weight: 500; letter-spacing: 1px; text-align: center; font-family: "Calibre", sans-serif; }
.btn:before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: #191919; transform: scaleY(0); transform-origin: center top; transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.btn.btn--blank:after { content: ""; position: absolute; right: 5px; top: 5px; width: 10px; height: 8px; background-image: url(../img/icon_blank.svg); background-size: cover; }
@media only screen and (min-width: 1024px) {
	.btn.btn--blank:hover:after { background-image: url(../img/icon_blank-pk.svg);}
}
.btn span { position: relative; display: block; z-index: 2; color: #191919; transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.btn svg { position: absolute; z-index: 2; fill: #191919; transition: fill 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.btn .icon-blank { right: 7px; top: 7px; width: 10px; height: 8px; }
@media only screen and (min-width: 1200px) {
	.btn { font-size: 14px;}
}
.btn.btn--mini { padding: 5px 10px; font-size: 11px; }
.btn.btn--large { padding: 10px 30px; font-size: 13px; }
@media only screen and (min-width: 1024px) {
	.btn.btn--large { padding: 15px 45px; font-size: 16px;}
}
.btn.btn--wh { box-shadow: 0 0 0 1px #fff inset; }
.btn.btn--wh:before { background-color: #fff; }
.btn.btn--wh span { color: #fff; }
.btn.btn--wh svg { fill: #fff; }
.btn.btn--pink { box-shadow: 0 0 0 1px #faebe3 inset; }
.btn.btn--pink:before { background-color: #faebe3; }
.btn.btn--pink span { color: #faebe3; }
.btn.btn--pink svg { fill: #faebe3; }
.btn.btn--purpose { background: url(../img/purpose_bg.jpg) center; background-size: cover; }
@media only screen and (min-width: 1024px) {
	.btn { padding: 10px 30px; font-size: 13px; }
	.btn:hover:before { left: 0%; transform: scaleY(1); transform-origin: center bottom; }
	.btn:hover span { color: #faebe3; }
	.is-bgNavy .btn:hover span { color: #141c27; }
	.btn:hover svg { fill: #faebe3; }
	.is-bgNavy .btn:hover svg { fill: #141c27; }
	.btn.btn--wh:hover span, .btn.btn--pink:hover span { color: #191919;}
}
.more-btn { position: relative; overflow: hidden; display: inline-block; padding: 6px 40px 6px 0; }
@media only screen and (min-width: 768px) {
	.more-btn { padding: 10px 50px 10px 0;}
}
.more-btn.more-btn--border { padding-left: 25px; box-shadow: 0 0 1px #191919 inset; border-radius: 30px; }
.more-btn.more-btn--pink { color: #faebe3; }
.more-btn__text { display: block; line-height: 20px; font-size: 12px; letter-spacing: 1px; font-weight: 500; }
@media only screen and (min-width: 768px) {
	.more-btn__text { font-size: 13px;}
}
@media only screen and (min-width: 1200px) {
	.more-btn__text { font-size: 14px;}
}
.more-btn__arrow { position: absolute; top: 0; right: 0; display: block; width: 32px; height: 32px; }
@media only screen and (min-width: 768px) {
	.more-btn__arrow { width: 40px; height: 40px;}
}
.more-btn__arrow .circle-component { position: absolute; left: 0; top: 0; display: block; width: 32px; height: 32px; border-radius: 100%; }
@media only screen and (min-width: 768px) {
	.more-btn__arrow .circle-component { width: 40px; height: 40px;}
}
.more-btn__arrow .circle-component.circle--small { left: 2px; top: 2px; width: 28px; height: 28px; }
@media only screen and (min-width: 768px) {
	.more-btn__arrow .circle-component.circle--small { left: 3px; top: 3px; width: 34px; height: 34px;}
}
.more-btn__arrow .circle-component .circle-part { opacity: .33; }
.more-btn__arrow img { position: absolute; left: 50%; top: 50%; display: block; width: 16px; height: 16px; margin: -8px 0 0 -8px; }
@media only screen and (min-width: 768px) {
	.more-btn__arrow img { width: 20px; height: 20px; margin: -10px 0 0 -10px;}
}
.more-btn__arrow img.o { opacity: 0; transform: translateY(10px); }
.io .more-btn__arrow img { opacity: 0; transform: translateY(10px); transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.io.on .more-btn__arrow img { opacity: 1; transform: translateY(0); }
.circle-window--left { position: absolute; height: 100%; width: 50%; top: 0px; left: 0px; overflow: hidden; }
.circle-window--right { position: absolute; height: 100%; width: 50%; right: 0px; top: 0px; overflow: hidden; }
.circle-part--left { position: absolute; left: 1px; height: calc(100% - 2px); width: calc(200% - 2px); border-top: 1px solid #191919; border-right: 1px solid #191919; border-bottom: 1px solid transparent; border-left: 1px solid transparent; border-radius: 50%; top: 1px; box-sizing: border-box; z-index: 20; -moz-transform: rotate(45deg); -o-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.io .circle-part--left { transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.io.on .circle-part--left { -moz-transform: rotate(225deg); -o-transform: rotate(225deg); -ms-transform: rotate(225deg); -webkit-transform: rotate(225deg); transform: rotate(225deg); }
.more-btn--pink .circle-part--left { border-color: #faebe3; }
.circle-part--right { position: absolute; height: calc(100% - 2px); width: calc(200% - 2px); left: calc(-100% + 1px); top: 1px; border-top: 1px solid transparent; border-right: 1px solid transparent; border-bottom: 1px solid #191919; border-left: 1px solid #191919; border-radius: 50%; -moz-transform: rotate(45deg); -o-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); box-sizing: border-box; z-index: 20; }
.io .circle-part--right { transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.io.on .circle-part--right { -moz-transform: rotate(225deg); -o-transform: rotate(225deg); -ms-transform: rotate(225deg); -webkit-transform: rotate(225deg); transform: rotate(225deg); }
.more-btn--pink .circle-part--right { border-color: #faebe3; }
.btn--back { padding: 10px 30px 10px 60px; font-size: 13px; }
.btn--back .arrow-back { position: absolute; left: 15px; top: 50%; margin-top: -15px; width: 30px; height: 30px; overflow: hidden; }
.btn--back .arrow-back span { display: block; width: 100%; height: 100%; background: url(../img/icon-arrow-back.svg) center no-repeat; background-size: contain; }
@media only screen and (min-width: 1024px) {
	.btn--back { padding: 15px 45px 15px 70px; font-size: 16px; }
	.btn--back:hover .arrow-back span { animation: ArrowBack .5s ease; background-image: url(../img/icon-arrow-back--pink.svg); }
	.is-bgNavy .btn--back:hover .arrow-back span { background-image: url(../img/icon-arrow-back--navy.svg);}
}
.line-btn { position: relative; overflow: hidden; display: inline-block; padding: 3px 0 5px; line-height: 1.4; font-size: 13px; font-weight: 400; font-family: "Calibre", sans-serif; letter-spacing: 1px; }
.line-btn:before, .line-btn:after { content: ""; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background-color: #191919; transform: scaleX(0); transform-origin: right center; transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.line-btn:before { transform: scaleX(1); transform-origin: left center; transition: transform 0.45s 0.15s cubic-bezier(0.19, 1, 0.22, 1); }
.line-btn:after { transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.line-btn span { position: relative; display: block; z-index: 2; color: #191919; }
.line-btn svg { position: absolute; z-index: 2; fill: #191919; }
.line-btn.line-btn--hasicon { padding-right: 14px !important; }
.line-btn .icon-blank { right: 0; top: 2px; width: 10px; height: 8px; }
@media only screen and (min-width: 1024px) {
	.line-btn { font-size: 14px; }
	.line-btn:hover:before { transform: scaleX(0); transform-origin: right center; transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
	.line-btn:hover:after { transform: scaleX(1); transform-origin: left center; transition: transform 0.45s 0.15s cubic-bezier(0.19, 1, 0.22, 1);}
}
.line-btn.line-btn--wh:before, .line-btn.line-btn--wh:after { background-color: #fff; }
.line-btn.line-btn--wh span { color: #fff; }
.line-btn.line-btn--wh svg { fill: #fff; }
.line-btn.line-btn--pk:before, .line-btn.line-btn--pk:after { background-color: #faebe3; }
.line-btn.line-btn--pk span { color: #faebe3; }
.line-btn.line-btn--pk svg { fill: #faebe3; }
.line-btn.line-btn--large { letter-spacing: 0; font-size: 14px; }
@media only screen and (min-width: 1024px) {
	.line-btn.line-btn--large { font-size: 16px;}
}
.media { height: 0; line-height: 0; overflow: hidden; padding-bottom: 56.25%; position: relative; width: 100%; }
.io .media:after { content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: #fff; transform-origin: 0 0; }
.bgNavy .io .media:after { background: #faebe3; }
.is-bgNavy .io .media:after { background: #faebe3; }
.io.on .media:after { transition: transform 1s 0.1s cubic-bezier(0.19, 1, 0.22, 1), background 3s cubic-bezier(0.19, 1, 0.22, 1); transform: scaleY(0); }
.io .media .media__image, .io .media .media__video { opacity: 0; transform: scale(1.3); }
.io.on .media .media__image, .io.on .media .media__video { opacity: 1; transform: scale(1); transition: 3s 0.2s cubic-bezier(0.19, 1, 0.22, 1); }
.media--cover { position: absolute; left: 0; top: 0; height: 100%; padding-bottom: 0; }
.media--square { padding-bottom: 100%; }
.media--banner { padding-bottom: 33.3333%; }
.media--rect { padding-bottom: 66.6666%; }
.media--portrait { padding-bottom: 133.3333%; }
.media--mov { padding-bottom: 56.25%; }
.media--mov.media--movshort { padding-bottom: 42.5%; }
.media--mov.media--movport { padding-bottom: 150%; }
.media__image, .media__video, .media__noscript { position: absolute; width: 100%; height: 100%; top: 0; left: 0; -o-object-fit: cover; object-fit: cover; font-family: 'object-fit: contain;'; }
.media__image img, .media__noscript img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; font-family: 'object-fit: contain;'; }
.media iframe { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
.media__video video { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
.is-ie .media__video video { height: auto; }
.media__video video::-webkit-media-controls { display: none; }
.js-modal-video .media__video:before, .js-modal-video .media__video:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; width: 60px; height: 60px; border: 1px solid #fff; border-radius: 50%; pointer-events: none; z-index: 2; transition: all 1s ease; }
.js-modal-video .media__video:before { background: rgba(0, 0, 0, 0.1) url(../img/icon-play.svg?) center; background-size: 60px 60px; }
.js-modal-video .media__video:after { width: 54px; height: 54px; }
@media only screen and (min-width: 1024px) {
	.js-modal-video .media__video:before, .js-modal-video .media__video:after { opacity: 0; }
	.js-modal-video .media__video:before { width: 80px; height: 80px; }
	.js-modal-video .media__video:after { width: 74px; height: 74px; }
	.js-modal-video:hover .media__video:before, .js-modal-video:hover .media__video:after { opacity: 1; transform: scale(1.1);}
}
.sec-hr { background: #191919; opacity: .5; border: none; width: 100%; height: 1px; }
.modal-video { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); z-index: 9999; overflow: hidden; display: none; }
.modal-video-close-btn { position: absolute; top: 30px; right: 30px; width: 50px; height: 50px; border-radius: 50%; cursor: pointer; z-index: 3; }
.modal-video-close-btn-line { display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; width: 30px; height: 1px; background: #fff; }
.modal-video-close-btn-line.line-1 { transform: rotate(45deg); }
.modal-video-close-btn-line.line-2 { transform: rotate(-45deg); }
.modal-video-wrap { position: relative; width: 100%; max-width: 62.5vw; height: 100%; margin: 0 auto; padding: 50px; z-index: 1; }
.modal-video-body { display: flex; justify-content: center; align-items: center; align-content: center; position: relative; width: 100%; height: 100%; }
.modal-video-ratio { position: relative; display: block; width: 100%; padding-top: 56.25%; }
.modal-video-iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.modal-video-loader { position: absolute; top: 50%; left: 50%; margin: -25px 0 0 -25px; width: 50px; height: 50px; background: #ede3cb; border-radius: 50%; z-index: 0; animation: modal-loader 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s infinite forwards; }
@media only screen and (max-width: 767px) {
	.modal-video-wrap { max-width: 100%; padding: 0; }
	.modal-video-close-btn { right: 10px; top: 10px; width: 40px; height: 40px;}
}
@keyframes modal-loader { 0% { transform: scale(0); opacity: 1; }
	100% { transform: scale(1); opacity: 0;}
}
.modal-text { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #fff; z-index: 99999; overflow: hidden; display: none; }
.modal-text-inner { visibility: hidden; opacity: 1; }
.modal-text .modal-text-inner { visibility: visible; opacity: 1; }
.modal-text-close-btn { position: absolute; top: 40px; right: 40px; width: 50px; height: 50px; border-radius: 50%; cursor: pointer; z-index: 3; }
.modal-text-close-btn-line { display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; width: 30px; height: 1px; background: #191919; }
.modal-text-close-btn-line.line-1 { transform: rotate(45deg); }
.modal-text-close-btn-line.line-2 { transform: rotate(-45deg); }
.modal-text-wrap { position: absolute; left: 0; top: 50%; width: 100%; max-height: 100%; margin: 0 auto; padding: 50px; transform: translateY(-50%); }
.modal-text-body { color: #fff; width: 90%; max-width: 800px; margin: 0 auto; }
.modal-text-body h2 { font-size: 3rem; font-weight: 300; letter-spacing: 1px; margin-bottom: 10px; }
.modal-text-body h2 span { font-size: 2.4rem; }
.modal-text-body h4 { font-size: 1.4rem; }
.modal-text-body hr { border: none; width: 100%; height: 1px; background: rgba(255, 255, 255, 0.4); margin: 25px 0; }
.modal-text-body .img { width: 45%; float: left; }
.modal-text-body .text { width: 50%; float: right; }
@media only screen and (max-width: 767px) {
	.modal-text-wrap { padding: 40px 0; }
	.modal-text-close-btn { right: 10px; top: 10px; width: 40px; height: 40px; }
	.modal-text-body h2 { font-size: 2.4rem; }
	.modal-text-body .img { width: 100%; margin-bottom: 30px; }
	.modal-text-body .text { width: 100%;}
}
@media (min-width: 769px) and (max-width: 9999px) { #modalRegion { height: 100%; }
	#modalRegion .modalElement { height: 100%; background: url(../img/modal/region_bg.png) 50% 50% no-repeat; z-index: 10; }
	#region { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; }
	#region .head .ttl { margin: 0 0 50px; text-align: center; font-size: 22px; line-height: 1; letter-spacing: .3em; font-family: Calibre,sans-serif; }
	#region .head .txt { display: none; }
	#region .body { position: relative; width: 770px; margin: 0 auto; }
	#region .regionList { margin: 0 0 30px; }
	#region .regionList:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
	#region .regionList .detailNone span, #region .regionList p { margin: 0 0 10px; font-size: 16px; line-height: 1.4; letter-spacing: .1em; font-weight: 400; font-family: Calibre,sans-serif; }
	#region .regionList li { width: 215px; float: left; margin: 0 0 5px; font-size: 12px; font-weight: 400; letter-spacing: .1em; font-family: Calibre,sans-serif; }
	#region .regionList li a { position: relative; }
	#region .regionList li a::after { position: absolute; bottom: -4px; left: 50%; content: ''; width: 0; height: 1px; background: #000; transition: .3s; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
	#region .regionList li a:hover::after { width: 100%; }
	#region .regionList .region03 { position: absolute; top: 50px; left: 215px; }
	#region .regionList .region04 { position: absolute; top: 140px; left: 215px; }
	#region .regionList .region06 { width: 125px; }
	#region .txtNote { font-size: 10px; letter-spacing: .15em; text-align: center; }
	#modalRegion .menu_close_pc { position: absolute; top: 40px; right: 45px; font-size: 12px; letter-spacing: .2em; }
	#modalRegion .menu_close_pc span { position: relative; }
	#modalRegion .menu_close_pc span:before { position: absolute; top: 1.7em; left: 0; content: ""; display: inline-block; width: 100%; height: 1px; background: #000; transition: .3s;}
}
@media (min-width: 769px) and (max-width: 900px) { #region .body { width: 680px; }
	#region .regionList li { width: 185px; float: left; margin: 0 0 17px; font-size: 11px; letter-spacing: .2em; }
	#region .regionList .region01 { width: 175px; }
	#region .regionList .region03 { left: 175px; }
	#region .regionList .region04 { position: absolute; left: 175px;}
}
@media screen and (max-width: 768px) { #modalRegion .modalElement { display: block; }
	#region { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; }
	#region .head { position: relative; padding: 60% 0 0; background: url(../img/modal/regions_head_bg.jpg) 0 0/cover no-repeat; }
	#region .head_inner { position: absolute; top: 55%; left: 50%; width: 100%; text-align: center; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
	#region .head .ttl { margin: 0 0 10.1%; font-size: 5.6vw; letter-spacing: .3em; line-height: 125%; font-family: Calibre,sans-serif; }
	#region .head .txt { font-size: 2.5vw; line-height: 150%; letter-spacing: .15em; }
	#region .regionList .region p, #region .regionList .region.detailNone span { position: relative; cursor: pointer; padding: 5.6% 7.8125%; font-size: 4.37vw; letter-spacing: .3em; border-bottom: 1px solid #f1f2f3; box-sizing: border-box; font-family: Calibre,sans-serif; }
	#region .regionList .region.detailNone span { display: block; }
	#region .regionList .region p:after { display: block; position: absolute; right: 5.47%; top: 50%; content: ""; width: 3%; height: auto; padding: 3% 0 0; background-image: url(../img/modal/icn_menu_arrow.png); background-size: contain; margin-top: -1.5%; }
	#region .regionList .region p.active:after { background-image: url(../img/modal/icn_menu_arrow_open.png); background-size: contain; }
	#region .regionList .region.detailNone span:after { display: block; position: absolute; right: 5%; top: 50%; content: ""; width: 3.4%; height: auto; padding: 3.4% 0 0; background-image: url(../img/modal/icn_menu_arrow_single.png); background-size: contain; margin-top: -1.7%; }
	.countryList { display: none; }
	#region .regionList .region p.active + .countryList { display: block; }
	#region .countryList a { position: relative; padding: 5.6% 10.93%; font-size: 3.43vw; letter-spacing: .15em; line-height: 100%; box-sizing: border-box; display: block; background: #f1f2f3; font-family: Calibre,sans-serif; }
	#region .countryList li + li { border-top: 1px solid #ddd; }
	#modalRegion .menu_close_pc, #region .txtNote { display: none;}
}
#modalDisclosure { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; background: #eee; }
#modalDisclosure .modalElement { position: relative; width: 90%; max-width: 980px; margin: 50px auto; }
#modalDisclosure table { width: 892px; font-size: 86%; box-sizing: border-box; border-collapse: collapse; border-bottom: 1px solid #fff; letter-spacing: .1em; background-color: rgba(255, 255, 255, 0.3); }
#modalDisclosure table .table-head { text-align: center; padding: 14px 0; font-size: 129%; letter-spacing: .2em; background-color: rgba(255, 255, 255, 0.5); }
#modalDisclosure table tr { border-top: 1px solid #fff; }
#modalDisclosure table th { font-weight: 500; width: 287px; padding: 14px 0 14px 48px; }
#modalDisclosure table td { width: 604px; }
#modalDisclosure .cont { padding: 10px 0; }
#modalDisclosure h1 { padding: 0 0 15px; margin: 0 0 30px; text-align: center; font-size: 20px; font-weight: 500; border-bottom: 1px solid #fff; }
#modalDisclosure p { padding: 0 0 20px; }
#modalDisclosure p.model { font-family: Calibre,sans-serif; }
#modalDisclosure p.btn { padding: 5px 10px; }
#modalDisclosure dt { font-weight: 500; }
#column2 table { width: 100%; letter-spacing: .2em; }
#column2 .col2_table1 { margin: 0 0 30px; font-size: 10px; }
#column2 .col2_table1 th { padding-left: 0; font-size: 10px; }
#column2 .col2_table1 td { padding: 10px 20px; }
#column2 .col2_table1 thead th { border-right: 1px solid #f8f8f8; font-weight: 500; background-color: rgba(255, 255, 255, 0.8); }
#column2 .col2_table1 tbody th { text-align: center; font-weight: 500; border-right: 1px solid #fff; background-color: rgba(255, 255, 255, 0.4); }
#column2 .col2_table1 tbody th:nth-child(3) { width: 27%; }
#column2 .col2_table1 tbody td { text-align: center; border-right: 1px solid #fff; }
#column2 .col2_table1 tbody td.txtLeft { text-align: left; }
#column2 .specsList { width: 100%; margin: 0 0 9.26%; font-size: 80%; border: 1px solid #fff; background-color: rgba(255, 255, 255, 0.15); }
#column2 .specsList .head { width: 23%; font-weight: 500; letter-spacing: .1em; background-color: rgba(255, 255, 255, 0.8); }
#column2 .specsList .first { width: 25%; letter-spacing: .1em; font-weight: 500; background-color: rgba(255, 255, 255, 0.6); }
#column2 .specsList th { padding: 10% 2%; box-sizing: border-box; }
#column2 .specsList td { padding: 10% 3%; box-sizing: border-box; line-height: 150%; border-bottom: 1px solid #fff; }
#column2 table.lineupListWrap th { padding: 30px 0; text-align: center; font-weight: 500; font-size: 12px; letter-spacing: .2em; border: 1px solid #fff; background-color: rgba(255, 255, 255, 0.8); }
#column2 table.lineupListWrap td { padding: 55px 0 50px; border: 1px solid #fff; }
#column3 .note { padding: 0 0 60px; }
#column3 .typeList li { text-align: center; box-shadow: 0 0 0 1px #fff; background: #eee; box-sizing: border-box; }
#column3 .typeList h4 { padding: 15px 0 10px; font-size: 10px; line-height: 200%; font-weight: 500; background-color: rgba(255, 255, 255, 0.8); }
#column3 .typeList h4 span { font-weight: 500; font-size: 14px; }
#column3 .typeList .typeimg { padding: 25px 0 20px; border-bottom: 1px solid #fff; }
#column3 .typeList .typeimg_column02 { width: 90%; margin: 0 auto; }
#column3 .typeList .typeimg_column02:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
#column3 .typeList .typeimg_column02 > div { width: 50%; float: left; }
#column3 .typeList .typeimg .model { padding: 0; font-family: Calibre,sans-serif; }
#column3 .typeList .othermodel { padding: 25px 0 30px; }
#column3 .typeList .othermodel .txt { padding: 0 0 5px; font-size: 10px; font-weight: 500; }
#column3 .typeList .othermodel .model { font-size: 10px; font-weight: 500; line-height: 170%; }
#column3 .note_co2 { padding: 18px 0 0; font-size: 10px; }
.gridList { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; }
.gridList li { width: 16.6666%; text-align: center; margin-bottom: 20px; }
@media only screen and (max-width: 767px) {
	.gridList li { width: 33.3333%;}
}
.typeList { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; }
.typeList li { width: 25%; text-align: center; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: stretch; align-items: stretch; text-align: center; }
@media only screen and (max-width: 767px) {
	.typeList li { width: 50%;}
}
.io { -webkit-transform: translate(0, 50px); transform: translate(0, 50px); opacity: 0; -webkit-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1); transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), transform 1s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (max-width: 767px) {
	.io { -webkit-transform: translate(0, 0); transform: translate(0, 0);}
}
.io.on { -webkit-transform: translate(0px, 0px); transform: translate(0px, 0px); opacity: 1; }
.io-o span.o { -webkit-transform: translate(-20px, 0); transform: translate(-20px, 0); opacity: 0; -webkit-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1); transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), transform 1s cubic-bezier(0.19, 1, 0.22, 1); }
.io-o p.o { -webkit-transform: translate(0, 20px); transform: translate(0, 20px); opacity: 0; -webkit-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1); transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), transform 1s cubic-bezier(0.19, 1, 0.22, 1); }
.io-o span.o:nth-child(1) { transition-delay: 0ms; }
.io-o p.o:nth-child(1) { transition-delay: 60ms; }
.io-o span.o:nth-child(2) { transition-delay: 30ms; }
.io-o p.o:nth-child(2) { transition-delay: 120ms; }
.io-o span.o:nth-child(3) { transition-delay: 60ms; }
.io-o p.o:nth-child(3) { transition-delay: 180ms; }
.io-o span.o:nth-child(4) { transition-delay: 90ms; }
.io-o p.o:nth-child(4) { transition-delay: 240ms; }
.io-o span.o:nth-child(5) { transition-delay: 120ms; }
.io-o p.o:nth-child(5) { transition-delay: 300ms; }
.io-o span.o:nth-child(6) { transition-delay: 150ms; }
.io-o p.o:nth-child(6) { transition-delay: 360ms; }
.io-o span.o:nth-child(7) { transition-delay: 180ms; }
.io-o p.o:nth-child(7) { transition-delay: 420ms; }
.io-o span.o:nth-child(8) { transition-delay: 210ms; }
.io-o p.o:nth-child(8) { transition-delay: 480ms; }
.io-o span.o:nth-child(9) { transition-delay: 240ms; }
.io-o p.o:nth-child(9) { transition-delay: 540ms; }
.io-o span.o:nth-child(10) { transition-delay: 270ms; }
.io-o p.o:nth-child(10) { transition-delay: 600ms; }
.io-o span.o:nth-child(11) { transition-delay: 300ms; }
.io-o p.o:nth-child(11) { transition-delay: 660ms; }
.io-o span.o:nth-child(12) { transition-delay: 330ms; }
.io-o p.o:nth-child(12) { transition-delay: 720ms; }
.io-o span.o:nth-child(13) { transition-delay: 360ms; }
.io-o p.o:nth-child(13) { transition-delay: 780ms; }
.io-o span.o:nth-child(14) { transition-delay: 390ms; }
.io-o p.o:nth-child(14) { transition-delay: 840ms; }
.io-o span.o:nth-child(15) { transition-delay: 420ms; }
.io-o p.o:nth-child(15) { transition-delay: 900ms; }
.io-o span.o:nth-child(16) { transition-delay: 450ms; }
.io-o p.o:nth-child(16) { transition-delay: 960ms; }
.io-o span.o:nth-child(17) { transition-delay: 480ms; }
.io-o p.o:nth-child(17) { transition-delay: 1020ms; }
.io-o span.o:nth-child(18) { transition-delay: 510ms; }
.io-o p.o:nth-child(18) { transition-delay: 1080ms; }
.io-o span.o:nth-child(19) { transition-delay: 540ms; }
.io-o p.o:nth-child(19) { transition-delay: 1140ms; }
.io-o span.o:nth-child(20) { transition-delay: 570ms; }
.io-o p.o:nth-child(20) { transition-delay: 1200ms; }
.io-o span.o:nth-child(21) { transition-delay: 600ms; }
.io-o p.o:nth-child(21) { transition-delay: 1260ms; }
.io-o span.o:nth-child(22) { transition-delay: 630ms; }
.io-o p.o:nth-child(22) { transition-delay: 1320ms; }
.io-o span.o:nth-child(23) { transition-delay: 660ms; }
.io-o p.o:nth-child(23) { transition-delay: 1380ms; }
.io-o span.o:nth-child(24) { transition-delay: 690ms; }
.io-o p.o:nth-child(24) { transition-delay: 1440ms; }
.io-o span.o:nth-child(25) { transition-delay: 720ms; }
.io-o p.o:nth-child(25) { transition-delay: 1500ms; }
.io-o span.o:nth-child(26) { transition-delay: 750ms; }
.io-o p.o:nth-child(26) { transition-delay: 1560ms; }
.io-o span.o:nth-child(27) { transition-delay: 780ms; }
.io-o p.o:nth-child(27) { transition-delay: 1620ms; }
.io-o span.o:nth-child(28) { transition-delay: 810ms; }
.io-o p.o:nth-child(28) { transition-delay: 1680ms; }
.io-o span.o:nth-child(29) { transition-delay: 840ms; }
.io-o p.o:nth-child(29) { transition-delay: 1740ms; }
.io-o.on .o { -webkit-transform: translate(0px, 0px); transform: translate(0px, 0px); opacity: 1; }
.w-o { padding-right: 0.25em; overflow: hidden; }
.w-o:last-child { padding-right: 0; }
.w-o .o { overflow: hidden; }
.js-b-show .w-o .o { opacity: 0; transform: translate(0%, 30px); }
.js-w-show .w-o .o { opacity: 0; transform: translate(0%, -30px); }
.js-b-show.js-char .w-o .o { opacity: 0; transform: translate(0%, 100%); }
.js-s-show .w-o .o { opacity: 0; transform: translate(0%, 100%); }
.js-words span, .js-char span { display: inline-block; vertical-align: top; }
.js-show { opacity: 0; transform: translate(0%, 50px); }
/*
██╗  ██╗███████╗ █████╗ ██████╗ ███████╗██████╗
██║  ██║██╔════╝██╔══██╗██╔══██╗██╔════╝██╔══██╗
███████║█████╗  ███████║██║  ██║█████╗  ██████╔╝
██╔══██║██╔══╝  ██╔══██║██║  ██║██╔══╝  ██╔══██╗
██║  ██║███████╗██║  ██║██████╔╝███████╗██║  ██║
╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚═════╝ ╚══════╝╚═╝  ╚═╝
*/
.site-header { position: relative; z-index: 999; }
.site-header a { color:#fff; }
.header__bg { position: fixed; left: 0; top: 0; width: 100%; height: 60px; background-color: #000; }
@media only screen and (min-width: 1024px) {
	.header__bg { height: 85px; transform: scaleY(0); transform-origin: 0 0; transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1), background-color 2s cubic-bezier(0.19, 1, 0.22, 1); }
}
.header__bg.is-show { transform: scaleY(1); }
.is-header-hide .header__bg { transform: scaleY(0); }
.is-header-hide.is-header-sticky .header__bg { transform: scaleY(1); }
.header__logo { position: fixed; top: 5px; left: 50%; margin-left: -75px; width: 150px; height: 50px; display: block; z-index: 15; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide .header__logo { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide.is-header-sticky .header__logo { opacity: 1; visibility: visible; transform: translateY(0); }
@media only screen and (min-width: 768px) { .header__logo { top: 0; margin-left: -90px; width: 180px; height: 60px; } }
@media only screen and (min-width: 1024px) { .header__logo { top: 2px; margin-left: -120px; width: 240px; height: 80px; } }
.header__logo svg { fill: #333; width: 100%; height: 100%; }
.header__logo img { display: block; width: 100%; height: 100%; }
.header__left a, .header__center a { display: inline-block; margin: 0 10px; }
@media only screen and (min-width: 1200px) {
	.header__left a, .header__center a { margin: 0 12px;}
}
.header__left a:not(.btn), .header__center a:not(.btn) { position: relative; font-size: 12px; font-weight: 400; letter-spacing: 1px; }
.header__left a:not(.btn):before, .header__center a:not(.btn):before { content: ""; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background-color: #191919; transform: scaleX(0); transform-origin: right center; transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.header__left a:not(.btn).is-active:before, .header__center a:not(.btn).is-active:before { transform: scaleX(1); transform-origin: left center; }
@media only screen and (min-width: 1024px) {
	.header__left a:not(.btn):hover:before, .header__center a:not(.btn):hover:before { transform: scaleX(1); transform-origin: left center;}
}
@media only screen and (min-width: 1200px) {
	.header__left a:not(.btn), .header__center a:not(.btn) { font-size: 14px;}
}
.is-home .header__left .nav-product, .is-home .header__center .nav-product { display: none; }
.header__left .nav-home-product, .header__center .nav-home-product { display: none; }
.is-home .header__left .nav-home-product, .is-home .header__center .nav-home-product { display: inline-block; }
.header__center { position: fixed; top: 20px; left: 50%; height: 40px; z-index: 10; transform: translateX(-50%); display: flex; align-items: center; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide .header__center { opacity: 0; visibility: hidden; transform: translateX(-50%) translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide.is-header-sticky .header__center { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); }
.header__left { position: fixed; top: 10px; left: 55px; height: 40px; z-index: 10; display: flex; align-items: center; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide .header__left { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide.is-header-sticky .header__left { opacity: 1; visibility: visible; transform: translateY(0); }
.header__right { position: fixed; top: 0; right: 0; height: 60px; z-index: 10; font-family: "Calibre", sans-serif; display: flex; align-items: center; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide .header__right { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide.is-header-sticky .header__right { opacity: 1; visibility: visible; transform: translateY(0); }
@media only screen and (min-width: 1024px) {
	.header__left { top: 20px; left: 90px; }
	.header__right { height: 85px; right: 30px;}
}
@media only screen and (min-width: 1024px) {
	.lang { margin-right: 20px; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
	.is-header-hide .lang { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
	.is-header-hide.is-header-sticky .lang { opacity: 1; visibility: visible; transform: translateY(0);}
}

.header__nav { position: fixed; width:90%; max-width: 400px; left: 50%; top: 50%; transform: translate(-50%,-50%); opacity: 0; visibility: hidden; text-align: center; z-index: 920; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
.header__nav ul { display: flex; align-items:center; justify-content: center; flex-direction: column; }
.header__nav li { margin:5px; font-family: "Calibre", sans-serif; }
.header__nav li a { font-weight: 500; font-size:16px; letter-spacing: 2px; }
.is-open-gn .header__nav { opacity: 1; visibility: visible; transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (min-width: 1024px) {
	.header__nav li a { font-size:20px; letter-spacing: 3px; }
}

.lang a { font-weight: 400; display: inline-block !important; margin: 0 5px 0 0; }
@media only screen and (min-width: 1024px) {
}
.lang a.active { opacity: .5; }
.local { cursor: pointer; display: flex; align-items: center; justify-content: center; height: 60px; z-index: 10; }
@media only screen and (min-width: 1024px) {
	.local { height: 85px; transform-origin: center center; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
	.is-header-hide .local { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
	.is-header-hide.is-header-sticky .local { opacity: 1; visibility: visible; transform: translateY(0);}
}
.local a { display: flex !important; align-items: center; justify-content: center; flex-direction: row; width: 100%; height: 100%; text-align: left; border-radius: 100%; }
.local a svg { width: 20px; height: 20px; fill: #fff; }
.local a img { width: 20px; height: 20px; }
.local a span { line-height: 1; font-size: 11px; font-weight: 500; margin: 0 0 0 6px; }
@media only screen and (max-width: 767px) {
	.local a span { display: none;}
}
@media only screen and (min-width: 1024px) {
	.local a span { font-size: 12px;}
}
.insta { cursor: pointer; display: flex; align-items: center; z-index: 11; }
@media only screen and (min-width: 1024px) {
	.insta { margin-right: 25px; justify-content: center; transform-origin: center center; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
	.is-header-hide .insta { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
	.is-header-hide.is-header-sticky .insta { opacity: 1; visibility: visible; transform: translateY(0);}
}
.insta a { display: flex; align-items: center; justify-content: center; text-align: center; border-radius: 100%; }
.insta a svg { width: 20px; height: 20px; fill: #fff; }
.insta a img { width: 20px; height: 20px; display: block; }
.citizen { cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 11; transform-origin: center center; transition: all 0.7s 0.1s cubic-bezier(0.19, 1, 0.22, 1); margin-left: 15px; margin-right: 12px; }
.is-header-hide .citizen { opacity: 0; visibility: hidden; transform: translateY(-40px); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.is-header-hide.is-header-sticky .citizen { opacity: 1; visibility: visible; transform: translateY(0); }
@media only screen and (min-width: 1024px) {
	.citizen { margin-left: 30px; margin-right: 0;}
}
.citizen a { display: flex; align-items: center; justify-content: center; width: 60px; text-align: center; border-radius: 100%; }
@media only screen and (min-width: 1024px) {
	.citizen a { width: 95px;}
}
.citizen a img { width: 100%; }
.toggle { position: fixed; top: 0; left: 0; height: 60px; width: 85px; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 9999; transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1); transform-origin: center center; }
@media only screen and (min-width: 1024px) {
	.toggle { height: 85px;}
}
.toggle:before { content: ""; display: block; position: absolute; left: 10%; top: 10%; width: 80%; height: 80%; background-color: #fff; transform: scaleX(0); transform-origin: right center; transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }
.is-scroll .toggle:before, .sub-page .toggle:before { transform: scaleX(1); transform-origin: left center; }
@media only screen and (max-width: 767px) {
	.toggle { height: 60px; width: 60px;}
}
.toggle .toggle__inner { display: flex; align-items: center; justify-content: center; flex-direction: column; height: 30px; }
.toggle .t { position: relative; display: block; width: 30px; height: 1px; margin: 0 auto; overflow: hidden; transform-origin: center center; }
.toggle .t.t2 { margin-top: 5px; }
.toggle .t:before, .toggle .t:after { content: ""; position: absolute; left: 0; top: 0; display: block; width: 100%; height: 100%; background: #fff; transition: all 0.5s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
.toggle .t:after { transform: translate3d(-100%, 0, 0); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.toggle .t.t2:before { transition: all 0.5s 0.2s cubic-bezier(0.19, 1, 0.22, 1); }
.toggle .t.t2:after { transition: all 0.5s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (min-width: 1024px) {
	.toggle:hover .t:before { transform: translate3d(100%, 0, 0); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
	.toggle:hover .t:after { transform: translate3d(0%, 0, 0); transition: all 0.5s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
	.toggle:hover .t.t2:before { transition: all 0.5s 0.1s cubic-bezier(0.19, 1, 0.22, 1); }
	.toggle:hover .t.t2:after { transition: all 0.5s 0.2s cubic-bezier(0.19, 1, 0.22, 1);}
}
.is-open-gn .toggle { transform: rotate(180deg); }
.is-open-gn .toggle .t1 { transform: translate(0, 2px) rotate(45deg); }
.is-open-gn .toggle .t2 { transform: translate(0, -4px) rotate(-45deg); }
.global-navigation__mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; cursor: pointer; z-index: 900; background-color: #191919; opacity: 0; visibility: hidden; transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
.is-open-gn .global-navigation__mask { opacity: .9; visibility: visible; }
.global-navigation { position: fixed; left: 0; top: 0; width: 100%; max-width: 320px; height: 100%; display: flex; z-index: 990; transform: translate(-100%, 0); background-color: #fff; color: #191919; }
.global-navigation a { color: #191919; }
.global-navigation a svg { fill: #191919; }
.global-navigation__content { position: relative; width: 100%; height: 100%; margin: 0; padding: 8px 35px 40px 65px; display: block; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; z-index: 2; }
.global-navigation__content .col { position: relative; padding: 10px 0; }
@media only screen and (min-width: 1024px) {
	.global-navigation__content { padding: 100px 50px 40px;}
}
.gn { margin: 0; }
.gn:last-child { margin: 0; }
.gn__mainnav > li { position: relative; display: block; margin: 3px 0; font-family: "Calibre", sans-serif; font-size: 20px; }
.gn__mainnav a { position: relative; }
@media only screen and (min-width: 1024px) {
	.gn__mainnav a { transition: opacity 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
	.gn__mainnav a:hover { opacity: .5;}
}
.gn__mainnav a.is-active { opacity: .5; text-decoration: line-through; pointer-events: none; }
.gn__mainnav a.js-open-snav:after { content: ""; position: absolute; right: 0; top: 50%; margin-top: -10px; width: 20px; height: 20px; background: url(../img/icon-arrow-bottom.svg); background-size: cover; transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.gn__mainnav a.js-open-snav.is-open:after { transform: rotate(180deg); }
.gn__mainnav a.nav-blank:after { content: ""; position: absolute; right: 115px; top: 50%; margin-top: -8px; width: 10px; height: 8px; background: url(../img/icon_blank.svg); background-size: cover; }
.gn__mainnav .btn { margin-top: 20px; font-size: 16px; padding-bottom: 8px; }
.gn__mainnav .bnr { margin-top: 20px; font-size: 16px; }
.gn__mainnav .bnr img { display: block; width: 100%; }
.gn__mainnav .bnr:after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border: 1px solid #191919; transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (min-width: 1024px) {
	.gn__mainnav .bnr:hover:after { border-width: 3px;}
}
.gn__subnav { height: 0; overflow: hidden; }
.gn__subnav > li { position: relative; display: block; margin: 3px 0; font-size: 15px; font-weight: 300; font-family: "Calibre", sans-serif; padding-left: 20px; }
.gn__subnav > li:before { content: ""; position: absolute; left: 0; top: 50%; width: 12px; height: 1px; display: block; background: #191919; }
.gn__subnav > li:last-child { margin-bottom: 10px; }
.gn__spnav { margin-bottom: 30px; display: flex; align-items: center; }
.gn__spnav > li { position: relative; margin: 0 20px 20px 0; font-size: 14px; font-family: "Calibre", sans-serif; font-weight: 400; }
.gn__spnav > li:last-child { margin-right: 0; }
.io-p { display: block; opacity: 0; transform: translateX(-40px); }
.io-p a { display: block; }
/*
███████╗ ██████╗  ██████╗ ████████╗███████╗██████╗
██╔════╝██╔═══██╗██╔═══██╗╚══██╔══╝██╔════╝██╔══██╗
█████╗  ██║   ██║██║   ██║   ██║   █████╗  ██████╔╝
██╔══╝  ██║   ██║██║   ██║   ██║   ██╔══╝  ██╔══██╗
██║     ╚██████╔╝╚██████╔╝   ██║   ███████╗██║  ██║
╚═╝      ╚═════╝  ╚═════╝    ╚═╝   ╚══════╝╚═╝  ╚═╝ */
.insta-sec { background: #222; }
.insta-sec__text { padding: 30px 0; }
@media only screen and (min-width: 768px) {
	.insta-sec__text { padding: 40px 0;}
}
@media only screen and (min-width: 1024px) {
	.insta-sec__text { padding: 60px 0;}
}
.footer { position: relative; color: #ccc; background: #000; }
.footer a { color: #fff; font-weight: 400; }
.footer svg { fill: #faebe3; }
.ec-link { position: relative; width: 100%; height: 100vw; }
@media only screen and (min-width: 1024px) {
	.ec-link { height: 100vh;}
}
.ec-link__image { position: absolute; right: 0; top: 0; width: 100%; height: 100%; overflow: hidden; }
.ec-link__image:after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.15); }
.is-pc .ec-link__image.js-parallax > div { top: -50%; }
.ec-link__text { position: absolute; left: 50%; top: 50%; width: 90%; transform: translate(-50%, -50%); }
.footer-info { position: relative; padding: 30px 0; }
@media only screen and (min-width: 768px) {
	.footer-info { padding: 40px 0;}
}
@media only screen and (min-width: 1024px) {
	.footer-info { padding: 60px 0; }
	.footer-info .btn { padding: 10px 20px; letter-spacing: 0;}
}
.footer-info li { font-size: 14px; }
.footer-info .lang-wrap { width: 200px; margin: 0 auto; }
.footer-info .lang-wrap .logo { width: 120px; margin: 0 auto 10px; display: block; }
.footer-info .lang-wrap li { display: inline-block; margin: 10px; }
.footer-info .lang-wrap li .is-active { text-decoration: line-through; opacity: .5; }
.footer-info .lang-wrap li .ls { box-shadow: 0 0 0 1px #faebe3; padding: 4px 10px; }
@media only screen and (min-width: 768px) {
	.footer-info .lang-wrap { float: right; text-align: right; }
	.footer-info .lang-wrap .logo { margin-top: -16px; margin-right: 0; }
	.footer-info .lang-wrap li { margin: 0 0 0 15px;}
}
.footer-bottom { padding: 16px 0; }
@media only screen and (min-width: 768px) {
	.footer-bottom { padding: 4px 0;}
}
.footer-bottom__nav { text-align: center; margin: 16px auto; }
.footer-bottom__nav li { margin: 0 10px; display: inline-block; line-height: 20px; font-size: 12px; }
@media only screen and (min-width: 768px) {
	.footer-bottom__nav { float: left; }
	.footer-bottom__nav li { margin: 0 20px 0 0;}
}
.footer__copyright { text-align: center; margin: 16px auto; }
@media only screen and (min-width: 768px) {
	.footer__copyright { float: right;}
}
.footer__copyright address { font-size: 12px; line-height: 20px; }
@media only screen and (min-width: 1024px) {
	.footer__copyright address { font-size: 13px;}
}
/*
██╗      ██████╗  █████╗ ██████╗ ███████╗██████╗
██║     ██╔═══██╗██╔══██╗██╔══██╗██╔════╝██╔══██╗
██║     ██║   ██║███████║██║  ██║█████╗  ██████╔╝
██║     ██║   ██║██╔══██║██║  ██║██╔══╝  ██╔══██╗
███████╗╚██████╔╝██║  ██║██████╔╝███████╗██║  ██║
╚══════╝ ╚═════╝ ╚═╝  ╚═╝╚═════╝ ╚══════╝╚═╝  ╚═╝
*/
.loading { position: fixed; left: 0; top: 0; right: 0; bottom: 0; width: 100%; height: 100%; background: #000; z-index: 9999; }
.is-loaded .loading { opacity: 0; visibility: hidden; transition: all 0.6s cubic-bezier(0.72, 0.16, 0.345, 0.875); }
.loading__bar { position: absolute; left: 0; top: 50%; height: 1px; width: 100%; background-color: #666; overflow: hidden; transform: scaleX(0); transform-origin: center; transition: all 0.5s cubic-bezier(0.72, 0.16, 0.345, 0.875); }
.is-loading .loading__bar { transform: scaleX(1); }
.is-loaded .loading__bar { top: 0; height: 100%; transition: all 0.8s cubic-bezier(0.72, 0.16, 0.345, 0.875); }
.xhr-mask { position: fixed; z-index: -1; top: 0; left: 0; width: 100%; height: 2px; }
.is-transition .xhr-mask { z-index: 7; }
.xhr-mask__inner { position: absolute; left: 0; top: 0; height: 100%; width: 100%; background: #333; transform: translate(-100%, 0); }


/*
██╗  ██╗ ██████╗ ███╗   ███╗███████╗
██║  ██║██╔═══██╗████╗ ████║██╔════╝
███████║██║   ██║██╔████╔██║█████╗
██╔══██║██║   ██║██║╚██╔╝██║██╔══╝
██║  ██║╚██████╔╝██║ ╚═╝ ██║███████╗
╚═╝  ╚═╝ ╚═════╝ ╚═╝     ╚═╝╚══════╝
*/
/*================ HERO ================*/
.hero { position: relative; width: 100%; height: 100vh; margin: 0 auto; color: #fff; background-color:#8e8779; overflow: hidden; }
.hero--index { height: 100vh; }
.hero--page { height: 100vw; }
.hero--single { height: 100vw; }
@media only screen and (min-width: 768px) {
	.hero--index { height: 100vh; }
	.hero--page { height: 50vw; }
	.hero--single { height: 40vw; }
}
.hero-slider { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.hero-slider .timer { position: absolute; right: 50px; bottom: 30px; width: calc(100% - 100px); height: 1px; background: rgba(0, 0, 0, 0.1); }
@media only screen and (min-width: 768px) {
	.hero-slider .timer { right: 70px; width: 140px; margin: 0 40px;}
}
@media only screen and (min-width: 1024px) {
	.hero-slider .timer { right: 80px; bottom: 42px;}
}
@media only screen and (min-width: 1200px) {
	.hero-slider .timer { right: calc(5vw + 60px);}
}
.hero-slider .timer span { position: absolute; left: 0; top: 0; width: 0; height: 1px; background: #191919; }
.hero-slider .swiper-pagination { padding: 0 16px; text-align: right; line-height: 20px; bottom: 20px; font-weight: 400; pointer-events: none; visibility: hidden; }
@media only screen and (min-width: 768px) {
	.hero-slider .swiper-pagination { padding: 0 30px; visibility: visible;}
}
@media only screen and (min-width: 1024px) {
	.hero-slider .swiper-pagination { padding: 0 40px; bottom: 32px;}
}
@media only screen and (min-width: 1200px) {
	.hero-slider .swiper-pagination { padding: 0 5vw;}
}
.hero-slider .swiper-button-next, .hero-slider .swiper-button-prev { top: auto; bottom: 30px; margin-top: auto; margin-bottom: calc(-1*40px/2); width: 40px; height: 40px; }
.hero-slider .swiper-button-next.swiper-button-disabled, .hero-slider .swiper-button-prev.swiper-button-disabled { opacity: .2; }
@media only screen and (min-width: 768px) {
	.hero-slider .swiper-button-next, .hero-slider .swiper-button-prev { right: 70px;}
}
@media only screen and (min-width: 1024px) {
	.hero-slider .swiper-button-next, .hero-slider .swiper-button-prev { right: 80px; bottom: 42px;}
}
@media only screen and (min-width: 1200px) {
	.hero-slider .swiper-button-next, .hero-slider .swiper-button-prev { right: calc(5vw + 60px);}
}
.hero-slider .swiper-button-next:after, .hero-slider .swiper-button-prev:after { font-size: 11px; }
.hero-slider .swiper-button-prev { left: auto; }
@media only screen and (min-width: 768px) {
	.hero-slider .swiper-button-prev { margin-right: 180px;}
}
.hero-slide { position: relative; overflow: hidden; }
.hero-slide__image { position: absolute; right: 0; top: 0; width: 100%; height: 100%; }
.hero-slide__image .img-landscape { display: none; }
.hero-slide__image .img-portrait { display: block; }
@media screen and (orientation: landscape) {
	.hero--index .hero-slide__image { width: 100%; }
	.hero-slide__image { width: 50%; }
	.hero-slide__image .img-landscape { display: block; }
	.hero-slide__image .img-portrait { display: none;}
}
.hero-slide__image .media__image { transform: scale(1.1); opacity: 0; transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), transform 3s cubic-bezier(0.19, 1, 0.22, 1); }
.swiper-slide-active .hero-slide__image .media__image { transform: scale(1); opacity: 1; }
@media only screen and (min-width: 768px) {
	.hero-slide__image:after { width: 450px; height: 200px;}
}
@media only screen and (min-width: 1024px) {
	.hero-slide__image:after { display: none;}
}
.hero-slide__text { position: absolute; left: 0; bottom: 0; padding: 24px 0; z-index: 10; }
@media only screen and (min-width: 768px) {
	.hero--index .hero-slide__text { width: 100%; }
	.hero-slide__text { width: 430px; padding: 40px 0;}
}
@media only screen and (min-width: 1400px) {
	.hero--index .hero-slide__text { width: 100%; }
	.hero-slide__text { top: 50%; bottom: auto; padding: 0; width: 50%; transform: translateY(-50%);}
	.hero-slide__text .section-inner { padding:0; width:430px; margin:0 auto; }
}
.hero-slide__text h1 { font-size:6.5vw; letter-spacing: .1vw; line-height: 1.5; margin-bottom: 10px; }
.hero-slide__text p { font-size: 13px; letter-spacing: 1px; margin-top: 5px; }
@media only screen and (min-width: 768px) {
	.hero-slide__text h1 { font-size:34px; margin-bottom: 16px; }
	.hero-slide__text p { font-size: 15px; margin-top: 10px;}
}
.hero-slide__btn { position: absolute; left: 0; bottom: 0; font-size: 0; z-index: 15; display: none; }
@media only screen and (min-width: 1024px) {
	.hero-slide__btn { display: block; width: 100%; bottom: auto; top: 94%; transform: translateY(-50%);}
}

.hero-slide__circle { position: absolute; background: radial-gradient(circle,rgba(252,208,103,1) 0,rgba(252,208,103,0) 100%); mask-image: radial-gradient(ellipse 100% 100% at 50% 50%,black 30%,transparent 50%); -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%,black 30%,transparent 50%); opacity: .4; pointer-events: none; }
.hero-slide__circle--small { animation: Floating 14s ease-in-out infinite; animation-play-state: paused }
.hero-slide__circle--big { animation: FloatingReverse 10s ease-in-out infinite; animation-play-state: paused; opacity: .5; }
@media (min-width: 700px) {
    .hero-slide__circle--small { width:16vw; height: 16vw; top: 20vw; left: 30vw }
    .hero-slide__circle--big { width:50vw; height: 50vw; left: -10vw; bottom: -10vw }
}
@media (max-width: 699px) {
    .hero-slide__circle--small { width:60vw; height: 60vw; top: 60vw; right: -20vw }
    .hero-slide__circle--big { width:120vw; height: 120vw; left: -50vw; bottom: -35vw }
}
.is-loaded .hero-slide__circle--small,
.is-loaded .hero-slide__circle--big { animation-play-state: running; }

.hero--project { background: #a59489 }
.hero-slide__circle--project,
.hero--project .hero-slide__circle { background: radial-gradient(circle,rgba(255,171,116,1) 0,rgba(255,171,116,0) 100%); }
.hero--action { background: #61776e }
.hero-slide__circle--action,
.hero--action .hero-slide__circle { background: radial-gradient(circle,rgba(126,227,188,1) 0,rgba(126,227,188,0) 100%); }
.hero--single { background: #838d8f }
.hero--single .hero-slide__circle { background: radial-gradient(circle,rgba(106,224,241,1) 0,rgba(106,224,241,0) 100%); }

.hero-slide__circle--project,
.hero-slide__circle--action { mix-blend-mode: multiply; filter: grayscale(15%); opacity: .5; }
@media (min-width: 700px) {
	.hero-slide__circle--project,
	.hero-slide__circle--action {  width:66vw; height: 66vw; bottom: -20vw; }
}
@keyframes Floating {
    0%,100% { transform: translate3d(0,0,0) scale(.7) }
    50% { transform: translate3d(-120%,-120%,0) scale(1.5) }
}

@keyframes FloatingReverse {
    0%,100% { transform: translate3d(-10%,-10%,0) scale(1.1) }
    50% { transform: translate3d(45%,15%,0) scale(.8) }
}


/*================================*/
@media only screen and (max-width: 767px) {
	.text-sec { padding: 16px 0; }
	.text-sec.pt0 { padding-top: 0;}
}
.text-sec h2 { font-size: 26px; line-height: 1.2; margin-bottom: 16px; }
@media only screen and (min-width: 768px) {
	.text-sec h2 { font-size: 30px; margin-bottom: 30px;}
}
@media only screen and (min-width: 1024px) {
	.text-sec h2 { font-size: 36px;}
}
@media only screen and (min-width: 1200px) {
	.text-sec h2 { font-size: 42px;}
}
.text-sec h3 { margin: 3px 0; }
.text-sec h4 { margin: 8px 0; font-size: 14px; letter-spacing: 1px; }
@media only screen and (min-width: 1024px) {
	.text-sec h4 { font-size: 18px; letter-spacing: 2px;}
}
.text-sec h4 > span { display: block; }
.text-sec p { margin: 5px 0; letter-spacing: 1px; }
@media only screen and (min-width: 1024px) {
	.text-sec p { font-size: 16px;}
}
.text-sec hr { border: none; width: 100px; height: 1px; background: #191919; margin: 16px auto; }
@media only screen and (min-width: 768px) {
	.text-sec hr { margin: 30px auto;}
}
.text-sec .icon { width: 24px; height: 24px; margin: 0 auto 16px; }
.text-sec .icon img { display: block; width: 100%; }
.text-sec .btn-wrap { margin-top: 30px; }
@media only screen and (max-width: 767px) {
	.text-sec .btn-wrap { text-align: center; margin-bottom: 30px;}
}
.text-sec .btn-wrap_s { margin-top: 16px; }
.text-sec .btns { margin-top: 16px; }
.text-sec .btns .btn { margin: 5px; }
@media only screen and (min-width: 1024px) {
	.text-sec.text-center h3 { letter-spacing: 2px; }
	.text-sec.text-center p { letter-spacing: 1px;}
}
.text-sec.text-sec--min { max-width: 600px; margin: 0 auto; text-align: center; }
.text-sec.text-sec--min p { text-align: left; }
.image-sec { position: relative; display: block; width: 100%; height: 0; padding-bottom: 120%; }
@media only screen and (min-width: 768px) {
	.image-sec { padding-bottom: 50%;}
}
@media only screen and (min-width: 1024px) {
	.image-sec { padding-bottom: 40%;}
}
.news-bar { position: relative; }
.news-slider { padding-bottom: 24px; }
.news-slider .swiper-pagination { bottom: 0; }
.news-slide { text-align: center; padding: 12px 10px 10px; background: #f9f8f7; }
.news-slide span { display: block; margin: 3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media only screen and (min-width: 768px) {
	.news-slide span { display: inline-block; margin: 0 6px;}
}
.news-slide .news-date { letter-spacing: 1px; }
.news-slide .news-title { font-size: 14px; line-height: 1.5; font-weight: 400; }
.news-wrap { background: #fff; padding-top: 30px; }
@media only screen and (min-width: 1024px) {
	.news-wrap { padding-top: 40px;}
}
@media only screen and (max-width: 767px) {
	.news-wrap { padding-top: 0;}
}
.news-wrap .grid { padding: 30px 0; }
@media only screen and (min-width: 1024px) {
	.news-wrap .grid { padding: 40px 0;}
}
@media only screen and (max-width: 767px) {
	.news-wrap .grid { padding: 0;}
}
.news-g { position: relative; display: block; }
.news-g__image { position: relative; }
@media only screen and (min-width: 1024px) {
	.news-g__image img { transform: scale(1.08); transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
	a:hover .news-g__image img { transform: scale(1);}
}
.news-g__text { position: relative; padding: 12px 10px 20px 0; z-index: 2; }
.news-g__text .date { font-family: "Calibre", sans-serif; background: #fff; font-size: 12px; letter-spacing: 1px; font-weight: 300; }
.news-g__text h3 { padding-top: 5px; font-weight: 400; line-height: 1.4; }
.about-cover { position: relative; width: 100%; height: 100vw; }
@media only screen and (min-width: 1024px) {
	.about-cover { height: 100vh;}
}
.about-cover__image { position: absolute; right: 0; top: 0; width: 100%; height: 100%; overflow: hidden; }
.is-pc .about-cover__image.js-parallax > div { top: -25%; }
.product-detail { position: relative; }
.product-detail__character.js-parallax h2 { position: relative; padding-top: 15px; }
@media only screen and (max-width: 767px) {
	.product-detail__character.js-parallax h2 { padding-top: 0; padding-left: 80px;}
}
.product-detail__character.js-parallax h2 .iby { position: absolute; left: 0; top: 0; width: 150px; height: 50px; background: url(../img/iby.svg); background-size: cover; opacity: .7; }
@media only screen and (max-width: 767px) {
	.product-detail__character.js-parallax h2 .iby { width: 75px; height: 25px; top: 15px;}
}
.product-detail__character.js-parallax h2 .t { opacity: .4; }
@media only screen and (min-width: 768px) {
	.product-detail__character { position: absolute; top: 5%; right: 0; }
	.grid--reverse .product-detail__character { right: auto; left: 0;}
}
@media only screen and (min-width: 1024px) {
	.product-detail__character.js-parallax { top: 10%;}
}
.product-detail__text { padding: 16px 0; }
@media only screen and (min-width: 768px) {
	.product-detail__text { display: flex; justify-content: center;}
}
.product-detail__text h2 { margin-bottom: 16px; opacity: .75; }
@media only screen and (min-width: 1024px) {
	.product-detail__text h2 { margin-bottom: 30px;}
}
.product-detail__text h3 { font-size: 20px; letter-spacing: 1px; line-height: 1.4; margin-bottom: 16px; }
@media only screen and (min-width: 1024px) {
	.product-detail__text h3 { font-size: 24px;}
}
.product-detail__text p { margin: 5px 0; }
@media only screen and (min-width: 1024px) {
	.product-detail__text p { font-size: 14px; letter-spacing: 1px;}
}
.product-detail__text .more-btn { margin-top: 16px; }
.product-detail__text .btn { margin-top: 16px; }
.product-detail__images { position: relative; }
.product-detail__images .image__l { width: 66%; }
.grid--reverse .product-detail__images .image__l { margin-left: 25%; }
.product-detail__images .image__s { position: absolute; right: 0; bottom: 5%; width: 50%; }
.grid--reverse .product-detail__images .image__s { right: auto; left: 0; }
@media only screen and (max-width: 767px) {
	.product-detail__image { margin-bottom: 20px;}
}
.other-cl { position: relative; color: #fff; background: url(../img/lp/other_bg.jpg) center; background-size: cover; padding: 32px 0; }
@media only screen and (min-width: 768px) {
	.other-cl { padding: 60px 0;}
}
@media only screen and (min-width: 1024px) {
	.other-cl { padding: 80px 0;}
}
@media only screen and (min-width: 1200px) {
	.other-cl { padding: 120px 0;}
}
.other-cl a { color: #fff; }
.other-cl__text { text-align: center; padding: 16px 0; }
.other-cl__text h3 { font-size: 16px; line-height: 1.4; font-weight: 300; font-family: "Calibre", sans-serif; }
@media only screen and (min-width: 1024px) {
	.other-cl__text h3 { font-size: 20px;}
}
@media only screen and (min-width: 1024px) {
	.other-cl__text p { letter-spacing: 1px;}
}
@media only screen and (max-width: 767px) {
	.other-cl__text p { font-size: 11px;}
}
.about-g { position: relative; display: block; }
.about-g__image img { transform: scale(0.7); }
@media only screen and (min-width: 1024px) {
	.about-g__image img { transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
	a:hover .about-g__image img { transform: scale(0.75);}
}
.about-g__image .media:after { background: #f2f0ed; }
.about-g__text { position: relative; text-align: center; padding: 0; margin-top: -18px; }
@media only screen and (min-width: 1024px) {
	.about-g__text { margin-top: -22px;}
}
.about-g__text h3 { font-size: 20px; line-height: 1.4; font-weight: 100; font-family: "Calibre", sans-serif; }
@media only screen and (min-width: 1024px) {
	.about-g__text h3 { font-size: 30px;}
}
.about-g__text p { line-height: 1.5; margin-top: 10px; }
@media only screen and (min-width: 1024px) {
	.about-g__text p { letter-spacing: 1px; font-size: 14px;}
}
.purpose-col { position: relative; display: flex; align-items: center; justify-content: center; height: 120vw; }
@media only screen and (max-width: 767px) {
	.purpose-col { height: 150vw;}
}
.purpose-col__text-wrap { position: relative; }
.purpose-col__text { position: relative; display: flex; align-items: center; justify-content: center; height: 100vh; }
.purpose-col__text .btn, .purpose-col__text .more-btn { margin-top: 16px; }
.purpose-col__images { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.purpose-col__images > * { position: absolute; }
.purpose-col__images .image__a { top: 5%; left: 15%; width: 25%; }
@media only screen and (max-width: 767px) {
	.purpose-col__images .image__a { top: -16px; left: 10%; width: 30%;}
}
.purpose-col__images .image__b { top: 25%; right: 0%; width: 33%; }
.purpose-col__images .image__c { bottom: 0%; left: 50%; width: 25%; }
@media only screen and (max-width: 767px) {
	.purpose-col__images .image__c { width: 30%; left: 60%;}
}
.purpose-col__images .image__d { top: 50%; left: 0%; width: 40%; }
@media only screen and (max-width: 767px) {
	.purpose-col__images .image__d { top: 75%; width: 40%;}
}
/* ██████╗ ██████╗ ██╗     ██╗     ███████╗ ██████╗████████╗██╗ ██████╗ ███╗   ██╗
██╔════╝██╔═══██╗██║     ██║     ██╔════╝██╔════╝╚══██╔══╝██║██╔═══██╗████╗  ██║
██║     ██║   ██║██║     ██║     █████╗  ██║        ██║   ██║██║   ██║██╔██╗ ██║
██║     ██║   ██║██║     ██║     ██╔══╝  ██║        ██║   ██║██║   ██║██║╚██╗██║
╚██████╗╚██████╔╝███████╗███████╗███████╗╚██████╗   ██║   ██║╚██████╔╝██║ ╚████║ ╚═════╝ ╚═════╝ ╚══════╝╚══════╝╚══════╝ ╚═════╝   ╚═╝   ╚═╝ ╚═════╝ ╚═╝  ╚═══╝ */
.page-headline { padding: 100px 0 0; text-align: center; }
@media only screen and (min-width: 768px) {
	.page-headline { padding: 150px 0 0;}
}
.page-headline h1 { line-height: 1.4; }
.cl-cover { background: #191919; color: #faebe3; }
.cl-cover__text { text-align: center; padding: 20px 0; }
.cl-cover__text h2 { font-size: 14px; }
@media only screen and (min-width: 1024px) {
	.cl-cover__text h2 { font-size: 16px;}
}
.cl-cover__text h3 { font-size: 18px; margin: 12px 0; }
@media only screen and (min-width: 1024px) {
	.cl-cover__text h3 { font-size: 24px;}
}
.cl-cover__text p { font-size: 14px; font-weight: 400; margin: 5px 0; }
@media only screen and (min-width: 1024px) {
	.cl-cover__text p { font-size: 15px;}
}
.cl-cover__text .more-btn { margin-top: 12px; }
.cl-sec__title { margin: 30px 0; text-align: center; }
.cl-sec__title h4 { position: relative; letter-spacing: 1px; font-weight: 500; display: block; font-size: 15px; }
.cl-sec__title h4:before { content: ""; position: absolute; left: 0; top: 50%; width: 100%; height: 1px; background: #191919; opacity: .3; }
.cl-sec__title h4 span { position: relative; padding: 0 20px; background: #f2f0ed; }
.cl-sec__title h3 { font-size: 20px; line-height: 1.4; margin: 20px 0; }
@media only screen and (min-width: 1024px) {
	.cl-sec__title h3 { font-size: 24px;}
}
.cl-sec__title p { font-size: 13px; padding: 20px 0; }
@media only screen and (min-width: 1024px) {
	.cl-sec__title p { font-size: 14px;}
}
.collections-g { position: relative; display: block; }
.collections-g__image { position: relative; }
@media only screen and (min-width: 1024px) {
	.collections-g__image img { transform: scale(1.08); transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
	a:hover .collections-g__image img { transform: scale(1);}
}
.collections-g__text { position: relative; padding: 20px 10px 20px 0; z-index: 2; }
.collections-g__text h2 { height: 40px; line-height: 40px; background: #f2f0ed; font-size: 24px; font-family: "Calibre", sans-serif; font-weight: 100; }
.collections-g__text h3 { font-size: 14px; font-weight: 400; line-height: 1.4; margin-top: 10px; }
@media only screen and (min-width: 1024px) {
	.collections-g__text h3 { font-size: 15px;}
}
.collections-g__text p { margin-top: 10px; }
.hero-single { position: relative; width: 100%; height: 100vh; margin: 0; overflow: hidden; }
.hero-single__image { position: absolute; left: 0; top: 0; width: 50%; height: 100%; }
.is-pc .hero-single__image.js-parallax .media { top: -50%; }
@media only screen and (max-width: 767px) {
	.hero-single__image { width: 100%;}
}
.hero-single__text { position: absolute; right: 0; top: 0; width: 50%; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; }
@media only screen and (max-width: 767px) {
	.hero-single__text { width: 100%; background: rgba(0, 0, 0, 0.4); color: #fff; text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);}
}
.hero-single__text h2 { font-size: 14px; letter-spacing: 1px; font-weight: 400; font-family: "Calibre", sans-serif; }
@media only screen and (min-width: 1024px) {
	.hero-single__text h2 { font-size: 16px;}
}
.hero-single__text h1 { margin: 10px 0; position: relative; }
.hero-single__text h1 .iby { position: absolute; left: 50%; top: 10px; margin-left: -75px; width: 150px; height: 50px; background: url(../img/iby.svg); background-size: cover; opacity: .7; }
@media only screen and (max-width: 767px) {
	.hero-single__text h1 .iby { width: 90px; height: 30px; top: 5px; margin-left: -45px; background: url(../img/iby-pk.svg);}
}
.hero-single__text h1 .first { position: absolute; left: 50%; top: 6px; margin-left: 120px; width: 65px; height: 50px; background: url(../img/1st.svg); background-size: cover; opacity: .7; }
@media only screen and (min-width: 1024px) {
	.hero-single__text h1 .first { margin-left: 140px; top: 10px; opacity: .5;}
}
@media only screen and (max-width: 767px) {
	.hero-single__text h1 .first { width: 39px; height: 30px; top: 5px; margin-left: 60px; opacity: .8; background: url(../img/1st-pk.svg);}
}
@media only screen and (max-width: 767px) {
	.hero-single__text h1 span.first-t { padding: 0 50px 0 0;}
}
@media only screen and (min-width: 768px) {
	.hero-single__text h1 span.first-t { font-size: 55px; padding: 0 60px 0 0;}
}
@media only screen and (min-width: 1024px) {
	.hero-single__text h1 span.first-t { font-size: 64px; padding: 0 66px 0 0;}
}
@media only screen and (max-width: 767px) {
	.hero-single__text h1.fs-m { font-size: 32px;}
}
.hero-single__text h3 { font-size: 18px; margin: 20px 0; }
@media only screen and (min-width: 1024px) {
	.hero-single__text h3 { font-size: 22px;}
}
.hero-single__text h3 span.js-char { display: block; }
.hero-single__text p { font-size: 14px; letter-spacing: 1px; }
@media only screen and (min-width: 1024px) {
	.hero-single__text p { font-size: 15px;}
}
.hero-single__text .btn { margin-top: 20px; transition-delay: 1s !important; }
@media only screen and (max-width: 767px) {
	.hero-single__text .btn { background: #fff;}
}
.model-info { margin-top: 16px; margin-bottom: 16px; }
@media only screen and (min-width: 768px) {
	.model-info { margin-top: 30px; margin-bottom: 30px;}
}
@media only screen and (min-width: 1024px) {
	.model-info { margin-top: 40px; margin-bottom: 40px;}
}
.model { display: block; }
.model__image { position: relative; background: #fff; }
.model__image:after { content: ""; position: absolute; right: 15px; top: 15px; width: 10px; height: 8px; background: url(../img/icon_blank.svg); background-size: cover; z-index: 5; }
@media only screen and (min-width: 1024px) {
	.model__image:before { content: "MORE"; font-family: "Calibre", sans-serif; position: absolute; right: 0; top: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.75); display: flex; justify-content: center; align-items: center; font-size: 14px; font-weight: 400; z-index: 2; opacity: 0; transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1);}
}
@media only screen and (min-width: 1024px) and (min-width: 1024px) { a:hover .model__image:before { opacity: 1;}
}
.model__image .media { transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (min-width: 1024px) { a:hover .model__image .media { transform: scale(0.9);}
}
.model__image .new { font-family: "Calibre", sans-serif; position: absolute; left: 10px; top: 10px; font-size: 12px; line-height: 16px; font-weight: 400; box-shadow: 0 0 0 1px #191919 inset; padding: 2px 5px; z-index: 5; }
.model__image .new-2 { position: absolute; left: 10px; right: 10px; bottom: 10px; display: block; text-align: center; font-size: 10px; line-height: 16px; font-weight: 400; background: #f2f0ed; padding: 2px 5px; z-index: 5; }
.model__text { padding: 16px 0; text-align: center; }
.model__text h4 { font-weight: 400; font-size: 13px; font-family: "Calibre", sans-serif; }
.model__text p { line-height: 1.5; margin-top: 5px; }
.model__text p span { font-size: 11px; }
.model__text .spec { font-size: 11px; }
.model__btn-wrap { text-align: center; }
.model__btn-wrap .btn { padding: 3px 6px; font-size: 10px; font-weight: 400; font-family: "Calibre", sans-serif; }
.other-slider { margin: 16px 0; }
@media only screen and (min-width: 768px) {
	.other-slider { margin: 30px 0;}
}
@media only screen and (min-width: 1024px) {
	.other-slider { margin: 40px 0;}
}
.other-slide { width: 120px; }
@media only screen and (min-width: 1024px) {
	.other-slide { width: 225px;}
}
.other-slide .t { padding: 16px 0 24px; }
.other-slide .t h2 { text-align: center; font-size: 13px; line-height: 1.4; }
.other-slide .new { position: absolute; left: 0; top: 0; display: inline-block; border: 1px solid #585858; font-size: 12px; padding: 6px 3px; }
.collaboration-bnr { position: relative; display: block; width: 100%; height: 300px; }
@media only screen and (min-width: 768px) {
	.collaboration-bnr { height: 400px;}
}
@media only screen and (min-width: 1024px) {
	.collaboration-bnr { height: 500px;}
}
.collaboration-bnr__bg { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.collaboration-bnr__text { position: absolute; left: 5%; top: 50%; transform: translateY(-50%); width: 50%; }
@media only screen and (min-width: 768px) {
	.collaboration-bnr__text { left: 12%; width: 40%;}
}
.collaboration-bnr__text img { display: block; width: 100%; }
.collaboration-bnr__text .btn { margin-top: 20px; }
/* █████╗ ██████╗  ██████╗ ██╗   ██╗████████╗
██╔══██╗██╔══██╗██╔═══██╗██║   ██║╚══██╔══╝
███████║██████╔╝██║   ██║██║   ██║   ██║
██╔══██║██╔══██╗██║   ██║██║   ██║   ██║
██║  ██║██████╔╝╚██████╔╝╚██████╔╝   ██║
╚═╝  ╚═╝╚═════╝  ╚═════╝  ╚═════╝    ╚═╝    */
.hero-about { position: relative; width: 100%; margin: 0; overflow: hidden; height: calc(100vh - 60px); margin: 60px auto 0; overflow: hidden; }
@media only screen and (min-width: 1024px) {
	.hero-about { margin: 85px auto 0; height: calc(100vh - 85px);}
}
.hero-about__image { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.is-pc .hero-about__image.js-parallax .media { top: -50%; }
.hero-about__text { position: absolute; right: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; }
.hero-about__text h2 { font-size: 14px; letter-spacing: 1px; }
@media only screen and (min-width: 1024px) {
	.hero-about__text h2 { font-size: 16px;}
}
.hero-about__text h1 { margin: 10px 0; }
.hero-about__text h3 { font-size: 18px; margin: 20px 0; }
@media only screen and (min-width: 1024px) {
	.hero-about__text h3 { font-size: 22px;}
}
.hero-about__text p { font-weight: 400; }
@media only screen and (min-width: 1024px) {
	.hero-about__text p { font-size: 14px;}
}
@media only screen and (max-width: 767px) {
	.hero-about__text { width: 100%; background: rgba(0, 0, 0, 0.4); color: #faebe3;}
}
.hero-about-single { position: relative; width: 100%; margin: 0; overflow: hidden; margin: 60px auto; height: 50vw; overflow: hidden; }
@media only screen and (min-width: 768px) {
	.hero-about-single { margin: 85px auto; height: 45vw;}
}
@media only screen and (min-width: 1024px) {
	.hero-about-single { height: 33vw; max-height: 500px;}
}
.hero-about-single__image { position: absolute; right: 0; top: 0; width: 100%; height: 100%; overflow: hidden; }
.hero-about-single__image .media:after { background: #f2f0ed; }
.hero-about-single__text { position: absolute; right: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; }
.about-detail { border-top: 1px solid #191919; padding-top: 12px; }
@media only screen and (min-width: 1024px) {
	.about-detail { padding-top: 24px;}
}
.about-detail:last-child { border-bottom: 1px solid #191919; }
.about-detail__text { padding: 16px 0; }
@media only screen and (min-width: 768px) {
	.about-detail__text { display: flex; justify-content: flex-end; }
	.grid--reverse .about-detail__text { justify-content: flex-start;}
}
.about-detail__text h3 { font-size: 20px; line-height: 1.4; margin-bottom: 16px; }
@media only screen and (min-width: 1024px) {
	.about-detail__text h3 { font-size: 24px;}
}
.about-detail__text p { margin: 5px 0; }
@media only screen and (min-width: 1024px) {
	.about-detail__text p { font-size: 14px; letter-spacing: 1px;}
}
.about-detail__text .more-btn { margin-top: 16px; }
.about-detail__text .btn { margin-top: 16px; }
.about-other { justify-content: center; margin-top: 16px; }
@media only screen and (min-width: 768px) {
	.about-other { margin-top: 30px;}
}
@media only screen and (min-width: 1024px) {
	.about-other { margin-top: 40px;}
}
/*
██████╗ ██╗   ██╗██████╗ ██████╗  ██████╗ ███████╗███████╗
██╔══██╗██║   ██║██╔══██╗██╔══██╗██╔═══██╗██╔════╝██╔════╝
██████╔╝██║   ██║██████╔╝██████╔╝██║   ██║███████╗█████╗
██╔═══╝ ██║   ██║██╔══██╗██╔═══╝ ██║   ██║╚════██║██╔══╝
██║     ╚██████╔╝██║  ██║██║     ╚██████╔╝███████║███████╗
╚═╝      ╚═════╝ ╚═╝  ╚═╝╚═╝      ╚═════╝ ╚══════╝╚══════╝ */
.purpose-bnr { position: relative; display: block; width: 100%; height: 240px; background: url(../img/purpose_bg.jpg) center; background-size: cover; }
@media only screen and (min-width: 768px) {
	.purpose-bnr { height: 320px;}
}
@media only screen and (min-width: 1024px) {
	.purpose-bnr { height: 400px;}
}
.purpose-bnrs { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 100%; height: 240px; }
@media only screen and (min-width: 768px) {
	.purpose-bnrs { height: 320px;}
}
@media only screen and (min-width: 1024px) {
	.purpose-bnrs { height: 400px;}
}
.purpose-bnrs a { position: relative; display: block; width: 50%; background-size: cover; background-position: center; color: #fff; }
.purpose-bnrs a:before { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.1); transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (min-width: 1024px) {
	.purpose-bnrs a:hover:before { background: rgba(0, 0, 0, 0.2);}
}
.purpose-bnrs__text, .purpose-bnr__text { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 2; display: flex; align-items: center; justify-content: center; }
.purpose-bnrs__text .btn, .purpose-bnrs__text .more-btn, .purpose-bnr__text .btn, .purpose-bnr__text .more-btn { margin-top: 16px; }
.hero-purpose { position: relative; width: 100%; margin: 0; overflow: hidden; height: 100vw; margin: 60px auto 0; overflow: hidden; }
@media only screen and (min-width: 1024px) {
	.hero-purpose { margin: 0 auto; height: 100vh;}
}
.hero-purpose .hr { position: absolute; left: 50%; bottom: 0; width: 1px; height: 90px; background: #191919; }
@media only screen and (max-width: 767px) {
	.hero-purpose .hr { height: 60px;}
}
.hero-purpose__text { position: absolute; right: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; }
.purpose-g { position: relative; display: block; }
.purpose-g__image { position: relative; }
.purpose-g__image:after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: -moz-linear-gradient(top, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.3) 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(top, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.3) 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to bottom, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.3) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#66000000',GradientType=0 ); transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
@media only screen and (min-width: 1024px) {
	.purpose-g__image img { transform: scale(1.08); transition: 1s cubic-bezier(0.19, 1, 0.22, 1); }
	a:hover .purpose-g__image img { transform: scale(1);}
}
.purpose-g__text { position: absolute; left: 0; bottom: 0; width: 100%; padding: 24px; color: #fff; text-shadow: 0 0 5px rgba(0, 0, 0, 0.4); }
.purpose-g__text h3 { font-size: 24px; line-height: 1.4; font-weight: 100; font-family: "Calibre", sans-serif; }
@media only screen and (min-width: 1024px) {
	.purpose-g__text h3 { font-size: 30px;}
}
.purpose-g__text p { font-size: 14px; }
@media only screen and (min-width: 1024px) {
	.purpose-g__text p { font-size: 15px;}
}
.hero-purpose-single { position: relative; width: 100%; margin: 0; overflow: hidden; margin: 60px auto 0; overflow: hidden; }
@media only screen and (min-width: 1024px) {
	.hero-purpose-single { margin: 85px auto 0;}
}
.hero-purpose-single__text { position: absolute; right: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; text-shadow: 0 0 5px rgba(0, 0, 0, 0.4); }
.hero-purpose-single__text .fs-s { font-weight: 400; }
.pp-cover { background: #191919; color: #faebe3; }
.pp-cover__text { padding-top: 20px; padding-bottom: 20px; }
.pp-cover__text h2 { font-size: 18px; line-height: 1.4; margin: 12px 0; font-weight: 500; }
@media only screen and (min-width: 1024px) {
	.pp-cover__text h2 { font-size: 24px;}
}
.pp-cover__text p { font-size: 14px; margin: 5px 0; }
@media only screen and (min-width: 1024px) {
	.pp-cover__text p { font-size: 15px;}
}
.pp-cover__text .more-btn { margin-top: 12px; }
.pp-col { max-width: 800px; margin: 40px auto; }
@media only screen and (min-width: 768px) {
	.pp-col { margin: 75px auto;}
}
.pp-col .media { box-shadow: 0 0 0 1px #eee; }
.pp-col__text h5 { position: relative; padding-right: 50px; font-weight: 500; display: inline-block; }
.pp-col__text h5:before { content: ""; position: absolute; right: 0; top: 50%; margin-top: -1px; width: 36px; height: 1px; background: #191919; }
.pp-col__text h3 { font-size: 20px; line-height: 1.4; margin: 12px 0; }
@media only screen and (min-width: 1024px) {
	.pp-col__text h3 { font-size: 24px;}
}
.pp-col__text h4 { font-size: 18px; line-height: 1.4; margin: 12px 0; }
@media only screen and (min-width: 1024px) {
	.pp-col__text h4 { font-size: 20px;}
}
.pp-col__text p { font-size: 13px; margin: 5px 0; }
@media only screen and (min-width: 1024px) {
	.pp-col__text p { font-size: 14px;}
}
.pp-col__text .more-btn { margin-top: 12px; }
.material-g__text { padding: 20px 10px 20px 0; }
.material-g__text h3 { font-size: 15px; line-height: 1.4; margin: 12px 0; }
@media only screen and (min-width: 1024px) {
	.material-g__text h3 { font-size: 20px;}
}
.material-g__text p { margin: 5px 0; }
@media only screen and (min-width: 1024px) {
	.material-g__text p { font-size: 14px;}
}
.material-g__text .btn { margin-top: 12px; }
.material-g__model { border-top: 1px solid #f2f0ed; padding: 5px 0 0; margin-top: 10px; }
.material-g__model p { font-size: 12px !important; font-weight: 500; }
.material-g__model a.line-btn { font-size: 12px; letter-spacing: 0; padding: 2px 0; margin-right: 10px; }
.cm-nav { max-width: 800px; margin: 0 auto; }
.cm-nav__t { position: relative; border-top: 1px solid #191919; }
.cm-nav__t h4 { padding: 12px 0; font-weight: 500; }
@media only screen and (max-width: 767px) {
	.cm-nav__t h4 { padding: 8px 0;}
}
.cm-nav__l { border-top: 1px solid #191919; }
.cm-nav__l a { position: relative; display: block; padding: 12px 0; border-top: 1px dotted #191919; }
.cm-nav__l a:first-child { border-top: none; }
@media only screen and (max-width: 767px) {
	.cm-nav__l a { padding: 8px 0;}
}
@media only screen and (min-width: 1024px) {
	.cm-nav__l a { transition: 1s cubic-bezier(0.19, 1, 0.22, 1); background: #fff; }
	.cm-nav__l a:hover { background: #f2f0ed; padding-left: 12px;}
}
.cm-nav__l a strong { font-weight: 500; display: inline-block; line-height: 1.5; margin-right: 10px; }
.cm-nav__l a span { display: inline-block; line-height: 1.5; }
.cm-col { position: relative; max-width: 800px; margin: 1px auto; background: #f2f0ed; padding: 30px 0 30px 16px; }
@media only screen and (min-width: 768px) {
	.cm-col { padding: 50px 0 50px 30px;}
}
@media only screen and (min-width: 1024px) {
	.cm-col { padding: 60px 0 60px 200px;}
}
.cm-col:before { content: ""; position: absolute; left: 100%; top: 0; width: 16px; height: 100%; background: #f2f0ed; }
@media only screen and (min-width: 768px) {
	.cm-col:before { width: 30px;}
}
@media only screen and (min-width: 1024px) {
	.cm-col:before { width: calc(50vw - 400px);}
}
.cm-col h5 { position: absolute; left: 0; top: -18px; padding: 0 10px; line-height: 36px; height: 36px; background: #191919; color: #faebe3; font-weight: 400; }
@media only screen and (min-width: 1024px) {
	.cm-col h5 { top: 0; padding: 0 16px;}
}
.cm-col h2 { font-size: 20px; line-height: 1.4; margin: 12px 0; }
@media only screen and (min-width: 1024px) {
	.cm-col h2 { font-size: 24px;}
}
.cm-col p { font-size: 13px; margin: 10px 0; }
@media only screen and (min-width: 1024px) {
	.cm-col p { font-size: 14px;}
}
.cm-col .btn { margin-top: 12px; }
/*
███████╗██╗   ██╗██████╗ ██████╗  ██████╗ ██████╗ ████████╗
██╔════╝██║   ██║██╔══██╗██╔══██╗██╔═══██╗██╔══██╗╚══██╔══╝
███████╗██║   ██║██████╔╝██████╔╝██║   ██║██████╔╝   ██║
╚════██║██║   ██║██╔═══╝ ██╔═══╝ ██║   ██║██╔══██╗   ██║
███████║╚██████╔╝██║     ██║     ╚██████╔╝██║  ██║   ██║
╚══════╝ ╚═════╝ ╚═╝     ╚═╝      ╚═════╝ ╚═╝  ╚═╝   ╚═╝    */
.hero-support { position: relative; width: 100%; margin: 0; overflow: hidden; margin: 0 auto; height: 100vh; overflow: hidden; }
.hero-support .hr { position: absolute; left: 50%; bottom: 0; width: 1px; height: 90px; background: #191919; }
@media only screen and (max-width: 767px) {
	.hero-support .hr { height: 60px;}
}
.hero-support__text { position: absolute; right: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; }
.hero-support__text h1 { margin-bottom: 20px; }
.hero-support__text .btns { margin-top: 30px; }
.hero-support__text .btns a { margin: 5px; }
.support-col { position: relative; margin: 0 auto; max-width: 800px; }
.support-col h2 { font-size: 18px; font-weight: 400; line-height: 1; }
@media only screen and (max-width: 767px) {
	.support-col h2 { margin-top: 20px;}
}
.support-col p { margin: 20px 0 12px; }
.support-col .btn { margin-top: -1px; }
.influencer__img { position: relative; }
.influencer__img:before { content: ""; position: absolute; left: -16px; bottom: -16px; width: 90%; height: 90%; background: #a2948f; }
@media only screen and (min-width: 1024px) {
	.influencer__img:before { left: -40px; bottom: -40px;}
}
.lpgrid__text { position: relative; }
.lpgrid__text .l { display: block; width: 120px; height: 33px; margin: 0 0 15px; }
@media only screen and (min-width: 1024px) {
	.lpgrid__text .l { margin: 0 0 25px; width: 180px; height: 50px;}
}
.lpgrid__text h2 { font-size: 12px; color:#999; letter-spacing: 1px; }
.lpgrid__text h2.fl { font-size:16px; color:#000; }
@media only screen and (min-width: 1024px) {
	.lpgrid__text h2 { font-size: 14px;}
	.lpgrid__text h2.fl { font-size:20px; }
}
@media only screen and (min-width: 1280px) {
	.lpgrid__text h2.fl { font-size:22px; }
}
.lpgrid__text h3 { font-size: 24px; letter-spacing: 2px; line-height: 1.5; }
@media only screen and (min-width: 1024px) {
	.lpgrid__text h3 { font-size: 30px;}
}
/*.lpgrid__text h3 span { display: inline; background-image: linear-gradient(to bottom,#fff 75%,transparent 75%,transparent 100%,#fff 100%); background-color: rgba(126,227,188,.5); }
.lpgrid__text h3.b2 span { background-image: linear-gradient(to bottom,#f2f0ed 75%,transparent 75%,transparent 100%,#f2f0ed 100%); background-color: rgba(255,171,116,.5); }*/
.lpgrid__text p { margin: 12px 0; letter-spacing: 1px; }
@media only screen and (min-width: 1024px) {
	.lpgrid__text p { font-size: 14px;}
}
@media only screen and (min-width: 1280px) {
	.lpgrid__text p { font-size: 15px;}
}
.lpgrid__text hr { margin: 12px 0; width:60px; height: 1px; border:none; background-color:rgba(0,0,0,0.1); }
@media only screen and (min-width: 1024px) {
	.lpgrid__text hr { margin: 16px 0; }
}
.lpgrid__text .btn { margin: 20px 0 12px; }
@media only screen and (max-width: 767px) {
	.grid-overflow-wrapper .grid__item { width: 200px; -ms-flex: 0 0 200px; flex: 0 0 200px;}
}
.lpcl { position: relative; background: #fff; }
.lpcl__content { text-align: center; padding: 20px 0; }
@media only screen and (min-width: 1200px) {
	.lpcl__content .section-inner { max-width: 500px; padding: 0; margin: 0 auto;}
}
.lpcl__content .lpcl__img { width: 60%; margin: 0 auto 20px; }
.lpcl__content h3 { font-size: 18px; margin-bottom: 12px; }
@media only screen and (min-width: 1024px) {
	.lpcl__content h3 { font-size: 24px;}
}
.lpcl__content p { font-size: 12px; }
@media only screen and (min-width: 1024px) {
	.lpcl__content p { font-size: 14px;}
}
.lpcl__content .btn-wrap .btn { display: inline-block; margin: 0 5px; }


.project-grid { display: block }
.project-grid__text { padding:15px 0; }
.project-grid__text h2 { font-size:14px; margin-bottom: 5px; }
@media only screen and (min-width: 1024px) {
	.project-grid__text h2 { font-size:15px; }
}


.action-grid { background-color: #fff; height: 100%; padding:10px 0; box-shadow: 0 0 1px rgba(0,0,0,0.1); border-radius: 10px; transition:.5s ease; }
.action-grid__image { border-radius: 100%; max-width:200px; width:80%; margin:15px auto 5px; overflow:hidden; }
.action-grid__text { padding: 15px; text-align: center; }
.action-grid__text h2 { font-size:15px; line-height: 1.5; }
.action-grid__text h2 span { display: block; font-family: "Calibre", sans-serif; font-size:12px; }
.action-grid__text p { margin-top:5px; }
@media only screen and (min-width: 1024px) {
	.action-grid:hover { box-shadow: 0 2px 5px rgba(0,0,0,0.2); }
}
@media only screen and (max-width: 767px) {
	.action-grid { background-color: #fff; display: flex !important; align-items: center; justify-content: center; padding:10px; box-shadow: 0 0 1px rgba(0,0,0,0.1); border-radius: 10px; transition:.5s ease; }
	.action-grid .action-grid__image { width:35%; padding:10px; margin:0 auto; }
	.action-grid .action-grid__image .media__image { border-radius: 100%; overflow: hidden; }
	.action-grid .action-grid__text { text-align: left; width:65%; padding:10px; }
	.action-grid .action-grid__text h2 { font-size: 20px; font-weight: 100; }
}

.action-grid--index { background-color: #fff; display: flex !important; align-items: center; justify-content: center; padding:10px; box-shadow: 0 0 1px rgba(0,0,0,0.1); border-radius: 10px; transition:.5s ease; }
.action-grid--index .action-grid__image { width:35%; padding:10px; margin:0 auto; }
.action-grid--index .action-grid__image .media__image { border-radius: 100%; overflow: hidden; }
.action-grid--index .action-grid__text { text-align: left; width:65%; padding:10px; }
.action-grid--index .action-grid__text h2 { font-size: 20px; font-weight: 100; }
@media only screen and (min-width: 1024px) {
	.action-grid--index:hover { box-shadow: 0 2px 5px rgba(0,0,0,0.2); }
	.action-grid--index .action-grid__text h2 { font-size: 24px; font-weight: 100; }
}

#bg-content { position: relative; padding:20px 0; }
.bg__video { position: absolute; top: 0; left: 0; width: 100%; height: 100%;object-fit: cover; opacity: .5; }
@media only screen and (min-width: 1024px) {
	#bg-content { padding:80px 0 60px; }
}



