@charset "UTF-8";
/*
Theme Name: BEYOND_child
Template: beyond_tcd094
Theme URI:
Description: WordPressテーマ「BEYOND」child
Author: Design Plus
Author URI: https://design-plus1.com/tcd-w/
Version: 6.7.1
Text Domain: tcd-w
*/


/*************************
/* flex-box
*************************/
.flex-box {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.flex-box-nowrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.flex-box-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex-box-row-rever {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.flex-box-space-b {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flex-box-space-a {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.flex-box-space-c {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.flex-box-item-c {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}


/*******************************
*中央寄せ
*******************************/
.center-type1 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    text-align: center;
}

.center-type2 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.center-type3 {
    position: absolute;
    top: 0%;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
}

.center-type4 {
    position: absolute;
    top: 50%;
    left: 0%;
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}


/*******************************
*テキスト位置
*******************************/
.text-left{text-align: left;}
.text-center{text-align: center;}
.text-right{text-align: right;}


/*******************************
*フォント
*******************************/
.fontsz1rem{font-size: 1rem !important;}
.fontsz2rem{font-size: 2rem !important;}
.fontsz3rem{font-size: 3rem !important;}
.fontsz4rem{font-size: 4rem !important;}
.fontsz5rem{font-size: 5rem !important;}
.font-bold{font-weight: bold !important;}


/*******************************
*list
*******************************/
.li-style{
    list-style: disc !important;
}

.li-style_no{
    list-style: none !important;
}


/*******************************
*layout
*******************************/


/*******************************
*column
*******************************/
.c-col2{
    flex: 1 0 50%;
}

.img-colm2 > div{
    flex: 1 0 50%;
    padding: 5px;
}

.img-colm2 > div img{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/*******************************
*color
*******************************/
.color-main{
    color: #00a040;
}

.color-main-bg{
    background-color: #00a040;
}


/*******************************
*header
*******************************/
#header_slider_wrap,
#header_slider,
#header_slider .item{
    height: 100vh !important;
}

#header_slider_wrap .svg_wrap{
    display: none;
}

@media screen and (min-width: 1302px) {
}

@media screen and (max-width: 550px) {
}


/*******************************
*footer
*******************************/
#footer_box_content .item{
    max-width: fit-content;
}

#footer_box_content .item:not(:first-child){
    display: none;
}

#footer_logo{
    margin-bottom: 0;
}

#footer_logo .logo{
	width: fit-content;
    margin-inline: auto;
}

#footer_box_content .item_list{
    justify-content: center !important;
}


/*******************************
*hero
*******************************/


/*******************************
*youtube
*******************************/


/*******************************
*animation
*******************************/


/*******************************
*component
*******************************/


/*******************************
*element
*******************************/
.banner-content{
    width: 100%;
    height: 450px;
    position: relative;
    overflow: hidden;
}

.banner-content > .content{
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 1.25rem;
    z-index: 5;
    box-sizing: border-box;
}

.banner-content > .content > p{
    margin-bottom: 2rem;
    color: #fff;
    font-size: 1.625rem;
}

.banner-content > .content > h2{
    margin-top: 0rem !important;
    color: #fff;
    font-size: 2rem !important;
}

.banner-content > .content h2 > span{
    font-size: 1.375rem;
}

.banner-content > .content h2 > span:not(.mobile-br){
    display: block;
}

.banner-content > .content a.design_button {
    color: #000;
    background-color: #f3b80a;
}

.banner-content > .content .design_button:before{
    color: #000;
    background-color: #f79800;
}

.banner-content .overlay {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 3;
}

.banner-content .bg_image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

.banner-content .bg_image img {
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
    object-fit: cover;
}

@media only screen and (max-width: 750px) {
    .banner-content{
        height: 440px;
    }
    .banner-content > .content{
        min-height: 140px;
        height: 100%;
    }
    .banner-content > .content > p{
        font-size: clamp(1.125rem,3.4666vw,1.5rem);
        line-height: 1.375;
    }
    .banner-content > .content > h2{
        font-size: clamp(1.25rem,4.2666vw,2rem) 2rem !important;
    }
    .banner-content > .content h2 > span{
        font-size: 1rem;
    }
    .banner-content .mobile-br::after {
        content: "\A";
        white-space: pre;
    }
}


/*******************************
*home
*******************************/
.services-section > div.flex-box{
    gap: 40px 20px;
    box-sizing: border-box;
}

.services-section > div.flex-box > div{
    flex-basis: calc(50% - 10px);
    margin: 0 0;
}

.reasons-section > div.flex-box{
    gap: 40px 20px;
    box-sizing: border-box;
}

.reasons-section > div.flex-box > div{
    flex-basis: calc(33.333% - 14px);
    margin: 0 0;
}

.reasons-section > div.flex-box > div h3{
    font-size: 1.5rem !important;
}

@media only screen and (min-width: 1900px) {
}

@media only screen and (max-width: 1301px) {
}

@media only screen and (max-width: 750px) {
}


/*******************************
*design content
*******************************/
@media screen and (max-width:1301px) {
}

@media screen and (max-width:950px) {
}

@media screen and (max-width:750px) {
}

@media screen and (max-width:550px) {
}


/*******************************
*固定ページ
*******************************/
/* お問い合わせ */
body.contact .post_content a{
    color: #e43434;
}

body.contact .post_content a:hover{
    color: rgba(0, 0, 0, 0.6);
}


/*******************************
*投稿・カテゴリ・アーカイブページ
*******************************/
.single-news #main_contents:before{
    content: none;
}

.single-news #main_col{
    width: auto;
}

.single-news #side_col{
    display: none;
}

/*************************
/* reCAPTCHA
*************************/
.grecaptcha-badge{
    display: none;
}
