@charset "UTF-8";
/* CSS Document */


@media screen and (max-width: 767px) {

    /* layout-table */

    .layout-table table {
        width: 1000px;
    }

    .layout-table table td,
    .layout-table table td:last-child {
        display: table-cell;
        border-bottom-style: solid;
    }

    .layout-table table td {
        border-bottom-style: solid;
    }

    .layout-table table td:last-child {
        border-top-style: solid;
        padding-top: 12px;
    }

    .layout-contents01 > div:not(:last-child) {
        margin-bottom: 35px;
    }

    .layout-table p span {
        display: block;
        line-height: 1.8;
    }

    /* layout03 */

    .contents02 .layout03 {
        margin-bottom: 40px;
    }

    .layout03 h4 {
        font-size: 19px;
        letter-spacing: 0em;
    }

    .layout03 h5,
    .layout03 h5 a {
        font-size: 35px;
    }

    .layout03 h5 {
        padding-left: 27px;
    }

    .layout03 h5::before {
        top: 12px;
        height: 27px;
    }

    /* layout04 */

    .layout04 .box:not(:last-child) {
        margin-bottom: 35px;
    }

    .layout04 .box-title-page03 {
        margin-bottom: 20px;
    }

    .layout04 .box-detail {
        gap: 10px 30px;
        padding: 30px 0px;
    }

    .layout04 .box-detail ul li {
        font-size: 16px;
    }

    /* layout05 */

    .contents02 .layout05 {
        padding: 50px 0px;
    }

    .contents02 .layout05:last-child {
        padding-bottom: 0px;
    }

    /* layout06 */


    .layout06 .box-wrap:not(:last-child) {
        margin-bottom: 50px;
        padding-bottom: 50px;
    }

    .layout06 h3 {
        font-size: 26px;
        letter-spacing: 0.1em;
        padding: 0px 20px;
        margin-bottom: 30px;
        border-width: 5px;
    }

    /* box-item */

    .layout06 .box-item ul {
        flex-direction: column;
        gap: 10px 20px;
        margin-bottom: 30px;
    }

    .layout06 .box-item ul li {
        font-size: 15px;
        letter-spacing: 0em;
        display: block;
        padding: 12px 0px;
        width: 100%;
    }

    /* box-link */

    .layout06 .box-link {
        padding-top: 30px;
    }

    .layout06 .box-link img {
        width: 90%;
        max-width: 400px;
    }

    /* layout07 */

    .layout07 {
        margin-bottom: 30px;
    }

    .layout07 .box-text {
        padding: 30px 6%;
        text-align: left;
    }

    /* layout08 */

    .layout08 .box-item {
        padding: 30px 6% 20px;
    }

    .layout08 .box-item:not(:last-child) {
        margin-bottom: 30px;
    }

    .layout08 .box-text:not(:last-child) {
        margin-bottom: 30px;
    }

    .layout08 h5,
    .layout08 h6 {
        font-size: 18px;
        letter-spacing: 0em;
    }

    .layout08 h6:not(:last-child) {
        margin-bottom: 40px;
    }

    /* layout09 */

    .layout09 {
        padding-top: 40px;
    }

    /* layout10 */

    .layout10 .box {
        padding: 30px 6%;
    }

    .layout10 .box:not(:last-child) {
        margin-bottom: 25px;
    }

    .layout10 .box-times {
        justify-content: center;
        flex-direction: column;
    }

    .layout10 .box-times h5:last-child {
        width: 100%;
    }

    /* layout11 */

    .layout11 h6 {
        font-size: 16px;
        text-align: left;
    }

    /* box-target */

    .box-target {
        flex-direction: column;
        gap: 15px;
    }

    .box-target .box {
        width: 100%;
    }

    .box-target h5,
    .box-times h5:last-child {
        font-size: 18px;
        line-height: 1.5;
        letter-spacing: 0em;
        padding-left: 0px;
        padding-top: 35px;
        text-align: center;
        width: 100%;
    }

    .box-target_none h5 {
        margin-bottom: 0px;
    }

    .box-target h5::before,
    .box-times h5:last-child::before {
        background-position: center top;
        width: 100%;
        height: 30px;
        margin-top: 0px;
    }
	
	.left {
		text-align: left;
	}

    /* midashi-long */

    .midashi-long h2::before {
        margin-right: 10px;
        min-width: 20px;
    }

    .midashi-long h2::after {
        margin-left: 10px;
        min-width: 20px;
    }

    .pc-view {
        display: none;
    }

    .sp-view {
        display: inline-block;
    }

}
