  .mainVistual {
    display: flex;
    height: auto;
    width: 100%;
    background-color: #fff;
    position: relative;
    margin-bottom: 80px;
}

.mainVistual:before {
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background-color: #f7f7f7;
    position: absolute;
    top: 0px;
    left: 0px;
}

.mainVistual-inner {
    max-width: 1366px;
    width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    margin-bottom: 0px;
}

.mainVistual-content-text {
    display: none;
}

.mainVistual-content-text h1 {
    color: #000;
    font-weight: normal;
}

.mainVistual-content-photo {
    max-width: 1366px;
}

.mainVistual-content-photo img {
    max-width: 100%;
    vertical-align: top;
}

#content section.zeh-m-next_generation {
    width: 100%;
}

.intro {
    display: block;
    margin-bottom: 0px;
}

.intro .intro-inner {
    display: block;
    text-align: center;
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}

.intro .intro-inner .intro-title {
    display: inline-block;
    text-align: center;
    font-size: 36px;
    color: #006946;
    position: relative;
    padding-left: 60px;
    padding-right: 50px;
    margin-bottom: 50px;
}

.intro .intro-inner .intro-title:before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: #006946;
    position: absolute;
    left: 0px;
    top: calc(50% - 1px);
}

.intro .intro-inner .intro-title:after {
    content: "";
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: #006946;
    position: absolute;
    right: 0px;
    top: calc(50% - 1px);
}

.intro .intro-inner .img__block {
    margin-left: auto;
    margin-right: auto;
    max-width: 420px;
    margin-bottom: 50px;
}

.intro .intro-inner .img__block img {
    max-width: 100%;
    height: auto;
}

.intro .intro-inner .text__block {
    margin-bottom: 100px;
}

.intro .intro-inner .text__block p {
    font-size: 18px;
    line-height: 1.7em;
}

.intro .intro-inner .text__block p+p {
    margin-top: 2em;
}

.next_generation-outline {
    display: block;
    background-image: url(/tochikatsu/concept/zeh-m/img/next_generation-outline-bg.jpg);
    background-size: cover;
    background-position: center;
}

.next_generation-inner {
    display: block;
    padding-top: 100px;
    padding-bottom: 100px;
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.next_generation-outline .next_generation-inner .next_generation-title {
    display: inline-block;
    text-align: center;
    font-size: 36px;
    color: #006946;
    position: relative;
    padding-left: 60px;
    padding-right: 50px;
    margin-bottom: 50px;
}

.next_generation-outline .next_generation-inner .next_generation-title:before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: #006946;
    position: absolute;
    left: 0px;
    top: calc(50% - 1px);
}

.next_generation-outline .next_generation-inner .next_generation-title:after {
    content: "";
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: #006946;
    position: absolute;
    right: 0px;
    top: calc(50% - 1px);
}

.next_generation-outline .next_generation-inner .next_generation-sub-title {
    border: solid 2px #006946;
    color: #006946;
    display: inline-block;
    font-size: 20px;
    line-height: 1.1em;
    padding: 10px 40px;
    margin-bottom: 50px;
}

.next_generation-outline .next_generation-inner .img__block {
    margin-left: auto;
    margin-right: auto;
    max-width: 680px;
    margin-bottom: 70px;
}

.next_generation-outline .next_generation-inner .img__block img {
    max-width: 100%;
    height: auto;
}

.next_generation-outline .next_generation-inner .text__block {
    margin-bottom: 50px;
}

.next_generation-outline .next_generation-inner .text__block p {
    font-size: 18px;
    line-height: 1.7em;
}

.next_generation-outline .next_generation-inner .text__block p+p {
    margin-top: 2em;
}

.point-ancher__block {
    margin-bottom: 100px;
}

.point-ancher {
    display: flex;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.point-ancher li {
    max-width: 180px;
    margin-left: 15px;
    margin-right: 15px;
}

.point-ancher li a {
    display: block;
    transition: 0.2s;
}

.point-ancher li a:hover {
    opacity: .8;
}

.point-ancher li img {
    max-width: 100%;
}

.point-outline {
    display: block;
}

.point-inner {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 80px;
    padding-bottom: 80px;
}

.point-items__block {
    display: block;
}

.point-items__block .point-items {
    display: block;
}

.point-items__block .point-items .point-item {
    display: flex;
    flex-direction: column;
}

.point-items__block .point-items .point-item {
    /*margin-top: 16px;*/
    border: solid 1px #F28000;
    margin-bottom: 20px;
}

.point-items__block .point-items .point-item .point-item-header {
    display: flex;
    width: 100%;
}

.point-items__block .point-items .point-item .point-item-header i {
    max-width: 132px;
    height: auto;
    display: block;
}

.point-items .point-item .point-item-header i img {
    max-width: 100%;
    height: auto;
}

.point-items .point-item .point-item-header h2 {
    padding: 10px 30px;
    font-size: 24px;
    font-weight: bold;
    color: #F28000;
}

.point-items .point-item .point-item-body {
    display: flex;
    padding: 34px;
}

.point-items .point-item .point-item-body .point-item-text {
    padding-right: 42px;
    max-width: 352px;
    box-sizing: border-box;
}

.point-items .point-item .point-item-body .point-item-thumb {
    max-width: 500px;
}

.point-items .point-item .point-item-body .point-item-thumb img {
    max-width: 100%;
}

.point-items .point-item .point-item-body .point-item-text p {
    font-size: 16px;
    line-height: 1.7em;
}

.point-items .point-item:nth-child(2) {
    border: solid 1px #008C4F;
}

.point-items .point-item:nth-child(2) .point-item-header h2 {
    color: #008C4F;
}

.point-items .point-item:nth-child(3) {
    border: solid 1px #235A9F;
}

.point-items .point-item:nth-child(3) .point-item-header h2 {
    color: #235A9F;
}

.merit__block {
    margin-bottom: 0px;
}

.merit-inner {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding-top: 70px;
}

.merit-sub-title {
    border: solid 2px #006946;
    color: #006946;
    display: inline-block;
    font-size: 20px;
    line-height: 1.1em;
    padding: 10px 40px;
    margin-bottom: 50px;
}

.merit-items {
    display: flex;
    max-width: 832px;
    margin-left: auto;
    margin-right: auto;
}

.merit-items .merit-item {
    margin-left: 6px;
    margin-right: 6px;
}

.merit-items .merit-item img {
    max-width: 100%;
}

.contact__block {
    background-color: #E9F0CF;
}

.contact__block .contact-inner {
    max-width: 692px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 50px;
    padding-bottom: 50px;
}

.contact__block .contact-inner .contact {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.contact__block .contact-inner .contact .lf {
    padding-right: 0px;
    max-width: calc(100% - 319px);
    box-sizing: border-box;
}

.contact__block .contact-inner .contact .lf h3 {
    color: #008D54;
    font-size: 24px;
    line-height: 1.7em;
}

.contact__block .contact-inner .contact .ri {
    max-width: 319px;
    margin-left: auto;
}

.contact__block .contact-inner .contact .ri img {
    max-width: 100%;
}

.contact-btns {
    display: flex;
}

.contact-btns .contact-btn {
    margin-left: auto;
    margin-right: auto;
    width: 292px;
    height: 58px;
    background-color: #008D54;
    color: #fff;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s;
}

.contact-btns .contact-btn:after {
    content: '';
    display: inline-block;
    margin-left: 6px;
    width: 8px;
    height: 8px;
    border: 1px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
}

.contact-btns .contact-btn:hover:after {
    content: '';
    display: inline-block;
    margin-left: 6px;
    width: 8px;
    height: 8px;
    border: 1px solid;
    border-color: #008d54 #008d54 transparent transparent;
    transform: rotate(45deg);
}

.contact-btns .contact-btn:hover {
    text-decoration: none;
    opacity: 1;
    background-color: #fff;
    color: #008D54;
}