@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
body {
	color: #333;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'メイリオ', Meiryo, sans-serif;
	background: #FFF;
	word-break: break-all;
}
@media only screen and (min-width: 768px) {
	body, html {
		min-width: 1024px;
	}
	body {
		font-size: 16px;
	}
	br.sp {
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	body {
		font-size: 14px;
	}
	.ec-role, .ec-registerRole {
		font-size: 14px;
	}
	br.pc {
		display: none;
	}
}
/*---------------------- header ----------------------*/
@media only screen and (min-width: 768px) {
	.ec-headerNaviRole {
		padding: 20px;
		max-width: 1280px;
	}
	.ec-headerNaviRole .ec-headerNaviRole__left {
		width: 400px;
    }
	.ec-headerNaviRole .ec-headerNaviRole__nav {
		margin-right: 20px;
	}
	.ec-headerNav .ec-headerNav__itemIcon, .ec-cartNavi .fa-shopping-cart {
		color: #1E3C91;
	}
}
@media only screen and (max-width: 767px) {
	.ec-headerNaviRole {
		padding: 15px 20px;
	}
	.ec-headerNaviRole .ec-headerNaviRole__left {
		width: 100%;
	}
	.ec-headerNaviRole .shopLogo {
		text-align: center;
	}
	.ec-headerNaviRole .shopLogo img {
		width: 200px;
		height: auto;
	}
	.ec-headerNaviRole .ec-headerNaviRole__right {
		display: none;
	}
}
/*---------------------- drawerRole ----------------------*/
@media only screen and (max-width: 767px) {
	.ec-drawerRole {
		background-color: #FFF;
	}
	.ec-drawerRole .ec-headerLinkArea {
		background-color: #FFF;
	}
	.ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {
		border-top: none;
	}
	.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
		color: #000;
	}
	.ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon {
		color: #1E3C91;
	}
}
/*---------------------- gNavi ----------------------*/
@media only screen and (min-width: 768px) {
	#gNavi_pc {
		background-color: #1E3C91;
	}
	#gNavi_pc > ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		list-style: none;
		max-width: 1280px;
		margin: auto;
		padding: 0;
		border-left: 2px solid #FFF;
	}
	#gNavi_pc > ul > li {
		width: calc(100% / 3);
		border-right: 2px solid #FFF;
	}
	#gNavi_pc > ul > li > a {
		display: block;
		color: #FFF;
		font-size: 16px;
		font-weight: 700;
		text-align: center;
		line-height: 55px;
		transition: 0.3s;
	}
	#gNavi_pc > ul > li > a:hover {
		background-color: #133575;
	}
}
@media only screen and (max-width: 767px) {
	.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
		position: relative;
		font-size: 14px;
	}
    .ec-drawerRole {
		width: 310px;
		transform: translateX(-320px);
	}
	.ec-drawerRoleClose {
		left: 320px;
	}
	#gNavi_pc {
		display: none;
	}
	#gNavi_sp ul {
		list-style: none;
		padding: 0;
		margin: 0;
	}
	#gNavi_sp a {
		display: block;
		border-bottom: 1px solid #ccc;
		padding: 15px 20px;
		font-size: 14px;
		font-weight: 700;
		color: #000;
		position: relative;
	}
	.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item::after, #gNavi_sp a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 20px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 9px;
		height: 9px;
		border-top: 2px solid #999;
		border-right: 2px solid #999;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {
		border-top: none;
		border-bottom: none;
		padding: 15px 20px;
		font-size: 14px;
		font-weight: 700;
		color: #FFF;
		background: #1E3C91;
	}
	.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {
		font-weight: normal;
		background-color: #FFF;
		padding: 15px 20px;
		font-size: 14px;
		position: relative;
	}
	.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 20px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 9px;
		height: 9px;
		border-top: 2px solid #999;
		border-right: 2px solid #999;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}
/*---------------------- contents ----------------------*/
.ec-progress .is-complete .ec-progress__number {
	background: #1E3C91;
}
.ec-progress .is-complete .ec-progress__label {
	color: #1E3C91;
}
.ec-blockBtn--action:disabled, .ec-blockBtn--action.disabled {
    background-color: #999;
    border-color: #999;
}
@media only screen and (min-width: 768px) {
	.ec-layoutRole .ec-layoutRole__contents {
		max-width: 1280px;
	}
	.ec-borderedDefs {
		margin: 0 0 40px;
	}
	.ec-registerRole {
		max-width: 1280px;
	}
	.ec-role {
		max-width: 1280px;
	}
	.ec-productRole {
		max-width: 1280px;
		margin: 40px auto;
	}
	.ec-sliderItemRole .slideThumb {
		margin-right: 25px;
		width: calc((100% - 50px) / 3);
	}
	.ec-sliderItemRole .slideThumb:nth-of-type(3n) {
		margin-right: 0;
	}
	.ec-sliderItemRole .slideThumb img {
		width: 100%;
	}
	.ec-productRole .ec-productRole__profile {
		margin-left: 80px;
		margin-right: 20px;
	}
	.ec-cartRole {
		max-width: 1280px;
	}
	.ec-contactRole, .ec-contactConfirmRole {
		max-width: 1280px;
	}
	.ec-pageHeader h1, .ec-pageHeader .h1, .ec-mypageRole .ec-pageHeader h1, .ec-mypageRole .ec-pageHeader .h1 {
		margin: 50px 0;
		padding: 0;
		border-bottom: none;
		text-align: center;
	}
	.ec-orderRole {
		max-width: 1280px;
	}
	.ec-orderRole .ec-orderRole__detail {
		padding: 0 20px 0 0;
	}
	.ec-orderRole .ec-orderRole__summary {
		padding: 0 0 0 20px;
	}
	.ec-borderedDefs dt {
		width: 30%;
	}
	.ec-borderedDefs dd {
		width: 70%;
	}
	.ec-blockBtn--action:disabled:hover, .ec-blockBtn--action.disabled:hover {
    background-color: #999;
    border-color: #999;
}
	.ec-categoryNaviRole {
		padding-top: 30px;
	}
	ul.ec-itemNav__nav li {
		float: none;
		border-top: 1px solid #CCC;
	}
}
@media only screen and (max-width: 767px) {
	.ec-borderedDefs {
		margin: 15px 0 25px;
	}
	.ec-pageHeader {
		border-top: 2px solid #1E3C91;
	}
	.ec-pageHeader h1, .ec-pageHeader .h1, .ec-mypageRole .ec-pageHeader h1, .ec-mypageRole .ec-pageHeader .h1 {
		margin: 20px 0;
		padding: 0;
		font-size: 20px;
		border: none;
		text-align: center;
	}
	.ec-progress .ec-progress__label {
		font-size: 8px;
	}
}
/*---------------------- footer ----------------------*/
@media only screen and (min-width: 768px) {
	.ec-footerRole {
		border-top: none;
		padding: 30px 0;
		background-color: #1E3C91;
	}
	.ec-footerRole .ec-footerRole__inner {
		margin: 0 auto;
		padding: 0;
		max-width: 100%;
	}
	.ec-footerNavi {
		margin-bottom: 30px;
	}
	.ec-footerNavi .ec-footerNavi__link {
		border-right: 1px solid #CCC;
		padding: 5px 10px;
	}
	.ec-footerNavi .ec-footerNavi__link:first-of-type {
		border-left: 1px solid #CCC;
	}
	.ec-footerNavi .ec-footerNavi__link a {
		text-decoration: none;
	}
    .ec-footerTitle {
        padding: 0;
    }
	.ec-footerTitle .ec-footerTitle__logo {
		margin-bottom: 20px;
    }
}
@media only screen and (max-width: 767px) {
	.ec-footerRole {
		border-top: none;
		background-color: #1E3C91;
    }
    .ec-footerNavi .ec-footerNavi__link a {
		border-bottom: 1px solid #FFF;
    }
	.ec-footerNavi {
		margin-bottom: 0;
	}
	.ec-footerTitle {
		padding: 25px 0 60px;
    }
	.ec-footerTitle .ec-footerTitle__logo {
		margin-bottom: 15px;
    }
	.ec-footerTitle .ec-footerTitle__logo a {
		font-size: 16px;
    }
}