@charset "utf-8";
/*! normalize.css 2012-07-07T09:50 UTC - https://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects `block` display not defined in IE6/7/8/9 & bbc.
 */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
	display: block;
}
/*
 * Corrects `inline-block` display not defined in IE6/7/8/9 & bbc.
 */
audio, canvas, video {
	display: inline-block;
 *display: inline;
 *zoom: 1;
}
/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS5 devices.
 */
audio:not([controls]) {
	display: none;
	height: 0;
}
/*
 * Addresses styling for `hidden` attribute not present in IE7/8/9, bbc, S4.
 * Known issue: no IE6 support.
 */
[hidden] {
	display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
	font-size: 100%;
	/* 1 */
	-webkit-text-size-adjust: 100%;
	/* 2 */
	-ms-text-size-adjust: 100%;/* 2 */
}
/*
 * Addresses `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html, button, input, select, textarea {
	font-family: sans-serif;
}
/*
 * Addresses margins handled incorrectly in IE6/7.
 */
body {
	margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
	outline: thin dotted;
}
/*
 * Improves readability when focused and also mouse hovered in all browsers.
 * people.opera.com/patrickl/experiments/keyboard/test
 */
a:active, a:hover {
	outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Addresses font sizes and margins set differently in IE6/7.
 * Addresses font sizes within `section` and `article` in FF4+, Chrome, S5.
 */


/*
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}
h2 {
	font-size: 1.5em;
	margin: 0.5em 0;
	line-height: 1.8em;
}
h3 {
	font-size: 1.5em;
	margin: 1em 0;
	line-height: 1.6em;
}
h4 {
	font-size: 1em;
	margin: 1.33em 0;
	font-weight: lighter;
}
h5 {
	font-size: 0.83em;
	margin: 1.67em 0;
}
h6 {
	font-size: 0.75em;
	margin: 2.33em 0;
}
h7 {
	font-size: 1.5em;
	margin: 1em 0;
	line-height: 1.6em;
	color: #333;
	font-weight: 600;
}
h8 {
	font-size: 25px;
	text-align: left;
	margin: 1em 0;
	line-height: 1.6em;
	color: #bbc300;
	font-weight: 600;
}
*/


/*
 * Addresses styling not present in IE7/8/9, S5, Chrome.
 */
abbr[title] {
	border-bottom: 1px dotted;
}
/*
 * Addresses style set to `bolder` in bbc+, S4/5, Chrome.
 */
b, strong {
	font-weight: bold;
}
blockquote {
	margin: 1em 40px;
}
/*
 * Addresses styling not present in S5, Chrome.
 */
dfn {
	font-style: italic;
}
/*
 * Addresses styling not present in IE6/7/8/9.
 */
mark {
	background: #ff0;
	color: #333;
}
/*
 * Addresses margins set differently in IE6/7.
 */
p, pre {
	margin: 1em 0;
}
/*
 * Corrects font family set oddly in IE6, S4/5, Chrome.
 * en.wikipedia.org/wiki/User:Davidgothberg/Test59
 */
code, kbd, pre, samp {
	font-family: monospace, serif;
	_font-family: 'courier new', monospace;
	font-size: 1em;
}
/*
 * Improves readability of pre-formatted text in all browsers.
 */
pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}
/*
 * Addresses CSS quotes not supported in IE6/7.
 */
q {
	quotes: none;
}
/*
 * Addresses `quotes` property not supported in S4.
 */
q:before, q:after {
	content: '';
	content: none;
}
small {
	font-size: 75%;
}
/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 * gist.github.com/413930
 */
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
/* ==========================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl, menu, ol, ul {
	margin: 1em 0;
}
dd {
	margin: 0 0 0 40px;
}
/*
 * Addresses paddings set differently in IE6/7.
 */
menu, ol, ul {
	padding: 0 0 0 40px;
}
/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul, nav ol {
	list-style: none;
	list-style-image: none;
}
/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside `a` element in IE6/7/8/9, bbc.
 * 2. Improves image quality when scaled in IE7.
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
	border: 0;
	/* 1 */
	-ms-interpolation-mode: bicubic;/* 2 */
}
/*
 * Corrects overflow displayed oddly in IE9.
 */
svg:not(:root) {
	overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11.
 */
figure {
	margin: 0;
}

.hatopon:hover {
  transform: scale(0.9);
  transition: transform 0.3s ease, box-shadow 0.3s ease;}
  
/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7.
 */
form {
	margin: 0;
}
/*
 * Define consistent border, margin, and padding.
 */
fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}
/*
 * 1. Corrects color not being inherited in IE6/7/8/9.
 * 2. Corrects text not wrapping in bbc.
 * 3. Corrects alignment displayed oddly in IE6/7.
 */
legend {
	border: 0;
	/* 1 */
	padding: 0;
	white-space: normal;
  /* 2 */
  *margin-left: -7px;
/* 3 */
}
/*
 * 1. Corrects font size not being inherited in all browsers.
 * 2. Addresses margins set differently in IE6/7, bbc+, S5, Chrome.
 * 3. Improves appearance and consistency in all browsers.
 */
button, input, select, textarea {
	font-size: 100%;
	/* 1 */
	margin: 0;
	/* 2 */
	vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
/* 3 */
}
/*
 * Addresses bbc/4 setting `line-height` on `input` using `!important` in the
 * UA stylesheet.
 */
button, input {
	line-height: normal;
}
/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Removes inner spacing in IE7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE6.
 */
button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	/* 2 */
	cursor: pointer;
  /* 3 */
  *overflow: visible;
/* 4 */
}
/*
 * Re-set default cursor for disabled elements.
 */
button[disabled], input[disabled] {
	cursor: default;
}
/*
 * 1. Addresses box sizing set to content-box in IE8/9.
 * 2. Removes excess padding in IE8/9.
 * 3. Removes excess padding in IE7.
 *    Known issue: excess padding remains in IE6.
 */
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	/* 1 */
	padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
/* 3 */
}
/*
 * 1. Addresses `appearance` set to `searchfield` in S5, Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in S5, Chrome (include `-moz`
 *    to future-proof).
 */
input[type="search"] {
	-webkit-appearance: textfield;
	/* 1 */
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	/* 2 */
	box-sizing: content-box;
}

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X.
 */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
 -webkit-appearance: none;
}

/*
 * Removes inner padding and border in bbc+.
 */
button::-moz-focus-inner, input::-moz-focus-inner {
 border: 0;
 padding: 0;
}
/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9.
 * 2. Improves readability and alignment in all browsers.
 */
textarea {
	overflow: auto;
	/* 1 */
	vertical-align: top;/* 2 */
}
/* ========================================================================== 
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells.
 */
table {
	border-collapse: collapse;
	border-spacing: 0;
}


/*----------------------------------------------------------*/
body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-feature-settings: "palt";
	overflow-x: hidden;
	overflow-y: auto;
	color: #333;
	background: linear-gradient(150deg, #f1ded2, #d9a685);
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
}
h1, h2, h3, h4, h5 {
	margin: 0;
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}
dl, p {
	margin: 0;
	padding: 0;
}
i {
	font-style: normal;
}
a {
	color: #000;
	text-decoration: none;
}
a.link {
	color: #0088cc;
	text-decoration: underline;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	-ms-interpolation-mode: bicubic;
}
/*a:hover img {
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	opacity: 0.5;
}*/

.clear {
	clear: both;
}





#move-page-top {
	width: 38px;
	height: 38px;
	display: none;
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 1000;
	border: solid 0.75px #fff;
	border-radius: 38px;
	cursor: pointer;
	background: rgba(0,0,0,0.08);
}

#move-page-top::before {
	content: "";
	width: 11px;
	height: 11px;
	position: absolute;
	top: 15px;
	left: 13px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	transform: rotate(45deg);
}

header {
	position: relative;
	width: 100%;
	background: #fff;
	height: 37px;
	z-index: 100;
	/*border-bottom: solid 1px #ddd;*/
}
#brand_logo {
	display: block;
	text-align: center;
	color: #ff4c7a;
	margin: 0 auto;
	padding-top: 10px;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.075em;
	width: 145px;
}
#shilogo {
	position: fixed;
	top: 9px;
	left: 10px;
}
#shilogo img {
	width: 32px;
}


#hokaron_logo {
	display: block;
	position: fixed;
	width: 320px;
	height: auto;
	top: 44%;
	left: calc(50% - 320px);
	transform: translate(-100%, -50%);
	z-index: 10;
	pointer-events: none;
}




main {
	background: #d9a584;
	box-shadow: 0 0 25px rgba(70, 40, 30, 0.18);
}

#read {
	margin: 0;
	padding: 50px 20px 35px;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.9;
	letter-spacing: 0.04em;
	text-align: center;
}



.item_loop {
	width: 100%;
	overflow: hidden;
	padding-bottom: 10px;
}

.item_loop_track {
	display: flex;
	width: max-content;
	animation: item_loop_scroll 40s linear infinite;
	will-change: transform;
}

.item_loop_group {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 0;
	padding: 0;
}

.item_loop_group img {
	display: block;
	width: auto;
	height: 125px;
	max-width: none;
	flex-shrink: 0;
}

@keyframes item_loop_scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translate3d(calc(-1 * var(--loop-width, 50%)), 0, 0);
	}
}
/* ========================================
   MAIN内ナビ
======================================== */

:is(#nav_area, #sp_nav_area) {
	padding: 35px 25px 55px;
}

:is(#nav_area, #sp_nav_area) h2 {
	margin: 0 0 30px;
	color: #fff;
	font-family: "futura-pt", Futura, sans-serif;
	font-size: 10px;
	font-weight: 400;
	letter-spacing: 0.3em;
	line-height: 1.2;
	text-align: center;
}

/* ========================================
   ナビ全体
======================================== */

:is(#nav_area, #sp_nav_area) nav,
#nav_area_pc nav {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	width: 100%;
	margin: 0 auto;
}

:is(#nav_area, #sp_nav_area) nav {
	row-gap: 30px;
}

:is(#nav_area, #sp_nav_area) .nav_group,
#nav_area_pc .nav_group {
	position: relative;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: none;
}

/* WOMEN：上段全幅 */
:is(#nav_area, #sp_nav_area) .nav_group:first-child,
#nav_area_pc .nav_group:first-child {
	grid-column: 1 / -1;
}

/* ========================================
   大カテゴリー
======================================== */

:is(#nav_area, #sp_nav_area) .nav_parent,
#nav_area_pc .nav_parent {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: fit-content;
	margin: 0 auto 15px;
	padding: 0;
	border: none;
	background: none;
	font-family: "futura-pt", Futura, sans-serif;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.5;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
}

/* 大カテゴリーの下矢印 */
:is(#nav_area, #sp_nav_area) .nav_parent::after,
#nav_area_pc .nav_parent::after {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-right: 1px solid currentColor;
	border-bottom: 1px solid currentColor;
	transform: rotate(45deg);
	flex-shrink: 0;
	transition: transform 0.3s ease;
}

:is(#nav_area, #sp_nav_area) .nav_parent:hover::after,
#nav_area_pc .nav_parent:hover::after {
	transform: translateY(3px) rotate(45deg);
}

/* ========================================
   小カテゴリー
======================================== */

:is(#nav_area, #sp_nav_area) .nav_items,
#nav_area_pc .nav_items {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 5px;
}

/* MEN：2列 */
:is(#nav_area, #sp_nav_area) .nav_group:nth-child(2) .nav_items,
#nav_area_pc .nav_group:nth-child(2) .nav_items {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* ROOM：1列 */
:is(#nav_area, #sp_nav_area) .nav_group:last-child .nav_items,
#nav_area_pc .nav_group:last-child .nav_items {
	grid-template-columns: 1fr;
	width: 100%;
	margin: 0 auto;
}

:is(#nav_area, #sp_nav_area) .nav_items > a,
#nav_area_pc .nav_items > a {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
}

/* ========================================
   画像
======================================== */

:is(#nav_area, #sp_nav_area) .nav_img,
#nav_area_pc .nav_img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	margin: 0 auto;
	overflow: visible;
}

:is(#nav_area, #sp_nav_area) .nav_img img,
#nav_area_pc .nav_img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(3px 5px 5px rgba(70, 40, 30, 0.18));
	transition: transform 0.5s ease;
}

/* 画像ホバー */
:is(#nav_area, #sp_nav_area) .nav_items > a:hover,
#nav_area_pc .nav_items > a:hover {
	position: relative;
	z-index: 2;
}

:is(#nav_area, #sp_nav_area) .nav_items > a:hover .nav_img img,
#nav_area_pc .nav_items > a:hover .nav_img img {
	transform: scale(1.08);
}

/* ========================================
   小カテゴリーの文字と矢印
======================================== */

:is(#nav_area, #sp_nav_area) .nav_name,
#nav_area_pc .nav_name {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: 100%;
	line-height: 1.5;
	white-space: nowrap;
}

:is(#nav_area, #sp_nav_area) .nav_name::after,
#nav_area_pc .nav_name::after {
	content: "";
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -3px;
	border-right: 1px solid currentColor;
	border-bottom: 1px solid currentColor;
	transform: rotate(45deg);
	flex-shrink: 0;
}

/* ========================================
   PC右側ナビ：初期非表示
======================================== */

#nav_area_pc {
	display: none;
}

/* ========================================
   SP表示
======================================== */

@media screen and (max-width: 639px) {

	:is(#nav_area, #sp_nav_area) nav {
		--nav-link-width: calc((100vw - 50px) / 4);
		--nav-image-width: calc(var(--nav-link-width) * 1.1);
	}

	:is(#nav_area, #sp_nav_area) .nav_parent {
		font-size: 20px;
	}

	/* WOMEN：MENと同じリンク幅・間隔 */
	:is(#nav_area, #sp_nav_area) .nav_group:first-child .nav_items {
		display: flex;
		justify-content: center;
		gap: 0;
	}

	:is(#nav_area, #sp_nav_area) .nav_group:first-child .nav_items > a {
		flex: 0 0 var(--nav-link-width);
		width: var(--nav-link-width);
	}

	/* WOMEN・MEN・ROOM：画像の表示サイズを統一 */
	:is(#nav_area, #sp_nav_area) .nav_group .nav_img {
		width: var(--nav-image-width);
		max-width: none;
		margin-left: auto;
		margin-right: auto;
	}

	/* MEN：リンク幅を固定。gapを変更しても画像は縮まない */
	:is(#nav_area, #sp_nav_area) .nav_group:nth-child(2) {
		grid-column: 2 / 7;
		left: 2px;
	}

	:is(#nav_area, #sp_nav_area) .nav_group:nth-child(2) .nav_items {
		display: flex;
		justify-content: center;
		width: 100%;
		margin-left: 0;
		gap: 0;
	}

	:is(#nav_area, #sp_nav_area) .nav_group:nth-child(2) .nav_items > a {
		flex: 0 0 var(--nav-link-width);
		width: var(--nav-link-width);
	}

	/* ROOM：MENとのグループ間隔は現状維持 */
	:is(#nav_area, #sp_nav_area) .nav_group:last-child {
		grid-column: 8 / 12;
		left: 1px;
	}

	:is(#nav_area, #sp_nav_area) .nav_group:last-child .nav_items {
		width: 100%;
	}
}

/* ========================================
   PC表示
======================================== */

@media screen and (min-width: 640px) {

	/* MAIN内ナビは非表示 */
	:is(#nav_area, #sp_nav_area) {
		display: none;
	}

	/* PC右側ナビのみ表示 */
	#nav_area_pc {
		display: block;
		position: fixed;
		top: 50%;
		left: calc(50% + 225px + 20px);
		transform: translateY(-50%);
		width: 480px;
		max-height: calc(100vh - 40px);
		max-height: calc(100dvh - 40px);
		overflow-y: auto;
		overflow-x: hidden;
		padding: 20px;
		box-sizing: border-box;
		scrollbar-width: none;
		z-index: 10;
	}

	#nav_area_pc::-webkit-scrollbar {
		display: none;
	}

	#nav_area_pc nav {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 55px;
	}

	#nav_area_pc .nav_parent {
		margin-bottom: 20px;
		font-size: 22px;
	}

	#nav_area_pc .nav_items {
		gap: 15px;
	}

	#nav_area_pc .nav_items > a {
		gap: 8px;
		font-size: 13px;
	}

	/* WOMEN：4枚を中央配置 */
	#nav_area_pc .nav_group:first-child .nav_items {
		grid-template-columns: repeat(4, 100px);
		gap: 0;
		justify-content: center;
	}

	/* ========================================
	   MEN・ROOM：PC版は現状維持
	======================================== */

	/* MEN */
	#nav_area_pc .nav_group:nth-child(2) {
		grid-column: 2 / 7;
		left: 10px;
	}

	#nav_area_pc .nav_group:nth-child(2) .nav_items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	/* ROOM */
	#nav_area_pc .nav_group:last-child {
		grid-column: 7 / 11;
		left: 20px;
	}

	#nav_area_pc .nav_group:last-child .nav_items {
		width: 55%;
	}

}








#itm_area {
	width: 100%;
	padding: 0 0 80px;
}
.cat {
	margin: 50px 0 0;
}
#itm_area > .cat:nth-child(2) {
	margin: 0;
}
.cat h2 {
	margin: 0 0 30px;
	padding-top: 30px;
	color: #fff;
	font-family: "futura-pt", Futura, sans-serif;
	font-size: 10px;
	font-weight: 400;
	letter-spacing: 0.3em;
	line-height: 1.2;
	text-align: center;
}

/* ========================================
   PICK UP
======================================== */
.pick_up {
	background: #c9b49c;
}
.pick_up_tit {
	margin: -20px auto 0;
	text-align: center;
	position: relative;
	z-index: 1;
}
#w_leg .pick_up_tit {
	margin: 33px auto 0;
}
.pick_up_tit img {
	display: block;
	width: 180px;
	margin: 0 auto 20px;
}

.pick_up_tit h3 {
	color: #fff;
	font-size: 21px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.1em;
}

.pick_up_sub_img {
	display: block;
	width: 83.333%;
	margin: 35px auto 0;
}
.pick_up_sub_img_mini {
	display: block;
	width: 55.555%;
	margin: 35px auto 0;
}
.pick_up_sub_img.tit {
	width: 90%;
	margin: 17px auto 0;
	color: #fff;
	font-size: 17px;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.075em;
}


/* ========================================
   PICK UP 重ね画像
======================================== */

.pick_up_sub_img_mini_box,
.pick_up_sub_img_mini_box_hntn {
	position: relative;
	width: 100%;
	margin: 35px auto 0;
}

.pick_up_sub_img_mini_box .pick_up_sub_img_mini,
.pick_up_sub_img_mini_box_hntn .pick_up_sub_img_mini {
	display: block;
	width: 55.555%;
	height: auto;
	margin: 0;
}

/* 通常：左上・手前 */
.pick_up_sub_img_mini_box .pick_up_sub_img_mini:first-child {
	position: relative;
	left: 9%;
	z-index: 2;
}

/* 通常：右下・奥 */
.pick_up_sub_img_mini_box .pick_up_sub_img_mini:last-child {
	position: relative;
	margin: -10% 0 0 auto;
	right: 9%;
	z-index: 1;
}

/* 反転：右上・奥 */
.pick_up_sub_img_mini_box_hntn .pick_up_sub_img_mini:first-child {
	position: relative;
	top: 0;
	right: 9%;
	margin: 0 0 0 auto;
	z-index: 1;
}

/* 反転：左下・手前 */
.pick_up_sub_img_mini_box_hntn .pick_up_sub_img_mini:last-child {
	position: relative;
	top: 0;
	left: 9%;
	margin: -10% 0 0;
	z-index: 2;
}


.pick_up_txt {
	width: 80%;
	margin: 35px auto 0;
	color: #fff;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	text-align: left;
}




/* ========================================
   PICK UP 商品詳細
======================================== */

.pick_up_d_box {
	width: 90%;
	margin: 35px auto 0;
	padding-bottom: 40px;
}

.pick_up_d_inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	width: 100%;
}

.pick_up_d_box .copy {
	display: block;
	width: 50%;
	flex-shrink: 0;
}

.pick_up_d_box .itm_img {
	display: block;
	width: 100%;
	height: auto;
	filter: drop-shadow(0 1px 8px rgba(0, 50, 100, 0.06));
	transform: scale(1);
	transition: transform 0.2s ease;
}

.pick_up_d_box .copy:hover .itm_img {
	transform: scale(1.04);
}

.pick_up_d_box .d_right {
	flex: 1;
	min-width: 0;
}

.pick_up_d_box .d_color {
	display: block;
	width: 100%;
	margin: 0 0 15px;
}

.pick_up_d_box .d_right_img {
	display: block;
	width: 100%;
	height: auto;
	filter: drop-shadow(0 1px 8px rgba(0, 50, 100, 0.06));
}

.pick_up_d_box .itm_name {
	width: 100%;
	margin: 10px auto 0;
	color: #fff;
	font-size: 14px;
	line-height: 1.5em;
	height: 3em;
}

.pick_up_d_box .price_box {
	width: 96.076%;
	margin: 17.5px auto 5px 3.924%;
}

.pick_up_d_box .off_late {
	background: #9b3438;
}

.pick_up_d_box .db_price {
	color: rgba(255, 255, 255, 0.6);
	text-decoration-color: #fff;
}

.pick_up_d_box .sale_price {
	color: #9b3438;
}

.pick_up_d_box > .check {
	display: block;
	width: 100%;
	margin: 25px auto 0;
	padding: 10px 0;
	border-color: #fff;
	color: #fff;
}

.pick_up_d_box > .check::after {
	border-color: #fff;
}





.itm_box {
	width: 100%;
	background: #fff;
	padding-bottom: 50px;
}
.itm_box h3{
	margin: 0;
	padding-top: 40px;
	color: #333;
	font-family: "futura-pt", Futura, sans-serif;
	font-size: 10px;
	font-weight: 400;
	letter-spacing: 0.3em;
	line-height: 1.2;
	text-align: center;
}
.item {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 95%;
	margin: 0 auto;
}

.item li {
	width: 48.7%;
	margin: 40px 0 0;
	position: relative;
}

.item li .copy {
	display: block;
}

.item li .copy .itm_img {
	display: block;
	width: 100%;
	/*border-radius: 5px;*/
	box-sizing: border-box;
	filter: drop-shadow(0 1px 8px rgba(0, 50, 100, 0.06));
	transform: scale(1);
	transition: transform 0.2s ease;
}

/* 画像ホバー */
.item li:hover {
	z-index: 2;
}

.item li:hover .copy .itm_img {
	transform: scale(1.04);
}

.itm_name {
	width: 92.157%;
	margin: 10px auto 0;
	font-size: 14px;
	line-height: 1.5em;
	height: 3em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	color: #333;
	letter-spacing: 0;
}
.price_box {
	width: 96.076%;
	margin: 17.5px auto 5px 3.924%;
	letter-spacing: 0.05em;
	display: flex;
	flex-wrap: nowrap;
	overflow: visible;
}
.off_late {
	font-size: 13px;
	color: #fff;
	background: #9b3438;
	display: inline-block;
	padding: 1px 6px 0;
	margin: 0 3px 0 0;
	line-height: 1.3em;
	height: 1.3em;
	transform: translate(0, 3px);
	white-space: nowrap;
	font-weight: bold;
}
.price {
	display: inline-block;
	position: relative;
	font-weight: 500;
	margin: 0 0 2.5px;
	white-space: nowrap;
}
.db_price {
	font-size: 11px;
	color: #aaa;
	position: absolute;
	top: -13px;
	left: 2px;
	text-decoration: line-through;
	text-decoration-color: #999;
}
.sale_price {
	font-size: 15px;
	color: #9b3438;
	margin-left: 5px;
}
.sale_price span {
	font-size: 0.67em;
	margin-left: 1px;
}
.check {
	display: none;
	position: relative;
	width: 92.157%;
	margin: 0 auto;
	padding: 5px 0;
	border: 1px solid #999;
	border-radius: 3px;
	color: #666;
	font-size: 12px;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

/* 矢印 */
.check::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	transform: translateY(-50%) rotate(45deg);
	transition: right 0.3s ease;
}

/* ホバー */
.check:hover::after {
	right: 9px;
}
.item li:nth-child(2n-1) { transition-delay: 0.0s; }
.item li:nth-child(2n) { transition-delay: 0.4s; }


.check_more {
	width: 95%;
	margin: 50px auto 0;
}

.check_more a {
	display: block;
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 10px 0;
	border: 1px solid #999;
	border-radius: 3px;
	color: #666;
	font-size: 12px;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

/* 矢印 */
.check_more a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	transform: translateY(-50%) rotate(45deg);
	transition: right 0.3s ease;
}

/* ホバー */
.check_more a:hover::after {
	right: 9px;
}






footer {
	position: relative;
	width: 100%;
	margin: 0 0 0;
	background: #fff;
	font-family:"游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
#inquiry {
	text-align: center;
	padding: 10px 0 15px;
	font-size: 11px;
	color: #666;
}
#phone span{
	font-size: 17px;
}
#inquiry div a:first-child {
	border-right: 0.5px solid #666;
	padding-right: 10px;
}
#inquiry div a:nth-child(2) {
	padding-left: 8px;
}
#ftr_com {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 35px;
	width: 100%;
	margin: 0 auto;
}
#ftr_shilogo{
	display: inline-block;
	font-size: 12px;
	font-weight: 500;
	margin: 0 0 0 3%;
	letter-spacing: 0.2em;
	font-family: 'Century Gothic', sans-serif;
	width: 100px;
	/*filter: brightness(0) invert(1);*/
}
#ftr_shilogo a{
	color: #fff;
}
#cpyr{
	font-size: 10px;
	line-height: 1em;
	margin: 0 2% 0 0;
	font-weight: 400;
	font-style: normal;
	transform: scale(0.9) translateX(5%);
}






.fadein {
	opacity: 0;
	transform : translate(0, 50px);
	transition: all 1000ms ease-out;
}
.fadein.scrollin {
	opacity: 1;
	transform: translate(0, 0);
}

.fadeinxx {
	opacity: 0;
	transform : scale(0.1) translate(10px, 10px);
}
.fadeinxx.scrollin{
	opacity: 1;
	transition : all 220ms ease-in-out;
	transform : scale(1) translate(0, 0);
}


.fadein00 {
	opacity: 1;
	transform : translate(0, 0);
	transition : all 3000ms;
	filter: blur(15px);
}
.fadein00.scrollin{
	opacity: 1;
	transform: translate(0, 0);
	filter: blur(0px);
}
.fadein01 {
	opacity: 0;
	transform : translate(0, 0);
	transition : all 2000ms;
}
.fadein01.scrollin{
	opacity: 1;
	transform: translate(0, 0);
}

.blur {
	filter: blur(0px);
	transition : all 750ms;
}
.blur.pass {
	filter: blur(15px);
}
.blur.pass_01 {
	filter: blur(1px);
}
.blur.pass_02 {
	filter: blur(3px);
}
.blur.pass_03 {
	filter: blur(5px);
}
.blur.pass_04 {
	filter: blur(7px);
}
.blur.pass_05 {
	filter: blur(9px);
}



.pc_only{
	display: none;
}
.sp_only{
	display: block;
}






#medama {
	margin: 0;
	background: #F44D67;
	padding: 5px 0 33px
}
#medama .main_itm .itm_name, #medama .main_itm, #medama .check, #medama .sale_price ,#medama #kikan{
	color: #fff;
}
#medama .main_itm .itm_name{
    margin: 5px auto 0;
}
#medama .check{
    border: solid 1px #fff
}
#skjour {
	background: #f3f9f9;
	padding: 0 0 20px
}
.sale_rbn {
	display: block;
	width: 100%;
	margin: 33px auto 0;
}
#koshin {
	text-align: center;
	font-size: 12px;
	color: #fff;
	margin: 15px 0 0;
}
#kikan {
	text-align: center;
	font-size: 18px;
}
.kikan {
	text-align: center;
	font-size: 18px;
}
#x {
	background: #f3f9f9;
}
#x_btn {
	display: block;
	width: 90%;
	margin: 25px auto 35px;
}
#sris {
	display: block;
	width: 80%;
	margin: 10px 8% 0 12%;
}
#hiku {
	display: block;
	width: 37%;
	margin: -50px auto 0;
	animation: kaiten 3s linear infinite;
}

@keyframes kaiten {
  0% {
    transform: rotate(0deg);
  }
  23.333% {
    transform: rotate(120deg);
  }
  33.333% {
    transform: rotate(120deg);
  }
  56.666% {
    transform: rotate(240deg);
  }
  66.666% {
    transform: rotate(240deg);
  }
  90% {
    transform: rotate(360deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#hand_box {
	display: flex;
	justify-content: space-between;
	width: 200px;
	margin: 5px auto 0;
	transform : translate(-5px, 0);
	color: #00aaff
}
#hand {
	transform : translate(0, -8px);
}
#tap {
	position: relative;
	font-weight: 500;
	font-size: 13px;
}

.chui {
	width: 67%;
	display: block;
	margin: 25px auto 0;
	padding: 5%;
	color: #666;
	font-size: 12px;
	border: solid 1px #666;
}
#line {
	display:block;
	width: 90%;
	margin: 20px auto 0;
}
#y {
	width: 250px;
	display: block;
	margin: -25px auto -10px;
	position: relative;
	z-index: 1;
	filter: drop-shadow(0 1px 15px rgba(0, 0, 0, 0.05));
}
#login {
	width: 135px;
	display: block;
	margin: -25px auto -10px;
	position: relative;
	z-index: 1;
	filter: drop-shadow(0 1px 15px rgba(0, 0, 0, 0.05));
}



/* ---- speech bubble for item name ---- */
.main_itm { position: relative; }

.main_itm .copy { display: block; }
.main_itm .copy img { display: block; width: 100%; height: auto; }

/* 文字化けしたコメントを削除 */
:root {
  --bubble-bg: #fff;
  --bubble-bd: #e95464; /* 文字化けしたコメントを削除 */
  --bubble-radius: 12px;
  --bubble-shadow: 0 2px 6px rgba(0,0,0,.08);
}
.fixed-left,
.fixed-right {
    display: none;
  }
  .which_wrap h3 {
	text-align: center;
	color: #ff829c;
	margin: 0 0 1px;
	line-height: 1.0em;
	font-size: 26px;
}
.which_wrap h3 div{
	margin: 10px 0 0;
	font-size: 10px;
	line-height: 1.0em;
	letter-spacing: 0.15em;
}
.taisho {
    width: 100%;
    border-top: solid 1px #ff829c33;
    margin: 0 0 0;
    padding: 50px 0 20px;
}











/*-------------------------------------PC-------------------------------------*/
@media screen and (min-width: 640px) {

#move-page-top {
	width: 38px;
	height: 38px;
	right: 10px;
	bottom: 10px;
	border: solid 0.75px #fff;
	background: none;
}
#move-page-top img{
	width: 15px;
	/*filter: brightness(0.05);*/
	inset: 0 0 10%;
	margin: auto;
}
main {
	padding: 0 0 0;
	width: 450px;
	margin: 0 auto;
}
#logo_area {
	width: 450px;
}
footer{
	margin: 0 0 0;
}
#inquiry {
	width: 450px;
	margin: 0 auto;
}
#phone span{
	font-size: 17px;
}
#inquiry div a:first-child {
	border-right: 0.5px solid #666;
	padding-right: 10px;
}
#inquiry div a:nth-child(2) {
	padding-left: 8px;
}
#ftr_com {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 45px;
	width: 100%;
	margin: 0 auto;
}
#ftr_shilogo{
	display: inline-block;
	font-size: 19px;
	margin: 0 0 0 12px;
	width: 150px;
}
#ftr_shilogo a{
	color: #fff;
}
#cpyr{
	display: inline-block;
	font-size: 11px;
	float: right;
	margin: 0 12px 0 0;
	font-weight: 400;
	font-style: normal;
	transform: scale(1) translateX(0);
}
#line {
	display:block;
	width: 346px;
	margin: 20px auto 0;
}


.pc_only{
	display: block;
}
.sp_only{
	display: none;
}

.fixed-left,
  .fixed-right {
    position: fixed;
    top: 60%;
    transform: translateY(-50%);
    z-index: 10; 
    /* 文字化けしたコメントを削除 */
    display: block;
  }

  .fixed-left {
    left:200px;
	width: 300px;
  }

  .fixed-right {
    right:200px;
	width: 250px;
  }

}

/* 文字化けしたコメントを削除 */
.hight-coupon{
	background: #fff !important;
}
/* ========================================
   SP ハンバーガーメニュー
======================================== */
#menu_btn, #sp_menu { display: none; }

@media screen and (max-width: 639px) {

	header { z-index: 1100; }
	body.menu_open header { background: transparent; }
	body.menu_open #brand_logo { visibility: hidden; }

	#shilogo {
		position: fixed;
		top: 9px; left: 10px;
		z-index: 1101;
	}
	#shilogo img { display: block; width: 32px; }

	#menu_btn {
		display: flex;
		position: fixed;
		top: 3px; left: 52px;
		z-index: 1102;
		width: 32px; height: 32px;
		padding: 0;
		border: 0; border-radius: 0;
		background: transparent;
		color: #fff;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		cursor: pointer;
		appearance: none;
		-webkit-appearance: none;
		outline-offset: 2px;
	}

	.menu_icon {
		display: block;
		position: relative;
		width: 20px; height: 12px;
		flex-shrink: 0;
	}
	.menu_icon span {
		display: block;
		position: absolute;
		left: 0;
		width: 20px; height: 1px;
		background: #fff;
		transition: top .25s ease, transform .25s ease;
	}
	.menu_icon span:first-child { top: 2px; }
	.menu_icon span:last-child { top: 10px; }

	.menu_label {
		display: block;
		font-family: "futura-pt", Futura, sans-serif;
		font-size: 8px; font-weight: 400;
		line-height: 1; letter-spacing: 0;
		white-space: nowrap;
	}

	body.menu_open .menu_icon span:first-child {
		top: 6px; transform: rotate(45deg);
	}
	body.menu_open .menu_icon span:last-child {
		top: 6px; transform: rotate(-45deg);
	}

	#sp_menu {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 1050;
		width: 100%;
		height: 100vh; height: 100dvh;
		box-sizing: border-box;
		padding: 65px 0 30px;
		background: #d9a584;
		overflow-x: hidden; overflow-y: auto;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .2s ease, visibility .2s;
	}
	body.menu_open #sp_menu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	#sp_menu #sp_nav_area {
		display: block;
		position: static;
		width: 100%; max-width: 100%;
		height: auto;
		padding: 35px 25px 55px;
		margin: 0;
		box-sizing: border-box;
		background: transparent;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: none;
	}

	body.menu_open { overflow: hidden; }

	/* ページ先頭 */
	body:not(.menu_open).at_page_top #menu_btn {
		color: #333;
		background: transparent;
	}
	body:not(.menu_open).at_page_top .menu_icon span {
		background: #333;
	}

	/* スクロール後 */
	body:not(.menu_open):not(.at_page_top) #menu_btn {
		color: #fff;
		background: rgba(0, 0, 0, 0.12);
	}

	/* メニュー展開中 */
	body.menu_open #menu_btn {
		color: #fff;
		background: transparent;
	}
}
#nav_area {
	background: #e2b499;
}

#sp_menu {
	background: #e2b499;
}
main #nav_area {
	margin: -40px 0 0;
	padding: 55px 25px 35px;
}

#nav_area .nav_items a {
	position: relative;
	z-index: 1;
}

#nav_area .nav_items a img,
#nav_area .nav_items a span {
	pointer-events: none;
}
/* ナビの画像・文字は親リンクで一括してタップを受け取る */
:is(#nav_area, #sp_nav_area, #nav_area_pc) .nav_items > a > span,
:is(#nav_area, #sp_nav_area, #nav_area_pc) .nav_items > a img {
	pointer-events: none;
}

/* ROOMの文字がリンク枠からはみ出さないように、クリック領域だけを広げる */
@media screen and (max-width: 639px) {
	:is(#nav_area, #sp_nav_area) .nav_group:last-child .nav_items {
		width: 100%;
	}
	:is(#nav_area, #sp_nav_area) .nav_group:last-child .nav_img {
		width: var(--nav-image-width);
	}
}

/* ナビ内の装飾画像が隣のリンクのタップを横取りしない */
:is(#nav_area, #sp_nav_area, #nav_area_pc) .nav_items > a {
	position: relative;
	z-index: 1;
}
:is(#nav_area, #sp_nav_area, #nav_area_pc) .nav_items > a > .nav_img,
:is(#nav_area, #sp_nav_area, #nav_area_pc) .nav_items > a > .nav_name {
	pointer-events: none;
}

/* Reserve product thumbnail space before lazy images load to keep anchor positions stable. */
.item li .copy .itm_img,
.pick_up_d_box .copy .itm_img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
}
