@charset "UTF-8";

/* font
   ========================================================================== */
@font-face {
  font-family: "A-OTF-RyuminPro-Light";
	src: url('../font/A-OTF-RyuminPro-Light.woff2') format('woff2'),
  url('../font/A-OTF-RyuminPro-Light.woff') format('woff'),
  url('../font/A-OTF-RyuminPro-Light.otf') format('opentype');
}
@font-face {
  font-family: "A-OTF-RyuminPro-Regular";
	src: url('../font/A-OTF-RyuminPro-Regular.woff2') format('woff2'),
  url('../font/A-OTF-RyuminPro-Regular.woff') format('woff'),
  url('../font/A-OTF-RyuminPro-Regular.otf') format('opentype');
}
@font-face {
  font-family: "AGaramondPro-Regular";
	src: url('../font/AGaramondPro-Regular.woff2') format('woff2'),
  url('../font/AGaramondPro-Regular.woff') format('woff'),
  url('../font/AGaramondPro-Regular.otf') format('opentype');
}
@font-face {
  font-family: "YuGothM";
	src: url('../font/YuGothM.woff2') format('woff2'),
  url('../font/YuGothM.woff') format('woff'),
  url('../font/YuGothM.ttf') format('truetype'),
  url('../font/YuGothM.eot') format('embedded-opentype');
}

/* content
   ========================================================================== */
body {
    min-width: 1200px;
}
.sp {
	display: none;
}
img {
    max-width: 100%;
    height: auto;
}
body {
    font-family: "A-OTF-RyuminPro-Light";
    background: #f4f4f4;
    color: #333;
    width: 100%;
}
.ec-layoutRole {
	background: #f4f4f4;
    overflow: hidden;
}
.ec-secHeading .ec-secHeading__ja {
    font-family: "A-OTF-RyuminPro-Light";
}
.other_page .ec-layoutRole__contents {
	padding-bottom: 150px;
}
@media only screen and (min-width: 768px) {
    .ec-layoutRole .ec-layoutRole__left {
        width: 365px;
    }
}
/* header
   ========================================================================== */
.hd_h1 {
	font-size: 11px;
	letter-spacing: 1px;
	position: absolute;
	top: 5px;
	left: 1em;
	color: #666;
	margin: 0;
}
.fa-user::before {
    display: block;
    content: url("../img/common/icon_mypage.svg");
    width: 20px;
    height: 20px;
}
.fa-heart::before {
    display: block;
    content: url("../img/common/icon_favorite.svg");
    width: 18px;
    height: 16px;
}
.fa-lock::before {
    display: block;
    content: url("../img/common/icon_login.svg");
    width: 15px;
    height: 18px;
}
.fa-shopping-cart::before {
    display: block;
    content: url("../img/common/icon_cart.svg");
    width: 20px;
    height: 18px;
}
.ec-headerNav .ec-headerNav__itemLink {
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}
.ec-headerNaviRole {
    max-width: 1730px;
}
.ec-cartNavi {
	min-width: auto;
	background-color: inherit;
}
.ec-cartNavi .ec-cartNavi__badge {
	background-color: #d8df21;
	color: #000;
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}
.ec-cartNavi .ec-cartNavi__badge {
	background-color: #d8df21;
	color: #000;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	font-size: 13px;
	font-weight: 500;
	height: auto;
	width: auto;
	/* text-align: center; */
	padding: 6px;
	position: absolute;
	left: -12px;
	top: -9px;
}
.ec-cartNavi .ec-cartNavi__price {
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    font-weight: normal;
    font-size: 13px;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
	background-color: #d8df21;
	color: #000;
    font-size: 12px;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
	background-color: #d8df21;
	color: #000;
}
.ec-headerSearch .ec-headerSearch__keyword {
	background-color: #fff;
	border: 0;
}
.ec-headerNaviRole {
	flex-wrap: wrap;
}
.ec-headerNaviRole .ec-headerNaviRole__right {
	width: 100%;
    align-items: first baseline;
}
.header_logo {
	width: 16.18%;
}
.header_logo .txt01 {
	font-size: 13px;
	margin: 0;
	letter-spacing: 1px;
	text-align: right;
	padding-right: 1em;
}
.header_logo .title01 {
	margin: 0;
}
.header_ul_01 {
	list-style: none;
	display: flex;
	margin: auto;
	padding: 0 40px;
	justify-content: space-between;
	font-size: 14px;
	max-width: 510px;
}
.header_ul_01 li {
    position: relative;
}
.header_Navi_01 {
	display: none;
}
header a {
	color: #000;
}
.ec-headerNaviRole .ec-headerNaviRole__left {
	width: 27%;
}
@media only screen and (min-width: 1000px) {
    .header_ul_01 {
        font-size: 18px;
        padding: 0;
    }
}
@media only screen and (min-width: 768px) {
    .header_Navi_01 {
        display: block;
        width: calc(100% - 16.18% - 27%);
        padding-top: 20px;
    }
    .ec-headerNaviRole .ec-headerNaviRole__search {
        margin-top: 20px;
    }
    .ec-headerNaviRole {
	    padding-bottom: 25px;
    }
    .header_ul_01 li::after {
        display: block;
        content: "";
        position: absolute;
        width: 0px;
        height: 0px;
        background-color: #d8df21;
        margin: auto;
        text-align: center;
        left: 0;
        right: 0;
        border-radius: 7px;
        top: 30px;
    }
    .header_ul_01 li:hover::after, .header_ul_01 li.active::after {
        width: 8px;
        height: 8px;
        transition: 0.3s;
    }
}

/* footer
   ========================================================================== */
.ec-footerRole {
	background: inherit;
	border: 0;
}
.ec-layoutRole__footer {
	background-color: #fff;
}
.ec-footerNavi .ec-footerNavi__link a {
	color: #000;
	text-decoration: none;
}
.ec-footerTitle .ec-footerTitle__logo {
	max-width: 186px;
	margin: auto;
}
.ec-footerTitle__copyright {
	font-family: "AGaramondPro-Regular";
	color: #000;
	font-size: 13px;
	letter-spacing: 1px;
	text-align: center;
}
.ft_txt_01 {
	font-weight: normal;
	font-size: 13px;
	letter-spacing: 1px;
    color: #000;
}
.footer_addr {
	text-align: center;
	margin-bottom: 70px;
}
.footer_addr .txt_01 {
	font-size: 14px;
	color: #000;
	letter-spacing: 1px;
}
.footer_nav_02 {
	display: flex;
	justify-content: center;
	font-size: 14px;
    margin-bottom: 1em;
}
.footer_nav_02 p {
	margin: 0 1em;
}
.footer_nav_02 a {
	color: #000;
}
.ec-blockTopBtn {
	background-color: transparent;
	height: auto;
	width: 73px;
    opacity: 1;
}
@media only screen and (min-width: 768px) {
    .ec-footerTitle {
        padding: 80px 0 40px;
    }
    .ec-footerRole {
        padding-bottom: 20px;
        margin-top: 50px;
    }
}

/* leftnavi
   ========================================================================== */
.ec-itemNav .head {
	text-align: left;
    padding-left: 1rem;
}
.ec-itemNav .head .tit01 {
	font-family: "AGaramondPro-Regular";
	font-size: 25px;
	color: #000;
	margin-bottom: 6px;
	line-height: 1.2em;
}
.ec-itemNav .head .tit02 {
	font-family: "A-OTF-RyuminPro-Light";
	font-size: 12px;
	color: #000;
	margin: 0;
}
.ec-itemNav__nav {
	margin-top: 50px;
}
.left_cat_li.nouka {
	display: none;
}
.category-nouka .left_cat_li {
	display: none;
}
.category-nouka .left_cat_li.nouka {
	display: block;
}
.ec-itemNav__nav li a {
    font-weight: normal;
    background-color: inherit;
}
.ul01 .sidecattitle {
    padding: 10px 22px 10px 16px;
    text-align: left;
    margin: 0;
    height: auto;
    line-height: 20px;
    cursor: pointer;
    position: relative;
}
.ul01 .sidecattitle::before {
	content: "";
	background-image: url("../img/common/icon_left_list.png");
	background-repeat: no-repeat;
    background-size: contain;
	width: 5px;
	height: 5px;
	position: absolute;
	left: 5px;
	top: 18px;
}
.ul01 .cattitle.close::before {
    content: url("../icon/icon_arrow_01_on.png");
    top: 13px;
}
.ec-itemNav__nav li ul li a,.ul01 .cattitle {
    border: 0;
    background-color: transparent;
    color: #333;
    font-weight: normal;
}
.ec-itemNav__nav .ul02.box {
	margin-bottom: 10px;
}
.ec-itemNav__nav .ul02 li a,.ec-itemNav__nav li ul li ul li a {
	background-color: transparent;
	/*background-image: url("../img/common/icon_left_list.png");*/
	background-repeat: no-repeat;
	-webkit-background-size: 3px;
	background-size: 3px;
	background-position: left 0px top 15px;
	font-weight: normal;
	color: #000;
	padding: 5px 10px 5px;
    margin-top: 0;
}
.ec-itemNav__nav li:hover ul li ul li a:hover {
    background-color: transparent;
    /*background-image: url("../img/common/icon_left_list.png");*/
    background-repeat: no-repeat;
    -webkit-background-size: 3px;
    background-size: 3px;
    background-position: left 0px top 15px;
}
.ec-itemNav__nav > li:hover > a,
.ec-itemNav__nav > li:hover li:hover > a {
    background-color: transparent;
}
.ec-itemNav__nav li ul li ul::before {
    display: none;
}
@media only screen and (min-width: 768px) {
    .ec-itemNav__nav li {
        float: none;
    }
    .ec-itemNav__nav li a {
        text-align: left;
        font-size: 18px;
        background-image: url("../img/common/icon_left_list.png");
        background-repeat: no-repeat;
        background-position: left top 18px;
        padding-left: 22px;
        padding-bottom: 10px;
        margin-top: 10px;
    }
    .ec-itemNav__nav > li:hover > a {
        background-image: url("../img/common/icon_left_list.png");
        background-repeat: no-repeat;
        background-position: left top 18px;
    }
    .ec-itemNav__nav li ul {
        position: relative;
        margin-left: 10px;
    }
    .ec-itemNav__nav li ul li {
        height: auto;
    }
    .ec-itemNav__nav li ul li a,.ul01 .cattitle {
        font-size: 15px;
        position: relative;
    }
    .ec-itemNav__nav li ul li ul {
        position: relative;
        left: 0;
    }
    .ec-itemNav__nav li ul li ul li a {
        font-size: 15px;
        background-color: transparent;
    }
}


/* top トップページ
   ========================================================================== */
.ec-layoutRole .ec-layoutRole__contents {
    max-width: 1730px;
    padding-bottom: 100px;
}
#page_homepage .ec-layoutRole .ec-layoutRole__contents {
    padding-bottom: 0;
}
.ec-sliderRole {
	max-width: 1730px;
}
.slick-list {
	border-radius: 30px;
}
.slick-initialized .slick-slide {
    border-radius: 30px;
    overflow: hidden;
}
.ec-newsRole .ec-newsRole__news {
    background-color: #fff;
    position: relative;
    padding: 30px 20px;
}
.ec-newsRole .ec-newsRole__news::before {
	display: block;
	content: "";
	position: absolute;
	left: -14px;
	top: -3px;
	width: 40px;
	height: calc(40px / 2);
	background-color: #d8df21;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	transform: rotate( -45deg );
}
.slick-dots li.slick-active button::before {
	opacity: .75;
	background-color: #d8df21 !important;
}
.ec-newsRole .ec-newsRole__news .ec-secHeading {
	display: flex;
	flex-flow: column;
}
.ec-secHeading .ec-secHeading__en {
	font-family: "AGaramondPro-Regular";
	font-weight: normal;
	font-size: 27px;
}
.ec-newsRole .ec-newsRole__news .ec-secHeading__en {
	margin-bottom: 10px;
    white-space: nowrap;
}
.ec-newsRole {
    position: relative;
}
.ec-newsRole::before {
	display: block;
	content: "";
	position: absolute;
	background-color: #fff;
	width: 100vw;
	height: 100%;
}
.ec-newsRole .ec-newsRole__newsTitle {
	font-weight: normal;
	color: #000;
	width: 100%;
	font-size: 17px;
	line-height: 1em;
}
.ec-newsRole .ec-newsRole__newsClose {
	width: auto;
	margin-right: 5px;
}
.fa-angle-down::before {
	content: "";
	width: 14px;
	height: 14px;
	display: block;
    background-image: url("../img/top/icon_arrow_02.png");
    -webkit-background-size: contain;
    background-size: contain;
}
.ec-newsRole .ec-newsRole__newsCloseBtn {
	background-color: inherit;
	position: relative;
	right: 0;
}
.ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i {
    transform: rotate( -270deg );
}
#news_readmore {
	display: none;
}
.ec-role.top_box_01 {
	margin-top: 130px;
    margin-bottom: 150px;
}
.top_box_01 .head {
	text-align: center;
	margin-bottom: 55px;
}
.top_box_01 .head .tit01 {
	font-size: 27px;
	font-family: "AGaramondPro-Regular";
	color: #000;
	letter-spacing: 2px;
	margin-bottom: 10px;
    position: relative;
}
.top_box_01 .head .tit01::after {
	content: "";
	width: 1px;
	height: 71px;
	background-color: #999;
	display: block;
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	bottom: -90px;
}
.top_box_01 .head .tit02 {
	font-size: 12px;
	color: #000;
	letter-spacing: 1px;
}
.top_box_01 .inbox01 {
	display: flex;
	justify-content: space-between;
    margin-bottom: 90px;
}
.top_box_01 .inbox01 p {
	width: 31.67%;
}
.top_box_01 .box01 {
	margin-bottom: 1em;
}
.top_box_02 {
	margin: auto;
	text-align: center;
	height: 480px;
}
.top_image_01 {
	height: 480px;
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-image: url("../img/top/img01.webp");
	text-indent: -9999px;
	position: absolute;
	left: 0;
	right: 0;
}
@media only screen and (min-width: 768px) {
    .ec-newsRole {
        padding: 0;
    }
    .ec-newsRole .ec-newsRole__news {
        border: 0;
        display: flex;
        padding: 90px 80px;
    }
    .ec-newsRole .ec-newsRole__newsDate {
        font-size: 13px;
        letter-spacing: 1px;
        min-width: 103px;
    }
    .ec-newsRole .ec-newsRole__newsColumn {
        min-width: auto;
    }
    .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {
        padding-left: 130px;
        font-size: 12px;
        color: #000;
    }
    .ec-newsRole .ec-newsRole__news .ec-secHeading {
        min-width: 335px;
    }
    .ec-newsRole .ec-newsRole__newsItem {
        width: 578px;
    }
}

/* history みかんの歴史
   ========================================================================== */
.w800 {
	width: 800px;
	margin: auto;
}
.SubP_tit01 {
	text-align: center;
	margin-top: 120px;
	font-family: "AGaramondPro-Regular";
	font-size: 32px;
    position: relative;
    letter-spacing: 2px;
}
.SubP_tit01 span {
	display: block;
	font-size: 14px;
	font-family: "A-OTF-RyuminPro-Light";
	margin-top: 5px;
    letter-spacing: 0;
}
.SubP_tit01::after {
	display: block;
	content: "";
	width: 1px;
	height: 70px;
	background-color: #999;
	/* position: absolute; */
	margin: 32px auto 0;
}
.his_tit01 {
	font-size: 28px;
	text-align: center;
	margin-top: 90px;
}
.his_tit02 {
	background-color: #d8df21;
	line-height: 51px;
	font-size: 23px;
	padding-left: 35px;
	letter-spacing: 1px;
    margin-top: 80px;
    margin-bottom: 25px;
}
.his_tit02 span {
	font-size: 24px;
	font-family: "AGaramondPro-Regular";
	margin-right: 20px;
}
.his_txt01 {
	font-size: 14px;
	line-height: 2.4em;
	letter-spacing: 1px;
    margin-bottom: 70px;
}
.his_txt02 {
	font-size: 14px;
	letter-spacing: 1px;
	line-height: 2.4em;
	margin-bottom: 100px;
}
.his_img03 {
	margin-bottom: 40px;
}
.his_img04 {
	margin: auto;
	text-align: center;
}

/* making_seedling 苗木が出来るまで
   ========================================================================== */
.seed_img01 {
	text-align: center;
	margin-top: 40px;
	margin-bottom: 60px;
}
.seed_txt01 {
	text-align: center;
	font-size: 14px;
	line-height: 2.4em;
	letter-spacing: 1px;
	margin-bottom: 100px;
}
.seed_img02 {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0;
	max-width: 940px;
	margin: auto;
}
.seed_img02 li {
	margin-bottom: 20px;
	width: 300px;
}

/* contact お問い合わせ
   ========================================================================== */
#page_contact .SubP_tit01::after {
    display: none;
}
.ec-contactRole .cont_txt01 {
	font-size: 14px;
	line-height: 2.4em;
	margin-top: 60px;
	margin-bottom: 80px;
	max-width: 730px;
	margin: 60px auto 80px;
}
#page_contact .ec-halfInput input[type="text"] {
    border: 0;
}
#page_contact .ec-input input {
    border: 0;
}
#contact_email {
	letter-spacing: 2px;
}
#page_contact .cont_box01 .ec-select select {
    border: 0;
    background-color: #fff;
}
#page_contact .ec-zipInput input {
    border: 0;
}
#page_contact .ec-telInput input {
	border: 0;
	max-width: 100%;
}
#page_contact .ec-input textarea {
	border: 0;
	font-family: "A-OTF-RyuminPro-Light";
}
.ec-contactRole .ec-blockBtn--action {
	background-color: #d8df21;
	border: 0;
	border-radius: 50px;
	color: #333;
	font-size: 20px;
    font-family: "A-OTF-RyuminPro-Light";
    transition: 0.3s;
}
.ec-blockBtn--action:hover {
	color: #333;
	background-color: #eaea13;
	border-color: #f7f70b;
}
.btn-check:checked + .ec-blockBtn--action, .btn-check:active + .ec-blockBtn--action, .ec-blockBtn--action:active, .ec-blockBtn--action.active, .show > .ec-blockBtn--action.dropdown-toggle {
    color: #333;
	background-color: #eaea13;
	border-color: #f7f70b;
}
.btn-check:focus + .ec-blockBtn--action, .ec-blockBtn--action:focus {
    color: #333;
    background-color: #eaea13;
    border-color: #f7f70b;
    box-shadow: 0 0 0 0.25rem rgba(227,227,31,0.50);
    -webkit-box-shadow: 0 0 0 0.25rem rgba(227,227,31,0.50);
}
.ec-zipInputHelp span {
	color: #808080;
	font-size: 13px;
}
.cont_box01 {
	max-width: 600px;
	margin: auto;
}

/* products 商品詳細 商品一覧
   ========================================================================== */
.sub_page_main_image {
	margin-bottom: 75px;
    padding: 0 20px;
}
.sub_page_main_image .main_image {
	text-align: center;
}
.ec-searchnavRole {
    padding: 0;
}
.ec-topicpath {
	padding: 10px 0 0;
}
.ec-topicpath .ec-topicpath__item a, .ec-topicpath .ec-topicpath__item--active a {
	color: #333;
	font-size: 15px;
}
.ec-topicpath .ec-topicpath__divider {
	margin: 0 3px;
}
.prod_box01 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px #999 solid;
	padding-bottom: 15px;
	max-width: 1130px;
	margin: auto;
}
.prod_tit01 {
	margin: 0;
	font-size: 26px;
}
ul.nae_icon {
	display: flex;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
}
ul.nae_icon li {
	margin-left: 1.5em;
	display: flex;
	align-items: center;
}
ul.nae_icon li img {
	margin-right: 5px;
}
.ec-searchnavRole .ec-searchnavRole__infos {
	border: 0;
	padding: 0;
	align-items: center;
	font-size: 15px;
}
.ec-searchnavRole__infos .ec-select {
	margin: 0;
}
.ec-searchnavRole__actions .ec-select select {
	border: 0;
	border-radius: 20px;
	padding: 5px 20px;
    background-position: right top;
}
.ec-shelfGrid .ec-shelfGrid__item {
	background-color: #fff;
	border-radius: 10px;
    overflow: hidden;
	width: 23%;
	margin-right: 2.66%;
    position: relative;
}
.ec-shelfGrid .ec-shelfGrid__item:nth-child(2n+1) {
	padding: 0;
}
.ec-shelfGrid .ec-shelfGrid__item:nth-child(2n) {
	padding: 0;
}
.ec-shelfGrid .ec-shelfGrid__item:nth-child(4n) {
	margin-right: 0;
}
.ec-shelfGrid .ec-shelfGrid__item-image {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
}
.ec-shelfGrid .ec-shelfGrid__item img {
	max-height: inherit;
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}
.ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn {
	padding: 0 10px;
}
.ec-numberInput input[type="number"] {
	font-size: 13px;
	font-family: "YuGothM";
	border: 0;
	padding: 0px;
	height: auto;
	text-align: center;
	margin: 0;
	max-width: inherit;
	width: 100%;
}
.ec-shelfGrid__item .ec-numberInput {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px #ccc solid;
	max-width: 130px;
	border-radius: 20px;
	overflow: hidden;
	padding: 1px 12px;
	box-sizing: border-box;
}
.ec-shelfGrid__item .ec-productRole__actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 10px;
	margin-bottom: 10px;
}
.price02-default {
	margin: 0;
    font-family: "YuGothM";
}
.ec-shelfGrid .prod_name {
	font-size: 18px;
	padding: 0 10px;
	margin-bottom: 10px;
}
.ec-shelfGrid__item .category-list {
    padding: 0 10px;
    display: flex;
}
.ec-shelfGrid__item .category-list .category-name {
	display: none;
    margin: 0;
    font-size: 12px;
    font-family: "YuGothM";
}
.ec-shelfGrid__item .category-list .category-name span {
    margin: 0 3px;
}
.ec-shelfGrid__item .category-list .category-name:first-child {
    display: block;
}
.ec-shelfGrid__item .category-list .category-name:nth-child(2n) {
    display: block;
}
.ec-shelfGrid__item .category-list .category-name:nth-child(2n) span {
	display: none;
}
.listpage_icon_ul {
	list-style: none;
	padding-left: 0;
	position: absolute;
	bottom: 8px;
	right: 10px;
	display: flex;
}
.listpage_icon_ul .list_icon_01 {
    list-style: none;
    margin-left: 2px;
}
.listpage_icon_ul .list_icon_01 img {
    width: 44px;
    height: auto;
    position: relative;
}

/** 商品詳細ページ **/
#page_product_detail .slick-initialized .slick-slide, #page_product_detail .slick-list {
    border-radius: 0;
}
#page_product_detail .slide-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	max-width: inherit;
}
#page_product_detail .slide-item {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 100%;
}
.ec-sliderItemRole .slideThumb {
	position: relative;
	width: 18.4%;
	height: 0;
	padding-top: 18.4%;
	margin-right: 2%;
}
.ec-sliderItemRole .slideThumb:nth-child(5n) {
    margin-right: 0;
}
.ec-sliderItemRole .slideThumb img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#page_product_detail .slick-slider {
    margin-bottom: 10px;
}

.ec-productRole .ec-productRole__actions .ec-select select {
	border: 0;
	border-radius: 20px;
	font-family: "YuGothM";
	padding-left: 20px;
	background-color: #fff;
	min-width: 210px;
}
#page_product_detail .ec-select label {
	margin-right: 20px;
	font-weight: normal;
	color: #000;
}
#page_product_detail .ec-numberInput span {
	font-size: 16px;
    font-family: "A-OTF-RyuminPro-Light";
	color: #000;
    margin-right: 15px;
}
#page_product_detail #quantity {
	font-size: 14px;
	border-radius: 20px;
	height: 40px;
	width: auto;
	max-width: 210px;
}
.ec-productRole .ec-productRole__category a {
	color: #333;
	font-size: 12px;
	font-family: "YuGothM";
}
.ec-productRole__category span {
	font-size: 12px;
}
.ec-productRole .ec-productRole__code {
	font-size: 12px;
	font-family: "YuGothM";
	color: #000;
}
.ec-productRole .ec-productRole__tag {
	font-family: "YuGothM";
	color: #000;
	font-size: 13px;
}
#page_product_detail .ec-productRole__btn .ec-blockBtn--action {
	font-size: 17px;
	font-family: "A-OTF-RyuminPro-Light";
    font-weight: normal;
	height: 65px;
	border-radius: 3px;
}
#favorite {
	background-color: #cbcbcb;
	border: 0;
	color: #000;
	font-weight: normal;
}
.ec-productRole .ec-productRole__description.freearea {
	padding: 0 20px;
}
.ec-productRole .ec-productRole__description h4 {
	margin-top: 50px;
	border-bottom: 1px #d8df21 solid;
    padding-bottom: 10px;
}
.ec-productRole .ec-productRole__description h4::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 20px;
    background-color: #d8df21;
    margin-right: 10px;
}
.ec-productRole .ec-productRole__description.freearea .subtext {
	line-height: 2em;
	letter-spacing: 1px;
	margin-top: 15px;
    text-align: justify;
}
.ec-productRole .ec-productRole__description {
	line-height: 2em;
	text-align: justify;
}
.prod_li_btn {
	font-size: 12px;
	font-family: "YuGothM";
    font-weight: bold;
	height: 36px;
	line-height: 36px;
	display: block;
	text-align: center;
	background-color: #d8df21;
	border-radius: 50px;
}
#page_product_list .ec-shelfGrid__item .ec-select {
	display: none;
}
#page_product_list .ec-numberInput {
	display: none;
}
.ec-productRole img {
	width: auto;
}
.item-img01 {
	margin-top: 50px;
}
@media only screen and (min-width: 768px) {
    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size: 30px;
        color: #000;
    }
    .ec-price .ec-price__price {
        font-size: 24px;
        font-family: "A-OTF-RyuminPro-Light";
        font-weight: normal;
        color: #000;
    }
    .ec-price .ec-price__tax {
        font-size: 15px;
        color: #000;
    }
}

/* about
   ========================================================================== */
.abt_txt_01 {
	text-align: center;
	font-size: 16px;
	line-height: 3em;
	letter-spacing: 1px;
}
.abt_box_01 {
	display: flex;
	margin: 100px auto 0;
	flex-flow: column;
	max-width: 1455px;
}
.abimg01 {
	margin-bottom: 90px;
}
.abimg02 {
	text-align: right;
}
.abimg03 {
	padding-left: 157px;
	margin-top: -110px;
}
.abt_box_02 {
	background-image: url("../img/about/image_04.webp");
	background-repeat: no-repeat;
	background-position: right top;
	min-height: 670px;
	max-width: 1120px;
	margin: 190px auto 100px;
	padding-top: 300px;
}
.abt_tit_01 {
	font-size: 27px;
	color: #000;
	letter-spacing: 2px;
	background-image: url("../img/about/icon_01.png");
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 45px;
	margin-bottom: 50px;
}
.abt_tb_01 {
}
.abt_tb_01 th, .abt_tb_01 td {
	vertical-align: top;
	padding: 10px 15px;
}
.abt_tb_01 th {
	font-size: 16px;
	font-weight: normal;
    line-height: 1.75em;
	text-align: right;
	letter-spacing: 2px;
}
.abt_tb_01 td {
	font-size: 16px;
	letter-spacing: 2px;
	line-height: 1.75em;
}
.abt_tb_01 td .mini {
	font-size: 12px;
	letter-spacing: 0;
}

/* guide
   ========================================================================== */
.guide_01 {
	max-width: 1000px;
	margin: 50px auto 0;
	border-top: 1px #ccc solid;
	padding-top: 60px;
}
.guide_01:last-child {
    border-bottom: 1px #ccc solid;;
    padding-bottom: 100px;
}
.guide_tit_01 {
	font-size: 28px;
	background-image: url("../img/guide/icon_01.png");
	background-repeat: no-repeat;
	background-position: left top 6px;
	padding-left: 30px;
}
.guide_txt_01 {
	font-size: 14px;
	padding-left: 32px;
}
.guide_type {
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
}
.guide_box_01 {
	display: flex;
	max-width: 872px;
	margin: 110px auto 0;
	justify-content: space-between;
}
.guide_box_01 .left {
	max-width: 410px;
}
.guide_tit_02 {
	font-size: 18px;
	background-color: #fff;
	line-height: 30px;
	display: inline-block;
	border-radius: 20px;
	padding: 0 20px;
	margin-bottom: 50px;
}
.guide_box_01 dl dt {
	font-size: 16px;
	font-weight: normal;
	margin-bottom: 20px;
}
.guide_box_01 dl dd {
	font-size: 14px;
	line-height: 2em;
	padding-left: 1em;
	letter-spacing: 0;
}
.gd_midasi01 {
	font-weight: normal;
	font-size: 18px;
	border: 1px #333 solid;
	display: inline-block;
	border-radius: 20px;
	padding: 2px 20px;
}
.gd_txt02 {
	line-height: 1.57em;
	padding-left: 1.7em;
	margin-top: 15px;
}
.gd_img01 {
	margin-left: 22px;
}
.guide_dl_01 {
	margin-top: 50px;
	margin-left: 30px;
}
.gd_txt03 {
	line-height: 1.57em;
	padding-left: 1.7em;
}
.gd_txt04 {
	font-size: 13px;
	padding-left: 30px;
	margin-top: 10px;
	line-height: 1.6em;
}
.guide_dl_01 .gd_mini {
	font-weight: normal;
	font-size: 16px;
	margin-left: 10px;
	letter-spacing: 2px;
}
.gd_midasi02 {
	font-size: 16px;
	background-image: url("../img/guide/icon_02.png");
	background-repeat: no-repeat;
	background-position: left top 6px;
	padding-left: 18px;
	margin-left: 1em;
	margin-top: 32px;
}
.gd_midasi02 span {
	font-size: 13px;
}
.guide_ul_01 {
	padding-left: 3.7em;
	font-size: 16px;
	line-height: 1.8em;
}
.guide_ul_01 .mini_01 {
	display: block;
	font-size: 14px;
	letter-spacing: 1px;
}
.gd_txt05 {
	line-height: 1.8em;
	padding-left: 35px;
}
.gd_table {
	border-top: 1px #ccc solid;
	margin-top: 15px;
	width: 100%;
	max-width: 600px;
}
.gd_table th, .gd_table td {
	font-weight: normal;
	border-bottom: 1px #ccc solid;
	padding: 15px 20px;
	letter-spacing: 1px;
}
.gd_table th {}
.gd_table td {
	border-left: 1px #666 dashed;
	text-align: center;
}
.gd_midasi03 {
    font-size: 18px;
    background-color: #fff;
    line-height: 30px;
    display: inline-block;
    border-radius: 20px;
    padding: 0 20px;
    margin-bottom: 25px;
}
.gd_txt06 {
	font-size: 16px;
	line-height: 1.8em;
	padding-left: 1.5em;
}
.gd_img_01 {
	margin-left: 1.5em;
	margin-top: 10px;
}

/* tradelaw
   ========================================================================== */
@media only screen and (min-width: 768px) {
    .ec-borderedDefs dd {
        line-height: 2;
    }
}
.ec-borderedDefs dd {
	line-height: 2;
}
#page_help_tradelaw .SubP_tit01::after,#page_help_privacy .SubP_tit01::after {}
.priv_wrap {
	margin: 50px auto 0;
}
.ec-off1Grid {
	flex-wrap: wrap;
}
#page_help_privacy p {
	line-height: 1.8em;
	font-size: 15px;
}

/* カート
   ========================================================================== */
.ec-inlineBtn--action {
    background-color: #d8df21;
    border-color: #d8df21;
    color: #333;
}
.ec-blockBtn--action {
    background-color: #d8df21;
    border-color: #d8df21;
    color: #333;
}
.ec-inlineBtn--action:hover {
	color: #333;
    background-color: #eaea13;
    border-color: #f7f70b;
}
.ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action {
    color: #333;
}
#page_shopping .ec-rectHeading h2,#page_shopping_confirm .ec-rectHeading h2 {
	background-color: #d8df21;
	font-weight: normal;
}


/* ハンバーガーメニューのスタイル start */
.hamburger {
    background: none;
    border: none;
    appearance: none;
    cursor: pointer;
    width: 34px;
    height: 21px;
    transition: all 1s;
    position: fixed;
    top: 23px;
    right: 20px;
    z-index: 10;
}
.hamburger span {
	display: inline-block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background: #222;
	transition: all .4s;
}
.hamburger span:nth-of-type(1) {
	top: 0;
}
.hamburger span:nth-of-type(2) {
	top: 10px;
}
.hamburger span:nth-of-type(3) {
	bottom: 0;
}

.hamburger span {
  background: none;
}
.hamburger span::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #000;
  transition: width 0.3s;
}
.hamburger span:nth-of-type(2)::before {
	transition: width 0.5s;
}
.hamburger span:nth-of-type(3)::before {
	transition: width 0.7s;
}
.hamburger.active span::before {
  width: 0;
}
.hamburger span:nth-of-type(1)::after {
  content: 'CLOSE';
  position: absolute;
  bottom: 0;
  top: 0;
  margin: auto;
  right: -100%;
  display: block;
  font-size: 12px;
  transition: 1s;
  opacity: 0;
}
.hamburger.active span:nth-of-type(1)::after {
	opacity: 1;
	right: 0;
}

/* ハンバーガーメニューのスタイル end */

.active-overlay {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    opacity: 0;
    background: transparent;
    transform: translateX(0);
    visibility: hidden;
    transition: opacity 1s ease;
}
.overlay-wrap .active-overlay {
    display: block;
    opacity: 1;
    background: rgba(0, 0, 0, 0.5);
    visibility: visible;
}

/* メニューのスタイル */
.drawermenu {
  position: fixed;
  top: 0;
  right: 0;
  width: 450px;
  height: 100%;
  background-color: #ffffff;
  opacity: 0; /* 初期状態は透明 */
  pointer-events: none; /* クリック不可 */
  transition: opacity 1s ease; /* フェードインのアニメーション */
  padding: 20px;
  box-sizing: border-box;
  z-index: 5;
}

/* メニューが開いたとき */
.drawermenu.open {
  opacity: 1; /* 不透明にする */
  pointer-events: auto; /* クリック可能にする */
}
.drawermenu .ec-headerSearch {
	display: none;
}
.drawermenu .ec-headerCategoryArea {
	display: none;
}
.ft_sp_nav_ul {
	list-style: none;
}
.ft_sp_nav_ul a {
	color: #333;
	font-size: 20px;
	line-height: 1.7em;
}
.ft_sp_nav_ul li {
	margin-bottom: 2em;
    padding-left: 1.5em;
}
.ft_sp_nav_ul li:hover {
    background-image: url("../img/common/icon_left_list.png");
    background-repeat: no-repeat;
    background-position: left;
    -webkit-background-size: 8px;
    background-size: 8px;
}
.ft_sp_nav_wrap {
	padding-top: 100px;
}
@media (max-width: 1800px) {
    .ec-headerNaviRole .ec-headerNaviRole__right {
        padding-right: 50px;
    }
    .ec-layoutRole__header {
        position: relative;
    }
    .hamburger {
        position: absolute;
    }
}
