.address-list-section{
    padding: 100px 0;
}
.questionnaire-main-title{
    font-size: 30px;
    font-weight: bold;
    text-align: center;
}
.address-list-section{
    background-color:#f6f6f6;
}
.address-header{
    display: flex;
    max-width: 1100px;
    width: 85vw;
    margin: 0 auto;
}
.address-list-title{
    font-size:45px;
    margin-bottom: 20px;
}
.address-list-lead{
    font-size:16px;
    line-height:26px;
}
.address-list-lead-image{
    width: 343px;
    margin-left: 50px;
    object-fit: contain;
}
.section-big{
    max-width: 1100px;
    width: 90.624vw;
    padding: 35px calc((100vw - 1100px) / 2) 0;
    box-sizing: content-box;
}
.section-open-hour{
    margin-bottom: 10px;
    margin-left: 50px;
    display: flex;
    align-items: center;
}
.open-hour-label{
    display: block;
    font-size: 20px;
    margin-right: 10px;
}
.open-hour-title{
    font-size: 28px;
    margin-right: 10px;
}
.open-hour-note{
    font-size: 16px;
}
.address-section{
    position: relative;
    background-color: #fff;
    width:260px;
}
.address-pref-section{
    margin-bottom: 40px;
}
.address-section:nth-child(2n){
    margin-right:0;
}
.address-section-inner{
    margin:0 auto;
    padding: 0 20px 20px;
}
.address-section::before{
    content: "";
    border-top: 10px solid #003E8B;
    border-left: 10px solid #003E8B;
    border-right: 10px solid transparent;
    border-bottom: 10px solid transparent;
    display: block;
    width: 10px;
    height: 10px;
    box-sizing: border-box;
}
.address-section-pref{
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
}
.address-section-pref-title{
    font-size: 20px;
    color: #003E8B;
    margin-bottom:15px;
}
.address-section-place{
    font-size: 20px;
    color: #515151;
    margin-bottom: 15px;
}
.address-section-place p{
    font-size: 26px;
}
.address-section-postcode ,
.address-section-address{
    font-size: 18px;
    color: #515151;
}
.address-section-address{
    min-height: 3em;
    margin-bottom: 1em;
}

.address-section-tel{
    font-size: 29px;
    display: flex;
    align-items: center;
    color: #515151;
}

.address-section-tel > img{
    width:20px;
    height:20px;
}
.address-list{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.section-big:nth-child(even){
    background-color:#F6F6F6;
}
.address-section-map{
    position: absolute;
    right: 35px;
    bottom: 33px;
    padding-right:0;
    font-weight:bold;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}
.blue-dot::before{
    color: #003E8B;
}
.icon-list{
    display:flex;
    margin-top: -10px;
    column-gap: 10px;
    margin:0 0 10px 60px;
}
.event-icon{
    padding: 3px 10px;
    height: 30px;
    border-radius: 15px;
    border: solid 1px #b9b9b9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 1.08px;
    text-align: center;
    margin-top: 10px;
}
.event-icon{
    background-color: #003E8B;
    color: #fff;
}
.section-big-title{
    margin-bottom: 0;
}
@media (max-width:768px) {
    .section-big{
        padding:30px 0 0;
    }
    .address-list-title{
        font-size: 35px;
    }
    .address-header{
        flex-direction: column;
        width:90.624vw;
        margin:0 auto;
    }
    .address-list-lead-image{
        width: calc(375/750*100vw);
        margin: 20px 0 0;
    }
    .section-open-hour{
        margin:0 auto 20px;
        display: block;
    }
    .open-hour-label ,
    .open-hour-title{
        margin:0;
    }
    .open-hour-title{
        font-size: 24px;
    }
    .address-section-pref{
        width: 100%;
        margin: 0 auto 20px;
        height: auto;
    }
    .address-section-tel{
        position: static;
    }
    .address-section{
        width:100%;
        height: auto;
        min-height:0;
        margin:0 auto 20px;
    }
    .address-section-inner{
        width: calc(100% - 40px);
        margin-top: -15px;
    }
    .address-section-place ,
    .address-section-place p{
        font-size: 18px;
    }
    .address-section-postcode, .address-section-address{
        font-size: 16px;
        width: 100%;
    }
    .address-section-tel{
        font-size: 20px;
        margin: 10px 0;
    }
    .address-section-map{
        bottom: 10px;
    }
    .address-section-place{
        margin-bottom: 5px;
    }
    .address-section-pref-title{
        margin-bottom: 18px;
        font-size: 20px;
    }
    .section-big-title{
        text-indent: calc(-1em - 0.4em);
        margin-left: 1.4em;
    }
    .section-big:nth-child(even){
        padding-left: 4.688vw;
        padding-right: 4.688vw;
    }
    .page-contents{
        margin-bottom:0;
    }
    .open-hour-label{
        margin-top: 10px;
    }
    .icon-list{
        margin-left: 8vw;
    }
}