body {
    background: url(../images/map/fv-background.png) no-repeat center top;
    background-size: 100% auto;
}
@media print, screen and (max-width: 768px) {
    body {
        background: none;
    }
}

/* ==============================
  FV
============================== */
#fv {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding-bottom: 3.9%;
}
#fv .fv-image {
    width: 89%;
    margin: 0 0 0 auto;
}
@media print, screen and (max-width: 768px) {
    #fv {
        width: 100%;
        padding-bottom: 0;
    }
    #fv .fv-image {
        width: 100%;
        margin: 0;
    }
}

/* ==============================
  CONTENTS
============================== */
.contents {
    background-color: #FFF;
}
.contents section .inner {
    width: 70.4%;
    max-width: 902px;
    margin: 0 auto;
}

.contents section h2 {
    margin: 0 auto 3.3%;
}
section table {
	width: 100%;
	border-top: 1px solid #595757;
}
section th,
section td {
	padding: 1em 2em;
    font-size: min(1.3vw, 1.7rem);
	border-bottom: 1px solid #595757;
}
section th {
	background: #eff8f9;
	/* width: 17.7%; */
    width: 10em;
    box-sizing: border-box;
    font-weight: bold;
}


section h5 {
    color: #00496d;
    font-size: min(1.3vw, 1.7rem);
    line-height: 1.7;
    font-weight: bold;
}
section p {
    font-size: min(1.3vw, 1.7rem);
    line-height: 1.7;
}
section p + h5 {
    margin-top: 1.7em;
}
section ul {
    line-height: 1.7;
}
section ul li {
    display: block;
    padding-left: 1em;
}
section ul li::before {
    content: "●";
    color: #00496d;
    display: block;
    float: left;
    margin-left: -1em;
    width: 1em;
    text-align: center;
}
section ul li span {
    font-weight: bold;
}

section ul li h6 {
    font-weight: bold;
}
section ul li p  {
    display: block;
    padding-left: 1em;
}
section ul li p::before {
    content: "・";
    display: block;
    float: left;
    margin-left: -1em;
    width: 1em;
    text-align: center;
}


@media print, screen and (max-width: 768px) {
    .contents section .inner {
        width: 86.9vw;
    }
    .contents section h2 {
        margin: 0 auto 7.8vw;
    }
    section th,
    section td {
        padding: 0.5em 0 0.5em 0.5em;
        font-size: 3.9vw;
    }
    section th {
        width: 24.3vw;
    }


    section h5 {
        font-size: 3.9vw;
    }
    section p {
        font-size: 3.9vw;
    }

    section ul li {
        letter-spacing: -0.1em;
    }
}

#info {
    padding: 10.7% 0 0;
}
#info h2 {
    width: 19.9%;
}
#info .years a + a {
    margin-left: 1em;
}
#info td span.pc {
    display: inline-block;
}

#history {
    padding: 7.7% 0 8.8%;
}
#history h2 {
    width: 19.9%;
}

#idea {
    padding: 8.8% 0 7.7%;
    background: #eff8f9;
}
#idea h2 {
    width: 19.9%;
}


#vision {
    padding: 8.8% 0 0;
    margin-bottom: 14.8%;
}
#vision h2 {
    width: 27.1%;
}
#vision .inner {
    box-sizing: border-box;
    padding: 5.5% 3.5%;
    border: 1px solid #595757;
}
@media print, screen and (max-width: 768px) {
    #info {
        padding: 12.3vw 0 0;
    }
    #info h2 {
        width:37.1vw;
    }
    #info .years {
        display: flex;
        flex-wrap: wrap;
    }
    #info .years a {
        width: calc(100% / 3);
    }
    #info .years a + a {
        margin-left: 0;
    }
    #info td span.pc {
        display: none;
    }

    #history {
        padding: 11.7vw 0 13.4vw;
    }
    #history h2 {
        width:37.1vw;
    }
    #history th {
        text-align: center;
        padding-left: 0;
        padding-right: 0;
    }

    #idea {
        padding: 14.3vw 0 8.8vw;
    }
    #idea .inner {
        width: 74.2vw;
        /* width: 84.2vw; */
    }
    #idea h2 {
        width:37.1vw;
    }
    #idea h5 + p {
        letter-spacing: -0.1em;
    }

    #vision {
        padding: 13.6vw 0 0;
        margin-bottom: 29.9vw;
    }
    #vision h2 {
        width: 50.1vw;
    }
    #vision .inner {
        padding: 10.4vw 5.9vw;
    }

}
