/* カスタマイズ用CSS */
/* common */
html, body {
    color: #444;
}
html {
	scrollbar-gutter: stable;
}
.common_br::before {
    content: "\A";
	white-space: pre;
}
.ec-inlineBtn,.ec-blockBtn--action,.ec-blockBtn--cancel {
	max-width: 257px;
	margin-left: auto;
	margin-right: auto;
}
img {
	max-width: 100%;
}
.ec-input input, .ec-birth input, .ec-select input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input {
	line-height: 40px;
	height: 40px;
}

/* header */
.ec-layoutRole__header {
	position: sticky;
	top: 0;
	left: 0;
    width: 100%;
    z-index: 10;
	transition: 0.2s;
}
.header_banner {
    background: linear-gradient(#0e2238, #3477c5);
    overflow: hidden;
}
.header_banner .header_banner_box {
    font-size: 11px;
    font-weight: bold;
    display: flex;
    align-items: stretch;
    width: 100%;
    color: #fff;
}
.header_banner .header_banner_box div:nth-child(1),.header_banner .header_banner_box div:nth-child(5) {
    width: 10px;
    flex-grow: 0;
    flex-shrink: 0;
}
.header_banner .header_banner_box div:nth-child(2) {
    line-height: 1.2;
    padding: 2px 0;
    flex-grow: 1;
    flex-shrink: 0;
}
.header_banner .header_banner_box div:nth-child(2) span::before {
    content: "\A";
	white-space: pre;
}
.header_banner .header_banner_box div:nth-child(2) span {
    letter-spacing: -0.8px;
}
.header_banner .header_banner_box div:nth-child(3) {
    position: relative;
    width: 30%;
    flex-grow: 0;
    flex-shrink: 1;
    padding: 5px;
}
.header_banner .header_banner_box div:nth-child(3) span:nth-child(1) {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: #d3e4f8;
	box-shadow: -2px -1px 5px 1px rgba(52, 119, 197, 0.5) inset;
	display: block;
	animation: 5s infinite linear an_header_rotate01;
}
.header_banner .header_banner_box div:nth-child(3) span:nth-child(1)::after {
    content: "";
	width: 5px;
	height: 5px;
	border-radius: 50%;
	position: absolute;
	top: 10px;
	left: 10px;
	margin: auto;
	background: #e9e1aa;
	box-shadow: -1px -1px 1px 1px rgba(100, 100, 100, 0.2) inset;
	display: block;
	animation: 5s infinite linear an_header_rotate02;
}
@-webkit-keyframes an_header_rotate01 {
    0% {transform: rotateZ(0)}
    50% {transform: rotateZ(-180deg)}
    100% {transform: rotateZ(-360deg)}
}
@-webkit-keyframes an_header_rotate02 {
    0% {transform: rotateZ(0) scale(1,1)}
    50% {transform: rotateZ(-180deg) scale(0.5,0.5)}
    100% {transform: rotateZ(-360deg) scale(1,1)}
}
.header_banner .header_banner_box div:nth-child(4) {
    display: flex;
    align-items: center;
    text-align: right;
    padding: 3px 0 0;
    letter-spacing: -0.5px;
    flex-grow: 1;
    flex-shrink: 0;
}
.header_banner .header_banner_box div:nth-child(4) span {
    font-size: 13px;
    letter-spacing: normal;
    padding-bottom: 1px;
}
@media only screen and (max-width: 374px) {
	.header_banner .header_banner_box div:nth-child(4) {
		display: inline;
		text-align: left;
		line-height: 1.2;
		font-size: 11px;
		padding: 2px 0 0;
	}
	.header_banner .header_banner_box div:nth-child(4) span {
		line-height: 1.2;
		font-size: 11px;
		letter-spacing: -0.5px;
	}
	.header_banner .header_banner_box div:nth-child(4) span:last-of-type::before {
		content: "\A";
		white-space: pre;
	}
}
@media only screen and (min-width: 500px) {
	.header_banner .header_banner_box {
        margin: 0 auto;
        justify-content: flex-start;
    }
	.header_banner .header_banner_box div:nth-child(1) {
		order: 2;
		width: 0;
	}
	.header_banner .header_banner_box div:nth-child(2) {
		line-height: normal;
		padding: 4px 10px 2px 0;
		flex-grow: 0;
    	flex-shrink: 1;
		order: 3;
	}
	.header_banner .header_banner_box div:nth-child(2) span {
        letter-spacing: normal;
    }
	.header_banner .header_banner_box div:nth-child(2) span::before {
        content: "";
        white-space: normal;
    }
	.header_banner .header_banner_box div:nth-child(3) {
		width: 45px;
        order: 1;
		padding: 0;
	}
	.header_banner .header_banner_box div:nth-child(3) span:nth-child(1) {
		left: 20px;
		right: auto;
	}
	.header_banner .header_banner_box div:nth-child(4) {
        letter-spacing: normal;
        display: inline;
		text-align: left;
		padding: 4px 0 2px;
		order: 4;
    	flex-shrink: 1;
    }
	.header_banner .header_banner_box div:nth-child(4) span {
        margin-top: -2px;
		display: inline-block;
		padding-bottom: 0;
    }
	.header_banner .header_banner_box div:nth-child(5) {
		order: 5;
		flex-grow: 0;
    	flex-shrink: 0;
	}
}
@media only screen and (min-width: 768px) {
	.ec-headerRole__navSP,.ec-headerNavSP {
    	display: block;
	}
	.header_banner .header_banner_box div:nth-child(1) {
		width: 20px;
	}
    .header_banner .header_banner_box div:nth-child(3) {
		width: calc((100% - 1130px) / 2);
		min-width: 45px;
		flex-shrink: 0;
    }  
	.header_banner .header_banner_box div:nth-child(5) {
		width: calc((100% - 1130px) / 2);
		position: relative;
	}
	.header_banner .header_banner_box div:nth-child(5) span {
		width: 100px;
		height: 100px;
		border-radius: 50%;
		position: absolute;
		top: -80px;
		right: -45px;
		background: #faf3e8;
		box-shadow: -2px -1px 5px 1px rgba(52, 119, 197, 0.5) inset;
		display: block;
		animation: 5s infinite linear an_header_rotate01;
	}
}

.header_banner .header_banner_bottom {
    width: 100%;
    height: 4px;
    display: flex;
    animation: infinite linear an_header_rocket;
	animation-duration: 10s;
}
.header_banner .header_banner_bottom div {
    height: 100%;
}
.header_banner .header_banner_bottom div:nth-child(1) {
    width: 11.75%;
    background-color: #d3e4f8;
    margin-right: 2px;
    border-radius: 100% 50% 50% 100%;
    transform-origin: center right;
    animation: infinite an_header_fire;
	animation-duration: 10s;
    flex-grow: 1;
    flex-shrink: 0;
}
.header_banner .header_banner_bottom div:nth-child(2) {
    width: 2.63px;
    background-color: #c8c8c8;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(3) {
    width: 7.88px;
    background-color: #f0d730;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(4) {
    width: 52.13px;
    background-color: #f3a826;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(5) {
    width: 5.63px;
    background-color: #f0d730;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(6) {
    width: 16.88px;
    background-color: #f3a826;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(7) {
    width: 21.38px;
    background-color: #f0d730;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(8) {
    width: 4.13px;
    background-color: #f3a826;
    flex-grow: 0;
    flex-shrink: 1;
}
.header_banner .header_banner_bottom div:nth-child(9) {
    width: 21.75px;
    background-color: #fafafa;
    border-radius: 0 60% 60% 0;
    flex-grow: 0;
    flex-shrink: 1;
}
@media only screen and (min-width: 768px) {
	.header_banner .header_banner_bottom,.header_banner .header_banner_bottom div:nth-child(1) {
		animation-duration: 20s;
	}
}
@-webkit-keyframes an_header_rocket {
  0% {transform: translate(-200%,0)}
  100% {transform: translate(200%,0)}
}
@-webkit-keyframes an_header_fire {
  0% {transform: scale(1,1);opacity:0.5}
  50% {transform: scale(2,1);opacity:0.5}
  100% {transform: scale(3,1);opacity:0}
}

.ec-layoutRole .header_wrap {
    width: 100%;
}
.header_wrap .header_content {
    width: 100%;
    z-index: 9;
	background: linear-gradient(#3477c5, #d3e4f8);
}
.header_wrap .header_content .header_content_inner {
	padding: 10px 20px 5px;
    display: flex;
	max-width: 1130px;
}
.header_wrap .header_content .header_left {
    width: 20%;
    display: flex;
    align-items: center;
}
.header_wrap .header_content .header_left .ec-headerNavSP {
    color: #fff;
    position: static;
	width: 22px;
	height: auto;
    text-align: left;
    border-radius: 0;
    z-index: auto;
	padding: 0;
    background-color: transparent;
}
.header_wrap .header_content .header_left .header_left_search {
	display: none;
}
.header_wrap .header_content .header_logo {
    width: 60%;
    min-width: 150px;
    text-align: center;
    margin: 0;
    padding: 0;
	line-height: 1;
}
.header_wrap .header_content .header_logo a {
	display: block;
}
.header_wrap .header_content .header_logo img {
    width: 150px;
	height: auto;
}
.header_wrap .header_content .header_right {
    width: 20%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.header_wrap .header_content .header_right .ec-headerRole__login {
	display: none;
}
.header_wrap .header_content .header_right .ec-headerRole__search00 {
    width: 21px;
    margin-right: 18px;
    padding-bottom: 3px;
	cursor: pointer;
}
.header_wrap .header_content .header_right .ec-headerRole__search00 img {
    width: 100%;
}
.header_wrap .header_content .header_right .ec-cartNavi {
    min-width: 0;
    padding: 0;
    color: #fff;
	cursor: pointer;
}
.header_wrap .header_bottom {
    width: 100%;
    height: 5px;
    background-color: #d3e4f8;
    border-radius: 0 0 100% 100%;
}
@media only screen and (max-width: 374px) {
	.header_wrap .header_content .header_logo {
    	min-width: 120px;
	}
	.header_wrap .header_content .header_logo img {
    	width: 120px;
	}
	.header_wrap .header_content .header_right .ec-headerRole__search00 {
		margin-right: 15px;
	}
}
@media only screen and (min-width: 768px) {
	.header_wrap .header_content .header_left .header_left_search .ec-headerSearch__keyword {
		float: none;
		width: auto;
	}
	.header_wrap .header_content .header_content_inner {
		margin: 0 auto;	
	}
	.header_wrap .header_content .header_logo {
		width: 150px;
	}
	.header_wrap .header_content .header_left,.header_wrap .header_content .header_right {
		width: 490px;
	}
	.header_wrap .header_content .header_left .header_left_search {
		display: block;
		width: 100%;
		padding: 0 26px;
	}
	.header_wrap .header_content .header_left .header_left_search .ec-headerSearch__keyword {
		height: 26px;
		background-color: #fff;
		border: none;
		border-radius: 5px;
		width: 217px;
	}
	.header_wrap .header_content .header_left .header_left_search .ec-headerSearch__keyword input[type=search] {
		padding: 0 25px 8px 10px;
		line-height: 34px;
	}
	.header_wrap .header_content .header_left .header_left_search .ec-headerSearch__keywordBtn {
		width: 30px;
    	height: 100%;
    	top: 0;
    	right: 0;
    	transform: none;
		border-radius: 0 5px 5px 0;
		background-color: #f3578e;
	}
	.header_wrap .header_content .header_left .header_left_search .ec-headerSearch__keywordBtn::after {
		content: "";
    	position: absolute;
    	top: 0;
		bottom: 0;
    	left: 0;
		right: 0;
		margin: auto;
    	width: 16px;
    	height: 16px;
		background: url(../img/common/search.svg) 0 0 no-repeat;
		background-size: 16px 16px;		
	}
	.header_wrap .header_content .header_right .ec-headerRole__login {
		display: block;
		margin-right: 18px;
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div {
    	display: flex;
    	justify-content: flex-start;
    	width: 100%;
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div a, .header_wrap .header_content .header_right .ec-headerRole__login .btn_mypage {
    	position: relative;
    	display: block;
    	color: #fff;
    	font-size: 14px;
    	font-weight: bold;
    	border-radius: 20px;
    	padding: 1px 0;
    	text-align: center;
    	border: solid 2px #fff;
		overflow: hidden;
		transition: 0.2s;		
		z-index: 1;
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div a::after, .header_wrap .header_content .header_right .ec-headerRole__login .btn_mypage::after {
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		width: 100%;
		transform-origin: left top;
		transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
		z-index: -1;	
		transform: skewY(-25deg) scale(1, 0);	
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div a::after {
		height: 250%; 
	}
	.header_wrap .header_content .header_right .ec-headerRole__login .btn_mypage::after {
		height: 300%; 
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div a:hover, .header_wrap .header_content .header_right .ec-headerRole__login .btn_mypage:hover {
		color: #3477c5;
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div a:hover::after, .header_wrap .header_content .header_right .ec-headerRole__login .btn_mypage:hover::after {
		transform: skewY(-25deg) scale(1, 1);
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div a {
		width: 80px;
	}
	.header_wrap .header_content .header_right .ec-headerRole__login .btn_mypage {
		width: 90px;
	}
	.header_wrap .header_content .header_right .ec-headerRole__login div .btn_login {
    	margin: 0 15px 0 0;
	}
	.header_wrap .header_content .header_right .ec-headerRole__search00 {
		display: none;
	}
}

/* header cart */
.ec-cartNavi .ec-cartNavi__icon img {
	width: 25px;
	padding-bottom: 6px;
}
.ec-cartNavi .ec-cartNavi__badge {
	background-color: #f3578e;
	left: auto;
	right: -6px;
	top: -7px;
}
@media only screen and (min-width: 768px) {
	.ec-cartNavi .ec-cartNavi__icon img {
		padding-bottom: 4px;
	}
	.ec-cartNavi .ec-cartNavi__badge {
		position: absolute;
		left: auto;
		right: -6px;
		top: -6px;
		min-width: auto;
	}
}

/* contents */
.ec-layoutRole {
	background-color: #d3e4f8;
}
.ec-layoutRole .ec-layoutRole__contents {
    background-color: #d3e4f8;
    width: 100%;
    max-width: none;
}
.ec-layoutRole .ec-layoutRole__contents_wrap {
	position: relative;	
	width: 100%;
}
.ec-layoutRole .ec-layoutRole__mainWithColumn {
    background-color: #fff;
    margin: 0 10px;
    width: calc(100% - 20px);
    padding-bottom: 100px;
	position: relative;
	z-index: 1;
}
.ec-layoutRole .ec-layoutRole__mainWithColumn::after {
	width: 100%;
    height: 5px;
    content: "";
	border-radius: 0 0 50% 50% / 0 0 5px 5px;
    position: absolute;
	left: 0;
	bottom: -5px;
	background-color: #fff;
	z-index: 1;
}
.front_page .ec-layoutRole .ec-layoutRole__mainWithColumn {
	padding-top: 10px;
}
.ec-layoutRole .ec-layoutRole__contents_space {
	display: none;
}
@media screen and (min-width: 768px) {
	.ec-layoutRole .ec-layoutRole__contents_wrap {
		width: calc(100% - 20px);
		margin: 0 auto;
		display: flex;
		flex-wrap: nowrap;
		max-width: 1130px;
		padding: 0 10px;
		background-color: #fff;
		position: relative;
	}
	.ec-layoutRole .ec-layoutRole__contents_wrap::after {
		width: 100%;
    	height: 5px;
    	content: "";
		border-radius: 0 0 50% 50% / 0 0 5px 5px;
    	position: absolute;
		left: 0;
		bottom: -5px;
		background-color: #fff;
		z-index: 1;
	}
	.ec-layoutRole .ec-layoutRole__mainWithColumn {
		width: auto;
		margin: 0 0 0 5px;
		padding: 32px 0 100px;
		flex-grow: 1;
		flex-shrink: 1;
	}
	.front_page .ec-layoutRole .ec-layoutRole__mainWithColumn {
		padding: 8px 0 100px;
	}
	.ec-layoutRole .ec-layoutRole__mainWithColumn::after {
		display: none;
	}
	.ec-layoutRole .ec-layoutRole__left {
    	width: 250px;
		padding: 20px 0 100px;
		margin-right: 5px;
		flex-grow: 0;
		flex-shrink: 0;
  	}
	.front_page .ec-layoutRole .ec-layoutRole__left {
		padding: 50px 0;
	}
	.ec-layoutRole .ec-layoutRole__left .ec-itemNav {
		text-align: left;
		height: auto;
	}
	.ec-layoutRole .ec-layoutRole__left .ec-itemNav__nav {
		margin: 0;
		width: 100%;
	}
	.ec-layoutRole .ec-layoutRole__left .ec-itemNav__nav li {
		float: none;
	}
	.ec-layoutRole .ec-layoutRole__left .ec-itemNav__nav li a {
		background-color: transparent;
		color: #444;
	}
	.ec-layoutRole .ec-layoutRole__left .ec-itemNav__nav li ul {
		position: static;
		z-index: auto;
	}
	.ec-layoutRole .ec-layoutRole__left .ec-itemNav__nav li ul li {
    	overflow: visible;
		height: auto;
  	}
	.ec-layoutRole .ec-layoutRole__left .left_banner {
		margin-top: 60px;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a {
		margin-bottom: 10px;
		display: block;
		position: relative;
		padding: 2px;
		background-color: #fff;
		box-shadow: 0 0 2px rgba(120,127,135,0.5);
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_h3 {
		padding: 4px;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a::after {
		content: "";
    	position: absolute;
		transition: 0.2s;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_h3::after {
		bottom: 0;
    	right: 50px;
    	width: 87.08px;
    	height: 139.69px;	
		background: url(../img/common/banner_h3_parts.png) 0 0 no-repeat;
		background-size: 87.08px 139.69px;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_tsukuba::after {
    	bottom: 3px;
    	left: 8px;
    	width: 56.55px;
    	height: 70.96px;	
		background: url(../img/common/banner01_parts.png) 0 0 no-repeat;
		background-size: 56.55px 70.96px;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_tanegashima::after {
    	bottom: 3px;
    	left: 8px;
    	width: 53.22px;
    	height: 67.64px;
		background: url(../img/common/banner02_parts.png) 0 0 no-repeat;
		background-size: 53.22px 67.64px;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_company {
		width: 100%;
		height: 61px;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_company img {
		position: absolute;
    	top: 0;
		bottom: 0;
    	left: 0;
		right: 0;
		margin: auto;
    	width: 180px;
    	height: auto;
		transition: 0.2s;
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_h3:hover::after {
		transform: translate(-4px,-6px);
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_tsukuba:hover::after {
		transform: translate(-2px,-4px);
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_tanegashima:hover::after {
		transform: translate(2px,-4px);
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a.aside_company:hover img {
		transform: translate(0,-4px);
	}
	.ec-layoutRole .ec-layoutRole__left .left_banner a img {
		width: 100%;
	}
}
@-webkit-keyframes an_categorymove {
	0% {transform: rotate(0);}
	100% {transform: rotate(-360deg);}
}
@media screen and (min-width: 1150px) {
	.ec-layoutRole .ec-layoutRole__contents {
		display: block;
		position: relative;
	}
	.ec-layoutRole .ec-layoutRole__contents_wrap {
		width: 1130px;
		padding: 0 20px;
		z-index: 1;
	}
	.ec-layoutRole .ec-layoutRole__contents_space {
		display: block;
		position: absolute;
		overflow: hidden;
		width: calc((100% - 1130px) / 2);
		z-index: 0;
		top: 0;
		height: 100%;
	}
	.ec-layoutRole .ec-layoutRole__contents_space.contents_space_left {
		left: 0;
	}
	.ec-layoutRole .ec-layoutRole__contents_space.contents_space_right {
		right: 0;
	}
	.ec-layoutRole .ec-layoutRole__mainWithColumn {
		margin: 0 0 0 15px;
	}
}

/* footer_btn */
.footer_btn_wrap {
	width: 100%;
    background-color: #0e63ab;
	position: relative;
}
.footer_btn {
    width: 100%;
	max-width: 1130px;
    display: flex;
    flex-wrap: wrap;
    text-align: center;  
    margin: 0 auto;
}
.footer_btn::after {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    z-index: 0;
}
.footer_btn a {
    width: 50%;
    padding: 70px 0 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    position: relative;
}
.footer_btn a::before {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    color: #fff;
}
.footer_btn a:nth-child(1)::before {
	content: "";
    background: url(../img/common/footer_delivery.svg) 0 0 no-repeat;
    background-size: 38px 30px;
    width: 38px;
    height: 30px;
	bottom: 41px;
}
.footer_btn a:nth-child(2)::before {
	content: "";
    background: url(../img/common/footer_payment.svg) 0 0 no-repeat;
    background-size: 34px 30px;
    width: 34px;
    height: 30px;
	bottom: 41px;
}
.footer_btn a:nth-child(3)::before {
    content: "";
    background: url(../img/common/footer_unibo.svg) 0 0 no-repeat;
    background-size: 32px 40px;
    width: 32px;
    height: 40px;
    bottom: 38px;
}
.footer_btn a:nth-child(4)::before {
	content: "";
    background: url("../img/common/footer_company.png") 0 0 no-repeat;
    background-size: 32px 31px;
    width: 32px;
    height: 31px;
    bottom: 42px;
}
.footer_btn a::after {
    width: 30px;
    height: 30px;
    background-color: #0e63ab;
    position: absolute;
    content: "";
    z-index: 1;
}
.footer_btn a:nth-child(1)::after {
    bottom: 1px;
    right: 0;
    border-radius: 0 0 30% 0;
}
.footer_btn a:nth-child(2)::after {
    bottom: 1px;
    left: 1px;
    border-radius: 0 0 0 30%;
}
.footer_btn a:nth-child(3)::after {
    top: 0;
    right: 0;
    border-radius: 0 30% 0 0;
}
.footer_btn a:nth-child(4)::after {
    top: 0;
    left: 1px;
    border-radius: 30% 0 0 0;
}
.footer_btn_space {
	display: none;
}
@media screen and (max-width: 374px) {
	.footer_btn a {
		font-size: 12px;
	}
}
@media screen and (min-width: 768px) {
	.footer_btn {
		flex-wrap: nowrap;
	}
	.footer_btn::after {
		display: none;
	}
	.footer_btn a::before {
		width: 25%;
		transition: 0.2s;
	}
	.footer_btn a:hover::before {
		transform: translate(0,-4px);
	}
	.footer_btn a::after {
		width: 1px;
		height: 55%;
		background-color: #fff;
	}
	.footer_btn a:nth-child(1)::after,.footer_btn a:nth-child(2)::after,.footer_btn a:nth-child(3)::after {
		top: 30px;
		left: auto;
		right: 0;
		border-radius: 0;
	}
	.footer_btn a:nth-child(4)::after {
		display: none;
	}
}
@media screen and (min-width: 1150px) {
	.footer_btn_wrap {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
	}
	.footer_btn_space {
		display: block;
		position: relative;
		overflow: hidden;
		width: calc((100% - 1130px) / 2);
	}
}

/* footer_menu */
.footer_menu {
    background-color: #0e2238;
    text-align: center;
    padding: 30px 10px 0;
	position: relative;
}
.footer_menu::before {
    width: 100%;
    height: 5px;
    content: "";
    background-color: #0e63ab;
    border-radius: 0 0 50% 50% / 0 0 5px 5px;
    position: absolute;
    top: 0;
    left: 0;
}
.footer_menu .footer_menu_inner {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.footer_menu .footer_menu_text {
    color: #fff;
    font-size: 12px;
    line-height: 2;
    margin: 0 5px;
}
.footer_menu p {
    color: #c8c8c8;
    font-size: 12px;
    text-align: center;
    margin: 30px 0 0;
}
.footer_menu .footer_menu_icon {
	position: absolute;
	bottom: 2px;
	right: 30px;
	border-radius: 50%;
	width: 18px;
    height: 18px;
	background-color: #fff;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer_menu .footer_menu_icon img {
	width: 12px;
}
.footer_menu .footer_menu_space {
	display: none;
}
@media only screen and (max-width: 374px) {
	.footer_menu .footer_menu_icon {
		right: 15px;
	}
}
@media screen and (min-width: 768px) {
	.footer_menu .footer_menu_text {
		display: inline-block;
		position: relative;
	}
	.footer_menu .footer_menu_text::after {
		content: "";
		position: absolute;
		bottom: 2px;
		left: 0;
		width: 100%;
		height: 1px;
		background-color: #fff;
		transform: scale(0);
		transition: 0.2s;
	}
	.footer_menu .footer_menu_text:hover::after {
		transform: scale(1);
	}
	.footer_menu .footer_menu_icon {
		transition: 0.2s;
	}
	.footer_menu .footer_menu_icon:hover {
		transform: scale(1.2);
	}
}
@media screen and (min-width: 1150px) {
	.footer_menu {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
	}
	.footer_menu .footer_menu_inner {
		width: 300px;
	}
	.footer_menu .footer_menu_icon {
		right: -10px;
	}
	.footer_menu .footer_menu_space {
		display: block;
		position: relative;
		overflow: hidden;
		width: calc((100% - 300px) / 2);
	}
}

.footer_bottom {
    padding: 0 0 10px;
    background-color: #030f1c;
    position: relative;
    overflow: hidden;
}
.footer_bottom::before {
    width: 100%;
    height: 230px;
    content: "";
    background-color: #0e2238;
    position: absolute;
    top: -200px;
    left: 0;
    border-radius: 0 0 50% 50% / 0 0 5px 5px;
    animation: 10s 3.6s infinite linear an_logo_shake;
}
@-webkit-keyframes an_footer_space {
    0% {transform:scale(1,1);}
    35% {transform:scale(2,2);}
    70% {transform:scale(1,1);}
    100% {transform:scale(1,1);}
}
.footer_bottom div:nth-child(1) {
    width: 70px;
    height: 200px;
    margin: -150px auto;
    background-color: #0e2238;
    border-radius: 0 0 100% 100%;
    position: relative;
    z-index: 1;
    animation: 10s 3.3s infinite linear an_logo_shake;
}
.footer_bottom div:nth-child(1)::before {
    position: absolute;
    bottom: 12px;
    left: -22px;
    content: "";
    width: 80px;
    height: 120px;
    border-radius: 50% 50% 60% 60%;
    background-color: #0e2238;
    animation: 10s 3.5s infinite linear an_logo_shake;
}
.footer_bottom div:nth-child(1)::after {
    position: absolute;
    bottom: 10px;
    right: -25px;
    content: "";
    width: 80px;
    height: 160px;
    border-radius: 50% 50% 80% 80%;
    background-color: #0e2238;
    animation: 10s 3.4s infinite linear an_logo_shake;
}
@-webkit-keyframes an_footer_space2 {
    0% {transform:scale(1,1);}
    5% {transform:scale(1.5,1.5);}
    10% {transform:scale(1,1);}
    100% {transform:scale(1,1);}
}
.footer_bottom div:nth-child(2) {
    margin: 137px auto 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #0e2238;
    position: relative;
    z-index: 0;
    transform: translate(4px,0) rotate(20deg);
}
.footer_bottom div:nth-child(2)::after {
    position: absolute;
    bottom: 0;
    left: 9px;
    width: 20px;
    height: 25px;
    border-radius: 50%;
    background-color: #030f1c;
    content: "";
}
.footer_bottom div:nth-child(3) {
    padding-top: 110px;
    width: 100%;
	height: 100%;
	text-align: center;
    position: relative;
}
.footer_bottom div:nth-child(3)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    filter: blur(1px);
    transform-origin: center bottom;
    animation: 10s 0.5s infinite linear an_footer_star;
}
.footer_bottom div:nth-child(3) img {
    width: 40px;
	position: relative;
	z-index: 2;
    animation: 10s infinite linear an_logo_shake;
}
@keyframes an_logo_shake {
	0% {transform: scale(1) rotate(0);}
	2% {transform: scale(1.125) rotate(2deg);}
	3% {transform: scale(0.95) rotate(-2deg);}
	4% {transform: scale(1.1) rotate(0);}
	5% {transform: scale(0.975) rotate(1deg);}
	6% {transform: scale(1.0125) rotate(-1deg);}
	7% {transform: scale(1,1) rotate(0);}
	100% {transform: scale(1,1) rotate(0);}
}
@-webkit-keyframes an_footer_star {
  0% {transform: translate(-50%,120px) scale(0,0);background-color: #ffe800;opacity:1;}
  5% {transform: translate(0,80px) scale(1.5,1.5);background-color: #ffe800;opacity:1;}
  10% {transform: translate(-50%,60px) scale(1,1);background-color: #ffe800;opacity:1;}
  15% {transform: translate(-100%,40px) scale(1.5,1.5);background-color: #ffe800;opacity:1;}
  20% {transform: translate(-50%,20px) scale(1,1);background-color: #ffe800;opacity:1;}
  25% {transform: translate(0,0) scale(1.5,1.5);background-color: #ffe800;opacity:1;}
  30% {transform: translate(-50%,-20px) scale(1,1);background-color: #ffe800;opacity:0;}
  60% {transform: translate(-50%,-20px) scale(5,5);background-color: #0e2238;opacity:0;}
  100% {transform: translate(-50%,-20px) scale(5,5);background-color: #0e2238;opacity:0;}
}

/* pagetop */
.pagetop_rocket {
    display: flex;
    flex-wrap: wrap;
    width: 18px;
    position: fixed;
    bottom: -300px;
    right: 0;
    opacity: 0.8;
	cursor: pointer;
    transition: bottom 1s,transform 0.5s,opacity 0s 0.5s;
	z-index: 11;
}
.pagetop_rocket.is-scroll {
    bottom: 0;
}
.pagetop_rocket.is-click {
    transform: translate(0,-100vh);
    opacity: 0;
}
.pagetop_rocket div {
    width: 100%;
    box-shadow: -2px 0 4px rgba(120,127,135,0.5);
}
.pagetop_rocket div:nth-child(8) {
    height: 2.63px;
    background-color: #c8c8c8;
}
.pagetop_rocket div:nth-child(7) {
    height: 7.88px;
    background-color: #f0d730;
}
.pagetop_rocket div:nth-child(6) {
    background-color: #f3a826;
    text-align: center;
}
.pagetop_rocket div:nth-child(6) p {
    margin: 0;
    font-size: 12px;
    font-weight: bold;
    color: #444;
    line-height: 1;
}
.pagetop_rocket div:nth-child(6) p:nth-child(6) {
    width: 16px;
    height: 11px;
    background-color: #fff;
    position: relative;
    margin: 0 auto;
}
.pagetop_rocket div:nth-child(6) p:nth-child(6)::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: #bc002d;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
.pagetop_rocket div:nth-child(5) {
    height: 5.63px;
    background-color: #f0d730;
}
.pagetop_rocket div:nth-child(4) {
    height: 16.88px;
    background-color: #f3a826;
}
.pagetop_rocket div:nth-child(3) {
    height: 21.38px;
    background-color: #f0d730;
    position: relative;
}
.pagetop_rocket div:nth-child(3)::after {
    content: "";
    background: url(../img/common/rocket_character.png) 0 0 no-repeat;
    background-size: 16px 25px;
    width: 16px;
    height: 25px;
    position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: auto;
    transform-origin: center bottom;
    opacity: 0;
    transition: 0.2s; 
}
.pagetop_rocket.is-bottom div:nth-child(3)::after {
    opacity: 1;
    bottom: 0;
    animation: 10s infinite linear an_logo_shake;
}
.pagetop_rocket div:nth-child(2) {
    height: 4.13px;
    background-color: #f3a826;
}
.pagetop_rocket div:nth-child(1) {
    height: 21.75px;
    background-color: #fafafa;
    border-radius: 50% 50% 0 0 / 100% 100% 0 0;
}
.pagetop_rocket div:nth-child(9) {
    height: 18px;
    margin-top: 2px;
    background-color: #d3e4f8;
    transform-origin: top center;
    opacity: 0.8;
	border-radius: 50% 50% 100% 100%;
    animation: 0.5s infinite an_pagetop_fire;
}
@-webkit-keyframes an_pagetop_fire {
	0% {transform: scale(1,1)}
	50% {transform: scale(1,0.75)}
	100% {transform: scale(1,1)}
}
@media screen and (min-width: 768px) {
	.pagetop_rocket div:nth-child(9) {
		transition: 0.2s;
	}
	.pagetop_rocket:hover div:nth-child(9) {
		background-color: #bc002d;
	}
}

/* fixed_character */
.fixed_character {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
}
.fixed_character img {
	width: 117.5px;
}

/* drawer */
.ec-overlayRole {
    transition: 0.8s;
    z-index: 98;
	height: 100dvh;
}
.have_curtain .ec-overlayRole {
    background: rgba(52, 119, 197, 0.75);
}
body.have_curtain,body.have_search,body.have_cart,body.lb-disable-scrolling,body.have_ec-modal {
    height: 100%;
    overflow: hidden;
}
body.have_curtain .pagetop_rocket,body.have_search .pagetop_rocket,body.have_cart .pagetop_rocket {
	transform: translate(50px,0)
}
.ec-drawerRole {
	background-color: #fff;
	box-shadow: -20px -10px 50px 5px rgba(120,127,135, 0.1) inset,5px 5px 10px rgba(120,127,135,0.75);
    border-radius: 0 50% 50% 0;
    width: 340px;
    transform: translate(-120%,0);
    z-index: 100000;
    opacity: 0;
    padding-bottom: 80px;
    transition: 0.8s;
}
.ec-drawerRole.is_active {
    opacity: 1;
    overflow-y: scroll;
    -webkit-overflow-scrolling:touch;
	transform: translate(0,0);
	transition: 0.8s;
}
.ec-drawerRole::-webkit-scrollbar {
	display: none;
}
.ec-drawerRole .drawer_top {
    background: linear-gradient(#3477c5, #fff);
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    z-index: 2;
    padding: 20px 0 0 20px;
    display: flex;
}
.ec-drawerRole .drawer_top .ec-drawerRoleCloseInside {
    font-size: 20px;
    color: #fff;
    width: 20px;
	cursor: pointer;
}
.ec-drawerRole .drawer_top a {
    display: block;
    color: #fff;
    position: relative;
    padding: 8px 0 0 14px;
    font-size: 12px;
    font-weight: bold;
}
.ec-drawerRole .drawer_top .drawer_home {
    margin-left: 50px;
}
.ec-drawerRole .drawer_top .drawer_instagram {
    margin-left: 20px;
}
.ec-drawerRole .drawer_top a::before {
    position: absolute;
}
.ec-drawerRole .drawer_top .drawer_home::before {
	content: "";
    width: 13px;
    height: 15px;
    background-size: 12px 16px;
    background: url(../img/common/drawer_unibo.svg) 0 0 no-repeat;
    top: 8px;
	left: -1px;
}
.ec-drawerRole .drawer_top .drawer_instagram::before {
    content: "";
    width: 12px;
    height: 14px;
    background-size: 12px 14px;
    background: url(../img/common/instagram.svg) 0 0 no-repeat;
    top: 9px;
	left: 0;
}
.ec-drawerRole .drawer_list .drawer_login {
    margin: 20px 0 0 20px;
}
.ec-drawerRole .drawer_list .drawer_login div {
    display: flex;
    justify-content: flex-start;
    width: 100%;
}
.ec-drawerRole .drawer_list .drawer_login div a, .ec-drawerRole .drawer_list .drawer_login .btn_mypage {
    position: relative;
    display: block;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    border-radius: 20px;
    width: 110px;
    padding: 8px 0;
    text-align: center;
    border: solid 2px #fff;
}
.ec-drawerRole .drawer_list .drawer_login div .btn_login {
    margin: 0 15px 0 0;
    background-color: #34802c;
}
.ec-drawerRole .drawer_list .drawer_login div .btn_entry {
    background-color: #f3578e;
}
.ec-drawerRole .drawer_list .drawer_login .btn_mypage {
    background-color: #34802c;
}
@media only screen and (max-width: 374px) {
	.ec-drawerRole {
		max-width: 340px;
		width: 100%;
	}
	.ec-drawerRole .drawer_top .drawer_home {
    	margin-left: 30px;
	}
}
@media only screen and (min-width: 768px) {
	.ec-drawerRole {
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.ec-drawerRole,.ec-drawerRole.is_active,.ec-overlayRole,.have_curtain .ec-overlayRole {
		display: block;
	}
	.ec-drawerRole .drawer_top {
		background: linear-gradient(#3477c5, #f0f4f9);
	}
	.ec-drawerRole .drawer_list .drawer_login {
		display: none;
	}
	.ec-drawerRole .drawer_list {
		margin-top: -28px;
	}
}

.ec-drawerRole .drawer_list p {
    font-size: 13px;
    color: #444;
    background-color: #f0f4f9;
    padding: 3px 0 2px 20px;
    margin-right: 20px;
}
.ec-drawerRole .drawer_list .drawer_title01 {
    margin: 25px 0 0;
}
.ec-drawerRole .drawer_list .drawer_title02 {
    margin: 0;
}
.ec-drawerRole .drawer_list .drawer_title02 span {
    font-size: 12px;
    margin-left: 1em;
}
.ec-drawerRole .drawer_list .drawer_link01,.ec-drawerRole .drawer_list .drawer_link02 {
    display: block;
    color: #444;
    font-size: 15px;
    position: relative;
    margin: 0 20px;
}
.ec-drawerRole .drawer_list .drawer_link01 {
    padding: 24px 0;
    font-weight: bold;
}
.ec-drawerRole .drawer_list .drawer_link02 {
    padding: 12px 0;
    font-size: 14px;
}
.ec-drawerRole .drawer_list .drawer_link02.first {
    padding: 24px 0 12px;
}
.ec-drawerRole .drawer_list .drawer_link02.bdbtm,.ec-drawerRole .drawer_list .drawer_link02.last {
    padding: 12px 0 24px;
}
.ec-drawerRole .drawer_list .bdbtm {
    border-bottom: solid 1px #d3e4f8;
}
.ec-drawerRole .drawer_list .bdbtm02 {
    border-bottom: dotted 1px #d3e4f8;
}

.ec-drawerRole .drawer_list .drawer_link01::after,.ec-drawerRole .drawer_list .drawer_link02::after {
    font-family: "Font Awesome 5 Free";
    color: #3477c5;
    position: absolute; 
    font-weight: 900;
}
.ec-drawerRole .drawer_list .drawer_link01::after {
    content: "\f30b";
    right: 20px;
    bottom: 22px;
    font-size: 18px;
}
.ec-drawerRole .drawer_list .drawer_link02::after {
    content: "\f105";
    right: 28px;
    bottom: 10px;
    font-size: 16px;
}
.ec-drawerRole .drawer_list .drawer_link02.bdbtm::after,.ec-drawerRole .drawer_list .drawer_link02.last::after {
    bottom: 22px;
}
@media only screen and (min-width: 768px) {
	.ec-drawerRole .drawer_list .drawer_link02 {
		letter-spacing: -0.2px;
	}
	.ec-drawerRole .drawer_list .drawer_link01::after {
		right: 40px;
		transition: 0.2s;
	}
	.ec-drawerRole .drawer_list .drawer_link01:hover::after {
		right: 36px;
	}
	.ec-drawerRole .drawer_list .drawer_link02::after {
		right: 48px;
		transition: 0.2s;
	}
	.ec-drawerRole .drawer_list .drawer_link02:hover::after {
		right: 44px;
	}
}

.ec-calendar {
    margin: 0 60px 0 20px;
}
.ec-calendar__month {
    margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .ec-calendar {
	  flex-direction: column;
	  margin-left: 20px;
	}
  .ec-calendar__month {
	  margin-top: 20px;
	  margin-left: 0;
	}
}
.ec-calendar__month th, .ec-calendar__month td {
    padding: 5px;
    color: #444;
    border: none;
}
.ec-calendar .ec-calendar__title {
    font-size: 12px;
    font-weight: normal;
}
.ec-calendar .ec-calendar__sun {
    background-color: #f5faff;
    color: #444;
    font-weight: normal;
    font-size: 12px;
}
.ec-calendar .ec-calendar__mon, .ec-calendar .ec-calendar__tue, .ec-calendar .ec-calendar__wed, .ec-calendar .ec-calendar__thu, .ec-calendar .ec-calendar__fri {
    background-color: #f5faff;
    color: #444;
    font-weight: normal;
    font-size: 12px;
}
.ec-calendar .ec-calendar__sat {
    background-color: #f5faff;
    color: #444;
    font-weight: normal;
    font-size: 12px;
}
.ec-calendar .ec-calendar__day {
    background-color: #f5faff;
    color: #444;
    font-size: 12px;
    position: relative;
    z-index: 1;
}
.ec-calendar .ec-calendar__day.day_day::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #fff;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.ec-calendar .ec-calendar__holiday {
    font-size: 12px;
    background-color: #f5faff;
}
.ec-calendar .ec-calendar__today {
    background-color: #f5faff;
    color: #444;
    position: relative;
    z-index: 1;
    font-size: 12px;
    font-weight: bold;
    text-decoration: underline;
}
.ec-calendar .ec-calendar__today::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #fff;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.ec-calendar .ec-calendar__today.ec-calendar__holiday::before {
    display: none;
}

.drawer_character {
    opacity: 0.8;
    position: fixed;
    bottom: -140px;
	right: -10px;
    z-index: 99;
    width: 70px;
    display: block;
    pointer-events: none;
    transition: all 1s;
}
.drawer_character img {
    width: 100%;
}
.have_curtain .drawer_character {
    bottom: 10px;
	right: 10px;
    transition: all 3s 2s;
    animation: 2.5s 5s infinite linear an_drawer_character;
}
@-webkit-keyframes an_drawer_character {
  0% {transform: rotate(0);}
  25% {transform: rotate(2deg);}
  50% {transform: rotate(0);}
  75% {transform: rotate(-2deg);}
  100% {transform: rotate(0);}
}

/* search_drawer */
.have_search .ec-overlayRole {
    background: rgba(52, 119, 197, 0.75);
    display: block;
    opacity: 1;
    visibility: visible;
}
.search_drawer_box {
    display: block;
    width: 100%;
    height: 100dvh;
	padding: 10px 0;
    position: fixed;
    top: 40px;
    left: 0;
    z-index: 100;
	opacity: 0;
	color: #444;
	text-align: left;
    transform: translate(0,-110vh);
    transition: all 0.8s;
}
.search_drawer_box .search_drawer_box_inner {
	height: calc(100dvh - 50px);
	overflow: scroll;
}
.search_box_head_white {
	position: absolute;
	top: -8px;
	left: 0;
	width: 100%;
	height: 16px;
	background-color: #fff;
	z-index: 1;
	clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
.search_box_head_blue {
	position: absolute;
	top: -8px;
	left: 0;
	width: 100%;
	height: 16px;
	background-color: #0e63ab;
	z-index: 2;
	clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
	transform: scale(0.75);
}
@media screen and (min-width: 768px) {
	.have_search .ec-overlayRole,.search_drawer_box {
		display: none;
	}
}
.search_drawer_box.search-drawer-open {
	opacity: 1;
    transform: translate(0,0);
    -webkit-overflow-scrolling:touch;
}
.search_drawer_box .search_box_ears {
	position: absolute;
	top: -37px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 40px;
	z-index: 2;
	user-select: none;
	-ms-user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none;
	transform-origin: center bottom;
	animation: an_search_ears 2.5s infinite;
}
@keyframes an_search_ears {
    0% {transform: scale(0.95);}
	50% {transform: scale(1);}
	100% {transform: scale(0.95);}
}
.search_drawer_box .search_box_close {
	position: absolute;
	top: -25px;
	right: 20px;
	font-size: 20px;
	color: #fff;
	cursor: pointer;
}
.search_drawer_box .search_box_top {
	background: linear-gradient(90deg, #34802c 0%, #34802c 50%, #f3578e 50%, #f3578e 100%);
	width: 100%;
	height: 10px;
	margin-top: -10px;
	position: relative;
}
.search_drawer_box .search_box_top::after {
	content: "";
	width: 2px;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	background-color: #fff;
}
.search_drawer_box .search_box_title {
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	padding: 2px 8px;
	margin-bottom: 0;
	background: linear-gradient(90deg, #34802c 0%, #34802c 50%, #f3578e 50%, #f3578e 100%);
	position: relative;
}
.search_drawer_box .search_box_title::after {
	content: "";
	width: 2px;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	background-color: #fff;
}
.search_drawer_box .ec-headerSearch .ec-headerSearch__keyword {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border: none;
    background-color: #fff;
	color: #444;
}
.search_drawer_box .ec-headerSearch .ec-headerSearch__keyword input[type=search] {
    padding: 0.5em 50px 0.5em 10px;
    height: 36px;
	font-size: 15px;
}
.search_drawer_box .ec-headerSearch .ec-headerSearch__keywordBtn {
    width: 36px;
    height: 100%;
    top: 0;
    right: 0;
    transform: none;
    background: #f3578e;
	border: none;
}
.search_drawer_box .ec-headerSearch .ec-headerSearch__keywordBtn::after {
	content: "";
    position: absolute;
    top: 0;
	bottom: 0;
    left: 0;
	right: 0;
	margin: auto;
    width: 22px;
    height: 22px;
	background: url(../img/common/search.svg) 0 0 no-repeat;
	background-size: 22px 22px;
}
.search_drawer_box .ec-itemNav__nav li p.first_title {
    text-align: left;
    font-size: 15px;
	padding: 20px 40px 20px 37px;
	margin-bottom: 0;
    font-weight: bold;
    color: #444;
    position: relative;
    background-color: #fff;
	cursor: pointer;
}
.search_drawer_box .ec-itemNav__nav li p::before,.search_drawer_box .ec-itemNav__nav li a::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 36px;
    height: 100%;
    background-color: #f3578e;
}
.search_drawer_box .ec-itemNav__nav li p::after,.search_drawer_box .ec-itemNav__nav li a::after {
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 12px;
    font-size: 18px;
    font-weight: 900;
    color: #fff;
    transform: translate(0,-50%);
    transition: transform 0.3s;
}
.search_drawer_box .ec-itemNav__nav li p::after {
	content: "\f107";
}
.search_drawer_box .ec-itemNav__nav li a::after {
	content: "\f105";
}
.search_drawer_box .ec-itemNav__nav li p.first_title span {
	position: absolute;
	top: 50%;
	left: 5px;
	display: block;
	transform: translate(0,-50%);
	width: 25px;
	text-align: center;
}
.search_drawer_box .ec-itemNav__nav li p.first_title span::before {
	font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-weight: 900;
    color: #34802c;
	display: block;
	content: "\f0ac";
	animation: an_search_item 5s infinite;
}
@keyframes an_search_item {
    0% {transform: scale(0.98) translate(0,0) rotate(0);}
	25% {transform: scale(1) translate(0,-2px) rotate(2deg);}
	50% {transform: scale(0.98) translate(0,0) rotate(0);}
	75% {transform: scale(1) translate(0,-2px) rotate(-2deg);}
	100% {transform: scale(0.98) translate(0,0) rotate(0);}
}
.search_drawer_box .ec-itemNav__nav li p.is-active::after {
    transform: translate(0,calc(-50% - 2px)) rotate(-180deg);
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a {
    font-size: 14px;
	padding: 20px 40px 20px 37px;
    color: #444;
	background-color: #fff;
    position: relative;
    border-top: none;
	border-bottom: none;
	width: calc(100% - 36px);
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a.is-active_last {
	color: #34802c;
}
.search_drawer_box .ec-itemNav__nav li p.second_title {
    text-align: left;
    font-size: 14px;
	padding: 20px 40px 20px 37px;
	margin-bottom: 0;
    font-weight: bold;
    color: #444;
    position: relative;
	background-color: #fff;
	cursor: pointer;
	width: calc(100% - 36px);
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a span.category_icon,.search_drawer_box .ec-itemNav__nav li p.second_title span.category_icon {
	position: absolute;
	top: 50%;
	left: 5px;
	display: block;
	transform: translate(0,-50%);
	width: 25px;
	text-align: center;
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a span.category_icon::before,.search_drawer_box .ec-itemNav__nav li p.second_title span.category_icon::before {
	font-family: "Font Awesome 5 Free";
    font-size: 12px;
    font-weight: 900;
	display: block;
	animation: an_search_item 5s infinite;
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a span.category_icon::before {
	content: "\f005";
	color: #34802c;
	font-weight: 400;
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a span.category_icon.category_all::before {
	content: "\f005";
	color: #34802c;
	font-weight: 900;
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li ul.second_children li a span.category_icon.category_all::before {
	color: #c8c8c8;
}
.search_drawer_box .ec-itemNav__nav li p.second_title span.category_icon::before {
	content: "\f192";
	color: #34802c;
	display: block;
}
.search_drawer_box .ec-itemNav__nav li p.second_title.category_id_188 span.category_icon::before {
	content: "\f044";
}
.search_drawer_box .ec-itemNav__nav li p.second_title.category_id_189 span.category_icon::before {
	content: "\f57e";
}
.search_drawer_box .ec-itemNav__nav li p.second_title.category_id_202 span.category_icon::before {
	content: "\f553";
}
.search_drawer_box .ec-itemNav__nav li p.second_title.category_id_203 span.category_icon::before {
	content: "\f290";
}
.search_drawer_box .ec-itemNav__nav li p.second_title.category_id_214 span.category_icon::before {
	content: "\f041";
}
.search_drawer_box .ec-itemNav__nav li p.second_title.category_id_219 span.category_icon::before {
	content: "\f135";
}
.search_drawer_box .ec-itemNav__nav li ul li ul.second_children a {
    font-size: 14px;
	padding: 20px 40px 20px 37px;
    color: #444;
	background-color: #fff;
    position: relative;
    border-top: none;
	border-bottom: none;
	width: calc(100% - 72px);
}
.search_drawer_box .ec-itemNav__nav li ul li ul.second_children a span.category_icon {
	position: absolute;
	top: 50%;
	left: 5px;
	display: block;
	transform: translate(0,-50%);
	width: 25px;
	text-align: center;
}
.search_drawer_box .ec-itemNav__nav li ul li ul.second_children a span.category_icon::before {
	font-family: "Font Awesome 5 Free";
	content: "\f005";
    font-size: 10px;
    font-weight: 400;
    color: #c8c8c8;
	display: block;
	animation: an_search_item 5s infinite;
}
.search_drawer_box .ec-itemNav__nav li p span.category_length,.search_drawer_box .ec-itemNav__nav li a span.category_length {
    font-size: 12px;
    margin-left: 0.75em;
	color: #969696;
}
.search_drawer_box .ec-itemNav__nav li:hover ul li ul li a:hover,.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover {
	background: #fff;
}
.search_drawer_box .ec-itemNav__nav li ul.first_children li a:hover,.search_drawer_box .ec-itemNav__nav li p.second_title:hover {
	background: #fff;
}
.search_drawer_box .ec-itemNav__nav li ul li ul.second_children a:hover {
	background-color: #fff;
}
.search_box_bottom_white {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 16px;
	background-color: #fff;
	z-index: 1;
	clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
.search_box_bottom_blue {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 16px;
	background-color: #0e63ab;
	z-index: 2;
	clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
	transform: scale(0.75);
}
.search_drawer_box .category_bottom {
	position: relative;
}
.search_drawer_box .category_bottom::before, .search_drawer_box .category_bottom::after {
	content: "";
	position: absolute;
	bottom: 0;
	width: calc(50% - 1px);
	height: 1px;
}
.search_drawer_box .category_bottom::before {
	left: 0;
	background-color: #34802c;
}
.search_drawer_box .category_bottom::after {
	left: calc(50% + 1px);
	background-color: #f3578e;
}
.search_drawer_box .category_bottom.second_bottom::after {
	width: calc(50% - 37px);
}
.search_drawer_box .category_bottom.third_bottom::after {
	width: calc(50% - 73px);
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_179 span::before,.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_180 span::before,.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_181 span::before,.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_182 span::before,.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_183 span::before,.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_184 span::before {
	content: "";
	width: 25px;
	height: 25px;
	background-size: 25px 25px;
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_179 span::before {
	background: url(../img/common/search_icon01.svg) 0 0 no-repeat;
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_180 span::before {
	background: url(../img/common/search_icon02.svg) 0 0 no-repeat;
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_181 span::before {
	background: url(../img/common/search_icon03.svg) 0 0 no-repeat;
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_182 span::before {
	background: url(../img/common/search_icon04.svg) 0 0 no-repeat;
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_183 span::before {
	background: url(../img/common/search_icon05.svg) 0 0 no-repeat;
}
.search_drawer_box .ec-itemNav__nav li p.first_title.category_id_184 span::before {
	background: url(../img/common/search_icon06.svg) 0 0 no-repeat;
}
.search_drawer_box .search_box_bottom {
	width: 100%;
	text-align: right;
	padding: 5px 14px 10px 10px;
	background: linear-gradient(90deg, #34802c 0%, #34802c 50%, #f3578e 50%, #f3578e 100%);
	position: relative;
	border-bottom: solid 2px #fff;
}
.search_drawer_box .search_box_bottom::after {
	content: "";
	width: 2px;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	background-color: #fff;
}
.search_drawer_box .search_box_bottom a {
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	position: relative;
	padding-right: 13px;
}
.search_drawer_box .search_box_bottom a::after {
    font-family: "Font Awesome 5 Free";
	content: "\f105";
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 15px;
    font-weight: 900;
    color: #fff;
    transform: translate(0,-50%);
    transition: transform 0.3s;
}
@media screen and (min-width: 768px) {
	.search_drawer_box.search_pc {
		position: relative;
		transform: none;
		display: block;
		opacity: 1;
		z-index: auto;
		height: auto;
		padding: 0;
	}
	.search_drawer_box.search_pc .search_box_title {
		font-size: 11px;
		padding: 0 5px;
	}
	.search_drawer_box.search_pc .search_drawer_box_inner {
		height: auto;
		overflow: hidden;
	}
	.search_drawer_box.search_pc .search_box_ears {
		top: -45px;
	}
	.search_drawer_box.search_pc .search_box_head_blue {
		display: none;	
	}
	.search_drawer_box.search_pc .search_box_head_white {
		display: none;	
	}
	.search_drawer_box .search_box_top {
		display: none;	
	}
	
	.search_drawer_box.search_pc .ec-itemNav__nav li p.first_title {
    	font-size: 14px;
    	padding: 35px 20px 35px 29px;
		cursor: pointer;
	}
	.search_drawer_box .ec-itemNav__nav li p.first_title span,.search_drawer_box .ec-itemNav__nav li ul.first_children li a span.category_icon,.search_drawer_box .ec-itemNav__nav li p.second_title span.category_icon,.search_drawer_box .ec-itemNav__nav li ul li ul.second_children a span.category_icon {
		left: 2px;
	}
	.search_drawer_box .ec-itemNav__nav li p.first_title span::before {
		font-size: 17px;
	}
	.ec-itemNav__nav li ul {
		display: none;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li p::before,.search_drawer_box.search_pc .ec-itemNav__nav li a::before {
		display: none;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li p::after,.search_drawer_box.search_pc .ec-itemNav__nav li a::after {
    	right: 2px;
    	font-size: 13px;
		transition: 0.2s;
		color: #c8c8c8;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li p:hover::after {
		transform: translate(0,calc(-50% + 4px));
		color: #f3578e;
	}
	.search_drawer_box .ec-itemNav__nav li p.is-active:hover::after {
		transform: translate(0,calc(-50% - 4px)) rotate(-180deg);
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li a:hover::after {
		transform: translate(2px,-50%);
		color: #f3578e;
	}
	.search_drawer_box .ec-itemNav__nav li ul.first_children li a.is-active_last::after {
		color: #f3578e;
	}
	.search_drawer_box.search_pc .category_bottom {
		position: relative;
	}
	.search_drawer_box.search_pc .category_bottom::before, .search_drawer_box.search_pc .category_bottom::after {
		content: "";
		position: absolute;
		bottom: 0;
		width: 123px;
		height: 1px;
	}
	.search_drawer_box.search_pc .category_bottom::before {
		left: 0;
		background-color: #34802c;
	}
	.search_drawer_box.search_pc .category_bottom::after {
		left: auto;
		right: 0;
		background-color: #f3578e;
	}
	.search_drawer_box .ec-itemNav__nav li p.first_title {
		transition: 0.2s;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li p.second_title {
		padding: 25px 20px 25px 29px;
		width: calc(100% - 15px);
		transition: 0.2s;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li ul.first_children li a {
		padding: 25px 20px 25px 29px;
		width: calc(100% - 15px);
		transition: 0.2s;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li ul li ul.second_children a {
		padding: 15px 20px 15px 29px;
		width: calc(100% - 30px);
		transition: 0.2s;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li ul li ul.second_children a.category_id_199 {
		letter-spacing: -1.4px;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li ul li ul.second_children a.category_id_199 span.category_length {
		margin-left: 0.25em;
	}
	.search_drawer_box.search_pc .category_bottom.second_bottom {
		width: calc(100% - 15px);
	}
	.search_drawer_box.search_pc .category_bottom.second_bottom::after {
		width: 108px;
	}
	.search_drawer_box.search_pc .category_bottom.third_bottom {
		width: calc(100% - 30px);
	}
	.search_drawer_box.search_pc .category_bottom.third_bottom::after {
		width: 93px;
	}
	.search_drawer_box.search_pc .ec-itemNav__nav li a::after {
		border: none;
	}
	.search_drawer_box .ec-itemNav__nav li:hover ul li ul li a:hover,.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover {
		background: #fff !important;
	}
	.search_drawer_box .ec-itemNav__nav li ul li ul.second_children a:hover {
		background: #fff !important;
	}
	body.have_search {
		height: auto;
		overflow: auto
	}
	body.have_search .pagetop_rocket {
		transform: none;
	}
	
	.search_drawer_box .search_box_bottom {
		padding: 6px 3px 0 0;
		background: transparent;
	}
	.search_drawer_box .search_box_bottom a {
		color: #444;
		font-size: 12px;
		padding-right: 12px;
	}
	.search_drawer_box .search_box_bottom a::after {
		color: #c8c8c8;
		font-size: 14px;
	}
	.search_drawer_box .search_box_bottom a:hover::after {
		transform: translate(2px,-50%);
		color: #f3578e;
	}
}

/* cart */
.have_cart .ec-overlayRole {
	display: none;
}
.ec-cartNaviIsset_wrap {
	display: block;
    position: fixed;
    z-index: 100;
	transform: translate(100vw,0);
    top: 0;
    left: 0;
	opacity: 0;
	width: 100%;
	height: 100dvh;	
	transition: 0.4s;
}
.ec-cartNaviIsset_wrap.is-active {
    transform: translate(0,0);
	opacity: 1;
}
.ec-cartNaviIsset_wrap .ec-cartNaviIsset_outer {
	width: 100%;
	height: 100%;
	background-color: transparent;
	transition: 0s;
}
.ec-cartNaviIsset_wrap.is-active .ec-cartNaviIsset_outer {
	background-color: rgba(52, 119, 197, 0.75);
	transition: 0.4s 0.4s;
}
.ec-cartNaviIsset {
    display: block;
    margin: 0 auto;
	position: fixed;
	top: 0;
    left: 0;
	right: 0;
    padding: 0;
    width: calc(100% - 70px);
	max-width: 500px;
    height: 100dvh;
    background-color: transparent;
	border: none !important;
}
.ec-cartNaviIsset::before,.ec-cartNaviIsset::after {
    content: "";
    width: 40px;
    height: 150px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
    box-shadow: 0 0 4px rgba(120,127,135,0.75);
    background:
    linear-gradient(rgba(14,34,56,0.4), rgba(52,119,197,0.4), rgba(14,34,56,0.4)),
    repeating-linear-gradient(
    90deg,
    rgba(211,228,248,0.4) ,
    rgba(211,228,248,0.4) 1px,
    rgba(14,34,56,1) 1px,
    rgba(14,34,56,1) 5px
  ),
  repeating-linear-gradient(
    0deg,
    rgba(211,228,248,0.4) ,
    rgba(211,228,248,0.4) 1px,
    rgba(14,34,56,1) 1px,
    rgba(14,34,56,1) 5px
  );
}
.ec-cartNaviIsset::before {
    left: -35px;
    animation: 10s infinite linear an_cart_paddle01;
}
.ec-cartNaviIsset::after {
    right: -35px;
    animation: 10s infinite linear an_cart_paddle02;
}
@-webkit-keyframes an_cart_paddle01 {
  0% {clip-path: polygon(0% 100%, 0% 5%, 100% 0%, 100% 95%);}
  25% {clip-path: polygon(0% 100%, 0% 0%, 100% 0%, 100% 100%);}
  50% {clip-path: polygon(0% 95%, 0% 0%, 100% 5%, 100% 100%);}
  75% {clip-path: polygon(0% 100%, 0% 0%, 100% 0%, 100% 100%);}
  100% {clip-path: polygon(0% 100%, 0% 5%, 100% 0%, 100% 95%);}
}
@-webkit-keyframes an_cart_paddle02 {
  0% {clip-path: polygon(0% 95%, 0% 0%, 100% 5%, 100% 100%);}
  25% {clip-path: polygon(0% 100%, 0% 0%, 100% 0%, 100% 100%);}
  50% {clip-path: polygon(0% 100%, 0% 5%, 100% 0%, 100% 95%);}
  75% {clip-path: polygon(0% 100%, 0% 0%, 100% 0%, 100% 100%);}
  100% {clip-path: polygon(0% 95%, 0% 0%, 100% 5%, 100% 100%);}
}
.ec-cartNaviIsset .cart_top01 {
    width: 100%;
    height: 20px;
    margin: 0 auto;
    display: flex;
    align-items: flex-end;
    box-shadow: 0 0 4px rgba(120,127,135,0.75);
}
.ec-cartNaviIsset .cart_top01 div:nth-child(odd) {
    width: 35%;
    height: 20px;
    display: block;
}
.ec-cartNaviIsset .cart_top01 div:nth-child(1) {
    background: linear-gradient(to right, #323232, #646464);
}
.ec-cartNaviIsset .cart_top01 div:nth-child(3) {
    background: linear-gradient(to right, #646464, #323232);
}
.ec-cartNaviIsset .cart_top01 div:nth-child(2) {
    width: 30%;
    height: 15px;
    display: block;
    background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
}
.ec-cartNaviIsset .cart_top02 {
    width: 100%;
    height: 10px;
    margin: 0 auto;
    background: linear-gradient(to right, #e5bd31, #fcdb66, #e5bd31);
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
}
.ec-cartNaviIsset .cart_block {
    display: block;
    width: calc(100% - 10px);
	max-height: calc(100dvh - 130px);
	height: 100%;
    z-index: 100;
    overflow-y: scroll;
    margin: 0 auto 100px;
    position: relative;
    background-color: #fff;
    border-left: solid 1px #e5bd31;
    border-right: solid 1px #e5bd31;
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
}
.ec-cartNaviIsset .ec-cartNaviIsset__cart {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 0;
    border-bottom: dotted 1px #e5bd31;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cart.cart_last {
    border-bottom: none;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartImage {
    width: 35%;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartContent {
    width: 65%;
    padding-left: 10px;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle {
    color: #444;
    font-size: 14px;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice {
    text-align: right;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber {
    text-align: right;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber span {
    font-size: 12px;
}
@media (min-width: 768px) {
	.ec-cartNavi {
		background-color: transparent;
		padding: 10px 0 0 20px;
		height: auto;
		min-width: auto;
	}
	.ec-cartNaviIsset {
		width: 340px;
		margin: 0 35px 0 auto;
		min-width: auto;
		max-width: none;
	}
	.ec-cartNavi .ec-cartNavi__price {
		display: none;
	}
	.ec-cartNaviIsset::before {
		display: block;
		width: 40px;
	    height: 150px;
		border: none;
		top: 0;
	}
	.ec-cartNaviIsset .cart_block {
		height: calc(100dvh - 140px);
	}
}
.ec-cartNaviIsset__action {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
	max-width: 500px;
    z-index: 101;
}
.ec-cartNaviIsset__action div:first-of-type {
    color: #f3578e;
    font-size: 18px;
    font-weight: bold;
    height: 44px;
    line-height: 44px;
    margin: 0 5px;
    background-color: #fbfcfe;
    border-left: solid 1px #e5bd31;
    border-right: solid 1px #e5bd31;
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
}
.ec-cartNaviIsset__action div:first-of-type span:nth-child(1) {
    font-size: 14px;
    margin-right: 0.3em;
}
.ec-cartNaviIsset__action div:first-of-type span:nth-child(2) {
    font-size: 12px;
    font-weight: normal;
}
.ec-cartNaviIsset__action .ec-blockBtn--action {
    width: 100%;
    background-color: #f3578e;
    border: none;
    position: relative;
	z-index: 1;
    animation: 10s infinite linear an_cart_btn_move;
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
	max-width: none;
}
.ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action {
    margin-bottom: 0;
}

.ec-cartNaviIsset__action .ec-blockBtn--action:focus, .ec-cartNaviIsset__action .ec-blockBtn--action.focus, .ec-cartNaviIsset__action .ec-blockBtn--action:active:focus, .ec-cartNaviIsset__action .ec-blockBtn--action:active.focus, .ec-cartNaviIsset__action .ec-blockBtn--action.active:focus, .ec-cartNaviIsset__action .ec-blockBtn--action.active.focus {
	outline: none;
	outline-offset: 0;
}
.ec-cartNaviIsset__action .ec-blockBtn--action:hover, .ec-cartNaviIsset__action .ec-blockBtn--action:focus, .ec-cartNaviIsset__action .ec-blockBtn--action.focus {
	color: #fff;
}
.ec-cartNaviIsset__action .ec-blockBtn--action:hover {
	background-color: #f3578e;
}
.btn-check:focus + .ec-cartNaviIsset__action .ec-blockBtn--action, .ec-cartNaviIsset__action .ec-blockBtn--action:focus {
	color: #fff;
	background-color: #f3578e;
	box-shadow: none;
}
.btn-check:checked + .ec-cartNaviIsset__action .ec-blockBtn--action, .btn-check:active + .ec-cartNaviIsset__action .ec-blockBtn--action, .ec-cartNaviIsset__action .ec-blockBtn--action:active, .ec-cartNaviIsset__action .ec-blockBtn--action.active, .show > .ec-cartNaviIsset__action .ec-blockBtn--action.dropdown-toggle {
	color: #fff;
	background-color: #f3578e;
}
.btn-check:checked + .ec-cartNaviIsset__action .ec-blockBtn--action:focus, .btn-check:active + .ec-cartNaviIsset__action .ec-blockBtn--action:focus, .ec-cartNaviIsset__action .ec-blockBtn--action:active:focus, .ec-cartNaviIsset__action .ec-blockBtn--action.active:focus, .show > .ec-cartNaviIsset__action .ec-blockBtn--action.dropdown-toggle:focus {
  box-shadow: none;
}
.ec-cartNaviIsset__action .ec-blockBtn--action:disabled, .ec-cartNaviIsset__action .ec-blockBtn--action.disabled {
	background-color: #f3578e;
}
.ec-cartNaviIsset__action::before,.ec-cartNaviIsset__action::after {
    content: "";
    position: absolute;
    bottom: 50px;
    width: 35px;
    height: 35px;
	z-index: 0;
}
.ec-cartNaviIsset__action::before {
    left: -30px;
    background: linear-gradient(to right, transparent, #d3e4f8);
    transform-origin: right center;
    animation: 10s infinite linear an_cart_btn_engine01;
}
.ec-cartNaviIsset__action::after {
    right: -30px;
    background: linear-gradient(to left, transparent, #d3e4f8);
    transform-origin: left center;
    animation: 10s 0.2s infinite linear an_cart_btn_engine02;
}
@-webkit-keyframes an_cart_btn_move {
    0% {transform: translate(0,0)}
    2% {transform: translate(5px,0)}
    6% {transform: translate(-5px,0)}
    8% {transform: translate(0,0)}
    100% {transform: translate(0,0)}
}
@-webkit-keyframes an_cart_btn_engine01 {
  0% {clip-path: polygon(0% 80%, 0% 20%, 100% 40%, 100% 60%);transform: scale(0,0);opacity: 1}
  2% {clip-path: polygon(0% 90%, 0% 10%, 100% 40%, 100% 60%);transform: scale(0.5,0.5);opacity: 1}
  10% {clip-path: polygon(0% 100%, 0% 0%, 100% 40%, 100% 60%);transform: scale(1,1);opacity: 0}
  100% {clip-path: polygon(0% 100%, 0% 0%, 100% 40%, 100% 60%);transform: scale(1,1);opacity: 0}
}
@-webkit-keyframes an_cart_btn_engine02 {
  0% {clip-path: polygon(0% 60%, 0% 40%, 100% 20%, 100% 80%);transform: scale(0,0);opacity: 1}
  2% {clip-path: polygon(0% 60%, 0% 40%, 100% 10%, 100% 90%);transform: scale(0.5,0.5);opacity: 1}
  10% {clip-path: polygon(0% 60%, 0% 40%, 100% 0%, 100% 100%);transform: scale(1,1);opacity: 0}
  100% {clip-path: polygon(0% 60%, 0% 40%, 100% 0%, 100% 100%);transform: scale(1,1);opacity: 0}
}
.ec-cartNaviIsset__action .ec-cartNavi--cancel {
	height: 40px;
	line-height: 40px;
	width: calc(100% - 10px);
    margin: 0 auto;
	background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
	color: #969696;
	font-size: 13px;
	border: none;
}
.ec-cartNaviIsset__action .ec-cartNavi--cancel:focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel.focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel:active:focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel:active.focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel.active:focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel.active.focus {
	outline: none;
}
.ec-cartNaviIsset__action .ec-cartNavi--cancel:hover, .ec-cartNaviIsset__action .ec-cartNavi--cancel:focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel.focus {
	color: #969696;
}
.ec-cartNaviIsset__action .ec-cartNavi--cancel:hover {
	color: #969696;
	background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
	border: none;
}
.btn-check:focus + .ec-cartNaviIsset__action .ec-cartNavi--cancel, .ec-cartNaviIsset__action .ec-cartNavi--cancel:focus {
	color: #969696;
	background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
	border: none;
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
}
.btn-check:checked + .ec-cartNaviIsset__action .ec-cartNavi--cancel, .btn-check:active + .ec-cartNaviIsset__action .ec-cartNavi--cancel, .ec-cartNaviIsset__action .ec-cartNavi--cancel:active, .ec-cartNaviIsset__action .ec-cartNavi--cancel.active, .show > .ec-cartNaviIsset__action .ec-cartNavi--cancel.dropdown-toggle {
	color: #969696;
	background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
	border: none;
}
.btn-check:checked + .ec-cartNaviIsset__action .ec-cartNavi--cancel:focus, .btn-check:active + .ec-cartNaviIsset__action .ec-cartNavi--cancel:focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel:active:focus, .ec-cartNaviIsset__action .ec-cartNavi--cancel.active:focus, .show > .ec-cartNaviIsset__action .ec-cartNavi--cancel.dropdown-toggle:focus {
	box-shadow: 0 0 4px rgba(120,127,135,0.75);
}
.ec-cartNaviIsset__action .ec-cartNavi--cancel:disabled, .ec-cartNaviIsset__action .ec-cartNavi--cancel.disabled {
	color: #969696;
	background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
	border: none;
}
/*.cartNavi-close {
	position: absolute;
	top: 13px;
	right: -15px;
	cursor: pointer;
	font-size: 18px;
	color: #fff;
}*/
@media (min-width: 768px) {
	.ec-cartNaviIsset__action .ec-blockBtn--action {
		position: relative;
		overflow: hidden;
		transition: 0.4s;
	}
	.ec-cartNaviIsset__action .ec-blockBtn--action:hover {
		background-color: #e5bd31;
	}
	.ec-cartNaviIsset__action .ec-blockBtn--action::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		margin: auto;
		width: 100%;
		height: 100%;
		background-color: #fff;
		opacity: 0.4;
		transition: 0;
		transform: rotate(-25deg) translate(-100%, -100%);
		transform-origin: left center;
	}
	.ec-cartNaviIsset__action .ec-blockBtn--action:hover::before {
		left: 200%;
		transition: 0.4s;
	}
	
	.ec-cartNaviIsset__action .ec-cartNavi--cancel {
		position: relative;
		overflow: hidden;
		z-index: 1;
		transition: 0.2s;
	}
	.ec-cartNaviIsset__action .ec-cartNavi--cancel:hover {
		color: #fff;
	}
	.ec-cartNaviIsset__action .ec-cartNavi--cancel::before {
		background: #969696;
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		width: 100%;
		height: 700%;
		transform-origin: left top;
		transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
		z-index: -1;	
		transform: skewY(-35deg) scale(1, 0);
	}
	.ec-cartNaviIsset__action .ec-cartNavi--cancel:hover::before {
		transform: skewY(-35deg) scale(1, 1);
	}
	
	
	
	/*.ec-cartNaviIsset__action div:last-of-type {
    	width: calc(100% - 10px);
    	height: 10px;
    	margin: 0 auto;
		background: linear-gradient(to right, #c8c8c8, #fafafa, #c8c8c8);
		box-shadow: 0 0 4px rgba(120,127,135,0.75);
	}*/
}
.ec-cartNaviNull {
    display: block;
    margin: 0 auto;
    width: calc(100% - 10px);
    height: calc(100dvh - 30px);
    background-color: #fff;
    border-left: solid 1px #e5bd31;
    border-right: solid 1px #e5bd31;
    position: relative;
}
.ec-cartNaviNull .ec-cartNaviNull__message {
    display: block;
	text-align: center;
    border: none;
    font-size: 14px;
    font-weight: normal;
    color: #444;
    width: 100%;
    padding: 65px 0;
    background-color: transparent;
}
.ec-cartNaviNull::after {
    content: "";
    width: calc(100% + 10px);
    height: 10px;
    position: absolute;
    bottom: 0;
    left: -5px;
    background: linear-gradient(to right, #e5bd31, #fcdb66, #e5bd31);
}

.ec-cartNaviNull .ec-cartNavi--cancel {
	height: 40px;
	line-height: 38px;
	width: 150px;
    margin: 40px auto;
	background: transparent;
	box-shadow: none;
	color: #3477c5;
	font-size: 14px;
	border: solid 2px #3477c5;
	border-radius: 40px;
}
.ec-cartNaviNull .ec-cartNavi--cancel:focus, .ec-cartNaviNull .ec-cartNavi--cancel.focus, .ec-cartNaviNull .ec-cartNavi--cancel:active:focus, .ec-cartNaviNull .ec-cartNavi--cancel:active.focus, .ec-cartNaviNull .ec-cartNavi--cancel.active:focus, .ec-cartNaviNull .ec-cartNavi--cancel.active.focus {
	outline: none;
}
.ec-cartNaviNull .ec-cartNavi--cancel:hover, .ec-cartNaviNull .ec-cartNavi--cancel:focus, .ec-cartNaviNull .ec-cartNavi--cancel.focus {
	color: #3477c5;
}
.ec-cartNaviNull .ec-cartNavi--cancel:hover {
	color: #3477c5;
	background: transparent;
	border: solid 2px #3477c5;
}
.btn-check:focus + .ec-cartNaviNull .ec-cartNavi--cancel, .ec-cartNaviNull .ec-cartNavi--cancel:focus {
	color: #3477c5;
	background: transparent;
	border: solid 2px #3477c5;
	box-shadow: none;
}
.btn-check:checked + .ec-cartNaviNull .ec-cartNavi--cancel, .btn-check:active + .ec-cartNaviNull .ec-cartNavi--cancel, .ec-cartNaviNull .ec-cartNavi--cancel:active, .ec-cartNaviNull .ec-cartNavi--cancel.active, .show > .ec-cartNaviNull .ec-cartNavi--cancel.dropdown-toggle {
	color: #3477c5;
	background: transparent;
	border: solid 2px #3477c5;
}
.btn-check:checked + .ec-cartNaviNull .ec-cartNavi--cancel:focus, .btn-check:active + .ec-cartNaviNull .ec-cartNavi--cancel:focus, .ec-cartNaviNull .ec-cartNavi--cancel:active:focus, .ec-cartNaviNull .ec-cartNavi--cancel.active:focus, .show > .ec-cartNaviNull .ec-cartNavi--cancel.dropdown-toggle:focus {
	box-shadow: none;
}
.ec-cartNaviNull .ec-cartNavi--cancel:disabled, .ec-cartNaviNull .ec-cartNavi--cancel.disabled {
	color: #3477c5;
	background: transparent;
	border: solid 2px #3477c5;
}
@media (min-width: 768px) {
	.ec-cartNaviNull {
		margin: 0 auto;
		min-width: auto;
		max-width: none;
	}
	.ec-cartNaviNull::before {
		display: none;
	}
	
	.ec-cartNaviNull .ec-cartNavi--cancel {
		position: relative;
		overflow: hidden;
		z-index: 1;
		transition: 0.2s;
	}
	.ec-cartNaviNull .ec-cartNavi--cancel:hover {
		color: #fff;
	}
	.ec-cartNaviNull .ec-cartNavi--cancel::before {
		background: #3477c5;
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		width: 100%;
		height: 400%;
		transform-origin: left top;
		transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
		z-index: -1;	
		transform: skewY(-35deg) scale(1, 0);
	}
	.ec-cartNaviNull .ec-cartNavi--cancel:hover::before {
		transform: skewY(-35deg) scale(1, 1);
	}
}

.ec-modal .ec-modal-overlay {
	background-color: rgba(52, 119, 197, 0.75);
	display: block;
	position: relative;
	overflow: hidden;
}
.ec-modal .ec-modal-wrap {
	border: none;
	color: #444;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	width: 320px;
	height: 320px;
	max-width: 100vw;
	max-height: 100vw;
	padding: 0;
	border-radius: 50%;
	box-shadow: -20px -10px 50px 5px rgba(120,127,135, 0.1) inset,5px 5px 10px rgba(120,127,135,0.75);
	transform: scale(0);
	transition: 0.8s;
}
.have_ec-modal .ec-modal .ec-modal-wrap {
	transform: scale(1);
	transition: 0s;
}
.ec-modal .ec-modal-wrap .ec-modal-inner {
	position: absolute;
	top: 50%;
	margin: auto;
	width: 100%;
	transform: translate(0,-50%);
}
.ec-modal .ec-modal-wrap .ec-modal-inner .text-center {
	padding: 0 20px;
}
.ec-modal .ec-modal-close {
	right: 10px;
	color: #fff;
}
.ec-modal .ec-modal-close:hover {
	color: #fff;
}
.ec-modal .ec-role {
	margin: 20px auto 0;
	display: block;
}
.ec-modal .ec-modal-box {
	margin-top: 30px;
}
.ec-inlineBtn--action {
	background-color: #f3578e;
	border-radius: 40px;
	border: none;
	color: #fff;
	margin-left: 5px;
}
.ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus {
  outline: none;
  outline-offset: 0;
}
.ec-inlineBtn--action:hover, .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {
  color: #fff;
}
.ec-inlineBtn--action.disabled, .ec-inlineBtn--action[disabled], fieldset[disabled] .ec-inlineBtn--action {
  filter: alpha(opacity=1);
  opacity: 1;
}
.ec-inlineBtn--action:hover {
  background-color: #f3578e;
  border: none;
}
.btn-check:focus + .ec-inlineBtn--action, .ec-inlineBtn--action:focus {
  background-color: #f3578e;
  border: none;
  box-shadow: none;
}
.btn-check:checked + .ec-inlineBtn--action, .btn-check:active + .ec-inlineBtn--action, .ec-inlineBtn--action:active, .ec-inlineBtn--action.active, .show > .ec-inlineBtn--action.dropdown-toggle {
  background-color: #f3578e;
  border: none;
}
.btn-check:checked + .ec-inlineBtn--action:focus, .btn-check:active + .ec-inlineBtn--action:focus, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action.active:focus, .show > .ec-inlineBtn--action.dropdown-toggle:focus {
  box-shadow: none;
}
.ec-inlineBtn--action:disabled, .ec-inlineBtn--action.disabled {
  background-color: #f3578e;
  border: none;
}
@media (min-width: 768px) {
	.ec-inlineBtn--action {
		position: relative;
		overflow: hidden;
		transition: 0.4s;
	}
	.ec-inlineBtn--action:hover {
		background-color: #e5bd31;
	}
	.ec-inlineBtn--action::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		margin: auto;
		width: 100%;
		height: 100%;
		background-color: #fff;
		opacity: 0.4;
		transition: 0;
		transform: rotate(-35deg) translate(-100%, -100%);
		transform-origin: left center;
	}
	.ec-inlineBtn--action:hover::before {
		left: 220%;
		transition: 0.4s;
	}
}

.ec-inlineBtn--cancel {
	background-color: #c8c8c8;
	border-radius: 40px;
	border: none;
	color: #fff;
	margin-right: 5px;
}
.ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus {
  outline: none;
  outline-offset: 0;
}
.ec-inlineBtn--cancel:hover, .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {
  color: #fff;
}
.ec-inlineBtn--cancel.disabled, .ec-inlineBtn--cancel[disabled], fieldset[disabled] .ec-inlineBtn--cancel {
  filter: alpha(opacity=1);
  opacity: 1;
}
.ec-inlineBtn--cancel:hover {
  background-color: #c8c8c8;
  border: none;
}
.btn-check:focus + .ec-inlineBtn--cancel, .ec-inlineBtn--cancel:focus {
  background-color: #c8c8c8;
  border: none;
  box-shadow: none;
}
.btn-check:checked + .ec-inlineBtn--cancel, .btn-check:active + .ec-inlineBtn--cancel, .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active, .show > .ec-inlineBtn--cancel.dropdown-toggle {
  background-color: #c8c8c8;
  border: none;
}
.btn-check:checked + .ec-inlineBtn--cancel:focus, .btn-check:active + .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel.active:focus, .show > .ec-inlineBtn--cancel.dropdown-toggle:focus {
  box-shadow: none;
}
.ec-inlineBtn--cancel:disabled, .ec-inlineBtn--cancel.disabled {
  background-color: #c8c8c8;
  border: none;
}
@media (min-width: 768px) {
	.ec-inlineBtn--cancel {
		position: relative;
		overflow: hidden;
		z-index: 1;
		transition: 0.2s;
	}
	.ec-inlineBtn--cancel::before {
		background: #3477c5;
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		width: 100%;
		height: 350%;
		transform-origin: left top;
		transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
		z-index: -1;	
		transform: skewY(-35deg) scale(1, 0);
	}
	.ec-inlineBtn--cancel:hover::before {
		transform: skewY(-35deg) scale(1, 1);
	}
	.ec-modal-close {
		transition: 0.2s;
	}
	.ec-modal-close:hover {
		transform: scale(1.2);
	}
}

/* pager */
.pager_wrap {
	display: flex;
	align-items: center;
	margin: 0 10px;
}
.pager_wrap .pager_arrow {
	width: 30px;
}
.pager_wrap .pager_arrow a {
	font-size: 20px;
	color: #3477c5;
	display: block;
}
.pager_wrap .pager_arrow.right {
	text-align: right;
}
.ec-pager {
	font-size: 15px;
	font-weight: bold;
	display: flex;
	align-items: center;
}
.ec-pager .ec-pager__item {
	width: 30px;
	text-align: center;
}
.ec-pager .ec-pager__item.pager_dot {
	color: #c8c8c8 !important;
	padding: 0;
}
.ec-pager .ec-pager__item--active {
	background: transparent;
}
.ec-pager .ec-pager__item a {
	text-align: center;
	width: 30px;
	display: block;
	padding: 0 5px 0 0;
	color: #3477c5;
}
.ec-pager .ec-pager__item:hover {
	background: transparent;
	color: #3477c5;
}
.ec-pager .ec-pager__item--active {
	color: #c8c8c8;
	width: 30px;
	text-align: center;
	line-height: 1.8;
}
@media only screen and (max-width: 374px) {
	.ec-pager {
		font-size: 14px;
	}
	.ec-pager .ec-pager__item,.ec-pager .ec-pager__item a,.ec-pager .ec-pager__item--active {
		min-width: auto;
		width: 25px;
	}
}
@media only screen and (min-width: 768px) {
	.pager_wrap .pager_arrow {
		width: 34px;
	}
	.pager_wrap .pager_arrow a {
		font-size: 24px;
		transition: 0.2s;
	}
	.pager_wrap .pager_arrow a:hover {
		transform: translate(0,-3px);
	}
	.ec-pager .ec-pager__item a {
		transition: 0.2s;
	}
	.ec-pager .ec-pager__item a:hover {
		transform: translate(0,-3px);
	}
}

/* form */
.was-validated .form-control:invalid, .form-control.is-invalid {
	border-color: #f3578e;
}
.invalid-feedback {
	color: #f3578e;
}
.form-check-input:checked {
    background-color: #3477c5;
    border-color: #3477c5;
	box-shadow: none;
	outline: none;
}
.form-check-input:focus {
	box-shadow: none;
	outline: none;
}
.ec-input input, .ec-birth input, .ec-select input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input {
	border: solid 1px #c8c8c8;
}
.error.ec-input input, .error.ec-birth input, .error.ec-select input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-input select, .error.ec-birth select, .error.ec-select select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-input textarea, .error.ec-birth textarea, .error.ec-select textarea, .error.ec-halfInput textarea, .error.ec-numberInput textarea, .error.ec-zipInput textarea, .error.ec-telInput textarea {
    border-color: #f3578e;
    background: #fff5f9;
}
.ec-input .ec-errorMessage, .ec-birth .ec-errorMessage, .ec-select .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-login .ec-errorMessage {
    color: #f3578e;
}

/* shipping_edit */
.ec-borderedDefs, .ec-borderedDefs dl {
	border: none;
}
.ec-borderedDefs {
	margin-bottom: 30px;
}
.ec-borderedDefs dl dt .ec-label {
	font-size: 14px;
}
.ec-required {
	vertical-align: baseline;
	color: #f3578e;
}
.ec-borderedDefs input {
	font-size: 15px;
	padding: 10px;
}
.ec-borderedDefs input:focus,.ec-borderedDefs select {
	border: solid 1px #c8c8c8;
}
.ec-borderedDefs input:focus,.ec-borderedDefs select:focus {
	border: solid 1px #3477c5;
}
.ec-borderedDefs .ec-zipInput input {
	margin-bottom: 8px;
}
.ec-borderedDefs .ec-zipInput .ec-zipInputHelp {
	display: none;
}
.ec-borderedDefs .ec-select {
	margin-bottom: 8px;
}
.ec-borderedDefs .ec-select select {
	width: 168px;
	font-size: 15px;
	padding: 8px 7px;
}
.ec-zipInput span {
	font-size: 14px;
}
@media only screen and (min-width: 768px) {
	.ec-borderedDefs dl {
		flex-wrap: wrap;
		padding: 10px 0 0;
  }
	.ec-borderedDefs dt, .ec-borderedDefs dd {
		padding: 0;
	}
	.ec-borderedDefs dt {
		font-weight: normal;
		width: 100%;
		padding-top: 0;
	}
	.ec-borderedDefs dd {
		padding: 0;
		width: 100%;
		line-height: 2.5;
	}
}
@media only screen and (min-width: 1024px) {
	.ec-borderedDefs dl {
		flex-wrap: nowrap;
		padding: 15px 0 4px;
	}
	.ec-borderedDefs dt {
		width: 30%;
		line-height: 3;
	}
	.ec-borderedDefs dd {
		width: 70%;
		line-height: 3;
	}
}

.ec-totalBox {
    background-color: transparent;
    padding: 15px;
    margin-bottom: 40px;
	font-size: 15px;
	border: solid 3px #e3e3e3;
}
.ec-totalBox .ec-totalBox__spec {
	justify-content: flex-end;
	align-items: flex-end;
	margin-right: 32px;
}
.ec-totalBox .ec-totalBox__spec dt {
	font-size: 13px;
	padding-bottom: 1px;
}
.ec-totalBox .ec-totalBox__spec dd {
	min-width: 100px;
	margin-bottom: 0;
}
.ec-totalBox .ec-totalBox__total,.ec-totalBox .ec-totalBox__paymentTotal {
	border-top: 1px dotted #c8c8c8;
}
.ec-totalBox .ec-totalBox__taxRate {
	margin-bottom: 0;
	font-size: 11px;
	line-height: 1.2;
}
.ec-totalBox .ec-totalBox__taxRate dt {
	margin-right: 4px;
}
.ec-totalBox .ec-totalBox__taxRate dt::before {
	content: "";
}
.ec-totalBox .ec-totalBox__taxRate dd::after {
	content: "";
}
.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel {
	color: #3477c5;
}
.ec-totalBox .ec-totalBox__price {
	min-width: 100px;
	display: inline-block;
	margin-left: 0;
}
@media only screen and (min-width: 768px) {
	.ec-orderRole {
		flex-direction: column;
	}
	.ec-orderRole .ec-orderRole__detail {
		width: 100%;
	}
	.ec-orderRole .ec-orderRole__summary {
		width: calc(100% - 32px);
		padding: 15px 3px 0;
		margin-left: auto;
		margin-right: auto;
	}
	.ec-totalBox .ec-totalBox__taxLabel {
    	font-size: 12px;
	}
}
@media only screen and (min-width: 1024px) {
	.ec-orderRole {
		flex-direction: row;
	}
	.ec-orderRole .ec-orderRole__detail {
		width: 66.66666%;
	}
	.ec-orderRole .ec-orderRole__summary {
		width: 33.33333%;
	}
	.ec-totalBox {
		border: solid 1px #e3e3e3;
		margin-bottom: 20px;
		padding: 10px;
	}
	.ec-totalBox .ec-totalBox__price {
		font-size: 16px;
	}
	.ec-totalBox .ec-totalBox__spec {
		margin-right: 30px;
	}
	.ec-totalBox .ec-totalBox__spec dt,.ec-totalBox .ec-totalBox__total,.ec-totalBox .ec-totalBox__paymentTotal {
		font-size: 12px;
	}
	.ec-totalBox .ec-totalBox__taxRate {
		flex-wrap: wrap;
	}
	.ec-totalBox .ec-totalBox__taxRate dt {
		width: 100%;
		margin-right: 0;
		margin-bottom: 2px;
		text-align: right;
	}
	.ec-totalBox .ec-totalBox__taxRate dd {
		width: 100%;
		text-align: right;
	}
	.ec-totalBox .ec-totalBox__taxLabel {
    	font-size: 10px;
	}
}
@media only screen and (min-width: 1180px) {
	.ec-totalBox {
		padding: 15px;
	}
	.ec-totalBox .ec-totalBox__spec {
		margin-right: 32px;
	}
	.ec-totalBox .ec-totalBox__spec dt {
		font-size: 13px;
	}
	.ec-totalBox .ec-totalBox__total,.ec-totalBox .ec-totalBox__paymentTotal {
		font-size: 14px;
	}
	.ec-totalBox .ec-totalBox__taxLabel {
    	font-size: 12px;
	}
}
.ec-totalBox__btn {
	position: relative;
}
.ec-totalBox__btn .ec-blockBtn--action {
	border: none;
	border-radius: 40px;
	background-color: #f3578e;
}
.ec-totalBox__btn .ec-blockBtn--action:focus, .ec-totalBox__btn .ec-blockBtn--action.focus, .ec-totalBox__btn .ec-blockBtn--action:active:focus, .ec-totalBox__btn .ec-blockBtn--action:active.focus, .ec-totalBox__btn .ec-blockBtn--action.active:focus, .ec-totalBox__btn .ec-blockBtn--action.active.focus {
	outline: none;
	outline-offset: 0;
}
.ec-totalBox__btn .ec-blockBtn--action:hover, .ec-totalBox__btn .ec-blockBtn--action:focus, .ec-totalBox__btn .ec-blockBtn--action.focus {
	color: #fff;
}
.ec-totalBox__btn .ec-blockBtn--action:hover {
	background-color: #f3578e;
}
.btn-check:focus + .ec-totalBox__btn .ec-blockBtn--action, .ec-totalBox__btn .ec-blockBtn--action:focus {
	color: #fff;
	background-color: #f3578e;
	box-shadow: none;
}
.btn-check:checked + .ec-totalBox__btn .ec-blockBtn--action, .btn-check:active + .ec-totalBox__btn .ec-blockBtn--action, .ec-totalBox__btn .ec-blockBtn--action:active, .ec-totalBox__btn .ec-blockBtn--action.active, .show > .ec-totalBox__btn .ec-blockBtn--action.dropdown-toggle {
	color: #fff;
	background-color: #f3578e;
}
.btn-check:checked + .ec-totalBox__btn .ec-blockBtn--action:focus, .btn-check:active + .ec-totalBox__btn .ec-blockBtn--action:focus, .ec-totalBox__btn .ec-blockBtn--action:active:focus, .ec-totalBox__btn .ec-blockBtn--action.active:focus, .show > .ec-totalBox__btn .ec-blockBtn--action.dropdown-toggle:focus {
  box-shadow: none;
}
.ec-totalBox__btn .ec-blockBtn--action:disabled, .ec-totalBox__btn .ec-blockBtn--action.disabled {
	background-color: #f3578e;
}
.ec-totalBox__btn .ec-blockBtn--cancel {
	border: none;
	border-radius: 40px;
	background-color: #c8c8c8;
	margin-top: 15px;
}
.ec-totalBox__btn .ec-blockBtn--cancel:focus, .ec-totalBox__btn .ec-blockBtn--cancel.focus, .ec-totalBox__btn .ec-blockBtn--cancel:active:focus, .ec-totalBox__btn .ec-blockBtn--cancel:active.focus, .ec-totalBox__btn .ec-blockBtn--cancel.active:focus, .ec-totalBox__btn .ec-blockBtn--cancel.active.focus {
	outline: none;
	outline-offset: 0;
}
.ec-totalBox__btn .ec-blockBtn--cancel:hover, .ec-totalBox__btn .ec-blockBtn--cancel:focus, .ec-totalBox__btn .ec-blockBtn--cancel.focus {
	color: #fff;
}
.ec-totalBox__btn .ec-blockBtn--cancel:hover {
	background-color: #c8c8c8;
}
.btn-check:focus + .ec-totalBox__btn .ec-blockBtn--cancel, .ec-totalBox__btn .ec-blockBtn--cancel:focus {
	background-color: #c8c8c8;
	box-shadow: none;
}
.btn-check:checked + .ec-totalBox__btn .ec-blockBtn--cancel, .btn-check:active + .ec-totalBox__btn .ec-blockBtn--cancel, .ec-totalBox__btn .ec-blockBtn--cancel:active, .ec-totalBox__btn .ec-blockBtn--cancel.active, .show > .ec-totalBox__btn .ec-blockBtn--cancel.dropdown-toggle {
	background-color: #c8c8c8;
}
.btn-check:checked + .ec-totalBox__btn .ec-blockBtn--cancel:focus, .btn-check:active + .ec-totalBox__btn .ec-blockBtn--cancel:focus, .ec-totalBox__btn .ec-blockBtn--cancel:active:focus, .ec-totalBox__btn .ec-blockBtn--cancel.active:focus, .show > .ec-totalBox__btn .ec-blockBtn--cancel.dropdown-toggle:focus {
	box-shadow: none;
}
.ec-totalBox__btn .ec-blockBtn--cancel:disabled, .ec-totalBox__btn .ec-blockBtn--cancel.disabled {
	background-color: #c8c8c8;
}
@media only screen and (min-width: 768px) {
	.ec-totalBox__btn .ec-blockBtn--action, .ec-totalBox__btn .ec-blockBtn--cancel {
		position: relative;
		overflow: hidden;
		transition: 0.4s;
		z-index: 1;
	}
	.ec-totalBox__btn .ec-blockBtn--action:hover {
		background-color: #e5bd31;
	}
	.ec-totalBox__btn .ec-blockBtn--action::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		margin: auto;
		width: 100%;
		height: 100%;
		background-color: #fff;
		opacity: 0.4;
		transition: 0;
		transform: rotate(-35deg) translate(-100%, -100%);
		transform-origin: left center;
	}
	.ec-totalBox__btn .ec-blockBtn--action:hover::before {
		left: 220%;
		transition: 0.4s;
	}
	.ec-totalBox__btn .ec-blockBtn--cancel::before {
		background: #3477c5;
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		width: 100%;
		height: 460%;
		transform-origin: left top;
		transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
		z-index: -1;	
		transform: skewY(-35deg) scale(1, 0);
	}
	.ec-totalBox__btn .ec-blockBtn--cancel:hover::before {
		transform: skewY(-35deg) scale(1, 1);
	}
}

/* title */
.ec-rectHeading h2 {
	background-color: transparent;
	font-size: 16px;
	border-bottom: 3px solid #e3e3e3;
	padding: 5px 0;
}
.ec-rectHeading h2 span {
	position: relative;
	display: inline-block;
	height: 100%;
	padding: 0 3px;
}
.ec-rectHeading h2 span::after {
	content: "";
	background-color: #e5bd31;
	width: 100%;
	height: 3px;
	position: absolute;
	bottom: -8px;
	left: 0;
	z-index: 1;
}
.ec-reportHeading h2 {
	font-size: 16px;
	color: #f3578e;
}
.ec-color-accent {
	color: #f3578e;
}
@media only screen and (min-width: 768px) {
	.ec-reportHeading h2 {
		font-size: 18px;
		text-align: left;
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
}