@charset "UTF-8";

.cm-head {
    background: url('../img/common/cm-head-facility.jpg') no-repeat;
    background-size: 100%;
    background-attachment: fixed;
}

.cm-type-list {
    margin-bottom: 10px;
}
.cm-type-list li {
    width: 50%;
    margin-right: 10%;
    border: 0;
    background-color: transparent;
}
.cm-type-list li a dl dd {
    padding: 0;
}

.cm-sub-linkbtn {
    width: 100%;
}

.photo {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px;
}
.photo .parent-photo {
    max-height: 440px;
}
.photo .child-photo img {
    display: block;
    width: 320px;
    height: 220px;
}

.restaurant .linkbtn {
    max-width: 350px;
}

.multipurpose .cm-caution-list {
    margin-bottom: 1em;
    text-align: right;
}

.information-bn {
    margin-bottom: 5em;
}
.information-bn img {
    display: block;
    width: 100%;
}

.charm-catch img {
    width: 100%;
    margin-bottom: 50px;
}

.charm-copy {
    margin-bottom: 50px;
    font-size: 30px;
    text-align: center;
    letter-spacing: 0.4em;
}

.charm-list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 30px;
    background-color: #222222;
}

.charm-list li:nth-of-type(even) {
    -ms-flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.charm-list li:last-of-type {
    margin-bottom: 15px;
}

.charm-img {
    display: block;
    width: 50%;
    height: 100%;
}

.charm-point {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 50%;
    padding: 15px;
    box-sizing: border-box;
}

.charm-point-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    color: #ffffff;
    border: 1px solid #999;
}

.charm-point-description {
    padding: 10px 0;
}

.charm-point-description dt {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-left: 40px;
    margin-right: 40px;
    line-height: 1.5;
}

.charm-point-description dd {
    padding: 0 50px;
    font-size: 14px;
    line-height: 1.7;
}

.layout {
    margin-bottom: 70px;
    text-align: center;
}


.spec-list {
    padding: 40px 0;
    border-top: 1px dotted #939393;
    border-bottom: 1px dotted #939393;
}
.spec-list dt, .spec-list dd {
    font-size: 12px;
}
.spec-list > dt {
    margin-bottom: 10px;
}
.spec-list > dt:before {
    content: '[';
}
.spec-list > dt:after {
    content: ']';
}

.spec-list .spec-content {
    margin-bottom: 30px;
}
.spec-list .spec-content > dt:before {
    content: '■';
}
.spec-list .spec-content dd dl dt, .spec-list .spec-content dd dl dd {
    display: table-cell;
}
.spec-list .spec-content dd dl dt {
    min-width: 200px;
}
.spec-list .spec-content dd dl dd {
    padding-left: 1em;
}
.spec-list .spec-content dd dl dd:before {
    margin-left: -1em;
    content: '：';
}

.spec-pdf-link {
    display: inline-block;
    padding: 2px 10px;
    border: 1px solid #999999;
    background-color: #999999;
    color: #ffffff;
    font-size: 14px;
    text-decoration: none;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.spec-pdf-link:hover {
    color: #999999;
    background-color: #ffffff;
}


/*+~+~+~+~+~+~+~+~+~+~~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~++~~++*/
/*Responsive*/
/*+~+~+~+~+~+~+~+~+~+~~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~++~~++*/
@media screen and (max-width: 1024px) {
    .cm-type-list {
        margin-bottom: 50px;
    }

    .photo {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .photo .parent-photo {
        width: 100%;
        height: 100%;
        max-height: none;
    }
    .photo .child-photo {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
    }
    .photo .child-photo img {
        width: 50%;
        height: 100%;
    }

    .charm-point-description dt {
        margin-bottom: 20px;
        font-size: 20px;
    }
    .charm-point-description dd {
        padding: 0 40px;
    }
}

@media screen and (max-width: 900px) and (min-width: 768px) {
    .charm-point {
        padding: 10px;
    }
    .charm-point-description dt {
        margin-bottom: 10px;
        font-size: 18px;
    }
    .charm-point-description dd {
        padding: 0 30px;
    }
}

@media screen and (max-width: 768px) {
    .cm-type-list {
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 640px) {
    .cm-type-list li {
        margin-right: 10px;
    }
    .cm-type-list li a dl dt {
        padding: 10px 5px;
        font-size: 13px;
    }

    .charm-catch img {
        margin-bottom: 35px;
    }
    .charm-copy {
        margin-bottom: 35px;
        font-size: 20px;
    }
    .charm-list li {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .charm-point-description {
        padding: 15px 0;
    }
    .charm-point-description dt {
        margin-bottom: 15px;
        font-size: 18px;
    }
    .charm-point-description dd {
        padding: 0 20px;
    }
    .charm-img {
        width: 100%;
    }
    .charm-point {
        width: 100%;
    }

    .multipurpose .cm-caution-list {
        margin-bottom: 50px;
    }
    .layout {
        margin-bottom: 50px;
    }
    .spec-list .spec-content {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 450px) {
    .cm-type-list li {
        width: 100%;
        margin-right: 0;
    }

    .photo .child-photo img {
        width: 50%;
    }


    .charm-copy {
        font-size: 18px;
        letter-spacing: 0.3em;
        line-height: 1.8;
    }
    .charm-list li {
        margin-bottom: 15px;
    }
    .charm-point-description dt {
        margin-bottom: 10px;
    }

    .spec-list .spec-content dd dl {
        margin-bottom: 5px;
    }
    .spec-list .spec-content dd dl dt {
        min-width: inherit;
        width: 7em;
    }
    .spec-list .spec-content dd dl dd {
        margin-left: 1em;
        padding-left: 2em;
        text-indent: -1em;
    }
}

@media screen and (max-width: 320px) {
    .restaurant .linkbtn {
        max-width: none;
        margin: 0;
    }

    .charm-copy {
        font-size: 16px;
    }
    .charm-point-description dt {
        font-size: 16px;
    }
    .charm-point-description dd {
        padding: 0 15px;
    }
    .multipurpose .cm-caution-list {
        margin-bottom: 30px;
    }
    .information-bn {
        margin-bottom: 30px;
    }
}