body{
    word-break: break-all;
    background: #ffffff;
    font-family:"游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
/*common*/
.section_title_css{
    text-align: center;
    background: none!important;
}
.section_title_css h2{
    font-size: 3rem!important;
    /*font-family: "Rubik Mono One", monospace!important;*/
    font-weight: bold!important;
    font-style: normal!important;
}
@media screen and (max-width:600px){
    .section_title_css h2{
        font-size: 2rem!important;
    }
}
/*header_logo*/
.favicon__css{
    width: 60px;
    height: auto;
}
.logo__css{
    margin-top: 50px;
}
@media screen and (max-width:1025px){
}
@media screen and (max-width:600px){
.logo__css{
    margin-top: 50px;
    width: 80%;
}
}
/*header_footer__menu*/
.home header{
    background:none;
}
header{
    background: #ffffff;
}
.footer_nav li a{
    color:#ffffff;
    font-family:'Fjalla One', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
.home .header_nav li a,
.header_nav li a{
    color:#ffffff;
    font-family:'Fjalla One', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
/*
.home .header_nav li a:hover,
.header_nav li a:hover{
    opacity: .7;
}
.home .header_content_1:hover,
.home .header_nav li:hover,
.header_content_1:hover,
.header_nav li:hover{
    opacity: .5;
    transition: ease .6s;
}
*/
@media screen and (max-width:600px){
}
/*mvcopy*/
.mvcopy_wrap {
    width: 90%;
    margin: 0 auto;
    text-align: left;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.mvcopy_wrap h1{
    font-size: 2rem;
    font-weight: bold;
    color:#ffffff
}
.mvcopy_wrap p{
    margin-top: 20px;
    font-size: 1.8rem;
    color:#ffffff
}
/*mv*/
.sp_pc_mv_img_css{
    display: none;
}
#mv{
    background-image: url("https://demo01-before.yoshitake-ryota.com/wp-content/uploads/2026/01/fv.png");
    width: 100%;
    position: relative;
    text-align: center;
    background-size: cover;
    overflow: hidden;
    height: 100dvh;
    min-height: 700px;
}
#mv img{
    width:27%;
    max-width: 1000px;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -2%);
    -webkit-transform: translate(-50%, -2%);
    -ms-transform: translate(-50%, -2%);
}/*
.sp_mv_img_css{
    display: none;
}*/
@media screen and (max-width:1400px){
    /*
    #mv img{
        width:45%;
        max-width: 1000px;
        margin: 0 auto;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, -2%);
        -webkit-transform: translate(-50%, -2%);
        -ms-transform: translate(-50%, -2%);
    }*/
}
@media screen and (max-width:1025px){
    #mv{
        width: 100%;
        position: relative;
        text-align: center;
        overflow: hidden;
        height: 100dvh;
        min-height: 600px;
        background-size: cover;
    }
    #mv img{
        width:40%;
        max-width: 1000px;
        margin: 0 auto;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, -2%);
        -webkit-transform: translate(-50%, -2%);
        -ms-transform: translate(-50%, -2%);
    }
}
@media screen and (max-width:600px){
    #mv{
        background-image: url("https://demo01-before.yoshitake-ryota.com/wp-content/uploads/2026/01/spfv.png");
        width: 100%;
        position: relative;
        text-align: center;
        overflow: hidden;
        height: 100dvh;
        min-height: 600px;
        background-size: cover;
    }
    /* #mv img{
        background-image: url("https://demo01-before.yoshitake-ryota.com/wp-content/uploads/2026/01/spfv.png");
        width:100%;
        max-width: 350px;
        margin: 0 auto;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, -2%);
        -webkit-transform: translate(-50%, -2%);
        -ms-transform: translate(-50%, -2%);
    } */
    .pc_mv_img_css{
        display: none;
    }
    .sp_pc_mv_img_css{
        display: block;
    }
    /*
    .pc_mv_img_css{
        display: none;
    }
    .sp_mv_img_css{
        display: block;
    }*/
}
/*mvtxt*/
/*
.mv_layout_txt_css{
    position: absolute;
    color:#ffffff;
}
.mv_layout_txt_1_css{
    font-size: 2rem;
}
.mv_layout_txt_2_css{
    font-size: 2rem;
}
.mv_layout_txt_3_css{
    font-size: 2rem;
}
.mv_layout_txt_4_css{
    font-size: 4rem;
}
.mv_layout_txt_5_css{
    font-size: 2rem;
}
.mv_layout_txt_6_css{
    font-size: 2rem;
}
.mv_layout_txt_7_css{
    font-size: 5rem;
}
.mv_layout_txt_8_css{
    font-size: 6rem;
}
*/
/*about*/
#about{
    margin: 0 auto;
    padding-top: 120px;
    margin-top: 40px;
    max-width: 1200px;
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
}
.about_content_wrap{
    margin-top: 70px;
    display: flex;
    justify-content:space-between;
    align-items: center;
}
.about_img_css{
    width: 25%;
    margin: 0 auto;
}
.about_img_css img{
    width:100%;
}
.about_txt_css{
    width: 40%;
    margin: 0 auto;
    color:#4b4b4b;
    line-height: 1.6;
    text-align: left;
}
.about_txt_css h3{
    font-size: 1.4rem;
}
.about_txt_css h4{
    margin-top: 8px;
    font-size: 1.1rem;
}
.about_txt_css p{
    margin-top: 10px;
    font-size: 1rem;
}
@media screen and (max-width:600px){
    #about{
        padding-top: 80px;
        margin-top: 0;
        padding-left: 20px;
        padding-right: 20px;
    }
    .about_content_wrap{
        margin-top: 30px;
        display:block;
    }
    .about_txt_css{
        margin-top: 20px;
    }
    .about_img_css{
        width: 80%;
    }
    .about_txt_css{
        width: 100%;
    }
}
/*feature*/
#feature{
    margin: 0 auto;
    padding-top: 120px;
    margin-top: 40px;
    max-width: 1200px;
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
}
.feature_content_wrap{
    margin-top: 70px;
    display: flex;
    justify-content:space-between;
}
.feature_img_css{
    width: 25%;
    margin: 0 auto;
}
.feature_img_css img{
    width:100%;
}
.feature_txt_css{
    width: 40%;
    margin: 0 auto;
    color:#4b4b4b;
    line-height: 1.6;
    text-align: left;
}
.feature_txt_css h3{
    font-size: 1.4rem;
}
.feature_txt_css h4{
    margin-top: 8px;
    font-size: 1.1rem;
}
.feature_txt_css p{
    margin-top: 10px;
    font-size: 1rem;
}
@media screen and (max-width:600px){
    #feature{
        padding-top: 80px;
        margin-top: 0;
        padding-left: 20px;
        padding-right: 20px;
    }
    .feature_content_wrap{
        margin-top: 30px;
        display:block;
    }
    .feature_txt_css{
        margin-top: 20px;
    }
    .feature_img_css{
        width: 80%;
    }
    .feature_txt_css{
        width: 100%;
    }
    .feature_txt_css_2,
    .feature_txt_css_3{
        margin-top: 40px;
    }
}
/*blog*/
#blog{
    margin: 0 auto;
    padding-top: 120px;
    margin-top: 40px;
    max-width: 1200px;
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
}
.br-1_css{
    display: none;
}
.blog_list_item_css{
    /*border-bottom: solid 1px #9f9f9f;*/
    padding-bottom: 5px;
    margin-top: 20px;
}
/* .blog_list_item_span2{
    margin-left: 30px;
} */
@media screen and (max-width:600px){
    .br-1_css{
        display: block;
    }
    .blog_list_item_span2{
        margin-left: 0px;
    }
}
/*works*/
#works{
    margin: 0 auto;
    margin-top: 120px;
    padding:120px 0;
    width: 100%;
    background: #F8F8F8;
}
.works_wrap{
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px;
}
.works_content_wrap{
    margin-top: 20px;
}
.works_content_wrap ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.works_content_wrap ul li{
    width: 26%;
    margin-top: 40px;
}
.works_content_wrap ul li:nth-child(n+4){
    width: 26%;
    margin-top: 60px;
}
.works_content_wrap ul li h3{
    text-align: center;
    font-size: 1.1rem;
    margin-top: 20px;
}
.works_content_wrap ul li p{
    text-align: left;
    font-size: 1rem;
    margin-top: 10px;
}
.works_img_css{
    text-align: center;
    max-width:300px;
}
.works_img_css img{
    width: 100%;
}
@media screen and (max-width:750px){
    .works_content_wrap ul li{
        width: 40%;
        margin: 0 auto;
        margin-top: 40px;
    }
}
@media screen and (max-width:600px){
    #works{
        margin-top:80px;
        padding:80px 0;
    }
    .works_wrap{
        padding-left: 20px;
        padding-right: 20px;
        margin-top: 30px;
    }
    .works_content_wrap {
        margin-top: 0;
    }
    .works_content_wrap ul li,
    .works_content_wrap ul li:nth-child(n+4){
        width: 80%;
        margin: 0 auto;
        margin-top: 80px;
    }
    .works_content_wrap ul li:first-of-type{
        width: 80%;
        margin: 0 auto;
        margin-top: 30px;
    }
}
/*access*/
.access_wrap{
    height: 30vh;
}
.access_wrap iframe{
    width: 100%;
    height: 30vh;
}
/*contact*/
#contact{
    text-align: center;
    color:#4b4b4b;
    padding: 120px 40px;
}
.contact_wrap{
    max-width: 560px;
    margin: 0 auto;
    position: relative;
}
#contact h2{
    padding-top: 37px;
    padding-bottom: 38px;
    border:solid 1px #4b4b4b;
    color:#4b4b4b!important;
}
#contact h2:hover{
    color:#4b4b4b!important;
}
#contact .contact_wrap  a:hover{
    color:#4b4b4b!important;
    text-decoration: none!important;
}
/*ボタンアニメーション*/
_::-webkit-full-page-media, _:future, :root.btnarrow,
.btnarrow{
  position: relative;
  display: block;
}
/*矢印と下線の形状*/
_::-webkit-full-page-media,_:future,:root.btnarrow::before{
  content:"";
  position: absolute;
  bottom:20px;
  left:75%;
  width: 50%;
  height: 1px;
  background:#4b4b4b;
  transition: all .3s;
  display: block;
}
_::-webkit-full-page-media, _:future, :root.btnarrow::after{
  content:"";
  display: block;
  position: absolute;
  bottom:25px;
  right:-25%;
  /*矢印の形状*/    
  width: 15px;
  height:1px;
  background:#4b4b4b;
  -webkit-transform: rotate(35deg);
  -ms-transform:rotate(35deg);
  transform: rotate(35deg);
  /*アニメーションの指定*/
  transition: all .3s;
}
.btnarrow::before{
  content:"";
  display: block;
  position: absolute;
  bottom:20px;
  left: 72%;
  width: 35%;
  height: 1px;
  background:#4b4b4b;
  transition: all .3s;
}
.btnarrow::after{
  display: block;
  content:"";
  position: absolute;
  bottom:25px;
  right: -7%; 
  width: 15px;
  height:1px;
  background:#4b4b4b;
  -webkit-transform: rotate(35deg);
  -ms-transform:rotate(35deg);
  transform: rotate(35deg);
  /*アニメーションの指定*/
  transition: all .3s;
}
/*hoverした際の移動*/
.btnarrow:hover::before{
    left:76%;
}
.btnarrow:hover::after{
    right:-11%;
}
@media screen and (max-width:1025px){
}
@media screen and (max-width:600px){
    .contact_wrap{
        width:80%;
    }
    #contact{
        padding: 80px 20px;
    }
}
/*footer*/
footer{
    /*background: #7FC7D9;*/
    background:#4b4b4b;
    color:#ffffff;
    text-align: center;
}
.footer_wrap{
    padding: 80px 40px;
}
.footer_content_1 img{
    width: 80px;
    margin: 0 auto;
}
.footer_content_1 p{
    margin-top: 20px;
    font-size: 1rem;
}
.footer_nav{
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 2vw;
    flex-wrap: wrap;
}
@media screen and (max-width:1025px){
}
@media screen and (max-width:600px){
    .footer_content_1 img{
        width: 70px;
        margin: 0 auto;
    }
    .footer_wrap{
        padding-left: 20px;
        padding-right: 20px;
    }
    .footer_nav{
        margin-top: 30px;
        gap: 4vw;
    }
}