@charset "utf-8";

@font-face {
	font-family: 'Typicons';
	src: url('/kekkon/sp/fonts/typicons-regular-webfont.eot');
	src: url('/kekkon/sp/fonts/typicons-regular-webfont.eot?#iefix') format('embedded-opentype'),
		url('/kekkon/sp/fonts/typicons-regular-webfont.woff') format('woff'),
		url('/kekkon/sp/fonts/typicons-regular-webfont.ttf') format('truetype'),
		url('/kekkon/sp/fonts/typicons-regular-webfont.svg#TypiconsRegular') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'FontAwesome';
	src: url('/kekkon/sp/fonts/fontawesome-webfont.eot');
	src: url('/kekkon/sp/fonts/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
		url('/kekkon/sp/fonts/fontawesome-webfont.woff') format('woff'),
		url('/kekkon/sp/fonts/fontawesome-webfont.ttf') format('truetype'),
		url('/kekkon/sp/fonts/fontawesome-webfont.svg#TypiconsRegular') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

/* 共通設定
========================================================================== */
html {
	height: 100%;
}

body {
	height: 100%;
	font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: calc(30 * 100vw / 750);
	line-height: 1.48;
	color: #333;
	background: #fff;
}

a {
	-webkit-tap-highlight-color: rgba(2, 109, 236, 0.9);
	color: #333;
}

/* タップハイライトカラーが出る対策 */
div {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

@media print {

	h1,
	#side {
		display: none !important;
	}
}

@media screen and (min-width: 920px) {
	body {
		font-size: 15px;
	}
}

/* レイアウト
--------------------------------------------------------- */
#container {
	min-height: 100%;
	position: relative;
	overflow: hidden;
}

#inner {
	position: relative;
	width: 100%;
	z-index: 800;
	-moz-transition-property: margin-left;
	-webkit-transition-property: margin-left;
	-o-transition-property: margin-left;
	-ms-transition-property: margin-left;
	-moz-transition-duration: 0.5s;
	-webkit-transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
	-moz-transition-timing-function: ease;
	-webkit-transition-timing-function: ease;
	-o-transition-timing-function: ease;
	-ms-transition-timing-function: ease;
}

#inner.active {
	margin-left: -100%;
}

#contents {
	padding-bottom: 70px;
	background: #FFF;
}

#main {
	padding-bottom: 50px;
}

#main>section>div,
#main .box {
	margin: 0 calc(16 * 100vw / 750);
}

@media screen and (min-width: 920px) {
	#main {
		margin-top: 0;
	}

	#inner {
		z-index: inherit;
	}

	#inner.active {
		margin-left: initial;
	}

	#container {
		width: 920px;
		margin: 0 auto;
	}

	#contents {
		min-height: 1576px;
	}

	article {
		width: 600px;
		margin: 0 0 40px;
	}

	#main>section>div,
	#main .box {
		margin: 0 10px;
	}
}

/* タイポグラフィ
--------------------------------------------------------- */
/* タイトル */
header.title {
	margin-bottom: calc(61 * 100vw / 750);
	padding: calc(44 * 100vw / 750) calc(12 * 100vw / 750) calc(12 * 100vw / 750);
	border-bottom: calc(10 * 100vw / 750) solid var(--color-sub-base);
}

#main h1 {
	font-size: calc(48 * 100vw / 750);
	font-weight: bold;
	line-height: 1.7;
	letter-spacing: .02em;
}

#main h2 {
	margin: calc(60 * 100vw / 750) 0 calc(29 * 100vw / 750);
	padding: calc(8 * 100vw / 750) calc(22 * 100vw / 750);
	font-size: calc(40 * 100vw / 750);
	letter-spacing: .02em;
	line-height: 1.64;
	font-weight: bold;
	background: var(--color-main);
	color: #fff;
}

#main h3 {
	margin: calc(70 * 100vw / 750) 0 calc(48 * 100vw / 750);
	padding: calc(7 * 100vw / 750) calc(10 * 100vw / 750);
	font-size: calc(36 * 100vw / 750);
	font-weight: bold;
	letter-spacing: .02em;
	line-height: 1.6;
	background: #EEEEEE;
}

#main h4 {
	font-size: calc(32 * 100vw / 750);
	font-weight: bold;
	margin: calc(52 * 100vw / 750) 0 calc(28 * 100vw / 750);
	padding: calc(7 * 100vw / 750) calc(10 * 100vw / 750);
	background: #EEEEEE;
}

@media screen and (min-width: 920px) {
	header.title {
		margin-bottom: 30px;
		padding: 22px 6px 6px;
		border-bottom: 5px solid var(--color-sub-base);
	}

	#main h1 {
		font-size: 24px;
	}

	#main h2 {
		margin: 30px 0 14px;
		padding: 4px 11px;
		font-size: 20px;
	}

	#main h3 {
		margin: 35px 0 24px;
		padding: 4px 5px;
		font-size: 18px;
	}

	#main h4 {
		font-size: 14px;
		margin: 32px 0 20px;
		padding: 4px 5px;
	}
}

/* サイト内リンク */
#main .link {
	font-size: calc(28 * 100vw / 750);
	display: flex;
	align-items: center;
	gap: 0 calc(8 * 100vw / 750);
}

#main .link::before {
	content: "";
	width: calc(24 * 100vw / 750);
	height: calc(24 * 100vw / 750);
	background: url("/kekkon/images/common/img_arrow_kekkon.svg") no-repeat 0 0 / cover;
}

.url_break {
	word-break: break-all;
}

@media screen and (min-width: 920px) {
	#main .link {
		font-size: 14px;
		gap: 0 4px;
	}

	#main .link::before {
		content: "";
		width: 12px;
		height: 12px;
	}
}

/* 外部リンク
---------------------------------------------- */
#main .link_outlink {
	font-size: calc(28 * 100vw / 750);
	display: flex;
	align-items: center;
	gap: 0 calc(8 * 100vw / 750);
}

#main .link_outlink::after {
	content: "";
	width: calc(24 * 100vw / 750);
	height: calc(24 * 100vw / 750);
	background: url("https://nenga.aisatsujo.jp/group_common/images/link/ico_outlink.svg") no-repeat 0 0 /cover;
}

@media screen and (min-width: 920px) {
	#main .link_outlink {
		font-size: 14px;
		gap: 0 4px;
	}

	#main .link_outlink::after {
		content: "";
		width: 12px;
		height: 12px;
	}
}

/* 注釈
---------------------------------------------- */
.caution {
	padding-left: calc(28 * 100vw / 750) !important;
	text-indent: calc(-28 * 100vw / 750) !important;
	font-size: calc(28 * 100vw / 750);
	line-height: 1.42;
}

@media screen and (min-width: 920px) {
	.caution {
		padding-left: calc(14 * 100vw / 750) !important;
		text-indent: calc(-14 * 100vw / 750) !important;
		font-size: 14px;
	}
}

/* フォント設定
--------------------------------------------------*/
/* Adobeフォント */
.font_korolev-b {
	font-family: korolev, sans-serif;
	font-weight: 700;
	font-style: normal;
}

.font_korolev-m {
	font-family: korolev, sans-serif;
	font-weight: 500;
	font-style: normal;
}

.roboto {
	font-family: "Roboto", sans-serif;
	font-style: normal;
}

/* タグ設定
--------------------------------------------------------- */
#box_tag {
	width: 1px;
	height: 1px;
	overflow: hidden;
	position: absolute;
	top: -1px;
	left: -1px;
	z-index: -5000;
}

/* ヘッダー
========================================================================== */
#header {
	background: #FFF;
	max-width: 920px;
	z-index: 1000;
}

#header .header_inner {
	width: 100%;
	display: flex;
	flex-direction: column;
	/* position: fixed;
    top: 0;
    left: 0;
    z-index: 9999; */
}

#header h1 {
	width: calc(549 * 100vw / 750);
	height: calc(96 * 100vw / 750);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-inline: auto;
}

#header h1 a {
	font-size: 0;
}

#header h1 .gnav_logo {
	width: calc(465*100vw/750);
}

#header h1 .gnav_contact {
	width: calc(99*100vw/750);
}

#header h1 img {
	width: 100%;
	height: auto;
}

/* Gナビ */
.header_gnav {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 9999;
	height: calc(112 * 100vw / 750);
	gap: 0 calc(8 * 100vw / 750);
}

.gnav_item {
	width: calc(140 * 100vw / 750);
}

.header_gnav .gnav_ttl {
	font-weight: 400;
	font-size: calc(22*100vw/750);
	line-height: 100%;
	letter-spacing: .02em;
	text-align: center;
}

.header_gnav a {
	text-decoration: none;
}

.header_gnav .gnav_icon a::before {
	content: "";
	display: block;
	margin-inline: auto;
	margin-bottom: calc(17 * 100vw / 750);
	filter: brightness(0) saturate(100%) invert(73%) sepia(6%) saturate(1882%) hue-rotate(315deg) brightness(95%) contrast(113%);
}

.header_gnav .gnav_icon.-home a::before {
	background: url("https://nenga.aisatsujo.jp/group_common/images/icon/icon_b/ico_home.svg") no-repeat 0 0 /contain;
	width: calc(42*100vw/750);
	height: calc(40*100vw/750);
}

.header_gnav .gnav_icon.-mypage a::before {
	background: url("https://nenga.aisatsujo.jp/group_common/images/icon/icon_b/ico_mypage.svg") no-repeat 0 0 /contain;
	width: calc(40*100vw/750);
	height: calc(40*100vw/750);
}

.header_gnav .gnav_icon.-contact a::before {
	background: url("https://nenga.aisatsujo.jp/group_common/images/icon/icon_b/ico_voice_b.svg") no-repeat 0 0/contain;
	width: calc(40*100vw/750);
	height: calc(40*100vw/750);
	transform: scale(-1, 1);
}

/* .header_gnav .chat_icon-box::before{
content: "";
display: block;
margin-inline: auto;
margin-bottom: calc(17 * 100vw / 750);
background: url("https://nenga.aisatsujo.jp/group_common/images/icon/ico_chat.webp") no-repeat 0 0/contain;
width:calc(58*100vw/750);
height: calc(42*100vw/750);
} */

/*デザインを探す---*/
.header_gnav .gnav_icon.-list a {
	width: calc(134*100vw/750);
	height: calc(134*100vw/750);
	background: #FFA7A7;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	position: relative;
	margin-bottom: calc(50 * 100vw / 750);
}

.header_gnav .gnav_icon.-list a::before {
	background: url("https://nenga.aisatsujo.jp/images/items/W01P201b.jpg") no-repeat 0 0 /contain;
	width: calc(80*100vw/750);
	height: calc(118*100vw/750);
	margin: 0;
	position: absolute;
	top: calc(73*100vw/750);
	left: 0;
	right: 0;
	margin: auto;
	filter: none;
}

.header_gnav .gnav_icon.-list .gnav_ttl {
	color: #fff;
	font-weight: 700;
	font-size: calc(20*100vw/750);
	line-height: 120%;
	letter-spacing: .04em;
	text-align: center;
	margin-bottom: calc(52 * 100vw / 750);
}

/* ハンバーガー */
.gnav_btn {
	background: #ffffff;
	box-sizing: border-box;
	position: relative;
	height: 100%;
	display: block;
}

.btn_smenu {
	height: calc(72 * 100vw / 750);
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	row-gap: calc(9 * 100vw / 750);
}

.btn_smenu span {
	display: block;
	width: calc(40*100vw/750);
	height: calc(6*100vw/750);
	background: #FFA7A7;
	margin: 0 auto;
	transition: all 0.3s;
}

.btn_smenu.active span:nth-child(1) {
	transform: translate(0, calc(10* 100vw / 750)) rotate(45deg);
}

.btn_smenu.active span:nth-child(2) {
	display: none;
}

.btn_smenu.active span:nth-child(3) {
	transform: translate(0, calc(-5* 100vw / 750)) rotate(-45deg)
}

/* header上お知らせ帯 */
.notic_line {
	position: relative;
	overflow: hidden;
	height: calc(60*100vw/750);
	max-height: 60px;
	background: #FFA52A;
}

.notic_line_box {
	width: 100%;
	height: 100%;
	text-align: center;
	position: absolute;
	backface-visibility: hidden;
	transform: translate3d(0, 100%, 0);
	transition: transform 1s ease-in-out, opacity 1s ease-in-out;
}

/*帯の色*/
.notic_line_box .lead_text {
	color: #fff;
	font-size: calc(22*100vw/750);
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	line-height: normal;
}

.notic_line_box a {
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.notic_line_box.is-active {
	transform: translate3d(0, 0, 0);
	z-index: 2;
}

.notic_line_box.previous {
	transform: translate3d(0px, -100%, 0px);
	z-index: 1;
}

@media screen and (min-width: 920px) {
	#header .header_inner {
		max-width: 920px;
		right: 0;
		margin: auto;
	}

	#header h1 {
		padding: 0 16px;
		width: 100%;
		height: 56px;
	}

	#header h1 .gnav_logo {
		width: 233px
	}

	#header h1 .gnav_favorite {
		width: 50px;
	}

	/* Gナビ */
	.gnav_btn,
	.header_gnav {
		display: none;
	}

	/* header上お知らせ帯 */
	.notic_line {
		height: 36px;
	}

	.notic_line_box .lead_text {
		font-size: 14px;
	}
}

/* パンくずリスト
========================================================================== */
#plist {
	padding-left: calc(12*100vw/750);
	font-size: calc(24*100vw/750);
	border-bottom: #CCC solid 1px;
	color: #666;
	overflow: hidden;
}

#plist li {
	padding-right: calc(4*100vw/750);
	list-style: none;
	line-height: 2;
	display: inline-flex;
	align-items: center;
	gap: calc(8*100vw/750);
}

#plist li:not(:last-child)::after {
	content: "";
	background: url("/kekkon/sp/images/common/img_arrow_p.gif") no-repeat 0 0 / contain;
	width: calc(10*100vw/750);
	height: calc(18*100vw/750);
}

#plist li strong {
	color: var(--color-main);
	font-weight: normal;
}

#plist li:last-child {
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

@media screen and (min-width: 920px) {
	#plist {
		margin-bottom: 20px;
		padding-left: 6px;
		font-size: 14px;
	}

	#plist li {
		padding-right: 4px;
		gap: 8px
	}

	#plist li:not(:last-child)::after {
		width: 6px;
		height: 10px;
	}
}

/* フッター
========================================================================== */
footer {
	box-sizing: border-box;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	border-top: var(--color-main) solid 3px;
	overflow: hidden;
	z-index: 900;
}

/* footer_head
--------------------------------------------- */
.footer_head {
	text-align: center;
	padding: calc(48 * 100vw / 750) 0;
	background: #fff;
}

/* ロゴ */
.footer_logo img {
	width: calc(549 * 100vw / 750);
	height: auto;
}

/* sns */
.footer_sns {
	margin: calc(30 * 100vw / 750) 0 calc(20 * 100vw / 750);
}

.sns_icon {
	display: flex;
	justify-content: center;
	gap: 0 calc(12 * 100vw / 750);
}

.sns_icon li {
	width: calc(50 * 100vw / 750);
	height: calc(50 * 100vw / 750);
}

.sns_icon img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

/* サポートダイヤル */
.tel_ttl {
	font-size: calc(26 * 100vw / 750);
	font-weight: bold;
}

.tel_ttl a {
	padding-left: calc(8 * 100vw / 750);
	font-size: calc(36 * 100vw / 750);
	text-decoration: none;
}

/* 営業時間 */
.business_hours {
	margin-bottom: calc(40 * 100vw / 750);
	font-size: calc(24 * 100vw / 750);
}

/* footer_body
    --------------------------------------------- */
.footer_body {
	padding: calc(48 * 100vw / 750) calc(32 * 100vw / 750) calc(148 * 100vw / 750);
	background: #eee;
	color: #666;
	position: relative;
}

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

/* 商品一覧 */
.footer_nav {
	margin-bottom: calc(48 * 100vw / 750);
}

.footer_nav-title {
	margin-bottom: calc(32 * 100vw / 750);
	padding-bottom: calc(16 * 100vw / 750);
	font-size: calc(30 * 100vw / 750);
	font-weight: bold;
	line-height: 1;
	border-bottom: #C8C8C8 solid 2px;
}

.footer_column-title {
	display: block;
	font-size: calc(26 * 100vw / 750);
	font-weight: bold;
}

.footer_nav-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: calc(4 * 100vw / 750);
}

.footer_nav-item a {
	font-size: calc(24 * 100vw / 750);
	text-decoration: none;
}

.footer_nav-item::before {
	content: "";
	display: inline-block;
	margin-right: calc(8 * 100vw / 750);
	width: calc(12 * 100vw / 750);
	height: calc(12 * 100vw / 750);
	border-radius: 50%;
	background: #FFA7A7;
}

/* 会社概要など */
.footer_other {
	margin-bottom: calc(52 * 100vw / 750);
	text-align: center;
}

.footer_other-list {
	text-align: center;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: calc(27 * 100vw / 750) calc(32 * 100vw / 750);
}

.footer_other-item {
	display: inline-block;
	font-size: calc(23 * 100vw / 750);
	line-height: 1;
}

.footer_other-item a {
	text-decoration: underline;
}

/* コピーライト */
footer #cr {
	font-size: calc(22 * 100vw / 750);
	text-align: center;
}


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

	/* footer_head
    --------------------------------------------- */
	.footer_head {
		padding: 36px 0;
	}

	/* ロゴ */
	.footer_logo img {
		width: 440px;
	}

	/* sns */
	.footer_sns {
		margin: 24px 0 16px;
	}

	.sns_icon {
		gap: 0 9px;
	}

	.sns_icon li {
		width: 40px;
		height: 40px;
	}

	/* サポートダイヤル */
	.tel_ttl {
		font-size: 22px;
	}

	.tel_ttl a {
		padding-left: 6px;
		font-size: 28px;
	}

	/* 営業時間 */
	.business_hours {
		margin-bottom: 32px;
		font-size: 20px;
	}

	/* footer_body
    --------------------------------------------- */
	.footer_body {
		padding: 32px 24px 28px;
	}

	/* 商品一覧 */
	.footer_nav {
		margin-bottom: 36px;
	}

	.footer_nav-title {
		margin-bottom: 24px;
		padding-bottom: 12px;
		font-size: 24px;
	}

	.footer_column-title {
		font-size: 20px;
	}

	.footer_nav-list {
		gap: 4px;
	}

	.footer_nav-item a {
		font-size: 18px;
	}

	.footer_nav-item::before {
		margin-right: 6px;
		width: 9px;
		height: 9px;
	}

	/* 会社概要など */
	.footer_other {
		margin-bottom: 40px;
	}

	.footer_other-list {
		gap: 24px;
	}

	.footer_other-item {
		font-size: 16px;
	}

	/* コピーライト */
	footer #cr {
		font-size: 16px;
	}
}


/* サイドメニュー
========================================================================== */
/* サイド共通設定
--------------------------------------------------------- */
#side {
	position: absolute;
	right: 0;
	width: 100%;
	top: 0;
	background-color: #fff;
	-webkit-overflow-scrolling: touch;
	z-index: 700;
}

#side .side_container {
	margin-bottom: calc(96*100vw/750);
}

#side a {
	text-decoration: none;
}

#side a img {
	vertical-align: bottom;
}

#side .side_wrap {
	padding: calc(48*100vw/750) calc(24*100vw/750) calc(304*100vw/750);
}

#side .side_title {
	margin-bottom: calc(48*100vw/750);
	font-size: calc(40*100vw/750);
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 1.1;
}

/* サイドメニュー */
#side .side_menu-list {
	display: flex;
	flex-direction: column;
	border-top: 2px solid var(--color-main);
}

#side .side_menu-item {
	border-bottom: 2px solid var(--color-main);
}

#side .side_menu-text {
	padding: calc(44*100vw/750) calc(16*100vw/750);
	font-size: calc(36*100vw/750);
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: 0 calc(24*100vw/750);
	cursor: pointer;
}

#side .side_menu-arrow {
	content: "";
	display: inline-block;
	width: calc(20*100vw/750);
	height: calc(20*100vw/750);
	margin-left: auto;
	border-bottom: calc(6*100vw/750) solid #999;
	border-right: calc(6*100vw/750) solid #999;
	transform: rotate(315deg);
}

/* サイドアコーディオンメニュー */
#side .side_accordion-inner {
	display: none;
	padding-bottom: calc(80*100vw/750);
}

#side .side_accordion-list {
	display: flex;
	flex-wrap: wrap;
	gap: calc(12*100vw/750) calc(16*100vw/750);
}

#side .side_accordion-item {
	border-radius: calc(40*100vw/750);
	background: #EEEEEE;
}

#side .side_accordion-btn {
	font-size: calc(24*100vw/750);
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
}

#side .side_accordion-btn.-short {
	padding: calc(21*100vw/750) calc(36*100vw/750);
}

#side .side_accordion-btn.-middle {
	padding: calc(21*100vw/750) calc(24*100vw/750);
}

#side .side_accordion-btn.-long {
	padding: calc(21*100vw/750) calc(20*100vw/750);
}

#side .side_accordion-arrow {
	margin-left: auto;
	position: relative;
	width: calc(40*100vw/750);
	height: calc(40*100vw/750);
}

#side .side_accordion-arrow::before,
#side .side_accordion-arrow::after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background: #999;
}

#side .side_accordion-arrow::before {
	width: calc(6*100vw/750);
	height: calc(40*100vw/750);
}

#side .side_accordion-arrow::after {
	width: calc(40*100vw/750);
	height: calc(6*100vw/750);
}

#side .side_menu-text.active .side_accordion-arrow::before {
	display: none;
}

/* サイドバナー */
#side .side_bnr-list {
	display: flex;
	flex-direction: column;
	gap: calc(24*100vw/750) 0;
}

#side .side_bnr-item img {
	width: 100%;
	height: auto;
	border-radius: calc(12*100vw/750);
	box-shadow: 0 0 calc(16 * 100vw / 750) rgb(0 0 0 / 16%);
}

#side .side_bnr-inner {
	padding: calc(32* 100vw / 750) calc(40* 100vw / 750) calc(28* 100vw / 750);
	position: relative;
	border-radius: calc(20* 100vw / 750);
	box-shadow: 0 0 calc(50* 100vw / 750) rgba(0, 0, 0, 0.16);
}

#side .side_bnr-title {
	margin-bottom: calc(12* 100vw / 750);
	font-size: calc(38* 100vw / 750);
	font-weight: bold;
	letter-spacing: .04em;
	color: var(--color-main);
}

#side .side_bnr-desc {
	font-size: calc(28* 100vw / 750);
	letter-spacing: .02em;
}

/* サイド個別設定
--------------------------------------------------------- */
/* side_user */
#side .side_user {
	margin-bottom: calc(56*100vw/750);
}

#side .side_user-list {
	padding: calc(32*100vw/750) 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 2px solid var(--color-main);
	border-bottom: 2px solid var(--color-main);
}

#side .side_user-item {
	display: flex;
	justify-content: center;
}

#side .side_user-item.-cart img {
	width: calc(138*100vw/750);
	height: calc(78*100vw/750);
}

#side .side_user-item.-account img,
#side .side_user-item.-login img {
	width: calc(111*100vw/750);
	height: calc(78*100vw/750);
}

#side .side_user-item.-contact img {
	width: calc(166*100vw/750);
	height: calc(78*100vw/750);
}

/* side_search */
#side .side_search {
	margin-bottom: calc(56*100vw/750);
}
#side .side_search-list {
	display: flex;
	flex-direction: column;
	gap: calc(24*100vw/750);
}
#side .side_search-link {
	display: grid;
	grid-template-columns: calc(120*100vw/750) auto calc(40*100vw/750);
	align-items: center;
	gap: calc(24*100vw/750);
}
.side_search-image {
	border: calc(2*100vw/750) solid #ccc;
}
.side_search-text {
	font-size: calc(32*100vw/750);
	font-weight: 700;
}

/* side_service */
#side .side_service .side_bnr-list {
	margin-bottom: calc(56*100vw/750);
}

#side .side_bnr-inner.-beginner {
	background: url("../../images/common/bnr/bnr_beginner.webp") no-repeat 0 0 / cover;
}

/* side_other */
#side .side_other .side_bnr-list {
	margin-bottom: calc(56*100vw/750);
}

/* side_group */
#side .side_group_list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: calc(40*100vw/750) calc(22*100vw/750);
}

#side .side_group_item img {
	width: 100%;
	height: auto;
	border-radius: calc(10*100vw/750);
	box-shadow: 0 0 calc(16 * 100vw / 750) rgb(0 0 0 / 16%);
}

@media screen and (min-width: 920px) {
/* サイド共通設定
--------------------------------------------------------- */
#side {
	width: 300px;
	top: 92px;
}

#side .side_container {
	margin-bottom: 40px;
}

#side .side_wrap {
	padding: 24px 8px 48px;
}

#side .side_title {
	margin-bottom: 24px;
	font-size: 16px;
}

/* サイドカテゴリ */
#side .side_menu-list {
	border-top: 2px solid var(--color-main);
}

#side .side_menu-item {
	border-bottom: 2px solid var(--color-main);
}

#side .side_menu-text {
	padding: 16px 4px;
	font-size: 15px;
	gap: 0 12px;
}

#side .side_menu-arrow {
	width: 12px;
	height: 12px;
	border-bottom: 2px solid #999;
	border-right: 2px solid #999;
}

/* サイド開閉メニュー */
#side .side_accordion-inner {
	padding-bottom: 32px;
}

#side .side_accordion-list {
	gap: 6px 8px;
}

#side .side_accordion-item {
	border-radius: 20px;
}

#side .side_accordion-btn {
	font-size: 12px;
}

#side .side_accordion-btn.-short {
	padding: 12px 24px;
}

#side .side_accordion-btn.-middle {
	padding: 12px 16px;
}

#side .side_accordion-btn.-long {
	padding: 12px 12px;
}

#side .side_accordion-arrow {
	width: 16px;
	height: 16px;
}

#side .side_accordion-arrow::before {
	width: 2px;
	height: 16px;
}

#side .side_accordion-arrow::after {
	width: 16px;
	height: 2px;
}

#side .side_menu-text.active .side_accordion-arrow::before {
	display: none;
}

/* サイドバナー */
#side .side_bnr-list {
	gap: 16px 0;
}

#side .side_bnr-item img {
	width: 100%;
	height: auto;
	border-radius: 8px;
	box-shadow: 0 0 8px rgb(0 0 0 / 16%);
}

#side .side_bnr-inner {
	padding: 13px 16px 12px;
	border-radius: 8px;
	box-shadow: 0 0 8px rgb(0 0 0 / 16%);
}

#side .side_bnr-title {
	margin-bottom: 2px;
	font-size: 16px;
}

#side .side_bnr-desc {
	font-size: 11px;
}

/* サイド個別設定
--------------------------------------------------------- */
/* side_user */
#side .side_user {
	margin-bottom: 24px;
}

#side .side_user-list {
	padding: 10px 0;
}

#side .side_user-item {
	display: flex;
	justify-content: center;
}

#side .side_user-item.-cart img {
	width: 60px;
	height: 31px;
}

#side .side_user-item.-account img,
#side .side_user-item.-login img {
	width: 48px;
	height: 31px;
}

#side .side_user-item.-contact img {
	width: 72px;
	height: 31px;
}

/* side_search */
#side .side_search {
	margin-bottom: 24px;
}

#side .side_search-list {
	gap: 20px;
}
#side .side_search-link {
	grid-template-columns: 60px auto 32px;
	gap: 16px;
}
.side_search-image {
	border: 1px solid #ccc;
}
.side_search-text {
	font-size: 15px;
}


/* side_service */
#side .side_service .side_bnr-list {
	margin-bottom: 24px;
}

/* side_other */
#side .side_other .side_bnr-list {
	margin-bottom: 24px;
}

/* side_group */
#side .side_group_list {
	gap: 16px 8px;
}

#side .side_group_item img {
	border-radius: 4px;
	box-shadow: 0 0 8px rgb(0 0 0 / 16%);
}
}

/* コンポーネント
========================================================================== */
/* サイトマップ 
---------------------------------------------------------- */
#main .box_sitemap h3 {
	margin: 0 0 1px;
	position: relative;
}

#main .sitemap_list li {
	border-bottom: 1px solid #e6e6e6;
}

#main .sitemap_list li a {
	position: relative;
	padding: calc(16 * 100vw / 750) calc(24 * 100vw / 750);
	font-size: calc(28 * 100vw / 750);
	font-weight: bold;
	text-decoration: none;
	display: flex;
	align-items: center;
}

#main .sitemap_list li a::after {
	content: "";
	display: inline-block;
	width: calc(12 * 100vw / 750);
	height: calc(12 * 100vw / 750);
	margin-left: auto;
	border-bottom: calc(4 * 100vw / 750) solid #333;
	border-right: calc(4 * 100vw / 750) solid #333;
	transform: rotate(315deg);
}

@media screen and (min-width: 920px) {
	#main .sitemap_list li a {
		padding: 12px 20px;
		font-size: 16px;
	}

	#main .sitemap_list li a::after {
		width: 8px;
		height: 8px;
		border-bottom: 3px solid #333;
		border-right: 3px solid #333;
	}
}

/* お問い合わせボタン
---------------------------------------------------------- */
.btn_contact {
	margin-inline: auto;
	width: calc(556*100vw/750);
}

.btn_contact a {
	margin: 0 auto;
	padding: calc(28 *100vw/750) 0;
	font-size: calc(36*100vw/750);
	font-weight: bold;
	text-decoration: none;
	border-radius: calc(8*100vw/750);
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #FFA7A7;
	background: #fff;
	color: #FFA7A7;
}

.btn_contact a span {
	position: relative;
	width: calc(36 * 100vw / 750);
	height: calc(36 * 100vw / 750);
	left: calc(8 * 100vw / 750);
	border-radius: 50%;
	background: #FFA7A7;
}

.btn_contact a span::after {
	position: absolute;
	content: "";
	top: 50%;
	left: calc(20 * 100vw / 750);
	transform: translate(-50%, -50%);
	width: calc(14 * 100vw / 750);
	height: calc(18 * 100vw / 750);
	clip-path: polygon(0 0, 0 100%, 100% 50%);
	background-color: #fff;
}

.btn_contact-text {
	margin-top: calc(32*100vw/750);
	font-size: calc(26*100vw/750);
}

@media screen and (min-width: 920px) {
	.btn_contact {
		width: 280px;
	}

	.btn_contact a {
		font-size: 18px;
		padding: 16px 0;
		margin-bottom: 10px;
		border-radius: 8px;
	}

	.btn_contact a span {
		width: 18px;
		height: 18px;
		left: 4px;
	}

	.btn_contact a span::after {
		left: 10px;
		width: 7px;
		height: 9px;
	}

	.btn_contact-text {
		margin-top: 28px;
		font-size: 14px;
	}
}

/* リンクアイコン
--------------------------------------------------------- */
/* サイト内リンク */
/* #main .link {
    display: flex;
    align-items: baseline;
    gap: 0 4px;
}
#main .link::before {
    content: "";
    width: calc(24 * 100vw / 750);
    height:calc(24 * 100vw / 750);
    background: url("https://nenga.aisatsujo.jp/group_common/images/link/img_arrow_y.png") no-repeat 0 0 /contain;
    font: initial;
    position: relative;
    top: 2px;
}
#main .link_out:after {
  content: url("https://nenga.aisatsujo.jp/group_common/images/link/img_arrow_y.png");
  position: relative;
  top: 0.1em;
  left: 0.3em;
}
@media screen and (min-width: 920px) {
    #main .link::before {
        width: 14px;
        height: 14px;
    }
} */

/* 注釈ボックス
--------------------------------------------------------- */
.box_att {
	position: relative;
	font-weight: bold;
	color: #333;
	background: #ffe1e1;
	border: #d70c18 solid 2px;
	padding: calc(16 * 100vw / 750) calc(20 * 100vw / 750);
	line-height: 1.6;
}

/* モーダル表示 
--------------------------------------------------------- */
#modal {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	position: fixed;
	top: 0;
	left: 0;
	display: none;
	z-index: 10000;
	text-align: center;
}

#modal>div {
	width: 340px;
	margin-left: -190px;
	padding: 30px 20px 20px;
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	background: #fff;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}

#modal_child dt {
	margin-bottom: 10px;
}

#modal_child dd {
	font-size: 14px;
	line-height: 1.4em;
	text-align: left;
	margin: 0 40px 10px;
}

#modal_child dd#reginumber {
	margin: 0 0 15px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: #333;
}

#modal_child dd#reginumber span {
	font-size: 22px;
}

#modal_child dd#full {
	margin: 25px 0 10px;
	text-align: justify;
}

#modal_child p#bnt_favorit {
	margin-bottom: 20px;
}

#modal_child p#bnt_favorit a,
#modal_child p#btn_close a {
	display: block;
	color: #fff;
	margin: 0 auto;
	padding: 0;
	text-decoration: none;
}

#modal_child p#bnt_favorit a {
	width: 180px;
	height: 22px;
	font-size: 12px;
	line-height: 22px;
	background: #ff6c7f;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
}

#modal_child p#btn_close a {
	width: 100px;
	height: 35px;
	font-size: 16px;
	line-height: 35px;
	font-weight: bold;
	background: #ff6600;
	border-radius: 5px;
	padding: 2px 0 0;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#modal_child p#bnt_favorit a:hover,
#modal_child p#btn_close a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}


/* アコーディオン設定 
--------------------------------------------------------- */
#main .accordionmenu>h2,
#main .accordionmenu>h3 {
	color: #333;
	margin: 0 !important;
	border: none !important;
	background: #F9F9F9;
	position: relative !important;
	font-size: 24px;
}

#main .accordionmenu>div {
	margin: 20px 0;
}

#main .arrow {
	position: absolute;
	top: 50%;
	right: 6px;
	width: 16px;
	height: 16px;
	line-height: 1;
	margin-top: -8px;
	color: #666;
	-webkit-transition: .3s;
	-moz-transition: .3s;
	-ms-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

#main .arrow:before {
	font: 20px 'Typicons';
	content: "7";
}

#main .rotate {
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}

@media screen and (max-width: 640px) {
	#main .accordionmenu>div {
		margin: 20px 10px;
	}
}

@media screen and (max-width: 600px) {
	#main .accordionmenu>div {
		margin: 10px;
	}
}

/* フローティングバナー
--------------------------------------------------------- */
#bnr_f_discount {
	width: min(calc(720 * 100vw / 750), 720px);
	display: block;
	position: fixed;
	left: 50%;
	bottom: calc(136 * 100vw / 750);
	transition: 1s;
	transform: translateX(-50%);
	z-index: 998;
	border-radius: min(calc(8 * 100vw / 750), 8px);
	box-shadow: 0 min(calc(8 * 100vw / 750), 8px) min(calc(16 * 100vw / 750), 16px) rgb(0 0 0 / 20%);
}

#bnr_f_discount.hide {
	bottom: -100%;
}

#bnr_f_discount a {
	display: block;
}

#bnr_f_discount img {
	margin: 0 auto;
	width: 100%;
	height: auto;
	vertical-align: bottom;
	border-radius: min(calc(8 * 100vw / 750), 8px);
}

/* 閉じるボタン */
.bnr_f_close {
	width: min(calc(48 * 100vw / 750), 48px);
	height: min(calc(48 * 100vw / 750), 48px);
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: calc(50% - min(calc(300 * 100vw / 750), 300px));
	transform: translateY(-50%);
	background: #BBBBBB;
	color: #fff;
	cursor: pointer;
}

.bnr_f_close::before,
.bnr_f_close::after {
	display: inline-block;
	content: "";
	width: min(calc(4 * 100vw / 750), 4px);
	height: min(calc(32 * 100vw / 750), 32px);
	position: absolute;
	top: min(calc(7 * 100vw / 750), 7px);
	left: min(calc(22 * 100vw / 750), 22px);
	background: #fff;
}

.bnr_f_close::before {
	transform: rotate(45deg);
}

.bnr_f_close::after {
	transform: rotate(-45deg);
}

#bnr_f_discount.hide .bnr_f_close {
	display: none;
}

@media screen and (min-width: 920px) {
	#bnr_f_discount {
		width: 576px;
		bottom: 8px;
		border-radius: 8px;
		box-shadow: 0 8px 16px rgb(0 0 0 / 20%);
	}

	#bnr_f_discount img {
		border-radius: 8px;
	}

	/* 閉じるボタン */
	.bnr_f_close {
		width: 38px;
		height: 38px;
		left: calc(50% - 240px);
		transform: translateY(-50%);
	}

	.bnr_f_close::before,
	.bnr_f_close::after {
		width: 4px;
		height: 26px;
		top: 6px;
		left: 17.5px;
	}
}

/*ページトップフッターに固定 */
.btn_top {
	position: absolute;
	top: calc(-20 * 100vw / 750);
	right: calc(20 * 100vw / 750);
	filter: drop-shadow(0 5px 8px rgba(0, 0, 0, 0.08));
	width: auto;
	height: auto;
}

.btn_top a {
	width: calc(100 * 100vw / 750);
	height: calc(100 * 100vw / 750);
	border-radius: 50%;
	overflow: hidden;
	background: #eeeeee;
	font-size: calc(16 * 100vw / 750);
	text-align: center;
	font-weight: bold;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.btn_top a::before {
	position: static;
	transform: inherit;
	background: #666;
	display: block;
	width: calc(15 * 100vw / 750);
	height: calc(10 * 100vw / 750);
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
	margin-inline: auto;
	margin-bottom: calc(3 * 100vw / 750);
	content: "";
}

@media screen and (min-width: 920px) {
	.btn_top {
		top: -30px;
		right: 20px;
	}

	.btn_top a {
		font-size: 12px;
		line-height: 1.3;
		width: 80px;
		height: 80px;
	}

	.btn_top a::before {
		width: 10px;
		height: 6px;
		margin-bottom: 5px;
	}
}

/*丸btn*/
.btn_arrow {
	display: inline-block;
	position: relative;
	width: calc(30 * 100vw / 750);
	height: calc(30 * 100vw / 750);
	border-radius: 50%;
	background: #ccc;
	top: 1px;
	right: -4px;
}

.btn_arrow::after {
	position: absolute;
	content: "";
	top: 50%;
	left: 39%;
	transform: translateY(-50%);
	border-top: calc(7 * 100vw / 750) solid transparent;
	border-bottom: calc(7 * 100vw / 750) solid transparent;
	border-left: calc(10 * 100vw / 750) solid #fff;
}

@media screen and (min-width: 751px) {
	.btn_arrow {
		width: min(calc(20 * 100vw / 750), 20px);
		height: min(calc(20 * 100vw / 750), 20px);
	}

	.btn_arrow::after {
		border-top: min(calc(4 * 100vw / 750), 7px) solid transparent;
		border-bottom: min(calc(4 * 100vw / 750), 7px) solid transparent;
		border-left: min(calc(6 * 100vw / 750), 10px) solid #fff;
	}
}

@media screen and (min-width: 921px) {
	.btn_arrow::after {
		border-top: min(calc(3 * 100vw / 920), 7px) solid transparent;
		border-bottom: min(calc(3 * 100vw / 920), 7px) solid transparent;
		border-left: min(calc(5 * 100vw / 920), 10px) solid hsl(0, 0%, 100%);
	}
}


/* 下層ページ共通設定
========================================================================== */

/* 下層 共通パーツ 
---------------------------------------------- */
.font_b{
  font-weight: bold;
}
.font_r {
color:var(--color-sub);
}
.font_r_b {
color:var(--color-sub);
font-weight:bold;
}
.underline{
  text-decoration: underline;
}

.box_resend {
	padding: calc(20 * 100vw / 750) calc(16 * 100vw / 750);
	box-sizing: border-box;
	background: #EFEFEF;
}

@media screen and (min-width: 920px) {
	.box_resend {
		padding: 16px 12px;
	}
}

/* 緑ボタン 
---------------------------------------------------------- */
#main .btn_g {
	width: calc(600 * 100vw / 750);
}

#main .btn_g a {
	font-family: "Shippori Mincho", "Noto Sans JP", sans-serif;
	padding: calc(26 * 100vw / 750);
	font-size: calc(40 * 100vw / 750);
	background: var(--color-main);
}

#main .btn_g-arrow {
	width: calc(40* 100vw / 750);
	height: calc(40* 100vw / 750);
	left: calc(8* 100vw / 750);
}

#main .btn_g-arrow::after {
	width: calc(15* 100vw / 750);
	height: calc(20* 100vw / 750);
	left: calc(22* 100vw / 750);
	background: var(--color-main);
}

@media screen and (min-width: 920px) {
	#main .btn_g {
		width: 480px;
	}

	#main .btn_g a {
		padding: 20px 0;
		font-size: 32px;
	}

	#main .btn_g-arrow {
		width: 32px;
		height: 32px;
	}

	#main .btn_g-arrow::after {
		width: 12px;
		height: 15px;
		left: 18px;
	}
}


/* カテゴリボタン (common\include\inc_category_box.blade.php)
--------------------------------------------------------- */
#inc_catebtn_box {
	margin: 0 calc(30*100vw/750);
}

#inc_catebtn_box .item_title {
	background: #FFA7A7;
	border: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	letter-spacing: .05rem;
	padding: calc(20*100vw/750) calc(24*100vw/750) calc(18*100vw/750);
	font-weight: bold;
	margin-bottom: calc(40*100vw/750);
}

#inc_catebtn_box .item_title.mochu_design {
	background: #796CA4;
}

#inc_catebtn_box .item_title {
	margin-bottom: calc(30 * 100vw / 750);
}

#inc_catebtn_box h2.item_title-left {
	margin: 0;
	padding: 0;
	border: none;
	color: #FFF;
	background: none;
	line-height: 100%;
	font-size: calc(40*100vw/750);
}

#inc_catebtn_box p.item_title-right {
	color: #fff;
	border: none;
	font-weight: bold;
	line-height: 100%;
	font-size: calc(28*100vw/750);
}

#inc_catebtn_box p.item_title-right span {
	font-size: calc(40 * 100vw / 750);
}

#inc_catebtn_box .btn_category-inline:first-child {
	margin-bottom: calc(40 * 100vw / 750);
}

#inc_catebtn_box .btn_category-inline ul {
	gap: calc(48 * 100vw / 750);
	flex-wrap: nowrap;
}

#inc_catebtn_box .btn_category-inline li {
	width: 100%;
}

#inc_catebtn_box .btn_category-inline a {
	padding: calc(32 * 100vw / 750);
	border-radius: calc(16 * 100vw / 750);
	box-shadow: 0 0 calc(20 * 100vw / 750) rgb(0 0 0 / 16%);
}

#inc_catebtn_box .btn_category-inline a::before,
#inc_catebtn_box .btn_category-inline a::after {
	content: "";
	display: block;
	position: absolute;
	box-shadow: 0px 0px 18.32px 0px rgba(0, 0, 0, 0.25);
}

#inc_catebtn_box .btn_category-inline a::before {
	width: calc(170 * 100vw / 750);
	height: calc(251 * 100vw / 750);
	right: calc(40 * 100vw / 750);
	top: calc(32 * 100vw / 750);
	z-index: 1;
}

#inc_catebtn_box .btn_category-inline a::after {
	content: none;
}

#inc_catebtn_box .btn_category-title {
	font-size: calc(36 * 100vw / 750);
	margin-bottom: calc(8 * 100vw / 750);
}

#inc_catebtn_box .btn_category-number {
	margin-bottom: calc(16 * 100vw / 750);
	width: calc(125 * 100vw / 750);
	height: calc(40 * 100vw / 750);
	line-height: calc(42 * 100vw / 750);
	font-size: calc(22 * 100vw / 750);
	border-radius: calc(4 * 100vw / 750);
	letter-spacing: .06em;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	padding: 0;
}

#inc_catebtn_box .btn_category-number span {
	font-size: calc(32 * 100vw / 750);
	margin-right: calc(2 * 100vw / 750);
	display: block;
}

/*初めてのかたへ　調整*/
#beginner #inc_catebtn_box .btn_category-number {
	align-items: baseline;
}

#inc_catebtn_box .btn_category-order {
	font-size: calc(24 * 100vw / 750);
}

#inc_catebtn_box .btn_category-inline.-kanchu .btn_category-order {
	color: #FFA7A7;
}

#inc_catebtn_box .btn_category-inline.-kanchu .btn_category-number,
#inc_catebtn_box .btn_category-inline.-kanchu .btn_category-arrow {
	background: #FFA7A7;
}

#inc_catebtn_box .btn_category-inline.-mochu .btn_category-order {
	color: #796CA4;
}

#inc_catebtn_box .btn_category-inline.-mochu .btn_category-number,
#inc_catebtn_box .btn_category-inline.-mochu .btn_category-arrow {
	background: #796CA4;
}

#inc_catebtn_box .btn_category-arrow {
	width: calc(28 * 100vw / 750);
	height: calc(28 * 100vw / 750);
	background: #FFA7A7;
	;
	top: calc(2 * 100vw / 750);
	right: calc(-4 * 100vw / 750);
}

#inc_catebtn_box .btn_category-arrow::after {
	left: calc(16 * 100vw / 750);
	width: calc(12 * 100vw / 750);
	height: calc(16 * 100vw / 750);
}

/* スタンダードデザイン */
#inc_catebtn_box .btn_category-inline li.-design a::before {
	background: url("../../../images/list/img_design.webp") no-repeat 0 0 /contain;
}

#inc_catebtn_box .btn_category-inline li.-design a::after {
	background: url("../../../images/list/img_design2.webp") no-repeat 0 0 /contain;
}

/* 写真フレームタイプ */
#inc_catebtn_box .btn_category-inline li.-photo a::before {
	background: url("../../../images/list/img_photo.webp") no-repeat 0 0 /contain;
}

#inc_catebtn_box .btn_category-inline li.-photo a::after {
	background: url("../../../images/list/img_photo2.webp") no-repeat 0 0 /contain;
}

/* 喪中デザイン */
#inc_catebtn_box .btn_category-inline li.-color a::before {
	background: url("../../../images/list/img_color.webp") no-repeat 0 0 /contain;
}

#inc_catebtn_box .btn_category-inline li.-color a::after {
	background: url("../../../images/list/img_color2.webp") no-repeat 0 0 /contain;
}

/* モノクロタイプ */
#inc_catebtn_box .btn_category-inline li.-mono a::before {
	background: url("../../../images/list/img_mono.webp") no-repeat 0 0 /contain;
}

#inc_catebtn_box .btn_category-inline li.-mono a::after {
	background: url("../../../images/list/img_mono2.webp") no-repeat 0 0 /contain;
}

@media screen and (min-width: 920px) {
	#inc_catebtn_box {
		margin: 0 4%;
	}

	#inc_catebtn_box .item_title {
		padding: 20px 24px 18px;
		margin-bottom: 20px;
	}

	#inc_catebtn_box h2.item_title-left {
		font-size: 28px;
	}

	#inc_catebtn_box p.item_title-right {
		line-height: 100%;
		font-size: 24px;
	}

	#inc_catebtn_box p.item_title-right span {
		font-size: 32px;
	}

	#inc_catebtn_box .btn_category-inline:first-child {
		margin-bottom: 40px;
	}

	#inc_catebtn_box .btn_category-inline ul {
		gap: 40px;
	}

	#inc_catebtn_box .btn_category-inline a {
		padding: 24px;
		border-radius: 12px;
		box-shadow: 0 0 16px rgb(0 0 0 / 16%);
	}

	#inc_catebtn_box .btn_category-inline a::before,
	#inc_catebtn_box .btn_category-inline a::after {
		width: 110px;
		height: 164px;
		right: 100px;
		top: 40px;
		box-shadow: 8px 8px 16px rgba(0 0 0 / 16%);
	}

	#inc_catebtn_box .btn_category-inline a::after {
		content: "";
		right: 24px;
		top: 24px;
	}

	#inc_catebtn_box .btn_category-title {
		font-size: 28px;
		margin-bottom: 6px;
	}

	#inc_catebtn_box .btn_category-number {
		margin-bottom: 12px;
		font-size: 14px;
		border-radius: 4px;
		width: 110px;
		height: 32px;
		line-height: 37px;
	}

	#inc_catebtn_box .btn_category-number span {
		font-size: 24px;
		margin-right: 2px;
		margin-top: 0;
	}

	/*初めてのかたへ　調整*/
	#beginner #inc_catebtn_box .btn_category-number {
		height: auto;
		line-height: normal;
		padding: 6px 0 2px;
	}

	#inc_catebtn_box .btn_category-order {
		font-size: 18px;
	}

	#inc_catebtn_box .btn_category-arrow {
		width: 20px;
		height: 20px;
		top: 0;
		right: -4px;
	}

	#inc_catebtn_box .btn_category-arrow::after {
		width: 8px;
		height: 10px;
		left: 11px;
	}
}

/* 休暇案内カレンダー
--------------------------------------------------------- */
#nouki_tbl table {
	margin: calc(12* 100vw / 750) 0;
	width: 100%;
	border: 1px solid #BBB;
	border-collapse: collapse;
	border-spacing: 0;
}

#nouki_tbl table caption {
	font-size: calc(32* 100vw / 750);
	font-weight: bold;
	margin-bottom: calc(12* 100vw / 750);
}

#nouki_tbl table th {
	padding: calc(4* 100vw / 750) calc(8* 100vw / 750);
	font-size: calc(24* 100vw / 750);
	text-align: center;
	border: 1px solid #BBB;
	background: #FFE9A4;
}

#nouki_tbl table .headline th {
	font-weight: bold;
	background: #FC6;
}

#nouki_tbl table td {
	padding: calc(4* 100vw / 750) calc(8* 100vw / 750);
	font-size: calc(18* 100vw / 750);
	text-align: center;
	border: 1px solid #BBB;
}

#nouki_tbl table td.color_g {
	background-color: #BBB;
}

#nouki_tbl table td.color_r {
	background-color: #FFC3C4;
}

#nouki_tbl table th.color_gr {
	background-color: #E8FBD0;
}

#nouki_tbl table th.color_y {
	background-color: #FFFFB0;
}

#nouki_tbl table th.color_w {
	background-color: #FFF;
}

#nouki_tbl table th.color_dy {
	background-color: #FFE97D;
}

#nouki_tbl table td.color_y {
	background-color: #FFFFE6;
}

#nouki_tbl table td.color_dy {
	background-color: #FFF4C1;
}

#nouki_tbl table td.color_last {
	background-color: #FFCC00;
}

#nouki_tbl .ddate_holiday {
	display: flex;
	gap: calc(8* 100vw / 750);
}

#nouki_tbl p.ddate_holiday span {
	width: calc(80* 100vw / 750);
	background: #FFC3C4;
}

/* 宛名印刷あり */
#nouki_tbl .atena_r {
	font-weight: bold;
	padding: calc(4* 100vw / 750) calc(6* 100vw / 750);
	margin-left: calc(4* 100vw / 750);
	background-color: #EC7669;
	color: #FFF;
}

/* 宛名印刷なし */
#nouki_tbl .atena_g {
	font-weight: bold;
	padding: calc(4* 100vw / 750) calc(6* 100vw / 750);
	margin-left: calc(4* 100vw / 750);
	background-color: #EEE;
	color: #333;
}

@media screen and (min-width: 920px) {
	#nouki_tbl table {
		margin: 12px 0;
	}

	#nouki_tbl table caption {
		font-size: 22px;
		margin-bottom: 12px;
	}

	#nouki_tbl table th {
		padding: 4px 8px;
		font-size: 18px
	}

	#nouki_tbl table td {
		padding: 4px 8px;
		font-size: 14px;
	}

	#nouki_tbl .ddate_holiday {
		gap: 8px;
	}

	#nouki_tbl p.ddate_holiday span {
		width: 40px;
	}

	/* 宛名印刷あり */
	#nouki_tbl .atena_r {
		padding: 4px 6px;
		margin-left: 4px;
	}

	/* 宛名印刷なし */
	#nouki_tbl .atena_g {
		font-weight: bold;
		padding: 4px 6px;
		margin-left: 4px;
	}
}

/* guide共通
---------------------------------------------------------- */
.delivery_point .point_box {
	background: #EFEFEF;
	padding: calc(24 * 100vw / 750) calc(28 * 100vw / 750);
}

.delivery_point .point_list {
	list-style-type: disc;
	padding-left: calc(20 * 100vw / 750);
	line-height: 169.5%;
}

@media screen and (min-width: 920px) {
	.delivery_point .point_box {
		padding: 24px 28px;
	}

	.delivery_point .point_list {
		padding-left: min(calc(20 * 100vw / 920), 20px);
	}
}

/* 送料無料吹き出し */
.mypage {
	padding: calc(24 * 100vw / 750) 0;
}

.mypage_head {
	box-sizing: border-box;
	position: relative;
	margin: 0 auto calc(20 * 100vw / 750);
	padding: calc(32 * 100vw / 750);
	width: calc(680 * 100vw / 750);
	border-radius: calc(6 * 100vw / 750);
	text-align: center;
	background: #F4F6EC;
}

.mypage_head:after {
	content: "";
	margin: auto;
	width: calc(20 * 100vw / 750);
	height: calc(12 * 100vw / 750);
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	clip-path: polygon(50% 100%, 0 0, 100% 0);
	transform: translateY(100%);
	background-color: #F4F6EC;
}

.mypage_head_copy {
	margin-bottom: calc(12 * 100vw / 750);
	font-size: calc(28 * 100vw / 750);
	font-weight: bold;
}

.mypage_head_copy span {
	font-size: calc(44 * 100vw / 750);
	color: #D70C18;
}

.mypage_head_date {
	box-sizing: border-box;
	padding: calc(8 * 100vw / 750);
	font-size: calc(24 * 100vw / 750);
	font-weight: bold;
	border-radius: calc(2 * 100vw / 750);
	color: #FFFFFF;
	background-color: #D70C18;
}

/* マイページ登録ボタン */
.btn_mypage_entry {
	width: calc(600 * 100vw / 750);
}

.btn_mypage_entry a {
	padding: calc(28 * 100vw / 750) 0;
	border-radius: calc(80 * 100vw / 750);
}

.btn_mypage_desc {
	font-size: calc(28 * 100vw / 750);
}

.btn_mypage_caution {
	font-size: calc(18 * 100vw / 750);
}

.btn_mypage_arrow {
	position: relative;
	width: calc(36 * 100vw / 750);
	height: calc(36 * 100vw / 750);
	border-radius: 50%;
	background: #fff;
	left: calc(12 * 100vw / 750);
}

.btn_mypage_arrow::after {
	position: absolute;
	content: "";
	top: 50%;
	left: calc(20 * 100vw / 750);
	transform: translate(-50%, -50%);
	width: calc(15 * 100vw / 750);
	height: calc(18 * 100vw / 750);
	background-color: #6FB92C;
	clip-path: polygon(0 0, 0 100%, 100% 50%);
}

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

	/* 送料無料吹き出し */
	.mypage {
		padding: 20px 0;
	}

	.mypage_head {
		margin: 0 auto 16px;
		padding: 26px;
		width: 560px;
		border-radius: 4px;
	}

	.mypage_head:after {
		width: 16px;
		height: 10px;
	}

	.mypage_head_copy {
		margin-bottom: 10px;
		font-size: 22px;
	}

	.mypage_head_copy span {
		font-size: 36px;
	}

	.mypage_head_date {
		padding: 6px;
		font-size: 20px;
		border-radius: 2px;
	}

	/* マイページ登録ボタン */
	.btn_mypage_entry {
		width: 480px;
	}

	.btn_mypage_entry a {
		padding: 22px 0;
		border-radius: 64px;
	}

	.btn_mypage_desc {
		font-size: 22px;
	}

	.btn_mypage_caution {
		font-size: 14px;
	}

	.btn_mypage_arrow {
		width: 28px;
		height: 28px;
		left: 10px;
	}

	.btn_mypage_arrow::after {
		left: 16px;
		width: 12px;
		height: 14px;
	}
}