/*
Theme Name: nini
Text Domain: nini
Version: 1.0
Requires at least: 4.7
Requires PHP: 5.2.4
Description: Theme for nini.bio.
Tags: blog, one-column
Author: nini Co., Ltd.
Author URI: https://nini.bio/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/
@font-face {
	font-family: 'niniicon';
	src: url('fonts/niniicon.eot?opg7co');
	src: url('fonts/niniicon.eot?opg7co#iefix') format('embedded-opentype'),
		url('fonts/niniicon.ttf?opg7co') format('truetype'),
		url('fonts/niniicon.woff?opg7co') format('woff'),
		url('fonts/niniicon.svg?opg7co#niniicon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

[class^="ni-"],
[class*=" ni-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'niniicon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.ni-envelope:before {
	content: "\e900";
}

.ni-user:before {
	content: "\e901";
}

.ni-twitter:before {
	content: "\e902";
}

.ni-facebook:before {
	content: "\e903";
}

.ni-line:before {
	content: "\e904";
}

.ni-chevron-up:before {
	content: "\e905";
}

.ni-chevron-down:before {
	content: "\e906";
}

.ni-chevron-right:before {
	content: "\e907";
}

.ni-chevron-left:before {
	content: "\e908";
}

.ni-bars:before {
	content: "\e909";
}

.ni-play3:before {
	content: "\ea1c";
}

.ni-instagram:before {
	content: "\ea92";
}

#wpadminbar {
	top: auto !important;
	bottom: 0;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5 {
	font-family: "Jost*", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	letter-spacing: 0.06em;
	margin-top: 1em;
	margin-bottom: 1em;
}

p,
th,
td,
dt,
dd,
li {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	/*font-family: "Sawarabi Gothic";*/
}

h1,
.h1 {
	font-size: 28px;
	font-weight: 400;
}

h2,
.h2 {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 24px;
	font-weight: 200;
}

h3,
.h3 {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 18px;
	font-weight: 600;
}

h4,
.h4 {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 16px;
	font-weight: 600;
}

h5,
.h5 {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 14px;
	font-weight: 600;
}

p,
dt,
dd,
th,
td,
label {
	font-weight: normal;
	font-size: 13px;
}

th {
	white-space: nowrap;
}

p:empty {
	display: none;
}

.font-weight-bold {
	font-weight: 600 !important;
}

.font-price {
	font-family: "Helvetica Neue", Helvetica, Arial !important;
}

img {
	image-rendering: -webkit-optimize-contrast;
	max-width: 100%;
	height: auto;
}

.img-fluid {
	backface-visibility: hidden;
}

.rounded {
	border-radius: 8px !important;
	overflow: hidden;
}

a:hover img {
	opacity: .7;
}

a img {
	transition: opacity .3s ease-out;
}

main img[loading="lazy"] {
	opacity: 0;
	transition: opacity 700ms ease-in-out;
}

main img[loading="lazy"].loaded {
	opacity: 1;
	transition: opacity .3s ease-out;
}

main a:hover img[loading="lazy"].loaded {
	opacity: .7;
}

.wp-block-image img {
	height: auto;
}

.breadcrumb>li.breadcrumb-item {
	font-size: 13px;
}

.breadcrumb>li.breadcrumb-item+li.breadcrumb-item:before {
	content: ">";
}

@media(max-width:559px) {
	.breadcrumb {
		overflow: scroll;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
		display: block;
	}

	.breadcrumb>li.breadcrumb-item {
		display: inline-block;
	}
}

#page-top {
	position: fixed;
	font-size: 77%;
	z-index: 2147483647;
}

@media screen and (max-width: 559px) {
	#page-top {
		bottom: 0px;
		right: 10px;
	}
}

@media screen and (min-width: 768px) {
	#page-top {
		bottom: 30px;
		right: 50px;
	}
}

#page-top a {
	background: #666;
	text-decoration: none;
	color: #fff;
	padding: 20px 0;
	text-align: center;
	display: block;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	font-size: 20px;
	line-height: 20px;
	background-color: rgba(0, 0, 0, 0.3);
}

header {
	background: rgba(255, 255, 255, 0.9);
}

#header-tool {
	position: absolute;
	right: -5px;
	letter-spacing: 0.05rem;
}

@media (max-width: 559px) {
	#header-tool {
		right: 70px;
		top: 10px;
	}
}

@media (max-width: 959px) {
	#header-tool {
		right: 70px;
	}
}

#header-tool small {
	font-size: 13px;
	font-family: "Jost*";
}

#header-logo {
	height: 38px;
}

@media (max-width: 559px) {
	#header-logo {
		width: 50px;
		height: auto;
	}
}

@media (min-width: 768px) {
	header .container {
		max-width: 900px !important;
	}
}

.navbar-brand {
	font-family: "Jost*";
	font-weight: bold;
	font-size: 24px;
	line-height: 24px;
	padding-top: 0px;
	padding-bottom: 8px;
}

.navbar-light .navbar-toggler-icon {
	background: none;
}

.navbar li,
.navbar li .dropdown-item {
	font-family: "Jost*", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-weight: 300;
	letter-spacing: 0.095rem;
	font-size: 15px;
}

.navbar-light .navbar-nav .nav-link {
	color: black;
}

@media (min-width: 768px) {
	.navbar-light .navbar-nav .nav-link {
		padding: 0;
	}
}

.navbar-toggler {
	border: none;
}

.navbar-collapse {
	margin-bottom: 0px !important;
}

.nav-item .subcaption {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 13px;
	display: inline-block;
}

.nav-item .subcaption:before {
	white-space: pre-wrap;
	content: " - ";
}

@media (min-width: 768px) {
	.nav-item .subcaption {
		font-size: 10px;
		display: block;
	}

	.nav-item .subcaption:before {
		content: '';
	}
}

.dropdown-menu {
	border-radius: 0;
}

.dropdown .dropdown-menu {
	animation-name: dropdownfade;
	animation-duration: 0.5s;
}

@keyframes dropdownfade {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.dropdown>.dropdown-toggle::after {
	border: none;
	width: 0px;
	font-size: 0px;
}


@media (min-width: 768px) {
	.dropdown-menu {
		padding-top: 0;
		padding-bottom: 0;
		top: 60%;
	}

	.dropdown-menu li:first-child a {
		padding-top: 8px;
	}

	.dropdown-menu li:last-child a {
		padding-bottom: 8px;
	}

	.dropdown:hover>.dropdown-menu {
		display: block;
	}

	.dropdown>.dropdown-toggle:active {
		pointer-events: none;
	}
}

main li {
	font-size: 13px;
	margin-bottom: 1em;
}

main li li {
	margin-bottom: 0;
}

main li li:last-child {
	margin-bottom: 1em;
}

.nav-tabs .nav-item a.active {
	font-weight: bold;
}

@media(max-width:768px) {
	.carousel {
		margin-left: -15px;
		margin-right: -15px;
	}
}

#pictures-carousel .carousel-control-prev,
#pictures-carousel .carousel-control-next {
	width: 9.5%;
	top: 33%;
	bottom: auto;
}

#nini-slide .carousel-item {
	height: 80vw;
}

@media (min-width: 1399px) {
	#nini-slide .carousel-item {
		height: 45vw;
	}
}

.carousel-item a:hover {
	text-decoration: none;
}

.carousel-caption {
	top: 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	right: 15px;
	left: 15px;
}

.carousel-caption h1 {
	font-size: 36px;
	font-weight: normal;
	font-family: 'EB Garamond' !important;
}

.carousel-caption h2 {
	font-size: 16px;
}

.carousel-caption p {
	line-height: 2;
	font-size: 16px;
	letter-spacing: 0.07em;
}

@media(max-width:768px) {
	.carousel-caption h1 {
		font-size: 24px;
	}

	.carousel-caption p {
		line-height: 1.6;
		font-size: 11px;
	}
}

#pictures-carousel .carousel-indicators {
	margin: 10px auto;
	overflow: auto;
	position: static;
	text-align: left;
	white-space: nowrap;
	display: flex;
	justify-content: center;
}

#pictures-carousel .carousel-indicators li {
	background-color: transparent;
	-webkit-border-radius: 0;
	border-radius: 0;
	display: inline-block;
	height: auto;
	margin: 0 !important;
	width: auto;
	border-bottom-width: 0px;
}

#pictures-carousel .carousel-indicators li img {
	display: block;
	opacity: 0.5;
}

#pictures-carousel .carousel-indicators li.active img {
	opacity: 1;
}

#pictures-carousel .carousel-indicators li:hover img {
	opacity: 0.75;
}

#pictures-carousel .carousel-outer {
	position: relative;
}

.product-name {
	font-family: Georgia, "Times New Roman", Times, "serif";
	font-size: 14px;
}

h1.product-name {
	font-size: 22px;
}

.product-list-column a {
	overflow: hidden;
}

/*@media(min-width:768px) {
    .product-list-column img[alt*="Herb Bath Salt"] {
        margin-top:-16px;
        margin-bottom: 22px;
    }

    .product-list-column img[alt*="Aroma Salt Scrub"] {
        margin-top:-54px;
        margin-bottom:6px;
    }

    .product-list-column img[alt*="Omega Beauty"] {
        margin-top:-49px;
        margin-bottom:10px;
    }

    .product-list-column img[alt*="Baneh Oil"] {
        margin-top:-30px;
        margin-bottom:12px;
    }

    .product-list-column img[alt*="Serum Balm"] {
        margin-top:-30px;
        margin-bottom:12px;
    }

    .product-list-column img[alt*="Baneh Savon"] {
        margin-top:-30px;
        margin-bottom:12px;
    }
}*/

.product-list-summary {
	font-size: 12px;
}

.product-variation-select .dropdown-toggle,
.product-variation-select .dropdown-item {
	min-height: 44px;
}

.product-variation-select .dropdown-toggle:after {
	content: none;
}

.product-variation-select .dropdown-menu {
	width: 100%;
}

.product-variation-select .dropdown-item:active {
	background-color: black;
}

@media(max-width:559px) {
	figure.image-touch-scrolling {
		overflow: scroll;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
		margin-right: -15px;
	}

	figure.image-touch-scrolling img {
		max-width: none !important;
	}

	.slim-content>figure,
	.slim-content>.row>.col-12>figure {
		margin-right: -15px;
		margin-left: -15px;
	}
}

figcaption {
	font-size: 11px;
	text-align: center;
}

.shopify-buy__quantity {
	position: absolute;
	left: -9999px;
}

.shopify-buy__btn,
.shopify-subsc-buy__btn {
	background: #a42c3a;
	color: white;
	border: none;
	border-radius: 5px;
	transition: opacity .3s ease-out;
	letter-spacing: 0.1em;
	margin-top: 1rem;
	margin-bottom: 1rem;
	display: block;
	width: 100%;
	padding: 0.8rem 1rem;
	font-size: 1.5rem;
	line-height: 1.6;
	text-align: center;
	user-select: none;
}

.shopify-buy__btn small,
.shopify-subsc-buy__btn small {
	font-size: 13px;
	display: block;
	letter-spacing: 0.05em;
}

.shopify-buy__btn:hover,
.shopify-subsc-buy__btn:hover {
	color: white;
	background: #b65661;
	text-decoration: none;
}

.shopify-subsc-buy__btn.disabled,
.shopify-subsc-buy__btn.disabled:hover {
	background: white;
	color: #a42c3a;
	border: 2px solid #a42c3a;
	opacity: 1;
}

.shopify-buy__btn {
	background-color: #916b72;
	font-size: 18px;
}

.shopify-buy__btn:hover {
	background-color: #a08086;
}

.shopify-buy__btn.disabled,
.shopify-buy__btn:disabled:hover {
	font-size: 18px;
	color: #a08086;
	border: 2px solid #a08086;
	background: white;
	opacity: 1;
}

.shopify-discount-buy__btn {
	font-size: 1.5rem;
	background: white;
	color: #a42c3a;
	border: 2px solid #a42c3a;
}

.shopify-discount-buy__btn:hover {
	color: white;
	background: #b65661;
	text-decoration: none;
}

.shopify-discount-buy__btn small {
	color: gray;
}

.shopify-discount-buy__btn:hover small {
	color: lightgray;
}

.order_num_minus,
.order_num_plus,
.subsc_order_num_minus,
.subsc_order_num_plus {
	transition: background-color .3s ease-out;
}

.order_num_minus:hover,
.order_num_plus:hover,
.subsc_order_num_minus:hover,
.subsc_order_num_plus:hover {
	text-decoration: none;
	background-color: #EFEFEF;
}

.cartjs_box {
	position: absolute;
	top: -9999px;
}

#product-detail h2 {
	font-family: "Lucida Sans Unicode", "Lucida Grande", "sans-serif";
	font-size: 18px;
	text-align: center;
	border: 1px solid #CCC;
	padding: .4em 2em;
	display: block;
	max-width: 200px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 72px;
	margin-bottom: 72px;
}

#product-detail h3 {
	font-size: 24px;
	font-weight: 500;
	margin-top: 27px;
	margin-bottom: 27px;
}

#product-detail h4 {
	font-weight: 500;
	margin-top: 27px;
	margin-bottom: 27px;
}

#product-seibun {
	margin-top: 72px;
	margin-bottom: 72px;
}

#product-detail .product-list-column h3.product-name {
	font-size: 14px;
	font-weight: 300;
}

[data-toggle="collapse"] .ni-chevron-down {
	transform: rotate(-180deg);
	transition: all linear 0.1s;
}

[data-toggle="collapse"].collapsed .ni-chevron-down {
	transform: rotate(0deg);
}

div.buy-area li.nav-item {
	font-size: 18px;
}

/**
 * FAQ
 */
/*.faq {
	padding-left: 30px;
}
.faq > *:first-child {
	margin-top: -24px;
}
.faq::before {
	font-family: "Jost*";
	color: #CCC;
	font-size: 24px;
	margin-left: -30px;
}
.faq-question::before {
	content: 'Q.';
}
.faq-answer::before {
	content: 'A.';
}*/
.faq-list li:before {
	content: '・';
}

.faq-answer {
	font-weight: bold;
}

.faq-answer * {
	font-weight: inherit;
}

footer {
	background: linear-gradient(to bottom, #d12d2e, #d12d2e);
}

#footer-tool {
	background-color: #ab553a;
}

#footer-tool .sns-list .ni {
	font-size: 32px;
}

#footer-menu li {
	font-size: 14px;
}

#footer-menu li li {
	font-size: 13px;
}

#footer-menu li li::before {
	content: '>';
	font-size: 13px;
}

.footer-banner a:hover {
	text-decoration: none;
}

.footer-banner .logo {
	margin-top: 1.5vw;
}

.footer-banner .logo img {
	width: 3vw;
}

.footer-banner .title {
	font-size: 1vw;
}

.footer-banner .exp {
	font-size: 0.8vw;
}

@media(max-width:559px) {
	.footer-banner .logo {
		margin-top: 5vw;
	}

	.footer-banner .logo img {
		width: 15vw;
	}

	.footer-banner .title {
		font-size: 6vw;
	}

	.footer-banner .exp {
		font-size: 5vw;
	}
}

@media(max-width:559px) {
	#footer-menu li {
		font-size: 16px;
	}

	#footer-menu li li {
		font-size: 14px;
	}

	#footer-menu li li::before {
		content: '>';
		font-size: 14px;
	}
}

.banner-pomegranate-material .main-text {
	font-size: 36px;
}

.banner-pomegranate-material .sub-text {
	font-size: 16px;
}

@media(max-width:559px) {
	.banner-pomegranate-material .main-text {
		font-size: 24px;
	}

	.banner-pomegranate-material .sub-text {
		font-size: 16px;
	}
}

.content-banner a:hover {
	text-decoration: none;
}

.content-banner .logo {
	margin-top: 1.5vw;
}

.content-banner .logo img {
	width: 3.5vw;
}

.content-banner .title {
	font-size: 1.5vw;
}

.content-banner .exp {
	font-size: 1vw;
}

@media(max-width:559px) {
	.content-banner {
		margin-right: -15px;
		margin-left: -15px;
	}

	.content-banner .logo {
		margin-top: 5vw;
	}

	.content-banner .logo img {
		width: 15vw;
	}

	.content-banner .title {
		font-size: 6vw;
	}

	.content-banner .exp {
		font-size: 5vw;
	}
}

.content-bottom-banner-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.content-bottom-banner .logo img {
	width: 3.5vw;
}

@media(max-width:559px) {
	.content-bottom-banner .logo img {
		width: 15vw;
	}
}

/**
 * Utility
 */
.wide-content {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

.slim-content {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width:559px) {
	.wide-content {
		max-width: 720px;
		margin-left: auto;
		margin-right: auto;
	}

	.slim-content {
		max-width: 720px;
		margin-left: auto;
		margin-right: auto;
	}
}

.tooltip {
	font-size: 13px;
}

/**
 * Text
 */
.text-sharp {
	font-family: "Jost*" !important;
}

.text-serif {
	font-family: 'EB Garamond', Georgia, "Times New Roman", Times, "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.text-sans-serif {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

.text-vw-large {
	font-size: 4vw;
}

.text-vw-medium {
	font-size: 2.5vw;
}

.text-vw-small {
	font-size: 1.5vw;
}

.text-notes {
	color: #6c757d !important;
	font-size: 10px;
}

.text-ol-black {
	text-shadow: 1px 1px 1px #000,
		-1px 1px 1px #000,
		1px -1px 1px #000,
		-1px -1px 1px #000;
}

.text-ol-black-50 {
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5),
		-1px 1px 1px rgba(0, 0, 0, 0.5),
		1px -1px 1px rgba(0, 0, 0, 0.5),
		-1px -1px 1px rgba(0, 0, 0, 0.5);
}

.text-ol-black-25 {
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.25),
		-1px 1px 1px rgba(0, 0, 0, 0.25),
		1px -1px 1px rgba(0, 0, 0, 0.25),
		-1px -1px 1px rgba(0, 0, 0, 0.25);
}

.text-ol-black-10 {
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1),
		-1px 1px 1px rgba(0, 0, 0, 0.1),
		1px -1px 1px rgba(0, 0, 0, 0.1),
		-1px -1px 1px rgba(0, 0, 0, 0.1);
}

.text-ol-white {
	text-shadow: 1px 1px 1px #FFF,
		-1px 1px 1px #FFF,
		1px -1px 1px #FFF,
		-1px -1px 1px #FFF;
}

.text-ol-white-50 {
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5),
		-1px 1px 1px rgba(255, 255, 255, 0.5),
		1px -1px 1px rgba(255, 255, 255, 0.5),
		-1px -1px 1px rgba(255, 255, 255, 0.5);
}

.text-ol-white-25 {
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.25),
		-1px 1px 1px rgba(255, 255, 255, 0.25),
		1px -1px 1px rgba(255, 255, 255, 0.25),
		-1px -1px 1px rgba(255, 255, 255, 0.25);
}

.text-ol-white-10 {
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.1),
		-1px 1px 1px rgba(255, 255, 255, 0.1),
		1px -1px 1px rgba(255, 255, 255, 0.1),
		-1px -1px 1px rgba(255, 255, 255, 0.1);
}

@media (max-width:559px) {
	.text-vw-large {
		font-size: 5vw;
	}

	.text-vw-medium {
		font-size: 3.5vw;
	}

	.text-vw-small {
		font-size: 3vw;
	}
}

/**
 * Text side border
 */
.s1 {
	/*font-size: 24px;*/
	font-family: "Jost*", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	display: flex;
	align-items: center;
}

.s1:before,
.s1:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #999;
	display: block;
}

.s1:before {
	margin-right: .6em;
}

.s1:after {
	margin-left: .6em;
}

/**
 * Background
 */
.bg-chemical {
	background-image: url(/wp-content/uploads/nini-chemical-bg.png);
	background-position: center;
	text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
	font-weight: 500;
	color: #333;
}

/**
 * badge
 */
.badge {
	padding: 0.4em 0.6em;
	letter-spacing: 0.08em;
	font-weight: 500;
}

.badge-container {
	position: absolute;
	display: flex;
	justify-content: flex-start;
	top: -20px;
	z-index: 100;
}

.badge-container .badge {
	display: inline-block;
	margin-left: 5px;
	font-weight: normal;
}

/**
 * button
 */

/**
 * GTranslate
 */
.skiptranslate {
	display: none;
}

#goog-gt-tt {
	display: none !important;
}

.goog-te-banner-frame {
	display: none !important;
}

.goog-te-menu-value:hover {
	text-decoration: none !important;
}

.goog-text-highlight {
	background-color: transparent !important;
	box-shadow: none !important;
}

body {
	top: 0 !important;
}

#google_translate_element2 {
	display: none !important;
}

a.glink {
	padding-bottom: 3px;
}

a.glink:hover,
html[lang="en"] a.glink[title="English"],
html[lang="auto"] a.glink[title="Japanese"],
html[lang="ja"] a.glink[title="Japanese"] {
	color: #343a40 !important;
	text-decoration: none;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #343a40;
}

/**
 * Product Reviews
 */
.yotpo-base-layout {
	width: 100% !important;
}

.yotpo-head {
	margin: 0px !important;
}

.yotpo-reviews-wrapper {
	display: none;
}

.yotpo-headline {
	font-weight: inherit !important;
	font-style: inherit !important;
}

.yotpo-review-title,
.yotpo-read-more-text,
.yotpo-comment-content,
.yotpo-reviewer-name,
.yotpo-review-date,
.yotpo-review-votes-text {
	font-size: 13px !important;
}

#product-detail h3.yotpo-review-title {
	margin-top: 5px;
	margin-bottom: 0px;
	font-weight: bold;
}

.yotpo-btn-s {
	font-weight: normal !important;
	font-size: 13px !important;
	border-radius: 0px !important;
}

/**
 * YTPlayer
 */
#ytplayer {
	position: relative;
	width: 100%;
	height: 49vw;
}

@media (min-width: 1399px) {
	#ytplayer {
		position: relative;
		width: 100%;
		height: 49vw;
	}
}

/**
 * Google Map
 */
.googlemap-container {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 75%;
	/* 比率を4:3に固定 */
}

.googlemap-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#campaign-footer {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 89;
	color: white;
}

@media (max-width: 991px) {
	#campaign-footer {
		align-items: start;
	}
}

/**
 * Ver.2
 */
#product-summary *,
.product-name {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

ol.breadcrumb {
	background-color: transparent !important;
}

ol.breadcrumb li.breadcrumb-item {
	font-family: "Jost*", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 14px;
}

#product-eyecatch {
	margin-top: -40px;
	z-index: -1;
	position: relative;
}

@media screen and (min-width:768px) {
	#product-eyecatch {
		margin-top: -72px;
	}
}

#product-eyecatch img {
	width: 100%;
	max-width: auto;
}

#product-summary p,
#product-summary dt,
#product-summary dd,
#product-summary th,
#product-summary td,
#product-summary label {
	font-size: 1rem;
}

a.to-review-area {
	text-decoration: underline;
	text-underline-offset: 5px;
}

.subsc-price-area {
	position: relative;
}

.subsc-before-price {
	font-size: 29px;
	display: inline-block;
}

.subsc-before-price-suffix {
	letter-spacing: 0.1em;
}

.subsc-after-price {
	font-size: 55px;
	display: inline-block;
	line-height: 1;
}

.subsc-after-price-suffix {
	letter-spacing: 0.1em;
}

.subsc-price-off {
	position: relative;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 0 5px;
	width: 90px;
	height: 90px;
	line-height: 90px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	border: 1px solid #a42c3a;
	border-radius: 50%;
	box-sizing: border-box;
}

.subsc-price-off:before {
	content: "";
	position: absolute;
	bottom: -8px;
	right: -8px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #a42c3a;
	z-index: 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.discount-badge {
	background-image: url(/wp-content/uploads/discount-badge-frame.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 6px;
	left: 160px;
}

.discount-badge-body {
	font-size: 14px;
	text-align: center;
	line-height: 1;
}

.discount-badge-rate {
	font-size: 21px;
	display: inline-block;
	margin-right: 2px;
}

.badge-danger-light {
	color: white;
	background: #916b72;
}

.std-price {
	font-size: 29px;
	display: inline-block;
}

.price-unit {
	display: inline-block;
}

/* 原料ページバナー */
.material-banner {
	position: relative;
	width: 100%;
	min-height: 420px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background-color: #fff;
	/* 画像透過時のベース背景 */
}

/* 背景画像は疑似要素で表示し、画像のみ透明度を下げる
   （テキストには影響を与えない） */
.material-banner::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: var(--banner-image);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: var(--banner-opacity, 0.6);
	/* アイキャッチ画像の透明度（ページごとにACF banner_opacity で指定） */
	z-index: 0;
}

.material-banner__overlay {
	position: relative;
	width: 100%;
	padding: 60px 0;
	z-index: 1;
	/* 画像より前面にテキストを表示 */
}

.material-banner__inner {
	color: #222;
	/* ダークテキスト */
}

.material-banner--white .material-banner__inner {
	color: #fff;
}

.material-banner__title-en {
	font-size: 3.5rem;
	letter-spacing: 0.05em;
	margin: 0 0 0.5rem;
	text-transform: capitalize;
	line-height: 1.2;
}

.material-banner__title-ja {
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0.15em;
	margin: 0;
	opacity: 0.95;
}

/* バナーテキストの視認性確保（どのような背景でも読みやすくする） */

.material-banner__title-en,
.material-banner__title-ja {
	text-shadow: 0 0 4px rgba(255, 255, 255, 0.9);
}

.material-banner--white .material-banner__title-en,
.material-banner--white .material-banner__title-ja {
	text-shadow: 0 0 4px rgba(0, 0, 0, 0.9);
}

.material-page__content {
	padding-top: 60px;
	padding-bottom: 60px;
}

/* レスポンシブ対応 */
@media (max-width: 991.98px) {
	.material-banner {
		min-height: 320px;
	}

	.material-banner__title-en {
		font-size: 2.75rem;
	}

	.material-banner__title-ja {
		font-size: 1.125rem;
	}
}

@media (max-width: 575.98px) {
	.material-banner {
		min-height: 240px;
	}

	.material-banner__overlay {
		padding: 40px 0;
	}

	.material-banner__title-en {
		font-size: 2rem;
	}

	.material-banner__title-ja {
		font-size: 1rem;
		letter-spacing: 0.1em;
	}
}
