/*
Theme Name:   OSUSUME
Template:     storefront
*/


/* base */
html{font-size: 62.5% !important;}
*:focus {outline:none !important;box-shadow:none !important;}
body * {box-sizing : border-box;}
body{font-size:clamp(1.4rem, 1.38rem + 0.1vw, 1.5rem) !important;line-height:1.7 !important;-webkit-text-size-adjust: 100%;}
.col-full {padding: 0;}
.mt-5 { margin-top: 3rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.mb-5{ margin-bottom: 1.75rem !important; }
.pe-3 { padding-right: 1rem !important; }
.ps-2 { padding-left: 0.5rem !important; }
.text-center{text-align:center;}
ol {margin: 0;padding-left:1.5rem}

/*--- toggle ---*/
button.menu-toggle{border:none !important;padding:7px 2px .6180469716em 1px;font-size:1px;max-width:85px !important;color:#fff !important;margin-right:0;}
button.menu-toggle:after{content:"";display:block;height:2px;width:30px !important;position:absolute;top:100%;left:1em;margin-top:-1px;-webkit-transition:all,ease,.2s;transition:all,ease,.2s;border-radius:3px}
button.menu-toggle:before{content:"";display:block;height:2px;width:30px !important;position:absolute;top:33%;left:1em;margin-top:-1px;-webkit-transition:all,ease,.2s;transition:all,ease,.2s;border-radius:3px}
button.menu-toggle span:before{content:"";display:block;height:2px;width:30px !important;position:absolute;top:68%;left:1em;margin-top:-1px;-webkit-transition:all,ease,.2s;transition:all,ease,.2s;border-radius:3px}
.toggled button.menu-toggle:after,.toggled button.menu-toggle:before{top:68%;}
nav#site-navigation.main-navigation.toggled{}

/* font */
h2{font-size:clamp(1.6rem, 1.559rem + 0.2vw, 1.8rem); line-height:1.6;}
h3, h4{font-size:clamp(1.55rem, 1.514rem + 0.18vw, 1.73rem);padding:0.8rem 0 0.4rem !important;line-height:1.6;}
.has-x-large-font-size{font-size:clamp(2.3rem, 2.057rem + 1.22vw, 3.5rem);line-height:1.6 !important;font-weight:bold;}
.has-large-font-size{font-size:clamp(2rem, 1.797rem + 1.01vw, 3rem);line-height:1.6 !important;font-weight:bold;}
.has-medi-l-font-size{font-size:clamp(1.65rem, 1.539rem + 0.56vw, 2.2rem);line-height:1.6 !important;font-weight:bold;}
.has-medium-font-size{font-size:clamp(1.5rem, 1.419rem + 0.41vw, 1.9rem);line-height:1.6 !important;font-weight:bold;}
.has-small-font-size{font-size:clamp(1.45rem, 1.409rem + 0.2vw, 1.65rem);line-height:1.6 !important;f}
.noto{font-family:"Noto Sans JP",sans-serif;font-weight:500;}
.fw800{font-weight:800 !important;}
small{font-size:1.2rem;}
h3.line-type, h2.line-type, h4.line-type{border-bottom:1px solid #222;padding-bottom:0.8rem;}
h3.line-double{border-top:1px solid #222;border-bottom:1px solid #222;padding:0.8rem 0;}
.heading, .heading-t {align-items: center;display: flex; justify-content: center;}
.heading::before,.heading::after {background-color: #ccc;  content: "";height: 5px;width: 42px;}
.heading-t::before,.heading-t::after {background-color: #000;  content: "";height: 1px;width: 42px;}
.heading::before, .heading-t::before {margin-right: 10px; }
.heading::after, .heading-t::after {margin-left: 10px; }

/* home */
body.home h1.entry-title{display:none !important;}
.page-template-template-homepage .entry-content, .page-template-template-homepage .entry-header {max-width:unset !important;}
div.slick-list{width: 100vw !important;margin:-80px calc(50% - 50vw) 0 !important;}
/*.hentry .entry-content figure.wp-block-image {margin: 0 !important;}*/
body.home h2.section-title, body.home h2.wp-block-heading{font-size:clamp(1.8rem, 1.739rem + 0.3vw, 2.1rem) !important; font-weight:bold !important;margin-bottom:3rem !important}
body.home h2.wp-block-post-title, h2.woocommerce-loop-product__title{font-size:clamp(1.4rem, 1.38rem + 0.1vw, 1.5rem) !important;}
body.home h2.wp-block-post-title a{text-decoration:none;color:#000;}
.slick-prev.slick-arrow, .slick-next.slick-arrow{display:none !important;}
.custom-grid {display: grid;grid-template-columns: repeat(4, 1fr) !important;gap: 16px !important;}
.custom-grid figure.wp-block-image {margin: 0 !important;}
.wc-block-product-template__responsive.columns-5, .wc-block-product-template__responsive.columns-4 {margin-left: 0 !important;padding-left: 0 !important;}
@media (max-width: 1024px) {
  .custom-grid {grid-template-columns: repeat(3, 1fr) !important;}
}
@media (max-width: 768px) {
  .custom-grid {grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 767px) {
    .site-main ul.products.columns-3 li.product, .page-template-template-homepage-php .site-main ul.products.columns-4 li.product{width: 48% !important;float: left !important;margin-right: 4% !important; }
    .site-main ul.products.columns-3 li.product:nth-child(2n),  .page-template-template-homepage-php .site-main ul.products.columns-4 li.product:nth-child(2n) {margin-right: 0 !important;}
}
@media (max-width: 600px) {
	.wc-block-product-template__responsive.columns-5 {grid-template-columns: repeat(2, 1fr) !important; }
}
ul.is-product-collection-layout-carousel {margin-left:0 !important;}
.wc-block-next-previous-buttons__button svg {padding: 0 !important; vertical-align: middle;position: relative;top: 0;left: 0; transform: none;}
.wc-block-next-previous-buttons__button {display: inline-flex;align-items: center;justify-content: center;width: 40px; height: 40px;padding: 0;box-sizing: border-box;}
body.home .storefront-product-section.storefront-woocommerce-brands{display:none !important;}
@media (max-width: 600px) {
    .wp-block-woocommerce-product-collection:has(.is-product-collection-layout-carousel) :where(.wc-block-next-previous-buttons.wc-block-next-previous-buttons) {display: block !important; }
}

/* product */
h1.woocommerce-products-header__title{font-size:clamp(1.9rem, 1.809rem + 0.46vw, 2.35rem) !important;line-height:1.7 !important;font-weight:bold !important}
h1.product_title{font-size:clamp(1.8rem, 1.719rem + 0.41vw, 2.2rem) !important;line-height:1.7 !important;font-weight:bold !important}
.single-product div.product {display: block !important;}
.single-product div.product .woocommerce-product-gallery {width: 100% !important;max-width:450px;float: none !important;margin:0 auto;}
.single-product div.product .summary {width: 100% !important;float: none !important;}
.single-product div.product .woocommerce-product-gallery {margin-bottom: 2em;}


/* lower */
h1.entry-title{font-size:clamp(2.2rem, 1.997rem + 1.01vw, 3.2rem);margin-bottom:3rem;}
.woocommerce-breadcrumb a, .widget-area a{text-decoration:none !important;}
table.pagetable th, .pagetable table th{min-width:120px !important;}
table.shippingtable td{min-width:120px;}
.con_faq dl dt:before{content:"Q.";font-size:2rem !important;margin-right:1rem}
.con_faq dl dd:before{content:"A.";font-size:2rem !important;margin-right:1rem;font-weight:bold;}
.display-none{display:none !important;}

/* archive  */
body.category h1.page-title{font-size:0px;margin-bottom:3rem;}
body.category h1.page-title span{font-size:clamp(2.2rem, 1.997rem + 1.01vw, 3.2rem);}
body.archive .hentry .posted-on, body.archive .hentry .post-author{font-size:0px;}
body.archive .hentry .post-author{margin-left:1.5rem;}
body.archive .hentry .posted-on a, body.archive .hentry .post-author a{font-size:clamp(1.4rem, 1.38rem + 0.1vw, 1.5rem);text-decoration:none;}
body.archive .hentry .cat-links a{text-decoration:none;}
body.archive .hentry .posted-on a:before{content: "\f073";font-family: "Font Awesome 5 Free";font-weight: 900;font-size:1.4rem !important;padding-right:2px;}
body.archive .hentry .post-author a:before{content: "\f007";font-family: "Font Awesome 5 Free";font-weight: 900;font-size:1.4rem !important;padding-right:2px;}
body.archive h2.entry-title{font-size:clamp(1.9rem, 1.809rem + 0.46vw, 2.35rem);margin-top:1.2rem;}

/* footer */
#menu-footer-link-1 li a{text-decoration:none !important;}
.site-footer p{font-size:clamp(1.3rem, 1.28rem + 0.1vw, 1.4rem) !important}
.site-footer table th, .site-footer table td{font-size:clamp(1.3rem, 1.28rem + 0.1vw, 1.4rem) !important;padding:1rem !important;min-width:80px !important;}
.site-info a, .site-info span{display:none !important;}