@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/

html {
	font-size: 62.5%;
	box-sizing: border-box;
	overflow-x: hidden;
}

body {
	color: #000000;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.4;
	position: relative;
	overflow-x: hidden;
	transition: all 1.3s ease;
	background: #fff;
	padding: 96px 0 0 0;
}

div {
	box-sizing: border-box;
}

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

svg {
	/* vertical-align: top;
	max-width: 100%;
	height: auto; */
}

a {
	outline: none;
	color: #677b85;
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

a:focus, *:focus {
	outline:none;
}

a:visited {
	color: #212121;
}

a img {
	-webkit-transition: opacity .5s ease-out;
	-moz-transition: opacity .5s ease-out;
	-ms-transition: opacity .5s ease-out;
	transition: opacity .5s ease-out;
}

p a {
	color: #677b85;
	text-decoration: underline;
}

.post, .page {
	margin: 0;
}


.center {
	text-align: center;
}

.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}

.clear {
	clear:both;
	height: 0;
}

small {
	font-weight: 500;
}

ul, ol {
	padding: 0;
	margin: 0;
}

li > ul, li > ol {
	margin-left: 0;
}

ul li {
	list-style: none;
	box-sizing: border-box;
}

dl {
	margin: 0;
}

dt {
	font-weight: 500;
	box-sizing: border-box;
}

dd {
	margin: 0;
	box-sizing: border-box;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

table th,
table td {
	box-sizing: border-box;
}

h1, h2, h3, h4, h5 {
	font-weight: 500;
	margin: 0;
	padding: 0;
}

p {
	margin: 0;
}

/*----------------------------------------------------
 fadeIn
----------------------------------------------------*/

.fadeIn {
	transform: translate3d(0, -10px, 0);
	transition: 1s;
	opacity: 0;
}

.fadeIn.animated {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}

.fadein {
	opacity : 0;
	transition : all 1s;
}

.fadein.active{
	opacity : 1;
}

/*----------------------------------------------------
 inner
----------------------------------------------------*/
.inner {
	width: calc(100% - 3.6rem);
	max-width: 1200px;
	margin: 0 auto;
}
.inner_s {
	width: calc(100% - 7.2rem);
	max-width: 930px;
	margin: 0 auto;
}

/*----------------------------------------------------
 header
----------------------------------------------------*/

#header {
	padding: 32px 0 16px 0;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 100;
	background: #fff;
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

#header:before {
	content: '';
	width: 100%;
	height: 5px;
	position: absolute;
	top: 1px;
	left: 0;
	background: #000000;
}

#header .inner {
	max-width: initial;
}

#header .headerFlex {
	display: flex;
	justify-content: space-between;
}

#header .headerFlex .logo {
	width: 15%;
	max-width: 155px;
	padding: 0;
	margin: 0 0 0 13px;
}

#header .headerFlex .navConts {
	width: 80%;
	display: flex;
	justify-content: right;
}

#header .headerFlex .navConts nav > ul {
	display: flex;
	justify-content: right;
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
}

#header .headerFlex .navConts nav > ul > li {
	margin: 0 34px 0 0;
}

#header .headerFlex .navConts nav > ul > li > a {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	padding: 0 0 5px;
}

#header .headerFlex .navConts nav > ul > li > a:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background-color: #000000;
	bottom: -10px;
	left: 0;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: center top;
	transform-origin: center top;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

#header .headerFlex .navConts nav > ul > li > a > b {
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.08em;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 3px 0;
	color: #000;
	white-space: nowrap;
}

#header .headerFlex .navConts nav > ul > li > a > small {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: #757575;
	white-space: nowrap;
}

#header .headerFlex .searchBox {
	box-sizing: border-box;
	position: relative;
	display: block;
	padding: 0 10px;
	height: 40px;
	width: 200px;
	border-radius: 4px;
	background: #F1F0EF;
	overflow: hidden;
}

#header .headerFlex .searchBox input[type="text"] {
	border: none;
	height: 38px;
	background: none;
	padding: 0 5px;
	font-size: 10px;
	font-weight: 500;
	color: #C1C1C1;
	font-family: 'Noto Sans JP', sans-serif;
}

#header .headerFlex .searchBox input[type="text"]::placeholder {
 color: #C1C1C1;
}

#header .headerFlex .searchBox input[type="text"]:focus {
	outline: 0;
}

#header .headerFlex .searchBox [type="submit"] {
	cursor: pointer;
	position: absolute;
	right: 15px;
	top: 9px;
	border: none;
	background: none;
	padding: 0;
}

#header .headerFlex .navConts nav ul > li {
	white-space: nowrap;
	position: relative;
	z-index: 1;
	font-family: 'Poppins', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.gNav_cList {
	list-style: none;
	position: absolute;
	z-index: 1;
	top: 100%;
	background-color: #fff;
	padding: 30px 23px 12px;
	border-radius: 4px;
	box-shadow: 0 14px 40px rgba(83, 83, 83, 0.24);
	left: 50%;
	-webkit-transform: scale(1, 0) translateX(-50%);
	transform: scale(1, 0) translateX(-50%);
	-webkit-transform-origin: center top;
	transform-origin: center top;
	opacity: 0;
	transition-property: opacity, transform, -webkit-transform;
	transition-duration: .5s, 0s, 0s;
	transition-delay: 0s, .5s, .5s;
	pointer-events: none;
}

a:hover + .gNav_cList {
	-webkit-transform: scale(1) translateX(-50%) translateY(1px) !important;
	transform: scale(1) translateX(-50%) translateY(1px) !important;
	opacity: 1;
	transition-delay: 0s, 0s, 0s;
	pointer-events: auto;
}

#header .headerFlex .navConts nav > ul > li > a:after::hover  + .gNav_cList {
	-webkit-transform: scale(1) translateX(-50%) translateY(1px) !important;
	transform: scale(1) translateX(-50%) translateY(1px) !important;
	opacity: 1;
	transition-delay: 0s, 0s, 0s;
	pointer-events: auto;
}

.gNav_cList:hover {
	-webkit-transform: scale(1) translateX(-50%) translateY(1px) !important;
	transform: scale(1) translateX(-50%) translateY(1px) !important;
	opacity: 1;
	transition-delay: 0s, 0s, 0s;
	pointer-events: auto;
}

.gNavIcon li {
	margin: 0 0 18px;
}

.gNavIcon li a {
	display: flex;
	align-items: center;
	transition: all 0.3s ease;
}

.gNavIcon li a:hover .text {
	color: #677b85;
}

.gNavIcon li .icon {
	width: 32px;
	margin: 0 13px 0 0;
}

.gNavIcon li .text {
	color: #222222;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.02em;
	font-family: 'Poppins', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	transition: all 0.3s ease;
}

.gNavText li {
	margin: 0 0 18px;
}

.gNavText li a {
	display: flex;
	align-items: center;
	color: #222222;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.02em;
	font-family: 'Poppins', sans-serif;
	transition: all 0.3s ease;
}

.gNavText li a:hover {
	color: #677b85;
}

/*----------------------------------------------------
 worning
----------------------------------------------------*/

#worning {
	background: #fff;
	padding: 19px 0;
	position: fixed;
	width: 100%;
	bottom: 105px;
	/* bottom: 0; */
	left: 0;
	z-index: 100;
	box-shadow: 0 3px 6px rgba(0,0,0,0.16);
}

#worning .inner {
	max-width: initial;
}

#worning .worningFlex {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}

#worning .worningFlex .head {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin: 0 0 0;
	position: relative;
}

#worning .worningFlex .conts {}

#worning .worningFlex .conts p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
}

#worning .worningFlex .conts p a {
	color: #C0A79C;
	text-decoration: underline;
}

#worning .worningFlex .closeButton {
	position: absolute;
	right: -16px;
	top: 7px;
	width: 28px;
	transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
	#worning {
		bottom: 60px;
		/* bottom: 0; */
	}
}

/*---------------------------------
cta
---------------------------------*/
#cta {
	padding: 4vw 0;
	background: url(../img/common/pc_cta_bg.png) no-repeat center center/cover;
	display: flex;
	align-items: center;
	justify-content: center;
}
#cta h2 {
	font-size: 2.4vw;
	letter-spacing: 0.4vw;
	padding-bottom: 3vw;
	color: #fff;
}
#cta .ttl {
	padding-bottom: 1vw;
}
#cta .ttl_sub {
	font-size: 1vw;
	letter-spacing: 1px;
}
#cta .cta_txt {
	width: 30%;
}
#cta .cta_attention {
	display: flex;
	align-items: center;
}
#cta .cta_txt img {
	width: 1.15vw;
	margin-right: 0.5vw;
}
#cta .cta_img {
	width: 40%;
}
#cta .cta_btn {
	padding-bottom: 2vw;
}
#cta .cta_btn a {
	display: block;
	width: 30vw;
	padding: 1vw;
	/* margin: 0 auto; */
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 1.6vw;
	color: #fff;
	border: 2px solid #fff;
	text-align: center;
	transition:all .5s ease;
	position: relative;
	overflow: hidden;
	background: #000;
}
#cta .cta_btn a:before {
	position: absolute;
	content: "";
	background: #fff;
	width: 150%;
	height: 100%;
	display: block;
	top: 0;
	left: -148%;
	transition:all 1.5s ease;
}
#cta .cta_btn a:hover:before {
	left: 98%;
}
#cta .cta_btn a .txt {
	position: relative;
	z-index: 2;
	animation: txt_color2_back .9s ease;
	transition:all 1.5s ease;
}
#cta .cta_btn a:hover .txt {
	animation: txt_color2 .9s ease;
}
#cta .cta_btn a {
	display: block;
	width: 24vw;
	padding: 1vw;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 1.2vw;
	color: #fff;
	border: 2px solid #fff;
	text-align: center;
	text-decoration: none;
	position: relative;
}
#cta .cta_btn a .arrow {
	position: absolute;
	top: 50%;
	right: 2vw;
	transform: translateY(-50%);
}
#cta .cta_btn a .arrow:before,
#cta .cta_btn a .arrow:after {
	content: "";
	z-index: 999999;
	animation: arrow_color2_back .9s ease;
	transition:all 1.5s ease;
}
#cta .cta_btn a .arrow:before {
	display: block;
	width: 2vw;
	height: 2px;
	background-color: #fff;
	position: absolute;
	top: 0.35vw;
	right: 0;
}
#cta .cta_btn a .arrow:after {
	display: block;
	width: 1vw;
	height: 2px;
	background-color: #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: -0.1vw;
}
#cta .cta_btn a:hover .arrow:before,
#cta .cta_btn a:hover .arrow:after {
	animation: arrow_color2 .9s ease;
}
@keyframes arrow_color2 {
	0% {
		background-color: #fff;
	}
	90% {
		background-color: #000;
	}
	99% {
		background-color: #000;
	}
	100% {
		background-color: #fff;
	}
}
@keyframes arrow_color2_back {
	0% {
		background-color: #fff;
	}
	30% {
		background-color: #000;
	}
	60% {
		background-color: #000;
	}
	100% {
		background-color: #fff;
	}
}
@keyframes txt_color2 {
	0% {
		color: #fff;
	}
	10% {
		color: #000;
	}
	90% {
		color: #000;
	}
	100% {
		color: #fff;
	}
}
@keyframes txt_color2_back {
	0% {
		color: #fff;
	}
	10% {
		color: #000;
	}
	90% {
		color: #000;
	}
	100% {
		color: #fff;
	}
}
#cta .cta_attention {
	color: #fff;
}

/*---------------------------------
movie
---------------------------------*/
#sec_movie {
    padding: 15vw 0;
}
#sec_movie h2 {
    text-align: center;
    padding-bottom: 4vw;
}
#sec_movie h2 .ttl {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 3vw;
    letter-spacing: 0.2vw;
}
#sec_movie h2 .ttl_sub {
    font-size: 1.2vw;
    color: #bababa;
    font-weight: 600;
}
#sec_movie .movieBox {
    position: relative;
}
#sec_movie .movieBox .left_Obj {
    position: absolute;
}
#sec_movie .movieBox .right_Obj {
    position: absolute;
}
#sec_movie .yt-wrapper {
    position: relative;
    width: 100%;
    max-width: 930px;
    margin: 0 auto;
}
#sec_movie .yt-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#sec_movie .yt-wrapper .left_Obj {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -4vw;
    width: 3vw;
}
#sec_movie .yt-wrapper .right_Obj {
    position: absolute;
    bottom: -8vw;
    right: -18vw;
    z-index: -1;
    width: 20vw;
}
#sec_movie .right_text {
    position: absolute;
    width: 180px;
    right: -90px;
    top: -90px;
    z-index: 0;
}
#sec_movie .circleText {
    overflow: visible;
    animation: rotation 18s linear infinite;
}
@keyframes rotation {
    0% {
    transform: rotate(0deg);
    }
    100% {
    transform: rotate(360deg);
    }
}
@media screen and (max-width: 768px) {
    #sec_movie {
        padding: 0 0 25vw;
    }
    #sec_movie h2 {
        padding-bottom: 8vw;
    }
    #sec_movie h2 .ttl {
        font-size: 8vw;
        letter-spacing: 0.2vw;
    }
    #sec_movie h2 .ttl_sub {
        font-size: 3.6vw;
    }
    #sec_movie .yt-wrapper {
        width: 80%;
        height: auto;
        margin: 0 auto;
    }
    #sec_movie .yt-wrapper .left_Obj {
        top: 50%;
        transform: translateY(-50%);
        left: -8vw;
        width: 6vw;
    }
    #sec_movie .yt-wrapper .right_Obj {
        bottom: -16vw;
        right: -18vw;
        width: 35vw;
    }
    #sec_movie .right_text {
        width: 25%;
        right: -10%;
        top: -10%;
        z-index: -1;
    }
}

#sec_movie {
	background: url(../img/common/movie_bg.png) no-repeat bottom center/cover;
}
.movie_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 60px;
	flex-direction: column;
	position: relative;
	z-index: 2;
}
.movieBox:before,
.movieBox:after {
	position: absolute;
	content: "";
}
.movieBox:before {
	background: url(../img/common/movie_deco2.png) no-repeat;
/* 	width: 1070px; */
/* 	height: 1173px; */
	width: 57.39%;
	height: 166.52%;
	left: 0;
	top: 20%;
	background-size: contain;
}
.movieBox:after {
	background: url(../img/common/movie_deco3.png) no-repeat;
/* 	width: 505px; */
/* 	height: 241px; */
	width: 34.1%;
	height: 53.84%;
	right: 0;
	top: 10%;
	background-size: contain;
}
.movie_wrap a {
	transition: all .3s;
}
.movie_wrap a:hover {
	opacity: .7;
}
@media screen and (max-width: 768px) {
	.movie_wrap {
		gap: 15px;
	}
	.movieBox:before {
		width: 210px;
		height: 230px;
		background-size: cover;
		top: 40%;
	}
	.movieBox:after {
		width: 160px;
		height: 77px;
		top: 20%;
		background-size: cover;
	}
}


/*----------------------------------------------------
 shop_search
----------------------------------------------------*/
#shop_search {
	background: url(../img/common/floating_bg.png) no-repeat center center/cover;
	padding: 15px;
	position: fixed;
	width: 100%;
	bottom: 0;
	z-index: 90;
}
#shop_search .searchFlex {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5vw;
	color: #fff;
	/* font-size: 1.1vw; */
	font-size: 16px;
	letter-spacing: 2px;
	height: 75px;
}
/* #shop_search .head,
#shop_search .search_btn {
	width: 50%;
} */
#shop_search .head {
	text-align: center;
}
#shop_search .search_btn a {
    display: block;
    width: 30vw;
	max-width: 560px;
/* 	max-height: 72px; */
    padding: 1vh 1vw;
    /* margin: 0 auto; */
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    /* font-size: 1.2vw; */
	font-size: 20px;
    color: #fff;
    border: 2px solid #fff;
    text-align: center;
    transition:all .5s ease;
    position: relative;
    overflow: hidden;
    background: #000;
    position: relative;
}
#shop_search .search_btn a:before {
    position: absolute;
    content: "";
    background: #fff;
    width: 150%;
    height: 100%;
    display: block;
    top: 0;
    left: -148%;
    transition:all 1.5s ease;
}
#shop_search .search_btn a:hover:before {
    left: 98%;
}
#shop_search .search_btn a .txt {
    position: relative;
    z-index: 2;
    animation: txt_color2_back .9s ease;
    transition:all 1.5s ease;
}
#shop_search .search_btn a:hover .txt {
    animation: txt_color2 .9s ease;
}
#shop_search .search_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 2vw;
    transform: translateY(-50%);
    transition:all 1.5s ease;
}
#shop_search .search_btn a .arrow:before,
#shop_search .search_btn a .arrow:after {
    content: "";
    z-index: 999999;
    animation: arrow_color2_back .9s ease;
    transition:all 1.5s ease;
}
#shop_search .search_btn a .arrow:before {
    display: block;
    width: 2vw;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 0.35vw;
    right: 0;
}
#shop_search .search_btn a .arrow:after {
    display: block;
    width: 1vw;
    height: 2px;
    background-color: #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: -0.1vw;
}
#shop_search .search_btn a:hover .arrow:before,
#shop_search .search_btn a:hover .arrow:after {
    animation: arrow_color2 .9s ease;
}
@media screen and (max-width: 767px) {
	#shop_search .inner {
		padding: 0;
	}
	#shop_search .searchFlex {
		height: 30px;
		gap: 3vw;
		font-size: 2.5vw;
	}
	#shop_search .head {
		width: 40%;
		text-align: left;
	}
	#shop_search .search_btn {
		width: 60%;
	}
	#shop_search .search_btn a {
		width: 100%;
		font-size: 2.5vw;
	}
}

/*----------------------------------------------------
 sideNav
----------------------------------------------------*/

#sideNav {
	width: 50px;
	position: fixed;
	right: 0;
	top: 142px;
	z-index: 100;
	box-shadow: rgba(0, 0, 0, 0.04) 0px 3px 5px;
}

#sideNav .Topbutton {
	width: 100%;
	height: 50px;
}

#sideNav .Topbutton a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	overflow: hidden;
	position: relative;
	background: rgb(4,13,39);
	background: -moz-linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	background: linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#040d27",endColorstr="#3d4758",GradientType=1);
}

#sideNav .Topbutton a img {
	position: relative;
	z-index: 1;
}

#sideNav .Topbutton a:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 50px solid #76536e;
	transform: translateX(-100%);
	transition: 0.5s ease-in-out;
}

#sideNav .navList {
	background: #fff;
	width: 100%;
	padding: 0 0 34px 0;
}

#sideNav .navList .navBox {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 34px 0 0 0;
}

#sideNav .navList .navBox .head {
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	font-size: 13px;
	font-style: italic;
	font-family: 'Playfair Display', serif;
	position: relative;
	margin: 0 0 53px 0;
}

#sideNav .navList .navBox .head:before {
	content: '';
	width: 1px;
	height: 25px;
	background: #000;
	position: absolute;
	bottom: -43px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

#sideNav .navList .navBox .iconList {
	text-align: center;
}

#sideNav .navList .navBox .iconList .fb-con {
	padding: 10px 0;
}

#sideNav .navList .navBox .iconList .tw-con {
	padding: 10px 0 0;
}

/*----------------------------------------------------
 footer
----------------------------------------------------*/

#footer {
	position: relative;
}

#footer .bread {
	height: 44px;
	position: relative;
	background: #fff;
}

#footer .bread .footerTopButton {
	position: absolute;
	right: 0;
	top: 0;
}

#footer .bread .footerTopButton a {
	position: relative;
	overflow: hidden;
	background: #000000;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 44px;
	width: 44px;
}

#footer .bread .footerTopButton a img {
	position: relative;
	z-index: 1;
}

#footer .bread .footerTopButton a:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 50px solid #76536e;
	transform: translateX(-100%);
	transition: 0.5s ease-in-out;
}

#footer .bread .breadcrumbs {
	line-height: 44px;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
	position: relative;
	padding: 0 0 0 7px;
}

#footer .bread .breadcrumbs:before {
	content: '';
	width: 18px;
	height: 15px;
	background: url('../img/common/home-con.svg') no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	top: 13px;
}

#footer .bread .breadcrumbs a {
	color: #000000;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
}

#footer .bread .breadcrumbs span {
	color: #000000;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
	padding: 0 10px;
	font-family: 'Poppins', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

#footer .bread .breadcrumbs span.arrow {
	background: url('../img/common/bread-arrow.svg') no-repeat;
	width: 6px;
	background-size: 7px auto;
	background-position: center center;
}

#footer .footerNav {
	background: #F5F5F5;
	padding: 80px 0 58px 0;
}

#footer .footerNav .siteLogo {
	width: 100%;
	max-width: 200px;
	margin: 0 auto 32px;
}

#footer .footerNav .connectionLogo {
	margin: 0 0 73px;
}

#footer .footerNav .connectionLogo ul {
	display: flex;
	justify-content: center;
	align-items: center;
}

#footer .footerNav .connectionLogo ul li {
	margin: 0 48px;
}

#footer .footerNav .connectionLogo ul li:nth-child(1) {
	max-width: 180px;
	width: 100%;
}

#footer .footerNav .connectionLogo ul li:nth-child(2) {
	max-width: 200px;
	width: 100%;
}

#footer .footerNav .connectionLogo ul li:nth-child(3) {
	max-width: 183px;
	width: 100%;
}

#footer .Navflex {
	display: flex;
	justify-content: space-between;
}

#footer .Navflex .siteInfo {
	width: 291px;
	padding: 0 0 0 30px;
	position: relative;
}

#footer .Navflex .siteInfo .logo {
	width: 155px;
	margin: 0 0 27px;
}

#footer .Navflex .siteInfo .followConts {
	margin: 0 0 30px;
	padding: 0 0 0 6px;
}

#footer .Navflex .siteInfo .followConts .contsHead {
	margin: 0 0 11px;
}

#footer .Navflex .siteInfo .followConts .contsHead p {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.12em;
	font-family: 'Poppins', sans-serif;
}

#footer .Navflex .siteInfo .followConts .followList {
	display: flex;
	justify-content: left;
	align-items: center;
	padding: 0 0 0 2px;
}

#footer .Navflex .siteInfo .followConts .followList .insta {
	width: 24.8px;
	margin-right: 12px;
}

#footer .Navflex .siteInfo .followConts .followList .tw {
	width: 18px;
	margin-right: 12px;
}

#footer .Navflex .siteInfo .followConts .followList .line {
	width: 22.36px;
	margin-right: 12px;
}

#footer .Navflex .siteInfo .followConts .followList .youtube {
	width: 22.36px;
	margin-right: 12px;
}

#footer .Navflex .siteInfo .followConts .followList .tiktok {
	width: 22.36px;
	margin-right: 12px;
}

#footer .Navflex .siteNav {
	width: calc(100% - 338px);
	display: flex;
	padding: 4px 0 0;
}

#footer .Navflex .siteNav .siteMenu {
	width: 32.7%;
}

#footer .Navflex .siteNav .siteMenu .menuHead {
	margin: 0 0 16px;
}

#footer .Navflex .siteNav .siteMenu .menuHead p {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.08em;
	font-family: 'Poppins', sans-serif;
}

#footer .Navflex .siteNav .siteMenu ul li {
	margin: 0 0 15px;
}

#footer .Navflex .siteNav ul li {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.06em;
}

#footer .Navflex .siteNav ul li a {
	color: #222;
}

#footer .footerBottom {
	padding: 0 0 87px;
	background: #F5F5F5;
}

#footer .bottomsFlex {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	align-items: flex-end;
	padding: 0 30px;
}

#footer .copy {}

#footer .copy p {
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.08em;
	font-family: 'Poppins', sans-serif;
	padding: 0 0;
}

#footer .searchBox {
	width: 100%;
	max-width: 317px;
}

#footer .searchBox a {
	padding: 17px 0 19px 21px;
	display: flex;
	align-items: center;
	border-radius: 4px;
	box-shadow: 0 3px 6px rgba(0,0,0,0.16);
	background: rgb(4,13,39);
	background: -moz-linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	background: linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#040d27",endColorstr="#3d4758",GradientType=1);
}

#footer .searchBox a .icon {
	width: 100%;
	max-width: 48px;
	margin: 0 17px 0 0;
}

#footer .searchBox a .text {
	display: flex;
	flex-direction: column;
	width: calc(100% - 65px);
}

#footer .searchBox a .text .en {
	font-size: 22px;
	font-weight: 300;
	letter-spacing: 0.16em;
	font-family: 'Poppins', sans-serif;
	color: #fff;
	margin: 0 0 3px;
}

#footer .searchBox a .text .ja {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #fff;
	padding: 0 0 0 3px;
}

/*----------------------------------------------------
 contactBanner
----------------------------------------------------*/

#contactBanner {
	height: 280px;
	position: relative;
	background: rgb(16,19,23);
	background: -moz-linear-gradient(270deg, rgba(16,19,23,1) 0%, rgba(16,19,23,1) 50%, rgba(28,30,34,1) 100%);
	background: -webkit-linear-gradient(270deg, rgba(16,19,23,1) 0%, rgba(16,19,23,1) 50%, rgba(28,30,34,1) 100%);
	background: linear-gradient(270deg, rgba(16,19,23,1) 0%, rgba(16,19,23,1) 50%, rgba(28,30,34,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#101317",endColorstr="#1c1e22",GradientType=1);
}

#contactBanner .bg {
	width: 100%;
	max-width: 764px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}

#contactBanner .conts {
	position: relative;
	display: flex;
	justify-content: center;
	flex-direction: column;
	z-index: 1;
	padding: 61px 0 0 406px;
}

#contactBanner .conts .head {
	margin: 0 0 47px;
}

#contactBanner .conts .head p b {
	font-size: 30px;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.2em;
	display: block;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 3px;
}

#contactBanner .conts .head p small {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: #fff;
	padding: 0 0 0 2px;
}

#contactBanner .bannerFlex {
	display: flex;
}

#contactBanner .bannerFlex .content {
	margin-right: 31px;
}

#contactBanner .bannerFlex .content p {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.625;
	letter-spacing: 0.18em;
	color: #fff;
}

#contactBanner .bannerFlex .button {
	margin: 0;
	max-width: 340px;
}

#contactBanner .bannerFlex .button a .text {
	font-size: 13px;
	font-weight: 700;
}

/*----------------------------------------------------
 Button
----------------------------------------------------*/

.button {
	width: 100%;
	height: 60px;
	max-width: 360px;
	margin: 0 auto 0;
}

.button a {
	position: relative;
	height: 100%;
	background: #4B4A45;
	border: 1px solid #4B4A45;
	border-radius: 12px 0 12px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.button a .arrow {
	line-height: 1;
	position: absolute;
	top: 56%;
	right: 12px;
	width: 21px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.button a .text {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.12em;
	color: #fff;
	font-family: 'Poppins', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.button.white a {
	background: #fff;
}

.button.white a .text {
	color: #4B4A45;
}

/*----------------------------------------------------
 pablication
----------------------------------------------------*/

#pablication {
	padding: 105px 0 123px;
	background: #FFF2DF;
}

#pablication .head {
	position: relative;
	margin: 0 0 60px;
	padding: 0 0 0 20px;
}

#pablication .head h2 {
	position: relative;
}

#pablication .head h2 b {
	font-size: 40px;
	font-weight: 500;
	color: #816740;
	letter-spacing: 0.18em;
	display: block;
	font-family: 'Poppins', sans-serif;
}

#pablication .head h2 b:nth-child(2) {
	margin: 7px 0 0 236px;
}

#pablication .head h2 small {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #424141;
	position: absolute;
	bottom: 9px;
	left: 5px;
}

#pablication .pabTop {
	margin: 0 0 18px;
}

#pablication .Slider .slick-list {
	overflow: visible;
}

#pablication .Slider li .box {
	background: rgba(255, 255, 255, 0.8);
	border-radius: 4px;
	height: 280px;
	margin: 0 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#pablication .Slider li .box img {
	max-width: 72%;
}

#pablication .Slider li .box.mini img {
	max-width: 54%;
}

#pablication .pabLists ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

#pablication .pabLists ul li {
	width: 20%;
	padding: 30px;
}

#pablication .pabLists ul li .mini {
	max-width: 70%;
	margin: auto;
}

/*----------------------------------------------------
 pageVisual
----------------------------------------------------*/

#pageVisual {
	min-height: 530px;
	padding: 0 0 0;
	background: rgb(255,255,255);
	background: -moz-linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	background: -webkit-linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	background: linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f5f7fa",GradientType=1);
}

#pageVisual .inner {
	max-width: 1200px;
}

#pageVisual .visualFlex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
}

#pageVisual .visualFlex .image {
	width: 40%;
	text-align: right;
}

#pageVisual .visualFlex .visual-head {
	width: 60%;
}

#pageVisual .visualFlex .visual-head .enDesc {
	font-size: 22px;
	font-weight: 400;
	color: #424141;
	letter-spacing: 0.1em;
	margin: 0 0 11px;
	font-family: 'Poppins', sans-serif;
}

#pageVisual .visualFlex .visual-head h1 {
	margin: 0 0 12px;
}

#pageVisual .visualFlex .visual-head h1 b {
	font-size: 42px;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.1em;
	font-family: 'Poppins', sans-serif;
}

#pageVisual .visualFlex .visual-head h1 small {
	font-size: 20px;
	font-weight: 700;
	color: #424141;
	letter-spacing: 0.1em;
}

#pageVisual .visualFlex .visual-head .jaDesc {
	font-size: 18px;
	font-weight: 500;
	color: #424141;
	letter-spacing: 0.1em;
}

#pageVisual .visualPlus {
	background: rgba(255, 255, 255, 0.7);
	padding: 30px 38px;
	font-size: 13px;
	letter-spacing: 0.05em;
	line-height: 1.8;
	font-weight: 700;
	-webkit-transform: translateY(-20px);
	transform: translateY(-20px);
	border-radius: 4px;
	box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px;
}

#pageVisual .visualPlus p {
	margin: 0 0 20px;
}

#pageVisual .visualPlus p span {
	color: #ad4d66;
}

#pageVisual .visualPlus p:last-child {
	margin: 0 0 0;
}

/*----------------------------------------------------
 term-detail
----------------------------------------------------*/

#term-detail {
	position: relative;
	background: #FBFBFB;
	padding: 93px 0 189px;
}

#term-detail .head {
	position: relative;
	margin: 0 0 101px;
	text-align: center;
}

#term-detail .head h2 b {
	font-size: 32px;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.18em;
	display: block;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 3px;
}

#term-detail .head h2 small {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #424141;
}

#term-detail .detailList {
	display: flex;
	flex-wrap: wrap;
	background: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.04);
	position: relative;
	z-index: 1;
}

#term-detail .detailList .detailBox {
	width: calc(100% / 3);
	padding: 37px 4.5% 68px;
	border-right: 1px solid #E6E6E6;
	border-bottom: 1px solid #E6E6E6;
}

#term-detail .detailList .detailBox .image {
	text-align: center;
	margin: 0 auto 20px;
}

#term-detail .detailList .detailBox .image img {
	zoom: 0.5;
}

#term-detail .detailList .detailBox .enName {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.02em;
	display: block;
	font-family: 'Poppins', sans-serif;
	text-align: center;
	margin: 0 0 10px;
	background: -moz-linear-gradient(180deg, rgba(255,153,51,1) 0%, rgba(255,113,102,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(255,153,51,1) 0%, rgba(255,113,102,1) 100%);
	background: linear-gradient(180deg, rgba(255,153,51,1) 0%, rgba(255,113,102,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff9933",endColorstr="#ff7166",GradientType=1);
	-webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

#term-detail .detailList .detailBox h3 {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-align: center;
	margin: 0 0 22px;
}

#term-detail .detailList .detailBox p {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.02em;
	margin: 0 0 0;
	color: #505050;
}

#term-detail .detailList .detailBox p.mini {
	font-size: 11px;
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.02em;
	margin: 0 0 0;
	color: #747474;
}

#term-detail .addText {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #37414F;
	margin: 14px;
	position: relative;
	z-index: 2;
}

/*----------------------------------------------------
 ingredients
----------------------------------------------------*/

#ingredients {
	position: relative;
}

#ingredients .imageHead {
	width: 100%;
	height: 380px;
}

#ingredients .imageHead img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}

#ingredients .ingredBox {
	position: relative;
	margin: -156px 0 0 0;
	padding: 113px 14.8% 10px;
	border-radius: 4px;
	background: rgba(247, 237, 234, 0.9);
	z-index: 1;
}

#ingredients .ingredBox .head {
	position: relative;
	margin: 0 0 101px;
	text-align: center;
}

#ingredients .ingredBox .head h2 b {
	font-size: 32px;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.18em;
	display: block;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 3px;
}

#ingredients .ingredBox .head h2 small {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #424141;
}

#ingredients .ingredList {
	margin: 0 0 125px;
}

#ingredients .ingredListBox {
	display: flex;
	margin: 0 0 55px;
}

#ingredients .ingredListBox .no {
	font-size: 34px;
	font-weight: 400;
	font-style: italic;
	color: #BB5D7C;
	letter-spacing: 0.1em;
	font-family: 'Poppins', sans-serif;
	width: 59px;
	margin: 0 18px 0 0;
}

#ingredients .ingredListBox .conts {
	width: calc(100% - 77px);
	padding: 9px 0 0 0;
}

#ingredients .ingredListBox .conts h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.1em;
	color: #424141;
}

#ingredients .ingredListBox .conts p {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.02em;
	color: #222222;
}

#ingredients .componentBox dl {
	margin: 0 0 100px;
}

#ingredients .componentBox dl dt {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #fff;
	background: #37414F;
	text-align: center;
	position: relative;

	padding: 12px 0;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.3s ease;
}

#ingredients .componentBox dl dt .icon {
	position: absolute;
	top: 51%;
	right: 15px;
	transform: translateY(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) rotate(45deg);
	-ms-transform: translateY(-50%) rotate(45deg);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

#ingredients .componentBox dl dt.active .icon {
	transform: translateY(-50%) rotate(0deg);
	-webkit-transform: translateY(-50%) rotate(0deg);
	-ms-transform: translateY(-50%) rotate(0deg);
}

#ingredients .componentBox dl dd {
	display:none;
	padding: 33px 4% 0;
}

#ingredients .componentBox dl dd p {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.85;
	letter-spacing: 0.02em;
}

/*----------------------------------------------------
 termResults
----------------------------------------------------*/

#termResults {
	padding: 80px 0 0 0;
	position: relative;
}

#termResults .resultsBox {
	display: flex;
}

#termResults .resultsBox .image {
	width: 54.9%;
}

#termResults .resultsBox .image img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#termResults .resultsBox .conts {
	width: 45.1%;
	background: #37414F;
	padding: 23px 3.2%;
}

#termResults .resultsBox .conts h2 {
	display: flex;
	flex-direction: column;
	margin:  0 0 20px;
}

#termResults .resultsBox .conts h2 b {
	font-size: 28px;
	font-weight: 400;
	color: #D7B677;
	letter-spacing: 0.08em;
	font-family: 'Poppins', sans-serif;
}

#termResults .resultsBox .conts h2 small {
	font-size: 16px;
	font-weight: 700;
	color: #D7B677;
	letter-spacing: 0.1em;
}

#termResults .resultsBox .conts ol {
	padding: 0 0 0 19px;
}

#termResults .resultsBox .conts ol li {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.75;
	color: #fff;
	letter-spacing: 0.2em;
	margin:  0 0 17px;
}

#termResults .resultsBox .conts ol li:last-child {
	margin: 0;
}

/*----------------------------------------------------
 howto
----------------------------------------------------*/

#howto {
	margin: 120px 0 0;
	padding: 113px 5% 53px;
	background: #FBF9F8;
}

#howto .head {
	position: relative;
	margin: 0 0 86px;
	text-align: center;
}

#howto .head h2 b {
	font-size: 40px;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.18em;
	display: block;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 3px;
}

#howto .head h2 small {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #424141;
}

#howto .howtoBox {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin: 0 0 73px;
	padding: 0 5%;
}

#howto .howtoBox .no {
	font-size: 47px;
	letter-spacing: 0.12em;
	color: #D7B677;
	font-family: 'Nothing You Could Do', cursive;
	position: absolute;
	left: 10px;
	top: -28px;
	-webkit-transform: rotate(-18deg);
	transform: rotate(-18deg);
}

#howto .howtoBox .image {
	width: 40%;
}

#howto .howtoBox .conts {
	width: 53%;
	padding: 50px 0 0 0;
}

#howto .howtoBox .conts h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	margin: 0 0 20px;
	position: relative;
}

#howto .howtoBox .conts h3:before {
	content: '';
	width: 6px;
	height: 100%;
	border-radius: 12px;
	background: #D7B677;
	position: absolute;
	top: 50%;
	left: -30px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#howto .howtoBox .conts p {
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.04em;
}

#howto .howtoadd {
	max-width: 1000px;
	margin: 0 auto 50px;
	background: #fffffb;
	border-radius: 8px;
	padding: 32px 42px;
}

#howto .howtoadd .boxHead {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #b7b21c;
	position: relative;
	margin: 0 0 20px;
}

#howto .howtoadd .boxHead:before {
	content: '';
	width: 40px;
	height: 1px;
	background: #707070;
	position: absolute;
	left: -61px;
	top: 12px;
}

#howto .howtoadd ul li {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2;
	color: #63636D;
	margin: 0 0 20px;
	padding: 0 0 0 21px;
	position: relative;
}

#howto .howtoadd ul li:last-child {
	margin: 0;
}

#howto .howtoadd ul li:before {
	content: '';
	width: 10px;
	height: 10px;
	background: #a9a41b;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 12px;
}

#howto .worningBox {
	max-width: 1000px;
	margin: 0 auto 50px;
	background: #ffffff;
	border-radius: 8px;
	padding: 32px 42px;
}

#howto .worningBox .boxHead {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #63636d;
	position: relative;
	margin: 0 0 20px;
}

#howto .worningBox .boxHead:before {
	content: '';
	width: 40px;
	height: 1px;
	background: #707070;
	position: absolute;
	left: -61px;
	top: 12px;
}

#howto .worningBox ul li {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2;
	color: #63636D;
	margin: 0 0 20px;
	padding: 0 0 0 21px;
	position: relative;
}

#howto .worningBox ul li:last-child {
	margin: 0;
}

#howto .worningBox ul li:before {
	content: '';
	width: 10px;
	height: 10px;
	background: #795548;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 11px;
}

/*----------------------------------------------------
 products
----------------------------------------------------*/

#products {
	padding: 80px 0 30px;
	position: relative;
}

#products .head {
	position: relative;
	margin: 0 0 101px;
	text-align: center;
}

#products .head h2 b {
	font-size: 30px;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.2em;
	display: block;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 -2px;
}

#products .head h2 small {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: #A1A1A1;
}

#products .productsList {
	position: relative;
}

#products .productsList ul {
	display: flex;
	flex-wrap: wrap;
}

#products .productsList ul li {
	width: 25%;
	margin:  0 0 135px;
	padding: 0 1%;
}

#products .productsList ul li .image {
	position: relative;
	margin: 0 0 30px;
	max-height: 403px;
}

#products .productsList ul li .image span:first-child {
	position: relative;
	z-index: 1;
	background: #fff;
	display: block;
	transition: all 0.3s ease;
}

#products .productsList ul li .image span:last-child {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #fff;
	display: block;
}

#products .productsList ul li .image span:last-child img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#products .productsList ul li .itemName {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.1em;
	display: block;
	font-family: 'Poppins', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	text-align: center;
	color: #222222;
	transition: all 0.3s ease;
	margin: 0 0 3px;
	text-align: center;
}

#products .productsList ul li .itemDesc {
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.1em;
	display: block;
	font-family: 'Poppins', sans-serif;
	text-align: center;
	color: #222222;
	transition: all 0.3s ease;
	text-align: center;
}

#products .otherText {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-align: center;
	margin: 0 0 120px;
	color: #7d8ba1;
}

#products .button {
	margin: 0 auto 180px;
}

/*----------------------------------------------------
 pageHeader
----------------------------------------------------*/

#pageHeader {
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 411px;
	padding: 0 0 0;
	background: rgb(255,255,255);
	background: -moz-linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	background: -webkit-linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	background: linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f5f7fa",GradientType=1);
}

#pageHeader .inner {
	max-width: 1200px;
}

#pageHeader .visualFlex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
}

#pageHeader .visualFlex .image {
	width: 40%;
	text-align: right;
	-webkit-transform: translateX(50px);
	transform: translateX(50px);
}

#pageHeader .visualFlex .visual-head {
	width: 60%;
	padding: 0 0 0 14px;
}

#pageHeader .visualFlex .visual-head h1 {
	margin: 0 0 12px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#pageHeader .visualFlex .visual-head h1 b {
	font-size: 40px;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.18em;
	font-family: 'Poppins', sans-serif;
	text-transform: uppercase;
}

#pageHeader .visualFlex .visual-head h1 small {
	font-size: 18px;
	font-weight: 700;
	color: #424141;
	letter-spacing: 0.1em;
}

#pageHeader .visualFlex .visual-head p {
	margin: 0 0 12px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#pageHeader .visualFlex .visual-head p b {
	font-size: 40px;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.18em;
	font-family: 'Poppins', sans-serif;
	text-transform: uppercase;
}

#pageHeader .visualFlex .visual-head p small {
	font-size: 18px;
	font-weight: 700;
	color: #424141;
	letter-spacing: 0.1em;
}

/*----------------------------------------------------
 pageConts
----------------------------------------------------*/

#pageConts {
	padding: 90px 0;
}

#pageConts h2 {
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.08em;
	text-align: center;
	margin: 0 0 48px;
	padding: 18px 16px;
	background: #37414F;
	border-radius: 6px;
}

#pageConts h3 {

}

#pageConts p {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.85;
	letter-spacing: 0.04em;
}

/*----------------------------------------------------
 archive
----------------------------------------------------*/

#archive #products .inner {
	padding-top: 50px;
}

/*----------------------------------------------------
 singleVisual
----------------------------------------------------*/

#singleVisual {
	min-height: 530px;
	padding: 94px 0 0;
	background: rgb(255,255,255);
	background: -moz-linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	background: -webkit-linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	background: linear-gradient(47deg, rgba(255,255,255,1) 0%, rgba(245,247,250,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f5f7fa",GradientType=1);
}

#singleVisual.itemHead {
	padding: 0;
	background: #fff;
}

#singleVisual .inner {
	max-width: 1200px;
}

#singleVisual .visualFlex {
	display: flex;
	align-items: center;
	justify-content: center;
}

#singleVisual .visualFlex .image {
	width: 40%;
	max-width: 370px;
}

#singleVisual .visualFlex .image .Slider {
	position: relative;
}

#singleVisual .visualFlex .image .Slider .slick-track {
	display: flex;
	align-items: center;
}

#singleVisual .visualFlex .image .Slider .prev_nav {
	cursor: pointer;
	width: 64px;
	position: absolute;
	top: 50%;
	left: -30px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#singleVisual .visualFlex .image .Slider .next_nav {
	cursor: pointer;
	width: 64px;
	position: absolute;
	top: 50%;
	right: -30px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#singleVisual .visualFlex .image .Slider .slide img {
	max-width: 100%;
}

#singleVisual .visualFlex .conts {
	width: 60%;
	padding: 0 0 0 7%;
}

#singleVisual .visualFlex .conts ul {
	display: flex;
	margin: 0 0 9px;
}

#singleVisual .visualFlex .conts ul li {
	background: #37414F;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 32px;
	letter-spacing: 0.02em;
	border-radius: 22px;
	padding: 0 26px;
	margin: 0 15px 15px 0;
}

#singleVisual .visualFlex .conts h1 {
	font-size: 28px;
	font-weight: 400;
	color: #B2B185;
	letter-spacing: 0.18em;
	font-family: 'Bebas Neue', cursive;
	margin: 0 0;
}

#singleVisual .visualFlex .conts .itemDesc {
	font-size: 22px;
	font-weight: 700;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	color: #000000;
	line-height: 1.8;
	letter-spacing: 0.18em;
	margin: 0 0 10px;
}

#singleVisual .visualFlex .conts .contsBg-box p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.2em;
	text-align: justify;
	color: #000;
}

/*----------------------------------------------------
 itemConts
----------------------------------------------------*/

#itemConts {
	padding: 120px 0 0;
}

#itemConts .head {
	position: relative;
	margin: 0 0 79px;
	text-align: center;
	z-index: 1;
}

#itemConts .head h2 {
	position: relative;
}

#itemConts .head h2 b {
	font-size: 30px;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.2em;
	display: block;
	font-family: 'Poppins', sans-serif;
	margin: 0 0 -1px;
}

#itemConts .head h2 small {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.17em;
	color: #A1A1A1;
}

#itemConts .explanFlex {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
}

#itemConts .explanFlex .image {
	width: 32.8%;
	position: relative;
}

#itemConts .explanFlex .image img {
	box-shadow: rgba(0, 0, 0, 0.04) 0px 3px 5px;
}

#itemConts .explanFlex .image:before {
	content: '';
	width: 100%;
	height: 100%;
	background: url('../img/common/guradeBg.png') no-repeat;
	background-size: cover;
	position: absolute;
	left: 15px;
	top: 15px;
	z-index: -1;
}

#itemConts .explanFlex .conts {
	width: 60%;
	padding: 44px 0 0 20px;
}

#itemConts .explanFlex .conts h2 {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.625;
	letter-spacing: 0.04em;
	color: #37414F;
	position: relative;
	margin: 0 0 44px;
}

#itemConts .explanFlex .conts h2:before {
	content: '';
	width: 6px;
	height: 100%;
	border-radius: 12px;
	position: absolute;
	top: 50%;
	left: -30px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background: rgb(4,13,39);
	background: -moz-linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	background: linear-gradient(180deg, rgba(4,13,39,1) 0%, rgba(61,71,88,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#040d27",endColorstr="#3d4758",GradientType=1);
}

#itemConts .explanFlex .conts p {
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.04em;
	margin: 0 0 24px;
}

#itemConts .explanFlex .conts p strong {
	color: #BB5D7C;
}

#itemConts .explanFlex .conts p em {
	font-size: 13px;
	font-weight: bold;
	font-style: normal;
	color: #8b8b8b;
}

/*----------------------------------------------------
 item html
----------------------------------------------------*/

#itemConts .oracleBox {
	padding: 0 0 120px;
}

#itemConts .oracleBox .boxHead {
	text-align: center;
	margin-bottom: 60px;
}

#itemConts .oracleBox .boxHead h3 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.4;
	color: #8b8b8b;
}

#itemConts .oracleBox ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#itemConts .oracleBox ul li {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.4;
	text-align: center;
	color: #a1a1a1;
	width: 140px;
	height: 140px;
	border-radius: 50%;
	border: 1px solid #a1a1a1;
	margin: 0 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#itemConts .componentBox {
	padding: 60px 0 40px;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	height: 100%;
	background: #fbfbfd;
}

#itemConts .componentBox .innerBox {
	width: calc(100% - 3.6rem);
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#itemConts .componentBox .imageArea {
	display: flex;
	flex-wrap: wrap;
	width: 57%;
}

#itemConts .componentBox .imageArea .box {
	width: 33%;
}

#itemConts .componentBox .imageArea .box .image {
	width: 100%;
	max-width: 132px;
	margin-bottom: 6px;
}

#itemConts .componentBox .imageArea .box .name {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.8;
	color: #a1a1a1;
}

#itemConts .componentBox .imageArea .box:nth-child(1) {
	margin: 0 10% 34px 0;
}

#itemConts .componentBox .imageArea .box:nth-child(2) {
	margin: 0 10% 34px 0;
}

#itemConts .componentBox .imageArea .box:nth-child(3) {
	margin: 0 0 34px 15%;
}

#itemConts .componentBox .imageArea .box:nth-child(4) {
	margin: 0 0 34px 15%;
}


#itemConts .componentBox .conts {
	width: 40%;
}

#itemConts .componentBox .conts h3 {
	font-size: 22px;
	font-weight: 700;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	color: #000000;
	line-height: 1.8;
	letter-spacing: 0.18em;
	margin: 0 0 10px;
}

#itemConts .componentBox .conts p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.2em;
	text-align: justify;
	color: #000;
}

#itemConts .controllBox {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	align-items: center;
	padding: 100px;
}

#itemConts .controllBox .image {
	width: 48%;
}

#itemConts .controllBox .conts {
	width: 47%;
}

#itemConts .controllBox .conts h3 {
	font-size: 22px;
	font-weight: 700;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	color: #000000;
	line-height: 1.8;
	letter-spacing: 0.18em;
	margin: 0 0 10px;
	margin-bottom: 16px;
}

#itemConts .controllBox .conts p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.2em;
	text-align: justify;
	color: #000;
}

@media screen and (min-width: 769px) and (max-width: 1340px) {
	#itemConts .oracleBox {
		padding: 0 0 8.955vw;
	}

	#itemConts .oracleBox .boxHead {
		margin-bottom: 4.478vw;
	}

	#itemConts .oracleBox .boxHead h3 {
		font-size: 1.493vw;
	}

	#itemConts .oracleBox ul li {
		font-size: 1.045vw;
		width: 10.448vw;
		height: 10.448vw;
		margin: 0 0.746vw;
	}

	#itemConts .componentBox {
		padding: 4.478vw 0 2.985vw;
		margin: 0 calc(50% - 50vw);
		width: 100vw;
	}

	#itemConts .componentBox .innerBox {
		width: calc(100% - 3.6rem);
		max-width: 74.627vw;
	}

	#itemConts .componentBox .imageArea .box .image {
		max-width: 9.851vw;
		margin-bottom: 0.448vw;
	}

	#itemConts .componentBox .imageArea .box .name {
		font-size: 1.045vw;
	}

	#itemConts .componentBox .imageArea .box:nth-child(1) {
		margin: 0 10% 2.537vw 0;
	}

	#itemConts .componentBox .imageArea .box:nth-child(2) {
		margin: 0 10% 2.537vw 0;
	}

	#itemConts .componentBox .imageArea .box:nth-child(3) {
		margin: 0 0 2.537vw 15%;
	}

	#itemConts .componentBox .imageArea .box:nth-child(4) {
		margin: 0 0 2.537vw 15%;
	}

	#itemConts .componentBox .conts h3 {
		font-size: 1.642vw;
		margin: 0 0 0.746vw;
	}

	#itemConts .componentBox .conts p {
		font-size: 0.97vw;
	}

	#itemConts .controllBox {
		padding: 7.463vw;
	}

	#itemConts .controllBox .conts h3 {
		font-size: 1.642vw;
		margin: 0 0 0.746vw;
		margin-bottom: 1.194vw;
	}

	#itemConts .controllBox .conts p {
		font-size: 0.97vw;
	}
}

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

	#itemConts .oracleBox {
		padding: 0 0 40px;
	}

	#itemConts .oracleBox .boxHead {
		margin-bottom: 20px;
	}

	#itemConts .oracleBox .boxHead h3 {
    font-size: 16px;
	}

	#itemConts .oracleBox ul li {
		font-size: 11px;
		width: 90px;
		height: 90px;
		margin: 0 5px 10px;
	}

	#itemConts .componentBox {
    padding: 60px 0 60px;
	}

	#itemConts .componentBox .innerBox {
    display: block;
	}

	#itemConts .componentBox .imageArea {
    width: 100%;
		justify-content: center;
	}

	#itemConts .componentBox .imageArea .box:nth-child(1) {
		margin: 0 10% 20px 0;
	}

	#itemConts .componentBox .imageArea .box:nth-child(2) {
		margin: 0 10% 20px 0;
	}

	#itemConts .componentBox .imageArea .box:nth-child(3) {
		margin: 0 0 20px 10%;
	}

	#itemConts .componentBox .imageArea .box:nth-child(4) {
		margin: 0 0 20px 10%;
	}

	#itemConts .componentBox .imageArea .box {
    width: 30%;
	}

	#itemConts .componentBox .imageArea .box .name {
    font-size: 11px;
	}

	#itemConts .componentBox .conts {
    width: 100%;
    margin: 0 auto 0;
	}

	#itemConts .componentBox .conts h3 {
    font-size: 18px;
    margin: 0 0 10px;
	}

	#itemConts .componentBox .conts p {
    font-size: 11px;
	}

	#itemConts .controllBox {
    padding: 60px 0 0;
		display: block;
	}

	#itemConts .controllBox .image {
    width: 100%;
    margin: 0 auto 30px;
	}

	#itemConts .controllBox .conts {
    width: 100%;
    margin: 0 auto 30px;
	}

	#itemConts .controllBox .conts h3 {
    font-size: 18px;
    margin: 0 0 10px;
	}

	#itemConts .controllBox .conts p {
    font-size: 11px;
	}
}

/*----------------------------------------------------
 archive
----------------------------------------------------*/

#archive #pageHeader {
	background: #ededed;
	padding: 0;
	min-height: initial;
}

#archive #pageHeader .inner {
	max-width: initial;
}

#archive #pageHeader .visualFlex {
	padding: 0 0 0 12%;
}

#archive #pageHeader .visualFlex .visual-head {
	width: 600px;
}

#archive #pageHeader .visualFlex .image {
	width: calc(100% - 300px);
	max-width: 600px;
}

#archiveConts {
	padding: 90px 0;
}

#archiveConts .inner {
	max-width: 1000px;
}

#archiveConts .newsLists {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 60px;
}

#archiveConts .newsLists .newsBox:nth-child(1) {
	width: 100%;
	margin: 0 0 60px;
}

#archiveConts .newsLists .newsBox:nth-child(1) .image {
	height: 440px;
}

#archiveConts .newsLists .newsBox:nth-child(1) .nonImage {
	height: 440px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#archiveConts .newsLists .newsBox {
	width: 31%;
	margin-bottom: 60px;
}

#archiveConts .newsLists .newsBox .conts {
	padding: 0 10px;
}

#archiveConts .newsLists .newsBox .date {
	font-size: 13px;
	font-weight: 500;
	font-style: italic;
	letter-spacing: 0.08em;
	font-family: 'Poppins', sans-serif;
	color: #677b85;
	margin: 0 0 6px;
}

#archiveConts .newsLists .newsBox .listTitle {
	color: #000000;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.571;
}

#archiveConts .newsLists .newsBox .nonImage {
	height: 144.33px;
	background: #f9f9f9;
	position: relative;
	overflow: hidden;
}

#archiveConts .newsLists .newsBox .nonImage p {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.08em;
	font-family: 'Poppins', sans-serif;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transition: all 0.3s ease;
}

#archiveConts .newsLists .newsBox .image {
	margin:  0 0 14px;
	overflow: hidden;
	height: 144.33px;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 0 8px 16px rgba(0,0,0,0.02);
}

#archiveConts .newsLists .newsBox .image img {
	transition: 1s all;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.category-media #archiveConts .newsLists .newsBox:nth-child(1) {
	width: 31%;
	margin-bottom: 0 0 60px;
}

.category-media #archiveConts .newsLists .newsBox .image {
	height: 386px;
}

/*----------------------------------------------------
 toc_container
----------------------------------------------------*/

#toc_container {
	background: #fffff8;
	margin: 100px calc(50% - 50vw) 77px;
	padding: 55px calc(50vw - 50%) 43px;
	width: 100vw;
	border: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#toc_container .toc_title {
	font-size: 26px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.06em;
	font-family: 'Poppins', sans-serif;
	text-transform: uppercase;
	color: #000;
	width: 122px;
	text-align: center;
	margin: 0;
	position: relative;
}

#toc_container .toc_title:before {
	content: '';
	width: 130px;
	height: 128px;
	background: url('../img/common/toc-line.svg') center center no-repeat;
	background-size: 100% 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

#toc_container .toc_list {
	margin: 0;
	width: calc(100% - 190px);
}

#toc_container .toc_list li {
	padding: 0;
}

#toc_container .toc_list li:before {
	display: none;
}

#toc_container .toc_list li a {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.6;
	color: #454545;
	display: flex;
	margin: 0 0 14px;
}

#toc_container .toc_list li a .toc_number {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.08em;
	color: #000000;
	font-family: 'Poppins', sans-serif;
	text-transform: uppercase;
	margin: 0 17px 0 0;
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
}

#toc_container .toc_list li > ul {
	padding: 0 0 0 3.4%;
}

/*----------------------------------------------------
 wp-pagenavi
----------------------------------------------------*/

.wp-pagenavi {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 600;
	margin: 0 0 30px;
}

.wp-pagenavi .extend {
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
}

.wp-pagenavi .current {
	width: 55px;
	line-height: 53px;
	border-radius: 50%;
	text-align: center;
	background: #000000;
	border: 1px solid #000000;
	box-sizing: border-box;
	margin: 0 10px;
	color: #fff;
}

.wp-pagenavi a.page {
	width: 55px;
	line-height: 53px;
	border-radius: 50%;
	text-align: center;
	color: #555555;
	background: #fff;
	border: 1px solid rgba(167, 167, 167, 0.3);
	box-sizing: border-box;
	margin: 0 10px;
}

.wp-pagenavi a.nextpostslink {
	width: 55px;
	line-height: 53px;
	border-radius: 50%;
	text-align: center;
	position: relative;
	color: transparent;
}

.wp-pagenavi a.nextpostslink:before {
	content: '';
	width: 9px;
	height: 16px;
	background: url('../img/common/nextNav.svg') center center no-repeat;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.wp-pagenavi a.previouspostslink {
	width: 55px;
	line-height: 53px;
	border-radius: 50%;
	text-align: center;
	position: relative;
	color: transparent;
}

.wp-pagenavi a.previouspostslink:before {
	content: '';
	width: 9px;
	height: 16px;
	background: url('../img/common/prevNav.svg') center center no-repeat;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

/*----------------------------------------------------
 Single POST
----------------------------------------------------*/

#pageConts.single-post {
	padding: 60px 0 150px;
}

#single {
	padding: 0 0 0 0;
}

#single #pageHeader {
	background: #ededed;
	padding: 0;
	min-height: initial;
}

#single #pageHeader .inner {
	max-width: initial;
}

#single #pageHeader .visualFlex {
	padding: 0 0 0 12%;
}

#single #pageHeader .visualFlex .visual-head {
	width: 500px;
}

#single #pageHeader .visualFlex .visual-head b {
	text-transform: uppercase;
}

#single #pageHeader .visualFlex .visual-head b.shopArea-h1 {
	font-size: 32px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

#single #pageHeader .visualFlex .visual-head small {
	font-size: 18px;
}

#single #pageHeader .visualFlex .image {
	width: calc(100% - 500px);
	max-width: 600px;
}

#single .single-post .inner {
	max-width: 1000px;
}

#single .single-post  .single-head {
	margin: 0 0 35px;
	padding: 40px 0 0;
}

#single .single-post .post-date {
	font-size: 16px;
	font-family: 'Poppins', sans-serif;
	font-weight: 500;
	line-height: 1.19;
	color: #6D6D6F;
	margin-bottom: 10px;
}

#single .single-post  .single-head h1 {
	font-size: 22px;
	font-weight: 700;
	line-height: 2;
	color: #22304F;
	background: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

#single .single-post  .single-head h2 {
	font-size: 22px;
	font-weight: 700;
	line-height: 2;
	color: #22304F;
	background: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

#single .single-post  .wp-block-image {
	margin: 0 0 46px;
}

#single .single-post  .single-conts {
	margin: 0 0 141px;
}

#single .single-post  .single-conts p {
	font-size: 16px;
	line-height: 1.875;
	color: #000;
	margin: 0 0 40px;
}

#single .single-post  .single-pager {
	display: flex;
	justify-content: space-between;
}

#single .single-post  .prev-nav {
	width: 100%;
	display: flex;
	justify-content: left;
}

#single .single-post  .prev-nav a {
	display: flex;
	align-items: center;
}

#single .single-post  .prev-nav a .icon {
	line-height: 1;
	padding: 5px 7px 0 0;
	transition: all 0.3s ease;
}

#single .single-post  .prev-nav a .text {
	font-size: 1.4rem;
	font-weight: 700;
	color: #22304F;
	letter-spacing: 0.12em;
}

#single .single-post  .next-nav {
	width: 100%;
	display: flex;
	justify-content: right;
}

#single .single-post  .next-nav a {
	display: flex;
	align-items: center;
}

#single .single-post  .next-nav a .icon {
	line-height: 1;
	padding: 5px 0 0 7px;
	transition: all 0.3s ease;
}

#single .single-post  .next-nav a .text {
	font-size: 14px;
	font-weight: 700;
	color: #22304F;
	letter-spacing: 0.12em;
}

#single .single-post h3 {
	font-size: 22px;
	font-weight: 400;
	line-height: 1.91;
	letter-spacing: 0;
	color: #000;
	position: relative;
	margin: 68px 0 20px;
	padding: 0 0 0 50px;
}

#single .single-post h3:before {
	content: '';
	width: 30px;
	height: 4px;
	background: #677b85;
	border-radius: 2px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#single .single-post h4 {
	font-size: 22px;
	font-weight: 400;
	line-height: 1.27;
	letter-spacing: 0;
	color: #000;
	position: relative;
	border: 1px solid #677b85;
	border-radius: 6px;
	margin: 74px 0 26px 0;
	padding: 15px 14px 15px;
}

#single .single-post p a {
	color: #cb7979;
	text-decoration: underline;
}

#single .single-post ul {
	margin: 0 0 19px;
}

#single .single-post ul li {
	font-size: 17px;
	font-weight: 400;
	line-height: 2.17;
	letter-spacing: 0.02em;
	position: relative;
	padding: 0 0 0 23px;
}

#single .single-post ul li:before {
	content: '';
	width: 16px;
	height: 16px;
	background: #677b85;
	border-radius: 50%;
	position: absolute;
	left: 2px;
	top: 11px;
}

#single .single-post ol {
	margin: 0 0 19px;
	padding: 0 0 0 1px;
	list-style: none;
}

#single .single-post ol li {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.58;
	letter-spacing: 0.02em;
	position: relative;
}

#single .single-post ol span {
	font-family: 'Poppins', sans-serif;
	color: #FF9229;
	margin: 0 5px 0 0;
}

#single .single-post ol li::marker {
	font-family: 'Poppins', sans-serif;
	color: #FF9229;
}

#single .single-post .wp-block-table {
margin: 77px 0 68px 0;
}

#single .single-post table {
	width: 85.2%;
}

#single .single-post table tr:first-child td {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.76;
	letter-spacing: 0.02em;
	text-align: center;
	color: #fff;
	background: #677b85;
	border: 1px solid #fff;
	border-left: none;
	padding: 6px 0;
}


#single .single-post table tr:first-child td:last-child {
	border-right: none;
}

#single .single-post table tr:nth-child(n + 2) td {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.76;
	letter-spacing: 0.02em;
	text-align: center;
	color: #454545;
	border: 1px solid #CBCBCB;
	border-left: none;
	padding: 14px 0;
}

#single .single-post table tr:nth-child(n + 2) td:first-child {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.76;
	letter-spacing: 0.02em;
	text-align: center;
	color: #454545;
	background: rgba(255, 188, 54, 0.1);
	border: 1px solid #CBCBCB;
	border-left: none;
	padding: 14px 0;
	width: 24.9%;
}


/*----------------------------------------------------
 PC
----------------------------------------------------*/

@media screen and (min-width: 769px){
	.pc_hidden {
		display: none !important;
	}

	#header .headerFlex .navConts nav ul a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	#sideNav .Topbutton a:hover::before {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	#footer .bread .footerTopButton a:hover::before {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	#footer .Navflex .siteNav ul li a:hover {
		color: #C0A79C;
	}

	#footer .Navflex .siteInfo .followConts .followList a:hover {
		opacity: 0.7;
	}

	#footer .searchBox a:hover {
		opacity: 0.7;
	}

	#footer .footerNav .connectionLogo a:hover img {
		opacity: 0.7;
	}

	#worning .worningFlex .closeButton:hover {
		cursor: pointer;
		opacity: 0.8;
	}

	.button a:hover {
		box-shadow: none;
		opacity: 0.7;
	}

	#products .productsList ul li a:hover .itemName,
	#products .productsList ul li a:hover .itemDesc {
		color: #677b85;
	}

	#products .productsList ul li a:hover .image span:first-child {
		opacity: 0;
	}

	#ingredients .componentBox dl dt:hover {
		opacity: 0.7;
	}

	#term-detail .detailList .detailBox:nth-child(3n) {
		border-right: none;
	}

	#term-detail .detailList .detailBox:nth-child(n + 4) {
		border-bottom: none;
	}

	#archiveConts .newsLists .newsBox:nth-child(2),
	#archiveConts .newsLists .newsBox:nth-child(3),
	#archiveConts .newsLists .newsBox:nth-child(5),
	#archiveConts .newsLists .newsBox:nth-child(6) {
		margin-right: 3.5%;
	}

	.category-media #archiveConts .newsLists .newsBox:nth-child(1),
	.category-media #archiveConts .newsLists .newsBox:nth-child(2),
	.category-media #archiveConts .newsLists .newsBox:nth-child(4),
	.category-media #archiveConts .newsLists .newsBox:nth-child(5) {
		margin-right: 3.5%;
	}

	.category-media #archiveConts .newsLists .newsBox:nth-child(3),
	.category-media #archiveConts .newsLists .newsBox:nth-child(6) {
		margin-right: 0;
	}

	.wp-pagenavi a.page:hover {
		background: #677b85;
		border: 1px solid #677b85;
		color: #fff;
	}

	.wp-pagenavi a.nextpostslink:hover,
	.wp-pagenavi a.previouspostslink:hover {
		opacity: 0.7;
	}

	#archiveConts .newsLists .newsBox a:hover .listTitle {
		color: #677b85;
	}

	#archiveConts .newsLists .newsBox a:hover img:hover{
		-webkit-transform:scale(1.2,1.2);
		transform:scale(1.2,1.2);
		transition: 1s all;
	}

	#archiveConts .newsLists .newsBox a:hover .nonImage p {
		opacity: 0.7;
		color: #677b85;
	}

	#single .prev-nav a:hover .icon {
		-webkit-transform: translateX(-10px);
		transform: translateX(-10px);
	}

	#single .next-nav a:hover .icon {
		-webkit-transform: translateX(10px);
		transform: translateX(10px);
	}

}

@media screen and (min-width: 769px) and (max-width: 1000px) {
	#header .headerFlex .searchBox {
		display: none;
	}

}

/*----------------------------------------------------
 PC VW
----------------------------------------------------*/

@media screen and (min-width: 769px) and (max-width: 1340px) {

	/*----------------------------------------------------
	elements
	----------------------------------------------------*/

	body {
		font-size: 1.025vw;
		padding: 7.028vw 0 0 0;
	}

	/*----------------------------------------------------
	fadeIn
	----------------------------------------------------*/

	.fadeIn {
		transform: translate3d(0, -0.732vw, 0);
		transition: 1s;
		opacity: 0;
	}

	/*----------------------------------------------------
	inner
	----------------------------------------------------*/
	.inner {
		max-width: 87.848vw;
	}

	/*----------------------------------------------------
	header
	----------------------------------------------------*/

	#header {
		padding: 2.343vw 0 1.171vw 0;
		box-shadow: rgba(149, 157, 165, 0.2) 0 0.586vw 1.757vw;
	}

	#header:before {
		height: 0.366vw;
		top: 0.073vw;
	}

	#header .headerFlex .logo {
		max-width: 11.347vw;
		margin: 0 0 0 0.952vw;
	}

	#header .headerFlex .navConts nav > ul {
		-webkit-transform: translateY(-0.146vw);
		transform: translateY(-0.146vw);
	}

	#header .headerFlex .navConts nav > ul > li {
		margin: 0 2.489vw 0 0;
	}

	#header .headerFlex .navConts nav > ul > li > a {
		padding: 0 0 0.366vw;
	}

	#header .headerFlex .navConts nav > ul > li > a:after {
		height: 0.22vw;
		bottom: -0.732vw;
	}

	#header .headerFlex .navConts nav > ul > li > a > b {
		font-size: 1.171vw;
		margin: 0 0 0.22vw 0;
	}

	#header .headerFlex .navConts nav > ul > li > a > small {
		font-size: 0.878vw;
	}

	#header .headerFlex .searchBox {
		padding: 0 0.732vw;
		height: 2.928vw;
		width: 14.641vw;
		border-radius: 0.293vw;
	}

	#header .headerFlex .searchBox input[type="text"] {
		height: 2.782vw;
		padding: 0 0.366vw;
		font-size: 0.732vw;
	}

	#header .headerFlex .searchBox [type="submit"] {
		right: 1.098vw;
		top: 0.659vw;
	}

	.gNav_cList {
		padding: 2.196vw 1.684vw 0.878vw;
		border-radius: 0.293vw;
		box-shadow: 0 1.025vw 2.928vw rgba(83, 83, 83, 0.24);
	}

	.gNavIcon li {
		margin: 0 0 1.318vw;
	}

	.gNavIcon li .icon {
		width: 2.343vw;
		margin: 0 0.952vw 0 0;
	}

	.gNavIcon li .text {
		font-size: 1.025vw;
	}

	.gNavText li {
		margin: 0 0 1.318vw;
	}

	.gNavText li a {
		font-size: 1.025vw;
	}

	/*----------------------------------------------------
	worning
	----------------------------------------------------*/

	#worning {
		padding: 1.391vw 0;
		box-shadow: 0 0.22vw 0.439vw rgba(0,0,0,0.16);
	}

	#worning .worningFlex .head {
		font-size: 1.171vw;
	}

	#worning .worningFlex .conts p {
		font-size: 1.171vw;
	}

	#worning .worningFlex .closeButton {
		right: -1.171vw;
		top: 0.512vw;
		width: 2.05vw;
	}

	/*----------------------------------------------------
	sideNav
	----------------------------------------------------*/

	#sideNav {
		width: 3.66vw;
		top: 10.395vw;
		box-shadow: rgba(0, 0, 0, 0.04) 0 0.22vw 0.366vw;
	}

	#sideNav .Topbutton {
		height: 3.66vw;
	}

	#sideNav .Topbutton a:before {
		right: -3.66vw;
		border-right: 3.66vw solid transparent;
		border-bottom: 3.66vw solid #76536e;
	}

	#sideNav .navList {
		padding: 0 0 2.489vw 0;
	}

	#sideNav .navList .navBox {
		padding: 2.489vw 0 0 0;
	}

	#sideNav .navList .navBox .head {
		font-size: 0.952vw;
		margin: 0 0 3.88vw 0;
	}

	#sideNav .navList .navBox .head:before {
		width: 0.073vw;
		height: 1.83vw;
		bottom: -3.148vw;
	}

	#sideNav .navList .navBox .iconList .fb-con {
		padding: 0.732vw 0;
	}

	#sideNav .navList .navBox .iconList .tw-con {
		padding: 0.732vw 0 0;
	}

	/*----------------------------------------------------
	footer
	----------------------------------------------------*/

	#footer .bread {
		height: 3.221vw;
	}

	#footer .bread .footerTopButton a {
		height: 3.221vw;
		width: 3.221vw;
	}

	#footer .bread .footerTopButton a:before {
		right: -3.66vw;
		border-right: 3.66vw solid transparent;
		border-bottom: 3.66vw solid #76536e;
	}

	#footer .bread .breadcrumbs {
		line-height: 3.221vw;
		font-size: 1.025vw;
		padding: 0 0 0 0.512vw;
	}

	#footer .bread .breadcrumbs:before {
		width: 1.318vw;
		height: 1.098vw;
		top: 0.952vw;
	}

	#footer .bread .breadcrumbs a {
		font-size: 1.025vw;
	}

	#footer .bread .breadcrumbs span {
		font-size: 1.025vw;
		padding: 0 0.732vw;
	}

	#footer .bread .breadcrumbs span.arrow {
		width: 0.439vw;
		background-size: 0.512vw auto;
	}

	#footer .footerNav {
		padding: 5.857vw 0 4.246vw 0;
	}

	#footer .footerNav .siteLogo {
		max-width: 14.641vw;
		margin: 0 auto 2.343vw;
	}

	#footer .footerNav .connectionLogo {
		margin: 0 0 5.344vw;
	}

	#footer .footerNav .connectionLogo ul li {
		margin: 0 3.514vw;
	}

	#footer .footerNav .connectionLogo ul li:nth-child(1) {
		max-width: 13.177vw;
	}

	#footer .footerNav .connectionLogo ul li:nth-child(2) {
		max-width: 14.641vw;
	}

	#footer .footerNav .connectionLogo ul li:nth-child(3) {
		max-width: 13.397vw;
	}

	#footer .Navflex .siteInfo {
		width: 21.303vw;
		padding: 0 0 0 2.196vw;
	}

	#footer .Navflex .siteInfo .logo {
		width: 11.347vw;
		margin: 0 0 1.977vw;
	}

	#footer .Navflex .siteInfo .followConts {
		padding: 0 0 0 0.439vw;
	}

	#footer .Navflex .siteInfo .followConts .contsHead {
		margin: 0 0 0.805vw;
	}

	#footer .Navflex .siteInfo .followConts .contsHead p {
		font-size: 0.878vw;
	}

	#footer .Navflex .siteInfo .followConts .followList {
		padding: 0 0 0 0.146vw;
	}

	#footer .Navflex .siteInfo .followConts .followList .insta {
		width: 1.816vw;
		margin-right: 0.878vw;
	}

	#footer .Navflex .siteInfo .followConts .followList .tw {
		width: 1.637vw;
	}

	#footer .Navflex .siteNav {
		width: calc(100% - 24.744vw);
		padding: 0.293vw 0 0;
	}

	#footer .Navflex .siteNav .siteMenu .menuHead {
		margin: 0 0 1.171vw;
	}

	#footer .Navflex .siteNav .siteMenu .menuHead p {
		font-size: 1.611vw;
	}

	#footer .Navflex .siteNav .siteMenu ul li {
		margin: 0 0 1.098vw;
	}

	#footer .Navflex .siteNav ul li {
		font-size: 1.025vw;
	}

	#footer .footerBottom {
		padding: 0 0 6.369vw;
	}

	#footer .bottomsFlex {
		padding: 0 2.196vw;
	}

	#footer .copy p {
		font-size: 0.732vw;
	}

	#footer .searchBox {
		max-width: 23.206vw;
	}

	#footer .searchBox a {
		padding: 1.245vw 0 1.391vw 1.537vw;
		border-radius: 0.293vw;
		box-shadow: 0 0.22vw 0.439vw rgba(0,0,0,0.16);
	}

	#footer .searchBox a .icon {
		max-width: 3.514vw;
		margin: 0 1.245vw 0 0;
	}

	#footer .searchBox a .text {
		width: calc(100% - 4.758vw);
	}

	#footer .searchBox a .text .en {
		font-size: 1.611vw;
		margin: 0 0 0.22vw;
	}

	#footer .searchBox a .text .ja {
		font-size: 0.952vw;
		padding: 0 0 0 0.22vw;
	}

	/*----------------------------------------------------
	contactBanner
	----------------------------------------------------*/

	#contactBanner {
		height: 20.498vw;
	}

	#contactBanner .bg {
		max-width: 55.93vw;
	}

	#contactBanner .conts {
		padding: 4.466vw 0 0 29.722vw;
	}

	#contactBanner .conts .head {
		margin: 0 0 3.441vw;
	}

	#contactBanner .conts .head p b {
		font-size: 2.196vw;
		margin: 0 0 0.22vw;
	}

	#contactBanner .conts .head p small {
		font-size: 0.952vw;
		padding: 0 0 0 0.146vw;
	}

	#contactBanner .bannerFlex .content {
		margin-right: 2.269vw;
	}

	#contactBanner .bannerFlex .content p {
		font-size: 1.171vw;
	}

	#contactBanner .bannerFlex .button {
		max-width: 24.89vw;
	}

	#contactBanner .bannerFlex .button a .text {
		font-size: 0.952vw;
	}

	/*----------------------------------------------------
	Button
	----------------------------------------------------*/

	.button {
		height: 4.392vw;
		max-width: 26.354vw;
	}

	.button a {
		border-radius: 0.878vw 0 0.878vw 0;
	}

	.button a .arrow {
		right: 0.878vw;
		top: 50%;
		width: 1.537vw;
	}

	.button a .text {
		font-size: 1.318vw;
	}

	/*----------------------------------------------------
	pablication
	----------------------------------------------------*/

	#pablication {
		padding: 7.687vw 0 9.004vw;
	}

	#pablication .head {
		margin: 0 0 4.392vw;
		padding: 0 0 0 1.464vw;
	}

	#pablication .head h2 b {
		font-size: 2.928vw;
	}

	#pablication .head h2 b:nth-child(2) {
		margin: 0.512vw 0 0 17.277vw;
	}

	#pablication .head h2 small {
		font-size: 1.171vw;
		bottom: 0.659vw;
		left: 0.366vw;
	}

	#pablication .pabTop {
		margin: 0 0 1.318vw;
	}

	#pablication .Slider li .box {
		border-radius: 0.293vw;
		height: 20.498vw;
		margin: 0 0.732vw;
	}

	#pablication .pabLists ul li {
		padding: 2.196vw;
	}

	/*----------------------------------------------------
	pageVisual
	----------------------------------------------------*/

	#pageVisual {
		min-height: 38.799vw;
	}

	#pageVisual .inner {
		max-width: 87.848vw;
	}

	#pageVisual .visualFlex .visual-head .enDesc {
		font-size: 1.611vw;
		margin: 0 0 0.805vw;
	}

	#pageVisual .visualFlex .visual-head h1 {
		margin: 0 0 0.878vw;
	}

	#pageVisual .visualFlex .visual-head h1 b {
		font-size: 3.075vw;
	}

	#pageVisual .visualFlex .visual-head h1 small {
		font-size: 1.464vw;
	}

	#pageVisual .visualFlex .visual-head .jaDesc {
		font-size: 1.318vw;
	}

	#pageVisual .visualPlus {
		padding: 2.196vw 2.782vw;
		font-size: 0.952vw;
		-webkit-transform: translateY(-1.464vw);
		transform: translateY(-1.464vw);
		border-radius: 0.293vw;
		box-shadow: rgba(17, 12, 46, 0.15) 0 3.514vw 7.321vw 0;
	}

	#pageVisual .visualPlus p {
		margin: 0 0 1.464vw;
	}

	/*----------------------------------------------------
	term-detail
	----------------------------------------------------*/

	#term-detail {
		padding: 6.808vw 0 13.836vw;
	}

	#term-detail .head {
		margin: 0 0 7.394vw;
	}

	#term-detail .head h2 b {
		font-size: 2.343vw;
		margin: 0 0 0.22vw;
	}

	#term-detail .head h2 small {
		font-size: 1.318vw;
	}

	#term-detail .detailList {
		box-shadow: 0 0.22vw 0.439vw rgba(0, 0, 0, 0.04);
	}

	#term-detail .detailList .detailBox {
		padding: 2.709vw 4.5% 4.978vw;
	}

	#term-detail .detailList .detailBox .image {
		margin: 0 auto 1.464vw;
	}

	#term-detail .detailList .detailBox .enName {
		font-size: 1.025vw;
		margin: 0 0 0.732vw;
	}

	#term-detail .detailList .detailBox h3 {
		font-size: 1.611vw;
		margin: 0 0 1.611vw;
	}

	#term-detail .detailList .detailBox p {
		font-size: 1.098vw;
	}

	#term-detail .detailList .detailBox p.mini {
		font-size: 0.805vw;
	}

	#term-detail .addText {
		font-size: 0.952vw;
		margin: 1.025vw;
	}

	/*----------------------------------------------------
	ingredients
	----------------------------------------------------*/

	#ingredients .imageHead {
		height: 27.818vw;
	}

	#ingredients .ingredBox {
		margin: -11.42vw 0 0 0;
		padding: 8.272vw 14.8% 0.732vw;
		border-radius: 0.293vw;
	}

	#ingredients .ingredBox .head {
		margin: 0 0 7.394vw;
	}

	#ingredients .ingredBox .head h2 b {
		font-size: 2.343vw;
		margin: 0 0 0.22vw;
	}

	#ingredients .ingredBox .head h2 small {
		font-size: 1.318vw;
	}

	#ingredients .ingredList {
		margin: 0 0 9.151vw;
	}

	#ingredients .ingredListBox {
		margin: 0 0 4.026vw;
	}

	#ingredients .ingredListBox .no {
		font-size: 2.489vw;
		width: 4.319vw;
		margin: 0 1.318vw 0 0;
	}

	#ingredients .ingredListBox .conts {
		width: calc(100% - 5.637vw);
		padding: 0.659vw 0 0 0;
	}

	#ingredients .ingredListBox .conts h3 {
		font-size: 1.464vw;
	}

	#ingredients .ingredListBox .conts p {
		font-size: 1.025vw;
	}

	#ingredients .componentBox dl {
		margin: 0 0 7.321vw;
	}

	#ingredients .componentBox dl dt {
		font-size: 1.318vw;
		padding: 0.878vw 0;
		border-radius: 0.293vw;
	}

	#ingredients .componentBox dl dt .icon {
		right: 1.098vw;
	}

	#ingredients .componentBox dl dd {
		display:none;
		padding: 2.416vw 4% 0;
	}

	#ingredients .componentBox dl dd p {
		font-size: 1.025vw;
	}

	/*----------------------------------------------------
	termResults
	----------------------------------------------------*/

	#termResults {
		padding: 5.857vw 0 0 0;
	}

	#termResults .resultsBox .conts {
		padding: 1.684vw 3.2%;
	}

	#termResults .resultsBox .conts h2 {
		margin:  0 0 1.464vw;
	}

	#termResults .resultsBox .conts h2 b {
		font-size: 2.05vw;
	}

	#termResults .resultsBox .conts h2 small {
		font-size: 1.171vw;
	}

	#termResults .resultsBox .conts ol {
		padding: 0 0 0 1.391vw;
	}

	#termResults .resultsBox .conts ol li {
		font-size: 0.952vw;
		margin:  0 0 1.245vw;
	}

	/*----------------------------------------------------
	howto
	----------------------------------------------------*/

	#howto {
		margin: 8.785vw 0 0;
		padding: 8.272vw 5% 3.88vw;
	}

	#howto .head {
		margin: 0 0 6.296vw;
	}

	#howto .head h2 b {
		font-size: 2.928vw;
		margin: 0 0 0.22vw;
	}

	#howto .head h2 small {
		font-size: 1.464vw;
	}

	#howto .howtoBox {
		margin: 0 0 5.344vw;
	}

	#howto .howtoBox .no {
		font-size: 3.441vw;
		left: 0.732vw;
		top: -2.05vw;
	}

	#howto .howtoBox .conts {
		padding: 3.66vw 0 0 0;
	}

	#howto .howtoBox .conts h3 {
		font-size: 1.464vw;
		margin: 0 0 1.464vw;
	}

	#howto .howtoBox .conts h3:before {
		width: 0.439vw;
		border-radius: 0.878vw;
		left: -2.196vw;
	}

	#howto .howtoBox .conts p {
		font-size: 1.171vw;
	}

	#howto .howtoadd {
		max-width: 73.206vw;
		margin: 0 auto 3.66vw;
		border-radius: 0.586vw;
		padding: 2.343vw 3.075vw;
	}

	#howto .howtoadd .boxHead {
		font-size: 1.464vw;
		margin: 0 0 1.464vw;
	}

	#howto .howtoadd .boxHead:before {
		width: 2.928vw;
		height: 0.073vw;
		left: -4.466vw;
		top: 0.878vw;
	}

	#howto .howtoadd ul li {
		font-size: 1.171vw;
		margin: 0 0 1.464vw;
		padding: 0 0 0 1.537vw;
	}

	#howto .howtoadd ul li:before {
		width: 0.732vw;
		height: 0.732vw;
		top: 0.878vw;
	}

	#howto .worningBox {
		max-width: 73.206vw;
		margin: 0 auto 3.66vw;
		border-radius: 0.586vw;
		padding: 2.343vw 3.075vw;
	}

	#howto .worningBox .boxHead {
		font-size: 1.464vw;
		margin: 0 0 1.464vw;
	}

	#howto .worningBox .boxHead:before {
		width: 2.928vw;
		height: 0.073vw;
		left: -4.466vw;
		top: 0.878vw;
	}

	#howto .worningBox ul li {
		font-size: 1.171vw;
		margin: 0 0 1.464vw;
		padding: 0 0 0 1.537vw;
	}

	#howto .worningBox ul li:before {
		width: 0.732vw;
		height: 0.732vw;
		top: 0.805vw;
	}

	/*----------------------------------------------------
	products
	----------------------------------------------------*/

	#products {
		padding: 5.857vw 0 2.196vw;
	}

	#products .head {
		margin: 0 0 7.394vw;
	}

	#products .head h2 b {
		font-size: 2.196vw;
		margin: 0 0 -0.146vw;
	}

	#products .head h2 small {
		font-size: 0.952vw;
	}

	#products .productsList ul li {
		margin:  0 0 9.883vw;
	}

	#products .productsList ul li .image {
		margin: 0 0 2.196vw;
		max-height: 29.502vw;
	}

	#products .productsList ul li .itemName {
		font-size: 1.318vw;
		margin: 0 0 0.22vw;
	}

	#products .productsList ul li .itemDesc {
		font-size: 1.025vw;
	}

	#products .otherText {
		font-size: 1.318vw;
		margin: 0 0 8.785vw;
	}

	#products .button {
		margin: 0 auto 13.177vw;
	}

	/*----------------------------------------------------
	pageHeader
	----------------------------------------------------*/

	#pageHeader {
		height: 30.088vw;
	}

	#pageHeader .inner {
		max-width: 87.848vw;
	}

	#pageHeader .visualFlex .image {
		-webkit-transform: translateX(3.66vw);
		transform: translateX(3.66vw);
	}

	#pageHeader .visualFlex .visual-head {
		padding: 0 0 0 1.025vw;
	}

	#pageHeader .visualFlex .visual-head h1 {
		margin: 0 0 0.878vw;
	}

	#pageHeader .visualFlex .visual-head h1 b {
		font-size: 2.928vw;
	}

	#pageHeader .visualFlex .visual-head h1 small {
		font-size: 1.318vw;
	}

	#pageHeader .visualFlex .visual-head p {
		margin: 0 0 0.878vw;
	}

	#pageHeader .visualFlex .visual-head p b {
		font-size: 2.928vw;
	}

	#pageHeader .visualFlex .visual-head p small {
		font-size: 1.318vw;
	}

	/*----------------------------------------------------
	pageConts
	----------------------------------------------------*/

	#pageConts {
		padding: 6.589vw 0;
	}

	#pageConts h2 {
		font-size: 1.464vw;
		margin: 0 0 3.514vw;
		padding: 1.318vw 1.171vw;
		border-radius: 0.439vw;
	}

	#pageConts p {
		font-size: 1.318vw;
	}

	/*----------------------------------------------------
	archive
	----------------------------------------------------*/

	#archive #products .inner {
		padding-top: 3.66vw;
	}

	/*----------------------------------------------------
	singleVisual
	----------------------------------------------------*/

	#singleVisual {
		min-height: 38.799vw;
		padding: 6.881vw 0 0;
	}

	#singleVisual .inner {
		max-width: 87.848vw;
	}

	#singleVisual .visualFlex .image {
		max-width: 27.086vw;
	}

	#singleVisual .visualFlex .image .Slider .prev_nav {
		width: 4.685vw;
		left: -2.196vw;
	}

	#singleVisual .visualFlex .image .Slider .next_nav {
		width: 4.685vw;
		right: -2.196vw;
	}

	#singleVisual .visualFlex .conts ul {
		margin: 0 0 0.659vw;
	}

	#singleVisual .visualFlex .conts ul li {
		font-size: 1.171vw;
		line-height: 2.343vw;
		border-radius: 1.611vw;
		padding: 0 1.903vw;
		margin: 0 1.098vw 1.098vw 0;
	}

	#singleVisual .visualFlex .conts h1 {
		font-size: 2.05vw;
	}

	#singleVisual .visualFlex .conts .itemDesc {
		font-size: 1.611vw;
		margin: 0 0 0.732vw;
	}

	#singleVisual .visualFlex .conts .contsBg-box p {
		font-size: 0.952vw;
	}

	/*----------------------------------------------------
	itemConts
	----------------------------------------------------*/

	#itemConts {
		padding: 8.785vw 0 0;
	}

	#itemConts .head {
		margin: 0 0 5.783vw;
	}

	#itemConts .head h2 b {
		font-size: 2.196vw;
		margin: 0 0 -0.073vw;
	}

	#itemConts .head h2 small {
		font-size: 0.952vw;
	}

	#itemConts .explanFlex .image img {
		box-shadow: rgba(0, 0, 0, 0.04) 0 0.22vw 0.366vw;
	}

	#itemConts .explanFlex .image:before {
		left: 1.098vw;
		top: 1.098vw;
	}

	#itemConts .explanFlex .conts {
		padding: 3.221vw 0 0 1.464vw;
	}

	#itemConts .explanFlex .conts h2 {
		font-size: 1.611vw;
		margin: 0 0 3.221vw;
	}

	#itemConts .explanFlex .conts h2:before {
		width: 0.439vw;
		border-radius: 0.878vw;
		left: -2.196vw;
	}

	#itemConts .explanFlex .conts p {
		font-size: 1.171vw;
		margin: 0 0 1.757vw;
	}

	#itemConts .explanFlex .conts p em {
		font-size: 0.952vw;
	}

	/*----------------------------------------------------
	archive
	----------------------------------------------------*/

	#archive #pageHeader .visualFlex .visual-head {
		width: 43.924vw;
	}

	#archive #pageHeader .visualFlex .image {
		width: calc(100% - 21.962vw);
		max-width: 43.924vw;
	}

	#archiveConts {
		padding: 6.589vw 0;
	}

	#archiveConts .inner {
		max-width: 73.206vw;
	}

	#archiveConts .newsLists {
		margin: 0 0 4.392vw;
	}

	#archiveConts .newsLists .newsBox:nth-child(1) {
		margin: 0 0 4.392vw;
	}

	#archiveConts .newsLists .newsBox:nth-child(1) .image {
		height: 32.211vw;
	}

	#archiveConts .newsLists .newsBox:nth-child(1) .nonImage {
		height: 32.211vw;
	}

	#archiveConts .newsLists .newsBox {
		margin-bottom: 4.392vw;
	}

	#archiveConts .newsLists .newsBox .conts {
		padding: 0 0.732vw;
	}

	#archiveConts .newsLists .newsBox .date {
		font-size: 0.952vw;
		margin: 0 0 0.439vw;
	}

	#archiveConts .newsLists .newsBox .listTitle {
		font-size: 1.025vw;
	}

	#archiveConts .newsLists .newsBox .nonImage {
		height: 10.566vw;
	}

	#archiveConts .newsLists .newsBox .nonImage p {
		font-size: 1.025vw;
	}

	#archiveConts .newsLists .newsBox .image {
		margin:  0 0 1.025vw;
		height: 10.566vw;
		box-shadow: 0 0.586vw 1.171vw rgba(0,0,0,0.02);
	}

	.category-media #archiveConts .newsLists .newsBox:nth-child(1) {
		margin-bottom: 0 0 4.392vw;
	}

	.category-media #archiveConts .newsLists .newsBox .image {
		height: 28.258vw;
	}

	/*----------------------------------------------------
	toc_container
	----------------------------------------------------*/

	#toc_container {
		margin: 7.321vw calc(50% - 50vw) 5.637vw;
		padding: 4.026vw calc(50vw - 50%) 3.148vw;
		width: 100vw;
	}

	#toc_container .toc_title {
		font-size: 1.903vw;
		width: 8.931vw;
	}

	#toc_container .toc_title:before {
		width: 9.517vw;
		height: 9.37vw;
	}

	#toc_container .toc_list {
		width: calc(100% - 13.909vw);
	}

	#toc_container .toc_list li a {
		font-size: 1.318vw;
		margin: 0 0 1.025vw;
	}

	#toc_container .toc_list li a .toc_number {
		font-size: 1.611vw;
		margin: 0 1.245vw 0 0;
		-webkit-transform: translateY(-0.146vw);
		transform: translateY(-0.146vw);
	}

	/*----------------------------------------------------
	wp-pagenavi
	----------------------------------------------------*/

	.wp-pagenavi {
		font-size: 1.318vw;
		margin: 0 0 2.196vw;
	}

	.wp-pagenavi .extend {
		-webkit-transform: translateY(-0.366vw);
		transform: translateY(-0.366vw);
	}

	.wp-pagenavi .current {
		width: 4.026vw;
		line-height: 3.88vw;
		margin: 0 0.732vw;
	}

	.wp-pagenavi a.page {
		width: 4.026vw;
		line-height: 3.88vw;
		margin: 0 0.732vw;
	}

	.wp-pagenavi a.nextpostslink {
		width: 4.026vw;
		line-height: 3.88vw;
	}

	.wp-pagenavi a.nextpostslink:before {
		width: 0.659vw;
		height: 1.171vw;
	}

	.wp-pagenavi a.previouspostslink {
		width: 4.026vw;
		line-height: 3.88vw;
	}

	.wp-pagenavi a.previouspostslink:before {
		width: 0.659vw;
		height: 1.171vw;
	}

	/*----------------------------------------------------
	Single POST
	----------------------------------------------------*/

	#pageConts.single-post {
		padding: 4.392vw 0 10.981vw;
	}

	#single #pageHeader .visualFlex .visual-head {
		width: 36.603vw;
	}

	#single #pageHeader .visualFlex .visual-head b.shopArea-h1 {
		font-size: 2.343vw;
	}

	#single #pageHeader .visualFlex .visual-head small {
		font-size: 1.318vw;
	}

	#single #pageHeader .visualFlex .image {
		width: calc(100% - 36.603vw);
		max-width: 43.924vw;
	}

	#single .single-post .inner {
		max-width: 73.206vw;
	}

	#single .single-post  .single-head {
		margin: 0 0 2.562vw;
		padding: 2.928vw 0 0;
	}

	#single .single-post .post-date {
		font-size: 1.171vw;
		margin-bottom: 0.732vw;
	}

	#single .single-post  .single-head h1 {
		font-size: 1.611vw;
	}

	#single .single-post  .single-head h2 {
		font-size: 1.611vw;
	}

	#single .single-post  .wp-block-image {
		margin: 0 0 3.367vw;
	}

	#single .single-post  .single-conts {
		margin: 0 0 10.322vw;
	}

	#single .single-post  .single-conts p {
		font-size: 1.171vw;
		margin: 0 0 2.928vw;
	}

	#single .single-post  .prev-nav a .icon {
		padding: 0.366vw 0.512vw 0 0;
	}

	#single .single-post  .next-nav a .icon {
		padding: 0.366vw 0 0 0.512vw;
	}

	#single .single-post  .next-nav a .text {
		font-size: 1.025vw;
	}

	#single .single-post h3 {
		font-size: 1.611vw;
		margin: 4.978vw 0 1.464vw;
		padding: 0 0 0 3.66vw;
	}

	#single .single-post h3:before {
		width: 2.196vw;
		height: 0.293vw;
		border-radius: 0.146vw;
	}

	#single .single-post h4 {
		font-size: 1.611vw;
		border-radius: 0.439vw;
		margin: 5.417vw 0 1.903vw 0;
		padding: 1.098vw 1.025vw 1.098vw;
	}

	#single .single-post ul {
		margin: 0 0 1.391vw;
	}

	#single .single-post ul li {
		font-size: 1.245vw;
		padding: 0 0 0 1.684vw;
	}

	#single .single-post ul li:before {
		width: 1.171vw;
		height: 1.171vw;
		left: 0.146vw;
		top: 0.805vw;
	}

	#single .single-post ol {
		margin: 0 0 1.391vw;
		padding: 0 0 0 0.073vw;
	}

	#single .single-post ol li {
		font-size: 1.245vw;
	}

	#single .single-post ol span {
		margin: 0 0.366vw 0 0;
	}

	#single .single-post .wp-block-table {
		margin: 5.637vw 0 4.978vw 0;
	}

	#single .single-post table tr:first-child td {
		font-size: 1.245vw;
		padding: 0.439vw 0;
	}

	#single .single-post table tr:nth-child(n + 2) td {
		font-size: 1.245vw;
		padding: 1.025vw 0;
	}

	#single .single-post table tr:nth-child(n + 2) td:first-child {
		font-size: 1.245vw;
		padding: 1.025vw 0;
	}

}


/*----------------------------------------------------
 SP
----------------------------------------------------*/

@media screen and (max-width: 768px){
	.sp_hidden {
		display: none !important;
	}

	body {
		overflow: hidden;
		padding: 12.771vw 0 0 0;
	}

	.inner {
		width: 100%;
		padding: 0 5.25%
	}

	/*---------------------------------
	 Header
	---------------------------------*/

	#header {
		padding: 3.467vw 0 3.467vw 0;
	}

	#header:before {
		top: 0;
		height: 0.467vw;
		bottom: 0.267vw;
	}

	#header .headerFlex {
		flex-direction: column;
		align-items: center;
	}

	#header .headerFlex .logo {
		width: 100%;
		max-width: 25.867vw;
		max-height: 5.867vw;
		-webkit-transform: translateX(-1.867vw);
		transform: translateX(-1.867vw);
	}

	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		box-sizing: border-box;
	}

	.menu-trigger {
		vertical-align: middle;
		cursor: pointer;
		width: 9.333vw;
		height: 6.4vw;
		background: none;
		border: none;
		appearance: none;
		cursor: pointer;
		z-index: 10;
		position: absolute;
		top: 50%;
		right: 2.8%;
		transform: translateY(-50%) scale(0.8);
    -webkit-transform: translateY(-50%) scale(0.8);
    -ms-transform: translateY(-50%) scale(0.8);
	}

	.menu-trigger span {
		display: inline-block;
		box-sizing: border-box;
		position: absolute;
		width: 100%;
		height: 0.8vw;
		background: #000000;
		border-radius: 1.6vw;
		transition: all .5s;
	}

	.menu-trigger.active span:nth-of-type(2), .menu-trigger.active span:nth-of-type(3) {
		width: 100%;
	}

	.menu-trigger span:nth-of-type(1) {
		top: 0;
		left: 0;
	}

	.menu-trigger.active span:nth-of-type(1) {
		top: 0;
	}

	.menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(2.933vw) rotate(-45deg);
		transform: translateY(2.933vw) rotate(-45deg);
	}

	.menu-trigger span:nth-of-type(2) {
		top: 2.88vw;
		left: 0;
		width: 80%;
	}

	.menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}

	.menu-trigger span:nth-of-type(3) {
		bottom: 0;
		left: 0;
		width: 60%;
	}

	.menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-2.667vw) rotate(45deg);
		transform: translateY(-2.667vw) rotate(45deg);
		width: 100%;
	}

	/*---------------------------------
	#sp_menu
	---------------------------------*/

	#sp_menu {
		width: 100%;
		height: calc(100% - 12.771vw);
		background: #fff;
		position: fixed;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		left: 0;
		top: 0;
		padding: 0 0 8vw;
		z-index: 95;
		-webkit-transform: translateY(-100vh);
		transform: translateY(-100vh);
		transition: all 0.5s ease;
	}

	#sp_menu.open {
		-webkit-transform: translateY(12.771vw);
		transform: translateY(12.771vw);
	}

	#sp_menu .inner {
		width: 100%;
		padding: 0;
	}

	#sp_menu .searchBox {
		box-sizing: border-box;
		position: relative;
		display: block;
		padding: 0 2.667vw;
		margin: 6.4vw auto;
		height: 10.667vw;
		width: 73.333vw;
		border-radius: 1.067vw;
		background: #F1F0EF;
		overflow: hidden;
	}

	#sp_menu .searchBox input[type="text"] {
		border: none;
		height: 10.133vw;
		background: none;
		padding: 0 1.333vw;
		font-size: 2.667vw;
		font-weight: 500;
		color: #C1C1C1;
		font-family: 'Noto Sans JP', sans-serif;
	}

	#sp_menu .searchBox input[type="text"]::placeholder {
		color: #C1C1C1;
	}

	#sp_menu .searchBox input[type="text"]:focus {
		outline: 0;
	}

	#sp_menu .searchBox [type="submit"] {
		cursor: pointer;
		position: absolute;
		right: 4vw;
		top: 2.4vw;
		border: none;
		background: none;
		padding: 0;
	}

	.menu_innerNav {
		margin: 0 0 8.125vw;
	}

	.menu_innerNav nav > ul > li {}

	.menu_innerNav nav > ul > li > a {
		line-height: 2;
		color: #31302D;
		padding: 2.933vw 4.267vw;
		display: flex;
		align-items: center;
		border-bottom: 1px solid #d4d4d4;
	}

	.menu_innerNav nav > ul > li > a > b {
		font-size: 3.567vw;
		font-weight: 600;
		letter-spacing: 0.04em;
		font-family: 'Poppins', sans-serif;
		margin: 0 3.467vw 0 0;
	}

	.menu_innerNav nav > ul > li > a > small {
		font-size: 2.867vw;
		font-weight: 500;
		color: #757575;
		padding: 0.533vw 0 0;
	}

	.menu_innerNav nav > ul > li > a.role {
		position: relative;
		width: 100%;
		display: block;
		padding: 2.933vw 4.267vw;
	}

	.menu_innerNav nav > ul > li > a.role:after {
		content: '';
		width: 4.533vw;
		height: 0.533vw;
		background: #31302D;
		position: absolute;
    top: 50%;
    right: 6.4vw;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	}

	.menu_innerNav nav > ul > li > a.role:before {
		content: '';
		height: 4.533vw;
		width: 0.533vw;
		background: #31302D;
		position: absolute;
    top: 50%;
    right: 8.267vw;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-ms-transition: all 0.3s ease;
	}

	.menu_innerNav nav > ul > li > a.role.active:before {
		opacity: 0;
	}

	.menu_innerNav nav > ul > li > ul {
		padding: 3.125vw 0;
		display: none;
		border-bottom: 1px solid #d4d4d4;
	}

	.menu_innerNav nav > ul > li > ul.active {
		display: block;
	}

	.menu_innerNav nav > ul > li > ul > li {}

	.menu_innerNav nav > ul > li > ul > li > a {
		font-size: 3.467vw;
		font-weight: 500;
		letter-spacing: 0.04em;
		font-family: 'Poppins' , "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
		color: #787878;
		padding: 1.333vw 0 1.333vw 10.667vw;
		display: block;
		position: relative;
	}

	.menu_innerNav nav > ul > li > ul > li > a:before {
		content: '';
		width: 6.4vw;
		height: 0.267vw;
		background: #3D4758;
		position: absolute;
		top: 50%;
		left: 0%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
	}

	#sp_menu .followConts {
		margin: 0 0 1.5vw;
		padding: 2.933vw 4.267vw 0;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	#sp_menu .followConts .followList > div:last-child {
		margin-right: 0;
	}

	#sp_menu .followConts .contsHead {
    margin: 0 0 0.8vw;
	}

	#sp_menu .followConts .contsHead p {
		font-size: 2.667vw;
		font-weight: 700;
	}

	#sp_menu .followConts .followList {
    display: flex;
    justify-content: left;
    align-items: center;
    padding: 0 0 0 2px;
	}

	#sp_menu .followConts .followList .insta {
    width: 4vw;
    margin-right: 1.867vw;
	}

	#sp_menu .followConts .followList .tw {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	#sp_menu .followConts .followList .line {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	#sp_menu .followConts .followList .youtube {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	#sp_menu .followConts .followList .tiktok {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	/*---------------------------------
	worning
	---------------------------------*/

	#worning {
		bottom: 60px;
		/* bottom: 0; */
		padding: 0 0;
	}

	#worning .inner {
		width: 100%;
		padding: 0 2.25%;
	}

	#worning .worningFlex {
		padding: 2.667vw 3.733vw 1.6vw;
	}

	#worning .worningFlex .head {
		margin: 0 0.533vw 0 0;
		font-size: 2.667vw;
	}

	#worning .worningFlex .conts p {
		font-size: 2.667vw;
	}

	#worning .worningFlex .head:after {
		display: none;
	}

	#worning .worningFlex .closeButton {
		width: 2.4vw;
		height: 2.4vw;
		right: 0.267vw;
		top: 2.933vw;
	}


	/*---------------------------------
	cta
	---------------------------------*/

	#cta {
		padding: 8vw 5vw;
		flex-direction: column-reverse;
	}
	#cta h2 {
		font-size: 8vw;
		padding-bottom: 5vw;
		color: #fff;
	}
	#cta .ttl {
		padding-bottom: 2vw;
	}
	#cta .ttl_sub {
		font-size: 2.5vw;
		letter-spacing: 1px;
	}
	#cta .cta_txt {
		width: 100%;
		text-align: center;
		padding: 5vw 5vw 0;
	}
	#cta .cta_txt img {
		width: 4vw;
		margin-right: 0.5vw;
		margin-bottom: 0.8vw;
	}
	#cta .cta_img {
		width: 100%;
	}
	#cta .cta_btn {
		padding-bottom: 4vw;
	}
	#cta .cta_btn a {
		width: 80vw;
		margin: 0 auto;
		padding: 3vw;
		font-size: 4vw;
	}
	#cta .cta_btn a .arrow {
		right: 4vw;
	}
	#cta .cta_btn a .arrow:before {
		width: 3vw;
		height: 1px;
		top: 0.65vw;
		right: 0;
	}
	#cta .cta_btn a .arrow:after {
		width: 1.5vw;
		height: 1px;
		top: 0;
		right: -0.1vw;
	}


	/*---------------------------------
	footer
	---------------------------------*/

	#footer .bread {
		height: 7.2vw;
		overflow: hidden;
	}

	#footer .bread .breadcrumbs span.arrow {
    width: 1.333vw;
    background-size: 1.333vw auto;
    padding: 0 1.333vw;
    margin: 0 -3.467vw;
	}

	#footer .bread .footerTopButton a {
		height: 7.2vw;
		width: 7.2vw;
	}

	#footer .bread .footerTopButton a:before {
		display: none;
	}

	#footer .bread .footerTopButton a img {
		width: 2.4vw;
	}

	#footer .bread .breadcrumbs {
		line-height: 7.2vw;
		padding: 0 0 0 0;
		white-space: nowrap;
	}

	#footer .bread .breadcrumbs span {
		font-size: 2.667vw;
	}

	#footer .bread .breadcrumbs:before {
		width: 3.2vw;
    height: 2.667vw;
		background-size: 100% auto;
		left: 0.533vw;
    top: 2.133vw;
	}

	#footer .footerNav {
		margin: 0 0 0;
		padding: 7.467vw 0 2.667vw 0;
	}

	#footer .Navflex {
		display: block;
	}

	#footer .Navflex .siteNav {
		width: 100%;
		flex-direction: column;
	}

	#footer .Navflex .siteNav .siteMenu .menuHead {
    margin: 0 0 1.333vw;
    padding: 0 0 0 0.533vw;
	}

	#footer .Navflex .siteNav .siteMenu .menuHead p {
    font-size: 3.2vw;
	}

	#footer .Navflex .siteNav .siteMenu {
		width: 100%;
		margin: 0 0 1.333vw;
	}

	#footer .Navflex .siteNav .siteMenu ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	#footer .Navflex .siteNav .siteMenu ul li {
		margin: 0 4.267vw 3.733vw 0;
		padding: 0 0 0 0.533vw;
		font-size: 2.667vw;
	}

	#footer .Navflex .siteNav .siteNavFlex {
		display: flex;
		justify-content: space-between;
		padding: 0 0 10.133vw 3.733vw;
	}

	#footer .Navflex .siteNav .slonMenu ul li {
		margin: 0 0 2.667vw;
	}

	#footer .Navflex .siteInfo {
		position: relative;
		width: calc(100% + 8.5%);
		margin: 0 0 0.2vw -4.25%;
		display: block;
		justify-content: space-between;
		padding: 0 4% 4.8vw;
	}

	#footer .Navflex .siteInfo:after {
		display: none;
	}

	#footer .Navflex .siteInfo .followConts {
		margin: 0 0 1.5vw;
		padding: 1.6vw 1.067vw 0 1.6vw;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	#footer .Navflex .siteInfo .followConts .followList > div:last-child {
		margin-right: 0;
	}

	#footer .Navflex .siteInfo .logo {
		width: 39%;
		margin: 0 auto 5vw;
	}

	#footer .Navflex .siteInfo .followConts .contsHead {
    margin: 0 0 0.8vw;
	}

	#footer .Navflex .siteInfo .followConts .contsHead p {
		font-size: 2.667vw;
		font-weight: 700;
	}

	#footer .Navflex .siteInfo .followConts .followList .insta {
    width: 4vw;
    margin-right: 1.867vw;
	}

	#footer .Navflex .siteInfo .followConts .followList .tw {
    width: 3.768vw;
		margin-right: 1.867vw;
	}

	#footer .Navflex .siteInfo .followConts .followList .line {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	#footer .Navflex .siteInfo .followConts .followList .youtube {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	#footer .Navflex .siteInfo .followConts .followList .tiktok {
    width: 4.768vw;
		margin-right: 1.867vw;
	}

	#footer .bottomsFlex {
		display: block;
	}

	#footer .searchBox {
    width: 100%;
    max-width: 48.667vw;
    margin: 0 auto 3.733vw;
	}

	#footer .searchBox a {
		padding: 1.333vw 0 2.4vw 3.467vw;
		border-radius: 1.067vw;
	}

	#footer .searchBox a .icon {
    max-width: 6.4vw;
    margin: 0 3.2vw 0 0;
	}

	#footer .searchBox a .text {
    width: calc(100% - 9.6vw);
	}

	#footer .searchBox a .text .en {
    font-size: 3.733vw;
    margin: 0 0 0.8vw;
	}

	#footer .searchBox a .text .ja {
    font-size: 2.667vw;
    padding: 0 0 0 0.8vw;
	}

	#footer .copy p {
		font-size: 2.667vw;
		padding: 1.867vw 0;
		-webkit-transform: scale(0.8);
		transform: scale(0.8);
	}

	#footer .footerBottom {
    padding: 0 0 8.8vw;
	}

	/*---------------------------------
	#contactBanner
	---------------------------------*/

	#contactBanner {
		height: 51.333vw;
	}

	#contactBanner .bg {
    max-width: 101.867vw;
    left: -19.2vw;
    top: 7.2vw;
	}

	#contactBanner .conts {
    padding: 6.933vw 0 0 26.667vw;
	}

	#contactBanner .conts .head {
    margin: 0 0 3.467vw;
	}

	#contactBanner .conts .head p b {
    font-size: 4.8vw;
    margin: 0 0 -0.533vw;
	}

	#contactBanner .conts .head p small {
    font-size: 2.667vw;
    padding: 0 0 0 0;
	}

	#contactBanner .bannerFlex {
		display: block;
	}

	#contactBanner .bannerFlex .content {
		width: 100%;
		margin: 0 0 4.267vw;
	}

	#contactBanner .bannerFlex .content p {
    font-size: 2.667vw;
    line-height: 2;
	}

	#contactBanner .bannerFlex .button {
    max-width: 57.6vw;
	}

	#contactBanner .bannerFlex .button a .text {
    font-size: 2.667vw;
		letter-spacing: 0.06em;
		-webkit-transform: translateX(-1.6vw);
		transform: translateX(-1.6vw);
	}

	/*---------------------------------
	button
	---------------------------------*/

	.button {
		max-width: 48vw;
		height: 8.333vw;
	}

	.button a {
		border-radius: 1.6vw 0 1.6vw 0;
	}

	.button a .text {
		font-size: 2.667vw;
	}

	.button a .arrow {
		top: 63%;
		right: 1.867vw;
		width: 3.2vw;
	}

	/*---------------------------------
	pablication
	---------------------------------*/

	#pablication {
		padding: 12.8vw 0 17.867vw;
		background: #FFF2DF;
	}

	#pablication .head {
		margin: 0 0 9.8vw;
		padding: 0 0 0 1.6vw;
	}

	#pablication .head h2 b {
		font-size: 5.333vw;
		letter-spacing: 0.08em;
	}

	#pablication .head h2 b:nth-child(2) {
		margin: 1.067vw 0 0 24.267vw;
	}

	#pablication .head h2 small {
		font-size: 3.733vw;
		bottom: 0.8vw;
		left: 0.533vw;
	}

	#pablication .Slider li .box {
		height: 40.533vw;
	}

	#pablication .pabLists ul li {
		width: 33.333%;
		padding: 4vw;
	}

	/*---------------------------------
	pageVisual
	---------------------------------*/

	#pageVisual {
		min-height: initial;
		padding: 7.067vw 0 13.333vw;
	}

	#pageVisual .visualFlex {
		flex-direction: column;
	}

	#pageVisual .visualFlex .image {
		width: 68%;
		margin: 0 0 7.2vw;
	}

	#pageVisual .visualFlex .visual-head {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	#pageVisual .visualFlex .visual-head .enDesc {
		font-size: 3.2vw;
	}

	#pageVisual .visualFlex .visual-head h1 {
		margin: 0 0 3.2vw;
	}

	#pageVisual .visualFlex .visual-head h1 b {
		font-size: 6.667vw;
	}

	#pageVisual .visualFlex .visual-head h1 small {
		font-size: 3.467vw;
	}

	#pageVisual .visualFlex .visual-head .jaDesc {
		font-size: 3.467vw;
	}

	#pageVisual .visualPlus {
		margin: 5.333vw 0 0;
		padding: 5.333vw 5.333vw;
    font-size: 3.2vw;
		-webkit-transform: translateY(0);
    transform: translateY(0);
	}

	/*---------------------------------
	pageHeader
	---------------------------------*/

	#pageHeader {
		height: auto;
		min-height: initial;
		padding: 10.067vw 0 10.667vw;
	}

	#pageHeader .visualFlex {
		flex-direction: column;
	}

	#pageHeader .visualFlex .image {
		width: 68%;
		margin: 0 0 7.2vw;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	#pageHeader .visualFlex .visual-head {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 0;
	}

	#archive #pageHeader .visualFlex .visual-head {
		width: 100%;
	}

	#pageHeader .visualFlex .visual-head h1 b {
		text-align: center;
		font-size: 6.667vw;
	}

	#pageHeader .visualFlex .visual-head h1 small {
		font-size: 3.467vw;
		text-align: center;
	}

	/*---------------------------------
	 pageConts
	---------------------------------*/

	#pageConts {
		padding: 10.667vw 0 26.667vw;
	}

	#pageConts h2 {
		font-size: 4vw;
		margin: 0 0 6.933vw;
		padding: 3.733vw 3.733vw;
		border-radius: 2.133vw;
	}

	#pageConts p {
		font-size: 3.733vw;
		font-weight: 500;
		line-height: 1.85;
		letter-spacing: 0.04em;
	}

	/*---------------------------------
	 term-detail
	---------------------------------*/

	#term-detail {
		padding: 16vw 0 12.8vw;
	}

	#term-detail .head {
		margin: 0 0 8.533vw;
	}

	#term-detail .head h2 b {
		font-size: 5.333vw;
		letter-spacing: 0.04em;
		margin: 0 0 0;
	}

	#term-detail .head h2 small {
		font-size: 3.733vw;
		letter-spacing: 0.08em;
	}

	#term-detail .detailList .detailBox {
		width: calc(100% / 2);
		margin: 0 auto 1.067vw;
		padding: 7.2vw 4.5% 8.267vw;
	}

	#term-detail .detailList .detailBox:nth-child(2n) {
		border-right: none;
	}

	#term-detail .detailList .detailBox:nth-child(n + 5) {
		border-bottom: none;
	}

	#term-detail .detailList .detailBox .image {
		width: 52%;
		margin: 0 auto 1.067vw;
	}

	#term-detail .detailList .detailBox .enName {
		font-size: 2.667vw;
		margin: 0 0 0;
	}

	#term-detail .detailList .detailBox h3 {
		font-size: 3.733vw;
		margin: 0 0 3.467vw;
	}

	#term-detail .detailList .detailBox p {
		font-size: 2.933vw;
	}

	#term-detail .detailList .detailBox p.mini {
		font-size: 2.667vw;
	}

	#term-detail .addText {
		font-size: 2.933vw;
	}

	/*---------------------------------
	 ingredients
	---------------------------------*/

	#ingredients {
		padding: 0 0 0;
	}

	#ingredients .imageHead {
		height: 34.667vw;
	}

	#ingredients .ingredBox {
		margin: -9.6vw 0 0 0;
		padding: 14.933vw 8% 2.667vw;
	}

	#ingredients .ingredBox .head {
		margin: 0 0 8.533vw;
	}

	#ingredients .ingredBox .head h2 b {
		font-size: 5.333vw;
		letter-spacing: 0.04em;
		margin: 0 0 0;
	}

	#ingredients .ingredBox .head h2 small {
		font-size: 3.733vw;
		letter-spacing: 0.08em;
	}

	#ingredients .ingredList {
		margin: 0 0 14.667vw;
	}

	#ingredients .ingredListBox {
		position: relative;
		margin: 0 0 5.867vw;
	}

	#ingredients .ingredListBox .no {
		font-size: 4.8vw;
		position: absolute;
		left: 0;
		top: 1.6vw;
		width: auto;
	}

	#ingredients .ingredListBox .conts {
		width: 100%;
	}

	#ingredients .ingredListBox .conts h3 {
		font-size: 3.467vw;
		margin: 0 0 2.667vw;
		padding: 0 0 0 10.667vw;
	}

	#ingredients .ingredListBox .conts p {
		font-size: 2.933vw;
	}

	#ingredients .componentBox dl {
		margin: 0 0 9.333vw;
	}

	#ingredients .componentBox dl dt {
		font-size: 3.2vw;
		padding: 2.133vw 0;
	}

	#ingredients .componentBox dl dt .icon {
		right: 2.4vw;
		width: 4vw;
	}

	#ingredients .componentBox dl dd p {
		font-size: 2.933vw;
		line-height: 1.5;
	}

	/*---------------------------------
	 howto
	---------------------------------*/

	#howto {
		margin: 13.867vw 0 0;
		padding: 13.6vw 5% 2.133vw;
		background: #FBF9F8;
	}

	#howto .head {
		margin: 0 0 9.6vw;
	}

	#howto .head h2 {
		margin: 0 0 3.733vw;
	}

	#howto .head h2 b {
		font-size: 4.8vw;
	}

	#howto .head h2 small {
		font-size: 2.933vw;
	}

	#howto .howtoBox {
		flex-direction: column;
		margin: 0 0 11.467vw;
	}

	#howto .howtoBox .image {
		width: 100%;
		margin: 0 0 6.667vw;
	}

	#howto .howtoBox .no {
		font-size: 6.4vw;
		left: -2.933vw;
		top: -3.733vw;
	}

	#howto .howtoBox .conts {
		width: 100%;
		padding: 0;
	}

	#howto .howtoBox .conts h3 {
		font-size: 3.733vw;
		margin: 0 0 3.2vw;
		padding: 0 0 0 5.067vw;
	}

	#howto .howtoBox .conts h3:before {
		width: 0.933vw;
		left: 0;
	}

	#howto .howtoBox .conts p {
		font-size: 3.133vw;
		line-height: 1.8;
	}

	#howto .worningBox {
		padding: 6.4vw 6.933vw;
	}

	#howto .worningBox .boxHead {
		font-size: 4.233vw;
		margin: 0 0 2.667vw;
	}

	#howto .worningBox .boxHead:before {
		width: 8.8vw;
		left: -11.467vw;
		top: 2.633vw;
	}

	#howto .worningBox ul li {
		font-size: 3.133vw;
		line-height: 1.8;
		margin: 0 0 4vw;
		padding: 0 0 0 4.267vw;
	}

	#howto .worningBox ul li:before {
		width: 1.6vw;
		height: 1.6vw;
		top: 2.133vw;
	}

	/*---------------------------------
	 ingredients
	---------------------------------*/

	#termResults {
		padding: 10.667vw 0 0;
	}

	#termResults .resultsBox {
		flex-direction: column;
	}

	#termResults .resultsBox .image {
		width: 100%;
	}

	#termResults .resultsBox .conts {
		width: 100%;
		padding: 4vw 6.2%;
	}

	#termResults .resultsBox .conts h2 {
		margin: 0 0 3.733vw;
	}

	#termResults .resultsBox .conts h2 b {
		font-size: 4.8vw;
	}

	#termResults .resultsBox .conts h2 small {
		font-size: 2.933vw;
	}

	#termResults .resultsBox .conts ol {
		padding: 0 0 0 6.4vw;
	}

	#termResults .resultsBox .conts ol li {
		font-size: 3.2vw;
	}

	/*---------------------------------
	 products
	---------------------------------*/

	#products {
		padding: 8vw 0 16vw;
	}

	#products .head {
		margin: 0 0 8.533vw;
	}

	#products .head h2 b {
		font-size: 4.8vw;
		margin: 0 0 -0.267vw;
	}

	#products .head h2 small {
		font-size: 2.667vw;
		letter-spacing: 0.08em;
	}

	#products .productsList ul li {
		width: 50%;
		margin: 0 0 12.8vw;
	}

	#products .productsList ul li .image {
		margin: 0 0 3.467vw;
	}

	#products .productsList ul li .itemName {
		font-size: 2.933vw;
	}

	#products .productsList ul li .itemDesc {
		font-size: 2.667vw;
	}

	#products .otherText {
		font-size: 2.933vw;
	}

	#products .button {
    margin: 0 auto 10.667vw;
	}

	/*---------------------------------
	 singleVisual
	---------------------------------*/

	#singleVisual {
		min-height: initial;
		padding: 7.067vw 0 13.333vw;
	}

	#singleVisual .visualFlex {
		flex-direction: column;
	}

	#singleVisual .visualFlex .image {
		width: 68%;
		margin: 0 0 7.2vw;
	}

	#singleVisual .visualFlex .image .Slider .prev_nav {
		width: 8.533vw;
		left: -14%;
	}

	#singleVisual .visualFlex .image .Slider .next_nav {
		width: 8.533vw;
		right: -14%;
	}

	#singleVisual .visualFlex .conts {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 0;
	}

	#singleVisual .visualFlex .conts h1 {
		font-size: 6.2vw;
	}

	#singleVisual .visualFlex .conts .itemDesc {
		font-size: 4vw;
	}

	#singleVisual .visualFlex .conts .contsBg-box p {
    font-size: 3.2vw;
    letter-spacing: 0.12em;
	}

	#singleVisual .visualFlex .conts ul {
		margin: 0 0 1.067vw;
	}

	#singleVisual .visualFlex .conts ul li {
		font-size: 3.2vw;
		line-height: 7.467vw;
	}

	/*---------------------------------
	 itemConts
	---------------------------------*/

	#itemConts {
		padding: 20.333vw 4.52% 20vw;
	}

	#itemConts .head {
    margin: 0 0 7.733vw;
	}

	#itemConts .head h2 b {
		font-size: 4.8vw;
		margin: 0 0 -0.267vw;
	}

	#itemConts .head h2 small {
		font-size: 2.667vw;
	}

	#itemConts .explanFlex {
		flex-direction: column;
	}

	#itemConts .explanFlex .image {
		width: 55%;
		margin:  0 auto 12vw;
	}

	#itemConts .explanFlex .conts {
		width: 100%;
		padding: 0 0 0;
	}

	#itemConts .explanFlex .conts h2 {
		font-size: 3.733vw;
		font-weight: 700;
		margin: 0 0 3.2vw;
		padding: 0 0 0 5.067vw;
	}

	#itemConts .explanFlex .conts p {
		font-size: 3.153vw;
		line-height: 1.8;
	}

	#itemConts .explanFlex .conts p em {
		font-size: 2.9vw;
	}

	#itemConts .explanFlex .conts h2:before {
		width: 0.933vw;
		left: 0;
	}

	/*---------------------------------
	 archive
	---------------------------------*/

	#archive {
		padding: 0 0 0 0;
	}

	#archive #pageHeader {
		padding: 0 0 5.333vw;
	}

	#archive #pageHeader .visualFlex {
		padding: 0;
	}

	#archive #pageHeader .inner {
		padding: 0;
	}

	#archive #pageHeader .visualFlex .image {
		width: 77%;
		margin: 0 auto 5.333vw auto;
	}

	#archiveConts {
		padding: 10.667vw 0;
	}

	#archiveConts .newsLists {
		justify-content: space-between;
	}

	#archiveConts .newsLists .newsBox:nth-child(1) .image,
	#archiveConts .newsLists .newsBox:nth-child(1) .nonImage {
		height: 40vw;
	}

	#archiveConts .newsLists .newsBox .date {
		font-size: 3.2vw;
	}

	#archiveConts .newsLists .newsBox .listTitle {
		font-size: 3.2vw;
	}

	#archiveConts .newsLists .newsBox:nth-child(1) {
		margin: 0 0 8vw;
	}

	#archiveConts .newsLists .newsBox {
		width: 48%;
		margin: 0 0 8vw;
	}

	#archiveConts .newsLists .newsBox .image {
		height: 20.355vw;
	}

	/*---------------------------------
	 single
	---------------------------------*/

	#single {
		padding: 0 0 0 0;
	}

	#single #pageHeader {
		padding: 0 0 5.333vw;
	}

	#single #pageHeader .visualFlex {
		padding: 0;
	}

	#single #pageHeader .inner {
		padding: 0;
	}

	#single #pageHeader .visualFlex .image {
		width: 77%;
		margin: 0 0 5.333vw auto;
	}

	#single #pageHeader .visualFlex .visual-head b {
		font-size: 5.467vw;
		text-align: center;
	}

	#single #pageHeader .visualFlex .visual-head small {
		font-size: 3.467vw;
		text-align: center;
	}

	#pageConts.single-post {
		padding: 10.667vw 0 32vw;
	}

	#single .single-post .single-head {
		margin: 0 0 5.333vw;
		padding: 0;
	}

	#single .single-post .post-date {
		font-size: 3.2vw;
	}

	#single .single-post .single-head h1 {
		font-size: 4.8vw;
		line-height: 2;
	}

	#single .single-post .single-head h2 {
		font-size: 4.8vw;
		line-height: 2;
	}

	#single .single-post h3 {
		font-size: 4.267vw;
		margin: 10.667vw 0 5.333vw;
		padding: 0 0 0 8.8vw;
	}

	#single .single-post h3:before {
		width: 5.6vw;
		height: 0.8vw;
	}

	#single .single-post .single-conts p {
		font-size: 3.467vw;
		margin: 0 0 6.667vw;
	}

	#single .single-post table {
		width: 100%;
	}


	#single .single-post table tr:first-child td {
		font-size: 3.2vw;
	}

	#single .single-post table tr:nth-child(n + 2) td:first-child {
		font-size: 3.2vw;
		padding: 1.867vw 0;
	}

	#single .single-post .wp-block-table {
		margin: 6.667vw 0 8vw 0;
	}

	#single .single-post ul li,
	#single .single-post ol li {
		font-size: 3.467vw;
		line-height: 1.8;
	}

	#single .single-post ul li:before {
		width: 2.133vw;
		height: 2.133vw;
		left: 2.133vw;
		top: 1.867vw;
	}

	#single .single-post .single-conts {
		margin: 0 0 16vw;
	}

	#single .single-post .prev-nav a .text,
	#single .single-post .next-nav a .text {
		font-size: 3.2vw;
	}

	/*---------------------------------
	 wp-pagenavi
	---------------------------------*/

	.wp-pagenavi {
		font-size: 3.733vw;
	}

	.wp-pagenavi .current {
		width: 10.667vw;
    line-height: 10.133vw;
		margin: 0 1.333vw;
	}

	.wp-pagenavi a.page {
		width: 10.667vw;
    line-height: 10.133vw;
		margin: 0 1.333vw;
	}

	.wp-pagenavi a.nextpostslink,
	.wp-pagenavi a.previouspostslink {
		width: 10.667vw;
    line-height: 10.133vw;
	}

	/*---------------------------------
	 toc_container
	---------------------------------*/
	#toc_container {
		margin: 26.667vw calc(50% - 50vw) 5.637vw;
		padding: 14.667vw calc(50vw - 50%) 3.148vw;
		width: 100vw;
	}

	#toc_container .toc_title {
		font-size: 1.903vw;
		width: 8.931vw;
		white-space: nowrap;
	}

	#toc_container .toc_title:before {
		width: 12.517vw;
		height: 12.37vw;
	}

	#toc_container .toc_list {
		width: calc(100% - 13.909vw);
	}

	#toc_container .toc_list li a {
		font-size: 1.464vw;
		margin: 0 0 0.878vw;
	}

	#toc_container .toc_list li a .toc_number {
		font-size: 1.757vw;
		margin: 0 0.878vw 0 0;
		-webkit-transform: translateY(-0.146vw);
		transform: translateY(-0.146vw);
	}
}

/*----------------------------------------------------
 SP Max 320
----------------------------------------------------*/


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


}



.imgr {
	display: block;
	max-width: 100%;
	height: auto;
}
.m0a {margin: 0 auto;}



/*----------------------------------------------------
　ショップリスト
----------------------------------------------------*/

#shop_list .shop_modal_bg {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, .6);
    opacity: 0;
    transition: opacity .15s linear;
    z-index: -100;
}

#shop_list .shop_modal_bg.js-active {
    opacity: 1;
    z-index: 1001;
}

#shop_list .shop_modal_inner {
    position: fixed;
    box-sizing: border-box;
    margin: 0 auto;
    width: 600px;
    max-width: 100%;
    background: #fff;
    opacity: 0;
    transition: .3s linear;
    transition-property: opacity, transform;
    border-radius: 8px;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    padding-block: 30px;
    pointer-events: none;
    animation: modalSlideOut .3s cubic-bezier(0, 0, 0.2, 1);
}
#shop_list .shop_modal_inner.js-active {
    pointer-events: all;
    transform: none;
    opacity: 1;
    z-index: 1001;
    animation: modalSlideIn .3s cubic-bezier(0, 0, 0.2, 1);
}

#shop_list .shop_modal_header {
    margin-bottom: 24px;
}

#shop_list .shop_modal_close {
    margin: 0;
    border: none;
    border-radius: 0;
    overflow: visible;
    font: inherit;
    color: inherit;
    text-transform: none;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    display: inline-block;
    fill: currentcolor;
    line-height: 0;
    color: #999;
    transition: .1s ease-in-out;
    transition-property: color, opacity;
    cursor: pointer;
    position: absolute;
    top: 14px;
    right: 14px;
    stroke: currentcolor;
}
#shop_list .shop_modal_close svg {
    color: #000000;
    width: 20px;
    height: 20px;
}

#shop_list .shop_modal_close [stroke*="#"] {
    stroke: currentcolor;
    stroke-width: 1.3;
}

#shop_list .shop_modal_title {
    padding-inline: 24px;
    font-size: 20px;
    text-align: center;
    font-weight: 700;
    line-height: 1.5;
    color: #1b1b1b;
}

#shop_list .shop_modal_content {
    padding-inline: 24px;
    margin-bottom: 24px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 8px;
    grid-row-gap: 12px;
}
#shop_list .shop_modal_link:nth-child(1) {
    grid-area: 1 / 1 / 2 / 2; 
}
#shop_list .shop_modal_link:nth-child(2) {
    grid-area: 1 / 2 / 2 / 3;
}
#shop_list .shop_modal_link:nth-child(3) {
    grid-area: 2 / 1 / 3 / 2; 
}
#shop_list .shop_modal_link:nth-child(4) {
    grid-area: 2 / 2 / 3 / 3; 
}

#shop_list .shop_modal_link {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    box-sizing: border-box;
    border: 1px solid #000;
    border-radius: 40px;
    background: #000;
    color: #fff;
    font-weight: bold;
    transition: .3s ease-in-out;
    padding: 12px 36px;
    font-size: 16px;
}   
#shop_list .shop_modal_link:hover {
    color: #000;
    background: #fff;
}

@media screen and (max-width: 768px) {
    #shop_list .shop_modal_inner {
        width: min(450px, 94vw);
    }
    #shop_list .shop_modal_content {
        display: flex;
        flex-direction: column;
        column-gap: 12px;
    }
    #shop_list .shop_modal_link {
        padding: 12px 24px;
        font-size: 14px;
    }
}

#shop_list .material-symbols-outlined {
    font-family: 'Material Symbols Outlined';
    font-size: 22px;
    display: inline-block;
}
    
#shop_list .material-symbols-outlined::before {
    content: attr(data-icon);
}

#shop_list .shop_modal_description {
    padding: 0 24px;
    font-size: 13px;
    color: #1b1b1b;
    line-height: 1.5;
}

@keyframes modalSlideIn {
    0% {
        transform: translateY(15%);
    }
    100% {
        transform: translateY(0);
    }
}
@keyframes modalSlideOut {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-15%);
    }
}