@charset "UTF-8";
/* CSS Document */


/* -------------------------------- PC版のスタイルここから ------------------------------------*/

@media print, screen and (min-width: 751px) {
    
    
    .weather-info-wrap+.weather-info-wrap{
        margin-top: 60px;
    }
    .weather-info-wrap h3{
        width: 100%;
        background: #F2F2F2;
        font-weight: bold;
        font-size: 18px;
        line-height: 1.4em;
        color: #1D315A;
        height: auto;
        vertical-align: middle;
        position: relative;
        padding-top: 24px;
        padding-bottom: 24px;
        padding-right: 80px;
        padding-left: 100px;
        margin-bottom: 16px;
    }
    
    .weather-info-wrap h3:before{
        background: #1D315A;
        height: 100%;
        width: 76px;
        position: absolute;
        left: 0;
        top: 0;
        content: '';
        z-index: 1;
    }
    
    .weather-info-wrap h3:after{
        content: '';
        background: url("../svg/icon_mountain.svg") no-repeat center center;
        background-size: cover;
        position: absolute;
        left:  13px;
        top: 50%;
        transform: translateY(-50%);
        width: 50px;
        height: 50px;
        z-index: 2;
    }
    
    .weather-info-wrap h4{
        font-weight: normal;
        font-size: 18px;
        line-height: 1.6em;
        margin-bottom: 16px;
    }
    
    .weather-info-wrap .main-info-box{
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        margin-bottom: 24px;
    }
    
    .weather-info-wrap .main-info-box > div{
        width: 33%;
    }
    
    .weather-info-wrap .main-info-box > div+div{
        border-left: 2px solid #CCCCCC;
    }
    
    .weather-info-wrap .weather-status,
    .weather-info-wrap .snow-status,
    .weather-info-wrap .piste-status{
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        align-items: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    
    .weather-info-wrap .weather-status p{
        margin-bottom: 0;
    }
    
    .weather-info-wrap .weather-status p.weather{
        font-weight: normal;
        font-size: 16px;
        line-height: 30px;
        text-align: center;
    }
    
    .weather-info-wrap .weather-status p.weather .no-data{
        position: relative;
        top:16px;
        font-weight: bold;
        font-size: 36px;
        text-align: center;
    }
    
    .weather-info-wrap .weather-status i.wi{
        width: 80px;
        height: 80px;
        display: block;
    }
    
    .weather-info-wrap .weather-status i.wi img,
    .weather-info-wrap .weather-status i.wi svg{
        width: 80px;
        height: 80px;
    }
    
    
    .weather-info-wrap .weather-status i.wi svg.img-svg path, 
    .weather-info-wrap .weather-status i.wi svg.img-svg rect, 
    .weather-info-wrap .weather-status i.wi svg.img-svg polygon{
        fill: #333;
    }
    
    .weather-info-wrap .weather-status p.temperature{
        font-weight: bold;
        font-size: 36px;
        line-height: 30px;
        text-align: center;
        margin-left: 5%;
    }
    
    .weather-info-wrap .snow-status dl{
        width: 70%;
        margin-bottom: 0;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
    }
    
    .weather-info-wrap .piste-status dl{
        width: 80%;
        margin-bottom: 0;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
    }
    
    .weather-info-wrap .snow-status dl+dl{
        margin-top: 8px;
    }
    
    .weather-info-wrap .snow-status dt,
    .weather-info-wrap .piste-status dt{
        width: 38%;
        font-size: 14px;
        line-height: 30px;
        color: #898989;
        font-weight: normal;
        text-align: left;
    }
    
    .weather-info-wrap .snow-status dd{
        width: 60%;
        font-weight: normal;
        font-size: 22px;
        line-height: 1em;
        margin-left: 2%;
        text-align: center;
        margin-bottom: 0;
    }
    
    .weather-info-wrap .piste-status dd{
        width: 60%;
        font-weight: normal;
        font-size: 22px;
        line-height: 1.4em;
        margin-left: 2%;
        text-align: left;
        margin-bottom: 0;
    }
    
    
    .weather-info-wrap .acc-box{
        position: relative;
        border-top: 2px solid #CCCCCC;
        padding-top: 16px;
    }
    
    .weather-info-wrap .acc-btn {
        width: 100%;
	    font-weight:bold;
	    color:#1D315A;
	    font-size: 20px;
        line-height: 1.4em;
        text-align: left;
	    z-index: 2;
        position: absolute;
        right: 0;
        top: 16px;
	    left: 0;
        margin: auto;
	    cursor: pointer;
        transition: .2s ease;
	    border-radius: 3px;
        padding-left: 35px;
    }
    
    .weather-info-wrap .acc-btn::before {
  	    content: '';
        position: absolute;
        bottom: 50%;
        left: 0;
        width: 16px;
        height: 16px;
        border-top: 2px solid #1D315A;
        border-right: 2px solid #1D315A;
        transform: rotate(135deg) translateY(-50%);
        transition: 0.3s;
        -webkit-transition: 0.3s;
    }

    .weather-info-wrap .acc-btn .fa {
  	    margin-right: .5em;
	    display: inline-block;
        vertical-align: middle;
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    .weather-info-wrap .acc-item {
  	    position: relative;
  	    overflow: hidden;
  	    height: 0;
        transition: 0.3s;
        -webkit-transition: 0.3s;
        opacity: 0;
    }

    .weather-info-wrap .acc-item::before {
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 60px; /*グラデーションで隠す高さ*/
        background: -webkit-linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        background: -o-linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        background: linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        -pie-background:linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        content: "";
    }

    .weather-info-wrap .acc-trigger {
  	    display: none;
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-btn {
  	    top: 16px;
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-btn .fa {
  	    transform: rotate(180deg)scale(0.5);
	    -webkit-transform:rotate(180deg)scale(0.5);
	    -moz-transform: rotate(180deg)scale(0.5);
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-item {
  	    height: auto;
	    padding-bottom: 0;
        opacity: 1;
        margin-top: 32px;
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-item::before {
  	    display: none;
    }
    
    .weather-info-wrap .acc-trigger:checked ~ .acc-btn::before {
        transform: rotate(-45deg);
        bottom: -2px;
    }
    
    .weather-info-wrap .acc-item-inner table{
        width: 100%;
    }
    
    .weather-info-wrap .acc-item-inner td,
    .weather-info-wrap .acc-item-inner th{
        padding: 16px 0;
        vertical-align: middle;
    }
    
    .weather-info-wrap .acc-item-inner td{
        font-size: 16px;
        line-height: 26px;
        text-align: center;
    }
    
    .weather-info-wrap .acc-item-inner th{
        font-size: 16px;
        line-height: 26px;
        text-align: left;
        font-weight: bold;
    }
    
    .weather-info-wrap .acc-item-inner tr{
        border-bottom: 1px solid #CCCCCC;
    }
    
}


/* -------------------------------- SP版のスタイルここから ------------------------------------*/

@media screen and (max-width: 750px) {
    
    .weather-info-wrap h3{
        width: 100%;
        background: #F2F2F2;
        font-weight: bold;
        font-size: 16px;
        line-height: 1.4em;
        color: #1D315A;
        height: 50px;
        vertical-align: middle;
        position: relative;
        padding-top: 16px;
        padding-bottom: 16px;
        padding-left: 66px;
        margin-bottom: 16px;
    }
    
    .weather-info-wrap h3:before{
        background: #1D315A;
        height: 100%;
        width: 50px;
        position: absolute;
        left: 0;
        top: 0;
        content: '';
        z-index: 1;
    }
    
    .weather-info-wrap h3:after{
        content: '';
        background: url("../svg/icon_mountain.svg") no-repeat center center;
        background-size: cover;
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 30px;
        height: 30px;
        z-index: 2;
    }
    
    .weather-info-wrap h4{
        font-weight: normal;
        font-size: 16px;
        line-height: 35px;
        margin-bottom: 8px;
    }
    
    .weather-info-wrap .main-info-box{
        margin-bottom: 0;
    }
    
    .weather-info-wrap .main-info-box > div{
        width: 100%;
        padding-bottom:  8px;
    }
    
    .weather-info-wrap .main-info-box > div+div{
        border-top: 2px solid #CCCCCC;
        padding: 8px 0;
    }
    
    .weather-info-wrap .weather-status,
    .weather-info-wrap .snow-status,
    .weather-info-wrap .piste-status{
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        align-items: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    
    .weather-info-wrap .weather-status p{
        margin-bottom: 0;
    }
    
    .weather-info-wrap .weather-status p.weather{
        font-weight: normal;
        font-size: 16px;
        line-height: 30px;
        text-align: center;
    }
    
    .weather-info-wrap .weather-status p.weather .no-data{
        position: relative;
        top:10px;
        font-weight: bold;
        font-size: 30px;
        text-align: center;
    }
    
    .weather-info-wrap .weather-status i.wi{
        width: 60px;
        height: 60px;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
    
    .weather-info-wrap .weather-status i.wi img,
    .weather-info-wrap .weather-status i.wi svg{
        width: 60px;
        height: 60px;
    }
    
    .weather-info-wrap .weather-status i.wi svg.img-svg path, 
    .weather-info-wrap .weather-status i.wi svg.img-svg rect, 
    .weather-info-wrap .weather-status i.wi svg.img-svg polygon{
        fill: #333;
    }
    
    .weather-info-wrap .weather-status p.temperature{
        font-weight: bold;
        font-size: 30px;
        line-height: 1em;
        text-align: center;
        margin-left: 5%;
    }
    
    .weather-info-wrap .snow-status dl{
        width: 80%;
        margin-bottom: 0;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
    }
    
    .weather-info-wrap .piste-status dl{
        width: 80%;
        margin-bottom: 0;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
    }
    
    .weather-info-wrap .snow-status dl+dl{
        margin-top: 0;
    }
    
    .weather-info-wrap .snow-status dt,
    .weather-info-wrap .piste-status dt{
        width: 45%;
        font-size: 14px;
        line-height: 30px;
        color: #898989;
        font-weight: normal;
        text-align: left;
    }
    
    .weather-info-wrap .snow-status dd{
        width: 48%;
        font-weight: normal;
        font-size: 18px;
        line-height: 30px;
        margin-left: 2%;
        text-align: left;
        margin-bottom: 0;
    }
    
    .weather-info-wrap .piste-status dd{
        width: 55%;
        font-weight: normal;
        font-size: 16px;
        line-height: 30px;
        margin-left: 2%;
        text-align: left;
        margin-bottom: 0;
    }
    
    
    .weather-info-wrap .acc-box{
        position: relative;
        padding-top: 16px;
        border-top: 2px solid #CCCCCC;
    }
    
    .weather-info-wrap .acc-btn {
        width: max-content;
	    font-weight:bold;
	    color:#1D315A;
	    font-size: 16px;
        line-height: 26px;
        text-align: center;
	    z-index: 2;
        position: absolute;
        right: 0;
        top: 16px;
	    left: 0;
        margin: auto;
	    cursor: pointer;
        transition: .2s ease;
	    border-radius: 3px;
    }
    
    .weather-info-wrap .acc-btn::before {
  	    content: '';
        position: absolute;
        bottom: 50%;
        left: -30px;
        width: 14px;
        height: 14px;
        border-top: 2px solid #1D315A;
        border-right: 2px solid #1D315A;
        transform: rotate(135deg) translateY(-50%);
        transition: 0.3s;
        -webkit-transition: 0.3s;
    }

    .weather-info-wrap .acc-btn .fa {
  	    margin-right: .5em;
	    display: inline-block;
        vertical-align: middle;
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    .weather-info-wrap .acc-item {
  	    position: relative;
  	    overflow: hidden;
  	    height: 0;
        transition: 0.3s;
        -webkit-transition: 0.3s;
        opacity: 0;
    }

    .weather-info-wrap .acc-item::before {
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 60px; /*グラデーションで隠す高さ*/
        background: -webkit-linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        background: -o-linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        background: linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        -pie-background:linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 50%, #fff 100%);
        content: "";
    }

    .weather-info-wrap .acc-trigger {
  	    display: none;
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-btn {
  	    top: 16px;
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-btn .fa {
  	    transform: rotate(180deg)scale(0.5);
	    -webkit-transform:rotate(180deg)scale(0.5);
	    -moz-transform: rotate(180deg)scale(0.5);
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-item {
  	    height: auto;
	    padding-bottom: 0;
        opacity: 1;
        margin-top: 32px;
    }
    .weather-info-wrap .acc-trigger:checked ~ .acc-item::before {
  	    display: none;
    }
    
    .weather-info-wrap .acc-trigger:checked ~ .acc-btn::before {
        transform: rotate(-45deg);
        bottom: 0;
    }
    
    .weather-info-wrap .acc-item-inner{
        width: 100%;
        background: #fff;
        padding: 10px 0;
        overflow: scroll;
    }
    
    .weather-info-wrap .acc-item-inner tbody,
    .weather-info-wrap .acc-item-inner table{
        display: block;
        width: 900px;
        background: #fff;
        position: relative;
    }
    
    .weather-info-wrap .acc-item-inner td,
    .weather-info-wrap .acc-item-inner th{
        padding: 4px 5px;
        vertical-align: middle;
    }
    
    .weather-info-wrap .acc-item-inner td{
        font-size: 14px;
        line-height: 26px;
        text-align: center;
    }
    
    .weather-info-wrap .acc-item-inner th+th,
    .weather-info-wrap .acc-item-inner td{
        width: 5.5%;
    }
    
    .weather-info-wrap .acc-item-inner th{
        font-size: 14px;
        line-height: 26px;
        text-align: left;
        font-weight: bold;
    }
    
    .weather-info-wrap .acc-item-inner tr th:first-child,
    .weather-info-wrap .acc-item-inner thead th:first-child{
        position: -webkit-sticky;
        position: sticky;
        left: 0;
        z-index: 1;
        background: #F2F2F2;
        width: 6%; 
    }
    
    .weather-info-wrap .acc-item-inner tr th:first-child:after,
    .weather-info-wrap .acc-item-inner thead th:first-child:after{
        z-index: 3;
        position: absolute;
        right: 0;
        top: 0;
        width: 1px;
        height: 100%;
        background: #CCCCCC;
        content: '';
    }
    
    .weather-info-wrap .acc-item-inner tr{
        border-bottom: 1px solid #CCCCCC;
    }
    
}

