@charset "utf-8";
/* CSS Document */

/*メニュー
----------------------------------------------*/
.hero-nav {
	position: fixed;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 20;
}

.hero-nav.hero-nav--fixed {
	position: fixed;
	top: 0;
	bottom: auto;
	background: rgba(255, 255, 255, 0.85);
	left: 0;
	z-index: 20;
}

.hero-nav ul {
	list-style: none;
	display: flex;
	gap: 50px;
	padding: 0;
	margin: 0;
}

.hero-nav a {
	display: block;
}

/*中身
----------------------------------------------*/
h2 {
	margin-bottom: 35px;
	text-align: center;
}

#conIn {
	width: 100%;
}

#conIn2 {
	width: 785px
}

.cen {
	text-align: center;
}

.mar35 {
	margin-bottom: 35px !important;
}

.mar20 {
	margin-bottom: 20px;
}

.bor {
	border: 1px solid #000;
}

.mini {
	font-size: 10px;
}

table {
	width: 85%;
	background: #F2F2F2;
	margin: 0 auto 35px;
	border-collapse: collapse;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

tr {
	border-bottom: 1px dotted #000;
}

th {
	width: 180px;
	padding: 15px;
	text-align: center;
}

td {
	text-align: left;
	padding: 15px;
}

tr:nth-child(odd) {
	background: #E6E6E6;
}

h3 {
	width: 85%;
	font-family: heisei-mincho-std, serif;
	font-size: 16px;
	font-weight: 100;
	letter-spacing: 3px;
	margin: 0 auto;
}

.shop {
	width: 100%;
	margin: 0 auto 85px;
}

.shop .flex {
	display: flex;
}

.shop .flex dd {
	padding: 10px;
	font-size: 15px;
}

.shop dt {
	text-align: center;
	margin-bottom: 20px;
}

.shop dt img {
	width: 500px;
}

.shop .subtitle {
	font-size: 16px;
	font-weight: bold;
}

.shop .l_img img {
	width: 300px;
}

.shop .caution {
	font-size: 11px;
}

.shop .sop_area {
	font-size: 15px;
	text-align: center;
	margin: 50px auto;
	position: relative;
	top: 80px;
}

.shop .sop_area_sub {
	font-size: 15px;
	text-align: center;
	margin: 50px auto;
	position: relative;
	top: 0px;
}

.shop .sop_area .mtop {
	margin-top: 50px;
}

.shop .sop_area img {
	width: 500px;
}

.shop p {
	margin-bottom: 15px;
	font-size: 15px;
	margin-left: 10px;
}

.shop h4 {
	width: 100%;
	font-family: heisei-mincho-std, serif;
	font-weight: 700;
	letter-spacing: 5px;
	font-size: 20px;
	padding: 5px 0;
	border-top: 1px solid #000;
	margin-bottom: 10px;
}

.shop h4 img {
	width: 1.2em;
	height: 1.2em;
	margin-right: 8px;
	vertical-align: -0.15em;
}

.subCast {
	background: #fbeef4;
	font-size: 14px;
	padding: 15px;
	border-radius: 5px;
	height: 80%;
}

.title_a {
	font-family: heisei-mincho-std, serif;
	font-size: 23px;
	font-weight: 700;
}

.title_b {
	font-family: heisei-mincho-std, serif;
	font-size: 40px;
	font-weight: 700;
}


.price {
	font-size: 24px;
	font-weight: bold;
	text-align: right;
	margin-top: 50px;
}

.price small {
	font-size: 16px;
	font-weight: normal;
}

.caut {
	font-size: 12px;
}

.link {
	margin-bottom: 5px !important;
}

.link a {
	display: block;
	width: 280px;
	padding: 10px 0;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin-left: auto;
	background: #000;
	color: #FFF !important;
	text-decoration: none;
	letter-spacing: 3px;
	text-align: center;
}

.link a:hover {
	background: #0030FF;
}

.cdTokuten {
	width: 85%;
	margin: 0 auto 20px;
	background: #D7D3CB;
	font-size: 12px;
	padding: 15px;
	border-radius: 5px;
}

.cdTokuten:first-line {
	font-weight: bold;
}

.cdList {
	width: 50%;
	background: #FFF;
	margin: 0 auto 35px;
	font-size: 14px;
	border: 1px solid #000;
	border-radius: 5px;
	padding: 25px;
	box-sizing: border-box;
	line-height: 2;
}

.cdList dt {
	font-family: "Roboto", sans-serif;
	font-weight: 100;
	font-size: 20px;
}

.cdList span {
	font-size: 10px;
	padding-right: 5px;
}

.patch {
	width: 85%;
	margin: 0 auto 15px;
}

.patch img {
	max-width: 100%;
	height: auto;
}

.patch dt {
	font-weight: bold;
}

.patch dd {
	margin-bottom: 15px;
}

.end_banner {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 350px;
	text-align: center;
	margin-top: -550px;
	margin-bottom: 200px;
}

.end_banner img {
	width: 100%;
}

.indent {
	padding-left: 20px;
	font-size: 80%;
}


/*
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
対応頑張る！！＼(^o^)／
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
*/

@media screen and (max-width: 977px) {
	.hero-nav.hero-nav--fixed {
		width: 977px;
		left: 50%;
		transform: translateX(-50%) scale(calc(100vw / 977px));
		transform-origin: top center;
	}

	#menu li:nth-of-type(5) {
		border-bottom: 0px solid #000;
	}

	table {
		width: 100%;
	}

	th {
		width: 100px;
	}

	/*サブメニュー
	----------------------------------------------*/
	#subMenu dt {
		display: block;
		width: 100%;
		margin-bottom: 0px;
	}

	#subMenu dd span {
		display: none;
	}

	h3,
	.shop {
		width: 100%;
	}

	h2 {
		margin-bottom: 35px;
		text-align: center;
		font-size: 4vw;
		margin-top: 50px;
	}

	#conIn {
		width: 100%
	}

	#conIn2 {
		width: 100%
	}

	.shop {
		width: 100%;
		margin: 0 auto 85px;
	}

	.shop .flex {
		display: block;
		margin-top: 50px;
	}

	.shop .flex dd {
		padding: 10px;
		font-size: 4vw;
	}

	.shop dt {
		text-align: center;
		margin-bottom: 20px;
	}

	.shop dt img {
		width: 80%;
	}

	.shop .subtitle {
		font-size: 16px;
		font-weight: bold;
		text-align: center;
	}

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

	.shop .l_img img {
		width: 80%;
	}

	.shop .caution {
		font-size: 2.5vw;
	}

	.shop .sop_area {
		font-size: 15px;
		text-align: center;
		margin: 50px auto;
		position: relative;
		top: 0px;
	}

	.shop .sop_area img {
		width: 80%;
		;
	}

	.shop p {
		margin-bottom: 15px;
		font-size: 3vw;
		margin-left: 10px;
	}

	.shop h4 {
		width: 100%;
		font-family: heisei-mincho-std, serif;
		font-weight: 700;
		letter-spacing: 5px;
		font-size: 4.5vw;
		padding: 5px 0;
		border-top: 1px solid #000;
		margin-bottom: 10px;
	}

	.subCast {
		background: #fbeef4;
		font-size: 3vw;
		padding: 15px;
		border-radius: 5px;
		height: auto;
	}

	.title_a {
		font-size: 3vw;
	}

	.title_b {
		font-size: 5vw;
	}



	.end_banner {
		position: relative;
		z-index: 2;
		width: 100%;
		height: 70vw;
		text-align: center;
		margin-top: -100vw;
		margin-bottom: 30vw;
	}

	.end_banner img {
		width: 100%;
	}

	.shop h4 {
		text-align: center;
	}

	.goto-top img {
		width: 50px;
	}


}