@import url('https://fonts.googleapis.com/css?family=Lato');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP');

a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

.slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{top:0;left:0}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */

.modaal-noscroll {
	overflow: hidden;
}

.modaal-accessible-hide {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0 !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden;
}

.modaal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	opacity: 0;
}

.modaal-wrapper {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	overflow: auto;
	opacity: 1;
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.modaal-wrapper * {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-backface-visibility: hidden;
}

.modaal-wrapper .modaal-close {
	border: none;
	background: transparent;
	padding: 0;
	-webkit-appearance: none;
}

.modaal-wrapper.modaal-start_none {
	display: none;
	opacity: 1;
}

.modaal-wrapper.modaal-start_fade {
	opacity: 0;
}

.modaal-wrapper *[tabindex="0"] {
	outline: none !important;
}

.modaal-wrapper.modaal-fullscreen {
	overflow: hidden;
}

.modaal-outer-wrapper {
	display: table;
	position: relative;
	width: 100%;
	height: 100%;
}

.modaal-fullscreen .modaal-outer-wrapper {
	display: block;
}

.modaal-inner-wrapper {
	display: table-cell;
	width: 100%;
	height: 100%;
	position: relative;
	vertical-align: middle;
	text-align: center;
	padding: 80px 25px;
}

.modaal-fullscreen .modaal-inner-wrapper {
	padding: 0;
	display: block;
	vertical-align: top;
}

.modaal-container {
	position: relative;
	display: inline-block;
	width: 100%;
	margin: auto;
	text-align: left;
	color: #000;
	max-width: 1000px;
	border-radius: 0px;
	background: #fff;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	cursor: auto;
}

.modaal-container.is_loading {
	height: 100px;
	width: 100px;
	overflow: hidden;
}

.modaal-fullscreen .modaal-container {
	max-width: none;
	height: 100%;
	overflow: auto;
}

.modaal-close {
	position: fixed;
	right: 20px;
	top: 20px;
	color: #fff;
	cursor: pointer;
	opacity: 1;
	width: 50px;
	height: 50px;
	background: rgba(0, 0, 0, 0);
	border-radius: 100%;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.modaal-close:focus,
.modaal-close:hover {
	outline: none;
	background: #fff;
}

.modaal-close:focus:before,
.modaal-close:focus:after,
.modaal-close:hover:before,
.modaal-close:hover:after {
	background: #b93d0c;
}

.modaal-close span {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0 !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden;
}

.modaal-close:before,
.modaal-close:after {
	display: block;
	content: " ";
	position: absolute;
	top: 14px;
	left: 23px;
	width: 4px;
	height: 22px;
	border-radius: 4px;
	background: #fff;
	-webkit-transition: background 0.2s ease-in-out;
	transition: background 0.2s ease-in-out;
}

.modaal-close:before {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.modaal-close:after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.modaal-fullscreen .modaal-close {
	background: #afb7bc;
	right: 10px;
	top: 10px;
}

.modaal-content-container {
	padding: 30px;
}

.modaal-confirm-wrap {
	padding: 30px 0 0;
	text-align: center;
	font-size: 0;
}

.modaal-confirm-btn {
	font-size: 14px;
	display: inline-block;
	margin: 0 10px;
	vertical-align: middle;
	cursor: pointer;
	border: none;
	background: transparent;
}

.modaal-confirm-btn.modaal-ok {
	padding: 10px 15px;
	color: #fff;
	background: #555;
	border-radius: 3px;
	-webkit-transition: background 0.2s ease-in-out;
	transition: background 0.2s ease-in-out;
}

.modaal-confirm-btn.modaal-ok:hover {
	background: #2f2f2f;
}

.modaal-confirm-btn.modaal-cancel {
	text-decoration: underline;
}

.modaal-confirm-btn.modaal-cancel:hover {
	text-decoration: none;
	color: #2f2f2f;
}

.modaal-instagram .modaal-container {
	width: auto;
	background: transparent;
	box-shadow: none !important;
}

.modaal-instagram .modaal-content-container {
	padding: 0;
	background: transparent;
}

.modaal-instagram .modaal-content-container > blockquote {
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
}

.modaal-instagram iframe {
	opacity: 0;
	margin: -6px !important;
	border-radius: 0 !important;
	width: 1000px !important;
	max-width: 800px !important;
	box-shadow: none !important;
	-webkit-animation: instaReveal 1s linear forwards;
	animation: instaReveal 1s linear forwards;
}

.modaal-image .modaal-inner-wrapper {
	padding-left: 140px;
	padding-right: 140px;
}

.modaal-image .modaal-container {
	width: auto;
	max-width: 100%;
}

.modaal-gallery-wrap {
	position: relative;
	color: #fff;
}

.modaal-gallery-item {
	display: none;
}

.modaal-gallery-item img {
	display: block;
}

.modaal-gallery-item.is_active {
	display: block;
}

.modaal-gallery-label {
	position: absolute;
	left: 0;
	width: 100%;
	margin: 20px 0 0;
	font-size: 18px;
	text-align: center;
	color: #fff;
}

.modaal-gallery-label:focus {
	outline: none;
}

.modaal-gallery-control {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	opacity: 1;
	cursor: pointer;
	color: #fff;
	width: 50px;
	height: 50px;
	background: rgba(0, 0, 0, 0);
	border: none;
	border-radius: 100%;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.modaal-gallery-control.is_hidden {
	opacity: 0;
	cursor: default;
}

.modaal-gallery-control:focus,
.modaal-gallery-control:hover {
	outline: none;
	background: #fff;
}

.modaal-gallery-control:focus:before,
.modaal-gallery-control:focus:after,
.modaal-gallery-control:hover:before,
.modaal-gallery-control:hover:after {
	background: #afb7bc;
}

.modaal-gallery-control span {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0 !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden;
}

.modaal-gallery-control:before,
.modaal-gallery-control:after {
	display: block;
	content: " ";
	position: absolute;
	top: 16px;
	left: 25px;
	width: 4px;
	height: 18px;
	border-radius: 4px;
	background: #fff;
	-webkit-transition: background 0.2s ease-in-out;
	transition: background 0.2s ease-in-out;
}

.modaal-gallery-control:before {
	margin: -5px 0 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.modaal-gallery-control:after {
	margin: 5px 0 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.modaal-gallery-next-inner {
	left: 100%;
	margin-left: 40px;
}

.modaal-gallery-next-outer {
	right: 45px;
}

.modaal-gallery-prev:before,
.modaal-gallery-prev:after {
	left: 22px;
}

.modaal-gallery-prev:before {
	margin: 5px 0 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.modaal-gallery-prev:after {
	margin: -5px 0 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.modaal-gallery-prev-inner {
	right: 100%;
	margin-right: 40px;
}

.modaal-gallery-prev-outer {
	left: 45px;
}

.modaal-video-wrap {
	margin: auto 50px;
	position: relative;
}

.modaal-video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	background: #000;
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
}

.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.modaal-iframe .modaal-content {
	width: 100%;
	height: 100%;
}

.modaal-iframe-elem {
	width: 100%;
	height: 100%;
	display: block;
}

.modaal-loading-spinner {
	background: none;
	position: absolute;
	width: 200px;
	height: 200px;
	top: 50%;
	left: 50%;
	margin: -100px 0 0 -100px;
	-webkit-transform: scale(0.25);
	-ms-transform: scale(0.25);
	transform: scale(0.25);
}

.modaal-loading-spinner > div {
	width: 24px;
	height: 24px;
	margin-left: 4px;
	margin-top: 4px;
	position: absolute;
}

.modaal-loading-spinner > div > div {
	width: 100%;
	height: 100%;
	border-radius: 15px;
	background: #fff;
}

.modaal-loading-spinner > div:nth-of-type(1) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}

.modaal-loading-spinner > div:nth-of-type(2) > div,
.modaal-loading-spinner > div:nth-of-type(3) > div {
	-ms-animation: modaal-loading-spinner 1s linear infinite;
	-moz-animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	-o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(1) {
	-ms-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(2) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .12s;
	animation-delay: .12s;
}

.modaal-loading-spinner > div:nth-of-type(2) {
	-ms-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(3) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .25s;
	animation-delay: .25s;
}

.modaal-loading-spinner > div:nth-of-type(4) > div,
.modaal-loading-spinner > div:nth-of-type(5) > div {
	-ms-animation: modaal-loading-spinner 1s linear infinite;
	-moz-animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	-o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(3) {
	-ms-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(4) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .37s;
	animation-delay: .37s;
}

.modaal-loading-spinner > div:nth-of-type(4) {
	-ms-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(5) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .5s;
	animation-delay: .5s;
}

.modaal-loading-spinner > div:nth-of-type(6) > div,
.modaal-loading-spinner > div:nth-of-type(7) > div {
	-ms-animation: modaal-loading-spinner 1s linear infinite;
	-moz-animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	-o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(5) {
	-ms-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(6) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .62s;
	animation-delay: .62s;
}

.modaal-loading-spinner > div:nth-of-type(6) {
	-ms-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(7) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .75s;
	animation-delay: .75s;
}

.modaal-loading-spinner > div:nth-of-type(7) {
	-ms-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(8) > div {
	-webkit-animation: modaal-loading-spinner 1s linear infinite;
	animation: modaal-loading-spinner 1s linear infinite;
	-webkit-animation-delay: .87s;
	animation-delay: .87s;
}

.modaal-loading-spinner > div:nth-of-type(8) {
	-ms-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
	-webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
	transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
}

@media only screen and (min-width: 1400px) {

.modaal-video-container {
	padding-bottom: 0;
	height: 731px;
}

}

@media only screen and (max-width: 1140px) {

.modaal-image .modaal-inner-wrapper {
	padding-left: 25px;
	padding-right: 25px;
}

.modaal-gallery-control {
	top: auto;
	bottom: 20px;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
	background: rgba(0, 0, 0, 0.7);
}

.modaal-gallery-control:before,
.modaal-gallery-control:after {
	background: #fff;
}

.modaal-gallery-next {
	left: auto;
	right: 20px;
}

.modaal-gallery-prev {
	left: 20px;
	right: auto;
}

}

@media screen and (max-width: 900px) {

.modaal-instagram iframe {
	width: 500px !important;
}

}

@media only screen and (max-width: 600px) {

.modaal-instagram iframe {
	width: 280px !important;
}

}

@media screen and (max-height: 1100px) {

.modaal-instagram iframe {
	width: 700px !important;
}

}

@media screen and (max-height: 1000px) {

.modaal-inner-wrapper {
	padding-top: 60px;
	padding-bottom: 60px;
}

.modaal-instagram iframe {
	width: 600px !important;
}

}

@media screen and (max-height: 900px) {

.modaal-instagram iframe {
	width: 500px !important;
}

.modaal-video-container {
	max-width: 900px;
	max-height: 510px;
}

}

@media only screen and (max-height: 820px) {

.modaal-gallery-label {
	display: none;
}

}

@keyframes instaReveal {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@-webkit-keyframes instaReveal {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@-webkit-keyframes modaal-loading-spinner {

0% {
	opacity: 1;
	-ms-transform: scale(1.5);
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

100% {
	opacity: .1;
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@keyframes modaal-loading-spinner {

0% {
	opacity: 1;
	-ms-transform: scale(1.5);
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

100% {
	opacity: .1;
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}

}


/* ------------------------------------------
                  LAYOUTS
------------------------------------------ */

html {
	width: 100%;
	height: 100%;
}

.drawer-open {
	overflow: hidden;
}

body {
	width: 100%;
	height: 100%;
	background: #fff;
	font: 15px 'Lato','Noto Serif JP','游明朝','YuMincho','ヒラギノ明朝 ProN W3','Hiragino Mincho ProN','HG明朝E','ＭＳ Ｐ明朝','ＭＳ 明朝', serif;
	color: #1a1a1a;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.bg-gray {
	background: #f6f6f6;
}

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

img {
	max-width: 100%;
}

a {
	color: #1a1a1a;
	text-decoration: none;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

a:hover {
	color: #999;
	text-decoration: underline;
}

.bg_grid {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.bg_grid span:nth-child(1) {
	position: absolute;
	top: 0;
	left: 12.5%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.bg_grid span:nth-child(2) {
	position: absolute;
	top: 0;
	left: 25%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.bg_grid span:nth-child(3) {
	position: absolute;
	top: 0;
	left: 37.5%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.bg_grid span:nth-child(4) {
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.bg_grid span:nth-child(5) {
	position: absolute;
	top: 0;
	left: 62.5%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.bg_grid span:nth-child(6) {
	position: absolute;
	top: 0;
	left: 75%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.bg_grid span:nth-child(7) {
	position: absolute;
	top: 0;
	left: 87.5%;
	display: block;
	width: 1px;
	height: 100%;
	background: #f1f1f1;
}

.globalheader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 30px;
	background: rgba(255,255,255,1);
	z-index: 2000;
	-webkit-transition: all 200ms linear;
  transition: all 200ms linear;
}

.bg-gray .globalheader {
	background: #f6f6f6;
}

.globalheader_logo {
	line-height: 0;
}

.globalheader_logo svg {
	width: 300px;
}

.drawermenu_button {
	position: relative;
	top: -3px;
  width: 30px;
  height: 30px;
  padding: 20px 0;
  border: none;
  background: none;
  cursor: pointer;
  outline: none;
}

.drawermenu_button_line {
  position: absolute;
  top: 23px;
  left: 0;
  width: 30px;
  height: 2px;
  background: #000;
  border-radius: 10px;
  -webkit-transition: all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.drawermenu_button_line:before {
  content: "";
  display: block;
  position: absolute;
  top: -8px;
  left: 0;
  width: 30px;
  height: 2px;
  background: #000;
  border-radius: 10px;
  -webkit-transition: all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.drawermenu_button_line:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 30px;
  height: 2px;
  background: #000;
  border-radius: 10px;
  -webkit-transition: all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.drawermenu_button.is-close .drawermenu_button_line {
  background: #1a1a1a;
}

.drawermenu_button.is-close .drawermenu_button_line:before {
  transform: rotate(45deg);
  top: 0;
  left: -5px;
	background: #fff;
}

.drawermenu_button.is-close .drawermenu_button_line:after {
  transform: rotate(-45deg);
  top: 0;
  left: -5px;
	background: #fff;
}

.drawermenu.is-open {
  transform: translateX(0);
}

.drawermenu a {
  color: #fff;
}

.drawer-overray {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #1a1a1a;
	color: #fff;
	z-index: 1000;
}

.drawermenu {
	height: 100%;
	padding: 100px 40px 0;
	color: #fff;
}

.drawermenu a {
	color: #fff;
}

.drawermenu_navi {
	height: 100%;
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
	overflow-y: auto;
}

.drawermenu_navi ul li {
	border-bottom: solid 1px rgba(255,255,255,0.12);
	transform: translateX(-30px);
	opacity: 0;
}

.drawermenu_navi ul li a {
	display: block;
	padding: 15px;
	font-size: 25px;
	letter-spacing: 0.1em;
}

.drawermenu_navi ul li a:hover {
	text-decoration: none;
	background: rgba(255,255,255,0.12);
}

.drawer-open .globalheader {
	background: rgba(255,255,255,0);
}

.drawer-open .drawermenu_navi ul li.is-current a {
	background: rgba(255,255,255,0.12);
}

.drawer-open .drawermenu_navi ul li:nth-child(1) {
	-webkit-animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.2s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.2s 1 forwards;
}

.drawer-open .drawermenu_navi ul li:nth-child(2) {
	-webkit-animation: slide 0.3s ease-in 0.3s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.3s 1 forwards;
}

.drawer-open .drawermenu_navi ul li:nth-child(3) {
	-webkit-animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.4s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.4s 1 forwards;
}

.drawer-open .drawermenu_navi ul li:nth-child(4) {
	-webkit-animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.5s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.5s 1 forwards;
}

.drawer-open .drawermenu_navi ul li:nth-child(5) {
	-webkit-animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.6s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.6s 1 forwards;
}

.drawer-open .drawermenu_navi ul li:nth-child(6) {
	-webkit-animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.7s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.7s 1 forwards;
}

.drawer-open .drawermenu_navi ul li:nth-child(7) {
	-webkit-animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.8s 1 forwards;
  animation: slide 0.3s cubic-bezier(.5,0,0,1) 0.8s 1 forwards;
}

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

.drawer-open .drawermenu_navi ul li:nth-child(1) {
	transform: translateX(0);
}


.drawer-open .globalheader_logo svg {
	fill: #fff;
}


.leftsidenavi-pc {
	position: fixed;
	top: 0;
	left: 13px;
	display: flex;
	width: 40px;
	height: 100%;
	font-size: 20px;
	z-index: 1000;
}

.leftsidenavi-pc ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.leftsidenavi-pc ul li {
	position: relative;
	margin-bottom: 30px;
}

.leftsidenavi-pc ul li:before {
	position: absolute;
	bottom: -25px;
	left: 50%;
	content: "";
	display: block;
	width: 2px;
	height: 20px;
	margin-left: -1px;
	background: #1a1a1a;
}

.leftsidenavi-pc ul li:last-of-type:before {
	display: none;
}

.rightsidenavi-pc {
	position: fixed;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 40px;
	height: 100%;
	font-size: 15px;
	z-index: 1000;
}

.rightsidenavi-pc .onlineshop {
	display: inline-block;
	padding: 15px 5px;
	background: #1a1a1a;
	color: #fff;
	text-decoration: none;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.rightsidenavi-pc .onlineshop:hover {
	background: #5a5a5a;
}

.rightsidenavi-pc .onlineshop svg {
	margin-bottom: 7px;
}

.content {
	padding-top: 100px;
	display: block;
}

.content_title {
	font-size: 60px;
}

.content_largetitle {
	display: flex;
	align-items: center;
	margin-bottom: 30px;
	font-size: 70px;
	line-height: 1.02;
	z-index: 100;
}

.content_largetitle-lower {
	font-size: 50px;
}

.content_largetitle-marginsmall {
	margin-bottom: 0;
}

.content_largetitle_caption {
	font-size: 15px;
	line-height: 1.5;
}

.content_title_button {
	padding-left: 25px;
	font-size: 15px;
}

.content_largetitle-withtext {
	justify-content: flex-start;
}

.content_largetitle-ja {
	font-size: 35px;
}

.content_largetitle-center {
	justify-content: center;
}

.content_largetitle-withtext .content_largetitle_caption {
	padding-left: 20px;
}

.brandrist .content_title {
	padding: 100px 0;
}

.brandlist-top {
	position: relative;
}

.brandlist-top .content_largetitle {
	position: absolute;
	top: 8vw;
}

.brandlist-top .brandlist-top_box-1 {
	padding-left: calc(100vw / 16 * 5);
	margin-bottom: -7vw;
}

.brandlist-top .brandlist-top_box-2 {
	padding-right: calc(100vw / 16 * 8);
	margin-bottom: -29vw;
}

.brandlist-top .brandlist-top_box-3 {
	padding-left: calc(100vw / 16 * 6.5);
	padding-right: calc(100vw / 16 * 0.5);
	margin-bottom: -5vw;
}

.brandlist-top .brandlist-top_box-4 {
	padding-left: calc(100vw / 16 * 0.5);
	padding-right: calc(100vw / 16 * 6);
	margin-bottom: -20vw;
}

.brandlist-top .brandlist-top_box-5 {
	padding-left: calc(100vw / 16 * 7.5);
}

.brandlist-top_box_image {
	line-height: 0;
}

.brandlist-top_box_body {
	display: block;
	position: relative;
}

.brandlist-top_box_logo {
	position: absolute !important;
	line-height: 1;
}

.brandlist-top_box_logo-dents {
	bottom: 20px;
	right: 20px;
}

.brandlist-top_box_logo-slaith {
	top: 30px;
	right: 20px;
}

.brandlist-top_box_logo-pantherella {
	top: 20px;
	left: 20px;
}

.brandlist-top_box_logo-fanni {
	bottom: 20px;
	left: 20px;
}

.brandlist-top_box_logo-veil {
	bottom: 20px;
	right: 20px;
}

.brandlist-top_box_logo .dents {
	width: 200px;
	height: auto;
}

.brandlist-top_box_logo .slaith {
	width: 200px;
	height: auto;
}

.brandlist-top_box_logo .pantherella {
	width: 200px;
	height: auto;
}

.brandlist-top_box_logo .fanni {
	width: 220px;
	height: auto;
}

.brandlist-top_box_logo .veil {
	width: 260px;
	height: auto;
}

.content_section {
	max-width: 1260px;
	padding: 0 60px;
	margin: 0 auto 70px;
}

.content_section-large {
	max-width: 100%;
	padding: 0 30px;
}

.content_section-small {
	max-width: 960px;
}

.content_section-marginbottomsmall {
	margin-bottom: 50px;
}

.content_section-fullwidth {
	padding: 0;
}

.content_section-title {
	position: relative;
	max-width: 1800px;
	height: 384px;
	padding: 0 60px;
	margin: 0 auto 70px auto;
}

.content_section-title-brand {
	background: url(/assets/img/brand-title-bg.png) no-repeat center center;
	background-size: cover;
}

.content_section-title_text {
	position: relative;
	font-size: 100px;
	color: #fff;
	line-height: 1;
	z-index: 10;
}

.content_section-title_text_inner {
	display: inline-block;
	position: relative;
}

.content_section-carousel {
	position: relative;
	max-width: 1800px;
	margin: 0 auto 70px auto;
	padding: 0;
}

.content_section-carousel_images {
	width: 100%;
	overflow: hidden;
	opacity: 0;
	transition:all 1.2s cubic-bezier(.5,0,0,1);
}

.content_section-carousel_images.slick-initialized {
	opacity: 1;
}

.content_section-carousel .content_section-title_text {
	position: absolute;
	top: 40%;
	left: 0;
	width: 100%;
	text-align: center;
}

.newslist {

}

.newslist-top {
	margin-bottom: 30px;
}

.newslist ul {
	display: flex;
	flex-wrap: wrap;
}

.newslist ul li {
	width: 23%;
	margin: 0 2.6666667% 50px 0;
}

.newslist ul li:nth-child(4n) {
	margin-right: 0;
}

.newslist ul li a:hover {
	text-decoration: none;
	color: #1a1a1a;
}

.newslist_image {
	position: relative;
	width: 100%;
	padding-top: 100%;
	margin-bottom: 10px;
	overflow: hidden;
}

.newslist_image figure {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.newslist_image figure img {
	transition:all 1.2s cubic-bezier(.5,0,0,1);
}

.newslist ul li a:hover .newslist_image img {
	transform: scale(1.05);
}

.newslist_meta {
	display: flex;
	margin-bottom: 10px;
	font-size: 10px;
}

.newslist_meta_date {
	width: 30%;
}

.newslist_meta_brand {
	width: 70%;
	text-align: right;
}

.newslist-lower li {
	display: flex;
	flex-direction: column;
}

.newslist-lower a {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
}

.newslist-lower .newslist_image {
	margin-bottom: 0;
}

.newslist-lower .newslist_detail {
	padding: 10px;
}

.newslist-lower .newslist_meta {
	font-size: 10px;
}

.globalfooter {

}

.globalfooter_brand {
	padding: 25px 30px;
	background: #3a3a3a;
}

.globalfooter_brand ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	max-width: 1800px;
	margin: 0 auto;
}

.globalfooter_brand ul li {
	width: 12.5%;
	padding: 12px 15px;
	line-height: 1;
}

.globalfooter_corporate {
	background: #1a1a1a;
	color: #fff;
}

.globalfooter_corporate_inner {
	max-width: 1800px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding: 50px 30px;
}

.globalfooter_corporate_onlineshop {
	width: 50%;
}

.globalfooter_corporate_onlineshop .onlineshop {
	width: 180px;
}

.globalfooter_corporate_social {
	margin-top: 10px;
}

.globalfooter_corporate_social ul li {
	margin-right: 15px;
	display: inline-block;
}

.globalfooter_corporate_social a {
	color: #fff;
}

.globalfooter_corporate_social span {
	display: inline-block;
}

.globalfooter_corporate_social span svg {
	position: relative;
	top: 2px;
	font-size: 20px;
}

.globalfooter_corporate_copryright {
	width: 50%;
	text-align: right;
	font-size: 13px;
}

.globalfooter_corporate_copryright a {
	color: #fff;
}

.globalfooter_corporate_copryright_nav ul {
	margin-bottom: 10px;
}

.globalfooter_corporate_copryright_nav li {
	display: inline-block;
	margin-left: 15px;
}

.carousel_large {
	position: relative;
	opacity: 0;
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.carousel_large.slick-initialized {
	opacity: 1;
}

.carousel_large_item {
	position: relative;
}

.carousel_large_item_image img {
	width: 100%;
	height: auto;
}

.slick-slide .carousel_large_item_logo {
	position: absolute;
	bottom: 40px;
	left: 40px;
}

.btn.carousel_large_item_link {
	position: absolute;
	bottom: 25px;
	right: 25px;
}

.carousel_large_item_logo .veil {
	width: 300px;
	height: auto;
}

.carousel_large_item_logo .pantherella {
	width: 300px;
	height: auto;
}

.carousel_large_item_logo .dents {
	width: 300px;
	height: auto;
}

.carousel_large_item_logo .slaith {
	width: 230px;
	height: auto;
}

.carousel_large_item_logo .funni {
	width: 260px;
	height: auto;
}

.carousel_large .slick-slide .carousel_large_item_image img {
  transform: scale(1.02);
  transition: 1.2s cubic-bezier(.5,0,0,1);
}

.carousel_large .slick-current .carousel_large_item_image img {
  transform: scale(1);
}

.carousel_large .slick-dots {
	margin-top: 10px;
	text-align: center;
}

.carousel_large .slick-dots li {
	display: inline-block;
	margin: 0 5px;
}

.carousel_large .slick-dots li button {
	border: none;
	width: 10px;
	height: 10px;
	padding: 0;
	border-radius: 50%;
	background: #e9e9e9;
	text-indent: -9999px;
	line-height: 0;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.carousel_large .slick-dots li.slick-active button {
	background: #1a1a1a;
}

.carousel_large .slick-dots li button:focus {
	outline:none;
}

.brandlist ul {
	display: flex;
	flex-wrap: wrap;
}

.brandlist ul li {
	width: 31.555555553%;
	margin: 0 2.6666667% 50px 0;
}

.brandlist ul li:nth-child(3n) {
	margin-right: 0;
}

.brandlist-large ul li {
	width: 48%;
	margin: 0 4% 80px 0;
}

.brandlist-large ul li:nth-child(3n) {
	margin-right: 4%;
}

.brandlist-large ul li:nth-child(2n) {
	margin-right: 0;
}

.brandlist-large {
	margin-bottom: -50px;
}

.brandlist_image {
	margin-bottom: 10px;
}

.brandlist_logo {
	margin-bottom: 15px;
	text-align: center;
}

.brandlist_logo {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
}

.brandlist_logo img {
	width: auto;
	height: 60px;
}

.brandlist_logo-veil img {
	height: 30px;
}

.brandlist_excerpt {
	margin-bottom: 15px;
	font-size: 13px;
}

.brandlist_buttons {
	display: flex;
	justify-content: space-between;
}

.brandlist_buttons .btn {
	width: 49%;
	text-align: center;
}

.pagelist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.pagelist .btn {
	width: 31.555555553%;
	text-align: center;
}

.pagelist .onlineshop {
	margin-top: 25px;
	width: 100%;
}

.pagelist-col2 .btn {
	width: 48%;
	margin-bottom: 30px;
}

.googlemap {
	width: 100%;
	height: 400px;
}

.branddetail {

}

.branddetail_logo {
	padding: 50px 0;
	text-align: center;
}

.branddetail_logo .pantherella {
	max-width: 400px;
}

.branddetail_logo .dents {
	max-width: 400px;
}

.branddetail_logo .veil {
	max-width: 500px;
}

.branddetail_logo .slaith {
	max-width: 350px;
}

.branddetail_logo .funni {
	max-width: 400px;
}

.branddetail_logo .alanpaine {
	max-width: 400px;
}

.branddetail_logo .armadillo {
	max-width: 320px;
}

.branddetail_bottom {
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}

.branddetail_bottom_image {
	width: 64%;
}

.branddetail_bottom_image_main {
	margin-bottom: 30px;
}

.branddetail_bottom_image_sub ul {
	display: flex;
	flex-wrap: wrap;
}

.branddetail_bottom_image_sub ul li {
	width: 48%;
	margin: 0 4% 30px 0;
	line-height: 0;
}

.branddetail_bottom_image_sub ul li:nth-child(2n) {
	margin-right: 0;
}

.branddetail_bottom_text {
	width: 32%;
	font-size: 13px;
	line-height: 1.8;
}

.branddetail_bottom_text_ja {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: solid 1px #1a1a1a;
}

.branddetail_button {
	text-align: center;
}

.branddetail_button .btn {
	width: 50%;
}

.page_title {
	padding: 50px;
	font-size: 80px;
	line-height: 1.02;
	text-align: center;
}

.page_title .ja {
	display: block;
	margin-top: 20px;
	font-size: 50%;
}

.category_navi {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 50px;
}

.category_navi .btn {
	margin: 0 2.5px 5px 2.5px;
	font-size: 12px;
}

.category_navi .btn.is-current {
	background: #e1e1e1;
	color: #1a1a1a;
}

.pager ul {
	text-align: center;
}

.pager ul li {
	display: inline-block;
}

.pager ul li a {
	position: relative;
	display: inline-block;
	padding: 3px 7px;
	margin: 0 3px;
	font-size: 20px;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.pager ul li a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #1a1a1a;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.pager ul li a:hover {
	text-decoration: none;
}

.pager ul li a:hover:before {
	opacity: 0;
}

.pager ul li  span {
	display: inline-block;
	padding: 3px 7px;
	margin: 0 3px;
	font-size: 20px;
	color: #999;
}

.local_navi {
	text-align: center;
}

.local_navi a {
	position: relative;
	display: inline-block;
	padding: 3px 7px;
	margin: 0 3px;
	font-size: 20px;
}

.local_navi a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #1a1a1a;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.local_navi a:hover {
	text-decoration: none;
}

.local_navi a:hover:before {
	opacity: 0;
}

.entry_detail_header {
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}

.entry_detail_header_meta_date {
	margin-right: 10px;
}

.entry_detail_header_social ul li {
	display: inline-block;
	margin-left: 5px;
	vertical-align: top;
	line-height: 1;
}

.entry_title {
	margin-bottom: 30px;
	font-size: 30px;
	line-height: 1.3;
	text-align: center;
}

.entry_body {
	max-width: 1000px;
	margin: 0 auto;
}

.entry_body p {
	margin-bottom: 30px;
}

.entry_body img {
	margin-bottom: 20px;
}

.table-lang {
	width: 100%;
	margin: 0 auto;
}

.table-lang th {
	width: 50%;
	padding: 20px;
	text-align: right;
	border-bottom: solid 1px #1a1a1a;
	border-right: solid 1px #1a1a1a;
}

.table-lang td {
	width: 50%;
	padding: 20px;
	border-bottom: solid 1px #1a1a1a;
}

.table-lang tr:last-of-type th,
.table-lang tr:last-of-type td {
	border-bottom: none;
}

.table-lang td p {
	margin-bottom: 20px;
}

.table-lang td p:last-of-type {
	margin-bottom: 0;
}

.table-profile {
	width: 100%;
	margin: 0 auto;
}

.table-profile th {
	width: 240px;
	padding: 15px;
	border-bottom: solid 1px #1a1a1a;
	font-weight: bold;
	text-align: right;
}

.table-profile td {
	padding: 15px;
	border-bottom: solid 1px #1a1a1a;
}

.table-history {
	width: 100%;
	margin: 0 auto;
}

.table-history th {
	width: 120px;
	padding: 15px;
	border-bottom: solid 1px #1a1a1a;
	font-weight: bold;
	text-align: right;
}

.table-history td {
	padding: 15px;
	border-bottom: solid 1px #1a1a1a;
}

.table-app {
	width: 100%;
	margin: 0 auto;
}

.table-app th {
	width: 240px;
	padding: 15px;
	border-bottom: solid 1px #1a1a1a;
	font-weight: bold;
	text-align: right;
}

.table-app td {
	padding: 15px;
	border-bottom: solid 1px #1a1a1a;
}

.entrynavi {
	margin-bottom: 30px;
}

.entrynavi .prev {
	float: left;
}

.entrynavi .next {
	float: right;
}

.entrynavi .top {
	width: 100%;
	text-align: center;
}

.entrynavi .top a {
	position: relative;
	display: inline-block;
	padding: 3px 7px;
	margin: 0 3px;
	font-size: 20px;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.entrynavi .top a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #1a1a1a;
	-webkit-transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

.entrynavi .top a:hover {
	text-decoration: none;
}

.entrynavi .top a:hover:before {
	opacity: 0;
}

.content_section_lead {
	margin-bottom: 50px;
	text-align: center;
}

.form_body {
	padding: 50px;
	background: #f3f3f3;
}

.form_body .content_largetitle {
	justify-content: center;
}

.form_col {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 20px 0;
	border-bottom: solid 1px #ccc;
}

.form_col_label {
	width: 200px;
	padding-right: 20px;
	text-align: right;
}

.form_col_input {
	flex: 1;
}

.form_col_input input[type="text"] {
	width: 50%;
	padding: 7px 15px;
	font-size: 15px;
	border: solid 1px #ccc;
}

.form_col_input select {
	font-size: 15px;
}

.form_col_input textarea {
	width: 100%;
	height: 250px;
	padding: 7px 15px;
	font-size: 15px;
	border: solid 1px #ccc;
}

.form_col_input input[type="text"]:focus,
.form_col_input textarea:focus {
	border: solid 1px #1a1a1a;
}

.form_submit {
	padding-top: 20px;
	text-align: center;
}

.form_submit .btn {
	width: 50%;
	padding: 15px 20px;
	border: none;
	font-size: 17px;
	cursor: pointer;
}

.form_col_input_list {
	display: flex;
}

.form_col_input_list li {
	display: flex;
	margin-right: 20px;
}

.form_col_input_list li label {
	padding-left: 7px;
}

.form_subtitle {
	margin-top: 40px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

.form_col_input_list-vertical {
	flex-direction: column;
}

.form_col_input_list-vertical li {
	margin-bottom: 10px;
}

.form_col_input_list-vertical li:last-of-type {
	margin-bottom: 0;
}

.with-number {
	padding-left: 20px;
	list-style: decimal;
	list-style-position: outside;
}

.with-icon li {
	position: relative;
	padding-left: 15px;
	margin-bottom: 5px
}

.with-icon > li:before {
	position: absolute;
	top: 9px;
	left: 0;
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	background: #3a3a3a;
}

.with-icon li ul {
	padding-top: 5px;
}

.with-icon > li ul li {
	padding-left: 10px;
}

.with-icon > li ul li:before {
	position: absolute;
	top: 11px;
	left: 0;
	content: "";
	display: block;
	width: 4px;
	height: 4px;
	background: #3a3a3a;
}

.sitemap {
	display: flex;
	flex-wrap: wrap;
}

.sitemap_box {
	width: 30%;
	margin: 0 5% 30px 0;
	padding-bottom: 30px;
	border-bottom: solid 1px #3a3a3a;
}

.sitemap_box:nth-child(3n) {
	margin-right: 0;
}

.sitemap_box dt {
	margin-bottom: 5px;
	font-size: 20px;
	font-weight: bold;
}

.sitemap_box dd {
	margin-bottom: 5px;
	padding-left: 25px;
}

.sitemap_box a {
	position: relative;
	display: inline-block;
	padding-left: 25px;
}

.sitemap_box a:before {
	position: absolute;
	top: 10px;
	left: 0;
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-top: solid 1px #3a3a3a;
	border-right: solid 1px #3a3a3a;
	transform: rotate(45deg);
}

.sitemap_box dd a {
	padding-left: 15px;
}

.sitemap_box dd a:before {
	top: 10px;
	width: 5px;
	height: 5px;
}

.formError .formErrorContent {
	box-shadow: none;
	background: #c80034;
}

.formError .formErrorArrow div {
	box-shadow: none;
	background: #c80034;
}

.recruit-image ul {
	display: flex;
	justify-content: center;
}

.recruit-image ul li {
	flex: 1;
	margin: 0 1.5%;
}

.recruit-image ul li img {
	line-height: 1;
}

.image-modal {
	display: none;
}

.modaal-overlay {
	z-index: 2000;
}

.modaal-container {
	max-width: 800px;
	box-shadow: none;
}

.modaal-content-container {
	padding: 0;
}

.modaal-close:before, .modaal-close:after {
	background: #000;
}

/* ------------------------------------------
                  utility
------------------------------------------- */

.effect-text {
	display: inline-block;
	position: relative;
	overflow: hidden;
}

.effect-text .effect-text_body {
	opacity: 0;
	transition:all .2s .6s ease;
}

.effect-text.is-active .effect-text_body {
	opacity: 1;
}

.effect-text .effect-text_line {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	display: block;
	width: 300%;
	height: 100%;
	opacity: 1;
	background: #000;
	transform: translateX(-100%);
	transition:all 1.2s cubic-bezier(.5,0,0,1);
}

.effect-text.is-active .effect-text_line {
	transform: translateX(50%);
}

.effect-image {
	opacity: 0;
	transform: translatey(15px);
	transition:all 1.5s cubic-bezier(.5,0,0,1);
}

.effect-image.is-active {
	opacity: 1;
	transform: translatey(0);
}

.btn {
	position: relative;
	display: inline-block;
	padding: 12px 25px;
	color: #fff;
	background: #1a1a1a;
	overflow: hidden;
}

.btn:hover {
	text-decoration: none;
	background: #3a3a3a;
}

.btn-white {
	color: #1a1a1a;
	background: #fff;
}

.btn-white:hover {
	color: #333;
	background: #e9e9e9;
}

.btn-small {
	padding: 8px 15px;
	font-size: 10px;
}

.btn-large {
	padding: 50px 20px;
	font-size: 25px;
}

.btn-border {
	border: solid 2px #1a1a1a;
	color: #1a1a1a;
	background: none;
}

.btn-border:hover {
	color: #333;
	background: #e1e1e1;
}

.btn-pantherella {
	background: #180109;
}

.btn-pantherella:hover {
	background: #5b473c;
	color: #fff;
}

.btn-dents {
	background: #62282f;
}

.btn-dents:hover {
	background: #742f38;
	color: #fff;
}

.btn-veil {
	background: #222;
}

.btn-veil:hover {
	background: #444;
	color: #fff;
}

.btn-slaith {
	background: #262f50;
}

.btn-slaith:hover {
	background: #2f3a62;
	color: #fff;
}

.btn-funni {
	background: #1e3c8c;
}

.btn-funni:hover {
	background: #2244a0;
	color: #fff;
}

.btn-new {
	background: #fff;
	border: solid 1px #3a3a3a;
	color: #3a3a3a;
}

.btn-new:hover {
	background: #fff;
	border: solid 1px #3a3a3a;
	color: #3a3a3a;
}

.btn .ja {
	display: block;
	font-size: 58%;
}

.is-sp {
	display: none;
}

.has-marginbottom {
	margin-bottom: 50px;
}

.has-marginbottom-s {
	margin-bottom: 20px;
}

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

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

.caption {
	font-size: 12px;
}

.require {
	color: #c80034;
}

.information {
	position: fixed;
	top: 15px;
	right: 15px;
	width: 280px;
	padding: 17px;
	background: rgba(0,0,0,0.8);
	color: #fff;
	font-size: 12px;
	z-index: 2000;
}

.information_title {
	margin-bottom: 5px;
	font-size: 15px;
	font-weight: bold;
}

.information_button {
	margin-top: 10px;
	text-align: right;
}

.information_button .btn {
	width: 100%;
	padding: 7px 10px;
	text-align: center;
	border: solid 1px #fff;
	background: none;
	color: #fff;
}

.information_button a:hover {
	opacity: 0.7;
}

.information_close {
	position: absolute;
	top: -12px;
	left: -12px;
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 15px;
	border: none;
	background: #fff;
	cursor: pointer;
}

.information_close:before {
	position: absolute;
	top: 14px;
	left: 8px;
	display: block;
	content: "";
	width: 15px;
	height: 2px;
	background: #000;
	transform: rotate(45deg);
}

.information_close:after {
	position: absolute;
	top: 14px;
	left: 8px;
	display: block;
	content: "";
	width: 15px;
	height: 2px;
	background: #000;
	transform: rotate(-45deg);
}



/* ------------------------------------------
                  ClearFix
------------------------------------------ */

.group,
.col-group {
zoom:1;
}

.group:after,
.col-group:after {
    content: "";
    display: block;
    clear: both;
}



/* ------------------------------------------
                	for tablet
------------------------------------------ */

@media(max-width:980px){

	.is-sp {
		display: block;
	}

	.is-pc {
		display: block;
	}

	body {
		font-size: 13px;
	}

	#loading #gauge {
    height: 30px;
	}

	.globalheader {
		height: 70px;
    padding: 15px 20px;
		align-items: center;
	}

	.globalheader_logo svg {
    width: 260px;
		height: auto;
	}

	.content {
    padding-top: 70px;
	}

	.leftsidenavi-pc {
		display: none;
	}

	.rightsidenavi-pc {
		display: none;
	}

	.content_largetitle {
    margin-bottom: 3vw;
    font-size: 8vw;
		color: #1a1a1a;
		text-align: center;
	}

	.content_largetitle-ja {
    margin-bottom: 3vw;
    font-size: 8vw;
	}

	.brandlist-top .content_largetitle {
    position: static;
	}

	.brandlist-top_box {
		transform: none !important;
	}

	.globalfooter {
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
	}

	.globalfooter_brand {
    width: 100%;
    padding: 20px;
	}

	.globalfooter_corporate {
    width: 100%;
	}

	.globalfooter_corporate_inner {
		flex-direction: column;
		padding: 40px 20px;
	}

	.globalfooter_corporate .copyright {
    text-align: center;
    font-size: 12px;
	}

	.bg_grid span:nth-child(1) {
		left: 16.666666667%;
	}

	.bg_grid span:nth-child(2) {
		left: 33.333333334%;
	}

	.bg_grid span:nth-child(3) {
		left: 50.000000001%;
	}

	.bg_grid span:nth-child(4) {
		left: 66.666666668%;
	}

	.bg_grid span:nth-child(5) {
		left: 83.333333335%;
	}

	.bg_grid span:nth-child(6) {
		display: none;
	}

	.bg_grid span:nth-child(7) {
		display: none;
	}

	.brandlist-top .brandlist-top_box {
		padding: 0;
    margin-bottom: 20px;
	}

	.brandlist-top_box_logo-dents {
    right: inherit;
		left: 20px;
	}

	.brandlist-top_box_logo .dents {
    width: 140px;
    height: auto;
	}

	.brandlist-top_box_logo-slaith {
    top: inherit;
		bottom: 20px;
	}

	.brandlist-top_box_logo .slaith {
    width: 140px;
    height: auto;
	}

	.brandlist-top_box_logo-pantherella {
		top: inherit;
    bottom: 20px;
	}

	.brandlist-top_box_logo .pantherella {
    width: 140px;
    height: auto;
	}

	.brandlist-top_box_logo-fanni {
    left: inherit;
		right: 20px;
	}

	.brandlist-top_box_logo .fanni {
    width: 160px;
    height: auto;
	}

	.brandlist-top_box_logo-veil {
    right: inherit;
		left: 20px;
	}

	.brandlist-top_box_logo .veil {
    width: 240px;
    height: auto;
	}

	.newslist-top ul li:nth-child(1) {
    margin-top: 0;
	}

	.newslist-top ul li:nth-child(2) {
    margin-top: 0;
	}

	.newslist-top ul li:nth-child(3) {
    margin-top: 0;
	}

	.newslist-top ul li:nth-child(5) {
    margin-top: 0;
    margin-left: 0;
	}

	.newslist-top ul li:nth-child(6) {
    margin-top: 0;
	}

	.newslist-top ul li:nth-child(7) {
    margin-top: 0;
	}

	.newslist ul li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 20px;
	}

	.newslist ul li:nth-child(2n) {
		margin-right: 0;
	}

	.newslist_meta {
		font-size: 10px;
	}

	.content_section {
    padding: 0 20px;
    margin-bottom: 40px;
	}

	.globalfooter_brand ul li {
    width: 33.33333333%;
    padding: 7px 3vw;
	}

	.drawermenu {
    padding: 70px 50px 0;
	}

	.drawermenu_navi ul li a {
    padding: 15px;
    font-size: 20px;
	}

	.brandlist ul li {
    width: 48%;
    margin: 0 4% 20px 0;
	}

	.brandlist ul li:nth-child(3n) {
		margin-right: 4%;
	}

	.brandlist ul li:nth-child(2n) {
		margin-right: 0;
	}

	.btn-large {
    padding: 15px;
    font-size: 15px;
	}

	.content_largetitle-withtext {
		flex-wrap: wrap;
	}

	.content_largetitle_caption {
		width: 100%;
		margin-top: 10px;
		padding-left: 0;
		font-size: 12px;
		text-align: left;
	}

	#top-map {
		height: 300px;
	}
	.map {
		height: 300px;
	}
	.map iframe {
		height: 100%;
	}
	.pagelist .onlineshop {
    margin-top: 15px;
	}

	.slick-slide .carousel_large_item_logo {
    bottom: 10px;
    left: 10px;
	}

	.btn.carousel_large_item_link {
    bottom: 10px;
    right: 10px;
	}

	.slick-slide .btn {
		padding: 7px 15px;
		font-size: 10px;
	}

	.carousel_large_item_logo .pantherella {
    width: 100px;
    height: auto;
	}

	.carousel_large_item_logo .dents {
    width: 100px;
    height: auto;
	}

	.carousel_large_item_logo .veil {
    width: 120px;
    height: auto;
	}

	.carousel_large_item_logo .slaith {
    width: 100px;
    height: auto;
	}

	.carousel_large_item_logo .funni {
    width: 120px;
    height: auto;
	}

	.globalfooter_corporate {
		flex-direction: column;
	}

	.globalfooter_corporate_onlineshop {
		width: 100%;
		margin-bottom: 20px;
		text-align: center;
	}

	.globalfooter_corporate_copryright {
    width: 100%;
    text-align: center;
    font-size: 10px;
	}

	.brandlist_buttons {
		flex-wrap: wrap;
	}

	.brandlist_buttons .btn {
    width: 100%;
    margin-bottom: 5px
	}

	.brandlist_buttons .btn:last-of-type {
		margin-bottom: 0;
	}

	.globalfooter_corporate_copryright_nav li {
    margin-left: 7px;
	}

	.globalfooter_corporate_copryright_nav li:first-of-type {
    margin-left: 0;
	}

	.brandlist-large {
		margin-bottom: -30px;
	}

	.branddetail_logo .pantherella {
    max-width: 280px;
	}

	.branddetail_logo .dents {
    max-width: 320px;
	}

	.branddetail_logo .veil {
    max-width: 320px;
	}

	.branddetail_logo .slaith {
    max-width: 320px;
	}

	.branddetail_logo .funni {
    max-width: 320px;
	}

	.branddetail_logo .alanpaine {
    max-width: 320px;
	}

	.branddetail_logo .armadillo {
		max-width: 280px;
	}

	.branddetail_logo {
    padding: 20px 0;
	}

	.branddetail_bottom {
		flex-direction: column;
    margin-bottom: 20px;
	}

	.branddetail_bottom_image {
    width: 100%;
	}

	.branddetail_bottom_image_main {
    margin-bottom: 20px;
		line-height: 0;
	}

	.branddetail_bottom_image_sub ul li {
    width: 48.5%;
    margin: 0 3% 20px 0;
    line-height: 0;
	}

	.branddetail_bottom_text {
    width: 100%;
	}

	.branddetail_bottom_text_ja {
    margin-bottom: 20px;
    padding-bottom: 20px;
	}

	.content_section-title_text {
    font-size: 70px;
	}

	.category_navi .btn {
		padding: 7px 12px;
		font-size: 10px;
	}

	.page_title {
    padding: 30px;
    font-size: 8vw;
	}

	.content_largetitle-lower {
		flex-wrap: nowrap;
		font-size: 6vw;
	}

	.content_largetitle-lower .content_largetitle_caption {
		width: auto;
	}

	.local_navi a {
    font-size: 15px;
	}

	.table-lang {
    width: 100%;
    font-size: 10px;
	}

	.table-lang th,
	.table-lang td {
    padding: 15px;
	}

	.table-history {
    width: 100%;
		font-size: 10px
	}

}

/* ------------------------------------------
                	for sp
------------------------------------------ */

@media(max-width:640px){

	.content_section-title_text {
    font-size: 40px;
	}

	.category_navi {
		margin-bottom: 20px;
	}

	.pager ul li a {
    font-size: 15px;
	}

	.pager ul li span {
    font-size: 15px;
	}

	.content_title {
    padding: 30px;
    font-size: 40px;
	}

	.pager {
		margin-top: -30px;
	}

	.entry_detail_header {
    margin-bottom: 20px;
	}

	.entry_title {
    margin-bottom: 20px;
    font-size: 25px;
	}

	.entry_body p {
    margin-bottom: 20px;
	}

	.has-marginbottom {
		margin-bottom: 20px;
	}

	.has-marginbottom-s {
		margin-bottom: 20px;
	}

	.entry_detail_header {
		flex-direction: column;
		justify-content: center;
	}

	.entry_detail_header_meta {
		margin-bottom: 10px;
		text-align: center;
	}

	.entry_detail_header_social {
		text-align: center;
	}

	.entry_detail_header_social ul li:first-of-type {
		margin-left: 0;
	}

	.content_largetitle-withtext {
		flex-direction: column;
	}

	.content_largetitle-withtext .content_largetitle_caption {
		padding-left: 0;
		margin-top: 10px;
	}

	.table-app {
		font-size: 10px;
	}

	.table-app th {
		width: 120px;
		padding: 15px;
	}

	.table-app td {
		padding: 15px;
		border-bottom: solid 1px #1a1a1a;
	}

	.form_body {
    padding: 20px;
	}

	.form_col {
		flex-direction: column;
	}

	.form_col_label {
    width: 100%;
		margin-bottom: 10px;
    padding-right: 0;
    text-align: left;
	}

	.form_col_input {
		width: 100%;
	}

	.form_col_input input[type="text"] {
    width: 100%;
	}

	.form_col_input textarea {
    height: 200px;
	}

	.form_submit .btn {
		width: 100%;
	}

	.pagelist-col2 .btn {
    width: 100%;
    margin-bottom: 15px;
	}

	.entrynavi {
		font-size: 10px;
	}

	.entrynavi .top a {
		padding: 10px;
		font-size: 10px;
	}

	.sitemap_box {
    width: 100%;
    margin: 0 0 20px 0;
    padding-bottom: 20px;
	}

	.recruit-image ul {
		flex-wrap: wrap;
	}

	.recruit-image ul li {
		flex: auto;
		width: 42%;
		margin-bottom: 5px;
	}

	.information {
		top: 70px;
		right: 0;
	}
	#map iframe{
		height: 200px;
	}
}

