@charset "UTF-8";

/*
Theme Name: フラワーライフ
Theme URI:
Author: BuiltFunc
Author URI: https://builtfunc.com/
Description:フラワーライフ用テーマ
Version: 0.1
*/

/* フォント関連 */
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,700');
body {
	font-family: "游ゴシック体", YuGothic, "Yu Gothic Medium",  -apple-system, BlinkMacSystemFont, Roboto, sans-serif;
	font-feature-settings: "pkna" 1;
}
h1, h2, h3, h4, h5, h6, strong {
	font-weight: 700;
}


/* 初期値 */
* {
	backface-visibility: hidden;
}
body {
	font-feature-settings: "palt";
	letter-spacing: 0.08em;
	font-size: 1.5rem;
	line-height: 1.75;
	opacity: 0;
	-webkit-transition: all 800ms linear;
	transition        : all 800ms linear;
	color: #231815;
}
body.load-complete {
	opacity: 1 !important;
}
a {
	color: #231815;
}
#main {
	overflow: hidden;
}
#mainWrap {
	display: flex;
	flex-flow: column;
	min-height: 100vh;
}
body.admin-bar #mainWrap {
	min-height: -webkit-calc(100vh - 32px);
	min-height:         calc(100vh - 32px);
}
footer {
	margin-top: auto;
}
.show-box {
	max-width: 1048px;
	padding: 0 12px;
	margin: 0 auto;
}
.show-box.single {
	position: relative;
	max-width: 824px;
}
.show-box.mini {
	max-width: 788px;
}
.medium-box {
	max-width: 100%;
	width: 850px;
	margin: 0 auto;
}
.small-box {
	max-width: 100%;
	width: 630px;
	margin: 0 auto;
}


/* エレメントリスト 背景色 */
.background-color-FFFFE7 {
	background-color: #FFFFE7;
}
.background-color-FFE4D3 {
	background-color: #FFE4D3;
}


/* エレメントリスト 下層キービジュアル */
#lower-page-keyvisual {
	position: relative;
	height: 533px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
#lower-page-keyvisual .show-box {
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: 100%;
	padding-top: 85px;
	-webkit-transform: translate(-50%,0);
	transform        : translate(-50%,0);
}
#lower-page-keyvisual .flex {
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
#lower-page-keyvisual .title ,
#lower-page-keyvisual h1 {
	display: inline-flex;
	align-items: center;
	height: 67px;
	min-height: 67px;
	min-width: 420px;
	background-color: #539535;
	color: #fff;
	margin-bottom: 20px;
}
#lower-page-keyvisual .title span ,
#lower-page-keyvisual h1 span {
	width: 100%;
	font-size: 2.741rem;
}


/* エレメントリスト フォント関連 */
.color-539535 a ,
.color-539535 {
	color: #539535;
}
.color-1c7b01 a ,
.color-1c7b01 {
	color: #1c7b01;
}
.color-61b75c a ,
.color-61b75c {
	color: #61b75c;
}
.color-e00012 a ,
.color-e00012 {
	color: #e00012;
}


/* エレメントリスト 背景関連 */
.background-color-efffef {
	background-color: #efffef;
	padding-top: 1px;
	padding-bottom: 1px;
}
.background-color-ffe4d3 {
	background-color: #ffe4d3;
	padding-top: 1px;
	padding-bottom: 1px;
}


/* エレメントリスト ボタン */
form button ,
.button {
	position: relative;
	display: inline-flex !important;
	border-radius: 63px;
	align-items: center;
	min-width: 250px;
	width: auto !important;
	min-height: 63px !important;
	height: auto !important;
	color: #fff !important;
	cursor: pointer;
	letter-spacing: 0.2em;
	font-weight: bold;
	overflow: hidden;
	z-index: 0;
	padding: 1.166666666666667em 2.666666666666667em;
	border: none;
	font-size: 1.5rem !important;
	text-decoration: none !important;
}
form button:before ,
.button:before ,
form button:after ,
.button:after {
	content: '';
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background : -moz-linear-gradient(0% 50% 0deg,rgba(83, 149, 53, 1) 0%,rgba(63, 208, 135, 1) 100%);
	background : -webkit-linear-gradient(0deg, rgba(83, 149, 53, 1) 0%, rgba(63, 208, 135, 1) 100%);
	background : -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(83, 149, 53, 1) ),color-stop(1,rgba(63, 208, 135, 1) ));
	background : -o-linear-gradient(0deg, rgba(83, 149, 53, 1) 0%, rgba(63, 208, 135, 1) 100%);
	background : -ms-linear-gradient(0deg, rgba(83, 149, 53, 1) 0%, rgba(63, 208, 135, 1) 100%);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#539535', endColorstr='#3FD087' ,GradientType=0)";
	background : linear-gradient(90deg, rgba(83, 149, 53, 1) 0%, rgba(63, 208, 135, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#539535',endColorstr='#3FD087' , GradientType=1);
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
form button:after ,
.button:after {
	background: #007323;
	opacity: 0;
}
form button span ,
.button span {
	display: block !important;
	width: 100% !important;
}
.ua-pc form button:hover > * ,
.ua-pc .button:hover > * {
	opacity: 1;
}
.ua-pc form button:hover:after ,
.ua-pc .button:hover:after {
	opacity: 1;
}


/* エレメントリスト 見出し */
.caption01 {
	text-align: center;
	font-size: 1.883rem;
	padding: 3.6311736590547em 0 1.749269782262347em;
}
.caption01 .title {
	font-size: 164.630908125331917%;
	letter-spacing: 0.08em;
}
.caption01 .sub-title {
	margin-top: 0.318640467339352em;
	letter-spacing: normal;
}


/* エレメントリスト リストタイプ01 トップページ：Flower LIFEとは？ */
.list-type01 ul {
	margin: 30px 0 55px;
}
.list-type01 li:after ,
.list-type01 li {
	width: -webkit-calc((100% - 20px) / 2);
	width:         calc((100% - 20px) / 2);
}
.list-type01 li {
	margin-top: 20px;
}
.list-type01 li:after {
	content: '';
}
.list-type01 a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background-color: #efffdb;
	height: 100%;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type01 .thumbnail {
	width: 50%;
	height: 100%;
	overflow: hidden;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat
}
.list-type01 .thumbnail .image {
	padding-top: 85.7715255958615%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility        : hidden;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type01 .content {
	width: 50%;
	padding: 1.5em 1.333333333333333em 1.8em;
}
.list-type01 .title {
	font-size: 153.333333333333333%;
	letter-spacing: 0.1em;
}
.list-type01 .sub-title {
	font-size: 93.333333333333333%;
	letter-spacing: 0.2em;
	text-align: left;
}
.list-type01 .lead {
	margin-top: 0.6em;
	letter-spacing: normal;
}
.ua-pc .list-type01 a:hover {
	background-color: #dfefa6;
}
.ua-pc .list-type01 a:hover > * {
	opacity: 1;
}
.ua-pc .list-type01 a:hover .thumbnail .image {
	-webkit-transform: scale(1.1,1.1);
	transform        : scale(1.1,1.1);
}


/* エレメントリスト リストタイプ02 トップページ：商品のご案内 */
.list-type02 ul {
	margin: 30px 0 20px;
}
.list-type02 ul:after {
	content: '';
	width: -webkit-calc((100% - 40px) / 3);
	width:         calc((100% - 40px) / 3);
}
.list-type02 li {
	width: -webkit-calc((100% - 40px) / 3);
	width:         calc((100% - 40px) / 3);
	margin-bottom: 45px;
}
.list-type02 a {
	display: block;
}
.list-type02 .thumbnail {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	border: 10px solid #fff;
	overflow: hidden;
}
.list-type02 .thumbnail .image {
	padding-top: 87.908496732026144%;
	-webkit-backface-visibility: hidden;
	backface-visibility        : hidden;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type02 .content {
	padding: 0 10px;
}
.list-type02 .title {
	text-align: center;
	font-size: 2.3rem;
	margin: 0.625em 0 0.5em;
}
.list-type02 .lead {
	font-size: 1.6rem;
	line-height: 1.7;
}
.ua-pc .list-type02 a:hover > * {
	opacity: 1;
}
.ua-pc .list-type02 a:hover .thumbnail {
	border-color: #dfefa6;
}
.ua-pc .list-type02 a:hover .thumbnail .image {
	-webkit-transform: scale(1.1,1.1);
	transform        : scale(1.1,1.1);
}


/* エレメントリスト リストタイプ03 トップページ：お知らせ */
.list-type03 li {
	margin-bottom: 40px;
	width: -webkit-calc((100% - 40px) / 2);
	width:         calc((100% - 40px) / 2);
}
.list-type03 a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background-color: #ffffe7;
	height: 100%;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type03 a > * {
	width: 50%;
}
.list-type03 .thumbnail {
	height: 100%;
	overflow: hidden;
	background-color: #efffef;
}
.list-type03 .image {
	height: 100%;
	padding-top: 74.180327868852459%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	-webkit-backface-visibility: hidden;
	backface-visibility        : hidden;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type03 .image[style*="/common/no-image.svg"] {
	background-size: 127px 137px;
}
.list-type03 .content {
	padding: 1.333333333333333em;
	font-size: 1.7rem;
	line-height: 1.764705882352941;
}
.list-type03 .title {
	margin-top: 0.8em;
	font-weight: normal;
	height: 5.294117647058823em;
	overflow: hidden;
}
.ua-pc .list-type03 a:hover {
	background-color: #ffffbd;
}
.ua-pc .list-type03 a:hover > * {
	opacity: 1;
}
/*.ua-pc .list-type03 a:hover .thumbnail .image {
-webkit-transform: scale(1.1,1.1);
transform        : scale(1.1,1.1);
}*/


/* エレメントリスト リストタイプ04 トップページ：コラム */
.list-type04 ul {
	margin-bottom: 25px;
}
.list-type04 ul:after {
	content: '';
	width: -webkit-calc((100% - 40px) / 3);
	width:         calc((100% - 40px) / 3);
}
.list-type04 li {
	width: -webkit-calc((100% - 40px) / 3);
	width:         calc((100% - 40px) / 3);
	margin-bottom: 20px;
}
.list-type04 a {
	display: block;
	height: 100%;
	background-color: #fff;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type04 .thumbnail {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
	background-color: #efffef;
}
.list-type04 .image {
	padding-top: 69.696969696969697%;
}
.list-type04 .image[style*="/common/no-image.svg"] {
	background-size: 127px 137px;
}
.list-type04 .content {
	padding: 0.950980392156863em 1.333333333333333em;
	font-size: 1.7rem;
	line-height: 1.764705882352941;
}
.list-type04 .title {
	margin-top: 0.2em;
	font-weight: normal;
	overflow: hidden;
}
.ua-pc .list-type04 a:hover {
	background-color: #ffffd8;
}
.ua-pc .list-type04 a:hover > * {
	opacity: 1;
}


/* エレメントリスト リストタイプ05 固定ページ：商品のご案内 */
.list-type05 ul {
	margin: 20px 0 95px;
}
.list-type05 ul:after {
	content: '';
	width: -webkit-calc((100% - 30px) / 2);
	width:         calc((100% - 30px) / 2);
}
.list-type05 li {
	position: relative;
	width: -webkit-calc((100% - 30px) / 2);
	width:         calc((100% - 30px) / 2);
	padding-bottom: 110px;
}
.list-type05 li:nth-of-type(n + 3) {
	margin-top: 55px;
}
.list-type05 .thumbnail {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
}
.list-type05 .thumbnail .image {
	padding-top: 65%;
	-webkit-backface-visibility: hidden;
	backface-visibility        : hidden;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
.list-type05 .content {
	padding: 0 10px;
}
.list-type05 .title {
	text-align: center;
	font-size: 2.3rem;
	margin: 0.625em 0 0.5em;
}
.list-type05 .lead {
	font-size: 1.7rem;
	line-height: 1.882352941176471;
	padding: 0 1.470588235294118em;
	letter-spacing: normal;
}
.ua-pc .list-type05 .button-box {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}


/* エレメントリスト リストタイプ06 固定ページ：店舗のご案内 */
.list-type06 {
	margin-bottom: 85px;
}
.list-type06 .content + .title {
	margin-top: 80px;
}
.list-type06 .title {
	background-color: #dfffdf;
	color: #539535;
	text-align: center;
	font-size: 2.7rem;
	font-weight: bold;
	padding: 0.425925925925926em;
	margin-bottom: 1.666666666666667em;
}
.list-type06 .content-row01 .thumbnail {
	width: 61.03515625%;
}
.list-type06 .content-row01 .thumbnail .image {
	padding-top: 67.84%;
}
.list-type06 .content-row01 .info-box {
	width: 35.3515625%;
	font-size: 1.6rem;
	line-height: 1.875;
}
.list-type06 .content-row01 .info-box .tel {
	font-weight: bold;
	font-size: 131.25%;
	color: #539535;
}
.list-type06 .content-row01 .info-box .tel a {
	color: #539535;
}
.list-type06 .content-row01 .info-box .items figcaption {
	text-align: center;
	background-color: #dfffdf;
	color: #539535;
	padding: 0.1875em 0.425925925925926em;
	margin: 1em 0 0.8em;
}
.list-type06 .content-row01 .info-box .items li {
	position: relative;
	padding-left: 0.8em;
}
/*.list-type06 .content-row01 .info-box .items li:before {
	content: '▪️';
	position: absolute;
	left: 0;
}*/
.list-type06 .content-row01 .info-box .items li:before {
	content: '';
	width: 0.333333333333333em;
	height: 0.333333333333333em;
	background-color: #000;
	top: 0.9375em;
	position: absolute;
	left: 0;
	-webkit-transform: translate(0%,-50%);
	transform        : translate(0%,-50%);
}
.list-type06 .description-box {
	margin-top: 35px;
	border: 5px solid #dfffdf;
	border-radius: 20px;
	padding: 20px;
}
.list-type06 .description-box .description-thumbnail {
	width: 33.333333333333333%;
}
.list-type06 .description-box .description-thumbnail figcaption {
	color: #1c7b01;
	line-height: 2;
	margin-top: 0.4em;
}
.list-type06 .description-box .description-thumbnail + .description {
	width: 64.102564102564103%;
	font-size: 1.6rem;
}
.list-type06 .google-map {
	position: relative;
	margin-top: 35px;
}
.list-type06 .google-map:before {
	content: '';
	display: block;
	padding-top: 42.578125%;
}
.list-type06 .google-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* エレメントリスト リストタイプ06 固定ページ：ご注文方法 */
.list-type07 li {
	margin-bottom: 60px;
}
.list-type07 .flex-item01 {
	width: 45.80078125%;
}
.list-type07 .flex-item02 {
	width: -webkit-calc(54.19921875% - 30px);
	width:         calc(54.19921875% - 30px);
}
.list-type07 dt {
	font-weight: bold;
	font-size: 2rem;
	background-color: #dfffdf;
	padding: 0.65em 1em;
}
.list-type07 dd {
	margin-top: 1em;
	font-size: 1.6rem;
	line-height: 1.9375;
}


/* ヘッダー */
#main-header.menu-open .animation {
	background-color: rgba(255,255,255,0.8);
	border-color: rgba(83,149,53,0.8);
	visibility: visible;
	-webkit-transition: background-color 400ms linear, border-color 400ms linear, visibility 0ms linear;
	transition        : background-color 400ms linear, border-color 400ms linear, visibility 0ms linear;
}
#main-header .animation {
	position: fixed;
	z-index: 9;
	width: 100%;
	top: 0;
	height: 85px;
	visibility: hidden;
	background-color: rgba(255,255,255,0);
	border-bottom: 6px solid rgba(83,149,53,0);
	-webkit-transition: background-color 400ms linear, border-color 400ms linear, visibility 0ms linear 400ms;
	transition        : background-color 400ms linear, border-color 400ms linear, visibility 0ms linear 400ms;
}
.admin-bar #main-header .animation {
	top: 32px;
}
#main-header a {
	color: #000;
}
@media only screen and (max-width: 1028px){
	#main-header {
		font-size: 1.4591439688716vw;
	}
}


/* ヘッダーロゴ */
#main-header.menu-open .logo {
	opacity: 1;
	overflow: visible;
	visibility: visible;
	-webkit-transform: translate(0,-50%);
	transform        : translate(0,-50%);
	-webkit-transition: width 100ms linear 50ms, -webkit-transform 300ms linear 150ms, opacity 300ms linear 150ms, visibility 1ms linear;
	transition        : width 100ms linear 50ms,         transform 300ms linear 150ms, opacity 300ms linear 150ms, visibility 1ms linear;
}
#main-header .logo {
	position: absolute;
	z-index: 1;
	left: 0;
	top: 50%;
	margin: 0 0 0 30px;
	width: 168px;
	opacity: 0;
	overflow: hidden;
	visibility: hidden;
	-webkit-transform: translate(-100px,-50%);
	transform        : translate(-100px,-50%);
	-webkit-transition: width 100ms linear 300ms, -webkit-transform 300ms linear 50ms, opacity 300ms linear 50ms, visibility 1ms linear;
	transition        : width 100ms linear 300ms,         transform 300ms linear 50ms, opacity 300ms linear 50ms, visibility 1ms linear;
}
#main-header .logo img {
	width: 168px;
	height: 45px;
}


/* ヘッダー メニュー */
#main-header.menu-open .row01 .menu {
	overflow: visible;
	visibility: visible;
	opacity: 1;
	-webkit-transform: translateX(0);
	transform        : translateX(0);
	-webkit-transition: width 100ms linear 50ms, -webkit-transform 300ms linear 150ms, opacity 300ms linear 150ms, visibility 1ms linear;
	transition        : width 100ms linear 50ms,         transform 300ms linear 150ms, opacity 300ms linear 150ms, visibility 1ms linear;
}
#main-header .row01 .menu {
	text-align: right;
	padding: 0 93px 0 235px;
	white-space: nowrap;
	opacity: 0;
	overflow: hidden;
	visibility: hidden;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.75;
	-webkit-transform: translateX(100px);
	transform        : translateX(100px);
	-webkit-transition: width 100ms linear 300ms, -webkit-transform 300ms linear 50ms, opacity 300ms linear 50ms, visibility 1ms linear;
	transition        : width 100ms linear 300ms,         transform 300ms linear 50ms, opacity 300ms linear 50ms, visibility 1ms linear;
}
#main-header .row01 .menu {
	letter-spacing: -0.4em;
}
#main-header .row01 .menu li {
	text-align: left;
}
#main-header .row01 .menu > li {
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	margin: 0 40px 0 0;
}
#main-header .row01 .menu > li a {
	position: relative;
	display: inline-flex;
	align-items: center;
	height: 79px;
	padding: 18px 0 16px;
}
#main-header .row01 .menu > li > a span {
	position: relative;
	display: block;
	padding: 0 0 0 18px;
}
#main-header .row01 .menu > li > a span:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.875em;
	width: 12px;
	height: 13px;
	background-image: url(./assets/images/common/icon-link-arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	-webkit-transform: translate(0,-50%);
	transform        : translate(0,-50%);
}
#main-header .row01 .menu .sub-menu {
	position: absolute;
	visibility: hidden;
	top: 100%;
	left: 50%;
	text-align: center;
	width: 768px;
	letter-spacing: -0.4em;
	-webkit-transform: translate(-50%,0);
	transform        : translate(-50%,0);
	opacity: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	padding: 60px 0 85px;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
#main-header .row01 .menu li:hover .sub-menu {
	visibility: visible;
	opacity: 1;
}
#main-header .row01 .menu li .sub-menu:before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	height: 100%;
	width: 200vw;
	background-color: rgba(83,149,53,0.8);
	-webkit-transform: translate(-50%,0);
	transform        : translate(-50%,0);
}
@media only screen and (max-width: 1300px){
	#main-header .row01 .menu > li {
		margin: 0 3% 0 0;
	}
}
@media only screen and (max-width: 1080px){
	#main-header .logo {
		margin-left: -webkit-calc(100vw - 1050px);
		margin-left:         calc(100vw - 1050px);
	}
	#main-header .row01 .menu {
		padding-left: 21.759259259259259vw;
	}
	#main-header .row01 .menu > li {
		margin: 0 15px 0 0;
		font-size: 1.481481481481481vw;
	}
	#main-header #gnav-menu-button {
		right: -webkit-calc(100vw - 1060px);
		right:         calc(100vw - 1060px);
	}
}
@media only screen and (max-width: 1065px){
	#main-header #gnav-menu-button {
		right: 5px;
	}
}
@media only screen and (max-width: 1055px){
	#main-header .logo {
		margin-left: 5px;
	}
}
@media only screen and (max-width: 900px){
	#main-header .row01 .menu > li {
		margin: 0 10px 0 0;
	}
	#main-header .logo img {
		width: 18.666666666666667vw;
	}
}


/* ヘッダー サブメニュー01 */
#main-header .row01 .menu li.hover-type01 .sub-menu li {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	margin-right: 5.208333333333333%;
	width: -webkit-calc((100% - 10.416666666666667% - 1px) / 3);
	width:         calc((100% - 10.416666666666667% - 1px) / 3);
}
#main-header .row01 .menu li.hover-type01 .sub-menu li:nth-of-type(3n) {
	margin-right: 0;
}
#main-header .row01 .menu li.hover-type01 .sub-menu li:nth-of-type(n + 4) {
	margin-top: 1em;
}
#main-header .row01 .menu li.hover-type01 .sub-menu li a {
	position: relative;
	display: inline-flex;
	align-items: center;
	width: 100%;
	height: 44px;
	text-align: left;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	border: 1px solid #fff;
	padding: 0.5em 0.5em 0.5em 1.777777777777778em;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
#main-header .row01 .menu li.hover-type01 .sub-menu li a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0.777777777777778em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #ffffff;
	-webkit-transform: translate(0,-50%);
	transform        : translate(0,-50%);
}
#main-header .row01 .menu li.hover-type01 .sub-menu li:hover a span {
	opacity: 1;
}
#main-header .row01 .menu li.hover-type01 .sub-menu li:hover a {
	background-color: #1c7b01;
	border-color: #1c7b01
}


/* ヘッダー サブメニュー02 */
#main-header .row01 .menu li.hover-type02 .sub-menu li {
	display: inline-block;
	letter-spacing: 0.1em;
	vertical-align: top;
	margin-right: 2.604166666666667%;
	width: -webkit-calc((100% - 2.604166666666667% - 1px) / 2);
	width:         calc((100% - 2.604166666666667% - 1px) / 2);
}
#main-header .row01 .menu li.hover-type02 .sub-menu li:nth-of-type(2n) {
	margin-right: 0;
}
#main-header .row01 .menu li.hover-type02 .sub-menu li:nth-of-type(n + 3) {
	margin-top: 2.604166666666667%;
}
#main-header .row01 .menu li.hover-type02 .sub-menu li a {
	position: relative;
	display: inline-flex;
	align-items: center;
	width: 100%;
	height: 78px;
	text-align: left;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	border: 1px solid #fff;
	padding: 0.5em 0.5em 0.5em 1.777777777777778em;
	-webkit-transition: all 200ms linear;
	transition        : all 200ms linear;
}
#main-header .row01 .menu li.hover-type02 .sub-menu li a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0.777777777777778em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #ffffff;
	-webkit-transform: translate(0,-50%);
	transform        : translate(0,-50%);
}
#main-header .row01 .menu li.hover-type02 .sub-menu li:hover a span {
	opacity: 1;
}
#main-header .row01 .menu li.hover-type02 .sub-menu li:hover a {
	background-color: #1c7b01;
	border-color: #1c7b01
}


/* メニューボタン */
#gnav-menu-button {
	position: fixed;
	z-index: 99;
	top: 44px;
	right: 20px;
	text-align: center;
	-webkit-transform: translateY(-50%);
	transform        : translateY(-50%);
	line-height: 1;
}
.admin-bar #gnav-menu-button {
	top: 70px;
}
#gnav-menu-button span:after ,
#gnav-menu-button span:before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100%;
	height: 5px;
	background-color: #539535;
	-webkit-transition: all 400ms linear;
	transition        : all 400ms linear;
	-webkit-transform: translateX(-52%);
	transform        : translateX(-52%);
}
#gnav-menu-button span:after {
	top: auto;
	bottom: 0;
}
#gnav-menu-button img {
	width: 53px;
	height: 38px;
	-webkit-transition: opacity 400ms linear;
	transition        : opacity 400ms linear;
}
#gnav-menu-button svg path {
	fill: #000 !important;
}
#main-header.menu-open #gnav-menu-button img {
	opacity: 0;
}
#main-header.menu-open #gnav-menu-button span:before {
	top: 50%;
	margin-top: -2.25px;
	-webkit-transform: translate(-50%) rotate(-45deg);
	transform        : translate(-50%) rotate(-45deg);
}
#main-header.menu-open #gnav-menu-button span:after {
	bottom: 50%;
	margin-bottom: -2.25px;
	-webkit-transform: translate(-50%) rotate(45deg);
	transform        : translate(-50%) rotate(45deg);
}


/* 追従ボタン */
#main-header .row02 {
	position: fixed;
	z-index: 8;
	top: 106px;
	right: 0;
	writing-mode: vertical-rl;
	font-size: 1.5rem;
	line-height: 1;
}
.admin-bar #main-header .row02 {
	top: 138px;
}
#main-header .row02 li {
	display: inline-block;
	margin-bottom: 15px;
}
#main-header .row02 a > span {
	position: relative;
	display: inline-block;
	background-color: #539535;
	color: #fff;
	padding: 2em 0.5em 0.8em 0.6em;
	min-height: 126px;
	text-align: center;
}
.ua-pc #main-header .row02 a:hover > span {
	background-color: #97bf85;
	opacity: 1;
}
#main-header .row02 a .menu-image {
	position: absolute;
	top: 0.7em;
	left: 50%;
	-webkit-transform: translate(-45%,0);
	transform        : translate(-45%,0);
}
#main-header .row02 a .menu-image[src$="icon-header-contact.svg"] {
	width: 18px;
	height: 13px;
}
#main-header .row02 a .menu-image[src$="icon-header-order.svg"] {
	width: 19px;
	height: 19px;
	-webkit-transform: translate(-35%,0);
	transform        : translate(-35%,0);
}


/* フッター バナー */
#main-footer .row01 .flex-item {
	width: 50%;
}
#main-footer .row01 .flex-item .flex-item {
	width: auto;
	padding-top: 24px;
}
#main-footer .row01 .flex-item a {
	max-width: 512px;
	padding: 0 24px 24px;
	display: block;
	height: 100%;
}
#main-footer .row01 .flex-item .flex {
	align-items: center;
	justify-content: center;
	height: 100%;
}
#main-footer .row01 .flex-item01 {
	background-color: #539535;
}
#main-footer .row01 .flex-item01 a {
	margin-left: auto;
}
#main-footer .row01 .flex-item02 {
	background-color: #1c7b01;
}
#main-footer .row01 img[src$="icon-footer-contact.svg"] {
	width: 111px;
	height: 82px;
}
#main-footer .row01 img[src$="icon-footer-order.svg"] {
	width: 125px;
	height: 120px;
}
#main-footer .row01 .text {
	text-align: left;
	color: #fff;
	line-height: 1.666666666666667;
	margin-left: 24px;
}
#main-footer .row01 .title {
	font-size: 160%;
	margin-top: 0.5em;
	letter-spacing: 0.2em;
}
#main-footer .row01 .title:after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 5px 0.5em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #ffffff;
}


/* フッター リンク */
#main-footer .row02 {
	margin-top: 50px;
}
#main-footer .row02 .flex {
	justify-content: space-between;
	flex-wrap: nowrap;
}
#main-footer .row02 .flex-item01 {
	width: 300px;
	padding-right: 22px;
}
#main-footer .row02 .flex-item01 > a {
	display: block;
}
#main-footer .row02 .flex-item01 img[src$="logo-site.svg"] {
	width: 278px;
	height: 74px;
}
#main-footer .row02 .flex-item01 .col {
	font-size: 1.6rem;
	padding-top: 0.8em;
}
#main-footer .row02 .flex-item01 .col a {
	font-size: 137.5%;
	font-weight: bold;
	color: #539535;
}
#main-footer .row02 .flex-item02 {
	width: -webkit-calc(100% - 278px);
	width:         calc(100% - 278px);
}
#main-footer .row02 .flex-item02 .menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	font-size: 1.6rem;
}
#main-footer .row02 .flex-item02 .menu li.none-display > span {
	display: none;
}
#main-footer .row02 .flex-item02 .sub-menu {
	padding-top: 10px;
}
#main-footer .row02 .flex-item02 .sub-menu li {
	padding-top: 17px;
}
#main-footer .row02 .flex-item02 .sub-menu a span {
	position: relative;
	display: block;
	padding: 0 0 0 18px;
}
#main-footer .row02 .flex-item02 .menu a span:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.875em;
	width: 12px;
	height: 13px;
	background-image: url(./assets/images/common/icon-link-arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	-webkit-transform: translate(0,-50%);
	transform        : translate(0,-50%);
}
#main-footer small {
	font-size: 1.5rem;
	margin-top: 50px;
}


/* フッター 運営会社 */
#main-footer .row03 {
	background-color: #f2f2f2;
	padding: 18px 0;
	margin-top: 24px;
}
#main-footer .row03 img {
	width: 306px;
	height: 64px;
}


/* キービジュアル */
#front-page-keyvisual .slick-list ,
#front-page-keyvisual .slick-track ,
#front-page-keyvisual .carousel-cell ,
#front-page-keyvisual .main-carousel ,
#front-page-keyvisual {
	height: 670px !important;
}
#front-page-keyvisual {
	position: relative;
}
#front-page-keyvisual .main-carousel > .carousel-cell + .carousel-cell {
	display: none;
}
#front-page-keyvisual .carousel-cell {
	width: 100%;
}
#front-page-keyvisual .carousel-cell .absolute {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
}
#front-page-keyvisual .fixed-content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: inline-flex;
	align-items: center;
	text-align: center;
	padding: 90px 12px 70px;
}
#front-page-keyvisual .fixed-content .content {
	width: 100%;
}
#front-page-keyvisual .fixed-content .content img {
	max-width: 623px;
	height: 212px;
}
#front-page-keyvisual .slick-dotted.slick-slider {
	margin-bottom: 0;
}
#front-page-keyvisual .slick-dots {
	z-index: 2;
	bottom: 25px;
}
#front-page-keyvisual .slick-dots li button:before ,
#front-page-keyvisual .slick-dots li button ,
#front-page-keyvisual .slick-dots li {
	width: 12px;
	height: 12px;
	padding: 0;
	font-size: 12px;
	line-height: 12px;
	margin: 0;
	opacity: 1;
	color: transparent;
}
#front-page-keyvisual .slick-dots li {
	margin: 0 7.5px;
}
#front-page-keyvisual .slick-dots li button:before {
	background-color: #fff;
	border-radius: 50%;
	overflow: hidden;
}
#front-page-keyvisual .slick-dots li.slick-active button:before {
	background-color: #539535;
}
#front-page-keyvisual .slick-track {
	opacity:1 !important;
	width:100% !important;
	transform:translate3d(0,0,0) !important;
}
#front-page-keyvisual .slick-slide {
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	-webkit-transition: -webkit-transform 0s ease 1s,opacity 1s ease;
	transition        :         transform 0s ease 1s,opacity 1s ease
}
#front-page-keyvisual .slick-continue.slick-slide {
	opacity:1;
	-webkit-transform: scale(1.1,1.1);
	transform        : scale(1.1,1.1);
	-webkit-transition: -webkit-transform 8s ease,opacity 1.5s ease;
	transition        :         transform 8s ease,opacity 1.5s ease
}


/* トップページ */
#page-top .button {
	margin-bottom: 85px;
}
#page-top .row01-02 {
	line-height: 1.875;
}
#page-top .row02 {
	position: relative;
}
#page-top .row02 .background-image {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 892px;
	width: 68.615384615384615%;
}
#page-top .row02 > * {
	position: relative;
}
#page-top .row04 {
	position: relative;
}
#page-top .row04 .background-image {
	position: absolute;
	top: 0;
	left: 0;
	max-width: 836px;
	width: 64.307692307692308%;
}
#page-top .row04 > * {
	position: relative;
}


/* ご注文方法 */
#page-howto .row02 {
	font-size: 2rem;
}
#page-howto .row03 {
	margin-top: 50px;
}
#page-howto .row03 .flex-item {
	width: -webkit-calc((100% - 40px) / 2);
	width:         calc((100% - 40px) / 2);
	border: 3px solid #61b75c;
	border-radius: 10px;
}
#page-howto .row03 h2 {
	border-bottom: 3px solid #61b75c;
	font-size: 1.7rem;
	line-height: 1.823529411764706em;
	padding: 0.323529411764706em 0.5em;
}
#page-howto .row03 h2 .big {
	font-size: 123.529411764705882%;
}
#page-howto .row03 .content {
	padding: 1.555555555555556em 0 1.277777777777778em;
	font-size: 1.8rem;
	line-height: 1.722222222222222em;
}
#page-howto .row03 .content .tel {
	font-size: 161.111111111111111%;
	line-height: 1.068965517241379;
	margin-bottom: 0.3em;
}
#page-howto .row03 .content .tel .small {
	font-size: 68.96551724137931%;
}
#page-howto .row03 .content .small {
	font-size: 88.888888888888889%;
}
#page-howto .row04 .inner-box {
	max-width: 816px;
	margin: 70px auto 80px;
}
#page-howto .row04 .button {
	min-width: 30.637254901960784%;
	width: 30.637254901960784%;
}


/* よくあるご質問 */
.list-type08 dl {
	max-width: 900px;
	margin: 0 auto;
	font-size: 1.6rem;
	font-weight: bold;
}
.list-type08 dt {
	position: relative;
	padding: 38px 0 0 130px;
}
.list-type08 dt:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 91px;
	height: 91px;
	background-image: url('./assets/images/faq/question.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.list-type08 dd {
	position: relative;
	text-align: right;
	padding: 38px 130px 0 0;
}
.list-type08 dd:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 91px;
	height: 91px;
	background-image: url('./assets/images/faq/answer.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.list-type08 dd span ,
.list-type08 dt span {
	position: relative;
	display: inline-block;
	visibility: top;
	max-width: 420px;
	background-color: #f6dbc8;
	border-radius: 8px;
	padding: 0.9em 1.5em 1em;
}
.list-type08 dd span {
	text-align: left;
	max-width: 400px;
	background-color: #dee699;
}
.list-type08 dd span:before ,
.list-type08 dt span:before {
	content: '';
	position: absolute;
	top: 0;
	left: -20px;
	width: 20.28px;
	height: 34.2px;
	background-image: url('./assets/images/faq/question-textarea.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.list-type08 dd span:before {
	left: auto;
	right: -20px;
	background-image: url('./assets/images/faq/answer-textarea.svg');
}
#page-faq .row02 {
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 560px;
	background-size: cover;
	background-position: center top;
}


/* お知らせ詳細 */
.single-main-box a {
	text-decoration: underline;
	color: #1C7B01;
	font-weight: bold;
}
.single-main-box #lower-page-keyvisual {
	height: 480px;
	background-position: center bottom;
}
.single-main-box #breadcrumb {
	position: relative;
	padding-top: 2.4rem;
	padding-bottom: 10rem;
	margin-bottom: 0;
	margin-top: -174px;
}
.single-main-box .date-area time {
	display: block;
	font-size: 1.7rem;
	font-weight: bold;
	margin-bottom: 0.4em;
}
.single-main-box .title-area h1 {
	font-size: 2.4rem;
	line-height: 1.708333333333333;
	margin-bottom: 1em;
}
.single-content {
	margin: 1em 0 8rem;
	line-height: 2.5;
}
.single-content .image-large {
	width: 100%;
	height: auto;
	margin-top: 45px;
}
.single-content .image-list {
	justify-content: space-around;
	margin: 0 -20px;
}
.single-content .image-list .flex-item {
	width: -webkit-calc((100% - 80px) / 2);
	width:         calc((100% - 80px) / 2);
	margin-top: 45px;
}
.single-content .image-list .flex-item img {
	width: 100%;
	height: auto;
}
.single-content .image-float {
	margin-top: 60px;
	margin-top: -webkit-calc(60px - 0.5625em);
	margin-top:         calc(60px - 0.5625em);
}
.single-content .image-float.left .thumbnail {
	float: left;
	padding: 0.5625em 5% 2% 0;
}
.single-content .image-float.right .thumbnail {
	float: right;
	padding: 0.5625em 0 2% 5%;
}
.single-content .image-float .thumbnail {
	width: 52.5%;
}
.single-content .image-float .thumbnail img {
	width: 100%;
	height: auto;
}
.single-content .h2 {
	margin: 40px 0 30px;
	font-size: 2.1rem;
	line-height: 1.75;
	padding: 0.696428571428571em 1em;
	background-color: #539535;
	color: #fff;
}
.single-content .h3 {
	margin: 40px 0 30px;
	font-size: 2.1rem;
	line-height: 1.75;
	padding: 0.696428571428571em 1em;
	background-color: #FFE4D3;
	color: #231815;
}
.single-content .h4 {
	margin: 40px 0 30px;
	font-size: 1.8rem;
	line-height: 1.75;
	padding: 0.958333333333333em 1.166666666666667em;
	background-color: #E9E9EA;
	color: #539535;
}
.single-content .h4 + .wysiwyg ,
.single-content .h3 + .wysiwyg ,
.single-content .h2 + .wysiwyg {
	margin: 30px 0.75em;
}
.single-content .table-box {
	margin: 2em -0.75em;
}
.single-content table {
	width: 100%;
	table-layout: fixed;
}
.single-content td ,
.single-content th {
	border: 1px solid #C3C4C5;
	height: 69px;
	vertical-align: middle;
	padding: 1em;
	line-height: 1.5;
	text-align: left;
	letter-spacing: normal;
}
.single-content .linkbutton {
	margin-top: 70px;
}
.single-main-box .paging {
	margin-bottom: 40px;
}
.single-main-box .paging .next ,
.single-main-box .paging .prev {
	width: -webkit-calc((100% - 50px) / 2);
	width:         calc((100% - 50px) / 2);
}
.single-main-box .paging a {
	display: inline-flex;
	align-items: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
	font-size: 1.5rem;
	font-weight: normal;
	border: 1px solid #539535;
	border-radius: 8px;
}
.single-main-box .paging a > span {
	position: relative;
	width: 100%;
	padding: 0.733333333333333em 1.6em 0.733333333333333em 4em;
	line-height: 1.866666666666667;
}
.single-main-box .paging .next a > span {
	padding: 0.733333333333333em 4em 0.733333333333333em 1.6em;
}
.single-main-box .paging a > span:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 16px 9px 0;
	border-color: transparent #549535 transparent transparent;
	left: 1em;
	top: 50%;
	-webkit-transform: translate(0%,-50%);
	transform        : translate(0%,-50%);
}
.single-main-box .paging .next a > span:before {
	right: 1em;
	left: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 0 9px 16px;
	border-color: transparent transparent transparent #549535;
}
.single-post-lists .list-type03 {
	padding-bottom: 75px;
}
.single-post-lists .list-type03 .button {
	margin-top: 10px;
}
.single-post-lists .list-type03 time {
	font-weight: normal;
	font-size: 1.783rem;
}
.single-post-lists .list-type03 .title {
	margin-top: 0.5em;
	font-size: 1.783rem;
	color: #000;
}
.single-post-lists .list-type03 a {
	background-color: #fff;
	text-decoration: none;
}
.ua-pc .single-post-lists .list-type03 a:hover {
	background-color: #ffffbd;
}
.single-columns.ua-pc .single-post-lists .list-type03 a:hover {
	background-color: #ffffd8;
}


/* お知らせ一覧 */
.archive:not(.tax-product_category) #lower-page-keyvisual {
	height: 480px;
	background-position: center bottom;
}
.archive:not(.tax-product_category) #breadcrumb {
	position: relative;
	padding-top: 2.4rem;
	padding-bottom: 10rem;
	margin-bottom: 0;
	margin-top: -174px;
}
.archive-list ul {
	margin-bottom: 50px;
}
.archive-list ul:after {
	content: '';
	width: -webkit-calc((100% - 48px) / 3);
	width:         calc((100% - 48px) / 3);
}
.archive-list li {
	position: relative;
	width: -webkit-calc((100% - 48px) / 3);
	width:         calc((100% - 48px) / 3);
	margin-bottom: 80px;
}
.archive-list li a {
	display: block;
}
.archive-list .thumbnail .image {
	padding-top: 74.311926605504587%;
}
.archive-list .thumbnail .image[style*="common/no-image.svg"] {
	background-size: 153px 166px;
	background-color: #efffef;
}
.archive-list .time {
	font-weight: bold;
	margin: 0.9em 0 0.4em;
}
.archive-list .title {
	font-weight: normal;
	font-size: 1.7rem;
}


/* お問い合わせ */
#page-contact .row01 {
	font-size: 1.6rem;
	line-height: 1.875em;
	margin-bottom: 64px;
}
.underline {
	text-decoration: underline;
}
.mw_wp_form {
	display: block;
	max-width: 850px;
	margin: 0 auto 70px;
	font-size: 1.7rem;
}
.mw_wp_form span.error {
	display: block;
	width: 100%;
}
.mw_wp_form .button-box {
	margin-top: 65px;
}
.mw_wp_form .privacy-box label {
	margin-right: -1em;
	display: inline-block;
}
.mw_wp_form dt {
	position: relative;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #dfffdf;
	width: 246px;
	min-height: 60px;
	margin-bottom: 24px;
}
.mw_wp_form dt.required:before {
	content: '＊';
	position: absolute;
	top: -0.5em;
	left: -1.5em;
	color: #e00012;
}
.mw_wp_form dt span {
	display: block;
	width: 100%;
	text-align: center;
	font-weight: bold;
}
.mw_wp_form dd {
	width: -webkit-calc(100% - 246px - 24px);
	width:         calc(100% - 246px - 24px);
	display: inline-flex;
	align-items: center;
	margin-bottom: 24px;
	min-height: 60px;
}
.mw_wp_form dd > div {
	width: 100%;
}
.mw_wp_form .radio-box {
	margin-left: -1em;
	letter-spacing: -0.4em;
	text-align: left;
}
.mw_wp_form .radio-box > * {
	display: inline-block;
	vertical-align: middle;
	letter-spacing: -0.04em;
}
#page-contact .mw_wp_form dd.item01 .error {
	margin-left: 1em;
}
input[type="text"] ,
input[type="date"] {
	height: 62px;
	padding: 0 25px;
	vertical-align: top;
	border: 1px solid #d6d7d7;
}
textarea {
	min-height: 200px;
	height: 308px;
	resize: vertical;
	padding: 25px;
	margin: 0;
	vertical-align: top;
}
.form-item-error input ,
.form-item-error textarea ,
.form-item-error select {
  background-color: #FCC;
}
.mw_wp_form .error {
	margin-top: 0.4em;
}


/* ご注文 */
.select-box {
	display: inline-block;
	vertical-align: middle;
}
.select-box + .select-box {
	margin-left: 0.5em;
}
.select-box[data-before]:before {
	content: attr(data-before);
	font-size: 1.6rem;
}
.select-box[data-after]:after {
	content: attr(data-after);
	font-size: 1.6rem;
}
.select-box select {
	border: none !important;
	width: 100%;
	height: 100%;
	padding: 0.5em 30px 0.5em 0.5em;
}
.select-box .inner-box {
	position: relative;
	display: inline-flex;
	align-items: center;
	height: 60px;
	border: 1px solid #d6d7d7;
}
.select-box .inner-box:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 7px;
	width: 11px;
	height: 23px;
	margin-top: -11.5px;
	background-image: url('./assets/images/common/icon-selectbox.svg');
}
.radio-box.form-item-error .mwform-radio-field .mwform-radio-field-text:before {
	background-color: #FCC;
}
.radio-box .error {
	margin-left: 1em;
}
#page-order .row01 {
	font-size: 1.6rem;
	line-height: 1.875em;
	letter-spacing: normal;
}
#page-order .row02 {
	margin: 30px 0 85px;
}
#page-order dd {
	text-align: left;
}
#page-order dd .radio-box {
	padding: 0.5em 0;
}
#page-order dd .radio-box .mwform-radio-field {
	display: inline-block;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
#page-order dd .mwform-radio-field .mwform-radio-field-text {
	padding-left: 1.5rem;
}
#page-order dd .mwform-radio-field .mwform-radio-field-text:before {
	width: 3rem;
	height: 3rem;
	border: 1px solid #000;
}
#page-order dd .mwform-radio-field input:checked + .mwform-radio-field-text:after {
	content: '';
	position: absolute;
	left: 1.5rem;
	top: 50%;
	width: 1.2rem;
	height: 1.2rem;
	background-color: #539535;
	border-radius: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform        : translate(-50%,-50%);
}
#page-order .item01 {
	white-space: nowrap;
}
#page-order .select-box[data-after="年"] .inner-box {
	min-width: 137px;
}
#page-order .select-box[data-after="月"] .inner-box ,
#page-order .select-box[data-after="日"] .inner-box {
	min-width: 75px;
}
#page-order .select-box[data-before="時間"] .inner-box {
	min-width: 135px;
}
#page-order .radio-box {
	letter-spacing: -0.4em;
}
#page-order .item02 .mwform-radio-field {
	min-width: 256px;
}
#page-order .item07 .mwform-radio-field {
	min-width: 45%;
}
#page-order .text-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	/*flex-wrap: wrap;*/
	align-items: center;
}
#page-order .text-box input {
	margin-right: 0.5em;
}
#page-order .item14 .text-box input {
	width: 256px;
}
#page-order figure dt {
	background-color: #DDD6C4;
}
#page-order figcaption {
	width: -webkit-calc(100% - 246px - 24px);
	width:         calc(100% - 246px - 24px);
	margin-left: auto;
	margin-bottom: 24px;
}
#page-order .item19 .mwform-radio-field ,
#page-order .item18 .mwform-radio-field ,
#page-order .item16 .mwform-radio-field ,
#page-order .item15 .mwform-radio-field ,
#page-order .item13 .mwform-radio-field ,
#page-order .item12 .mwform-radio-field ,
#page-order .item11 .mwform-radio-field {
	min-width: -webkit-calc((100% - 4.5em) / 4);
	min-width:         calc((100% - 4.5em) / 4);
}
#page-order .item13 textarea ,
#page-order .item12 textarea ,
#page-order .item11 textarea {
	min-height: 62px;
	height: 62px;
	padding: 14.875px 25px;
}


/* mwform form item */
.mw_wp_form input ,
.mw_wp_form textarea ,
.mw_wp_form select {
	font-size: 1.7rem;
	line-height: 1.75;
	border: 1px solid #d6d7d7;
	border-radius: 0;
	outline: none;
	width: 100%;
	display: block;
	-webkit-appearance: none;
}
.mw_wp_form .horizontal-item + .horizontal-item ,
.mwform-checkbox-field ,
.mwform-radio-field {
	display: inline-block;
	margin-left: 1em;
	letter-spacing: normal;
}
.mwform-checkbox-field label ,
.mwform-radio-field label {
	position: relative;
	cursor: pointer;
	padding-left: 1.2em;
}
.mwform-checkbox-field input ,
.mwform-radio-field input {
	position: absolute;
	opacity: 0;
}
.mwform-checkbox-field .mwform-checkbox-field-text:before  ,
.mwform-radio-field .mwform-radio-field-text:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 1.6rem;
	height: 1.6rem;
	border: 1px solid #231815;
	border-radius: 50%;
	-webkit-transform: translateY(-50%);
	transform        : translateY(-50%);
}
.mwform-checkbox-field input:checked + .mwform-checkbox-field-text:after ,
.mwform-radio-field input:checked + .mwform-radio-field-text:after {
	content: '';
	position: absolute;
	left: 3px;
	top: 50%;
	width: 1rem;
	height: 1rem;
	background-color: #231815;
	border-radius: 50%;
	-webkit-transform: translateY(-50%);
	transform        : translateY(-50%);
}


/* taxonomy product */
.term_catchcopy_lead {
	max-width: 775px;
	margin: 0 auto;
}
.term_catchcopy {
	font-size: 2.7rem;
}
.term_lead {
	margin-top: 1.5em;
}
.product-type-c a ,
.product-type-b a ,
.product-type-a a {
	color: #539435;
	text-decoration: underline;
}
.product-type-a .item {
	width: -webkit-calc((100% - 60px) / 2);
	width:         calc((100% - 60px) / 2);
	margin-top: 60px;
	font-size: 1.7rem;
}
.product-type-a .image {
	padding-top: 78.512396694214876%;
	margin-bottom: 1em;
}
.product-type-c .caption + .price ,
.product-type-b .caption + .price ,
.product-type-a .caption + .price {
	margin-top: 0.5em;
}
.product-type-b {
	margin-top: 60px;
	font-size: 1.7rem;
}
.product-type-b .image {
	padding-top: 78.512396694214876%;
}
.product-type-b .flex-item.left {
	width: 53.21011673151751%;
}
.product-type-b .flex-item.right {
	width: 42.217898832684825%;
}
.product-type-b .flex-item.left .thumbnail {
	margin-bottom: 1em;
}
.product-type-b .images {
	margin-top: -15px;
}
.product-type-b .images li {
	width: -webkit-calc((100% - 20px) / 2);
	width:         calc((100% - 20px) / 2);
	margin-top: 15px;
	cursor: pointer;
}
.product-type-c {
	margin-top: 60px;
	font-size: 1.7rem;
}
.product-type-c .image {
	padding-top: 42.371234207968902%;
	margin-bottom: 1em;
}
.other-box {
	margin-top: 106px;
}
.other-box .terms-list {
	background-color: #EEFFEE;
	margin-top: 65px;
	padding: 50px 0 60px;
}
.other-box .terms-list h2 {
	font-size: 2.8rem;
}
.other-box .terms-list ul {
	margin-top: 25px;
}
.other-box .terms-list ul:after {
	content: '';
	width: -webkit-calc((100% - 40px) / 3);
	width:         calc((100% - 40px) / 3);
	margin-top: 20px;
}
.other-box .terms-list li {
	width: -webkit-calc((100% - 40px) / 3);
	width:         calc((100% - 40px) / 3);
	margin-top: 20px;
	margin-bottom: 0;
}
.other-box .terms-list .thumbnail {
	border: 12px solid #fff;
}
.other-box .terms-list .thumbnail .image {
	padding-top: 55.555555555555556%;
}
.other-box .terms-list .title {
	font-size: 2rem;
	font-weight: bold;
	margin-top: 15px;
	margin-bottom: 0;
}