.cf:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
.hide_pc {
    display: none;
}
.hide_sp {
    display: block;
}

.img-box img {
    width: 100%;
}

.inner {
    width: 1000px;
    margin: 0 auto;
    padding: 120px 30px;
    background-color: rgba(255,255,255,0.9);
    position: relative;
}

.top-img {
    width: 100%;
    height: 100%;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-image: url(../img/feature/sample-ume/key.jpg);
    background-position: center;
}

.top-img h2 {
    margin-bottom: 20px;
    font-size: 3.0rem;
}

.message {
    width: 90%;
    height: auto;
    margin: 0 auto;
    padding: 5%;
    font-size: 1.0rem;
    text-align: left;
    line-height: 2.5;
    letter-spacing: 0.1em;
    display: inline-block;
    position: relative;
}

.message h3 {
    font-size: 1.6rem;
    text-align: center;
}

.bd div{background: #ccc; position:absolute;-webkit-transition:all 0.3s;transition:all 0.3s;}
.bd div.bdT{width: 100%; height:1px; top:0; left:0;}
.bd div.bdB{width: 100%; height:1px; bottom:0; right:0;}
.bd div.bdR{height:100%; width :1px; right:0; top:0;}
.bd div.bdL{height:100%; width :1px; left:0; bottom:0;}

/* No.2 */
.bd2 div{background: none}
.bd2 div:before,.bd2 div:after{content:''; background: #ccc; position: absolute;-webkit-transition:all 0.1s;transition:all 0.1s;}
.bd2 div:before{background: #353535}
.bd2 div.bdT:after,.bd2 div.bdT:before{width: 100%; height:1px; top:0; left:0;    }
.bd2 div.bdB:after,.bd2 div.bdB:before{width: 100%; height:1px; bottom:0; right:0;}
.bd2 div.bdR:after,.bd2 div.bdR:before{height:100%; width :1px; right:0; top:0;   }
.bd2 div.bdL:after,.bd2 div.bdL:before{height:100%; width :1px; left:0; bottom:0; }
.bd2 div.bdT:after{transition-delay:0.6s;}
.bd2 div.bdL:after{transition-delay:0.4s;}
.bd2 div.bdB:after{transition-delay:0.3s;}
.bd2 div.bdR:after{transition-delay:0.2s;}
/*.bd2 div.bdT:before{transition-delay:0.6s;}
.bd2 div.bdL:before{transition-delay:0.4s;}
.bd2 div.bdB:before{transition-delay:0.2s;}
.bd2 div.bdR:before{transition-delay:0.0s;}*/
.message:hover .bd2 div.bdT:after {width: 0;transition-delay:0.0s;}
.message:hover .bd2 div.bdL:after {height:0;transition-delay:0.2s;}
.message:hover .bd2 div.bdB:after {width: 0;transition-delay:0.4s;}
.message:hover .bd2 div.bdR:after {height:0;transition-delay:0.6s;}
/*.tategaki:hover .bd2 div.bdT:before{width: 0;transition-delay:0.4s;}
.tategaki:hover .bd2 div.bdL:before{height:0;transition-delay:0.5s;}
.tategaki:hover .bd2 div.bdB:before{width: 0;transition-delay:0.6s;}
.tategaki:hover .bd2 div.bdR:before{height:0;transition-delay:0.7s;}*/

.background {
    padding: 80px;
}

.contents {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.contents .wrap {
    position: relative;
    z-index: 2;
}

.text-box {
    padding: 50px 25px;
    width: 480px;
    background-color: rgba(0,0,0,0.5);
    color: #fff;
}
.text-box .catch {
    margin: 0 0 10px;
    font-size: 40px;
}
.text-box .copy {
    margin: 0;
    line-height: 2;
}

/* Outline Out */
.hvr-outline-out {
  display: block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-outline-out:before {
  content: '';
  position: absolute;
  border: #efefef solid 4px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: top, right, bottom, left;
  transition-property: top, right, bottom, left;
}
.hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before {
  top: -40px;
  right: -40px;
  bottom: -40px;
  left: -40px;
}


.imgtxt {
    width: 1000px;
    margin: 0 auto;
    padding: 20px;
    background-color: rgba(255,255,255,0.8);
}

.imgtxt .img {
    width: 450px;
}
.imgtxt .img img {
    width: 100%;
}
.imgtxt .txt {
    width: 450px;
    padding: 50px;
    color: #555555;
    font-size: 1.1rem;
    line-height: 2;
    letter-spacing: 0.1rem;
}
.fright {
    float: right;
}
.fleft {
    float: left;
}





@media screen and (max-width: 768px){
    .hide_pc {
        display: block;
    }
    .hide_sp {
        display: none;
    }

    #list #contents {
        background-color: #ffffff;
    }

    .top-img p {
        width: 43%;
        height: 30px;
        font-size: 1.3rem;
        left: 29%;
    }

    .inner {
        width: 100%;
        padding: 60px 0;
    }

    .message {
        width: 84%;
        height: 50vh;
        padding: 8%;
        font-size: 0.7rem;
        line-height: 1.5;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .message h3 {
        font-size: 0.8rem;
    }

    .background {
        padding: 0;
    }

    .imgtxt, .imgtxt .img {
        width: 100%;
    }

    .imgtxt {
        padding: 0;
    }

    .imgtxt .txt {
        width: 90%;
        padding: 5%;
    }

    .imgtxt .txt p {
        font-size: 0.9rem;
    }

    .imgtxt. .fleft, .imgtxt .fright {
        float: none;
    }

    .hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before {
        top: 0px;
        right: 0px;
        bottom: 0px;
        left: 0px;
    }

}