@charset "UTF-8";

/*---------------------------------------
        base
---------------------------------------*/

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    font-family: vdl-v7mincho, sans-serif;
    font-style: normal;
    font-weight: 300;
    color: #fff;
    background-color: #1C1C1C;
}

a {
    text-decoration: none;
}

a:visited {
    color: #1A1A1A;
}

.filter {
    filter: brightness(60%);
}


/*---------------------------------------
        footer
---------------------------------------*/

.footer__wrap {
    width: 100vw;
}

.footer__upper {
    /* background-color: #000; */
    height: 70px;
    /* width: 100%; */
    display: flex;
    align-items: center;
    justify-content: center;
}

.copy_small {
    color: #fff;
    font-size: 12px;
}

.footer__under {
    background-color: #3D3C42;
    height: 180px;
    width: 100%;
}


/*---------------------------------------
              inoshin
---------------------------------------*/

.inoshin_footer {
    overflow: hidden;
    background-color: #1C1C1C;
}

.Roboto {
    font-family: 'Roboto', sans-serif;
}

.index_background {
    background: url(../img/inoshin/index03.png) no-repeat center;
    background-size: cover;
    width: 100%;
}

.main_contents {
    max-width: 1440px;
    padding: 0 10px;
    margin: 0 auto;
    width: 100%;
}

.index_logo {
    margin: 0 auto;
    padding: 344px 0;
}

.index_background {
    width: 100%;
    height: 530px;
}

.text_top {
    color: #fff;
    font-size: 30px;
    margin-left: 140px;
    letter-spacing: 8px;
}

.index_text {
    writing-mode: vertical-rl;
    margin-left: 140px;
    margin: 0 auto;
    padding-top: 74px;
}

.text_bottom {
    line-height: 50px;
    font-size: 20px;
    letter-spacing: 5px;
}

.index_background02 {
    background-color: #8E7A55;
    width: 100%;
    height: 226px;
    display: flex;
    align-items: center;
}


/* 
.textbox01 {
    margin-right: 45px;
} */

.textbox01_Ptop {
    font-size: 39px;
}

.textbox01_Pbottom {
    font-size: 80px;
}

.textbox_address {
    display: flex;
    margin-bottom: 23px;
    line-height: 22px;
}


/* .textbox02 {
    font-size: 20px;
    margin-right: 84px;
} */

.textbox02_address01 {
    width: 100px;
}

.textbox02_hours01 {
    width: 100px;
}

.textbox02_holiday01 {
    width: 100px;
}

.index_textBlock {
    display: flex;
    justify-content: center;
    justify-content: space-between;
    align-items: center;
}

.textbox03_telflex {
    display: flex;
    margin-bottom: 20px;
}

.textbox03_tel {
    font-size: 40px;
}

.textbox_img {
    margin-right: 13px;
}

.textbox03_btmborder {
    border: 2px solid #FFFFFF;
    width: 320PX;
    height: 65PX;
}

.textbox03_buttom {
    width: 320px;
    height: 65px;
    background-color: #1C1C1C;
}

.textbox03_background {
    background: url(../img/inoshin/index05.png) no-repeat center;
    background-size: cover;
    width: 326px;
    height: 71px;
    transition: .3s all;
    display: block;
    margin-bottom: 10px;
}

.textbox03_background:hover {
    background: url(../img/inoshin/index06.png) no-repeat center;
    background-size: cover;
    width: 326px;
    height: 71px;
}

.textbox_address:last-child {
    margin-bottom: 0;
}

.textbox03_kome {
    font-size: 14px;
}

.map {
    height: 554px;
}

.footer__company {
    display: flex;
    margin-right: 15px;
}

.footer__wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
}

.scroll-fade {
    opacity: 0;
    transition: all 5s/*処理にかかる時間*/
    ;
}

.scroll-up {
    opacity: 0;
    transform: translateY(100px)/*スクロールアップする距離*/
    ;
    transition: all 5s/*処理にかかる時間*/
    ;
}

.scroll-up.done,
.scroll-fade.done {
    opacity: 1;
    transform: translate(0, 0);
}

.load-fade {
    opacity: 0;
    transition: all 5s/*処理にかかる時間*/
    ;
}

.load-up {
    opacity: 0;
    transform: translateY(100px)/*スクロールアップする距離*/
    ;
    transition: all 5s/*処理にかかる時間*/
    ;
}

.load-up.done,
.load-fade.done {
    opacity: 1;
    transform: translate(0, 0);
}

.tel_span {
    font-size: 26px;
}

@media screen and (max-width: 1250px) {
    .textbox01_Pbottom {
        font-size: 70px;
    }
}

@media screen and (max-width: 1200px) {
    .textbox_address {
        display: block;
    }
    .textbox02_address01 {
        margin-bottom: 5px;
    }
    .textbox02_hours01 {
        margin-bottom: 5px;
    }
    .textbox02_holiday01 {
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 1100px) {
    .index_textBlock {
        display: flex;
        flex-wrap: wrap;
    }
    .textbox01 {
        width: 100%;
        display: flex;
        margin: 0 auto;
        align-items: end;
        justify-content: center;
        margin-bottom: 30px;
    }
    .textbox02 {
        width: 40%;
    }
    .textbox03 {
        width: 52%;
    }
    .index_background02 {
        height: auto;
    }
    .index_textBlock {
        align-items: flex-start;
    }
    .index_background02 {
        padding: 40px 0;
    }
    .textbox01_Ptop {
        font-size: 65px;
        margin-right: 10px;
    }
    .textbox_address {
        margin-bottom: 15px;
    }
    .textbox03 {
        width: auto;
    }
}

@media screen and (max-width: 750px) {
    .index_text {
        writing-mode: horizontal-tb;
        margin: 0 auto;
    }
    .text_top {
        margin-left: 0;
        margin-bottom: 20px;
        text-align: center;
    }
    .text_bottom {
        line-height: 1.7;
        font-size: 16px;
    }
    .textbox01 {
        display: block;
    }
    .text_bottom {
        display: flex;
        justify-content: center;
    }
    .index_textBlock {
        display: block;
    }
    .textbox02_holiday02 {
        margin-bottom: 30px;
    }
    .textbox02 {
        line-height: 1.7;
    }
    .textbox01_Pbottom {
        font-size: 60px;
    }
    .textbox03_tel {
        font-size: 30px;
    }
    .textbox02 {
        width: 100%;
    }
    .textbox03 {
        width: 100%;
    }
    .textbox01_Ptop {
        font-size: 45px;
    }
    .index_textBlock {
        display: flex;
        flex-direction: column;
    }
    .textbox01,
    .textbox02,
    .textbox03 {
        width: 84%;
        display: inline-block;
        margin: 0 auto;
    }
    .text_bottom {
        font-size: 18px;
    }
    .index_text {
        padding-top: 119px;
    }
}

@media screen and (max-width: 500px) {
    .footer__wrap {
        display: block;
    }
    .footer__copyright {
        text-align: center;
    }
    .index_logo {
        padding: 200px 0;
    }
    .textbox03_background {
        width: auto;
        background-size: contain;
    }
    .textbox03_telflex {
        justify-content: center;
    }
}

@media screen and (max-width: 650px) {
    .text_top {
        font-size: 30px;
    }
}

@media screen and (max-width: 750px) {
    .textbox01 {
        margin-bottom: 30px;
    }
}

@media screen and (min-width: 750px) {
    .hours02 {
        display: none;
    }
}


/* PCで電話番号リンクを無効に */

@media (min-width: 751px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}