/*
Theme Name: 商業施設カスタムテーマ
Description: HTML/CSSから移行したオリジナルテーマです。
Version: 1.0
*/

/* ここから下に、もともと書いているCSSが続く */
@charset "UTF-8";
/* ==============================
common
============================== */
html {
    font-size: 62.5%;
}

body {
    font-family: "Noto Sans JP",
    Arial, 
    sans-serif;
    font-style: normal;
    color: #231815;
    background-color: #fff;
}

img {
    max-width: 100%;
    height: auto;
}

.white{
    transition: opacity 0.5s ease;
}

.white:hover{
    opacity: 0.5;
}

/* ==============================
header
============================== */
.logo{
    width: 169.33px;
    height: auto;
    margin-right: 10px;
    z-index: 1000;
    flex-shrink: 0;
}

.kaisyaname__total{
    display: flex;
    padding-top: 16px;
    padding-bottom: 16px;   
}

.kaisyaname__ja{
    font-size: 16px;
    font-family: "Noto Sans JP";
    padding-top: 2px;
    color: #1c2a54;
    font-weight: 800;
    z-index: 1000;
    white-space: nowrap;
}

.menu__item{
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: -1.28px;
    width: 130px;
    text-align: center;
    height: 36px;
    padding-top: 10px;
}

.menu__item--long{
    width: 150px;
}

.menu__item--border{
    border-left: solid 0.5px #231815;

}

.menu__item--bordermenuaccess{
    width: 130px;
    max-width: 1200px;
    text-align: center;
    border-left: solid 0.5px #231815;
}

.header{
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    z-index: 100;
    background-color: #FFF;
    padding: 20px 0 10px 0;
}

.header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px; 
    margin: 0 auto; 
    padding: 0 20px;
}

.header__topic--menu{
    display: flex;
}

.menu__item--borderspmenu{
    display: none;
}

.menu__item--borderpcmenu{
    width: 24px;
    height: auto;
    padding-top: 5px;
    margin-left: 23px;
}

.menu__item--bordermenuaccess{
    border-right: solid 0.5px #231815;
}

/*
TOP SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 1000px) {
    .logo{
        width: 121px;
        
    }
    .kaisyaname__ja{
        color: #1C2A54;
        font-family: "Noto Sans JP";
        font-size: 11.44px;
        font-style: normal;
        font-weight: 900;
        line-height: normal;
    }
    .header {
        justify-content: space-between; 
        align-items: center;
        gap: 0;
        padding: 0;
    }

    .header__topic {
        display: none; 
    }

    .hamburger {
        display: flex;           
        justify-content: center;
        align-items: center;
        width: 78px;            
        height: 78px;           
        background-color: #1C4696; 
        cursor: pointer;
        position: relative;
        border-radius: 0; 
        transition: background-color 0.3s;
        z-index: 1000;
    }

    .hamburger span {
        display: block;
        width: 34px;
        height: 4px;
        background-color: #fff;
        position: absolute;
        left: 22px;
        transition: all 0.3s;
    }

    .hamburger span:nth-child(1) { top: 22px; }
    .hamburger span:nth-child(2) { top: 37px; }
    .hamburger span:nth-child(3) { bottom: 22px; }

    .header__topic {
        position: fixed;
        right: -100%; 
        top: 0;
        width: 100%;
        height: 100vh;
        background-color: #fff;
        z-index: 999;
        transition: all 0.4s; 
        padding-top: 80px;
        display: block;
    }

    .header__topic--menu{
        display: block;

    }

    .header__topic.is-active {
        right: 0;
    }

    .menu__item {
        height: 80px;
        width: 90%;
        border-bottom: 1px solid #9f9f9f;
        margin: 0 auto;
        list-style: none;
        border-left: none;
        padding-top: 20px;
    }

    .menu__item a {
        display: flex;  
        align-items: center;         
        justify-content: space-between; 
        
        width: 100%;                
        height: 100%;                
        
        font-size: 16px;
        font-weight: bold;
        color: #231815;
        text-decoration: none;       
        box-sizing: border-box;        
        padding: 0 20px;                
    }

    .menu__item a::after {
        content: "";
        display: block;
        width: 8px;
        height: 8px;
        border-top: 2px solid #231815;  
        border-right: 2px solid #231815; 
        transform: rotate(45deg);       
    }

    .black-bg {
        position: fixed;
        left: 0;
        top: 0;
        width: 100vw;
        height: 100vh;
        background-color: #fff;
        z-index: 998;
        opacity: 0;
        visibility: hidden;
        transition: all 0.4s;
    }

    .black-bg.is-active {
        opacity: 1;
        visibility: visible;
    }

    .hamburger.is-active span:nth-child(1) {
        top: 37px;
        transform: rotate(45deg);
    }

    .hamburger.is-active span:nth-child(2) {
        opacity: 0;
    }

    .hamburger.is-active span:nth-child(3) {
        top: 37px;
        transform: rotate(-45deg);
    }

    .header__inner {
        display: flex;
        justify-content: space-between; 
        align-items: center;
        width: 100%;
        max-width: 1050px; 
        margin: 0 auto;   
        padding: 0 0 0 20px; 
        box-sizing: border-box;
    }

    .kaisyaname__total{
        display: flex;
        padding-top: 20px;
        padding-bottom: 16px;   
    }

    .menu__item--borderpcmenu{
        display: none;
    }

    .menu__item--borderspmenu{
        display: block;
    }

    .menu__item--bordermenuaccess{
        border-right: none;
    }
}


/* ==============================
FV
============================== */
.main-visual {
    display: flex;
    justify-content: center;
    max-width: 1280px;
    margin-top: 110px;
}

.arrow-container {
    width: 50px;         
    height: 50px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;      
}

.arrow-right, .arrow-left {
    position: relative;
    display: inline-block;
    padding: 18px;
    border-radius: 50%;
    background-color: #C8C8C8;
}

.arrow-right::before {
    content: '';
    width: 14px;
    height: 14px;
    border-top: solid 4px #fff;
    border-right: solid 4px #fff;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-135deg);
    left: 55%;
}

.arrow-left::before {
    content: '';
    width: 14px;
    height: 14px;
    border-top: solid 4px #fff;
    border-right: solid 4px #fff;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    left: 45%;
}

.arrow-container.swiper-button-prev::after,
.arrow-container.swiper-button-next::after {
    display: none;
}

.main-visual > .swiper-wrapper {
    display: flex !important; 
    flex: 1;              
    max-width: 1150px;       
    height: 100%;
    overflow: hidden;        
    position: relative;
}

.mainImg {
    flex-shrink: 0;        
    width: 100%;
    height: 100%;
}

.mainImg__pic {
    width: 1150px;
    height: 600px;
    object-fit: cover;
    display: block;
}

.swiper-wrappersp{
    display: none;
}


/*
FV SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
.mainImg picture {
    display: block;
    width: 100%;
    height: 100%;
}

@media (max-width: 1000px) {
    .main-visual {
        width: 100%;
        max-width: 100%;
        height: 500px;      
        position: relative;  
        display: block;     
        gap: 0;              
        margin: 0 auto;
        margin-top: 80px;
    }

    .main-visual > .swiper-wrapper {
        width: 100%;
        max-width: 100%;
        height: 100%;
    }

    .mainImg__pic {
        width: 100%;
        height: 500px;      
        object-fit: cover;
        object-position: center;
        display: block;
    }

    .arrow-container {
        position: absolute;
        top: 50%;           
        z-index: 10;
        width: 45px;
        height: 45px;
    }

    .arrow-right-box {
        left: 15px; 
    }

    .arrow-left-box {
        right: 15px;
    }
   
    .arrow-right, .arrow-left {
        padding: 15px;
        background-color: rgba(255, 255, 255, 0.8); 
    }

    .arrow-right::before,
    .arrow-left::before {
        border-top: solid 4px #333;
        border-right: solid 4px #333;
    }
}

@media (max-width: 800px) {
    .main-visual {
        height: 430px;   
    }

    .mainImg__pic {
        height: 430px;   
    }
}

@media (max-width: 600px) {
    .main-visual {
        height: 370px;     
    }

    .mainImg__pic {
        height: 370px;    
    }
}

@media (max-width: 480px) {
    .main-visual {
        height: 250px;    
    }

    .mainImg__pic {
        height: 250px;    
    }
}

  


/* ==============================
SNS
============================== */

.LINE__txt {
    font-size: 44px;
    font-family: "Zen Maru Gothic";
    color: #06C755;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 40px;
}

.account__ID{
    font-size: 23px;
    font-family: "Zen Maru Gothic";
    color: #2C2C2C;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.yuudou{
    font-size: 18px;
    font-family: "Zen Maru Gothic";
    color: #fff;
    font-weight: 500;
    background-color: #06C755;
    border-radius: 20px;
    width: 274px;
    height: 28.38px;
    text-align: center;
    padding-top: 2.5px;
    letter-spacing: 1px;
}

.account{
    display: flex;
    gap: 12px;
    margin-top: 10px;
}

.LINEicon , .Instagramicon{
    width: 78.35px;
    height: 78.35px;
    margin-right: 15px;
}

.LINE__1{
    display: flex;
    width: 560px;
    height: 130px;
    border: #06C755 solid 3px;
    padding: 23px 21px;
    align-items: center;
    letter-spacing: 0.5px;
}

.Instagram__txt{
    font-size: 45px;
    font-family: "Zen Maru Gothic";
    color: #F44991;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 40px;
}

.yuudouI{
    font-size: 18px;
    font-family: "Zen Maru Gothic";
    color: #fff;
    font-weight: 500;
    background-color: #F44991;
    border-radius: 20px;
    width: 190px;
    height: 28.6px;
    text-align: center;
    padding-top: 2.5px;
    letter-spacing: 1px;
}

.account__IDI{
    font-size: 23px;
    font-family: "Zen Maru Gothic";
    color: #2C2C2C;
    font-weight: 700;
}

.Instagram__1{
    display: flex;
    width: 560px;
    height: 130px;
    border: #F44991 solid 3px;
    padding: 23px 21px;
}

.section__SNS{
    display: flex;
    margin-top: 80px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
}

/*
FV SNS
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .section__SNS{
        flex-direction: column;
        margin-top: 20px;
        align-items: center;
        gap: 0px;
    }

    .LINE__1{
        width: 335px;
        height: 78px;
        border: #06C755 solid 2px;
        padding: 10px 15px;
    }

    .Instagram__1{
        width: 335px;
        height: 78px;
        border: #F44991 solid 2px;
        padding: 10px 15px;
        align-items: center;
        margin-top: 20px;
    }

    .LINEicon {
        width: 46px;
        height: 46px;
        margin-right: 14px;
    }

    .Instagramicon{
        width: 46px;
        height: 46px;
        margin-right: 10px;
    }

    .LINE__txt {
        font-size: 25.5px;
        font-weight: 700;
        line-height: 1.2;
        letter-spacing: 0.5px;
    }

    .Instagram__txt{
        font-size: 26px;
        font-weight: 700;
        letter-spacing: 0.5px;
        line-height: 1.1;
    }


    .account__ID{
        font-size: 14px;
        font-weight: 800;
    }

    .account__IDI{
        font-size: 14px;
        font-weight: 800;
    }

    
    .yuudou{
        font-size: 10.5px;
        color: #fff;
        font-weight: 500;
        border-radius: 20px;
        width: 164px;
        height: 17px;
        text-align: center;
        padding-top: 1.5px;
        letter-spacing: 0.5px;
    }

    .yuudouI{
        font-size: 10.5px;
        color: #fff;
        font-weight: 500;
        border-radius: 20px;
        width: 110px;
        height: 18px;
        text-align: center;
        padding-top: 2px;
        letter-spacing: 0.5px;
    }

    .account{
        gap: 7px;
        margin-top: 3px;
    }
}

/*
FV SNS2
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 350px) {
    .LINE__1 , .Instagram__1{
        width: 300px;
    }

    .LINE__txt , .Instagram__txt {
        font-size: 22px;
    }

    .account__ID , .account__IDI{
        font-size: 12px;
    }

    .yuudou{
        font-size: 10px;
        width: 145px;
    }

    .yuudouI{
        font-size: 10px;
        width: 105px;
    }

}

/* ==============================
EVENT NEWS
============================== */

.title__en{
    font-family: "Montserrat";
    font-size: 40px;
    letter-spacing: 4px;
    color: #D61518;
    border-bottom: #1C4696 solid 3px;
    width: fit-content;
    text-align: center;
    margin: 0 auto;
    height: 65px;
}

.toptitle__en{
    font-family: "Montserrat";
    font-size: 40px;
    letter-spacing: 4px;
    color: #D61518;
    border-bottom: #1C4696 solid 3px;
    width: fit-content;
    text-align: center;
    margin: 0 auto;
    height: 65px;
}

.blue{
    color: #1C4696;
}

.title__ja{
    font-size: 18px;
    font-weight: 700;
    color: #787878;
    text-align: center;
    margin-top: 23px;
    letter-spacing: 1px;
}

.eventnews__img{
    height: 260px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    object-fit: contain;
}

.eventnews__img-wrapper {
    width: 100%;  
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.eventnews__img-wrapper img {
    width: 100%;
    object-fit: contain;
}

.eventnews__title2{
    font-family: "Noto Sans JP";
    font-size: 14px;
    color: #000;
    font-weight: 700;
    width: 260px;
    margin-top: 26px;
    line-height: 1.4;
    display: -webkit-box;
    overflow: hidden;

}

.eventnews__title{
    margin-top: 200px;
}

.time{
    font-family: "Roboto";
    color: #646464;
    font-size: 14px;
    letter-spacing: 1px;
    display: inline-block;
    margin-top: 12px;
}

.eventnews1{
    width: 265px;
    display: inline-block;
}

.eventnews__content {
    display: grid;
    grid-template-columns: repeat(auto-fit, 265px);
    gap: 58px 30px;
    justify-content: center;
    margin: 0 auto;
    margin-top: 73px;
    padding: 0 50px;
    max-width: 1400px;
}

.eventnews__btntxt{
    font-size: 20px;
    color: #fff;
    width: 391px;
    height: 63px;
}

.btn a {
    position: relative;
    display: flex;   
    align-items: center;  
    padding-left: 36px; 
    background-color: #1c4696;
    color: #fff;
    margin: 85px auto 0 auto;
    transition: background-color 0.5s ease, color 0.5s ease;
    border: 2px solid #fff;
}

.btn-arrow-right a::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 37px;
    width: 13px;
    height: 13px;
    margin: auto;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg);
    box-sizing: border-box;
    transition: color 0.4s ease;
}

.btn a:hover {
    background-color: #fff; 
    color: #1c4696;     
    border: 2px solid #1C4696;
}

.btn-arrow-right a:hover::after {
    border-top: 3px solid #1c4696; 
    border-right: 3px solid #1c4696;
}

/*
Event＆News SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .title__en{
        font-size: 24px;
        letter-spacing: 2px;
        width: fit-content;
        border-bottom: #1C4696 solid 2px;
        text-align: center;
        margin: 0 auto;
        height: 40px;
        margin-top: 150px;
    }

    .toptitle__en{
        font-size: 24px;
        letter-spacing: 2px;
        width: fit-content;
        border-bottom: #1C4696 solid 2px;
        text-align: center;
        margin: 0 auto;
        height: 40px;
        margin-top: 45px;
    }

    .title__ja{
        font-size: 11px;
        font-weight: 700;
        text-align: center;        
        letter-spacing: 1px;
        margin-top: 11px;
    }

    .eventnews__img{
        height: 159px;
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    .eventnews__title2{
        font-size: 13px;
        font-weight: 700;
        width: 159px;
        margin-top: 12px;
        line-height: 1.4;
    }

    .eventnews1{
        width: 159px;
        display: inline-block;
    }

    .time{
        font-size: 11px;
        letter-spacing: 1px;
        display: inline-block;
        margin-top: 10px;
    }

    .eventnews__content {
        gap: 24px 17px;
        grid-template-columns: repeat(auto-fit, 160px);
        margin-top: 30px;
        padding: 0 10px;
        
        justify-content: center; 
    }

    .btn a {
        width: 294px;
        height: 55px;     
        margin-top: 30px;
        padding-left: 25px;
    }

    .eventnews__btntxt{
        font-size: 15px;
        font-weight: 700;
    }
}

/* ==============================
shopnews
============================== */

.shopnews__imgyoko , .shopnews__img{
    height: 260px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    object-fit: contain;
}

.shopnews__img-wrapper {
    width: 100%; 
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.shopnews__img-wrapper img {
    width: 100%;
    object-fit: contain;
}

.shopnews1{
    width: 265px;
}

.imgbox{
    width: 265px;
    height: 260px;
    display: flex;
    align-items: center;
}

.shopnews__content {
    display: grid;
    grid-template-columns: repeat(auto-fit, 265px);
    gap: 58px 30px;
    justify-content: center;
    
    margin: 0 auto;
    margin-top: 73px;
    padding: 0 50px;
    max-width: 1400px;
}

.shopnews__title{
    margin-top: 137px;
}

.btns a {
    position: relative;
    display: flex;      
    align-items: center;   
    padding-left: 44px;
    background-color: #1c4696;
    color: #fff;
    margin: 85px auto 0 auto;
    transition: background-color 0.5s ease, color 0.5s ease;
    border: 2px solid #fff;
}

.btns a:hover {
    background-color: #fff;
    color: #1c4696;    
    border: 2px solid #1C4696;
}


/*
Shopnews SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .shopnews__imgyoko{
        height: 159px;
    }

    .imgbox{
        width: 159px;
        height: 159px;
    }

    .shopnews1{
        width: 159px;
    }

    .shopnews__img{
        width: 113px;
        height: 158px;
    }

     .shopnews__content {
        gap: 24px 17px;
        grid-template-columns: repeat(auto-fit, 160px);
        margin-top: 30px;
        padding: 0 10px;
        
        justify-content: center; 
    }

    .btns a {
        width: 294px;
        height: 55px; 
        margin-top: 30px;
        padding-left: 27px;
    }

    .shopnews__title{
        margin-top: 46px;
    }

}

/* ==============================
shop pickup
============================== */
.arch-text{
    font-size: 57px;
    font-family: "Montserrat";
    font-weight: 500;
    fill: #1c4696;
    letter-spacing: 3px;
}

.pickuptitle{
    display: flex; 
    justify-content: center;
    margin-top: 136px;
}

.arch-svg{
    width: 250px;
}

.shop{
    background-color: #F0F9FF;
    padding-top: 52px;
    margin-top: -45px;
    padding: 52px 20px 50px 20px;
}

.shop__ue{
  display: flex;     
  flex-wrap: wrap;     
  gap: 40px;         
  justify-content: center;
}

.shoprogo{
  width: 198px;
  height: 130px;
  background-color: #fff;
  padding: 15px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.shop__sita{
    padding-top: 40px;
}

.obj{
    height: 100px;
}



/*
shopoickup SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .arch-text{
        font-size: 54px;
    }

    .pickuptitle{
        margin-top: 50px;
    }

    .arch-svg{
        width: 170px;
    }

    .obj{
        width: 20px;
        height: 64px;
    }

    .shop{
        padding: 35px 10px 30px 10px;
        margin-top: -38px;
    }

    .shoprogo{
        width: 162px;    
        height: 78px;   
        padding: 8px;
    }

    .shop__ue{
        gap: 10px;
    }
}

/* ==============================
access
============================== */

.map{
    width: 100%;
    max-width: 1150px;
    height: 400px;
    display: block;
    margin: 65px auto 0 auto;
}

.soudan , .contact{
    font-size: 20px;
    font-family: "Noto Sans JP";
    font-weight: 600;
    color: #1C4696;
    border: solid 2px #1C4696;
    padding: 15px 30px;
    letter-spacing: 1px;
    transition: all 0.5s ease; 
}

.soudan{
    margin-right: 60px;
}

.ya{
    width: 12.48px;
    height: 20px;
    margin-left: 8px;
    transition: all 0.5s ease; 
}

.soudan:hover, .contact:hover, .ya:hover {
    background-color: #1C4696; 
    color: #fff;           
    border: 2px solid #1C4696;
    cursor: pointer;        
}

.soudan:hover .ya, .contact:hover .ya {
    filter: brightness(0) invert(1);
}

.contact__btn{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 63px;
}

.access__title{
    margin-top: 137px;
}

/*
access SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .map{
        width: 100%;
        height: 200px;
        margin-top: 29px;
    }

    .soudan , .contact{
        font-size: 15px;
        font-weight: 700;
        width: 256px;
        height: 55px;
        padding: 17px 20px;
        letter-spacing: 1px;
        text-align: center;
        border: 1px solid #1c4696;
    }

    .soudan{
        margin-right: 0;
    }

    .ya{
        width: 9px;
        height: 14px;
        margin-left: 8px;
    }

    .contact__btn{
        justify-content: center;
        margin-top: 30px;
        gap: 20px;
    }

    .access__title{
        margin-top: 46px;
    }
}

/* ==============================
footer
============================== */

.footer__listsite , .footer__listpri , .footer__listunei{
    font-size: 14px;
    font-family: "Noto Sans JP";
    color: #646464;
}

.footer__menu{
    display: flex;
    justify-content: center;
    margin-top: 96px;
}

.footer__listpri{
    width: 213px;
    height: 21px;
    border-left: 1px solid #646464;
    border-right: 1px solid #646464;
    text-align: center;
}

.footer__listsite{
    padding-right: 38px;
}

.footer__listunei{
    padding-left: 38px;
}

.zyuusyo{
    font-size: 14px;
    font-family: "Noto Sans JP";
    color: #646464;
    text-align: center;
    margin-top: 39px;
}

/*
footer sp
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .footer__listsite , .footer__listpri , .footer__listunei{
        font-size: 12px;
        font-weight: 700;
    }

    .footer__menu{
        margin-top: 102px;
    }

    .footer__listpri{
        width: 160px;
        height: 18px;
    }

    .footer__listsite{
        padding-right: 20px;
    }

    .footer__listunei{
        padding-left: 22px;
    }

    .zyuusyo{
        font-size: 12px;
        margin-top: 25px;
    }
}

/* ==============================
copy
============================== */

.copy{
    font-size: 12px;
    font-family: "Noto Sans JP";
    background-color: #1c4696;
    color: #fff;
    height: 50px;
    display: flex;
    justify-content: center; 
    align-items: center;
    margin-top: 43px;
}

/*
copy SP
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .copy{
        margin-top: 23px;
    }
}




/* ==============================
event&news page
category btn
============================== */
.categoly{
    width: 265px;
    height: 58px;
    background-color: #D8EFFF;
    color: #1C4695;
    font-size: 16px;
    font-family: "Noto Sans JP";
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
}

.shortbtn{
    display: flex;
    gap: 30px;
    justify-content: center;
    margin-top: 80px;
    padding: 0 100px;
}

.categoly__all{
    width: 392px;
    height: 58px;
    background-color: #D8EFFF;
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
    display: flex;
    justify-content: center; 
    align-items: center;
}

.allbtn{
    display: flex;
    justify-content: center; 
    margin-top: 30px;
}

.content__eventnewspage{
    margin-top: 80px;
}

/*
event&news page
category btn
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .categoly{
        width: 159px;
        height: 30px;
        font-size: 12px;
    }

    .shortbtn{
        flex-wrap: wrap;
        gap: 15px 17px;
        margin-top: 41px;
    }

    .categoly__all{
        width: 159px;
        height: 30px;
        font-size: 12px;
    }

    .allbtn{
        margin-top: 15px;
    }

    .content__eventnewspage{
        margin-top: 40px;
    }

}

.categoly:hover,
.categoly.is-active {
    background-color: #1C4695 !important;
    color: #FFFFFF !important;        
    transition: all 0.3s ease;         
}

.categoly__all:hover,
.categoly__all.is-active {
    background-color: #1C4695 !important; 
    color: #FFFFFF !important;            
    transition: all 0.3s ease;           
}

/* ==============================
event&news page
pagetopbtn
============================== */

.arrow-up {
  display: inline-block;
  width: 15px;
  height: 15px;
  border-top: 4px solid #fff;
  border-left: 4px solid #fff;  
  transform: rotate(45deg);  
  vertical-align: middle;
}

.page-top-btn {
    position: fixed;
    right: 20px;  
    bottom: 70px;
    width: 40px;
    height: 40px;
    background-color: #C7C7C7;
    color: #fff;
    border-radius: 50%; 
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999; 
    padding-top: 4px;
    }

/* ==============================
event&news page
pagenationbtn
============================== */
.eventnews__titlep{
    margin-top: 200px;
}

.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  list-style: none;
  padding: 0;
  gap: 12px; 
  margin-top: 98px;
}

.pagination a:not([aria-label]), 
.pagination li.active a {
    font-family: "Roboto";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #fff;
    color: #1C4696;
    text-decoration: none;
    transition: 0.3s;
    border: solid #1C4696 1px;
    font-size: 16px;
}

.pagination a[aria-label] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;      
  height: 36px;
  background-color: transparent; 
  color: #1C4696;
  font-size: 24px;    
  text-decoration: none;
  padding: 0 10px;     
}

.pagination a:not([aria-label]):hover {
  background-color: #1C4696;
  color: #fff;
}
.pagination a[aria-label]:hover {
  color: #000;      
}

.pagination li.active a {
  background-color: #1C4696;
  color: #fff;
}

.pagination span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1C4696;
    border: solid #1C4696 1px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}


/*
event&news page
pagenathionbtn
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .pagination a:not([aria-label]), 
    .pagination li.active a {
        width: 26px;
        height: 26px;
        border: solid #1C4696 0.5px;
        font-size: 12px;
    }

    .pagination span {
        border: solid #1C4696 0.5px;
        width: 26px;
        height: 26px;
        border-radius: 50%;
    }

    .pagination a[aria-label] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: auto;   
        height: 36px;
        background-color: transparent; 
        color: #1C4696;
        font-size: 33px;    
        text-decoration: none;
        padding: 0 10px 8px 10px;     
    }

    .eventnews__title{
        margin-top: 0;
    }
}




/* ==============================
event&news syousaipage
============================== */
.breadcrumb {
    width: 806px;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    text-align: center;
    margin: 0 auto;
    margin-top: 78px;
    padding: 0 25px;
}

.breadcrumb li:not(:last-of-type)::after {
    content: "＞";
    margin: 15px; 
    color: #1C4696;
    font-size: 14px;
}

.breadcrumb_img{
    width: 70px;    
}

.homeicon{
    width: 14px;
    height: 14px;
}

.breadcrumb_1{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-weight: 500;
}

.event__name{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 43px;
    font-weight: 700;
}

.event__namedate{
    margin: 0 auto;
    margin-top: 62px;
}

.time__page{
    display: inline-block;
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    margin-top: 3px;
}

.event__category{
    display: flex;
    gap: 15px;
    max-width: 806px;
    margin: 0 auto;
    margin-top: 18px;
}

.categorytxt{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-weight: 500;
    width: 101px;
    height: 19px;
    text-align: center;
    background-color: #D8EFFF;
}

.eventimg1{
    width: 806px;
    height: 700px;
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

.eventsyousai__txt{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    margin: 0 auto;
    margin-top: 36px;
    line-height: 32px;
    padding: 0 20px;
}

.shopnewsimg1{
    width: 501px;
    height: auto;
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 25px;
}

.event__imgtxt{
    margin-top: 72px;
}

/*
event&news
syousaipage
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .homeicon{
        width: 11px;
        height: 11px;
        padding-bottom: 1px;
    }

    .breadcrumb_1{
        font-size: 10px;
    }

    .breadcrumb li:not(:last-of-type)::after {
        content: "＞";
        margin: 10px;
        color: #1C4696; 
        font-size: 10px;
    }

    .breadcrumb_img{
        width: 60px;    
    }

    .event__name{
        font-size: 25px;
        font-weight: 700;
        padding-left: 0;
        line-height: 1.3;
    }

    .time__page{
        font-size: 12px;
        font-weight: 400;
        padding-left: 0;
        margin-top: 5px;
        display: inline-block;
    }

    .categorytxt{
        font-size: 12px;
        font-weight: 500;
        width: 77px;
        height: 18px;
    }

    .event__category{
        display: flex;
        gap: 9px;
        margin-top: 13px;
    }

    .breadcrumb {
        width: 100%;
        padding: 40px 20px 0 15px;
        margin: 0 auto;
    }

    .eventimg1{
        width: 339px;
        height: 480px;
    }

    .shopnewsimg1{
        width: 336px;
        height: auto;
        display: flex;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
        margin-top: 25px;
    }

    .event__imgtxt{
        margin-top: 30px;
    }

    .eventsyousai__txt{
        width: 100%;
        font-size: 15px;
        font-weight: 400;
        margin-top: 21px;
        line-height: 25px;
        padding: 0 ;
    }

    .event__namedate{
        margin-top: 35px;
    }
}

/* ==============================
shoplist page
============================== */
.shop__ue , .shop__sita {
  flex-wrap: wrap;
  width: 100%;
  max-width: 1150px;
  margin: 0 auto;
}

.shoprogo__page2{
  height: 176px;
  border: 1px solid #9f9f9f;
  transition: transform 0.2s ease;
  padding: 20px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.shoprogo:hover {
  transform: scale(1.05); 
}

.shop__sita{
    padding-top: 40px;
}

.shopname{
    font-family: "Noto Sans JP";
    font-size: 16px;
    color: #000;
    font-weight: 700;
    width: 260px;
    margin-top: 18px;
    line-height: 1.4;
}

.floor{
    color: #646464;
    font-family: "Noto Sans JP";
    font-size: 14px;
    letter-spacing: 1px;
    margin-top: 7px;
}

/*
shoplist
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .shop__ue{
        gap: 10px;
    }

    .shoprogo__page2{
        width: 159px;        
        height: 105px;       
        padding: 12px;
    }

    .shopname{
        font-size: 13px;
        width: 159px;
        margin-top: 13px;
        line-height: 1.4;
    }

    .floor{
        font-size: 12px;
        margin-top: 5px;
    }

}

/* ==============================
shoplist shousaipage
============================== */
.shopinfo{
    display: flex;
    gap: 32px;
}

.number{
    background-color: #1C4696;
    color: #fff;
    font-family: "Noto Sans JP";
    font-size: 17px;
    font-weight: 500;
    width: 51px;
    height: 23px;
    text-align: center;
}

.shopname_page{
    font-family: "Noto Sans JP";
    font-size: 26px;
    color: #000;
    font-weight: 700;
    margin-top: 18px;
    line-height: 1.4;
}

.infotxt{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    line-height: 2.2;
    margin-top: 58px;
    letter-spacing: 1px;
    padding: 0 17px;
}

.shoplist__time , .shoplist__tell , .shoplist__site{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
    height: 56px;
    margin: 0 17px;
    display: flex;
    align-items: center;
}

.bracktxt{
    color: #000;
    font-weight: 500;
    padding-left: 15px;
}

.shoplist__time , .shoplist__site{
    border-top: solid 1px #9f9f9f;
    border-bottom: solid 1px #9f9f9f;
}

.information{
    margin-top: 57px;
}

.shoppage__content{
    max-width: 1150px;
    display: flex;
    gap: 57px;
    justify-content: space-between;
    margin: 0 auto;
    margin-top: 70px;
}

.floorimg{
    width: 435px;
    object-fit: contain;
    object-position: 50% 0%;
    padding-right: 17px;
}

.breadcrumb_shoplist {
    max-width: 1150px;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 auto;
    margin-top: 78px;
    padding: 0 17px;
}

.breadcrumb_shoplist li:not(:last-of-type)::after {
    content: "＞";
    margin: 15px; 
    color: #1C4696; 
    font-size: 14px;
}

.btn_shoplist a {
    position: relative;
    display: block;
    width: 315px;
    padding: 16px 0 0 30px;
    background-color: #1c4696;
    color: #fff;
    margin: 0 auto;
    margin-top: 70px;
    transition: background-color 0.5s ease, color 0.5s ease;
    border: 2px solid #fff;
}

.btn_shoplist a:hover {
    background-color: #fff;
    color: #1c4696;     
    border: 2px solid #1C4696;
}

.btn-arrow-right a::after {
    content: '';
    position: absolute;
    right: 37px;
    width: 13px;
    height: 13px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg);
}

.floorimg_sp{
    display: none;
}

.SPbr{
    display: none;
}

.shoprogo__page{
    width: 265px;
    height: 176px;
    padding: 20px;
    border: 1px solid #646464;
    margin-left: 17px;
}

/*
shoplist
syousaipage
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 900px) {
    .breadcrumb_shoplist {
        margin-top: 40px;
    }

    .breadcrumb_shoplist li:not(:last-of-type)::after {
        content: "＞";
        margin: 10px; 
        color: #1C4696; 
        font-size: 10px;
    }

    .floorimg_sp{
        display: block;
        margin: 0 auto;
        padding: 0 17px;
    }

    .floorimg{
        display: none;
    }

    .shoppage__content{
        display: block;
        margin-top: 29px;
    }

    .number{
        font-size: 12px;
        width: 35px;
        height: 16px;
    }

    .shopname_page{
        font-size: 22px;
        margin-top: 6px;
        line-height: 1.4;
    }

    .SPbr{
        display: block;
    }

    .shopinfo{
        max-width: 640px;
        margin-top: 27px;
        padding: 0 17px;
        gap: 15px;
    }

    .infotxt{
        margin: 0 17px;
        font-size: 15px;
        font-weight: 400;
        line-height: 2;
        letter-spacing: 1px;
        margin: 0 auto;
        margin-top: 22px;
        padding: 0 17px;
    }

    .shoplist__time , .shoplist__tell , .shoplist__site{
        font-size: 15px;
        font-weight: 600;
        height: 77px;
        margin: 0 17px;
        display: flex;
        align-items: center;
        line-height: 1.5;
    }

    .bracktxt{
        color: #000;
        font-weight: 400;
        padding-left: 15px;
    }

    .btn_shoplist a {
        margin-top: 40px;
        padding: 16px 0 0 30px;
    }

    .btn-arrow-right a::after {
        width: 12px;
        height: 12px;
    }

    .shoprogo__page{
        width: 265px;   
        height: 176px;   
        padding: 12px;
        border: 1px solid #646464;
        margin-left: 0;
    }
}

@media (max-width: 820px) {
    .bracktxt{
        padding-left: 0px;
    }
}

@media (max-width: 768px) {
    .btn_shoplist a {
        padding: 20px 0 0 50px;
    }
}

@media (max-width: 400px) {
    .shopname_page{
        font-size: 17px;
        margin-top: 6px;
        line-height: 1.4;
    }

    .shoprogo__page{
        width: 170px;  
        height: 100px;  
        object-fit: contain;
        padding: 12px;
    }

    /* ボタンのスタイル */
    .btn_shoplist a {
        position: relative;
        display: block;
        width: 250px;
        padding: 22px 0 0 25px;
        background-color: #1c4696;
        color: #fff;
        margin: 0 auto;
        margin-top: 70px;
        font-size: 15px;
    }
}

/* ==============================
floorguide shousaipage
============================== */
.guidemap{
    display: block;
    width: 749px;
    margin: 0 auto;
    margin-top: 81px;
}

.floorlist{
    display: flex;
    background-color: #f0f0f0;
    max-width: 884px;
    height: 63px;
    border-radius: 10px;
    justify-content: center;
    align-items: center;
    margin: 26px auto 0;
}

.flooricon{
    width: 18px;
    height: 18px;
}

.flooritem{
    width: 63px;
    text-align: center;
}

.floortxt{
    font-family: "Noto Sans JP";
    font-size: 9px;
    margin-top: 3px;
}

.dogtxt{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 11px;
    font-weight: 400;
    margin-top: 16px;
    text-align: center;
}

.shoprogo__floor{
    display: block;
    width: 265px;  
    height: 136px;  
    border: 1px solid #9f9f9f;
    overflow: hidden;
    transition: transform 0.2s ease;
    background-color: #fff;
    padding: 20px;
}

.number_guid{
    background-color: #1C4696;
    color: #fff;
    font-family: "Noto Sans JP";
    font-size: 17px;
    font-weight: 500;
    width: 51px;
    height: 23px;
    text-align: center;
    margin-top: 20px;
}

.shopname_floor{
    font-family: "Noto Sans JP";
    font-size: 16px;
    color: #000;
    font-weight: 700;
    width: 260px;
    margin-top: 10px;
    line-height: 1.4;
}

/*
floaguidpage
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .guidemap{
        max-width: 335px;
        margin-top: 40px;
        padding: 0 17px;
    }

    .floorlist{
        flex-wrap: wrap;
        width: 335px;
        height: 76px;
        border-radius: 10px;
        justify-content: left;
        margin-top: 17px;
        padding: 8px;
    }

    .flooricon{
        width: 14px;
        height: 14px;
    }

    .flooritem{
        width: 44px;
    }

    .floortxt{
        font-family: "Noto Sans JP";
        font-size: 6px;
        margin-top: 2px;
    }

    .dogtxt{
        font-size: 10px;
        font-weight: 400;
        text-align: left;
        width: 335px;
        margin: 0 auto;
        margin-top: 13px;
        line-height: 1.5;
    }

    .shoprogo__floor{
        width: 159px;    
        height: 82px;  
        padding: 12px;
    }

    .shopname_floor{
        font-size: 13px;
        width: 159px;
        margin-top: 8px;
        line-height: 1.4;
    }

    .number_guid{
        font-size: 10px;
        font-weight: 500;
        width: 30px;
        height: 14px;
        margin-top: 15px;
    }

    .PCbr{
        display: none;
    }

}


@media (max-width: 400px) {
    .guidemap{
        max-width: 300px;
    }

    .floorlist{
        width: 300px;
    }

    .floortxt{
        font-size: 5.5px;
    }

    .flooritem{
        width: 40px;
    }

    .dogtxt{
        width: 300px;
    }
}



/* ==============================
access page
============================== */
.traffic{
    padding: 0 30px;
}
.address{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    margin-top: 28px;
}

.traffictitle{
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 18px;
    font-weight: 700;
    background-color: #1C4696;
    max-width: 1150px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    margin-top: 94px;
}

.direction1{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
}

.direction2{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 500;
}

.accessitem_maebashi , .accessitem_isesaki , .accessitem_takasaki , .direction{
    display: flex;
}

.accessitem_isesaki , .accessitem_takasaki{
    max-width: 1150px;
    height: 103px;
    margin: 0 auto;
    padding-top: 29px;
}

.accessitem_isesaki{
    border-bottom: 1px solid #787878;
    border-top: 1px solid #787878;
    gap: 233px;
}

.accessitem_maebashi , .accessitem_takasaki{
    gap: 250px;
}

.lineheight{
    line-height: 2;
}

.accessitem_maebashi{
    max-width: 1150px;
    height: 80px;
    margin: 0 auto;
    padding-top: 29px;
}

.parkingtxt{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
    background-color: #D8EFFF;
    width: 561px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
}

.parking{
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-top: 15px;
}

.direction3{
    padding-bottom: 7px;
}

.direction{
    max-width: 1150px;
    margin: 0 auto;
    margin-top: 39px;
    gap: 68px;
}

.SPbr{
    display: none;
}

/*
accesspage
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 820px) {
    .traffic{
        padding: 0 10px;
    }
    .address{
        font-size: 14px;
        margin-top: 13px;
    }

    .traffictitle{
        font-size: 16px;
        height: 32px;
        margin: 0 auto;
        margin-top: 49px;
    }

    .accessitem_maebashi , .accessitem_isesaki , .accessitem_takasaki , .direction{
        display: block;
    }

    .direction1{
        font-size: 15px;
        font-weight: 700;
    }

    .direction2{
        font-size: 15px;
        font-weight: 400;
        margin-top: 8px;
        line-height: normal;
    }

    .SPbr{
        display: block;
    }

    .accessitem_isesaki , .accessitem_takasaki{
        height: 135px;
        margin: 0 auto;
        padding-top: 18px;
    }

    .lineheight{
        line-height: 1.6;
    }

    .accessitem_maebashi{
        height: 110px;
        margin: 0 auto;
        padding-top: 24px;
    }

    .accessitem_takasaki{
        border-bottom: solid 1px #787878;
    }

    .parking{
        display: block;
        margin-top: 20px;
    }

    .parkingtxt{
        width: 335px;
        font-size: 14px;
        height: 43px;
        border-radius: 30px;
        margin: 0 auto;
    }

    .parkingtxt_1{
        margin-top: 15px;
    }

    .direction{
        margin-top: 20px;
        gap: 68px;
    }
}

@media (max-width: 400px) {
    .parkingtxt{
        width: 300px;
        font-size: 12px;
        height: 43px;
        border-radius: 30px;
        margin: 0 auto;
    }
    
    .parkingtxt_1{
        margin-top: 10px;
    }
}

/* ==============================
sitepolicypage
============================== */
.ptxt , .sitepolicy1txt{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 2;
}

.sitecontent{
    margin: 0 auto;
    margin-top: 78px;
    max-width: 1150px;
    padding: 0 50px;
}

.h3title{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 27px;
}

.privacy{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
}

.sitepolicytxt{
    margin-top: 76px;
}

.sitepolicy2txt{
    margin-bottom: 76px;
}

.numberring li {
        display: flex;    
        align-items: flex-start; 
        
        line-height: 2;   
        font-size: 16px;
        font-family: "Noto Sans JP";
        font-weight: 300;
    }

    .numberring {
        counter-reset: number-count; 
        padding: 30px 20px 35px 30px;
    }

    .numberring li::before {
        counter-increment: number-count; 
        content: counter(number-count) ".";
        
        flex-shrink: 0;    
        width: 24px;      
        
        font-weight: bold;
        color: #231815;
    }

/*
accesspage
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .ptxt , .sitepolicy1txt{
        padding: 0 20px;
        font-size: 15px;
        font-weight: 400;
        line-height: 2;
    }

    .sitecontent{
        margin: 0 auto;
        margin-top: 39px;
        padding: 0 10px;
    }

    .h3title{
        padding: 0 20px;
        font-size: 25px;
        font-weight: 700;
        margin-bottom: 15px;
    }

    .sitepolicytxt{
        margin-top: 57px;
    }

    .privacy{
        padding: 0 18px;
        font-size: 15px;
        font-weight: 700;
    }

    .sitepolicy2txt{
        margin-bottom: 53px;
    }

    .numberring li {
        line-height: 1.8;
        font-size: 15px;
        font-weight: 400;
    }

    .numberring {
        padding: 35px 20px 35px 40px;
    }
}

.teltitle{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 30px;
    font-weight: 700;
    text-align: center;
}

.teltxt{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    line-height: 2;
    max-width: 624px;
    margin: 0 auto;
    margin-top: 35px;
}

.telicon{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 357px;
    height: 57px;
    background-color: #1C4695;
    gap: 10px;
    border-radius: 30px;
    margin: 0 auto;
}

.tel{
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 28.95px;
    font-weight: 500;
}

.icontell{
    width: 20px;
    height: 25px;
}

.Receptionhours{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 700;
    margin-top: 16px;
    line-height: normal;
}

.lostitem_txt{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 20px;
    font-weight: 700;
    text-align: center;
}

.lostitem{
    border-top: 1px solid #1C4695;
    padding-top: 42px;
    margin-top: 47px;
}

.teltxt_2{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    margin-top: 23px;
    line-height: 2;
}

.contacttell{
    width: 800px;
    height: 595.5px;
    background-color: #ecf4f8;
    padding: 53px 56px;
    margin: 0 auto;
    margin-top: 79px;
}

.contactmail{
    margin-top: 105px;
}

.form-group{
    margin-bottom: 20px;
}

.badge-required{
    margin-right: 16px;
    padding: 1.5px 7px;
    background-color: #1C4695;
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.contactmenu{
    margin-right: 50px;
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.contactmenu--name {
    margin-right: 146px;
}

.form-group1{
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.badge-any{
    margin-right: 16px;
    padding: 1.5px 7px;
    background-color: #C7C7C7;
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.contactmenu--furigana{
    margin-right: 130px;
}

.contactmenu--mail{
    margin-right: 82.5px;
}

.contactmenu--tel{
    margin-right: 130px;
}

.contactmenu--inquiry{
    margin-right: 66px;
}

.form{
    width: 799px;
    margin: 0 auto;
    margin-top: 62px;
}

.policy{
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-style: normal;
    font-weight: 400;
    display: flex;
    gap: 14px;
    justify-content: center;
    padding-top: 19px;
    font-size: 16px;
}

.checkbox{
    width: 18px;
    height: 18px;
}

.formbtn{
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    background-color: #1C4696;
    width: 304px;
    height: 63px;
    text-align: center;
    align-items: center;
    display: block;
    margin: 0 auto;
    margin-top: 53px;
    border: none;
    cursor: pointer;
}
.form-group1 .wpcf7-form-control-wrap {
    display: inline;
}

#username, #userkana, #email, #tel, #message {
    background-color: #ecf4f8; 
    padding: 15px;              
    font-size: 16px;
    width: 549px; 
    border: none;
    box-sizing: border-box;
    display: inline-block; 
}

#message {
    height: 230px;
}

.form input::placeholder,
.form textarea::placeholder {
  font-size: 16px;
  font-weight: 400;
  color: #aebcd9;
}

.radiobtn .wpcf7-form-control-wrap {
    display: block;
}
.radiobtn .wpcf7-radio {
    display: block; 
}

.radiobtn .wpcf7-list-item {
    display: block;    
    margin-bottom: 22px; 
    cursor: pointer;   
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-left: 0;
}

input[type="radio"] {
    appearance: revert;
    -webkit-appearance: revert;
    cursor: pointer;
}

.radiobtn .wpcf7-list-item input[type="radio"] {
    margin-right: 12px; 
    width: 30px; 
    height: 30px;
    vertical-align: middle;
}

input[type="checkbox"] {
    appearance: revert;
    -webkit-appearance: revert;
}
.policy .wpcf7-form-control-wrap {
    display: inline-block;
    width: auto;
}

.wpcf7-list-item {
    display: block;    
    margin-bottom: 22px;   
    margin-right: 0;    
}

.form-group1 > p {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
}

.radiobtn .wpcf7-list-item {
    display: block;   
    margin-bottom: 22px; 
    cursor: pointer;   
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-left: 0;
}

.radiobtn input[type="radio"] {
    margin-right: 12px; 
    width: 20px;
    height: 20px;
    vertical-align: middle;
}

.contactmenu--name , .contactmenu--furigana , .contactmenu--mail , .contactmenu--tel {
    padding-top: 10px;
}

.wpcf7-list-item-label{
    color: #000;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

/*
contactpage
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿ */
@media (max-width: 768px) {
    .contacttell{
        width: 335px;
        height: auto;
        background-color: #ecf4f8;
        padding: 27px 24px;
        margin: 0 auto;
        margin-top: 79px;
    }

    .teltitle{
        font-size: 24px;
        font-weight: 700;
    }

    .teltxt{
        font-size: 15px;
        line-height: 2;
        margin: 0 auto;
        margin-top: 25px;
    }

    .teltxt_1{
        width: 315px;
    }

    .telicon{
        width: 287px;
        height: 55px;
        gap: 10px;
    }

    .tel{
        font-size: 23px;
        font-weight: 500;
    }

    .icontell{
        width: 15px;
        height: 20px;
    }

    .Receptionhours{
        font-size: 14px;
        font-weight: 700;
        margin-top: 13px;
    }

    .lostitem_txt{
        width: 204px;
        font-size: 17px;
        line-height: normal;
        margin: 0 auto;
    }

    .lostitem{
        border-top: 1px solid #1C4695;
        padding-top: 27px;
        margin-top: 27px;
    }

    .contactmail{
        margin-top: 51px;
    }

    .form-group{
        display: block;
        margin-bottom: 40px;
        margin: 0 auto;
        width: 335px;
    }

    .contactmenu{
        font-size: 15px;
        margin-bottom: 14px;
    }

    .badge-required{
        margin-right: 14px;
        padding: 1px 6px;
        font-size: 11px;
    }

    .form-group1{
        display: block;
        width: 335px;
        margin: 0 auto;
        margin-bottom: 35px;
    }
    /* 💡 PC版で横並び（flex）にしたpタグを、スマホでは縦並びにリセットします */
    .form-group1 > p {
        display: block;
    }
    /* 💡 割り込んだCF7のspanも幅いっぱいに広げます */
    .form-group1 .wpcf7-form-control-wrap {
        display: block;
        width: 100%;
        margin-top: 20px;
    }

    #username , #userkana , #email , #tel , #message {
        padding: 15px;              
        font-size: 15px;
        width: 335px;
        margin-top: 15px;
    }

    .form{
        width: 375px;
        margin: 0 auto;
        margin-top: 62px;
    }

    .policy{
        font-size: 15px;
        padding-top: 30px;
    }

    .formbtn{
        font-size: 15px;
        width: 230px;
        height: 55px;
        margin-top: 30px;
    }
}

@media (max-width: 400px) {
    .contacttell{
        width: 300px;
        height: auto;
        background-color: #ecf4f8;
        margin: 0 auto;
        margin-top: 79px;
    }

    .telicon{
        width: 252px;
    }

    #username , #userkana , #email , #tel , #message {
        width: 300px;
    }

    .form-group1{
        display: block;
        width: 300px;
        margin: 0 auto;
        margin-bottom: 35px;
    }

    .form-group{
        display: block;
        margin-bottom: 40px;
        margin: 0 auto;
        width: 300px;
    }

    .form{
        width: 300px;
        margin: 0 auto;
        margin-top: 62px;
    }

    .teltxt_1{
        width: 300px;
    }

    .footer__listsite , .footer__listpri , .footer__listunei{
        font-size: 10px;
    }
    
    .footer__listpri{
        width: 140px;
    }

    .footer__listsite{
        padding-right: 18px;
    }

    .footer__listunei{
        padding-left: 20px;
    }
}

@media (max-width: 768px) {
    .page-top-btn {
        bottom: 10px; /* 通常時は下から30px */
        transition: bottom 0.3s ease, opacity 0.3s, visibility 0.3s; 
        padding-top: 4px;
    }

    /* ─── 修正：ここをスマホに最適な高さに変更 ─── */
    .page-top-btn.is-bottom {
        /* 150pxから、実際のスマホ用フッターの高さ＋α（例: 80px〜100px程度）に下げます */
        bottom: 150px; 
    }

    .page-top-btn.is-show {
        opacity: 1;
        visibility: visible;
    }
}

.page-numbers {
    display: flex;            
    justify-content: center;
    align-items: center;
    list-style: none;
    padding: 0;
}

.pagination .current {
    background-color: #1C4695;
    color: #fff;  
    font-weight: 700;
    
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagination .dots {
    border: none;
    background: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
}

.categoly__btn .js-news-btn.is-active {
    background-color: #1C4696 ; 
    color: #ffffff ;  
}

.categoly__btn .js-news-btn {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.categoly__btn .js-news-btn:hover {
    background-color: #1C4696;
    color: #fff;
    cursor: pointer;
}

.categoly__btn .js-news-btn.is-active:hover {
    background-color: #1C4696; 
    color: #ffffff;
}

.categoly__btn .js-event-btn.is-active {
    background-color: #1C4696 ;
    color: #ffffff ;
}

.categoly__btn .js-event-btn {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.categoly__btn .js-event-btn:hover {
    background-color: #1C4696 ;
    color: #fff;
    cursor: pointer;
}

.categoly__btn .js-event-btn.is-active:hover {
    background-color: #1C4696;
    color: #ffffff;
}

.categoly__btn .btn.active {
    background-color: #1C4696; 
    color: #ffffff;
    border-color: #1C4696; 
}

.categoly__btn .btn {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.categoly__btn .btn:hover {
    background-color: #1C4696; 
    color: #ffffff;         
    cursor: pointer; 
}

.categoly__btn .btn.active:hover {
    background-color: #1C4696;
    color: #ffffff;
}

.eventpage__content {
    max-width: 800px;
    margin: 65px auto 0;
    width: 100%;
    box-sizing: border-box;
    padding: 0 20px;
}

.event__imgtxt {
    width: 100%;
    text-align: left;
}

.event__imgtxt p {
    font-size: 16px;
    font-family: "Noto Sans JP";
    line-height: 2;
}

.event__imgtxt img {
    max-width: 500px;
    height: auto;
    display: block;
    margin: 30px auto; 
}

.eventpage__content .btn {
    text-align: center;
    margin-top: 50px;
}

@media (max-width: 768px) {
    .event__imgtxt img{
        width: 100%;
        height: auto;
    }

    .event__imgtxt p{
        width: 100%;
        margin: 0 auto;
    }
}

/* ==============================
contact messsage
============================== */
.wpcf7-response-output {
    font-size: 16px;
    color: #1C4695;
    font-family: "Noto Sans JP";
    font-weight: 600;      
    margin-top: 8px;      
    display: block;
    border: 1px solid #1C4695;
    text-align: center;
    letter-spacing: 1;
}

@media (max-width: 768px) {
    .wpcf7-response-output{
        font-size: 15px;
        font-weight: 500;
        line-height: 1.5;
    }
}

/* ==========================================
 * お問い合わせフォームのラジオボタン縦並び修正
 * ========================================== */

/* 1. ラジオボタン全体のラッパーをブロック要素にして縦に並べる */
.wpcf7-form .wpcf7-radio {
    display: block !important;
}

/* 2. 各選択肢（ラベルとボタン）のブロックを縦並びにする */
.wpcf7-form .wpcf7-list-item {
    display: block !important;    /* 縦並びにする */
    margin-left: 0 !important;     /* 左側の不要な余白をリセット */
    margin-right: 0 !important;    /* 右側の不要な余白をリセット */
    margin-bottom: 12px !important; /* 選択肢同士の縦のスキマを確保 */
}

/* 3. ラジオボタンと文字が不自然にズレる場合の調整（必要に応じて） */
.wpcf7-form .wpcf7-list-item label {
    display: inline-flex !important;
    align-items: center;
    cursor: pointer;
}

.wpcf7-form .wpcf7-list-item input[type="radio"] {
    margin-right: 8px !important; /* ボタンと文字の間のすきま */
}