@charset "UTF-8";
/* 文字コードの指定 */
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
html {
    font-size: 62.5%;
}

body {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.75;
    color: #000;
    background-color: #fff;
    font-family: 'Zen Maru Gothic', "HGP創英角ｺﾞｼｯｸUB" ,sans-serif;
}
@media (min-width: 769px) {
  body {
    font-size: 1.6rem;
  }
}

img{
    width: 100%; /**/
    height: auto; /**/
    background-position: center center; /*背景画像の場所指定*/
    background-repeat: no-repeat; /*背景画像をリピートさせない*/
    background-size: cover; /**/
}

footer {
    /*font-size: 1.2rem;*/
    background-color: #000;
    color: #fff;
    text-align: center;
    padding: 1.0rem;
}

i {
    color: #1e0867;
}

li {
    list-style: none;
    font-weight: 500;
    font-size: 1.8rem; 
}

h2 {
    position:relative;
    font-family: "HGP創英角ｺﾞｼｯｸUB";
    font-weight: 500;
    font-size: 4.8rem;
    text-align: center;
    color: #404571;
    /*width: 60%;*/
    margin: 4rem auto;
    /*height: 4.6rem;*/
    /*border-left: 1.0rem solid #c85870;*/
    display: inline-block;
    /*margin-left: 5rem;*/
}

h2::before {
   content: "";
   /*display: inline-block;*/
   width: 1.0rem;
   height: 4.6rem;
   background-color: #c85870;
   position: absolute;
   top: 2rem;
   left: -4.0rem;
   vertical-align: center;
}

.main {
    background-color: #e6f4f9;
    padding-bottom: 3.0rem;
    padding-top: 1.0rem;
}

.main-title {
    text-align: center;
}

.cover {
    position: relative;
    padding-bottom: 1.5rem;
}

.logo {
    /*width: 20px;*/
    /*height: auto;*/
    display: flex;
    position: absolute;
    top: 5%;
    left: 0%;
    padding: 0;
    margin: 0;
    align-items: center;
    background-color: #ffffffB3;
    padding-left: 3.0rem;
}

.cover-text {
    width: 100%;
    font-size: clamp(1.0rem, 5.0vw, 4.8rem);
    position: absolute;
    bottom: 5%;
    text-align: center;
    font-weight: bold;
    color: #e6b00c;
}

.cover-text p{
    margin-bottom: 5.0rem;
}

.nakadenki {
    font-family: "HGP創英角ｺﾞｼｯｸUB";
    font-size: clamp(2.0rem, 10.0vw, 6.0rem);
    margin: 0;
    padding: 0 2.0rem;
}

.logo-mark {
    width: clamp(2.0rem, 10.0vw, 4.0rem);
    height: clamp(2.0rem, 10.0vw, 4.0rem);
}

.contact {
    display: flex;
    flex-flow: column;
    /*position: absolute;*/
    top: 100%;
    left: 0%;
    width: 100%;
    gap: 0.2rem;
}

.tel , .mail {
    display: flex;
    margin: 0 auto;
    color: #000000;
    align-items: baseline;
    line-height: 0;
}

.tel {
    font-size: clamp(2.0rem, 8.8vw, 6.0rem);
}

.mail {
    font-size: clamp(2.0rem, 8.0vw, 6.0rem);
    text-shadow:
        1.5px 1.5px 0px #fff, -1.5px -1.5px 0px #fff,
        -1.5px 1.5px 0px #fff,  1.5px -1.5px 0px #fff,
        1.5px 0px 0px #fff, -1.5px -0px 0px #fff,
        0px 1.5px 0px #fff,  0px -1.5px 0px #fff;
}

.fab {
    font-size: clamp(2.0rem, 8.0vw, 6.0rem);
    margin-right: 7px;
}

.main h3 {
    font-size: 3.6rem;
    font-weight: 500;
}

.container {
    display: flex;
    flex-direction: column;
    width: 90%;
    margin: 0 auto;
    gap: 5.0rem;
}

.item-box {
    box-shadow: 0px 3px 7px 0px rgb(0 0 0 / 35%);
    background-color: #fff;
    position: relative;
}

.item-box h3 {
    position: absolute;
    margin: 0;
    margin-top: 0.5rem;
    top: 1.5%;
    left: 7%;
}

.main-pc-text {
    display: none !important;
}

.main-bottom1 {
    font-size: 2.0rem;
    font-weight: bold;
    color: #e6b00c;
    text-align: center;
}

.main-bottom2 {
    font-size: 1.4rem;
    font-weight: bold;
    color: #c85870;
    text-align: center;
}

.information-box {
    display: flex;
    width: 90%;
    margin: 0 auto;
    align-items: baseline;
    color: #5a785a;
    font-size: 3.0rem;
    gap: 1.0rem;
    margin-bottom: 0.3rem;
}

.information-box .far {
    font-size: 2.4rem;
    color: #5a785a;
}

.information {
    text-align: center;
    margin-bottom: 6.0rem;
    margin-top: 7.2rem;
}

.information h2{
    /*width: 72%;*/
    margin: 3.3rem auto;
}

.information-container {
    width: 90%;
    margin: 0 auto;
    background-image: linear-gradient(to right, #CCCCCC, #CCCCCC 9px, transparent 9px, transparent 9px);
    background-size: 1.3rem 2.5px;
    background-position: left bottom; 
    background-repeat: repeat-x;
    padding-bottom: 3.3rem;
}

.bottom-img {
    position: relative;
    margin-bottom: 1rem;
}

.bottom-text-title {
    position: absolute;
    margin: 0;
    top: 0%;
    left: 6.0%;
    font-weight: 900;
    font-size: 3.0rem;
    color: #c8536c;
    background-color: #ffffffB3;
    padding: 1.5rem 0;
    writing-mode: vertical-rl;
    /*transform: translateY(-50%) translateX(-50%);*/
}

.bottom-text-title span {
    -webkit-text-combine: horizontal;
    -ms-text-combine-horizontal: all;
    text-combine-upright: all;
    text-align: center;
}

.bottom-text {
    position: absolute;
    top: 5%;
    left: 0;
    font-weight: 500;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
    margin: 0 auto;
    width: calc(100% - (6% + 5.2rem));
    padding-left: calc(6% + 5.2rem);
}

.bottom-text.pc {
    display: none !important;
}


.date {
    font-weight: 900;
    margin: 0;
}

.content {
    color: #2f22d5;
    font-size: 2.4rem;
    font-weight: 500;
    margin: 0;
    text-align: right;
    width: 90%;
}

.contact-bottom {
    background-color: #e7f7e2;
    text-align: center;
    padding: 1.5rem 0;
}

.contact-bottom-title {
    color: #404571;
    font-size: 3.0rem;
    font-weight: 900;
}

.contact-bottom .tel,.contact-bottom .mail {
    width: 90%;
    margin-top: 4.5rem;
    justify-content: center;
    text-shadow: unset;
}

.contact-text {
    margin: 0;
    margin-left: 1.7rem;
    font-weight: bold;
}

.notes {
    color: #74a374;
    margin: 0;
    font-weight: bold;
    line-height: 1.3rem;
    margin-top: 1.5rem;
}

.infor {
    color: #c8536c;
    font-weight: bold;
    font-size: 1.8rem;
    margin-top: 4.0rem;
    line-height: 2.5rem;
    padding-bottom: 1.3rem;
}

.contact-bottom .fab ,.contact-bottom .fas{
    color: #404571;
}

.infor p{
    margin: 0;    
}

.time ,.holiday {
    display: flex;
    justify-content: space-between;
   /*width: 25%;*/
    /*width: 22vh;*/
    margin: 0 auto;
    max-width: 20rem;
}

.mail .contact-text {
    position: relative;
    /*left: 2vh;*/
}

@media (min-width: 769px) {
    
    h2 {
        font-size: 7.2rem;
    }
    
    h2::before {
        height: 7.6rem;
        width: 1.6rem;
        top: 2.7rem;
        left: -10rem;
    }
    
    .logo {
        background-color: #000000B3;
        color: #ffffff;
    }

    .nakadenki {
        letter-spacing: 2.0rem;
        padding-left: 3.0rem;
    }

    .mail {
        text-shadow: unset;
        }

    .container {
        flex-direction: unset;
        width: 85%;
        gap: 2.0rem;
        margin-bottom: 7.5rem;
    }
    
    .content {
        font-size: 3.6rem;
        text-align: left;
    }

    .bottom-text-title {
        writing-mode: unset;
        top: 6.0%;
        left: 0%;
        font-size: 6.0rem;
        padding: 0 2.0rem;
    }

    .bottom-text-title span {
        -webkit-text-combine: unset;
        -ms-text-combine-horizontal: unset;
        text-combine-upright: unset;
        text-align: center;
    }
    
    .bottom-text.pc {
        display: block !important;
        font-size: 2.4rem;
    }
    
    .bottom-text.sp {
        display: none !important;
    }

    .cover-text {
        bottom: 7%;
        font-weight: 900;
        line-height: 7.0rem
    }
    
    .contact {
        gap: 4.0rem;
    }
    
    .cover {
        padding-bottom: 3.5rem;
    }
    
    .main {
        padding-top: 3.9rem;
    }

    .main-title {
        margin-bottom: 7rem;
    }

    .item-box {
        flex: 1;
    }

    .item-box h3 {
        position: unset;
        left: unset;
        /*margin: unset;*/
        margin: 0;
        margin-left: 3.0rem;
    }
    
    .main-pc-text {
        display: block !important;
        margin-bottom: 5rem;
    }
    
    .main-sp-text {
        display: none !important;
    }
    
    .main-bottom1 {
        font-size: 3.6rem;
    }

    .main-bottom2 {
        font-size: 2.4rem;
    }
    
    .information {
        margin-top: 5rem;
        margin-bottom: 9rem;
    }
    
    .information-box {
        width: 30%;
    }
    
    .information-box .far {
        font-size: 3.6rem;
        /*font-size: 3vw;*/
    }
    
    .date {
        font-size: 3.6rem;
    }
    
    .information-container {
        display: flex;
    }
    
    .bottom-text {
        /*top: 20%;*/
        height: calc(100% + (10% + 3.2rem));
        padding-top: calc(10% + 3.2rem);
        /*top: 22vh;*/
        left: 0;
        width: unset;
        padding-left: unset;
    }
    
    .bottom-img {
        margin-bottom: 1.5rem;
    }
    
    .contact-bottom-title {
        font-size: 4.8rem;
        margin-top: 3.5rem;
        margin-bottom: 6.5rem;
    }
    
    .notes {
        font-size: 2.0rem;
        line-height: 1.7rem;
    }
    
    .infor {
        font-size: 3.0rem;
        line-height: 4.8rem;
    }
    
    .time ,.holiday {
         /*width: 40vh;*/
         max-width: 35rem;
    }

}


