@charset "UTF-8";

/* !foundation */
/* --------------------------- */
html,body {
	font-family:'游ゴシック', YuGothic,'ヒラギノ角ゴ ProN','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	font-weight: 500;
	-webkit-font-feature-settings: 'palt' 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-webkit-font-variant-ligatures:none;
	font-variant-ligatures:none;
}
body {
	background: #fff;
	color: #000;
	max-width: 100vw;
	overflow-x: hidden;
	position: relative;
	text-align: center;
}
* {
	box-sizing: border-box;
}
a,
a img {
	color: #000;
	transition: all 0.4s ease;
}
a img {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a:visited {
	color: #333;
}
a:hover {
	color: #231815;
	text-decoration: none;	
}
a:hover img {
	opacity: 0.6;
}
a.noborder {
	text-decoration: none;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
hr {
	border: 0;
	height: 1px;
	background-image: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.25) 50%, rgba(0,0,0,0) 100%);
	margin: 5vw auto;
	clear: both;
}
.btn,
.btn:visited {
	display: block;
	text-align: center;
	text-decoration: none;
	border: solid 1px #000;
	padding: 0.5em 1em;
}
.btn:hover {
	background: #f0f0f0;
}

/* material
--------------------------- */
.clearFloat {
	clear: both;
}
.alignleft {
	float: left;
	margin: 0.375em 1.75em 1.75em 0;
}
.alignright {
	float: right;
	margin: 0.375em 0 1.75em 1.75em;
}
.aligncenter {
	clear: both;
	display: block;
	margin: 0.375em auto;
	text-align: center!important;
}
.sp {
	display: none;
}
.flexCont {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul[class],ol[class] {
	list-style: none;
	margin: 0 auto;
	padding: 0;
}
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after {
	clear: both;
}
.tate {
	-webkit-font-feature-settings: 'palt' 0;
	font-feature-settings: 'palt' 0;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.inner {
	max-width: 1080px;
	margin: 0 auto;
}
.pageInner, .damageContBody, .damageSegregationCont, .commitCont, .productWrap, .petfoodListItemBox, .awardVoiceWrap, .itemDetailCont, .reviewCont, .shopListCont, .breadcrumbs, .shopDetailCont, ul.cautionList, .newsCatch, .postWrap {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
main {
	padding: 5em 0;
}
/* .wf-mincho, .damageIntroTxt, .damageSegregationTitle .ruby, .productTxt, .productBox .btnMore, .petfoodShopBtn, .petfoodListItemTxt, .awardTitle, .awardCatch, .awardVoiceTitle, .awardVoicePerson, .awardVoiceName, .awardVoiceTxt, .reviewTitle, .reviewCont, .itemPaginationBackLink, .shopListIntro, .shopListTxt, .shopListLink, .breadcrumbs, .btnShopBack, .goodsCaution, .goodsPartnerIntro, .goodsPartnerCat, .goodsShopCont .btnShopWeb, .itemDetailCatch, .goodsItemSpec, .commonTitle, .contactCatch, .contactTxt, .mailformDetail, .mailformBtn, .newsCatch, .postStickyTitle, .postStickyTxt, .postStickyBody .btnShopWeb, .postCat, .postListTitle, .postMore, .paginationBackLink, .postTitle {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
} */

/* !header */
/* --------------------------- */
.gHeader {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(255,255,255,.5);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	padding: 0.5em 1em;
	z-index: 1000;
}
.gHeader .inner {
	max-width: 1240px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.siteTitle {
	margin: 0 auto 0 0;
}
.gNav {
	margin: 0 auto 0 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
ul.gNavList {
	font-size: 0.875em;
	line-height: 1;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 0;
	white-space: nowrap;
}
.gNavItem {
}
.gNavLink,
.gNavLink:visited {
	display: block;
	padding: 1em 1.5em;
	text-decoration: none;
}
.gNavItem:nth-of-type(4) .gNavLink {
	color: #D80000;
	font-weight: bold;
}

.gNavLink:hover {
	background: #fff;
}
.gNavCart,
.gNavCart:visited {
	font-size: 0.75em;
	line-height: 1;
	text-decoration: none;
	display: block;
	background: url('../imgs/header_cart_icon.png') left 1em center no-repeat #fff;
	background-size: 22px auto;
	border: solid 1px #006837;
	padding: 1em 1em 1em 3em;
	margin-left: 1em;
}
.gNavCart:hover {
	background-color: #d9e8e1;
	color: #006837;
}
#spNav,.toggle {
	display: none;
}

/* !footer */
/* --------------------------- */
.gFooter {
	background: url('../imgs/footer_bg.jpg') center top no-repeat;
	background-size: cover;
	padding: 3em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.footerInfo {
	margin: 0 3.5em;
}
.footerInfoTitle {
	font-size: 1em;
	line-height: 1.75;
	margin: 0 0 1em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.footerTxt {
	font-size: 0.75em;
	line-height: 1.75em;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	margin: 0 auto 1.25rem;
}
ul.footerNavList {
	padding-top: 1.25rem;
	border-top: solid 1px #000;
	max-width: 34rem;
	font-size: 0.875em;
	line-height: 1;
	font-weight: bold;
}
.footerNavItem {
	display: inline-block;
	margin: 0 0 0.5em;
}
.footerNavLink {
	display: block;
	padding: 0.5em 1.5em;
	text-decoration: none;
}
.footerNavLink:hover {
	background: #fff;
}
.footerTools {
	min-width: 16rem;
	margin: 0 3.5em;
}
.pagetop {
	font-family: 'Nanum Brush Script', cursive;
	font-size: 1.25em;
	line-height: 40px;
	display: inline-block;
	margin: 0 auto 1em;
	height: 40px;
	background: url('../imgs/pagetop_arrow.png') right top no-repeat;
	background-size: auto 100%;
	padding-right: 40px;
	cursor: pointer;
	transition: all 0.4s ease;
}
.pagetop:hover {
	transform: translateY(-0.5em);
}
.btnContact {
	display: block;
	margin: 1rem auto;
	font-size: 0.875rem;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	padding: 0.75em 1.5em;
}
.btnPrivacy {
	display: block;
	margin: 0 auto 1em;
	padding: 0.375em;
	text-decoration: none;
	font-size: 0.75em;
	line-height: 1;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
}
.btnPrivacy:hover {
	background: #fff;
}
.copyright {
	font-size: 0.875em;
	margin: 0;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
}

/* !common */
/* --------------------------- */
.pageHeading {
	position: relative;
	padding-top: 334px;
	min-height: 840px;
}
.pageHeading::before {
	content: "";
	width: 1400px;
	height: 992px;
	background-image: url('../imgs/about_heading_bg.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-55.5%, -20%);
	border-radius: 50%;
	z-index: -1;
}
.pageTitle {
	width: 364px;
	background: url('../imgs/title_bg.png') center top no-repeat;
	background-size: 100% auto;
	font-size: 1.75em;
	line-height: 1.75em;
	text-shadow: 0 2px 4px rgba(0,0,0,0.5), 0 2px 6px rgba(0,0,0,0.5);
	color: #fff;
	margin: 0 auto 4em auto;
	padding-top: 4.5em;
	transform: translateX(67.5%);
}
.home .pageTitle {
	margin: 334px auto 4em auto;
}

/* !top */
/* --------------------------- */
.home main {
	position: relative;
}
.home main::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url('../imgs/top_main_bg_line.png') center 716px no-repeat;
	z-index: 1;
}
.swiper-container {
	width: 1400px;
	height: 990px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-55.5%, -15%);
	z-index: -1;
}
.swiper-slide {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 50%;
}
.slide1 {
	background-image: url('../imgs/top_slide_01_bg.jpg');
}
.slide2 {
	background-image: url('../imgs/top_slide_02_bg.jpg');
}
.topCont {
	position: relative;
	z-index: 1;
}
.topContTitle {
	font-size: 3.75em;
	line-height: 1.1em;
	color: #fff;
	text-shadow: 1px 0 0 #000, 1px 1px 0 #000, 0 1px 0 #000, 1px -1px 0 #000, -1px 0 0 #000, -1px -1px 0 #000, -1px 1px 0 #000;
	margin: 0 auto 0.5em;
	position: relative;
	display: inline-block;
}
.topContRuby {
	font-size: 0.2em;
	line-height: 1;
	font-weight: normal;
	color: #000;
	text-shadow: none;
	position: absolute;
	right: 0;
	bottom: -1.5em;
}
.topContTxt {
	font-size: 0.75em;
	line-height: 2em;
	text-indent: 1em;
	text-align: justify;
	margin: 0;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
}
.topContAbout {
	max-width: 31.5rem;
	margin: 0 auto 8rem;
	position: relative;
	transform: translateX(-50%);
}
.topContAbout::after {
	content: "";
	display: block;
	width: 200px;
	height: 200px;
	background: url('../imgs/top_about_img.jpg') 0 0 no-repeat;
	background-size: cover;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(250%, -80%);
}
.topContAbout .topContTitle {
	text-align: left;
	display: inline-block;
}
.topContAbout .topContBtnWrap {
	margin-top: 2rem;
}
.btnArrow,
.btnArrow:visited {
	display: block;
	text-decoration: none;
	font-size: 0.75em;
	line-height: 1;
	text-align: left;
	font-weight: bold;
	max-width: 268px;
	padding: 1em 2.5em;
	margin: 0 auto 1em;
	background: #231815;
	border: solid 1px #231815;
	color: #fff;
	border-radius: 1em;
	position: relative;
}
.btnArrow::after {
	content: "";
	width: 74px;
	height: 12px;
	display: block;
	background: url('../imgs/btn_arrow.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: 2em;
	transform: translateY(-50%);
	transition: all 0.2s ease;
}
.btnArrow:hover {
	color: #231815;
	background: #fff;
}
.btnArrow:hover::after {
	background-image: url('../imgs/btn_arrow_black.png');
	transform: translate(0.5em, -50%);
}
.btnArrowWhite,
.btnArrowWhite:visited {
	background: #fff;
	color: #231815;
}
.btnArrowWhite::after {
	background-image: url('../imgs/btn_arrow_black.png');
}
.btnArrowWhite:hover {
	color: #fff;
	background: #231815;
}
.btnArrowWhite:hover::after {
	background-image: url('../imgs/btn_arrow.png');
}
.topContAbout .illustFootprint {
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translate(790%, 0) rotate(16deg);
}
.topContCycle {
	margin: 0 auto 12rem;
	position: relative;
	min-height: 450px;
	transform: translateX(80px);
}
.topCycleTitle {
	width: 234px;
	height: 234px;
	margin: 0;
	background: url('../imgs/top_cycle_title_bg.jpg') center center no-repeat;
	background-size: cover;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.25em;
	line-height: 1.375em;
	color: #fff;
	text-shadow: 1px 0 0 #006837, 1px 1px 0 #006837, 0 1px 0 #006837, 1px -1px 0 #006837, -1px 0 0 #006837, -1px -1px 0 #006837, -1px 1px 0 #006837;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.topCycleTitle::before {
	content: "";
	display: block;
	width: 190%;
	height: 190%;
	border-radius: 50%;
	border: solid 1px #000;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
ol.topCyclePoint {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.topCycleItemTitle {
	width: 150px;
	height: 150px;
	margin: 0;
	background: #fff;
	box-shadow: 0 0 0 8px #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.5em;
	line-height: 1.375em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	position: absolute;
	top: 50%;
	left: 50%;
}
.topCycleItemTitle::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url('../imgs/top_cycle_point_bg.png') center center no-repeat;
	background-size: cover;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
.point1 .topCycleItemTitle {
	transform: translate(50%,-150%);
}
.point2 .topCycleItemTitle {
	transform: translate(80%,0%);
}
.point3 .topCycleItemTitle {
	transform: translate(-50%,90%);
}
.point4 .topCycleItemTitle {
	transform: translate(-180%,0%);
}
.point5 .topCycleItemTitle {
	transform: translate(-150%,-150%);
}
.topCycleItemTxt {
	font-size: 0.875em;
	line-height: 2.5em;
	text-align: left;
	letter-spacing: 0.05em;
	white-space: nowrap;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
}
.point1 .topCycleItemTxt {
	transform: translate(150%,-230%);
}
.point2 .topCycleItemTxt {
	transform: translate(80%,240%);
}
.point3 .topCycleItemTxt {
	transform: translate(-175%,300%);
}
.point5 .topCycleItemTxt {
	transform: translate(-275%,-190%);
}
.topContCatch {
	position: relative;
	margin: 0 auto 12rem;
	height: 424px;
}
.topContCatch::before {
	content: "";
	display: block;
	width: 80vw;
	height: 100%;
	background: url('../imgs/top_catch_bg.jpg') center center no-repeat;
	background-size: 100% auto;
	border-radius: 0 1em 1em 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.topContCatchTxt {
	display: inline-block;
	font-size: 1em;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0.5em 0;
	padding: 0.625em 2em;
	background: #fff;
	border-radius: 0.625em;
	border: solid 1px #000;
	white-space: nowrap;
}
.topContCatchBody {
	position: absolute;
	top: 50%;
	left: 80%;
	transform: translate(-50%, -50%);
}
.topContPetfood .topContTitle {
	white-space: nowrap;
}
.topContPetfood {
	max-width: 31.5rem;
	margin: 0 auto 11rem;
	position: relative;
	transform: translateX(-40%);
}
.topContPetfood::after {
	content: "";
	display: block;
	width: 356px;
	height: 356px;
	background: url('../imgs/top_petfood_img.jpg') 0 0 no-repeat;
	background-size: cover;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(80%, -65%);
}
.topContPetfoodNotes {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 228px;
	height: 163px;
	background: url('../imgs/top_petfood_bg.png') center center no-repeat;
	background-size: cover;
	font-size: 0.75em;
	line-height: 2em;
	text-align: justify;
	padding: 3em 3em 1em;
	transform: translate(170%, 30%);
	z-index: 100;
}
.topContPetfood .illustFlag {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(378%, -143%) rotate(44deg);
}
.btnMore,
.btnMore:visited {
	display: inline-block;
	margin: 2rem auto;
	background: #231815;
	color: #fff;
	font-size: 0.75em;
	line-height: 1;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	text-decoration: none;
	padding: 0.75em 3em;
	border-radius: 0.625em;
	border: solid 1px #231815;
}
.btnMore:hover {
	color: #000;
	background: #fff;
}
.topContGoods {
	max-width: 25.25rem;
	margin: 0 auto 15rem;
	position: relative;
	transform: translateX(50%);
}
.topContGoods::before {
	content: "";
	display: block;
	width: 356px;
	height: 356px;
	background: url('../imgs/top_goods_img_01.jpg') 0 0 no-repeat;
	background-size: cover;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-185%, -55%);
}
.topContGoods::after {
	content: "";
	display: block;
	width: 296px;
	height: 296px;
	background: url('../imgs/top_goods_img_02.jpg') 0 0 no-repeat;
	background-size: cover;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-180%, 5%);
}
.topContGoods .topContTitle {
	text-indent: -6em;
}
.topContGoods .topContTitle .topContRuby {
	text-indent: 0;
}
.topContGoods .illustFlag {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(16%, -80%) rotate(-44deg);
}
.topContNews {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 6rem;
	max-width: 1280px;
}
.topNewsHeading {
	width: 25%;
}
.topNewsHeadingTitle {
	font-size: 1.25em;
	line-height: 1;
	max-width: 90%;
	margin: 0 auto 1em;
	padding: 0.75em;
	border: solid 1px #000;
	border-radius: 0.625em;
	background: #fff;
}
.topNewsHeadingTitle + .btnMore {
	margin-top: 0;
}
ul.topNewsList {
	width: 75%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	text-align: left;
}
.topNewsItem {
	width: 33%;
}
.topNewsLink,
.topNewsLink:visited {
	display: block;
	text-decoration: none;
}
.topNewsThumb {
	position: relative;
	width: 100%;
	padding-bottom: 86.6%;
	border-radius: 0.5em;
	overflow: hidden;
	margin-bottom: 1em;
}
.topNewsThumbImg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
}
.topNewsLink:hover .topNewsThumbImg {
	opacity: 1;
	transform: translate(-50%,-50%) scale(1.1);
}
.topNewsInfo {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 0.75em;
	line-height: 1;
	margin-bottom: 1em;
}
.topNewsInfo time {
	letter-spacing: 0.2em;
	margin-right: 2em;
}
.topNewsCat {
	display: inline-block;
	background: #000;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	padding: 0.75em 1.5em;
	border-radius: 0.75em;
}
.sticky .topNewsCat {
	margin: 0 auto;
	padding: 0.75em 3em;
}
.sticky .topNewsInfo time {
	display: none;
}
.topNewsTitle {
	font-size: 0.75em;
	line-height: 1.5em;
	font-weight: normal;
	letter-spacing: 0.05em;
	margin: 0;
}
.topContNews .illustFootprint {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-825%, 80%) rotate(-25deg);
}

/* !animation */
/* --------------------------- */
.default.visible, .default.invisible {
	opacity: 0.0;
}
.default.visible {
	opacity: 1.0;
	transition: all 1.0s ease 0.4s;
}
.topCont.visible, .topCont.invisible {
	opacity: 0;
}
.topCont.visible {
	opacity: 1.0;
	transition: all 0.8s ease 0.2s;
}
.topContAbout.invisible {
	transform: translateX(-60%);
}
.topContAbout.visible {
	transform: translateX(-50%);
}
.topContAbout.invisible::after {
	opacity: 0;
	transform: translate(250%, -80%) scale(0);
}
.topContAbout.visible::after {
	transition: all 0.6s cubic-bezier(.65,.21,.52,1.53) 1.2s;
	opacity: 1;
	transform: translate(250%, -80%) scale(1);
}
.topContAbout.invisible .illustFootprint {
	opacity: 0;
	transform: translate(790%, 20%) rotate(16deg);
}
.topContAbout.visible .illustFootprint {
	transition: all 0.2s cubic-bezier(.65,.21,.52,1.53) 0.8s;
	transform: translate(790%, 0) rotate(16deg);
	opacity: 1;
}
.topContCycle.invisible .topCycleTitle {
	transform: translate(-50%,-50%) scale(0);
}
.topContCycle.visible .topCycleTitle {
	transition: all 0.4s ease 0.2s;
	transform: translate(-50%,-50%) scale(1);
}
.topContCycle.invisible .topCycleTitle::before {
	transform: translate(-50%,-50%) scale(0);
}
.topContCycle.visible .topCycleTitle::before {
	transition: all 1.0s cubic-bezier(.65,.21,.52,1.53) 0.05s;
	transform: translate(-50%,-50%) scale(1);
}
.topContCycle.invisible .topCycleItem {
	opacity: 0;
}
.topContCycle.visible .topCycleItem {
	transition: all 1.0s ease 1.2s;
	opacity: 1;
}
.topContCycle.visible .topCycleItem.point2 {
	transition-delay: 1.8s;
}
.topContCycle.visible .topCycleItem.point3 {
	transition-delay: 2.4s;
}
.topContCycle.visible .topCycleItem.point4 {
	transition-delay: 3.0s;
}
.topContCycle.visible .topCycleItem.point5 {
	transition-delay: 3.6s;
}
.topContCatch.invisible::before {
	opacity: 0;
	transform: translateX(-5%);
}
.topContCatch.visible::before {
	opacity: 1;
	transform: translateX(0);
	transition: all 1.0s ease 0.2s;
}
.topContCatch.invisible .topContCatchTxt {
	opacity: 0;
	transform: translateY(0.5em);
}
.topContCatch.visible .topContCatchTxt {
	opacity: 1;
	transform: translateY(0);
	transition: all 0.4s ease 1.2s;
}
.topContCatch.visible .topContCatchTxt:last-of-type {
	transition-delay: 1.8s;
}
.topContPetfood.invisible::after {
	opacity: 0;
	transform: translate(80%, -65%) scale(0);
}
.topContPetfood.visible::after {
	opacity: 1;
	transition: all 0.6s cubic-bezier(.65,.21,.52,1.53) 0.2s;
	transform: translate(100%, -65%) scale(1);
}
.topContPetfood.invisible .topContTitle,
.topContPetfood.invisible .topContTxt,
.topContPetfood.invisible .btnWrap,
.topContGoods.invisible .topContTitle,
.topContGoods.invisible .topContTxt,
.topContGoods.invisible .btnWrap {
	opacity: 0;
}
.topContPetfood.visible .topContTitle,
.topContPetfood.visible .topContTxt,
.topContPetfood.visible .btnWrap,
.topContGoods.visible .topContTitle,
.topContGoods.visible .topContTxt,
.topContGoods.visible .btnWrap {
	opacity: 1;
	transition: all 1.0s ease 1.0s;
}
.topContPetfood.invisible .topContPetfoodNotes {
	opacity: 0;
	transform: translate(170%, 30%) scale(1.2);
}
.topContPetfood.visible .topContPetfoodNotes {
	opacity: 1;
	transition: all 0.6s ease 1.8s;
	transform: translate(170%, 30%) scale(1);
}
.topContGoods.invisible::before {
	opacity: 0;
	transform: translate(-185%, -55%) scale(0);
}
.topContGoods.visible::before {
	opacity: 1;
	transition: all 0.6s cubic-bezier(.65,.21,.52,1.53) 0.2s;
	transform: translate(-185%, -55%) scale(1);
}
.topContGoods.invisible::after {
	opacity: 0;
	transform: translate(-180%, 5%) scale(0);
}
.topContGoods.visible::after {
	opacity: 1;
	transition: all 0.6s cubic-bezier(.65,.21,.52,1.53) 0.4s;
	transform: translate(--180%, 5%) scale(1);
}
.invisible .topNewsItem {
	opacity: 0;
	transform: translateY(3em);
}
.visible .topNewsItem {
	opacity: 1;
	transform: translateY(0);
	transition: all 0.5s cubic-bezier(.65,.21,.52,1.53) 0.6s;
}
.visible .topNewsItem:nth-of-type(2) {
	transition-delay: 0.8s;
}
.visible .topNewsItem:nth-of-type(3) {
	transition-delay: 1.0s;
}

/* !lower */
/* --------------------------- */
.content {
	padding: 2.5em 0;
}
body .woocommerce {
	max-width: 1024px;
	margin: 0 auto;
}

/* !about */
/* --------------------------- */
.aboutIntroTitle {
	font-size: 1.75em;
	line-height: 1.4em;
	color: #009245;
	font-weight: 500;
	margin: 0 auto 1.5em;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.aboutIntroTitle::before,
.aboutIntroTitle::after {
	content: "";
	display: inline-block;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	transform: translateY(-0.25em);
}
.aboutIntroTitle::before {
	width: 34px;
	height: 45px;
	background-image: url('../imgs/about_title_bg_left.png');
	margin-right: 1.5em;
}
.aboutIntroTitle::after {
	width: 27px;
	height: 48px;
	background-image: url('../imgs/about_title_bg_right.png');
	margin-left: 1.5em;
}
.aboutIntroTxt {
	font-size: 0.75em;
	line-height: 2em;
	text-align: justify;
	letter-spacing: 0.1em;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
	max-width: 61em;
	margin: 0 auto 2rem;
}
.aboutIntroAnswer {
	font-size: 1.125em;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 auto 1em;
	display: flex;
	justify-content: center;
	align-items: center;
}
.aboutIntroAnswer::before,
.aboutIntroAnswer::after {
	content: "";
	display: inline-block;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	width: 10px;
	height: 38px;
}
.aboutIntroAnswer::before {
	background-image: url('../imgs/about_answer_bg_left.png');
	margin-right: 1.5em;
}
.aboutIntroAnswer::after {
	background-image: url('../imgs/about_answer_bg_right.png');
	margin-left: 1.5em;
}
.marker {
	position: relative;
}
.marker::before {
	content: "";
	display: block;
	width: 100%;
	height: 0.5em;
	position: absolute;
	left: 0;
	bottom: 0;
	background: #f7c924;
	z-index: -1;
}
.aboutPoints {
	max-width: 1282px;
	background: #39b54a;
	color: #fff;
	margin: 0 auto 6em;
	border-radius: 2.25em;
	position: relative;
}
.aboutPointArrow {
	width: 116px;
	height: 56px;
	background: #39b54a;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	overflow: hidden;
}
.aboutPointArrow::before,
.aboutPointArrow::after {
	content: "";
	display: block;
	width: 100%;
	height: 200%;
	background: #fff;
	border-radius: 100%;
	position: absolute;
	top: 0;
	left: 50%;
}
.aboutPointArrow::before {
	transform: translateX(-100%);
}
.aboutPointArrow::after {
	transform: translateX(0);
}
.aboutPointsTitle {
	font-size: 0.875em;
	line-height: 2.25em;
	margin: 0 auto 1em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.aboutPointsTitle b {
	font-size: 1.714em;
	letter-spacing: 0;
	text-indent: 0;
}
ol.aboutPointsList {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	font-size: 0.875em;
	line-height: 1.57em;
	font-weight: bold;
	counter-reset: aboutPoints;
}
.aboutPointsItem {
	counter-increment: aboutPoints;
	width: 20%;
	position: relative;
}
.aboutPointsItem::before {
	content: '0'counter(aboutPoints);
	font-size: 3em;
	font-weight: bold;
	position: absolute;
	top: 155px;
	left: 50%;
	transform: translateX(0.5em);
	z-index: 5;
}
.aboutPointsItem::after {
	content: "";
	width: 3rem;
	height: 2rem;
	background: #39b54a;
	border-bottom: solid 2px #fff;
	position: absolute;
	top: 155px;
	left: 50%;
	transform: translate(-15%, -45%) rotate(-58deg);
	z-index: 10;
}
.aboutPointsIcon {
	position: relative;
	margin: 0 auto 5.5em;
}
.aboutPointsIcon .txtLink {
	display: block;
	width: 125px;
	height: 125px;
	margin: 0 auto;
	background: url('../imgs/about_points_icon_01_over.png') center center no-repeat;
	background-size: cover;
	border-radius: 50%;
}
.aboutPointsItem:nth-of-type(2) .aboutPointsIcon .txtLink {
	background-image:  url('../imgs/about_points_icon_02_over.png');
}
.aboutPointsItem:nth-of-type(3) .aboutPointsIcon .txtLink {
	background-image:  url('../imgs/about_points_icon_03_over.png');
}
.aboutPointsItem:nth-of-type(4) .aboutPointsIcon .txtLink {
	background-image:  url('../imgs/about_points_icon_04_over.png');
}
.aboutPointsIcon img {
	border-radius: 50%;
	overflow: hidden;
}
.aboutPointsIcon .txtLink:hover img {
	opacity: 0;
}
.aboutPointsIcon::before {
	content: "";
	width: 139px;
	height: 180px;
	background: url('../imgs/about_points_balloon.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-44%,-57%) rotate(9deg);
	z-index: 15;
	pointer-events: none;
}
.aboutPointsItem:nth-of-type(2) .aboutPointsIcon::before {
	transform: translate(-40%,-53%) rotate(20deg);
}
.aboutPointsItem:nth-of-type(3) .aboutPointsIcon::before {
	transform: translate(-42%,-56%) rotate(22deg);
}
.aboutPointsItem:nth-of-type(4) .aboutPointsIcon::before {
	transform: translate(-39%,-51%) rotate(40deg);
}
.aboutDetail {
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.aboutDetail:nth-of-type(even) {
	flex-direction: row-reverse;
}
.aboutDetailWrap {
	max-width: 690px;
	width: 100%;
	transform: translateX(17.5%);
	padding-top: 1em;
}
.aboutDetail:nth-of-type(even) .aboutDetailWrap {
	transform: translateX(-17.5%);
}
.aboutDetailTitle {
	font-size: 0.875em;
	line-height: 1.57em;
	color: #006837;
	margin: 0 0 3rem;
	position: relative;
	display: inline-block;
}
.aboutDetailTitle::before,
.aboutDetailTitle::after {
	content: "";
	display: block;
	position: absolute;
}
.aboutDetailTitle::before {
	width: 99px;
	height: 78px;
	background: url(../imgs/about_detail_title_bg1.png) 0 0 no-repeat;
	background-size: cover;
	top: 0;
	left: 0;
	transform: translate(-50%, -75%);
}
.aboutDetailTitle::after {
	width: calc( 100% + 4em );
	height: calc( 100% + 3em );
	background: url(../imgs/about_detail_title_bg2.png) center center no-repeat;
	background-size: 100% 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.aboutDetailBody .btnMore {
	margin: 0;
}
.aboutDetailTxt {
	position: relative;
	font-size: 0.75em;
	line-height: 2em;
	text-align: justify;
	letter-spacing: 0.1em;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
	max-width: 42em;
	margin: 0 auto 2rem;
}
.aboutDetailTxt::before {
	content: "";
	width: 130%;
	height: 130%;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	border-radius: 1rem;
	transform: translate(-50%, -50%);
}
.aboutDetailPh {
	position: relative;
	z-index: -10;
	flex-shrink: 0;
}

/* !damage situation */
/* --------------------------- */
.damage-situation .pageHeading::before {
	background-image: url('../imgs/damage-situation_heading_bg.jpg');
}
.damageIntroTitle {
	font-size: 1.125em;
	line-height: 2em;
	color: #009245;
	margin: 0 auto 3em;
}
.damageIntroTitle::before,
.damageIntroTitle::after {
	content: "";
	display: block;
	width: 100%;
	height: 18px;
	margin: 1em auto;
	background-image: url('../imgs/damage_intro_title_bg_top.png');
	background-position: center center;
	background-repeat: no-repeat;
}
.damageIntroTitle::after {
	height: 9px;
	background-image: url('../imgs/damage_intro_title_bg_bottom.png');
}
.damageIntroTxt {
	font-size: 0.75em;
	line-height: 2em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
	margin: 0 auto 2em;
}
.damageCont:nth-of-type(even) {
	background: #efeded;
	position: relative;
	z-index: -1;
}
.damageCont .damageIntroTxt {
	text-align: justify;
	max-width: 37.2em;
}
.damageContTitle {
	display: inline-block;
	font-size: 0.875em;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	background: url('../imgs/damage_cont_title_bg.png') center center no-repeat;
	background-size: 100% 100%;
	padding: 2em 3em;
	margin: 0 0 2em;
}
.damageCont:nth-of-type(even) .damageContTitle {
	transform: translateX(-75%) rotate(-8deg);
}
.damageCont:nth-of-type(odd) .damageContTitle {
	transform: translate(50%, 2em) rotate(8deg);
}
.damageContBody {
	margin: 0 auto 4em;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.damageContBody .damageIntroTxt {
	margin: 0 0 0 2em;
}
.damageContPh {
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.damageContPhBox {
	margin: 0 1.5em;
}
.damageContPhBox figcaption {
	font-size: 0.75em;
	line-height: 1;
	margin: 0 0 1em;
	position: relative;
}
.damageContPhBox figcaption::before {
	content: "";
	display: block;
	position: absolute;
	width: 58px;
	height: 52px;
	background: url(../imgs/about_detail_title_bg1.png) 0 0 no-repeat;
	background-size: cover;
	top: 0;
	left: 0;
	transform: translate(-50%, -75%);
}
.damageCaptureWrap {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	margin-top: -3em;
}
.damageCaptureBox {
	margin: 0 2em;
}
.damageCaptureTitle {
	font-size: 1.125em;
	line-height: 1;
	margin: 0 auto 2em;
	color: #009245;
	display: flex;
	justify-content: center;
	align-items: center;
}
.captureFlag {
	margin-right: 1em;
}
.damageCont .damageCaptureBox .damageIntroTxt {
	max-width: 34em;
}
.damageProblemWrap {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	margin: 2em auto;
}
.damageProblemDetail {
	max-width: 13.875em;
	margin: 0 0.875em;
}
.damageProblemTitle {
	font-size: 0.875em;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 0 1.5em;
	padding: 1em 0;
	border-top: dashed 1px #000;
	border-bottom: dashed 1px #000;
}
.damageProblemPhImg {
	display: inline-block;
	border-radius: 0.75em;
	overflow: hidden;
	margin: 0 1.5em;
}
.damageProblemCatch {
	font-size: 0.875em;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	font-weight: bold;
	color: #009245;
	margin: 3em auto 1em;
	max-width: 490px;
	border: solid 1px #000;
	padding: 1.5em 0;
}
.damageQaCont {
	padding-top: 5em;
	counter-reset: segNum;
}
.damageQaTitle {
	position: relative;
	max-width: 26em;
	font-size: 0.875em;
	line-height: 1.75em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 auto 3em;
	padding: 2.5em 0 1.5em;
	border: solid 2px #000;
}
.damageQaTitle::after {
	content: "";
	display: block;
	width: 58px;
	height: 54px;
	position: absolute;
	right: 0;
	bottom: 0;
	background: url('../imgs/damage_qa_arrow.png') 0 0 no-repeat;
	background-size: cover;
	transform: translate(-25%, 50%);
}
.damageQuestion {
	font-size: 1.3em;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	padding: 0 3em;
}
.damageQuestion::before,
.damageQuestion::after {
	content: "";
	display: block;
	width: 2px;
	height: 3em;
	background: #000;
	position: absolute;
	top: 0;
	left: 50%;
}
.damageQuestion::before {
	transform: translate(-3em, -37.5%) rotate(-22.5deg);
}
.damageQuestion::after {
	transform: translate(3em, -37.5%) rotate(22.5deg);
}
.damageAnswer {
	font-size: 1.125em;
	line-height: 1.75em;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 auto 1em;
}
.damageAnswer b {
	font-size: 1.333em;
	color: #f00;
}
.damageAnswer:first-of-type {
	text-align: right;
	max-width: 22em;
}

.damageSegregationTitle {
	font-size: 1.125em;
	line-height: 0.75;
	color: #009245;
	margin: 0 auto;
	position: relative;
	counter-increment: segNum;
}
.damageSegregationTitle .ruby {
	font-size: 0.4em;
	color: #000;
	white-space: nowrap;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, 200%);
}
.damageSegregationTitle::before {
	content: "";
	display: block;
	width: 7em;
	height: 7em;
	border: solid 2px #000;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
}
.damageSegregationTitle::after {
	content: '0'counter(segNum);
	position: absolute;
	top: -3.5em;
	left: 50%;
	transform: translate(-50%, -75%);
	font-size: 0.75em;
	color: #000;
	padding: 0.375em 0.75em;
	border-bottom: solid 2px #000;
	background: #fff;
}
.damageSegregationCont {
	margin: 0 auto;
	padding: 4em 0;
	border-top: dashed 1px #009245;
}
.damageSegregationFirst {
}
.damageSegregationContWrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto 54px;
}
.damageSegregationContWrap .damageIntroTxt {
	max-width: 52em;
	margin: 0 auto 0 0;
}
.damageSegregationPhBox {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.damageSegregationPhBox .damageProblemPhImg {
	margin: 0 auto;
}
.damageSegregationSecond {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-top: 8em;
}
.damageSegregationSecond .damageSegregationContWrap {
	flex-direction: column;
	max-width: 346px;
}
.damageSegregationSecond .damageSegregationTitle {
	margin-bottom: 5em;
}
.damageSegregationSecond .damageIntroTxt {
	min-height: 12em;
}
.damageSegregationCatch {
	font-size: 1.125em;
	line-height: 2em;
	color: #009245;
	margin: 0 auto 5em;
}
.damageSegregationCatch::before,
.damageSegregationCatch::after {
	content: "";
	display: block;
	width: 100%;
	height: 18px;
	margin: 2em auto;
	background-image: url('../imgs/damage_segregation_catch_bg_top.png');
	background-position: center center;
	background-repeat: no-repeat;
}
.damageSegregationCatch::after {
	height: 10px;
	background-image: url('../imgs/damage_segregation_catch_bg_bottom.png');
}
ul.damageNav {
	display: flex;
	justify-content: center;
	align-items: center;
}
.damageNavItem {
	width: 200px;
	height: 200px;
	margin: 0 1em;
	font-size: 0.875em;
	line-height: 1.75em;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.damageNavLink,
.damageNavLink:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: #fff;
	text-shadow: 0 0 4px rgba(0,0,0,.5), 0 2px 4px rgba(0,0,0,.5);
	background-position: center center;
	background-repeat: repeat;
	background-size: cover;
	overflow: hidden;
	border-radius: 50%;
}
.damageNavLinkAbout {
	background-image: url('../imgs/damage_segregation_nav_bg_about.jpg');
}
.damageNavLinkFacility {
	background-image: url('../imgs/damage_segregation_nav_bg_facility.jpg');
}
.damageNavLinkPetfood {
	background-image: url('../imgs/damage_segregation_nav_bg_petfood.jpg');
}
.damageNavLinkGoods {
	background-image: url('../imgs/damage_segregation_nav_bg_goods.jpg');
}
.damageNavLinkDamage {
	background-image: url('../imgs/damage_segregation_nav_bg_damage.jpg');
}
.damageNavLink:hover {
	transform: scale(1.1);
	color: #fff;
}

/* !facility */
/* --------------------------- */
.facility .pageHeading::before {
	background-image: url('../imgs/facility_heading_bg.jpg');
}
.facilityCatch svg {
	transform: translate(430px, -60%) rotate(-3deg);
	margin: 0;
}
.facilityIntro {
	margin: -4em auto 5em;
}
.facilityIntro::before,
.facilityIntro::after {
	content: "";
	display: block;
	width: 100%;
	height: 18px;
	margin: 2em auto;
	background-image: url('../imgs/damage_intro_title_bg_top.png');
	background-position: center center;
	background-repeat: no-repeat;
}
.facilityIntro::after {
	height: 10px;
	background-image: url('../imgs/damage_intro_title_bg_bottom.png');
}
.facilityWrap {
	background: #39b54a;
	padding: 5.5rem 0;
	position: relative;
}
.facilityWrap::before {
	content: "";
	display: block;
	width: 1px;
	height: 110px;
	background: #000;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,-75%);
}
.facilityCont {
	max-width: 912px;
	background: #fff;
	border-radius: 0.75em;
	margin: 0 auto 5em;
	padding: 2em 3em;
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-direction: row-reverse;
}
.facilityCont:nth-of-type(even) {
	flex-direction: row;
}
.facilityCont::before {
	content: "";
	display: block;
	width: 1px;
	height: 110px;
	background: #000;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(100%,85%);
	z-index: 10;
}
.facilityContTitle {
	width: 12.5%;
	min-height: 287px;
	margin: 0 1.25%;
	padding: 1em 0;
	font-size: 1.125em;
	line-height: 1.75em;
	border-right: dashed 1px #c1272d;
	border-left: dashed 1px #c1272d;
}
.facilityContTitle::before {
	content: "";
	display: block;
	width: 56px;
	height: 42px;
	background: url('../imgs/facility_cont_title_bg.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 50%;
	transform: translate(110%, 5%);
}
.facilityContTitle .facilityNum {
	position: absolute;
	top: 0;
	left: 50%;
	font-size: 1.125em;
	line-height: 1;
	transform: translate(-6rem, -2.5rem);
}
.facilityContTitle .facilityNum::before,
.facilityContTitle .facilityNum::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
}
.facilityContTitle .facilityNum::before {
	width: 1.375em;
	height: 1.375em;
	background: #ff0;
	border: solid 1px #000;
	transform: translate(-50%, -50%) rotate(45deg);
	z-index: -1;
}
.facilityContTitle .facilityNum::after {
	width: 9px;
	height: 55px;
	background: url('../imgs/facility_cont_arrow.png') 0 0 no-repeat;
	background-size: cover;
	transform: translate(1.25em, 0.25em) rotate(-45deg);
}
.facilityContTitle .tate {
	min-width: 2em;
	text-align: left;
}
.facilityCont:nth-of-type(4) .facilityContTitle .tate,
.facilityCont:nth-of-type(5) .facilityContTitle .tate {
	padding-top: 1.75em;
}
.facilityContPh {
	width: 40%;
	position: relative;
}
.facilityContPh img {
	position: absolute;
	max-width: 200%;
	top: 0;
	left: 0;
	transform: translateY(-50%);
}
.facilityCont:nth-of-type(even) .facilityContPh img {
	left: auto;
	right: 0;
}
.facilityCont .damageIntroTxt {
	text-align: justify;
	max-width: 40%;
	margin: 0;
	text-indent: 0;
}
.fukidashiBgPh {
	transform: translate(-50%, 15%);
}
.facilityBalloon {
	font-family:'游ゴシック', YuGothic,'ヒラギノ角ゴ ProN','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	position: absolute;
	top: 40%;
	right: 52%;
	width: 294px;
	height: 180px;
	display: block;
	background: url('../imgs/facility_balloon.png') 0 0 no-repeat;
	background-size: cover;
	line-height: 1.75em;
	padding: 3.5em 3em 0 1.5em;
}
.colored {
	color: #f00;
}
.notes {
	display: inline-block;
	font-size: 0.8333em;
	line-height: 1.5em;
	margin: 0.5em auto 0 1em;
}
.facilityWrap .facilityCont:nth-of-type(2) .facilityContPh img {
	transform: translate(-25%,-50%);
}
.facilityWrap .facilityCont:nth-of-type(5) {
	flex-direction: row;
}
.facilityWrap .facilityCont:nth-of-type(5) .facilityContPh img {
	left: auto;
	right: 0;
}
.facilityWrap .facilityCont:nth-of-type(5) .facilityBalloon {
	width: 238px;
	height: 148px;
	line-height: 1.5em;
	padding: 2.5em 5em 0 4em;
	top: auto;
	right: 148px;
	bottom: -20px;
}
.facilityWrap .facilityCont:nth-of-type(6) {
	flex-direction: row-reverse;
}
.facilityWrap .facilityCont:nth-of-type(6) .facilityContPh img {
	left: 0;
	right: auto;
}
.facilityWrap .facilityCont:nth-of-type(6) .facilityBalloon {
	width: 238px;
	height: 148px;
	font-size: 0.75em;
	line-height: 1.5em;
	text-align: left;
	letter-spacing: 0.1em;
	font-weight: bold;
	padding: 4em 5em 0 4em;
	right: 30%;
	transform: translateY(30%);
}
.facilityContCatch {
	display: inline-block;
	background: #fff;
	font-size: 0.875em;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	padding: 1.5em 3em;
	position: relative;
}
.facilityContCatch::before {
	content: "";
	display: block;
	width: 58px;
	height: 54px;
	background: url('../imgs/facility_cont_catch_bg.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-30%, -75%);
}
.facilityContCatch .marker {
	z-index: 10;
}
.facilitySafety {
	padding-top: 4rem;
}
.facilitySafetyTitle {
	font-size: 1.125em;
	line-height: 1;
	margin: 0 auto 2em;
	position: relative;
}
.facilitySafetyTitle::before,
.facilitySafetyTitle::after {
	content: "";
	display: block;
	width: 23px;
	height: 14px;
	background: url('../imgs/facility_safety_title_bg.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	left: 50%;
}
.facilitySafetyTitle::before {
	transform: translate(-7.5em, -150%);
}
.facilitySafetyTitle::after {
	transform: translate(6em, 50%) rotate(180deg);
}
.facilitySafety .damageNav {
	margin-top: 6rem;
}

/* !pet-food */
/* --------------------------- */
.pet-food .pageHeading {
	padding-top: 160px;
}
.pet-food .pageHeading::before {
	background-image: url('../imgs/pet-food_heading_bg.jpg');
}
.pet-food .pageTitle {
	line-height: 1.3215em;
	margin-bottom: 0;
}
.pet-food .pageTitle .ruby {
	font-size: 0.4em;
	color: #000;
	text-shadow: 0 0 2px #fff, 0 0 4px #fff,0 0 4px #fff;
	vertical-align: top;
}
.btnBnr {
	display: block;
	width: fit-content;
	margin: 0 auto 5rem;
	translate: 66% 0;
}
.petfoodCatch {
	display: inline-block;
}
.petfoodCatch .aboutIntroAnswer {
	font-size: 1.125em;
	line-height: 1.333em;
	text-align: left;
	transform: translateX(420px) rotate(-28.6deg);
}
ul.petfoodNav {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	margin: 4rem auto 4rem;
	font-size: 1.125em;
	line-height: 1.375em;
	font-weight: bold;
}
ul.petfoodNav .ruby {
	font-size: 0.666em;
}
.petfoodNavItem {
	margin: 0 2rem;
}
.petfoodNavLink {
	text-decoration: none;
	color: #009245;
}

.petfoodContTitle {
	font-size: 1.75em;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 auto 4rem;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	transform: translateX(-33%) rotate(-7deg);
}
.petfoodCont:nth-of-type(even) .petfoodContTitle {
	transform: translateX(33%) rotate(7deg);
}
.petfoodContTitle::before,
.petfoodContTitle::after {
	content: "";
	display: inline-block;
	width: 278px;
	height: 2px;
	background: url('../imgs/pet-food_title_bg.png') center center no-repeat;
	background-size: 100% auto;
	margin: 0 2.625rem;
}
.petfoodContTitle .ruby {
	font-size: 0.5em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, 150%);
}

.commitCont {
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 0 auto 2em;
}
.commitCont:nth-of-type(even) {
	flex-direction: row-reverse;
}
.comitContWrap {
	max-width: 34rem;
}
.comitContPh {
	flex-shrink: 0;
}
.commitContTitle {
	position: relative;
	font-size: 1.25em;
	line-height: 2em;
	text-align: left;
	color: #009245;
	text-shadow: 1px 0 0 #fff, 1px 1px 0 #fff, 0 1px 0 #fff, 1px -1px 0 #fff, -1px 0 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff;
	margin: 0 0 2rem;
}
.commitCont:nth-of-type(even) .commitContTitle {
	transform: translateX(80%);
}
.commitContTitle .commitContNum {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.7em;
	line-height: 46px;
	color: #000;
	padding: 0 0 0 1.75em;
	background: url('../imgs/pet-food_commit_title_bg.png') left center no-repeat;
	background-size: auto 100%;
	transform: translateX(-3em);
}
ul.comitContTxt {
	font-size: 0.875em;
	line-height: 1.785em;
	text-align: left;
	list-style: disc;
	padding-left: 1.5em;
}

.charaCatch {
	font-size: 0.875em;
	line-height: 1.92875em;
	text-align: left;
	font-weight: bold;
	margin: 0 0 2rem;
}
.charaCatch .maker {
	font-size: 1.2875em;
}
.charaWrap {
	margin-left: 50vw;
	position: relative;
}
.charaWrap::before {
	content: "";
	display: block;
	width: 50vw;
	height: 35vw;
	background: url('../imgs/pet-food_chara_bg.jpg') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: -1;
	transform: translate(-105%, -50%) rotate(7deg);
}
.charaData {
	font-size: 0.625em;
	line-height: 1.5em;
	border-top: solid 1px #000;
	border-collapse: collapse;
	position: relative;
}
.charaData::after {
	content: "";
	display: block;
	width: 153px;
	height: 178px;
	background: url('../imgs/pet-food_chara_illust.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	transform: translate(140%, 25%);
}
.charaData th,
.charaData td {
	padding: 0.375em 0.5em;
}
.charaData thead th {
	font-weight: 500;
	border-bottom: solid 1px #000;
}
.charaData .shika {
	color: #f00;
}
.charaData caption {
	border-top: solid 1px #000;
	caption-side: bottom;
	text-align: right;
	padding-top: 0.5em;
}
.dataNotes {
	display: block;
	text-align: left;
	font-size: 0.875em;
	margin-top: 0.5em;
}

#product .petfoodContTitle .ruby {
	letter-spacing: 0;
	text-indent: 0;
	font-size: 0.375em;
	line-height: 1.5em;
	transform: translate(-50%, 100%);
}
#product .petfoodContTitle .ruby b {
	font-size: 1.7em;
}
#product.petfoodCont {
	position: relative;
}
.productListLink,
.productListLink:visited {
	display: block;
	width: 124px;
	padding-bottom: 2.5em;
	font-size: 0.75em;
	line-height: 1.75em;
	text-decoration: none;
	color: #006837;
	font-weight: bold;
	background: url('../imgs/pet-food_product_buy_bg.png') center bottom no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: 2rem;
	left: 50%;
	transform: translateX(320px);
}
.productListLink:hover {
	transform: translateX(320px) scale(1.1);
}
.productWrap {
	margin: 0 auto 6rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.productBox {
	max-width: 50%;
	margin: 0 0 5rem;
	position: relative;
}
.productTitle {
	background: #000;
	color: #fff;
	font-size: 1.125em;
	line-height: 1;
	white-space: nowrap;
	padding: 0.75em 3em;
	border-radius: 0.625rem;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-120%, 0);
}
.productBox:nth-of-type(2) .productTitle {
	transform: translate(-100%, 400%);
}
.productBox:nth-of-type(3) .productTitle {
	transform: translate(-75%, -50%);
}
.productBox:nth-of-type(4) .productTitle {
	transform: translate(0, 400%);
}
.productTxt {
	font-size: 0.75em;
	line-height: 2em;
	margin: 1em auto 2em;
}
.productBox .btnMore,
.productBox .btnMore:visited {
	border-radius: 0;
	margin: 0;
	padding: 1em 2em;
	background: #fff;
	color: #000;
}
.productBox .btnMore:hover {
	background: #000;
	color: #fff;
}
.petfoodPrdIntro {
	max-width: 880px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 6rem;
}
.petfoodPrdIntroBody {
	max-width: 34em;
}
.petfoodPrdIntroTxt {
	font-size: 1em;
	line-height: 1.75;
	text-align: justify;
	margin: 0 auto 1.5em;
}
.petfoodPrdIntroBtn {
	text-align: right;
}
.petfoodPrdIntroBtn .btnBuy {
	position: relative;
	top: auto;
	left: auto;
}
.petfoodPrdDetail {
	width: 100%;
	margin: 0 auto;
	text-align: left;
}
.petfoodPrdDetail dt {
	font-size: 1.125em;
	line-height: 1;
	font-weight: bold;
	margin: 0 auto 1.25rem;
	padding: 0.625em 2em;
	display: inline-block;
	border-radius: 0.5em;
	background: #9b1212;
	color: #fff;
}
.petfoodPrdDetail dt:nth-of-type(2) {
	background: #131391;
}
.petfoodPrdDetail dt:nth-of-type(3) {
	background: #543209;
}
.petfoodPrdDetail dd {
	font-size: 1em;
	line-height: 1.75;
	margin: 0 auto 2.5rem;
}
#shop.petfoodCont {
	min-height: 37vw;
	position: relative;
	padding: 5vw 0;
	margin-bottom: 7.5vw;
}
#shop.petfoodCont::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -10;
	background: url('../imgs/pet-food_shop_bg.jpg') 0 0 no-repeat;
	background-size: cover;
	transform: scale(1.1) rotate(7deg);
}
.petfoodShopBtn,
.petfoodShopBtn:visited {
	font-size: 0.875em;
	line-height: 2em;
	text-decoration: none;
	display: inline-block;
	background: rgba(255,255,255,.75);
	padding: 3em 6em 2em;
	border-radius: 0.875em;
	box-shadow: 0 0 0 1em rgba(255,255,255,.5);
}
.petfoodShopBtn:hover {
	background: #fff;
}
.petfoodShopBtnIcon {
	display: block;
	margin: 1em auto 0;
}
.petfoodShopBtn:hover .petfoodShopBtnIcon {
	opacity: 1;
	transform: scale(1.25);
}

.petfoodListTitle {
	background: url('../imgs/pet-food_list_title_bg.png') center bottom no-repeat;
	min-height: 245px;
	font-size: 2.25em;
	line-height: 1.25em;
	color: #009245;
	padding-top: 0.7em;
	margin: 0 auto 1em;
}
.petfoodListTitle .ruby {
	display: block;
	font-size: 0.33em;
	line-height: 1.75em;
	font-weight: normal;
	color: #000;
	text-indent: 9.375em;
}
.single-store .petfoodListTitle .ruby {
	text-indent: 7em;
}
.petfoodListCatch {
	line-height: 1.333em;
	text-align: left;
	margin-bottom: 12rem;
	margin-left: -7em;
}
.petfoodListIntro {
	position: absolute;
	top: 4em;
	left: 0;
	width: 100%;
}
.petfoodListIntroItem {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-280%, 15%);
}
.petfoodListIntroItemThumb {
	width: 160px;
	height: 160px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	background: url('../imgs/pet-food_list_intro_bg_01.png') center center no-repeat;
	background-size: cover;
}
.petfoodListIntroItemThumb a:hover img {
	opacity: 1;
	transform: scale(0.95);
}
.petfoodListIntroItemName {
	font-size: 1em;
	line-height: 1;
	color: #009245;
	white-space: nowrap;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(50%, 250%);
	margin: 0;
}
.petfoodListIntroItemName .ruby {
	font-size: 0.75em;
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(2n) .petfoodListIntroItemThumb {
	background-image:  url('../imgs/pet-food_list_intro_bg_02.png');
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(3n) .petfoodListIntroItemThumb {
	background-image:  url('../imgs/pet-food_list_intro_bg_03.png');
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(2) {
	transform: translate(230%, 50%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(2) .petfoodListIntroItemName {
	transform: translate(30%, 270%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(3) {
	transform: translate(-260%, 170%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(3) .petfoodListIntroItemName {
	transform: translate(130%, 170%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(4) {
	transform: translate(70%, 250%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(4) .petfoodListIntroItemName {
	transform: translate(-100%, 270%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(5) {
	transform: translate(-420%, 90%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(5) .petfoodListIntroItemName {
	transform: translate(-50%, 270%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(6) {
	transform: translate(250%, 200%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(6) .petfoodListIntroItemName {
	transform: translate(-20%, 290%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(7) {
	transform: translate(-390%, 250%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(7) .petfoodListIntroItemName {
	transform: translate(-50%, 300%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(8) {
	transform: translate(110%, 130%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(8) .petfoodListIntroItemName {
	transform: translate(-40%, -370%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(9) {
	transform: translate(-240%, 300%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(9) .petfoodListIntroItemName {
	transform: translate(-50%, 300%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(10) {
	transform: translate(200%, 330%);
}
.petfoodListIntro .petfoodListIntroItem:nth-of-type(10) .petfoodListIntroItemName {
	transform: translate(-145%, 130%);
}

.petfoodListCont {
	counter-reset: listNum;
}
.petfoodListContTitle {
	display: inline-block;
	margin: 3em auto 4em;
	padding: 0.75em 2.5em;
	font-size: 1em;
	line-height: 1;
	font-weight: normal;
	border: solid 1px #000;
	box-shadow: 4px 4px 0 0 rgba(0,0,0,1);
}
.petfoodListItemBox {
	position: relative;
	min-height: 320px;
	margin: 0 auto 3.5em;
	padding-top: 2.5rem;
	background: url('../imgs/pet-food_list_item_bg_01.png') center center no-repeat;
	counter-increment: listNum;
}
.petfoodListItemBox:nth-of-type(even) {
	background-image:  url('../imgs/pet-food_list_item_bg_02.png');
	padding-top: 4rem;
}
.petfoodListItemBox.frozen {
	background-image:  url('../imgs/pet-food_list_bg_frozen.png');
	background-size: auto 100%;
	padding-top: 4rem;
}
.petfoodListItemName {
	font-size: 1.125em;
	line-height: 1.1em;
	position: relative;
	margin: 0 auto 1em;
	color: #fff;
}
.petfoodListItemBox:nth-of-type(even) .petfoodListItemName {
	color: #000;
	transform: translateX(-10em);
}
.petfoodListItemName .ruby {
	font-size: 0.666em;
}
.petfoodListItemName::before {
	content: counter(listNum, decimal-leading-zero);
	display: block;
	font-size: 2.5em;
	font-weight: normal;
	margin: 0 auto 0.375em;
}
.petfoodListItemTxt {
	max-width: 32em;
	margin: 0 auto;
	font-size: 0.75em;
	line-height: 1.75em;
	text-align: justify;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
	color: #fff;
}
.petfoodListItemTxt .capsS {
	font-size: 0.875em;
	line-height: 1.5em;
}
.petfoodListItemBox:nth-of-type(even) .petfoodListItemTxt {
	color: #000;
}
.petfoodListItemPhMain {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}
.petfoodListItemBox:nth-of-type(even) .petfoodListItemPhMain {
	transform: translate(275%, -60%);
}
.petfoodListItemPhSub {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(-90%, 20%);
}
.petfoodListItemBox:nth-of-type(even) .petfoodListItemPhSub {
	transform: translate(-530%, -0);
}
.btnBuy,
.btnBuy:visited {
	display: inline-block;
	font-size: 0.75em;
	line-height: 1;
	text-align: left;
	text-decoration: none;
	position: absolute;
	left: 50%;
	bottom: 0;
}
.petfoodListItemBox:nth-of-type(even) .btnBuy {
	transform: translateX(150%);
}
.btnBuy::after {
	content: "";
	display: block;
	width: 145px;
	height: 23px;
	background: url('../imgs/pet-food_list_item_btn_arrow.png') 0 0 no-repeat;
	background-size: cover;
	transition: all 0.4s ease;
}
.btnBuy:hover::after {
	transform: translateX(1rem);
}

.awardTitle {
	font-size: 1.125em;
	line-height: 1.875em;
	font-weight: normal;
	margin: 0 auto 1em;
	padding-bottom: 3em;
	background: url('../imgs/pet-food_list_award_title_bg_bottom.png') center bottom no-repeat;
	position: relative;
}
.awardTitle .marker {
	font-weight: bold;
	font-size: 1.555em;
	color: #006837;
}
.awardTitle::before {
	content: "";
	display: block;
	width: 172px;
	height: 68px;
	background: url('../imgs/pet-food_list_award_title_bg_top.png') 0 0 no-repeat;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-125%, -75%);
}
.awardCatch {
	font-size: 1.125em;
	line-height: 1.875em;
	font-weight: normal;
	margin: 0 auto 3.5em;
}
.awardCatch .marker {
	font-size: 1.333em;
	font-weight: bold;
}
.awardVoiceTitle {
	font-size: 1.125em;
	line-height: 1;
	color: #006837;
	margin: 0 auto 4rem;
	padding: 0.8125em 0;
	background: url('../imgs/pet-food_list_award_voice_title_bg.png') center center no-repeat;
	background-size: auto 100%;
	position: relative;
}
.awardVoiceTitle::before {
	content: "";
	display: block;
	width: 45px;
	height: 17px;
	background: url('../imgs/pet-food_list_award_voice_title_bg_02.png') 0 0 no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-11em, -50%);
}
.awardVoiceWrap {
	width: 100%;
	display: flex;
	justify-content: space-around;
}
.awardVoiceBox {
	max-width: 287px;
	border: solid 1px #000;
	padding: 1em;
}
.awardVoicePerson {
	font-size: 1.125em;
	line-height: 1;
	color: #006837;
	margin: 0 auto 1rem;
	padding: 0 0 1.5em;
	background: url('../imgs/pet-food_list_award_voice_person_bg.png') center bottom no-repeat;
	background-size: 100% auto;
}
.awardVoiceHeading {
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin-bottom: 1em;
}
.awardVoicePh {
	width: 116px;
	height: 127px;
	margin-left: 1rem;
}
.awardVoiceName {
	font-size: 0.875em;
	line-height: 1.5em;
	text-align: left;
	font-weight: bold;
	margin: 0 auto 0 1rem;
}
.awardVoiceName b {
	font-size: 1.2em;
}
.awardVoiceTxt {
	font-size: 0.75em;
	line-height: 1.666em;
	text-align: justify;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
	margin: 0;
}
.btnShop,
.btnShop:visited {
	display: inline-block;
	font-size: 0.875em;
	line-height: 1;
	text-decoration: none;
	font-weight: bold;
	margin: 0 auto 2rem;
	padding: 1em 2em;
	border: solid 1px #000;
	position: relative;
}
.btnShop:hover {
	background: #000;
	color: #fff;
}
.btnShop::after {
	content: "";
	display: block;
	width: 100px;
	height: 16px;
	background: url('../imgs/pet-food_list_item_btn_arrow.png') 0 0 no-repeat;
	background-size: cover;
	transition: all 0.4s ease;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(55%, -65%);
}
.btnShop:hover::after {
	transform: translate(75%, -65%);
}
.pageTxt {
	font-size: 0.875em;
	line-height: 2.125em;
	margin: 0 auto 1em;
}

.pet-food.detail .petfoodListCatch,
.detail_01 .petfoodListCatch,
.detail_02 .petfoodListCatch,
.detail_03 .petfoodListCatch,
.detail_04 .petfoodListCatch,
.detail_05 .petfoodListCatch,
.detail_06 .petfoodListCatch,
.detail_07 .petfoodListCatch,
.detail_08 .petfoodListCatch,
.detail_09 .petfoodListCatch,
.detail_10 .petfoodListCatch {
	margin-bottom: 4rem;
}
.itemDetailCont {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-top: 0;
}
.woocommerce div.product div.images {
	width: 100%;
	max-width: 450px;
	float: none;
}
.itemDetailWrap {
	width: 100%;
	max-width: 450px;
	text-align: left;
}
.itemDetailPh {
	margin: 0 0 1em;
}
.itemDetailGuide {
	margin: 4rem auto;
	text-align: center;
	font-size: 0.75em;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	font-weight: bold;
}
.itemDetailGuideTitle {
	display: inline-block;
	border: solid 1px #000;
	padding: 1em 1.5em;
	margin: 0 0 1.5em;
}
.itemDetailGuideBody {
	margin: 0 auto;
}
ul.txtNav {
	margin: 0 auto;
	display: inline-block;
}
.txtNavItem {
}
.txtNavLink,
.txtNavLink:visited {
	display: block;
	text-decoration: none;
	padding: 0.5em 1em;
}
.txtNavLink:hover {
	background: #f0f0f0;
}
.itemDetailName {
	font-size: 1.125em;
	line-height: 1.25em;
	letter-spacing: 0.1em;
	margin: 0 0 1em;
}
.itemDetailName .ruby {
	font-size: 0.666em;
}
.istemDetailSpec {
	font-size: 0.75em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.istemDetailSpecTitle {
	width: 8em;
	margin: 0 0 2em;
}
.istemDetailSpecBody {
	width: calc( 100% - 8em );
	margin: 0 0 2em;
}
.btnAddCart,
.btnAddCart:visited {
	width: 100%;
	display: block;
	margin: 0 auto 2rem;
	border: none;
	background: #009245;
	color: #fff;
	font-size: 0.75em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	padding: 1em;
	font-weight: bold;
	outline: none;
	cursor: pointer;
	transition: all 0.4s ease;
	text-decoration: none;
	text-align: center;
}
.btnAddCart:hover {
	opacity: 0.75;
}
.itemDetailTxt {
	font-size: 0.75em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	margin: 0 0 1.5em;
}
.reviewTitle {
	padding: 1em 8em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
.reviewCont {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 2rem auto 4rem;
}
.reviewPh {
	flex-shrink: 0;
	margin: 0 3rem 0 0;
	box-shadow: 4px 4px 8px 0 rgba(0,0,0,.75);
}
.reviewName {
	font-size: 0.875em;
	line-height: 1.75em;
	text-align: left;
	margin: 0 0 1em;
}
.reviewTxt {
	font-size: 0.75em;
	line-height: 1.875em;
	text-align: justify;
	letter-spacing: 0.1em;
	margin: 0;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
}
.itemPagination {
	display: flex;
	justify-content: center;
	margin: 0 auto 3rem;
}
.itemPaginationLink,
.itemPaginationLink:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 9rem;
	height: 9rem;
	border: solid 1px #009245;
	text-decoration: none;
	border-radius: 50%;
	font-size: 0.7em;
	line-height: 1.5em;
	background-position: center bottom 2.5em;
}
.itemPaginationLink:hover {
	background: url('../imgs/pet-food_item_pagination_arrow_right_white.png') center bottom 2.5em no-repeat #009245;
	background-size: 80px auto;
	color: #fff;
}
.itemPaginationLink.arrowLeft:hover {
	background-image:  url('../imgs/pet-food_item_pagination_arrow_left_white.png');
}
 
.itemPaginationLink b {
	font-size: 2em;
	line-height: 1.25em;
}
.itemPaginationLink .arrow {
	margin: 0.5em 0 1em;
}
.itemPaginationLink:hover .arrow {
	opacity: 0;
}
.itemPaginationBackLink,
.itemPaginationBackLink:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 9rem;
	height: 9rem;
	font-size: 0.875em;
	line-height: 1.75em;
	text-decoration: none;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	border-radius: 50%;
	margin: 0 0.5em;
}
.itemPaginationBackLink:hover {
	background: #f0f0f0;
}

.shopListCatch {
	line-height: 1.333em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin-bottom: 1.75em;
}
.shopListIntro {
	font-size: 0.75em;
	line-height: 1.75em;
	margin: 0 auto;
}
.shopListCont {
	text-align: left;
}
.shopListCont .petfoodListContTitle {
	margin: 0 auto 3em 4rem;
}
.checker {
	display: none;
}
.shopListLocal {
	margin: 0 auto 0.625em;
}
.shopListLocalTitle {
	margin: 0;
	font-size: 0.75em;
	letter-spacing: 0.1em;
}
.shopListLocalTitle label {
	display: block;
	background: #e2dede;
	padding: 1.25em 1.75em;
	position: relative;
	cursor: pointer;
	transition: all 0.4s ease;
}
.shopListLocalTitle label:hover,
.checker:checked ~ .shopListLocalTitle label {
	background: rgba(226,222,222,.75);
}
.shopListLocalTitle label::after {
	content: "＋";
	font-size: 1.5em;
	width: 1em;
	text-align: center;
	position: absolute;
	top: 50%;
	right: 1.25rem;
	transform: translateY(-50%);
}
.shopListLocalBody {
	margin: 0;
}
.checker:checked ~ .shopListLocalTitle label::after  {
	content: "ー";
}
ul.shopList {
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: all 0 ease;
}
.checker:checked ~ .shopListLocalBody ul.shopList {
	position: relative;
	opacity: 1;
	pointer-events: auto;
	transition: all 0.4s ease;
}
.shopListItem {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1.75rem 2rem;
}
.shopListItem + .shopListItem {
	border-top: dashed 1px #000;
}
.shopListInfo {
	margin: 0 auto 0 0;
}
.shopListName {
	font-size: 1em;
	line-height: 1;
	letter-spacing: 0.1em;
	margin: 0 0 0.5em;
}
.shopListTxt {
	font-size: 0.75em;
	line-height: 2em;
	letter-spacing: 0.1em;
	margin: 0 auto;
}
.shopListLink,
.shopListLink:visited {
	display: block;
	font-size: 0.75em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-decoration: none;
	margin: 0 0 0 auto;
	padding: 0.5em 2em;
	background: #000;
	color: #fff;
	border: solid 1px #000;
	position: relative;
}
.shopListLink::before {
	content: "";
	display: inline-block;
	width: 3em;
	height: 1px;
	background: #000;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(-75%, -1px);
}
.shopListLink:hover {
	background: #fff;
	color: #000;
}
.shopListCont .btnShop,
.ucCont .btnShop {
	font-weight: 500;
	margin: 2rem auto 0 4rem;
	box-shadow: 4px 4px 0 0 rgba(0,0,0,1);
}
.ucCont .btnShop {
	margin: 1rem auto 2rem;
}
.shopListCont .btnShop::after {
	left: 60%;
}
.breadcrumbs {
	margin: 1em auto;
	font-size: 0.75em;
	letter-spacing: 0.1em;
	text-align: left;
}
.shopDetailCont {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.shopDetailPh {
	margin-bottom: 1em;
}
.shopDetailMap iframe {
	box-shadow: 0 0 0 1px #000;
}
.shopDetailWrap {
	width: 100%;
	max-width: 500px;
	text-align: left;
}
.shopDetailName {
	font-size: 1.125em;
	line-height: 1.25em;
	letter-spacing: 0.1em;
	margin: 0 0 1em;
}
.shopDetaiTxt {
	font-size: 0.75em;
	line-height: 1.75em;
	letter-spacing: 0.1em;
	margin: 0 0 1.5em;
}
ul.snsList {
	font-size: 1.4em;
	line-height: 1;
	margin-top: -0.5em;
}
.snsListItem {
	display: inline-block;
	margin: 0 0.25em 0 0;
}
.snsListLink,
.snsListLink:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #000;
	color: #fff;
	text-decoration: none;
	width: 1.8em;
	height: 1.8em;
	border-radius: 50%;
}
.snsListLink:hover {
	color: #fff;
	transform: scale(1.2);
}
.btnShopWeb,
.btnShopWeb:visited {
	display: block;
	max-width: 30em;
	font-size: 0.75em;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 1rem auto 2rem;
	padding: 1em 3em;
	background: #009245;
	border: solid 1px #009245;
	color: #fff;
	text-decoration: none;
}
.btnShopWeb:hover {
	background: #fff;
	color: #009245;
}
.btnShopBack,
.btnShopBack:visited {
	display: inline-block;
	font-size: 0.875em;
	line-height: 1.75em;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	margin: 3rem auto 3rem;
	padding: 1em 2em;
	background: #000;
	color: #fff;
	text-decoration: none;
	border: solid 1px #000;
}
.btnShopBack:hover {
	background: #fff;
	color: #000;
}

/* !goods */
/* --------------------------- */
.goodsIntro {
	max-width: 60em;
	font-size: 0.75em;
	line-height: 2em;
	text-align: justify;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.goodsIntro::before,
.goodsIntro::after {
	content: "";
	display: inline-block;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	width: 10px;
	height: 63px;
	flex-shrink: 0;
}
.goodsIntro::before {
	background-image: url('../imgs/goods_intro_bg_left.png');
	margin-right: 2em;
}
.goodsIntro::after {
	background-image: url('../imgs/goods_intro_bg_right.png');
	margin-left: 2em;
}
.goodsListContWrap {
	max-width: 1040px;
	position: relative;
	margin: 2rem auto 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}
.goodsListItemBox {
	width: 100%;
	max-width: 313px;
	margin: 0 0 5rem;
	padding-bottom: 3rem;
	position: relative;
}
.goodsListItemBox.gap {
	padding: 0;
	margin-bottom: 0;
}
.goodsListItemThumb {
	position: relative;
}
.goodsListItemThumb img,
.goodsListItemThumbPh {
	border-radius: 0.75em;
	overflow: hidden;
}
.goodsListItemName {
	font-size: 0.875em;
	line-height: 1.75em;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	margin: 0 auto 1em;
	padding: 1.5em 0 0;
}
.goodsListItemName .ruby {
	font-size: 0.85em;
	color: #009245;
}
.goodsListItemTxt {
	font-size: 0.75em;
	line-height: 1.75em;
	letter-spacing: 0.2em;
	margin: 0 0 2em;
}
.goodsListItemBox .btnBuy {
	left: auto;
	right: 0;
}

.goodsWip {
	width: 100%;
	margin: 0 auto 5em;
}
.goodsWipPh {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 6.75em;
}
.goodsWipPh img {
	width: 16.666%;
	border-radius: 0.5em;
}
.slideFrame {
	width: 100%;
	height: 190px;
	overflow: hidden;
	position: relative;
}
.slideGuide {
	width: 100%;
	height: 190px;
	position: relative;
}
.slideGuide .slideCell {
	width: 313px;
	height: 190px;
	position: relative;
	margin: 0;
}

.goodsCaution {
	background: #f4f3f2;
	padding: 3.5rem 0;
	margin-bottom: 1rem;
}
.cautionTitle {
	display: inline-block;
	font-size: 0.875em;
	line-height: 1;
	font-weight: normal;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	border: solid 1px #000;
	padding: 1em 3em;
	margin: 0 auto 2rem;
}
.cautionTxt {
	font-size: 0.875em;
	line-height: 1.75em;
	text-align: justify;
	letter-spacing: 0.2em;
	margin: 0 auto;
	max-width: 678px;
}
ul.cautionList {
	font-size: 0.875em;
	line-height: 1.75em;
	font-weight: normal;
	letter-spacing: 0.2em;
	text-align: justify;
	list-style: disc;
	padding-left: 1.5em;
	margin-bottom: 2em;
	max-width: 678px;
}
.cautionListItem {
	margin: 0 0 0.5em;
}
.cautionListItem span {
	font-size: 0.857em;
}
.btnCaution,
.btnCaution:visited {
	display: inline-block;
	font-size: 0.875em;
	line-height: 1;
	padding: 0.875em 1.75em;
	text-decoration: none;
	background: #000;
	color: #fff;
	border: solid 1px #000;
	margin-top: 2em;
}
.btnCaution:hover {
	background: #fff;
	color: #000;
	border: solid 1px #000;
}
.goodsPartnerCont {
	padding-top: 3.5rem;
}
.goodsPartnerCont .goodsListContWrap {
	max-width: 900px;
	margin-bottom: 0;
}
.goodsPartnerCont .awardVoiceTitle {
	margin-bottom: 2rem;
}
.goodsPartnerIntro {
	font-size: 0.875em;
	line-height: 1.75em;
	margin: 0 auto 3em;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
}
.goodsPartnerBox {
	max-width: 50%;
	margin: 0 auto;
}
.goodsPartnerInfo {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 1.5rem;
	margin: 0 auto 0.5rem;
}
.goodsPartnerCat {
	font-size: 0.75em;
	line-height: 1;
	margin: 0 auto 0 0;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
}
.goodsPartnerSns,
.goodsPartnerSns:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	white-space: nowrap;
	font-size: 1em;
	line-height: 1;
	text-decoration: none;
	font-weight: bold;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	background: #000;
	border: solid 1px #000;
	color: #fff;
	margin-left: 1em;
}
.goodsPartnerSns .fab {
	font-size: 1.25em;
}
.goodsPartnerSns:hover {
	background: #fff;
	color: #000;
}
.goodsPartnerThumb {
	position: relative;
	margin-bottom: 2rem;
}
.goodsPartnerName {
	font-size: 0.875em;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	background: #000;
	color: #fff;
	padding: 1em 1em;
	margin: 1em auto 1em;
	max-width: 15em;
}
.goodsPartnerLink,
.goodsPartnerLink:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 2.25em;
	font-size: 0.75em;
	text-decoration: none;
	padding: 0.25em;
}
.goodsPartnerLink:hover {
	color: #009245;
}
.goodsPartnerLink::after {
	content: "";
	display: inline-block;
	width: 74px;
	height: 12px;
	background: url('../imgs/btn_arrow_black.png') center center no-repeat;
	background-size: cover;
	margin-left: 1em;
	transition: all 0.4s ease;
}
.goodsPartnerLink:hover::after {
	transform: translateX(0.5rem);
}
.goodsPartnerTxt {
	font-size: 0.75em;
	line-height: 1.75em;
	margin: 0 auto;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
}
.goodsShopCont .goodsPartnerIntro {
	margin-bottom: 2rem;
}
.goodsShopCont .btnShopWeb {
	font-weight: bold;
}

.goods .itemDetailCont {
	max-width: 940px;
}
.goods .itemDetailWrap {
	text-align: center;
	max-width: 500px;
}
.goods .itemDetailWrap:last-of-type {
	max-width: 390px;
}
.goods .itemDetailName {
	color: #009245;
	font-size: 1.5em;
	text-align: center;
	border-top: solid 1px #009245;
	border-bottom: solid 1px #009245;
	padding: 0.5em;
	margin-bottom: 1.5em;
	display: inline-block;
}
.itemDetailCatch {
	font-size: 1.125em;
	line-height: 1.75em;
	text-align: left;
	margin: 0 0 1em;
}
.goods .itemDetailTxt {
	text-align: justify;
}
.goods .istemDetailSpec {
	text-align: left;
}
.itemGallery {
	margin-bottom: 1.5rem;
}
ul.itemNavControls {
	margin: 0 auto;
	position: relative
}
ul.itemNavControls .prev,
ul.itemNavControls .next {
	width: 2rem;
	height: 2rem;
	position: absolute;
	top: -64px;
	cursor: pointer;
}
ul.itemNavControls .prev:focus,
ul.itemNavControls .next:focus {
	outline: none;
}
ul.itemNavControls .prev {
	left: 0;
	transform: translate(-100%, -50%);
}
ul.itemNavControls .next {
	right: 0;
	transform: translate(100%, -50%);
}
ul.itemNavControls .prev::before,
ul.itemNavControls .next::before {
	content: "";
	display: block;
	width: 80%;
	height: 80%;
	border-right: solid 4px #c7b299;
	border-bottom: solid 4px #c7b299;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-75%, -50%) rotate(-45deg);
}
ul.itemNavControls .prev::before {
	transform: translate(-25%, -50%) rotate(-225deg);
}
ul.itemColorVariation {
	margin: 0 auto 2rem -1.625rem;
	font-size: 0.75em;
	line-height: 1.25em;
	text-align: left;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.itemColorVariationItem {
	width: 48px;
	margin: 0 0 1rem 1.625rem;
}
.itemColorVariationItem:last-of-type {
	margin-right: auto;
}
.itemColorVariationSample {
	width: 100%;
	height: 0;
	padding-bottom: 100%;
	margin: 0 0 0.5em;
	background: gray;
}
.itemColorVariationSample.black {
	background: black;
}
.itemColorVariationSample.red {
	background: red;
}
.itemColorVariationSample.green {
	background: green;
}
.itemColorVariationSample.blue {
	background: blue;
}
.itemColorVariationSample.orange {
	background: orange;
}
.goodsItemSpec {
	background: #f4f3f2;
	padding: 3rem;
	margin-bottom: 3rem;
}
.goodsItemSpecTitle {
	font-size: 1.125em;
	line-height: 1;
	font-weight: normal;
	margin: 0 auto 2rem;
}
.goodsItemSpecDetail {
	font-size: 1.125em;
	line-height: 1.5em;
	text-align: left;
	max-width: 700px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	border-top: solid 1px #000;
}
.goodsItemSpecDetailTitle {
	width: 15em;
	padding: 0.5em 2em 0.5em 5em;
	margin: 0;
	border-bottom: solid 1px #000;
}
.goodsItemSpecDetailBody {
	width: calc( 100% - 15em );
	margin: 0;
	padding: 0.5em 0;
	border-bottom: solid 1px #000;
}
.goods .itemPaginationLink,
.goods .itemPaginationLink:visited {
	background-position: center bottom 4em;
}
.goods .itemPaginationLink:hover {
	background-position: center bottom 4em;
}

.woocommerce.single-product #content div.product div.images, .woocommerce.single-product div.product div.images, .woocommerce-page.single-product #content div.product div.images, .woocommerce-page.single-product div.product div.images {
	width: 54%;
}
.woocommerce.single-product #content div.product div.summary, .woocommerce.single-product div.product div.summary, .woocommerce-page.single-product #content div.product div.summary, .woocommerce-page.single-product div.product div.summary {
	width: 43%;
}
.single-product .itemDetailNameWrap {
	text-align: center;
}
.single-product.woocommerce div.product .product_title.itemDetailName {
	color: #009245;
	padding: 0.8em 0;
	border-top: solid 1px #009245;
	border-bottom: solid 1px #009245;
	display: inline-block;
	margin-bottom: 2.666em;
}
.single-product.woocommerce div.product form.cart .variations,
.page-child div.product form.cart .variations {
	font-size: 0.75em;
	margin-top: -1rem;
	margin-bottom: 1rem;
}
.single-product.woocommerce div.product form.cart .variations td {
	padding: 0.5em 0;
}
.single-product.woocommerce div.product form.cart .variations label,
.page-child div.product form.cart .woocommerce .variations label {
	font-weight: 500;
}
.page-child div.product form.cart .woocommerce .variations .reset_variations {
	visibility: hidden;
}
div.product form.cart .woocommerce .variations th {
	border: 0;
	line-height: 2em;
	vertical-align: top;
	min-width: 8em;
}
div.product form.cart .woocommerce .variations select {
	max-width: 100%;
	min-width: 75%;
	display: inline-block;
	margin-right: 1em;
}
.page-child div.product form.cart::after, .page-child div.product form.cart::before {
	content: " ";
	display: table;
}
.woocommerce div.product form.cart .button,
.woocommerce #respond input#submit.alt.disabled, .woocommerce #respond input#submit.alt.disabled:hover, .woocommerce #respond input#submit.alt:disabled, .woocommerce #respond input#submit.alt:disabled:hover, .woocommerce #respond input#submit.alt:disabled[disabled], .woocommerce #respond input#submit.alt:disabled[disabled]:hover, .woocommerce a.button.alt.disabled, .woocommerce a.button.alt.disabled:hover, .woocommerce a.button.alt:disabled, .woocommerce a.button.alt:disabled:hover, .woocommerce a.button.alt:disabled[disabled], .woocommerce a.button.alt:disabled[disabled]:hover, .woocommerce button.button.alt.disabled, .woocommerce button.button.alt.disabled:hover, .woocommerce button.button.alt:disabled, .woocommerce button.button.alt:disabled:hover, .woocommerce button.button.alt:disabled[disabled], .woocommerce button.button.alt:disabled[disabled]:hover, .woocommerce input.button.alt.disabled, .woocommerce input.button.alt.disabled:hover, .woocommerce input.button.alt:disabled, .woocommerce input.button.alt:disabled:hover, .woocommerce input.button.alt:disabled[disabled], .woocommerce input.button.alt:disabled[disabled]:hover {
	background: #009245!important;
	font-size: 0.75em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	padding: 1em;
	display: block;
	float: none;
	width: 100%;
}
.woocommerce-product-details__short-description {
	margin: 0 0.5rem 4.5rem;
}
.woocommerce-product-details__short-description p {
	font-size: 0.75em;
	line-height: 1.666em;
	text-align: justify;
	margin: 0 0 1em;
}
.woocommerce-product-details__short-description p b,
.woocommerce-product-details__short-description p strong {
	font-size: 1.25em;
	line-height: 1.875em;
	margin-bottom: 2em;
	letter-spacing: 0.2em;
}
.slick-prev:before, .slick-next:before {
	content: "";
	width: 20px;
	height: 30px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url('../imgs/gallery_arrow_prev.png')!important;
	color: rgba(0,0,0,0)!important;
}
.slick-next:before {
	background-image: url('../imgs/gallery_arrow_next.png')!important;
}
.productsDetailBody {
	max-width: 54%;
	float: left;
}
.productsDetailBody p {
	font-size: 0.875em;
	line-height: 1.666em;
	text-align: justify;
	margin: 0 0 1em;
}
.productsDetailBody .gallery {
	font-size: 0.75em;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.productsDetailBody .gallery-columns-3 .gallery-item {
	float: none!important;
	margin: 0 auto 2rem 0;
	max-width: 27.5%;
}
.productsDetailBody .gallery-item {
}
.productsDetailBody .gallery-item dt {
	margin-bottom: 0.5em;
}
.productsDetailBody #gallery-1 img {
	border: none!important;
}
.product_meta {
	opacity: 0;
}
.coasterCaution {
	margin: 0 auto 5rem;
}
.coasterCaution h3 {
	font-size: 0.75em;
	line-height: 1;
	font-weight: normal;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 auto 2.3em;
	max-width: 32em;
	border: solid 1px #000;
	padding: 0.875em;
}
.coasterCaution p {
	font-size: 0.75em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0;
}

/* !contact */
/* --------------------------- */
.commonTitle {
	background: #f3efe7;
	font-size: 1.25em;
	line-height: 2.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 0 4.5rem;
	padding: 4.5rem 0;
	color: #009245;
}
.commonTitle .ruby {
	display: block;
	font-size: 1.4em;
}
.contactCatch {
	font-size: 1.75em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 0 auto 4.5rem;
}
.contactTxt {
	font-size: 0.8125em;
	line-height: 2.7em;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
}
.mailformDetail {
	max-width: 48.5rem;
	margin: 4rem auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	font-size: 0.8125em;
	letter-spacing: 0.3em;
	text-align: left;
}
.mailformTitle {
	width: 14rem;
	margin: 0 0 1.5rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.mailformTitle .required {
	display: inline-block;
	background: #009245;
	color: #fff;
	padding: 0.5em 1em;
	font-size: 0.875em;
	line-height: 1;
	font-weight: bold;
	margin: 0 0 0 auto;
	vertical-align: middle;
}
.mailformBody {
	width: calc( 100% - 17rem );
	margin: 0 0 1.5rem;
}
.mailformInput, main .woocommerce form .form-row input.input-text, main .woocommerce form .form-row textarea {
	width: 100%;
	max-width: 100%;
	background: #f3f1ee;
	padding: 0.75em 1em;
	border: none;
	box-shadow: 0 0 0 0 #000;
	font-size: 16px;
}
.mailformInput:focus, main .woocommerce form .form-row input.input-text:focus, main .woocommerce form .form-row textarea:focus {
	transition: all 0.4s ease;
	box-shadow: 0 0 0 2px #000;
	outline: none;
}
#order_comments_field {
	display: block;
}
.mailformBtnWrap {
	margin: 4rem auto;
}
.mailformBtn {
	border: none;
	background: #009245;
	color: #fff;
	cursor: pointer;
	font-size: 0.8125em;
	line-height: 1;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	padding: 1.5em 5em;
}
.mailformBtn::after {
	content: "＞";
	display: inline-block;
	width: 2em;
	height: 2em;
	line-height: 2em;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-left: 1em;
}
.mailformBtn:hover {
	opacity: 0.875;
}

/* !news */
/* --------------------------- */
.newsCatch {
	font-size: 1.125em;
	line-height: 1;
	text-align: left;
	text-indent: 1.5rem;
	letter-spacing: 0.2em;
	margin: 0 auto 1.5rem;
}
.newsCatch::after,
.postWrap::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-image: linear-gradient(to right, #000, #000 10px, transparent 10px, transparent 20px);
	background-repeat: repeat-x;
	background-size: 20px 1px;
	margin: 2rem auto 2rem;
}
.postWrap {
}
.postStickyTitle {
	display: inline-block;
	font-size: 0.8125em;
	line-height: 1.25em;
	font-weight: normal;
	letter-spacing: 0.3em;
	text-indent: 0.3em;
	background: #231815;
	color: #fff;
	padding: 0.75em 3em;
	margin: 0 auto 3em;
}
.postStickyWrap {
	display: flex;
	justify-content: center;
	align-items: center;
}
.postStickyBody {
	margin: auto 1.5rem auto auto;
}
.postStickyTxt {
	font-size: 0.8125em;
	line-height: 2.3em;
	text-align: left;
	letter-spacing: 0.2em;
	margin: 0 0 1rem;
}
.postStickyBody .btnShopWeb {
	font-weight: bold;
	margin: 0 auto;
	padding: 0.5em 2em 0.7em;
	display: inline-block;
}
.postStickyThumb {
	margin: 0 auto 0 1.5rem;
}
.postInfo {
	text-align: left;
	margin: 0 1.5rem 1.5rem;
}
.postCat {
	display: inline-block;
	background: #231815;
	color: #fff;
	min-width: 12em;
	font-size: 0.8125em;
	letter-spacing: 0.3em;
	text-indent: 0.3em;
	text-align: center;
	padding: 0.5em 1.5em;
	margin: 0 1.5em 0 0;
}
.postTime {
	font-size: 0.8125em;
	letter-spacing: 0.05em;
	font-weight: bold;
}
.postListTitle {
	font-size: 0.8125em;
	line-height: 2em;
	text-align: left;
	font-weight: normal;
	letter-spacing: 0.2em;
	margin: 0 0 1em 1.5rem;
}
.postBtnWrap {
	margin: 0 1.5rem;
	text-align: right
}
.postMore,
.postMore:visited {
	display: inline-block;
	font-size: 0.75em;
	line-height: 1;
	text-decoration: none;
	color: #009245;
	background: #fff;
	border: solid 1px #009245;
	padding: 0.375em 3em;
}
.postMore:hover {
	background: #009245;
	color: #fff;
}
.pagination {
	margin: 5rem auto 2.5rem;
	font-size: 1.125em;
	line-height: 1;
	font-weight: bold;
}
.paginationArrow,
.paginationArrow:visited {
	display: inline-block;
	line-height: 2em;
	width: 2em;
	height: 2em;
	text-decoration: none;
	border-radius: 50%;
	margin: 0 0.375em;
}
.paginationArrow:hover {
	background: #f0f0f0;
}
.paginationLink,
.paginationLink:visited,
.paginationCurrent {
	display: inline-block;
	line-height: 2em;
	width: 2em;
	height: 2em;
	text-decoration: none;
	border-radius: 50%;
	margin: 0 0.375em;
	background: #fff;
	border: solid 1px #000;
}
.paginationLink:hover,
.paginationCurrent {
	background: #000;
	color: #fff;
}
.paginationBackLink,
.paginationBackLink:visited {
	display: inline-block;
	height: 2rem;
	font-weight: normal;
	font-size: 0.8125em;
	line-height: 2rem;
	letter-spacing: 0.3em;
	text-indent: 0.3em;
	text-decoration: none;
	margin: 0;
	padding: 0 1em;
	border-radius: 3em;
}
.paginationBackLink:hover {
	background: #f0f0f0;
}
.postTitle {
	font-size: 1.125em;
	line-height: 1.375em;
	text-align: left;
	letter-spacing: 0.2em;
	font-weight: normal;
	margin: 0 0 1.5rem 1.5rem;
}
.postBody {
	padding: 0 3rem;
}
.postBody p {
	font-size: 0.812em;
	line-height: 1.75em;
	text-align: justify;
	margin: 0 0 1em;
	-webkit-font-feature-settings: 'pkna' 1;
	font-feature-settings: 'pkna' 1;
}

.tokushoCont {
	max-width: 940px;
	margin: 0 auto;
	text-align: left;
}
.tokushoTitle {
	font-size: 0.875em;
	letter-spacing: 0.1em;
	margin: 0;
	padding: 0.75rem 1.5rem;
	border-top: solid 1px #c7b299;
}
.tokushohoDetail {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	font-size: 0.75em;
	line-height: 1.75em;
	margin: 0;
}
.tokushohoDetailTitle {
	width: 20em;
	margin: 0;
	padding: 0.75rem 1.5rem;
	border-top: solid 1px #c7b299;
	font-weight: bold;
}
.tokushohoDetailBody {
	width: calc( 100% - 20em );
	padding: 0.75rem 1.5rem;
	margin: 0;
	border-top: solid 1px #c7b299;
}

.privacyBody {
	text-align: justify;
}
.privacyBody .contactTxt {
	text-indent: -1em;
	padding-left: 1em;
}


/* !woocommerce */
/* --------------------------- */
.checkoutWrap,
.cartWrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.cartWrap .shop_table,
.cartWrap .cart-collaterals, 
.checkoutWrap .col2-set,
.checkoutReview {
	max-width: 480px;
}
.woocommerce .cartWrap .cart-collaterals .cart_totals, .woocommerce-page .cartWrap .cart-collaterals .cart_totals {
	width: 100%;
	float: none;
}
.woocommerce main #respond input#submit.alt, .woocommerce main a.button.alt, .woocommerce main button.button.alt, .woocommerce main input.button.alt,
main .woocommerce #respond input#submit.alt,  main .woocommerce a.button.alt,  main .woocommerce button.button.alt,  main .woocommerce input.button.alt {
	background: #009245;
	color: #fff;
}
.woocommerce main #respond input#submit.alt:hover, .woocommerce main a.button.alt:hover, .woocommerce main button.button.alt:hover, .woocommerce main input.button.alt:hover,
main .woocommerce #respond input#submit.alt:hover,  main .woocommerce a.button.alt:hover,  main .woocommerce button.button.alt:hover,  main .woocommerce input.button.alt:hover {
	background: #009245;
	color: #fff;
	opacity: 0.75;
}
.woocommerce .checkoutWrap .col2-set .col-1,
.woocommerce .checkoutWrap .col2-set .col-2 {
	float: none;
	width: 100%;
}
main .woocommerce form .form-row label {
	text-align: left;
}
main .woocommerce form .form-row .required {
	position: relative;
	background: #C1272D;
	color: #C1272D;
	width: 2em;
	height: 1.25em;
	display: inline-block;
	vertical-align: -0.3125em;
	margin-left: 0.5em;
}
main .woocommerce form .form-row .required::after {
	content: "必須";
	font-size: 0.75em;
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #fff;
	white-space: nowrap;
}
.checkoutNotes {
	display: inline-block;
	font-size: 0.875em;
	line-height: 1.5em;
	text-align: left;
	font-weight: bold;
	margin: 0 1.5em 1em;
	padding-left: 1em;
	text-indent: -1em;
	color: #009245; 
}
main .woocommerce #payment #place_order, main .woocommerce-page #payment #place_order {
	float: none;
	margin: 0 auto;
}
ul.woocommerce-error {
	padding: 1em;
	line-height: 1.5em;
}
.btnContinue {
	padding: 1.25rem;
}
.btnContinue:hover {
	background: #f0f0f0;
}

main .woocommerce-order .woocommerce-thankyou-order-received {
	font-size: 1.75em;
	font-weight: bold;
	text-align: center;
}
main .woocommerce ul.order_details {
	margin: 0 auto 2em;
	line-height: 1.5em;
	display: flex;
	justify-content: center;
	align-items: center;
}
main .woocommerce ul.order_details li {
	float: none;
	margin: 0 1em;
}
main .woocommerce-order p {
	font-size: 0.875em;
	line-height: 2.125em;
	margin: 1em auto 1em;
}
main .woocommerce table.shop_table {
	width: auto;
	margin: 0 auto 2em;
}

/* !sp */
/* --------------------------- */
@media screen and (max-width:480px) {
	/* !sp common */
	/* --------------------------- */
	.floatLeft,
	.floatRight,
	.alignleft,
	.alignright {
		display: block;
		text-align: center;
		float: none;
		margin: 16px auto;
	}
	.nosp {
		display: none;
	}
	.sp {
		display: block;
	}
	.flexCont {
		display: block;
	}
	/* !sp layout */
	/* --------------------------- */
	body {
		font-size: 4vw;
		height: 100%;
	}
	main {
		width: 100%;
		overflow-x: hidden;
		padding: 0;
	}
	/* !sp header */
	/* --------------------------- */
	.gHeader {
		height: 15vw;
		padding: 0 1em;
		background: none;
		-webkit-backdrop-filter: blur(0);
		backdrop-filter: blur(0);
	}
	.gHeader .inner {
		height: 100%;
	}
	.siteTitle {
		margin: auto auto auto 0;
	}
	/* !sp nav */
	/* --------------------------- */
	.gNav {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: #fff;
		padding: 5em 2em 2em;
		opacity: 0;
		z-index: 900;
		pointer-events: none;
		transition: all 0.4s ease;
		display: block;
	}
	#spNav:checked ~ .gNav {
		opacity: 1;
		pointer-events: auto;
	}
	ul.gNavList {
		font-size: 1em;
		margin-bottom: 1em;
		display: block;
	}
	.gNavItem + .gNavItem {
		border-top: solid 1px #ccc;
	}
	.gNavCart {
		font-size: 1.125em;
		display: inline-block;
		margin: 0 auto;
		padding: 1em 1.5em 1em 3em;
	}
	.toggle {
		font-size: 0.6125em;
		line-height: 1.5em;
		color: #fff;
		display: block;
		width: 15vw;
		height: 15vw;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		z-index: 1000;
		position: fixed;
		top: 0;
		right: 0;
		background: #006837;
	}
	.toggle .bar {
		display: block;
		width: 50%;
		height: 3px;
		background: #fff;
		margin: 3px auto;
		transition: all 0.4s ease;
	}
	#spNav:checked ~ .toggle .toggleOn {
		display: none;
	}
	.toggleOff {
		display: none;
	}
	#spNav:checked ~ .toggle .toggleOff {
		display: block;
	}
	#spNav:checked ~ .toggle .bar:nth-of-type(3) {
		transform: translateY(9px) rotate(315deg);
	}
	#spNav:checked ~ .toggle .bar:nth-of-type(4) {
		opacity: 0;
		transform: rotate(-720deg);
	}
	#spNav:checked ~ .toggle .bar:nth-of-type(5) {
		transform: translateY(-9px) rotate(-315deg);
	}
	/* !sp footer */
	/* --------------------------- */
	.gFooter {
		padding: 3em 1.5em;
	}
	.footerInfo {
		margin: 0 auto;
	}
	.footerTxt {
	}
	ul.footerNavList {
		margin-bottom: 1rem;
	}
	.footerNavItem {
		display: block;
	}
	.footerNavLink {
		padding: 1em 1.5em;
	}
	.pagetop {
		font-size: 1.5em;
	}
	/* !sp common */
	/* --------------------------- */
	.pageHeading {
		position: relative;
		padding-top: 25vw;
		min-height: 80vw;
	}
	.pageHeading::before {
		width: 130vw;
		height: 91vw;
		transform: translate(-55.5%, -10%);
	}
	.pageTitle {
		width: 50vw;
		font-size: 1.375em;
		line-height: 1.5em;
		padding-top: 15vw;
		transform: translateX(50%);
	}
	.home .pageTitle {
		margin: 25vw auto 4em auto;
	}
	.commonTitle {
		margin-bottom: 1.5rem;
	}
	/* !sp top */
	/* --------------------------- */
	.home main::before {
		background-position: center 66vw;
		background-size: 90% 100%;
	}
	.swiper-container {
		width: 130vw;
		height: 91vw;
		transform: translate(-55.5%, -10%);
	}
	.topContTitle {
		font-size: 2.25em;
		line-height: 1.1em;
	}
	.topContAbout,
	.topContAbout.visible {
		margin-top: 18rem;
		max-width: 90%;
		transform: translateX(0);
		background: #fff;
		padding: 1em 0;
	}
	.topContAbout::after,
	.topContAbout.visible::after {
		transform: translate(20%, -290%);
		width: 40vw;
		height: 40vw;
		transition-delay: 0.6s;
	}
	.topContAbout.invisible::after {
		transform: translate(20%, -290%) scale(0);
	}
	.topContAbout .illustFootprint {
		width: 12.5vw;
		right: 50%;
	}
	.topContAbout.invisible .illustFootprint {
		transform: translate(255%, 140%) rotate(5deg);
	}
	.topContAbout .illustFootprint,
	.topContAbout.visible .illustFootprint {
		transform: translate(255%, 140%) rotate(5deg);
	}
	.topContCycle {
		transform: translateX(0);
		margin-bottom: 6rem;
	}
	.topCycleTitle {
		width: 40vw;
		height: 40vw;
		font-size: 1.5em;
		line-height: 1.25em;
	}
	.topCycleItemTitle {
		width: 25vw;
		height: 25vw;
		font-size: 1em;
		line-height: 1.25em;
		letter-spacing: 0;
		text-indent: 0;
	}
	.topCycleItemTxt {
		font-size: 0.625em;
		line-height: 1.5em;
	}
	.point1 .topCycleItemTxt {
		transform: translate(50%,-630%);
	}
	.point2 .topCycleItemTxt {
		transform: translate(90%,275%);
	}
	.point3 .topCycleItemTxt {
		transform: translate(-165%,550%);
	}
	.point5 .topCycleItemTxt {
		transform: translate(-150%,-450%);
	}
	.topContCatch {
		height: 60vw;
	}
	.topContCatchBody {
		left: 70%;
	}
	.topContCatchTxt {
		font-size: 0.75em;
	}
	.topContPetfood {
		max-width: 90%;
		transform: translateX(0);
		background: #fff;
		padding-top: 1em;
	}
	.topContPetfood::after,
	.topContPetfood.visible::after {
		width: 45vw;
		height: 45vw;
		transform: translate(0%, -200%);
	}
	.topContPetfood.invisible::after {
		transform: translate(0%, -200%) scale(0);
	}
	.topContPetfood .illustFlag {
		width: 15vw;
		transform: translate(-300%, -100%) rotate(0);
	}
	.topContGoods {
		max-width: 90%;
		transform: translateX(0);
		background: #fff;
		padding-top: 10em;
		margin-bottom: 5rem;
	}
	.topContGoods::before {
		top: -20rem;
	}
	.topContGoods.invisible::before {
		transform: translate(-66%, 66%) scale(0);
	}
	.topContGoods::before,
	.topContGoods.visible::before {
		width: 66vw;
		height: 66vw;
		transform: translate(-66%, 66%);
	}
	.topContGoods.invisible::after {
		transform:  translate(0, 166%) scale(0);
	}
	.topContGoods::after {
		top: -20rem;
	}
	.topContGoods::after,
	.topContGoods.visible::after {
		width: 45vw;
		height: 45vw;
		transform: translate(0, 166%);
	}
	.topContGoods .topContTitle {
		text-indent: 0;
	}
	.topContGoods .illustFlag {
		width: 15vw;
		transform: translate(-300%, 150%) rotate(0deg);
	}
	.topContNews {
		display: block;
	}
	.topNewsHeading {
		width: 85%;
		margin: 0 auto;
	}
	ul.topNewsList {
		width: 75%;
		display: block;
	}
	.topNewsItem {
		width: 100%;
		margin: 0 auto 2rem;
	}
	.topContNews .illustFootprint {
		left: 0;
		width: 12.5vw;
		transform: translate(25%, 100%) rotate(-20deg);
	}
	/* !sp about */
	/* --------------------------- */
	.aboutIntroTitle {
		font-size: 1.375em;
		padding: 0 1em;
		white-space: nowrap;
	}
	.aboutIntroTitle::before,
	.aboutIntroAnswer::before {
		margin-right: 0.75em;
	}
	.aboutIntroTitle::after,
	.aboutIntroAnswer::after {
		margin-left: 0.75em;
	}
	.aboutIntroTxt {
		padding: 0 2rem;
	}
	.aboutIntroAnswer {
		font-size: 1em;
		letter-spacing: 0;
		text-indent: 0;
	}
	.aboutPoints {
		margin: 0 1rem 6em;
		padding-top: 1em;
		padding-bottom: 0;
	}
	.aboutPointsTitle {
		margin-bottom: 4em;
	}
	ol.aboutPointsList {
		flex-wrap: wrap;
	}
	.aboutPointsItem {
		width: 40%;
		margin: 0 3% 3em;
	}
	.aboutPointsItem::before,
	.aboutPointsItem::after {
		top: 37.5vw;
	}
	.aboutPointsIcon .txtLink {
		width: 30vw;
		height: 30vw;
	}
	.aboutDetail,
	.aboutDetail:nth-of-type(even) {
		flex-direction: column-reverse;
	}
	.aboutDetailWrap,
	.aboutDetail:nth-of-type(even) .aboutDetailWrap {
		transform: translateX(0);
	}
	.aboutDetailTitle {
		margin-top: 2rem;
	}
	.aboutDetailBody {
		padding: 0 2em;
	}
	/* !sp damage */
	/* --------------------------- */
	.damageIntroTitle::before,
	.damageIntroTitle::after {
		transform: scale(0.9);
	}
	.damageContTitle {
		letter-spacing: 0;
		text-indent: 0;
	}
	.damageCont:nth-of-type(even) .damageContTitle {
		transform: translateX(0) rotate(-8deg);
	}
	.damageCont:nth-of-type(odd) .damageContTitle {
		transform: translate(0, 0) rotate(8deg);
	}
	.damageContBody {
		flex-direction: column;
		padding: 0 2rem;
	}
	.damageContBody img {
		margin: 0 auto 1em;
	}
	.damageContBody .damageIntroTxt {
		margin: 0 auto;
	}
	.damageContPh {
		margin: 0 auto;
	}
	.damageCaptureWrap {
		display: block;
		margin-top: 0;
	}
	.damageCaptureBox {
		margin-bottom: 4em;
	}
	.damageProblemWrap {
		flex-wrap: wrap;
	}
	.damageProblemDetail {
		max-width: 80%;
		margin: 0 auto 1em;
	}
	.damageProblemPhImg {
		margin: 1em auto;
	}
	.damageProblemCatch {
		max-width: 85%;
	}
	.damageAnswer {
		font-size: 1.0625em;
		letter-spacing: 0;
		text-indent: 0;
	}
	.damageAnswer:first-of-type {
		max-width: 90%;
	}
	.damageSegregationContWrap {
		flex-direction: column;
		padding: 0 2em;
	}
	.damageSegregationTitle {
		margin: 1em auto 4em;
	}
	.damageSegregationCont {
		padding: 5em 0 1em;
	}
	.damageSegregationSecond {
		padding-bottom: 0;
	}
	.damageSegregationPhBox {
		display: block;
	}
	.damageSegregationPhBox .damageProblemPhImg {
		margin-bottom: 2em;
	}
	.damageSegregationSecond {
		display: block;
	}
	.damageSegregationSecond .damageIntroTxt {
		min-height: 1em;
	}
	.damageSegregationCatch {
		margin: 0 2em auto;
	}
	.damageSegregationCatch::before,
	.damageSegregationCatch::after {
		background-size: contain;
	}
	ul.damageNav {
		flex-wrap: wrap;
	}
	.damageNavItem {
		width: 40vw;
		height: 40vw;
		margin-bottom: 1.5em;
		letter-spacing: 0;
		text-indent: 0;
	}
	/* !sp facility */
	/* --------------------------- */
	.facility .pageHeading {
		margin-bottom: 5rem;
	}
	.facilityCatch {
		position: absolute;
	}
	.facilityCatch svg {
		transform: translate(-5%, -45%) rotate(30deg) scale(0.9);
		margin: 0;
	}
	.facilityIntro::before,
	.facilityIntro::after {
		transform: scale(0.9);
	}
	.facilityCont,
	.facilityCont:nth-of-type(even),
	.facilityWrap .facilityCont:nth-of-type(5) {
		flex-wrap: wrap;
		flex-direction: row-reverse;
		padding: 1.5em 1em;
		margin: 0 1em 5em;
		align-items: center;
	}
	.facilityContTitle {
		width: 5em;
		margin-right: 0;
		white-space: nowrap;
	}
	.facilityContTitle::before {
		transform: translate(45vw,0);
	}
	.facilityContTitle .facilityNum {
		left: 90%;
	}
	.facilityContPh {
		width: 100%;
		order: 3;
	}
	.facilityContPh img,
	.facilityCont:nth-of-type(even) .facilityContPh img,
	.facilityWrap .facilityCont:nth-of-type(2) .facilityContPh img,
	.facilityWrap .facilityCont:nth-of-type(5) .facilityContPh img,
	.facilityWrap .facilityCont:nth-of-type(6) .facilityContPh img,
	.fukidashiBgPh {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		transform: translate(0);
	}
	.facilityCont .damageIntroTxt {
		max-width: calc( 100% - 8rem );
	}
	.facilityBalloon {
		width: 70vw;
		height: 43vw;
		top: 35%;
		right: 20%;
	}
	.facilityContCatch {
		line-height: 1.5em;:
	}
	.facilityCont:nth-of-type(5) .facilityContTitle .tate {
		padding-top: 0;
	}
	.facilityWrap .facilityCont:nth-of-type(5) img:last-of-type {
		transform: translate(18em,4em)!important;
	}
	.facilityWrap .facilityCont:nth-of-type(5) .facilityContPh img {
		transform: translate(0,0)!important;
	}
	.facilityWrap .facilityCont:nth-of-type(5) .facilityBalloon {
		width: 58vw;
		height: 36vw;
		line-height: 1.5em;
		padding: 3em 3em 0 2em;
		top: auto;
		right: 30%;
		bottom: 12.5rem;
	}
	/* !sp pet food */
	/* --------------------------- */
	.btnBnr {
		max-width: 70%;
		margin: 0 auto 1rem;
		translate: 5% 0;
	}
	.petfoodCatch .aboutIntroAnswer {
		transform: translate(0, 50%) rotate(-5deg);
	}
	ul.petfoodNav {
		font-size: 0.875em;
		margin-bottom: 2em;
	}
	.petfoodNavItem {
		margin: 0 0.75rem;
	}
	.petfoodContTitle,
	.petfoodCont:nth-of-type(even) .petfoodContTitle {
		font-size: 1.5em;
		transform: translateX(0) rotate(0);
	}
	.petfoodContTitle::before,
	.petfoodContTitle::after {
		margin: 0 1rem;
	}
	.commitCont {
		display: block;
		padding: 0 2em;
	}
	.commitContTitle {
		margin-left: 5rem;
	}
	.commitCont:nth-of-type(even) .commitContTitle {
		transform: translateX(0);
	}
	.charaWrap {
		margin: 0 2em;
	}
	.charaData::after {
		transform: translate(110%, 25%);
	}
	.productListLink {
		width: 25vw;
		transform: translate(75%, -80%);
	}
	.productWrap {
		padding: 2rem 1rem 0;
	}
	.productBox {
		max-width: 90%;
		margin: 0 auto 5rem;
	}
	.productBox:nth-of-type(1) {
		order: 3;
	}
	.productBox:nth-of-type(2) {
		order: 2;
	}
	.productBox:nth-of-type(3) {
		order: 1;
	}
	.productBox:nth-of-type(4) {
		order: 4;
	}
	.productTitle,
	.productBox:nth-of-type(2) .productTitle,
	.productBox:nth-of-type(3) .productTitle,
	.productBox:nth-of-type(4) .productTitle {
		transform: translate(-50%,-50%);
	}
	.petfoodPrdIntro {
		padding: 2rem 2rem;
	}
	.petfoodPrdIntroTxt {
		margin-bottom: 0;
	}
	.petfoodPrdIntro img {
		margin: 0 auto 1rem;	
	}
	.petfoodPrdIntroBtn {
		margin-bottom: 1rem;
	}
	.petfoodPrdDetail dt {
		padding: 0.625em 1.5em;
		display: block;
		text-align: center;
	}
	#shop.petfoodCont .petfoodContTitle {
		transform: translateY(-350%);
	}
	#shop.petfoodCont {
		margin-bottom: 20vw;
	}
	#shop.petfoodCont::before {
		transform: scale(1.1) rotate(0deg);
	}
	.petfoodShopBtn {
		margin: 0 3em;
		padding: 3em 3em 2em;
		transform: translateY(-3em);
	}
	.petfoodListTitle {
		font-size: 2em;
		background-size: 90vw auto;
		min-height: 62.5vw;
		padding-top: 2em;
	}
	.petfoodListCatch {
		margin-left: auto;
		margin-bottom: 2rem;
	}
	.petfoodListIntro {
		position: relative;
		top: auto;
		left: auto;
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	.petfoodListIntroItem,
	.petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(2),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(2) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(3),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(3) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(4),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(4) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(5),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(5) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(6),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(6) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(7),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(7) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(8),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(8) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(9),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(9) .petfoodListIntroItemName,
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(10),
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(10) .petfoodListIntroItemName {
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0,0);
		margin-bottom: 1em;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(9) {
		order: 1;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(8) {
		order: 2;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(1) {
		order: 3;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(7) {
		order: 4;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(2) {
		order: 5;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(4) {
		order: 6;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(5) {
		order: 7;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(6) {
		order: 8;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(3) {
		order: 9;
	}
	.petfoodListIntro .petfoodListIntroItem:nth-of-type(10) {
		order: 10;
	}
	.petfoodListItemBox,
	.petfoodListItemBox:nth-of-type(even) {
		background: none;
		padding-top: 62vw;
	}
	.petfoodListItemName {
		color: #000;
	}
	.petfoodListItemBox:nth-of-type(even) .petfoodListItemName {
		transform: translateX(0);
	}
	.petfoodListItemTxt {
		color: #000;
		margin: 0 2rem 1rem;
	}
	.petfoodListItemPhMain,
	.petfoodListItemBox:nth-of-type(even) .petfoodListItemPhMain {
		top: 0;
		left: 1em;
		transform: translate(0,0);
	}
	.petfoodListItemPhSub,
	.petfoodListItemBox:nth-of-type(even) .petfoodListItemPhSub {
		top: 10%;
		right: 1em;
		transform: translate(0,0);
	}
	.btnBuy,
	.btnBuy:visited,
	.petfoodListItemBox:nth-of-type(even) .btnBuy {
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		transform: translate(0,0);
	}
	.awardTitle {
		background-size: 90vw auto;
	}
	.awardTitle::before {
		transform: translate(-100%, -75%);
	}
	.awardVoiceWrap {
		display: block;
	}
	.awardVoiceBox {
		max-width: 80%;
		margin: 0 auto 2em;
	}
	.itemDetailCont {
		flex-direction: column-reverse;
		margin: 2em 2em;
	}
	.itemDetailGuide {
		margin-bottom: 0;
	}
	.reviewTitle {
		padding: 1em;
	}
	.reviewCont {
		display: block;
	}
	.reviewPh {
		display: inline-block;
		margin: 0 auto 2em;
	}
	.reviewBody {
		padding: 0 2em;
	}
	.itemPagination {
		font-size: 0.875em;
	}
	.itemPaginationLink,
	.itemPaginationLink:visited,
	.itemPaginationBackLink,
	.itemPaginationBackLink:visited  {
		width: 7rem;
		height: 7rem;
	}
	/* !sp goods */
	/* --------------------------- */
	.goodsIntro {
		margin: 0 2rem;
	}
	.goodsListContWrap {
		padding: 0 2rem;
	}
	.goodsListItemBox {
		margin-bottom: 2rem;
	}
	.goodsListItemTxt {
		margin-bottom: 2em;
	}
	.goodsWipPh {
		flex-wrap: wrap;
		margin-bottom: 3rem;
	}
	.goodsWipPh img {
		width: 33.333%;
	}
	.goodsCaution {
		padding: 3.5rem 1.5rem;
	}
	.goodsPartnerBox {
		margin-bottom: 3rem;
	}
	.goodsPartnerCont .goodsListContWrap {
		display: block;
		padding: 0;
	}
	.goodsPartnerBox {
		max-width: 100%;
		margin: 0 1.5rem 3rem;
	}
	.goodsPartnerInfo {
		padding: 0;
	}
	.goodsItemSpecDetail {
		font-size: 1em;
		align-items: stretch;
	}
	.goodsItemSpecDetailTitle {
		width: 6em;
		padding: 0.5em;
	}
	.goodsItemSpecDetailBody {
		width: calc( 100% - 6em );
	}
	.woocommerce div.product {
		max-width: 100%;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
	.woocommerce div.product .entry-summary {
		order: 1;
	}
	.woocommerce div.product .images {
		order: 2;
	}
	.productsDetailBody {
		width: 100%;
		max-width: 100%;
		float: none;
		order: 3;
	}
	.woocommerce div.product .itemDetailGuide {
		order: 4;
	}
	.woocommerce.single-product #content div.product div.images, .woocommerce.single-product div.product div.images, .woocommerce-page.single-product #content div.product div.images, .woocommerce-page.single-product div.product div.images {
		width: 100%;
	}
	.woocommerce.single-product #content div.product div.summary, .woocommerce.single-product div.product div.summary, .woocommerce-page.single-product #content div.product div.summary, .woocommerce-page.single-product div.product div.summary {
		width: 100%;
	}
	#add_payment_method .cart-collaterals .cart_totals table, .woocommerce-cart .cart-collaterals .cart_totals table, .woocommerce-checkout .cart-collaterals .cart_totals table {
		margin-left: auto!important;
		margin-right: auto!important;
	}
	.checkoutWrap, .cartWrap {
		padding: 0 1rem;
	}
	/* !sp shop */
	/* --------------------------- */
	.breadcrumbs {
		max-width: 90%;
	}
	.shopListCont .petfoodListContTitle {
		margin-left: 6.75rem;
	}
	.shopDetailCont {
		flex-direction: column-reverse;
		padding: 2rem 2rem;
	}
	.shopDetailPh {
		margin-top: 1rem;
	}
	.shopDetailMap iframe {
		max-width: 100%;
	}
	/* !sp contact */
	/* --------------------------- */
	.mailformDetail {
		display: block;
		padding: 0 2rem;
	}
	.mailformTitle {
		width: auto;
	}
	.mailformBody {
		width: 100%;
	}
	.tokushoTitle {
		padding: 0.75rem 1rem;
	}
	.tokushohoDetailTitle {
		width: 11em;
		padding: 0.75rem 1rem;
	}
	.tokushohoDetailBody {
		width: calc( 100% - 11em );
	}
	/* !sp news */
	/* --------------------------- */
	.postStickyWrap {
		flex-direction: column-reverse;
	}
	.postStickyBody {
		margin: 0 auto;
		padding: 0 2rem;
	}
	.postStickyThumb {
		margin: 0 auto 1em;
	}
	.postStickyTxt {
		letter-spacing: 0;
	}
	.privacyBody {
		padding: 0 2rem;
	}
	.shopListItem {
		flex-wrap: wrap;
	}
	.shopListInfo {
		width: 100%;
	}
}
