/**
* Theme Name: YITH Proteo Child
* Description: This is a child theme of YITH Proteo, generated by YITH_Proteo_Wizard.
* Author: <a href="https://yithemes.com">YITH</a>
* Template: yith-proteo
* Version: 1.3.0
*/

/* ----------------------------------------------------------------------
　表示・非表示設定
------------------------------------------------------------------------*/
/* PC版非表示設定 */
.is-pc {
    display: block !important;
}

.is-sp {
    display: none !important;
}

/* SP版非表示設定 */
@media screen and (max-width: 768px) {
    .is-pc {
        display: none !important;
    }

    .is-sp {
        display: block !important;
    }
}

/* ----------------------------------------------------------------------
 margin - 余白
---------------------------------------------------------------------- */
.u-mt-xxsmall {
    margin: 5px 0 0;
}

.u-mt-xsmall {
    margin: 10px 0 0;
}

.u-mt-small {
    margin: 20px 0 0;
}

.u-mt {
    margin: 30px 0 0;
}

.u-mt-large {
    margin: 40px 0 0;
}

.u-mt-xlarge {
    margin: 50px 0 0;
}

.u-mt-xxlarge {
    margin: 60px 0 0;
}

.u-mr-xsmall {
    margin: 0 10px 0 0;
}

.u-mr-small {
    margin: 0 20px 0 0;
}

.u-mr {
    margin: 0 30px 0 0;
}

.u-mr-large {
    margin: 0 40px 0 0;
}

.u-mr-xlarge {
    margin: 0 50px 0 0;
}

.u-mb-xsmall {
    margin: 0 0 10px 0;
}

.u-mb-small {
    margin: 0 0 20px 0;
}

.u-mb {
    margin: 0 0 30px 0;
}

.u-mb-large {
    margin: 0 0 40px 0;
}

.u-mb-xlarge {
    margin: 0 0 50px 0;
}

.u-ml-xsmall {
    margin: 0 0 0 10px;
}

.u-ml-small {
    margin: 0 0 0 20px;
}

.u-ml {
    margin: 0 0 0 30px;
}

.u-ml-large {
    margin: 0 0 0 40px;
}

.u-ml-xlarge {
    margin: 0 0 0 50px;
}

/* ----------------------------------------------------------------------
   text-align - 配置
  ---------------------------------------------------------------------- */
.align_c {
    text-align: center;
}

.align_r {
    text-align: right;
}

.align_l {
    text-align: left;
}

.txt12 {
    font-size: 12px;
}

.txt13 {
    font-size: 13px;
}

.txt14 {
    font-size: 14px;
}

.txt15 {
    font-size: 15px;
}

.txt16 {
    font-size: 16px;
}

.txt18 {
    font-size: 18px;
}

.txt20 {
    font-size: 20px;
}

.txt22 {
    font-size: 22px;
}

.txt24 {
    font-size: 24px;
}

.txt26 {
    font-size: 26px;
}

.txt28 {
    font-size: 28px;
}

.txt30 {
    font-size: 30px;
}

.txt32 {
    font-size: 32px;
}

.txt34 {
    font-size: 34px;
}

.txt36 {
    font-size: 36px;
}

.txt38 {
    font-size: 38px;
}

.txt40 {
    font-size: 40px;
}

.flo_l {
    float: left;
}

.flo_r {
    float: right;
}

.cboth {
    clear: both; 
}

.red {
    color: #ff0000;
}

a {
    color: #ce9345;
    text-decoration: var(--proteo-general_link_decoration, underline);
}

body,
button,
optgroup,
body.yith-woocompare-popup {
    color: var(--proteo-base_font_color, #404040);
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: var(--proteo-base_font_size, 16);
    line-height: 1.7;
}

.alignfull {
    /*margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);*/
    width: auto;
    max-width: 1140px;
    margin: 0 auto;
}

.alignwide {
    /*margin-left: calc(25% - 25vw);
    margin-right: calc(25% - 25vw);*/
    width: auto;
    max-width: 1140px;
    margin: 0 auto;
}

.site-header:not(.sticky) {
    margin: 0 auto;
    padding: 0px !important;
    left: 0;
    right: 0;
    /*max-width: 1140px;*/
    z-index: 1000;
}

body.wp-singular .container {
    max-width: 1140px;
    padding-top: 30px;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    display: block;
}

@media (min-width: 768px) {
body.wp-singular .container {
    width: 100%;
    }
}

@media (min-width: 576px) {
    body.wp-singular .container {
    width: 100%;
    }
}



body.home .container {
    max-width: 1140px;
    padding-top: 30px;
    padding-right: 0;
    padding-left: 0;
    margin-right: auto;
    margin-left: auto;
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-justify-content: flex-start !important;
    justify-content: flex-start !important;
}

@media screen and (max-width: 1160px) {
    body.home .container {
        max-width: 1140px;
        padding-top: 30px;
        padding-right: 0;
        padding-left: 15px;
        margin-right: auto;
        margin-left: auto;
        display: -webkit-flex !important;
        display: flex !important;
    }
}

@media screen and (max-width: 991px) {
    body.home .container {
        width: 96% !important;
        padding: 30px 0 0;
        margin: 0 auto;
        display: block !important;
    }
}



/*.site-content{
    padding-top: 0 !important;  
}*/
.content-area{
    margin: 0 auto 0 0;
    padding: 0;
    width: 75%;
}

@media screen and (max-width: 991px) {
    .content-area{
    margin: 0 auto;
    padding: 0;
    width: 100%;
    }
}

.top-sidearea{
    margin: 0;
    padding: 0;
    width: 23%;
    text-align: left;
    border: 1px solid #d2592f;
    border-radius: 8px;
    box-sizing:border-box;
    height: fit-content;
    display: block;
}

@media screen and (max-width: 1160px) {
    .top-sidearea{
        margin: 0 15px 0 0;
        padding: 0;
        width: 21%;
        text-align: left;
        border: 1px solid #d2592f;
        border-radius: 8px;
        box-sizing:border-box;
        height: fit-content;
        display: block;
    }
}

.top-sidearea .widget,
.top-sidearea ul{
    margin-bottom: 0 !important;
    padding: 0;
}
.top-sidearea ul li{
    margin: 0;
    padding: 10px;
    text-align: left;
    border-bottom:1px solid #d2592f;
    font-size: 15px;
    font-weight: 400;
}

.top-sidearea ul li:last-child {
    margin: 0;
    padding: 10px;
    text-align: left;
    border-bottom: 0px solid #d2592f;
    font-size: 15px;
    font-weight: 400;
}

.top-sidearea ul li a:hover{
    color: #d2592f;
    text-decoration: none;
}


#primary-menu li {
    width: 14.0%;
    margin: 0;
    padding: 0;
    text-align: center;
}

.site-branding{
    width: 100px !important;
    margin: 0;
    padding: 0;
}

.main-navigation{
        display: table-cell;
        width: 900px !important;
        float: none;
        vertical-align: middle;
    }

#primary-menu li img {
    width: 40%;
}

#primary-menu li .menu-image-title {
    font-size: 12px;
    letter-spacing: 0;
    margin: -10px 0 0;
}

.site-header .header-sidebar {
    text-align: right;
    clear: both;
    width: 200px !important;
    padding: 10px 0 0 !important;
}

.site-header .header-contents {
    position: relative;
    transition: all ease 0.3s;
    padding: 0 0 20px !important;
    color: var(--proteo-header_menu_color, #404040);
    /*padding: var(--proteo-header_spacing);*/ }


h2.top-heading-01{
    margin: 0;
    padding: 10px 5px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    border-top: 5px solid #f2d202;
    border-bottom: 5px solid #f2d202;
    background: #d75c31;
    color: #fff;
}

ul.top-banner-area{
    margin: 30px 0 0;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    list-style: none;
}

ul.top-banner-area li{
    margin: 0;
    padding:10px 15px 15px;
    width: 32%;
    border: 1px solid #d75c31;
    box-sizing: border-box;
}

ul.top-banner-area li .banner-img{
    margin: 0 auto;
    padding: 0;
    width: 60%;
}

ul.top-banner-area li .banner-img img{
    width: 100%;
    height: auto;
}

ul.top-banner-area li .banner-heading{
    margin: 0;
    text-align: center;
    color:#d75c31;
    font-size: 18px;
    font-weight: bold;
}

ul.top-banner-area li .banner-text{
    margin: 0;
    text-align: center;
    font-size: 15px;
}

ul.top-box {
    margin: 0;
    padding: 0;
    list-style: none;
}

ul.top-box li{
    margin: 50px 0 0;
    padding: 0;
    width: 100%;
    box-sizing: border-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

ul.top-box li .textarea{
    margin: 0;
    padding: 0;
    text-align: left;
    width: 70%;
}

ul.top-box li .textarea .heading{
    margin: 0;
    padding: 0;
    font-size: 20px;
    font-weight: bold;
    color: #d75c31;
}

ul.top-box li .textarea .text {
    margin: 5px 0 0;
    padding: 0;
    font-size: 14px;

}

ul.top-box li .imgarea {
    margin: 0;
    padding: 0;
    width: 25%;
}

ul.top-box li .imgarea img{
    width: 100%;
    height: auto;
}

.button01 a {
    background: #fff;
    border: 2px solid #d75c31;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px auto 0 0;
    max-width: 400px;
    padding: 10px 25px;
    color: #d75c31;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}

.button01 a:hover {
    background: #d75c31;
    color: #FFF;
}

.button01 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 3px solid #d75c31;
    border-right: 3px solid #d75c31;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 47%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}

.button01 a:hover:after {
    border-color: #FFF;
}

#main-footer .footer-sidebars{
    padding-top: 30px;
}

#main-footer .site-info{
    display: none;
}

.footer-sidebar-2 ul li a{
    font-size: 14px;
    margin: 0;
    padding: 0;
}

#main-footer div[class^=footer-sidebar] {
    padding-bottom: 0px; 
}

header.entry-header .woocommerce-breadcrumb {
    text-align: inherit;
    margin-bottom: 35px;
    text-align: left;
}

#secondary .widget{
    margin: 0 0 20px;
    padding: 0;
    width: 100%;
    text-align: left;
    border: 1px solid #d2592f;
    border-radius: 8px;
    box-sizing:border-box;
    height: fit-content;
    display: block;
}

#secondary .widget ul {
    padding: 0;
    list-style-type: none;
    margin: 0 !important;
}

#secondary .widget ul li {
    margin: 0;
    padding: 10px;
    text-align: left;
    border-bottom: 1px solid #d2592f;
    font-size: 15px;
    font-weight: 400;
}

#secondary .widget ul li:last-child {
    margin: 0;
    padding: 10px;
    text-align: left;
    border-bottom: 0px solid #d2592f;
    font-size: 15px;
    font-weight: 400;
}

#secondary .widget ul li a:hover {
    color: #d2592f;
    text-decoration: none;
}

@media (min-width: 1600px) {
    .container,
    .wp-block-cover-image .wp-block-cover__inner-container,
    .wp-block-cover .wp-block-cover__inner-container,
    .wp-block-group__inner-container {
        max-width: 1140px;
    }
}

/*サイドウィジェット　タイトルサイズ調整*/
div h2.widget-title {
    font-family: Noto Sans JP, sans-serif;
    font-weight: 400 !important;
    font-style: normal;
    margin: 10px auto;
    text-align: center;
    font-size: 18px;
    font-weight: 700 !important;
}

div h3.widget-title {
    font-family: Noto Sans JP, sans-serif;
    font-weight: 400 !important;
    font-style: normal;
    margin: 10px auto;
    text-align: center;
    font-size: 20px;
}

/*商品ページ一覧　ボタンテキストサイズ調整*/
.button-style-1:not(.wp-block-button){
    font-size: 14px;
}

/*商品ページ一覧　ボタンテキストサイズ調整*/
ul.products li.product .add_to_cart_button,
ul.products li.product .added_to_cart{
    font-size: 14px;
}

/*商品ページ詳細　テキストエリア余白調整*/
.single-product div.product .summary.entry-summary {
    width: 60%;
    float: left;
    display: inline-block;
    padding-left: 30px;
    padding-right: 10px;
}