@charset "UTF-8";

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
}

@font-face {
	font-family:SourceHanSerifTC;src:url("../fonts/SourceHanSerifTW-Light.otf") format("opentype")
}

.clearfix:after {
	content: "";
	display: block;
	clear: both
}

.clearfix {
	display: block;
	min-height: 1%
}

@keyframes hover {
	0% {
		opacity: 1
	}

	to {
		opacity: .8
	}
}

@keyframes out {
	0% {
		opacity: 1
	}

	to {
		opacity: 1
	}
}

a,a:hover {
	text-decoration: none;
	transition: all 0.3s ease 0s;
}

a:hover {
	opacity: .8
}

:focus,a,a:focus {
	outline: none
}

::selection {
	background: #000;
	color: #fff
}

iframe,img {
	border: 0
}

body,html {
	height: 100%
}

body {
	opacity: 0;
	font-size: 13px;
	font-family: Hiragino Mincho ProN,游明朝,YuMincho,HG明朝E,ＭＳ Ｐ明朝,ＭＳ 明朝,Noto Serif JP,serif;
	letter-spacing: .05em;
	color: rgba(0,0,0,.8);
	overflow-x: hidden;
	overflow-y: scroll;
	position: relative;
	font-feature-settings: "palt";
	line-height: 180%
}

body.cn {
	font-family: SourceHanSerifTC,PMingLiU,cwTeXMing,Hiragino Mincho ProN,游明朝,YuMincho,HG明朝E,ＭＳ Ｐ明朝,ＭＳ 明朝,Noto Serif JP,serif
}

body.cn.faq,body.cn.news {
	font-family: Hiragino Mincho ProN,游明朝,YuMincho,HG明朝E,ＭＳ Ｐ明朝,ＭＳ 明朝,Noto Serif JP,serif
}

span.animation-border {
	border-bottom: 2px solid #000
}

body.gallery header,body.top header {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	z-index: 10
}

body.top header a#title {
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	text-align: center;
	margin-right: -50%;
	transform: translate(-50%,-50%);
	margin-top: -20px;
	color: #fff
}

body.top header a#title img {
	width: 85px
}

body.top header a#title h1 {
	margin: 13px 0 14px;
	font-size: 44px;
	letter-spacing: 0;
	font-feature-settings: "palt"
}

body.top header a#title p {
	font-size: 17px;
	line-height: 32px;
	letter-spacing: .03em;
	font-feature-settings: "palt";
	position: relative;
	left: 4px
}

@media (max-width:980px) {
	body.top header a#title img {
		width: 160px
	}

	body.top header a#title h1 {
		font-size: 38px;
		margin: 9px 0 16px
	}

	body.top header a#title p {
		font-size: 15px;
		line-height: 16px
	}
}

@media (max-width:500px) {
	body.top header a#title img {
		width: 100px
	}

	body.top header a#title h1 {
		font-size: 24px;
		margin: -1px 0 6px
	}

	body.top header a#title p {
		font-size: 10px;
		line-height: 10px
	}
}

body.en.top header a#title img {
	width: 210px
}

body.en.top header a#title h1 {
	font-size: 40px;
	margin: 11px 0 8px
}

@media (max-width:980px) {
	body.en.top header a#title img {
		width: 160px
	}

	body.en.top header a#title h1 {
		font-size: 32px;
		margin: 5px 0 9px
	}

	body.en.top header a#title p {
		font-size: 15px;
		line-height: 16px
	}
}

@media (max-width:500px) {
	body.en.top header a#title img {
		width: 100px
	}

	body.en.top header a#title h1 {
		font-size: 22px;
		margin: -2px 0 2px
	}

	body.en.top header a#title p {
		font-size: 10px;
		line-height: 10px
	}
}

body div.rt_link {
	position: absolute;
	top: 18px;
	right: 23px;
	z-index: 100
}

body div.rt_link ul.lang {
	float: left;
	font-size: 14px;
	color: #fff;
	letter-spacing: .07em
}

body div.rt_link ul.lang li {
	float: left;
	padding: 5px;
	text-transform: uppercase
}

body div.rt_link ul.lang li a {
	cursor: pointer;
	display: block;
	color: #fff
}

body div.rt_link ul.lang li.select,body div.rt_link ul.lang li a:hover {
	opacity: .5
}

body div.rt_link div.line {
	float: left;
	width: 1px;
	height: 18px;
	background-color: #fff;
	opacity: .5;
	position: relative;
	top: 6px;
	margin: 0 11px 0 10px
}

body div.rt_link ul.social {
	float: left;
	position: relative;
	top: 1px
}

body div.rt_link ul.social li {
	float: left;
	padding: 5px;
	text-transform: uppercase
}

body div.rt_link ul.social li a {
	cursor: pointer;
	display: block;
	color: #fff
}

body div.rt_link ul.social li a:hover {
	opacity: .5
}

@media (max-width:850px) {
	body div.rt_link {
		display: none
	}
}

body.simple div.rt_link {
	top: -60px
}

body.simple div.rt_link ul.lang,body.simple div.rt_link ul.lang li a {
	color: #000
}

body.gallery header a#title {
	position: absolute;
	z-index: 10;
	top: 85px;
	left: 50%;
	text-align: center;
	margin-right: -50%;
	transform: translate(-50%);
	color: #fff
}

body.gallery header a#title h1 {
	margin: 9px 0 8px;
	font-size: 38px;
	letter-spacing: .06em;
	font-feature-settings: "palt"
}

body.gallery header a#title p {
	font-size: 15px;
	line-height: 32px;
	letter-spacing: .1em;
	font-feature-settings: "palt"
}

@media (max-width:500px) {
	body.gallery header a#title {
		top: 22px
	}

	body.gallery header a#title img {
		width: 100px
	}

	body.gallery header a#title h1 {
		font-size: 24px;
		margin: 2px 0 7px
	}

	body.gallery header a#title p {
		font-size: 10px;
		line-height: 10px
	}
}

body.en.gallery header a#title h1 {
	margin: 4px 0 1px;
	font-size: 28px;
	letter-spacing: .01em
}

body.en.gallery header a#title p {
	font-size: 12px;
	line-height: 28px;
	letter-spacing: .05em
}

@media (max-width:500px) {
	body.en.gallery header a#title h1 {
		margin: 3px 0 -4px;
		font-size: 22px;
		letter-spacing: .01em
	}

	body.en.gallery header a#title p {
		font-size: 10px
	}
}

body.simple header {
	margin-top: 90px;
	margin-top: 150px;
	text-align: center
}

body.simple header a#title {
	color: #000
}

body.simple header a#title img {
	width: 120px
}

body.simple header a#title h1 {
	margin: 0 0 -4px;
	font-size: 23px;
	letter-spacing: .06em;
	font-feature-settings: "palt"
}

body.simple header a#title p {
	font-size: 10px;
	line-height: 32px;
	letter-spacing: .1em;
	font-feature-settings: "palt"
}

@media (max-width:800px) {
	body.simple header a#title {
		top: 25px
	}

	body.simple header a#title img {
		width: 100px
	}

	body.simple header a#title h1 {
		font-size: 24px;
		margin: 2px 0 7px
	}

	body.simple header a#title p {
		font-size: 10px;
		line-height: 10px
	}
}

body.en.simple header a#title h1 {
	font-size: 22px;
	margin-bottom: -7px
}

body.en.simple header a#title p {
	font-size: 7px
}

@media (max-width:800px) {
	body.en.simple header a#title h1 {
		font-size: 18px;
		margin: -3px 0 1px
	}

	body.en.simple header a#title p {
		font-size: 1px
	}
}

div#top_foot.lock {
	position: fixed;
	top: 0;
	background-color: #000
}

div#top_foot {
	text-align: left;
	position: absolute;
	bottom: 0;
	width: 100%;
	background-color: rgba(0,0,0,.6);
	z-index: 102;
	color: #fff;
	line-height: 70px;
	height: 70px
}

div#top_foot div.left {
	float: left
}

div#top_foot div.left a {
	color: #fff;
	padding: 0 30px 0 60px;
	height: 70px;
	display: inline-block;
	background-color: rgba(45,45,45,.651)
}

div#top_foot div.left a div.bt {
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	text-align: center;
	left: 33px;
	background-image: url(../images/bt_arrow.svg);
	border: 1px solid #fff;
	border-radius: 15px;
	top: 26px
}

div#top_foot div.left a span.ja {
	font-size: 16px;
	position: relative;
	top: 0;
	margin-bottom: 10px
}

div#top_foot div.left a span.en {
	font-size: 10px;
	text-transform: uppercase;
	position: relative;
	top: -2px;
	margin-left: 6px;
	opacity: .6
}

div#top_foot div.right {
	float: right;
	margin-right: 15px;
	font-size: 16px
}

div#top_foot div.right ul li {
	float: left
}

div#top_foot div.right ul li a {
	color: #fff;
	line-height: 70px;
	height: 70px;
	padding: 0 10px;
	display: block
}

div#top_foot div.right ul li a.small.ja {
	position: relative;
	top: -1px;
	font-size: 12px
}

div#top_foot div.right ul li a.select {
	opacity: .5
}

@media (max-width:1040px) {
	div#top_foot div.left a div.bt {
		width: 15px;
		height: 15px
	}

	div#top_foot div.left a span.ja,div#top_foot div.right {
		font-size: 15px
	}

	div#top_foot div.right ul li a {
		padding: 0 6px
	}

	div#top_foot div.right ul li a.small.ja {
		font-size: 12px;
		top: -1px
	}
}

@media (max-width:850px) {
	div#top_foot div.left {
		width: 100%
	}

	div#top_foot div.left a {
		padding: 0 20px 0 45px
	}

	div#top_foot div.left a div.bt {
		left: 20px
	}

	div#top_foot div.left a span.ja {
		top: 0
	}

	div#top_foot div.left a span.en {
		top: -1px;
		margin-left: 8px
	}

	div#top_foot div.right {
		display: none
	}
}

a#bt_gnav_open {
	display: none;
	position: fixed;
	top: 50%;
	color: #fff;
	right: 40px;
	z-index: 102;
	cursor: pointer
}

a#bt_gnav_open div.element {
	position: absolute;
	z-index: 10;
	transform: translate(-50%,-50%)
}

a#bt_gnav_open div.element div.icon {
	width: 40px;
	margin: 0 auto
}

a#bt_gnav_open div.element div.icon div.line {
	margin-bottom: 7px
}

a#bt_gnav_open div.element div.icon div.line div.white {
	background-color: #fff;
	height: 1px
}

a#bt_gnav_open div.element div.icon div.line div.black {
	background-color: #000;
	height: 1px
}

a#bt_gnav_open div.element div.icon div.line:last-child {
	margin-bottom: 0
}

a#bt_gnav_open div.element p {
	opacity: 0;
	position: absolute;
	writing-mode: vertical-rl;
	margin: 5px auto 0;
	top: 40px;
	white-space: nowrap;
	width: 40px;
	line-height: 40px;
	letter-spacing: -1
}

a#bt_gnav_open div.element p span.ja {
	letter-spacing: -.3px
}

a#bt_gnav_open div.element p span.en {
	font-size: 10px;
	text-transform: uppercase;
	margin-top: 5px
}

@media (max-width:980px) {
	a#bt_gnav_open {
		right: 35px
	}

	a#bt_gnav_open div.element div.icon {
		width: 30px
	}
}

@media (max-width:850px) {
	a#bt_gnav_open {
		display: block;
		top: 35px
	}
}

a#bt_gnav:hover {
	background-color: rgba(0,0,0,.5)
}

nav#gnav {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 200;
	display: none
}

nav#gnav div.inner {
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	text-align: center;
	margin-right: -50%;
	transform: translate(-50%,-50%);
	z-index: 201
}

nav#gnav div.inner a#title {
	display: block;
	color: #000
}

nav#gnav div.inner a#title h1 {
	font-size: 28px;
	margin: 3px 0 5px
}

nav#gnav div.inner a#title p {
	font-size: 12px
}

nav#gnav div.inner div.nav {
	margin-top: 42px;
	padding: 65px 0;
	border-top: 1px solid rgba(0,0,0,.3);
	border-bottom: 1px solid rgba(0,0,0,.3);
	font-size: 26px;
	font-feature-settings: "pkna";
	writing-mode: vertical-lr;
	text-align: left
}

nav#gnav div.inner div.nav ul li a {
	color: #000;
	display: block;
	margin-right: 50px
}

nav#gnav div.inner div.nav ul li a.select {
	opacity: .5
}

nav#gnav div.inner div.nav ul li a.small.ja {
	font-size: 18px
}

nav#gnav div.inner div.nav ul li:last-child a {
	margin-right: 0
}

nav#gnav div.inner ul.bt_language {
	font-size: 14px;
	color: #000;
	letter-spacing: .07em;
	display: inline-block;
	margin-top: 40px
}

nav#gnav div.inner ul.bt_language li.title {
	opacity: .5
}

nav#gnav div.inner ul.bt_language li {
	float: left;
	padding: 5px;
	text-transform: uppercase;
	opacity: 1
}

nav#gnav div.inner ul.bt_language li a {
	cursor: pointer;
	display: block;
	color: #000
}

nav#gnav div.inner ul.bt_language li.select,nav#gnav div.inner ul.bt_language li a:hover {
	opacity: .5
}

nav#gnav a#bt_gnav_close {
	position: absolute;
	top: 25px;
	right: 25px;
	width: 51px;
	height: 51px;
	background-image: url("../images/bt_close.svg");
	background-repeat: no-repeat;
	cursor: pointer
}

nav#gnav #gnav_bg {
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 200;
	cursor: pointer
}

@media (max-width:690px) {
	nav#gnav div.inner {
		width: 100%;
		text-align: left
	}

	nav#gnav div.inner a#title {
		margin-left: 20px
	}

	nav#gnav div.inner a#title img {
		width: 100px
	}

	nav#gnav div.inner a#title h1 {
		font-size: 24px;
		margin: 2px 0 7px
	}

	nav#gnav div.inner a#title p {
		font-size: 10px;
		line-height: 10px
	}

	nav#gnav div.inner div.nav {
		margin: 30px 0 18px;
		padding: 0;
		font-size: 24px;
		writing-mode: vertical-lr;
		writing-mode: inherit;
		border: 0
	}

	nav#gnav div.inner div.nav ul {
		text-align: left
	}

	nav#gnav div.inner div.nav ul li a {
		color: #000;
		display: block;
		margin-right: 0;
		padding: 10px 20px
	}

	nav#gnav div.inner div.nav ul li a.small.ja {
		font-size: 18px
	}

	nav#gnav div.inner ul.bt_language {
		margin-top: 0;
		margin-left: 15px
	}

	nav#gnav a#bt_gnav_close {
		top: 20px;
		right: 20px;
		width: 30px;
		height: 30px;
		background-size: 100%
	}
}

body.en nav#gnav div.inner div.nav {
	font-size: 24px;
	writing-mode: horizontal-tb;
	margin-top: 15px;
	padding: 15px 0
}

body.en nav#gnav div.inner div.nav ul li a {
	margin: 20px 0
}

body.en nav#gnav div.inner div.nav ul li a.small.ja {
	font-size: 24px
}

body.en nav#gnav div.inner div.nav ul li a.select {
	opacity: .5
}

body.en nav#gnav div.inner ul.bt_language {
	margin-top: 15px
}

body.en nav#gnav div.inner a#title {
	width: 300px
}

body.en nav#gnav div.inner a#title h1 {
	font-size: 24px;
	margin: 1px 0 -1px
}

body.en nav#gnav div.inner a#title p {
	font-size: 10px
}

@media (max-width:500px) {
	body.en nav#gnav div.inner a#title {
		width: auto
	}

	body.en nav#gnav div.inner a#title h1 {
		font-size: 20px;
		margin: 2px 0;
		margin: -3px 0 2px
	}

	body.en nav#gnav div.inner a#title p {
		font-size: 10px
	}

	body.en nav#gnav div.inner div.nav {
		margin: 15px 0 4px;
		padding: 15px 0 0
	}

	body.en nav#gnav div.inner div.nav ul li a {
		margin: 0
	}
}

body footer {
	position: relative;
	color: #fff;
	background-color: #161616
}

body footer div.top {
	padding: 80px
}

body footer div.top>div.left {
	float: left;
	position: relative;
	top: -2px
}

body footer div.top>div.left>a {
	display: block;
	color: #fff
}

body footer div.top>div.left>a img {
	width: 45px
}

body footer div.top>div.left>a h1 {
	font-size: 28px;
	margin: 2px 0 4px
}

body footer div.top>div.left>a p {
	font-size: 12px
}

body footer div.top>div.left ul.social {
	margin-top: 10px
}

body footer div.top>div.left ul.social li {
	float: left;
	margin-right: 10px
}

body footer div.top>div.left ul.social li a img {
	width: 20px
}

body footer div.top>div.center {
	float: left;
	position: relative;
	top: -1px;
	margin-left: 150px
}

body footer div.top>div.center ul li.tel>div {
	margin-bottom: 40px;
	float: left
}

body footer div.top>div.center ul li.tel div.left {
	position: relative;
	top: -5px;
	width: 115px;
	opacity: .5
}

body footer div.top>div.center ul li.tel div.right div.large {
	font-size: 24px;
	margin-bottom: 5px
}

body footer div.top>div.center ul li.tel div.right div.middle {
	font-size: 17px;
	margin-bottom: 5px
}

body footer div.top>div.center ul li.tel a {
	color: #fff
}

body footer div.top>div.center ul li.address>div {
	float: left
}

body footer div.top>div.center ul li.address>div.left {
	float: left;
	width: 115px;
	opacity: .5
}

body footer div.top>div.center ul li.address>div.right {
	float: left;
	position: relative;
	top: 4px
}

body footer div.top>div.center ul li.address>div.right a {
	float: left;
	color: #fff;
	margin-left: 50px
}

body footer div.top>div.center ul li.address>div.right a>div.left {
	float: left;
	margin-right: 20px
}

body footer div.top>div.center ul li.address>div.right a>div.left div.name {
	font-size: 18px;
	margin-bottom: 5px
}

body footer div.top>div.center ul li.address>div.right a>div.right {
	float: left;
	font-size: 14px;
	line-height: 150%;
	position: relative;
	top: 0
}

body footer div.top>div.center ul li.address>div.right a:first-child {
	margin-left: 0
}

body footer div.top>div.right {
	float: right;
	font-size: 22px;
	font-feature-settings: "pkna";
	writing-mode: vertical-lr
}

body footer div.top>div.right ul {
	position: relative;
	right: -28px
}

body footer div.top>div.right ul li {
	color: #fff
}

body footer div.top>div.right ul li a {
	color: #fff;
	padding: 0 18px;
	display: block
}

body footer div.top>div.right ul li a.faq.ja {
	font-size: 14px
}

body footer div.top>div.right ul li a.select {
	opacity: .5
}

body footer div.under {
	border-top: 1px solid hsla(0,0%,100%,.1);
	padding: 0 80px
}

body footer div.under div.left,body footer div.under div.left ul {
	float: left
}

body footer div.under div.left ul li {
	display: inline-block;
	margin-right: 20px
}

body footer div.under div.left ul li a {
	display: inline-block;
	height: 75px;
	line-height: 75px;
	color: #fff;
	text-transform: uppercase
}

body footer div.under div.left ul.lang {
	margin-left: 20px
}

body footer div.under div.left ul.lang li.title {
	opacity: .5
}

body footer div.under div.left ul.lang li {
	display: inline-block;
	margin-right: 10px
}

body footer div.under div.left ul.lang li.select {
	opacity: .5
}

body footer div.under div.right{
	float: right;
	font-size: 10px;
	height: 75px;
	line-height: 75px
}
body footer div.under div.right a{
	color:#fff;
}
@media (max-width:1825px) {
	body footer div.top {
		padding: 80px
	}

	body footer div.top>div.left {
		float: left;
		position: relative;
		top: -2px
	}

	body footer div.top>div.left>a {
		display: block;
		color: #fff
	}

	body footer div.top>div.left>a img {
		width: 110px
	}

	body footer div.top>div.left>a h1 {
		font-size: 24px;
		margin: 1px 0
	}

	body footer div.top>div.left>a p {
		font-size: 12px
	}

	body footer div.top>div.center {
		margin-left: 80px
	}

	body footer div.top>div.center ul li.tel div.left {
		width: 90px
	}

	body footer div.top>div.center ul li.tel div.right div.large {
		font-size: 22px
	}

	body footer div.top>div.center ul li.tel div.right div.middle {
		font-size: 17px
	}

	body footer div.top>div.center ul li.tel a {
		color: #fff
	}

	body footer div.top>div.center ul li.address>div.left {
		width: 90px
	}

	body footer div.top>div.right {
		font-size: 20px
	}

	body footer div.top>div.right ul li a {
		padding: 0 18px
	}
}

@media (max-width:1615px) {
	body footer div.top>div.center ul li.address>div.right a {
		float: none;
		margin-top: 20px;
		margin-left: 0
	}

	body footer div.top>div.center ul li.address>div.right a>div.left {
		width: 60px
	}

	body footer div.top>div.center ul li.address>div.right a:first-child {
		margin-top: 0
	}
}

@media (max-width:1310px) {
	body footer div.top {
		padding: 60px
	}

	body footer div.top>div.left {
		float: none;
		margin-bottom: 60px
	}

	body footer div.top>div.center {
		margin-left: 0;
		float: none
	}

	body footer div.top>div.center ul li.tel {
		margin-bottom: 20px
	}

	body footer div.top>div.center ul li.tel div.right {
		margin-bottom: 0
	}

	body footer div.top>div.center ul li.address>div.right a {
		float: left;
		margin-top: 0;
		margin-left: 40px
	}

	body footer div.top>div.center ul li.address>div.right a:first-child {
		margin-left: 0
	}

	body footer div.top>div.right {
		float: none;
		position: absolute;
		right: 19px;
		top: 59px;
		font-size: 18px
	}

	body footer div.top>div.right ul {
		right: 0;
		left: -20px
	}

	body footer div.under {
		padding: 0 60px
	}
}

@media (max-width:1000px) {
	body footer div.top {
		padding: 60px 20px
	}

	body footer div.under {
		padding: 0 20px
	}
}

@media (max-width:1000px) {
	body footer div.top {
		padding: 60px 0
	}

	body footer div.top>div.left {
		float: none;
		margin-bottom: 60px;
		margin-left: 20px
	}

	body footer div.top>div.center {
		margin-left: 20px;
		float: none
	}

	body footer div.top>div.center ul li.tel {
		float: left;
		margin-bottom: 20px
	}

	body footer div.top>div.center ul li.address {
		float: left
	}

	body footer div.top>div.center ul li.address>div.right a>div.right div.middle br {
		display: block
	}

	body footer div.top>div.right {
		position: relative;
		right: 0;
		top: 0;
		margin-top: 40px;
		border-top: 1px solid hsla(0,0%,100%,.1);
		padding-top: 60px;
		width: calc(100% - 20px);
		padding-left: 20px
	}

	body footer div.under {
		padding: 0;
		border-top: 0
	}

	body footer div.under div.left {
		float: none;
		border-top: 1px solid hsla(0,0%,100%,.1);
		border-bottom: 1px solid hsla(0,0%,100%,.1)
	}

	body footer div.under div.left ul {
		padding: 0 0 0 20px
	}

	body footer div.under div.left ul.lang {
		margin-left: 0;
		margin-right: 20px
	}

	body footer div.under div.right {
		float: none;
		padding: 0 20px
	}
}

@media (max-width:1000px) {
	body footer div.top>div.left {
		margin-bottom: 30px
	}

	body footer div.top>div.left>a img {
		width: 100px
	}

	body footer div.top>div.left>a h1 {
		font-size: 22px;
		margin: 0 0 5px
	}

	body footer div.top>div.left>a p {
		font-size: 10px;
		line-height: 10px
	}

	body footer div.top>div.center ul li.tel {
		float: none;
		margin-left: 0
	}

	body footer div.top>div.center ul li.tel div.left {
		float: none;
		margin-bottom: 3px
	}

	body footer div.top>div.center ul li.tel div.right div.large {
		font-size: 20px;
		margin-bottom: 1px
	}

	body footer div.top>div.center ul li.address {
		float: none;
		margin-left: 0
	}

	body footer div.top>div.center ul li.address>div.left {
		float: none;
		margin-bottom: 10px
	}

	body footer div.top>div.right ul {
		margin-left: 10px
	}

	body footer div.top>div.right ul li {
		margin: 0
	}

	body footer div.top>div.right ul li a {
		padding: 0 10px
	}

	body footer div.under div.left {
		padding: 20px 0
	}

	body footer div.under div.left ul {
		float: none;
		padding: 0
	}

	body footer div.under div.left ul li {
		display: block;
		padding: 10px 20px
	}

	body footer div.under div.left ul li a {
		margin: 0;
		display: inline-block;
		height: auto;
		line-height: 12px;
		color: #fff;
		margin-right: 0
	}

	body footer div.under div.left ul.lang {
		float: none;
		padding: 0;
		padding-left: 20px
	}

	body footer div.under div.left ul.lang li {
		padding: 10px 0
	}
}

@media (max-width:1000px) {
	body footer div.top {
		padding: 60px 0 30px
	}

	body footer div.top>div.right {
		padding-top: 40px
	}

	body footer div.top>div.center ul li.address>div.right a {
		float: none;
		margin-left: 0;
		margin-top: 20px
	}

	body footer div.top>div.center ul li.address>div.right a>div.right {
		font-size: 11px
	}

	body footer div.top>div.center ul li.address>div.right a>div.right div.middle br {
		display: none
	}

	body footer div.top>div.center ul li.address>div.right a:first-child {
		margin-top: 0
	}
}

body.en footer div.top>div.right {
	display: none
}

body.en footer div.top>div.left>a h1 {
	margin: 2px 0 0
}

body.en footer div.top>div.left>a h1 span {
	margin-left: -1%
}

@media (max-width:1615px) {
	body.en footer div.top>div.center ul li.address>div.right a>div.left {
		width: 110px
	}

	body.cn footer div.top>div.center ul li.address>div.right a>div.left {
		width: 80px
	}
}

@media (max-width:1150px) {
	body.en footer div.top>div.center ul li.address>div.right a {
		float: none;
		margin-left: 0
	}

	body.en footer div.top>div.center ul li.address>div.right a:last-child {
		margin-top: 20px
	}
}

@media (max-width:1000px) {
	body.en footer div.top>div.left>a h1 {
		margin: 2px 0 3px
	}
}

body div#image_float {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

body div#image_float div.image {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10001
}

body div#image_float div.image iframe,body div#image_float div.image img {
	position: absolute;
	background-color: #e6e6e6
}

body div#image_float div.image>div {
	position: absolute
}

body div#image_float div.image img.white {
	filter: brightness(97%)
}

body div#image_float div.image img.frame_border {
	border: 1px solid #ddd
}

body div#image_float div.copyright {
	position: absolute;
	z-index: 105;
	text-align: center;
	width: 100%;
	font-size: 12px;
	bottom: 20px
}

body div#image_float a#bt_float_close {
	position: fixed;
	z-index: 103;
	top: 45px;
	right: -6px;
	cursor: pointer;
	transform: translate(-50%,-50%)
}

body div#image_float a#bt_float_close span {
	display: block
}

body div#image_float a#bt_float_close .arrow {
	display: inline-block;
	width: 50px;
	height: 50px;
	position: relative;
	cursor: pointer
}

body div#image_float a#bt_float_close span.arrow:after,body div#image_float a#bt_float_close span.arrow:before {
	display: block;
	content: "";
	position: absolute;
	left: 50%;
	width: 1px;
	height: 50px;
	background: #000
}

body div#image_float a#bt_float_close span.arrow:before {
	transform: rotate(-45deg)
}

body div#image_float a#bt_float_close span.arrow:after {
	transform: rotate(45deg)
}

body div#image_float a#bt_float_right {
	position: fixed;
	z-index: 103;
	right: 67px;
	top: calc(50% - 70px / 2);
	cursor: pointer;
	transform: translate(-50%,-50%)
}

body div#image_float a#bt_float_right span {
	display: block
}

body div#image_float a#bt_float_right .arrow {
	position: relative;
	display: inline-block;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px
}

body div#image_float a#bt_float_right .arrow:after,body div#image_float a#bt_float_right .arrow:before {
	position: absolute;
	top: 55px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle
}

body div#image_float a#bt_float_right .arrow:before {
	box-sizing: border-box;
	width: 70px;
	height: 70px;
	border: 1px solid #fff;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background-color: #000;
	opacity: 0
}

body div#image_float a#bt_float_right .arrow:after {
	top: 55px;
	left: 11px;
	width: 25px;
	height: 25px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(135deg);
	transform: rotate(45deg)
}

body div#image_float a#bt_float_left {
	position: fixed;
	z-index: 103;
	left: 21px;
	top: calc(50% - 70px / 2);
	cursor: pointer;
	transform: translate(-50%,-50%)
}

body div#image_float a#bt_float_left span {
	display: block
}

body div#image_float a#bt_float_left .arrow {
	position: relative;
	display: inline-block;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px
}

body div#image_float a#bt_float_left .arrow:after,body div#image_float a#bt_float_left .arrow:before {
	position: absolute;
	top: 55px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle
}

body div#image_float a#bt_float_left .arrow:before {
	box-sizing: border-box;
	width: 70px;
	height: 70px;
	border: 1px solid #fff;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background-color: #000;
	opacity: 0
}

body div#image_float a#bt_float_left .arrow:after {
	top: 55px;
	left: 11px;
	width: 25px;
	height: 25px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(135deg);
	transform: rotate(225deg)
}

body div#image_float div.bg {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 100;
	top: 0;
	left: 0;
	opacity: 1;
	background-color: #fff;
	cursor: pointer
}

div.slide div.bt {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%
}

div.slide div.bt a {
	float: left;
	width: 50%;
	height: 100%;
	cursor: pointer
}

div.slide div.bt a div {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	background-image: url("../images/bt_arrow_black.svg");
	background-color: #fff;
	border-radius: 15px
}

div.slide div.bt a.left div.prev {
	left: 25px;
	transform: rotate(180deg)
}

div.slide div.bt a.right>div.next {
	right: 25px
}

div.slide div.bt a:hover {
	opacity: 1
}

div.slide div.bt a:hover div.next,div.slide div.bt a:hover div.prev {
	background-color: hsla(0,0%,100%,.5)
}

div.slide ul.photos {
	width: 100%;
	padding-top: 66.66667%;
	position: relative
}

div.slide ul.photos li {
	position: absolute;
	top: 0;
	width: 100%;
	opacity: 0
}

div.slide ul.photos li div.photo {
	line-height: 0;
	width: 100%;
	background-color: #e6e6e6;
	position: relative
}

div.slide ul.photos li div.photo img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0
}

div.slide ul.photos li div.photo:before {
	content: "";
	display: block;
	padding-top: 66.6666666667%
}

div.slide ul.photos li div.text {
	margin-top: 5px
}

div.slide ul.photos li:first-child {
	opacity: 1
}

div.slide ul.states {
	width: 90%;
	position: absolute;
	bottom: 20px;
	z-index: 3;
	left: 50%;
	text-align: center;
	transform: translate(-50%);
	margin-left: 3px
}

div.slide ul.states li {
	display: inline-block;
	width: 8px;
	height: 8px;
	background-color: hsla(0,0%,100%,.5);
	border-radius: 8px;
	margin-right: 4px;
	text-align: center;
	cursor: pointer
}

div.slide ul.states li.select {
	background-color: #fff
}

@media (max-width:700px) {
	div.slide ul.photos li div.text {
		margin: 5px 20px 0;
		font-size: 11px
	}
}

body.top {
	overflow-x: hidden
}

body.top div#main.top>div#movie_area {
	background-color: #000
}

body.top div#main.top>div#movie_area div#top_video_wrap {
	position: relative
}

body.top div#main.top>div#movie_area div#top_video_wrap div.gradient {
	width: 100%;
	height: 100%;
	z-index: 5;
	position: absolute;
	bottom: 0;
	background: linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.2),transparent,rgba(0,0,0,.4),#000)
}

body.top div#main.top>div#movie_area video {
	z-index: 1
}

body.top div#main.top div#top_copy {
	writing-mode: vertical-rl;
	font-size: 22px;
	line-height: 45px;
	font-feature-settings: normal;
	letter-spacing: .1em;
	color: #000;
	margin: 120px auto;
	-webkit-text-orientation: upright;
	text-orientation: upright
}

body.top div#main.top div#top_copy div.single {
	margin: 0
}

body.top div#main.top div#top_copy div.single h4 {
	font-weight: 700;
	margin-left: 1em;
	color: #fff
}

body.top div#main.top div#top_copy div.single p {
	color: #000
}

body.top div#main.top div#news>a {
	position: relative;
	display: block;
	overflow: hidden;
	width: calc(100% - 160px);
	margin: 80px
}

body.top div#main.top div#news>a div.wrap {
	position: absolute
}

@keyframes on {
	0% {
		opacity: 0
	}

	to {
		opacity: .3
	}
}

@keyframes off {
	0% {
		opacity: .3
	}

	to {
		opacity: 0
	}
}

body.top div#main.top div#news a.content div.alpha {
	opacity: 0;
	animation: off .3s ease-out
}

body.top div#main.top div#news a.content:hover {
	opacity: 1;
}
body.top div#main.top div#news a.content div.wrap div.bt {
	transition: all 0.3s ease 0s;
}
body.top div#main.top div#news a.content:hover div.wrap div.bt {
	border: 1px solid #fff;
	background-color: #fff;
	color: #000;
}

body.top div#main.top div#news a.content:hover div.wrap div.bt div.arrow {
	border: 1px solid #000;
	background-image: url("../images/bt_arrow_black.svg")
}

body.top div#main.top div#news a.white.content:hover div.wrap div.text div.bt {
	border: 1px solid #000;
	background-color: #000;
	color: #fff
}

body.top div#main.top div#news a.content {
	cursor: pointer;
	display: block;
	color: #fff;
	background-color: #000;
	position: relative;
	overflow: hidden;
	height: 800px
}

body.top div#main.top div#news a.content div.wrap {
	position: relative;
	height: 100%;
	margin: 0 auto;
	z-index: 2;
}

body.top div#main.top div#news a.content div.wrap div.text {
	text-align: left;
	position: absolute;
	top: 80px;
	z-index: 2;
	opacity: .85;
	writing-mode: vertical-rl
}

body.top div#main.top div#news a.content div.wrap div.text h3.en {
	font-size: 12px;
	margin-left: 10px;
	margin-right: -6px;
	letter-spacing: .13em;
	text-transform: uppercase
}

body.top div#main.top div#news a.content div.wrap div.text h3 {
	font-size: 38px;
	margin-left: 25px;
	letter-spacing: .05em;
	font-feature-settings: "pkna"
}

body.top div#main.top div#news a.content div.wrap div.text p.content {
	font-size: 17px;
	line-height: 32px;
	font-feature-settings: "pkna";
	letter-spacing: .15em
}

body.top div#main.top div#news a.content div.wrap div.bt {
	position: absolute;
	bottom: 80px;
	z-index: 2;
	border: 1px solid hsla(0,0%,100%,.8);
	border-radius: 3px;
	padding: 12px 28px;
	font-size: 12px;
	padding-left: 54px
}

body.top div#main.top div#news a.content div.wrap div.bt div.arrow {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	left: 25px;
	background-image: url("../images/bt_arrow.svg");
	border: 1px solid #fff;
	border-radius: 15px
}

body.top div#main.top div#news a.content div.wrap div.bt div.arrow svg {
	fill: #000
}

body.top div#main.top div#news a.content div.alpha,body.top div#main.top div#news a.content div.gradient {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
	top: 0
}

body.top div#main.top div#news a.content div.alpha {
	background-color: #000
}

body.top div#main.top div#news a.content .full_resize {
	position: absolute
}

body.top div#main.top div#news a.white.content {
	color: #000;
	background-color: #fff
}

body.top div#main.top div#news a.white.content div.wrap div.text div.bt {
	border: 1px solid #000;
	color: #000
}

body.top div#main.top div#news a.white.content div.alpha {
	background-color: #fff
}

body.top div#main.top div#news a.content.left div.wrap div.text {
	left: 80px
}

body.top div#main.top div#news a.content.left div.wrap div.bt {
	right: 80px
}

body.top div#main.top div#news a.content.left div.gradient {
	background: linear-gradient(to bottom right,rgba(0,0,0,.8),transparent)
}

body.top div#main.top div#news a.white.content.left div.gradient {
	background: linear-gradient(to bottom right,rgba(1,1,1,.8),rgba(1,1,1,0))
}

body.top div#main.top div#news a.content.right div.wrap div.text {
	right: 80px
}

body.top div#main.top div#news a.content.right div.wrap div.bt {
	left: 80px
}

body.top div#main.top div#news a.white.content.right div.gradient {
	background: linear-gradient(to bottom left,hsla(0,0%,100%,.8),hsla(0,0%,100%,0))
}

body.top div#main.top div#news div.gradient {
	background: linear-gradient(to bottom left,rgba(0,0,0,.8),transparent)
}

@media (max-width:980px) {
	body.top div#main.top div#top_copy {
		font-size: 16px;
		line-height: 180%;
		margin: 100px auto
	}

	body.top div#main.top div#news>a {
		width: calc(100% - 40px);
		margin: 20px
	}

	body.top div#main.top div#news>a div.wrap div.text {
		top: 25px
	}

	body.top div#main.top div#news a.content {
		height: 500px
	}

	body.top div#main.top div#news a.content div.wrap div.text {
		top: 25px
	}

	body.top div#main.top div#news a.content div.wrap div.text h3.en {
		font-size: 10px;
		margin-left: 3px
	}

	body.top div#main.top div#news a.content div.wrap div.text h3 {
		font-size: 24px;
		margin-left: 15px
	}

	body.top div#main.top div#news a.content div.wrap div.text p.content {
		font-size: 14px;
		line-height: 160%
	}

	body.top div#main.top div#news a.content div.wrap div.bt {
		padding: 10px 14px;
		padding-left: 48px
	}

	body.top div#main.top div#news a.content div.wrap div.bt div.arrow {
		left: 20px
	}

	body.top div#main.top div#news a.content.right div.wrap div.text {
		right: 25px
	}

	body.top div#main.top div#news a.content.right div.wrap div.bt {
		left: 25px;
		bottom: 25px
	}

	body.top div#main.top div#news a.content.left div.wrap div.text {
		left: 25px
	}

	body.top div#main.top div#news a.content.left div.wrap div.bt {
		right: 25px;
		bottom: 25px;
		left: unset
	}
}

@media (max-width:500px) {
	body.top div#main.top div#top_copy {
		font-size: 14px;
		line-height: 160%;
		margin: 100px auto
	}
}

body.en.top div#main.top div#top_copy {
	writing-mode: horizontal-tb;
	font-size: 22px;
	line-height: 40px;
	letter-spacing: .02em;
	text-align: center
}

body.en.top div#main.top div#news a.content div.wrap div.text {
	writing-mode: horizontal-tb
}

body.en.top div#main.top div#news a.content div.wrap div.text h3.en {
	margin-left: 0;
	margin-top: -5px
}

body.en.top div#main.top div#news a.content div.wrap div.text h3 {
	margin-left: 0;
	text-transform: uppercase;
	margin: 15px 0
}

body.en.top div#main.top div#news a.content div.wrap div.text p.content {
	font-size: 14px;
	line-height: 18px;
	letter-spacing: .05em
}

@media (max-width:980px) {
	body.en.top div#main.top div#top_copy {
		font-size: 16px;
		line-height: 180%
	}

	body.en.top div#main.top div#news a.content div.wrap div.text h3.en {
		margin-left: 0;
		margin-top: -5px;
		margin-bottom: 1px
	}

	body.en.top div#main.top div#news a.content div.wrap div.text h3.ja {
		margin: 0 0 11px
	}
}

@media (max-width:500px) {
	body.en.top div#main.top div#top_copy {
		font-size: 14px;
		line-height: 180%
	}

	body.en.top div#main.top div#news a.content div.wrap div.text {
		max-width: 220px
	}
}

body.gallery div#main div#movie_area {
	background-color: #000
}

body.gallery div#main div#movie_area div#top_video_wrap {
	position: relative
}

body.gallery div#main div#movie_area div#top_video_wrap div.gradient {
	width: 100%;
	height: 100%;
	z-index: 4;
	position: absolute;
	bottom: 0;
	background: linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.2),transparent,rgba(0,0,0,.4),#000)
}

body.gallery div#main div#movie_area div#top_title {
	position: absolute;
	z-index: 10;
	text-align: center;
	color: #fff
}

body.gallery div#main div#movie_area div#top_title h2 {
	font-size: 48px
}

body.gallery div#main div#movie_area div#top_title p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.gallery div#main div#top_copy {
	writing-mode: vertical-rl;
	font-size: 22px;
	line-height: 45px;
	font-feature-settings: "pkna";
	letter-spacing: .11em;
	color: #000;
	margin: 0 auto;
	margin-top: 120px;
	text-orientation: upright;
	-webkit-text-orientation: upright
}

body.gallery div#main div#top_copy span {
	text-combine-upright: all
}

body.gallery div#main div#photos {
	margin-top: 120px;
	position: relative
}

body.gallery div#main div#photos ul {
	width: 1550px;
	position: relative;
	left: 25px;
	margin: 0 auto
}

body.gallery div#main div#photos ul li {
	float: left;
	width: calc(100% / 3 - 25px * 2);
	margin-right: 50px
}

body.gallery div#main div#photos ul li a {
	cursor: pointer;
	display: block
}

body.gallery div#main div#photos ul li a div {
	line-height: 0;
	width: 100%;
	background-color: #e6e6e6;
	position: relative
}

body.gallery div#main div#photos ul li a div img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0
}

body.gallery div#main div#photos ul li a div:before {
	content: "";
	display: block;
	padding-top: 66.6666666667%
}

body.gallery div#main div#photos ul li a p {
	height: 50px;
	line-height: 50px;
	text-align: right
}

body.gallery div#main>div#under {
	margin-top: 180px;
	background-color: #f0f0f0
}

body.gallery div#main>div#under>div.inner {
	width: 1500px;
	margin: 0 auto;
	padding: 180px 0
}

body.gallery div#main>div#under>div.inner>div.title {
	float: left;
	writing-mode: vertical-lr;
	position: relative;
	left: 9px
}

body.gallery div#main>div#under>div.inner>div.title h3.ja {
	font-size: 46px;
	letter-spacing: .05em
}

body.gallery div#main>div#under>div.inner>div.title h3.en {
	font-size: 18px;
	letter-spacing: .05em;
	text-transform: uppercase;
	margin-left: 15px
}

body.gallery div#main>div#under>div.inner div.content {
	float: right;
	width: calc(100% - 160px)
}

@media (max-width:1750px) {
	body.gallery div#main div#photos ul {
		width: calc(80% + 50px)
	}

	body.gallery div#main div#photos ul li {
		width: calc(100% / 2 - 25px * 2)
	}

	body.gallery div#main>div#under>div.inner {
		width: 80%
	}

	body.gallery div#main>div#under>div.inner>div.title {
		width: auto;
		float: none;
		margin-bottom: 180px;
		position: relative;
		left: 0;
		writing-mode: unset
	}

	body.gallery div#main>div#under>div.inner>div.title h3.en {
		margin-left: 0;
		margin-top: 20px
	}

	body.gallery div#main>div#under>div.inner div.content {
		float: none;
		width: 100%
	}
}

@media (max-width:1400px) {
	body.gallery div#main div#photos {
		margin-top: 100px
	}

	body.gallery div#main div#photos ul {
		width: calc(90% + 50px)
	}

	body.gallery div#main>div#under {
		margin-top: 100px
	}

	body.gallery div#main>div#under>div.inner {
		width: 90%;
		padding: 100px 0
	}

	body.gallery div#main>div#under>div.inner>div.title {
		float: none;
		margin-bottom: 100px
	}

	body.gallery div#main>div#under>div.inner>div.title h3.ja {
		font-size: 40px;
		display: inline-block
	}

	body.gallery div#main>div#under>div.inner>div.title h3.en {
		font-size: 16px;
		margin-top: 16px;
		display: inline-block;
		margin-left: 5px
	}
}

@media (max-width:980px) {
	body.gallery div#main div#photos ul {
		width: calc(100% - 20px);
		left: 0;
		margin: 0 20px
	}

	body.gallery div#main div#photos ul li {
		width: calc(100% / 2 - 20px);
		margin-right: 20px
	}

	body.gallery div#main>div#under>div.inner {
		width: calc(100% - 40px);
		margin: 0 20px
	}

	body.gallery div#main>div#under>div.inner>div.title {
		float: none
	}

	body.gallery div#main>div#under>div.inner>div.title h3.ja {
		font-size: 30px
	}
}

@media (max-width:750px) {
	body.gallery div#main div#top_copy {
		font-size: 16px;
		line-height: 36px
	}
}

@media (max-width:550px) {
	body.gallery div#main div#movie_area div#top_title h2 {
		font-size: 28px;
		line-height: 110%
	}

	body.gallery div#main div#movie_area div#top_title p {
		font-size: 12px;
		margin-top: 7px
	}

	body.gallery div#main div#top_copy {
		margin: 60px auto;
		font-size: 14px;
		line-height: 180%
	}

	body.gallery div#main div#photos {
		margin-top: 25px
	}

	body.gallery div#main div#photos ul li a p {
		font-size: 10px;
		height: 25px;
		line-height: 25px
	}

	body.gallery div#main>div#under {
		margin-top: 60px
	}

	body.gallery div#main>div#under>div.inner {
		padding: 60px 0
	}

	body.gallery div#main>div#under>div.inner>div.title {
		margin-bottom: 60px
	}

	body.gallery div#main>div#under>div.inner>div.title h3.ja {
		font-size: 26px
	}

	body.gallery div#main>div#under>div.inner>div.title h3.en {
		font-size: 12px
	}
}

@media (max-width:500px) {
	body.gallery div#main div#top_copy {
		margin: 60px auto
	}
}

body.en.gallery div#main div#top_copy {
	writing-mode: horizontal-tb;
	font-size: 22px;
	line-height: 35px;
	letter-spacing: .04em;
	text-align: center
}

@media (max-width:980px) {
	body.en.gallery div#main div#top_copy {
		font-size: 16px;
		line-height: 180%
	}
}

@media (max-width:500px) {
	body.en.gallery div#main div#top_copy {
		font-size: 14px;
		line-height: 160%;
		margin: 100px auto
	}
}

body.gallery div#main>div#to_detail_links {
	background-color: #f0f0f0
}

body.gallery div#main>div#to_detail_links div.line {
	height: 1px
}

body.gallery div#main>div#to_detail_links div.line:before {
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	margin: auto;
	background-image: linear-gradient(90deg,#787878,#787878 5px,transparent 0,transparent 10px);
	background-size: 10px 1px;
	background-repeat: repeat-x
}

body.gallery div#main>div#to_detail_links>div.inner {
	width: 1500px;
	margin: 0 auto;
	padding: 180px 0
}

body.gallery div#main>div#to_detail_links>div.inner ul li {
	float: left;
	width: calc(50% - 30px)
}

body.gallery div#main>div#to_detail_links>div.inner ul li a {
	display: block;
	color: #000;
	background-color: #fff;
	padding: 60px;
	border-radius: 3px
}

body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_en {
	font-size: 12px;
	letter-spacing: .05em;
	text-transform: uppercase
}

body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_ja {
	font-size: 32px;
	line-height: 100%;
	letter-spacing: .05em;
	margin-top: 10px
}

body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail {
	margin-top: 140px;
	color: #000;
	display: block;
	position: relative;
	border-bottom: 2px solid #000;
	padding: 0;
	padding: 10px 0
}

body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail span.ja {
	font-size: 16px
}

body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail span.en {
	position: relative;
	top: -1px;
	font-size: 10px;
	text-transform: uppercase;
	margin-left: 3px
}

body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail>div.bt {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	right: 0;
	background-image: url(../images/bt_arrow_black.svg);
	border: 1px solid #000;
	border-radius: 15px
}

body.gallery div#main>div#to_detail_links>div.inner ul li:nth-child(2n) {
	margin-left: 60px
}

@media (max-width:1750px) {
	body.gallery div#main>div#to_detail_links>div.inner {
		width: 80%
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_en {
		font-size: 14px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_ja {
		font-size: 32px;
		margin-top: 5px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail {
		margin-top: 120px
	}
}

@media (max-width:1400px) {
	body.gallery div#main>div#to_detail_links>div.inner {
		width: 90%;
		padding: 100px 0
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a {
		padding: 40px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_en {
		font-size: 12px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_ja {
		font-size: 28px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail {
		margin-top: 130px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail span.ja {
		font-size: 14px
	}
}

@media (max-width:980px) {
	body.gallery div#main>div#to_detail_links>div.inner {
		width: calc(100% - 40px);
		margin: 0 20px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li {
		float: none;
		width: auto
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li:nth-child(2n) {
		margin-left: 0;
		margin-top: 40px
	}
}

@media (max-width:500px) {
	body.gallery div#main>div#to_detail_links>div.inner {
		padding: 60px 0
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_en {
		font-size: 10px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a div.nema_ja {
		font-size: 24px
	}

	body.gallery div#main>div#to_detail_links>div.inner ul li a>div.detail {
		margin-top: 70px
	}
}

body.activity div#main div#under div.inner.mt {
	padding-bottom: 0
}

body.activity div#main div#under div.inner div.content.links div.group {
	float: left;
	width: 50%;
	margin-bottom: 80px
}

body.activity div#main div#under div.inner div.content.links div.group h4 {
	font-size: 28px;
	margin-bottom: 30px;
	line-height: 120%
}

body.activity div#main div#under div.inner div.content.links div.group ul li {
	overflow: ellipsis
}

body.activity div#main div#under div.inner div.content.links div.group ul li a {
	position: relative;
	padding-left: 25px;
	display: block;
	color: #000;
	line-height: 260%;
	white-space: nowrap;
	font-size: 16px;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-right: 20px
}

body.activity div#main div#under div.inner div.content.links div.group ul li a div.arrow {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	left: 0;
	background-image: url("../images/bt_arrow_black.svg");
	border: 1px solid #000;
	border-radius: 15px
}

body.activity div#main div#under div.inner div.content.links div.group ul li a div.arrow svg {
	fill: #000
}

body.activity div#main div#under div.inner div.content.links div.group:last-child {
	margin-bottom: 0
}

@media (max-width:950px) {
	body.activity div#main div#under div.inner div.content.links div.group {
		float: none;
		width: 100%;
		margin-bottom: 40px
	}

	body.activity div#main div#under div.inner div.content.links div.group h4 {
		font-size: 20px;
		margin-bottom: 10px
	}

	body.activity div#main div#under div.inner div.content.links div.group ul li {
		overflow: hidden
	}

	body.activity div#main div#under div.inner div.content.links div.group ul li a {
		font-size: 13px
	}
}

body.people div#main div#people {
	margin: 180px 0
}

body.people div#main div#people ul {
	width: 80%;
	position: relative;
	left: 30px;
	margin: 0 auto
}

body.people div#main div#people ul li {
	position: relative;
	float: left;
	width: calc(50% - 60px * 1);
	margin-bottom: 60px;
	margin-right: 60px
}

body.people div#main div#people ul li div.left {
	width: 30%;
	height: 100%;
	position: absolute
}

body.people div#main div#people ul li div.left div.inner {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%)
}

body.people div#main div#people ul li div.left div.inner div.profile {
	margin-top: 20px
}

body.people div#main div#people ul li div.left div.inner div.profile div.photo_position {
	margin-left: -8px
}

body.people div#main div#people ul li div.left div.inner div.profile div.name span.name {
	font-size: 18px
}

body.people div#main div#people ul li div.left div.inner div.profile div.title {
	line-height: 140%;
	margin-bottom: 5px
}

body.people div#main div#people ul li div.left div.inner div.profile:first-child {
	margin-top: 0
}

body.people div#main div#people ul li div.left div.inner div.description {
	margin-top: -3px;
	font-size: 12px
}

body.people div#main div#people ul li div.right {
	float: right;
	width: calc(70% - 5px);
	line-height: 0
}

body.people div#main div#people ul li div.right img {
	width: 100%
}

@media (max-width:1500px) {
	body.people div#main div#people ul {
		width: 100%
	}
}

@media (max-width:1200px) {
	body.people div#main div#people ul {
		width: 70%;
		max-width: 700px;
		margin: 0 auto;
		position: relative;
		left: 0
	}

	body.people div#main div#people ul li {
		float: none;
		width: 100%
	}
}

@media (max-width:800px) {
	body.people div#main div#people {
		margin: 60px 0
	}

	body.people div#main div#people ul li div.left div.inner div.profile div.name span.name {
		font-size: 14px
	}
}

@media (max-width:700px) {
	body.people div#main div#people ul {
		width: calc(100% - 40px);
		position: relative;
		left: 0;
		margin: 0 auto
	}

	body.people div#main div#people ul li {
		width: 100%;
		margin-bottom: 60px;
		margin-right: 0
	}

	body.people div#main div#people ul li div.left {
		width: 100%;
		position: relative
	}

	body.people div#main div#people ul li div.left div.inner {
		position: relative;
		top: 20px;
		left: 0;
		transform: translateY(0)
	}

	body.people div#main div#people ul li div.left div.inner div.profile {
		margin-top: 10px
	}

	body.people div#main div#people ul li div.left div.inner div.profile div.name {
		display: inline
	}

	body.people div#main div#people ul li div.right {
		width: 100%
	}
}

body.en.people div#main div#people ul li div.left {
	width: 40%
}

body.en.people div#main div#people ul li div.right {
	width: 60%
}

body.cn.people div#main div#people ul li div.left {
	width: 30%
}

body.cn.people div#main div#people ul li div.right {
	width: 70%
}

@media (max-width:700px) {
	body.cn.people div#main div#people ul li div.left,body.cn.people div#main div#people ul li div.right,body.en.people div#main div#people ul li div.left,body.en.people div#main div#people ul li div.right {
		width: 100%
	}
}

body.dining div#main div#under div.inner div.content.farmar {
	float: right;
	width: calc(100% - 260px)
}

body.dining div#main div#under div.inner div.content.farmar ul {
	width: 100%;
	position: relative;
	right: 0;
	margin: 0 auto
}

body.dining div#main div#under div.inner div.content.farmar ul li {
	position: relative;
	float: left;
	width: calc(50% - 60px);
	margin-bottom: 60px;
	margin-left: 60px
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left {
	width: 30%;
	height: 100%;
	position: absolute
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%)
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile {
	margin-top: 20px
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile div.photo_position {
	margin-left: -8px
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile div.name span.name {
	font-size: 18px
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile:first-child {
	margin-top: 0
}

body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.description {
	margin-top: -3px;
	font-size: 12px
}

body.dining div#main div#under div.inner div.content.farmar ul li div.right {
	float: right;
	width: calc(70% - 5px);
	line-height: 0
}

body.dining div#main div#under div.inner div.content.farmar ul li div.right img {
	width: 100%
}

@media (max-width:1750px) {
	body.dining div#main div#under div.inner div.content.farmar {
		float: none;
		width: calc(100% + 60px);
		position: relative;
		left: -60px
	}
}

@media (max-width:1200px) {
	body.dining div#main div#under div.inner div.content.farmar {
		width: 70%;
		max-width: 700px;
		margin: 0 auto
	}

	body.dining div#main div#under div.inner div.content.farmar ul {
		position: relative;
		left: 0
	}

	body.dining div#main div#under div.inner div.content.farmar ul li {
		float: none;
		width: 100%
	}
}

@media (max-width:800px) {
	body.dining div#main div#under div.inner div.content.farmar {
		width: auto;
		max-width: none;
		margin: 0
	}

	body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile div.name span.name {
		font-size: 14px
	}
}

@media (max-width:500px) {
	body.dining div#main div#under div.inner div.content.farmar ul li {
		width: 100%;
		margin-bottom: 60px;
		margin-right: 0
	}

	body.dining div#main div#under div.inner div.content.farmar ul li div.left {
		width: 100%;
		position: relative
	}

	body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner {
		position: relative;
		top: 20px;
		left: 0;
		transform: translateY(0)
	}

	body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile {
		margin-top: 5px
	}

	body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile div.name,body.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile div.photo_position {
		display: inline
	}

	body.dining div#main div#under div.inner div.content.farmar ul li div.right {
		width: 100%
	}
}

body.en.dining div#main div#under div.inner div.content.farmar ul {
	display: grid;
	grid-template-columns: 50% 50%
}

body.en.dining div#main div#under div.inner div.content.farmar ul li {
	width: calc(100% - 60px)
}

body.en.dining div#main div#under div.inner div.content.farmar ul li div.right {
	width: 100%;
	float: none
}

body.en.dining div#main div#under div.inner div.content.farmar ul li div.left {
	margin-top: 20px;
	width: 100%;
	position: relative;
	height: auto
}

body.en.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner {
	position: relative;
	transform: none
}

body.en.dining div#main div#under div.inner div.content.farmar ul li div.left div.inner div.profile {
	margin-top: 0
}

@media (max-width:1200px) {
	body.en.dining div#main div#under div.inner div.content.farmar {
		width: 100%;
		max-width: 700px;
		margin: 0 auto;
		left: 0
	}

	body.en.dining div#main div#under div.inner div.content.farmar ul {
		display: block
	}

	body.en.dining div#main div#under div.inner div.content.farmar ul li {
		width: 100%;
		margin: 0 auto 60px
	}
}

body.gallery {
	overflow-x: hidden
}

body.gallery div#main div#under div.inner div.content.rooms div.room {
	margin-bottom: 180px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text {
	float: left;
	width: 345px;
	margin-right: 65px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text h4.en {
	font-size: 28px;
	text-transform: uppercase
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text h4.sub {
	font-size: 12px;
	margin-top: 4px;
	letter-spacing: .06em;
	text-transform: uppercase
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text p {
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 14px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text p.annotation {
	font-size: 12px;
	line-height: 180%;
	margin: 25px 0 30px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve {
	background-color: #2d2d2d;
	color: #fff;
	padding: 20px 25px;
	display: block;
	position: relative;
	border-radius: 3px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve span.ja {
	font-size: 16px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve span.en {
	position: relative;
	top: -1px;
	font-size: 10px;
	text-transform: uppercase
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve div.bt {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	right: 25px;
	background-image: url("../images/bt_arrow.svg");
	border: 1px solid #fff;
	border-radius: 15px
}

body.gallery div#main div#under div.inner div.content.rooms div.room div.slide {
	float: right;
	position: relative;
	background-color: #000;
	width: calc(100% - 410px)
}

body.gallery div#main div#under div.inner div.content.rooms div.room:last-child {
	margin-bottom: 25px
}

@media (max-width:1400px) {
	body.gallery div#main div#under div.inner div.content.rooms div.room {
		margin-bottom: 120px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text {
		width: 385px;
		margin-right: 65px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text h4.en {
		font-size: 24px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text p {
		font-size: 13px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve {
		padding: 20px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve span.ja {
		font-size: 14px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text a.reserve span.en {
		position: relative;
		top: -1px;
		font-size: 10px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.slide {
		width: calc(100% - 450px)
	}
}

@media (max-width:1200px) {
	body.gallery div#main div#under div.inner div.content.rooms div.room div.text {
		width: 285px;
		margin-right: 65px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.slide {
		width: calc(100% - 350px)
	}
}

@media (max-width:980px) {
	body.gallery div#main div#under div.inner div.content.rooms div.room div.text {
		float: none;
		width: auto;
		margin-right: 0
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.slide {
		margin-top: 0;
		margin-bottom: 60px;
		width: auto;
		float: none
	}
}

@media (max-width:500px) {
	body.gallery div#main div#under div.inner div.content.rooms div.room div.text {
		font-size: 10px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text h4 {
		font-size: 18px
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.text p {
		margin: 23px 0 25px;
		line-height: 160%
	}

	body.gallery div#main div#under div.inner div.content.rooms div.room div.slide {
		margin-top: 40px;
		margin-bottom: 30px
	}
}

body.gallery div#main div.feature:last-child {
	margin-bottom: 250px
}

body.gallery div#main div.feature {
	margin-top: 250px;
	text-align: center
}

body.gallery div#main div.feature h3.ja {
	font-size: 36px;
	line-height: 110%
}

body.gallery div#main div.feature h3.en {
	font-size: 16px;
	margin-top: 20px;
	text-transform: uppercase
}

body.gallery div#main div.feature>P {
	width: 500px;
	max-width: 500px;
	margin: 55px auto 0;
	font-size: 17px;
	line-height: 180%;
	text-align: left
}

body.gallery div#main div.feature>P br {
	display: none
}

body.gallery div#main div.feature div.slide {
	text-align: left;
	position: relative;
	width: 700px;
	margin: 60px auto 0
}

body.gallery div#main div.feature div.youtube_wrap {
	width: 900px;
	margin: 60px auto 0
}

body.gallery div#main div.feature div.youtube_wrap div.youtube_inner {
	position: relative;
	width: 100%;
	padding-top: 56.25%
}

body.gallery div#main div.feature div.youtube_wrap div.youtube_inner iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

@media (max-width:1400px) {
	body.gallery div#main div.feature:last-child {
		margin-bottom: 170px
	}

	body.gallery div#main div.feature {
		margin-top: 150px
	}
}

@media (max-width:980px) {
	body.gallery div#main div.feature:last-child {
		margin-bottom: 40px
	}

	body.gallery div#main div.feature {
		margin-top: 150px
	}

	body.gallery div#main div.feature h3.ja {
		font-size: 30px
	}

	body.gallery div#main div.feature h3.en {
		font-size: 16px
	}

	body.gallery div#main div.feature div.slide {
		width: 100%;
		max-width: 700px;
		margin: 0 auto;
		margin-top: 60px
	}

	body.gallery div#main div.feature div.youtube_wrap {
		width: 100%;
		max-width: 700px;
		margin: 0 auto
	}

	body.gallery div#main div.features {
		padding-bottom: 25px
	}
}

@media (max-width:600px) {
	body.gallery div#main div.feature {
		margin-top: 80px
	}

	body.gallery div#main div.feature h3.ja {
		font-size: 22px;
		width: calc(100% - 40px);
		margin: 25px auto 0
	}

	body.gallery div#main div.feature h3.en {
		font-size: 12px;
		margin-top: 5px;
		width: calc(100% - 40px);
		margin: 25px auto 0
	}

	body.gallery div#main div.feature>P {
		font-size: 12px;
		line-height: 160%;
		width: calc(100% - 40px);
		margin: 25px auto 0
	}

	body.gallery div#main div.feature div.slide {
		margin-top: 25px
	}
}

body.news {
	overflow-x: hidden
}

body.news div#main div#top_title {
	text-align: center;
	color: #000;
	margin-top: 90px
}

body.news div#main div#top_title a {
	color: #000
}

body.news div#main div#top_title a h2 {
	font-size: 48px
}

body.news div#main div#top_title a p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.news div#main>div#content {
	margin-top: 95px;
	background-color: #f0f0f0;
	overflow: hidden
}

body.news div#main>div#content div.category {
	background-color: #fff
}

body.news div#main>div#content div.category div.inner {
	width: 800px;
	margin: 0 auto
}

body.news div#main>div#content div.category div.inner ul {
	white-space: nowrap
}

body.news div#main>div#content div.category div.inner ul li {
	display: inline-block
}

body.news div#main>div#content div.category div.inner ul li a {
	font-size: 17px;
	padding: 0 30px;
	background-color: #fff;
	height: 60px;
	line-height: 60px;
	display: block;
	color: #000
}

body.news div#main>div#content div.category div.inner ul li.select a {
	background-color: #f0f0f0
}

body.news div#main>div#content>section.content-area {
	width: 800px;
	margin: 0 auto;
	padding: 133px 0
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article.sigle {
	margin-bottom: 0
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article {
	margin-bottom: 135px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article h2 {
	font-size: 28px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article h2 a {
	color: #000;
	line-height: 140%
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article h2 div.info {
	margin-top: 5px;
	font-size: 14px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.image {
	margin-top: 30px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.image img {
	width: 100%;
	height: 100%
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.text {
	margin-top: 30px;
	font-size: 17px;
	line-height: 180%
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.text a {
	color: #000;
	border-bottom: 1px solid;
	padding-top: 2px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.text a.image {
	border: 0
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article img {
	width: 100%;
	height: 100%;
	position: relative;
	top: 3px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more {
	margin-top: 30px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a {
	color: #000;
	padding: 0 0 0 26px;
	display: block;
	position: relative;
	display: inline-block
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a span {
	position: relative;
	top: 1px;
	letter-spacing: 0
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a div.bt {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	left: 0;
	background-image: url("../images/bt_arrow_black.svg");
	border: 1px solid #000;
	border-radius: 15px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content .pager {
	font-size: 13px
}

body.news div#main>div#content>section.content-area main.lower-main div.entry-content .pager .page-numbers {
	color: #000
}

body.news div#main>div#content>section.content-area>div.title {
	float: left;
	writing-mode: vertical-lr;
	position: relative;
	left: 9px
}

body.news div#main>div#content>section.content-area>div.title h3.ja {
	font-size: 46px;
	letter-spacing: .05em
}

body.news div#main>div#content>section.content-area>div.title h3.en {
	font-size: 18px;
	letter-spacing: .05em;
	text-transform: uppercase;
	margin-left: 15px
}

body.news div#main>div#content>section.content-area div.content {
	float: right;
	width: calc(100% - 260px)
}

@media (max-width:850px) {
	body.news {
		overflow-x: hidden
	}

	body.news div#main>div#content div.category div.inner {
		width: 100%
	}

	body.news div#main>div#content div.category div.inner ul li a {
		font-size: 14px;
		padding: 0 20px;
		background-color: #fff;
		height: 50px;
		line-height: 50px;
		display: block;
		color: #000
	}

	body.news div#main>div#content div.category div.inner ul li.select a {
		background-color: #f0f0f0
	}

	body.news div#main>div#content>section.content-area {
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 60px 0
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article.sigle {
		margin-bottom: 0
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article {
		margin-bottom: 60px
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article h2 {
		font-size: 16px;
		font-weight: 700
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article h2 a {
		color: #000;
		line-height: 140%
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article h2 div.info {
		margin-top: 0;
		font-size: 10px
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.image {
		margin-top: 30px
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.image img {
		width: 100%;
		height: 100%
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.text {
		margin-top: 15px;
		font-size: 12px;
		line-height: 180%
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more {
		margin-top: 10px
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a {
		font-size: 12px;
		padding: 0 0 0 20px
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a div.bt {
		width: 12px;
		height: 12px
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a span {
		top: 0
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a:hover {
		background-color: #2d2d2d;
		color: #fff
	}

	body.news div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a:hover div.bt {
		border: 1px solid #fff;
		background-image: url("../images/bt_arrow.svg")
	}

	body.news div#main>div#content>section.content-area div.content {
		float: right;
		width: calc(100% - 260px)
	}
}

body.faq {
	overflow-x: hidden
}

body.faq div#main div#top_title {
	text-align: center;
	color: #000;
	margin-top: 90px
}

body.faq div#main div#top_title a {
	color: #000
}

body.faq div#main div#top_title a h2 {
	font-size: 48px
}

body.faq div#main div#top_title a p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.faq div#main>div#content {
	margin-top: 95px;
	background-color: #f0f0f0;
	overflow: hidden
}

body.faq div#main>div#content div.category {
	background-color: #fff
}

body.faq div#main>div#content div.category div.inner {
	width: 800px;
	margin: 0 auto
}

body.faq div#main>div#content div.category div.inner ul {
	white-space: nowrap
}

body.faq div#main>div#content div.category div.inner ul li {
	display: inline-block
}

body.faq div#main>div#content div.category div.inner ul li a {
	font-size: 17px;
	padding: 0 30px;
	background-color: #fff;
	height: 60px;
	line-height: 60px;
	display: block;
	color: #000
}

body.faq div#main>div#content div.category div.inner ul li.select a {
	background-color: #f0f0f0
}

body.faq div#main>div#content>section.content-area {
	width: 800px;
	margin: 0 auto;
	padding: 80px 0
}

body.faq div#main>div#content>section.content-area div.entry-content article.sigle,body.faq div#main>div#content>section.content-area div.other_contents article.sigle {
	margin-bottom: 0
}

body.faq div#main>div#content>section.content-area div.entry-content>h2,body.faq div#main>div#content>section.content-area div.other_contents>h2 {
	font-size: 36px;
	font-weight: 700;
	margin-top: 80px;
	margin-bottom: 80px
}

body.faq div#main>div#content>section.content-area div.entry-content article,body.faq div#main>div#content>section.content-area div.other_contents article {
	margin-bottom: 35px
}

body.faq div#main>div#content>section.content-area div.entry-content article h2,body.faq div#main>div#content>section.content-area div.other_contents article h2 {
	font-size: 18px;
	line-height: 140%;
	color: #000
}

body.faq div#main>div#content>section.content-area div.entry-content article h2 a,body.faq div#main>div#content>section.content-area div.other_contents article h2 a {
	color: #000;
	line-height: 140%
}

body.faq div#main>div#content>section.content-area div.entry-content article h2 div.info,body.faq div#main>div#content>section.content-area div.other_contents article h2 div.info {
	margin-top: 5px;
	font-size: 14px
}

body.faq div#main>div#content>section.content-area div.entry-content article div.image,body.faq div#main>div#content>section.content-area div.other_contents article div.image {
	margin-top: 30px
}

body.faq div#main>div#content>section.content-area div.entry-content article div.image img,body.faq div#main>div#content>section.content-area div.other_contents article div.image img {
	width: 100%;
	height: 100%
}

body.faq div#main>div#content>section.content-area div.entry-content article div.text,body.faq div#main>div#content>section.content-area div.other_contents article div.text {
	margin-top: 10px;
	font-size: 14px;
	line-height: 180%
}

body.faq div#main>div#content>section.content-area div.entry-content article div.text a,body.faq div#main>div#content>section.content-area div.other_contents article div.text a {
	color: #000;
	border-bottom: 1px solid #000;
	padding-bottom: 5px
}

body.faq div#main>div#content>section.content-area div.entry-content article div.text img,body.faq div#main>div#content>section.content-area div.other_contents article div.text img {
	width: 100%;
	height: 100%;
	position: relative;
	top: 3px
}

body.faq div#main>div#content>section.content-area div.entry-content article div.more,body.faq div#main>div#content>section.content-area div.other_contents article div.more {
	margin-top: 6px
}

body.faq div#main>div#content>section.content-area div.entry-content article div.more a,body.faq div#main>div#content>section.content-area div.other_contents article div.more a {
	color: #000;
	padding: 0 0 0 26px;
	display: block;
	position: relative;
	display: inline-block
}

body.faq div#main>div#content>section.content-area div.entry-content article div.more a span,body.faq div#main>div#content>section.content-area div.other_contents article div.more a span {
	position: relative;
	top: 1px;
	letter-spacing: 0
}

body.faq div#main>div#content>section.content-area div.entry-content article div.more a div.bt,body.faq div#main>div#content>section.content-area div.other_contents article div.more a div.bt {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	left: 0;
	background-image: url("../images/bt_arrow_black.svg");
	border: 1px solid #000;
	border-radius: 15px
}

body.faq div#main>div#content>section.content-area div.other_contents {
	padding-top: 60px;
	padding-bottom: 60px
}

body.faq div#main>div#content>section.content-area div.other_contents div.title {
	float: left;
	writing-mode: vertical-lr;
	position: relative;
	left: 9px;
	font-size: 26px;
	width: 130px
}

body.faq div#main>div#content>section.content-area div.other_contents div.title a {
	color: #000
}

body.faq div#main>div#content>section.content-area div.other_contents div.contents {
	position: relative;
	float: left;
	width: calc(100% - 130px)
}

body.faq div#main>div#content>section.content-area div.other_contents div.contents div.gradation {
	position: absolute;
	width: 100%;
	z-index: 0;
	height: 300px;
	background: linear-gradient(#f0f0f000,#f0f0f055,#f0f0f0bb,#f0f0f0);
	bottom: -2px;
	pointer-events: none
}

body.faq div#main>div#content>section.content-area div.other_contents div.contents div.more {
	position: absolute;
	text-align: center;
	bottom: -20px;
	width: 100%;
	z-index: 1
}

body.faq div#main>div#content>section.content-area div.other_contents div.contents div.more a {
	color: #000;
	padding: 0 0 0 24px;
	display: block;
	position: relative;
	display: inline-block
}

body.faq div#main>div#content>section.content-area div.other_contents div.contents div.more a span {
	position: relative;
	top: 0;
	letter-spacing: 0
}

body.faq div#main>div#content>section.content-area div.other_contents div.contents div.more a div.bt {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	left: 0;
	background-image: url("../images/bt_arrow_black.svg");
	border: 1px solid #000;
	border-radius: 15px
}

body.faq div#main>div#content>section.content-area>div.title {
	float: left;
	writing-mode: vertical-lr;
	position: relative;
	left: 9px
}

body.faq div#main>div#content>section.content-area>div.title h3.ja {
	font-size: 46px;
	letter-spacing: .05em
}

body.faq div#main>div#content>section.content-area>div.title h3.en {
	font-size: 18px;
	letter-spacing: .05em;
	text-transform: uppercase;
	margin-left: 15px
}

body.faq div#main>div#content>section.content-area div.content {
	float: right;
	width: calc(100% - 260px)
}

@media (max-width:850px) {
	body.faq {
		overflow-x: hidden
	}

	body.faq div#main>div#content div.category div.inner {
		width: 100%
	}

	body.faq div#main>div#content div.category div.inner ul li a {
		font-size: 14px;
		padding: 0 20px;
		background-color: #fff;
		height: 50px;
		line-height: 50px;
		display: block;
		color: #000
	}

	body.faq div#main>div#content div.category div.inner ul li.select a {
		background-color: #f0f0f0
	}

	body.faq div#main>div#content>section.content-area {
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 60px 0
	}

	body.faq div#main>div#content>section.content-area div.entry-content article.sigle,body.faq div#main>div#content>section.content-area div.other_contents article.sigle {
		margin-bottom: 0
	}

	body.faq div#main>div#content>section.content-area div.entry-content article,body.faq div#main>div#content>section.content-area div.other_contents article {
		margin-bottom: 30px
	}

	body.faq div#main>div#content>section.content-area div.entry-content article h2,body.faq div#main>div#content>section.content-area div.other_contents article h2 {
		font-size: 16px;
		font-weight: 700
	}

	body.faq div#main>div#content>section.content-area div.entry-content article h2 a,body.faq div#main>div#content>section.content-area div.other_contents article h2 a {
		color: #000;
		line-height: 140%
	}

	body.faq div#main>div#content>section.content-area div.entry-content article h2 div.info,body.faq div#main>div#content>section.content-area div.other_contents article h2 div.info {
		margin-top: 0;
		font-size: 10px
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.image,body.faq div#main>div#content>section.content-area div.other_contents article div.image {
		margin-top: 30px
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.image img,body.faq div#main>div#content>section.content-area div.other_contents article div.image img {
		width: 100%;
		height: 100%
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.text,body.faq div#main>div#content>section.content-area div.other_contents article div.text {
		margin-top: 5px;
		font-size: 12px;
		line-height: 180%
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.more,body.faq div#main>div#content>section.content-area div.other_contents article div.more {
		margin-top: 10px
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.more a,body.faq div#main>div#content>section.content-area div.other_contents article div.more a {
		font-size: 12px;
		padding: 0 0 0 20px
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.more a div.bt,body.faq div#main>div#content>section.content-area div.other_contents article div.more a div.bt {
		width: 12px;
		height: 12px
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.more a span,body.faq div#main>div#content>section.content-area div.other_contents article div.more a span {
		top: 0
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.more a:hover,body.faq div#main>div#content>section.content-area div.other_contents article div.more a:hover {
		background-color: #2d2d2d;
		color: #fff
	}

	body.faq div#main>div#content>section.content-area div.entry-content article div.more a:hover div.bt,body.faq div#main>div#content>section.content-area div.other_contents article div.more a:hover div.bt {
		border: 1px solid #fff;
		background-image: url("../images/bt_arrow.svg")
	}

	body.faq div#main>div#content>section.content-area div.other_contents {
		padding-top: 60px;
		padding-bottom: 60px
	}

	body.faq div#main>div#content>section.content-area div.other_contents div.title {
		float: none;
		font-size: 26px;
		width: auto;
		writing-mode: horizontal-tb;
		left: 0;
		margin-bottom: 35px
	}

	body.faq div#main>div#content>section.content-area div.other_contents div.contents {
		float: none;
		width: auto
	}

	body.faq div#main>div#content>section.content-area div.content {
		float: right;
		width: calc(100% - 260px)
	}
}

@media (max-width:500px) {
	body.faq {
		overflow-x: hidden
	}

	body.faq div#main>div#content div.category div.inner ul {
		overflow-x: scroll
	}

	body.faq div#main>div#content>section.content-area div.other_contents article:last-child {
		display: none
	}
}

body.privacy {
	overflow-x: hidden
}

body.privacy div#main div#top_title {
	text-align: center;
	color: #000;
	margin-top: 90px
}

body.privacy div#main div#top_title a {
	color: #000
}

body.privacy div#main div#top_title a h2 {
	font-size: 48px
}

body.privacy div#main div#top_title a p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.privacy div#main>div#content {
	margin-top: 95px;
	background-color: #f0f0f0
}

body.privacy div#main>div#content>div.inner {
	width: 800px;
	margin: 0 auto;
	padding: 133px 0;
	font-size: 17px;
	line-height: 170%
}

body.privacy div#main>div#content>div.inner div.header-text {
	margin-bottom: 80px
}

body.privacy div#main>div#content>div.inner a {
	color: #000;
	padding-bottom: 10px;
	border-bottom: 1px solid #000
}

body.privacy div#main>div#content>div.inner p {
	margin-bottom: 30px
}

body.privacy div#main>div#content>div.inner ol {
	margin-top: 30px;
	list-style: decimal;
	padding-left: 25px
}

body.privacy div#main>div#content>div.inner ol li {
	margin-bottom: 10px
}

body.privacy div#main>div#content>div.inner div.bottom {
	text-align: right
}

body.privacy div#main>div#content>div.inner h2 {
	font-weight: 700;
	margin-bottom: 30px;
	font-size: 24px
}

body.privacy div#main>div#content>div.inner div.once {
	margin-bottom: 60px
}

body.privacy div#main>div#content>div.inner div.once h3 {
	font-weight: 700;
	margin: 30px 0;
	font-size: 20px
}

body.privacy div#main>div#content>div.inner div.once p:last-child {
	margin-bottom: 0
}

body.privacy div#main>div#content>div.inner div.once div.inr-once {
	margin-bottom: 30px
}

body.privacy div#main>div#content>div.inner div.once div.inr-once h4 {
	font-weight: 700;
	margin-bottom: 10px
}

body.privacy div#main>div#content>div.inner div.bottom-text {
	text-align: right
}

@media (max-width:850px) {
	body.privacy div#main div#top_title {
		margin-top: 90px
	}

	body.privacy div#main div#top_title a h2 {
		font-size: 48px
	}

	body.privacy div#main div#top_title a p {
		font-size: 17px;
		margin-top: 20px
	}

	body.privacy div#main>div#content {
		margin-top: 95px
	}

	body.privacy div#main>div#content>div.inner {
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 133px 0;
		font-size: 12px;
		line-height: 150%
	}

	body.privacy div#main>div#content>div.inner div.header-text {
		margin-bottom: 40px
	}

	body.privacy div#main>div#content>div.inner p {
		margin-bottom: 15px
	}

	body.privacy div#main>div#content>div.inner ol {
		margin-top: 15px;
		padding-left: 25px
	}

	body.privacy div#main>div#content>div.inner ol li {
		margin-bottom: 5px
	}

	body.privacy div#main>div#content>div.inner h2 {
		margin-bottom: 15px;
		font-size: 14px
	}

	body.privacy div#main>div#content>div.inner div.once {
		margin-bottom: 30px
	}

	body.privacy div#main>div#content>div.inner div.once h3 {
		font-weight: 700;
		margin: 15px 0;
		font-size: 14px
	}

	body.privacy div#main>div#content>div.inner div.once p:last-child {
		margin-bottom: 0
	}

	body.privacy div#main>div#content>div.inner div.once div.inr-once {
		margin-bottom: 15px
	}

	body.privacy div#main>div#content>div.inner div.once div.inr-once h4 {
		font-weight: 700;
		margin-bottom: 5px
	}
}

body.contact {
	overflow-x: hidden
}

body.contact div#main div#top_title {
	text-align: center;
	color: #000;
	margin-top: 90px
}

body.contact div#main div#top_title a {
	color: #000
}

body.contact div#main div#top_title a h2 {
	font-size: 48px
}

body.contact div#main div#top_title a p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.contact div#main>div#content {
	margin-top: 95px;
	background-color: #f0f0f0
}

body.contact div#main>div#content>div.inner {
	width: 800px;
	margin: 0 auto;
	padding: 133px 0
}

body.contact div#main>div#content>div.inner iframe {
	width: 850px;
	height: 1320px;
	margin: 0 auto
}

@media (max-width:850px) {
	body.contact div#main div#top_title {
		margin-top: 90px
	}

	body.contact div#main div#top_title a h2 {
		font-size: 48px
	}

	body.contact div#main div#top_title a p {
		font-size: 17px;
		margin-top: 20px
	}

	body.contact div#main>div#content {
		margin-top: 95px;
		background-color: #f0f0f0
	}

	body.contact div#main>div#content>div.inner {
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 133px 0
	}

	body.contact div#main>div#content>div.inner iframe {
		width: 100%;
		height: 1420px;
		margin: 0 auto
	}
}

body.company {
	overflow-x: hidden
}

body.company div#main>div#content {
	margin-top: 95px;
	background-color: #f0f0f0
}

body.company div#main>div#content>div.inner {
	width: 800px;
	margin: 0 auto;
	padding: 133px 0;
	font-size: 17px
}

body.company div#main>div#content>div.inner table {
	width: 550px;
	margin: 0 auto
}

body.company div#main>div#content>div.inner table tr {
	margin-bottom: 30px;
	display: block
}

body.company div#main>div#content>div.inner table tr th {
	text-align: left;
	font-weight: 700;
	margin-bottom: 30px;
	width: 100px;
	padding-right: 20px;
	line-height: 260%
}

@media (max-width:850px) {
	body.simple {
		overflow-x: hidden
	}

	body.simple div#main>div#content>div.inner table {
		width: 100%;
		font-size: 14px
	}

	body.simple div#main>div#content>div.inner table tr {
		margin-bottom: 20px
	}

	body.simple div#main>div#content>div.inner table tr th {
		display: block;
		text-align: left;
		margin-bottom: 10px;
		width: 100%;
		padding-right: 0;
		line-height: 160%
	}
}

@media (max-width:500px) {
	body.simple {
		overflow-x: hidden
	}

	body.simple div#main>div#content>div.inner table {
		width: 100%;
		font-size: 12px
	}
}

body.review {
	overflow-x: hidden
}

body.review div#main>div#content {
	margin-top: 95px;
	background-color: #f0f0f0
}

body.review div#main>div#content>div.inner {
	width: 800px;
	margin: 0 auto;
	padding: 133px 0;
	font-size: 17px;
	line-height: 180%
}

body.simple {
	overflow-x: hidden
}
/* 票价信息 */
#table_wrap table {
  font-size: 16px;
  text-align: center;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 0;
  border: 2px #c3c3c3;
  display: block;
  width: 100%;
  border-top: 1px solid #c3c3c3;
  border-left: 1px solid #c3c3c3;
  /* border-radius: 5px; */
  overflow: hidden;
}

#table_wrap table tr {
  width: 100%;
}

#table_wrap table {
  border-collapse: collapse;
}

td,th,tr {
  border-bottom: #c3c3c3 1px solid;
  border-right: #c3c3c3 1px solid;
  width: 200px;
  padding: 10px;
}

.table_title td {
  background: #fff3e1;
  color: #d6581a;
  font-weight: bold;
}

table,td,th:nth-child(3) {
  width: 350px;
}

#table_wrap h3 {
  width: 100%;
  margin: 0 auto;
  font-size: 28px;
  color: #000;
  padding: 50px 0 10px;
  line-height: 140%;
}

#table_wrap ol li {
  list-style: decimal;
  width: 100%;
  margin: 0 auto;
  font-size: 16px;
  line-height: 2;
}

#table_wrap ul li {
  line-height: 2;
  color: #888;
  font-size: 14px;
}


body.simple div#main div#top_title {
	text-align: center;
	color: #000;
	margin-top: 60px
}

body.simple div#main div#top_title a {
	color: #000;
	display: block
}

body.simple div#main div#top_title a h2 {
	font-size: 40px
}

body.simple div#main div#top_title a p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.simple div#main>div#content {
	margin-top: 75px;
	background-color: #f0f0f0
}

body.simple div#main>div#content>div.inner {
	width: 800px;
	margin: 0 auto;
	padding: 133px 0
}

@media (max-width:850px) {
	body.simple {
		overflow-x: hidden
	}

	body.simple div#main div#top_title {
		text-align: center;
		color: #000;
		margin-top: 50px
	}

	body.simple div#main div#top_title a img {
		width: 100px
	}

	body.simple div#main div#top_title a h2 {
		font-size: 24px;
		margin: 2px 0 7px
	}

	body.simple div#main div#top_title a p {
		margin-top: 10px;
		font-size: 10px;
		line-height: 10px
	}

	body.simple div#main>div#content {
		margin-top: 45px;
		background-color: #f0f0f0
	}

	body.simple div#main>div#content>div.inner {
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 53px 0
	}
}

body.detail {
	overflow-x: hidden
}

body.detail div#main div#top_title {
	text-align: center;
	color: #000
}

body.detail div#main div#top_title a {
	color: #000
}

body.detail div#main div#top_title h2 {
	font-size: 35px
}

body.detail div#main div#top_title p {
	font-size: 17px;
	margin-top: 20px;
	text-transform: uppercase
}

body.detail div#main>div#content {
	background-color: #f0f0f0;
	overflow: hidden
}

body.detail div#main>div#content div.category {
	background-color: #fff
}

body.detail div#main>div#content div.category div.inner {
	width: 800px;
	margin: 0 auto
}

body.detail div#main>div#content div.category div.inner ul li {
	float: left
}

body.detail div#main>div#content div.category div.inner ul li a {
	font-size: 17px;
	padding: 0 30px;
	background-color: #fff;
	height: 60px;
	line-height: 60px;
	display: block;
	color: #000
}

body.detail div#main>div#content div.category div.inner ul li.select a {
	background-color: #f0f0f0
}

body.detail div#main>div#content>section.content-area {
	width: 600px;
	margin: 0 auto;
	padding: 80px 0
}

body.detail div#main>div#content>section.content-area a {
	color: #000;
	border-bottom: 1px solid #000;
	padding-bottom: 2px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content table {
	border-bottom: 1px solid #ccc
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content table tr {
	border-left: 1px solid #ccc
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content table tr td {
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 8px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article.sigle {
	margin-bottom: 0
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content strong {
	font-weight: 700
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content h1,body.detail div#main>div#content>section.content-area main.lower-main div.entry-content h2,body.detail div#main>div#content>section.content-area main.lower-main div.entry-content h3 {
	font-size: 18px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article {
	margin-bottom: 135px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article h2 {
	font-size: 28px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article h2 a {
	color: #000;
	line-height: 140%
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article h2 div.info {
	margin-top: 5px;
	font-size: 14px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.image {
	margin-top: 30px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.image img {
	width: 100%;
	height: 100%
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.text {
	margin-top: 30px;
	font-size: 17px;
	line-height: 180%
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more {
	margin-top: 30px
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a {
	color: #000;
	padding: 0 0 0 26px;
	display: block;
	position: relative;
	display: inline-block
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a span {
	position: relative;
	top: 1px;
	letter-spacing: 0
}

body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a div.bt {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	text-align: center;
	transform: translateY(-50%);
	left: 0;
	background-image: url("../images/bt_arrow_black.svg");
	border: 1px solid #000;
	border-radius: 15px
}

body.detail div#main>div#content>section.content-area>div.title {
	float: left;
	writing-mode: vertical-lr;
	position: relative;
	left: 9px
}

body.detail div#main>div#content>section.content-area>div.title h3.ja {
	font-size: 46px;
	letter-spacing: .05em
}

body.detail div#main>div#content>section.content-area>div.title h3.en {
	font-size: 18px;
	letter-spacing: .05em;
	text-transform: uppercase;
	margin-left: 15px
}

body.detail div#main>div#content>section.content-area div.content {
	float: right;
	width: calc(100% - 260px)
}

@media (max-width:850px) {
	body.detail {
		overflow-x: hidden
	}

	body.detail div#main div#top_title h2 {
		font-size: 24px
	}

	body.detail div#main>div#content {
		margin-top: 65px
	}

	body.detail div#main>div#content div.category div.inner {
		width: 100%
	}

	body.detail div#main>div#content div.category div.inner ul li {
		float: left
	}

	body.detail div#main>div#content div.category div.inner ul li a {
		font-size: 14px;
		padding: 0 20px;
		background-color: #fff;
		height: 50px;
		line-height: 50px;
		display: block;
		color: #000
	}

	body.detail div#main>div#content div.category div.inner ul li.select a {
		background-color: #f0f0f0
	}

	body.detail div#main>div#content>section.content-area {
		width: calc(100% - 40px);
		margin: 0 auto;
		padding: 60px 0
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article.sigle {
		margin-bottom: 0
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article {
		margin-bottom: 60px
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article h2 {
		font-size: 16px;
		font-weight: 700
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article h2 a {
		color: #000;
		line-height: 140%
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article h2 div.info {
		margin-top: 0;
		font-size: 10px
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.image {
		margin-top: 30px
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.image img {
		width: 100%;
		height: 100%
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.text {
		margin-top: 15px;
		font-size: 12px;
		line-height: 180%
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more {
		margin-top: 10px
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a {
		font-size: 12px;
		padding: 0 0 0 20px
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a div.bt {
		width: 12px;
		height: 12px
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a span {
		top: 0
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a:hover {
		background-color: #2d2d2d;
		color: #fff
	}

	body.detail div#main>div#content>section.content-area main.lower-main div.entry-content article div.more a:hover div.bt {
		border: 1px solid #fff;
		background-image: url("../images/bt_arrow.svg")
	}

	body.detail div#main>div#content>section.content-area div.content {
		float: right;
		width: calc(100% - 260px)
	}
}