@charset "utf-8";

/* eyeCatch */
.pageWrap{            
    background-color: #302a24;
    padding: 80px 0;
    overflow: hidden;
    position: relative;
}
.pageWrap:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/technicalLounge/bg.jpg);
    background-attachment: fixed;
    background-size: cover;
    opacity: 0.5;
}
.mainImg{
    text-align: center;
    position: relative;
    margin-bottom: 80px;
}
.mainImg>img{
    max-width: 760px;
    width: 50%;
    opacity: 0;
    filter: blur(50px);
    animation: blurIn 1.5s ease-in-out forwards;
}
@keyframes blurIn{
    0%{
        opacity: 0;
        filter: blur(50px);
    }
    100%{
        opacity: 1;
        filter: blur(0px);
    }
}
.mainImg_txt{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    max-width: 1320px;
    width: 90%;          
}
.mainImg_txt>h3,
.mainImg_txt>h3>span,
.mainImg_txt>p{
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    color: #fff;
    filter:drop-shadow(0px 0px 5px #000);
}           
.mainImg_txt>h3{
    line-height: 3;
    margin-bottom: 50px;
}
.mainImg_txt>h3>span{
    font-size: 1.25em;
    line-height: 3;
    display: inline-block;
}
.mainImg_txt>p.em{
    font-size: 1.5em;
    letter-spacing: 0.1em;
    line-height: 1.8;
    margin-bottom: 30px;
}
.mainImg_txt > *{
    opacity: 0;
    scale: 0.8;
    transition: opacity 1.5s ease,scale 1.5s ease;
}  
/* 表示時にフェードイン＋スライドダウン */
.mainImg_txt.show > *:nth-child(1) {
    transition-delay: 1.5s;
    opacity: 1;
    scale: 1;
}
.mainImg_txt.show > *:nth-child(2) {
    transition-delay: 2.5s;
    opacity: 1;
    scale: 1;
}
.mainImg_txt.show > *:nth-child(3) {
    transition-delay: 3.5s;
    opacity: 1;
    scale: 1;
}
.mainTxt{                
    text-align: center;                
    position: relative;
    padding: 80px 0;
    background-color: rgba(48, 42, 36, 0.5);
    margin-bottom: 80px;
}
.mainTxt_inner{
    max-width: 1100px;
    width: 80%;
    margin: 0 auto;
}
.mainTxt_inner>h4{
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-size: 2em;
    color: #fff;
    margin-bottom: 30px;
}
.mainTxt_inner>p{
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-size: 1em;
    line-height: 2.5;
    color: #fff;
    margin-bottom: 20px;
}
.mainTxt_inner>p:last-of-type{
    margin-bottom: 0px;
}
.under500{
    display: none;
}
@media (max-width:1024px){
    .mainImg_txt>h3{
        line-height: 1.8;
    }
    .mainImg_txt>h3>span{
        font-size: 1.15em;
        line-height: 1.8;
    }
    .mainImg_txt>p.em{
        font-size: 1.3em;
    }
    .mainTxt_inner>h4{
        font-size: 1.75em;
    }
    .mainTxt_inner>p{
        font-size: 0.9em;
    }
}
@media (max-width:960px){
    .mainImg>img{
        width: 65%;
    }
    .mainImg_txt{
        width: 80%;                
    }
    .mainImg_txt>h3,
    .mainImg_txt>h3>span{
        line-height: 1;
    }
}
@media (max-width:768px){
    .mainImg>img{
        width: 75%;
    }
    .mainImg_txt{
        width: 90%;                
    }
    .mainImg_txt>h3>span{
        font-size: 1.05em;
    }
    .mainImg_txt>p.em{
        font-size: 1.1em;
    }
    .mainTxt_inner>h4{
        font-size: 1.5em;
    }
    .mainTxt_inner>p{
        font-size: 0.8em;
    }
}
@media (max-width:500px){
    .mainImg{
        margin-bottom: 50px;
    }
    .mainTxt{
        padding: 50px 0;
        margin-bottom: 50px;
    }
    .mainImg_txt>h3>span{
        font-size: 0.95em;
    }
    .mainImg_txt>p.em{
        font-size: 1em;
    }
    .mainTxt_inner>h4{
        font-size: 1.3em;
        margin-bottom: 20px;
    }
    .mainTxt_inner>p{
        font-size: 0.7em;
        margin-bottom: 15px;
    }
    .under500{
        display: block;
    }
}
@media (max-width:430px){
    .mainImg_txt>h3>span{
        font-size: 0.85em;
    }
    .mainImg_txt>p.em{
        font-size: 0.8em;
    }
    .mainTxt_inner>h4{
        font-size: 1.1em;
    }
}

.decoImg_row{
    position: relative;
    margin-bottom: 80px;
}
.decoImg_row>ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.decoImg_row>ul>li{
    width: 25%;
    aspect-ratio: 360/250;
    position: relative;
    overflow: hidden;
}
.decoImg_row>ul>li:nth-child(odd)>img{
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-100%);
    transition: transform 1s;
    z-index: 0;
}
.decoImg_row>ul>li:nth-child(even)>img{
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(100%);
    transition: transform 1s;
    z-index: 0;
}
/* 表示中の画像 */
.decoImg_row li img.active.up {
    transform: translateY(0%);
    z-index: 1;
}
.decoImg_row li img.active.down {
    transform: translateY(0%);
    z-index: 1;
}
/* 非表示にする時の画像（out） */
.decoImg_row li img.out.up {
    transform: translateY(100%); /* 逆方向にスライドアウト */
}
.decoImg_row li img.out.down {
    transform: translateY(-100%); /* 逆方向にスライドアウト */
}
@media (max-width:1200px){
    .decoImg_row>ul>li{
        width: 50%;
    }
    .decoImg_row>ul>li:nth-child(2)>img{
        position: absolute;
        top: 0;
        left: 0;
        transform: translateX(100%) translateY(0%);
        transition: transform 1s;
        z-index: 0;
    }
    .decoImg_row>ul>li:nth-child(3)>img{
        position: absolute;
        top: 0;
        left: 0;
        transform: translateX(-100%) translateY(0%);
        transition: transform 1s;
        z-index: 0;
    }
    /* 表示中の画像 */
    .decoImg_row>ul>li:nth-child(2)>img.active.left,
    .decoImg_row>ul>li:nth-child(3)>img.active.right {
        transform: translateX(0%) translateY(0%);
        z-index: 1;
    }
    /* 非表示にする時の画像（out） */
    .decoImg_row>ul>li:nth-child(2)>img.out.left {
        transform: translateX(-100%) translateY(0%);
    }
    .decoImg_row>ul>li:nth-child(3)>img.out.right {
        transform: translateX(100%) translateY(0%);
    }
}

.floorWrap{
    position: relative;
}
.floorWrap>.titleBox>h3{
    font-family: "Oswald", sans-serif;
    font-size: 2.5em;
    color: #fff;
    text-align: center;
    margin-bottom: 50px;
}
.floorRow{
    text-align: center;
}
.floorRow.floor01{
    margin-bottom: 50px;
}
.floorRow>h4{
    display: inline-block;
    font-family: "Oswald", sans-serif;
    font-size: 2em;
    color: #fff;
    background-color: #91837c;
    padding: 30px;
    box-sizing: border-box;
    margin-bottom: 50px;
}
.floorRow>ul{
    display: flex;
    flex-wrap: wrap;
}
.floorRow>ul>li{
    width: 50%;
}
.floorRow.floor01>ul>li.imgBox{
    background: linear-gradient(180deg,transparent 0%,transparent 10%,#c5bdb9 10%,#c5bdb9 90%,transparent 90%,transparent 100%);
}
.floorRow.floor02>ul>li.imgBox{
    background: linear-gradient(180deg,transparent 0%,transparent 10%,#91837c 10%,#91837c 90%,transparent 90%,transparent 100%);
}
.effect{
    mix-blend-mode: multiply;
}
.floorRow>ul>li.txtBox>.listTab01>ul,
.floorRow>ul>li.txtBox>.listTab02>ul{
    display: flex;
}
.floorRow>ul>li.txtBox>.listTab01>ul>li,
.floorRow>ul>li.txtBox>.listTab02>ul>li{
    width: 50%;
    font-family: "Oswald", sans-serif;
    font-size: 1.75em;
    line-height: 0.8;
    color: #b69800;
    padding: 20px 0;
    box-sizing: border-box;
    cursor: pointer;
    background-color: #333;
    opacity: 0.5;
}
.floorRow>ul>li.txtBox>.listTab01>ul>li.active,
.floorRow>ul>li.txtBox>.listTab02>ul>li.active{
    opacity: 1;
}
.floorRow>ul>li.txtBox>.listTab01>ul>li>span,
.floorRow>ul>li.txtBox>.listTab02 >ul>li>span{
    display: inline-block;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-size: 0.5em;
    line-height: 1;
    color: #b69800;
}
.listWrap01,
.listWrap02{
    background-color: #333;
    padding: 30px 80px;
    box-sizing: border-box;
}
.listWrap01_inner,
.listWrap02_inner{
    text-align: center;
}
.listWrap01_inner>ul,
.listWrap02_inner>ul{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}
.listWrap01_inner>ul>li,
.listWrap02_inner>ul>li{
    width: 30%;
}
.listWrap01_inner>p,
.listWrap02_inner>p{
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-size: 1.15em;
    color: #fff;
    background-color: #a84125;
    padding: 10px 0;
    box-sizing: border-box;
    border-radius: 50px;
}
.listWrap01_inner>.imgBox,
.listWrap02_inner>.imgBox{
    position: relative;
    margin-bottom: 30px;
}
.listWrap01_inner>.imgBox>span,
.listWrap02_inner>.imgBox>span{
    position: absolute;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-size: 0.75em;
    color: #fff;
    bottom: 0.5em;
    right: 0.5em;
}
@media (max-width:1320px){
    .floorRow>ul>li.txtBox>.listTab01>ul>li,
    .floorRow>ul>li.txtBox>.listTab02>ul>li{
        font-size: 1.5em;
    }
    .listWrap01_inner>p,
    .listWrap02_inner>p{
        font-size: 1em;
    }
}
@media (max-width:1200px){
    .floorRow>ul>li{
        width: 100%;
    }
}
@media (max-width:1024px){
    .floorWrap>.titleBox>h3{
        font-size: 2.25em;
    }
    .floorRow>h4{
        font-size: 1.75em;
    }
}
@media (max-width:768px){
    .listWrap01,
    .listWrap02{
        padding: 30px 50px;
    }
    .floorWrap>.titleBox>h3{
        font-size: 2em;
    }
    .floorRow>h4{
        font-size: 1.5em;
    }
    .floorRow>ul>li.txtBox>.listTab01>ul>li,
    .floorRow>ul>li.txtBox>.listTab02>ul>li{
        font-size: 1.3em;
    }
    .listWrap01_inner>p,
    .listWrap02_inner>p{
        font-size: 0.9em;
    }
}
@media (max-width:500px){
    .listWrap01,
    .listWrap02{
        padding: 30px;
    }
    .floorWrap>.titleBox>h3{
        font-size: 1.75em;
    }
    .floorRow>h4{
        font-size: 1.25em;
    }
    .floorRow>ul>li.txtBox>.listTab01>ul>li,
    .floorRow>ul>li.txtBox>.listTab02>ul>li{
        font-size: 1.1em;
    }
    .listWrap01_inner>p,
    .listWrap02_inner>p{
        font-size: 0.8em;
    }
}
@media (max-width:430px){
    .floorRow>h4{
        margin-bottom: 30px;
    }
    .listWrap01,
    .listWrap02{
        padding: 30px 10px;
    }
    .listWrap01_inner>ul,
    .listWrap01_inner>.imgBox,
    .listWrap02_inner>.imgBox{
        margin-bottom: 15px;
    }
    .floorWrap>.titleBox>h3{
        font-size: 1.5em;
    }
    .floorRow>h4{
        font-size: 1em;
    }
    .floorRow>ul>li.txtBox>.listTab01>ul>li,
    .floorRow>ul>li.txtBox>.listTab02>ul>li{
        font-size: 0.9em;
    }
    .listWrap01_inner>p,
    .listWrap02_inner>p{
        font-size: 0.7em;
    }
}