@charset "utf-8";
/*-----------------------------------------*/
/*         共通パーツ　　キーカラー#e50012  　*/
/*-----------------------------------------*/
.top-inner{
    max-width:1400px;
    margin:0 auto;
}
.inner{
    max-width:1024px;
    margin:0 auto;
}
.col-wrap{
    display: flex;
    flex-wrap:wrap;
}
/*-------　　スライダー　----------*/
.hero{
    padding-top:100px;
    box-sizing: border-box;
    position:relative;
}
.hero:before{
    content:"SCROLL";
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    position:absolute;
    bottom:0px;
    left:50%;
    margin-left:-50px;
    z-index:2;
    width:100px;
    height:60px;
    text-align: center;
    color:#fff;
    font-size:1.8rem;
}
.hero:after{
    content:"";
    position:absolute;
    width:2px;
    height:30px;
    background-color:#fff;
    bottom:0;
    left:50%;
    z-index:1;
}
/*-------　▼▼　sns　----------*/
.top-sns{
    background:url("../img/top/bg_sns_col.png");
}
.top-sns h2{
    color:#fff;
    font-size:3.6rem;
    background: url("../img/top/bg_top_sns.png") no-repeat center center;
    background-size:cover;
    height:300px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}
.top-sns h2 span{
    display: block;
    font-size:1.6rem;
    margin-top:15px;
}
.top-sns h3{
    color:#222;
    font-size:3.0rem;
    margin-bottom:10px;
    text-align: center;
}
.top-sns h3 span{
    position:relative;
    display: inline-block;
    font-size:1.6rem;
    margin:10px 0 68px 0;
    padding-left:40px;
    line-height:24px;
}
.top-sns h3 span:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:24px;
    height:24px;    
}
.top-sns .col-wrap{
    padding:88px 0 128px 0;
    /*justify-content: space-between;*/
    flex-wrap:nowrap;
}

/*-------　▼▼　facebook----------*/
.top-sns .col-wrap .col-box.facebook{
    width:30%;
    min-width: 400px;
}
.top-sns .col-wrap .col-box.facebook .widget-box{
    width:100%;
    max-width:400px;
    max-height: 453px;
    overflow: hidden;
}
.top-sns .col-wrap .col-box.facebook h3 span:before{
    background:url("../img/common/icon_fb.png") no-repeat 0 center;
    background-size:24px auto;
}
.top-sns .col-wrap .col-box.facebook img{
    width:100%;
    max-width:500px;
}

/*-------　▼▼　instagramレスポンシブ設定----------*/
.top-sns .col-wrap .col-box.instagram{
    max-width:920px;
    width:65.7%;
    margin-left:4.3%;
    -webkit-flex: 1;
      flex: 1;
}
.instagram .widget-box{
    display: flex;
    flex-wrap:wrap;   
}
.instagram .widget-box .image-box{
    width:24%;
    margin:0 0.5%;
}
.top-sns .col-wrap .col-box.instagram h3 span:before{
    background:url("../img/common/icon_ig.png") no-repeat 0 center;
    background-size:24px auto;
}


/*-------　▼▼　京おどり &　みずゑ會共通----------*/
.kouen{
    background:url("../img/top/bg_wall.png");
    padding:100px 0 0 0;
}
.kouen>div{
    position:relative;
    max-width: 1920px;
    margin: 0 auto;
}
.kouen .outline{
    position:relative;
    min-height:550px;
    padding-top: 50px;
}
.clearfix:after{
    content:"";
    display: block;
    clear:both;
}
.kyo-odori{
    background:url("../img/top/img_kyo-odori.png") no-repeat top left;
    background-size:52% auto;
    padding-bottom:130px;
}
.mizue-kai{
    background:url("../img/top/img_mizue-kai.png") no-repeat top right;
    background-size:52% auto;
    padding-bottom:130px;
}
.kouen .kyo-odori:after{
    content:"";
    position:absolute;
    z-index:2;
    top:53%;
    left:87%;
    width:25%;
    height:383px;
    background: url("../img/top/img_sakura.png") no-repeat left center;
    background-size:100% auto;
}
.kouen .mizue-kai:after{
    content:"";
    position:absolute;
    z-index:2;
    top:60%;
    right:80%;
    width:32%;
    height:400px;
    background: url("../img/top/img_momiji.png") no-repeat right top;
    background-size:100% auto;
}
.section .info{
    top:60px;
    max-width:768px;
    display: flex;
    flex-wrap:wrap;
    justify-content: space-between;
    background-color: rgba(255,255,255,0.9);
    padding: 5.5%;
}
.section .info h2{
    width:30%;
}
.section .info .txt{
    width:60%;
}
.kyo-odori .info{
    float:right;
}
.mizue-kai .info{
    float:left;
    flex-direction: row-reverse;
}
.section .info h2 .tb-ttl{
    display: none;
}
.section .info h3{
    font-size:2.2rem;
    margin-bottom:15px;
}
.section .info .txt p{
    margin-bottom:30px;
}
.section .info .txt .en h3{
    margin-bottom:5px;
    font-size:2.0rem;
}
.section .info .txt .en p{
    color:#777;
    font-size:1.4rem;
    line-height:1.4;
}
.section .info .txt p.btn-area{
    margin-bottom:0;
}

/*-------　▼▼　宮川町について----------*/
.miyagawa-cho{
    padding:120px 0;
    background:url("../img/top/bg_wall02.png");
}
.miyagawa-cho .top-inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;       
}
.miyagawa-cho .top-inner h2{
    position:relative;
    font-size:2.8rem;
    width:20%;
     -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
    padding:0 100px 40px 0;
}
.miyagawa-cho .top-inner h2 span{
    position:absolute;
    top:15em;
    right:60px;
    color:#777;
    display: block;
    font-size:1.4rem;
      -ms-writing-mode: lr-tb;
    writing-mode:lr-tb;
}
.miyagawa-cho .top-inner ul{
    width:80%;
    display: flex;
    flex-wrap:wrap;
    justify-content: space-between;
    align-content: center;
}
.miyagawa-cho .top-inner ul li{
    width:23%;
    height:200px;
}
.miyagawa-cho .top-inner ul li:nth-child(1){
    background:url("../img/top/img_miya01.png") no-repeat center center;
    background-size:cover;
}
.miyagawa-cho .top-inner ul li:nth-child(2){
    background:url("../img/top/img_miya02.png") no-repeat center center;
    background-size:cover;
}
.miyagawa-cho .top-inner ul li:nth-child(3){
    background:url("../img/top/img_miya03.png") no-repeat center center;
    background-size:cover;
}
.miyagawa-cho .top-inner ul li:nth-child(4){
    background:url("../img/top/img_miya04.png") no-repeat center center;
    background-size:cover;
}
.miyagawa-cho .top-inner ul li a{
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    color:#fff;
    text-align: center;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
     margin-bottom:10px;
    width:100%;
    height:100%;
    text-decoration: none;
    font-size:1.8rem;
}
.miyagawa-cho .top-inner ul li a{
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.1);
    transition:.3s;
}
.miyagawa-cho .top-inner ul li:hover a{
    background:rgba(0,0,0,0.3);
}

.miyagawa-cho .top-inner ul li a span{
    font-size:1.4rem;
    display: block;
    line-height:1.2;
}


/*-------　▼▼　宮川町周辺地図----------*/
.miyagawa-map{
    padding:100px 0;
    background:url("../img/top/bg_map.png");
}
.miyagawa-map .bg-map{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background:url("../img/top/img_illust-map.png") no-repeat right 0;
}
.miyagawa-map .bg-map h2{
    position:relative;
    font-size:2.8rem;
    width:20%;
     -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
    padding:0 100px 40px 0;
}
.miyagawa-map .bg-map h2 span{
    position:absolute;
    top:15em;
    right:85px;
    color:#777;
    display: block;
    font-size:1.4rem;
      -ms-writing-mode: lr-tb;
    writing-mode:lr-tb;
    letter-spacing: 1px;
}
.miyagawa-map .bg-map .map-info{
    width:80%;
    min-height:800px;
    position:relative;
}
.miyagawa-map .bg-map .map-info div.map-tb{
    display: none;
}
.miyagawa-map .bg-map .map-info p.message{
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight:bold;
    position:absolute;
    left:0;
    top:26%;
     -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
    font-size:1.8rem;
    line-height:4.2rem;
}
.miyagawa-map .bg-map .map-info p.access{
    position:absolute;
    bottom:0;
    right:100px;
    font-size:1.4rem;
    line-height:1.6;
}
.miyagawa-map .bg-map .map-info p.access span{
    display: block;
    margin-top:20px;
}

.miyagawa-map .bg-map .map-info p.access .btn-area a{
    min-width:270px;
    padding:18px;
}


/*--------------------------------------------------------------------*/
/*              .ブレークポイント設定　　　　　　　　　　　                   */
/*--------------------------------------------------------------------*/


/*-------1400px以下(★SNS縦並び)-----------------*/
@media screen and (max-width:1400px) {
    .miyagawa-map .bg-map .map-info p.message{
        display: none;
    }

}
/*-------960px以下(★縦書見出しを横書きに)-----------------*/
@media screen and (max-width:960px) {
    
    .miyagawa-cho .top-inner ul li {
        width: 48%;
        margin-bottom:20px;
    }
    .miyagawa-cho .top-inner ul li:last-child {
        margin-bottom:0;
    }
    .widget-box.tb{
        display: block;
    }
    .miyagawa-map .bg-map .map-info {
        width: 100%;
    }
    .miyagawa-map .bg-map {
        background: url("../img/top/img_illust-map.png") no-repeat right center;
    }
    .miyagawa-map .top-inner h2{
        width:100%;
        text-align: center;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
        padding:0 0 40px 0;
    }
    .miyagawa-map .bg-map h2 span {
        position:static;
        padding-top:10px;
    }

    
}

/*-------768px以下-----------------*/
@media screen and (max-width:768px) {
    
    h2{
        font-size:2.8rem;
    }
    .hero{
        padding-top:0;
        max-height:auto;
        margin-top:50px;
    }
    .hero:before,
    .hero:after{
        content:none;
    }
    .top-sns h2{
        height:160px;
        font-size:2.8rem;
    }
    .top-sns h3 span {
        margin: 10px 0 20px 0;
    }
    .top-sns .col-wrap {
        display: block;
        padding: 40px 0 ;
        /*flex-flow: column;*/
    }
    .top-sns .col-wrap .col-box.facebook{
        margin:0 auto 60px auto;
    }
    .top-sns .col-wrap .col-box.instagram{
        margin:0 auto 0 auto;
    }
    .top-sns .col-wrap .col-box.facebook,
    .top-sns .col-wrap .col-box.instagram{
        width:100%;
    }
    .top-sns .col-wrap .col-box.facebook .widget-box{
        width:98%;
        max-width:400px;
        margin:0 auto;
        overflow:hidden;
    }
    .top-sns .col-wrap .col-box.instagram .widget-box{
        width:92%;
        margin:0 auto 30px auto;
    }
    .kouen{
        padding: 80px 0 0 0;
    }
    .kouen .outline {
        padding-top:190px;
    }
    .kyo-odori,
    .mizue-kai{
        background-size: 100% auto;
 }
    .kouen .kyo-odori:after{
        content:none;
    }
    .kyo-odori{
    background:
        url("../img/top/img_kyo-odori.png") no-repeat center top,
        url("../img/top/img_sakura.png") no-repeat 123% bottom;
        background-size:100% auto,60% auto;
    }
    .kouen .mizue-kai::after {
        top: 81%;
        right: 50%;
        width: 72%;
    }
    .section .info{
        display: block;
        width:90%;
        z-index:5;
    }
    .section .info h2,
    .section .info .txt {
        width: 100%;
    }
    .section .info h2 .pc-ttl{
        display: none;
    }
    .section .info h2 .tb-ttl{
        display: block;
        margin-bottom: 20px;
    }
    .section .info .txt p.btn-area a{
        width:100%;
    }
    .tb-ttl{
        font-size:3.0rem;
    }
    .tb-ttl span{
        font-size:1.4rem;
        display:inline-block;
        padding-top:10px;
        color:#e50012;
        margin-left:15px;
    }
    .miyagawa-cho,
    .miyagawa-map{
        padding: 80px 0;
    }
    .miyagawa-cho .top-inner h2,
    .miyagawa-map .top-inner h2{
        width:100%;
        text-align: center;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
        padding:0 0 40px 0;
    }
    .miyagawa-cho .top-inner h2 span,
    .miyagawa-map .bg-map h2 span {
        position:static;
        padding-top:10px;
    }
    .miyagawa-cho .top-inner ul{
        width:90%;
        margin:0 auto;
    }
    .miyagawa-cho .top-inner ul li {
        width: 100%;
    }
    .miyagawa-map .bg-map{
        background: none;
    }
    .miyagawa-map .bg-map .map-info {
        width: 100%;
        min-height:auto;
    }
    .miyagawa-map .bg-map .map-info div.map-tb{
        display: block;
        text-align: center;
    }
    .miyagawa-map .bg-map .map-info div.map-tb img{
        width:96%;
        height:auto;
    }
    .miyagawa-map .bg-map .map-info p.message{
        display: block;
        position:static;
        width:100%;
      text-align: center;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
        margin-bottom:20px;
        line-height:1.6;
        font-size:1.6rem;
    }
    .miyagawa-map .bg-map .map-info p.access{
        position:static;
        width:94%;
        right:0;
        margin:0 auto;
        text-align: center;
    }
    .miyagawa-map .bg-map .map-info p.access .btn-area a{
        width:100%;
    }

}
