@charset "utf-8";

body {
    /* opacity: 0; */
    transition: opacity 3s; /* フェードインの時間を3秒に設定 */
    background-color: #eeeeee;
}
body.fade-in {
    opacity: 1;
}

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html{
    width: 100%;
    height: 100%;
}
header{
    width: 100%;
    height: 125px;
    background-color: #b5afb5;
    color: white;
    letter-spacing: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    z-index: 120;
    padding-left: 5%;
    padding-right: 5%;
}
.main-title{
    word-wrap: break-word;
}
.main-img img{
    width: 100px;
}
.main-menu{
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
    letter-spacing: .2rem;
}
.main-menu-icon img{
    width: 3rem;
    margin-right: 15px;
    align-items: center;
}
.main-menu-icon img:hover{
    opacity: .5;
    transition: .5s;
}
.main-menu a{
    display: block;
    color: white;
    text-decoration: none;  
}
.main-menu-item:hover{
    color: rgba(255, 255, 255, 0.44);
    transition: .3s;
}
.main-menu a::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 97%;
    height: 2px;
    background:#0481A2;
    transition: all .3s;
    transform: scale(0, 1);
    transform-origin: center top;
}
.main-menu a:hover::after{
    transform: scale(1, 1);
}
@media(max-width:720px){
    .main-title h1{
        width: 360px;
    }
}
@media(max-width:450px){
    .main-title h1{
        width: 200px;
    }
}
@media(max-width:360px){
    .main-title h1{
        width: 150px;
        transform: translateX(25px);
    }
}



/* ハンバーガーメニュー　ーーーーーーー */
.menu-icon{
    position: absolute;
    top: 30px;
    right: 30px;
    width: 60px;
    height: 60px;
    opacity: 0;
    border-radius: 25% ;
    border: 1px solid white;
    z-index: 10;
}
@media(max-width:450px){
    .menu-icon{
        width: 40px;
        height: 40px;
        position: absolute;
        top: 40px;
        right: 30px;
    }
}
.menu-icon00{
    margin: 0 auto;
    height: 1px;
    width: 35px;
    background-color: white;
    display: flex;
    transform: translateY(20px);
}
@media(max-width:450px){
    .menu-icon00{
        transform: translateY(8px);
        width: 25px;
    }
}
.menu-icon01{
    margin: 0 auto;
    height: 1px;
    width: 35px;
    background-color: white;
    display: flex;
    transform: translateY(30px);
}
@media(max-width:450px){
    .menu-icon01{
        transform: translateY(18px);
        width: 25px;
    }
}
.menu-icon02{
    margin: 0 auto;
    height: 1px;
    width: 35px;
    background-color: white;
    display: flex;
    transform: translateY(40px);
}
@media(max-width:450px){
    .menu-icon02{
        transform: translateY(28px);
        width: 25px;
    }
}
.menu-icon.active div:nth-child(1){
    transform: rotate(45deg) translate(20px,20px);
    transition: .5s;
}
@media(max-width:450px){
    .menu-icon.active div:nth-child(1){
        transform: rotate(45deg) translate(14px,13px);
    }
}
.menu-icon.active div:nth-child(2){
    opacity: 0;
    transition: .5s;
}
.menu-icon.active div:nth-child(3){
    transform: rotate(-45deg) translate(-20px,20px);
    transition: .5s;
}
@media(max-width:450px){
    .menu-icon.active div:nth-child(3){
        transform: rotate(-45deg) translate(-12px,12px);
    }
}
@media (max-width:768px){
    .menu-icon{
        opacity: 1;
    }
    .main-menu{
        display: none;
    }
    .main-title{
        font-size: .6rem;
        position: absolute;
        left: 25%;
        flex-wrap: wrap;
    }
}
.nav-menu{
    position: fixed;
    top: 0;
    right: 0;
    width: 350px;
    height: 100%;
    background-color: rgb(121, 81, 81);
    padding-left: 30px;
    padding-right: 30px;
    display: none;
}
.nav-menu li{
    margin-top: 120px;
    font-weight: 600;
    font-size: 1.2rem;
    flex-direction: column;
    list-style: none;
    cursor: pointer;
}
.nav-menu a{
    text-decoration: none;
    color: white;
}
.nav-item00{
    padding-top: 100px;

}
.nav-menu.active{
    display: block;
    transition: .5s;
}
.nev-item00-a00{
    padding-left: 25px;
}





/* main------------------ */
.section00 {
    display: flex;
    text-align: center;
    padding-left: 60px;
    padding-right: 60px;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.section00 img{
    width: 280px;
    object-fit: cover;
    margin: 0;
    padding: 0;
    /* vertical-align: top; */
    display: block;
}
@media(max-width:1200px){
    .section00 img{
        width: 230px;
    }
    .section00{
        margin-left: 30px;
        margin-right: 30px;
    }
}
.section00 img:hover{
    transition: .3s;
    cursor: pointer;
}
.section00 a{
    text-decoration: none;
    color: #000033;
    justify-content: left;
    text-align: left;
    margin: 0;
    padding-top: 170px;
}
.section00 p{
    margin-top: 20px;
    font-size: .85rem;
}
.section00 h2{
    word-wrap: break-word;
    font-size: 1.5rem;
    margin-top: 20px;
    font-weight: 800;
    font-family: "BIZ UDPMincho", serif;
}
.section00 img{
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}


/* 文字のフォント */
.section00 p{
    font-weight: 600;
    font-family: "BIZ UDPMincho", serif;
    font-style: normal;
}



/* footer---------- */
footer{
    background-color: #b5afb5;
}
.map{
    width: 100%;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.section01{
    position: relative;
    display: flex;
    justify-content: space-between;
    margin-left: 60px;
    margin-right: 60px;
    align-items: center;
    color: white;
}
.footer{
    margin-right: 200px;
    padding-top: 20px;
}
.footer p{
    padding-top: 30px;
}
.footer a{
    color: white;
}
.footer-item00{
    font-weight: 600;
}
.footer-item01{
    transform: translateY(-20px);
}
.footer-item02{
    transform: translateY(-40px);
}
.ltb{
    color: white;
    text-align: center;
    margin-top: 30px;
    padding-bottom: 5px;
}
@media(max-width:1200px){
    .footer{
        margin-left: 100px;
    }
}
@media(max-width:1000px){
    .section01{
        display: block;
    }
    .footer{
        width: 100%;
        padding: 0;
        margin: 40px 0 0 0 ;
        text-align: center;
    }
}




/* 位置の調整・レスポンシブ対応ーーーーーー */
.section00-content04{
    transform: translateY(-200px);
}
.section00-content05{
    transform: translateY(-100px);
}
.section00-content06{
    transform: translateY(-150px);
}


.section00-content08{
    transform: translateY(-400px);
}
.section00-content09{
    transform: translateY(-100px);
}
.section00-content10{
    transform: translateY(-450px);
}
.section00-content11{
    transform: translateY(-100px);
}

@media(min-width:750px)and(max-width:980px){
    .section00-content03{
        transform: translateY(-100px) !important;
    }
    .section00-content04{
        transform: translateY(-50px) !important;
    }
    .section00-content05{
        transform: translateY(-80px) !important;
    }
    .section00-content06{
        transform: translateY(-230px) !important;
    }
    .section00-content07{
        transform: translateY(-270px) !important;
    }
    .section00-content08{
        transform: translateY(-100px) !important;
    }
    .section00-content09{
        transform: translateY(-450px) !important;
    }
    .section00-content10{
        transform: translateY(-300px) !important;
    }
    .section00-content11{
        transform: translateY(-300px) !important;
    }
}
@media(max-width:750px)and(min-width:620px){
    .map iframe{
        width: 400px;
        height: 400px;
    }
    .section00{
        margin-left: 100px;
        margin-right: 100px;
    }
    .main-title{
        letter-spacing: .7rem;
    }

}
@media(max-width:660px){
    .section00{
        margin-left: 100px;
        margin-right: 100px;
    }
    .section00 img{
        width: 200px;
    }
}
@media(max-width:620px){
    header{
        width: 100%;
    }
    .map iframe{
        width: 100%;
        height: 300px;
    }
    .main-img img{
        width: 70px;
    }
    .section00{
        width: 100%;
        display: flex;
        padding-left: 15px;
        padding-right: 15px;
        margin-left: 0;
        margin-right: 0;
        padding-top: 30px;
        flex-direction: row;
        margin-bottom: -400px; 
    }
    .section00 a{
        padding-top: 150px;
        padding-bottom: 0;
        margin-top: 0;
        margin-bottom: 0;
    }
    .main-title{
        font-size: .4rem;
        letter-spacing: .4rem;
        width: 200px;
        /* transform: translateX(30px); */
    }
    .section00 p{
        word-wrap: break-word;
    }
    .section00 img{
        width: 150px;
    }
    .section00-content02{
        transform: translateY(-100px) !important;
    }
    .section00-content05{
        transform: translateY(20px) !important;
    }
    .section00-content06{
        transform: translateY(-370px) !important;
    }
    .section00-content07{
        transform: translateY(-10px) !important;
    }
    .section00-content08{
        transform: translateY(-400px) !important;
    }
    .section00-content09{
        transform: translateY(-460px) !important;
    }
    .section00-content10{
        transform: translateY(-300px) !important;
    }
    .section00-content11{
        transform: translateY(-500px) !important;
    }
    .section00-img00{
        height: 300px;
    }
    .section00-img01{
        height: 400px;
    }
    .section00-img02{
        height: 350px;
    }
    .section00-img03{
        height: 500px;
    }
    .section00-img04{
        height: 400px;
    }
    .section00-img05{
        height: 600px;
    }
    .section00-img06{
        height: 300px;
    }
    .section00-img07{
        height: 500px;
    }
    .section00-img08{
        height: 300px;
    }
    .section00-img09{
        height: 300px;
    }
    .section00-img10{
        height: 400px;
    }
    .section00-img11{
        height: 400px;
    }
    @keyframes section00-content02{
        from{
            transform: translateY(0);
        }to{
            transform: translateY(100px);
        }
    }
}






.kosugi-maru-regular {
    font-family: "Kosugi Maru", sans-serif;
    font-weight: 400;
    font-style: normal;
  }
  