@charset "UTF-8";

/*
Theme Name: QUEEN2025
Description: QUEEN用のWordPressテンプレート
Version: 1.0
Author: GenePro LLC
*/

/* 全体に対する設定 ---------------------------------------- */
html{
    scroll-behavior: smooth;
}

body{
    background-color: #f4f4f7;
    overflow-x: hidden;
}

* {
    font-family: 'inter','M PLUS Rounded 1c', 'noto sans jp', sans-serif;
}

a{
    color: inherit;
    text-decoration: none;
}

/* header ---------- */
header{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 70px;
    border-bottom: solid .7px #747474;
    background-color: #f4f4f7;
    position: fixed;
    margin-top: -70px;
    z-index: 99;
}

.header__container--forPC{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 95%;
    max-width: 1300px;
    height: auto;
}

.header__logoBox--forPC{
    display: block;
    width: auto;
    height: auto;
}

.header__logoLink--forPC{
    display: block;
    width: auto;
    height: auto;
}

.header__logoLink--forPC img{
    display: block;
    height: 65px;
    width: auto;
}

.header__navMenu--forPC{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
}

.header__navContent--forPC{
    display: flex;
    flex-direction: column;
    width: auto;
    height: auto;
    justify-content: center;
    align-items: center;
    color: #f48edb;
    margin: 0 15px;
}

.header__navContent--forPC:nth-child(1){
    margin-left: 0px;
}

.header__navContent--forPC:nth-child(4){
    padding-right: 20px;
    margin-right: 0px;
    border-right: 1px solid #747474;

}

.header__navContent--forPC:hover{
    color: #ff04c0;
    transition: .3s;
}

.header__navContentEN--forPC{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
}

.header__navContentEN--forPC p{
    display: block;
    font-weight: 600;
    font-size: 16px;
}

.header__navContentJP--forPC{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
}

.header__navContentJP--forPC p{
    display: block;
    font-weight: 400;
    font-size: 11px;
}

.header__navSocialMediaLink--forPC{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    transition: .3s;
    margin: 0 5px;
}

#header__twitterX--forPC{
    border: solid 1px #383838;
    background-color: #383838;
    fill: #f9f9f9;
    margin-left: 20px;
}

#header__twitterX--forPC:hover{
    background-color: #fefefe;
    fill: #383838;
    transition: .3s;
}

#header__instagram--forPC{
    border: solid 1px #ff0069;
    background-color: #ff0069;
    fill: #f9f9f9;
    margin-right: 0;
}

#header__instagram--forPC:hover{
    background-color: #fefefe;
    fill: #ff0069;
    transition: .3s;
}

#header__tiktok--forPC{
    border: solid 1px #22f5e8;
    background-color: #22f5e8;
    fill: #383838;
}

#header__tiktok--forPC:hover{
    background-color: #fefefe;
    fill: #383838;
    transition: .3s;
}

/* Header for Mobile ------------------------- */
.header__container--forMobile{
    display: none;
}

.header__logoBox--forMobile{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
}

.header__logoBox--forMobile a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
}

.header__logoBox--forMobile a img{
    display: block;
    width: auto;
    height: 65px;
}

.header__hamburgerBox--forMobile{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
    position: relative;
}

.header__hamburgerBox--forMobile:hover{
    cursor: pointer;
}

.header__hamburger01--forMobile{
    display: flex;
    flex-direction: column;
    width: auto;
    height: auto;
    opacity: 1;
    transition: opacity 0s .15s;
    position: absolute;
    right: 0;
    padding-left: 2px;
}

.header__hamburger01--forMobile span{
    display: block;
    width: 36px;
    height: 1.1px;
    background-color: #151515;
    transition: transform .15s;
}

.header__hamburger01--forMobile span:nth-child(1){
    margin-bottom: 2.4px;
    transition: transform .15s .15s;
    transform: translateY(0px);
}

.header__hamburger01--forMobile span:nth-child(2){
    margin-top: 2.4px;
    transition: transform .15s .15s;
    transform: translateY(0px);
}

.header__hamburger02--forMobile{
    display: flex;
    flex-direction: column;
    width: auto;
    height: auto;
    opacity: 0;
    transition: opacity 0s .15s;
    position: absolute;
    right: 0;
    padding-left: 2px;
}

.header__hamburger02--forMobile span{
    display: block;
    width: 36px;
    height: 1.1px;
    background-color: #151515;
    transition: transform .15s;
}

.header__hamburger02--forMobile span:nth-child(1){
    transition: transform .15s;
    transform: rotate(0deg);
    transform-origin: center;
    margin-bottom: -0.55px;
}

.header__hamburger02--forMobile span:nth-child(2){
    transition: transform .15s;
    transform: rotate(0deg);
    transform-origin: center;
    margin-top: -0.55px;
}

.header__mobile-hamburger01--active{
    opacity: 0;
}

.header__mobile-hamburger01--active span:nth-child(1){
    transition: transform .15s;
    transform: translateY(2.95px) !important;
}

.header__mobile-hamburger01--active span:nth-child(2){
    transition: transform .15s;
    transform: translateY(-2.95px) !important;
}

.header__mobile-hamburger02--active{
    opacity: 1 !important;
}

.header__mobile-hamburger02--active span:nth-child(1){
    transition: transform .15s .15s;
    transform: rotate(25deg) !important;
}

.header__mobile-hamburger02--active span:nth-child(2){
    transition: transform .15s .15s;
    transform: rotate(-25deg) !important;
}

.header__hamburgerMenu--forMobile{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: calc(100vh - 70px);
    position: absolute;
    top: 70px;
    left: 0;
    padding-top: 30px;
    background-color: inherit;
    visibility: hidden;
    opacity: 0;
    transition: .3s;
    z-index: 99;
}

.header__mobile-hamburgerMenu--active{
    visibility: visible;
    opacity: 1;
    transition: .3s;
}

.header__mobile-hamburgerMenuContainer{
    display: flex;
    flex-direction: column;
    width: 85%;
    height: auto;
    justify-content: center;
    align-items: center;
}

.header__hamburgerMenuContent-forMobile{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 95%;
    height: auto;
    color: #383838;
    transition: .3s;
    margin: 11px 0;
}

.header__hamburgerMenuContent-forMobile:nth-child(1){
    margin-top: 0px;
}

.header__hamburgerMenuContent-forMobile:nth-child(4){
    margin-bottom: 0px;
    padding-bottom: 0px;
}

.header__hamburgerMenuContent-forMobile:hover{
    color: #ff04c0;
    transition: .3s;
}

.header__hamburgerEN-forMobile{
    display: block;
    width: auto;
    height: auto;
}

.header__hamburgerEN-forMobile p{
    display: block;
    font-weight: 600;
    font-size: 22px;
}

.header__hamburgerJP-forMobile{
    display: block;
    width: auto;
    height: auto;
    margin-left: 5px;
}

.header__hamburgerJP-forMobile p{
    display: block;
    font-weight: 400;
    font-size: 14px;
}

.header__hamburgerMenuContent-forMobile svg{
    margin-left: 5px;
    transition: .3s;
}

.header__hamburgerMenuContent-forMobile:hover svg{
    transform: translateX(3px);
    transition: .3s;
}

.header__hamburgerMenuLine--forMobile{
    display: block;
    width: 100%;
    height: .8px;
    background-color: #747474;
    margin: 40px 0 15px 0;
}

.header__hamburgerMenuSocialMediaBox--forMobile{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 95%;
    height:auto;
}

.header__navSocialMediaLink--forMobile{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    transition: .3s;
    margin: 0 7px;
}

#header__twitterX--forMobile{
    border: solid 1px #383838;
    background-color: #383838;
    fill: #f9f9f9;
    margin-left: -5px;
}

#header__twitterX--forMobile:hover{
    background-color: #fefefe;
    fill: #383838;
    transition: .3s;
}

#header__instagram--forMobile{
    border: solid 1px #ff0069;
    background-color: #ff0069;
    fill: #f9f9f9;
    margin-right: 0;
}

#header__instagram--forMobile:hover{
    background-color: #fefefe;
    fill: #ff0069;
    transition: .3s;
}

#header__tiktok--forMobile{
    border: solid 1px #22f5e8;
    background-color: #22f5e8;
    fill: #383838;
}

#header__tiktok--forMobile:hover{
    background-color: #fefefe;
    fill: #383838;
    transition: .3s;
}

@media screen and (max-width: 959px) {
	.header__container--forPC{
        display: none;
    }

    .header__container--forMobile{
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 91%;
        height: 53px;
    }
}

.header__hamburgerMenuPhone--forMobile{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: 98%;
    height: auto;
    margin-bottom: 15px;
    padding: 15px 15px;
    background-color: #ffffff;
    border-radius: 1rem;
}

.header__hamburger--phoneNumber{
    display: block;
    width: auto;
    height: auto;
    font-weight: 600;
    font-size: 22px;
}

.header__hamburger--phoneNumber a{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.header__hamburger--phoneNumber a:hover{
    text-decoration: underline;
}

.header__hamburger--phoneInfo{
    display: block;
    width: auto;
    height: auto;
    font-weight: 400;
    font-size: 12px;
}


/* Main */
main{
    margin-top: 70px;
}

.mainSection01{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
}

#topImage--forPC{
    display: block;
    width: 100%;
    height: auto;
}

#topImage--forPC img{
    display: block;
    width: 100%;
    height: auto;
}

#topImage--forMobile{
    display: none;
}

@media screen and (max-width: 750px) {
    #topImage--forPC{
        display: none;
    }

    #topImage--forMobile{
        display: block;
        width: 100%;
        height: auto;
    }

    #topImage--forMobile img{
        display: block;
        width: 100%;
        height: auto;
    }
}

.mainSection02{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    margin-top: -80px;
    overflow: hidden;
}

.mainSection02__container{
    display:flex;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 1000px;
    height: auto;
    background-color: #fefefe;
    padding: 50px 0;
    position: relative;
}

.mainSection02__background{
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    z-index: 1;
}

.mainSection02__background img{
    display: block;
    width: 100%;
    height: 100%;
    opacity: .4;
}

.mainSection02__textContent{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    height: auto;
    z-index: 5;
}

.mainSection02__conceptTitle{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    flex-direction: column;
}

.mainSection02__conceptTitleEN{
    display: block;
    text-align: center;
    width: 90%;
    padding-bottom: 3px;
    border-bottom: solid .8px #848484;
    font-family: "IM Fell Double Pica SC", serif;
    color: #292929;
    font-weight: 400;
    font-size: 28px;
}

.mainSection02__conceptTitleJP{
    display: block;
    text-align: center;
    width: 90%;
    font-family: 'noto serif jp', serif;
    font-weight: 400;
    font-size: 14px;
    padding-top: 5px;
    color: #292929;
}

.mainSection02__conceptParagraphBox{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 90%;
    max-width: 800px;
    height: auto;
    margin-top: 30px;
}

.mainSection02__conceptImage{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
}

.mainSection02__conceptImage img{
    display: block;
    width: 100%;
    height: auto;
    opacity: 0.8;
}

.mainSection02__conceptTopBox{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 770px;
    height: auto;
    padding: 6px 10px;
    margin-top: -15px;
    background-color: #fefef7;
    z-index: 10;
}

.mainSection02__conceptTopBox p{
    display: block;
    font-weight: 600;
    font-size: 15px;
    color: #383838;
    text-align: center;
}

.mainSection02__conceptSecondBox{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: auto;
    margin-top: 40px;
}

.mainSection02__conceptSecondLeftBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    padding-right: 10px;
    height: auto;
    border-right: solid .8px #747474;
}

.mainSection02__conceptSecondLeftBox img{
    display: block;
    width: 92%;
    max-width: 250px;
    height: auto;
}

.mainSection02__conceptSecondLeftBox p{
    display: block;
    width: 100%;
    height: auto;
    font-weight: 600;
    font-size: 12.5px;
    text-align: center;
    color: #383838;
    margin-top: 8px;
}

.mainSection02__conceptSecondRightBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    padding-left: 10px;
    height: auto;
}

.mainSection02__conceptSecondRightBox img{
    display: block;
    width: 92%;
    max-width: 250px;
    height: auto;
}

.mainSection02__conceptSecondRightBox p{
    display: block;
    width: 100%;
    height: auto;
    font-weight: 600;
    font-size: 12.5px;
    text-align: center;
    color: #383838;
    margin-top: 8px;
}

.mainSection02__conceptBottomImage{
    display: block;
    width: 100%;
    height: auto;
    opacity: 0.8;
    margin-top: 40px;
}

.mainSection02__conceptBottomImage img{
    display: block;
    width: 100%;
    height: auto;
}

.mainSection02__conceptBottomBox{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 92%;
    height: auto;
    margin-top: 20px;
}

.mainSection02__conceptBottomBox p{
    display: block;
    width: 100%;
    height: auto;
    font-weight: 600;
    font-size: 14px;
    color: #383838;
    text-align: center;
}

.mainSection02__lastBox{
    display: block;
    width: 98%;
    max-width: 500px;
    height: auto;
    font-weight: 700;
    font-size: 14px;
    color: #383838;
    text-align: center;
    margin-top: 30px;
    background-color: #f4f4f7;
    padding: 18px 10px;
}

@media screen and (max-width: 1000px) {
    .mainSection02__conceptSecondBox{
        flex-direction: column;
    }
    
    .mainSection02__conceptSecondLeftBox{
        padding-right: 0;
        border-right: none;
        width: 100%;
    }
    
    .mainSection02__conceptSecondRightBox{
        padding-left: 0;
        border-left: none;
        width: 100%;
        margin-top: 25px;
    }

    .mainSection02__conceptSecondLeftBox p, .mainSection02__conceptSecondRightBox p{
        font-size: 12px;
    }
}

@media screen and (max-width: 750px) {
    #topImage--forPC{
        display: none;
    }

    #topImage--forMobile{
        display: block;
        width: 100%;
        height: auto;
    }

    .mainSection02{
        margin-top: -8px;
    }

    .mainSection02__container{
        width: 100%;
    }

    .mainSection02__conceptImage, .mainSection02__conceptBottomImage{
        width: 150%;
    }

    .mainSection02__conceptTopBox{
        width: 110%;
    }

    .mainSection02__conceptTopBox p{
        font-size: 13px;
    }
}

.mainSection03{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 80px 0;
    background-color: #fff6fe;
}

.mainSection03__container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 1000px;
    height: auto;
}

.mainSection03__titleBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    height: auto;
    position: relative;
}

.mainSection03__titleBox img{
    display: block;
    position: absolute;
    width: 100px;
    height: auto;
    right: 2%;
    bottom: -18px;
}

.mainSection03__titleEN{
    display: block;
    text-align: center;
    width: 90%;
    padding-bottom: 3px;
    border-bottom: solid .8px #848484;
    font-family: "IM Fell Double Pica SC", serif;
    color: #292929;
    font-weight: 400;
    font-size: 28px;
}

.mainSection03__titleJP{
    display: block;
    text-align: center;
    width: 90%;
    font-family: 'noto serif jp', serif;
    font-weight: 400;
    font-size: 14px;
    padding-top: 5px;
    color: #292929;
}

.mainSection03__container table{
    border-collapse: collapse;
    border: 1.3px solid #494949;
    margin-top: 25px;
    width: 90%;
    max-width: 600px;
    background-color: #fefefe;
}

.mainSection03__container td{
    font-size: 15px;
    color: #494949;
    border: 1px solid rgb(160 160 160);
    padding: 8px 10px;
    font-weight: 400;
    text-align:left;
}

.postMain{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: auto;
}

.postContainer{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 600px;
    height: auto;
    margin: 30px 0;
    padding: 50px 30px;
    background-color: #fff;
    border-radius: 1rem;
}

.postHeader{
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    justify-content: center;
    align-items: flex-start;
}

.postHeader time{
    display: block;
    font-weight: 400;
    font-size: 12px;
    color: #494949;
    margin-left: 5px;
}

.postTitle{
    display: block;
    font-family: 'inter', 'noto sans jp', sans-serif;
    font-weight: 800;
    font-size: 24px;
    color: #383838;
    margin-left: 3px;
}

.postEyecatch{
    display: flex;
    width: 100%;
    height: auto;
    justify-content: center;
    align-items: center;
    margin-top: 15px;
}

.postEyecatch img{
    display: block;
    width: 100%;
    height: auto;
}

.postContent{
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    justify-content: center;
    align-items: flex-start;
    font-family: 'inter', 'noto sans jp', sans-serif;
}

.postContent h1{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #383838;
    font-weight: 700;
    font-size: 28px;
    margin-top: 20px;
    margin-bottom: 20px;
    border-left: solid 4px #747474;
    padding-left: 10px;
}

.postContent h2{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #383838;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.5;
    margin-top: 30px;
    margin-bottom: 9px;
    background-color: #ffecfa;
    padding: 8px 15px;
    border-radius: 1rem;
}

.postContent h3{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #383838;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.3;
    margin-top: 30px;
    margin-bottom: 8px;
    padding: 0 15px;
}

.postContent h4{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #383838;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.3;
    margin-top: 11px;
    margin-bottom: 7px;
    padding: 0 15px;
}

.postContent h5{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #383838;
    font-weight: 500;
    font-size: 15.5px;
    line-height: 1.3;
    margin-top: 9px;
    margin-bottom: 6px;
    padding: 0 15px;
}

.postContent h6{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #383838;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.3;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 0 15px;
}

.postContent p{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #494949;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.6;
    margin-top: 12px;
    margin-bottom: 5px;
    padding: 0 15px;
}

.postContent strong{
    font-family: 'inter', 'noto sans jp', sans-serif;
    color: #f48edb;
    font-weight: 600;
    font-size: 14px;
}

.postContent ul{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #494949;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.6;
    margin-top: 12px;
    margin-bottom: 5px;
    padding: 0 30px 0 15px;
    margin-left: 15px;
    list-style: outside;
}

.postContent ol{
    display: block;
    width: 100%;
    height: auto;
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #494949;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.6;
    margin-top: 12px;
    margin-bottom: 5px;
    padding: 0 30px 0 15px;
    margin-left: 15px;
    list-style: outside;
}

.postContent li{
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #494949;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.6;
}

.postContent table{
    display: block;
    width: 100%;
    height: auto;
    padding: 0 13.5px;
    margin-top: 30px;
    margin-bottom: 15px;
}

.postContent td{
    font-family: 'inter', 'noto sans jp', sans-serif;
    text-align: left;
    color: #494949;
    font-weight: 400;
    font-size: 13.5px;
    line-height: 1.6;
}

@media screen and (max-width: 600px) {
    .postContainer{
        margin: 0;
        padding: 50px 30px;
        background-color: #fff;
        border-radius: 0;
    }
}

.postArchive{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 15px 20px;
    border-bottom: solid .8px #747474;
}

.postArchive a{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: auto;
}

.postArchive__thumbnail{
    display:block;
    width: 120px;
    height: 120px;
    margin-right: 20px;
}

.postArchive__thumbnail img{
    display: block;
    width: 120px;
    height: 120px;
}

.postArchive__textBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: calc(100% - 170px);
    height: auto;
}

.postArchive__date{
    display: block;
    font-weight: 400;
    font-size: 12px;
    color: #494949;
}

.postArchive__title{
    display: block;
    font-weight: 600;
    font-size: 17px;
    color: #383838;
}

.archiveMain{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: auto;
}

.archiveContainer{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 600px;
    height: auto;
    margin: 30px 0;
    padding: 50px 30px;
    background-color: #fff;
    border-radius: 1rem;
}

.archiveTitleBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
}

.archiveTitleEN{
    display: block;
    width: 80%;
    text-align: center;
    font-weight: 600;
    font-size: 22px;
    color: #383838;
    padding-bottom: 3px;
    border-bottom: solid .8px #747474;
}

.archiveTitleJP{
    display: block;
    font-weight: 400;
    font-size: 12px;
    color: #383838;
    padding-top: 3px;
}

.archiveNewsList{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    height: auto;
    margin-top: 12px;
}

.archiveNewsNotFound{
    display: block;
    font-weight: 500;
    font-size: 16px;
    color: #383838;
    margin-top: 12px;
}

.wp-pagenavi{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
    margin-top: 20px;
}

.pages{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
    padding: 5px 8px;
    border: solid .8px #494949;
    background-color: #494949;
    color: #fefefe;
    border-radius: 5px;
    margin-right: 15px;
    font-weight: 400;
    font-size: 12px;
}

.current{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: solid .8px #f48edb;
    background-color: #f48edb;
    color: #fefefe;
    border-radius: 5px;
    margin-right: 8px;
    font-weight: 400;
    font-size: 12px;
}

.larger{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: solid .8px #f48edb;
    background-color: #ffffff;
    color: #f48edb;
    border-radius: 5px;
    margin-right: 8px;
    font-weight: 400;
    font-size: 12px;
}

.smaller{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: solid .8px #f48edb;
    background-color: #ffffff;
    color: #f48edb;
    border-radius: 5px;
    margin-right: 8px;
    font-weight: 400;
    font-size: 12px;
}

@media screen and (max-width: 600px) {
    .archiveContainer{
        margin: 0;
        padding: 50px 30px;
        background-color: #fff;
        border-radius: 0;
    }
}

.mainSection04{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    background-color: #fff;
    padding: 50px 0;
    position: relative;
    overflow: hidden;
}

.mainSection04__background{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url('./images/kingdom-background.jpg');
}

.mainSection04__container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 1000px;
    height: auto;
    padding: 50px 0;
    background-color: rgba(225,225,225, .55);
    z-index: 5;
}

.mainSection04__titleBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 80%;
    height: auto;
    margin-bottom: 20px;
    position: relative;
}

.mainSection04__titleEN{
    display: block;
    width: 100%;
    height: auto;
    padding-bottom: 3px;
    text-align: center;
    border-bottom: solid .8px #747474;
    font-family: "IM Fell Double Pica SC", serif;
    color: #292929;
    font-weight: 400;
    font-size: 28px;
}

.mainSection04__titleJP{
    display: block;
    text-align: center;
    width: 100%;
    font-family: 'noto serif jp', serif;
    font-weight: 400;
    font-size: 14px;
    padding-top: 5px;
    color: #292929;
}

.mainSection04__eventBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 600px;
    height: auto;
}

.mainSection05{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    background-color: #fff;
    padding: 20px 0 50px 0;
}

.mainSection05__container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 1000px;
    height: auto;
}

.mainSection05__titleBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 80%;
    height: auto;
    margin-bottom: 20px;
}

.mainSection05__titleEN{
    display: block;
    width: 100%;
    height: auto;
    padding-bottom: 3px;
    text-align: center;
    border-bottom: solid .8px #747474;
    font-family: "IM Fell Double Pica SC", serif;
    color: #292929;
    font-weight: 400;
    font-size: 28px;
}

.mainSection05__titleJP{
    display: block;
    text-align: center;
    width: 100%;
    font-family: 'noto serif jp', serif;
    font-weight: 400;
    font-size: 14px;
    padding-top: 5px;
    color: #292929;
}

.mainSection05__accessBox{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 800px;
    height: auto;
}

.mainSection05__accessBox iframe{
    display: block;
    width: 40%;
    height: 230px;
}

.mainSection05__infoBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: auto;
}

.mainSection05__infoContent{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 95%;
    height: auto;
    padding: 15px 0;
}

.mainSection05__infoTitle{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 80px;
    height: auto;
    font-weight: 400;
    font-size: 14px;
    color: #484848;
    padding-right: 10px;
}

.mainSection05__information{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: auto;
    height: auto;
    font-weight: 400;
    font-size: 14px;
    color: #484848;
    padding-left: 10px;
    border-left: solid .8px #747474;
}

.mainSection05__information a{
    font-weight: 400;
    font-size: 14px;
    color: #484848;
}

@media screen and (max-width:  720px) {
    .mainSection05__accessBox{
        flex-direction: column-reverse;
    }

    .mainSection05__accessBox iframe{
        width: 100%;
        height: 230px;
    }

    .mainSection05__infoBox{
        width: 100%;
        margin-top: 20px;
    }
    
    .mainSection05__infoContent{
        display: flex;
        justify-content: flex-start;
        align-items: center;
        width: 95%;
        height: auto;
        padding: 15px 0;
    }
    
}

footer{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    background-color: #595959;
}

.footer__top{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width:92%;
    max-width: 1000px;
    height: auto;
    padding: 30px 0;
}

.footer__logoBox{
    display: block;
    width: 150px;
    height: auto;
}

.footer__logoBox img{
    display: block;
    width: 100%;
    height: auto;
}

.footer__infoBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: auto;
    height: auto;
    margin-left: 10px;
}

.footer__infoEN{
    display: block;
    font-weight: 400;
    font-size: 12px;
    color: #efefef;
}

.footer__infoENG{
    display: block;
    font-weight: 700;
    font-size: 20px;
    color: #efefef;
    margin-top: 3px;
}

.footer__bottom{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width:92%;
    max-width: 1000px;
    height: auto;
    padding: 11px 0;
    border-top: solid .8px #8f8f8f;
}

.footer__bottom p{
    display: block;
    font-weight: 400;
    font-size: 11px;
    color: #efefef;
}

.footer__socialMedia{
    display:flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
    margin-top: 5px;
    margin-bottom: 12px;
}

.accessMapContainer{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 92%;
    max-width: 500px;
    height: auto;
    margin-bottom: 20px;
}

.accessMapContainer iframe{
    display: block;
    width: 100%;
    height: 350px;
    margin-top: 30px;
}

.footer__socialMediaButton{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    background-color: #efefef;
    border-radius: 50%;
    border: solid #efefef 1px;
    fill: #383838;
    transition: .1s;
    margin: 0 5px;
}

.footer__socialMediaButton:hover{
    background-color: #383838;
    fill: #efefef;
    transition: .1s;
}

.accessInfo{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 80%;
    height: auto;
    padding-top: 5px;
}

.accessInfoRow{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 5px 0;
}

.accessInfoRowTop{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 80px;
    height: auto;
    padding-right: 6px;
    font-weight: 400;
    font-size: 14px;
    color: #383838;
}

.accessInfoRowBottom{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: calc(100% - 80px);
    height: auto;
    padding-left: 6px;
    font-weight: 400;
    font-size: 14px;
    color: #383838;
    border-left: #747474 solid .8px;
}

.castGallery{
    display: grid;
    width: 100%;
    height: auto;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 30px;
}

.castBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: auto;
    padding: 30px 10px;
    margin: 10px 8px;
    background-color: #f4f4f7;
}

.castImageBox {
    display: block;
    width: 85%;
    height: auto;
}

.castImageBox img{
    display: block;
    width: 100%;
    height: auto;
}

.castName{
    display: block;
    width: 90%;
    height: auto;
    text-align: center;
    font-weight: 500;
    font-size: 18px; 
    color:#fefefe;
    margin-top: 10px;
    padding: 3px 6px;
    background-color: rgb(175, 67, 135);
}

.castSNS{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    margin-top: 10px;
}

.castSNSButton{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #474747;
    border: solid 1px #474747;
    fill: #fefefe;
    transition: .2s;
    margin: 0 6px;
}


.castSNSButton:hover{
    background-color: #fefefe;
    fill: #474747;
    transition: .2s;
}

@media screen and (max-width:  600px) {
    .castGallery{
        grid-template-columns: repeat(1, 1fr);
    }

    .castImageBox {
        display: block;
        width: 60%;
        height: auto;
    }
    
    .castImageBox img{
        display: block;
        width: 100%;
        height: auto;
    }
}

.recruit__thumbnailBox{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 95%;
    height: auto;
    margin-top: 30px;
}

.recruit__thumbnailBox img{
    display:block;
    width: 100%;
    height: auto;
    max-width: 400px;
}

.recruit__infoBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    height: auto;
    margin-top: 30px;
}

.recruit__infoElementBox{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    height: auto;
    padding: 12px 8px;
    border-bottom: solid .3px #747474;
}

.recruit__infoElementBox:nth-child(1){
    border-top: solid .3px #747474;
}

.recruit__infoElementName{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 80px;
    height: auto;
    font-weight: 600;
    font-size: 14px;
    color: #383838;
}

.recruit__infoElement{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(100% - 80px);
    padding-left: 15px;
    border-left: solid .5px #848484;
    font-weight: 600;
    font-size: 14px;
    color: #383838;
}

.recruitApplyBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 92%;
    height: auto;
}

.recruitLink{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
}

.recruitLink img{
    display: block;
    width: 100%;
    height: auto;
}