@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/*****
1. common
2. header
3. footer
4. toppage
5. 投稿ページ関連
6. BUSINESS
7. リクルート
8. about / contact / sitemap / privacy-policy / onlinestore / mym45bld
9. 英語ページ

*****/


/*****  common *****/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
}
*{
    box-sizing: border-box;
}
main.main{
    padding: 0;
}
.content{
    margin: -2em auto 0;
}
.entry-content,
main p{
    margin: 0;
}
ul{
    list-style: none;
}
.article ul, .article ol,
ul, ul li, ol, ol li,
.article dl,.article dt,.article dd{
    margin: 0;
    padding: 0;
    list-style: none;
}
.article  h2{
    border-radius: inherit;
    background-color: inherit;
}
.article  h3{
    border:none;
    margin-bottom: 0;
}
a{
    text-decoration: none;
    color: var(--cocoon-text-color);
}
a:hover,
a:active{
    color: initial;
}
.inner{
    padding: 0 5%;
    max-width: 1400px;
    margin: 0 auto;
}
.business-all .inner{
    max-width: 1000px;
}
.flex_wrap{
    display: flex;
}
.type-page .date-tags{
    display: none;
}
.type-post .eye-catch{
    max-width: 600px;
    margin: 0 auto 100px;
}
.nowrap{
    white-space: nowrap;
}
.sp-only{
    display: block;
}
.min-768,
.min-1024{
    display: none;
}



@media screen and (min-width: 768px){
    .sp-only{
        display: none;
    }
    .min-768{
        display: block;
    }
    
    
}@media screen and (min-width: 1024px){
    .business-all a{
        cursor: pointer;
        transition-duration: .3s;
        transition-property: opacity;
        transition-timing-function: cubic-bezier(0,.89,.86,1);
    }
    .business-all a:hover{
        opacity: .7;
        
    }
    .min-1024{
        display: block;
    }
    
    
    
    
}

/*****  commonここまで *****/


/*****  header *****/
.mobile-menu-buttons{
    background: rgba(255, 255, 255, .9);
    padding: .5em 0;
}
.navi-in > ul .sub-menu li a .caption-wrap{
    position: relative;
    border-radius: 10px;
}
.navi-in > ul .sub-menu li a .caption-wrap:after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
#menu-sp_header .menu-item-61,
#menu-item-61 .caption-wrap:after{
    background: url("/wp/wp-content/themes/cocoon-child-master/img/business_ec.png") no-repeat center / cover;
}
#menu-sp_header .menu-item-255,
#menu-item-255 .caption-wrap:after{
    background: url("/wp/wp-content/themes/cocoon-child-master/img/business_real_estate.png") no-repeat center / cover;
}
#menu-sp_header .menu-item-254,
#menu-item-254 .caption-wrap:after{
    background: url("/wp/wp-content/themes/cocoon-child-master/img/business_trade.png") no-repeat center / cover;
}
#menu-sp_header .menu-item-253,
#menu-item-253 .caption-wrap:after{
    background: url("/wp/wp-content/themes/cocoon-child-master/img/business_apparel.png") no-repeat center / cover;
}
#menu-sp_header .menu-item-252,
#menu-item-252 .caption-wrap:after{
    background: url("/wp/wp-content/themes/cocoon-child-master/img/business_bicycle.png") no-repeat center / cover;
}
#menu-sp_header .menu-item-256,
#menu-item-256 .caption-wrap:after{
    background: url("/wp/wp-content/themes/cocoon-child-master/img/business_cafe.png") no-repeat center / cover;
}
.navi .item-label{
    font-size: .8em;
	font-weight:600;
}
.navi .sub-menu .item-label{
    display: block;
    width: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0,0,0,0.1) 90%);
    border-radius: 0 0 10px 10px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    font-size: .8em;
    font-weight: bold;
    color: #fff;
    letter-spacing: .2em;
}
.navi .sub-menu a:hover .item-label{
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255,255,255,0.1) 90%);
    color: #000;
    font-weight: bold;
}
.navi-in > ul .sub-menu li a:hover .caption-wrap::after{
    opacity: .2;
    transition: all 0.3s ease-in-out;
}
#menu-sp_header #navi-menu-content{
    padding-top: 20px;
}
#menu-sp_header .menu-content{
    max-width: 100%!important;
}
#menu-sp_header .menu-content .menu-drawer{
    padding: 0 0 30px;
}
#menu-sp_header .menu-close-button{
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    border: 1px solid #ccc;
    border-radius: 10px;
    aspect-ratio: 1 / 1;
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 100;
}
#menu-sp_header .menu-item-351{
    padding-left: 12px;
}
#menu-sp_header .menu-drawer a{
    font-size: 1.6em;
    color: #000;
    letter-spacing: .1em;
    padding: 20px 12px;
}
#menu-sp_header .menu-item-351 a{
    font-size: inherit!important;
    width: 107px;
    aspect-ratio: 125 / 58;
    padding: 0;
    -o-object-fit: cover;
    object-fit: cover;
    color: transparent!important;
    background: url("/wp/wp-content/uploads/2025/07/logo.png") no-repeat center / cover;
}
#menu-sp_header .menu-item-56{
    margin-top: 50px;
}
#menu-sp_header .menu-drawer .sub-menu{
    display: flex;
    flex-wrap: wrap;
    height: 1px;
    padding: 0 12px;
    overflow: hidden;
}
#menu-sp_header .menu-drawer .active .sub-menu{
    height: 100%;
    padding: 0px 12px 50px;
}
#menu-sp_header .menu-drawer .sub-menu li{
    transition: all .5s;
    opacity: 0;
}
#menu-sp_header .menu-drawer .active .sub-menu li{
    opacity: 1;
}
#menu-sp_header .menu-drawer .sub-menu .menu-item{
    width: calc(50% - 20px);
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    margin: 10px;
}
#menu-sp_header .menu-drawer .sub-menu .menu-item a{
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.5) , transparent);
    bottom: 0;
    display: flex;
    flex-flow: column;
    justify-content: end;
    align-items: center;
    padding-bottom: 10px;
    font-size: 14px;
    font-weight: 800;
    color: #fff;
    letter-spacing: .1em;
    pointer-events: inherit;
}
#menu-sp_header .menu-item-56 a{
    pointer-events: none;
}
#menu-sp_header .menu-item{
    position: relative;
    overflow: hidden;
}
#menu-sp_header .menu-item:before{
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    background: #000;
    transform: rotate(25deg);
    transform-origin: top right;
    position: absolute;
    top: 2.3em;
    right: 20px;
}
#menu-sp_header .menu-item:after{
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    background: #000;
    transform: rotate(-25deg);
    transform-origin: bottom right;
    position: absolute;
    top: 2.3em;
    right: 20px;
}
#menu-sp_header .menu-item.menu-item-351:before,
#menu-sp_header .menu-item.menu-item-351:after,
#menu-sp_header .menu-drawer .sub-menu .menu-item:before,
#menu-sp_header .menu-drawer .sub-menu .menu-item:after{
    display: none;
}
#menu-sp_header .menu-item.menu-item-56:before{
    top: 3em;
    right: 30px;
    transform: rotate(90deg);
}
#menu-sp_header .menu-item.menu-item-56:after{
    transition: all .5s;
    top: 2.3em;
    transform: rotate(0deg) translateX(0);
}
#menu-sp_header .menu-item.menu-item-56.active:after{
    transform: rotate(0deg) translateX(100vw);
}



@media screen and (min-width: 1024px){
    #header-container{
        position: fixed!important;
        top: 0!important;
        left: 0!important;
        width: 100%!important;
        z-index: 3!important;
        padding: 10px 0;
        background: rgba(255,255,255,.5);
    }
    #header-container-in{
        display: flex;
        justify-content: space-between;
        align-items: center;
        align-content: center;
    }
    #header-container-in .logo-header img{
        width: 86px !important;
          height: 40px !important;
    }
    #navi{
        background: transparent;
    }
    #navi #menu-item-351{
        display: none;
    }
    .navi-in a:hover{
        color: #000;
        background: none;
    }
    .navi-in > ul li{
        width: fit-content;
        margin: 1em;
    }
    .navi-in .has-icon{
        display: none;
    }
    .hlt-tm-right .navi-in > ul{
        width: 650px;
        margin-left: calc(100% - 650px);
    }
    .navi-in > ul li:hover > ul,
    .fixed-header .navi-in > ul li:hover > ul{
        display: block;
        width: calc(800px + 12em);
        top: 100%;
        right: -300px;
        padding: 25px;
        background: #fff;
        -webkit-box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.07);
        box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.07);
        border-radius: 10px;
    }
    .navi-in > ul .sub-menu li{
        width: 125px;
        height: auto;
        aspect-ratio: 1 / 1;
        float: left;
    }
    .navi-in > ul .sub-menu li a{
        display: block;
        aspect-ratio: 1 / 1;
        padding: 0;
    }
    .navi-in > ul .sub-menu li a .caption-wrap{
        display: flex;
        flex-flow: column;
        text-align: center;
        align-content: center;
        justify-content: center;
        aspect-ratio: 1/1;
    }
    
    
    
}


/*****  headerここまで *****/


/*****  footer *****/
.footer{
    position: relative;
    z-index: 1;
}
.footer_unit:not(:last-of-type),
.footer_unit dd:not(:last-of-type){
    margin-bottom: 3em;
}
.footer_title{
    font-size: 1.2em;
    font-weight: 700;
    letter-spacing: .1em;
}
.footer_unit dd{
    font-weight: 450;
    letter-spacing: 1px;
}
.footer_unit dd li{
    border-bottom: 1px solid #dfdfdf;
}
.footer_unit dd li a{
    display: block;
    padding: .5em 1em;
}
.footer-btn{
    margin-bottom: 2em;
}
.footer-btn a{
    display: block;
    width: fit-content;
    margin-top: .5em;
    padding: .3em 2em;
    border-radius: 25px;
    background: #000;
    color: #fff;
    letter-spacing: 2px;
    font-weight: 800;
    transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
}
.footer-btn a:hover{
    opacity: .6;
}
.footer_unit.footer_shoplist .shop-sns ul li{
    display: flex;
    align-items: center;
    padding-bottom: .5em;
    margin-bottom: .5em;
}
.footer_unit.footer_shoplist .shop-sns ul li p{
    width: 50%;
    max-width: 150px;
}
.footer_unit.footer_shoplist .shop-sns ul li a{
    display: flex;
    width: 2em;
    padding: 0;
}
.footer_unit.footer_shoplist .shop-sns ul li a:not(:last-of-type){
    margin-right: 1em;
}
.footer_unit.footer_shoplist .shop-sns ul li .website{
    opacity: .4;
    width: 80%;
}



@media screen and (min-width: 835px){
    #footer-in{
        max-width: 1200px;
        font-size: 14px;
    }
    
    
}



/*****  footerここまで *****/


/*****  toppage *****/
#Fv .fv_inner{
    max-width: 1400px;
    margin: 0 auto;
    height: 100vh;
    position: relative;
    overflow: hidden;
}
#Fv .globe-wrapper{
    width: 100%;
    height: 100%;
    position: relative;
}
#Fv .globe,
#Fv .particles-outline{
    width: 100vw;
    height: 100vw;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 50vw);
    left: calc(50% - 50vw);
}
.confetti canvas{
    height: 100%;
    width: 100%;
    position: absolute;
    transform: rotate(45deg);
    transform-origin: center;
}
#Fv .particles-line{
    width: 130vw;
    height: 130vh;
    position: absolute;
    top: calc(50% - 65vh);
    left: calc(50% - 65vw);
}
#Fv .fv_concept_unit{
    position: absolute;
    bottom: 10vh;
    left: 5%;
}
#Fv .fv_concept_unit p{
    color: #000;
    font-size: 16vw;
    font-weight: 600;
    line-height: 1.1;
    margin-bottom: 0;
    border-bottom: 1px solid;
}
#Fv .fv_concept_unit p span{
    display: block;
}
.fv_concept_unit .world_clocks{
    overflow: hidden;
    height: 200px;
}
.fv_concept_unit .world-clocks{
    font-size: 14px;
    margin-top: 1em;
    max-width: 750px;
}
.world-clocks .card{
    display: flex;
    align-items: baseline;
}
.world-clocks .label{
    font-weight: 800;
}
.world-clocks .time{
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .02em;
    line-height: 1.2;
    margin-left: .5em;
}
.world-clocks .date{
    display: none;
}
#mym_Toppage section{
    margin-bottom: 5em;
}
#mym_Toppage h2{
    font-size: 2em;
    letter-spacing: 1px;
    text-align: center;
}
#mym_Toppage h3{
    font-size: 1.2em;
    letter-spacing: 2px;
}
#Business,
#Blog{
    padding: 5em 0;
}
#Business .article h2,
#Blog .article h2{
    margin-bottom: 3.2em;
}
#Business .flex_wrap{
    flex-flow: column;
    justify-content: center;
}
#Business .flex_wrap li{
    width: 100%;
    background: #fff;
    border-radius: 3px;
}
#Business .flex_wrap li:not(:last-of-type){
    margin-bottom: 3em;
}
#Business .flex_wrap .business_wrap{
    display: block;
    border: 1px solid #ebebeb;
    border-radius: 3px;
}
#Business .flex_wrap .business_wrap .business_img{
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #f5f5f5;
    border-radius: 3px 3px 0 0;
    margin-bottom: 1em;
    overflow: hidden;
    position: relative;
}
#Business .flex_wrap .business_wrap .business_img h3{
    font-size: 1.4em;
    letter-spacing: .2em;
    position: absolute;
    background: #fff;
    z-index: 1;
    bottom: 0;
    color: #000;
    padding: .5em 1em;
    transform-origin: left;
    transition: all .5s cubic-bezier(.8,0,.3,1);
    transform: translateX(-100%);
}
#Business .flex_wrap .business_wrap .business_img.active h3{
    transform: translateX(0%);
}
#Business .flex_wrap .business_wrap .business_content p{
	font-weight: 600;
	font-size:14px;
	line-height:2.0;
    padding: 14px 14px 20px;
}
#Blog{
    background: #f6f6f6;
}
#Blog .articleList{
    overflow: hidden;
    padding: 0 0 0 5%;
}
#Blog .news_list{
    display: flex;
    flex-direction: row;
    align-items: self-start;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition-property: transform;
    box-sizing: content-box;
    overflow-x: scroll;
}
#Blog .news_list .a-wrap{
    padding: 0 9.867vw 0 0;
    max-width: 100%;
}
#Blog .news_list .widget-entry-card{
    width: 73.733vw;
    background: #fff;
    border-radius: 15px;
    padding: 0;
}
#Blog .news_list .widget-entry-card img{
    border-radius: 15px 15px 0 0;
}
#Blog .news_list .new-entry-card-content{
    display: flex;
    flex-flow: column-reverse;
    padding: 1em 1em 1.5em;
}
#Blog .news_list .new-entry-card-title{
    font-size: .85em;
}
#Blog .news_list .new-entry-card-date{
    display: block;
    margin-bottom: 5px;
}
#Blog .news_list .post-date{
    font-size: .8em;
}
#Blog .BtnWrap{
    margin-top: 3em;
}
#Blog .BtnWrap a{
    position: relative;
    min-width: initial;
    display: block;
    width: 270px;
    padding: 15px 0;    
    color: rgba(28, 29, 29, 1);    
    margin: auto;
    letter-spacing: 2px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    border: 1px solid rgba(28, 29, 29, 1);
    border-radius: 50px;
}
#aboutus .concept{
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    background: #0066CC;
    padding: 4em 0;
    margin-bottom: 4em;
	color:#fff;
	font-weight:700;
}
#aboutus .concept p{
    display: flex;
    font-size: 6.4vw;
    letter-spacing: .8vw;
    animation: slidetext 18s linear infinite;
    transform: translateX(0%);
    margin: 0;
}
@keyframes slidetext {
    100% {
        transform: translateX(-50%);
    }
}
#aboutus .concept .concept_unit{
    white-space: nowrap;
}
#aboutus .BtnWrap a{
    position: relative;
    min-width: initial;
    display: block;
    width: 270px;
    padding: 15px 0;
    color: rgba(28, 29, 29, 1);
    margin: auto;
    letter-spacing: 2px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    border: 1px solid rgba(28, 29, 29, 1);
}







@media screen and (min-width: 768px){
    #Business .flex_wrap{
        flex-flow: row;
        flex-wrap: wrap;
    }
    #Business .flex_wrap li{
        width: 50%;
        padding: 10px;
        margin: 0;
    }
    #Business .flex_wrap li:not(:last-of-type){
        margin-bottom: 0;
    }
    .fv_concept_unit .world-clocks{
        display: flex;
        align-items: baseline;
    }
    .world-clocks .card:not(:first-of-type){
        margin-left: 2em;
    }
    #Blog .news_list .a-wrap{
        padding-right: 3em;
    }
    #Blog .news_list .widget-entry-card{
        width: 50vw;
    }
    #Blog .news_list .new-entry-card-title,
    #Blog .news_list .new-entry-card-date{
        font-size: 20px;
    }
    #Blog .BtnWrap{
        margin-top: 5em;
    }
    
    
    
    
    
}@media screen and (min-width: 1024px){
    #Fv .globe,
    #Fv .particles-outline{
        width: 800px;
        height: 800px;
        top: initial;
        left: initial;
        bottom: calc(50% - 400px);
        right: -100px;
    }
    #Fv .particles-outline{
        width: 600px;
        height: 600px;
        bottom: calc(50% - 300px);
        right: 10px;
        opacity: .4;
    }
    #Fv .particles-line{
        width: 1300px;
        height: 2600px;
        left: initial;
        right: calc(300px - 650px);
        top: initial;
        bottom: calc(-60% - 1300px);
    }
    #Fv .fv_concept_unit p{
        font-size: 10rem;
    }
    #Blog .news_list .widget-entry-card{
        width: 500px;
    }
    
    
    
    
    
}@media screen and (min-width: 1400px){
    #Fv .fv_inner{
        max-width: 100vw;
    }
    #Fv .globe{
        right: 10vw;
    }
    #Fv .particles-outline{
        right: 17vw;
    }
    #Fv .particles-line{
        right: calc(10vw - 240px);
    }
    
    
    
    
}


/*****  toppageここまで *****/


/*****  投稿ページ関連 *****/
.news_list .card-thumb{
    display: block;
}
.eye-catch .cat-label{
    display: none;
}
.post.type-post{
    padding: 6em 5%;
    max-width: 1200px;
    margin: 0 auto;
}
.post.type-post .eye-catch-wrap{
    display: block;
    text-align: center;
}
.post.type-post .eye-catch img{
    width: 100%;
}
.article-footer{
    margin-top: 3em;
}
.topics_link_btn .BtnWrap{
    margin-top: 15em;
}
.topics_link_btn .BtnWrap a{
    position: relative;
    min-width: initial;
    display: block;
    width: 270px;
    padding: 15px 0;
    color: rgba(28, 29, 29, 1);
    margin: auto;
    letter-spacing: 2px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    border: 1px solid rgba(28, 29, 29, 1);
    border-radius: 50px;
}


/** TOPICS一覧 **/
#post-76{
    background: #f6f6f6;
    padding-bottom: 6em;
}
#post-76 header{
    padding: 6em 0;
}
#post-76 header h1{
    text-align: center;
    font-size: 2.4em;
    letter-spacing: .3em;
}
#post-76 header .date-tags{
    display: none;
}
#post-76 .news_list .a-wrap{
    background: #fff;
    padding: 0;
    line-height: 1.5;
    border-radius: 15px;
    margin-bottom: 3em;
}
#post-76 .news_list .post.type-post{
    padding: 0;
}
#post-76 figure{
    margin: 0;
}
#post-76 img{
    border-radius: 15px 15px 0 0;
}
#post-76 .widget-entry-cards.card-large-image .card-content{
    display: flex;
    flex-flow: column-reverse;
    padding: 1em 1em 1.5em;
    margin: 0;
}
#post-76 .new-entry-card-date.widget-entry-card-date{
    display: block;
}


@media screen and (min-width: 768px){
    #topics .new-entry-cards.widget-entry-cards{
        display: flex;
        flex-wrap: wrap;
        align-items: self-start;
        justify-content: center;
        
    }
    #post-76 .news_list .a-wrap{
        width: calc(50% - 20px);
        margin: 10px;
    }
    
    
    
    
}@media screen and (min-width: 1024px){
    #post-76 .news_list .a-wrap{
        width: calc(calc(100% / 3) - 20px);        
    }
    
    
}

/*****  投稿ページ関連ここまで *****/



/*****  BUSINESS *****/
.business-all .fv{
    width: 100%;
    height: 85vh;
    position: sticky;
    top: 0;
    background: #e1e1e1;
    z-index: -1;
}
.business-all .fv .fv_img{
    margin: 0;
    height: 100%;
    position: relative;
}
.business-all .fv .fv_img:after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.1);
    position: absolute;
    top: 0;
    left: 0;
}
.business-all .fv .fv_img img{
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top left;
    object-position: top left;
    width: 100%;
}
.business-all .business-content{
    background: #fff;
}
.business-all .content-in{
    position: relative;
}
.business-all .business-title{
    padding: 4em 0 0;
}
.business-all .business-title h1{
    font-size: 2em;
    letter-spacing: 1.8px;
}
.business-all .concept{
    padding: 3em 0 2em;
}
.business-all .concept h2{
    padding: 0;
    line-height: 1.8;
    letter-spacing: 1.6px;
}
.business-all .concept p{
    font-weight: 300;
    letter-spacing: 2px;
    line-height: 2;
}
.business-all .brand_list{
    padding: 3em 0 10em;
}
.business-all .brand_list h3{
    font-size: 1em;
    letter-spacing: .2em;
}
.business-all .brand_list .list_brand{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.business-all .brand_list ul.list_brand:not(:last-of-type){
    margin-bottom: 3em;
}
.business-all .brand_list .list_brand li{
    margin: auto;
    width: calc(100% / 2);
}
.business-all .brand_list .list_brand.sub_brand li{
    text-align: center;
    width: fit-content;
    margin: .5em .6em;
}
.business-all .link_access li{
    border-top: 1px solid #dfdfdf;
    padding: 2em 1em;
}
.business-all .link_access li:last-of-type{
    border-bottom: 1px solid #dfdfdf;
}
.business-all .link_access .link-title{
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #000;
    letter-spacing: 2px;
    position: relative;
}
.business-all .link_access a.link-title:after{
    font-family: 'Font Awesome 5 Free';
    content: '\f054';
    position: absolute;
    right: 0;
}
.business-all .link_access .shop h3{
    padding: 0;
    margin-bottom: 1em;
}
.business-all .link_access .shop .shop-logo{
    max-width: 300px;
    width: 55%;
    margin-bottom: 1em;
}
.business-all .link_access dl:not(:last-of-type){
    margin-bottom: 1em;
}
.business-all .link_access dt{
    font-size: .8em;
    font-weight: 600;
    letter-spacing: 1em;
}
.business-all .link_access dd{
    font-weight: 300;
    letter-spacing: .1em;
}
.business-all .link_access dd:not(:last-of-type){
    margin-bottom: 1em;
}
.business-all .link_access dd.googlemap a{
    color: #4fbce4;
    font-weight: 600;
    letter-spacing: 0;
}
.business-all .instagram,
.business-all .youtube{
    padding: 5em 0;
    margin-top: 5em;
}

#cafe .swiper{
    height: 100%;
}
#cafe .swiper-wrapper{
    margin: auto;
}
#cafe .swiper .swiper-slide.slide01{
    display: block;
    background: url("/wp/wp-content/themes/cocoon-child-master/img/cafe_fv01_sp.png") no-repeat center / cover;
}
#cafe .swiper .swiper-slide.slide02{
    display: block;
    background: url("/wp/wp-content/themes/cocoon-child-master/img/cafe_fv02_sp.png") no-repeat center / cover;
}
#cafe .youtube #sb_youtube_sbyUCAjqdXh6WtAgOhxPhFRl5Yg9{
    padding: 3em 20px;
}
#cafe .access dl:last-of-type dd{
    letter-spacing: 0;
}
#trade .concept{
    text-align: center;
}
#trade .trade_content .trade_picture{
    position: relative;
}
#trade .trade_content .trade_ttl{
    text-align: center;
    background: rgba(255, 255, 255, .8);
}
#trade .trade_content .trade_ttl h2{
    letter-spacing: .1em;
    line-height: 1.6;
    color: #000;
    font-size: 1.3em;
    padding: 2em 1em 1em;
    margin: 0;
    background: transparent;
}
#trade .trade_content .trade_textbox{
    line-height: 2;
    letter-spacing: .1em;
    padding: 1em 0 4em;
}
#trade .link_access .link-title span{
    display: block;
    font-size: .8em;
    font-weight: 500;
}
#trade .link_access a.link-title:after{
    bottom: 1em;
}
#trade .store-place dt{
    font-size: 18px;
    font-weight: 600;
    color: #000;
    letter-spacing: 2px;
}


#ec .fv_img.sp-only img{
    object-position: bottom 0% right 40%;
}
#ec .ec-list-slider{
    display: flex;
    overflow: hidden;
    margin-top: 3em;
}
#ec .ec-list-slider ul{
    display: flex;
    margin: 0;
    animation: slideimg 60s linear infinite;
}
@keyframes slideimg {
    from {
        transform: translateX(0%);
    }
    to {
        transform: translateX(-100%);
    }
}
#ec .ec-list-slider ul li{
    width: calc(350vw / 8);
    margin: 0;
}




#bicycle .fv{
    overflow: hidden;
}
#bicycle .fv_img .video-container{
    margin: auto;
    max-width: initial;
}
#bicycle .fv_img .video-container .video{
    margin-top: 0;
    max-width: initial;
    width: 350vw;
    height: 297.5vh;
    position: absolute;
    top: calc(50% - 148.75vh);
    left: calc(50% - 175vw);
}






#real-estate.business-all .fv .fv_img img{
    object-position: bottom center;
}
#real-estate .realestate-list{
    max-width: 1000px;
    margin: 0 auto;
}
#real-estate h2{
    font-size: 1.4rem;
    letter-spacing: 2px;
}
#real-estate .realestate-img-block{
    margin: 3em auto;
}#real-estate h2{
    font-size: 1.4rem;
    letter-spacing: 2px;
}
#real-estate .address{
    max-width: 400px;
    background: #eaeaea;
    padding: 1em;
    margin: 2em 5% 5em;
}
#real-estate .address p{
    margin: 0;
}
#real-estate .address .ttl{
    font-weight: 600;
}
#real-estate .address .add span{
    display: block;
    font-size: .8em;
    letter-spacing: 2px;
}#real-estate .address .web a{
    display: block;
    margin-top: .5em;
    background: #000;
    color: #fff;
    width: fit-content;
    padding: .3em 2em;
    border-radius: 25px;
    font-weight: 800;
    letter-spacing: 1px;
}




@media screen and (min-width: 768px){
    .business-all .fv{
        height: 75vh;
    }
    .business-all .fv .fv_img img{
        -o-object-position: center center;
        object-position: center center;
    }
    .business-all .brand_list .list_brand li{
        width: calc(100% / 5);
    }
    .business-all .brand_list .list_brand.sub_brand li{
        width: fit-content;
    }
    
    
    #cafe .swiper .swiper-slide.slide01{
        background: url("/wp/wp-content/themes/cocoon-child-master/img/cafe_fv01_pc.png") no-repeat center bottom / cover;
    }
    #cafe .swiper .swiper-slide.slide02{
        background: url("/wp/wp-content/themes/cocoon-child-master/img/cafe_fv02_pc.png") no-repeat center bottom / cover;
    }
    
    
    
    #trade .trade_content .trade_ttl h2{
        font-size: 1.4em;
        margin-top: 1em;
    }
    
    
    
    #bicycle .fv_img .video-container .video{
        width: 200vw;
        left: calc(50% - 100vw);
        height: 170vh;
        top: calc(50% - 85vh);
    }
    
    
    #real-estate .realestate-img-block.mym-square li{
        width: 70%;
    }
    #real-estate .realestate-img-block.mym-square li:last-child{
        margin-left: 30%;
    }
    #real-estate .realestate-img-block:not(.mym-square) ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    #real-estate .realestate-img-block:not(.mym-square) ul li:not(:first-of-type){
        width: 50%;
        margin: 0;
    }
    #real-estate .realestate-img-block:not(.mym-square) ul li:not(:first-of-type) img{
        padding: 10px;
    }
    #real-estate .address{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        max-width: initial;
        padding: 1em 2em;
    }
    #real-estate .address .ttl{
        margin-right: 2em;
    }
    #real-estate .address .add span{
        display: inline-block;
        margin-right: 1em;
    }
    #real-estate .address .web{
        width: 100%;
    }
    #real-estate .address .web a{
        margin: 1em auto 0;
    }
    
    
    
    
    
    
}@media screen and (min-width: 1024px){
    .business-all .fv{
        height: 90vh;
    }
    #trade .business-title{
        padding-top: 10em;
    }
    #trade .concept{
        padding: 5em 0 10em;
    }
    #trade .trade_content .trade_ttl{
        position: absolute;
        bottom: 0;
        left: 60px;
    }
    #trade .trade_content .trade_ttl,
    #trade .trade_content .trade_textbox{
        width: 500px;
    }
    #trade .trade_content .trade_ttl h2{
        padding: 1em 2em .5em;
    }
    #trade .trade_content .trade_textbox{
        padding: 3em 2em 10em;
        margin-left: 60px;
    }
    
    
    
    #ec .ec-list-slider ul li{
        width: calc(150vw / 8);
        margin: 0;
    }
    
    
    
}@media screen and (min-width: 1280px){
    #bicycle .fv_img .video-container .video{
        width: 100vw;
        left: calc(50% - 50vw);
        height: 85vh;
        top: calc(50% - 42.5vh);
    }
    
    
    
    
}






/*****  BUSINESSここまで *****/



/*****  リクルート *****/
#post-159 p,
#post-159 h1,
#post-159 h2,
#post-159 h3{
    margin: 0;
    padding: 0;
}
#post-159{
    margin-bottom: 10em;
}
.recruit_movie_wrap{
    overflow: hidden;
    position: relative;
    aspect-ratio: 9 / 16;
    display: flex;
    justify-content: center;
    flex-flow: row;
    align-items: center;
    margin-bottom: 10em;
}
.recruit_movie_wrap:before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    background-image: radial-gradient(black 20%, transparent 20%), radial-gradient(black 20%, transparent 20%);
    background-size: 6px 6px;
    background-position: 0 0, 3px 3px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}
.recruit_movie{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.recruit_movie .video-container{
    margin: auto;
    max-width: initial;
}
.recruit_movie .video-container .video{
    margin-top: 0;
    max-width: initial;
    width: 350vw;
    height: 297.5vh;
    position: absolute;
    top: calc(50% - 148.75vh);
    left: calc(50% - 175vw);
}
#recruit .recruit-title{
    font-size: 3em;
    letter-spacing: .1em;
    color: #fff;
    z-index: 3;
    
}
#post-159 header h1,
#recruit .wrapper{
    max-width: 600px;
    margin: 0 auto;
}
#post-159 header h1{
    font-size: 2.6em;
    color: #000;
    letter-spacing: -1px;
    padding: 0 5%;
}
#recruit .recruit_list h2 a{
    pointer-events: none;
}
#recruit{
    margin: 4em auto 10em;
    color: #000;
}
#recruit .concept h2{
    font-size: 1.6em;
    padding: 0;
    margin-bottom: 0;
}
#recruit ul{
    margin: 5em auto;
}
#recruit ul li:not(:last-of-type){
    margin-bottom: 1.5em;
}
#recruit ul li a{
    display: block;
    border: 1px solid;
    padding: .5em 1em;
    text-align: center;
    font-size: 1.3em;
    font-weight: 500;
    position: relative;
}
#recruit ul li a:after{
    content: '';
    display: block;
    width: .5em;
    height: .5em;
    border-top: 1px solid;
    border-right: 1px solid;
    transform: rotate(135deg);
    position: absolute;
    right: 1em;
    bottom: 1.3em;
}
#recruit .recruit-image{
    margin: 5em auto;
    display: flex;
    justify-content: space-between;
}
#recruit .recruit-image .img{
    width: 48%;
}
#recruit .recruit-image .img:last-of-type{
    margin-top: 2em;
}
#recruit .recruit-content{
    margin-top: -10em;
    padding-top: 10em;
}
#recruit .recruit-content:not(:last-of-type){
    margin-bottom: 5em;
}
#recruit h2.recruit-title{
    padding: 0;
    font-size: 1.6em;
    font-weight: 800;
    margin-bottom: 1em;
}
#recruit .recruit-content-in .recruit_type{
    font-size: 1.3em;
    font-weight: 500;
    margin-bottom: 1em;
}
#recruit .recruit-content-in .recruit_list{
    margin-bottom: 3em;
}
#recruit .recruit-content-in .recruit_entry a{
    text-decoration: underline;
    margin-right: .5em;
}
#recruit .recruit_list article{
    border-top: 2px solid;
}
#recruit .recruit_list article:last-of-type{
    border-bottom: 2px solid;
}
#recruit .recruit_list article h2.post-title{
    padding: 2em 1em 2em 0;
    position: relative;
}
#recruit .recruit_list article h2.post-title:after{
    font-family: 'Font Awesome 5 Free';
    content: '\f078';
    position: absolute;
    right: 0;
    transition: all .5s;
}
#recruit .recruit_list article.active h2.post-title:after{
    transform: rotate(180deg);
}
#recruit .recruit_list article .post-content-body{
    opacity: 0;
    height: 0px;
    overflow: hidden;
    transition: all .5s;
}
#recruit .recruit_list article.active .post-content-body{
    opacity: 1;
    height: 100%;
    padding: 2em 0;
    border-top: 1px solid #c2c0c0;
}


#recruit .recruit_blog p{
    font-weight: 600;
    font-size: 1.1em;
    letter-spacing: .1em;
    margin-bottom: 3em;
}
#recruit .recruit_blog dl:not(:last-of-type){
    margin-bottom: 2em;
}
#recruit .recruit_blog dt{
    font-size: 1.3em;
    margin-bottom: .5em;
}
#recruit .recruit_blog dd{
    padding-left: 1.3em;
}


@media screen and (min-width: 768px){
    .recruit_movie .video-container .video{
        width: 200vw;
        left: calc(50% - 100vw);
        height: 170vh;
        top: calc(50% - 85vh);
    }
    
    
    
    
    
}@media screen and (min-width: 1024px){
    .recruit_movie_wrap{
        aspect-ratio: 16/9;
    }
    #post-159 header h1,
    #recruit .wrapper{
        max-width: 1000px;
    }
    #recruit .recruit_top{
        display: flex;
    }
    #recruit .recruit_top1{
        width: 40%;
    }
    #recruit .recruit_top2{
        width: 60%;
        padding-left: 50px;
    }
    
    
    
    
}@media screen and (min-width: 1025px){
    #post-159 header h1, #recruit .wrapper{
        padding: 0;
    }
    #recruit .recruit_list article h2.post-title{
        cursor: pointer;
    }
}






/*****  リクルートここまで *****/



/*****  about / contact / sitemap / privacy-policy / onlinestore / mym45bld *****/
#post-248 p,
#post-248 h1,
#post-248 h2,
#post-248 h3,
#post-260 p,
#post-260 h1,
#post-260 h2,
#post-260 h3,
#post-356 p,
#post-356 h1,
#post-356 h2,
#post-356 h3,
#post-3 p,
#post-347 h2,
#post-513 h1,
#post-513 h2,
#post-513 h3{
    margin: 0;
    padding: 0;
}
#post-248,
#post-260,
#post-356,
#post-3,
#post-347,
#post-379,
#post-352,
#post-512,
#post-513,
#post-517,
#post-526,
#post-528{
    margin-bottom: 10em;
    color: #000;
}
#post-260,
#post-356,
#post-3,
#post-347,
#post-379,
#post-352,
#post-512,
#post-513,
#post-517,
#post-526,
#post-528{
    margin-top: 10em;
}
#post-356 .inner,
#post-352 .inner{
    max-width: 1000px;
}
#post-260 h1,
#post-356 h1,
#post-347 h1,
#post-513 h1,
#post-526 h1{
    font-size: 2.6em;
    color: #000;
    letter-spacing: -1px;
}
#post-3 h1,
#post-379 h1,
#post-512 h1,
#post-517 h1{
    font-size: 16px;
    line-height: 22px;
    color: #1B1B1B;
    font-weight: 700;
    padding: 14px 20px;
    background-color: #F2F2F2;
    margin: 0 0 3em;
}
#post-379 h1,
#post-512 h1{
    text-align: center;
}
#company .about_fv,
#mym45bld .bld_fv{
    height: 65vh;
    overflow: hidden;
    position: relative;
    display: flex;
    justify-content: center;
    flex-flow: row;
    align-items: center;
    margin-bottom: 10em;
}
#company .about_fv img,
#mym45bld .bld_fv img{
    height: 100%;
    max-width: initial;
}
#company .about,
#contact .about{
    margin-top: 3em;
}
#company .about_title2{
    text-align: center;
}
#company .about_title2 h2{
    font-size: 1.8em;
    letter-spacing: .2em;
}
#company .about_title2 h2 span{
    display: block;
    font-size: .6em;
    letter-spacing: .05em;
}
#company .about_content{
    margin-top: 2em;
    padding: 2em 1em;
    box-shadow: 2px 2px 16px #ccc;
    background: #fff;
}
#company .about_content dl{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 3.4666666667vw;
    line-height: 1.8461538462;
    border-top: 1px solid #bfbfbf;
    padding: 1em 0;    
}
#company .about_content dt{
    width: 30%;
    font-size: 4.2666666667vw;
}
#company .about_content dd span{
    font-size: .8em;
}
#company .about_content dd.company_kana span{
    display: block;
}
#company .about_content dd{
    width: 70%;
}
#company .about_content dt,
#company .about_content dd{
    background: #fff;
}
#company .about_message{
    margin-top: 7em;
}
#company .about_message .catch{
    font-size: 1.3em;
    font-weight: 800;
    letter-spacing: .1em;
    line-height: 1.6;
    margin-bottom: 1em;
}
#company .about_message .sign img{
    width: 30%;
    max-width: 200px;
    margin-left: 70%;
    margin-top: 1em;
}
#company .president{
    font-size: 1.6em;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 2em;
}
#company .president span{
    display: block;
    font-size: .8em;
    letter-spacing: 2px;
}









#contact .inner,
#contact-thanks .inner{
    max-width: 900px;
}
#contact .concept p:first-of-type{
    margin-bottom: 1em;
}
#contact .concept span{
    display: block;
    margin-top: 1em;
    font-size: .8em;
}
#contact .online_contact_list{
    margin: 2em auto 0;
    max-width: 600px;
}
#post-513 .online_contact_list li.jp-only,
#post-513 .inquiry_box.phonenumber{
    display: none;
}
#contact .online_contact_list li:not(:last-of-type){
    margin-bottom: 1em;
}
#contact .online_contact_list li a{
    border-left: 3px solid #ddd;
    padding-left: 1em;
    border-bottom: 1px solid #ddd;
    display: block;
}
#contact .abou_inquiry{
    margin-top: 5em
}
#post-513 .abou_inquiry.about_phoneinquiry{
    display: none;
}
#contact .abou_inquiry h3{
    background: #ddd;
    padding: .5em 1em;
    margin-bottom: 1em;
}
#contact .phone-inquiry p{
    font-size: 14px;
}
#contact .phone-inquiry p:first-child{
    font-size: 32px;
    font-weight: 800;
    letter-spacing: 4.5px;
}
#contact .about_content p{
    margin-bottom: 1em;
}
#contact #wpcf7-f259-p260-o1{
    padding: 2em 1em;
    border-radius: 5px;
}
#contact #wpcf7-f259-p260-o1 label{
    font-weight: 800;
    font-size: 1.1em;
    letter-spacing: .1em;
}
#contact #wpcf7-f259-p260-o1 label sup{
    font-weight: 800;
    font-size: .6em;
    color: red;
    vertical-align: text-top;
    margin-left: .4em;
}
#contact #wpcf7-f259-p260-o1 .wpcf7-submit{
    background: #000;
    color: #fff;
    border-radius: 25px;
    letter-spacing: 1em;
    font-size: 1em;
    font-weight: 600;
}
#contact #wpcf7-f259-p260-o1 .inquiry_box{
    margin-bottom: 2.5em;
}
#contact #wpcf7-f259-p260-o1 .wpcf7-form-control-wrap input,
#contact #wpcf7-f259-p260-o1 .wpcf7-form-control-wrap select,
#contact #wpcf7-f259-p260-o1 .wpcf7-form-control-wrap textarea{
    font-size: 16px;
    letter-spacing: 1px;
}
#contact #wpcf7-f259-p260-o1 .wpcf7-form-control-wrap .wpcf7-not-valid-tip{
    font-size: 14px;
    letter-spacing: 0;
}
#contact #wpcf7-f259-p260-o1 .inquiry_submit_box{
    text-align: center;
}
#contact #wpcf7-f259-p260-o1 .submit-btn{
    width: 260px;
    margin: 0 auto;
}

#post-513 header h1{
    display: none;
}
#post-513 #contact .phone-inquiry p:first-child:before{
    content: "+81 ";
    font-size: .8em;
    letter-spacing: 0;
}


#contact-thanks .contact-box{
    border: 1px solid #ddd;
    padding: 1.8em 1em 0;
    margin-bottom: 3em;
}
#contact-thanks .link-to-toppage a{
    display: block;
    width: fit-content;
    padding: 1em 2em;
    border-radius: 5px;
    margin: 0 auto;
    background: #1B1B1B;
    font-weight: 600;
    color: #fff;
    letter-spacing: 2px;
}



#sitemap .page-title{
    text-align: center;
    margin-bottom: 5em;
}
#sitemap .sitemap-content{
    box-shadow: 2px 2px 16px #dfdfdf;
    border-radius: 20px;
    padding: 4em 3em;
}
#sitemap .sitemap-content .sitemap-cate:not(:last-of-type){
    margin-bottom: 4em;
}
#sitemap .sitemap-cate-title{
    margin-bottom: 1.5em;
}
#sitemap .sitemap-cate-title h2 span{
    font-size: .85em;
}
#sitemap .sitemap-cate-title h2 span:before{
    content: "-";
    margin: 0 .5em;
}
#sitemap .sitemap-cate-links{
    padding-left: 1.5em;
    border-left: 2px solid #f2f2f2;
}
#sitemap .sitemap-cate-links ul li:not(:last-child){
    margin-bottom: 1em;
}



#privacy-policy .page-title,
#privacy-policy .policy-box:not(:last-of-type){
    margin-bottom: 6em;
}
#privacy-policy .policy-title{
    margin-bottom: 2em;
}
#privacy-policy .policy-content p:not(:last-child){
    margin-bottom: 1em;
}
#privacy-policy ul.list-dot li{
    list-style: disc;
    margin-left: 1.5em;
}
#privacy-policy ul.list-number li:not(:last-of-type){
    margin-bottom: 2em;
}
#privacy-policy ul.list-dot,
#privacy-policy ul.list-dot li:not(:last-of-type){
    margin-bottom: 1em;
}
#privacy-policy .hosoku{
    margin-top: 2em;
}


#onlinestore .page-title{
    text-align: center;
    margin-bottom: 7em;
}
#onlinestore .onlinestore-content .onlinestore-cate{
    background: #f6f6f6;
    padding: 2em 5%;
    border-radius: 5px;
}
#onlinestore .onlinestore-content .onlinestore-cate:not(:last-of-type){
    margin-bottom: 4em;
}
#onlinestore .onlinestore-cate-title{
    margin-bottom: 1.5em;
}
#onlinestore .onlinestore-cate-title h2 span{
    font-size: .85em;
}
#onlinestore .onlinestore-cate-links ul li{
    margin: 0;
    padding: 1em 5%;
    background: #fff;
    border-radius: 5px;
}
#onlinestore .onlinestore-cate-links ul li:not(:last-child){
    margin-bottom: 1em;
}
#onlinestore .onlinestore-cate-links ul li a img{
    border: 1px solid #dfdfdf;
}
#onlinestore .onlinestore-cate-links ul li span{
    display: block;
    font-size: 1.2em;
    font-weight: 600;
    line-height: 1.3;
    color: #000;
    margin: 1em auto;
}
#onlinestore .onlinestore-cate-links ul li p{
    margin: .5em 0 0;
}

.faq h1{
    font-size: 2.2em;
    text-align: center;
    letter-spacing: .3em;
}
.faq .faq-navi{
    margin: 3em auto 6em;
}
.faq .faq-navi ul{
    display: flex;
    flex-wrap: wrap;
}
.faq .faq-navi ul li{
    width: 100%;
}
.faq .faq-navi ul li:not(:last-of-type){
    margin-bottom: 1em;
}
.faq .faq-navi ul li a{
    display: block;
    padding: .5em 2em;
    border-radius: 5px;
    box-shadow: 2px 2px 6px #ccc;
}
.faq .faq_content{
    border-top: 1px solid #dfdfdf;
}
.faq .faq_content .post-contents-by-cat{
    padding: 1em 0;
    border-bottom: 1px solid #dfdfdf;
}
.faq .faq_content a{
    pointer-events: none;
}
.faq .faq_content h2{
    
}
    
  
#mym45bld .swiper-button-prev,
#mym45bld .swiper-button-next{
    background: #0066CC;
    border-radius: 50%;
    color: #fff;
}
#mym45bld .swiper-button-prev svg,
#mym45bld .swiper-button-next svg{
    width: 60%;
    height: 60%;
}
#mym45bld .swiper2 .swiper-slide{
    text-align: center;
}
#mym45bld .swiper3 .swiper-slide:not(.swiper-slide-thumb-active){
    opacity: .4;
}
#mym45bld h3{
    background: #0066CC;
    color: #fff;
    letter-spacing: 2px;
    padding: 1em 2em;
    margin-bottom: 2em;
}
#mym45bld p{
    margin: 0;
    padding: 0 5%;
}
#mym45bld .bld_content{
    margin: 10em auto;
}
#mym45bld .bld_content dl:not(:last-of-type){
    margin-bottom: 2.5em;
}
#mym45bld .bld_content dl dt{
    font-size: 1.2em;
    font-weight: 800;
    letter-spacing: 2px;
} 
#mym45bld .bld_inquiry:not(:last-of-type){
    margin-bottom: 3em;
}
#mym45bld .phone-inquiry p:first-child{
    font-size: 32px;
    font-weight: 800;
    letter-spacing: 4.5px;
}
#mym45bld .phone-inquiry p:last-child{
    font-size: 14px;
}
#mym45bld .wpcf7{
    margin: 3em auto 10em;
}
#mym45bld .inquiry_box{
    margin-bottom: 2em;
}
#mym45bld .label_title,
#mym45bld .address_title{
    font-size: 1.1em;
    font-weight: 800;
    letter-spacing: .1em;
}
#mym45bld .required{
    font-size: .9em;
    font-weight: 800;
    color: red;
}
#mym45bld .customer-info{
    margin-bottom: 5em;
}
#mym45bld .inquiry_address{
    background: #f2f2f2;
    padding: 1em 0;
    margin-bottom: 2.5em;
}
#mym45bld .inquiry_address .label_title{
    display: none;
}
#mym45bld .inquiry_submit_box{
    text-align: center;
}
#mym45bld .submit-btn{
    width: 260px;
    margin: 1em auto 0;
}
#mym45bld .submit-btn input{
    background: #000;
    color: #fff;
    border-radius: 25px;
    letter-spacing: 1em;
    font-size: 1em;
    font-weight: 600;
}







@media screen and (min-width: 768px){
    #company .about_fv,
    #mym45bld .bld_fv{
        height: 90vh;
    }
    #company .about_content dl{
        font-size: 1.2em;
    }
    #company .about_content dt{
        font-size: 1.3em;
    }
    
    
    
    
}@media screen and (min-width: 1024px){
    #company .about_fv img,
    #mym45bld .bld_fv img{
        width: 100%;
        height: auto;
    }
    #company h2.about-title{
        width: 30%;
    }
    #company .about_content{
        box-shadow: none;
        width: 650px;
        margin: 3em auto 0;
    }
    #company .about_message{
        display: flex;
        justify-content: space-between;
        padding: 4em 2em;
    }
    #company .about_message .president{
        width: 30%;
    }
    #company .about_message .message{
        width: 70%;
    }
    #company .about_message .catch{
        font-size: 2em;
    }
    
    
    
    
    #contact .about_content{
        margin-top: 10em;
    }
    #contact #wpcf7-f259-p260-o1 label{
        display: flex;
        justify-content: space-between;
    }
    #contact #wpcf7-f259-p260-o1 .inquiry_text_box label{
        flex-flow: column;
    }
    #contact #wpcf7-f259-p260-o1 .inquiry_text_box .label_title{
        margin-bottom: .5em;
    }
    #contact #wpcf7-f259-p260-o1 .wpcf7-form-control-wrap{
        width: 27rem;
    }
    #contact #wpcf7-f259-p260-o1 .inquiry_text_box .wpcf7-form-control-wrap{
        width: 100%;
    }
    
    
    
    #sitemap .sitemap-content{
        display: flex;
        flex-wrap: wrap;
    }
    #sitemap .sitemap-content .sitemap-cate{
        width: 50%;
    }
    
    
    #onlinestore .onlinestore-content .onlinestore-cate{
        padding: 2em;
    }
    #onlinestore .onlinestore-cate-links ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    #onlinestore .onlinestore-cate-links ul li{
        width: calc(50% - 2em);
        padding: 2em 1em;
        margin: 1em;
    }
    #onlinestore .onlinestore-cate-links ul li a:hover{
        opacity: .6;
    }
    #onlinestore .onlinestore-cate-links ul li:last-child{
        margin-bottom: 1em;
    }
    
     
    #mym45bld .bld_img{
        display: flex;
        max-width: 800px;
        margin: 0 auto;
    }
    #mym45bld .swiper2{
        width: 80%;
    }
    #mym45bld .swiper3{
        width: 20%;
    }
    #mym45bld .swiper3 .swiper-wrapper{
        flex-flow: column;
        height: auto;
        padding-left: 50px;
    }
    #mym45bld .swiper3 .swiper-slide{
        width: 60px !important;
        aspect-ratio: 10 / 13;
    }
    #mym45bld .swiper3 .swiper-slide:not(:last-of-type){
        margin-bottom: 10px;
    }
    #mym45bld .bld_inquiry-area{
        max-width: 800px;
        margin: 0 auto;
    }
    #mym45bld .bld_inquiry{
        padding: 10px;
    }
    
    
    
}@media screen and (min-width: 1280px){
     #bicycle .fv_img .video-container .video {
        width: 100vw;
        left: calc(50% - 50vw);
        height: 85vh;
        top: calc(50% - 42.5vh);
    }
}





/*****  about / contact / sitemap / privacy-policy / onlinestore / mym45bldここまで *****/


/*****  英語ページ *****/
#post-538 header h1,
#post-531 header h1,
#post-532 header h1,
#post-533 header h1,
#post-535 header h1,
#post-536 header h1,
#post-571 header h1,
#post-540 header h1,
#post-536 .address .web,
#post-518 #company .president,
#post-517 header h1.entry-title,
#post-526 header h1.entry-title,
#post-528 header h1.entry-title,
#post-528 .jp-only,
#post-571 .bld_inquiry-area{
    display: none;
}
#post-518 #company .about_content dl{
    flex-flow: column;
}
#post-518 #company .about_content dt{
    width: 100%;
    font-weight: bold;
}
#post-518 #company .about_content dd{
    width: 100%;
}
#post-518 #company .about_message .sign{
    position: relative;
}
#post-518 #company .about_message .sign:after{
    content: "Yasushi Nagasue";
    position: absolute;
    bottom: -.5em;
    right: 0;
    font-size: .8em;
    letter-spacing: 2px;
}





@media screen and (min-width: 768px){
    #post-518 #company .about_message .sign:after{
        right: 5%;
    }
    
    
    
    
}@media screen and (min-width: 1024px){
    #post-518 #company .about_message .message{
        width: 100%;
    }
    #post-518 #company .about_message .sign:after{
        right: 10%;
    }
    
    
    
    
}


/*****  英語ページここまで *****/







/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
   body:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons){
    margin-top: 0;
  }
    
    
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
