h1, h2, h3, h4, h5 {
    text-align: center;
}
h1 {
    font-size: 4.5vw;
}
h2 {
    font-size: 4vw;
}
h3 {
    font-size: 3.54vw;
}
h4 {
    font-size: 3vw;
}
h5 {
    font-size: 3vw;
}

.header_inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header_inner p {
    font-size: 4.5vw;
    line-height: 1.5vw;
    font-weight: 900;
}
.header_inner p span {
    font-size: 1.5vw;
    font-weight: 400;
}

nav a {
    background-color: var(--color-blue);
    color: var(--color-white);
    padding: 0.25vw 0.5vw 0.25vw 0.5vw;
    font-size: 1vw;
    font-weight: 700;
    margin: 0 1vw 0 1vw;
}

img {
    max-width: 100%;
    height: auto;
}

.concerns, .technology, .spec {
    background-color: var(--color-pblue);
}
.next_stage {
    background-color: var(--color-dblue);
}

.main_img {
    background: url('../../images/bk.png') no-repeat;
    background-size: 100vw;
    color: var(--color-white);
    text-align: left;
}
.main_img article {
    display: flex;
    align-items: stretch;
}
.main_img img {
    width: 100%;
}

.request_info a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color-orange);
    color: #fff;
    text-align: center;
    height: 5vw;
    border-radius: 2.5vw;
    width: 50vw;
    margin: 0 auto;
}
.request_info a > span {
    margin-left: 0.5rem;
}

.concerns {
    padding: 3vw 0;
}
.concerns_box {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    background: #fff;
    height: 12vw;
    border-radius: 6vw;
    width: 60vw;
    max-width: 100%;
    margin: 0 auto 3vw auto;
}
.concerns_box_no {
    width: 8vw;
    height: 8vw;
    background: var(--color-dblue);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: #fff;
    font-weight: 900;
    font-size: 4vw;
    margin: 0 2vw;
}
.concerns_box p {
    font-weight: 700;
    line-height: 1.4;
    margin-right: 1rem;
}
.concerns_box img {
    width: 10vw;
}

.section_copy {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.2;
    text-align: center;
    background: var(--color-dblue);
    width: 30vw;
    margin: 0 auto 60px auto;
    height: 6vw;
    border-radius: 3vw;
    color: #fff;
    font-size: 1.8vw;
    font-weight: 700;
}
.merit_box {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    border-bottom: solid 2px;
    padding: 2vw 0;
    width: 80vw;
    max-width: 100%;
    margin: 0 auto;
}
.merit_box div {
    margin-left: 3vw;
}
.merit_box img {
    width: 10vw;
}
.merit_box div h4 { 
    margin: 0;
    color: var(--color-dblue);
    text-align: left;
}
.merit_box div p {
    margin: 0;
    font-weight: 700;
    font-size: 1.6vw;
    line-height: 1.3;
}

.compare table {
    width: 100%;
    font-size: 2vw;
    font-weight: 700;
    line-height: 1.2;
}
.compare table th {
    width: 20%;
    color: var(--color-white);
    background: var(--color-lgray);
    height: 7rem;
    text-align: center;
    vertical-align: middle;
}
.compare table th:nth-child(2) {
    background: var(--color-dblue);
}
.compare table td {
    background: var(--color-pblue);
    height: 7rem;
    text-align: center;
    vertical-align: middle;
}
.compare table td:nth-child(2) {
    background: var(--color-lblue);
}
.compare table td span {
    font-size: 1.2vw;
}
.compare table td.vp {
    color: var(--color-red);
    font-size: 2.5vw;
}
.spec {
    padding: 60px 0;
}
.spec_sheet {
    background: var(--color-white);
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size: 1.6vw;
    padding: 2vw;
}
.spec_sheet .left_col {
    width: 65%;
}
.spec_sheet .right_col {
    width: 35%;
}
.spec_sheet h4 {
    width: 100%;
    font-size: 2.5vw;
    margin: 0;
}
.technology {
    padding: 60px 0;
}
.technology h4 {
    color: var(--color-white);
    background: #000;
}
.technology h2 {
    color: var(--color-dblue);
}
.technology .tech_feat {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}
.technology .tech_feat figure {
    width: 50%;
}
.technology .tech_feat figure img {
    width: 100%;
}
.technology ul {
    padding: 0;
}
.technology ul li {
    font-size: 2vw;
    font-weight: 700;
    margin-bottom: 0.8rem;
}
.technology ul li span {
    margin-left: 1rem;
}
.next_stage {
    margin-bottom: 60px;
}
.next_stage h3 {
    color: var(--color-white);
}
.next_stage .section_copy {
    color: var(--color-dblue);
    background: var(--color-white);
    width: 40vw;
}

@media screen and (min-width:1201px) {
    /*　画面サイズが1201pxからはここを読み込む　*/
.concerns_box {
    height: 12rem;
    border-radius: 6rem;
}
.concerns_box_no {
    font-size: 40pt;
    width: 8rem;
    height: 8rem;
    margin: 0 1.5rem;
}
.concerns_box p {
    font-size: 24pt;
}
.concerns_box img {
    width: 20%;
}
.next_stage {
    padding: 60px;
}
.next_stage h3 {
    color: var(--color-white);
}
}

@media screen and (max-width:1000px) {
    /*　画面サイズが1000pxまではここを読み込む　*/
.merit_box div p {
    font-size: 2.5vw;
}
.compare table th,
.compare table td {
    font-size: 3.5vw;
}
.compare table td.vp {
    font-size: 4.5vw;
}
.section_copy {
    font-size: 3vw;
    width: 60vw;
    height: 12vw;
    border-radius: 6vw;
    margin-bottom: 4vw;
}
.spec_sheet {
    font-size: 2.5vw;
}
.spec_sheet h4 {
    font-size: 3.5vw;
}
.next_stage {
    padding: 2vw;
}
.technology .tech_feat {
    flex-wrap: wrap;
}
.technology .tech_feat figure {
    width: 80%;
    margin: 0 auto;
}
.technology ul {
    margin: 0 auto;
}
.technology ul li {
    font-size: 3vw;
}
.technology ul li img {
    width: 5vw;
}
.next_stage .section_copy {
    width: 60vw;
}
}