@import url('https://fonts.googleapis.com/css?family=Sorts+Mill+Goudy');
@charset "UTF-8";


*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
figure, figcaption,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
}
body {
	line-height: 1;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: 100%;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
input[type='text'], input[type='password'], input[type='number'], input[type='email'], textarea, select, button {
	background: transparent;
	border:transparent;
	border:none;
	outline: none;
	font-size: 1rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input[type='text']:focus, input[type='password']:focus, input[type='number']:focus, input[type='email']:focus, textarea:focus, select:focus, button:focus {
	outline: none !important;
}
pre {
	white-space: pre-wrap;
	word-break: break-all;
}

/*font styles*/
.f8 {font-size: 8px;}
.f10 {font-size: 10px;}
.f11 {font-size: 11px;}
.f12 {font-size: 12px;}
.f13 {font-size: 13px;}
.f14 {font-size: 14px;}
.f15 {font-size: 15px;}
.f16 {font-size: 16px;}
.f17 {font-size: 17px;}
.f18 {font-size: 18px;}
.f19 {font-size: 19px;}
.f20 {font-size: 20px;}
.f22 {font-size: 22px;}
.f24 {font-size: 24px;}
.f26 {font-size: 26px;}
.f28 {font-size: 28px;}
.f30 {font-size: 30px;}
.f36 {font-size: 36px;}
.f40 {font-size: 40px;}
.f48 {font-size: 48px;}
.f54 {font-size: 54px;}
.f60 {font-size: 60px;}
.f72 {font-size: 72px;}
.v2 {font-size: 2vw;}
.v2-5 {font-size: 2.5vw;}
.v3 {font-size: 3vw;}
.v3-5 {font-size: 3.5vw;}
.v4 {font-size: 4vw;}
.v4-5 {font-size: 4.5vw;}
.v5 {font-size: 5vw;}
.v5-5 {font-size: 5.5vw;}
.v6 {font-size: 6vw;}
.v6-5 {font-size: 6.5vw;}
.v7 {font-size: 7vw;}
.v7-5 {font-size: 7.5vw;}
.v8 {font-size: 8vw;}
.v8-5 {font-size: 8.5vw;}
.v9 {font-size: 9vw;}
.v9-5 {font-size: 9.5vw;}
.v10 {font-size: 10vw;}
.l {font-size: 1.2em;}
.ll {font-size: 1.4em;}
.s {font-size: 0.8em;}
.ss {font-size: 0.6em;}
.bold {font-weight: 900;}
.thin {font-weight: 100;}
.medium {font-weight: 400;}

/*text styles*/
.nowrap {white-space: nowrap;}
.prewrap {white-space: pre-wrap;}
.ellipsis {text-overflow: ellipsis; overflow: hidden; white-space: nowrap;}
.center {text-align: center;}
.right {text-align: right;}
.left {text-align: left;}
.underline {text-decoration:underline;}
.line-through {text-decoration:line-through;}

/*font colors*/
.c0 {color: #000;}
.c1 {color: #fff;}
.c2 {color: #e60026;}
.c3 {color: #f65812;}
.c4 {color: #6E6E6E;}
.c5 {color: #1A638F;}
.c6 {color: #3897f0;}
.c7 {color: #6f631f;}
.c8 {color: #34495e;}
.c9 {color: #eee;}

/*background styles*/
.bg0 {background-color: #000;}
.bg1 {background-color: #fff;}
.bg2 {background-color: #f8f8f8;}
.bg3 {background-color: #fffcdc;}
.bg4 {background-color: #ffe6f6;}
.bg5 {background-color: #ffd9db;}
.bg6 {background-color: #3897f0;}
.bg7 {background-color: #e7f7ff;}
.bg8 {background-color: #eee;}
.bg9 {background-color: #b5b5b5;}
.bg10 {background-color: #f85110;}

/*background gradients*/
.grd1 {
	background: #f1f1f1;
	background: -moz-linear-gradient(left,  #f8f8f8 0%, #f1f1f1 100%);
	background: -webkit-linear-gradient(left,  #f8f8f8 0%, #f1f1f1 100%);
	background: linear-gradient(to right,  #f8f8f8 0%, #f1f1f1 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8f8f8', endColorstr='#f1f1f1',GradientType=1 );
}
.grd2 {
	color:#fff;
	background: #171427;
	background: -moz-linear-gradient(left, #171427 0%, #27233c 67%, #171427 100%);
	background: -webkit-linear-gradient(left, #171427 0%,#27233c 67%,#171427 100%);
	background: linear-gradient(to right, #171427 0%,#27233c 67%,#171427 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#171427', endColorstr='#171427',GradientType=1 );
}
.grd3 {
	background: #400808;
	background: -moz-linear-gradient(top,  #570b0b 0%, #400808 100%);
	background: -webkit-linear-gradient(top,  #570b0b 0%,#400808 100%);
	background: linear-gradient(to bottom,  #570b0b 0%,#400808 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#570b0b', endColorstr='#400808',GradientType=0 );
}
.grd4 {
	color:#fff;
	background: #1e9ba6;
	background: -moz-linear-gradient(top,  #1e9ba6 0%, #237071 100%);
	background: -webkit-linear-gradient(top,  #1e9ba6 0%,#237071 100%);
	background: linear-gradient(to bottom,  #1e9ba6 0%,#237071 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e9ba6', endColorstr='#237071',GradientType=0 );
}

/*box styles*/
.mb2 {margin-bottom: 2px;}
.mb5 {margin-bottom: 5px;}
.mb10 {margin-bottom: 10px;}
.mb15 {margin-bottom: 15px;}
.mb20 {margin-bottom: 20px;}
.mb25 {margin-bottom: 25px;}
.mb30 {margin-bottom: 30px;}
.mb35 {margin-bottom: 35px;}
.mb40 {margin-bottom: 40px;}
.mb45 {margin-bottom: 45px;}
.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}
.mb70 {margin-bottom: 70px;}
.mb80 {margin-bottom: 80px;}
.mb90 {margin-bottom: 90px;}
.mb100 {margin-bottom: 100px;}
.mt2 {margin-top: 2px;}
.mt5 {margin-top: 5px;}
.mt10 {margin-top: 10px;}
.mt15 {margin-top: 15px;}
.mt20 {margin-top: 20px;}
.mt25 {margin-top: 25px;}
.mt30 {margin-top: 30px;}
.mt35 {margin-top: 35px;}
.mt40 {margin-top: 40px;}
.mt45 {margin-top: 45px;}
.mt50 {margin-top: 50px;}
.mt60 {margin-top: 60px;}
.mt70 {margin-top: 70px;}
.mt80 {margin-top: 80px;}
.mt90 {margin-top: 90px;}
.mt100 {margin-top: 100px;}
.mr2 {margin-right: 2px;}
.mr5 {margin-right: 5px;}
.mr10 {margin-right: 10px;}
.mr15 {margin-right: 15px;}
.mr20 {margin-right: 20px;}
.mr25 {margin-right: 25px;}
.mr30 {margin-right: 30px;}
.mr35 {margin-right: 35px;}
.mr40 {margin-right: 40px;}
.mr45 {margin-right: 45px;}
.mr50 {margin-right: 50px;}
.mr70 {margin-right: 70px;}
.mr100 {margin-right: 100px;}
.ml2 {margin-left: 2px;}
.ml5 {margin-left: 5px;}
.ml10 {margin-left: 10px;}
.ml15 {margin-left: 15px;}
.ml20 {margin-left: 20px;}
.ml25 {margin-left: 25px;}
.ml30 {margin-left: 30px;}
.ml35 {margin-left: 35px;}
.ml40 {margin-left: 40px;}
.ml45 {margin-left: 45px;}
.ml50 {margin-left: 50px;}
.ml70 {margin-left: 70px;}
.ml100 {margin-left: 100px;}

.mte0-2 {margin-top: 0.2em;}
.mte0-5 {margin-top: 0.5em;}
.mte1 {margin-top: 1em;}
.mte1-2 {margin-top: 1.2em;}
.mte1-5 {margin-top: 1.5em;}
.mte1-8 {margin-top: 1.8em;}
.mte2 {margin-top: 2em;}
.mte2-2 {margin-top: 2.2em;}
.mte2-5 {margin-top: 2.5em;}
.mte2-8 {margin-top: 2.8em;}
.mte3 {margin-top: 3em;}

.p5 {padding: 5px;}
.p10 {padding: 10px;}
.p15 {padding: 15px;}
.p20 {padding: 20px;}
.p25 {padding: 25px;}
.p30 {padding: 30px;}
.p35 {padding: 35px;}
.p40 {padding: 40px;}
.p45 {padding: 45px;}
.p50 {padding: 50px;}
.p70 {padding: 70px;}
.p100 {padding: 100px;}
.w20 {width: 20px;}
.w30 {width: 30px;}
.w40 {width: 40px;}
.w50 {width: 50px;}
.w60 {width: 60px;}
.w70 {width: 70px;}
.w80 {width: 80px;}
.w90 {width: 90px;}
.w100 {width:100px;}
.w120 {width: 120px;}
.w140 {width: 140px;}
.w150 {width: 150px;}
.w160 {width: 160px;}
.w170 {width: 170px;}
.w180 {width: 180px;}
.w190 {width: 190px;}
.w200 {width: 200px;}
.w250 {width: 250px;}
.w300 {width: 300px;}
.w400 {width: 400px;}
.w500 {width: 500px;}
.w600 {width: 600px;}
.w700 {width: 700px;}
.w800 {width: 800px;}
.mw20 {max-width: 20px;}
.mw30 {max-width: 30px;}
.mw40 {max-width: 40px;}
.mw50 {max-width: 50px;}
.mw60 {max-width: 60px;}
.mw70 {max-width: 70px;}
.mw80 {max-width: 80px;}
.mw90 {max-width: 90px;}
.mw100 {max-width:100px;}
.mw120 {max-width: 120px;}
.mw140 {max-width: 140px;}
.mw150 {max-width: 150px;}
.mw160 {max-width: 160px;}
.mw170 {max-width: 170px;}
.mw180 {max-width: 180px;}
.mw190 {max-width: 190px;}
.mw200 {max-width: 200px;}
.mw250 {max-width: 250px;}
.mw300 {max-width: 300px;}
.mw400 {max-width: 400px;}
.mw500 {max-width: 500px;}
.mw600 {max-width: 600px;}
.mw700 {max-width: 700px;}
.mw800 {max-width: 800px;}
.mw900 {max-width: 900px;}
.mw1000 {max-width: 1000px;}
.mw1100 {max-width: 1100px;}
.mw1200 {max-width: 1200px;}
.mw1300 {max-width: 1300px;}
.mw1400 {max-width: 1400px;}

/*displays*/
.ib {display: inline-block; vertical-align: sub;}
.tb {display: table;}
.tbc {display: table-cell;}
.dt {display: none;}
.hide {display: none;}

/*float*/
.fl {float: left;}
.fr {float: right;}
.cf:before,
.cf:after {
    content: '';
    display: table;
    clear: both;
}

html {
	font-size: 14px;
	height: 100%;
	width: 100%;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
    font-size: 1rem;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	color: #000;
	position: relative;
	min-width: 320px;
	width: 100%;
	height: 100%;
	min-height: 100%;
	overflow: scroll;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
  	overflow-scrolling: touch;
	line-height: 1.5;
}
body::-webkit-scrollbar {
  display: none;
}
input[type=text],
input[type=password],
input[type=email],
input[type=number],
input[type=tel],
input[type=url],
textarea,
select,
button,
pre
{
	font-size: 1rem;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
	line-height: 1.3;
	border: none;
}
input[type=text],
input[type=password],
input[type=email],
input[type=number],
input[type=tel],
input[type=url],
textarea
{
	width: 100%;
	display: block;
	padding: 0.8em 1em;
}
::-webkit-input-placeholder {
    color: #999;
	padding-top: 0.2em;
}
:-ms-input-placeholder {
    color: #999;
}
::-moz-placeholder {
    color: #999;
}
a {
	color: #428bca;
	text-decoration: none;
}
a:hover, a:focus {
  /*  color: #2a6496;*/
    text-decoration: underline;
}
h1, h2, h3, h4, h5, h6 {
	line-height: 1.3;
}
p {
	line-height: 1.8;
}
img {
	width: 100%;
}
.notice {
	line-height: 1.3;
}
.bt {
	border-top: 1px solid #e7e7e7;
}
.bb {
	border-bottom: 1px solid #e7e7e7;
}
.pointer {
	cursor:pointer;
}
.en {
	font-family: 'Sorts Mill Goudy', serif;
	font-weight: 100;
}
.btn {
	padding: 1.2em 3.5em;
	display: inline-block;
	cursor: pointer;
}
.btn.arrow, .btn.check , .btn.window {
	padding: 1.2em 3.5em 1.2em 1.5em;
}
.btn.envelope, .btn.arrow-t {
	padding: 1.2em 1.7em 1.2em 3em;
}
.arrow, .envelope, .check, .window {
	position: relative;
}
.arrow:after {
	content: '';
	width: 1em;
	height: 1em;
	position: absolute;
	right: 1em;
	top: 50%;
	margin-top: -0.5em;
	background:url(../assets/arrow-w.svg);
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	transform: rotate(-90deg);
	display: block;
}
.window:after {
	content: '';
	width: 1em;
	height: 1em;
	position: absolute;
	right: 1em;
	top: 50%;
	margin-top: -0.5em;
	background:url(../assets/window.svg);
	display: block;
}
.arrow-b:after {
	background:url(../assets/arrow-b.svg);
}
.arrow-t.arrow:after {
	right: auto;
	left: 1em;
}
.envelope:after {
	content: '';
	width: 1.2em;
	height: 1.2em;
	position: absolute;
	left: 1em;
	top: 50%;
	margin-top: -0.7em;
	background:center / contain url(../assets/envelope.svg) no-repeat;
	display: block;
}
.check {
	padding-left: 1.8em;
}
.check:after {
	content: '';
	width: 1.2em;
	height: 1.2em;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -0.7em;
	background:center / contain url(../assets/check.svg) no-repeat;
	display: block;
}
.table {
	border-bottom: solid 1px #CCC;
}
.table, .table tbody, .table tr{
	width: 100%;
	display: block;
}
.table tr {
	border-top: solid 1px #CCC;
}
.table td, .table th {
	line-height: 1.8;
	text-align: left;
	display: block;
}
.table th {
	padding: 0.8em 1.2em 0;
	letter-spacing: 0.3em;
}
.table td {
	padding: 0.8em 1.2em;
}
.input {
	border: 1px solid #ccc;
	width: 100%;
}
select {
	display: block;
	padding: 0.8em 1em;
	width: 100%;
}
.select {
	position: relative;
	padding-right: 1em;
	border: solid 1px #ccc;
}
.select:after {
	content:'▼';
	position: absolute;
	right:0.6em;
	top: 50%;
	font-size: 0.7rem;
	margin-top: -0.6em
}
.inner {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.appear {
	position: relative;
	display: block;
}
.scene-current .appear {
	z-index: 2;
}
.standby .appear {
	overflow: hidden;
	opacity: 1;
}
.standby .appear>* {
	display: block;
	opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
}
.standby .appear-from-above, .standby .appear-from-below {
	opacity: 0;
}
.standby .appear-from-above>* {
	opacity: 0;
    transform: matrix(1, 0, 0, 1, 0, -100);
}
.standby .appear-from-below>* {
	opacity: 0;
    transform: matrix(1, 0, 0, 1, 0, 100);
}
.standby .noscript {
	display: none;
}
.center-box {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.scene-current .center-box {
	z-index: 2;
}
#scene4 {
	min-height: 100vh;
}
.header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	height: 60px;
	z-index: 3;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	transition: background-color .8s ease 0s;
}
.header .logo {
	display: block;
	opacity: 0;
	position: absolute;
	right: 5%;
	top: 50%;
	width: 30%;
	max-width: 150px;
	transform: translate(0, -50%);
	transition: opacity 0.4s ease 0s;
}
.header .gmenu-item {
	display: none;
	color: #fff;
	transition: color 0.4s ease 0s;
}
.header-b .logo-b {
	opacity: 1;
}
.header-b .gmenu-item {
	color: #000;
}
.opening {
	display: none;
	width: 100%;
	height: 100%;
	/*height: 100vh;*/
	position: fixed;
	left: 0;
	top: 0;
}
.opening .center-box {
	position: fixed;
}
.standby .opening {
	display: block;
	z-index: 3;
}
.opening.transparent {
	opacity: 0;
}
.opening.hide {
	opacity: 0;
	z-index: -1;
}
.opening .logo {
	opacity: 1;
}
.company-logo-box {
	top: 40%;
	width: 58%;
	text-align: center;
	transform: translate(-50%, 0);
	z-index: 2;
}
.logo-w {
	max-width: 400px;
	margin: 0 auto;
	display: block;
}
.news-box {
	padding: 20px 30px;
	margin: 0 auto;
	text-align: left;
	border: solid 1px #fff;
	border-radius: 30px;
	position: absolute;
	bottom: 10%;
	left: 50%;
	width: 80%;
	max-width: 500px;
	transform: translate(-50%,0);
}
.news-unit time {
	display: block;
}
.news-unit p {
	line-height: 1.5;
}
.screen {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	-moz-perspective: 1000px;
	-webkit-perspective: 1000px;
	-ms-perspective: 1000px;
	perspective: 1000px;
	transform-style: preserve-3d;
	display: none;
}
.standby .screen {
	display: block;
}
.scene {
	width: 100%;
	height: 100vh;
	position: relative;
	overflow: hidden;
}
.scene-scrollable {
	height: auto;
	overflow: visible;
	padding-top: 60px;
	min-height: 100%;
}
.standby .scene {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
}
.scene-visual {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 0;
	transition: opacity 1.2s cubic-bezier(.64,.01,.69,.73) 3.8s, transform 5s linear 0s;
	transform-style: preserve-3d;
	background: center center / cover no-repeat;
	display: none;
}
.standby .scene-visual {
	display: block;
}
.standby .scene-scrollable {
	position: relative;
}
.scene1-1-visual {
	background-image:url(../assets/scene1-1.jpg);
}
.scene1-2-visual {
	background-image:url(../assets/scene1-2.jpg);
}
.scene1-3-visual {
	background-image:url(../assets/scene1-3.jpg);
}
.scene2-visual {
	background-image:url(../assets/scene2.jpg);
}
.scene3-visual {
	background-image:url(../assets/scene3.jpg);
}
.zoom {
	transform: translate3d(0px, 0px, 60px) translate(-50%, -50%);
	opacity: 0;
}
.zoom-end {
	transform: translate3d(0px, 0px, 60px) translate(-50%, -50%);
}
.mesh:before  {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	background: rgba(59,32,11,0.3) url(../assets/mesh.png);
}
.mesh-w:before {
	background: rgba(255,255,255,0.3) url(../assets/mesh-w.png);
}
.scene2-flex-item {
	padding: 40px 30px 0;
}
.scene3-title {
	position: absolute;
	left: 7%;
	top: 10%;
}
.standby .scene3-title {
	color: #ffffff;
}
.scene3-text-box {
	position: absolute;
	bottom: 10%;
	left: 0;
	width: 100%;
	padding: 0 8%;
	/*background: rgba(255,255,255,0.7);*/
}
.signature {
	width: 100px;
}
.phrase {
	width: 200px;
}
.heading-title {
	width: 100%;
	padding: 30px;
	text-align: center;
	position: relative;
}
.heading-title:before {
	z-index: 0;
	content:'';
	background: center center / cover url(../assets/heading.jpg) no-repeat;
	width:100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
}
.heading .thin {
	letter-spacing: 0.2em;
}
.business {
	position: relative;
}
.business-item {
	padding: 0 15px 28px;
	margin: 0 auto;
	max-width: 460px;
	width: 100%;
}
.business-link {
	display: block;
}
.business-link:hover, .business-link:focus {
	text-decoration: none;
}
.shot {
	display: block;
}
.business-image {
    position: relative;
	overflow: hidden;
	-webkit-overflow-scrolling: touch;
  	overflow-scrolling: touch;
}
.business-image img {
    height: 328px;
	width: auto;
}
.footer {
	margin-top: 50px;
	z-index: 1;
}
.footer-bg {
	background: right bottom / cover url(../assets/footer.jpg) no-repeat;
	position: relative;
	padding-bottom: 150px;
}
.footer .btn {
	z-index: 2;
}
.footer-heading {
	padding-top: 1.5em;
	z-index: 2;
	position: relative;
}
.bmenu {
	padding-top: 2px;
}
.bmenu li {
	padding-top: 2px;
}
.bmenu a {
	display: block;
}
#map-box {
	margin-top: 30px;
	height: 70vh;
	width: 100%;
	position: relative;
	border-top: solid 8px #fff;
	border-bottom: solid 8px #fff;
	z-index: 2;
}
#map {
	height: 100%;
	width: 100%;
}
#address {
	position: absolute;
	top: 10%;
	left: 50%;
	transform: translate(-50%, 0);
	width: calc(100% - 40px);
	max-width: 360px;
	padding: 20px 25px 15px;
	background: rgba(255,255,255,0.9);
	font-style: normal;
	z-index: 1;
}
.footer-logo {
	width: 58%;
}
.copy {
	display: block;
}
.foot-bar {
	padding: 30px 0;
	position: relative;
}
.fmenu {
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.fmenu li {
	width: calc(100% / 3);
}
.fmenu a {
	display: block;
	padding: 5px;
}
.fmenu .window {
	padding-right: 2.5em;
}
#svg {
	display: none;
}
.standby #svg {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1;
}
#psvg {
	position: absolute;
	top:0;
	left: 0;
	z-index: 0;
}
rect {
	transition: fill 1s ease 0s;
}
.to-menu {
	width: 26px;
	height: 30px;
	border-top: solid 3px #fff;
	border-bottom: solid 3px #fff;
	position: fixed;
	bottom: 3%;
	right: 3%;
	display: none;
	z-index: 3;
	cursor: pointer;
}
.to-menu:after {
	content: '';
	display: block;
	width: 100%;
	height: 3px;
	background:#fff;
	position: absolute;
	top:50%;
	margin-top: -1.5px;
}
.to-menu-b {
	border-top-color: #000;
	border-bottom-color: #000;
}
.to-menu-b:after {
	background:#000;
}
#to-next {
	width: 30px;
	height: 30px;
	position: fixed;
	bottom: 3%;
	left: 3%;
	display: none;
	z-index: 3;
	transition: opacity 0.4s ease 0s;
	cursor: pointer;
}
#to-next:after {
	content: '';
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	left: 0px;
	top: 0px;
	background:center center / cover url(../assets/arrow-w.svg) no-repeat;
}
.standby #to-menu, .standby #to-next {
	display: block;
}
#to-next.transparent, #to-menu.transparent {
	opacity: 0;
}
#to-top {
	cursor: pointer;
	position: absolute;
	top: -38px;
	left: 50%;
	transform: translate(-50%,0);
}
#to-top:after {
	transform: rotate(180deg) translate(0,2px);
}



.pheader {
	background: center center / cover no-repeat url(../assets/scene2.jpg);
	height: 40vh;
	min-height: 180px;
	position: relative;
}
.pheader1 {
	background-image: url(../assets/pheader1.jpg);
}
.pheader2 {
	background-image: url(../assets/pheader2.jpg);
}
.pheader3 {
	background-image: url(../assets/pheader3.jpg);
}
.pheader4 {
	background-image: url(../assets/pheader4.jpg);
}
.pheader5 {
	background-image: url(../assets/pheader5.jpg);
}
.pheader6 {
	background-image: url(../assets/pheader6.jpg);
}
.pheader7 {
	background-image: url(../assets/pheader7.jpg);
}
.pheader8 {
	background-image: url(../assets/pheader8.jpg);
}
.pheader9 {
	background-image: url(../assets/pheader9.jpg);
}
.pheader10 {
	background-image: url(../assets/pheader10.jpg);
}
.pheader11 {
	background-image: url(../assets/pheader11.jpg);
}
.pheader-en {
	position: absolute;
	top: 40%;
	left: 12%;
	z-index: 1;
}
.pheader-title {
	position: absolute;
	top: calc(40% + 3.5em);
	left: 12%;
	z-index: 1;
}

.bheader {
	height: 40vh;
	min-height: 180px;
	position: relative;
	background: #f5f5f5;
}

#article {
	z-index: 1;
}
.breadcrumb {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	white-space: nowrap;
	padding: 0 20px;
	position: relative;
	margin-right: 40px;
}
.breadcrumb:after {
	content: '';
	width: 0;
	height: 0;
	position: absolute;
	right: -40px;
	top: 0;
	border: solid 20px;
	border-top-color:transparent;
	border-right-color:transparent;
	border-left-color:#f1f1f1;
	border-bottom-color:#f1f1f1;
	display: block;
}
.breadcrumb:last-child:after {
	content: none;
}
.breadcrumb:first-child {
	padding-left: 50px;
}
.breadcrumb:first-child:before {
	content: '';
	width: 16px;
	height: 16px;
	background: center / contain url(../assets/home.svg) no-repeat;
	position: absolute;
	left: 20px;
	top: 50%;
	margin-top: -10px;
	display: block;
}


.thumb {
	width: 70%;
	max-width: 200px;
	margin: 0 auto 20px;
	display: block;
}
.thumb-item-l .thumb {
	max-width: 350px;
}
.clist li {
	padding-left: 1.3em;
	position: relative;
}
.clist li:before {
	position: absolute;
	left: 0;
	top: 0.5em;
	content: '';
	width: 0.3em;
	height: 0.3em;
	border-radius: 50%;
	display: block;
	background: #000;
}

#debug {
	position: fixed;
	top:0;
	left: 0;
	color:red;
	z-index: 10000;
}

@media only screen and (min-width:600px){
	.thumb-item {
		position: relative;
		padding-left: 230px;
		min-height: 133px;
	}
	.thumb-item-l {
		padding-left: 380px;
	}
	.thumb {
		position: absolute;
		left: 0;
		top: 0;
		margin: 0;
	}
	.table {
		display: table;
	}
	.table th, .table td {
		display: table-cell;
		padding: 1.4em 1.8em;
	}
	.table th {
		width: 280px;
	}
	.table tr:last-child th {
	}
	.v2 { font-size: 12px;}
	.v2-5 { font-size: 15px;}
	.v3 { font-size: 18px;}
	.v3-5 { font-size: 21px;}
	.v4 {font-size: 24px;}
	.v4-5 { font-size: 27px;}
	.v5 { font-size: 30px;}
	.v5-5 { font-size: 33px;}
	.v6 {font-size: 36px;}
	.v6-5 {font-size: 39px;}
	.v7 {font-size: 42px;}
	.v7-5 {font-size: 45px;}
	.v8 {font-size: 48px;}
	.v8-5 {font-size: 51px;}
	.v9 {font-size: 54px;}
	.v9-5 {font-size: 57px;}
	.v10 {font-size: 60px;}
}
@media only screen and (min-width:820px){
	.scene-scrollable .screen {
		padding: 200px 0 0;
	}
	.footer {
		margin-top: 100px;
	}
	.flex {
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-around;
		justify-content: space-around;
	}
	.scene2-flex-item {
		width: calc(100% / 2);
		padding: 0 30px;
		max-width: 600px;
	}
	.scene3-text-box {
		max-width: 900px;
		width: 50%;
		left: 45%;
		padding: 20px;
		background: none;
	}
	.scene3-visual {
		/*left: 40%;*/
	}
	.business {
		padding: 10px;
		-webkit-justify-content: start;
		justify-content: start;
	}
	.business-item {
		width: calc(100% / 3);
		margin: 0;
	}
	.heading {
		overflow: visible;
		margin-bottom: -220px;
	}
	.heading-title {
		width: 50%;
		padding: 120px 0 290px;
		overflow: visible;
	}
	.heading-title:before {
		transform: rotate(45deg);
		top: 75px;
		left: 24%;
		width: 360px;
		height: 360px;
		background-image: url(../assets/heading-r.jpg);
	}
	.heading-text {
		position: absolute;
		left: 40%;
		top:140px;
		width: 40%;
	}
	.business-image img {
		width: 100%;
		height: auto;
	}
}
@media only screen and (min-width:900px){
	.header .gmenu {
		display: flex;
		margin-left: 5%;
	}
	.header .gmenu a {
		display: block;
	}
	.bmenu {
		height: 30vw;
		margin: 30px auto;
		position: relative;
		z-index: 1;
		max-width: 1600px;
	}
	.bmenu li {
		width: 14.142135623731vw;
		height: 14.142135623731vw;
		transform: rotate(45deg);
		transform-origin: left top;
		position: absolute;
		padding: 1px;
	}
	.bmenu li:first-child {
		left: 10%;
	}
	.bmenu li:nth-child(2) {
		left: 20%;
	}
	.bmenu li:nth-child(3) {
		left: 30%;
	}
	.bmenu li:nth-child(4) {
		left: 40%;
	}
	.bmenu li:nth-child(5) {
		left: 50%;
	}
	.bmenu li:nth-child(6) {
		left: 60%;
	}
	.bmenu li:nth-child(7) {
		left: 70%;
	}
	.bmenu li:nth-child(8) {
		left: 80%;
	}
	.bmenu li:nth-child(9) {
		left: 90%;
	}
	.bmenu li:nth-child(even) {
		top: calc(10vw + 2px);
	}
	.bmenu a {
		width: calc(100% - 2px);
		height: calc(100% - 2px);
		position: relative;
	}
	.bmenu a:after {
		content: none;
	}
	.bmenu span {
		position: absolute;
		top: 29%;
		transform-origin: center center;
		transform: rotate(-45deg) translate(-20%, 0);
		width: 110%;
		text-align: center;
		display: block;
		line-height: 1.2;
	}
	.bmenu li:nth-child(3) a, .bmenu li:nth-child(8) a {
		color: #fff;
		background: #7c5c47 url(../assets/mesh-w.png);
	}
	.fmenu {
		-webkit-justify-content: center;
		justify-content: center;
	}
	.fmenu li {
		width: auto;
	}
	#map-box {
		width: 90%;
		margin: 80px auto 0;
		height: 500px;
		max-width: 1600px;
		border: solid 8px #fff;
	}
	#address {
		top: 25%;
		transform: translate(-120%, 0);
	}
	#address:after {
		display: block;
		position: absolute;
		content: '';
		left: 100%;
		top: 97%;
		width: 0;
		height: 0;
		border-top: transparent solid 30px;
		border-right: transparent solid 40px;
		border-bottom: transparent solid 30px;
		border-left: rgba(255,255,255,0.9) solid 50px;
		transform: skewY(50deg);
	}
	.footer-bg {
		padding-bottom: 220px;
	}
	#to-menu {
		right: 27px;
	}
	#to-next {
		left: 27px;
	}
}
@media only screen and (min-width:1600px){
	.scene3-visual {
		/*background-size: 1600px auto;*/
	}
	.bmenu {
		height: 480px;
	}
	.bmenu li {
		width: 226.2741699797px;
		height: 226.2741699797px;
	}
	.bmenu li:nth-child(even) {
		top: 162px;
	}
}

