html {
	font-size: 62.5%;
}

body {
	background: #000;
	color: #fff;
	font-size: 1.5rem;
	line-height: 1.8em;
	font-family: "noto-sans-cjk-jp","Yu Mincho","游明朝","YuMincho","游明朝体","Noto Sans JP","メイリオ",Meiryo,sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	font-feature-settings: "palt" 1;
	-webkit-font-smoothing: antialiased;
}

body.is-fixed {
	overflow: hidden;
}

a {
	color: #11173e;
	text-decoration: underline;
	transition: all .15s;
}

a:hover,
a:active {
	opacity: .7;
}

h1,
h2,
h3,
h4,
p,
dl,
dt,
dd,
strong,
em {
	margin: 0;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	font-style: inherit;
}

ul,
ol,
dl,
dt,
dd {
	list-style: none;
	margin: 0;
	padding: 0;
}

li {
	list-style: inherit;
	margin: 0;
	padding: 0;
}

img {
	outline: none;
	max-width: 100%;
	font-size: 1px !important;
	line-height: 0 !important;
	vertical-align: middle;
}

strong,
em {
	font-weight: inherit;
	font-style: inherit;
}

hr {
	margin: 1em 0;
	border-width: 1px 0 0;
	border-style: dashed;
	border-color: #11173e;
	width: 100%;
	height: 0;
}

rt {
	position: absolute;
	transform: translateY(0.2em);
}

[data-ruby] {
	display: inline-block;
	position: relative;
}

[data-ruby]:before {
	content: attr(data-ruby);
	position: absolute;
	top: .5em;
	left: -10%;
	right: 0;
	z-index: 1;
	margin: auto;
	width: 120%;
	font-size: .5em;
	line-height: 1em;
	text-align: center;
	white-space: nowrap;
}

[data-ruby] rt {
	display: none;
}

.emColor01 {
	color: #11173e;
}

.noteColor {
	color: #e6e6e6;
}

.bold {
	font-weight: 700 !important;
}

.noraml {
	font-weight: 400 !important;
}

.fsS {
	font-size: .85em !important;
	line-height: 1.8em;
}

.fsL {
	font-size: 1.7em !important;
	line-height: 1.8em;
}

a.url {
	display: inline-block;
	letter-spacing: .05em;
	word-wrap: break-word;
	overflow-wrap: break-word;
	word-break: break-all;
	vertical-align: baseline;
}

img.border {
	box-sizing: border-box;
	border: 1px solid #11173e;
}

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

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

.left {
	text-align: left !important;
}

.dis {
	text-decoration: line-through;
}

.brace {
	text-indent: -0.45em;
}

.wbreak {
	word-wrap: break-word;
	overflow-wrap: break-word;
	word-break: break-all;
}

.iblock {
	display: inline-block;
	vertical-align: baseline;
}

.mgtQp {
	margin-top: 7.2px !important;
}

.mgtTp {
	margin-top: 9.6px !important;
}

.mgtHp {
	margin-top: 15.4px !important;
}

.mgt1p {
	margin-top: 28.8px !important;
}

.mgt1Hp {
	margin-top: 43.2px !important;
}

.mgt2p {
	margin-top: 57.6px !important;
}

.mgt2Hp {
	margin-top: 72px !important;
}

.mgt3p {
	margin-top: 86.4px !important;
}

.mgbQp {
	margin-bottom: 7.2px !important;
}

.mgbTp {
	margin-bottom: 9.6px !important;
}

.mgbHp {
	margin-bottom: 14.4px !important;
}

.mgb1p {
	margin-bottom: 28.8px !important;
}

.mgb1Hp {
	margin-bottom: 43.2px !important;
}

.mgb2p {
	margin-bottom: 57.6px !important;
}

.mgb2Hp {
	margin-bottom: 72px !important;
}

.mgb3p {
	margin-bottom: 86.4px !important;
}

.w1 {
	width: 1em !important;
}

.w2 {
	width: 2em !important;
}

.w3 {
	width: 3em !important;
}

.w4 {
	width: 4em !important;
}

.w5 {
	width: 5em !important;
}

.w6 {
	width: 6em !important;
}

.w7 {
	width: 7em !important;
}

.w8 {
	width: 8em !important;
}

.w9 {
	width: 9em !important;
}

.w10 {
	width: 10em !important;
}

.w11 {
	width: 11em !important;
}

.w12 {
	width: 12em !important;
}

.w13 {
	width: 13em !important;
}

.w14 {
	width: 14em !important;
}

.w15 {
	width: 15em !important;
}

.w16 {
	width: 16em !important;
}

.w17 {
	width: 17em !important;
}

.w18 {
	width: 18em !important;
}

.w19 {
	width: 19em !important;
}

.w20 {
	width: 20em !important;
}

.w21 {
	width: 21em !important;
}

.w22 {
	width: 22em !important;
}

.w23 {
	width: 23em !important;
}

.w24 {
	width: 24em !important;
}

.w25 {
	width: 25em !important;
}

.w26 {
	width: 26em !important;
}

.w27 {
	width: 27em !important;
}

.w28 {
	width: 28em !important;
}

.w29 {
	width: 29em !important;
}

.w30 {
	width: 30em !important;
}

.button {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	background-color: #fff;
	border: #11173e solid 2px;
	padding: 0 50px;
	width: 100%;
	max-width: 462px;
	height: 104px;
	color: #11173e;
	font-size: 2.6rem;
	letter-spacing: .1em;
	font-weight: 700;
	line-height: 1.4em;
	text-align: center;
	cursor: pointer;
	transition: all .15s;
	text-decoration: none;
}

.button::before,
.button::after {
	content: "";
	display: block;
	position: absolute;
	transition: all .15s;
}

.button::before {
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
	width: 18px;
	height: 18px;
	background-size: 100%;
	background-position: top left;
	background-repeat: no-repeat;
	background-image: url(../img/btn_ico_blank.png);
	z-index: 2;
}

.button::after {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #11173e;
	transform: scale(0, 1);
	transform-origin: left top;
	z-index: 1;
}

.button.off {
	opacity: .6;
	pointer-events: none;
}

.button:not(.off) {
	cursor: pointer;
}

.button:not(.off):hover {
	color: #fff;
	opacity: 1;
}

.button:not(.off):hover::before {
	filter: brightness(0) invert(1);
}

.button:not(.off):hover::after {
	transform: scale(1, 1);
}

.button .btn_txt {
	font-size: 1em !important;
	z-index: 3;
}

.buttonWrapper {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 0 auto;
	width: 100%;
	max-width: 1180px;
}

.buttonWrapper>li {
	width: 100%;
}

.buttonWrapper.c2>li {
	margin-right: 40px;
	width: calc((100% - 40px)/2);
}

.buttonWrapper.c2>li:nth-of-type(2) {
	margin-right: 0;
}

.buttonWrapper.c3>li {
	margin-right: 30px;
	width: calc((100% - 60px)/3);
}

.buttonWrapper.c3>li:nth-of-type(3) {
	margin-right: 0;
}

.buttonWrapper .button {
	display: flex;
}

table.def {
	border-bottom: 1px solid #353535;
	width: 100%;
	text-align: left;
}

table.def th,
table.def td {
	border-top: 1px solid #353535;
	padding: 20px 0;
	line-height: 2.6em;
	font-weight: 400;
	box-sizing: border-box;
}

table.def th {
	color: #fff;
	font-size: 1.2em;
	line-height: 1.7em;
	letter-spacing: .1em;
	vertical-align: top;
	min-width: 160px;
}

table.def th .head {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #11173e;
	min-width: 120px;
	width: -moz-fit-content;
	width: fit-content;
	height: 40px;
	box-sizing: border-box;
	padding: 3px 10px;
	text-align: center;
	position: relative;
}

table.def td {
	position: relative;
	padding-left: 14px;
}

table.def td p,
table.def td span {
	font-size: 1.2em;
	letter-spacing: .05em;
}

table.def td section {
	box-sizing: border-box;
}

table.def td section:not(:first-child) {
	padding-top: 21px;
	border-top: #353535 solid 1px;
}

table.def .fsL {
	font-size: 1.4em !important;
	letter-spacing: .09em;
	margin-bottom: 7px;
}

table.def ul {
	font-size: 1em;
	line-height: 1.8em;
	letter-spacing: .045em;
}

table.def ul.def>li:not(:first-child) {
	margin-top: .7em;
}

table.def .flex {
	display: flex;
}

ul.def {
	font-size: inherit;
	line-height: 1.6em;
	letter-spacing: .04em;
	text-align: left;
}

ul.def>li {
	position: relative;
	z-index: 1;
	padding-left: 1em;
}

ul.def>li::before {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}

ul.def>li:not(:first-child) {
	margin-top: .15em;
}

ul.def.disc>li::before {
	content: "・";
}

ul.def.asta>li::before {
	content: "※";
}

ul.def.circle>li::before {
	content: "";
	margin: .45em .15em 0 .15em;
	border-radius: 100%;
	width: .6em;
	height: .6em;
	background: #11173e;
}

ul.def.ex>li {
	padding-left: 2.4em;
}

ul.def.ex>li::before {
	content: "（例）";
}

ul.rp {
	font-size: inherit;
	line-height: 1.6em;
	text-align: center;
}

ul.rp>li {
	position: relative;
	z-index: 1;
}

ul.rp>li::before {
	display: inline-block;
	position: relative;
	left: 0;
	top: 0;
	z-index: -1;
	vertical-align: baseline;
}

ul.rp.disc>li::before {
	content: "・";
}

ul.rp.asta>li::before {
	content: "※";
}

ul.rp.circle>li::before {
	content: "";
	margin-right: .15em;
	border-radius: 100%;
	width: .6em;
	height: .6em;
	background: #11173e;
}

ul.rp.ex>li::before {
	content: "（例）";
}

dl.def {
	border-width: 1px 0;
	border-style: solid;
	border-color: #353535;
	padding: 30px 0;
	text-align: left;
}

dl.def>dt {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #11173e;
	width: -moz-fit-content;
	width: fit-content;
	height: 60px;
	color: #fff;
	font-size: 2em;
	line-height: 1em;
	letter-spacing: .06em;
	margin: 0 auto 18px;
	box-sizing: border-box;
	padding: 3px 20px;
	text-align: center;
	position: relative;
}

dl.def>dd {
	font-size: 1.3em;
	line-height: 2.1em;
	letter-spacing: 0;
	text-align: center;
}

dl.def>dd:not(:last-child) {
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-width: 0 0 1px;
	border-style: solid;
	border-color: #353535;
}

.message {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	background: #fff;
	color: #e6e6e6;
}

.message::after {
	content: "NOW PRINTING";
	font-size: 2.4rem;
	line-height: 1.2em;
	font-family: pf-fuel-decay,sans-serif;
	font-weight: 400;
	font-style: normal;
}

.picBox {
	background: #fff;
}

.picBox>div {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	position: relative;
	z-index: 1;
	padding: 30px;
	text-align: center;
}

.picBox>div::before {
	content: "";
	position: absolute;
	left: 30px;
	top: 0;
	width: calc(100% - 60px);
	border-top: 2px dashed #ccc;
}

.picBox>div:first-child::before {
	border-top: none;
}

.picBox>div.np {
	min-height: 300px;
}

.picBox>div>div {
	vertical-align: middle;
}

.picBox>div>div.f {
	flex-basis: 100%;
}

.picBox>div>div.h {
	flex-basis: 50%;
}

.picBox>div>div.t {
	flex-basis: 33.3%;
}

.picBox>div>div.q {
	flex-basis: 25%;
}

.borderBox {
	border: 1px solid #e6e6e6;
	padding: 20px 30px;
	background: hsla(0,0%,100%,.1);
	text-align: left;
}

.borderBox.fsS {
	padding: 15px 25px;
}

.borderBox.cl01 {
	border-color: #11173e;
}

.borderBox.cl02 {
	border-color: #11173e;
}

.normal-slider,
.modal-slider {
	overflow: hidden;
	box-sizing: border-box;
	background: #fff;
}

.normal-slider .slick-dots,
.modal-slider .slick-dots {
	position: absolute;
	left: 0;
	bottom: 14px;
	z-index: 100;
	width: 100%;
	line-height: 0;
	text-align: center;
}

.normal-slider .slick-dots>li,
.modal-slider .slick-dots>li {
	display: inline-block;
	margin: 0 3px;
}

.normal-slider .slick-dots>li>button,
.modal-slider .slick-dots>li>button {
	opacity: .3;
	overflow: hidden;
	outline: none;
	border: none;
	border-radius: 50%;
	padding: 0;
	width: 10px;
	height: 10px;
	background: #11173e;
	font-size: 1px;
	text-indent: -9999px;
	transition: opacity .4s;
}

.normal-slider .slick-dots>li>button:hover,
.modal-slider .slick-dots>li>button:hover {
	opacity: 1;
}

.normal-slider .slick-dots>li.slick-active>button,
.modal-slider .slick-dots>li.slick-active>button {
	opacity: 1;
}

#Cover {
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 52000;
	width: 100%;
	height: 100%;
}

#Cover::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-image: url(../img/noise.gif);
	background-position: top left;
	background-repeat: repeat;
	opacity: .3;
	filter: blur(0);
	transition: all .6s ease-out;
}

#Cover::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -2;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 1;
	filter: blur(0);
	transition: all .6s ease-out;
}

#Cover img {
	opacity: 1;
	filter: blur(0);
	transition: all .6s ease-out;
}

#Cover.out::before,
#Cover.out::after {
	opacity: 0;
	filter: blur(8px);
}

#Cover.out img {
	opacity: 0;
	filter: blur(8px);
}

#Wrap>header {
	box-sizing: border-box;
	height: 0;
	background: #11173e;
}

#Wrap>header.show>nav {
	opacity: 1;
	z-index: 50020;
}

#Wrap>header.show .menu_trigger span:nth-of-type(1) {
	transform: translateY(4px) rotate(45deg);
}

#Wrap>header.show .menu_trigger span:nth-child(2) {
	opacity: 0;
}

#Wrap>header.show .menu_trigger span:nth-child(3) {
	transform: translateY(-4px) rotate(-45deg);
}

#Wrap>header .menu_btn {
	background-color: rgba(0,0,0,0);
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	text-align: center;
	position: fixed;
	left: 40px;
	top: 40px;
	z-index: 50100;
}

#Wrap>header .menu_inner {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 140px;
	height: 40px;
	box-sizing: border-box;
	border: #fff solid 2px;
	background: rgba(0,0,0,.8);
	position: relative;
	z-index: 2;
	transition: opacity .3s;
}

#Wrap>header .menu_inner:hover {
	opacity: .7;
}

#Wrap>header .menu_trigger {
	position: relative;
	width: 10px;
	height: 10px;
	display: inline-block;
	transition: .4s;
	box-sizing: border-box;
	margin-right: 30px;
}

#Wrap>header .menu_trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #fff;
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}

#Wrap>header .menu_trigger span:nth-of-type(1) {
	top: 0;
}

#Wrap>header .menu_trigger span:nth-child(2) {
	top: 44%;
}

#Wrap>header .menu_trigger span:nth-child(3) {
	bottom: 0;
}

#Wrap>header .menu_txt {
	font-size: 1.4em;
	line-height: 1em;
	font-family: "din-1451-lt-pro-engschrift",sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: .03em;
	color: #fff;
	position: relative;
	top: 1px;
}

#Wrap>header>nav {
	box-sizing: border-box;
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	max-height: 100vh;
	background: rgba(230,230,230,.95);
	background-image: url(../img/bg_pattern_noise.png);
	background-size: 360px 360px;
	background-position: top left;
	background-repeat: repeat;
	opacity: 0;
	overflow: hidden;
	padding: 0 60px;
}

#Wrap>header>nav::before,
#Wrap>header>nav::after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100px;
	opacity: 1;
	z-index: -1;
	transform: rotate(-20deg);
	background: url(../img/tape_black.jpg) 0 50% repeat-x;
	animation: obiAnime 12s linear infinite;
}

#Wrap>header>nav::before {
	top: -96px;
	left: -100px;
}

#Wrap>header>nav::after {
	bottom: -198px;
	right: -100px;
	background-position: 0 70%;
}

#Wrap>header>nav>ul {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-flow: column;
	grid-template-rows: repeat(4, auto);
	gap: 12px 80px;
	padding: 190px 0 120px;
	width: -moz-fit-content;
	width: fit-content;
	height: 100%;
	margin: 0 auto;
	overflow: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

#Wrap>header>nav>ul::-webkit-scrollbar {
	display: none;
}

#Wrap>header>nav>ul>li {
	font-size: 6.4em;
	line-height: 1em;
	font-family: pf-fuel-decay,sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0;
	text-align: left;
	transition: all .15s;
	width: -moz-fit-content;
	width: fit-content;
	height: -moz-fit-content;
	height: fit-content;
}

#Wrap>header>nav>ul>li>a,
#Wrap>header>nav>ul>li>span {
	box-sizing: border-box;
	opacity: 1;
	display: inline-block;
	position: relative;
	z-index: 1;
	color: #000;
	text-decoration: none;
	padding-left: 36px;
}

#Wrap>header>nav>ul>li>a::before,
#Wrap>header>nav>ul>li>span::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 10px;
	height: 6px;
	background-color: #000;
	transition: all .15s;
}

#Wrap>header>nav>ul>li.cur>a::before,
#Wrap>header>nav>ul>li:not(.cur)>a:hover::before {
	width: calc(100% + 42px);
}

#Wrap>header>nav>ul>li>span {
	opacity: .4;
}

#Wrap>footer {
	box-sizing: border-box;
	position: relative;
	z-index: 1000;
	padding: 60px 0;
	position: relative;
	text-align: center;
	background: #11173e;
	color: #fff;
	text-align: center;
}

#Wrap>footer .share {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
}

#Wrap>footer .share>dt {
	font-size: 1.4em;
	line-height: 1em;
	font-family: "din-1451-lt-pro-engschrift",sans-serif;
	font-weight: 400;
	font-style: normal;
}

#Wrap>footer .share>dd .bro-snsbox>div>div {
	margin: 0 0 0 20px;
}

#Wrap>footer .share>dd .bro-snsbox.bro-circle-view>div>div {
	width: 50px !important;
}

#Wrap>footer .share>dd a {
	transition: opacity .3s;
}

#Wrap>footer .share>dd a:hover {
	opacity: .7;
}

#Wrap>footer .banners {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	margin: 44px 0 35px;
	text-align: center;
}

#Wrap>footer .banners>li {
	margin: 0 10px;
	width: 304px;
}

#Wrap>footer .banners a {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	background-color: #fff;
	border: #11173e solid 2px;
	box-sizing: border-box;
	padding: 0 10px;
	width: 100%;
	max-width: 462px;
	height: 82px;
	color: #11173e;
	font-size: 2.6rem;
	letter-spacing: .1em;
	font-weight: 700;
	line-height: 1.4em;
	text-align: center;
	cursor: pointer;
	transition: all .15s;
	text-decoration: none;
}

#Wrap>footer .banners a::before,
#Wrap>footer .banners a::after {
	content: "";
	display: block;
	position: absolute;
	transition: all .15s;
}

#Wrap>footer .banners a::before {
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	background-size: 100%;
	background-position: top left;
	background-repeat: no-repeat;
	background-image: url(../img/btn_ico_blank.png);
	z-index: 2;
}

#Wrap>footer .banners a::after {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #11173e;
	transform: scale(0, 1);
	transform-origin: left top;
	z-index: 1;
}

#Wrap>footer .banners a.off {
	opacity: .6;
	pointer-events: none;
}

#Wrap>footer .banners a:not(.off) {
	cursor: pointer;
}

#Wrap>footer .banners a:not(.off):hover {
	color: #fff;
	border-color: #fff;
	opacity: 1;
}

#Wrap>footer .banners a:not(.off):hover::before {
	filter: brightness(0) invert(1);
}

#Wrap>footer .banners a:not(.off):hover::after {
	transform: scale(1, 1);
}

#Wrap>footer .banners a:not(.off):hover img {
	filter: brightness(0) invert(1);
}

#Wrap>footer .banners a img {
	width: auto;
	height: 44px;
	position: relative;
	z-index: 3;
	transition: all .15s;
}

#Wrap>footer .caution {
	margin-bottom: 2px;
	font-size: .85em;
	line-height: 1.4em;
	letter-spacing: .03em;
}

#Wrap>footer .copy {
	font-size: .7em;
	line-height: 1.8em;
	letter-spacing: .17em;
	text-indent: .17em;
}

#Wrap {
	position: relative;
	z-index: 10000;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 11px;
}

#Container {
	position: relative;
	z-index: 100;
}

#Container>section {
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	padding: 95px 60px;
	overflow: hidden;
}

#Container>section._tex {
	background-image: url(../img/bg_pattern_texture.png);
	background-size: 1000px 1012px;
	background-position: top left;
	background-repeat: repeat;
	color: #000;
}

#Container>section._gray {
	background-color: #e6e6e6;
	color: #000;
}

#Container>section>article {
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	margin: 0 auto;
	width: 100%;
	max-width: 1100px;
}

.g-flame {
	display: block;
	position: fixed;
	pointer-events: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	box-sizing: border-box;
	border: #000 solid 11px;
	border-radius: 10px;
	z-index: 60000;
}

.g-flame::before,
.g-flame::after {
	content: "";
	display: block;
	position: fixed;
	pointer-events: none;
}

.g-flame::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/frame_corner_lt.png),url(../img/frame_corner_rt.png),url(../img/frame_corner_rb.png),url(../img/frame_corner_lb.png);
	background-size: 40px 40px,40px 40px,40px 40px,40px 40px;
	background-position: left top,right top,right bottom,left bottom;
	background-repeat: no-repeat,no-repeat,no-repeat;
	z-index: 3;
}

.g-flame::after {
	top: 11px;
	left: 11px;
	width: calc(100% - 22px);
	height: calc(100vh - 22px);
	box-sizing: border-box;
	border: #fff solid 1px;
	border-radius: 10px;
	z-index: 2;
}

.g-bg {
	z-index: -1;
	pointer-events: none;
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	transition: all .4s;
}

.g-bg.is-blur {
	filter: blur(8px);
}

.g-bg::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: .9;
	background-color: #000;
	z-index: 1;
}

.g-bg__column {
	width: 100%;
	height: auto;
	display: flex;
	gap: 20px;
}

.g-bg__img {
	position: relative;
	width: 400px;
	height: auto;
	flex-shrink: 0;
	transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.g-bg__img:nth-child(4n+2) {
	top: -400px;
}

.g-bg__img:nth-child(4n+3) {
	top: -800px;
}

.g-bg__img:nth-child(4n+4) {
	top: -1200px;
}

.scrollShowTarget {
	opacity: 0;
	transition: all .8s ease-out;
}

.scrollShowTarget.scrollShow {
	opacity: 1;
}

.h01 {
	position: relative;
	overflow: hidden;
	width: -moz-fit-content;
	width: fit-content;
	padding: 10px 20px;
	margin: 0 auto 70px;
	transition: none;
}

.h01::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transition: all .4s ease;
	transform-origin: top left;
	background-color: #11173e;
}

.h01.scrollShowTarget.scrollShow::before {
	transform: scale(1, 1);
}

.h01.scrollShowTarget.scrollShow .main {
	opacity: 1;
}

.h01 .main {
	position: relative;
	font-family: pf-fuel-decay,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 12rem;
	line-height: 1;
	letter-spacing: -0.05em;
	color: #fff;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	z-index: 1;
	opacity: 0;
	transition: opacity .5s ease-out .5s;
	transition-delay: .6s;
}

.news {
	position: relative;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: auto;
	min-height: 40px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	background: #fff;
	transition: all .4s;
}

.news:hover {
	opacity: .7;
}

.news .icon {
	display: block;
	margin-right: 16px;
	position: relative;
	width: 42px;
	height: 40px;
	background-image: url(../img/ico_info.png);
	background-size: 20px 20px;
	background-position: center center;
	background-repeat: no-repeat;
	flex-shrink: 0;
}

.news .icon::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 2px;
	height: 100%;
	background-color: #11173e;
}

.news .last {
	overflow: hidden;
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	text-align: left;
}

.news .last .date {
	margin-right: 20px;
	font-size: 1em;
	line-height: 1em;
	font-family: "noto-sans-cjk-jp","Yu Mincho","游明朝","YuMincho","游明朝体","Noto Sans JP","メイリオ",Meiryo,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-weight: 600;
	letter-spacing: .07em;
	color: #b5b5b5;
}

.news .last .data {
	overflow: hidden;
	width: 100%;
	color: #000;
	font-size: 1em;
	line-height: 1em;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.news .last .open {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	right: 10px;
	top: calc(50% - 12px);
	z-index: 10;
	border-radius: 100%;
	width: 24px;
	height: 24px;
	background: #11173e;
	line-height: 0;
	cursor: pointer;
	transition: all .15s cubic-bezier(0, 0.94, 0.68, 1.81);
}

.news .last .open:hover {
	transform: scale(1.1);
}

.news .last .open img {
	width: 6px;
}

#Main {
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
	left: 0;
	top: 0;
	z-index: 500;
	width: 100%;
	min-height: 100vh;
	padding-bottom: 118px;
}

#Main>.inner {
	display: block;
	position: relative;
	box-sizing: border-box;
	z-index: 10;
	width: 100%;
	height: 100%;
	transition: all .4s linear;
}

#Main .visual {
	position: relative;
	width: 100%;
	min-height: 100vh;
	line-height: 0;
	z-index: 1;
	transition: all .5s ease;
	box-sizing: border-box;
	padding: 40px 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

#Main .visual.is-tmb01 {
	background-image: url(../img/main_bg01_pc.jpg);
}

#Main .visual.is-tmb02 {
	background-image: url(../img/main_bg02_pc.jpg);
}

#Main .visual.is-tmb03 {
	background-image: url(../img/main_bg03_pc.jpg);
}

#Main .visual.is-tmb04 {
	background-image: url(../img/main_bg04_pc.jpg);
}

#Main .visual.is-tmb05 {
	background-image: url(../img/main_bg05_pc.jpg);
}

#Main .visual.is-tmb06 {
	background-image: url(../img/main_bg06_pc.jpg);
}

#Main .visual.is-tmb07 {
	background-image: url(../img/main_bg07_pc.jpg);
}

#Main .visual .slick-list {
	width: 55.7%;
	height: 100%;
	line-height: 0;
	margin: auto;
	margin-right: 100px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#Main .visual .visual_img {
	width: 100%;
}

#Main .visual .visual_img img {
	width: 100%;
}

#Main .tmb {
	position: absolute;
	top: 50.7%;
	right: 40px;
	width: 20px;
	height: auto;
	transform: translateY(-50%);
	line-height: 0;
	z-index: 4;
}

#Main .tmb .slick-track {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100% !important;
	transform: unset !important;
}

#Main .tmb .slick-track::before,
#Main .tmb .slick-track::after {
	display: none;
}

#Main .tmb .slick-slide {
	display: block !important;
	float: none !important;
	width: 100% !important;
	position: relative;
}

#Main .tmb .tmb_item {
	width: 20px;
	height: 20px;
	background-size: 100% 100%;
	background-position: top left;
	background-repeat: no-repeat;
	cursor: pointer;
	transition: all .3s;
}

#Main .tmb .tmb_item._tmb01 {
	background-image: url(../img/main_indicator01.jpg);
}

#Main .tmb .tmb_item._tmb02 {
	background-image: url(../img/main_indicator02.jpg);
}

#Main .tmb .tmb_item._tmb03 {
	background-image: url(../img/main_indicator03.jpg);
}

#Main .tmb .tmb_item._tmb04 {
	background-image: url(../img/main_indicator04.jpg);
}

#Main .tmb .tmb_item._tmb05 {
	background-image: url(../img/main_indicator05.jpg);
}

#Main .tmb .tmb_item._tmb06 {
	background-image: url(../img/main_indicator06.jpg);
}

#Main .tmb .tmb_item._tmb07 {
	background-image: url(../img/main_indicator07.jpg);
}

#Main .tmb .tmb_item:hover {
	opacity: .7;
}

#Main .tmb .tmb_item.slick-current {
	opacity: .7;
}

#Main .logo {
	position: absolute;
	top: 28.5%;
	left: 4.4%;
	display: block;
	width: 460px;
	z-index: 3;
}

#Main .logo img {
	width: 100%;
}

#Main .info {
	position: absolute;
	top: calc(29.5% + 340px);
	left: 5%;
	width: 440px;
	z-index: 5;
}

#Main .period {
	display: flex;
	align-items: baseline;
	justify-content: center;
	width: 100%;
	background: #11173e;
	color: #fff;
	box-sizing: border-box;
	padding: 12px 6px 3px;
}

#Main .period__txt {
	font-size: 3.8em;
	line-height: 1em;
	letter-spacing: -0.02em;
	font-family: "din-1451-lt-pro-engschrift",sans-serif;
	font-weight: 400;
	font-style: normal;
}

#Main .period__week {
	font-size: .6em;
}

#Main .period__bar {
	font-size: .6em;
	position: relative;
	top: -4px;
}

#Container>#About article .item {
	position: relative;
	margin-bottom: 40px;
}

#Container>#About article .item:last-child {
	margin-bottom: 0;
}

#Container>#About article .txt {
	display: block;
	font-size: 1.3em;
	line-height: 2.1em;
	font-weight: 400;
	letter-spacing: 0;
}

#Container>#About article .img {
	width: 260px;
	height: 460px;
	position: absolute;
	overflow: hidden;
	transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-duration: 2s;
	z-index: -1;
}

#Container>#About article .img._img01 {
	left: 88%;
	bottom: -88%;
}

#Container>#About article .img._img02 {
	right: 88%;
	bottom: -100%;
}

#Container>#About article .img img {
	width: 100%;
	position: relative;
	bottom: 15%;
}

#Container>#Outline article .h01 {
	margin-bottom: 60px;
}

#Container>#Outline article a.url {
	color: #fff;
}

#Container>#Exhibition {
	padding-bottom: 200px;
}

#Container>#Exhibition>article {
	max-width: none;
}

#Container>#Exhibition .contents {
	width: 100%;
	max-width: 1100px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0;
}

#Container>#Exhibition .contents p {
	font-size: 1.2em;
	margin-bottom: 60px;
}

#Container>#Exhibition .contents .annotation {
	position: absolute;
	font-size: .5em;
	top: 100%;
	left: 50%;
	transform: translate(-50%);
}

#Container>#Exhibition .contents dl.def>dt._ano {
	margin-bottom: 44px;
}

#Container>#Exhibition .contents ul.def {
	width: -moz-fit-content;
	width: fit-content;
	margin: 5px auto 0;
}

#Container>#Goods {
	padding-top: 200px;
	padding-bottom: 250px;
}

#Container>#Goods article .lineup {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	margin-bottom: 54px;
	position: relative;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	text-align: left;
	overflow: hidden;
}

#Container>#Goods article .lineup>section {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	padding: 31px 26px 24px;
	width: 100%;
	background-color: #e6e6e6;
	color: #000;
	transition: all .4s;
}

#Container>#Goods article .lineup>section:hover {
	opacity: .7;
}

#Container>#Goods article .lineup .pic {
	margin-bottom: 30px;
}

#Container>#Goods article .lineup .pic .np {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 280px;
	background: #eee;
}

#Container>#Goods article .lineup .pic .np::before {
	content: "Now Printing";
	opacity: .1;
	font-size: 1.4em;
	line-height: 1em;
	font-family: pf-fuel-decay,sans-serif;
	font-weight: 400;
	font-style: normal;
}

#Container>#Goods article .lineup .name {
	font-size: 1.2em;
	font-weight: 400;
	line-height: 1.7em;
	letter-spacing: .06em;
	margin-bottom: 21px;
}

#Container>#Goods article .lineup .bottoms {
	z-index: 1;
}

#Container>#Goods article .lineup .icon {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #11173e;
	width: -moz-fit-content;
	width: fit-content;
	height: 30px;
	color: #fff;
	font-size: 1em;
	line-height: 1em;
	letter-spacing: .06em;
	white-space: nowrap;
	margin-bottom: 12px;
	box-sizing: border-box;
	padding: 3px 12px;
	text-align: center;
	position: relative;
}

#Container>#Goods article .lineup .price {
	font-size: 2em;
	font-family: "din-1451-lt-pro-engschrift",sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1em;
	letter-spacing: .05em;
}

#Container>#Goods article .lineup .price .each {
	font-size: .8em;
	font-family: "noto-sans-cjk-jp","Yu Mincho","游明朝","YuMincho","游明朝体","Noto Sans JP","メイリオ",Meiryo,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-weight: 700;
	position: relative;
	top: -2px;
}

#Container>#Goods article .lineup .price .tax {
	font-size: .48em;
	font-family: "noto-sans-cjk-jp","Yu Mincho","游明朝","YuMincho","游明朝体","Noto Sans JP","メイリオ",Meiryo,sans-serif;
	font-weight: 400;
	font-style: normal;
}

#Container>#Novelty {
	overflow: visible;
	padding: 120px 60px;
}

#Container>#Novelty .h01 {
	position: absolute;
	top: -145px;
	left: 0;
	transform: rotate(-12deg);
	transform-origin: bottom left;
	margin-bottom: 0;
	padding: 0;
}

#Container>#Novelty .h01::before {
	display: none;
}

#Container>#Novelty .h01 .main {
	color: #11173e;
}

#Container>#Novelty article>section {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}

#Container>#Novelty article>section>.pic {
	width: 400px;
}

#Container>#Novelty article>section>.desc {
	width: calc(100% - 400px - 60px);
	font-size: 1.4em;
	line-height: 1.7em;
	letter-spacing: .015em;
	text-align: left;
}

#Container>#Novelty ul.def {
	margin-top: 30px;
	font-size: .7em;
}

#Container>#WebStore {
	padding-top: 160px;
	padding-bottom: 200px;
}

#Container>#WebStore .btn_container {
	width: 100%;
	max-width: 824px;
	margin: 0 auto 58px;
}

#Container>#WebStore .button {
	max-width: none;
}

#Container>#Special {
	padding-top: 180px;
	padding-bottom: 300px;
}

#Container>#Special::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100px;
	z-index: -1;
	background: url(../img/tape_gray.jpg) 0 50% repeat-x;
	animation: obiAnime 12s linear infinite;
}

#Container>#Special article .intro {
	font-size: 2em;
	letter-spacing: .085em;
	margin-bottom: 60px;
}

#Container>#Special article table {
	margin: 60px auto;
}

#Container>#Special article .btn_container {
	width: 100%;
	max-width: 824px;
	margin: 80px auto 0;
}

#Container>#Special article .button {
	max-width: none;
}

#Container>#Special article .special__container,
#Container>#Special article .special__item {
	display: block;
	margin: 0 auto;
	width: 100%;
	max-width: 800px;
}

#Container>#Special article .special__item:not(:last-child) {
	margin-bottom: 60px;
}

#Container>#Special article .special__item img {
	width: 100%;
	display: block;
}

#Container>#Special article table.def td section:not(:first-child) {
	padding-top: 14px;
	border: none;
}

#Container>#Special article table.def td section h1 {
	font-size: 1.3em;
	letter-spacing: .04em;
}

#Container>#Special article table.def td section .store {
	font-size: 1em;
	color: #b6b6b8;
}

body.modal {
	overflow: hidden;
}

.modalPic,
[data-modal-pic],
[data-modal-page] {
	cursor: pointer;
}

img.modalPic {
	transition: opacity .4s;
}

img.modalPic:hover {
	opacity: .6;
}

#Popup {
	display: none;
}

#Modal {
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 50100;
	width: 100%;
	height: 100%;
}

#Modal::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 1;
	z-index: -1;
	background: rgba(17,23,62,.95);
	background-image: url(../img/bg_pattern_brder.png);
	background-position: top left;
	background-repeat: repeat;
}

#Modal>.inner {
	box-sizing: border-box;
	overflow: auto;
	position: relative;
	z-index: 10;
	width: 100%;
	padding: 150px 0;
	max-height: 100%;
}

#Modal>.inner>* {
	opacity: 0;
	transition: all .3s ease-out;
}

#Modal>.inner.show>* {
	opacity: 1;
	transform: translateY(0);
}

#Modal .close {
	box-sizing: border-box;
	display: block;
	position: absolute;
	top: 74px;
	right: 24px;
	width: 50px;
	height: 50px;
	background: rgba(0,0,0,0);
	padding: 0;
	text-indent: -9999px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	transition: all .15s;
	text-decoration: none;
	z-index: 2;
	opacity: 1;
}

#Modal .close::before,
#Modal .close::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #fff;
	transition: all .15s;
}

#Modal .close::before {
	transform: rotate(45deg);
	z-index: 1;
}

#Modal .close::after {
	transform: rotate(-45deg);
	z-index: 2;
}

#Modal .close:hover {
	opacity: .7;
}

#Modal .pictBox {
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
	margin: 0;
	padding: 20px 60px;
	width: 100%;
	background: rgba(230,230,230,.95);
	line-height: 0;
	text-align: center;
}

#Modal .inlineBox {
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding: 80px 50px;
	width: 100%;
	background: #e6e6e6;
	text-align: left;
}

#Modal .inlineBox .h01 {
	margin-bottom: 43px;
}

#Modal .inlineBox .h01 .ja {
	font-size: 2rem;
	text-indent: .4em;
	letter-spacing: .4em;
	margin-bottom: -2px;
}

#Modal .inlineBox .h01 .en {
	font-size: 4rem;
	min-width: auto;
	text-indent: .4em;
	letter-spacing: .4em;
}

#Modal .inlineBox.item>.layout {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

#Modal .inlineBox.item>.layout>.pic {
	width: 440px;
}

#Modal .inlineBox.item>.layout>.pic .np {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 400px;
	background: #eee;
}

#Modal .inlineBox.item>.layout>.pic .np::before {
	content: "Now Printing";
	opacity: .1;
	font-size: 2em;
	line-height: 1em;
	font-family: pf-fuel-decay,sans-serif;
	font-weight: 400;
	font-style: normal;
}

#Modal .inlineBox.item>.layout>.desc {
	width: calc(100% - 440px - 50px);
	color: #000;
}

#Modal .inlineBox.item>.layout .name {
	font-size: 1.6em;
	font-weight: 400;
	line-height: 1.7em;
	letter-spacing: .075em;
	margin-bottom: 16px;
}

#Modal .inlineBox.item>.layout .icon {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #11173e;
	width: -moz-fit-content;
	width: fit-content;
	height: 30px;
	color: #fff;
	font-size: 1em;
	line-height: 1em;
	letter-spacing: .06em;
	white-space: nowrap;
	box-sizing: border-box;
	padding: 0 12px 3px;
	margin-bottom: 9px;
	text-align: center;
	position: relative;
}

#Modal .inlineBox.item>.layout .price {
	font-size: 2em;
	font-family: "din-1451-lt-pro-engschrift",sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1em;
	letter-spacing: .05em;
}

#Modal .inlineBox.item>.layout .price .each {
	font-size: .8em;
	font-family: "noto-sans-cjk-jp","Yu Mincho","游明朝","YuMincho","游明朝体","Noto Sans JP","メイリオ",Meiryo,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-weight: 700;
	position: relative;
	top: -2px;
}

#Modal .inlineBox.item>.layout .price .tax {
	font-size: .48em;
	font-family: "noto-sans-cjk-jp","Yu Mincho","游明朝","YuMincho","游明朝体","Noto Sans JP","メイリオ",Meiryo,sans-serif;
	font-weight: 400;
	font-style: normal;
}

#Modal .inlineBox.item>.layout table.spec {
	border-bottom: 1px solid #b8b8b8;
	width: 100%;
	text-align: left;
	margin-top: 23px;
}

#Modal .inlineBox.item>.layout table.spec tr {
	display: block;
	border-top: 1px solid #b8b8b8;
	padding: 12px 0 10px;
}

#Modal .inlineBox.item>.layout table.spec th,
#Modal .inlineBox.item>.layout table.spec td {
	font-size: 1.1em;
	line-height: 1.75em;
	letter-spacing: 0;
	font-weight: 400;
}

#Modal .inlineBox.item>.layout table.spec th {
	vertical-align: top;
	font-size: 1.05em;
	line-height: 1.3em;
	min-width: 130px;
}

#Modal .inlineBox.item>.layout table.spec th span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100px;
	background: #11173e;
	padding: 4px 5px 6px;
	box-sizing: border-box;
	color: #fff;
}

#Modal .inlineBox.item>.layout .link {
	cursor: pointer;
	color: #f12929;
	text-decoration: underline;
	transition: all .15s;
}

#Modal .inlineBox.item>.layout .link:hover,
#Modal .inlineBox.item>.layout .link:active {
	opacity: .7;
}

#Modal .inlineBox.update ul {
	overflow: auto;
	max-width: 800px;
	margin: 0 auto;
	height: 390px;
}

#Modal .inlineBox.update ul>li {
	box-sizing: border-box;
	padding: 1.9em 0 1.6em;
	border-top: 1px solid #11173e;
	color: #000;
}

#Modal .inlineBox.update ul>li:last-child {
	border-bottom: 1px solid #11173e;
}

#Modal .inlineBox.update ul>li .date {
	margin-bottom: .5em;
	font-size: 1.4em;
	font-weight: 600;
	line-height: 1em;
	color: #11173e;
	letter-spacing: .03em;
}

#Modal .inlineBox.update ul>li .data {
	overflow: hidden;
	width: 100%;
	font-size: 1.35em;
	line-height: 1.7em;
	letter-spacing: .013em;
}

.in-modal {
	overflow: hidden;
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 50200;
}

.in-modal::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 1;
	z-index: -1;
	background: rgba(17,23,62,.95);
	background-image: url(../img/bg_pattern_brder.png);
	background-position: top left;
	background-repeat: repeat;
}

.in-modal__inner {
	box-sizing: border-box;
	overflow: auto;
	position: relative;
	z-index: 10;
	width: 100%;
	padding: 150px 0;
	max-height: 100%;
}

.in-modal__inner>* {
	opacity: 0;
	transition: all .3s ease-out;
}

.in-modal__inner.is-show>* {
	opacity: 1;
	transform: translateY(0);
}

.in-modal__btn {
	box-sizing: border-box;
	display: block;
	position: absolute;
	top: 74px;
	right: 24px;
	width: 50px;
	height: 50px;
	background: rgba(0,0,0,0);
	padding: 0;
	text-indent: -9999px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	transition: all .15s;
	text-decoration: none;
	z-index: 2;
	opacity: 1;
}

.in-modal__btn::before,
.in-modal__btn::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #fff;
	transition: all .15s;
}

.in-modal__btn::before {
	transform: rotate(45deg);
	z-index: 1;
}

.in-modal__btn::after {
	transform: rotate(-45deg);
	z-index: 2;
}

.in-modal__btn:hover {
	opacity: .7;
}

.in-modal__inlinebox {
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding: 80px 50px;
	width: 100%;
	background: #e6e6e6;
	text-align: left;
}

.in-modal__name {
	font-size: 1.6em;
	font-weight: 700;
	line-height: 1.7em;
	letter-spacing: .1em;
	color: #11173e;
	margin-bottom: 18px;
}

.in-modal__list {
	text-align: left;
}

.in-modal__list._big .list_item::before {
	content: "";
	top: .45em;
	border: 2px solid rgba(17,23,62,.7);
	border-radius: 100%;
	width: .4em;
	height: .4em;
}

.in-modal__list .list_item {
	position: relative;
	z-index: 1;
	padding-left: 1em;
	line-height: 1.6em;
	color: #000;
}

.in-modal__list .list_item::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}

.in-modal__list .list_item:not(:first-child) {
	margin-top: .6em;
}

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

.sp {
	display: none !important;
}

}

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

.w1.pcbreak,
.w2.pcbreak,
.w3.pcbreak,
.w4.pcbreak,
.w5.pcbreak,
.w6.pcbreak,
.w7.pcbreak,
.w8.pcbreak,
.w9.pcbreak,
.w10.pcbreak,
.w11.pcbreak,
.w12.pcbreak,
.w13.pcbreak,
.w14.pcbreak,
.w15.pcbreak,
.w16.pcbreak,
.w17.pcbreak,
.w18.pcbreak,
.w19.pcbreak,
.w20.pcbreak,
.w21.pcbreak,
.w22.pcbreak,
.w23.pcbreak,
.w24.pcbreak,
.w25.pcbreak,
.w26.pcbreak,
.w27.pcbreak,
.w28.pcbreak,
.w29.pcbreak,
.w30.pcbreak {
	width: auto !important;
}

}

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

#Wrap>header>nav::before {
	top: -120px;
}

#Wrap>header>nav::after {
	bottom: -120px;
}

#Wrap>header>nav>ul {
	padding-top: 120px;
}

}

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

body {
	font-size: 2.2rem;
	line-height: 1.8em;
}

hr {
	border-width: 2px 0 0;
	border-style: dotted;
	border-color: #000;
}

.fsS {
	font-size: .9em !important;
	line-height: 1.8em;
}

.fsL {
	font-size: 1.5em !important;
	line-height: 1.5em;
}

.pc {
	display: none !important;
}

.mgtQp {
	margin-top: 10.8px !important;
}

.mgtTp {
	margin-top: 14.4px !important;
}

.mgtHp {
	margin-top: 30.6px !important;
}

.mgt1p {
	margin-top: 43.2px !important;
}

.mgt1Hp {
	margin-top: 64.8px !important;
}

.mgt2p {
	margin-top: 86.4px !important;
}

.mgt2Hp {
	margin-top: 108px !important;
}

.mgt3p {
	margin-top: 129.6px !important;
}

.mgbQp {
	margin-bottom: 10.8px !important;
}

.mgbTp {
	margin-bottom: 14.4px !important;
}

.mgbHp {
	margin-bottom: 21.6px !important;
}

.mgb1p {
	margin-bottom: 43.2px !important;
}

.mgb1Hp {
	margin-bottom: 64.8px !important;
}

.mgb2p {
	margin-bottom: 86.4px !important;
}

.mgb2Hp {
	margin-bottom: 108px !important;
}

.mgb3p {
	margin-bottom: 129.6px !important;
}

.w1.spbreak,
.w2.spbreak,
.w3.spbreak,
.w4.spbreak,
.w5.spbreak,
.w6.spbreak,
.w7.spbreak,
.w8.spbreak,
.w9.spbreak,
.w10.spbreak,
.w11.spbreak,
.w12.spbreak,
.w13.spbreak,
.w14.spbreak,
.w15.spbreak,
.w16.spbreak,
.w17.spbreak,
.w18.spbreak,
.w19.spbreak,
.w20.spbreak,
.w21.spbreak,
.w22.spbreak,
.w23.spbreak,
.w24.spbreak,
.w25.spbreak,
.w26.spbreak,
.w27.spbreak,
.w28.spbreak,
.w29.spbreak,
.w30.spbreak {
	width: auto !important;
}

.button {
	max-width: 666px;
	height: 136px;
	margin: 0 auto;
	font-size: 3.7rem;
	line-height: 1.2em;
	border-width: 4px;
}

.button::before {
	right: 36px;
	width: 26px;
	height: 26px;
}

.button:not(.off):hover {
	color: #11173e;
}

.button:not(.off):hover::before {
	filter: none;
}

.button:not(.off):hover::after {
	transform: scale(0, 1);
}

.buttonWrapper {
	flex-direction: column;
}

.buttonWrapper>li {
	margin: 40px 0 0 !important;
	width: 100% !important;
}

.buttonWrapper>li:first-child {
	margin-top: 0 !important;
}

table.def {
	display: block;
	border-bottom-width: 2px;
}

table.def tbody,
table.def tr,
table.def th,
table.def td {
	display: block;
}

table.def tr {
	border-top: 2px solid #353535;
	padding: 30px 0 14px;
}

table.def th,
table.def td {
	border-top: none;
	padding: 0;
}

table.def th {
	font-size: 1.2em;
	letter-spacing: 0;
	margin-bottom: 13px;
	width: auto !important;
	min-width: auto;
}

table.def th .head {
	height: 50px;
	min-width: 160px;
	padding: 3px 10px;
}

table.def td p,
table.def td span {
	font-size: 1.15em;
	letter-spacing: 0;
	line-height: 2.2em;
}

table.def td section:not(:first-child) {
	padding-top: 27px;
	border-width: 2px;
}

table.def .fsL {
	font-size: 1.34em !important;
	letter-spacing: .08em;
	margin-bottom: 18px;
}

table.def ul {
	font-size: 1.1em;
	line-height: 1.8em;
	letter-spacing: 0;
}

table.def ul.mgtHp {
	margin-top: 20px !important;
}

ul.rp {
	text-align: left;
}

ul.rp>li {
	padding-left: 1em;
}

ul.rp>li::before {
	position: absolute;
}

ul.rp.circle>li::before {
	margin: .45em .15em 0 .15em;
}

ul.rp.ex>li {
	padding-left: 2.4em;
}

dl.def {
	border-width: 2px 0;
}

dl.def>dt {
	height: 70px;
	font-size: 1.5em;
	line-height: 1em;
	letter-spacing: .05em;
	margin: 0 auto 30px;
	padding: 3px 35px;
}

dl.def>dd {
	font-size: 1.16em;
	line-height: 1.75em;
	letter-spacing: -0.01em;
}

dl.def>dd:not(:last-child) {
	margin-bottom: 1.2em;
	padding-bottom: 1.2em;
	border-width: 0 0 2px;
}

.message {
	border-width: 2px;
}

.picBox>div {
	padding: 30px 10px;
}

.picBox>div>div.t,
.picBox>div>div.q {
	flex-basis: 50%;
}

.borderBox {
	border-width: 2px;
	padding: 30px 40px !important;
}

.normal-slider .slick-dots,
.modal-slider .slick-dots {
	bottom: 18px;
}

.normal-slider .slick-dots>li>button,
.modal-slider .slick-dots>li>button {
	width: 20px;
	height: 20px;
}

.normal-slider .slick-dots>li:not(.slick-active)>button:hover,
.modal-slider .slick-dots>li:not(.slick-active)>button:hover {
	opacity: .3;
}

#Wrap>header.show .menu_trigger span:nth-of-type(1) {
	transform: translateY(7px) rotate(45deg);
}

#Wrap>header.show .menu_trigger span:nth-child(3) {
	transform: translateY(-5px) rotate(-45deg);
}

#Wrap>header .menu_btn {
	left: auto;
	right: 40px;
}

#Wrap>header .menu_inner {
	width: 200px;
	height: 60px;
}

#Wrap>header .menu_inner:hover {
	opacity: 1;
}

#Wrap>header .menu_trigger {
	width: 20px;
	height: 14px;
	margin-right: 30px;
}

#Wrap>header .menu_txt {
	letter-spacing: 0;
}

#Wrap>header>nav {
	padding: 0 40px;
	max-height: none;
}

#Wrap>header>nav::before {
	top: -12px;
}

#Wrap>header>nav::after {
	bottom: -12px;
}

#Wrap>header>nav>ul {
	width: 100%;
	padding: 304px 0;
	gap: 58px 35px;
}

#Wrap>header>nav>ul>li {
	font-size: 3.6em;
	letter-spacing: -0.05em;
}

#Wrap>header>nav>ul>li>a::before,
#Wrap>header>nav>ul>li>span::before {
	width: 24px;
}

#Wrap>header>nav>ul>li.cur>a::before,
#Wrap>header>nav>ul>li:not(.cur)>a:hover::before {
	width: calc(100% + 26px);
}

#Wrap>header>nav>ul>li>a,
#Wrap>header>nav>ul>li>span {
	display: inline-block;
	padding-left: 28px;
}

#Wrap>footer {
	padding: 102px 29px 93px;
}

#Wrap>footer .share>dt {
	margin-right: 8px;
	font-size: 1.4em;
	line-height: 1em;
	letter-spacing: .03em;
}

#Wrap>footer .share>dd .bro-snsbox>div>div {
	margin: 0 0 0 30px;
}

#Wrap>footer .share>dd .bro-snsbox.bro-circle-view>div>div {
	width: 70px !important;
}

#Wrap>footer .share>dd a:hover {
	opacity: 1;
}

#Wrap>footer .banners {
	display: block;
	margin: 58px auto 74px;
	width: 100%;
	max-width: 604px;
}

#Wrap>footer .banners>li {
	margin: 16px 0 0;
	width: 100%;
}

#Wrap>footer .banners a {
	max-width: 604px;
	height: 124px;
	margin: 0 auto;
	font-size: 3.7rem;
	line-height: 1.2em;
}

#Wrap>footer .banners a::before {
	right: 40px;
	width: 26px;
	height: 26px;
}

#Wrap>footer .banners a:not(.off):hover {
	color: #11173e;
	border-color: #11173e;
}

#Wrap>footer .banners a:not(.off):hover::before {
	filter: none;
}

#Wrap>footer .banners a:not(.off):hover::after {
	transform: scale(0, 1);
}

#Wrap>footer .banners a:not(.off):hover img {
	filter: none;
}

#Wrap>footer .banners a img {
	height: auto;
}

#Wrap>footer .caution {
	font-size: 1em;
	line-height: 1.4em;
	letter-spacing: .08em;
}

#Wrap>footer .copy {
	font-size: .9em;
	line-height: 1.8em;
	letter-spacing: .12em;
	text-indent: .12em;
}

#Container>section {
	margin: 0 auto;
	padding: 95px 29px;
}

.g-bg {
	gap: 10px;
}

.g-bg__column {
	gap: 10px;
}

.g-bg__img {
	left: -235px;
}

.h01 {
	margin-bottom: 65px;
}

.news {
	min-height: 60px;
}

.news:hover {
	opacity: 1;
}

.news .icon {
	width: 64px;
	height: 60px;
	background-size: 30px 30px;
	margin-right: 20px;
}

.news .last .date {
	margin-right: 27px;
	letter-spacing: 0;
}

.news .last .data {
	letter-spacing: .045em;
}

.news .last .open {
	right: 15px;
	top: calc(50% - 20px);
	width: 40px;
	height: 40px;
}

.news .last .open:hover {
	transform: scale(1);
}

.news .last .open img {
	width: auto;
}

#Main {
	min-height: auto;
	padding-bottom: 173px;
	margin-bottom: 105px;
}

#Main>.inner {
	height: -moz-fit-content;
	height: fit-content;
}

#Main .visual.is-tmb01 {
	background-image: url(../img/main_bg01_sp.jpg);
}

#Main .visual.is-tmb02 {
	background-image: url(../img/main_bg02_sp.jpg);
}

#Main .visual.is-tmb03 {
	background-image: url(../img/main_bg03_sp.jpg);
}

#Main .visual.is-tmb04 {
	background-image: url(../img/main_bg04_sp.jpg);
}

#Main .visual.is-tmb05 {
	background-image: url(../img/main_bg05_sp.jpg);
}

#Main .visual.is-tmb06 {
	background-image: url(../img/main_bg06_sp.jpg);
}

#Main .visual.is-tmb07 {
	background-image: url(../img/main_bg07_sp.jpg);
}

#Main .visual {
	padding: 130px 0 350px;
	min-height: auto;
}

#Main .visual .slick-list {
	width: calc(100% - 60px);
	margin: 0 auto;
}

#Main .tmb {
	flex-direction: row;
	justify-content: center;
	width: 100%;
	max-width: 300px;
	top: auto;
	bottom: 30px;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
}

#Main .tmb .slick-track {
	flex-direction: row;
	justify-content: center;
}

#Main .tmb .tmb_item {
	width: 34px;
	height: 34px;
}

#Main .tmb .tmb_item:hover {
	opacity: 1;
}

#Main .logo {
	top: auto;
	bottom: 90px;
	left: 50%;
	transform: translateX(-50%);
	width: 420px;
}

#Main .info {
	top: 100%;
	left: 0;
	width: 100%;
	max-width: none;
}

#Main .period {
	padding: 10px 6px 0;
}

#Main .period__txt {
	font-size: 4.4em;
	margin-bottom: -8px;
}

#Main .period__week {
	font-size: .7em;
	margin-left: -10px;
}

#Main .period__bar {
	top: -16px;
}

#Container>#About {
	padding: 95px 10px;
}

#Container>#About article .txt {
	line-height: 1.95em;
	letter-spacing: .045em;
}

#Container>#About article .img {
	width: 200px;
	height: 400px;
}

#Container>#About article .img._img01 {
	left: -6%;
	bottom: -35%;
}

#Container>#About article .img._img02 {
	right: -6%;
	bottom: -49%;
}

#Container>#Outline article .h01 {
	margin-bottom: 80px;
}

#Container>#Exhibition .contents p {
	line-height: 2.1em;
	margin-bottom: 44px;
}

#Container>#Exhibition .contents .annotation {
	font-size: .7em;
	top: calc(100% + 14px);
}

#Container>#Exhibition .contents dl.def>dt._ano {
	margin-bottom: 70px;
}

#Container>#Exhibition .contents ul.def {
	font-size: .77em !important;
	letter-spacing: .1em;
}

#Container>#Goods {
	padding-bottom: 190px;
}

#Container>#Goods article .lineup {
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	margin-bottom: 70px;
}

#Container>#Goods article .lineup>section {
	padding: 20px 20px 32px;
}

#Container>#Goods article .lineup>section:hover {
	opacity: 1;
}

#Container>#Goods article .lineup .pic .np::before {
	font-size: 1.3em;
	line-height: 1em;
}

#Container>#Goods article .lineup .name {
	font-size: 1.1em;
	line-height: 1.55em;
	letter-spacing: .1em;
	margin-bottom: 23px;
}

#Container>#Goods article .lineup .icon {
	height: 40px;
	margin-bottom: 11px;
	font-size: .9em;
	letter-spacing: .03em;
	padding: 3px 12px;
}

#Container>#Goods article .lineup .price {
	font-size: 1.3em;
	letter-spacing: .08em;
}

#Container>#Goods ul.def {
	letter-spacing: .05em;
	line-height: 1.8em;
}

#Container>#Goods ul.def>li:not(:first-child) {
	margin-top: .5em;
}

#Container>#Novelty {
	padding: 100px 29px 90px;
}

#Container>#Novelty .h01 {
	top: -125px;
}

#Container>#Novelty article>section {
	display: block;
}

#Container>#Novelty article>section>.pic {
	margin: 0 auto 66px;
	width: 580px;
}

#Container>#Novelty article>section>.desc {
	width: auto;
	font-size: 1.3em;
	line-height: 1.75em;
	letter-spacing: .13em;
}

#Container>#Novelty ul.def {
	margin-top: 36px;
	font-size: .9em;
}

#Container>#Novelty ul.def>li:not(:first-child) {
	margin-top: .33em;
}

#Container>#WebStore {
	padding-top: 200px;
}

#Container>#Special {
	padding-top: 200px;
	padding-bottom: 230px;
}

#Container>#Special article .intro {
	font-size: 1.56em;
	letter-spacing: 0;
}

#Container>#Special article table.def td {
	line-height: 1.9em;
}

#Container>#Special article table.def td section:not(:first-child) {
	padding-top: 37px;
}

#Container>#Special article table.def td section h1 {
	font-size: 1.18em;
	letter-spacing: .055em;
}

img.modalPic:hover {
	opacity: 1;
}

#Modal>.inner {
	padding: 120px 0;
}

#Modal .close {
	width: 90px;
	height: 90px;
	top: 8px;
	right: 20px;
}

#Modal .close::before,
#Modal .close::after {
	height: 8px;
}

#Modal .close:hover {
	opacity: 1;
}

#Modal .inlineBox {
	padding: 100px 40px;
}

#Modal .inlineBox .h01 {
	margin-bottom: 39px;
}

#Modal .inlineBox .h01 .ja {
	font-size: 3rem;
	margin-bottom: 0;
}

#Modal .inlineBox .h01 .en {
	font-size: 6rem;
}

#Modal .inlineBox.item>.layout {
	display: block;
}

#Modal .inlineBox.item>.layout>.pic {
	margin: 0 auto 70px;
	width: 100%;
}

#Modal .inlineBox.item>.layout>.pic .np {
	height: 560px;
}

#Modal .inlineBox.item>.layout>.desc {
	width: auto;
}

#Modal .inlineBox.item>.layout .name {
	font-size: 1.53em;
	line-height: 1.7em;
	letter-spacing: .09em;
	margin-bottom: 23px;
}

#Modal .inlineBox.item>.layout .icon {
	height: 40px;
	margin-bottom: 24px;
	font-size: .9em;
	letter-spacing: .03em;
	padding: 3px 12px;
}

#Modal .inlineBox.item>.layout .price {
	font-size: 2.1em;
	letter-spacing: .08em;
}

#Modal .inlineBox.item>.layout table.spec {
	border-bottom-width: 2px;
	margin-top: 49px;
}

#Modal .inlineBox.item>.layout table.spec tr {
	border-top-width: 2px;
	padding: 30px 0 19px;
}

#Modal .inlineBox.item>.layout table.spec th,
#Modal .inlineBox.item>.layout table.spec td {
	display: block;
}

#Modal .inlineBox.item>.layout table.spec th {
	font-size: 1.2em;
	line-height: 1.5em;
	letter-spacing: 0;
	margin-bottom: 9px;
}

#Modal .inlineBox.item>.layout table.spec th span {
	width: 160px;
	padding: 4px 5px 6px;
}

#Modal .inlineBox.item>.layout table.spec td {
	font-size: 1.15em;
	line-height: 1.83em;
	letter-spacing: 0;
}

#Modal .inlineBox.update ul {
	height: 574px;
}

#Modal .inlineBox.update ul>li {
	padding: 1.7em 0 1.3em;
	border-width: 2px;
}

#Modal .inlineBox.update ul>li:last-child {
	border-width: 2px;
}

#Modal .inlineBox.update ul>li .date {
	font-size: 1.2em;
	letter-spacing: .05em;
	margin-bottom: .4em;
}

#Modal .inlineBox.update ul>li .data {
	font-size: 1.2em;
	letter-spacing: .02em;
}

.in-modal__inner {
	padding: 120px 0;
}

.in-modal__btn {
	width: 90px;
	height: 90px;
	top: 8px;
	right: 20px;
}

.in-modal__btn::before,
.in-modal__btn::after {
	height: 8px;
}

.in-modal__btn:hover {
	opacity: 1;
}

.in-modal__inlinebox {
	padding: 100px 40px;
}

.in-modal__name {
	font-size: 1.5em;
	line-height: 1.6em;
	letter-spacing: .1em;
	margin-bottom: 32px;
}

}

@keyframes obiAnime {

0% {
	background-position: 0 50%;
}

100% {
	background-position: -500px 50%;
}

}


/*# sourceMappingURL=../map/style.css.map */
