@charset "UTF-8";


/* mainVisual
==============================*/
#mainVisual{
    clear: both;
    margin-top: -80px;
    overflow: hidden;
    height:748px;
    background: url(../image/mainvisual_bg.jpg) no-repeat center center;
    background-size: cover;
}

#mainVisual .inner{
    max-width: 1500px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}

#mainVisual .inner .target{
    position: absolute;
    top: 0;
    opacity: 0;
}

#mainVisual .inner .parts01{
    z-index: 10;
    transition: all 0.2s 0s ease;
}

#mainVisual .inner .parts02,
#mainVisual .inner .parts04{
    top: 150px;
    transition-timing-function:ease-in-out;
}

#mainVisual .inner .parts03,
#mainVisual .inner .parts05{
    transition-timing-function:ease-in-out;
    top: -150px;
}

@media only screen and (max-width: 1500px) {
    #mainVisual{
            height: 61.6vw;
    }
}

@media only screen and (max-width: 768px) {
    #mainVisual{
        margin-top: -50px;
        height:110vw;
        background: url(../image/mainvisual_bg.jpg) no-repeat center center;
        background-size: cover;
    }
    
    #mainVisual .inner .target {
        height: 110vw;
        margin: 0 -60%;
    }

}

/* whatsBl
==============================*/
#whatsBl{
    background: url(../image/whats_bg.jpg) no-repeat center top;
    background-size: cover;
    height: 378px;
    text-align: center;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 100px ;
    color: #000;
    letter-spacing: 0.2em;
    text-align: center;
    display: table;
}

#whatsBl > div{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

#whatsBl .logo{
    filter: drop-shadow(0px 2px 8px rgb(255, 255, 255));
}

#whatsBl h2{
    font-size: 5.0rem;
    margin: 30px 0 20px 0;
    line-height: 1;
    filter: drop-shadow(0px 2px 8px rgb(255, 255, 255));
}

#whatsBl p.copy{
    font-size: 3.0rem;
    margin-bottom: 20px;
    line-height: 1.2;
    filter: drop-shadow(0px 2px 8px rgb(255, 255, 255));
}

#whatsBl .btnDesign a{
    color: #000;
    background: #fff;
}

@media only screen and (max-width: 768px) {
    #whatsBl{
        height: inherit;
        margin-bottom: 15vw;
        padding: 10vw 6%;
    }

    #whatsBl .logo{
        width: 60%;
        margin: 0 auto 5vw;
    }
    
    #whatsBl h2{
        font-size: 6vw;
        margin: 3vw 0 2vw 0;
        font-weight: 900;
    }

    #whatsBl p.copy{
        font-size: 4vw;
        font-weight: 900;
        margin-bottom: 5vw;
    }

}

/* featureBl
==============================*/
#featureBl{}

#featureBl .featurePoint{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;    
    width: 100%;
    padding-bottom: 15px;
}

#featureBl .featurePoint article{
    width: 47.827%;
    margin-bottom: 85px;
    position: relative;
}

#featureBl .featurePoint article:before{
    content: "";
    display: inline-block;
    position: absolute;
    width: 110px;
    height: 161px;
    background: url(../image/feature_label_premium.png) no-repeat left top;
    left: 10px;
    top: -30px;
}

#featureBl .featurePoint article dl{
    padding: 25px 10px;
}

#featureBl .featurePoint article dt{
    margin-bottom: 5px;
    font-size: 3.0rem;
}

#featureBl .featurePoint article dd{
    font-size: 1.8rem;
    line-height: 2;
}

#featureBl .featurePoint .btnDesign span{
    letter-spacing: -0.05em;
}

#featureBl .featurePoint .btn.comingsoon > *{
    opacity: 0.4;
}

#featureBl .featurePoint .btn.comingsoon:before{
    content: "coming soon";
    top: -20px;
    z-index: 1;
    left: 0;
    font-size: 2.4rem;    
    width: 100%;
    text-align: center;
    position: absolute;
  color: #cbaf62;
  background: -webkit-linear-gradient(90deg, #cbaf62, #f6eaaa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
    font-weight: 900;    
}

@media only screen and (max-width: 768px) {
    #featureBl .featurePoint{
        display: block;
        padding-bottom: 0;
    }

    #featureBl .featurePoint article{
        width: 100%;
        margin-bottom: 15vw;
    }

    #featureBl .featurePoint article:before{
        width: 55px;
        height: 81px;
        background: url(../image/feature_label_premium.png) no-repeat left top;
        background-size: 55px auto;
        top: -20px;
    }

    #featureBl .featurePoint article dl{
        padding: 3vw 0 8vw ;
    }

    #featureBl .featurePoint article dt{
        font-size: 4.5vw;
        line-height: 1.4;
    }

    #featureBl .featurePoint article dd{
        font-size: 3.5vw;
    }

    #featureBl .featurePoint .btn.comingsoon:before{
        top: -15px;
        font-size: 3.5vw;
    }
}

/* contactBl
==============================*/
#contactBl{
    height:400px;
    background: url(../image/contact_bg.jpg) no-repeat right bottom #fff;
    background-size: 45% auto;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 65px ;
    display: table;
    position: relative;
}

#contactBl p.obi{
    width: 100%;
    font-size: 3.0rem;
    letter-spacing: 0.1em;
    color: #fff;
    padding: 7px 0;
    text-align: center;
    background: #dfc788;
    background: -moz-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#a98d40), to(#dfc788));
    background: -webkit-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: -o-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: linear-gradient( #a98d40 0%, #dfc788 100%);
}

#contactBl .txtArea{
    position: absolute;
    top: 25%;
    right: calc(100vw - 50%);
}

#contactBl a.telBtn{
    display: block;
    height: 100%;
    width: 100%; 
    margin-bottom: 3%;
}

#contactBl a.telBtn .txt{
    color: #b09548;
    background:url(../image/contact_icn_tel.png) no-repeat left center;
    background-size: 72px auto;
    font-size: 3.2rem;
    text-align: center;
    line-height: 1.1;
    font-weight: 900;
    display: inline-block;
    padding-left: 95px;
    max-width: 1500px;
    margin: 0 auto;
}

#contactBl a.telBtn .number{
    font-size: 6.7rem;
}

#contactBl a.telBtn .flex{
    display: flex;
    justify-content: space-between;
}

#contactBl .txtArea p{
    color: #000;
    margin-bottom: 3%;
    font-size: 2.6rem;
    font-weight: bold;
}

#contactBl .txtArea .column02{
    display: table;
}

#contactBl .txtArea .column02 > *:nth-child(1){
    padding-right: 10px;
    font-size: 2.0rem;
    color: #000;
    text-indent: -0.5em;
    font-weight: bold;
}

#contactBl .txtArea .column02 > *{
    display: table-cell;
    vertical-align: middle;
}

#contactBl a.inquiryBtn{
    position: relative;
    border: 1px solid #bf9d3e;
    border-radius: 50px;
    width: 100%;
    text-align: center;
    color: #b09548;
    padding: 20px 60px;
    font-weight: bold;
    box-shadow: 0px 0px 24px 3px rgba(227, 191, 93, 0.47);
    background: linear-gradient(0deg, rgba(248,239,215,1) 0%, rgba(255,255,255,1) 100%);
    font-size: 3.6rem;
    width: auto;
}

#contactBl a.inquiryBtn span{
    position: relative;
    color: #b09548;
    font-size: 3.6rem;
    line-height: 1;
    display: block;
}

#contactBl a.inquiryBtn span:after{
    content: "";
    position: absolute;
    top: -35px;
    right: -45px;
    width: 42px;
    height: 42px;
    background: url(../../image/icn_free.png) no-repeat left top;
    display: inline-block;
}


/*#contactBl a.inquiryBtn span{
    display: inline-block;
    line-height: 1.3;
}

#contactBl a.inquiryBtn span:first-child{
    font-size: 1.8rem;
}

#contactBl a.inquiryBtn span:last-child{
    font-size: 2.4rem;
}*/

@media only screen and (max-width: 1500px) {
    #contactBl {    
        background: url(../image/contact_bg.jpg) no-repeat right bottom #fff;
        background-size: auto 100%;
        margin: 0 -60px 65px;
    }
    
    #contactBl .txtArea {
        right: inherit;
        left: 60px;
    }
}

@media only screen and (max-width: 1200px) {
    #contactBl {    
        background: url(../image/contact_bg.jpg) no-repeat 150% bottom #fff;
        background-size: auto 100%;
    }
}

@media only screen and (max-width: 1000px) {
    #contactBl {    
        background: url(../image/contact_bg.jpg) no-repeat 350% bottom #fff;
        background-size: auto 100%;
    }
}

@media only screen and (max-width: 768px) {
    #contactBl{
        height: inherit;
        background: url(../image/contact_bg.jpg) no-repeat 1200% bottom #fff;
        background-size: 95% auto;
        margin: 0 -6.7% 10vw ;
    }

    #contactBl p.obi{
        font-size: 4vw;
    }

    #contactBl .txtArea{
        position: inherit;
        top: inherit;
        right: inherit;
        padding: 8vw 0;
        left: 2.4%;
        display: block;
        width: 60%;
        text-align: center;
    }
    
    #contactBl .txtArea p {
      margin-bottom: 4%;
      font-size: 3vw;
    }
    
    #contactBl a.telBtn {
      margin-bottom: 2vw;
    }
    
    #contactBl a.telBtn .txt {
        background: url(../image/contact_icn_tel.png) no-repeat left center;
        background-size: 13% auto;
        font-size: 3.2vw;
        padding-left: 10vw;
    }
    
    #contactBl .txtArea .txt .number {
      font-size: 7.5vw;
        letter-spacing: -0.01em;
    }

    #contactBl .txtArea .column02 {
      margin: 0 auto;
    }
    
    #contactBl .txtArea .column02 > *:nth-child(1){
        font-size: 3vw;
        text-align: left;
    }

    #contactBl a.inquiryBtn{
        padding: 10px 20px;
        display: inline-block;
        box-shadow: 0px 0px 12px 2px rgba(227, 191, 93, 0.47);
    }
    
    #contactBl a.inquiryBtn span{
        font-size: 3vw;   
    }
    
    #contactBl a.inquiryBtn span:after{
        content: "";
        position: absolute;
        top: -20px;
        right: -23px;
        width: 21px;
        height: 21px;
        background: url(../../image/icn_free.png) no-repeat left top;
        background-size: 21px auto;
    }
}

/* firsttimeBl
==============================*/
#firsttimeBl{
    height:374px;
    background: url(../image/firsttime_bg.jpg) no-repeat right bottom ;
    background-size: cover;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 65px ;
    position: relative;
}

#firsttimeBl a{
    display: block;
    width: 100%;
    height: 100%;
}

#firsttimeBl a:hover{
    opacity: 1 !important;
}

#firsttimeBl .txtArea {
    text-align: left;
    position: absolute;
    top: 3vw;
    left: calc(100vw - 50%);
}

#firsttimeBl .txtArea h2{
    margin-bottom: 20px;
    text-align: left;
}

#firsttimeBl .txtArea p{
    margin-bottom: 40px;
    font-size: 2.4rem;
}

#firsttimeBl .txtArea .btnDesign{
    background: rgba(0,0,0,0.5);
}

#firsttimeBl a:hover .btnDesign{
    opacity: 0.7;
}

@media only screen and (max-width: 1500px) {
    #firsttimeBl {    
        margin: 0 -60px 65px;
    }
    
    #firsttimeBl .txtArea {
        right: 60px;
        left:  inherit;
    }
}

@media only screen and (max-width: 1200px) {
    #firsttimeBl {    
        background: url(../image/firsttime_bg.jpg) no-repeat 50% bottom #fff;
        background-size: cover;
    }
}

@media only screen and (max-width: 1000px) {
    #firsttimeBl .txtArea {
        top: 6vw;
    }
}

@media only screen and (max-width: 768px) {
    #firsttimeBl{
        height: inherit;
        background: url(../image/firsttime_bg.jpg) no-repeat 38% center ;
        background-size: cover;
        margin: 0 -6.7% 10vw ;
        position: relative;
        overflow: hidden;
    }

    #firsttimeBl .txtArea {
        position: inherit;
        top: inherit;
        left: inherit;
        padding: 8vw 6% 8vw 0 ;
        width: 70%;
        float: right;
    }

    #firsttimeBl .txtArea h2{
        margin-bottom: 3vw;
    }

    #firsttimeBl .txtArea p{
        margin-bottom: 3vw;
        font-size: 3.5vw;
    }
    
    #firsttimeBl .txtArea p br{
        display: none;
    }
    
}

/* priceBl
==============================*/
#priceBl{
    height:454px;
    background: url(../image/price_bg.jpg) no-repeat right bottom ;
    background-size: cover;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 100px ;
    position: relative;
    color: #000;
}

#priceBl a{
    display: block;
    width: 100%;
    height: 100%;
}

#priceBl a:hover{
    opacity: 1 !important;
}

#priceBl .txtArea {
    text-align: left;
    position: absolute;
    top: 3vw;
    right: calc(100vw - 50%);
}

#priceBl .txtArea h2{
    margin-bottom: 20px;
    text-align: left;
}

#priceBl .txtArea p{
    margin-bottom: 40px;
    font-size: 2.4rem;
}

#priceBl .txtArea .btnDesign{
    background:#fff;
}

#priceBl a:hover .btnDesign{
    opacity: 0.7;
}


@media only screen and (max-width: 1500px) {
    #priceBl {    
        margin: 0 -60px 65px;
    }
    
    #priceBl .txtArea {
        left: 60px;
        right:  inherit;
    }
}

@media only screen and (max-width: 1200px) {
    #priceBl {    
        background: url(../image/price_bg.jpg) no-repeat 50% bottom #fff;
        background-size: cover;
    }
    
    #priceBl .txtArea {
        top: 4vw;
    }
    
}

@media only screen and (max-width: 1000px) {
    #priceBl .txtArea {
        top: 6vw;
    }
}

@media only screen and (max-width: 768px) {
    #priceBl{
        height: inherit;
        background: url(../image/price_bg.jpg) no-repeat 75% center ;
        background-size: cover;
        margin: 0 -6.7% 15vw ;
        position: relative;
        overflow: hidden;
    }

    #priceBl .txtArea {
        position: inherit;
        top: inherit;
        left: inherit;
        padding: 8vw 0 8vw 6% ;
        width: 70%;
        float: left;
    }

    #priceBl .txtArea h2{
        margin-bottom: 3vw;
    }

    #priceBl .txtArea p{
        margin-bottom: 3vw;
        font-size: 3.5vw;
    }
    
    #priceBl .txtArea p br{
        display: none;
    }
    
}

/* priceExampleBl
==============================*/
#priceExampleBl{
    margin: 0 0 100px 0;
}

#priceExampleBl .exampleList{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-bottom: 15px;
}

#priceExampleBl article{
    width: 47.827%;
    margin-bottom: 140px;
    position: relative;
}

#priceExampleBl article:last-child{
    margin-bottom: 55px;
}

#priceExampleBl article .plan{
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
}

#priceExampleBl article .plan .planname{
    font-size: 6rem;
    vertical-align: bottom;
    margin-top: auto;
    line-height: 1.2;
}

#priceExampleBl article .plan .planname span.fontS{
    font-size: 3rem;
}

#priceExampleBl article .plan .planplice{
    line-height: 1;
    font-size: 4.5rem;
    vertical-align: bottom;
    margin-top: auto;
}

#priceExampleBl article .plan .planplice:after{
    content: "万円";
    font-size: 3rem;
}

#priceExampleBl article .pic{
    margin-bottom: 40px;
}

#priceExampleBl article .flow {
    margin-bottom: 70px;
}

#priceExampleBl article .list {
    margin-bottom: 25px;
}

#priceExampleBl article .flow .tit,
#priceExampleBl article .list .tit{
    font-size: 3.6rem;
    color: #d2ba77;
    border: 1px solid #bba76e;
    text-align: center;
    margin-bottom: 30px;
    font-weight: bold;
}

#priceExampleBl article .flow ul,
#priceExampleBl article .list ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#priceExampleBl article .flow ul li,
#priceExampleBl article .list ul li{
    display: flex;
    flex-direction: column;
    border: 1px solid #fff;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0.3em;
}

#priceExampleBl article .flow ul li{
    writing-mode: vertical-rl;
    padding: 20px 3%;
    position: relative;
}

#priceExampleBl article ul li.exclusion{
    background: #707070;
    opacity: 0.5;
}

#priceExampleBl article .flow ul li:after{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    background: url("../common/image/arrow_right_white.png") no-repeat center center;
    top: 0;
    right: -4.77vw;
/*    right: -130%;*/
}

#priceExampleBl article .flow ul li:last-child:after{
    display: none;
}

#priceExampleBl article .list ul li{
    width: 22%;
    margin: 0 0 25px 0;
    padding: 15px 0;
}


#priceExampleBl article .txt01{
    font-size: 2.8rem;
    font-weight: bold;
}

#priceExampleBl article .txt02{
    font-size: 2.5rem;
}


@media only screen and (min-width: 1500px) {

    #priceExampleBl article .flow ul li::after {
        right: -75px;
    }
}

@media only screen and (max-width: 1200px) {
    #priceExampleBl article .plan .planname{
        font-size: 3rem;
    }

    #priceExampleBl article .plan .planname span.fontS{
        font-size: 2rem;
    }

    #priceExampleBl article .plan .planplice{
        font-size: 6rem;
    }

    #priceExampleBl article .plan .planplice:after{
        font-size: 3rem;
    }
    
    #priceExampleBl article .flow ul li, 
    #priceExampleBl article .list ul li {
        font-size: 2rem;
        letter-spacing: 0.2em;
    }
}

@media only screen and (max-width: 768px) {
    #priceExampleBl{
        margin: 0 0 15vw 0;
    }

    #priceExampleBl .exampleList{
        display: block;
        width: 100%;
        padding-bottom: 0;
    }

    #priceExampleBl article{
        width: 100%;
        margin-bottom: 12vw;
    }

    #priceExampleBl article:last-child{
        margin-bottom: 12vw;
    }

    #priceExampleBl article .plan{
        margin-bottom: 10px;
        font-size: 3.5vw;
    }

    #priceExampleBl article .plan .planname{
        font-size: 7vw;
    }

    #priceExampleBl article .plan .planname span.fontS,
    #priceExampleBl article .plan .planplice:after{
        font-size: 3.5vw;
    }

    #priceExampleBl article .plan .planplice{
        font-size: 5vw;
    }

    #priceExampleBl article .pic{
        margin-bottom: 3vw;
    }

    #priceExampleBl article .flow {
        margin-bottom: 8vw;
    }

    #priceExampleBl article .list {
        margin-bottom: 2vw;
    }

    #priceExampleBl article .flow .tit,
    #priceExampleBl article .list .tit{
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    #priceExampleBl article .flow ul li,
    #priceExampleBl article .list ul li{
        font-size: 3.5vw;
        letter-spacing: 0.3em;
    }

    #priceExampleBl article .flow ul li{
        padding: 3vw 4%;
    }
    
    #priceExampleBl article .flow ul li:after{
        content: "";
        background: url("../common/image/arrow_right_white.png") no-repeat center center;
        background-size:7px auto;
        right: -9.5vw;
    }
    
    #priceExampleBl article .list ul li{
        margin: 0 0 3vw 0;
        padding: 2.5vw 0;
    }

    #priceExampleBl article .txt01{
        font-size: 4.5vw;
    }

    #priceExampleBl article .txt02{
        font-size: 3.5vw;
    }
}

/* voiceBl
==============================*/
#voiceBl{
    background: url(../image/voice_news_bg.jpg) no-repeat center top;
    background-size: cover;
    padding: 100px 0;
    margin: 0 calc(50% - 50vw);
}

#voiceBl .voiceList{
    max-width: 1500px;
    margin: 0 auto 60px auto;
    justify-content: space-between;
    display: flex;
    padding: 0 60px;
    color: #000;
}

#voiceBl .voiceList article{
    width: 30.435%;
    margin-bottom: 50px;
}

#voiceBl .voiceList article .pic{
    margin-bottom: 20px;
}

#voiceBl .voiceList article .catch{
    font-size: 3.0rem;
    margin-bottom: 20px;
}

#voiceBl .voiceList article .person{
    font-size: 2.0rem;
    margin-bottom: 20px;
    text-align: right;
}

#voiceBl .voiceList article .commnet{
    font-size: 1.8rem;
}

@media only screen and (max-width: 768px) {
    #voiceBl{
        margin: 0 calc(50% - 50vw);
        padding: 15vw 0;
    }

    #voiceBl .voiceList{
        padding: 0 6%;
        margin: 0 auto 5vw auto;
        display: block;
    }

    #voiceBl .voiceList article{
        width: 100%;
        margin-bottom: 12vw;
    }

    #voiceBl .voiceList article .pic{
        margin-bottom: 3vw;
    }

    #voiceBl .voiceList article .catch{
        font-size: 4.5vw;
        margin-bottom: 1vw;
    }

    #voiceBl .voiceList article .person{
        font-size: 3.5vw;
        margin-bottom: 1vw;
    }

    #voiceBl .voiceList article .commnet{
        font-size: 3.5vw;
    }
}




/* mapBl
==============================*/
#mapBl{
    padding: 100px 0;
}

#mapBl .mapIllust{
    position: relative;
    margin: 0 auto 60px;
}

#mapBl .mapIllust .pin{
    position: absolute;
    max-width:70px;
    width: 5.0725%;
    left: 0;
    top: 0;
}

#mapBl .mapIllust .pin:hover{
    animation: bound 2.5s ease-in-out 0.1s infinite;
}

@keyframes bound {
    0% {
        transform:translate(0,0);
    }
    8% {
        transform:translate(0,-25px);
    }
    16% {
        transform:translate(0,0);
    }
    24% {
        transform:translate(0,-18px);
    }
    32% {
        transform:translate(0,0);
    }
    40% {
        transform:translate(0,-10px);
    }
    48% {
        transform:translate(0,0);
    }
    56% {
        transform:translate(0,-5px);
    }
    64% {
        transform:translate(0,0);
    }
}

#mapBl .mapIllust .map01{left:56.6%;top:21.5%;}
#mapBl .mapIllust .map02{left:29.45%;top:28.6%;}
#mapBl .mapIllust .map03{left:28%;top:47.92%;}
#mapBl .mapIllust .map04{left:67.3%;top: 10.3%;}
#mapBl .mapIllust .map05{left:73.8%;top: 10.3%;}
#mapBl .mapIllust .map06{left:36.9%;top:57%;}
#mapBl .mapIllust .map07{left: 18.5%;top: 32.7%;}

#mapBl .hallInfo{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;    
    width: 100%;
}

#mapBl .hallInfo article{
    width:30.435%;
    margin-bottom: 50px;
}

#mapBl .hallInfo .pic{
    margin-bottom: 10px;
}

#mapBl .hallInfo dt{
    margin-bottom: 5px;
    font-size: 2.6rem;
}

#mapBl .hallInfo dd{
    font-size: 1.8rem;
}

@media only screen and (max-width: 768px) {
    #mapBl .mapIllust{
        margin: 0 -6% 5vw;
    }

    #mapBl .mapIllust .pin{
        width: 5.5%;
    }

    #mapBl .mapIllust .pin:hover{
        animation: none;
    }

    #mapBl .mapIllust .map01{left:58.5%;top:25.3vw;}
    #mapBl .mapIllust .map02{left:28.4%;top:31.75vw;}
    #mapBl .mapIllust .map03{left:26.8%;top:49.7vw;}
    #mapBl .mapIllust .map04{left:70.4%;top:15vw;}
    #mapBl .mapIllust .map05{left:77.4%;top:15vw;}
    #mapBl .mapIllust .map06{left:36.5%;top:58.1vw;}
    #mapBl .mapIllust .map07{left: 16.3%;top: 35.7vw;}


    #mapBl .hallInfo{
        display: block;
        padding-bottom: 15vw;
    }

    #mapBl .hallInfo article{
        width: 100%;
        margin-bottom: 8vw;
    }
    
    #mapBl .hallInfo article:last-child{
        margin-bottom: 0;
    }

    #mapBl .hallInfo .pic{
        margin-bottom: 5px;
    }

    #mapBl .hallInfo dt{
        margin-bottom: 0;
       font-size: 4.5vw;
    }

    #mapBl .hallInfo dd{
        font-size: 3.5vw;
    }
    
}


/* newsBl
==============================*/
#newsBl{
    background: url(../image/voice_news_bg.jpg) no-repeat center center;
    background-size: cover;
    padding: 100px 0;
    margin: 0 calc(50% - 50vw);
}

#newsBl .newsList{
    max-width: 1120px;
    margin: 0 auto 60px;
    color: #000;
    padding: 0 60px;
}

#newsBl .newsList dl{
}

#newsBl .newsList dl + dl{
    margin-top: 50px;
}

#newsBl .newsList dl dt{
   font-size: 1.8rem;
    margin-bottom: 10px;
}

#newsBl .newsList dl dt:after{
    font-weight: normal;
    content: "プレスリリース";
    background: #76abb6;
    border-radius: 20px;
    width: 175px;
    text-align: center;
    display: inline-block;
    color: #fff;
    margin-left: 10px;
}

#newsBl .newsList dl.cate02 dt:after{
    content: "トピックス";
    background: #b67676;
}

#newsBl .newsList dl.cate03 dt:after{
    content: "お知らせ";
    background: #8da24e;
}

#newsBl .newsList dl.cate04 dt:after{
    content: "ニュース";
    background: #a576b6;
}

#newsBl .newsList dl dd{
   font-size: 2.2rem;
}

#newsBl .newsList dl dd a[target="_blank"]{
    background: url(../common/image/icn_window.png) no-repeat right center;
    padding-right: 25px;
}

#newsBl .newsList dl dd a[href$=".pdf"] {
    background: url(../common/image/icn_pdf.png) no-repeat right center;
    background-size: 20px auto;
    padding-right: 28px;
}

@media only screen and (max-width: 768px) {
    #newsBl{
        padding: 15vw 0;
    }
    
    #newsBl .newsList{
        padding: 0 6% 0;
    }
    
    #newsBl .newsList dl + dl{
        margin-top: 5vw;
    }

    #newsBl .newsList dl dt{
        font-size: 3vw;
        margin-bottom: 5px;
    }

    #newsBl .newsList dl dt:after{
        width: 35%;
        margin-left: 10px;
    }

    #newsBl .newsList dl dd{
       font-size: 3.5vw;
    }

    #newsBl .newsList dl dd a[target="_blank"]{
        background: url(../common/image/icn_window.png) no-repeat right center;
        background-size: 10px auto;
        padding-right: 16px;
    }
    
    #newsBl .newsList dl dd a[href$=".pdf"] {
        background: url(../common/image/icn_pdf.png) no-repeat right center;
        background-size: 13px auto;
        padding-right: 22px;
    }

}