@charset "UTF-8";

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

*,
*:before,
*:after {
	box-sizing: border-box;
}

/* IconFont
-------------------------------------------------- */
@font-face {
	font-family: 'shiki_icon';
	src:  url('/shared/fonts/shiki_menu.eot?ufqzl3');
	src:  url('/shared/fonts/shiki_menu.eot?ufqzl3#iefix') format('embedded-opentype'),
	url('/shared/fonts/shiki_menu.ttf?ufqzl3') format('truetype'),
	url('/shared/fonts/shiki_menu.woff?ufqzl3') format('woff'),
	url('/shared/fonts/shiki_menu.svg?ufqzl3#shiki_menu') format('svg');
	font-weight: normal;
	font-style: normal;
}
[class^="menuIcon-"], [class*=" menuIcon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'shiki_icon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* html
-------------------------------------------------- */
html {
	font-size: 10px;
}

/* body
-------------------------------------------------- */
body {
	line-height: 2;
	color: #333;
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	background: #ffffff;
	-webkit-text-size-adjust: none;
}

@media screen and (max-width: 959px) {
	body {
		min-width: 100%;
		padding: 0;
	}
}

img {
	vertical-align: bottom;
	line-height: 1;
	font-size: 1px;
}

/* link
-------------------------------------------------- */
a {
	text-decoration: none;
}
a:link {
	color: #000;
}
a:visited {
	color: #000;
}
a:hover {
	color: #c3303c;
	text-decoration: underline;
}
a:active {
	color: #c3303c;
}
a:focus {
	color: #c3303c;
}
a.colorRed:link,
a.colorRed:visited {
	color: #c3303c;
}
.linkUnderline {
	text-decoration: underline;
}

.linkText {
	font-weight: bold;
	text-decoration: underline;
}
@media screen and (max-width: 959px) {
	a:hover {
		color: #000;
	}
	a:active {
		color: #000;
	}
	a:focus {
		color: #000;
	}
	a.colorRed:link,
	a.colorRed:visited {
		color: #000;
	}
}

/* font
-------------------------------------------------- */
@font-face {
	font-family: 'Hannari';
	font-style: normal;
	font-weight: 400;
	src: url("/toppage/font/Hannari.woff") format("woff"), url("/toppage/font/Hannari.otf") format('opentype');
}
/* IE */
@font-face {
	font-family: 'Hannari';
	src: url('/toppage/font/Hannari.eot');
}
/* IE6-IE8 */
@font-face {
	font-family: 'Hannari';
	src: url('/toppage/font/Hannari.eot?#iefix') format('embedded-opentype');
}
/* Safari, Android, iOS */
@font-face {
	font-family: 'Hannari';
	src: url('/toppage/font/Hannari.ttf') format('truetype');
}

/* brSp brPc
-------------------------------------------------- */
@media screen and (min-width: 960px) {
	.brSp {
		display: none;
	}

	.brPc {
		display: block;
	}
}

@media screen and (max-width: 959px) {
	.brSp {
		display: block;
	}

	.brPc {
		display: none;
	}
}

/* wrapperArea
-------------------------------------------------- */
.wrapperArea {
	margin: 0 auto;
	width: 100%;
	background: #fff;
	position: relative;
	z-index: 3000;
}

/* anchors
-------------------------------------------------- */
#anchors {
	padding: 0;
	margin: 0;
	position: absolute;
	left: -100em;
	top: -100em;
}

/* header
-------------------------------------------------- */
[id="header"] {
	width: 100%;
	background-color: #fff;
	position: fixed;
	z-index: 9999;
}

[id="header"] .body {
	position: relative;
	padding: 0 95px 0 0;
	background-color: #fff;
}

.jsHeaderBody {
	margin: 20px auto;
}

.headerBodyMin {
	margin: 20px auto;
	-webkit-animation: anime .6s ease 0s 1 alternate;
	animation: anime .6s ease 0s 1 alternate;
}

@-webkit-keyframes anime {
	0% { margin: 20px auto; }
	100% { margin: 11px auto; }
}

@keyframes anime {
	0% { margin: 20px auto; }
	100% { margin: 11px auto; }
}

[id="header"] .body:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	height: 0;
	font-size: 0;
}

.logo {
	margin-left: -87.5px;
	position: absolute;
	left: 50%;
	top: 5px;
	overflow: hidden;
}

.logo a {
	display: block;
}

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

[id="header"] .icon {
	padding: 38px 0 0;
	display: block;
	position: relative;
	text-align: center;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
	cursor: pointer;
	line-height: 18px;
}

[id="header"] .icon:hover {
	text-decoration: none;
}
[id="header"] .icon:after {
	content: "";
	width: 32px;
	height: 30px;
	margin-left: -16px;
	background: url(/toppage/images/pc_header_icon.png) no-repeat;
	overflow: hidden;
	position: absolute;
	left: 50%;
	top: 0;
}
[id="header"] .icon_tickets:after {
	background-position: 0 0;
}
[id="header"] .icon_schedule:after {
	background-position: 0 -60px;
}
[id="header"] .icon_door:after {
	background-position: 0 -120px;
}
[id="header"] .icon_area:after {
	background-position: 0 -180px;
}
[id="header"] .icon_login:after {
	background-position: 0 -239px;
}
[id="header"] .icon_search:after {
	background-position: 0 -300px;
}
[id="header"] .icon_search.show:after {
	background-image: url(/toppage/images/pc_icon_close.png);
	background-position: 0 0;
}
[id="header"] .icon_loggingIn:after {
	background-position: 0 -839px;
}
[id="header"] .icon_lang:after {
	background-position: 0 -1323px;
}
[id="header"] .icon:hover.icon_tickets:after {
	background-position: 0 -420px;
}
[id="header"] .icon:hover.icon_schedule:after {
	background-position: 0 -480px;
}
[id="header"] .icon:hover.icon_door:after {
	background-position: 0 -540px;
}
[id="header"] .icon:hover.icon_area:after {
	background-position: 0 -600px;
}
[id="header"] .icon:hover.icon_login:after {
	background-position: 0 -659px;
}
[id="header"] .icon:hover.icon_search:after {
	background-position: 0 -720px;
}
[id="header"] .icon:hover.icon_search.show:after {
	background-image: url(/toppage/images/pc_icon_close.png);
	background-position: bottom left;
}
[id="header"] .icon:hover.icon_loggingIn:after {
	background-position: 0 -899px;
}
@media screen and (min-width: 960px) {
	#header .icon:hover.icon_lang:after {
		background-position: 0 -1383px;
	}
}
[id="header"] .nav {
	list-style: none;
	margin: 0;
	display: block;
}
[id="header"] .nav:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	height: 0;
	font-size: 0;
}
[id="header"] .nav.navType1 {
	padding: 0;
	margin: 0;
	position: relative;
	z-index: 10;
}
[id="header"] .nav.navType1 li {
	width: auto;
	display: block;
	float: left;
}
[id="header"] .nav.navType1.floatRight li {
	width: 84px;
	margin: 0 0 0 7px;
}
[id="header"] .nav.navType1.floatLeft li {
	width: 84px;
	margin: 0 7px 0 0;
}
[id="header"] .nav.navType1.floatLeft li:first-child {
	margin: 0 7px 0 13px;
}
[id="header"] .nav.navType1 li a {
	background: none;
}
#areaSelect {
	margin: 0;
	padding: 0;
	vertical-align:middle;
	background: transparent;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: none;
	text-align: center;
	text-align: -webkit-center;
	text-align: -moz-center;
	font-family: "KozGoPro-Light", "小塚ゴシック Pro L", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
#areaSelect::-ms-expand {
	display: none;
}
#areaSelect:focus {
	outline: none;
}
.gsearchbox {
	cursor: pointer;
	position: relative;
}
.gsearchbox:hover {
	color: #c3303c;
}
[id="header"] .gsearchinput {
	width: 214px;
	height: 38px;
	font-size: 14px;
	font-size: 1.4rem;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	border: solid 1px #000;
	border-left: 1px solid #000;
	background: #fff url( /toppage/images/pc_header_icon_seach_bg.png ) right center repeat-y;
	max-width: 959px;
	width: 100%;
	margin: 0 auto 45px;
}
[ id="header" ] .gsearchinput::after {
	content: "";
	width: 9px;
	height: 6px;
	margin-left: -4px;
	position: absolute;
	top: -6px;
	left: 50%;
	background: url( /toppage/images/pc_header_icon_seach_after.png ) center center no-repeat;
}
#header .gsearchinputInner {
	position: relative;
}
#header .MF_submit_button {
	position: absolute;
	right: 0;
	top: 0;
	min-width: 38px;
	width: 38px;
	height: 36px;
	margin: 0;
	padding: 0;
	-webkit-border-radius: 0 3px 3px 0;
	-moz-border-radius: 0 3px 3px 0;
	border-radius: 0 3px 3px 0;
	text-indent: -9999px;
	border: 0;
}
#MF_form_phrase {
	margin: 0;
	padding: 0;
	width: 175px;
	height: 36px !important;
	line-height: 36px;
	border: none;
	box-shadow: none;
	background: none;
	background-color: transparent !important;
	-webkit-border-radius: 3px 0 0 3px;
	-moz-border-radius: 3px 0 0 3px;
	border-radius: 3px 0 0 3px;
	vertical-align: middle;
}
#header .MF_submit_button,
#header .MF_submit_button:hover,
#header .MF_submit_button:focus {
	background-color: transparent;
	background-image: none;
	border-color: transparent;
	filter: none;
}
#header dl.menu {
	position: absolute;
	top: 0;
	-webkit-rtl-ordering: none;
	right: 11px;
	width: 84px;
}
#header dl.menu > dt {
	padding: 38px 0 0;
	display: block;
	position: relative;
}
#header dl.menu > dt:after {
	content: "";
	width: 32px;
	height: 30px;
	margin-left: -16px;
	background: url(/toppage/images/pc_header_icon.png) no-repeat;
	background-position: 0 -360px;
	overflow: hidden;
	position: absolute;
	left: 50%;
	top: 0;
}
#header dl.menu > dt:hover {
	color: #c3303c;
}
#header dl.menu > dt:hover:after {
	background-position: 0 -780px;
}
#header dl.menu > dt + dd.menuBox {
	width: 100%;
	padding: 10px;
	position: fixed;
	top: 0;
	left: 0;
	background-color: #ccc;
	z-index: 1111;
}
.gsst_a .gscb_a {
	display: none;
}
@media screen and (min-width: 960px) {
	#header #MF_form_phrase {
		width: 100%;
		padding-left: 11px !important;
		padding-right: 35px;
		border-radius: 0;
		vertical-align: top;
	}
}
@media screen and (max-width: 959px) {
	.gsearchbox {
		height: 27px;
		display: block;
		cursor: pointer;
		position: relative;
		background: #fff;
	}
	.gsearchbox:hover {
		color: #000000;
	}
	#header .icon_search.show:before {
		width: 100%;
		height: 1px;
		background-color: #ffffff;
		display: block;
		position: absolute;
		bottom: -65px;
		left: 0;
	}
	[ id="header" ] .gsearchinput {
		font-size: 10px;
		font-size: 1.0rem;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		border: 0;
		background: #fff;
		margin-bottom: 20px;
	}
	.gsearchinputInner {
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		border: solid 1px #000;
		background: url( /toppage/images/pc_header_icon_seach_bg.png ) right center repeat-y;
	}
	#header .MF_submit_button {
		margin: 0;
		padding: 0;
		height: 36px;
		line-height: 36px;
		color: #fff;
		border: none;
		box-shadow: none;
		vertical-align: top;
		background: none;
		top: 0;
		right: 0;
	}
	#header .gsearchinput::after {
		display: none;
	}
	#MF_form_phrase {
		min-width: 38px;
		width: 100%;
		height: auto;
		line-height: 36px;
		margin: 0;
		padding: 0 0 0 11px;
		-webkit-border-radius: 3px 0 0 3px;
		-moz-border-radius: 3px 0 0 3px;
		border-radius: 3px 0 0 3px;
		border: none;
		vertical-align: middle;
	}
	#header .MF_submit_button,
	#header .MF_submit_button:hover,
	#header .MF_submit_button:focus {
		background-color: transparent;
		background-image: none;
		border-color: transparent;
		filter: none;
	}
	#header dl.menu {
		position: absolute;
		right: 29px;
		top: 0;
		-webkit-rtl-ordering: none;
	}
	#header dl.menu > dt {
		padding: 38px 0 0;
		display: block;
		position: relative;
	}
	#header dl.menu > dt:after {
		content: "";
		width: 32px;
		height: 30px;
		margin-left: -16px;
		background: url(/toppage/images/pc_header_icon.png) no-repeat;
		background-position: 0 -360px;
		overflow: hidden;
		position: absolute;
		left: 50%;
		top: 0;
	}
	#header dl.menu > dt:hover {
		color: #000000;
	}
	#header dl.menu > dt:hover:after {
		background-position: 0 -780px;
	}
	#header dl.menu > dt + dd {
		padding: 5px;
	}
	#header dl.menu > dt + dd.menuBox {
		width: 100%;
		padding: 10px;
		position: fixed;
		top: 0;
		left: 0;
		background-color: #ccc;
		z-index: 1111;
	}
}
/* langList*/
.langList {
	position: fixed;
	left: 0;
	width: 100%;
	background: #fff;
	display: none;
	top: 55px;
	padding-top: 0px;
}
.langList__items {
	border-left: 0;
	border-top: 1px solid #ddd;
	float: none;
}
.langList__items:last-child {
	border-bottom: 1px solid #ddd;
}
.langList__items__link {
	padding: 5px;
	display: block;
}
.langList__items.active {
	background: url( /shared/global/images/icon_check.png ) left 10px center no-repeat;
}
@media screen and (min-width: 960px) {
	.langList {
		position: absolute;
		width: 170px;
		right: 47px;
		left: auto;
		top: 76px;
		transition: top 0.4s;
	}
	.langList.smallHeader {
		top: 57px;
		padding-top: 0;
	}
	.langList__items {
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
	}
	#header ul.nav.navType1 li .langList__items {
		width: 100%;
		margin: 0;
		float: none;
	}
}
@media screen and (max-width: 959px) {
	.langList {
		top: 88px;
		transition: top 0.4s;
	}
	.langList.smallHeader {
		top: 48px;
	}
	[id="header"] .langList__items__link {
		text-align: center;
		font-size: 12px;
	}
}
#header .mCSB_inside > .mCSB_container {
	margin-right: 0;
}
#header ul.btn {
	padding: 30px 0;
	margin: 0;
	text-align: center;
}
#header ul.btn li {
	width: 200px;
	padding: 0;
	margin: 0 15px;
	display: inline-block;
	font-weight: bold;
}
#header ul.btn li a {
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
}
#header ul.btn li.btnType1 a {
	padding: 11px 0 10px;
	color: #ffffff;
	background-color: #aaa;
	pointer-events: none;
	cursor: default;
}
#header ul.btn li.btnType2 a {
	padding: 10px 0 9px;
	color: #000000;
	background-color: #ffffff;
	border: solid 1px #ccc;
}
#header ul.btn li.btnType2 a:hover {
	color: #c3303c;
	border: solid 1px #c3303c;
}
@media screen and (max-width: 959px) {
	#header ul.btn {
		width: 100%;
		padding: 8px 5px;
		margin: 0;
		background: #f0f0f0;
	}
	#header ul.btn li {
		width: 33%;
		padding: 0 2.5px;
		margin: 0;
	}
	#header ul.btn li a {
		font-size: 9px;
		font-size: 0.9rem;
	}
	#header ul.btn li.btnType2 a:hover {
		color: #000000;
		border: solid 1px #ccc;
	}
}
#header dl.menu > dt + dd .body {
	padding: 5px 0 5px;
	margin: 0;
	position: relative;
	width: 0;
	height: 0;
	top: 50%;
	left: 50%;
	opacity: 0;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	background-color: #ffffff;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}
#header dl.menu > dt + dd .body .mCSB_container {
	padding: 55px 20px 55px;
}
@media screen and (max-width: 1108px) and (min-width: 960px) {
	#header dl.menu > dt + dd .body .mCSB_container {
		padding-top: 68px;
	}
}
.menuBoxFrame {
	width: 100%;
	height: 100%;
	top: 0;
	position: absolute;
	background-color: #ffffff;
	pointer-events: none;
	cursor: default;
}
.closeBtn {
	min-width: 30px;
	padding: 0;
	font-size: 12px;
	font-size: 1.2rem;
	cursor: pointer;
	display: inline-block;
	position: fixed;
	text-align: center;
	top: 20px;
	right: 20px;
	opacity: 0;
	line-height: 1.5;
}
.closeBtn:before {
	content: "";
	width: 30px;
	height: 30px;
	margin: 0 auto 4px;
	display: block;
	overflow: hidden;
	background-image: url(/toppage/images/pc_icon_close.png);
}
.closeBtn:hover {
	color: #c3303c;
}
.closeBtn:hover:before {
	background-position: left bottom;
}
@media screen and (max-width: 959px) {
	#header dl.menu > dt + dd .body {
		padding: 55px 20px 0;
		display: block;
	}
	.closeBtn {
		top: 17px;
		right: 17px;
		z-index: 2;
		font-size: 9px;
		font-size: 0.9rem;
	}
	.closeBtn:before {
		width: 24px;
		height: 24px;
		margin-bottom: 3px;
		background-image: url(/toppage/images/sp_icon_close.png);
		background-size: 24px auto;
		top: 11px;
		right: 11px;
	}
	.closeBtn:hover {
		color: #000000;
	}
	.closeBtn:hover:before {
		background-position: 0 0;
	}
}
#header .menuTitle {
	max-width: 959px;
	width: 100%;
	margin: 0 auto 18px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}
#header dl.menu > dt + dd .body .mCSB_container > ul,
#header dl.menu > dt + dd .body .mCSB_container > .menuListBox {
	max-width: 959px;
	width: 100%;
	margin: 0 auto;
}
#header dl.menu > dt + dd .body .mCSB_container > .menuListBox .smallType_1 {
	font-size: 80%;
}
#header dl.menu > dt + dd .body > ul,
#header dl.menu > dt + dd .body .mCSB_container > ul {
	margin: 0 auto 55px;
	display: flex;
	justify-content: space-between;
}
#header dl.menu > dt + dd .body > ul > li,
#header dl.menu > dt + dd .body .mCSB_container > ul > li {
	width: 168px;
	text-align: center;
}
#header dl.menu > dt + dd .body > ul > li a,
#header dl.menu > dt + dd .body .mCSB_container > ul > li a {
	width: 168px;
	height: 168px;
	padding: 50px 0 0;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.375;
	font-weight: bold;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	background-color: rgba(255,255,255,0);
	border: solid 1px #ccc;
	display: block;
}
#header dl.menu > dt + dd .body > ul > li a:hover,
#header dl.menu > dt + dd .body .mCSB_container > ul > li a:hover {
	text-decoration: none;
}
#header dl.menu > dt + dd .body > ul > li a::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li a::before {
	content: "";
	width: 32px;
	height: 30px;
	display: block;
	overflow: hidden;
	margin: 0 auto 15px;
	background-image: url(/toppage/images/pc_header_icon.png);
}
#header dl.menu > dt + dd .body > ul > li:nth-child(1) a::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(1) a::before {
	background-position: 0 0;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(1) a:hover::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(1) a:hover::before {
	background-position: 0 -420px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(2) a::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(2) a::before {
	background-position: 0 -120px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(2) a:hover::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(2) a:hover::before {
	background-position: 0 -540px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(3) a::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(3) a::before {
	background-position: 0 -60px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(3) a:hover::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(3) a:hover::before {
	background-position: 0 -480px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(4) a::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(4) a::before {
	height: 31px;
	margin: 0 auto 14px;
	background-position: 0 -961px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(4) a:hover::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(4) a:hover::before {
	background-position: 0 -1021px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(5) a::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(5) a::before {
	background-position: 0 -1081px;
}
#header dl.menu > dt + dd .body > ul > li:nth-child(5) a:hover::before,
#header dl.menu > dt + dd .body .mCSB_container > ul > li:nth-child(5) a:hover::before {
	background-position: 0 -1141px;
}
#header dl.menu > dt + dd .body > .menuListBox dl,
#header dl.menu > dt + dd .body .mCSB_container > .menuListBox dl {
	width: 32%;
	margin: 0 2% 0 0;
	float: left;
}
#header dl.menu > dt + dd .body > .menuListBox dl:last-child,
#header dl.menu > dt + dd .body .mCSB_container > .menuListBox dl:last-child {
	margin: 0;
}
#header dl.menu > dt + dd .body dl dt {
	margin: 0 0 20px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}
#header dl.menu > dt + dd .body dl dd ul {
	margin: 0 0 44px;
	font-size: 14px;
	font-size: 1.4rem;
	padding-left: 17px; /*メニュー文字数が2段の場合に追加*/
}
#header dl.menu > dt + dd .body dl dd ul li {
	margin: 0 0 8px;
	text-indent: -17px; /*メニュー文字数が2段の場合に追加*/
}
#header dl.menu > dt + dd .body dl dd ul li .strong {
	font-weight: bold;
}
#header dl.menu > dt + dd .body dl dd ul ul {
	margin: 8px 0 0 5px; /*メニュー文字数が2段の場合に追加*/
}
#header dl.menu > dt + dd .body dl dd ul li a {
	padding: 0 0 0 17px;
	position: relative;
}
#header dl.menu > dt + dd .body dl dd ul li a:before {
	content: "";
	width: 7px;
	height: 12px;
	margin: -6px 0 0;
	overflow: hidden;
	background: url(/toppage/images/arrow_middle_right_btn2.png) left top no-repeat;
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
}
#header dl.menu > dt + dd .body dl dd ul li a:hover:before {
	background-position: left bottom;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li {
	margin: 0 0 17px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li a {
	padding: 0 0 0 45px;
	line-height: 30px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li a:before {
	width: 32px;
	height: 30px;
	margin: -15px 0 0;
	background: url(/toppage/images/sns_icon_2.png) no-repeat;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.twitter a:before {
	background-position: 0 0;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.line a:before {
	background-position: 0 -46px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.instagram a:before {
	background-position: 0 -94px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.youtube a:before {
	background-position: 0 -141px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.twitter a:hover:before {
	background-position: 0 -188px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.line a:hover:before {
	background-position: 0 -234px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.instagram a:hover:before {
	background-position: 0 -282px;
}
#header dl.menu > dt + dd .body dl dd ul.snsLink li.youtube a:hover:before {
	background-position: 0 -329px;
}
@media screen and (max-width: 959px) {
	#header .menuTitle {
		width: 100%;
		margin-bottom: 8px;
		font-size: 14px;
		font-size: 1.4rem;
	}
	#header dl.menu > dt + dd .body > ul,
	#header dl.menu > dt + dd .body > .menuListBox {
		width: 100%;
	}
	#header dl.menu > dt + dd .body > ul {
		margin: 0 0 25px;
		padding: 0;
		flex-flow: row wrap;
	}
	#header dl.menu > dt + dd .body > ul > li {
		width: 100%;
		margin: 0 0 5px;
		text-align: left;
	}
	#header dl.menu > dt + dd .body > ul > li a {
		width: 100%;
		height: auto;
		padding: 15px 0 10px 15px;
		font-size: 14px;
		font-size: 1.4rem;
		display: table;
		table-layout: fixed;
		background-image: url(/toppage/images/arrow_middle_right_2.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 15px auto;
	}
	#header dl.menu > dt + dd .body > ul > li a::before {
		width: 36px;
		height: 24px;
		background-image: url(/toppage/images/sp_header_icon.png);
		background-size: 24px auto;
		display: table-cell;
		vertical-align: middle;
		background-repeat: no-repeat;
	}
	#header dl.menu > dt + dd .body > ul > li a.menu_tickets::before,
	#header dl.menu > dt + dd .body > ul > li a.menu_tickets:hover::before {
		background-position: 0 0;
	}
	#header dl.menu > dt + dd .body > ul > li a.menu_door::before,
	#header dl.menu > dt + dd .body > ul > li a.menu_door:hover::before {
		background-position: 0 -66px;
	}
	#header dl.menu > dt + dd .body > ul > li a.menu_stage_schedule::before,
	#header dl.menu > dt + dd .body > ul > li a.menu_stage_schedule:hover::before {
		background-position: 0 -34px;
	}
	#header dl.menu > dt + dd .body > ul > li a.menu_seating::before,
	#header dl.menu > dt + dd .body > ul > li a.menu_seating:hover::before {
		height: 24px;
		margin: 0;
		background-position: 0 -232px;
	}
	#header dl.menu > dt + dd .body > ul > li a.menu_news::before,
	#header dl.menu > dt + dd .body > ul > li a.menu_news:hover::before {
		background-position: 0 -265px;
	}
	#header dl.menu > dt + dd .body > .menuListBox {
		padding: 0 0 10px;
		border-top: 1px solid #cccccc;
	}
	#header dl.menu > dt + dd .body > .menuListBox dl {
		width: 100%;
		margin: 0;
		float: none;
	}
	#header dl.menu > dt + dd .body dl {
		padding: 0 0 10px;
		border-bottom: 1px solid #cccccc;
	}
	#header dl.menu > dt + dd .body dl:last-child {
		padding: 0;
		border-bottom: 0;
	}
	#header dl.menu > dt + dd .body dl dt {
		margin: 11px 0 0;
		padding: 0 12px;
		font-size: 12px;
		font-size: 1.2rem;
		cursor: pointer;
		position: relative;
	}
	#header dl.menu > dt + dd .body dl dt:after {
		content: "";
		width: 23px;
		height: 14px;
		margin-top: -7px;
		overflow: hidden;
		display: block;
		position: absolute;
		right: 0;
		top: 50%;
		background: url(/toppage/images/sp_header_dt_icon.png) no-repeat;
		background-size: 23px auto;
		background-position: left top;
	}
	#header dl.menu > dt + dd .body dl dt.open:after {
		background-position: left bottom;
	}
	#header dl.menu > dt + dd .body dl dd {
		margin: 11px 0 0;
		display: none;
	}
	#header dl.menu > dt + dd .body dl dd.snsBox {
		display: block;
	}
	#header dl.menu > dt + dd .body dl dd ul {
		margin: 0;
		padding-left: 0;
		font-size: 10px;
		font-size: 1.0rem;
	}
	#header dl.menu > dt + dd .body dl dd ul li {
		margin: 0 0 1px;
		display: block;
		text-indent: 0;
	}
	#header dl.menu > dt + dd .body dl dd ul li .strong {
		padding: 11px 12px 10px;
		display: block;
		background: #eeeeee;
	}
	#header dl.menu > dt + dd .body dl dd ul ul {
		margin: 0 0 1px;
		background: #eeeeee;
	}
	#header dl.menu > dt + dd .body dl dd ul li a {
		padding: 11px 12px 10px 12px;
		background: #eeeeee;
		background-image: url(/toppage/images/arrow_middle_right_2.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 15px auto;
		display: block;
	}
	#header dl.menu > dt + dd .body dl dd ul li a:hover {
		text-decoration: none;
	}
	#header dl.menu > dt + dd .body dl dd ul li ul li {
		margin: 0;
	}
	#header dl.menu > dt + dd .body dl dd ul li ul li a {
		padding: 11px 12px 10px 48px;
	}
	#header dl.menu > dt + dd .body dl dd ul li a:before {
		display: none;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink {
		display: flex;
		justify-content: space-between;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li {
		min-width: 32px;
		width: 25%;
		margin: 30px 0 10px;
		text-align: center;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li a {
		padding: 32px 0 0;
		display: inline-block;
		position: relative;
		background: none;
		text-align: center;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li a:before {
		content: "";
		width: 32px;
		height: 32px;
		margin: 0 0 0 -16px;
		background: url(/toppage/images/sns_icon.png) no-repeat;
		background-size: 32px auto;
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.twitter a:before,
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.twitter a:hover:before {
		background-position: 0 -201px;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.line a:before,
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.line a:hover:before {
		background-position: 0 -134px;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.instagram a:before,
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.instagram a:hover:before {
		background-position: 0 0;
	}
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.youtube a:before,
	#header dl.menu > dt + dd .body dl dd ul.snsLink li.youtube a:hover:before {
		background-position: 0 -67px;
	}
}
[id="header"] .selectArea {
	position:relative;
}
[id="header"] .selectArea .selectObj {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	z-index: 100;
	font-size: 16px;
	cursor: pointer;
}
[id="header"] .selectArea:hover .selectTxt {
	color: #c3303c;
}

@media screen and (max-width: 959px) {
	[id="header"] .body {
		margin: 0;
		padding: 0;
		position: relative;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		flex-wrap: wrap;
		border-bottom: 1px solid #cccccc;
	}
	.jsHeaderSp {
		width: 100%;
		justify-content: space-between;
		position: relative;
		z-index: 999;
	}
	.logo {
		padding: 6px 0 7px 10px;
		margin: 0;
		position: static;
		top: auto;
		left: auto;
		float: left;
	}
	.logo img {
		width: auto;
		height: 27px;
	}
	[id="header"] ul.floatRight {
		padding: 5px 0;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: flex-end;
		-ms-flex-pack: justify;
		justify-content: flex-end;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		float: none;
	}
	[id="header"] ul.nav.navType1.floatRight li {
		width: auto;
		padding: 0 9px;
		border-left: 1px dotted #cccccc;
	}
	[id="header"]  .icon {
		padding: 25px 0 0;
		font-size: 8px;
		font-size: 0.8rem;
		background: none;
	}
	[id="header"]  .icon:after {
		width: 24px;
		height: 24px;
		margin-left: -12px;
		background-image: url(/toppage/images/sp_header_icon.png);
		background-size: 24px auto;
	}
	[id="header"] .icon_tickets:after {
		background-position: 0 0;
	}
	[id="header"] .icon_schedule:after {
		background-position: 0 -33px;
	}
	[id="header"] .icon_door:after {
		background-position: 0 -66px;
	}
	[id="header"] .icon.icon_area {
		width: auto;
		height: 27px;
		padding: 2px 2px 0px 29px;
		line-height: 25px;
	}
	[id="header"] .icon_area:after {
		margin-left: 0;
		margin-top: -12px;
		background-position: 0 -99px;
		top: 50%;
		left: 0;
	}
	[id="header"] .icon_login:after {
		background-position: 0 -132px;
	}
	[id="header"] .icon.icon_search {
		width: 60px;
		height: 27px;
		padding: 2px 2px 0px 29px;
		line-height: 25px;
	}
	[id="header"] .icon_search:after,
	[id="header"] .icon:hover.icon_search:after {
		margin-left: 0;
		margin-top: -12px;
		line-height: 24px;
		background-position: 0 -165px;
		top: 50%;
		left: 0;
	}
	[id="header"] .icon_search.show:after,
	[id="header"] .icon:hover.icon_search.show:after {
		margin-top: -6px;
		height: 24px;
		background-image: url(/toppage/images/sp_icon_close.png);
		background-position: 0 0;
		background-size: 23px auto;
	}
	[id="header"]  .icon.icon_lang {
		width: auto;
		height: 27px;
		padding: 2px 2px 0px 29px;
		line-height: 25px;
	}
	[id="header"]  .icon.icon_lang:after {
		background-position: 0 -358px;
		margin-left: -40px;
	}
	[id="header"] .icon_loggingIn:after {
		background-position: 0 -296px;
	}
	[id="header"] .icon:hover.icon_tickets:after {
		background-position: 0 0;
	}
	[id="header"] .icon:hover.icon_schedule:after {
		background-position: 0 -33px;
	}
	[id="header"] .icon:hover.icon_door:after {
		background-position: 0 -66px;
	}
	[id="header"] .icon:hover.icon_area:after {
		background-position: 0 -99px;
	}
	[id="header"] .icon:hover.icon_login:after {
		background-position: 0 -132px;
	}
	[id="header"] .icon:hover.icon_loggingIn:after {
		background-position: 0 -296px;
	}
	#header dl.menu {
		width: 20%;
		padding: 5px;
		position: static;
		top: auto;
		left: auto;
		float: right;
		border-top: 1px solid #cccccc;
	}
	#header dl.menu > dt {
		padding: 25px 0 0;
		border-left: 1px dotted #cccccc;
	}
	#header dl.menu > dt:after {
		width: 24px;
		height: 23px;
		margin-left: -12px;
		background-image: url(/toppage/images/sp_header_icon.png);
		background-size: 24px auto;
		background-position: 0 -198px;
	}
	#header dl.menu > dt:hover:after {
		background-position: 0 -198px;
	}
	[id="header"] ul.nav.floatRight {
		width: auto;
		text-align: right;
		margin: 6px 0 7px;
	}
	[id="header"] .floatLeft {
		width: 80%;
		padding: 5px;
		border-top: 1px solid #cccccc;
	}
	[id="header"] ul.nav.navType1.floatLeft li {
		width: 25%;
		padding: 5px 0 0;
	}
	[id="header"] ul.nav.navType1.floatRight li,
	[id="header"] ul.nav.navType1.floatLeft li,
	[id="header"] ul.nav.navType1.floatLeft li:first-child {
		margin: 0;
	}
	#header dl.menu > dt + dd {
		padding: 5px;
	}
	#header dl.menu > dt + dd .body > ul,
	#header dl.menu > dt + dd .body > dl {
		width: 100%;
	}
	#header dl.menu > dt + dd .body > dl dl {
		width: 100%;
		float: none;
	}
	[id="header"].selectArea {
		width: 100%;
		display: table;
		table-layout: fixed;
	}
	[id="header"] .selectTxt {
		display: table-cell;
		vertical-align: middle;
	}
	[id="header"] .selectArea:hover .selectTxt {
		color: #000000;
	}
	p.importantNotices {
		padding: 8px 10px;
		font-size: 10px;
		font-size: 1rem;
	}
}
@media screen and (min-width: 375px) {
	.selectTxt__br {
		display: none;
	}
}
@media screen and (max-width: 374px) {
	#header .selectTxt {
		line-height: 1.2;
	}
	.selectTxt__colon {
		display: none;
	}
}
/* navType1
-------------------------------------------------- */

.navType1 {
	padding: 24px 0 0;
	-js-display : flex;
	display: flex;
	justify-content: space-between;
}

.sectionType .navType1 {
	max-width: 1220px;
	width: 100%;
}

.navType1 li {
	width: 275px;
	display: block;
	box-sizing: border-box;
}

.navType1 a {
	text-align: center;
}

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


.navType1 .img {
	margin: 0 0 16px;
	display: block;
}

.navType1 .img img {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	background: #ffffff;
}

.navType1 a:hover .img img {
	opacity: 0.8;
}

.navType1 .tit {
	font-size: 14px;
	font-size: 1.4rem;
	display: block;
	font-weight: bold;
}

.sectionType .navType1 li {
	width: 25%;
	padding: 0 1px 0 0;
}


@media screen and (max-width: 1200px) and (min-width: 960px) {
	.sectionBody.navType1 {
		width: 100%;
		padding: 37px 0 50px;
	}

	.sectionBody.navType1.linkList {
		padding: 0;
	}

	.sectionType .navType1 li {
		padding: 0 1px 0 0;
	}

	.sectionType .navType1 .img {
		max-width: 100%;
	}

	.sectionType .navType1 .img img {
		width: 100%;
		height: auto;
	}

	.navType1 li:not(:last-child) {
		margin-right:20px;
	}
}
@media screen and (max-width: 959px) {
	.sectionBody.navType1 {
		width: 100%;
		padding: 0;
		margin: -6px 0 -29px;
		flex-flow: row wrap;
	}

	.sectionType .navType1 li {
		width: 50%;
		max-width: 959px;
		padding: 0 2.5px 5px 0;
	}

	.navType1 li:not(:last-child) {
		margin-right: 0;
	}

	.navType1 li:nth-child(2n) {
		padding: 0 0 5px 2.5px;
	}

	.navType1 a {
		width: 100%;
		display: table;
		table-layout: fixed;
		text-align: left;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		border-radius: 4px;
		background: #fff url(/toppage/images/arrow_middle_right_2.png) no-repeat scroll right center / 15px auto;
	}

	.sectionType .navType1 .img {
		width: 59px;
		padding: 10px 9px 10px 10px;
		margin: 0;
		display: table-cell;
	}

	.sectionType .navType1 .img img {
		width: 40px;
		height: 25px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		border-radius: 2px;
	}

	.sectionType .navType1 a:hover .img img {
		opacity: 1;
	}

	.navType1 .tit {
		font-size: 10px;
		font-size: 1.0rem;
		line-height: 1.4;
		font-weight: bold;
		display: table-cell;
		vertical-align: middle;
	}
}

/* display
-------------------------------------------------- */
.pcBlock {
	display: block !important;
}
@media screen and (max-width: 959px) {
	.pcBlock {
		display: none !important;
	}
}
.spBlock {
	display: none !important;
}

@media screen and (max-width: 959px) {
	.spBlock {
		display: block !important;
	}
}
.pcInline {
	display: inline !important;
}
@media screen and (max-width: 959px) {
	.pcInline {
		display: none !important;
	}
}
.spInline {
	display: none !important;
}
@media screen and (max-width: 959px) {
	.spInline {
		display: inline !important;
	}
}

/* image Element
-------------------------------------------------- */

.imageBlock__img--wide {
	width: 100%;
}

@media screen and (min-width: 960px) {
	.imageBlock {
		margin-bottom: 29px;
		padding: 5px 0;
	}
}

@media screen and (max-width: 959px) {
	.imageBlock {
		margin-bottom: 7px;
		padding: 4px 0;
	}
}

/* contentArea
-------------------------------------------------- */
.contentArea {
	width: 100%;
	max-width: 1040px;
	margin: 0 auto;
}

@media screen and (min-width: 960px) {
	.contentArea {
		padding: 0 20px;
	}
}

@media screen and (max-width: 959px) {
	.contentArea {
		padding: 0 10px;
	}
}

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

/* bodyArea
-------------------------------------------------- */
.bodyArea {
	width: 100%;
	font-size: 1.2rem;
	position: relative;
}

/* mainArea
-------------------------------------------------- */
.mainArea {
	width: 100%;
}

/* section Element
-------------------------------------------------- */
.sectionTypeGray {
	background: #eee;
}

/* textBlock
-------------------------------------------------- */
@media screen and (max-width: 959px) {
	.textBlock {
		padding: 0 5px;
	}

	.title--xs + p {
		font-size: 1rem;
	}

	.title--xs + .textBlock p {
		font-size: 1rem;
	}
}

/* keyvisual
-------------------------------------------------- */
.keyvisual {
	background: url( /element_2017/images/bg_keyvisual.jpg ) no-repeat center / cover;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.keyvisual--nobg {
	background: none;
}

.keyvisual__title {
	margin: 0 auto;
	max-width: 1000px;
	text-align: center;
	font-family: 'Hannari';
	font-size: 6.0rem;
	line-height: 1.33;
	color: #000;
	vertical-align: middle;
}

.keyvisual__parentTitle {
	margin: 0 auto;
	max-width: 1000px;
	text-align: center;
	font-family: 'Hannari';
	line-height: 1.2;
}

@media screen and (min-width: 960px) {
	.keyvisual {
		margin-bottom: 50px;
		padding: 45px 0 57px;
		height: 320px;
	}

	.keyvisual--nobg {
		margin-bottom: 43px;
		padding: 92px 0 0;
		height: auto;
		min-height: inherit;
	}

	.keyvisual__parentTitle {
		font-size: 3.6rem;
	}
	
	.keyvisual--nobg .keyvisual__parentTitle {
		margin-top: 12px;
	}
}

@media screen and (max-width: 959px) {
	.keyvisual {
		margin-bottom: 20px;
		padding: 34px 0 38px;
		min-height: 160px;
		background-position: center center;
		background-size: cover;
	}

	.keyvisual--nobg {
		margin-bottom: 0;
		padding: 0;
		height: auto;
		min-height: inherit;
	}

	.keyvisual__txt {
		padding: 0 15px;
	}

	.keyvisual--nobg .keyvisual__txt {
		padding: 28px 15px 0;
	}

	.keyvisual__title {
		font-size: 2.9rem;
	}

	.keyvisual__parentTitle {
		font-size: 1.8rem;
	}
}

/* breadcrumb
-------------------------------------------------- */

.breadcrumb__list {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.breadcrumb__listItems {
	line-height: 1;
}

.breadcrumb__link {
	display: inline-block;
	font-size: 14px;
	text-decoration: none;
}

.breadcrumb__text {
	display: inline-block;
	font-size: 14px;
}

.breadcrumb--typeWhite a {
	color: #fff;
}

.breadcrumb--typeblack a {
	color: #000;
}

.breadcrumb__listItems:first-child .breadcrumb__link::before {
	margin-right: 5px;
	content: '';
	width: 16px;
	height: 13px;
	padding-right: 5px;
	background-repeat: no-repeat;
	display: inline-block;
}

.breadcrumb__listItems + .breadcrumb__listItems::before {
	content: '>';
	font-size: 14px;
	display: inline-block;
	padding: 0 8px;
}

.breadcrumb--typeWhite .breadcrumb__listItems:first-child .breadcrumb__link::before {
	background-image: url(/element_2017/images/ico_breadcrumb_2.png);
}

.breadcrumb--typeWhite .breadcrumb__listItems + .breadcrumb__listItems::before {
	color: #fff;
}

.breadcrumb--typeBlack .breadcrumb__listItems:first-child .breadcrumb__link::before {
	background-image: url(/element_2017/images/ico_breadcrumb_1.png);
}

.breadcrumb--typeBlack .breadcrumb__listItems + .breadcrumb__listItems::before {
	color: #000;
}

@media screen and (min-width: 960px) {
	.breadcrumb,
	.breadcrumb--typeWhite,
	.breadcrumb--typeBlack {
		padding: 12px 0 0 15px;
		position: absolute;
		left: 0;
		z-index: 10;
	}
	.breadcrumb--typeWhite .breadcrumb__text {
		color: #fff;
	}
	.breadcrumb__listItems .breadcrumb__link:hover {
		color: #c3303c;
		text-decoration: underline;
	}
	.breadcrumb__listItems:first-child .breadcrumb__link:hover::before {
		background-image: url( /element_2017/images/ico_breadcrumb_3.png );
	}
}
@media screen and (max-width: 959px){
	.breadcrumb,
	.breadcrumb--typeWhite,
	.breadcrumb--typeBlack {
		padding: 0 0 0 8px;
		background-color: #eee;
		width: 100%;
	}
	.breadcrumb__list {
		margin-bottom: 0;
	}
	.breadcrumb__listItems {
		position: relative;
		height: 26px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		white-space: nowrap;
	}
	.breadcrumb__listItems:last-child {
		overflow: hidden;
		padding-right: 0;
	}
	a.breadcrumb__link {
		color: #333;
		font-size: 10px;
	}
	.breadcrumb__text {
		font-size: 10px;
		text-overflow: ellipsis;
		overflow: hidden;
	}
	.breadcrumb__listItems:first-child .breadcrumb__link::before {
		width: 12px;
		height: 10.5px;
		padding-right: 10px;
		background-size: contain;
	}
	.breadcrumb--typeBlack .breadcrumb__listItems:first-child .breadcrumb__link::before,
	.breadcrumb--typeWhite .breadcrumb__listItems:first-child .breadcrumb__link::before{
		background-image: url(/element_2017/images/ico_breadcrumb_sp_1.png);
	}
	.breadcrumb__listItems:first-child .breadcrumb__link .breadcrumb__linkText{
		display: none;
	}
	.breadcrumb__listItems + .breadcrumb__listItems {
		padding-right: 11px;
		padding-left: 22px;
	}
	.breadcrumb__listItems + .breadcrumb__listItems::before {
		content: '';
		border-top: 13px solid transparent;
		border-bottom: 13px solid transparent;
		border-left: 13px solid #fff;
		position: absolute;
		left: 0;
		top: 0;
	}
	.breadcrumb__listItems + .breadcrumb__listItems::after {
		content: '';
		border-top: 13px solid transparent;
		border-bottom: 13px solid transparent;
		border-left: 13px solid #eee;
		position: absolute;
		left: -2px;
		top: 0;
		z-index: 1;
	}
}
/* leadTxt
-------------------------------------------------- */

@media screen and (min-width: 960px) {
	.leadTxt {
		margin: 43px 0 110px;
		margin-top: 43px;
	}
	.leadTxt__paragraph {
		font-size: 2rem;
		text-align: center;
	}
}

@media screen and (max-width: 959px) {
	.leadTxt {
		margin: 20px 0 55px;
		padding: 0 5px;
	}
	.leadTxt__paragraph {
		font-size: 1.3rem;
	}
}

/* summaryTxt
-------------------------------------------------- */

@media screen and (min-width: 960px) {
	.summaryTxt {
		margin: 45px 0 112px;
	}
}

@media screen and (max-width: 959px) {
	.summaryTxt {
		margin: 24px 0 55px;
		padding: 0 5px;
	}
}

/* tabBlock
-------------------------------------------------- */

.tabBlock__list {
	width: 100%;
	margin: 0 auto;
	display: flex;
	z-index: 100;
}

.tabBlock__body {
	width: 100%;
	padding: 8px 0 0;
	background-color: #fff;
	z-index: 1;
	transform: translate3d(0, 0, 0);
}

.tabBlock__border {
	border-bottom: 1px #ccc solid;
}

.tabBlock__bodyBottom {
	width: 100%;
	padding: 0 0 8px;
	background-color: #fff;
	z-index: 1;
	transform: translate3d(0, 0, 0);
}

.tabBlock__borderBottom {
	border-top: 1px #ccc solid;
}

.tabBlock__link {
	flex: 1 1 auto;
	font-weight: bold;
	text-align: center;
	color: #000;
	cursor: pointer;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}

.tabBlock__bodyBottom .tabBlock__link {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.tabBlock__link:last-child {
	padding-right: 0;
}

.tabBlock__link[aria-selected="true"] {
	cursor: default;
	position: relative;
}

.tabBlock__link[aria-selected="true"]:after {
	position: absolute;
	height: 1px;
	bottom: -1px;
	left: 1px;
	content: '';
	background-color: #fff;
}

.tabBlock__bodyBottom .tabBlock__link[aria-selected="true"]:after {
	top: -1px;
}

.tabBlock__link:hover {
	text-decoration: none;
	color: #c00;
}

.tabBlock__link[aria-selected="true"]:hover {
	color: #000;
}

.tabBlock__link__title {
	display: block;
	border-color: #ccc;
	border-style: solid;
	border-width: 1px 1px 0 1px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	background-color: #eee;
}

.tabBlock__link[aria-selected="true"] .tabBlock__link__title {
	background-color: #fff;
}

.tabBlock__bodyBottom .tabBlock__link__title {
	border-top: 0;
	border-bottom: 1px #ccc solid;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.tabBlock__contentWrap {
	padding: 5px 4% 30px;
	border-color: #ccc;
	border-style: solid;
	border-width: 0 1px 1px 1px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
}

.tabBlock__contentWrap--hasBottomTab {
	border-bottom-width: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.tabBlock_content[aria-hidden="true"] {
	display: none;
}

@media screen and (min-width: 960px) {
	.tabBlock {
		margin-top: 48px;
	}

	.tabBlock__list {
		max-width: 1000px;
	}

	.tabBlock__link {
		padding-right: 4px;
		font-size: 2rem;
	}

	.tabBlock__link__title {
		padding: 15px 0;
	}

	.tabBlock__link[aria-selected="true"]:after {
		width: calc(100% - 5px);
	}

	.tabBlock__link.tabBlock__link[aria-selected="true"]:last-child:after {
		width: calc(100% - 2px);
	}
}

@media screen and (max-width: 959px) {
	.tabBlock {
		margin-top: 40px;
	}

	.tabBlock__bodyPageAll .tabBlock__list {
		padding: 0 10px;
	}

	.tabBlock__link {
		padding-right: 2px;
		font-size: 1.2rem;
	}

	.tabBlock__link__title {
		padding: 5px 0;
	}

	.tabBlock__link[aria-selected="true"]:after {
		width: calc(100% - 4px);
	}

	.tabBlock__link.tabBlock__link[aria-selected="true"]:last-child:after {
		width: calc(100% - 2px);
	}
}

/* title
-------------------------------------------------- */

.title--xl {
	text-align: center;
	font-family: 'Hannari';
	line-height: 1.33;
	color: #000;
}

.title--l {
	text-align: center;
	line-height: 1.5;
	color: #000;
}

.title--m {
	text-align: center;
	font-weight: bold;
	line-height: 1.5;
	color: #000;
}

.title--s {
	font-weight: bold;
	line-height: 1.5;
	color: #000;
}

.title--xs {
	font-weight: bold;
	line-height: 1.5;
	color: #000;
}

@media screen and (min-width: 960px) {
	.title--xl {
		margin: 68px 0 82px;
		font-size: 5.2rem;
	}

	.title--l {
		margin: 106px 0 45px;
		font-size: 3.4rem;
	}

	.title--m {
		margin: 69px 0 30px;
		font-size: 2.4rem;
	}

	.title--s {
		margin: 46px 0 15px;
		font-size: 2rem;
	}

	.title--xs {
		margin: 17px 0 2px;
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 959px) {
	.title--xl {
		margin: 36px 0 47px;
		padding: 0 5px;
		font-size: 2.6rem;
	}

	.title--l {
		margin: 42px 0 17px;
		padding: 0 5px;
		font-size: 1.9rem;
	}

	.title--m {
		margin: 32px 0 13px;
		padding: 0 5px;
		font-size: 1.4rem;
	}

	.title--s {
		margin: 20px 0 8px;
		padding: 0 5px;
		font-size: 1.2rem;
	}

	.title--xs {
		margin: 8px 0 2px;
		padding: 0 5px;
		font-size: 1rem;
	}
}

/* paragraph Element
-------------------------------------------------- */

@media screen and (min-width: 960px) {
	p {
		margin-bottom: .8em;
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 959px) {
	p {
		margin-bottom: .7em;
		font-size: 1.2rem;
	}
}

.em {
	font-weight: bold;
	font-style: normal;
}

.em--black {
	font-weight: bold;
	font-style: normal;
	color: #000
}

.em--red {
	font-weight: bold;
	font-style: normal;
	color: #c3303c;
}

.textCenter {
	text-align: center;
}

.left {
	text-align: left;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.floatLeft {
	float: left;
}
.floatRight {
	float: right;
}

@media screen and (min-width: 960px) {
	.telTxt {
		text-decoration: none;
		font-weight: normal;
		pointer-events: none;
		cursor: default;
	}
	.telTxt:hover {
		color: inherit;
		text-decoration: none;
	}
}

@media screen and (max-width: 959px) {
	p {
		margin-bottom: .8em;
		font-size: 1.2rem;
	}

	.telTxt:link {
		text-decoration: underline;
		font-weight: bold;
	}
}

/* frameBlock
-------------------------------------------------- */
.frameBlock {
	border: 1px #ccc solid;
}

.frameBlock__title {
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	color: #000;
}

.frameBlock__title--mid {
	font-weight: bold;
	color: #000;
	line-height: 1.5;
}

.frameBlock__title--small {
	font-weight: bold;
	color: #000;
	line-height: 1.5;
}

/* frameRedBlock */
.frameRedBlock {
	border: 1px #c3303c solid;
	border-radius: 4px;
}

.frameRedBlock__title {
	font-weight: bold;
	line-height: 1.5;
	color: #c3303c;
}

.frameRedBlock__title__inner:before {
	background-repeat: no-repeat;
	display: inline-block;
	content: "";
	position: absolute;
}

.frameRedBlock__title--mid {
	font-weight: bold;
	color: #000;
	line-height: 1.5;
}

.frameRedBlock__title--small {
	font-weight: bold;
	color: #000;
	line-height: 1.5;
}

@media screen and (min-width: 960px) {
	.frameBlock {
		margin-bottom: 80px;
		padding: 33px 40px;
		border-radius: 4px;
	}

	.frameBlock__title {
		margin-bottom: .9em;
		font-size: 2.4rem;
	}

	.frameBlock__title--mid {
		margin: 1.2em 0 .4em;
		font-size: 2rem;
	}

	.frameBlock__title--small {
		margin: 17px 0 2px;
		font-size: 1.6rem;
	}

	.frameRedBlock {
		margin-bottom: 80px;
		padding: 33px 40px;
		border-radius: 2px;
	}

	.frameRedBlock__title {
		margin-bottom: .9em;
		font-size: 2.4rem;
		text-align: center;
	}

	.frameRedBlock__title:before {
		top: 4px;
	}

	.frameRedBlock__title__inner {
		padding-left: 45px;
		position: relative;
	}

	.frameRedBlock__title__inner:before {
		position: absolute;
		left: 0;
	}

	.frameRedBlock__title--information .frameRedBlock__title__inner:before {
		background-image: url(/element_2017/images/ico_information_1.png);
		width: 29px;
		height: 29px;
		top: 2px;
	}

	.frameRedBlock__title--mid {
		margin: 1.2em 0 .4em;
		font-size: 2rem;
	}

	.frameRedBlock__title--small {
		margin: 17px 0 2px;
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 959px) {
	.frameBlock {
		margin-bottom: 30px;
		padding: 16px 20px;
		border-radius: 2px;
	}

	.frameBlock__title {
		margin-bottom: .9em;
		font-size: 1.4rem;
	}

	.frameBlock__title--mid {
		margin: 1.2em 0 .4em;
		font-size: 1.2rem;
	}

	.frameBlock__title--small + p {
		font-size: 1rem;
	}

	.frameBlock__title--small {
		margin: 8px 0 2px;
		font-size: 1rem;
	}

	.frameRedBlock {
		margin-bottom: 30px;
		padding: 16px 20px;
		border-radius: 2px;
	}

	.frameRedBlock__title {
		padding-left: 20px;
		margin-bottom: .9em;
		font-size: 1.4rem;
		position: relative;
	}

	.frameRedBlock__title:before {
		background-repeat: no-repeat;
		display: inline-block;
		content: "";
		position: absolute;
		left: 0;
		top: 2px;
	}

	.frameRedBlock__title--information:before {
		background-image: url(/element_2017/images/ico_information_sp_1.png);
		background-size: 18px 18px;
		background-position: bottom left;
		width: 18px;
		height: 18px;
		line-height: 1;
		vertical-align: bottom;
	}

	.frameRedBlock__title--mid {
		margin: 1.2em 0 .4em;
		font-size: 1.2rem;
	}

	.frameRedBlock__title--small {
		margin: .6em 0 .3em;
		font-size: 1rem;
	}

	.frameRedBlock__title--small + p {
		font-size: 1rem;
	}
}

/* relationLink
-------------------------------------------------- */

.relationLink__title {
	text-align: center;
	line-height: 1.5;
	color: #000;
}

.relationLink ul {
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.5;
}

.relationLink li {
	background-color: #fff;
	border-radius: 4px;
}

.relationLink a {
	display: block;
	font-weight: bold;
}

.relationLink__description {
	font-weight: normal;
	color: #333;
}

@media screen and (min-width: 960px) {
	.relationLink {
		padding: 110px 0 90px;
	}

	.relationLink__title {
		margin-bottom: 50px;
		font-size: 3.4rem;
	}

	.relationLink ul {
		text-align: center;
		font-size: 1.4rem;
	}

	.relationLink li {
		margin-bottom: 30px;
	}

	.relationLink a {
		height: 100%;
	}

	.relationLink__text {
		justify-content: center;
	}

	.relationLink__text a {
		padding: 18px 20px;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
	}

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

	.relationLink__text a:before {
		content: "";
		width: 12px;
		height: 12px;
		margin: 0 10px 0 0;
		overflow: hidden;
		background: url(/element_2017/images/arrow_middle_right_btn2.png) left top no-repeat;
		display: inline-block;
	}

	.relationLink__text a:hover:before {
		background-position: left bottom;
	}

	.relationLink__subtext a {
		padding: 25px 30px;
		display: flex;
		justify-content: center;
	}

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

	.relationLink__text__inner {
		text-align: left;
	}

	.relationLink__description {
		margin: 5px 0 0;
		font-size: 1.4rem;
	}

	.relationLink__img a {
		padding: 30px;
	}

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

	.relationLink__imgBody {
		margin-bottom: 20px;
	}

	.relationLink__imgBody img {
		width: 70px;
		height: 70px;
	}

	.relationLink_threeColumn li {
		width: 31.3%;
	}

	.relationLink_fourColumn li {
		width: 22.9%;
	}

	.relationLink_threeColumn li {
		margin: 0 1.5% 30px;
	}

	.relationLink_threeColumn li:nth-child(3n+1) {
		margin-left: 0;
	}

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

	.relationLink_fourColumn li {
		margin: 0 1.4% 30px;
	}

	.generalTable--multicolumn__body .relationLink_fourColumn li {
		margin-bottom: 0;
	}

	.relationLink_fourColumn li:nth-child(4n+1) {
		margin-left: 0;
	}

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

@media screen and (max-width: 959px) {
	.relationLink {
		padding: 55px 0 50px;
	}

	.relationLink__title {
		margin-bottom: 17px;
		padding: 0 10px;
		font-size: 1.9rem
	}

	.relationLink ul {
		justify-content: space-between;
		font-size: 1rem;
	}

	.relationLink li {
    	margin-bottom: 10px;
	}

	.generalTable--multicolumn__body .relationLink li {
		margin-bottom: 0;
	}

	.relationLink a {
		display: block;
	}

	.relationLink__text li {
		margin-bottom: 10px;
		width: 48.3%;
	}

	.relationLink__text a {
		padding: 11px 25px 11px 15px;
		display: flex;
		align-items: center;
		height: 100%;
		background: url(/element_2017/images/arrow_middle_right_btn2_sp.png) no-repeat right center /15px auto;
	}

	.relationLink__subtext li {
		width: 100%;
	}

	.relationLink__subtext a {
		padding: 11px 35px 11px 15px;
		background: url(/element_2017/images/arrow_middle_right_btn2_sp.png) no-repeat right center /15px auto;
	}

	.relationLink__description {
		margin: 5px 0 0;
		font-size: 1rem;
	}

	.relationLink__img li {
		width: 100%;
	}

	.relationLink__img a {
		padding: 10px 35px 10px 10px;
		display: table;
		width: 100%;
		background: url(/element_2017/images/arrow_middle_right_btn2_sp.png) no-repeat right center /15px auto;
	}

	.relationLink__imgBody {
		padding-right: 15px;
		vertical-align: middle;
		display: table-cell;
		width: 35px;
	}

	.relationLink__imgBody img {
		width: 35px;
		height: 35px;
	}

	.relationLink__box {
		display: table-cell;
	}
}

/* stepBlock
-------------------------------------------------- */
.stepBlock {
	background-color: #eee;
	border-radius: 4px;
}

.stepBlock__wrap {
	background-color: #fff;
	border-radius: 4px;
}

.stepBlock__body {
	width: 100%;
	position: relative;
}

.stepBlock__body:last-of-type:before,
.stepBlock__body:last-of-type:after {
	border: none;
}

.stepBlock__body:before,
.stepBlock__body:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	z-index: 100;
}

.stepBlock__body:before {
	border-top-color: #eee;
}

.stepBlock__body:after {
	border-top-color: #fff;
}

.stepBlock__body_image img {
	width: 100%;
}

.stepBlock__body_image-vt {
	vertical-align: top;
}

.stepBlock__body_image-vm {
	vertical-align: middle;
}

.stepBlock__body_image-vb {
	vertical-align: bottom;
}

@media screen and (min-width: 960px) {
	.stepBlock {
		margin-bottom: 60px;
		padding: 40px;
	}

	.stepBlock--hasComments {
		margin-bottom: 0;
	}

	.stepBlock__body {
		padding: 35px 50px 45px;
	}

	.stepBlock__body:not(:last-of-type) {
		border-bottom: 5px solid #eee;
	}

	.stepBlock__body:before {
		border-width: 27px 27px 0 27px;
		margin-left: -27px;
	}

	.stepBlock__body:after {
		border-width: 20px 20px 0 20px;
		margin-left: -20px;
	}

	.stepBlock__body .title--s {
		margin-top: 0;
	}

	.stepBlock__body_image,
	.stepBlock__body_text{
		display: table-cell;
	}

	.stepBlock__body_image-w20 {
		width: 20%;
	}

	.stepBlock__body_image-w30 {
		width: 30%;
	}

	.stepBlock__body_image-w50 {
		width: 50%;
	}

	.stepBlock__body_image {
		padding: 5px 5% 5px 0;
	}
}

@media screen and (max-width: 959px) {
	.stepBlock {
		margin-bottom: 30px;
		padding: 10px;
	}

	.stepBlock--hasComments {
		margin-bottom: 0;
	}

	.stepBlock__body {
		padding: 20px 5%;
	}

	.stepBlock__body:not(:last-of-type) {
		border-bottom: 3px solid #eee;
	}

	.stepBlock__body:before {
		border-width: 14px 14px 0 14px;
		margin-left: -14px;
	}

	.stepBlock__body:after {
		border-width: 9px 9px 0 9px;
		margin-left: -9px;
	}
	.stepBlock__body_image {
		margin-bottom: 5px;
		text-align: center;
	}
}

/* contactBlock
-------------------------------------------------- */
.contactBlock {
	background-color: #eee;
	border-radius: 4px;
}

.contactBlock__title {
	text-align: center;
	font-weight: bold;
	line-height: 1.5;
	color: #000;
}

.contactBlock__body {
	background-color: #fff;
	border-radius: 4px;
}

.contactBlock__detail__title {
	font-weight: bold;
}

.contactBlock__title__inner {
	position: relative;
}

.contactBlock__title__inner:before {
	position: absolute;
	content: '';
	left: 0;
	display: block;
}

.contactBlock__detail__title--tel .contactBlock__title__inner:before {
	background: url(/element_2017/images/icon_tel_1.png) no-repeat left top;
}

.contactBlock__detail__title--web .contactBlock__title__inner:before {
	background: url(/element_2017/images/icon_web_1.png) no-repeat left top;
}

.contactBlock__detail__title--mail .contactBlock__title__inner:before {
	background: url(/element_2017/images/icon_mail_1.png) no-repeat left top;
}

.contactBlock__detail__title--brochure .contactBlock__title__inner:before {
	background: url(/element_2017/images/icon_brochure_1.png) no-repeat left top;
}

.contactBlock__detail_content {
	text-align: center;
}

.contactBlock__number {
	color: #c00;
	font-weight: bold;
	line-height: 1.2;
}

.contactBlock__number a {
	color: #c00;
	font-weight: normal;
}

.contactBlock__detail__comment {
	margin-bottom: 0;
}

.contactBlock__attention {
	border-top: 1px solid #ccc;
}

.contactBlock_btn__cv_typeblack {
	margin-bottom: 0;
	padding: 5px 0;
	text-align: center;
	list-style: none;
	line-height: 1.5;
}

.contactBlock_btn__cv_typeblack a {
	padding: 22px 0;
	font-size: 2.4rem;
	background-color: #000;
	border: 1px solid #000;
	width: 100%;
	font-weight: bold;
	border-radius: 4px;
	display: block;
	color: #fff;
}

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

.contactBlock_btn__cv_typeblack a:before {
	vertical-align: middle;
	content: "";
	display: inline-block;
}

@media screen and (min-width: 960px) {
	.contactBlock {
		margin-bottom: 60px;
		padding: 35px 40px 40px 40px;
	}

	.contactBlock--hasComments {
		margin-bottom: 0;
	}

	.contactBlock__body {
		padding: 35px 4%;
	}

	.contactBlock__body + .contactBlock__body {
		margin-top: 40px;
	}

	.contactBlock__number {
		margin-bottom: 10px;
		font-size: 3.4rem;
	}

	.contactBlock__number a {
		text-decoration: none;
		color: #cc0000;
		pointer-events: none;
		cursor: default;
	}

	.contactBlock__title {
		margin: 0 0 30px;
		font-size: 2.4rem;
	}

	.contactBlock__detail {
		display: flex;
		align-items: center;
		width: 100%;
	}

	.contactBlock__detail__title {
		margin-bottom: 0;
		line-height: 33px;
		font-size: 2rem;
		vertical-align: middle;
		width: 41%;
	}

	.contactBlock__title__inner {
		padding-left: 50px;
	}

	.contactBlock__detail__title--tel .contactBlock__title__inner:before,
	.contactBlock__detail__title--web .contactBlock__title__inner:before,
	.contactBlock__detail__title--mail .contactBlock__title__inner:before {
		width: 33px;
		height: 33px;
		top: -3px;
	}
	
	.contactBlock__detail__title--brochure .contactBlock__title__inner:before {
		width: 40px;
		height: 40px;
		top: -3px;
	}

	.contactBlock__detail__comment + .contactBlock__number {
		margin-top: 32px;
	}


	.contactBlock__detail_content {
		margin: 0 auto;
		width: 59%;
	}

	.contactBlock__attention {
		margin-top: 35px;
		padding-top: 35px;
	}

	.contactBlock_btn__cv_typeblack li {
		margin: 0 40px;
	}

	.contactBlock_btn__cv_typeblack a:hover {
		background-color: #fff;
		border: 1px solid #c3303c;
		color: #c3303c;
	}

	.contactBlock_btn__cv_typeblack a:before {
		margin-right: 10px;
		background: url(/element_2017/images/ico_external_3.png) no-repeat left top;
		width: 14px;
		height: 14px;
	}

	.contactBlock_btn__cv_typeblack a:hover:before {
		background-position: left bottom;
	}
}

@media screen and (max-width: 959px) {
	.contactBlock {
		margin-bottom: 30px;
		padding: 10px;
	}

	.contactBlock--hasComments {
		margin-bottom: 0;
	}

	.contactBlock__body {
		padding: 25px 5%;
	}

	.contactBlock__body + .contactBlock__body {
		margin-top: 10px;
	}

	.contactBlock__title {
		margin: 4px 0 12px;
		font-size: 1.4rem;
	}

	.contactBlock__detail__title {
		margin-bottom: 1.2em;
		text-align: center;
		font-size: 1.2rem;
		line-height: 1.5;
	}

	.contactBlock__title__inner {
		padding-left: 25px;
	}

	.contactBlock__title__inner:before {
		top: auto;
		bottom: auto;
	}

	.contactBlock__detail__title--tel .contactBlock__title__inner:before,
	.contactBlock__detail__title--web .contactBlock__title__inner:before,
	.contactBlock__detail__title--mail .contactBlock__title__inner:before {
		width: 17px;
		height: 17px;
		background-size: 17px 17px;
        top: -2px;
	}
	
	.contactBlock__detail__title--brochure .contactBlock__title__inner:before {
		width: 20px;
		height: 20px;
		background-size: 20px 20px;
        top: -2px;
	}

	.contactBlock__number {
		margin-bottom: 8px;
		text-decoration: underline;
		font-size: 1.9rem;
	}

	.contactBlock__detail__comment + .contactBlock__number {
		margin-top: 10px;
	}

	.contactBlock__detail__title--tel:before {
		font-size: 18px;
		line-height: 1;
	}

	.contactBlock__attention {
		margin-top: 20px;
		padding-top: 20px;
	}

	.contactBlock__content__btn__cv li {
		width: 100%;
	}

	.contactBlock__content__btn__cv a {
		padding: 8px 0;
		font-size: 1.4rem;
	}

	.contactBlock_btn__cv_typeblack a:before {
		margin-right: 10px;
		background: url(/element_2017/images/ico_external_sp_3.png) no-repeat left top /11px 11px;
		width: 11px;
		height: 11px;
		vertical-align: middle;
	}
}

/* commentsBlock
-------------------------------------------------- */

@media screen and (min-width: 960px) {
	.commentsBlock {
		margin: 7px 0 60px;
	}
}

@media screen and (max-width: 959px) {
	.commentsBlock {
		line-height: 1.5;
		margin: 12px 0 30px;
	}
}

/* selectMenu
-------------------------------------------------- */

.selectMenu {
	position: relative;
	border: 1px solid #cccccc;
	border-radius: 4px;
	text-align: center;
	line-height: 1;
}

.selectMenu:before,
.selectMenu:after {
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: '';
}

.selectMenu:before {
	border-top-color: #e1e1e1;
}

.selectMenu:after {
	border-top-color: #ffffff;
}

.selectMenu__btn {
	width: 100%;
	position: relative;
	cursor: pointer;
	font-weight: bold;
}

.selectMenu__btn:hover:before {
	border-color: #cc0000;
}

.selectMenu__btn.isActive:hover:before {
	border-color: #cc0000;
}

.selectMenu__title {
	position: relative;
}

.selectMenu__title:before {
	position: absolute;
	width: 10px;
	height: 10px;
	top: 50%;
	left: 0;
	margin: -6px 0 0 -21px;
	border-right: 1px #333333 solid;
	border-bottom: 1px #333333 solid;
	transform: rotate(45deg);
	content: '';
}

.selectMenu__title.isActive:before {
	margin: -1px 0 0 -20px;
	transform: rotate(-135deg);
}

.selectMenu__list {
	display: none;
	margin-bottom: 0;
}

.selectMenu__list li {
	border-top: 1px #ccc solid;
	font-weight: bold;
}

.selectMenu__list li.selectMenu__list--current {
	color: #aaa;
}

@media screen and (min-width: 960px) {
	.selectMenu {
		margin-bottom: 60px;
	}

	.selectMenu__btn {
		padding: 22px 0;
		font-size: 2.4rem;
	}

	.selectMenu:before {
		border-width: 15px 15px 0 15px;
		margin-left: -15px;
	}

	.selectMenu:after {
		border-width: 13px 13px 0 13px;
		margin-left: -13px;
	}

	.selectMenu__list li {
		padding: 17px 0;
		font-size: 16px;
		cursor: pointer;
	}

	.selectMenu__list li:hover,
	.selectMenu__btn:hover {
		color: #c00;
	}
}

@media screen and (max-width: 959px) {
	.selectMenu {
		margin-bottom: 30px;
	}

	.selectMenu__btn {
		padding: 10px 0;
		font-size: 1.4rem;
	}

	.selectMenu:before {
		border-width: 7px 7px 0 7px;
		margin-left: -7px;
	}

	.selectMenu:after {
		border-width: 5px 5px 0 5px;
		margin-left: -5px;
	}

	.selectMenu__list li {
		padding: 12px 0;
		font-size: 10px;
	}
}

/* list Element
-------------------------------------------------- */

ul, ol {
	margin: 0;
	font-size: 1.6rem;
}

ul {
	list-style: none;
}

ol {
	list-style: decimal;
}

@media screen and (min-width: 960px) {
	ul, ol {
		margin-bottom: .8em;
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 959px) {
	ul, ol {
		margin-bottom: .7em;
		font-size: 1.2rem;
	}
}

.listAsterlisk__list {
	margin-left: 1em;
	text-indent: -1em;
}

@media screen and (min-width: 960px) {
	.listDisc {
		margin-left: 50px;
	}

	.listDecimal {
		margin-left: 50px;
	}
}

@media screen and (max-width: 959px) {
	.listDisc {
		margin-left: 30px;
	}

	.listDecimal {
		margin-left: 30px;
	}
}

/* link Element
-------------------------------------------------- */

.listLink {
	font-weight: bold;
}

.listLink a:before {
	content: "";
	display: inline-block;
	overflow: hidden;
}

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

.listDisc li {
	list-style: disc;
}

/*inPageBlock */

@media screen and (min-width: 960px) {
	.inPageBlock {
		margin: 62px 0 72px;
	}

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

	.inPageBlock .listLink__inPage {
		margin: 0 40px;
		display: inline-block;
	}

	.listLink a:before {
		padding-right: 12px;
		font-size: 12px;
		text-decoration: none;
	}

	.listLink__inPage a:before {
		padding-left: 14px;
		background: url(/element_2017/images/arrow_inpage_1.png) no-repeat left center;
		width: 14px;
		height: 13px;
	}

	.link--internal {
		font-weight: bold;
	}
	.link--internal:hover {
		text-decoration: none;
	}
	.link--internal:before {
		content: "";
		display: inline-block;
		overflow: hidden;
		padding-right: 12px;
		font-size: 12px;
		text-decoration: none;
		padding-left: 14px;
		background: url(/element_2017/images/arrow_middle_right_btn2.png) left 5px bottom no-repeat;
		width: 14px;
		height: 12px;
	}

	.listLink__external a:before {
		padding-left: 14px;
		background: url(/element_2017/images/ico_external_2.png) no-repeat left center;
		width: 14px;
		height: 14px;
	}

	.link--pdf {
		font-weight: bold;
		padding-left: 2em;
		background: url(/element_2017/images/ico_pdf.png) no-repeat left center / 20px 20px;
		display: inline-block;
	}
	.link--pdf:hover {
		text-decoration: none;
	}
}

@media screen and (max-width: 959px) {
	.inPageBlock {
		margin-bottom: 20px;
	}
	.inPageBlock li {
		border-color: #eee;
		border-style: solid;
		border-width: 1px 1px 0 1px;
		display: block;
	}
	.inPageBlock li:first-child {
		border-top-right-radius: 4px;
		border-top-left-radius: 4px;
	}
	.inPageBlock li:last-child {
		border-bottom-width: 1px;
		border-bottom-right-radius: 4px;
		border-bottom-left-radius: 4px;
	}

	.inPageBlock a {
		padding: 10px 35px 10px 15px;
		display: block;
		background: url(/element_2017/images/arrow_inpage_sp_2.png) no-repeat right center / auto 7px ;
	}

	.inPageBlock a:before {
		padding-left: 0;
		display: none;
	}

	.listLink__inPage a:before {
		padding-left: 14px;
		background: url(/element_2017/images/arrow_inpage_sp_1.png) no-repeat left center / auto 7px;
		width: 7px;
		height: 7px;
	}

	.listLink__external a:before {
		padding-left: 14px;
		background: url(/element_2017/images/ico_external_sp_2.png) no-repeat left center / 11px auto;
		width: 11px;
		height: 11px;
	}
	.link--internal {
		font-weight: bold;
		background: url(/element_2017/images/arrow_middle_btn_sp_1_red.png) no-repeat left 3px center /6px 9px;
		padding-left: 1.3em;
	}
	.link--pdf {
		font-weight: bold;
		padding-left: 1.8em;
		background: url(/element_2017/images/ico_pdf.png) no-repeat left center / 13px auto;
		display: inline-block;
	}
}

/* table Element
-------------------------------------------------- */
.generalTable,
.generalTable--multicolumn {
	background: #eee;
}

.generalTable table,
.generalTable--multicolumn table{
	width: 100%;
	line-height: 2;
}

.generalTable__nothead {
	margin-top: 10px;
}

.generalTable th,
.generalTable--multicolumn th {
	vertical-align: middle;
	background-color: #fff;
	font-weight: bold;
}

.generalTable__title th,
.generalTable--multicolumn__title th {
	line-height: 1.3333;
	color: #000;
	text-align: center;
	background: #eee;
}

.generalTable__body td,
.generalTable--multicolumn__body td {
	background: #fff;
	vertical-align: middle;
	border-bottom: 1px solid #eee;
}

.generalTable__body .listDisc,
.generalTable--multicolumn__body .listDisc {
	margin-left: 20px;
}

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

.table-alignleft {
	text-align: left;
}

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

@media screen and (min-width: 960px) {
	.generalTable,
	.generalTable--multicolumn {
		padding: 40px;
		margin-bottom: 60px;
		border-radius: 4px;
	}

	.generalTable--hasComments {
		margin-bottom: 0;
	}

	.generalTable table,
	.generalTable--multicolumn table {
		font-size: 1.6rem;
	}

	.generalTable__title th,
	.generalTable--multicolumn__title th {
		padding: 10px 30px 38px;
		font-size: 2.4rem;
	}

	.generalTable table + table .generalTable__title th,
	.generalTable--multicolumn table + table .generalTable--multicolumn__title th {
		padding-top: 50px;
	}

	.generalTable__body th,
	.generalTable--multicolumn__body th {
		width: 25%;
		padding: 22px 10px 22px 30px;
		border-bottom: 1px solid #eee;
	}

	.generalTable__body tr:first-child th:first-of-type,
	.generalTable__body tr:first-child td:first-child {
		border-top-left-radius: 4px;
	}

	.generalTable__body tr:first-child td:last-of-type,
	.generalTable__body tr:first-child th:last-child {
		border-top-right-radius: 4px;
	}

	.generalTable__body tr:last-child th:first-of-type,
	.generalTable__body tr:last-child td:first-child {
		border-bottom-left-radius: 4px;
	}

	.generalTable__body tr:last-child td:last-of-type,
	.generalTable__body tr:last-child th:last-child {
		border-bottom-right-radius: 4px;
	}

	.generalTable--multicolumn__head tr:first-child th:first-of-type {
		border-top-left-radius: 4px;
	}

	.generalTable--multicolumn__head tr:first-child th:last-child {
		border-top-right-radius: 4px;
	}

	.generalTable--multicolumn__body tr:last-child th {
		border-bottom-left-radius: 4px;
	}

	.generalTable--multicolumn__body tr:last-child td {
		border-bottom-right-radius: 4px;
	}

	.generalTable__body td,
	.generalTable--multicolumn__body td  {
		padding: 22px 20px;
	}

	.generalTable_head th,
	.generalTable--multicolumn__head th {
		padding: 15px 10px 15px 30px;
		border-bottom: 1px solid #eee;
	}
}
/* IEでborder-radiusを指定した要素に隙間ができてしまう問題の対処 */
@media all and (-ms-high-contrast:none) and (min-width: 959px){
	.generalTable__body th:first-of-type,
	.generalTable__body td:first-child,
	.generalTable--multicolumn__head th:first-of-type,
	.generalTable--multicolumn__head td:first-child,
	.generalTable--multicolumn__body th:first-of-type,
	.generalTable--multicolumn__body td:first-child {
		border-right: #fff 1px solid;
	}
}

@media screen and (max-width: 959px) {
	.generalTable {
		padding: 10px;
		margin-bottom: 40px;
		border-radius: 4px;
	}

	.generalTable--multicolumn {
		border: 10px solid #eee;
		margin-bottom: 40px;
		border-radius: 4px;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}

	.generalTable--multicolumn table {
		font-size: 1.2rem;
		width: 920px;
	}

	.generalTable table + table .generalTable__title th {
		padding-top: 25px;
	}

	.generalTable--hasComments {
		margin-bottom: 0;
	}

	.generalTable table,
	.generalTable--multicolumn table {
		font-size: 1.2rem;
	}

	.generalTable__title th {
		padding: 15px 10px 20px;
		font-size: 1.4rem;
	}

	.generalTable tr {
		display: block;
	}

	.generalTable th,
	.generalTable td {
		display: block;
		width: 100%;
	}

	.generalTable--multicolumn th {
		padding: 15px 5px 15px 15px;
		font-weight: bold;
		border-bottom: 1px solid #eee;
	}

	.generalTable--multicolumn td {
		padding: 15px 10px;
	}

	.generalTable__body th {
		padding: 15px 15px 2px;
		background-color: #fff;
	}

	.generalTable__body tr:first-child th {
		border-top-left-radius: 4px;
		border-top-right-radius: 4px;
	}

	.generalTable__body tr:last-child td {
		border-bottom-left-radius: 4px;
		border-bottom-right-radius: 4px;
	}

	.generalTable__body td {
		padding: 2px 15px 15px;
	}

	.generalTable--multicolumn__body td {
		padding: 15px 10px;
	}

	.generalTable--multicolumn__head tr:first-child th:first-child {
		border-top-left-radius: 4px;
	}

	.generalTable--multicolumn__head tr:first-child th:last-child {
		border-top-right-radius: 4px;
	}

	.generalTable--multicolumn__body tr:last-child th:first-child {
		border-bottom-left-radius: 4px;
	}

	.generalTable--multicolumn__body tr:last-child td:last-child {
		border-bottom-right-radius: 4px;
	}
}

/* noTitleTable */
.noTitleTable {
	background: #eee;
}

.noTitleTable table {
	width: 100%;
	line-height: 2;
}

.noTitleTable th {
	vertical-align: middle;
	background-color: #fff;
	font-weight: bold;
	border-bottom: 1px solid #eee;
}
@media screen and (min-width: 960px) {
	.noTitleTable {
		padding: 40px;
		margin-bottom: 60px;
		border-radius: 4px;
	}

	.noTitleTable--hasComments {
		margin-bottom: 0;
	}

	.noTitleTable table {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 959px) {
	.noTitleTable {
		border: 10px solid #eee;
		margin-bottom: 40px;
		border-radius: 4px;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}

	.noTitleTable--hasComments {
		margin-bottom: 0;
	}

	.noTitleTable::-webkit-scrollbar {
		height: 5px;
	}

	.noTitleTable::-webkit-scrollbar-track {
		border-radius: 5px;
	}

	.noTitleTable::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}

	.noTitleTable table {
		font-size: 1.2rem;
		width: 920px;
	}

	.noTitleTable th {
		padding: 15px 5px 15px 15px;
		font-weight: bold;
	}

	.noTitleTable td {
		padding: 15px 10px;
	}
}
/* seatingPrice */
.seatingPrice {
	margin: 80px 0;
}

.seatingPrice__table {
	margin: 0 -10px;
	border-collapse: separate;
	border-spacing: 10px 0;
	table-layout: fixed;
	width: 100%;
	line-height: 1.5;
}

.seatingPrice__table th {
	background-color: #c3303c;
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	color: #fff;
	font-weight: bold;
	text-align: center;
}

.seatingPrice__table td {
	height: 51.5px;
	background-color: #f9eaeb;
	color: #000;
	font-size: 15px;
	text-align: center;
	font-weight: bold;
	border-bottom: 1px solid #fff;
}

.seatingPrice__table tr:last-child td {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.seatingPrice__table .seatingPrice__table--blasnkCell {
	background-color: #eee;
	border-bottom: none;
}

.seatingPrice__table .seatingPrice__table--borderBottom {
	border-bottom: 1px solid #fff;
}

.seatingPrice__table__rank {
	color: #c3303c;
	font-size: 14px;
	display: block;
}

.seatingPrice__table__price {
	font-size: 12px;
	font-weight: normal;
}

.seatingPrice_table_itemsHeaderSub {
	display: block;
}

@media screen and (min-width: 960px) {
	.seatingPrice {
		margin:80px 0;
	}

	.seatingPrice__table th {
		padding: 8px;
		font-size: 1.6rem;
	}

	.seatingPrice_table_itemsHeaderSub {
		font-size: 1.2rem;
	}

	.seatingPrice__table td {
		padding: 10px;
		font-size: 20px;
	}
}

@media screen and (max-width: 959px) {
	.seatingPrice {
		margin:40px 0;
	}

	.seatingPrice__tableWrap {
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}

	.seatingPrice__tableWrap::-webkit-scrollbar {
		height: 5px;
	}

	.seatingPrice__tableWrap::-webkit-scrollbar-track {
		border-radius: 5px;
	}

	.seatingPrice__tableWrap::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}

	.seatingPrice__table th {
		width: 103px;
		padding: 10px;
		font-size: 1.2rem;
	}

	.seatingPrice_table_itemsHeaderSub {
		font-size: .9rem;
	}

	.seatingPrice__table__rank {
		font-size: 1.05rem;
	}

	.seatingPrice__table__price {
		font-size: .9rem;
	}
}

/* btn
-------------------------------------------------- */
.btn__list  {
	list-style: none;
	line-height: 1.5;
}

.btn__list  li {
	position: relative;
}

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

.btn__linkArrow {
	width: 100%;
	font-weight: bold;
	border-radius: 4px;
	display: flex;
	align-items: center;
	border: solid 1px #ccc;
}

.btn--typeDefault__linkIco {
	width: 100%;
	font-weight: bold;
	border-radius: 4px;
	border: solid 1px #ccc;
	display: block;
}

.btn--typeDefault__linkIco:before {
	margin: 0 13px 0 0;
	vertical-align: top;
}

.btn--typeDefault__linkIco:hover:before {
	background-position: left bottom;
}

.btn--typeDefault__linkIco-home:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	overflow: hidden;
}

.btn__shoulderTxt {
	font-weight: bold;
	color: #c3303c;
	position: relative;
	display: inline-block;
	text-align: center;
}

.btn__shoulderTxt:before,
.btn__shoulderTxt:after {
	content: "";
	width: 16px;
	height: 24px;
	display: block;
	position: absolute;
}
.btn__shoulderTxt:before {
	background: url(/element_2017/images/bg_btn_shoulder_1.png) 0 0 no-repeat;
	left: 0;
	top: 0;
}

.btn__shoulderTxt:after {
	background: url(/element_2017/images/bg_btn_shoulder_2.png) 0 0 no-repeat;
	right: 0;
	top: 0;
}

@media screen and (min-width: 960px) {
	.btn {
		text-align: center;
	}

	.btn__list {
		margin-bottom: 44px;
		padding: 5px 0;
		display: flex;
		justify-content: center;
		text-align: center;
	}

	.btn__list li:before {
		position: absolute;
		top: 0;
		left: 0;
	}

	.btn--typeDefault li {
		margin: 0 19px;
		width: 30.8%;
	}

	.btn--typeDefault li:first-child {
		margin-left: 0;
	}

	.btn--typeDefault li:last-child {
		margin-right: 0;
	}

	.btn--hasShoulderTxt .btn__linkArrow {
		height: auto;
	}

	.btn__linkArrow {
		padding: 17px 0;
		font-size: 1.6rem;
		height: 100%;
		justify-content: center;
	}

	.btn__linkArrow:before {
		content: "";
		width: 7px;
		height: 12px;
		margin: 0 13px 0 0;
		overflow: hidden;
		background: url(/element_2017/images/arrow_middle_right_btn2.png) left top no-repeat;
		display: inline-block;
	}

	.btn__linkArrow:hover:before {
		background-position: left bottom;
	}

	.btn__linkArrow:hover {
		border: solid 1px #c3303c;
		text-decoration: none;
	}
	.btn--typeDefault__linkIco:hover {
		border: solid 1px #c3303c;
		text-decoration: none;
	}

	.btn--typeDefault__linkIco-home:before {
		background-image: url(/element_2017/images/ico_home_1.png);
		width: 24px;
		height: 20px;
	}

	.btn--typeDefault__linkIco--externallink:before {
		background: url(/element_2017/images/ico_external_1.png) no-repeat left top;
		width: 14px;
		height: 14px;
		overflow: hidden;
		content: "";
		display: inline-block;
		vertical-align: middle;
	}

	.btn__shoulderTxt {
		padding: 0 28px;
		font-size: 1.6rem;
		line-height: 24px;
	}

	.btn__shoulderTxt:before,
	.btn__shoulderTxt:after {
		width: 16px;
		height: 24px;
	}

	.btn__shoulderTxt:before {
		background: url(/element_2017/images/bg_btn_shoulder_1.png) 0 0 no-repeat;
	}

	.btn__shoulderTxt:after {
		background: url(/element_2017/images/bg_btn_shoulder_2.png) 0 0 no-repeat;
	}

	.btn--typeDefault__linkIco {
		padding: 17px 0;
	}

	.btn--typeDefault__linkIco:before {
		margin: 0 13px 0 0;
	}

	.btn--typeDefault__linkIco:hover {
		border: solid 1px #c3303c;
		text-decoration: none;
	}
}

@media screen and (max-width: 959px) {
	.btn__list  {
		margin-bottom: 16px;
		padding: 4px 0;
	}

	.btn--typeDefault {
		text-align: left;
	}

	.btn--typeDefault li {
		margin-bottom: 10px;
	}

	.btn__linkArrow {
		padding: 10px 15px;
		font-size: 1.2rem;
		position: relative;
		background: url(/element_2017/images/arrow_middle_right_btn2_sp.png) no-repeat right center /15px auto;
		text-align: left;
	}

	.btn--typeDefault__linkIco-home:before {
		background-image: url(/element_2017/images/ico_home_sp_1.png);
		background-size: 17px auto;
		width: 17px;
		height: 15px;
	}

	.btn--typeDefault__linkIco--externallink {
		background: url(/element_2017/images/ico_external_sp_1.png) no-repeat right center /26px auto;
	}

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

	.btn__shoulderTxt {
		padding: 0 15px;
		font-size: 1.2rem;
		line-height: 18px;
	}

	.btn__shoulderTxt:before,
	.btn__shoulderTxt:after {
		width: 11px;
		height: 18px;
	}

	.btn__shoulderTxt:before {
		background: url(/element_2017/images/bg_btn_shoulder_1.png) 0 0 no-repeat;
		background-size: auto 18px;
	}

	.btn__shoulderTxt:after {
		background: url(/element_2017/images/bg_btn_shoulder_2.png) 0 0 no-repeat;
		background-size: auto 18px;
	}

	.btn--hasShoulderTxt a {
		background-image: none;
		justify-content: center;
	}

	.btn--hasShoulderTxt .btn__list__inner:before {
		content: "";
		width: 15px;
		height: 15px;
		background: url(/element_2017/images/arrow_middle_right_btn2_sp.png) no-repeat left center /15px auto;
		display: inline-block;
		vertical-align: middle;
	}

	.btn--typeDefault__linkIco {
		padding: 10px 15px;
		font-size: 1.2rem;
	}

	.btn--typeDefault__linkIco:before {
		margin: 0 10px 0 0;
	}

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

	.btn--typeDefault__linkIco--externallink {
		text-align: left;
	}
}

/*btn__cv*/
.btn__cv a {
	width: 100%;
	font-weight: bold;
	border-radius: 4px;
	display: block;
	color: #fff;
}

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

.btn__cv .btn__list__inner:before {
	content: "";
	display: inline-block;
}

.btn__cv__shoulderTxt {
	font-weight: bold;
	color: #c3303c;
	position: relative;
	display: inline-block;
}

.btn__cv__shoulderTxt:before,
.btn__cv__shoulderTxt:after {
	content: "";
	display: block;
	position: absolute;
}
.btn__cv__shoulderTxt:before {
	background: url(/element_2017/images/bg_btn_shoulder_1.png) 0 0 no-repeat;
	left: 0;
	top: 0;
}

.btn__cv__shoulderTxt:after {
	background: url(/element_2017/images/bg_btn_shoulder_2.png) 0 0 no-repeat;
	right: 0;
	top: 0;
}

.btn__cv__linkIco:before {
	margin: 0 13px 0 0;
}

.btn__cv_linkIco:hover {
	text-decoration: none;
}

@media screen and (min-width: 960px) {
	.btn__cv--large {
		width: 53%;
	}

	.btn__cv--small {
		width: 31%;
	}

	.btn__cv--small a {
		padding: 16px 0;
		font-size: 1.6rem;
	}

	.btn__cv--small .btn__list__inner:before {
		margin-right: 13px;
		background: url(/element_2017/images/arrow_middle_btn_1.png) no-repeat left top;
		width: 8px;
		height: 12px;
		overflow: hidden;
	}

	.btn__cv--large a {
		padding: 16px 0;
		font-size: 2.4rem;
	}

	.btn__cv--large .btn__list__inner:before {
		margin-right: 18px;
		background: url(/element_2017/images/arrow_middle_btn_2.png) no-repeat left top;
		width: 10px;
		height: 20px;
		overflow: hidden;
	}

	.btn__cv a:hover .btn__list__inner:before {
		background-position: left bottom;
	}

	.btn__cv__linkIco--schedule .btn__list__inner:before {
		margin-right: 20px;
		background: url(/element_2017/images/ico_schedule_1.png) no-repeat left top;
		width: 44px;
		height: 28px;
		overflow: hidden;
		vertical-align: middle;
	}

	.btn__cv__shoulderTxt {
		margin-top: 6px;
		padding: 0 28px;
		font-size: 2rem;
		line-height: 24px;
	}

	.btn__cv__shoulderTxt:before,
	.btn__cv__shoulderTxt:after {
		width: 16px;
		height: 24px;
	}

}

@media screen and (max-width: 959px) {
	.btn__cv ul {
		text-align: center;
	}

	.btn__cv--small a {
		padding: 11px;
		font-size: 1.2rem;
	}

	.btn__cv--large a {
		padding: 15px;
		font-size: 1.5rem;
	}

	.btn__cv--small .btn__list__inner:before,
	.btn__cv--large .btn__list__inner:before{
		margin-right: 10px;
		background: url(/element_2017/images/arrow_middle_btn_sp_1.png) no-repeat left top /6px 10px;
		width: 6px;
		height: 10px;
		overflow: hidden;
	}

	.btn__cv__linkIco--schedule .btn__list__inner:before {
		margin-right: 10px;
		background: url(/element_2017/images/ico_schedule_sp_1.png) no-repeat left top /22px 14px;
		width: 22px;
		height: 14px;
		overflow: hidden;
		vertical-align: middle;
	}

	.btn__cv__shoulderTxt {
		margin-top: 6px;
		padding: 0 22px;
		font-size: 1.2rem;
		line-height: 18px;
	}

	.btn__cv__shoulderTxt:before,
	.btn__cv__shoulderTxt:after {
		width: 11px;
		height: 18px;
		background-size: 11px 18px;
	}
}

/*btn__cv_typeblack*/
.btn__cv--typeBlack a {
	background-color: #000;
	border: 1px solid #000;
}

/*btn__cv_typered*/
.btn__cv--typeRed a {
	background-color: #c3303c;
	border: 1px solid #c3303c;
}

/*btn__cv_typeShikiPurple*/
.btn__cv--typeShikiPurple a {
	background-color: #726b9c;
	border: 1px solid #726b9c;
}

/*btn__cv_typeShikiYellow*/
.btn__cv--typeShikiYellow a {
	background-color: #bbb00d;
	border: 1px solid #bbb00d;
}

/*btn__cv_typeShikiGreen*/
.btn__cv--typeShikiGreen a {
	background-color: #329380;
	border: 1px solid #329380;
}

@media screen and (min-width: 960px) {
	.btn__cv--typeBlack a:hover,
	.btn__cv--typeRed a:hover,
	.btn__cv--typeShikiPurple a:hover,
	.btn__cv--typeShikiYellow a:hover,
	.btn__cv--typeShikiGreen a:hover {
		background-color: #fff;
		border: 1px solid #c3303c;
		color: #c3303c;
	}
}

/* intrapage_jump
-------------------------------------------------- */
ul.intrapage_jump {
	margin: 2px 0 -12px;
	display: flex;
	flex-wrap: wrap;
}
ul.intrapage_jump li {
	margin-bottom: 13px;
	font-weight: bold;
}
ul.intrapage_jump li.pc-one-column {
	width: 100%;
}
ul.intrapage_jump li.pc-two-column {
	width: 50%;
}
ul.intrapage_jump li.pc-three-column {
	width: calc(100% / 3);
}
ul.intrapage_jump a {
	text-decoration: none;
}
ul.intrapage_jump a.red {
	color: #c3303c;
}
ul.intrapage_jump a.green {
	color: #329380;
}
ul.intrapage_jump a:before {
	content: '';
	width: 14px;
	height: 13px;
	margin-top: 1px;
	margin-right: 14px;
	display: inline-block;
	background: url(/element_2017/images/intrapage_jump/PC_1.png) no-repeat;
	background-size: 14px 13px;
}
ul.intrapage_jump a:hover,
ul.intrapage_jump a.red:hover,
ul.intrapage_jump a.green:hover{
	color: #c3303c;
	text-decoration: none;
}

@media screen and (max-width: 959px) {
	ul.intrapage_jump {
		margin: 9px 0 25px;
		border: 1px solid #cccccc;
		border-radius: 8px;
	}
	ul.intrapage_jump li,
	ul.intrapage_jump li.pc-one-column,
	ul.intrapage_jump li.pc-two-column,
	ul.intrapage_jump li.pc-three-column {
		width: 100%;
		margin-bottom: 0;
	}
	ul.intrapage_jump li:not(:last-child) {
		border-bottom: 1px solid #cccccc;
	}
	ul.intrapage_jump a {
		padding: 15px 36px 15px 14px;
		background: url(/element_2017/images/intrapage_jump/SP_1.png) no-repeat;
		background-size: 14px 13px;
		background-position: center right 15px;
		display: block;
	}
	ul.intrapage_jump a:before {
		display: none;
	}
}

/* expand
-------------------------------------------------- */
.expand {
	margin-bottom: 9px;
}
.expand dl {
	border: 1px solid #ccc;
	border-radius: 4px;
	margin-bottom: 19px;
}
.expand dt {
	padding: 11px 10px 12px;
	cursor: pointer;
	font-weight: bold;
	text-align: center;
}
.expand dt.red {
	color: #c3303c;
}
.expand dt.green {
	color: #329380;
}
.expand dt:hover {
	color: #c3303c;
	text-decoration: none;
}
.expand dt span:before {
	content: '';
	width: 13px;
	height: 7px;
	margin-right: 12px;
	background: url(/element_2017/images/intrapage_jump/PC_2.png) no-repeat;
	background-size: 13px 14px;
	background-position: top center;
	display: inline-block;
}
.expand dt:hover span:before {
	background-image: url(/element_2017/images/intrapage_jump/PC_2_on.png);
	background-size: 13px 14px;
}
.expand dt.open span:before {
	background-position: bottom center;
}
.expand dd {
	padding: 32px 40px 18px;
	display: none;
	border-top: 1px solid #ccc;
}
@media screen and (max-width: 959px) {
	.expand {
		margin-top: 6px;
		margin-bottom: 17px;
	}
	.expand dt {
		padding: 7px 10px;
	}
	.expand dl {
		margin-bottom: 11px;
	}
	.expand dt span:before,
	.expand dt:hover span:before {
		content: '';
		width: 9.5px;
		height: 5.5px;
		background: url(/element_2017/images/intrapage_jump/SP_2.png) no-repeat;
		background-size: 9.5px 11px;
		background-position: top center;
		color: #000;
	}
	.expand dt.open span:before {
		background-position: bottom center;
	}
	.expand dd {
		padding: 16px 10px 5.5px;
	}
}

/* twoColumns
-------------------------------------------------- */
.twoColumnsBlock {
	display: flex;
	justify-content: space-between;
}

.twoColumns__body {
	width: 47%;
}

.twoColumnsSpOneColumnBlock {
	display: flex;
}

@media screen and (min-width: 960px) {
	.twoColumnsSpOneColumnBlock {
		justify-content: space-between;
	}
	.twoColumnsSpOneColumn__body {
		width: 47%;
	}
}

@media screen and (max-width: 959px) {
	.twoColumnsSpOneColumnBlock {
		flex-wrap: wrap;
	}
	.twoColumnsSpOneColumn__body {
		width: 100%;
	}
}

/* threeColumnsBlock
-------------------------------------------------- */
.threeColumnsBlock {
	display: flex;
}

@media screen and (min-width: 960px) {
	.threeColumnsBlock {
		justify-content: space-between;
	}
	.threeColumns__body {
		width: 29.4%;
	}
}

@media screen and (max-width: 959px) {
	.threeColumnsBlock {
		flex-wrap: wrap;
	}
	.threeColumns__body {
		width: 100%;
	}
}

/* fourColumnsBlock
-------------------------------------------------- */
.fourColumnsBlock {
	display: flex;
	justify-content: space-between;
}

@media screen and (min-width: 960px) {
	.fourColumns__body {
		width: 20.5%;
	}
}

@media screen and (max-width: 959px) {
	.fourColumnsBlock {
		flex-wrap: wrap;
	}
	.fourColumns__body {
		width: 47%;
	}
}

/* backToTopBtn
-------------------------------------------------- */
.backToTopBtn {
	display: flex;
	justify-content: center;
	line-height: 1.5;
}
.backToTopBtn__linkArrow--inverted {
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: solid 1px #ccc;
	font-weight: bold;
	height: 100%;
}
.backToTopBtn__linkArrow--inverted:before {
	content: "";
	overflow: hidden;
	display: inline-block;
}
@media screen and (min-width: 959px) {
	.backToTopBtn {
		margin: 100px 0 60px;
	}
	.backToTopBtn__linkArrow--inverted {
		padding: 17px 0;
		font-size: 1.6rem;
		width: 30.5%;
	}
	.backToTopBtn__linkArrow--inverted:before {
		width: 7px;
		height: 12px;
		margin: 0 13px 0 0;
		overflow: hidden;
		background: url( /element_2017/images/arrow_middle_left_btn2.png ) left top no-repeat;
	}
	.backToTopBtn__linkArrow--inverted:hover:before {
		background-position: left bottom;
	}
	.backToTopBtn__linkArrow--inverted:hover {
		border: solid 1px #c3303c;
		text-decoration: none;
	}
}
@media screen and (max-width: 959px) {
	.backToTopBtn {
		width: 100%;
		padding: 0 10px;
		margin: 50px 0;
	}
	.backToTopBtn .backToTopBtn__linkArrow--inverted {
		width: 100%;
		padding: 10px 15px;
		font-size: 1.2rem;
		position: relative;
		text-align: center;
		display: flex;
		justify-content: center;
		background: none;
	}
	.backToTopBtn .backToTopBtn__linkArrow--inverted::before {
		background: url( /element_2017/images/arrow_middle_right_btn2_sp.png ) no-repeat left center /15px auto;
		width: 7px;
		height: 10px;
		-webkit-transform: scale( -1, 1 );
		transform: scale( -1, 1 );
	}
	.backToTopBtn .backToTopBtn__linkArrow--inverted .btn__list__inner {
		display: inline-block;
		padding-left: 10px;
	}
	.backToTopBtn__innerText {
		padding-left: 10px;
	}
}
/* snsList
-------------------------------------------------- */

.snsList {
	margin: 100px 0 93px;
	text-align: center;
}
.snsList > li {
	margin: 0 30px;
	font-size: 14px;
	font-size: 1.4rem;
	display: inline-block;
}

.snsList > li .iconSns {
	margin: 0 auto 12px;
}

.snsList > li a {
	display: inline-block;
}

.snsList > li a:hover {
	text-decoration: none;
}

.snsList > li.instagram {
	width: 100%;
	margin: 0;
	text-align: center;
	display: block;
}

.snsList > li.instagram .iconSns {
	margin: 0 auto 16px;
}

@media screen and (max-width: 959px) {
	.snsList {
		margin: 50px 0 37px;
	}
	.snsList > li {
		margin: 0 17.5px;
		font-size: 10px;
		font-size: 1.0rem;
	}
	.snsList > li .iconSns {
		margin: 0 auto 7px;
	}
	.snsList > li.instagram .iconSns {
		margin: 0 auto 6px;
	}
}

/* iconSns
-------------------------------------------------- */

.iconSns {
	width: 64px;
	height: 64px;
	background: url(/element_2017/images/sns_icon.png) no-repeat;
	display: block;
	overflow: hidden;
}
.iconSns.instagram {
	background-position: 0 0;
}
.iconSns.twitter {
	background-position: 0 -402px;
}
.iconSns.line {
	background-position: 0 -268px;
}
.iconSns.youtube {
	background-position: 0 -134px;
}
.iconSns.facebook {
	background: url(/element_2017/images/ico_sns_facebook.png) no-repeat;
}
a:hover .iconSns.instagram {
	background-position: 0 -536px;
}
a:hover .iconSns.twitter {
	background-position: 0 -938px;
}
a:hover .iconSns.line {
	background-position: 0 -804px;
}
a:hover .iconSns.youtube {
	background-position: 0 -670px;
}
a:hover .iconSns.facebook {
	opacity: 0.6;
}

@media screen and (max-width: 959px) {
	.iconSns {
		width: 32px;
		height: 32px;
		background: url(/element_2017/images/sns_icon.png) no-repeat;
		background-size: 32px auto;
	}
	.iconSns.instagram, a:hover .iconSns.instagram {
		background-position: 0 0;
	}
	.iconSns.twitter, a:hover .iconSns.twitter {
		background-position: 0 -201px;
	}
	.iconSns.line, a:hover .iconSns.line {
		background-position: 0 -134px;
	}
	.iconSns.youtube, a:hover .iconSns.youtube {
		background-position: 0 -67px;
	}
	.iconSns.facebook {
		background: url(/element_2017/images/ico_sns_facebook.png) center / 32px auto no-repeat;
	}
}

/* popupBox
-------------------------------------------------- */
.popupBox {
	position: fixed;
	bottom: 0;
}
.popupBoxBody {
	width: 100%;
	position: relative;
}
@media screen and (min-width: 960px) {
	.popupBox {
		width: 348px;
		right: 30px;
		z-index: 999;
	}
}

@media screen and (max-width: 959px) {
	.popupBox {
		width: 261px;
		right: 10px;
		z-index: 1000;
	}
}

/* pageTop
-------------------------------------------------- */
.popupPageTop {
	position: absolute;
	right: 0;
	z-index: 1;
}

@media screen and (min-width: 960px) {
	.popupPageTop {
		display: none;
		bottom: 20px;
		width: 47px;
		height: 47px;
	}

	.popupPageTop a {
		width: 47px;
		height: 47px;
		text-indent: -100px;
		display: block;
		overflow: hidden;
		position: relative;
	}

	.popupPageTop a:after {
		content: '';
		width: 47px;
		height: 94px;
		background: url(/toppage/images/pc_popup_pagetop_1.png) no-repeat;
		position: absolute;
		top: 0;
		left: 0;
	}

	.popupPageTop a:hover:after {
		top: -47px;
	}
}

@media screen and (max-width: 959px) {
	.popupPageTop {
		display: none;
		bottom: 30px;
		width: 35px;
		height: 35px;
	}

	.popupPageTop a {
		width: 35px;
		height: 35px;
		text-indent: -70px;
		display: block;
		overflow: hidden;
		background: url(/toppage/images/sp_popup_pagetop_1.png) no-repeat;
		background-size: 35px 35px;
	}
}

.footerpageTop {
	padding: 0;
	margin: 0;
	border-top: 1px solid #cccccc;
}

.footerpageTop a {
	width: 100%;
	padding: 52px 0 13px;
	font-size: 10px;
	font-size: 1rem;
	color: #000000;
	text-align: center;
	display: block;
	background: url(/toppage/images/btn_pagetop_1.png) center 23px no-repeat;
}

.footerpageTop a:hover {
	color: #c3303c;
	text-decoration: none;
	background: #f3dddf url(/toppage/images/btn_pagetop_1_hover.png) center 23px no-repeat;
}

@media screen and (max-width: 959px) {
	.footerpageTop {
		padding: 0;
		margin: 0;
		border-top: 1px solid #cccccc;
	}

	.footerpageTop a,
	.footerpageTop a:hover {
		padding: 27px 0 6px;
		font-size: 10px;
		font-size: 1.0rem;
		color: #000000;
		background: url(/toppage/images/btn_pagetop_1.png) center 12px no-repeat;
		background-size: auto 9px;
	}
}

/* footer
-------------------------------------------------- */

#footer {
	width: 100%;
	background: #eee;
}

.footerBody {
	width: 1216px;
	max-width: 100%;
	margin: 0 auto;
	padding: 21px 0;
}

.footerBody ul {
	text-align: center;
}

.footerBody ul li {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 2;
	display: inline-block;
}

.footerBody ul li::after {
	content: "I";
	color: #ccc;
	padding: 0 1em;
}

.footerBody ul li:last-child::after {
	display: none;
}

.footerBody li a {
	font-weight: normal;
}

.copyright {
	max-width: 100%;
	padding: 16px 0 18px;
	text-align: center;
	border-top: 1px solid #ddd;
}

.copyright p {
	font-size: 12px;
	font-size: 1.2rem;
	margin: 0 auto;
}
.copyright .copyrightBlock {
	width: 1216px;
	max-width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 959px) {
	#footer {
		width: 100%;
		background: #fff;
	}

	.footerBody {
		padding: 30px 10px;
		background: #eee;
	}

	.footerBody ul {
		width: 100%;
		border-left: 1px solid #ccc;
		box-sizing: border-box;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 0;
	}

	.footerBody ul:nth-child(1) {
		border-top: 1px solid #ccc;
	}

	.footerBody ul li {
		width: 50%;
		font-size: 11px;
		font-size: 1.1rem;
		line-height: 1.4;
		border-bottom: 1px solid #ccc;
		border-right: 1px solid #ccc;
		box-sizing: border-box;
	}

	.footerBody ul li::after {
		content: "";
		display: none;
	}

	.footerBody ul li a {
		width: 100%;
		height: 100%;
		padding: 14px 0 15px 10px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		text-align: left;
		background: url(/toppage/images/arrow_middle_right_2.png) center right no-repeat;
		background-size: 15px auto;
	}

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

	.copyright {
		padding: 18px 0;
		border-top: 0;
	}

	.copyright p {
		font-size: 10px;
		font-size: 1.0rem;
	}
}

/* clearfix
-------------------------------------------------- */

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}
