@charset "UTF-8";

body{
	font-family: "Noto Sans JP", sans-serif;
	color: #222;
}
.ec-layoutRole__header{
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.ec-headerNaviRole{
	max-width: 1190px;
	padding: 12px 20px;
}
.ec-headerNaviRole .ec-headerNaviRole__left{
	width: 30%;
	max-width: 264px;
}
.ec-headerNaviRole .ec-headerNaviRole__left h1{
	margin: 0;
}
.ec-headerNaviRole__menu{
	position: relative;
}
@media only screen and (max-width: 767.9px) {
	.ec-headerNaviRole__menu{
		display: none;
	}
}
.ec-headerNaviRole__menu .parent{
	position: relative;
	font-weight: 500;
	cursor: pointer;
	font-size: min(1.4vw,16px);
	margin: 0;
	padding: 15px 20px 15px 0;
}
.ec-headerNaviRole__menu .parent::after{
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	width: 8px;
	height: 8px;
	border-bottom: 2px solid #000;
	border-right: 2px solid #000;
	transform: translateY(-50%) rotate(45deg);
}
.ec-headerNaviRole__menu .child{
	pointer-events: none;
	position: absolute;
	top: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	z-index: 100;
	margin: 0;
}
.ec-headerNaviRole__menu .child .tooltip-box{
	position: relative;
}
.ec-headerNaviRole__menu .child .tooltip-box::after{
	content: '';
	position: absolute;
  top: -12px;
  left: 24px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 12px solid #f7f6f5;
  z-index: 2;
}
.ec-headerNaviRole__menu .child .tooltip-arrow {
  position: absolute;
  top: -10px;
  left: 24px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 12px solid #f7f6f5;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2)); /* ←ここで影つける！ */
}
.ec-headerNaviRole__menu .child .menu{
	position: relative;
	width: 260px;
	background: #f7f6f5;
	padding: 20px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.1);
	z-index: 1;
}
.ec-headerNaviRole__menu .child .menu .item{
	list-style: none;
	font-size: min(1.3vw,15px);
	padding: 0;
}
.ec-headerNaviRole__menu .child .menu .item + .item{
	margin-top: 15px;
}
.ec-headerNaviRole__menu .child .menu .item a{
	color: #222;
}
.ec-headerNaviRole__menu .child .menu .item a:hover{
	color: #00baff;
}
.ec-headerNaviRole__menu:hover .child{
	pointer-events: all;
	opacity: 1;
}

.ec-headerNav{
	display: flex;
	gap: 0 min(3vw,36px);
	margin: 0 min(1.8vw,20px) 0 min(36vw,40px);
}
.ec-headerNav .ec-headerNav__item{
	font-size: 0;
	display: block;
}
.ec-headerNav .ec-headerNav__itemLink{
	font-size: min(1.1vw,13px);
	margin: 5px 0 0;
}
.ec-headerNav .ec-headerNav__itemIcon{
	display: block;
	text-align: center;
	font-size: 0;
	line-height: 1;
	margin: 0;
}
.ec-headerNav .ec-headerNav__itemIcon img{
	width: auto;
	height: 18px;
	vertical-align: top;
}

.product_page .ec-productRole{
	max-width: 100%;
	padding: 0;
}
.product_page .ec-grid2{
	max-width: 1190px;
	margin: 60px auto 0;
	padding: 0 20px;
}
.ec-sliderItemRole{
	padding: 0;
	margin: 0;
}
.ec-sliderItemRole .item_nav{
	gap: 16px;
}
.ec-sliderItemRole .slideThumb{
	width: calc((100% - 48px) / 4);
	margin: 0;
}
.ec-sliderItemRole .slideThumb img{
	width: 100%;
}
.ec-productRole .ec-productRole__profile{
	margin-left: 40px;
}
.ec-productRole .ec-productRole__title .ec-headingTitle{
	font-size: min(2.4vw,26px);
	line-height: 1.7;
	letter-spacing: 0.04em;
}
.ec-productRole__description{
	font-size: min(1.4vw,16px);
	line-height: 2.375;
	letter-spacing: 0.04em;
}

.ec-cartNavi .ec-cartNavi__price{
	vertical-align: text-top;
}
@media only screen and (max-width: 767.9px) {
	.ec-headerNaviRole .ec-headerNaviRole__left{
		width: 45%;
		padding-left: 40px;
	}
	.ec-headerNaviRole img{
		vertical-align: inherit;
	}
	.ec-headerNaviRole .ec-headerNaviRole__right{
		width: 55%;
	}
	.ec-headerNav{
		margin: 0 min(1.8vw,20px) 0 0;
	}
	.ec-cartNavi{
		padding: 0.2em 0 0 0.5em;
	}
}

.front_page .ec-layoutRole__contents{
	max-width: inherit;
}
.home{
	padding: 0px 0 0;
}
.home .home__ttl{
	font-size: min(5vw,62px);
	text-align: center;
	font-weight: 700;
	margin: 0;
	padding: 0;
}
.home .loop-container {
  overflow: hidden;
  width: 100%; /* 好きなサイズに */
}
.home .loop-track {
  display: flex;
  animation: scroll-loop 20s linear infinite;
  width: max-content;
}
.home .loop-track img {
  height: auto;
  width: auto;
  max-height: 100px; /* 画像の高さを固定 */
}  
@keyframes scroll-loop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.home-new{
	max-width: 1130px;
	padding: 0 20px;
	margin: 100px auto 0;
}
.home-new__ttl{
	font-size: min(2.4vw,26px);
	letter-spacing: 0.04em;
	margin: 0 0 45px;
}
@media only screen and (max-width: 767.9px) {
	.home-new__ttl{
		font-size: min(4vw,32px);
		margin: 0 0 min(4vw,32px);
	}
}
.home-new__txt{
	font-size: min(1.4vw,16px);
	margin: 0;
}
@media only screen and (max-width: 767.9px) {
	.home-new__txt{
		font-size: min(3vw,14px);
	}
}
.home-new-list{
	display: flex;
	justify-content: flex-start;
	gap: 20px;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}
@media only screen and (max-width: 767.9px) {
	.home-new-list{
		gap: 10px;
	}
}
.home-new-list__item{
	width: calc((100% - 100px) / 6);
	list-style: none;
	border: 1px solid #f7f6f5;
	border-radius: 5px;
	overflow: hidden;
}
@media only screen and (max-width: 767.9px) {
	.home-new-list__item{
		width: calc(50% - 5px);
	}
}
@media only screen and (max-width: 440px) {
	.home-new-list__item{
		width: calc(32% - 5px);
	}
}
.home-new-list__item a{
	display: block;
	height: 100%;
	color: #222;
}
.home-new-list__img{
	height: 120px;
}
@media only screen and (max-width: 767.9px) {
	.home-new-list__img{
		height: 20vw;
	}
}
.home-new-list__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.home-new-list__ttl{
	min-height: 85px;
	font-weight: 500;
	font-size: min(1.4vw,16px);
	padding: 15px 13px;
	margin: 0;
}
@media only screen and (max-width: 767.9px) {
	.home-new-list__ttl{
		min-height: auto;
		font-size: min(3vw,14px);
	}
}
.home-new__btn{
	width: min(15vw,160px);
	height: min(5vw,60px);
	border: 1px solid #ccc;
	font-size: min(1.4vw,16px);
	border-radius: 3px;
	margin-top: 30px;
}
@media only screen and (max-width: 767.9px) {
	.home-new__btn{
		width: min(22vw,130px);
		height: min(8vw,40px);
		font-size: min(3vw,14px);
	}
}
.home-new__btn a{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-weight: 500;
	color: #222;
}
.home-new__btn a img{
	width: auto;
	height: 18px;
	margin-right: 12px;
}

.top-cat{
	max-width: 1130px;
	padding: 0 20px;
	margin: 140px auto 0;
}
.top-cat__ttl{
	font-size: min(2.4vw,26px);
	letter-spacing: 0.04em;
	margin: 0 0 45px;
}
@media only screen and (max-width: 767.9px) {
	.top-cat__ttl{
		font-size: min(4vw,32px);
		margin: 0 0 min(4vw,32px);
	}
}
.top-cat-list{
	display: flex;
	justify-content: space-between;
	padding: 0;
	margin: 0;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list{
		display: block;
	}
}
.top-cat-list__item{
	list-style: none;
	width: calc((100% - 4px) / 3);
	border: 1px solid #f7f6f5;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__item{
		width: 100%;
	}
}
.top-cat-list__item a{
	color: #222;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__item a{
		display: flex;
	}
}
.top-cat-list__head{
	padding: 12px 22px;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__head{
		width: 50%;
		padding: 2vw;
	}
}
.top-cat-list__item img{
	width: 100%;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__item img{
		width: 50%;
		height: 20vw;
		object-fit: cover;
	}
}
.top-cat-list__num{
	font-size: min(1vw,12px);
	font-weight: 700;
	margin: 0;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__num{
		font-size: min(2.6vw,12px);
	}
}
.top-cat-list__ttl{
	font-size: min(1.4vw,16px);
	font-weight: 500;
	margin: 3px 0 0;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__ttl{
		font-size: min(3.2vw,16px);
	}
}
.top-cat-list__en{
	font-size: min(1.2vw,14px);
	margin: 3px 0 0;
}
@media only screen and (max-width: 767.9px) {
	.top-cat-list__en{
		font-size: min(2.6vw,12px);
	}
}

@media only screen and (max-width: 767.9px) {
	.home{
		padding: min(10vw,120px) 0 0;
	}
	.home-new{
		margin: min(10vw,120px) 0 0;
	}
	.top-cat{
		margin: min(10vw,120px) 0 0;
	}
}



.product_page .ec-layoutRole .ec-layoutRole__contents{
	max-width: 100%;
}
.ec-searchnavRole__topicpath{
	max-width: 1190px;
	margin: 0 auto;
	padding: 0 20px;
}
.ec-searchnavRole{
	max-width: 100%;
	background: #f7f6f5;
	padding: 14px 0;
}
.ec-topicpath{
	color: #666;
	margin: 0;
	padding: 0;
}
.ec-topicpath .ec-topicpath__item a{
	color: #efb502;
}
.ec-topicpath .ec-topicpath__divider{
	position: relative;
	width: 36px;
	height: 100%;
	color: #f7f6f5;
}
.ec-topicpath .ec-topicpath__divider::before{
	content: '';
	position: absolute;
	top: 50%;
	left: calc(50% - 2px);
	width: 8px;
	height: 8px;
	border-top: 1px solid #222;
	border-right: 1px solid #222;
	transform: translate(-50%,-50%) rotate(45deg);
}
.ec-topicpath .ec-topicpath__item--active{
	font-weight: 400;
}

.list-catch__wrap{
	max-width: 1190px;
	margin: 0 auto;
}
.list-catch{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	height: min(33vw,340px);
	padding: 0 0 0 63%;
}
.list-catch .list-catch__img{
	position: absolute;
	top: 0;
	right: 42%;
	width: calc(((100vw - 1160px) / 2) + 58%);
	height: 100%;
}
@media (max-width: 1160px) {
	.list-catch .list-catch__img{
		width: 58%;
	}
}
.list-catch .list-catch__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.list-catch .list-catch-content__num{
	font-size: min(1.2vw,14px);
	font-weight: 700;
	margin: 0 0 10px;
}
.list-catch .list-catch-content__ttl{
	font-size: min(2.3vw,28px);
	letter-spacing: 0.04em;
	margin: 0 0 10px;
}
.list-catch .list-catch-content__en{
	font-size: min(1.6vw,18px);
	letter-spacing: 0.04em;
	margin: 0;
}
.list-desc{
	max-width: 1190px;
	margin: 100px auto 130px;
	padding: 0 20px;
}
.list-desc__txt{
	line-height: 2.375;
	letter-spacing: 0.04em;
	font-size: 16px;
}
.ec-shelfRole{
	max-width: 1190px;
}
.ec-shelfRole .category-title{
	font-size: min(2.4vw,26px);
	font-weight: 400;
	border-left: 2px solid #f9d118;
	margin: 0 0 50px;
	padding: 0 0 0 0.8em;
}
.ec-shelfGrid{
	gap: 27px;
	margin: 0;
}
.ec-shelfGrid .ec-shelfGrid__item{
	width: calc((100% - 81px) / 4);
	border: 1px solid #ccc;
	padding: 0!important;
	margin: 0;
	background: #fff;
	border-radius: 5px;
}
.ec-shelfGrid .ec-shelfGrid__item a{
	display: block;
	height: 100%;
	transition: 0.3s;
}
.ec-shelfGrid .ec-shelfGrid__item a:hover{
	box-shadow: 0 6px 6px rgba(0,0,0,0.14);
}
.ec-shelfGrid__detail{
	padding: 20px 15px;
}
.ec-shelfGrid .ec-shelfGrid__item-image{
	height: min(22vw,240px);
	border-bottom: 1px solid #ccc;
	margin-bottom: 0;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	overflow: hidden;
}
.ec-shelfGrid .ec-shelfGrid__item-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ec-shelfGrid__name{
	font-size: min(1.4vw,16px);
	font-weight: 700;
	margin: 0;
}
.ec-shelfGrid__txt{
	font-size: min(1.2vw,14px);
	line-height: 1.5;
	margin: 1em 0 0 0;
}
.ec-shelfGrid .ec-shelfGrid__item form{
	display: none;
}
.ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn{
	display: none;
	margin: 0;
}
.ec-shelfGrid .price02-default{
	text-align: right;
	margin: 1em 0 0;
}
.ec-pagerRole{
	margin-top: 50px;
}
.ec-pagerRole .ec-pager{
	padding: 0;
}
.relation__ttlWrap{
	max-width: 1190px;
	margin: 250px auto 50px;
}
.relation__ttl{
	font-size: min(2.4vw,26px);
	font-weight: 400;
	border-left: 2px solid #f9d118;
	padding: 0 0 0 0.8em;
}
#page_product_detail .ec-shelfGrid .ec-shelfGrid__item a{
	padding-bottom: 20px;
}
#page_product_detail .ec-shelfGrid__item-image + p{
	font-size: min(1.4vw,16px);
	font-weight: 700;
	padding: 20px 15px 0;
}
#page_product_detail .ec-shelfGrid__item p + span{
	display: block;
	font-size: min(1.2vw,14px);
  	line-height: 1.5;
  	margin: 1em 0 0 0;
  	padding: 0 15px;
}
#page_product_detail .ec-shelfGrid__item p:last-of-type{
	text-align: right;
	padding: 0 15px;
	margin: 1em 0 0;
}
.ec-productRole .ec-productRole__actions{
	text-align: right;
	padding: 0;
}
.ec-productRole .ec-productRole__actions .ec-numberWrap{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0 30px;
}
.ec-productRole .ec-numberInput{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 30px;
}
.ec-productRole .ec-numberInput span{
	font-size: 18px;
	font-weight: 500;
	margin: 60px 0 40px;
}
.ec-numberInput input[type="number"]{
	margin: 0;
	border: 1px solid #00a2ff;
}
.ec-productRole .ec-productRole__price{
	text-align: right;
	font-size: 22px;
	font-weight: 500;
	line-height: 1;
	border-bottom: 0;
	padding-bottom: 0;
}
.ec-productRole__price .ec-price{
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}
.ec-productRole .ec-productRole__price .ec-price__pre{
	font-size: 18px;
	font-weight: 500;
	color: #222;
}
.ec-productRole .ec-productRole__price .ec-price__wrap{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 0 30px;
}
.ec-price .ec-price__price{
	display: block;
	font-size: 22px;
	width: 100px;
	text-align: right;
	font-weight: 500;
	padding: 0;
}
.ec-productRole .ec-productRole__price .ec-price .ec-price__tax{
	color: #222;
}
.ec-productRole .ec-productRole__btn{
	width: 100%;
	font-size: 18px;
	font-weight: 500;
	margin: 40px 0 0;
	border-radius: 30px;
	overflow: hidden;
}
.ec-productRole .ec-productRole__btn span{
	position: relative;
	padding-left: 40px;
}
.ec-productRole .ec-productRole__btn span::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 22px;
	height: 20px;
	transform: translateY(-50%);
	background: url(../img/common/icn_cart.png) 0 0 / 100% auto no-repeat;
}
.ec-productRole .ec-productRole__btn button{
	font-weight: 500;
}
.ec-productRole .ec-productRole__btnC{
	width: 100%;
	font-size: 18px;
	margin: 30px 0 0;
	border-radius: 30px;
	overflow: hidden;
}
.ec-productRole .ec-productRole__btnC span{
	position: relative;
	padding-left: 40px;
}
.ec-productRole .ec-productRole__btnC span::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 22px;
	height: 20px;
	transform: translateY(-50%);
	background: url(../img/common/icn_cart_op.png) 0 0 / 100% auto no-repeat;
}
.ec-productRole .ec-productRole__btnC button{
	padding: 10px 16px;
    padding-top: 10px;
    padding-bottom: 10px;
  text-decoration: none;
  color: #fff;
  background-color: #0faf75;
  border-color: #0faf75;
  display: block;
  width: 100%;
  height: 56px;
  line-height: 56px;
  	font-weight: 500;
  padding-top: 0;
  padding-bottom: 0;
  border: 0;
}
.ec-productRole .ec-productRole__btnC button:hover{
	opacity: 0.7;
}
.ec-productRole  .ec-blockBtn--action:hover{
	opacity: 0.7;
background-color: #DE5D50;
  border-color: #DE5D50;
}
.ec-productRole__option{
	color: #ff0000;
	font-weight: 500;
	border: 1px solid #ff0000;
	padding: 12px 14px;
	line-height: 2;
	margin: 30px 0 0;
}
.ec-productRole .ec-productRole__description {
	margin: 60px auto;
}

@media only screen and (max-width: 767.9px) {
	.ec-topicpath{
		font-size: min(2.6vw,12px);
		border: none;
	}
	.list-desc{
		margin: min(5vw,50px) 0;
	}
	.list-catch{
		height: min(24vw,240px);
		padding: 0 0 0 38%;
	}
	.list-catch .list-catch__img{
		right: auto;
		left: 0;
		width: 35%;
	}
	.list-catch .list-catch-content__ttl{
		font-size: min(4vw,28px);
		margin: 0 0 0.2em;
	}
	.list-catch .list-catch-content__num{
		font-size: min(3vw,14px);
		margin: 0 0 0.2em;
	}
	.list-catch .list-catch-content__en{
		font-size: min(3vw,14px);
	}
	.list-desc__txt{
		font-size: min(3vw,14px);
	}
	.ec-shelfRole .category-title{
		font-size: min(4vw,20px);
		margin: 0 0 4vw;
	}
	.ec-shelfGrid__detail{
		padding: 3vw;
	}
	.ec-shelfGrid{
		gap: 15px;
	}
	.ec-shelfGrid .ec-shelfGrid__item{
		width: calc((100% - 15px) / 2);
	}
	.ec-shelfGrid__name{
		font-size: min(3.4vw,16px);
	}
	.ec-shelfGrid__txt{
		font-size: min(3vw,14px);
	}
	#page_product_detail .ec-shelfGrid__item-image + p{
		font-size: min(3.4vw,16px);
		padding: 3vw 3vw 0;
	}
	#page_product_detail .ec-shelfGrid__item p + span{
		font-size: min(3vw,14px);
		padding: 0 3vw;
	}
	.ec-sliderItemRole .slick-dotted.slick-slider{
		margin-bottom: 50px;
	}
	.ec-productRole .ec-productRole__profile{
		margin : 0;
	}
	.ec-productRole .ec-productRole__title .ec-headingTitle{
		font-size: min(4.6vw,26px);
	}
	.ec-productRole__description{
		font-size: min(3vw,14px);
		margin: 0 0 2em;
	}
	.ec-productRole .ec-numberInput span,
	.ec-productRole .ec-productRole__price .ec-price__pre{
		font-size: min(3.4vw,16px);
	}
	.ec-productRole .ec-productRole__actions .ec-numberWrap,
	.ec-productRole .ec-numberInput{
		gap: 0 2vw;
	}
	.ec-productRole .ec-productRole__price{
		margin-top: 3vw;
	}
	.ec-productRole .ec-productRole__price .ec-price__wrap{
		gap: 0 2vw;
	}
	.ec-numberCount{
		width: 3em;
		font-size: min(2.6vw,12px);
	}
	.ec-price .ec-price__tax{
		width: 4em;
		font-size: min(2.6vw,12px);
	}
	.ec-productRole .ec-productRole__btn,
	.ec-productRole .ec-productRole__btnC{
		margin-top: 5vw;
	}
	.ec-productRole__option{
		font-size: min(3vw,14px);
		margin: 2em 0 0;
	}
	.relation__ttlWrap{
		margin: 20vw 0 4vw;
	}
	.relation__ttl{
		font-size: min(4vw,20px);
	}
}

.p-guide{
	max-width: 1190px;
}
.p-guide .p-guide__ttl{
	font-size: min(2.6vw,30px);
	font-weight: 400;
	border-bottom: 0;
	padding: 0;
	margin: 60px 0 40px;
}
.p-guide-list{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 20px;
	padding: 0;
	margin: 0 0 60px;
}
.p-guide-list__item{
	width: calc((100% - 40px) / 3);
	list-style: none;
	font-size: min(1.6vw,18px);
	border-radius: 5px;
	line-height: 1;
	text-align: center;
	border: 1px solid #ccc;
}
.p-guide-list__item a{
	display: block;
	color: #222;
	padding: 1em 0;
}
.p-guide-list__item a:hover{
	box-shadow: 0 6px 6px rgba(0,0,0,0.14)
}
.p-guide .p-guide__ttl{
	font-size: min(2.6vw,30px);
	border-top: 0;
}
.p-guide .p-guide-section{
	margin-top: 60px;
}
.p-guide .p-guide-section__ttl{
	position: relative;
	font-size: min(2.2vw,26px);
	padding: 0 0 0 24px;
	margin: 0 0 24px;
}
.p-guide .p-guide-section__ttl::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 3px;
	height: 100%;
	border-radius: 5px;
	background: #f9d118;
}
.p-guide .p-guide-section__wrap{
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 30px;
}
.p-guide .p-guide-section__txt{
	font-size: min(1.4vw,16px);
	line-height: 1.625;
	margin: 0;
}
.p-guide .p-guide-section__txt + .p-guide-section__indent{
	margin-top: 1em;
}
.p-guide .p-guide-section__indent{
	font-size: min(1.4vw,16px);
	line-height: 1.625;
	padding: 0 0 0 24px;
	margin: 0;
}
.p-guide .p-guide-section__card{
	width: min(30vw,475px);
	margin: 15px 0;
	padding: 0 0 0 24px;
}
.p-guide .p-guide-section__sub{
	position: relative;
	font-size: min(2vw,21px);
	font-weight: 400;
	margin: 24px 0;
	padding: 0 0 0 1em;
}
.p-guide .p-guide-section__sub:first-child{
	margin-top: 0;
}
.p-guide .p-guide-section__sub::before{
	content: '◆';
	position: absolute;
	top: 0;
	left: 0;
	color: #f9d118;
}
.p-guide .p-guide-section-list{
	display: flex;
	flex-flow: column;
	gap: 24px 0;
	padding: 0 0 0 48px;
	margin: 24px 0 0;
}
.p-guide .p-guide-section-list + .p-guide-section__indent{
	margin-top: 24px;
}
.p-guide .p-guide-section-list__item{
	list-style: none;
	line-height: 1.625;
	font-size: min(1.4vw,16px);
	padding: 0px 0 0 17px;
	text-indent: -17px;
}
.p-guide .p-guide-section-list__item span{
	display: block;
	font-weight: 500;
}
@media only screen and (max-width: 767.9px) {
	.p-guide .p-guide__ttl{
		font-size: min(5vw,30px);
		margin: 8vw 0 5vw;
	}
.p-guide-list{
	margin: 0 0 5vw;
	gap: 3vw 2%;
}
.p-guide-list__item{
	width: 32%;
	font-size: min(3.2vw,14px);
}
.p-guide .p-guide__ttl{
	font-size: min(5vw,30px);
}
.p-guide .p-guide-section{
	margin-top: 8vw;
}
.p-guide .p-guide-section__ttl{
	font-size: min(4.6vw,26px);
	padding: 0 0 0 3vw;
	margin: 0 0 3vw;
}
.p-guide .p-guide-section__wrap{
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 3vw;
}
.p-guide .p-guide-section__txt{
	font-size: min(3.4vw,16px);
}
.p-guide .p-guide-section__indent{
	font-size: min(3.4vw,16px);
	padding: 0 0 0 3vw;
}
.p-guide .p-guide-section__card{
	width: min(100%,475px);
	margin: 2vw 0;
	padding: 0 0 0 3vw;
}
.p-guide .p-guide-section__sub{
	font-size: min(3.6vw,21px);
	margin: 3vw 0;
}
.p-guide .p-guide-section-list{
	gap: 3vw 0;
	padding: 0 0 0 6vw;
	margin: 3vw 0 0;
}
.p-guide .p-guide-section-list + .p-guide-section__indent{
	margin-top: 3vw;
}
.p-guide .p-guide-section-list__item{
	font-size: min(3.4vw,16px);
	padding: 0px 0 0 3.5vw;
	text-indent: -3.5vw;
}
}

.ec-footerRole{
	position: relative;
	background: #f7f6f5;
	border-top: 0;
}
.ec-footerRole::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: url(../img/common/bg_footer.png) 0 0 / 382px auto repeat-x;
}
.ec-footerRole .ec-footerRole__inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1190px;
}
.ec-footerRole .address{
	width: 46%;
}
.ec-footerRole .address-head{
	margin: 0 0 40px;
}
.ec-footerRole .address-head__ttl{
	font-size: min(2vw,22px);
	letter-spacing: 0.04em;
	margin: 0;
}
.ec-footerRole .address-head__txt{
	font-size: min(1.4vw,16px);
	letter-spacing: 0.04em;
	margin: 12px 0 0;
}
.ec-footerRole .address-menu__define{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 24px 0;
}
.ec-footerRole .address-menu__ttl{
	display: flex;
	align-items: center;
	/*width: 140px;*/
	width: 37%;
	font-size: 12px;
	gap: 0 12px;
	font-weight: 500;
}
.ec-footerRole .address-menu__txt{
	/*width: calc(100% - 140px);*/
	width: 63%;
}
.ec-footerRole .address-menu__ttl img{
	width: min(2.2vw,24px);
	height: auto;
}
.ec-footerRole .address-menu__txt{
	font-size: min(1.6vw,18px);
	margin: 0;
}
.ec-footerRole .address-menu__txt a{
	color: #222;
}
.ec-footerRole .address-menu__txt span{
	font-size: min(1.2vw,14px);
}
.ec-footerRole .address-menu__btn{
	width: 100%;
	max-width: 210px;
	height: 30px;
	font-size: min(1.2vw,14px);
	border: 1px solid #999;
	border-radius: 3px;
}
.ec-footerRole .address-menu__btn a{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #222;
}
.ec-footerRole .category{
	width: 25%;
}
.ec-footerRole .category__ttl{
	font-size: min(1.6vw,18px);
	letter-spacing: 0.04em;
	font-weight: 500;
}
.ec-footerRole .category .menu{
	margin: 30px 0 0;
	padding: 0;
}
.ec-footerRole .category .menu li{
	position: relative;
	list-style: none;
	font-size: min(1.4vw,16px);
	padding: 0 0 0 20px;
}
.ec-footerRole .category .menu li + li{
	margin-top: 24px;
}
.ec-footerRole .category .menu li::before{
	content: '';
	position: absolute;
	top: 5px;
	left: 5px;
	width: 10px;
	height: 10px;
	border-left: 1px solid #aaaaa9;
	border-bottom: 1px solid #aaaaa9;
}
.ec-footerRole .category .menu li a{
	color: #222;
}
.ec-footerRole .category .menu li a:hover{
	color: #00baff;
}

.ec-footerRole .guide{
	width: 25%;
}
.ec-footerRole .guide__ttl{
	font-size: min(1.6vw,18px);
	letter-spacing: 0.04em;
	font-weight: 500;
}
.ec-footerRole .guide .menu{
	margin: 30px 0 0;
	padding: 0;
}
.ec-footerRole .guide .menu li{
	position: relative;
	list-style: none;
	font-size: min(1.4vw,16px);
	padding: 0;
}
.ec-footerRole .guide .menu li + li{
	margin-top: 24px;
}
.ec-footerRole .guide .menu li a{
	color: #222;
}
.ec-footerRole .guide .menu li a:hover{
	color: #00baff;
}
.ec-footerRole .ec-footerTitle{
	width: 100%;
	text-align: center;
}
.ec-footerRole .ec-footerTitle__copyright{
	color: #222;
	font-size: min(1.2vw,14px);
	text-align: right;
}
.ec-blockTopBtn{
	width: min(10vw,123px);
	height: min(10vw,123px);
	font-size: 0;
	background: url(../img/common/icn_pagetop.png) 0 0 / 100% auto no-repeat;
}

@media only screen and (max-width: 767.9px) {
	.ec-footerRole{
		padding: 5vw 20px;
	}
	.ec-footerRole .ec-footerRole__inner{
		display: block;
	}
	.ec-footerRole .address{
		width: auto;
	}
	.ec-footerRole .address-head{
		width: 100%;
		margin: 0 0 3vw;
	}
	.ec-footerRole .address-head__ttl{
		font-size: min(4.6vw,20px);
	}
	.ec-footerRole .address-head__txt{
		font-size: min(2.6vw,12px);
		margin: 1em 0 0;
	}
	.ec-footerRole .address-menu__define{
		gap: 2vw 0;
		margin: 0;
	}
	.ec-footerRole .address-menu__txt{
		font-size: min(3vw,14px);
	}
	.ec-footerRole .address-menu__txt span{
		font-size: min(2.4vw,10px);
	}
	.ec-footerRole .address-menu__ttl{
		width: min(28vw,150px);
	}
	.ec-footerRole .address-menu__ttl img{
		width: min(4vw,24px);
	}
	.ec-footerRole .address-menu__ttl{
		font-size: min(2.6vw,12px);
	}
	.ec-footerRole .address-menu__btn{
		max-width: 210px;
		width: 40vw;
		height: 2em;
		font-size: min(2.6vw,12px);
	}
	.ec-footerRole .category{
		width: 100%;
		margin-top: 5vw;
	}
	.ec-footerRole .category .menu{
		width: 100%;
		margin: 0;
	}
	.ec-footerRole .category .menu li{
		font-size: min(3vw,14px);
		padding: 0 0 0 1.5em;
	}
	.ec-footerRole .category .menu li + li{
		margin-top: 1em;
	}
	.ec-footerRole .category .menu li::before{
		top: 0.2em;
		left: 0.2em;
		width: 1em;
		height: 0.6em;
	}
	.ec-footerRole .category__ttl{
		font-size: min(3vw,14px);
		margin-bottom: 0.5em;
	}
	.ec-footerRole .category .menu li + li{
		margin-top: 0.5em;
	}
	.ec-footerRole .guide{
		width: 100%;
		margin-top: 5vw;
	}
	.ec-footerRole .guide__ttl{
		font-size: min(3vw,14px);
		margin-bottom: 0.5em;
	}
	.ec-footerRole .guide .menu{
		margin: 2vw 0 0;
	}
	.ec-footerRole .guide .menu li{
		font-size: min(2.6vw,12px);
	}
	.ec-footerRole .guide .menu li + li{
		margin-top: 0.5em;
	}
	.ec-footerRole .ec-footerTitle{
		font-size: min(2.6vw,12px);
		padding: 0;
		margin: 1em 0 5em;
	}
}
/* 追加 */
.ec-pageHeader h1, .ec-pageHeader .h1,
.ec-mypageRole .ec-pageHeader h1, .ec-mypageRole .ec-pageHeader .h1	{
	font-size: min(2.6vw,30px);
	font-weight: 400;
	border-bottom: 0;
	padding: 0;
	margin: 60px 0 40px;
	font-size: min(2.6vw,30px);
	border-top: 0;
}
.ec-totalBox {
	position: relative;
}
.ec-totalBox .ec-totalBox__coverup {
	position: absolute;
	height: 250px;
	background-color: #f3f3f3;
	width: calc(100% - 16px);
	opacity: 0.9;
}
.ec-totalBox .ec-totalBox__coverup p{
	text-align: center;
	height: 1em;
	margin: 35% auto;
	font-weight: bold;
}
@media only screen and (max-width: 767.9px) {
	.ec-pageHeader h1, .ec-pageHeader .h1,
	.ec-mypageRole .ec-pageHeader h1, .ec-mypageRole .ec-pageHeader .h1	{
		font-size: min(5vw,30px);
		margin: 8vw 0 5vw;
	}
	.ec-totalBox .ec-totalBox__coverup {
		height: 210px;
	}
	.ec-totalBox .ec-totalBox__coverup p {
		margin: 20% auto;
		font-size: 110%;
	}
	.ec-footerRole {
		margin-top: 100px;
	}
}