@charset "utf-8";

/* .wrap_offcanvas下部の余白の削除 */

@media screen and (max-width: 1119px) {
	.wrap_offcanvas {
		padding-bottom: 0;
	}
}
.wrp-container {
	max-width: none;
	padding: 0;
}

/* 書体 */

.box-menu__tab,
.box-popup .title,
.box-popup .price,
.box-popup .description,
.box-article__icon,
.txt-banzai,
.txt-note {
	font-feature-settings: "palt";
}
.box-popup .price,
.box-popup .description,
.box-article__icon,
.txt-banzai,
.txt-note {
	letter-spacing: 0.05em;
}
.box-article__icon {
	letter-spacing: 0.02em;
}

/* background */

.bg-pettern {
}

.bg-pettern--top {
	background-color: #abe3ff;
}

@media screen and (max-width: 767px) {
	.bg-pettern--top {
	}
}

.bg-pettern--category01,
.bg-pettern--category02,
.bg-pettern--category03 {
	position: relative;
	background-repeat:
		repeat-y,
		repeat-y,
		no-repeat;
	background-position:
		left top,
		right top,
		center top;
	background-size:
		250px auto,
		250px auto,
		auto;
}

@media screen and (max-width: 767px) {
	.bg-pettern--category01,
	.bg-pettern--category02,
	.bg-pettern--category03 {
		background-repeat:
			repeat-y,
			no-repeat;
		background-position:
			center top,
			center top;
		background-size:
			100% auto,
			100% auto;
	}
}

.bg-pettern--category01 {
	background-image:
		url(../images/parts-bg-ohitori-front-pc-l.png),
		url(../images/parts-bg-ohitori-front-pc-r.png),
		url(../images/parts-bg-ohitori-base-pc.png);
	background-size:
		250px auto,
		250px auto,
		100% auto;
	background-color: #ffdab0;
}

@media screen and (max-width: 767px) {
	.bg-pettern--category01 {
		background-image:
			url(../images/parts-bg-ohitori-front-sp.png),
			url(../images/parts-bg-ohitori-base-sp.png);
		background-size:
			100% auto,
			100% auto;
	}
}

.bg-pettern--category02 {
	background-image:
		url(../images/parts-bg-ofutari-front-pc-l.png),
		url(../images/parts-bg-ofutari-front-pc-r.png),
		url(../images/parts-bg-ofutari-base-pc.png);
	background-color: #4abce2;
}

@media screen and (max-width: 767px) {
	.bg-pettern--category02 {
		background-image:
			url(../images/parts-bg-ofutari-front-sp.png),
			url(../images/parts-bg-ofutari-base-sp.png);
	}
}

.bg-pettern--category03 {
	background-image:
		url(../images/parts-bg-mina-front-pc-l.png),
		url(../images/parts-bg-mina-front-pc-r.png),
		url(../images/parts-bg-mina-base-pc.png);
	background-color: #70b34d;
}

@media screen and (max-width: 767px) {
	.bg-pettern--category03 {
		background-image:
			url(../images/parts-bg-mina-front-sp.png),
			url(../images/parts-bg-mina-base-sp.png);
	}
}

.box-menu__content::before,
.box-menu__content::after {
	content: "";
	z-index: 2;
	position: absolute;
	width: 200px;
	height: 200px;
	background-repeat: no-repeat;
	background-size: contain;
	pointer-events: none;
}

.box-menu__content::before {
	background-position: left top;
}

.box-menu__content::after {
	background-position: right top;
}

#category01 .box-menu__content::before {
	left: -30px;
	top: -35px;
	background-image: url(../images/parts-bg-ohitori-human-l.png);
}

#category01 .box-menu__content::after {
	right: -50px;
	bottom: -40px;
	background-image: url(../images/parts-bg-ohitori-human-r.png);
}

#category02 .box-menu__content::before {
	left: -30px;
	top: -20px;
	background-image: url(../images/parts-bg-ofutari-human-l.png);
}

#category02 .box-menu__content::after {
	right: -50px;
	bottom: -40px;
	background-image: url(../images/parts-bg-ofutari-human-r.png);
}

#category03 .box-menu__content::before {
	left: -30px;
	top: -20px;
	background-image: url(../images/parts-bg-mina-human-l.png);
}

#category03 .box-menu__content::after {
	right: -30px;
	bottom: -10px;
	background-image: url(../images/parts-bg-mina-human-r.png);
}

@media screen and (max-width: 767px) {
	.box-menu__content::before,
	.box-menu__content::after {
		width: 40vw;
		height: 40vw;
	}

	.box-menu__content::before {
		left: -75px;
		top: -30px;
	}

	.box-menu__content::after {
		right: -82px;
		bottom: -30px;
	}

	#category01 .box-menu__content::before {
		left: -65px;
		top: -25px;
	}

	#category01 .box-menu__content::after {
		right: -80px;
		bottom: -30px;
	}

	#category02 .box-menu__content::before {
		left: -60px;
		top: -15px;
	}

	#category02 .box-menu__content::after {
		right: -75px;
		bottom: -40px;
	}

	#category03 .box-menu__content::before {
		left: -55px;
		top: -15px;
	}

	#category03 .box-menu__content::after {
		right: -60px;
		bottom: -15px;
	}
}

/* title */

.box-title {
	text-align: center;
	padding: 55px 0 0;
	position: relative;
	pointer-events: none;
}
@media screen and (max-width: 767px) {
	.box-title{
		padding: 60px 0 0;
	}
}
.box-title__heading {
	position: relative;
	z-index: 1;
}
.box-title__heading.pc_hide {
	width: 85%;
	margin: auto;
}
@media screen and (max-width: 767px) {
	.box-title__heading.pc_hide {
		width: 100%;
		pointer-events: none;
	}
}
@media screen and (max-width: 767px) {
	.box-title__img {
		margin: 0;
	}
}
.box-title__sub {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.875;
	/*margin: 40px 0 0;*/
	margin: 0;
}
@media screen and (max-width: 767px) {
	.box-title__sub {
		font-size: 14px;
		line-height: 1.6;
		/*margin: 25px 0 0;*/
		margin: 10px 0 0;
	}
}
@media screen and (min-width: 560px) {
	.box-title__sub > .pc_hide{
		display: none;
	}
}

/* banzai */

.wrp-banzai {
	margin-top: 0;
	margin-bottom: -5px;
}
.wrp-banzai .txt-banzai {
	color: #fff;
}
.wrp-banzai .txt-banzai:before,
.wrp-banzai .txt-banzai:after {
	background: #fff;
}

/* box-menu */

.box-menu {
	position: relative;
	z-index: 1;
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 50px 40px;
	overflow: hidden;
}

@media screen and (max-width: 767px) {
	.box-menu {
		padding: 0 8vw 8vw;
	}
}

.box-menu__content {
	position: relative;
	z-index: 1;
}

.box-menu__list {
	margin: 0;
	/*border: 5px solid #fff;*/
	border-radius: 20px;
	background: transparent;
	overflow: visible;
}

@media screen and (max-width: 767px) {
	.box-menu__list {
		margin: 0 0 0;
		border-radius: 0;
		background-position: center bottom;
		background-size: 120%;
	}
}

.box-menu__list li {
	width: calc(25% - 20px) !important;
	margin: 0 10px 20px !important;
	padding: 0 0 35px !important;
	border-radius: 12px;
	background: #fff;
	cursor: pointer;
	opacity: 1;
	/* filter: brightness(1) contrast(1); */
	/* transition: filter .5s; */
}

.box-menu__list li:hover {
	opacity: 1;
	/* filter: brightness(1.1) contrast(1.1); */
	/* transition: filter .1s; */
}

#category01 .box-menu__list li {
	box-shadow: 4px 4px 0 4px rgba(183, 132, 215, .5);
}

#category02 .box-menu__list li {
	box-shadow: 4px 4px 0 4px rgba(18, 130, 196, .5);
}

#category03 .box-menu__list li {
	box-shadow: 4px 4px 0 4px rgba(80, 134, 30, .5);
}

@media screen and (max-width: 767px) {
	.box-menu__list li {
		width: calc(50% - 3vw) !important;
		margin: 0 1.5vw 3vw !important;
		padding: 0 0 32px !important;
		border-radius: 10px;
		background: #fff;
	}

	#category01 .box-menu__list li {
		box-shadow: 3px 3px 0 3px rgba(183, 132, 215, .5);
	}

	#category02 .box-menu__list li {
		box-shadow: 3px 3px 0 3px rgba(18, 130, 196, .5);
	}

	#category03 .box-menu__list li {
		box-shadow: 3px 3px 0 3px rgba(80, 134, 30, .5);
	}
}

.box-menu__list li::after {
	content: "";
	z-index: 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 12px;
	background-color: #fff;
	opacity: 0;
	pointer-events: none;
	transition: opacity .5s;
}

@media screen and (max-width: 767px) {
	.box-menu__list li::after {
		content: none;
	}
}

.box-menu__list li:hover::after {
	opacity: .4;
	transition: opacity .1s;
}

#category01 .box-menu__list li::after {
	background-color: #ffbdf5;
}

#category02 .box-menu__list li::after {
	background-color: #6ddfff;
}

#category03 .box-menu__list li::after {
	background-color: #b9ff75;
}

.box-menu__list li [data-mfp-src] {
	opacity: 1;
}

.box-menu__list li [data-mfp-src]:hover {
	opacity: 1;
}

.box-article {
	text-align: center;
}

.box-article:after {
	background-image: none;
	box-shadow: none;
}

@media screen and (max-width: 550px) {
	.box-article:after{
		background-image: none;
		box-shadow: none;
	}
}

@media screen and (max-width: 787px) {
	.wrp-container{
		padding: 0;
	}
}

.lst-img img {
	/*filter: drop-shadow(3px 3px 0 #87d0ff);*/
}
.box-article__icon {
	display: block;
	position: absolute;
	width: auto;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 7px -32px;
	padding: 6px 8px;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.4;
}

@media screen and (max-width: 787px) {
	.box-article__icon{
		margin: 0 7px -26px;
	}
}

#category01 .box-article__icon {
	background-color: transparent;
	color: #cb89d3;
}

#category02 .box-article__icon {
	background-color: transparent;
	color: #50a3ca;
}

#category03 .box-article__icon {
	background-color: transparent;
	color: #76b335;
}

@media screen and (max-width: 787px) {
	.box-article__icon {
		padding: 0;
		font-size: 12px;
	}
}

#category01 .box-article__icon:before {
	color: #cb89d3;
}

#category02 .box-article__icon:before {
	color: #50a3ca;
}

#category03 .box-article__icon:before {
	color: #76b335;
}

/* モーダル背景 */

.mfp-bg {
	background: rgba(19, 34, 61, .85);
}
@media screen and (max-width: 767px) {
	.mfp-bg {
		background-size: 24px;
	}
}
@media screen and (max-width: 787px){
	.mfp-bg {
	}
}
.mfp-bg.mfp-fade-in {
	opacity: 0 !important;
	transition: all 0.5s ease-out !important;
}
.mfp-bg.mfp-fade-in.mfp-ready {
	opacity: 1 !important;
	transition: all 0.5s ease-out !important;
}
.mfp-bg.mfp-fade-in.mfp-removing {
	opacity: 0 !important;
	transition: all 0.5s ease-out !important;
}
.mfp-close:after {
	color: #fff !important;
}
.mfp-arrow-right:after,
.mfp-arrow-left:after {
	color: #fff !important;
}

/* 開始・終了時のトランジション */

.mfp-wrap .mfp-close,
.mfp-wrap .mfp-arrow-right,
.mfp-wrap .mfp-arrow-left {
	opacity: 0 !important;
	transition: all 0.5s ease-out !important;
}
.mfp-wrap.mfp-ready .mfp-close,
.mfp-wrap.mfp-ready .mfp-arrow-right,
.mfp-wrap.mfp-ready .mfp-arrow-left {
	opacity: 1 !important;
	transition: all 0.5s ease-out !important;
}
.mfp-wrap.mfp-removing .mfp-close,
.mfp-wrap.mfp-removing .mfp-arrow-right,
.mfp-wrap.mfp-removing .mfp-arrow-left {
	opacity: 0 !important;
	transition: all 0.5s ease-out !important;
}

/* バナーエリア */

.box-banner {
	margin-top: 0;
	padding: 40px 0 40px;
	border-top: 3px solid #fff;
	background: #fff;
	background-size: 150px;
	text-align: center;
}
.box-banner:before {
	content: none;
}
.box-banner:after {
	content: none;
}
@media screen and (max-width: 1119px) {
	.box-banner {
		margin-top: -30px;
	}
}
@media screen and (max-width: 767px) {
	.box-banner {
		margin-top: 0;
		padding: 20px 0 40px;
	}
}
.box-banner-item {
	display: inline-block;
	max-width: 350px;
	width: 40%;
	margin: 0 20px;
}
@media screen and (max-width: 767px) {
	.box-banner-item {
		display: block;
		max-width: none;
		width: 100%;
		margin: 0;
	}
	.box-banner-item + .box-banner-item {
		margin-top: 40px;
	}
}
.box-banner__header img {
	display: block;
	width: 80%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.box-banner__header img {
		max-width: 320px;
		width: calc(100% - 120px);
	}
}
.box-banner__button {
	margin-top: 0;
}
.box-banner__button a {
	width: 100%;
	margin-top: 20px;
	margin-bottom: 0;
	background-color: #fff;
	font-weight: bold;
	color: #fff;
}
.box-banner__button a:hover {
	color: #fff;
}
.box-banner__button a .icon-arrow-right:before {
	color: #fff;
}
@media screen and (max-width: 767px) {
	.box-banner__button a {
		width: calc(100% - 20px);
	}
}

/* グループナビゲーション */

.category-nav--top {
	max-width: 450px;
	width: 100%;
	margin: -50px auto 0;
	padding: 0 0 2.5vw;
	overflow: hidden;
	transform: skewY(-4deg);
	/* filter: drop-shadow(5px 5px 0 #4ebeff); */
}

@media screen and (max-width: 767px) {
	.category-nav--top {
		width: 89vw;
		margin: -5vw auto 0;
		padding: 0 0 13px;
		overflow: hidden;
		transform: skewY(-4deg);
		/* filter: drop-shadow(3px 3px 0 #4ebeff); */
	}
}

.category-nav--bottom {
	display: none;
}

@media screen and (max-width: 767px) {
	.category-nav--bottom {
		display: block;
		position: fixed;
		z-index: 3;
		bottom: 60px;
		left: 0;
		width: 100%;
		margin: 0;
		padding-top: 13vw;
		transition: bottom .3s;
		background-image: url(../images/parts-bottomnavbase.png);
		background-size: cover;
		background-position: center bottom;
		filter: drop-shadow(0px -6px 6px rgba(128, 128, 128, .3));
		pointer-events: none;
	}

	.header_nav_sp {/* ローカルメニューの回避のため */
		z-index: 4 !important;
	}

	.category-nav--bottom.standby {
		bottom: -85px;
	}
}

.category-nav--top .category-nav__item {
	float: left;
	width: calc(33.33% - 10px);
	margin: 0 5px;
}

.category-nav__item > a {
	position: relative;
	display: block;
	width: 100%;
	opacity: 1;
	background: #fff;
	border-radius: 50%;
	/* filter: brightness(1) contrast(1); */
	/* transition: filter .5s; */
}

.category-nav__item > a:hover {
	display: block;
	width: 100%;
	opacity: 1;
	/* filter: brightness(0.9) contrast(0.9); */
	/* transition: filter .1s; */
}

.category-nav__item > a::after {
	content: "";
	z-index: 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: #6ddfff;
	opacity: 0;
	pointer-events: none;
	transition: opacity .5s;
}

@media screen and (max-width: 767px) {
	.category-nav__item > a::after {
		content: none;
	}
}

.category-nav__item > a:hover::after {
	opacity: .4;
	transition: opacity .1s;
}

.category-nav__item > a > img {
	display: block;
	width: 100%;
	height: auto;
}

@media screen and (max-width: 767px) {
	.category-nav--top .category-nav__item {
		float: left;
		width: calc(33.33% - 10px);
		margin: 0 5px;
	}

	.category-nav--bottom .category-nav__item {
		float: left;
		width: calc(100% / 3);
		margin: 0;
		pointer-events: auto;
	}

	.category-nav__item > a {
		width: 100%;
	}

	.category-nav__item > a > img {
		width: 100%;
		height: auto;
	}
}

/* グループタイトル */

.box-menu--category01 .box-menu__list {
	position: relative;
	padding-top: 200px;
}

.box-menu--category02 .box-menu__list,
.box-menu--category03 .box-menu__list {
	position: relative;
	padding-top: 220px;
}

.box-menu--category01 .box-menu__list:before,
.box-menu--category02 .box-menu__list:before,
.box-menu--category03 .box-menu__list:before {
	content: "";
	position: absolute;
	z-index: 3;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 500px;
	height: 70px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.box-menu--category01 .box-menu__list:before {
	top: 60px;
	background-image: url(../images/parts-group-ttl01.png);
}

.box-menu--category02 .box-menu__list:before {
	top: 75px;
	background-image: url(../images/parts-group-ttl02.png);
}

.box-menu--category03 .box-menu__list:before {
	top: 75px;
	background-image: url(../images/parts-group-ttl03.png);
}

@media screen and (max-width: 767px) {
	.box-menu--category01 .box-menu__list ,
	.box-menu--category02 .box-menu__list,
	.box-menu--category03 .box-menu__list {
		padding-top: 200px;
	}

	.box-menu--category01 .box-menu__list:before,
	.box-menu--category02 .box-menu__list:before,
	.box-menu--category03 .box-menu__list:before {
		width: auto;
		height: 60px;
		margin: 0 -5vw;
	}

	.box-menu--category01 .box-menu__list:before,
	.box-menu--category02 .box-menu__list:before,
	.box-menu--category03 .box-menu__list:before {
		top: 75px;
	}
}

/* 注釈 */

.note {
	max-width: calc(1120px - 120px);
	width: calc(100% - 120px);
    margin: 0 auto;
	padding-bottom: 60px;;
}

.txt-note {
	color: #fff;
}

@media screen and (max-width: 787px){
	.note {
		max-width: none;
		width: auto;
		margin: 0 9vw;
		padding-bottom: 9vw;;
	}
}
