/*
Theme Name: BcChloe Shoptimizer Child
Theme URI: https://bcchloe.jp/
Template: shoptimizer
Author: BcChloe
Author URI: https://bcchloe.jp/
Description: Shoptimizer is the perfect theme for your next WooCommerce project designed around speed and conversions.
Tags: e-commerce,two-columns,left-sidebar,right-sidebar,custom-background,custom-colors,custom-header,custom-menu,featured-images,full-width-template,threaded-comments,accessibility-ready,rtl-language-support,footer-widgets,sticky-post,theme-options
License: GNU General Public License v2 or later
License URI: tttp://www.gnu.org/licenses/gpl-2.0.html
Version: 2.2.4
Updated: 2022-12-31
*/

/*=================
::after
::before
!important
Ocean WP break point
(min-width: 768px) and (max-width: 959px)
(min-width: 481px) and (max-width: 768px)
(max-width: 480px) --- theme Customize 有効
(max-width: 1280px)
(max-width: 1080px) --- theme Customize 有効
(max-width: 959px)
(max-width: 782px)
(max-width: 600px)
(min-width: 30em)
(min-width: 48em)
白銀比: 71%
黄金比: 62%
貴金属: 58%;
=================*/

/*-----------------
* General
-----------------*/
:root {
  --main-color: #0100B7;
  --sub-color: #005CB8;
  --other-color: #0ca5de;   /* Blue */
  --footer-widget: #000066;
  --copy-right: #00004d;
}
 /* 横スライド発生防止 */
@media screen and (max-width: 1041px) {
  body {
    overflow-x: hidden;
  }
}
mark {
  background-color: #ff0 !important;
}
a:focus { /* click 枠消し */
  outline: solid 0px !important;
}
table { /* OceanWP remove */
  margin-bottom: 0;
}

/* --------------------------
* Animation setting
-------------------------- */
/* ページメインビジュアルヘッダー フェイドスライド */
@-webkit-keyframes slideUp {
  0% { opacity:0; bottom: -200px; }         /* スライド初期下部値 */
  100% { opacity:1; bottom: 0; }  /* スライド終了位置 */
}
@keyframes slideUp {
  0% { opacity:0; bottom: -200px; }
  100% { opacity:1; bottom: 0; }
}
/* ズームアウト */
@-webkit-keyframes zoomOut {
  0% { transform: scale(1.0); }
  100% { transform: scale(1.3); }
}
@keyframes zoomOut {
  0% { transform: scale(1.0); }
  100% { transform: scale(1.3); }
}
/* ズームイン */
@-webkit-keyframes zoomIn {
  0% { transform: scale(1.3); }
  100% { transform: scale(1.0); }
}
@keyframes zoomIn {
  0% { transform: scale(1.3); }
  100% { transform: scale(1.0); }
}
/* フェードイン */
@-webkit-keyframes opacityAnimation {
  0% { opacity:0; }
  100% { opacity:1; }
}
@keyframes opacityAnimation {
  0% { opacity:0; }
  100% { opacity:1; }
}
/* フェードアウト */
@-webkit-keyframes opacityAnimation2 {
  0% { opacity:1; }
  100% { opacity:0; }
}
@keyframes opacityAnimation2 {
  0% { opacity:1; }
  100% { opacity:0; }
}
/* 右に移動 */
@-webkit-keyframes moveRight {
  0% { opacity:0; right:60px; }
  100% { opacity:1; right:0; }
}
@keyframes moveRight {
  0% { opacity:0; right:60px; }
  100% { opacity:1; right:0; }
}
/* 左に移動 */
@-webkit-keyframes moveLeft {
  0% { opacity:0; left:60px; }
  100% { opacity:1; left:0; }
}
@keyframes moveLeft {
  0% { opacity:0; left:60px; }
  100% { opacity:1; left:0; }
}
/* ポップアップ */
@keyframes popUp {
  0% { transform: scale(.1); opacity:0; }
  100% { transform: none; opacity:1; }
}
@keyframes popUp {
  0% { transform: scale(.1); opacity:0; }
  100% { transform: none; opacity:1; }
}

/*-----------------
* CSS polygon
-----------------*/
#polygon1 {
  clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);   /* 下部左傾斜のみ */
}
#polygon2 {
  clip-path: polygon(0 0, 100% 0,  100% 100%, 0 90%);   /* 下部右傾斜のみ */
}
#polygon_up {
  clip-path: polygon(0 0, 100% 10%, 100% 100%, 0 90%);  /* 上部左傾斜 & 下部傾斜 */
}
@media screen and (max-width: 680px) {
  #polygon1 {
    clip-path: polygon(0 0, 100% 0, 100% 95%, 0 100%);
  }
  #polygon2 {
    clip-path: polygon(0 0%, 100% 0%, 100% 100%, 0 95%);
  }
  #polygon_up {
    clip-path: polygon(0 0, 100% 5%, 100% 100%, 0 95%);  /* 上部左傾斜 & 下部傾斜 */
  }
}

/*-----------------
*CSS filter
-----------------*/
#filter_blur {
  backdrop-filter: blur(15px);
}

/*-----------------
* svg使わずのダイヤ枠
-----------------*/
#diamonds .diamond {
  background: 0 0;
  display: block;
  height: 243px;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  width: 245px;
  overflow: hidden;
  transform: rotate(-45deg);
}

/*-----------------
* topbar
-----------------*/

/*-----------------
* Global Nav
-----------------*/

/*-----------------
* breadcrumbs
-----------------*/

/*-----------------
* page header cover
-----------------*/

/*----------------
* home
----------------*/
body.home .image-feature img.attachment-shop_single {
  z-index: 0 !important;
  background-color: #333
}
body.home .elementor-6622 .elementor-element.elementor-element-b92c23c .widget-image-caption,
body.home .elementor-6622 .elementor-element.elementor-element-1f3e7d78 .widget-image-caption,
body.home .elementor-6622 .elementor-element.elementor-element-5f5661d6 .widget-image-caption {
  color: #333;
}

/*-----------------
* page
-----------------*/

/*-----------------
* archive
-----------------*/

/*-----------------
* single
-----------------*/

/*-----------------
* カスタム投稿タイプ
-----------------*/

/*-----------------
* side bar
-----------------*/

/*-----------------
* search
-----------------*/

/*-----------------
* 404
-----------------*/

/*-----------------
* bottom
-----------------*/

/*-----------------
* footer Widget
-----------------*/
form#mc4wp-form-1 .mc4wp-form-fields .mail_chimp_wap {
  margin-bottom: 10px;
}
footer .mc4wp-form label {
  font-size: 15px;
}
footer .mail_chimp_wap label,
footer .mail_chimp_wap label {
  color: #999;
}
footer .mc4wp-form input[type="email"] {
  width: 100%;
}
footer .mc4wp-form input[type="submit"] {
  position: relative;
  width: 100%;
  font-weight: 900;
  border-radius: 5px;
}
footer #text-5 .textwidget p, footer #text-6 p {
  line-height: 2.5;
}
footer #text-6 input[type="text"]:focus {
  background: #fff;
}
footer #text-6 .mc4wp-form-basic input[type="text"],
footer #text-6 .mc4wp-form-basic input[type="email"] {
  margin-top: 5px;
}

@media screen and (max-width: 680px) {
  footer .col-full {
    display: inline-block;
  }
  footer .widget {
    padding: 0 10px;
  }
  footer #nav_menu-3, footer #nav_menu-2 {
    display: flex_;
    width: 100%;
    max-width: 50%_;
    float: left_;
    flex-wrap: wrap_;
    align-content: flex-start_;
  }
  footer #text-5, footer #text-6 {
    display: flex_;
    width: 100%;
    max-width: 50%_;
    float: left_;
    flex-wrap: wrap_;
    align-content: flex-start_;
 }
  footer .menu-about_nav-container {
    position: relative_;
    top: 25px_;
    left: -50px_;
  }
  footer #nav_menu-2 {
    clear: left_;
  }
  footer .mc4wp-form input[type="submit"] {
    position: relative;
    width: 100%;
  }
  footer a.newsletter {
    color: #fff !important;
    position: relative;
    top: 0px;
  }
  footer.copyright #text-3 .textwidget {
    margin-top: 10px;
  }
}

/*-----------------
* Copyright
-----------------*/

/*-----------------
* WooCommerce General
-----------------*/
.woocommerce-Price-amount.amount {
  font-size: 17px;
}
body.woocommerce-shop .woocommerce-Price-amount.amount bdi,
body.single-product .woocommerce-Price-amount.amount bdi
 {
  font-size: 25px;
}
body.woocommerce-shop #secondary ul.product_list_widget li .woocommerce-Price-amount.amount bdi {
  font-size: 15px;
}
p.stars.selected a.active ~ a::before, p.stars a::before, p.stars a:hover ~ a::before { /* ★ */
content: "\2605" !important;
}

/*-----------------
* WooCommerce shop
-----------------*/
ul.products li.product .price {
  display: block;
  clear: both;
  margin-bottom: .35rem;
  color: #43454b;
  font-weight: 400;
}
.product-type-simple .woocommerce-card__header h5 {
  position: relative;
  margin-bottom: 1rem;
  font-size: 14px;
}
.woocommerce-image__wrapper .product-label {
left: 11px;
}
p.stars a::before {
font-size: 20px;
}
.cgkit-as-wrap-plp .cgkit-attribute-swatches .cgkit-attribute-swatch.cgkit-button button {
  min-height: 30px;
line-height: 30px;
}

/*-----------------
* WooCommerce product single
-----------------*/
.product p.price {
  font-size: 25px;
}
.woocommerce-Price-amount.amount bdi {
  font-weight: 600;
  color: #CB981B;
}
.woocommerce-Price-currencySymbol {
font-size: 15px;
}
.single-product .site-content .site-footer .col-full { /* 何故かインラインで白修正 */
  background-color: #333 !important;
}
.single-product .site-content .copyright .col-full { /* 何故かインラインで白修正 */
  background-color: #111 !important;
}
.single-product .summary h1 { /* product next link */
  margin-top: 17px;
}
.single-product .shoptimizer-product-prevnext {
  position: relative;
  width: 100%;
  z-index: 100;
}
.single-product .shoptimizer-product-prevnext a {
  left: 0;
}
.single-product .shoptimizer-product-prevnext a:last-child {
  position: absolute;
  left: 88%;
}
.single-product .shoptimizer-product-prevnext svg {
  width: 30px;
  height: 30px;
}
.shoptimizer-product-prevnext .tooltip {
  position: absolute;
  z-index: 101;
  right: -60px;
margin-top: -3px;
}

.commercekit-wishlist a em.cg-wishlist::before {
  width: 34px;
  height: 34px;
}
.commercekit-wishlist a span {
position: relative;
top: 5px;
left: 5px;
  font-size: 17px;
}
.commercekit-size-guide .commercekit-sg-label svg {
  width: 34px !important;
  height: 34px !important;
}
.commercekit-size-guide a.commercekit-sg-label span {
position: relative;
top: 5px;
left: 5px;
font-size: 17px
}


/*-----------------
* WooCommerce cart
-----------------*/
p#calc_shipping_country_field { /* 国または地域を選択 */
  visibility:hidden;
  height: 1px;
}
table.shop_table.shop_table_responsive tr.tax-rate th small {   /*(日本向けの見積額)*/
  display: none;
}
ul.products li.product a.woocommerce-LoopProduct-link > span.is-featured {  /* お勧め featured */
  position: absolute;
  top: 5px;
  right: 10px;
  background-color: #ccc;
  color: #222;
  font-size: 13px;
  padding: 3px 7px;
  border-radius: 5px;
}
.commercekit-wishlist.mini {  /* お気に入り */
  top: 23px;
  width: 35px;
  height: 35px;
}
.commercekit-wishlist a em.cg-wishlist::before {   /* お気に入りicon */
  width: 25px;
  height: 25px;
}
#site-header #site-logo #site-logo-inner a img {
	height: 80%;
}
.has-transparent-header:not(.is-sticky) #site-header #site-logo #site-logo-inner a img {
  max-height: 80%;
  height: 80%;
}
.wapl-corner.wapl-alignright .product-label {	/* リボン */
	right: -33px;
	top: -12px;
	height: 15px;
}
.wapl-corner .wapl-label-text {
	bottom: 12px;
	left: 0;
}
/* WooCommerce 8.3 blockeditor */
body.page-id-7235.woocommerce-cart #primary.content-area {
  margin-top: 3em;
}


/*-----------------
* WooCommerce checkout
-----------------*/
body.woocommerce-checkout .woocommerce-billing-fields p.thwcfd-field-country,
body.woocommerce-checkout p#billing_country_field abbr,
body.woocommerce-checkout p#shipping_country_field,
body.woocommerce-checkout p#shipping_country_field abbr { /*カントリー選択 */
  visibility:hidden !important;
  height: 1px !important;
}
label, legend {
  font-weight: bold;
  display: block;
  font-size: .9em;
  margin-bottom: 0.4em;
  color: #222;
}
.fl-wrap.fl-is-active > label[for]:first-child {
    z-index: 1;
    opacity: .8;
}
.fl-labels .fl-wrap label[for]:first-child {
    transition: all .3s;
    font-size: 12px;
    white-space: nowrap;
    position: absolute;
    line-height: 1;
    top: .5em;
    opacity: 0;
    pointer-events: none;
    left: 1.1em;
    font-weight: normal;
}
.fl-labels .form-row input:not([type="checkbox"]), .fl-labels .form-row textarea, .fl-labels .form-row select {
    height: 3.0084em;
    transition: padding .3s;
}
/* 必須フィールド エラー位置変更 */
.woocommerce-checkout p.form-row.woocommerce-validated input.input-text {
  box-shadow: inset 2px 0 0 #0f834d;
}
.woocommerce-checkout p.form-row.validate-required.woocommerce-invalid-required-field label span.error {
  color: #e2401c;
  display: block !important;
  font-weight: bold;
}
/* 商品数変更 Numberスピン 追加 */
.woocommerce-checkout .quantity input[type="number"],
.woocommerce-checkout .quantity input[type="number"]::-webkit-inner-spin-button,
.woocommerce-checkout .quantity input[type="number"]::-webkit-outer-spin-button {
  -moz-appearance: textfield-multiline;
  opacity: 1;
}
.woocommerce-checkout .woocommerce #Wccp_Confirmation_Page .quantity {  /* 注文確認ページ数量変更が出る場合 */
  display: none;
}

/*-----------------
* WooCommerce checkout確認
-----------------*/
body.woocommerce-checkout .woocommerce form.woocommerce-checkout .customer_details > .Wccp_Order_Items {
  display: none___;
}
body.woocommerce-checkout #Wccp_Confirmation_Page {
  padding: 2em 5em;
}
body.woocommerce-checkout #Wccp_Confirmation_Page p {
  margin: 0 0 0.41575em;
}
.woocommerce-Price-amount.amount bdi {
   color: #555;
}
body.woocommerce-checkout h3.confirmation_title {
  margin-right: 50px;
}
body table.woocommerce-checkout-review-order-table .product-name .product-quantity {
  font-size: 15px;
  color: #666;
}
body.woocommerce-checkout .Wccp_Section_Wrapper::before {
  display: block;
  clear: both;
  content: "";
}
body.woocommerce-checkout .Wccp_Order_Items a.wc-return-to-cart,
body.woocommerce-checkout .Wccp_Billing_Details a.wc-return-to-checkout,
body.woocommerce-checkout .Wccp_Shipping_Details a.wc-return-to-checkout,
body.woocommerce-checkout .Wccp_Payment_Details a.wc-return-to-checkout,
body.woocommerce-checkout .Wccp_Contacts a.wc-return-to-checkout,
body.woocommerce-checkout .complete_button_wapr a.wc-return-to-cart {
  display: inline-block;
  position: relative;
  top: 5px;
  margin: 0;
  padding: 5px 10px;
  font-size: 14px;
  color: #666;
  background-color: #e6e6e6;/*#d2d6dc;*/
  border: 1px solid #d2d6dc;
  border-radius: .3rem;
  box-shadow: 0 1px 2px 0 rgba(0,0,0, .075);
}
#Wccp_Confirmation_Page .col2-set {
}

.Wccp_Billing_Details,
.Wccp_Section.Wccp_Contacts,
.Wccp_Shipping_Details,
.Wccp_Payment_Details,
.Wccp_Section.Wccp_Order_Note {
  margin-left: 1em;
  margin-bottom: 1em;
  padding: 1em;
  border: 1px solid #d2d6dc;
  border-radius: 5px;
}
.complete_button_wapr .col-1 {
  float: left;
  width: 49%;
  box-sizing: border-box;
}
.complete_button_wapr .col-2 {
  float: left;
  width: 49%;
  box-sizing: border-box;
}
.Wccp_Section_Wrapper.col-full {
  padding-left: 1.617924em;
  padding-right: 1.617924em;
}
.col2-set.Wccp_Page_Left {
  padding-right: 2.617924em;
  padding-left: 1.617924em;
}
.Wccp_Order_Items_complete_explanation {
  padding-right: 2.617924em;
  padding-left: 1.617924em;
}
.Wccp_Billing_Details,
.Wccp_Section.Wccp_Contacts.col-full,
.Wccp_Shipping_Details {
  margin-left: 0;
}
@media (min-width: 993px) {
  .col2-set {
    margin-right: 0;
  }
  .Wccp_Billing_Details,
  .Wccp_Shipping_Details,
  .Wccp_Payment_Details,
  .Wccp_Section.Wccp_Order_Note {
    width: 100%;
  }
}
.complete_button_wapr {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
body.woocommerce-checkout button.button.alt {
 padding: 10px 50px;
}
body:not(.elementor-page):not(.woocommerce-account) .entry-content p a:not(.button) {
 text-decoration: none;
}
@media screen and (max-width: 991px) {
  body.woocommerce-checkout #Wccp_Confirmation_Page {
    padding: 0;
  }
  body.woocommerce-checkout h3.confirmation_title {
    margin-right: 10px;
  }
  .col2-set.Wccp_Page_Left {
    padding-right: .617924em;
    padding-left: .617924em;
  }
  .Wccp_Order_Items_complete_explanation {
    padding-right: .617924em;
    padding-left: .617924em;
  }
}
@media screen and (max-width: 680px) {
  .complete_button_wapr .col-1,
  .complete_button_wapr .col-2 {
    width: 100%;
  }
  .Wccp_Payment_Details,
  .Wccp_Section.Wccp_Order_Note {
    margin-left: 0;
  }
  body.woocommerce-checkout button.button.alt {
    width: 100%;
  }
}

/*-----------------
* WooCommerce Thank you
-----------------*/

/*-----------------
* WooCommerce login
------------------*/

/*-----------------
* WooCommerce My Account
-----------------*/

/*-----------------
* WooCommerce 商品問い合わせ
-----------------*/



/*-----------------
* PWA banner
-----------------*/
.pws_wapr {
  display: flex;
  width: 100%;
}
#pws.install_banners {
  display: flex;
  width: 100%;
  height: 100px;
  text-align: center;
  margin: 0 auto;
  background-color: #001D66;
}
#pws .pws_app {
  color: #fff;
  margin: 1em 0 0 0;
  width: 33%;
}
#pws .pws_wapr_img,
#pws .pws_wapr_button {
  width: 33%;
}
#pws img.pws_icon {
  position: relative__;
  left: 40%__;
  padding-top: 1em_;
  margin: 1em auto 0;
  width: 64px;
  height: 64px;
  border-radius: 5px 5px 5px 5px;
}
#pws button.add-button {
  color: #fff;
  font-weight: 600;
  position: relative__;
  left: 10%__;
  margin-top: 1em;
  border-radius: 5px 5px 5px 5px;
}




/*-----------------
* contact for7 問い合わせ
-----------------*/
.wpcf7-form fieldset {
  border: 1px solid #ddd;
  border-radius: .5rem;
}
.wpcf7-form fieldset legend {
  width: auto;
  margin-left: 0;
}
.wpcf7-form .controls {
  padding-bottom: 1rem;
}
.wpcf7-form hr {
  background-color: #ddd;
}
.wpcf7-form a.privacy {
  text-decoration: underline;
}
.wpcf7-form span.required {
  color: #FF2626;
}
.wpcf7-form.invalid input.wpcf7-validates-as-required,
.wpcf7-form.invalid select.wpcf7-validates-as-required,
.wpcf7-form.invalid .wpcf7-captchar.wpcf7-not-valid {
  border-color: #FF2626;
}
.wpcf7 form.invalid .wpcf7-response-output {
  border-color: #FF2626;
}
.wpcf7-form .controls.captcha {
  position: relative;
}
.wpcf7-form .controls.captcha img.wpcf7-captchac {
  position: absolute;
  top: 30px;
  right: 5px;
}
.wpcf7-form .wpcf7-spinner {
  top: -33px;
  left: 10%;
  z-index: 100;
}
.wpcf7-form a.under {
  text-decoration: underline;
}
input[type="submit"].wpcf7-form-control.wpcf7-submit:disabled { /* 同意check前 */
  background-color: #999;
}
input[type="submit"].wpcf7-form-control.wpcf7-submit {  /* 同意check */
  background-color: #2A3562;/*#f56064;*/
}
.wpcf7-form .submit_button .wpcf7-submit {
  width: 100% !important;
}
form.wpcf7-form.sent .wpcf7-response-output { /* all ok */
  position: relative;
  background: #CCFFCF;
  border: 1px solid rgba(70,180,80,1);
  color: rgba(70,180,80,1);
  padding: 10px 0 10px 45px;
  font-size: 16px;
}
form.wpcf7-form.sent .wpcf7-response-output[role="alert"]::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
  position: absolute;
  content: "\f0e0";
  top: 17px;
  left: 15px;
  font-size: 1.33333em;
  line-height: .75em;
}
form.wpcf7-form.invalid .wpcf7-response-output { /* Error */
  position: relative;
  background-color: #f2dede;
  border: 1px solid rgba(166,66,66,1);
  color: rgba(166,66,66,1);
  padding: 10px 0 10px 45px;
  font-size: 16px;
}
form.wpcf7-form .wpcf7-response-output {
  margin: 2em 0.5em 1em;
  padding: 0.2em 1em;
  border: 2px solid #00a0d2;
}
form.wpcf7-form.invalid .wpcf7-response-output::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  display: block;
  position: absolute;
  content: "\f071";
  top: 15px;
  left: 15px;
  font-size: 1.33333em;
  line-height: .75em;
}
/* modal 問い合わせ */
@media screen and (min-width: 768px) {
  .modal-dialog {
    margin: 0 auto !important;
  }
  .modal-body {
    padding: 10px;
  }
  .modal .wpcf7-form .controls {
    padding-bottom: 5px;
  }
  .modal textarea {
    height: 100px;
  }
  .modal hr {
    margin: 10px auto;
  }
  .modal .wpcf7-form .wpcf7-list-item-label {
    font-size: 13px;
  }
  .modal .wpcf7-not-valid-tip {
    font-size: 13px;
  }
  .modal label.captcha_label {
    font-size: 14px;
  }
  .modal .wpcf7-form .wpcf7-spinner {
    top: 0;
  }
}
@media screen and (min-width: 681px) abd (max-width: 767px) {
  .wpcf7-form fieldset {
    padding: 0 10px;
  }
  .wpcf7-form fieldset legend {
    font-size: 17px;
    padding: 0 0 10px 0;
  }
  .wpcf7-form .wpcf7-list-item {
    margin: 0;
  }
  .wpcf7-form label.captcha_label {
    font-size: 14px;
  }
}
@media screen and (max-width: 680px) {
  .wpcf7-form .controls.captcha img.wpcf7-captchac {
    top: 50px;
  }
  .modal .wpcf7-form .controls.captcha img.wpcf7-captchac {
    top: 25px;
  }
  .modal .wpcf7-form .controls {
    padding-bottom: 0;
  }
  .modal hr {
    margin: 5px auto;
  }
}