@charset "utf-8";

/*

line.css
Version: 2025.06.24

*/

/* --------------------------------------------------------
/* .page-line
/* .line
/* .line-id
-------------------------------------------------------- */


/* .page-line
-------------------------------------------------------- */
.visual-sub-bg {
    position: relative;
    background: #fff url(../../assets/img/line/bg_visual-sub-bg_sp.jpg) no-repeat center center;
    background-size: cover !important;
}

/* pc（1200px以上の場合に適用） */
@media (min-width: 1200px) {
    .visual-sub-bg {
        background: #fff url(../../assets/img/line/bg_visual-sub-bg_pc.jpg) no-repeat center center;
        background-size: cover !important;
    }
}


/* .line
-------------------------------------------------------- */
/* .media-img-name */
.line .media-img-name {
    display: flex;
    margin-top: 20px;
    line-height: 1.4;

    flex-wrap: wrap;
    align-items: center;
}
.line .media-img-name .caption {
    display: block;
    width: 100%;
    text-align: left;
    font-size: 1.8rem;
}
.line .media-img-name .ja {
    padding-left: 20px;
    font-size: 2.8rem;
}
.line .media-img-name .en {
    margin-top: 0;
    color: rgba(1, 92, 172, 1);
    letter-spacing: .06em;
    font-weight: 600;
    font-size: 1.8rem;
}

/* .media-body-ttl */
.line .media-body-ttl {
    margin: 0 0 10px 0;
    border-bottom: none;
    color: #020202;
    letter-spacing: 1.5px;
    font-weight: 700;
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
}
.line .media-body-ttl span {
    display: inline;
    background: linear-gradient(transparent 70%, #f9da3f 70%, #f9da3f);
}

/* pc（1200px以上の場合に適用） */
@media (min-width: 1200px) {
    .line .media-img {
        width: 45.6578947368421%; /* 694.00px */
    }
    .line .media-body {
        width: 50.5921052631579%; /* 769.00px */
    }
    .line .media-body-ttl {
        font-size: 2.8rem;
    }
}

/* .msg-ttl */
.line .msg-ttl {
    font-size: 1.6rem;
}
.line .msg-body dl dt {
    position: relative;
    margin-bottom: 10px;
    padding: 0 0 0 23px;
    font-weight: 600;
    font-size: 2.0rem;
    line-height: 1.4;
}
.line .msg-body dl dt::before {
    position: absolute;
    top: .4em;
    left: 0;
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: rgba(249, 148, 8, 1);
    content: "";
}
.line .msg-body dl dd.appstore,
.line .msg-body dl dd.googleplay {
    margin: 15px auto 0 0;
}
.line .msg-body dl dd.appstore a,
.line .msg-body dl dd.googleplay a {
    display: inline-block;
}
.line .msg-body dl dd.appstore img,
.line .msg-body dl dd.googleplay img {
    width: 246px;
}
.line .msg-body dl dd.qr img {
    width: 246px;
}

/* pc（1200px以上の場合に適用） */
@media (min-width: 1200px) {
    .line .msg-ttl {
        font-size: 2.6rem;
    }
}

/* .btn-line */
.btn-line {
    width: 86%;
    border-bottom: 5px solid #888;
    border-radius: 25px;
    background: #00b900;
    color: #fff;
    text-align: center;
    text-indent: 3px;
    letter-spacing: 3px;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.2;
}
.btn-line a {
    display: block;
    padding: .8em;
    color: #fff;
    font-weight: 500;
}
.btn-line a:hover {
    text-decoration: none;
}

/* pc（1200px以上の場合に適用） */
@media (min-width: 1200px) {
    .btn-line {
        max-width: 800px;
        font-size: 2.0rem;
    }
}


/* .line-id
-------------------------------------------------------- */
.line-id {
    padding: 30px;
    background: #f1efe7;
    text-align: center;
}
.line-id-inner {
    display: table;
    margin: 0 auto 30px;
    width: 100%;
    border-radius: 5px;
}
.line-id-account-name {
    display: table-cell;
    padding: 10px;
    width: 40%;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    background: #00b900;
    color: #fff;
}
.line-id-account-num {
    display: table-cell;
    padding: 10px;
    width: 60%;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    background: #fff;
    font-weight: 600;
    font-size: 2.0rem;
}
