@charset "utf-8";

/*基本の文字色など*/
html,
body {
	font-family: "bauhaus93", 'メイリオ', sans-serif;
	font-size: 14px;
	color: #666;
	background: #fffaf0;
	line-height: 1.6;
	letter-spacing: 1px;
}

body input {
	color: #666;
}

body a {
	text-decoration: none;
	color: #666;
}

body a:hover {
	text-decoration: underline;
}

body:focus {
	outline: none;
}

h2,
h3 {
	color: #600c00;
}

input[type="submit"] {
	-webkit-appearance: none;
}

/*ここから共通部分*/
/*一番外枠*/
header {
	background: #ff9888;
	color: #fffaf0;
	padding-bottom: 3px;
}

nav {
	padding: 10px 0;
	color: #fffaf0;
}

main {
	padding: 10px 0;
}

footer {
	padding-top: 10px;
}

/*header*/
.header_container {
	max-width: 1200px;
	margin: 0 5px;
}

@media screen and (max-width:54.8em) {
	.header_container {
		max-width: 100%;
	}
}

.header_inner {
	max-width: 1040px;
	display: grid;
	grid-template-columns: 3fr 7fr;
	grid-template-rows: 1.5fr 0.5fr 0.5fr;
	justify-content: center;
}

@media screen and (max-width:54.8em) {
	.header_inner {
		width: auto;
		margin-left: 0;
		grid-column-gap: 0;
		align-items: center;
	}

	@media screen and (max-width:30.4em) {
		.header_inner {
			justify-items: center;
		}
	}
}

@media screen and (min-width:1200px) {
	.header_inner {
		margin-left: 12%;
		grid-column-gap: 70px;
	}
}

/*ロゴ*/
.logo_main {
	grid-column: 1/2;
	grid-row: 1/3;
	object-fit: contain;
	padding-top: 10px;
}

.logo_main img {
	width: 100%;
	max-width: calc(1023px/3);
	height: auto;
	margin-left: 10px;
}

@media screen and (max-width:54.8em) {
	.logo_main img {
		margin-left: 3px;
		margin-top: 10px;
	}
}

.header_inner p {
	color: #fffaf0;
	font-size: 18px;
	text-align: center;
	grid-column: 1/2;
	grid-row: 3/4;
	margin-right: 1em;
}

@media screen and (max-width:54.8em) {
	.header_inner p {
		padding-left: 0.8em;
		font-size: 1em;
		margin-left: 0;
		margin-right: 0.5em;
	}
}

/*ヘッダーナビ*/
.header_nav {
	grid-column: 2/3;
	grid-row: 1/2;
	display: flex;
	list-style: none;
	margin-top: 10px;
	padding-top: 5px;
	vertical-align: middle;
	margin-right: 15px;
	justify-content: flex-end;
}

@media screen and (max-width:54.8em) {
	.header_nav {
		flex-flow: wrap;
		margin-right: 0;
		margin-top: 0;
	}

	@media screen and (max-width:600px) {
		.header_nav {
			justify-self: end;
			align-self: end;
		}
	}
}

.header_nav img {
	height: 1.7rem;
	padding-right: 5px;
	padding-left: 22px;
}

@media screen and (max-width:54.8em) {
	.header_nav img {
		height: 1.2em;
		padding-left: 5px;
	}
}

.header_nav a {
	color: #fffaf0;
	margin-bottom: 0;
}

@media screen and (max-width:54.8em) {
	.header_nav a {
		margin-right: 5px;
		font-size: 1em;
	}
}

.header_nav a:last-child {
	margin-right: 0;
}

/*検索窓*/
.search_area {
	grid-column: 2/3;
	grid-row: 2/4;
	background: #ff9888;
	text-align: right;
}

.search_window {
	width: 60%;
	max-width: 34em;
	border: 1px #ff9888 solid;
	height: 1.8em;
	border-radius: 11px;
	text-indent: 1.1rem;
	margin-left: 0;
	color: #999;
}

@media screen and (max-width:54.8em) {
	.search_window {
		margin-left: 5px;
		border-radius: 1px;
	}
}

@media screen and (min-width:1200px) {
	.search_window {
		margin-left: 40px;
	}
}

.search_window:focus {
	outline: none;
}

.search_button {
	width: 66px;
	height: 35px;
	background: #ff9888 url(../images/search_icon.png) left 20px top 4px no-repeat;
	-webkit-background-size: 26px;
	background-size: 26px;
	border-radius: 10px;
	border: 1px solid #fffaf0;
	margin-left: 5px;
}

@media screen and (max-width:54.8em) {
	.search_button {
		width: 33px;
		height: 26px;
		-webkit-background-size: 15px;
		background-size: 15px;
		background-position: left 9px top 4px;
		margin-left: 0;
	}
}

.search_button:hover {
	background: #ffd387 url(../images/search_icon.png) left 20px top 4px no-repeat;
	background-size: 26px;
	-webkit-background-size: 26px;
}

@media screen and (max-width:54.8em) {
	.search_button:hover {
		background: #ffd387 url(../images/search_icon.png) left 9px top 4px no-repeat;
		-webkit-background-size: 15px;
		background-size: 15px;
	}
}

/*nav*/
.nav_container {
	max-width: 1200px;
	text-align: center;
}

@media screen and (max-width:54.8em) {
	.nav_container {
		max-width: 100%;
		margin: 0 5px;
	}
}

@media screen and (min-width:1200px) {
	.nav_container {
		margin-left: 150px;
	}
}

.gnav {
	display: flex;
	max-width: 1040px;
	margin-left: 5px;
}

@media screen and (max-width:54.8em) {
	.gnav {
		width: auto;
		margin-left: 0;
		margin-right: 0;
		justify-content: space-around;
	}
}

.gnav ul {
	text-align: center;
	list-style: none;
	margin: 0 auto;
	padding: 0;
	color: #fffaf0;
}

.gnav li {
	width: 32%;
	position: relative;
	padding: 5px;
	display: block;
	cursor: pointer;
	text-align: center;
	height: 2rem;
	border-radius: 10px;
}

@media screen and (max-width:54.8em) {
	.gnav li {
		width: 30%;
		height: auto;
	}
}

.gnav li a {
	color: #fffaf0;
	font-size: 20px;
}

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

.gnav > li {
	z-index: 1000;
	margin: 4px;
	padding-top: 3px;
	display: inline;
	background: #ff9888;
	vertical-align: text-bottom;
}

.gnav > li:hover {
	background: #ffd387;
	border-radius: 10px 10px 0px 0px;
}

.gnav a img {
	height: 1.7rem;
	width: auto;
	margin-right: 4px;
	margin-bottom: 4px;
}

.cnav {
	width: 100%;
	display: none;
	position: absolute;
	top: 2.3rem;
	left: 0px;
	margin-right: -5px;
	margin-top: 5px;
	background: #ff9888;
	z-index: 100;
	border-radius: 0 0 10px 10px;
}

.cnav li {
	width: 100%;
}

.cnav li a {
	padding: 5px 0 5px 5px;
	margin: -5px 5px -5px -5px;
	display: block;
	color: #fffaf0;
}

.cnav li a:hover {
	background: #ffd387;
}

.cnav_lc a:hover {
	border-radius: 0 0 10px 10px;
}

/*main*/
.main_container {
	max-width: 1200px;
}

@media screen and (max-width:1200px) {
	.main_container {
		max-width: 100%;
	}
}

.main_inner {
	margin-bottom: 140px;
}

@media screen and (max-width:54.8em) {
	.main_inner {
		margin-left: 0;
	}
}

@media screen and (min-width:1200px) {
	.main_inner {
		margin-left: 160px;
	}
}

/*TOP写真ここから*/
.photo img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
@media screen and (min-width:1200px){.photo img{max-width: 1040px;}}
@media screen and (max-width:54.8em) {
	.photo img {
		width: 100%;
	}
}

/*TOP写真ここまで*/

.jumpbtn {
	text-align: right;
	margin-right: 1em;
}

.jumpbtn a {
	background: #ff9888;
	color: #fffaf0;
	border-radius: 6px;
	padding: 5px 10px;
}

.jumpbtn a::before {
	content: "▲"
}

.jumpbtn a:hover {
	background: #ffd387;
	text-decoration: none;
}

/*パンくずリスト*/
.bread {
	margin: 0 20px 20px;
	color: #600c00;
	line-height: 1.3;
}

.bread ol {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.bread li {
	display: inline;
}

.bread li::after {
	content: ">";
	color: #600c00;
}

.bread li:last-child::after {
	content: none;
}

.bread a {
	text-decoration: none;
}

/*footer*/

.footer_inner {
	margin-top: 20px;
}

.payment_guide_container {
	background: #cdf5cb;
	display: flex;
	flex-flow: row;
	justify-content: center;
	padding: 15px 0;
}

@media screen and (min-width:1200px) {
	.payment_guide_container {
		padding: 15px 8%;
	}
}

@media screen and (max-width:54.8em) {
	.payment_guide_container {
		flex-flow: column;
		-ms-align-items: baseline;
		align-items: baseline;
	}
}

.payment_guide {
	background: #fffaf0;
	max-width: 328px;
	width: 30%;
	margin: 0 2.5%;
	border-radius: 10px;
	padding: 15px 30px;
	position: relative;
}

@media screen and (min-width:54.8em) {
	.payment_guide {
		height: 28em;
	}
}

@media screen and (max-width:54.8em) {
	.payment_guide {
		max-width: 100%;
		width: 90%;
		padding: 15px 10px;
		margin: 10px 3%;
		height: 22em;
	}
}

.payment_guide:first-child {
	margin-left: 2.5%;
}

@media screen and (max-width:54.8em) {
	.payment_guide:first-child {
		margin-left: 3%;
	}

	.payment_guide:last-child {
		margin-right: 0;
	}
}

.payment_guide ul {
	margin-left: 30px;
}

.payment_guide h3 {
	text-align: center;
	font-size: 1.3rem;
	margin-bottom: 12px;
}

.card_icon {
	margin-top: 15px;
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width:54.8em) {
	.card_icon {
		justify-content: space-around;
	}
}

.card_icon img {
	max-width: 80px;
	width: 33%;
}

.payment_guide a {
	border: 1px #666 solid;
	border-radius: 10px;
	text-decoration: none;
	position: absolute;
	bottom: 5%;
	padding: 2%;
	left: 11%;
	right: 11%;
	text-align: center;
}

@media screen and (max-width:54.8em) {
	.payment_guide a {
		left: 20vw;
		right: 20vw;
	}
}

.footer_logo {
	background: url(../images/footer5.jpg) top 0 left 0 repeat-x;
	background-color: #fffaf0;
}

@media screen and (max-width:54.8em) {
	.footer_logo {
		background: #cdf5cb;
	}
}

.footer_nav {
	margin: 0 8%;
	padding: 220px 0 15px;
}

@media screen and (max-width:54.8em) {
	.footer_nav {
		margin: 0 5px;
		padding: 25px 0 15px;
	}
}

.footer_nav ul {
	display: flex;
	list-style: none;
	justify-content: space-around;
	margin-bottom: 2em;
}

@media screen and (max-width:54.8em) {
	.footer_nav ul {
		flex-flow: column;
		margin-left: 15px;
		background: #cdf5cb;
	}
}

.footer_nav ul:last-child {
	margin-bottom: 0;
}

.footer_nav li a {
	color: #600c00;
}

@media screen and (max-width:54.8em) {
	.footer_nav li a {
		margin-bottom: 10px;
	}
}

.sns {
	margin: 0 8%;
	display: flex;
	justify-content: center;
	padding: 15px 0;
}

@media screen and (max-width:54.8em) {
	.sns {
		background: #cdf5cb;
		margin: 0;
	}
}

.sns a {
	margin: 0 1rem;
	color: #600c00;
	font-size: 25px;
}

@media screen and (max-width:54.8em) {
	.sns a {
		font-size: 30px;
	}
}

.copyright {
	margin: 0 8%;
	padding: 15px 0;
	text-align: center;
	color: #600c00;
}

@media screen and (max-width:54.8em) {
	.copyright {
		background: #cdf5cb;
		margin: 0;
	}
}

/*バナーエリア(grid)*/

.banner_container {
	padding-top: 30px;
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: 1.8fr 1.8fr;
	grid-row-gap: 10px;
	grid-column-gap: 9px;
	margin: 20px 0;
	justify-content: center;
	align-content: center;
}

@media screen and (max-width:54.8em) {
	.banner_container {
		grid-template-rows: 1fr auto 2fr;
		grid-column-gap: 5px;
		grid-row-gap: 1em;
	}
}

.banner_container .item_1 {
	grid-column: 1/3;
	grid-row: 1/2;
}

.banner_container .item_2 {
	grid-column: 3/5;
	grid-row: 1/2;
}

.banner_container .item_3 {
	grid-column: 5/7;
	grid-row: 1/2;
}

.banner_container .item_4 {
	grid-column: 1/4;
	grid-row: 2/3;
}

@media screen and (max-width:54.8em) {
	.banner_container .item_4 {
		grid-column: 1/7;
		grid-row: 2/3;
	}
}

.banner_container .item_5 {
	grid-column: 4/7;
	grid-row: 2/3;
}

@media screen and (max-width:54.8em) {
	.banner_container .item_5 {
		grid-column: 1/7;
		grid-row: 3;
	}
}

.item_1 img {
	width: 100%;
}

.item_2 img {
	width: 100%;
}

.item_3 img {
	width: 100%;
}

.item_5 img {
	width: 100%;
}

/*news*/
.item_4 div {
	margin: 15px 0;
	display: flex;
	justify-content: center;
	vertical-align: baseline;
}

.item_4 h2 {
	font-size: 2rem;
	font-weight: normal;
	text-align: center;
}

@media screen and (max-width:54.8em) {
	.item_4 h2 {
		font-size: 1.5em;
	}
}

.item_4 span {
	font-size: 1.5rem;
	margin-left: 3px;
}

@media screen and (max-width:54.8em) {
	.item_4 span {
		font-size: 0.8em;
	}
}

.item_4 img {
	width: auto;
	height: 2.5rem;
	margin: 0 30px;
}

@media screen and (max-width:54.8em) {
	.item_4 img {
		margin: 0 15px;
	}
}

.news {
	list-style: none;
	margin-left: 20px;
}

@media screen and (max-width:54.8em) {
	.news {
		margin-left: 10px;
	}
}

.news li {
	line-height: 2.5;
}

.news li a {
	font-size: 16px;
}

.news span {
	margin-right: 65px;
	font-size: 16px;
}

/* おすすめ、新商品 */

.main_headline {
	margin: 90px 0 30px;
	display: flex;
	justify-content: center;
	vertical-align: baseline;
}

.main_headline img {
	width: auto;
	height: 3rem;
	margin: 0 40px;
}

@media screen and (max-width:54.8em) {
	.main_headline img {
		margin: 0 5px;
		height: 1.5em;
	}
}

.main_headline h2 {
	color: #600c00;
	text-align: center;
	font-size: 2rem;
	font-weight: normal;
	background-color: #fffaf0;
}

@media screen and (max-width:54.8em) {
	.main_headline h2 {
		font-size: 1.3em;
	}
}

.main_headline span {
	font-size: 1.5rem;
	margin-left: 3px;
}

@media screen and (max-width:54.8em) {
	.main_headline span {
		font-size: 0.9em;
	}
}

.recommend_container {
	margin-bottom: 45px;
	width: 94%;
	margin-left: 3%;
	margin-right: 3%;
	display: grid;
	grid-template-columns: repeat(4, minmax(25%, 250px));
	grid-template-rows: 160px 2fr 1.5em 3em;
	grid-auto-flow: row;
	grid-row-gap: 15px;
	grid-column-gap: 10px;
	justify-content: center;
}

@media screen and (max-width:54.8em) {
	.recommend_container {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		grid-gap: 10px;
		grid-template-columns: repeat(2, minmax(40%, 250px));
		grid-template-rows: 160px 2fr 1.5em 3em 160px 2fr 1.5em 3em;
	}
}

.recommend_container img {
	object-fit: cover;
	max-width: 250px;
	width: 100%;
	height: 160px;
}

@media screen and (max-width:54.8em) {
	.recommend_container a {
		text-align: center;
	}

	.recommend_container img {
		max-width: 90%;
	}
}

.recommend_container p {
	line-height: 1.7;
	font-size: 16px;
}

.recommend_container .price {
	text-align: right;
	font-size: 18px;
}

@media screen and (max-width:54.8em) {
	.recommend_container p {
		font-size: 1em;
		text-align: left;
		margin-left: 5%;
	}

	.recommend_container .price {
		font-size: 16px;
		margin-right: 5%;
	}
}

.recommend_container input {
	width: 100%;
	padding: 10px 60px;
	font-size: 1.2rem;
	border: none;
	background: #ff9888;
	border-radius: 6px;
	color: #fffaf0;
}

@media screen and (max-width:54.8em) {
	.recommend_container input {
		width: 90%;
		padding: 10px 0;
		margin: 0 5%;
	}
}

.recommend_container input:hover {
	background: #ffd387;
}

.rec1-1 {
	grid-column: 1/2;
	grid-row: 1/2;
}

.rec1-2 {
	grid-column: 1/2;
	grid-row: 2/3;
}

.rec1-3 {
	grid-column: 1/2;
	grid-row: 3/4;
}

.rec1-4 {
	grid-column: 1/2;
	grid-row: 4/5;
}

.rec2-1 {
	grid-column: 2/3;
	grid-row: 1/2;
}

.rec2-2 {
	grid-column: 2/3;
	grid-row: 2/3;
}

.rec2-3 {
	grid-column: 2/3;
	grid-row: 3/4;
}

.rec2-4 {
	grid-column: 2/3;
	grid-row: 4/5;
}

.rec3-1 {
	grid-column: 3/4;
	grid-row: 1/2;
}

.rec3-2 {
	grid-column: 3/4;
	grid-row: 2/3;
}

.rec3-3 {
	grid-column: 3/4;
	grid-row: 3/4;
}

.rec3-4 {
	grid-column: 3/4;
	grid-row: 4/5;
}

.rec4-1 {
	grid-column: 4/5;
	grid-row: 1/2;
}

.rec4-2 {
	grid-column: 4/5;
	grid-row: 2/3;
}

.rec4-3 {
	grid-column: 4/5;
	grid-row: 3/4;
}

.rec4-4 {
	grid-column: 4/5;
	grid-row: 4/5;
}

@media screen and (max-width:54.8em) {
	.rec1-1 {
		grid-column: 1/2;
		grid-row: 1/2;
	}

	.rec1-2 {
		grid-column: 1/2;
		grid-row: 2/3;
	}

	.rec1-3 {
		grid-column: 1/2;
		grid-row: 3/4;
	}

	.rec1-4 {
		grid-column: 1/2;
		grid-row: 4/5;
	}

	.rec2-1 {
		grid-column: 2/3;
		grid-row: 1/2;
	}

	.rec2-2 {
		grid-column: 2/3;
		grid-row: 2/3;
	}

	.rec2-3 {
		grid-column: 2/3;
		grid-row: 3/4;
	}

	.rec2-4 {
		grid-column: 2/3;
		grid-row: 4/5;
	}

	.rec3-1 {
		grid-column: 1/2;
		grid-row: 5/6;
	}

	.rec3-2 {
		grid-column: 1/2;
		grid-row: 6/7;
	}

	.rec3-3 {
		grid-column: 1/2;
		grid-row: 7/8;
	}

	.rec3-4 {
		grid-column: 1/2;
		grid-row: 8/9;
	}

	.rec4-1 {
		grid-column: 2/3;
		grid-row: 5/6;
	}

	.rec4-2 {
		grid-column: 2/3;
		grid-row: 6/7;
	}

	.rec4-3 {
		grid-column: 2/3;
		grid-row: 7/8;
	}

	.rec4-4 {
		grid-column: 2/3;
		grid-row: 8/9;
	}
}

/*商品一覧*/
.item_list_container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-bottom: 200px;
	margin-left: 18px;
}

@media screen and (max-width:54.8em) {
	.item_list_container {
		flex-flow: column-reverse;
		justify-content: space-around;
		margin-left: 0;
	}
}

.item_list_container .bread {
	margin-left: 100px;
}

.sidebar {
	flex: 0 0 235px;
	color: #600c00;
	font-size: 18px;
	line-height: 2.0;
}

@media screen and (max-width:54.8em) {
	.sidebar {
		-webkit-flex: 1 1 auto;
		-moz-flex: 1 1 auto;
		-ms-flex: 1 1 auto;
		-o-flex: 1 1 auto;
		flex: 1 1 auto;
	}
}

.sidebar img {
	width: 1.8rem;
	height: auto;
	margin-bottom: 4px;
	margin-right: 4px;
}

.sidebar ul {
	list-style: none;
}

@media screen and (max-width:54.8em) {

	.sidebar p,
	.sidebar ul {
		margin-left: 2.3em;
	}
}

.sidebar li a {
	color: #600c00;
	font-size: 1em;
}

.sidebar_banner {
	margin-top: 30px;
}

.sidebar_banner img {
	width: 100%;
	height: auto;
	margin: 0;
	clear: both;
}

@media screen and (max-width:54.8em) {
	.sidebar_banner {
		text-align: center;
		margin-top: 40px;
	}

	.sidebar_banner img {
		width: 80%;
		max-width: 500px;
		height: auto;
	}
}

.item_list {
	flex: 1 1 auto;
	display: flex;
	flex-flow: wrap;
}

@media screen and (max-width:54.8em) {
	.item_list {
		-webkit-flex: 1 1 780px;
		-moz-flex: 1 1 780px;
		-ms-flex: 1 1 780px;
		-o-flex: 1 1 780px;
		flex: 1 1 780px;
		margin-bottom: 3em;
		margin-left: 10%;
	}

	@media screen and (min-width:500px) {
		.item_list {
			margin-left: 3em;
		}
	}
}

.item {
	width: 230px;
	height: 340px;
	margin: 10px 14px;
	position: relative;
}

@media screen and (max-width:55em) {
	.item {
		max-width: 200px;
		width: 40%;
		margin: 20px 10px;
	}
}

@media screen and (min-width:54.8em) {
	.item:nth-child(3n) {
		margin-right: 0;
	}
}

.item img {
	width: 230px;
	height: 160px;
	object-fit: cover;
}

@media screen and (max-width:54.8em) {
	.item img {
		max-width: 200px;
		width: 100%;
	}
}

.item p {
	line-height: 1.9;
}

.item .price {
	text-align: right;
	font-size: 18px;
}

.item input {
	width: 230px;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 10px 46px;
	font-size: 1.1rem;
	border: none;
	background: #ff9888;
	border-radius: 6px;
	color: #fffaf0;
}

@media screen and (max-width:54.8em) {
	.item input {
		width: 100%;
		padding: 10px 6px;
	}
}

.item_input:hover {
	background: #ffd387;
}

/*商品詳細*/
.detail_container {
	margin-left: 16px;
	margin-bottom: 100px;
	display: flex;
}

@media screen and (max-width:54.8em) {
	.detail_container {
		flex-flow: column;
		margin-left: 0;
	}
}

.detail_catch {
	flex: 1 1 auto;
}

.detail_catch img {
	width: 100%;
	height: auto;
	max-width: 500px;
}

@media screen and (max-width:54.8em) {
	.detail_catch {
		text-align: center;
		margin-bottom: 30px;
	}

	.detail_catch img {
		object-fit: contain;
		width: 90%;
		height: auto;
	}
}

.detail {
	flex: 0 0 450px;
}

@media screen and (max-width:54.8em) {
	.detail {
		-webkit-flex: 1 1 auto;
		-moz-flex: 1 1 auto;
		-ms-flex: 1 1 auto;
		-o-flex: 1 1 auto;
		flex: 1 1 auto;
		margin: 0 1em;
	}
}

.detail_tag {
	color: #fffaf0;
	background: #ff9888;
	border: 1px solid #ff9888;
	padding: 3px;
	border-radius: 8px;
	max-width: 6.5rem;
	text-align: center;
}

@media screen and (max-width:54.8em) {
	.detail_tag {
		font-size: 1em;
	}
}

.detail h2 {
	font-size: 1.9rem;
	margin-top: 16px;
}

.detail h3 {
	font-size: 1.5rem;
}

.detail p {
	line-height: 1.5;
	margin-top: 10px;
}

.detail table {
	margin-top: 20px;
	margin-bottom: 30px;
}

.detail td {
	padding: 8px 11px;
	background: #fffaf0;
}

.detail td:nth-child(odd) {
	width: 145px;
	margin-right: 30px;
	margin-left: 12px;
	background-color: #ffe9e6;
}

@media screen and (max-width:54.8em) {
	.detail td:nth-child(odd) {
		width: 90px;
	}

	@media screen and (min-width:500px) {
		.detail td:nth-child(odd) {
			width: 130px;
			margin-left: 50px;
		}
	}
}

.quant_select {
	margin: 114px 0 90px;
	display: flex;
	background-color: #fffaf0;
}

@media screen and (max-width:54.8em) {
	.quant_select {
		justify-content: space-around;
	}
}

.quant_select span,
.quant_select select {
	margin-top: -24px;
}

.quant_select span {
	margin-top: -20px;
}

.quant_select select {
	margin-left: 20px;
	height: 30px;
	width: 60px;
	border: 1px solid #ff9888;
	border-radius: 8px;
}

@media screen and (max-width:54.8em) {
	.quant_select select {
		margin-left: 1em;
		width: 40px;
		height: 25px;
	}
}

.quant_select input {
	margin-top: -34px;
	margin-left: 60px;
	width: 280px;
	color: #fffaf0;
	background: #ff9888;
	padding: 10px 0;
	font-size: 18px;
	border: none;
	border-radius: 9px;
}

@media screen and (max-width:54.8em) {
	.quant_select input {
		margin-left: auto;
		max-width: 280px;
		width: 60%;
	}
}

.quant_select input:hover {
	background: #ffd387;
}

.sp_banner {
	text-align: center;
}

.sp_banner img {
	max-width: 98%;
}

/* カート・会員登録：nav */

.cart_nav {
	font-size: 20px;
	cursor: none;
}

@media screen and (max-width:54.8em) {
	.cart_nav {
		display: none;
	}
}

.cart_nav li {
	background: #ffe9e6;
	color: #ff9888;
	border: 1px solid #ff9888;
}

.cart_nav li:hover {
	background: #ffe9e6;
	border-radius: 10px;
}

.cart_nav .cart_nav_now {
	background: #ff9888;
	color: #fffaf0;
}

.cart_nav .cart_nav_now:hover {
	background: #ff9888;
	color: #fffaf0;
}

/*カート*/

.cart_container {
	margin: 50px 20px 0 20px;
}

@media screen and (max-width: 54.8em) {
	.cart_container {
		margin: 0 15px;
	}
}

.cart_container h2 {
	color: #ff9888;
	font-size: 30px;
	font-weight: normal;
}

.cart_container h3 {
	font-weight: normal;
	font-size: 20px;
	margin-top: 15px;
}

.cart_container img {
	margin-bottom: 8px;
	margin-right: 10px;
}

.cart {
	margin-top: 30px;
	border-collapse: collapse;
}

@media screen and (max-width: 825px) {
	.cart {
		display: block;
		overflow-x: scroll;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
}

.cart tr:first-child,
tr:last-child {
	background: #ffe9e6;
}

.cart th,
td {
	border: 1px solid #ff9888;
	padding: 10px;
	vertical-align: middle;
}

.cart th {
	color: #600c00;
	font-weight: normal;
}

.cart td {
	text-align: center;
	color: #666;
}

.cart td img {
	width: 180px;
	margin-right: 0;
	margin-left: 0;
}

#cart_item_name {
	text-align: left;
	vertical-align: top;
}

#cart_sum {
	text-align: right;
	padding-right: 10px;
	color: #600c00;
}

.del {
	background: #ff9888;
	color: #fffaf0;
	border: none;
	padding: 3px 20px;
	border-radius: 7px;
}

.del:hover {
	background: #ffd387;
}

.souryou {
	margin: 0 auto;
	padding: 60px 0;
	color: #600c00;
	display: flex;
	justify-content: center;
}

.souryou img {
	height: 5rem;
	margin-top: 15px;
	margin-right: 15px;
}

.souryou span {
	font-size: 2rem;
	margin: 0 5px;
}

@media screen and (max-width: 425px) {
	.cart td img {
		max-width: 100px;
		margin-right: 0;
		margin-left: 0;
	}

	.souryou img {
		height: 4rem;
		margin-top: 0;
		margin-left: 10px;
		display: none;
	}

	.souryou p {
		font-size: 1.3em;
		margin-right: 10px;
	}

	.souryou span {
		font-size: 1.2em;
		font-weight: bold;
	}
}

.cart_choice {
	display: flex;
	justify-content: space-around;
}

@media screen and (max-width: 876px) {
	.cart_choice {
		justify-content: flex-start;
		flex-direction: column-reverse;
	}

	.cart_choice_go {
		padding-bottom: 30px;
		text-align: center;
	}

	.cart_choice_back {
		margin: 0 auto 1em;
		text-align: center;
	}
}

.cart_choice button {
	width: 360px;
	height: 50px;
	font-size: 20px;
	border-radius: 8px;
	background: #ff9888;
	border: 1px solid #ff9888;
	color: #fffaf0;
}

@media screen and (max-width:54.8em) {
	.cart_choice button {
		width: 100%;
		max-width: 360px;
	}
}

.cart_choice button:hover {
	border: 1px solid #ffd387;
	background: #ffd387;
}

/*go*/
.cart_choice_go p {
	text-align: center;
	margin-top: 10px;
}

.cart_choice_go a {
	color: #ff9888;
}

.cart_choice_go a:hover {
	color: #ffd387;
}

/*back*/
.cart_choice_back {
	width: 360px;
	height: 45px;
	font-size: 20px;
	border-radius: 8px;
	background: #ffe9e6;
	border: 1px solid #ff9888;
	text-align: center;
	vertical-align: middle;
}

.cart_choice_back button {
	background: #ffe9e6;
	color: #ff9888;
}

.cart_choice_back button:hover {
	color: #fffaf0;
}

.cart_choice_back:hover {
	border: 1px solid #ffd387;
	background: #ffd387;
	border-radius: 8px;
}

@media screen and (max-width:54.8em) {
	.cart_choice_back {
		max-width: 360px;
		width: 100%;
	}
}

.cart_choice_back p {
	margin-left: 210px;
	margin-top: 10px;
}

.cart_choice_back a {
	padding-top: 8px;
	color: #ff9888;
	display: block;
	height: 20px;
}

.cart_choice_back a:hover {
	border: 1px solid #ffd387;
	background: #ffd387;
	color: #fffaf0;
	text-decoration: none;
}

/*カート：確認ページ*/

.cart_check {
	margin: 20px 0 35px;
	border-collapse: collapse;
}

@media screen and (max-width: 675px) {
	.cart_check {
		display: block;
		overflow-x: scroll;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
}

.cart_check th,
td {
	border: 1px solid #ff9888;
	padding-left: 15px;
	vertical-align: middle;
	text-align: center;
	color: #600c00;
}

.check_data {
	color: #666;
}

.check_photo {
	width: 155px;
	align-items: center;
}

.check_photo img {
	width: 150px;
}

.cart_check tr:nth-child(odd) {
	background: #ffe9e6;
}

.cart_check tr:nth-child(even) {
	background: #fffaf0;
}

.check {
	margin: 20px 0 35px;
	border-collapse: collapse;
}

.check td {
	border: 1px solid #ff9888;
	padding-left: 15px;
	vertical-align: middle;
	text-align: left;
}

.check td:nth-child(odd) {
	background: #ffe9e6;
	width: 40%;
}

.check td:nth-child(even) {
	background: #fffaf0;
}

.changebtn {
	text-align: right;
	margin-top: -20px;
	margin-bottom: 40px;
}

.changebtn a {
	background: #ff9888;
	color: #fffaf0;
	border-radius: 6px;
	padding: 5px 10px;
}

.changebtn a:hover {
	background: #ffd387;
	text-decoration: none;
}

.pay_method {
	margin-top: 30px;
	margin-bottom: 90px;
}

.pay_method td {
	text-align: left;
	background: #fffaf0;
}

.pay_method td:first-child {
	background: #ffe9e6;
}

.pay_method td label {
	margin-right: 100px;
}

.pay_method td label:last-child {
	margin-right: 10px;
}

@media screen and (max-width: 840px) {
	.pay_method td label {
		margin-right: 6vw;
	}

	.pay_method td label:last-child {
		margin-right: 10px;
	}
}

.pay_method input {
	margin-bottom: 5px;
}

#card_form {
	display: none;
}

#other_pay {
	display: none;
}

#card_form td {
	padding: 20px;
	padding-left: 30px;
	background: #fffaf0;
}

@media screen and (max-width:675px) {
	#card_form td {
		padding-left: 1em;
	}
}

#other_pay td {
	padding: 20px 80px;
	background: #fffaf0;
	font-size: 15px;
	text-align: center;
}

@media screen and (max-width:54.8em) {
	#other_pay td {
		padding: 20px 30px;
	}
}

.card_form_inner {
	display: grid;
	grid-template-columns: 150px 200px;
	grid-template-rows: 1fr 1fr 1fr 1fr;
	grid-column-gap: 100px;
	grid-row-gap: 30px;
}

@media screen and (max-width: 675px) {
	.card_form_inner {
		display: grid;
		grid-template-columns: 3fr 4fr;
		grid-template-rows: 1fr 1fr 1fr 1fr;
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
}

.card_form_1-1 {
	grid-column: 1-1;
	grid-row: 1-1;
}

.card_form_1-2 {
	grid-column: 1-2;
	grid-row: 1-2;
}

.card_form_2-1 {
	grid-column: 2-1;
	grid-row: 2-1;
}

.card_form_2-2 {
	grid-column: 2-2;
	grid-row: 2-2;
}

.card_form_3-1 {
	grid-column: 3-1;
	grid-row: 3-1;
}

.card_form_3-2 {
	grid-column: 3-2;
	grid-row: 3-2;
}

.card_form_4-1 {
	grid-column: 4-1;
	grid-row: 4-1;
}

.card_form_4-2 {
	grid-column: 4-2;
	grid-row: 4-2;
}

.card_form_1-2,
.card_form_2-2,
.card_form_3-2,
.card_form_4-2 {
	color: #666;
}

.card_form_inner .form_long {
	max-width: 90%;
}

.card_form_3-2 select {
	border: 2px solid #ff9888;
	border-radius: 6px;
	height: 24px;
	margin-right: 7px;
}

.card_form_1-2,
.card_form_2-2 {
	display: flex;
	flex-flow: column;
}

.card_must {
	color: #f00;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 15px;
	display: block;
}

.check_choice {
	margin-top: 30px;
	text-align: center;
}

@media screen and (max-width:54.8em) {
	.check_choice {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		flex-flow: column;
	}
}

.check_choice button {
	width: 360px;
	height: 50px;
	font-size: 20px;
	border-radius: 8px;
}

@media screen and (max-width:54.8em) {
	.check_choice button {
		max-width: 90%;
	}
}

.check_choice_back {
	margin-right: 20px;
}

@media screen and (max-width:54.8em) {
	.check_choice_back {
		margin-right: 0;
		margin-bottom: 20px;
	}
}

.check_choice_back button {
	border: #ff9888 1px solid;
	background: #ffe9e6;
	color: #ff9888;
	padding-left: 18px;
}

.check_choice_go {
	margin-left: 20px;
}

@media screen and (max-width:54.8em) {
	.check_choice_go {
		margin-left: 0;
	}
}

.check_choice_go button {
	background: #ff9888;
	border: 1px solid #ff9888;
	color: #fffaf0;
}

.check_choice button:hover {
	border: 1px solid #ffd387;
	background: #ffd387;
	color: #fffaf0;
}

/*会員登録*/
.touroku {
	margin: 20px 0 35px;
	border-collapse: collapse;
}

.touroku td {
	border: 1px solid #ff9888;
	padding: 18px 25px;
	position: relative;
	text-align: left;
}

@media screen and (max-width:425px) {
	.touroku td {
		padding: 12px;
		border: 1px solid #ff9888;
		width: 70%;
	}

	.touroku td input,
	.touroku td select {
		margin-bottom: 10px;
	}
}

.touroku td:nth-child(odd) {
	background: #ffe9e6;
	width: 30%;
	vertical-align: top;
}

.touroku td:nth-child(even) {
	width: 70%;
}

@media screen and (max-width:425px) {
	.touroku td:nth-child(odd) {
		width: 20%;
	}

	.touroku td:nth-child(even) {
		width: 80%;
	}
}

.touroku td:nth-child(even) {
	background: #fffaf0;
	color: #600c00;
}

.touroku_must {
	color: #f00;
	position: absolute;
	right: 18px;
	top: 18px;
}

@media screen and (max-width:700px) {
	.touroku_must {
		position: relative;
		top: 0;
		right: 0;
		bottom: 0;
	}
}

.form_long,
.form_mid,
.form_short {
	padding: 4px 6px;
	font-size: 1.2rem;
	border-radius: 6px;
	border: 2px solid #ff9888;
	color: #666;
}

.form_long {
	width: 300px;
}

.form_mid {
	width: 150px;
}

.form_short {
	width: 80px;
}

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

	.form_long,
	.form_mid,
	.form_short {
		border-radius: 0;
	}

	.form_long {
		width: 90%;
		max-width: 15em;
	}

	.form_mid {
		width: 10em;
	}

	.form_short {
		width: 7em;
	}
}

.select_form select {
	border: 2px solid #ff9888;
	height: 3rem;
	border-radius: 6px;
	font-size: 1.2rem;
	color: #999;
}

@media screen and (max-width:425px) {
	.select_form select {
		height: 2em;
	}
}

.form_horizontal {
	display: flex;
}

.form_horizontal div {
	margin-right: 50px;
}

@media screen and (max-width:425px) {
	.form_horizontal {
		flex-flow: wrap;
	}

	.form_horizontal div {
		margin-right: 0;
	}

	.form_horizontal .select_form:first-child {
		margin-right: 1.5em;
	}
}

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

.touroku_alert a,
.go_to_password {
	color: #ff9888;
}

.touroku_alert a:hover,
.go_to_password:hover {
	color: #ffd387;
}

.go_to_password {
	font-weight: bold;
	font-size: 15px;
}

.touroku_next {
	text-align: center;
}

.touroku_next input {
	font-size: 18px;
	color: #fffaf0;
	background: #ff9888;
	border: none;
	border-radius: 10px;
	padding: 10px 110px;
	max-width: 80%;
}

@media screen and (max-width:54.8em) {
	.touroku_next input {
		padding: 10px 50px;
		font-size: 1.2em;
	}
}

.touroku_next input:hover {
	background: #ffd387;
}

/*登録：確認*/
.check_container table {
	width: 980px;
}

.check_alert {
	color: #f00;
	font-size: 16px;
	font-weight: bold;
	margin-top: 60px;
	text-align: center;
}

/*カート・登録：完了*/
.cart_comp {
	text-align: center;
	margin-top: 20px;
}

.cart_comp_top {
	display: flex;
	justify-content: center;
	vertical-align: baseline;
	margin: 20px 0 0;
}

.cart_comp_top h2 {
	font-size: 1.75em;
	color: #ff9888;
	font-weight: normal;
	padding: 0;
	margin-top: 13px;
}

@media screen and (max-width:54.8em) {
	.cart_comp_top h2 {
		margin-top: 3px;
		font-size: 1.5em;
	}
}

.cart_comp .cart_comp_top img {
	width: auto;
	height: 40px;
	margin: 0 40px;
}

@media screen and (max-width:54.8em) {
	.cart_comp .cart_comp_top img {
		margin: 0 15px;
		height: 2em;
	}
}

.cart_comp img {
	margin-top: 10px;
	height: 400px;
	width: auto;
}

@media screen and (max-width:1000px) {
	.cart_comp img {
		height: 300px;
		width: auto;
	}
}

@media screen and (max-width:425px) {
	.cart_comp img {
		width: 80%;
		height: auto;
	}
}

.cart_comp p {
	margin: 40px 0 60px;
	color: #600c00;
}

@media screen and (max-width:54.8em) {
	.cart_comp p {
		margin-left: 2em;
		margin-right: 2em;
	}
}

.cart_comp a {
	margin-top: 20px;
	color: #fffaf0;
	font-size: 1.2rem;
	border: 1px solid #ff9888;
	background: #ff9888;
	padding: 10px 100px;
	border-radius: 10px;
}

.cart_comp a:hover {
	background: #ffd387;
	border: 1px solid #ffd387;
	text-decoration: none;
}

/*ログイン*/

@media screen and (min-width:1200px) {
	.login_container {
		margin-left: 33px;
		margin-right: 30px;
	}
}

.login_container h2 {
	color: #ff9888;
	font-size: 30px;
	font-weight: normal;
}

@media screen and (max-width:54.8em) {
	.login_container h2 {
		margin-left: 1em;
	}
}

.login_container h3 {
	font-weight: normal;
	font-size: 20px;
	margin-top: 15px;
}

.login_container img {
	margin-bottom: 8px;
	margin-right: 10px;
}

.login_inner {
	margin-top: 30px;
	margin-right: 1px;
	display: flex;
	justify-content: center;
}

.login_inner > div {
	border: 1px solid #ff9888;
	flex: 1 1 auto;
}

@media screen and (max-width:54.8em) {
	.login_inner {
		flex-flow: column;
	}
}

.login_form {
	margin-right: 13px;
}

.new_member {
	margin-left: 13px;
	position: relative;
}

@media screen and (max-width:54.8em) {

	.login_form,
	.new_member {
		margin-right: 10px;
		margin-left: 10px;
	}
}

.login_form h3,
.new_member h3 {
	text-align: center;
	border-bottom: 1px solid #ff9888;
	margin-top: 0;
	padding: 6px;
	background: #ffe9e6;
}

.login_form img,
.new_member img {
	margin-bottom: 0;
}

.login p {
	margin: 30px 90px;
	position: relative;
}

@media screen and (max-width:54.8em) {
	.login p {
		margin: 20px 10px;
	}
}

.login input {
	border: 1px solid #ff9888;
}

.login p input {
	position: absolute;
	right: 0;
	height: 20px;
}

.login_button {
	margin: 10px 90px;
	width: 295px;
	padding: 10px 0;
	font-size: 18px;
	background: #ff9888;
	color: #fffaf0;
	border-radius: 10px;
}

@media screen and (max-width:1000px) {
	.login_button {
		position: relative;
		right: 20%;
		left: 20%;
		width: 60%;
		margin: 10px 0;
		max-width: 295px;
		font-size: 1.1em;
		padding: 5px 0;
	}

	@media screen and (min-width:425px) {
		.login_button {
			left: 33%;
			width: 33%;
		}
	}
}

.login_button:hover {
	background: #ffd387;
	border: 1px solid #ffd387;
}

.go_password_reset {
	text-align: center;
}

.go_password_reset a,
.new_member a {
	color: #ff9888;
}

.go_password_reset a:hover,
.new_member a:hover {
	color: #ffd387;
}

.new_member p {
	margin: 30px 65px;
}

@media screen and (max-width:54.8em) {
	.new_member p {
		margin: 20px 30px;
	}
}

.new_member .go_touroku {
	text-align: center;
	border: 1px solid #ff9888;
	background: #ff9888;
	border-radius: 10px;
	padding: 10px 10px;
	position: absolute;
	width: 295px;
	left: 15px;
	bottom: 51px;
}

@media screen and (max-width:1000px) {
	.new_member .go_touroku {
		margin: 15px 0;
		border-radius: 5px;
		width: 50%;
		position: relative;
		left: 22%;
		bottom: 10px;
	}
}

.go_touroku:hover {
	background: #ffd387;
	border: 1px solid #ffd387;
}

.go_touroku a {
	color: #fffaf0;
	font-size: 18px;
}

.go_touroku a:hover {
	color: #fffaf0;
	text-decoration: none;
}

/*パスワード変更*/
.password_reset td {
	padding: 28px 20px;
}

.password_reset input {
	height: 25px;
}

/*お問い合わせ*/
.question_container section {
	margin: 50px 0;
}

.question_container section p {
	margin: 20px 0;
}

.question_container .question_alert {
	color: #f00;
}

.question_container section a {
	margin-top: 60px;
	margin-right: 40px;
	color: #fffaf0;
	background: #ff9888;
	padding: 8px 70px;
	border-radius: 10px;
	font-size: 24px;
	vertical-align: center;
	font-weight: normal;
}

.question_container section a:hover {
	background: #ffd387;
	text-decoration: none;
}

@media screen and (max-width:54.8em) {
	.question_container section div {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		flex-flow: column;
	}

	.question_container section div a {
		margin-right: 0;
		margin-left: 2em;
		margin-right: 2em;
		padding: 8px 20px;
		font-size: 1.6em;
	}
}

.question_container img {
	margin-bottom: 4px;
}

.question_form td {
	padding: 20px;
}

.question_form textarea {
	border: 1px solid #ff9888;
	width: 100%;
	max-width: 450px;
	height: 180px;
}

/*ご利用ガイド*/
.guide_container {
	margin-right: 30px;
	margin-top: 50px;
	display: flex;
}

@media screen and (max-width:54.8em) {
	.guide_container {
		margin-right: 0;
		flex-flow: column-reverse;
	}
}

.guide_sidebar {
	flex: 0 0 235px;
	color: #600c00;
	font-size: 18px;
	line-height: 2.0;
}

@media screen and (max-width:54.8em) {
	.guide_sidebar {
		margin-left: 1em;
		flex: 1 1 auto;
		margin-top: 2em;
	}
}

.guide_sidebar p {
	font-size: 20px;
}

.guide_sidebar img {
	width: 30px;
	height: auto;
	margin-right: 4px;
}

.guide_sidebar ul {
	list-style: none;
}

.guide_sidebar li a {
	color: #600c00;
	font-size: 1em;
}

.guide_sidebar li a span {
	margin-left: 2.4rem;
}

.guide_sidebar li {
	margin: 18px 0;
}

.guide_sidebar li img {
	margin-bottom: 0;
	height: 24px;
	width: 1.8rem;
	height: auto;
	margin-right: 8px;
}

.guide_top,
.guide {
	flex: 1 1 auto;
	margin-left: 50px;
}

@media screen and (max-width:54.8em) {

	.guide_top,
	.guide {
		margin-left: 0;
	}

	.guide_alt {
		margin-left: 2em;
		margin-right: 1em;
	}
}

.guide_top h2,
.guide h2 {
	color: #ff9888;
	font-size: 30px;
	font-weight: normal;
	margin-bottom: 20px;
}

@media screen and (max-width:54.8em) {

	.guide_top h2,
	.guide h2 {
		margin-left: 1em;
	}
}

.guide_top h2 img,
.guide h2 img {
	margin-right: 10px;
	margin-bottom: 2px;
	height: 40px;
}

.guide_catch {
	margin-left: 200px;
	width: 380px;
	height: auto;
}

@media screen and (max-width:54.8em) {
	.guide_catch {
		margin-left: 20%;
		width: 60%;
	}
}

.guide_top p {
	color: #600c00;
	text-align: center;
	margin-top: 10px;
}

.guide ul {
	margin-top: 50px;
}

@media screen and (max-width:54.8em) {
	.guide ul {
		margin-left: 2em;
		margin-right: 1em;
	}
}

.guide li {
	color: #666;
	margin-bottom: 30px;
	line-height: 1.7;
	font-size: 16px;
}

@media screen and (max-width:54.8em) {
	.guide a {
		padding-left: 2em;
		word-break: break-all;
	}
}

.guide_alt li {
	list-style: none;
}

.guide_alt h3 li {
	color: #600c00;
	font-size: 24px;
	list-style: disc;
}

.guide_alt h3 {
	color: #600c00;
	font-size: 22px;
	margin-top: 20px;
}

.guide_alt div {
	margin: 20px 0;
}

.guide_warning {
	color: #600c00;
	text-decoration: underline;
	font-weight: bold;
	font-size: 18px;
}

.guide_alert {
	color: #f00;
}

.guide_card {
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width:54.8em) {
	.guide_card img {
		width: 30%;
		height: auto;
	}
}

.guide_altNo li {
	list-style: decimal;
	line-height: 1.0;
}

.guide_altNo > li {
	font-size: 20px;
	color: #600c00;
	font-weight: bold;
}

@media screen and (max-width:54.8em) {
	.guide_altNo > li {
		margin-left: 1em;
	}
}

.guide_altNo ol > li {
	list-style: none;
}

.guide_altNo div ul,
.guide_altNo div ol {
	margin-left: 2rem;
}

.guide_altNo div span {
	color: #f00;
}

.kiyaku {
	color: #666;
	font-size: 15px;
}

@media screen and (max-width:54.8em) {
	.kiyaku {
		margin-left: 2em;
		margin-right: 1em;
	}
}

.kiyaku > ol > li {
	list-style: decimal;
	line-height: 1.5;
	margin: 35px 0;
	font-size: 17px;
}

.kiyaku ol {
	margin-left: 2rem;
}

.kiyaku > p {
	margin-bottom: 30px;
}

.kiyaku ol > p {
	margin-bottom: 30px;
}

.kiyaku_kakko li {
	list-style: none;
}

.kiyaku a {
	font-weight: bold;
	margin-left: 1.5rem;
	text-decoration: underline;
}

/*会社情報*/

.company_container h2 {
	color: #ff9888;
	font-size: 30px;
	font-weight: normal;
	padding-bottom: 30px;
}

.conpany_container td {
	padding: 20px;
}

.setsumei {
	margin: 40px 0;
}

.company_container ol p {
	margin: 0 0 40px 0;
}

.company_container ol {
	margin-left: 1.5rem;
}

.company_container a {
	color: #600c00;
	font-weight: bold;
}

.company_container li {
	margin-left: 1rem;
}

.company_container li img {
	width: auto;
	height: 2rem;
}

@media screen and (max-width:1200px) {
	.company_container {
		margin: 0 5%;
		max-width: 90%;
	}

	.company_container iframe {
		width: 45vw;
		height: auto;
	}
}

/*FAQ*/
@media screen and (max-width:1024px) {
	.qanda_container {
		margin-left: 5%;
		margin-right: 5%;
	}
}

.qanda_container h2 {
	font-size: 24px;
	margin-bottom: 18px;
	color: #ff9888;
}

.qanda_container h2 img {
	margin-bottom: 5px;
	margin-right: 5px;
}

.qanda_container h3 {
	font-size: 18px;
	margin-bottom: 18px;
	margin-left: 16px;
}

.accordion-container {
	position: relative;
	width: 100%;
	border-top: none;
	outline: 0;
	cursor: pointer;
	margin-bottom: 20px;
}

.accordion-container .article-title {
	display: block;
	position: relative;
	margin: 0;
	padding: 0.625em 0.625em 0.625em 2em;
	font-size: 1.25em;
	font-weight: normal;
	color: #600c00;
	background: #ffe9e6;
	cursor: pointer;
	border-radius: 10px;
}

@media screen and (max-width:54.8em) {
	.accordion-container .article-title {
		padding-right: 2em;
		padding-left: 1em;
	}
}

.accordion-container .article-title:hover,
.accordion-container .article-title:active,
.accordion-container .article-title.open,
.accordion-container .content-entry.open .article-title {
	background-color: #ffd387;
}

.accordion-container > div {
	display: none;
}

.article-title:after {
	content: "";
	position: absolute;
	right: 25px;
	top: 38%;
	transition: all 0.2s ease-in-out;
	display: block;
	width: 8px;
	height: 8px;
	border-top: solid 2px #600c00;
	border-right: solid 2px #600c00;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.article-title img {
	margin-right: 10px;
}

.article-title.open:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
}

.accordion-content {
	margin-left: 35px;
	font-size: 1.1em;
	margin-top: 10px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-flow: row;
}

@media screen and (max-width:54.8em) {
	.accordion-content {
		margin-left: 1em;
		margin-right: 1em;
	}
}

.accordion-content p {
	color: #666;
	max-width: 950px;
}

.accordion-content img {
	margin-right: 10px;
	margin-top: 0;
	height: 32px;
	object-fit: contain;
}

.accordion-content a {
	font-weight: bold;
}

/*バレンタインここから*/
.catch_container {
	padding-top: 20px;
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.balloon p {
	color: #600c00;
	line-height: 2;
	margin: 0;
	padding: 0;
}

.balloon p span {
	color: #ff9888;
}

/*商品画像*/
.click1,
.click2,
.click3 {
	display: flex;
	justify-content: space-around;
	margin-bottom: 10px;
	vertical-align: middle;
}

/*商品説明*/
.back_2 {
	color: #600c00;
	padding: 0 20px;
}

.back_2 span {
	display: inline-block;
	color: #ff9888;
	padding-top: 10px;
}

/*---------------------- 768px以上 ----------------------*/
@media screen and (min-width: 54.8em) {

	.fair {
		max-width: 1100px;
		margin: 0 auto;
		padding: 10px 20px 0 20px;
	}

	.banner img {
		width: 100%;
		max-width: 1100px;
		height: auto;
	}

	.gif img {
		padding-top: 20px;
		width: 100%;
		max-width: 300px;
		height: auto;
	}

	.balloon {
		position: relative;
		display: inline-block;
		margin: 1.5em 15px 1.5em 0;
		padding: 30px;
		min-width: 120px;
		max-width: 100%;
		font-size: 16px;
		background: #fff;
		border-radius: 20px;
		line-height: 2rem;
		border: 1px solid #ff9888;
	}

	.balloon ::before {
		content: "";
		position: absolute;
		top: 30%;
		right: -24px;
		margin-top: -12px;
		border: 12px solid transparent;
		border-left: 12px solid #FFF;
		z-index: 2;
	}

	.balloon ::after {
		content: "";
		position: absolute;
		top: 30%;
		right: -25px;
		margin-top: -12px;
		border: 12px solid transparent;
		border-left: 12px solid #ff9888;
		z-index: 1;
	}

	.item_v1 a img {
		margin-top: 150px;
		margin-bottom: 150px;
		margin-right: 0;
		margin-left: 0;
		width: 150px;
		height: auto;
		object-fit: none;
		object-position: 57% 60%;
		border-radius: 50%;
		-ms-transition-duration: 0.2s;
		transition-duration: 0.2s;
	}

	.item_v2 a img {
		margin-top: 150px;
		margin-bottom: 150px;
		width: 150px;
		height: auto;
		object-fit: none;
		object-position: 38% 58%;
		border-radius: 50%;
		position: relative;
		-ms-transition-duration: 0.2s;
		transition-duration: 0.2s;
	}

	.item_v3 a img {
		margin-top: 150px;
		margin-bottom: 150px;
		width: 150px;
		height: auto;
		object-fit: none;
		object-position: 9% 60%;
		border-radius: 50%;
		position: relative;
		-ms-transition-duration: 0.2s;
		transition-duration: 0.2s;
	}

	.item_v1 a img:hover,
	.item_v3 a img:hover {
		margin-top: 0;
		margin-bottom: 0;
		margin-left: 0;
		margin-right: 10px;
		width: 400px;
		object-fit: cover;
		border-radius: 30px;
	}

	.item_v2 a img:hover {
		margin-top: 0;
		margin-bottom: 0;
		margin-right: 0;
		margin-left: 10px;
		width: 400px;
		object-fit: cover;
		border-radius: 30px;
	}

	/*商品説明*/
	.back {
		margin-top: 100px;
		margin-bottom: 100px;
		padding: 60px 20px 50px 20px;
		display: flex;
		justify-content: space-between;
		background-color: #FFE9E6;
		border-radius: 30px;
	}

	.back_1 img {
		width: 100%;
		max-width: 8vw;
		height: auto;
		margin: 0 auto;
		padding-left: 20px;
	}

	.back_2 {
		font-size: 1.4vw;
	}

	.back_2 span {
		font-size: 1vw;
	}
}

/*---------------------- 768px以上 ----------------------*/

/*---------------------- 768px以下 ----------------------*/
@media screen and (max-width: 54.8em) {
	.fair {
		max-width: 768px;
		margin: 0 auto;
		padding: 10px 10px;
	}

	.banner img {
		width: 100%;
		max-width: 768px;
		height: auto;
	}

	.catch_container {
		padding-top: 20px;
		display: flex;
		flex-direction: column;
		margin-bottom: 50px;
	}

	.click1,
	.click2,
	.click3 {
		margin-bottom: 100px;
	}

	.balloon p {
		position: relative;
		padding: 20px 30px;
		background: #fff;
		border-radius: 20px;
		font-size: 13px;
		border: 1px solid #ff9888;
	}

	.balloon p ::after {
		position: absolute;
		content: '';
		top: 100%;
		right: 120px;
		border: 15px solid transparent;
		border-top: 15px solid #fff;
		width: 0;
		height: 0;
		z-index: 2;
	}

	.balloon p ::before {
		position: absolute;
		content: '';
		top: 101%;
		right: 120px;
		border: 15px solid transparent;
		border-top: 15px solid #ff9888;
		width: 0;
		height: 0;
		z-index: 1;
	}

	.gif {
		text-align: right;
	}

	.gif img {
		padding-top: 20px;
		width: 100%;
		max-width: 150px;
		height: auto;
	}

	/*商品画像*/
	.item_v1 a img {
		margin-top: 16px;
		margin-bottom: 16px;
		margin-left: 0;
		margin-right: 3vw;
		width: 100%;
		max-width: 150px;
		height: auto;
		object-fit: none;
		object-position: 57% 60%;
		border-radius: 50%;
	}

	.item_v2 a img {
		margin-top: 16px;
		margin-bottom: 16px;
		margin-left: 3vw;
		margin-right: 0;
		width: 100%;
		max-width: 150px;
		height: auto;
		object-fit: none;
		object-position: 38% 58%;
		border-radius: 50%;
		position: relative;
	}

	.item_v3 a img {
		margin-top: 16px;
		margin-bottom: 16px;
		margin-left: 0;
		margin-right: 3vw;
		width: 100%;
		max-width: 150px;
		height: auto;
		object-fit: none;
		object-position: 18% 58%;
		border-radius: 50%;
		position: relative;
	}

	/*商品説明*/
	.back {
		margin-top: 0;
		margin-bottom: 0;
		margin-right: 10px;
		margin-left: 10px;
		padding: 20px 0 15px 20px;
		display: flex;
		justify-content: space-between;
		background-color: #FFE9E6;
		border-radius: 10px;
	}

	.back_1 img {
		width: 100%;
		max-width: 80px;
		height: auto;
		padding: 0 5px;
	}

	.back_2 {
		font-size: 12px;
	}

	.back_2 span {
		font-size: 10px;
	}
}

/*バレンタインここまで*/

/*エラーページここから*/
.error_container {
	padding-top: 20px;
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.error_inner {
	margin: 0 auto;
}

.error_back {
	width: 360px;
	height: 50px;
	border-radius: 8px;
	background: #ff9888;
	border: 1px solid #ff9888;
	font-size: 20px;
	margin: 0 auto;
	margin-bottom: 100px;
}

.error_back a {
	display: block;
	text-align: center;
	color: #fffaf0;
}

.error_back:hover {
	border: 1px solid #ffd387;
	background: #ffd387;
}

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

/*---------------------- 768px以上 ----------------------*/
@media screen and (min-width: 54.8em) {
	.error {
		max-width: 1100px;
		margin: 0 auto;
		padding: 10px 20px 0 20px;
	}

	.error_banner img {
		display: block;
		width: 100%;
		max-width: 1000px;
		height: auto;
		padding-top: 80px;
		padding-bottom: 20px;
		margin: 0 auto;
	}

	.nopage {
		display: block;
		text-align: center;
		line-height: 2;
		letter-spacing: 2px;
	}

	.nopage div:first-child {
		color: #ff9888;
		font-weight: bold;
		font-size: 20px;
		margin-bottom: 40px;
	}

	.nopage div:last-child {
		color: #600c00;
		font-size: 16px;
		margin-bottom: 100px;
	}

	.error_back a {
		padding: 10px 0;
	}
}

/*---------------------- 768px以上 ----------------------*/

/*---------------------- 768px以下 ----------------------*/
@media screen and (max-width: 54.8em) {
	.error {
		max-width: 768px;
		margin: 0 auto;
		padding: 10px 10px 0 10px;
	}

	.error_banner img {
		display: block;
		width: 100%;
		min-width: 0;
		height: auto;
		padding-top: 30px;
		padding-bottom: 15px;
		margin: 0 auto;
	}

	.nopage {
		display: block;
		text-align: center;
		line-height: 1.5;
		letter-spacing: 1.5px;
	}

	.nopage div:first-child {
		color: #ff9888;
		font-weight: bold;
		font-size: 14px;
		margin-bottom: 30px;
	}

	.nopage div:last-child {
		display: block;
		margin: 0 auto;
		color: #600c00;
		font-size: 12px;
		margin-bottom: 80px;
		line-height: 2;
	}

	.error_back {
		width: 100%;
		max-width: 360px;
		height: 40px;
		border-radius: 8px;
		background: #ff9888;
		border: 1px solid #ff9888;
		font-size: 16px;
		margin: 0 auto;
		margin-bottom: 100px;
	}

	.error_back:hover {
		border: 1px solid #ff9888;
		background: #ff9888;
	}

	.error_back a {
		padding: 8px 0;
	}
}

/*---------------------- 768px以下 ----------------------*/
/*エラーページここまで*/

/*エラー赤字*/
.err {
	color: #f00;
}

/* iOSでのデフォルトスタイルをリセットここまで */

input[type="text"]:focus {
	outline: 0;
}

select:focus {
	outline: 0;
}
