.page-footer,
body {
    background-color: #fff;
}

.header_logo img,
.pbMainArea {
    max-width: 100%;
}

.mainvisual-inner {
    position: relative;
}

*,
:root ol,
:root ul {
    margin: 0;
    padding: 0;
}

a,
abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
u,
ul,
var,
video {
    border: 0;
    font: inherit;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}

em,
h1,
h2,
h3,
h4,
h5,
h6,
strong {
    font-weight: 700;
}

img,
td,
th {
    vertical-align: top;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section {
    display: block;
}

.mac,
.win {
    overflow-y: scroll;
}

#footerArea .pbNestedWrapper,
.page-footer,
.page-footer .pbNestedWrapper {
    overflow: visible;
}

html {
    font-size: 0.625em;
}

body {
    color: #333;
    line-height: 1.6;
    -webkit-text-size-adjust: 100%;
}

dd caption,
dd col,
dd dd,
dd dt,
dd figcaption,
dd li,
dd p,
dd td,
dd th,
li caption,
li col,
li dd,
li dt,
li figcaption,
li li,
li p,
li td,
li th,
td caption,
td col,
td dd,
td dt,
td figcaption,
td li,
td p,
td td,
td th,
th caption,
th col,
th dd,
th dt,
th figcaption,
th li,
th p,
th td,
th th {
    font-size: 1em;
}

body,
input,
select,
textarea {
    font-family: "Hiragino Kaku Gothic ProN", Meiryo, "MS PGothic", sans-serif;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

ol,
ul {
    list-style: none;
}

img {
    height: auto;
    width: 100%;
    -ms-interpolation-mode: bicubic;
}

embed,
iframe,
object {
    max-width: 100%;
    outline: 0;
    vertical-align: top;
}

em,
strong {
    font-style: normal;
}

.article,
.content,
.main-content,
.page-container,
.page-footer,
.page-header,
.row,
.section,
.sub-content,
article,
aside,
footer,
header,
main,
nav,
section {
    zoom: 1;
}

.article:after,
.article:before,
.content:after,
.content:before,
.main-content:after,
.main-content:before,
.page-container:after,
.page-container:before,
.page-footer:after,
.page-footer:before,
.page-header:after,
.page-header:before,
.row:after,
.row:before,
.section:after,
.section:before,
.sub-content:after,
.sub-content:before,
article:after,
article:before,
aside:after,
aside:before,
footer:after,
footer:before,
header:after,
header:before,
main:after,
main:before,
nav:after,
nav:before,
section:after,
section:before {
    content: "";
    display: table;
}

.article:after,
.content:after,
.main-content:after,
.page-container:after,
.page-footer:after,
.page-header:after,
.pbBlock,
.pbFooterArea,
.row:after,
.section:after,
.sub-content:after,
article:after,
aside:after,
footer:after,
header:after,
main:after,
nav:after,
section:after {
    clear: both;
}

address,
caption,
col,
dd,
dt,
figcaption,
h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
td,
th {
    color: #333;
    font-size: 1.4em;
    text-align: left;
}

.content,
.pbAreaWrapper1 {
    margin: 6.5em auto 0;
    position: relative;
    width: 960px;
}

.theme-max-width .pbAreaWrapper1 {
    padding: 0;
    width: auto;
}

.theme-no-margin .pbAreaWrapper1,
.type-section,
p:first-child,
section section:first-child,
section:first-child {
    margin-top: 0;
}

.pbAreaWrapper2 {
    margin-left: 0 !important;
}

.main-content,
.pbMainArea {
    float: left;
    width: 710px;
}

.single-column .main-content,
.single-column .pbMainArea,
.theme-max-width .main-content,
.theme-max-width .pbMainArea,
.theme-single-column .main-content,
.theme-single-column .pbMainArea {
    float: none;
    width: auto;
}

.page-footer {
    padding-top: 3em;
    zoom: 1;
}

.pbFooterArea,
.pbMainArea,
.pbNestedWrapper {
    overflow: hidden;
}

.page-footer .footer-lower {
    background: url(../img/footer_line_img01.png) bottom center/960px 45px no-repeat,
        url(../img/footer_line_img02.png) bottom 16px left/1px 13px repeat-x #fff;
    clear: both;
    font-size: 1em;
    overflow: visible;
    padding: 3em 0 6em;
    position: relative;
}

.page-footer .footer-lower .footer-logo {
    float: left;
    margin-top: 0;
}

.page-footer .footer-lower .footer-sub-nav {
    float: right;
    overflow: hidden;
    text-align: right;
    width: calc(620 / 960 * 100%);
}

.page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list>li {
    border-right: 1px solid #bcbcbc;
    display: inline-block;
    font-size: 1.1em;
    line-height: 1;
    margin: 0 0.455em 1.091em 0;
    padding-right: 0.455em;
}

.pbArea,
.pbAreaWrapper1,
.pbAreaWrapper2 {
    border-width: 0;
    padding: 0;
}

.page-footer .footer-lower .copyright {
    clear: both;
    color: #666;
    font-size: 1.1em;
    text-align: right;
}

.concept,
.footer-totop,
.mt0 {
    margin-top: 0 !important;
}

.footer-lower .inner,
.footer-nav-wrap .inner {
    margin: 0 auto;
    position: relative;
    width: 960px;
}

.pbArea,
.pbNested,
:root .pbAreaWrapper2 {
    margin: 0;
}

section {
    margin-top: 4em;
}

section section {
    margin-top: 3em;
}

ul.mod-ul-notes li {
    color: #666;
    font-size: 1.2em;
    padding-left: 1.1em;
    position: relative;
    zoom: 1;
}

ul.mod-ul-notes li .list-style {
    position: absolute;
    left: 0;
    top: 0;
    zoom: 1;
}

a:link,
a:visited {
    color: #333;
    text-decoration: none;
}

a:active,
a:hover {
    color: #094;
    text-decoration: underline;
}

.size-large {
    font-size: 121.43% !important;
}

address.size-large,
caption.size-large,
col.size-large,
dd.size-large,
dt.size-large,
figcaption.size-large,
h1.size-large,
h2.size-large,
h3.size-large,
h4.size-large,
h5.size-large,
h6.size-large,
li.size-large,
p.size-large,
td.size-large,
th.size-large {
    font-size: 1.7em !important;
}

.clear-both {
    clear: both !important;
}

.align-center {
    text-align: center !important;
}

.pbPage,
iframe {
    width: 100%;
}

.pbPage:after {
    clear: both;
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
}

.pbAreaWrapper1 {
    clear: both;
    height: 100%;
    margin: 0;
}

.pbNested:after,
:root .pbAreaWrapper1:after {
    clear: both;
    content: "";
    display: block;
    height: 0;
}

.pbNested {
    clear: both;
    min-height: 0;
    padding: 0;
}

.pbPage .page-footer,
.pbPage .page-header {
    min-width: 100%;
}

.align-center,
.concept_title {
    text-align: center;
}

.concept_body {
    position: relative;
}

.concept_trigger>a::after,
.concept_trigger>a::before {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    border-top: 3px solid #fff;
    content: "";
    display: block;
    height: 0;
    margin: auto 0;
    position: absolute;
    bottom: 0;
    right: 0.4em;
    top: 0;
    transition: transform 0.3s;
    width: 1.6em;
}

.concept_trigger>a::after {
    transform: rotate(90deg);
}

.is-expanded .concept_trigger>a::after {
    transform: rotate(360deg);
}

.type-box_head p span.green {
    color: #60a66b;
}

.type-box_head p span.orange {
    color: #eb8501;
}

.type-box_head p span.pink {
    color: #ff7a84;
}

.type-box_head p span.green02 {
    color: #00aa8f;
}

.type-box_head p span.purple {
    color: #bd5483;
}

.type-box_head p span.red {
    color: #dd2d44;
}

.type-box_head p span.blue {
    color: #255c8f;
}

.fs-news .fs-news-exp span {
    color: #094;
}

.type-box_wrap.bg-02 {
    background-color: #ffdae4;
}

.type-box_wrap.bg-01:before {
    display: none;
}

.type-box+.type-box {
    margin-top: 5em;
}

.convertion-box_item_title:after {
    background-color: #a0a0a2;
    content: "";
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

.convertion-box_item_head:before {
    transform: rotate(65deg);
}

.convertion-box_item_head:after {
    transform: rotate(-65deg);
}

#sticky-banner.hide {
    display: none !important;
}

.widget-button {
    background: #fffbc7;
}

.point-section{
    margin-top: 3.6em;
}

.text-buble{
    display: inline-block;
    background-color: #FFF;
    color: #2c893a;
    font-size: 4vw;
    border-radius: 2.8vw;
    padding: 3px 44px;
    line-height: 1;
    transform: translate(5px, -3px);
    /* padding: .5em 2.1em .13em;
    line-height: 1; */
}

@media all and (min-width: 751px) {
    .point-section {
        margin-top: 6.5em;
    }

    .concept_lower-title,
    .concept_text {
        font-size: 1.7rem;
        line-height: 1.65;
        margin-top: 0.706em;
        text-align: left;
    }

    .header,
    .page-footer .footer-lower {
        margin: 0 auto;
        position: relative;
        max-width: 960px;
    }

    .convertion-box_item,
    .type-box {
        border-radius: 12px;
        box-sizing: border-box;
    }

    .about-section,
    .concept_inner,
    .convertion-box_item,
    .convertion-box_item_list,
    .footer-totop a,
    .type-box {
        box-sizing: border-box;
    }

    .sp {
        display: none !important;
    }

    #footerArea {
        padding-bottom: 14em;
        padding-top: 0;
    }

    .pbFooterArea {
        overflow: visible !important;
    }

    .page-footer .pbNestedWrapper {
        overflow: visible;
    }

    .page-footer:after,
    .page-footer:before {
        content: "";
        display: table;
    }

    .page-footer:after {
        clear: both;
    }

    .header {
        width: 100%;
    }

    .page-footer .inner {
        position: relative;
        width: 100%;
    }

    .page-footer .footer-lower {
        background: url(../img/footer_line_img01.png) bottom center/100% 45px no-repeat;
        clear: both;
        font-size: 1em;
        overflow: visible;
        padding: 3em 2em 6em;
    }

    .page-footer .footer-lower .footer-logo {
        float: left;
    }

    .page-footer .footer-lower .footer-sub-nav {
        float: right;
        overflow: hidden;
        text-align: right;
        width: calc(620 / 960 * 100%);
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list {
        font-size: 1em;
        margin-bottom: 0;
        margin-right: -1em;
        margin-top: 0;
        padding: 0.3em 0 0;
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list>li {
        border-right: 1px solid #bcbcbc;
        display: inline-block;
        font-size: 1.1em !important;
        line-height: 1;
        margin: 0 0.455em 1.091em 0;
        padding-right: 0.455em;
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list>li a {
        border-bottom: none;
        color: #333;
        text-decoration: none;
    }

    .page-footer .footer-lower .copyright {
        clear: both;
        color: #666;
        font-size: 1.1em !important;
        text-align: right;
    }

    .footer-totop {
        margin-top: 0 !important;
    }

    .concept {
        background-color: #f6f6f6;
        padding: 8.9em 0 15.2em;
    }

    .concept_inner {
        margin: 0 auto;
        max-width: 960px;
        padding: 0 10em;
    }

    .concept_section {
        margin-top: 4.8em;
    }

    .concept_lower-title,
    .type-box_head p span {
        font-weight: 700;
    }

    .concept_title+.concept_text {
        margin-top: 2.235em;
    }

    .concept_body_inner {
        margin-top: 4.9em;
    }

    .concept_trigger {
        margin-top: 3.714em !important;
        position: absolute;
        right: 0;
        top: 100%;
    }

    .concept_trigger>a {
        background: url(../img/concept_img04.png) center center/100% 100% no-repeat;
        cursor: pointer;
        display: block;
        height: 3em;
        overflow: hidden;
        position: relative;
        text-indent: 110%;
        white-space: nowrap;
        width: 10.429em;
    }

    .concept_trigger>a:active::before,
    .concept_trigger>a:hover::before {
        transform: scale(1.1);
    }

    .concept_trigger>a:active::after,
    .concept_trigger>a:hover::after {
        transform: rotate(90deg) scale(1.1);
    }

    .is-expanded .concept_trigger>a:active::after,
    .is-expanded .concept_trigger>a:hover::after {
        transform: rotate(360deg) scale(1.1);
    }

    .only-sp,
    .productlist-section {
        display: none !important;
    }

    .page-width {
        margin-left: auto;
        margin-right: auto;
        max-width: 960px;
        padding-left: 2em !important;
        padding-right: 2em !important;
    }

    .header-wrap {
        padding: 2em 0;
    }

    .header_logo {
        margin: 0 auto;
        position: relative;
        width: calc(253 / 960 * 100%);
        z-index: 1;
    }

    .header_logo>a {
        display: block;
        transition: opacity 0.3s;
    }

    .convertion-box_item_button:not(.type-tel):hover,
    .header_logo>a:active,
    .header_logo>a:hover,
    .type-box-button:hover,
    ul.page-tab a:hover {
        opacity: 0.7;
    }

    .header_logo img {
        max-width: 100%;
    }

    .page-tab-wrap {
        background-color: #f4f2f2;
        margin-bottom: 0;
        padding-top: 3.4em;
        position: relative;
    }

    .page-tab-wrap:after {
        background-color: #009a42;
        content: "";
        height: 2px;
        position: absolute;
        bottom: -0.2em;
        left: 0;
        width: 100%;
        z-index: 2;
    }

    ul.page-tab {
        align-items: flex-end;
        display: flex;
        justify-content: center;
        margin: auto;
        max-width: 685px;
        padding: 0;
    }

    ul.page-tab li {
        margin-bottom: -0.3rem;
        width: calc(215 / 685 * 100%);
    }

    ul.page-tab li:nth-child(2) {
        margin: 0 1.429em -0.3rem;
    }

    ul.page-tab .tab-current {
        z-index: 2;
    }

    .mainvisual {
        margin: 0 auto;
        border-top: 2px solid #2c893a;
        border-bottom: 2px solid #2c893a;
    }

    .mainvisual h1 {
        text-align: center;
    }

    .mainvisual img {
        width: 100%;
        margin: 0 auto;
    }

    .mv-slider-box {
        margin-top: -13px;
    }

    .mainvisual-inner {
        margin: 0 auto;
        max-width: 1366px;
        position: relative;
        padding: 0;
    }

    .mainvisual-inner .anchor-logo {
        display: flex;
        justify-content: center;
        text-align: center;
        position: absolute;
        width: 100%;
        top: 32px;
        right: -438px;
        border-radius: 50%;
        z-index: 10;
    }

    .mainvisual-inner .anchor-logo a{
        box-shadow: 0 0 10px rgba(87, 87, 87, 0.72);
        border-radius: 50%;
    }


    .fs-news .fs-news-exp {
        font-size: 2.7em;
        font-weight: 600;
        line-height: 1.778;
        text-align: center;
    }

    .fs-news .fs-news-link {
        align-items: center;
        background-color: #f8f4ec;
        display: flex;
        justify-content: center;
        flex-direction: column;
        margin: 2.5em auto 6.3em;
        max-width: 960px;
        padding: 2em 0;
    }

    .fs-news .fs-news-link .news_title {
        font-size: 3.4em;
        color: #2c893a;
        font-weight: 700;
        line-height: 1.58;
    }

    .convertion-box_item_head span,
    .type-box_head p {
        display: table-cell;
        text-align: center;
        vertical-align: middle;
    }

    .type-box {
        background-color: #fff;
        overflow: hidden;
        padding: 5em 3.5em 4.2em;
        text-align: center;
    }

    .about-section {
        background-color: #fffcd3;
        margin-top: 0;
        padding: 4em 0;
    }

    .about-section-title {
        margin: 0 auto;
    }

    .about-local-title {
        color: #094;
        font-size: 3rem;
        line-height: 1.46;
        text-align: center;
    }

    .about-local-text {
        color: #333;
        font-size: 1.56rem;
        font-weight: 600;
    }

    .about-local-image {
        margin: 1.2em auto 0.9em;
        width: calc(408 / 890 * 100%);
    }

    .convertion-section {
        background-color: #c8c8c8;
        margin-top: 0;
        padding: 5em 0 4.4em;
    }

    .convertion-box .mod-ul-notes {
        margin: 3em auto 0 !important;
        padding: 0 2em !important;
    }

    .convertion-box_title {
        color: #3f3b3a;
        font-size: 2rem;
        text-align: center;
    }

    .convertion-box_item_wrap {
        display: flex;
        justify-content: space-between;
        margin: 3em 0 0 !important;
        padding: 0 !important;
    }

    .convertion-box_item {
        background-color: #fff;
        margin: 0;
        padding: 2.357em 0.786em 3em;
        width: calc(306 / 960 * 100%);
    }

    .convertion-box_item_title {
        color: #403d3c;
        font-size: 2.4rem;
        padding-bottom: 0.458em;
        position: relative;
        text-align: center;
    }

    .convertion-box_item_head {
        display: table;
        height: 3.286em;
        margin: 1.643em auto 0;
        padding: 0 2.143em;
        position: relative;
    }

    .convertion-box_item_head span {
        color: #094;
        font-size: 1.6rem;
        font-weight: 700;
        line-height: 1.3;
    }

    .convertion-box_item_head:after,
    .convertion-box_item_head:before {
        background-color: #094;
        content: "";
        display: inline-block;
        height: 2px;
        position: absolute;
        top: 50%;
        vertical-align: bottom;
        width: 3.357em;
    }

    .convertion-box_item_head:after {
        right: -1.214em;
    }

    .convertion-box_item_head:before {
        left: -1.214em;
    }

    .convertion-box_item_button {
        box-sizing: border-box;
        margin: 1.429em auto 0;
        padding: 0 0.714em;
        width: 100%;
    }

    .convertion-box_item_button.type-tel a {
        pointer-events: none;
    }

    .convertion-box_item_list {
        margin: 1.143em 0 0 !important;
        padding: 0 0.714em !important;
    }

    .convertion-box_item_list li {
        color: #403d3c;
        padding-left: 1em;
        position: relative;
        text-indent: -1em;
    }

    .convertion-box_item_text {
        color: #403d3c;
        letter-spacing: -0.06em;
        margin-top: 1.143em;
        padding: 0 0.714em;
    }

    .text-buble{
        font-size: 1.892857em;
        border-radius: .7924528em;
        padding: .30188679em 2.1em;
        transform: none;
        /* padding: .5em 2.1em .13em;
        line-height: 1; */
    }
}

@media all and (min-width: 751px) and (max-width: 1088px) {
    .mainvisual-inner .anchor-logo {
        top: 2.941vw;
        right: -40.257vw;
    }

    .mainvisual-inner .anchor-logo a {
        max-width: 152px;
        max-height: 152px;
        width: 13.971vw;
        height: 13.971vw;
    }
}

@media all and (min-width: 751px) and (max-width: 1366px) {
    .mv-slider-box {
        width: 36.75%;
        margin: -1.025% auto 0;
    }

    .mv-slider-box img {
        max-width: 100%;
    }

    ul.page-tab li {
        margin-bottom: -0.2rem;
    }
}

@media print {
    .sp {
        display: none !important;
    }
}

@media all and (max-width: 750px) {

    a.disable-state {
        cursor: pointer;
        text-decoration: none;
        color: inherit;
    }
    
    a.disable-state:hover,
    a.disable-state:active,
    a.disable-state:focus {
        text-decoration: none;
        color: inherit;
        outline: none;
        opacity: 1;
    }

    .about-section,
    .accordion .accordion-content,
    .convertion-box_item,
    .convertion-box_item_list,
    .footer-totop a,
    .newanchor .newanchor-wrap a,
    .type-box,
    .widget .box .button a,
    .wrap-slide .item {
        box-sizing: border-box;
    }

    .page-footer,
    .pbPage .page-footer,
    .pbPage .page-header {
        min-width: 100%;
    }

    #sticky-banner.hide,
    .only-pc,
    .pc {
        display: none !important;
    }

    address,
    caption,
    col,
    dd,
    dt,
    figcaption,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    li,
    p,
    td,
    th {
        font-size: 2.6em;
    }

    address.size-large,
    address.size-medium,
    address.size-small,
    address.size-xlarge,
    address.size-xxlarge,
    caption.size-large,
    caption.size-medium,
    caption.size-small,
    caption.size-xlarge,
    caption.size-xxlarge,
    col.size-large,
    col.size-medium,
    col.size-small,
    col.size-xlarge,
    col.size-xxlarge,
    dd.size-large,
    dd.size-medium,
    dd.size-small,
    dd.size-xlarge,
    dd.size-xxlarge,
    dt.size-large,
    dt.size-medium,
    dt.size-small,
    dt.size-xlarge,
    dt.size-xxlarge,
    figcaption.size-large,
    figcaption.size-medium,
    figcaption.size-small,
    figcaption.size-xlarge,
    figcaption.size-xxlarge,
    h1.size-large,
    h1.size-medium,
    h1.size-small,
    h1.size-xlarge,
    h1.size-xxlarge,
    h2.size-large,
    h2.size-medium,
    h2.size-small,
    h2.size-xlarge,
    h2.size-xxlarge,
    h3.size-large,
    h3.size-medium,
    h3.size-small,
    h3.size-xlarge,
    h3.size-xxlarge,
    h4.size-large,
    h4.size-medium,
    h4.size-small,
    h4.size-xlarge,
    h4.size-xxlarge,
    h5.size-large,
    h5.size-medium,
    h5.size-small,
    h5.size-xlarge,
    h5.size-xxlarge,
    h6.size-large,
    h6.size-medium,
    h6.size-small,
    h6.size-xlarge,
    h6.size-xxlarge,
    li.size-large,
    li.size-medium,
    li.size-small,
    li.size-xlarge,
    li.size-xxlarge,
    p.size-large,
    p.size-medium,
    p.size-small,
    p.size-xlarge,
    p.size-xxlarge,
    td.size-large,
    td.size-medium,
    td.size-small,
    td.size-xlarge,
    td.size-xxlarge,
    th.size-large,
    th.size-medium,
    th.size-small,
    th.size-xlarge,
    th.size-xxlarge {
        font-size: 2.6rem !important;
    }

    address.size-large,
    address.size-xlarge,
    address.size-xxlarge,
    caption.size-large,
    caption.size-xlarge,
    caption.size-xxlarge,
    col.size-large,
    col.size-xlarge,
    col.size-xxlarge,
    dd.size-large,
    dd.size-xlarge,
    dd.size-xxlarge,
    dt.size-large,
    dt.size-xlarge,
    dt.size-xxlarge,
    figcaption.size-large,
    figcaption.size-xlarge,
    figcaption.size-xxlarge,
    h1.size-large,
    h1.size-xlarge,
    h1.size-xxlarge,
    h2.size-large,
    h2.size-xlarge,
    h2.size-xxlarge,
    h3.size-large,
    h3.size-xlarge,
    h3.size-xxlarge,
    h4.size-large,
    h4.size-xlarge,
    h4.size-xxlarge,
    h5.size-large,
    h5.size-xlarge,
    h5.size-xxlarge,
    h6.size-large,
    h6.size-xlarge,
    h6.size-xxlarge,
    li.size-large,
    li.size-xlarge,
    li.size-xxlarge,
    p.size-large,
    p.size-xlarge,
    p.size-xxlarge,
    td.size-large,
    td.size-xlarge,
    td.size-xxlarge,
    th.size-large,
    th.size-xlarge,
    th.size-xxlarge {
        font-weight: 700;
    }

    ol.mod-ol-notes,
    ol.mod-ol-notes>li,
    ul.mod-ul-check,
    ul.mod-ul-check>li,
    ul.mod-ul-notes,
    ul.mod-ul-notes>li {
        font-size: 2.6rem;
    }

    .pbPage {
        margin: 0 auto;
        padding: 0 !important;
    }

    .pbPage .content,
    .pbPage .pbAreaWrapper1 {
        margin: 2em auto 0;
        padding: 0;
        width: auto;
    }

    .accordion .accordion-content .text .list-note p.note:nth-child(n + 2),
    .conversion-button:first-child,
    .conversion-button_wrap.nomargintop,
    .theme-no-margin .pbAreaWrapper1 {
        margin-top: 0;
    }

    .pbMainArea {
        float: none;
        margin: 0 auto;
    }

    .page-footer {
        background: 0 0;
        font-family: "Hiragino Kaku Gothic ProN", Meiryo, "MS PGothic", sans-serif;
        padding-top: 12em;
    }

    .footer-content {
        overflow: visible;
        position: relative;
    }

    p,
    p:first-child {
        margin-top: 0.923em;
    }

    .page-footer .footer-lower .footer-logo {
        float: none;
        margin: 0;
        text-align: center;
    }

    .page-footer .footer-lower .footer-sub-nav {
        float: none;
        margin-top: 2em;
        overflow: visible;
        width: 100%;
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list {
        margin: 0;
        text-align: center;
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list>li {
        border-right: 2px solid #bcbcbc;
        display: inline-block;
        font-size: 2.933vw;
        line-height: 1;
        margin: 0.909em 0.682em 0 0;
        overflow: visible;
        padding-right: 0.682em;
        vertical-align: middle;
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list>li a {
        color: #333;
        text-decoration: none;
    }

    .page-footer .footer-lower .footer-sub-nav .footer-sub-nav_list>li:last-child {
        border-right: none;
        margin-right: 0;
        padding-right: 0;
    }

    .page-footer .footer-lower .copyright {
        display: block;
        font-size: 2.933vw !important;
        margin: 1.727em 0 0;
        text-align: center;
        width: 100%;
    }

    .page-footer .pbNestedWrapper {
        overflow: visible;
    }

    .footer-totop {
        margin-top: 0 !important;
        position: relative;
    }

    .concept {
        background-color: #f6f6f6;
        font-size: 2.667vw;
        padding: 3em 0 10em;
    }

    .concept_inner {
        margin: 0 auto;
        padding: 0 2.5em;
    }

    .concept_section {
        margin-top: 4em;
    }

    .concept_lower-title {
        font-size: 3.467vw;
        font-weight: 700;
        line-height: 1.46;
        text-align: left;
    }

    .concept_text {
        font-size: 3.2vw;
        line-height: 1.46;
        margin-top: 2em;
        text-align: left;
    }

    .concept_title+.concept_text {
        margin-top: 1.417em;
    }

    .concept_lower-title+.concept_text,
    .convertion-box_item+.convertion-box_item {
        margin-top: 0.6em;
    }

    .concept_trigger {
        font-size: 2.667vw;
        margin-top: 4.3em !important;
        position: absolute;
        right: 0;
        top: 100%;
    }

    .concept_trigger>a {
        background: url(../img/concept_img04_sp.png) center center/100% 100% no-repeat;
        cursor: pointer;
        display: block;
        font-size: 2.667vw;
        height: 2.3em;
        overflow: hidden;
        position: relative;
        text-indent: 110%;
        white-space: nowrap;
        width: 8.9em;
    }

    .footer-logo img {
        width: calc(150 / 365 * 100%);
    }

    .page-width {
        margin-left: 1em;
        margin-right: 1em;
        width: auto;
    }

    .header-wrap {
        font-size: 2.667vw;
        padding: 1.3em 0;
    }

    .header {
        position: relative;
    }

    .header_logo {
        margin: 0 auto;
        position: relative;
        width: calc(328 / 750 * 100%);
        z-index: 1;
    }

    #sticky-banner .sticky-banner-wrapper a,
    .header_logo>a {
        display: block;
        line-height: 1;
    }

    .page-tab-wrap {
        background-color: #e4e4e4;
        font-size: 2.667vw;
        padding-top: 1.6em;
        position: relative;
    }

    .page-tab-wrap:after {
        background-color: #fff;
        content: "";
        height: 2px;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 2;
    }

    ul.page-tab {
        align-items: flex-end;
        display: flex;
        justify-content: space-between;
        margin: 0 1em;
    }

    ul.page-tab li {
        padding: 0;
        width: calc(232 / 710 * 100%);
    }

    .mainvisual {
        margin: 0 auto;
        width: 100%;
    }

    .mainvisual-inner {
        padding: 0;
    }

    .mv-slider-box {
        margin: -3.306% auto 0;
        width: 98.8985%;
    }

    .concept_title img,
    .type-box_newcontent img {
        width: auto;
    }

    .fs-news .fs-news-link {
        align-items: center;
        background-color: #f8f4ec;
        display: flex;
        font-size: 2.667vw;
        justify-content: center;
        flex-direction: column;
        margin: 2.1em 1em;
        padding: 1.5em 1.3em;
    }

    .fs-news .fs-news-link .news_title {
        margin-top: 0;
        color: #2c893a;
        font-size: 1.5em;
        font-weight: 700;
        line-height: 1.53;
    }

    .convertion-box_item,
    .type-box {
        border-radius: 5px;
    }

    .footer-lower-wrp {
        padding-bottom: 0;
    }

    .footer-lower-wrp .footer-lower {
        background: url(../img/footer_line.png) bottom 30px center/100% auto no-repeat #fff;
        font-size: 2.667vw;
        padding: 0.9em 0.5em 8.1em;
    }

    .about-section .type-box,
    .type-box {
        padding: 3em 2em 2.6em;
    }

    .type-box {
        background-color: #fff;
        overflow: hidden;
        text-align: center;
    }

    .about-section {
        background-color: #f9f6cd;
        font-size: 2.667vw;
        margin-top: 0;
        padding: 2em 0 2.5em;
    }

    .about-section-title {
        margin: 0 auto;
    }

    .about-local-title {
        color: #094;
        font-size: 3.733vw;
        line-height: 1.46;
        text-align: center;
    }

    .about-local-text {
        color: #333;
        font-size: 2.933vw;
        font-weight: 600;
        line-height: 1.44;
    }

    .about-local-image {
        margin: 1.7em auto 1.4em;
        width: calc(380 / 630 * 100%);
    }

    .convertion-section {
        background-color: #c8c8c8;
        font-size: 2.667vw;
        margin-top: 0;
        padding: 2em 0;
    }

    .convertion-box_title {
        color: #3f3b3a;
        font-size: 4vw;
        text-align: center;
    }

    .convertion-box_item_wrap {
        margin: 1.5em 0 0 !important;
    }

    .convertion-box_item {
        background-color: #fff;
        padding: 0.577em 1.038em 0.731em;
    }

    .convertion-box_item_title {
        color: #403d3c;
        font-size: 4.267vw;
        padding-bottom: 0.813em;
        position: relative;
        text-align: center;
    }

    .convertion-box_item_head {
        display: table;
        font-size: 1.333vw;
        height: 8.4em;
        margin: 2.6em auto 0;
        position: relative;
    }

    .convertion-box_item_head span {
        color: #094;
        display: table-cell;
        font-size: 3.467vw;
        font-weight: 700;
        letter-spacing: -0.03em;
        line-height: 1.5;
        text-align: center;
        vertical-align: middle;
    }

    .convertion-box_item_head:after,
    .convertion-box_item_head:before {
        background-color: #094;
        content: "";
        display: inline-block;
        height: 1px;
        position: absolute;
        vertical-align: bottom;
        width: 9em;
    }

    .convertion-box_item_head:before {
        left: -9.2em;
        top: 43%;
    }

    .convertion-box_item_head:after {
        right: -9.2em;
        top: 43%;
    }

    .convertion-box_item_button {
        margin: 0.2em auto 0;
        width: 100%;
    }

    .convertion-box_item_list {
        margin: 0.6em 0 0 !important;
    }

    .convertion-box_item_list li {
        color: #403d3c;
        font-size: 2.933vw;
        padding-left: 1em;
        position: relative;
        text-indent: -1em;
    }

    .convertion-box_item_text {
        color: #403d3c;
        font-size: 2.667vw;
        margin-top: 0.8em;
    }

    #footerArea {
        font-size: 2.667vw;
        padding-bottom: 6.5em;
        padding-top: 3em;
    }

    .productlist-section {
        font-size: 2.667vw;
        margin: 1.7em auto 0;
    }

    .productlist-section .head {
        font-size: 4.8vw;
        font-weight: 600;
        letter-spacing: 0.1em;
        line-height: 1.5;
        margin-top: 0;
        text-align: center;
    }

    .productlist-local-title {
        margin: 0 auto;
        width: calc(475 / 710 * 100%);
    }

    .hub_convertion_gray {
        background-color: #e3e3e3;
        overflow: hidden;
        width: 100%;
    }

    .hub_convertion_white {
        background-color: #fff;
        overflow: hidden;
        width: 100%;
    }

    .hub_convertion_wrap {
        display: flex;
        justify-content: space-between;
        margin: 1em auto;
    }

    .hub_convertion_wrap p {
        margin: 0;
    }

    .hub_convertion_fixed {
        background-color: rgba(0, 0, 0, 0.7);
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 1;
    }

    .hub_convertion_fixed .hub_convertion_wrap {
        font-size: 2.667vw;
        margin: 1em;
    }

    .hub_convertion_fixed .hub_convertion_wrap .list-button {
        margin: 0;
        width: 100%;
    }

    #pageTop {
        cursor: pointer;
        font-size: 2.667vw;
        position: fixed;
        bottom: 8.5em;
        right: 1em;
        width: 3.5em;
    }

    .hub_catch .hub_catch-appeal,
    .newanchor .newanchor-wrap a {
        font-size: 4.267vw;
        font-weight: 800;
        letter-spacing: -0.04em;
        position: relative;
        text-align: center;
    }

    .hub,
    .newanchor,
    .widget {
        font-size: 2.667vw;
    }

    .hub {
        background: #094;
        margin-top: 0;
        padding: 1.5em 0 2em;
    }

    .hub_catch,
    .widget .box p.txt,
    .wrap-slide .head {
        text-align: center;
    }

    .hub_catch .hub_catch-appeal {
        color: #fff;
        display: inline-block;
        line-height: 1.615;
        margin: 0;
        padding: 0 2.077em;
    }

    .hub_catch .hub_catch-appeal .hub_catch-yellow {
        color: #fff062;
    }

    .hub_catch .hub_catch-appeal::after,
    .hub_catch .hub_catch-appeal::before {
        content: "";
        height: 2.406em;
        position: absolute;
        width: 2px;
    }

    .text_big {
        font-size: 114%;
        line-height: 0.3em;
    }

    .newanchor {
        padding: 1.3em 1em 0;
    }

    .newanchor .newanchor-wrap {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto;
        max-width: 960px;
    }

    .newanchor .newanchor-wrap .btn {
        width: calc(345 / 710 * 100%);
    }

    .newanchor .newanchor-wrap .btn:nth-child(n + 3) {
        margin-top: 1em;
    }

    .newanchor .newanchor-wrap a {
        align-items: center;
        border-radius: 4px 4px 4.5px 4.5px;
        display: flex;
        justify-content: center;
        line-height: 1.3;
        min-height: 3.438em;
        padding: 0.6em 1.438em 0.25em 0;
        text-decoration: none;
    }

    .newanchor .newanchor-wrap a .ico {
        border-radius: 0 4px 4px 0;
        height: 100%;
        position: absolute;
        right: 0;
        top: 0;
        width: 1.438em;
    }

    .newanchor .newanchor-wrap a .ico::before {
        border-right: 2px solid #fff;
        border-top: 2px solid #fff;
        content: "";
        display: inline-block;
        height: 0.4em;
        position: absolute;
        left: 50%;
        top: 46%;
        transform: translate(-50%, -50%) rotate(135deg);
        width: 0.4em;
        z-index: 0;
    }

    .newanchor .newanchor-wrap a .text,
    .widget .box .icon img {
        display: inline-block;
    }

    .newanchor .newanchor-wrap .blue a {
        background-image: linear-gradient(to bottom, #fff, #d6edfd);
        color: #0081cc;
    }

    .newanchor .newanchor-wrap .blue a .ico {
        background: #0036ad;
        background: linear-gradient(0deg, #0036ad 0, #00cdeb 100%);
    }

    .newanchor .newanchor-wrap .green a {
        background-image: linear-gradient(to bottom, #fff, #dbfde0);
        color: #2c893a;
    }

    .newanchor .newanchor-wrap .green a .ico {
        background: #134318;
        background: linear-gradient(0deg, #134318 0, #46d05d 100%);
    }

    .newanchor .newanchor-wrap .orange a {
        background-image: linear-gradient(to bottom, #fff, #ffeedb);
        color: #eb6100;
    }

    .newanchor .newanchor-wrap .orange a .ico {
        background: #de1e00;
        background: linear-gradient(0deg, #de1e00 0, #f9a500 100%);
    }

    .newanchor .newanchor-wrap .pink a {
        background-image: linear-gradient(to bottom, #fff, #fdebef);
        color: #e95377;
    }

    .newanchor .newanchor-wrap .pink a .ico {
        background: #da1924;
        background: linear-gradient(0deg, #da1924 0, #f88dcb 100%);
    }

    .newanchor .newanchor-wrap .turquoise a {
        background-image: linear-gradient(to bottom, #fff, #d8fcfa);
        color: #00968e;
    }

    .newanchor .newanchor-wrap .turquoise a .ico {
        background: #00584b;
        background: linear-gradient(0deg, #00584b 0, #00d5d2 100%);
    }

    .newanchor .newanchor-wrap .violet a {
        background-image: linear-gradient(to bottom, #fff, #fce6f3);
        color: #af337b;
    }

    .newanchor .newanchor-wrap .violet a .ico {
        background: #811432;
        background: linear-gradient(0deg, #811432 0, #df52c5 100%);
    }

    .list-button .button:hover,
    .newanchor .newanchor-wrap a:hover,
    .widget .box .button a:hover {
        opacity: 0.7;
    }

    .widget .co-blue {
        color: #0081cc;
    }

    .widget .co-green {
        color: #2c893a;
    }

    .widget .co-orange {
        color: #eb6100;
    }

    .widget .co-lightgreen {
        color: #4dac27;
    }

    .widget .co-pink {
        color: #e95377;
    }

    .widget .co-turquoise {
        color: #00968e;
    }

    .widget .co-violet {
        color: #af337b;
    }

    .widget .co-red {
        color: #c81233;
    }

    .widget .co-darkblue {
        color: #203f77;
    }

    .widget-button,
    .widget:not(.plus) {
        font-size: 2.667vw;
        padding: 2em 0;
    }

    .widget.blue {
        background: #e1f4ff;
    }

    .widget.green {
        background: #ddfbd0;
    }

    .widget.lightgreen,
    .widget.orange {
        background: #ffeacb;
    }

    .widget.pink {
        background: #ffe5eb;
    }

    .widget.turquoise {
        background: #dcf7f6;
    }

    .widget.violet {
        background: #fce6f7;
    }

    .widget.red {
        background: #fde7eb;
    }

    .widget.darkblue {
        background: #e1eafa;
    }

    .widget:not(.plus) .box {
        border-radius: 5px;
        margin-top: 3.6em;
    }

    .widget.banner,
    .widget.plus {
        padding: 0 0 2em;
    }

    .widget.first {
        padding: 2em 0 0;
    }

    .widget.first .box {
        border-radius: 10px 10px 0 0;
        padding-bottom: 1.9em;
    }

    .widget .box {
        background: #fff;
        border-radius: 0 0 10px 10px;
        margin-top: 0;
        padding-bottom: 3em;
        position: relative;
    }

    .widget.lightgreen .box {
        background: #ffffe3;
    }

    .widget .box .icon {
        border-radius: 10em 10em 0 0;
        font-size: 1.333vw;
        height: 9em;
        position: absolute;
        left: 50%;
        top: -7.4em;
        text-align: center;
        transform: translateX(-50%);
        width: 15em;
        z-index: 0;
    }

    .blue .accordion .accordion-head,
    .blue .list>.row .list-number span,
    .widget.blue .box .head,
    .widget.blue .box .icon {
        background: #0081cc;
    }

    .green .accordion .accordion-head,
    .green .list>.row .list-number span,
    .widget.green .box .head,
    .widget.green .box .icon {
        background: #2c893a;
    }

    .orange .accordion .accordion-head,
    .orange .list>.row .list-number span,
    .widget.orange .box .head,
    .widget.orange .box .icon {
        background: #eb6100;
    }

    .lightgreen .accordion .accordion-head,
    .lightgreen .list>.row .list-number span,
    .widget.lightgreen .box .head,
    .widget.lightgreen .box .icon {
        background: #4dac27;
    }

    .pink .accordion .accordion-head,
    .pink .list>.row .list-number span,
    .widget.pink .box .head,
    .widget.pink .box .icon {
        background: #e95377;
    }

    .turquoise .accordion .accordion-head,
    .turquoise .list>.row .list-number span,
    .widget.turquoise .box .head,
    .widget.turquoise .box .icon {
        background: #00968e;
    }

    .violet .accordion .accordion-head,
    .violet .list>.row .list-number span,
    .widget.violet .box .head,
    .widget.violet .box .icon {
        background: #af337b;
    }

    .red .accordion .accordion-head,
    .red .list>.row .list-number span,
    .widget.red .box .head,
    .widget.red .box .icon {
        background: #c81233;
    }

    .darkblue .accordion .accordion-head,
    .darkblue .list>.row .list-number span,
    .widget.darkblue .box .head,
    .widget.darkblue .box .icon {
        background: #203f77;
    }

    .widget.blue .box .icon img {
        height: 6.8em;
        margin-top: 1.5em;
        width: 6.4em;
    }

    .widget.green .box .icon img {
        height: 5.5em;
        margin-top: 2.4em;
        width: 6.8em;
    }

    .widget.orange .box .icon img {
        height: 6.8em;
        margin-top: 1.5em;
        width: 6.2em;
    }

    .widget.lightgreen .box .icon img {
        height: 5.9em;
        margin-top: 2.3em;
        width: 8.4em;
    }

    .widget.pink .box .icon img {
        height: 6.6em;
        margin-right: 1.1em;
        margin-top: 1.9em;
        width: 7.3em;
    }

    .widget.turquoise .box .icon img {
        height: 7.6em;
        margin-right: 0.2em;
        margin-top: 1.4em;
        width: 5.3em;
    }

    .widget.violet .box .icon img {
        height: 6.9em;
        margin-top: 1.6em;
        width: 6.5em;
    }

    .widget.red .box .icon img {
        height: 6.1em;
        margin-left: 0.7em;
        margin-top: 1.8em;
        width: 7.8em;
    }

    .widget.darkblue .box .icon img {
        height: 5.5em;
        margin-top: 2.3em;
        width: 8.6em;
    }

    .widget .box .head {
        border-radius: 5px 5px 0 0;
    }

    .widget .box .head h2 {
        color: #fff;
        font-size: 5.867vw;
        font-weight: bold;
        line-height: 1.533;
        padding: 0.64em 0.2em 0.32em;
        text-align: center;
    }

    .widget.violet .box .item:nth-child(n + 2) {
        margin-top: 6em;
    }

    .widget.blue .box .photo,
    .widget.orange .box .photo {
        margin: 1.5em auto 0;
        width: calc(682 / 710 * 100%);
    }

    .widget.green .box .photo,
    .widget.pink .box .photo {
        margin: 1.6em auto 0;
        width: calc(682 / 710 * 100%);
    }

    .widget.orange .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 0.9em;
    }

    .widget.orange .list>.row .list-text .fs26 {
        line-height: 1.42;
    }

    .widget.orange .list>.row:nth-child(3) .list-text .fs26 {
        letter-spacing: -0.08em;
    }

    .widget.lightgreen .box .photo {
        margin: 2.3em auto 0;
        width: calc(572 / 710 * 100%);
    }

    .widget.darkblue .box .photo,
    .widget.turquoise .box .photo {
        margin: 2.6em auto 0;
        width: calc(570 / 710 * 100%);
    }

    .widget.red .box .photo,
    .widget.violet .box .photo {
        margin: 2.5em auto 0;
        width: calc(570 / 710 * 100%);
    }

    .widget.violet .widget .box p.txt.fs20 {
        margin-top: 0.7em;
    }

    .widget.red .box p.txt.fs26 {
        margin-top: 1.1em;
    }

    .widget .box p.txt.fs26 {
        font-size: 4.8vw;
        font-weight: 600;
        margin-top: 1.2em;
    }

    .widget .box p.txt.fs32 {
        font-size: 5.6vw;
        font-weight: 600;
        line-height: 1.34;
        margin-top: 0.19em;
    }

    .widget .box p.txt.fs20 {
        font-size: 4.267vw;
        font-weight: 600;
        line-height: 1.5;
        margin-top: 0.6em;
    }

    .widget .box p.txt.fs20 .fs12 {
        display: inherit;
        font-size: 0.625em;
        margin-top: 0.25em;
    }

    .widget .box p.txt.underline {
        font-size: 18.4vw;
        font-weight: 600;
        line-height: 1;
        margin-top: 0.06em;
    }

    .widget .box p.txt.underline>span {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .widget .box p.txt.underline>span::before {
        background: #fff062;
        content: "";
        height: 0.22em;
        position: absolute;
        bottom: 0.072em;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .widget .box p.txt.underline>span .small {
        display: inline-block;
        font-size: 0.507em;
    }

    .accordion {
        margin: 2.45em auto 0;
        width: calc(650 / 710 * 100%);
    }

    .accordion .accordion-head h3 {
        color: #fff;
        cursor: pointer;
        font-size: 5.067vw;
        font-weight: bold;
        padding: 0.53em 1.5em 0.53em 0.2em;
        position: relative;
        text-align: center;
    }

    .accordion.active .accordion-head h3::before {
        display: none;
    }

    .accordion .accordion-head h3::after {
        background: #fff;
        content: "";
        height: 0.158em;
        position: absolute;
        right: 0.526em;
        top: 50%;
        transform: translateY(-50%);
        width: 0.947em;
    }

    .accordion .accordion-head h3::before {
        background: #fff;
        content: "";
        height: 0.947em;
        position: absolute;
        right: 0.987em;
        top: 50%;
        transform: translate(50%, -50%);
        width: 0.158em;
    }

    .accordion .accordion-content {
        background: #fff;
        padding: 2em 1.6em 0.5em;
    }

    .accordion .accordion-inner {
        display: none;
        overflow: hidden;
    }

    .list-button,
    .list>.row {
        display: flex;
    }

    .blue .accordion .accordion-content {
        border: 4px solid #0081cc;
        border-top: none;
    }

    .green .accordion .accordion-content {
        border: 4px solid #2c893a;
        border-top: none;
    }

    .orange .accordion .accordion-content {
        border: 4px solid #eb6100;
        border-top: none;
    }

    .lightgreen .accordion .accordion-content {
        border: 4px solid #4dac27;
        border-top: none;
    }

    .pink .accordion .accordion-content {
        border: 4px solid #e95377;
        border-top: none;
    }

    .turquoise .accordion .accordion-content {
        border: 4px solid #00968e;
        border-top: none;
    }

    .violet .accordion .accordion-content {
        border: 4px solid #af337b;
        border-top: none;
    }

    .red .accordion .accordion-content {
        border: 4px solid #c81233;
        border-top: none;
    }

    .darkblue .accordion .accordion-content {
        border: 4px solid #203f77;
        border-top: none;
    }

    .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 1.15em;
    }

    .accordion .accordion-content p.heading {
        background-position: 1px 1px;
        background-size: auto;
        font-size: 4vw;
        font-weight: bold;
        line-height: 1.3;
        margin: 0 auto;
        padding: 0.3em 0 0.033em;
        text-align: center;
    }

    .blue .accordion .accordion-content p.heading {
        background: url(../img/bg_blue_heading_h4.png);
        color: #0081cc;
    }

    .green .accordion .accordion-content p.heading {
        background: url(../img/bg_green_heading_h4.png);
        color: #2c893a;
    }

    .orange .accordion .accordion-content p.heading {
        background: url(../img/bg_orange_heading_h4.png);
        color: #eb6100;
    }

    .lightgreen .accordion .accordion-content p.heading {
        background: url(../img/bg_lightgreen_heading_h4.png);
        color: #4dac27;
    }

    .pink .accordion .accordion-content p.heading {
        background: url(../img/bg_pink_heading_h4.png);
        color: #e95377;
    }

    .turquoise .accordion .accordion-content p.heading {
        background: url(../img/bg_turquoise_heading_h4.png);
        color: #00968e;
    }

    .violet .accordion .accordion-content p.heading {
        background: url(../img/bg_violet_heading_h4.png);
        color: #af337b;
    }

    .red .accordion .accordion-content p.heading {
        background: url(../img/bg_red_heading_h4.png);
        color: #c81233;
    }

    .darkblue .accordion .accordion-content p.heading {
        background: url(../img/bg_darkblue_heading_h4.png);
        color: #203f77;
    }

    .accordion .accordion-content .cont {
        padding: 1.05em 0;
    }

    .accordion .accordion-content .text p.fs26 {
        font-size: 4.8vw;
        font-weight: bold;
        line-height: 1.5;
        margin-top: 0;
        text-align: center;
    }

    .accordion .accordion-content .text p.fs16 {
        font-size: 3.2vw;
        margin-top: 0.167em;
        text-align: center;
    }

    .accordion .accordion-content .text p.note {
        font-size: 2.933vw;
        letter-spacing: -0.03em;
        line-height: 1.5;
        margin-top: 0.55em;
        padding-left: 1.1em;
        text-align: left;
        text-indent: -1.1em;
    }

    .darkblue .accordion .accordion-content .text p.note {
        margin-left: 3.273em;
    }

    .accordion .accordion-content>.row.last {
        margin-top: 0.65em !important;
    }

    .accordion .accordion-content>.row.last .fs12 {
        font-size: 2.933vw;
        font-weight: 600;
        margin: 0;
    }

    .list>.row:nth-child(n + 2) {
        margin-top: 1.5em;
    }

    .list>.row .list-number {
        font-size: 1.333vw;
        margin-right: 1.2em;
        margin-top: 0.9em;
        min-width: 6em;
        width: 6em;
    }

    .list>.row .list-number span {
        align-items: center;
        border-radius: 10rem;
        color: #fff;
        display: flex;
        font-size: 3.4em;
        font-weight: 600;
        height: 1.765em;
        justify-content: center;
        width: 1.765em;
    }

    .list>.row .list-text .fs26 {
        font-size: 4.8vw;
        font-weight: bold;
        letter-spacing: -0.03em;
        line-height: 1.5;
        margin: 0 auto;
    }

    .list>.row .list-text .fs18 {
        font-size: 0.692em;
    }

    .list>.row .list-text .note {
        font-size: 2.933vw;
        letter-spacing: -0.05em;
        margin-top: 0.4em;
        padding-left: 1.1em;
        text-indent: -1.1em;
    }

    .widget .wrap-button .plus-head .txt::after,
    .widget .wrap-button .plus-head .txt::before,
    .widget.plus .plus-head .txt::after,
    .widget.plus .plus-head .txt::before {
        content: "";
        position: absolute;
        transform: translateY(-50%);
    }

    .list-button .button,
    .widget .box .button a {
        display: block;
        font-weight: 700;
        text-align: center;
        text-decoration: none;
    }

    .widget .box .button {
        margin-top: 2em;
    }

    .widget .box .button a {
        background: #fff;
        border-radius: 45px;
        font-size: 4.533vw;
        margin: 0 auto;
        max-width: calc(530 / 710 * 100%);
        padding: 0.415em 1.4em 0.415em 0.455em;
        position: relative;
    }

    .widget .box .button a::before {
        content: "";
        display: inline-block;
        height: 0.529em;
        position: absolute;
        right: 1.324em;
        top: 50%;
        transform: translate(0, -50%) rotate(45deg);
        width: 0.529em;
        z-index: 1;
    }

    .widget.blue .box .button a::before {
        border-right: 2px solid #0081cc;
        border-top: 2px solid #0081cc;
    }

    .widget.green .box .button a::before {
        border-right: 2px solid #2c893a;
        border-top: 2px solid #2c893a;
    }

    .widget.orange .box .button a::before {
        border-right: 2px solid #eb6100;
        border-top: 2px solid #eb6100;
    }

    .widget.lightgreen .box .button a::before {
        border-right: 2px solid #4dac27;
        border-top: 2px solid #4dac27;
    }

    .widget.pink .box .button a::before {
        border-right: 2px solid #e95377;
        border-top: 2px solid #e95377;
    }

    .widget.turquoise .box .button a::before {
        border-right: 2px solid #00968e;
        border-top: 2px solid #00968e;
    }

    .widget.violet .box .button a::before {
        border-right: 2px solid #af337b;
        border-top: 2px solid #af337b;
    }

    .widget.red .box .button a::before {
        border-right: 2px solid #c81233;
        border-top: 2px solid #c81233;
    }

    .widget.darkblue .box .button a::before {
        border-right: 2px solid #203f77;
        border-top: 2px solid #203f77;
    }

    .widget.blue .box .button a {
        border: 2px solid #0081cc;
        color: #0081cc;
    }

    .widget.green .box .button a {
        border: 2px solid #2c893a;
        color: #2c893a;
    }

    .widget.orange .box .button a {
        border: 2px solid #eb6100;
        color: #eb6100;
    }

    .widget.lightgreen .box .button a {
        border: 2px solid #4dac27;
        color: #4dac27;
    }

    .widget.pink .box .button a {
        border: 2px solid #e95377;
        color: #e95377;
    }

    .widget.turquoise .box .button a {
        border: 2px solid #00968e;
        color: #00968e;
    }

    .widget.violet .box .button a {
        border: 2px solid #af337b;
        color: #af337b;
    }

    .widget.red .box .button a {
        border: 2px solid #c81233;
        color: #c81233;
    }

    .widget.darkblue .box .button a {
        border: 2px solid #203f77;
        color: #203f77;
    }

    .widget.plus .plus-head {
        background: url(../img/bg_plus_sp.png) top center/contain no-repeat #ffffe3;
        font-size: 2.667vw;
        padding: 4.1em 0 4.5em;
        text-align: center;
    }

    .widget.plus .plus-head .txt {
        background: url(../img/ico_plus_sp.png) center center/49% no-repeat;
        display: inline-block;
        font-size: 6.667vw;
        font-weight: 600;
        line-height: 1.26;
        margin: 0;
        padding: 0.56em 0 0.48em;
        position: relative;
        text-align: center;
    }

    .widget.plus .plus-head .txt::before {
        background: url(../img/ico_plus_ava_01.png) center center/contain no-repeat;
        height: 2.1em;
        left: -1.66em;
        top: 51%;
        width: 1.3em;
    }

    .widget.plus .plus-head .txt::after {
        background: url(../img/ico_plus_ava_02.png) center center/contain no-repeat;
        height: 2.1em;
        right: -1.98em;
        top: 51%;
        width: 1.68em;
    }

    .widget .wrap-button .plus-head {
        background: url(../img/bg_plus_red_sp.png) bottom center/contain no-repeat #fff;
        margin-bottom: 4.6em;
        padding: 2em 0 3.2em;
        text-align: center;
    }

    .widget .wrap-button .plus-head .txt {
        background: url(../img/ico_plus_sp.png) top center/50% no-repeat;
        display: inline-block;
        font-size: 1.333vw;
        padding: 5.401em 0 4em;
        position: relative;
        text-align: center;
    }

    .widget .wrap-button .plus-head .txt::before {
        background: url(../img/ico_plus_ava_01.png) center center/contain no-repeat;
        height: 17.204em;
        left: -12.6em;
        top: 36%;
        width: 10.403em;
    }

    .widget .wrap-button .plus-head .txt::after {
        background: url(../img/ico_plus_ava_02.png) center center/contain no-repeat;
        height: 13.003em;
        right: -12em;
        top: 41%;
        width: 10.403em;
    }

    .widget .wrap-button .plus-head .txt .fs40 {
        font-size: 4.933vw;
        font-weight: bold;
        line-height: 1.3;
        margin: 0;
        text-align: center;
    }

    .widget .wrap-button .plus-head .txt .fs40 .fs-big {
        font-size: 8vw;
    }

    .widget .wrap-button .plus-head .txt .fs12 {
        font-size: 2.667vw;
        margin-top: 2.4em;
        text-align: center;
    }

    .list-button {
        justify-content: space-between;
    }

    .list-button .button {
        border-radius: 7.5px;
        color: #fff;
        font-size: 2.933vw;
        margin-bottom: 0.364em;
        padding: 0.9em 0 0.5em;
    }

    .list-button .left {
        width: calc(260 / 710 * 100%);
    }

    .list-button .right {
        width: calc(432 / 710 * 100%);
    }

    .list-button .button.green {
        background-image: linear-gradient(to bottom, #3ab16f, #1d9d5a 47%, #008945);
        box-shadow: 0 0.364em 0 0 #026f30;
    }

    .list-button .button.red {
        background-image: linear-gradient(to bottom, #fe5050, #ea1d1c);
        box-shadow: 0 0.364em 0 0 #b50909;
    }

    .list-button .button .fs24 {
        font-size: 1.364em;
    }

    .widget .wrap-button .bnr {
        margin-top: 1.5em;
    }

    .widget .wrap-button .bnr .fs12 {
        font-size: 0.3em;
    }

    .slide .item .head>h3,
    .slide .item .point p.head .pt {
        background: #2c893a;
        color: #fff;
        display: inline-block;
        width: 100%;
    }

    .slide .item .cap,
    .slide .item .desc {
        color: #2c893a;
        font-size: 4vw;
        line-height: 1.5;
    }

    .slide .item .cap,
    .slide .item .cap-black,
    .slide .item .desc,
    .slide .item .head>h3,
    .slide .item .point p.des,
    .slide .item .point p.head {
        font-weight: 600;
        text-align: center;
    }

    .widget.wrap-slide {
        background: #e2f7e5;
        padding: 2.8em 0 4.7em;
    }

    .widget.wrap-slide .slide {
        margin: 1.1em auto 0;
        width: calc(650 / 710 * 100%);
    }

    .wrap-slide .item {
        background: #fff;
        border-radius: 0.5rem;
        margin: 0 auto;
        padding: 2.1em 0 1.7em;
        width: 100% !important;
    }

    .slick-track {
        display: flex !important;
    }

    .slick-slide {
        height: inherit !important;
    }

    .wrap-slide .head>h2 {
        margin: 0 auto;
        width: calc(440 / 710 * 100%);
    }

    .slide .item .head>h3 {
        border-radius: 0.765em;
        font-size: 4.533vw;
        line-height: 1;
        max-width: 7.647em;
        padding: 0.4em 0 0.15em;
    }

    .slide .item .desc {
        margin-top: 0.776em;
    }

    .slide .item01 .photo {
        margin: 1.75em auto 0;
        width: calc(570 / 650 * 100%);
    }

    .slide .item02 .photo {
        margin: 0.8em auto 0;
        width: calc(356 / 650 * 100%);
    }

    .slide .item03 .photo {
        margin: 2.3em auto 0;
        width: calc(472 / 650 * 100%);
    }

    .slide .item04 .photo {
        margin: 1.05em auto 0;
        width: calc(588 / 650 * 100%);
    }

    .slide .item .point {
        margin-top: 2.8em;
        margin-bottom: 0;
    }

    .slide .item .point p.head {
        color: #2c893a;
        font-size: 4.267vw;
        line-height: 1.364;
    }

    .slide .item .point p.head .pt {
        border-radius: 2em;
        font-size: 2.933vw;
        margin-right: 0.444em;
        max-width: 5.091em;
        padding: 0.222em 0 0.111em;
        text-align: center;
    }

    .slide .item .point p.head>* {
        vertical-align: middle;
    }

    .slide .item .point p.des {
        font-size: 3.2vw;
        margin-top: 0.45em;
    }

    .slide .item .point p.des>span {
        font-size: 0.7em;
        vertical-align: 27%;
    }

    .slide .item .note {
        margin: 0.65em auto 0;
        width: calc(570 / 650 * 100%);
    }

    .slide .item .note ul {
        margin: 0;
        padding: 0;
    }

    .slide .item .note ul li {
        font-size: 2.667vw;
        line-height: 1.5;
        padding-left: 1.1em;
        text-indent: -1.1em;
    }

    .slide .item .note ul li:nth-child(n + 2) {
        margin-top: 0.2em;
    }

    .slide .item .cap {
        margin-top: 2.2em;
    }

    .slide .item .cap-black {
        font-size: 3.2vw;
        margin-top: 1.25em;
    }

    .slide .item02 {
        padding: 2em 0 1.4em;
    }

    .slide .item03 {
        padding: 2em 0 1.405em;
    }

    .slide .item04 {
        padding: 2em 0 1.303em;
    }
}

@media all and (min-width: 751px) {

    .accordion .accordion-head h3::after,
    .widget .wrap-button .plus-head .txt::after,
    .widget .wrap-button .plus-head .txt::before,
    .widget.plus .plus-head .txt::after,
    .widget.plus .plus-head .txt::before {
        content: "";
        position: absolute;
        transform: translateY(-50%);
    }

    .hub_convertion_gray {
        background-color: #e3e3e3;
        overflow: hidden;
        width: 100%;
    }

    .hub_convertion_white {
        background-color: #fff;
        overflow: hidden;
        width: 100%;
    }

    .hub_convertion_wrap {
        display: flex;
        justify-content: space-between;
        margin: 1.9em auto;
    }

    .hub_convertion_wrap p {
        margin: 0;
    }

    .hub_convertion_wrap a:hover,
    .list-button .button:hover,
    .newanchor .newanchor-wrap a:hover,
    .widget .box .button a:hover {
        opacity: 0.7;
    }

    .hub_convertion_fixed {
        background-color: rgba(0, 0, 0, 0.7);
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 1;
    }

    .hub_convertion_fixed .hub_convertion_wrap .list-button {
        width: 100%;
    }

    .hub_convertion_fixed .hub_convertion_wrap a:hover {
        opacity: 0.9;
    }

    #pageTop {
        cursor: pointer;
        position: fixed;
        bottom: 16em;
        right: 5em;
        width: 8.2em;
    }

    .hub {
        background: #094;
        padding: 2em 0 3em;
        margin-top: 0;
    }

    .hub_catch,
    .widget .box p.txt,
    .wrap-slide .head {
        text-align: center;
    }

    .hub_catch .hub_catch-appeal {
        color: #fff;
        display: inline-block;
        font-size: 2.6em;
        font-weight: 600;
        line-height: 1.615;
        padding: 0 3.077em;
        position: relative;
        text-align: center;
    }

    .hub_catch .hub_catch-appeal .hub_catch-yellow {
        color: #fff062;
    }

    .hub_catch .hub_catch-appeal::after,
    .hub_catch .hub_catch-appeal::before {
        content: "";
        height: 2.962em;
        position: absolute;
        top: 0;
        width: 2px;
    }

    .text_big {
        font-size: 108%;
        line-height: 0.3em;
    }

    .widget .box .icon,
    .wrap-slide .item::after {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .newanchor {
        padding: 1.6em 0 0;
    }

    .newanchor .newanchor-wrap {
        align-items: center;
        display: flex;
        justify-content: space-between;
        margin: 0 auto;
        max-width: 960px;
        padding: 0 2em;
    }

    .newanchor .newanchor-wrap .btn {
        width: calc(150 / 960 * 100%);
    }

    .newanchor .newanchor-wrap a {
        border-radius: 8px 8px 9px 9px;
        display: block;
        font-size: 2em;
        font-weight: 600;
        line-height: 1.3;
        padding: 0.5em 0 1.4em;
        position: relative;
        text-align: center;
    }

    #text_space {
        padding: 1.3em 0 2em;
    }

    .newanchor .newanchor-wrap a .ico {
        border-radius: 0 0 8px 8px;
        height: 1.1em;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
    }

    .newanchor .newanchor-wrap a .ico::before {
        border-right: 2px solid #fff;
        border-top: 2px solid #fff;
        content: "";
        display: inline-block;
        height: 0.4em;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, -0.35em) rotate(135deg);
        width: 0.4em;
        z-index: 0;
    }

    .newanchor .newanchor-wrap a .text {
        display: inline-block;
    }

    .newanchor .newanchor-wrap .blue a {
        background-image: linear-gradient(135deg, #fff 13%, #d6edfd 88%);
        color: #0081cc;
    }

    .newanchor .newanchor-wrap .blue a .ico {
        background: #00b0df;
        background: linear-gradient(90deg, #00b0df 0, #0035ad 100%);
    }

    .newanchor .newanchor-wrap .green a {
        background-image: linear-gradient(135deg, #fff 13%, #dbfde0 88%);
        color: #2c893a;
    }

    .newanchor .newanchor-wrap .green a .ico {
        background: #3cb24e;
        background: linear-gradient(90deg, #3cb24e 0, #124217 100%);
    }

    .newanchor .newanchor-wrap .orange a {
        background-image: linear-gradient(135deg, #fff 13%, #ffeedb 88%);
        color: #eb6100;
    }

    .newanchor .newanchor-wrap .orange a .ico {
        background: #f38b00;
        background: linear-gradient(90deg, #f38b00 0, #dd1d00 100%);
    }

    .newanchor .newanchor-wrap .pink a {
        background-image: linear-gradient(135deg, #fff 13%, #fdebef 88%);
        color: #e95377;
    }

    .newanchor .newanchor-wrap .pink a .ico {
        background: #f378ac;
        background: linear-gradient(90deg, #f378ac 0, #da1923 100%);
    }

    .newanchor .newanchor-wrap .turquoise a {
        background-image: linear-gradient(135deg, #fff 13%, #d8fcfa 88%);
        color: #00968e;
    }

    .newanchor .newanchor-wrap .turquoise a .ico {
        background: #00beb9;
        background: linear-gradient(90deg, #00beb9 0, #00574a 100%);
    }

    .newanchor .newanchor-wrap .violet a {
        background-image: linear-gradient(135deg, #fff 13%, #fce6f3 88%);
        color: #af337b;
    }

    .newanchor .newanchor-wrap .violet a .ico {
        background: #cd46a9;
        background: linear-gradient(90deg, #cd46a9 0, #801431 100%);
    }

    .widget .co-blue {
        color: #0081cc;
    }

    .widget .co-green {
        color: #2c893a;
    }

    .widget .co-orange {
        color: #eb6100;
    }

    .widget .co-lightgreen {
        color: #4dac27;
    }

    .widget .co-pink {
        color: #e95377;
    }

    .widget .co-turquoise {
        color: #00968e;
    }

    .widget .co-violet {
        color: #af337b;
    }

    .widget .co-red {
        color: #c81233;
    }

    .widget .co-darkblue {
        color: #203f77;
    }

    .widget-button,
    .widget:not(.plus) {
        padding: 3em 0;
    }

    .widget.blue {
        background: #e1f4ff;
    }

    .widget.green {
        background: #ddfbd0;
    }

    .widget.lightgreen,
    .widget.orange {
        background: #ffeacb;
    }

    .widget.pink {
        background: #ffe5eb;
    }

    .widget.turquoise {
        background: #dcf7f6;
    }

    .widget.violet {
        background: #fce6f7;
    }

    .widget.red {
        background: #fde7eb;
    }

    .widget.darkblue {
        background: #e1eafa;
    }

    .widget:not(.plus) .box {
        border-radius: 10px;
        margin-top: 7em;
    }

    .widget.banner,
    .widget.plus {
        padding: 0 0 4em;
    }

    .widget.first {
        padding: 4em 0 0;
    }

    .widget.first .box {
        border-radius: 10px 10px 0 0;
        padding-bottom: 3.9em;
    }

    .widget .box {
        background: #fff;
        border-radius: 0 0 10px 10px;
        margin-top: 0;
        padding-bottom: 5em;
        position: relative;
    }

    .widget.lightgreen .box {
        background: #ffffe3;
    }

    .widget .box .icon {
        border-radius: 10rem 10rem 0 0;
        height: 7em;
        top: -5.5em;
        text-align: center;
        width: 11em;
        z-index: 0;
    }

    .blue .accordion .accordion-head,
    .blue .list>.row .list-number span,
    .widget.blue .box .head,
    .widget.blue .box .icon {
        background: #0081cc;
    }

    .green .accordion .accordion-head,
    .green .list>.row .list-number span,
    .widget.green .box .head,
    .widget.green .box .icon {
        background: #2c893a;
    }

    .orange .accordion .accordion-head,
    .orange .list>.row .list-number span,
    .widget.orange .box .head,
    .widget.orange .box .icon {
        background: #eb6100;
    }

    .lightgreen .accordion .accordion-head,
    .lightgreen .list>.row .list-number span,
    .widget.lightgreen .box .head,
    .widget.lightgreen .box .icon {
        background: #4dac27;
    }

    .pink .accordion .accordion-head,
    .pink .list>.row .list-number span,
    .widget.pink .box .head,
    .widget.pink .box .icon {
        background: #e95377;
    }

    .turquoise .accordion .accordion-head,
    .turquoise .list>.row .list-number span,
    .widget.turquoise .box .head,
    .widget.turquoise .box .icon {
        background: #00968e;
    }

    .violet .accordion .accordion-head,
    .violet .list>.row .list-number span,
    .widget.violet .box .head,
    .widget.violet .box .icon {
        background: #af337b;
    }

    .red .accordion .accordion-head,
    .red .list>.row .list-number span,
    .widget.red .box .head,
    .widget.red .box .icon {
        background: #c81233;
    }

    .darkblue .accordion .accordion-head,
    .darkblue .list>.row .list-number span,
    .widget.darkblue .box .head,
    .widget.darkblue .box .icon {
        background: #203f77;
    }

    .widget .box .icon img {
        display: inline-block;
        margin-top: 1.2em;
        width: auto;
    }

    .widget .box .head {
        border-radius: 10px 10px 0 0;
    }

    .widget .box .head h2 {
        color: #fff;
        font-size: 3em;
        font-weight: 600;
        line-height: 1.533;
        padding: 0.6em 0 0.267em;
        text-align: center;
    }

    .widget.violet .box .item:nth-child(n + 2) {
        margin-top: 9.9em;
    }

    .widget.blue .box .photo {
        margin: 3.1em auto 0;
        width: calc(428 / 960 * 100%);
    }

    .widget.green .box .photo {
        margin: 3em auto 0;
        width: calc(452 / 960 * 100%);
    }

    .widget.orange .box .photo,
    .widget.pink .box .photo {
        margin: 3em auto 0;
        width: calc(428 / 960 * 100%);
    }

    .widget.lightgreen .box .photo {
        margin: 5em auto 0;
        width: calc(363 / 960 * 100%);
    }

    .widget.turquoise .box .photo,
    .widget.violet .box .photo {
        margin: 5em auto 0;
        width: calc(368 / 960 * 100%);
    }

    .widget.darkblue .box .photo,
    .widget.red .box .photo {
        margin: 5em auto 0;
        width: calc(364 / 960 * 100%);
    }

    .widget .box p.txt.fs26 {
        font-size: 2.6em;
        font-weight: 600;
        margin-top: 0.846em;
    }

    .widget .box p.txt.fs32 {
        font-size: 3.2em;
        font-weight: 600;
        line-height: 1.34;
        margin-top: 0.13em;
    }

    .widget .box p.txt.fs20 {
        font-size: 2em;
        font-weight: 600;
        margin-top: 0.85em;
    }

    .widget .box p.txt.fs20 .fs12 {
        display: inherit;
        font-size: 0.6em;
        margin-top: 0.25em;
    }

    .widget .box p.txt.underline {
        font-size: 10em;
        font-weight: 600;
        line-height: 1;
        margin-top: 0.05em;
    }

    .widget .box p.txt.underline>span {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .widget .box p.txt.underline>span::before {
        background: #fff062;
        content: "";
        height: 0.22em;
        position: absolute;
        bottom: 3px;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .widget .box p.txt.underline>span .small {
        display: inline-block;
        font-size: 0.5em;
    }

    .accordion {
        margin: 3.2em auto 0;
        width: calc(860 / 960 * 100%);
    }

    .accordion .accordion-head h3 {
        color: #fff;
        cursor: pointer;
        font-size: 2.4em;
        font-weight: 600;
        padding: 0.55em 3em 0.292em;
        position: relative;
        text-align: center;
    }

    .accordion.active .accordion-head h3::before {
        display: none;
    }

    .accordion .accordion-head h3::after {
        background: #fff;
        height: 0.167em;
        right: 0.8em;
        top: 50%;
        width: 1em;
    }

    .accordion .accordion-head h3::before {
        background: #fff;
        content: "";
        height: 1em;
        position: absolute;
        right: 1.3em;
        top: 50%;
        transform: translate(50%, -50%);
        width: 0.167em;
    }

    .accordion .accordion-content {
        background: #fff;
        box-sizing: border-box;
        padding: 3em 4.4em 2.3em;
    }

    .accordion .accordion-inner {
        display: none;
        overflow: hidden;
    }

    .list-button,
    .list>.row {
        display: flex;
    }

    .accordion.active .accordion-content {
        display: block;
    }

    .blue .accordion .accordion-content {
        border: 6px solid #0081cc;
        border-top: none;
        padding: 3em 4.4em 2.3em;
    }

    .green .accordion .accordion-content {
        border: 6px solid #2c893a;
        border-top: none;
    }

    .orange .accordion .accordion-content {
        border: 6px solid #eb6100;
        border-top: none;
    }

    .lightgreen .accordion .accordion-content {
        border: 6px solid #4dac27;
        border-top: none;
    }

    .pink .accordion .accordion-content {
        border: 6px solid #e95377;
        border-top: none;
    }

    .turquoise .accordion .accordion-content {
        border: 6px solid #00968e;
        border-top: none;
    }

    .violet .accordion .accordion-content {
        border: 6px solid #af337b;
        border-top: none;
    }

    .red .accordion .accordion-content {
        border: 6px solid #c81233;
        border-top: none;
    }

    .darkblue .accordion .accordion-content {
        border: 6px solid #203f77;
        border-top: none;
    }

    .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 1.1em;
    }

    .accordion .accordion-content>.row.last {
        margin-top: 1.4em !important;
    }

    .accordion .accordion-content>.row.last .fs12 {
        font-size: 1.2em;
        font-weight: 600;
    }

    .accordion .accordion-content p.heading {
        background-position: 1px 1px;
        background-size: auto;
        font-size: 2em;
        font-weight: bold;
        line-height: 1.3;
        padding: 0.35em 0 0.15em;
        text-align: center;
    }

    .blue .accordion .accordion-content p.heading {
        background: url(../img/bg_blue_heading_h4.png);
        color: #0081cc;
    }

    .green .accordion .accordion-content p.heading {
        background: url(../img/bg_green_heading_h4.png);
        color: #2c893a;
    }

    .orange .accordion .accordion-content p.heading {
        background: url(../img/bg_orange_heading_h4.png);
        color: #eb6100;
    }

    .lightgreen .accordion .accordion-content p.heading {
        background: url(../img/bg_lightgreen_heading_h4.png);
        color: #4dac27;
    }

    .pink .accordion .accordion-content p.heading {
        background: url(../img/bg_pink_heading_h4.png);
        color: #e95377;
    }

    .turquoise .accordion .accordion-content p.heading {
        background: url(../img/bg_turquoise_heading_h4.png);
        color: #00968e;
    }

    .violet .accordion .accordion-content p.heading {
        background: url(../img/bg_violet_heading_h4.png);
        color: #af337b;
    }

    .red .accordion .accordion-content p.heading {
        background: url(../img/bg_red_heading_h4.png);
        color: #c81233;
    }

    .darkblue .accordion .accordion-content p.heading {
        background: url(../img/bg_darkblue_heading_h4.png);
        color: #203f77;
    }

    .accordion .accordion-content .cont {
        padding: 1.4em 0;
    }

    .accordion .accordion-content .text p.fs26 {
        font-size: 2.6em;
        font-weight: 600;
        line-height: 1.5;
        text-align: center;
    }

    .accordion .accordion-content .text p.fs16 {
        font-size: 1.6em;
        margin-top: 0;
        text-align: center;
    }

    .accordion .accordion-content .text .list-note p.note:nth-child(n + 2),
    .list>.row .list-text .list-note .note:nth-child(n + 2) {
        margin-top: 0;
    }

    .accordion .accordion-content .text p.note {
        font-size: 1.2em;
        margin-top: 0.583em;
        text-align: center;
    }

    .list>.row:nth-child(n + 2),
    .slide .item .point,
    .widget .box .button {
        margin-top: 3em;
    }

    .list>.row .list-number {
        margin-right: 1.2em;
        min-width: 3.4em;
        width: 3.4em;
    }

    .list>.row .list-number span {
        align-items: center;
        border-radius: 10rem;
        color: #fff;
        display: flex;
        font-size: 2.2em;
        font-weight: 600;
        height: 1.545em;
        justify-content: center;
        width: 1.545em;
    }

    .list>.row .list-text .fs26 {
        font-size: 2.6em;
        font-weight: 600;
        letter-spacing: -0.03em;
        line-height: 1.5;
    }

    .list>.row .list-text .fs18 {
        font-size: 0.692em;
        letter-spacing: -0.08em;
    }

    .list>.row .list-text .note {
        font-size: 1.2em;
        margin-top: 0.35em;
    }

    .list-button .button,
    .widget .box .button a {
        display: block;
        font-weight: 700;
        text-align: center;
        text-decoration: none;
    }

    .widget .box .button a {
        background: #fff;
        border-radius: 30px;
        box-sizing: border-box;
        font-size: 2.2em;
        margin: 0 auto;
        max-width: 380px;
        padding: 0.545em 1.818em 0.409em 0.455em;
        position: relative;
    }

    .widget .box .button a::before {
        content: "";
        display: inline-block;
        height: 0.545em;
        position: absolute;
        right: 1.364em;
        top: 50%;
        transform: translate(0, -50%) rotate(45deg);
        width: 0.545em;
        z-index: 1;
    }

    .widget.blue .box .button a::before {
        border-right: 2px solid #0081cc;
        border-top: 2px solid #0081cc;
    }

    .widget.green .box .button a::before {
        border-right: 2px solid #2c893a;
        border-top: 2px solid #2c893a;
    }

    .widget.orange .box .button a::before {
        border-right: 2px solid #eb6100;
        border-top: 2px solid #eb6100;
    }

    .widget.lightgreen .box .button a::before {
        border-right: 2px solid #4dac27;
        border-top: 2px solid #4dac27;
    }

    .widget.pink .box .button a::before {
        border-right: 2px solid #e95377;
        border-top: 2px solid #e95377;
    }

    .widget.turquoise .box .button a::before {
        border-right: 2px solid #00968e;
        border-top: 2px solid #00968e;
    }

    .widget.violet .box .button a::before {
        border-right: 2px solid #af337b;
        border-top: 2px solid #af337b;
    }

    .widget.red .box .button a::before {
        border-right: 2px solid #c81233;
        border-top: 2px solid #c81233;
    }

    .widget.darkblue .box .button a::before {
        border-right: 2px solid #203f77;
        border-top: 2px solid #203f77;
    }

    .widget.blue .box .button a {
        border: 2px solid #0081cc;
        color: #0081cc;
    }

    .widget.green .box .button a {
        border: 2px solid #2c893a;
        color: #2c893a;
    }

    .widget.orange .box .button a {
        border: 2px solid #eb6100;
        color: #eb6100;
    }

    .widget.lightgreen .box .button a {
        border: 2px solid #4dac27;
        color: #4dac27;
    }

    .widget.pink .box .button a {
        border: 2px solid #e95377;
        color: #e95377;
    }

    .widget.turquoise .box .button a {
        border: 2px solid #00968e;
        color: #00968e;
    }

    .widget.violet .box .button a {
        border: 2px solid #af337b;
        color: #af337b;
    }

    .widget.red .box .button a {
        border: 2px solid #c81233;
        color: #c81233;
    }

    .widget.darkblue .box .button a {
        border: 2px solid #203f77;
        color: #203f77;
    }

    .widget.plus .plus-head {
        background: url(../img/bg_plus.png) top center/contain no-repeat #ffffe3;
        padding: 9.1em 0 8.5em;
        text-align: center;
    }

    .widget.plus .plus-head .txt {
        background: url(../img/ico_plus.png) center center/contain no-repeat;
        display: inline-block;
        font-size: 4em;
        font-weight: 600;
        line-height: 1.35;
        padding: 0.7em 0 0.6em;
        position: relative;
        text-align: center;
    }

    .widget.plus .plus-head .txt::before {
        background: url(../img/ico_plus_ava_01.png) center center/contain no-repeat;
        height: 2.1em;
        left: -2.35em;
        top: 52%;
        width: 1.575em;
    }

    .widget.plus .plus-head .txt::after {
        background: url(../img/ico_plus_ava_02.png) center center/contain no-repeat;
        height: 2.1em;
        right: -2.625em;
        top: 52%;
        width: 2.075em;
    }

    .widget .wrap-button .plus-head {
        background: url(../img/bg_plus_red.png) bottom center/contain no-repeat #fff;
        padding: 6.6em 0 9.9em;
        text-align: center;
    }

    .widget .wrap-button .plus-head .txt {
        background: url(../img/ico_plus_pc.png) top center no-repeat;
        display: inline-block;
        padding: 5.9em 0 2em;
        position: relative;
        text-align: center;
    }

    .widget .wrap-button .plus-head .txt::before {
        background: url(../img/ico_plus_ava_01.png) center center/contain no-repeat;
        height: 17.2em;
        left: -12.3em;
        top: 43%;
        width: 10.4em;
    }

    .widget .wrap-button .plus-head .txt::after {
        background: url(../img/ico_plus_ava_02.png) center center/contain no-repeat;
        height: 13em;
        right: -12.1em;
        top: 48%;
        width: 10.4em;
    }

    .widget .wrap-button .plus-head .txt .fs40 {
        font-size: 4em;
        font-weight: 600;
        line-height: 1.3;
        text-align: center;
    }

    .widget .wrap-button .plus-head .txt .fs12 {
        font-size: 1.2em;
        margin-top: 4.75em;
        text-align: center;
    }

    .blue .box .icon img {
        height: 4.5em;
        width: 4.3em;
    }

    .green .box .icon img {
        height: 4.6em;
        width: 5.6em;
    }

    .orange .box .icon img {
        height: 5.2em;
        width: 4.8em;
    }

    .lightgreen .box .icon img {
        height: 4.5em;
        width: 6.5em;
    }

    .pink .box .icon img {
        height: 5.3em;
        width: 5.8em;
    }

    .turquoise .box .icon img {
        height: 5.3em;
        width: 3.8em;
    }

    .violet .box .icon img {
        height: 5.1em;
        width: 4.8em;
    }

    .red .box .icon img {
        height: 4.9em;
        width: 6.2em;
    }

    .darkblue .box .icon img {
        height: 4.1em;
        width: 6.5em;
    }

    .list-button {
        justify-content: space-between;
    }

    .list-button .button {
        border-radius: 15px;
        color: #fff;
        font-size: 2em;
        margin-bottom: 0.4em;
        padding: 0.7em 0 0.5em;
    }

    .list-button .left {
        width: calc(352 / 960 * 100%);
    }

    .list-button .right {
        width: calc(584 / 960 * 100%);
    }

    .list-button .button.green {
        background-image: linear-gradient(to bottom, #3ab16f, #1d9d5a 47%, #008945);
        box-shadow: 0 0.4em 0 0 #026f30;
    }

    .list-button .button.red {
        background-image: linear-gradient(to bottom, #fe5050, #ea1d1c);
        box-shadow: 0 0.4em 0 0 #b50909;
    }

    .list-button .button .fs24 {
        font-size: 1.2em;
    }

    .widget .wrap-button .bnr {
        margin-top: 3.7em;
    }

    .widget .wrap-button .bnr .fs12 {
        font-size: 0.3em;
    }

    .slide .item .head>h3,
    .slide .item .point p.head .pt {
        background: #2c893a;
        color: #fff;
        display: inline-block;
        width: 100%;
    }

    .slide .item .cap,
    .slide .item .desc,
    .slide .item .point p.head {
        color: #2c893a;
        font-weight: 600;
        text-align: center;
    }

    .widget.wrap-slide {
        background: #e2f7e5;
        padding: 4.8em 0 1.7em;
    }

    .widget.wrap-slide .slide {
        margin: 0 auto;
        max-width: 910px;
        width: 100%;
        padding: 30px 45px 100px;
    }

    .widget.wrap-slide .slide .slick-list {
        border-radius: 2rem;
        background: #fff;
    }

    .wrap-slide .item {
        margin: 0 auto;
        max-width: 960px;
        padding: 0 0 1.1em;
        position: relative;
        width: 100%;
    }

    .wrap-slide .slide .slick-prev::before {
        display: block;
        content: "";
        width: 22px;
        height: 41px;
        background: url(../img/slide_prevbtn_pc.png) no-repeat;
        background-size: contain;
        opacity: 1;
    }

    .wrap-slide .slide .slick-next::before {
        display: block;
        content: "";
        width: 22px;
        height: 41px;
        background: url(../img/slide_nextbtn_pc.png) no-repeat;
        background-size: contain;
        opacity: 1;
    }

    .wrap-slide .item:last-child::after {
        content: none;
    }

    .wrap-slide .head>h2 {
        margin: 0 auto;
        max-width: 417px;
    }

    .slide .item .head>h3 {
        border-radius: 0 0 1rem 1rem;
        font-size: 2.2em;
        font-weight: 600;
        max-width: 13.636em;
        width: 100%;
        text-align: center;
        padding: 0.3% 0;
    }

    .slide .item .desc {
        font-size: 2.2em;
        line-height: 1.5;
        margin-top: 0.955em;
    }

    .slide .item .photo {
        margin: 1.8em auto 0;
        width: calc(890 / 960 * 100%);
    }

    .slide .item .point p.head {
        font-size: 2.2em;
        line-height: 1.364;
    }

    .slide .item .point p.head .pt {
        border-radius: 1.5rem;
        font-size: 0.818em;
        margin-right: 0.444em;
        max-width: 5.556em;
        padding: 0.222em 0 0.111em;
        text-align: center;
    }

    .slide .item .point p.head>* {
        vertical-align: middle;
    }

    .slide .item .point p.des {
        font-size: 1.6em;
        font-weight: 600;
        line-height: 2.25;
        margin-top: 0;
        text-align: center;
    }

    .slide .item .point p.des>span {
        font-size: 0.7em;
        vertical-align: 21%;
    }

    .slide .item .note {
        margin: 0.6em auto 0;
        width: calc(648 / 960 * 100%);
    }

    .slide .item .note ul {
        margin: 0;
        padding: 0;
    }

    .slide .item .note ul li {
        font-size: 1.2em;
        line-height: 1.5;
    }

    .slide .item .cap {
        font-size: 2em;
        margin-top: 0.5em;
    }

    .slide .item02 .photo {
        margin: 4.1em auto 0;
    }

    .slide .item03 .photo {
        margin: 5.4em auto 0;
    }

    .slide .item04 .photo {
        margin: 2em auto 0;
    }

    .widget.wrap-slide .slide .slick-prev {
        left: 5px;
    }

    .widget.wrap-slide .slide .slick-next {
        right: 7px;
    }

    .widget.wrap-slide .slide .slick-dots {
        bottom: 64px;
        width: 89.9%;
    }

    .widget.wrap-slide .slide .slick-dots li {
        width: 15px;
        height: 15px;
        margin: 0 7px;
    }

    .widget.wrap-slide .slide .slick-dots li button {
        width: 15px;
        height: 15px;
    }

    .widget.wrap-slide .slide .slick-dots li button:before {
        width: 15px;
        height: 15px;
        content: "";
        background: #bababa;
        border-radius: 50%;
        opacity: 1;
    }

    .widget.wrap-slide .slide .slick-dots li.slick-active button:before {
        opacity: 1;
        background: #2c893a;
    }

    .green .box p.txt.fs32 {
        margin-top: 0.2em;
    }

    .green .box .icon img {
        margin-top: 1.4em;
    }

    .green .list>.row:nth-child(n + 2),
    .lightgreen .list>.row:nth-child(n + 2) {
        margin-top: 2.8em;
    }

    .green .list>.row .list-text .fs26 {
        line-height: 1.4;
    }

    .green .list>.row .list-text .note {
        margin-top: 0.5em;
    }

    .green .accordion .accordion-content {
        padding: 3em 4.4em 2.3em;
    }

    .lightgreen .accordion .accordion-content>.row:nth-child(n + 2),
    .orange .box .icon img,
    .violet .box .icon img {
        margin-top: 0.9em;
    }

    .orange .accordion .accordion-content>.row:nth-child(n + 2),
    .turquoise .box .icon img,
    .violet .box p.txt.fs20 {
        margin-top: 0.8em;
    }

    .orange .list>.row:nth-child(n + 2),
    .red .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 2.2em;
    }

    .orange .accordion .accordion-content {
        padding: 3em 4.4em 1.9em;
    }

    .darkblue .box .icon img,
    .lightgreen .box .icon img {
        margin-top: 1.6em;
    }

    .lightgreen .box p.txt.fs32 {
        margin-top: 0.23em;
    }

    .lightgreen .accordion .accordion-content {
        padding: 3em 4.4em 1.6em;
    }

    .pink .box .icon img {
        margin-right: 0.7em;
        margin-top: 0.9em;
    }

    .darkblue .accordion .accordion-content>.row:nth-child(n + 2),
    .pink .accordion .accordion-content>.row:nth-child(n + 2),
    .turquoise .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 2em;
    }

    .pink .list>.row:nth-child(n + 2),
    .turquoise .list>.row:nth-child(n + 2) {
        margin-top: 2.7em;
    }

    .pink .list>.row .list-text .fs18 {
        display: inherit;
        margin-top: 0.1em;
    }

    .pink .accordion .accordion-content {
        padding: 3em 4.4em 3.9em;
    }

    .turquoise .accordion .accordion-content {
        padding: 3em 4.4em 2.1em;
    }

    .turquoise .list>.row .list-text .fs26 {
        letter-spacing: -0.06em;
    }

    .violet .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 1.8em;
    }

    .violet .accordion .accordion-content {
        padding: 3em 4.4em 2.4em;
    }

    .violet .box .item:nth-child(n + 2) {
        margin-top: 10em;
    }

    .violet .list>.row .list-text.dot .fs26 {
        padding-left: 1em;
        text-indent: -1em;
    }

    .violet .list>.row .list-text .note {
        font-size: 1.2em;
        margin-top: 0.15em;
        padding-left: 2.6em;
        text-indent: -0.8em;
    }

    .red .accordion .accordion-content .text p.note {
        margin-top: 0.333em;
    }

    .red .accordion .accordion-content {
        padding: 3em 4.4em 2.2em;
    }

    .darkblue .box p.txt.fs20 {
        margin-top: 0.75em;
    }

    .darkblue .accordion .accordion-content .text p.note {
        margin-top: 0.1em;
    }

    .darkblue .accordion .accordion-content {
        padding: 3em 4.4em 2.45em;
    }

    .widget-button.last {
        padding: 3.4em 0 4em;
    }
}

@media all and (max-width: 750px) {

    .slick-dots li,
    .slick-dots li button {
        font-size: 2.667vw;
        height: 1em;
        width: 1em;
    }

    .slick-next,
    .slick-prev {
        height: 8.267vw;
        width: 4.8vw;
        font-size: 2.667vw;
    }

    .green .box p.txt.fs32 {
        margin-top: 0.23em;
    }

    .green .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 1em;
    }

    .green .list>.row:nth-child(n + 2) {
        margin-top: 1.7em;
    }

    .green .list>.row .list-text .fs26 {
        line-height: 1.38;
    }

    .darkblue .accordion .accordion-content,
    .green .accordion .accordion-content,
    .turquoise .accordion .accordion-content,
    .violet .accordion .accordion-content,
    .widget.lightgreen .accordion .accordion-content {
        padding: 2em 1.6em 0.5em;
    }

    .widget.lightgreen .box .head h2,
    .widget.orange .box .head h2 {
        line-height: 1.3;
        padding: 0.64em 0 0.2em;
    }

    .widget.orange .box p.txt.fs20 {
        margin-top: 0.5em;
    }

    .red .widget .box p.txt.fs26,
    .widget.lightgreen .box p.txt.fs26 {
        margin-top: 1.1em;
    }

    .turquoise .accordion .accordion-content>.row:nth-child(n + 2),
    .violet .accordion .accordion-content>.row:nth-child(n + 2),
    .widget.lightgreen .accordion .accordion-content>.row:nth-child(n + 2) {
        margin-top: 0.9em;
    }

    .widget.lightgreen .list>.row:nth-child(n + 2) {
        margin-top: 1.35em;
    }

    .widget.lightgreen .list>.row .list-text .fs26 {
        line-height: 1.46;
    }

    .widget.pink .list>.row:nth-child(n + 2) {
        margin-top: 1.3em;
    }

    .widget.pink .accordion .accordion-content {
        padding: 2em 1.6em 1.6em;
    }

    .widget.pink .list>.row .list-text .fs18 {
        display: inherit;
    }

    .turquoise .accordion .accordion-content .text p.fs26 {
        letter-spacing: -0.08em;
        line-height: 1.4;
    }

    .turquoise .list>.row:nth-child(n + 2) {
        margin-top: 1.25em;
    }

    .turquoise .list>.row .list-text .fs26 {
        letter-spacing: -0.08em;
    }

    .widget.violet .box .head h2 {
        line-height: 1.3;
        padding: 0.477em 0 0.32em;
    }

    .violet .list>.row .list-text.dot .fs26 {
        letter-spacing: -0.07em;
        padding-left: 1em;
        text-indent: -1em;
    }

    .violet .list>.row .list-text .note {
        font-size: 2.933vw;
        margin-top: 0.5em;
        padding-left: 2.6em;
        text-indent: -0.8em;
    }

    .widget.red .box .head h2 {
        line-height: 1.3;
        padding: 0.55em 0 0.25em;
    }

    .red .accordion .accordion-content {
        padding: 2em 1.6em 0;
    }

    .red .accordion .accordion-content .cont {
        padding: 1.05em 0 0.9em;
    }

    .red .list>.row:last-child .list-number span {
        margin-top: -0.37em;
    }

    .darkblue .list>.row .list-note .note:nth-child(n + 2),
    .red .list>.row .list-text .note:nth-child(n + 2) {
        margin-top: 0;
    }

    .widget.darkblue .box .head h2 {
        line-height: 1.3;
        padding: 0.52em 0 0.24em;
    }

    .darkblue .accordion .accordion-content .text p.fs26 {
        line-height: 1.3;
        margin-top: 0.2em;
    }

    .slick-next:before,
    .slick-prev:before {
        background: url(../img/ico_slice.png) 0 0 / cover no-repeat;
        content: "";
        height: 8.267vw;
        opacity: 1 !important;
        position: absolute;
        left: 0;
        top: 0;
        width: 4.8vw;
    }

    .slide .slick-dots {
        box-sizing: border-box;
        font-size: 2.667vw;
        margin: 0 auto;
        max-width: 650px;
        bottom: -2.9em;
    }

    .slick-dots li {
        margin: 0 0.5em;
    }

    .slick-dots li button {
        background: #bcbcbc;
        border-radius: 50%;
        cursor: pointer;
        padding: 0;
    }

    .slick-dots li.slick-active button {
        background: #2c893a;
    }

    .slick-dots li button:before,
    .slick-dots li.slick-active button:before {
        opacity: 0 !important;
    }

    .slick-prev {
        left: -1.1em;
        z-index: 1;
    }

    .slick-next {
        right: -1.1em;
    }

    .slick-next:before {
        transform: rotateY(180deg);
    }

    .slick-disabled {
        opacity: 0;
        pointer-events: none;
    }

    .box_bottom {
        background: #ddfbd0;
        margin: 3em auto;
        padding: 2em 0 1.4em;
        width: calc(650 / 710 * 100%);
    }

    .box_bottom .photo_bottom {
        margin: 0 auto;
        width: calc(570 / 650 * 100%);
    }

    .box_bottom .box_text {
        margin: 2em auto 0;
        width: calc(570 / 650 * 100%);
    }

    .box_bottom .box_text .fs26 {
        font-size: 4.8vw;
        font-weight: 600;
        letter-spacing: 0.04em;
        line-height: 1.35;
        margin-top: 1.3em;
        text-align: justify;
    }
}

@media all and (min-width: 751px) {

    .concept_trigger>a::after,
    .concept_trigger>a::before {
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        border-top: 3px solid #fff;
        content: "";
        display: block;
        height: 0;
        margin: auto 0;
        position: absolute;
        bottom: 0;
        right: 0.8em;
        top: 0;
        transition: transform 0.3s;
        width: 1.6em;
    }

    .box_bottom {
        background: #ddfbd0;
        margin: 5em auto;
        padding: 3em 0 1.9em;
        width: calc(860 / 960 * 100%);
    }

    .box_bottom .photo_bottom {
        margin: 0 auto;
        width: calc(372 / 860 * 100%);
    }

    .box_bottom .box_text {
        margin-top: 2.3em;
    }

    .box_bottom .box_text .fs26 {
        font-size: 2.6em;
        font-weight: 600;
        line-height: 1.45;
        text-align: center;
    }

    .about-section-title.underline,
    .concept_title {
        color: #2c893a;
        font-weight: 600;
        text-align: center;
    }

    .about-section-title.underline {
        font-size: 4.2em;
        letter-spacing: 0.06em;
        line-height: 1;
        margin-top: 0.06em;
    }

    .about-section-title.underline>span {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .about-section-title.underline>span::before {
        background: #fff062;
        content: "";
        height: 0.333em;
        position: absolute;
        bottom: -2px;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .about-section .icon {
        height: 6.1em;
        margin: 2em auto 0;
        width: 4.6em;
    }

    .about-section .content-top {
        margin-top: 0.8em;
    }

    .about-section .about-local,
    .about-section .about-local-text:nth-child(n + 2) {
        margin-top: 1.2em;
    }

    .about-section .about-local-text {
        text-align: center;
    }

    .about-section .content-bottom {
        margin-top: 4em;
    }

    .about-section .content-bottom .text {
        font-size: 1.2em;
        text-align: center;
    }

    .concept_title {
        font-size: 3.4em;
        letter-spacing: 0.05em;
    }

    .outer {
        background: url(../img/footer_line_img02.png) bottom 16px left/1px 13px repeat-x #fff;
    }
}

@media all and (max-width: 750px) {

    .concept_trigger>a::after,
    .concept_trigger>a::before {
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        border-top: 3px solid #fff;
        content: "";
        display: block;
        height: 0;
        margin: auto 0;
        position: absolute;
        bottom: 0;
        right: 0.4em;
        top: 0;
        transition: transform 0.3s;
        width: 1.6em;
    }

    .about-section-title.underline,
    .concept_title {
        color: #2c893a;
        font-size: 5.333vw;
        font-weight: 600;
        text-align: center;
    }

    .about-section-title.underline {
        letter-spacing: 0.01em;
        line-height: 1;
        margin-top: 0.26em;
    }

    .about-section-title.underline>span {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .about-section-title.underline>span::before {
        background: #fff062;
        content: "";
        height: 0.425em;
        position: absolute;
        bottom: -2px;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .about-section .icon {
        margin: 1.45em auto 0;
        width: calc(34 / 315 * 100%);
    }

    .about-section .content-top {
        margin-top: 0.9em;
    }

    .about-section .about-local {
        margin-top: 2em;
    }

    .about-section .about-local-text {
        margin-top: 0;
        text-align: center;
    }

    .about-section .about-local-text:nth-child(n + 2) {
        margin-top: 1.14em;
    }

    .about-section .content-bottom {
        margin-top: 1.6em;
    }

    .about-section .content-bottom .text {
        font-size: 2.933vw;
        margin-top: 0;
        text-align: center;
    }

    .concept_title {
        line-height: 1.35;
    }

    .convertion-box .mod-ul-notes {
        margin-top: 0.577em !important;
    }

    .convertion-box .mod-ul-notes li {
        font-size: 3.2vw !important;
    }

    .last .convertion-box_item_list {
        margin: 0.3em 0 0 !important;
    }

    .last .convertion-box_item_list li {
        padding-left: 0;
        text-align: center;
        text-indent: inherit;
    }

    .last .convertion-box_item_head span {
        font-size: 3.2vw;
        line-height: 1.34;
        vertical-align: inherit;
    }

    .mainvisual-inner .anchor-logo {
        display: flex;
        justify-content: center;
        text-align: center;
        position: absolute;
        top: 74.933vw;
        right: 3.733vw;
        border-radius: 50%;
        z-index: 10;
    }
    
    .mainvisual-inner .anchor-logo a {
        max-width: 209px;
        max-height: 210px;
        width: 27.867vw;
        height: 28vw;
        box-shadow: 0 0 2.667vw rgba(87, 87, 87, 0.72);
        border-radius: 50%;
    }
}

@media (min-width: 751px) and (max-width: 1024px) {
    .newanchor .newanchor-wrap a {
        font-size: 1.953vw;
    }

    .widget.plus .plus-head .txt {
        font-size: 3.906vw;
    }

    .convertion-box_item_title {
        font-size: 2.344vw;
    }

    .convertion-box_item_head span {
        font-size: 1.363vw;
        letter-spacing: -0.04em;
    }
}

.mod-icon-window {
    white-space: nowrap;
    text-indent: 110%;
    overflow: hidden;
    display: inline-block;
    height: 9px;
    width: 12px;
    margin-left: 3px;
    background: url("../img/icon_window_bg01.png") no-repeat left top/contain;
    vertical-align: middle;
}

.mod-icon-window {
    width: 20px;
    height: 14px;
    margin-left: 5px;
}

@media all and (min-width: 751px) {

    .point-anchor-wrap .btn a:hover,
    .point-btn.pdf>a:hover {
        opacity: 0.7;
    }

    .point {
        margin-top: 0;
        margin-bottom: 4.4em;
        text-align: center;
    }

    .slide .item .point {
        margin-bottom: 0;
    }

    .point .point_catch-appeal {
        position: relative;
        margin-top: 1.969em;
        margin-left: 2.969em;
        font-size: 3.2em;
        font-weight: bold;
        text-align: center;
    }

    .point .point_catch-appeal:before {
        content: "";
        background: url("../img/ico_point.png") no-repeat top center/100% auto;
        display: block;
        width: 2.719em;
        height: 3.188em;
        position: absolute;
        bottom: -0.438em;
        left: -3.75em;
    }

    .point_catch {
        display: inline-block;
    }

    .point_catch-bg-green {
        position: relative;
        display: block;
        color: #fff;
        font-size: 0.813em;
        margin-bottom: 0.923em;
        z-index: 1;
    }

    .point_catch-bg-green:before {
        content: "";
        background: url("../img/point_subttl_pc.png") no-repeat top center/100% auto;
        display: block;
        width: 15.077em;
        height: 3.615em;
        position: absolute;
        top: -1.385em;
        left: 47%;
        transform: translate(-50%);
        z-index: -1;
    }

    .point_catch-green {
        font-size: 1.3em;
        font-weight: bold;
        color: #2c893a;
        line-height: 1;
    }

    .point-anchor {
        margin: 4.7em auto 0;
        max-width: 960px;
        padding-left: 2em !important;
        padding-right: 2em !important;
    }

    .point-anchor-wrap {
        display: flex;
        justify-content: space-between;
        text-align: center;
        flex-wrap: wrap;
        row-gap: 1.8em;
    }

    .point-anchor-wrap .btn {
        width: calc(307 / 960 * 100%);
        background: url("../img/point_bg_anchor_btn_pc.png");
        border-radius: 1.5em;
    }

    .point-anchor-wrap .btn.w100 {
        width: 100%;
    }

    .point-anchor-wrap .btn a {
        position: relative;
        font-weight: bold;
        display: block;
    }

    .point-anchor-wrap .btn a:hover,
    .point-anchor-wrap .btn a:active,
    .point-anchor-wrap .btn a:focus {
        text-decoration: none;
    }

    .point-anchor-wrap .btn a .text_point {
        font-size: 2.2em;
        display: block;
        background: #fff062;
        color: #2c893a;
        width: 55%;
        margin: 0.143em auto 0;
        padding: 0.227em 0 0;
        border-bottom-left-radius: 0.682em;
        border-bottom-right-radius: 0.682em;
    }

    .point-anchor-wrap .btn a .text {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2.8em;
        color: #fff;
        line-height: 1.071;
        min-height: 3em;
        padding-bottom: 1.071em;
    }

    .point-anchor-wrap .btn a .text-orange-box {
        font-size: 2.4em;
        display: block;
        background: #fa8c0d;
        color: #fff;
        width: 54%;
        margin: 0.143em auto 0;
        padding: 0.125em 0 0.167em;
        border-bottom-left-radius: 0.682em;
        border-bottom-right-radius: 0.682em;
    }

    .point-anchor-wrap .btn a .text.txt-3line {
        line-height: 1.1538;
    }

    .point-anchor-wrap .btn a:after {
        content: "";
        display: block;
        position: absolute;
        background: url("../img/ico_point_arrow_down.png") no-repeat top center/100% auto;
        width: 3.8em;
        height: 2em;
        bottom: 1.2em;
        font-size: 1em;
        left: 50%;
        transform: translate(-50%);
    }

    .point-anchor-wrap .btn.w100 a .text {
        min-height: unset;
        padding-top: 0.367em;
        padding-bottom: 0.6em;
        font-size: 3em;
    }

    .point-anchor-wrap .btn.w100 a:after {
        bottom: unset;
        left: unset;
        top: 50%;
        right: 14%;
        transform: translateY(-50%);
    }

    .point-block {
        margin-bottom: 7.5em;
        text-align: center;
    }

    .point-block#point4 {
        margin-bottom: 9.5em;
    }

    .point-block#point1 {
        margin-bottom: 6.2em;
    }

    .point-block:last-of-type {
        margin-bottom: 7em;
    }

    .point-block sup,
    .offer-section sup {
        font-size: 50%;
        vertical-align: super;
    }

    .point-ttl {
        text-align: center;
        padding: 0.286em 2em 2.357em;
    }

    .point-ttl.ttl-1-line {
        background: url("../img/point_bg_ttl_01_pc.png") no-repeat top center/cover;
    }

    .point-ttl.ttl-2-line {
        background: url("../img/point_bg_ttl_02_pc.png") no-repeat top center/cover;
        padding-bottom: 1.357em;
    }

    .point-ttl.bg-green {
        background-color: #2c893a;
        padding: 2.5em 0 4.214em;
    }

    .point-ttl.point-ttl-edit{
        padding: 2.5em 0;
    }

    .point-ttl.bg-green .text {
        display: inline-block;
        position: relative;
        margin-left: 2.925em;
    }

    .point-ttl.point-ttl-edit .text{
        margin-left: .35em;
        margin-top: .325em;
    }

    .point-ttl .text .space {
        margin-right: 0.675em;
    }

    .point-ttl .text .cl-yellow {
        color: #fff062;
    }

    .point-ttl.bg-green .text:before {
        content: "";
        background: url("../img/ico_point_02.png") no-repeat top center / 100% auto;
        display: block;
        width: 2.425em;
        height: 2.4em;
        position: absolute;
        top: 50%;
        left: -2.75em;
        transform: translateY(-50%);
    }

    .point-ttl.point-ttl-edit .text:before{
        top: .09em;
        left: -2.45em;
    }

    .point-ttl .text_point {
        font-size: 1.857em;
        display: block;
        background: #fff062;
        color: #2c893a;
        width: 7.846em;
        margin: 0 auto;
        border-bottom-left-radius: 15px;
        border-bottom-right-radius: 15px;
    }

    .point-ttl .text {
        display: block;
        font-size: 2.857em;
        color: #fff;
        line-height: 1.24;
        margin-top: 0.25em;
    }

    .point-block .txt {
        font-size: 3em;
        font-weight: bold;
        line-height: 1.368;
        text-align: center;
    }

    .point-block .txt.lt-1 {
        letter-spacing: -0.033em;
        line-height: 1.667;
    }

    .point-block .txt .txt-box-orange {
        display: inline-block;
        font-size: 1.333em;
        line-height: 1.45;
        font-weight: bold;
        color: #fff;
        background: #fa8c0d;
        width: 89%;
        margin-bottom: 0.1em;
    }

    .point-block .txt:first-child {
        margin-top: 1.133em;
    }

    .point-block .cl-green {
        color: #2c893a;
    }

    .point-block .cl-green.txt-big {
        font-size: 1.3em;
    }

    .point-block .fz-big {
        font-size: 1.3em;
    }

    .point-block .txt.co-green,
    .offer-block .txt.co-green {
        text-align: center;
        font-size: 3.9em;
        color: #2c893a;
        margin-top: 0.122em;
    }

    .point .point_catch-appeal.underline>.txt-underline,
    .point-block .txt.underline>.txt-underline,
    .offer-block .txt.underline>.txt-underline {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .point .point_catch-appeal.underline>.txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.449em;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .point-block .txt.underline>.txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.449em;
        position: absolute;
        bottom: 0.163em;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .point .point_catch-appeal.underline>.txt-underline .small,
    .point-block .txt.underline>.txt-underline .small,
    .point-block .txt .small,
    .offer-block .txt.underline>.txt-underline .small {
        font-size: 0.923em;
        line-height: 1.55;
        color: #333;
    }

    .point .point_catch-appeal.underline>.txt-underline .big,
    .point-block .txt.underline>.txt-underline .big {
        font-size: 2.3076em;
        line-height: 0.62;
    }

    .point-block .text-compare {
        display: flex;
        justify-content: space-between;
    }

    .point-block .text-compare .text-left {
        margin-left: 5em;
        width: 47%;
    }

    .point-block .text-compare .text-right .txt-box-green>span {
        padding: 0.333em 0.912em 0.1666em 1.147em;
    }

    .point-block .text-compare .text-right .txt-box-green+.txt.co-green {
        margin-top: 1.538em;
    }

    .point-block .text-compare .txt.underline>.txt-underline:before {
        height: 0.59em;
        left: 50%;
        transform: translate(-50%);
    }

    .point-block .text-compare .text-right .txt.underline>.txt-underline:before {
        width: 110%;
    }

    .point-img {
        margin: 4.7em 0 5.1em;
    }

    .point-img.point-img-02 {
        margin-top: 6em;
    }

    .point-check {
        margin-top: 4.5em;
    }

    .point-btn {
        max-width: 592px;
        margin: 2.8em auto;
    }

    .point-btn>a {
        position: relative;
        display: block;
        font-size: 2.4em;
        font-weight: bold;
        padding: 0.625em;
        color: #fff;
        background: linear-gradient(180deg,
                rgba(25, 190, 97, 1) 32%,
                rgba(53, 172, 71, 1) 74%);
        box-shadow: 0 0.333em 0 0 rgba(44, 137, 58, 1);
        border-radius: 1.5em;
    }

    .point-btn.pdf>a {
        padding: 0 1.25em 0.292em 0.417em;
    }

    .point-btn.pdf>a:hover {
        text-decoration: none;
    }

    .point-btn.fz-small>a {
        font-size: 2.2em;
        padding: 0 1.364em 0.545em 0.455em;
    }

    .point-btn.fz-small>a span {
        display: inline-block;
    }

    .point-btn.pdf>a:after {
        background: url("../img/ico_pdf.png") no-repeat top center/100% auto;
        content: "";
        position: relative;
        display: inline-block;
        right: -1.125em;
        top: 1.333em;
        transform: translateY(-50%);
        width: 1.417em;
        height: 1.708em;
    }

    .point-block .txt.line-2 {
        font-size: 3em;
        color: #2c893a;
        margin-top: 1.944em;
    }

    .point-block .txt.line-2+.txt {
        margin-top: 0;
    }

    .point-block .txt.line-2>span {
        position: relative;
    }

    .point-block .txt.line-2>span:before {
        background: #2c893a;
        content: "";
        height: 0.111em;
        position: absolute;
        left: -1.3em;
        top: 50%;
        transform: translateY(-50%) rotate(58deg);
        width: 1.167em;
    }

    .point-block .txt.line-2>span:after {
        background: #2c893a;
        content: "";
        height: 0.111em;
        position: absolute;
        right: -1.2em;
        top: 50%;
        transform: translateY(-50%) rotate(-58deg);
        width: 1.167em;
    }

    .point-block .txt.co-green+.txt {
        margin-top: 0.933em;
    }

    .point-photo {
        max-width: 458px;
        width: 100%;
        margin: 6.2em auto 5.6em;
    }

    .point-doc {
        max-width: 945px;
        width: 100%;
        margin: 2.5em auto 1.4em;
    }

    .point-note p {
        font-size: 1.8em;
        font-weight: 300;
        line-height: 1.667;
    }

    .point-note p+p {
        margin-top: 0;
    }

    #point2 .point-img {
        margin-top: 3.3em;
    }

    #point2 .point-btn {
        margin-top: -0.2em;
    }

    .txt-box-green {
        font-size: 3.4em;
        font-weight: bold;
        color: #fff;
        line-height: 1;
        padding-top: 1.294em;
        text-align: center;
    }

    .txt-box-green>span {
        background: #2c893a;
        display: inline-block;
        border-radius: 0.294em;
        padding: 0.333em 1.235em 0.1666em;
    }

    .txt-box-green+.txt.co-green {
        margin-top: 0.816em;
    }

    .check-point-block {
        background: #eaf3eb;
        border: 0.4em solid #2c893a;
        border-radius: 2em;
        width: calc(852 / 960 * 100%);
        margin: 3.9em auto 0;
        padding: 3.6em 4.9em 4.4em;
        box-sizing: border-box;
    }

    .check-point-block+.check-point-block {
        margin-top: 2.8em;
    }

    .check-point-ttl {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 94%;
        margin: 0 auto;
    }

    .check-point-ttl .img-check {
        width: 8.6em;
        margin-right: 2.5em;
    }

    .check-point-ttl>p {
        font-size: 3.2em;
        font-weight: bold;
        color: #2c893a;
        line-height: 1.40625;
        margin-top: 0;
    }

    .check-point-block .img {
        width: 94%;
        margin: 3.3em auto;
    }

    .check-point-block .img.img-01 {
        width: 100%;
        margin: 2.1em 0 2.1em -2em;
    }

    .check-point-block .txt {
        font-size: 2.6em;
        line-height: 1.4375;
        margin-top: 1.192em;
    }

    .check-point-block .txt .cl-green {
        font-size: 1.1923em;
        line-height: 1.1979;
    }

    .check-point-block .point-note p {
        font-size: 1.6em;
        line-height: 1.5;
    }

    .check-point-block .txt+.point-note {
        margin-top: 3em;
        margin-left: 2.1em;
    }

    .txt-sub {
        font-size: 4.148vw;
        font-weight: bold;
        text-align: center;
    }

    .txt-sub+.txt.co-green {
        margin-top: 1em;
    }

    .hospital-block {
        background: #fff;
        border: 0.6em solid #2c893a;
        border-radius: 1.5em;
        width: calc(848 / 960 * 100%);
        margin: 4em auto 0;
        padding: 3.3em 0 3.7em;
        box-sizing: border-box;
    }

    .hospital-block+.hospital-block {
        margin-top: 2.2em;
    }

    .hospital-block .txt-box-green {
        margin-top: 0;
        padding-top: 0;
        font-size: 3em;
    }

    .hospital-block .txt-box-green>span {
        padding: 0.3222em 0.833em 0.1666em;
        min-width: 8.933em;
    }

    .hospital-block .txt-underline .medium {
        font-size: 8.133vw;
        color: #333;
    }

    .hospital-block .txt.underline>.txt-underline .big {
        font-size: 12.603vw;
    }

    .hospital-block .txt.underline>.txt-underline .small {
        font-size: 5.105vw;
        color: #2c893a;
    }

    .txt-note-right {
        font-size: 3.509vw;
        text-align: right;
        margin-right: 8.533vw;
        margin-top: 0;
    }

    .aid-block {
        display: flex;
        align-items: center;
        margin: 0 1em 0 11.5em;
        padding-top: 20px;
    }

    .aid-block .img-aid.aid-01 {
        width: 18.9em;
        margin-right: 5em;
    }

    .aid-block .img-aid.aid-02 {
        width: 20.6em;
        margin-right: 4.7em;
    }

    .aid-block .img-aid.aid-03 {
        width: 14.8em;
        margin-right: 8.7em;
    }

    .aid-block .content-aid {
        width: 42em;
    }

    .aid-block .content-aid p {
        font-size: 1.8em;
        margin-top: 0;
        margin-right: 0;
    }

    .aid-block .content-aid .txt-note-right {
        margin-right: 1.333em;
        margin-top: -0.5em;
    }

    .aid-block .content-aid .txt-sub {
        font-size: 2.2em;
    }

    .aid-block .content-aid .ttl-aid {
        font-weight: bold;
        font-size: 2em;
        text-align: center;
        margin-top: 0.6em;
    }

    .aid-block .content-aid .des-aid {
        font-size: 2em;
        text-align: center;
        margin-top: 0.2em;
    }

    .aid-block .txt.co-green {
        font-size: unset;
    }

    .aid-block .medium {
        font-size: 3.4em;
        color: #333;
    }

    .aid-block .txt.underline>.txt-underline:before {
        height: 1.7em;
        bottom: 0.8em;
    }

    .aid-block .txt.underline>.txt-underline .big {
        font-size: 7.6em;
    }

    .aid-block .txt.underline>.txt-underline .small {
        font-size: 3.4em;
    }

    .cover-aid {
        font-size: 3.2vw;
        font-weight: bold;
        color: #2c893a;
        line-height: 1;
    }

    .cover-aid>span {
        border: 0.125em solid;
        border-radius: 0.3125em;
        padding: 0 0.3125em;
    }

    .aid-block .content-aid .cover-aid {
        font-size: 0.8em;
        font-weight: 500;
        margin-left: 0.625em;
    }

    .hospital-block.diff {
        padding-bottom: 5.5em;
    }

    .hospital-block.diff .aid-block {
        margin-top: 0;
        padding-top: 3.8em;
        margin-left: 9.9em;
        align-items: flex-start;
    }

    .hospital-block.diff .aid-block.heart {
        margin-left: 11.9em;
    }

    .hospital-block.diff .aid-block .content-pc {
        margin-top: 2.4em;
        margin-bottom: 4em;
    }

    .hospital-block.diff .aid-block.heart .content-pc {
        margin-top: 0.7em;
        margin-bottom: 2.2em;
    }

    .plus-block {
        padding-top: 7.5em;
    }

    .plus-block .txt {
        background: url("../img/ico_plus_pc.png") center center / 79% no-repeat;
        display: inline-block;
        font-size: 4em;
        font-weight: 600;
        line-height: 1.26;
        margin-top: 0 !important;
        padding: 1.6em 0;
        position: relative;
        text-align: center;
    }

    .plus-block .txt::before,
    .plus-block .txt::after {
        content: "";
        position: absolute;
        transform: translateY(-50%);
    }

    .plus-block .txt::before {
        background: url("../img/ico_plus_ava_01.png") center center / contain no-repeat;
        height: 4.3em;
        left: -4.375em;
        top: 53%;
        width: 2.6em;
    }

    .plus-block .txt::after {
        background: url("../img/ico_plus_ava_02.png") center center / contain no-repeat;
        height: 3.25em;
        right: -3.8em;
        top: 58%;
        width: 2.6em;
    }

    .offer-section {
        background: #ddfbd0;
        margin-top: 0;
        padding: 6.2em 0 8em;
    }

    .offer-block {
        padding: 0 4.5em 4em;
        border: 0.6em solid #2c893a;
        border-radius: 1.5em;
        background: #fff;
        width: calc(847 / 960 * 100%);
        margin: 0 auto;
        box-sizing: border-box;
        text-align: center;
    }

    .offer-ttl {
        font-size: 3.2em;
        color: #fff;
        letter-spacing: 0.056em;
        text-align: center;
        position: relative;
    }

    .offer-block .offer-ttl {
        display: inline-block;
        position: relative;
        font-weight: bold;
        top: -30px;
    }

    .offer-block .offer-ttl+.txt.co-green {
        margin-top: -13px;
    }

    .offer-ttl .circle-red {
        display: block;
        position: absolute;
        top: 43%;
        left: 0;
        padding: 0.781em 0.25em 0.688em;
        background: #e26059;
        border-radius: 50%;
        line-height: 1;
        transform: translateY(-50%);
    }

    .offer-ttl .line-green {
        background: #2c893a;
        border-radius: 1.375em;
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        padding: 0.188em 1.444em 0;
        margin-left: 1.75em;
    }

    .offer-block .txt-note-right {
        font-size: 1.8em;
        margin-right: 1.064em;
    }

    .offer-block .txt.underline>.txt-underline .txt-note-right {
        position: absolute;
        top: 77%;
        right: -0.333em;
        margin-right: 0;
        font-size: 0.4615em;
        font-weight: 400;
        color: #333;
    }

    .offer-block .txt.co-green {
        font-weight: bold;
    }

    .offer-block .txt.co-green .medium {
        font-size: 0.974em;
        color: #333;
    }

    .offer-block .txt.underline>.txt-underline .big {
        font-size: 1.948em;
    }

    .offer-block .txt.co-green .sub-big {
        font-size: 0.5em;
    }

    .txt-normal {
        text-align: center;
        font-size: 2em;
    }

    .txt-normal+.txt-normal {
        margin-top: 0;
    }

    .offer-block .cl-green {
        color: #2c893a;
        font-weight: bold;
    }

    .txt-normal.bold {
        font-weight: bold;
        margin-top: 0.8em;
    }

    .offer-img {
        width: 100%;
        margin: 3.3em auto 2.1em;
    }

    .offer-note p {
        font-size: 1.6em;
        font-weight: 300;
        line-height: 1.375;
        margin-left: 1.1em;
        text-indent: -1.1em;
    }

    .offer-block .txt.underline>.txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.435em;
        position: absolute;
        bottom: 0.769em;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .bg_rectangle {
        background: url("../img/offer_bg_01_pc.png") top center / 49% no-repeat;
        margin-top: 1.0937em;
        padding: 0.687em 0;
        font-size: 3.2em;
        font-weight: bold;
        text-align: center;
        line-height: 1.5625;
    }

    .bg_rectangle .cl-green {
        font-size: 1.2em;
        line-height: 1.302;
    }

    .bg_rectangle .row-txt {
        writing-mode: vertical-rl;
        text-orientation: upright;
        white-space: nowrap;
        display: inline-block;
        vertical-align: sub;
        font-size: 0.65em;
    }

    .bg_rectangle .small {
        display: block;
        font-size: 0.625em;
        margin-top: -0.25em;
    }

    .fs50 {
        font-size: 3.6em;
        line-height: 1.24;
        margin-inline: -1.194em;
        text-align: center;
        margin-top: 0.916em;
    }

    .offer-section .inner>.offer-note {
        width: 88.5%;
        margin: 2.8em auto 0;
    }

    .offer-section .inner>.offer-note p {
        font-size: 1.6em;
        line-height: 1.75;
    }

    .offer-section .inner>.offer-note p+p {
        margin-top: 0;
    }

    .offer-section>.row {
        max-width: 847px;
        margin: 0 auto;
        padding-left: 2em !important;
        padding-right: 2em !important;
    }

    .offer-section .accordion {
        margin-top: 7.2em;
        width: 100%;
    }

    .offer-section .accordion .accordion-head {
        background: #2c893a;
        border-radius: 1.5em;
        position: relative;
        z-index: 0;
    }

    .offer-section .accordion .accordion-head:before {
        content: "";
        position: absolute;
        background: #fff;
        display: inline-block;
        width: 5em;
        height: 5em;
        top: 50%;
        right: 5em;
        border-radius: 50%;
        transform: translateY(-50%);
        z-index: 1;
    }

    .offer-section .accordion.active .accordion-head {
        border-bottom-left-radius: unset;
        border-bottom-right-radius: unset;
    }

    .offer-section .accordion .accordion-head h3 {
        font-size: 3em;
        padding: 0.666em 0.666em 0.733em;
    }

    .offer-section .accordion .accordion-head h3:before,
    .offer-section .accordion .accordion-head h3:after {
        background: #2c893a;
        z-index: 2;
    }

    .offer-section .accordion .accordion-head h3:before {
        height: 0.933em;
        right: 2.5em;
    }

    .offer-section .accordion .accordion-head h3:after {
        right: 2.033em;
        width: 1em;
    }

    .offer-section .accordion .accordion-content {
        padding: 2.6em 3.3em 2.9em;
        border: 0.6em solid #2c893a;
        border-top: 0;
        border-bottom-left-radius: 1.5em;
        border-bottom-right-radius: 1.5em;
    }

    .offer-section .accordion .accordion-content .text {
        font-size: 1.6em;
        margin-left: -0.375em;
        line-height: 1.625;
    }

    .offer-section .accordion .accordion-content .text a {
        text-decoration: underline;
    }

    .offer-section .accordion .accordion-content .text.indent {
        text-indent: -2em;
        padding-left: 2em;
    }

    .offer-section .accordion .accordion-content .text+.text {
        margin-top: 0;
    }

    .offer-section .accordion .accordion-content .bg-gray {
        background: #f0f0f0;
        margin-top: 2.2em;
        padding: 2.5em 2.1em 2.2em;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        margin-top: 2.5em;
        padding: 3em 2.1em 2.6em;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex+.flex {
        margin-top: 1.5em;
    }

    .offer-section .accordion .accordion-content .heading {
        font-size: 2em;
        padding-top: 0.769em;
        padding-bottom: 1.15em;
    }

    .offer-section .accordion .accordion-content .bg-gray .heading {
        font-size: 1.6em;
        line-height: 1.5;
        padding-top: 0;
        padding-bottom: 0;
    }

    .offer-section .accordion .accordion-content .list {
        padding-top: 2.8em;
        padding-bottom: 0;
    }

    .offer-section .accordion .accordion-content .list p {
        font-size: 1.6em;
        line-height: 1.75;
        text-indent: -1.1em;
        margin-left: 1.1em;
    }

    .offer-section .accordion .accordion-content .list p+p {
        margin-top: 0;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .img {
        width: 8.3em;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .row {
        width: 59.9em;
        margin-left: 4.3em;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .heading {
        text-align: left;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .text {
        margin: 0;
    }

    .protect-ttl {
        font-size: 4.515em;
        font-weight: bold;
        color: #2c893a;
        text-align: center;
    }

    .protect-ttl span {
        position: relative;
        display: inline-block;
    }

    .protect-ttl span:before,
    .protect-ttl span:after {
        content: "";
        background: #2c893a;
        position: absolute;
        top: 50%;
        width: 0.089em;
        height: 1.027em;
    }

    .protect-ttl span:before {
        left: -0.313em;
        transform: translateY(-50%) rotate(331deg);
    }

    .protect-ttl span:after {
        right: -0.357em;
        transform: translateY(-50%) rotate(27deg);
    }

    .widget.banner.red {
        padding: 0 0 4em;
    }

    .subscribers-block {
        padding-top: 3.8em;
        padding-bottom: 3.9em;
    }

    .subscri-ttl {
        font-size: 3.8em;
        font-weight: bold;
        line-height: 1.583;
        text-align: center;
    }

    .subscri-ttl.txt-underline {
        font-size: 6.4vw;
        font-weight: bold;
        line-height: 1.583;
        text-align: center;
    }

    .subscri-ttl.underline .txt-underline {
        display: inline-block;
        padding: 0 0.12em;
        font-size: 1.289em;
        line-height: 1.2179;
        position: relative;
        z-index: 0;
        color: #2c893a;
    }

    .subscri-ttl.underline .txt-underline:after {
        background: url("../img/ico_3_line_head.png") no-repeat top center/100% auto;
        content: "";
        position: absolute;
        top: -0.263em;
        left: -0.237em;
        width: 0.447em;
        height: 0.5em;
        z-index: -1;
    }

    .subscri-ttl.underline .txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.289em;
        position: absolute;
        bottom: 0.143em;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .subcri-box {
        background: url("../img/bg_green_heading_h4.png");
        width: calc(300 / 960 * 100%);
        border-radius: 1.5em;
        padding: 2.3em 1.5em 3.8em;
        box-sizing: border-box;
    }

    .subcri-box .avatar {
        width: 12.7em;
        margin: 0 auto;
    }

    .subcri-box .avatar .avatar-sub {
        font-size: 1.6em;
        font-weight: bold;
        text-align: center;
    }

    .subcri-box .subcri-content .ttl {
        font-size: 1.8em;
        font-weight: bold;
        line-height: 1.222;
        margin-top: 1.388em;
        text-align: center;
        min-height: 3.666em;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .subcri-box .subcri-content .content {
        font-size: 1.6em;
        font-weight: bold;
        line-height: 1.625;
        margin-top: 1.375em;
        width: 95%;
    }

    .subcri-box .subcri-content .content .cl-green {
        color: #2c893a;
        font-weight: bold;
    }

    .subcri-flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        text-align: center;
        margin-top: 3.9em;
    }

    .widget .wrap-button .plus-head .txt .fs40 .fs-big {
        font-size: 1.25em;
    }

    .check-offer-block {
        border: 0.4em solid #e26059;
        border-radius: 2em;
        position: relative;
        padding: 3em 6.2em 3.8em;
        margin: 3.2em 0 3.7em;
    }

    .check-offer-ttl {
        display: flex;
        align-items: center;
        margin-bottom: 3em;
        position: relative;
    }

    .check-offer-ttl:after {
        content: "";
        position: absolute;
        border-bottom: 3px solid #e26059;
        bottom: -1.6em;
        left: 50%;
        width: 96%;
        transform: translate(-50%);
    }

    .check-offer-ttl .img-check {
        width: 7.2em;
        margin-right: 2.9em;
    }

    .check-offer-ttl>p {
        font-size: 2.4em;
        font-weight: bold;
        line-height: 1.40625;
        margin-top: 0;
    }

    .check-offer-ttl>p .cl-light-red {
        color: #e26059;
    }

    .check-offer-txt-01 {
        font-size: 2em;
        font-weight: bold;
        text-align: center;
    }

    .check-offer-content {
        text-align: left;
        padding: 3.6em 0 0 1.4em;
    }

    .check-offer-content .offer-box+.offer-box {
        margin-top: 2.6em;
    }

    .check-offer-content .offer-txt {
        display: inline-block;
        font-size: 2.4em;
        font-weight: bold;
        margin-right: 12px;
        line-height: 1;
        min-width: 24.4%;
    }

    .check-offer-content .offer-price {
        display: inline-block;
        font-size: 2.8em;
        line-height: 1;
        font-weight: bold;
    }

    .check-offer-content .offer-price .cl-light-red {
        font-size: 1.429em;
        color: #e26059;
    }

    .check-offer-img {
        position: absolute;
        bottom: 0;
        right: 7.3em;
        width: 22.3em;
    }
}

@media all and (max-width: 750px) {
    .point {
        margin-top: 0;
        margin-bottom: 5.1em;
    }

    .point.point-edit {
        margin-bottom: 3em;
    }

    .point .point_catch-appeal {
        position: relative;
        margin-top: 11.467vw;
        font-size: 5.867vw;
        font-weight: bold;
        text-align: center;
        margin-left: 14.4vw;
    }

    .point .point_catch-appeal:before {
        content: "";
        background: url("../img/ico_point.png") no-repeat top center/contain;
        display: block;
        width: 2.773em;
        height: 3.227em;
        position: absolute;
        top: -1.067vw;
        left: -3.733vw;
    }

    .point .point_catch-appeal.underline>.txt-underline {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .point .point_catch-appeal.underline>.txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.449em;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .point_catch-bg-green {
        position: relative;
        display: block;
        font-size: 4.8vw;
        color: #fff;
        margin-bottom: 0.722em;
        z-index: 1;
    }

    .point_catch-bg-green:before {
        content: "";
        background: url("../img/point_subttl_sp.png") no-repeat top center/100% auto;
        display: block;
        width: 65.867vw;
        height: 11.733vw;
        position: absolute;
        top: -2.667vw;
        left: 49%;
        transform: translate(-50%);
        z-index: -1;
    }

    .point_catch-green {
        font-size: 9.067vw;
        font-weight: bold;
        color: #2c893a;
        line-height: 1;
    }

    .point-anchor {
        margin-top: 2.3em;
    }

    .point-anchor-wrap {
        display: flex;
        justify-content: space-between;
        text-align: center;
        flex-wrap: wrap;
        margin: 0 1em;
        row-gap: 0.8em;
    }

    .point-anchor-wrap .btn {
        width: calc(242 / 750 * 100%);
        background: url("../img/point_bg_anchor_btn_pc.png");
        border-radius: 0.75em;
    }

    .point-anchor-wrap .btn.w100 {
        width: 100%;
    }

    .point-anchor-wrap .btn a {
        position: relative;
        font-weight: bold;
        display: block;
    }

    .point-anchor-wrap .btn a:hover,
    .point-anchor-wrap .btn a:active,
    .point-anchor-wrap .btn a:focus {
        text-decoration: none;
    }

    .point-anchor-wrap .btn a .text_point {
        font-size: 3.733vw;
        display: block;
        background: #fff062;
        color: #2c893a;
        width: 77%;
        margin: 0.143em auto 0;
        border-bottom-left-radius: 2.667vw;
        border-bottom-right-radius: 2.667vw;
    }

    .point-anchor-wrap .btn a .text {
        font-size: 4.533vw;
        color: #fff;
        line-height: 1.235;
        margin-top: 0.294em;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 3.824em;
        padding-bottom: 1.412em;
    }

    .point-anchor-wrap .btn a .text-orange-box {
        font-size: 4.267vw;
        display: block;
        background: #fa8c0d;
        color: #fff;
        width: 77%;
        margin: 0.143em auto 0;
        padding: 0.125em 0;
        border-bottom-left-radius: 2.667vw;
        border-bottom-right-radius: 2.667vw;
    }

    .point-anchor-wrap .btn a:after {
        content: "";
        display: block;
        position: absolute;
        background: url("../img/ico_point_arrow_down.png") no-repeat top center/100% auto;
        width: 5.067vw;
        height: 2.667vw;
        bottom: 2.667vw;
        left: 50%;
        transform: translate(-50%);
    }

    .point-anchor-wrap .btn.w100 a .text {
        font-size: 4.8vw;
        margin-top: 0.222em;
        min-height: unset;
        padding-bottom: 1.222em;
    }

    .point-anchor-wrap .btn.w100 a:after {
        bottom: 1.333vw;
    }

    .point-block {
        margin-bottom: 4.7em;
        text-align: center;
    }

    .point-block#point4{
        margin-top: 3em;
        padding-top: 3em;
    }

    .point-block:last-of-type {
        margin-bottom: 5.7em;
    }

    .point-block sup,
    .offer-section sup {
        font-size: 50%;
        vertical-align: super;
    }

    .point-ttl {
        background: url("../img/point_bg_ttl_sp.png") no-repeat top center/cover;
        text-align: center;
        padding-top: 0.115em;
    }

    .point-ttl .text_point {
        font-size: 4.8vw;
        display: block;
        background: #fff062;
        color: #2c893a;
        width: 46%;
        margin: 0 auto;
        border-bottom-left-radius: 2.667vw;
        border-bottom-right-radius: 2.667vw;
    }

    .point-ttl .text {
        display: block;
        font-size: 6.667vw;
        color: #fff;
        line-height: 1.24;
        margin-top: 0.412em;
        padding-bottom: 0.64em;
    }

    .point-ttl.bg-green {
        background-color: #2c893a;
        background-image: none;
        padding: 0.808em 0.385em 0.385em;
    }

    .point-ttl.point-ttl-edit {
        padding: 0;
    }
    .point-ttl.point-ttl-edit .text{
        padding-bottom: .4em;
    }

    .point-ttl .text .cl-yellow {
        color: #fff062;
    }

    .point-ttl.bg-green .text {
        display: inline-block;
        position: relative;
        margin-left: 1.96em;
    }

    .point-ttl.bg-green .text:before {
        content: "";
        background: url("../img/ico_point_02.png") no-repeat top center / contain;
        display: block;
        width: 2.36em;
        height: 2.32em;
        position: absolute;
        top: -1.067vw;
        left: -17.733vw;
    }

    .point-ttl.point-ttl-edit .text{
        margin-left: 0;
        margin-top: -.08em;
    }

    .point-ttl.point-ttl-edit .text:before{
        width: 1.92em;
        height: 1.88em;
        top: -2.32em;
        left: .32em;
    }

    .point-block .txt {
        font-size: 5.067vw;
        font-weight: bold;
        line-height: 1.368;
        text-align: center;
    }

    .point-block .txt.sp-small {
        font-size: 3.2vw;
        margin-top: 2.25em;
    }

    .point-block .txt .txt-box-orange {
        display: inline-block;
        font-size: 6.667vw;
        line-height: 1.45;
        font-weight: bold;
        color: #fff;
        background: #fa8c0d;
        width: 100%;
        margin-bottom: 0.4em;
    }

    .point-block .cl-green {
        color: #2c893a;
    }

    .point-block .fz-big {
        font-size: 6.587vw;
    }

    .point-block .txt.co-green,
    .offer-block .txt.co-green {
        text-align: center;
        font-size: 6.533vw;
        color: #2c893a;
        margin-top: 0.122em;
    }

    .point-block .txt.underline>.txt-underline,
    .offer-block .txt.underline>.txt-underline {
        display: inline-block;
        padding: 0 0.12em;
        position: relative;
        z-index: 0;
    }

    .point-block .txt.underline>.txt-underline:before,
    .offer-block .txt.underline>.txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.449em;
        position: absolute;
        bottom: 0.163em;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .point-block .txt .small,
    .offer-block .txt.underline>.txt-underline .small {
        font-size: 5.333vw;
        line-height: 1.55;
        color: #333;
    }

    .point-block .txt .big,
    .point-block .txt.underline>.txt-underline .big,
    .offer-block .txt.underline>.txt-underline .big {
        font-size: 13.333vw;
        line-height: 0.62;
    }

    .point-block .text-compare .text-right {
        margin-top: -0.7em;
    }

    .point-img {
        margin: 2.1em 0 1em;
    }

    .point-doc {
        margin-top: 0.9em;
    }

    .point-check {
        margin-top: 1.5em;
        margin-bottom: 2.3em;
    }

    .point-btn {
        width: 88%;
        margin: 2.8em auto;
    }

    .point-btn>a {
        position: relative;
        display: block;
        font-size: 4.267vw;
        font-weight: bold;
        padding: 0.625em;
        color: #fff;
        background: linear-gradient(180deg,
                rgba(25, 190, 97, 1) 32%,
                rgba(53, 172, 71, 1) 74%);
        box-shadow: 0 0.25em 0 0 rgba(44, 137, 58, 1);
        border-radius: 1.5em;
    }

    .point-btn.pdf>a {
        padding: 0.563em 3.438em 0.438em 1.25em;
    }

    .point-btn.fz-small>a {
        font-size: 3.733vw;
        line-height: 1.1428;
        padding: 0.345em 3.438em 0.345em 1.25em;
    }

    .point-btn.pdf>a:after {
        background: url("../img/ico_pdf.png") no-repeat top center/100% auto;
        content: "";
        height: 1.813em;
        position: absolute;
        right: 1.813em;
        top: 50%;
        transform: translateY(-50%);
        width: 1.5em;
    }

    .point-block .txt.line-2 {
        font-size: 4.8vw;
        color: #2c893a;
        margin-top: 1.944em;
    }

    .point-block .txt.line-2+.txt {
        margin-top: 0.474em;
    }

    .point-block .txt.line-2>span {
        position: relative;
    }

    .point-block .txt.line-2>span:before {
        background: #2c893a;
        content: "";
        height: 0.111em;
        position: absolute;
        left: -1.611em;
        top: 50%;
        transform: translateY(-50%) rotate(58deg);
        width: 1.167em;
    }

    .point-block .txt.line-2>span:after {
        background: #2c893a;
        content: "";
        height: 0.111em;
        position: absolute;
        right: -1.444em;
        top: 50%;
        transform: translateY(-50%) rotate(-58deg);
        width: 1.167em;
    }

    .point-block .txt.co-green+.txt {
        margin-top: .75em;
    }

    .point-photo {
        width: 80%;
        margin: 2em auto 2.4em;
    }

    .point-note p {
        font-size: 2.667vw;
        font-weight: 300;
        line-height: 1.5;
    }

    .point-note p+p {
        margin-top: 0;
    }

    #point2 .point-img {
        margin-top: 2.2em;
    }

    #point2 .point-btn {
        margin-top: 3.5em;
    }

    .txt-box-green {
        font-size: 5.067vw;
        font-weight: bold;
        color: #fff;
        line-height: 1;
        padding-top: 0.211em;
        text-align: center;
    }

    .txt-box-green>span {
        background: #2c893a;
        display: inline-block;
        border-radius: 0.263em;
        padding: 0.316em 0.947em 0.158em;
    }

    .point-block .text-compare .txt-box-green>span {
        padding-bottom: 0.316em;
    }

    .txt-box-green+.txt.co-green {
        margin-top: 0.816em;
    }

    .check-point-block {
        background: #eaf3eb;
        border: 0.2em solid #2c893a;
        border-radius: 1em;
        margin-top: 3.3em;
        padding: 1.3em 3.733vw;
    }

    .check-point-block+.check-point-block {
        margin-top: 1.4em;
    }

    .check-point-ttl {
        display: flex;
        align-items: center;
        width: 94%;
        margin: 0 auto;
    }

    .check-point-ttl .img-check {
        width: 14.851%;
        margin-right: 3.467vw;
    }

    .check-point-ttl>p {
        font-size: 4.8vw;
        font-weight: bold;
        color: #2c893a;
        line-height: 1.25;
        margin-top: 0;
    }

    .check-point-block .img {
        margin-top: 1.2em;
    }

    .check-point-block .img.img-01 {
        margin-left: -0.8em;
        margin-top: 0.9em;
    }

    .check-point-block .txt {
        font-size: 4.267vw;
        line-height: 1.4375;
        margin-top: 0.75em;
    }

    .check-point-block .point-note {
        margin-top: 1.5em;
    }

    .check-point-block .txt .cl-green {
        font-size: 5.12vw;
        line-height: 1.1979;
    }

    .txt-sub {
        font-size: 4.148vw;
        font-weight: bold;
        text-align: center;
    }

    .txt-sub+.txt.co-green {
        margin-top: 10px;
    }

    .hospital-block {
        background: #fff;
        border: 0.3em solid #2c893a;
        border-radius: 1em;
        margin-top: 2em;
        padding: 1.3em 3.733vw 2.4em;
    }

    .hospital-block .txt-box-green {
        margin-top: 0;
    }

    .hospital-block .txt-underline .medium {
        font-size: 8.133vw;
        color: #333;
    }

    .hospital-block .txt.underline>.txt-underline .big {
        font-size: 12.603vw;
    }

    .hospital-block .txt.underline>.txt-underline .small {
        font-size: 5.105vw;
        color: #2c893a;
    }

    .hospital-block .txt-box-green {
        font-size: 5.333vw;
    }

    .hospital-block .txt-box-green>span {
        padding: 0.158em 0.947em;
    }

    .txt-note-right {
        font-size: 3.509vw;
        text-align: right;
        margin-right: 8.533vw;
        margin-top: 0;
    }

    .aid-block {
        display: flex;
        margin-inline: 2.933vw;
        padding-top: 0.4em;
    }

    .aid-block .img-aid {
        width: 8.6em;
        margin-right: 1.8em;
    }

    .aid-block .content-aid p {
        font-size: 3.467vw;
        margin-top: 0;
    }

    .aid-block .content-aid .ttl-aid {
        font-weight: bold;
    }

    .cover-aid {
        font-size: 3.2vw;
        font-weight: bold;
        color: #2c893a;
        line-height: 1;
    }

    .cover-aid>span {
        display: inline-block;
        border: 0.083em solid;
        border-radius: 0.208em;
        padding: 0.154em 0.538em 0.297em;
    }

    .aid-block .content-aid .cover-aid {
        font-size: 3.2vw;
    }

    .hospital-block.diff .aid-block {
        margin-top: 1.9em;
        align-items: flex-end;
    }

    .hospital-block.diff .aid-block .img-aid {
        margin-right: 7.733vw;
    }

    .hospital-block.diff .content-sp .txt.co-green {
        margin-top: 1.061em;
    }

    .plus-block {
        padding-top: 48px;
    }

    .plus-block .txt {
        background: url("../img/ico_plus_sp.png") center center / 63% no-repeat;
        display: inline-block;
        font-size: 6.667vw;
        font-weight: bold;
        line-height: 1.26;
        margin: 0;
        padding: 1em 0;
        position: relative;
        text-align: center;
    }

    .plus-block .txt::before,
    .plus-block .txt::after {
        content: "";
        position: absolute;
        transform: translateY(-50%);
    }

    .plus-block .txt::before {
        background: url("../img/ico_plus_ava_01.png") center center / contain no-repeat;
        height: 3.44em;
        left: -2.84em;
        top: 53%;
        width: 2.08em;
    }

    .plus-block .txt::after {
        background: url("../img/ico_plus_ava_02.png") center center / contain no-repeat;
        height: 2.58em;
        right: -2.84em;
        top: 60%;
        width: 2.08em;
    }

    .offer-section {
        background: #ddfbd0;
        margin-top: 0;
        padding: 4.8em 0 3.1em;
    }

    .offer-block {
        padding: 0 1.1em 4em;
        border: 0.3em solid #2c893a;
        border-radius: 0.75em;
        background: #fff;
    }

    .offer-ttl {
        font-size: 4.8vw;
        color: #fff;
        letter-spacing: 0.056em;
        text-align: center;
        position: relative;
    }

    .offer-block .offer-ttl {
        margin-top: -0.889em;
        font-weight: bold;
        margin-bottom: 1.722em;
    }

    .offer-ttl .circle-red {
        display: block;
        position: absolute;
        top: 50%;
        left: 0.944em;
        padding: 0.556em 0.278em;
        background: #e26059;
        border-radius: 50%;
        transform: translateY(-50%);
    }

    .offer-ttl .line-green {
        background: #2c893a;
        border-radius: 1.375em;
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        padding: 0.167em 1.444em 0.167em;
        margin-left: 9.067vw;
    }

    .offer-block .txt-note-right {
        margin-right: 1.064em;
    }

    .offer-block .txt.co-green {
        font-weight: bold;
    }

    .offer-block .txt.co-green .medium {
        font-size: 7.467vw;
        color: #333;
    }

    .offer-block .txt.co-green .sub-big {
        font-size: 70%;
    }

    .txt-normal {
        text-align: center;
        font-size: 3.467vw;
    }

    .txt-normal+.txt-normal {
        margin-top: 0;
    }

    .offer-block .cl-green {
        color: #2c893a;
        font-weight: bold;
    }

    .txt-normal.bold {
        font-weight: bold;
    }

    .offer-img {
        margin: 1.4em auto 0;
    }

    .offer-note p {
        font-size: 2.4vw;
        font-weight: 300;
        line-height: 1.5;
        margin-left: 1.1em;
        text-indent: -1.1em;
    }

    .offer-note p+p {
        margin-top: 0.222em;
    }

    .bg_rectangle {
        background: url("../img/offer_bg_01_sp.png") top center / 70% no-repeat;
        margin-top: 1.211em;
        padding: 0.579em 0 0.684em;
        font-size: 5.067vw;
        font-weight: bold;
        text-align: center;
        line-height: 1.6316;
    }

    .bg_rectangle .cl-green {
        font-size: 6.08vw;
    }

    .bg_rectangle .row-txt {
        writing-mode: vertical-rl;
        text-orientation: upright;
        white-space: nowrap;
        display: inline-block;
        vertical-align: sub;
        font-size: 3.2vw;
    }

    .bg_rectangle .small {
        display: block;
        font-size: 2.933vw;
        margin-top: 0;
    }

    .fs50 {
        font-size: 6.667vw;
        line-height: 1.24;
        text-align: center;
        margin-top: 0.4em;
    }

    .offer-section .inner>.offer-note {
        margin-top: 1.9em;
    }

    .offer-section .inner>.offer-note p {
        font-size: 2.667vw;
        line-height: 1.5;
    }

    .offer-section .inner>.offer-note p+p {
        margin-top: 0;
    }

    .offer-section>.row {
        margin: 0 2.667vw;
    }

    .offer-section .accordion {
        margin-top: 3.2em;
        width: 100%;
    }

    .offer-section .accordion .accordion-head {
        background: #2c893a;
        border-radius: 0.75em;
        position: relative;
        z-index: 0;
    }

    .offer-section .accordion .accordion-head:before {
        content: "";
        position: absolute;
        background: #fff;
        display: inline-block;
        width: 5.333vw;
        height: 5.333vw;
        top: 50%;
        right: 3.733vw;
        border-radius: 50%;
        transform: translateY(-50%);
        z-index: 1;
    }

    .offer-section .accordion.active .accordion-head {
        border-bottom-left-radius: unset;
        border-bottom-right-radius: unset;
    }

    .offer-section .accordion .accordion-head h3 {
        font-size: 4vw;
        padding: 0.933em 1em;
    }

    .offer-section .accordion .accordion-head h3:before,
    .offer-section .accordion .accordion-head h3:after {
        background: #2c893a;
        z-index: 2;
    }

    .offer-section .accordion .accordion-head h3:before {
        height: 3.2vw;
        right: 6.4vw;
    }

    .offer-section .accordion .accordion-head h3:after {
        right: 4.533vw;
        width: 3.467vw;
    }

    .offer-section .accordion .accordion-content {
        padding: 0.3em 3.2vw 0.9em;
        border: 0.3em solid #2c893a;
        border-top: 0;
        border-bottom-left-radius: 0.75em;
        border-bottom-right-radius: 0.75em;
    }

    .offer-section .accordion .accordion-content .text {
        font-size: 2.667vw;
        margin-left: 1em;
        line-height: 1.5;
    }

    .offer-section .accordion .accordion-content .row02 .text {
        margin-left: 0;
    }

    .offer-section .accordion .accordion-content .text.indent {
        text-indent: -2em;
        padding-left: 2em;
    }

    .offer-section .accordion .accordion-content .text+.text {
        margin-top: 0;
    }

    .offer-section .accordion .accordion-content .bg-gray {
        background: #f0f0f0;
        margin-top: 2.7em;
        padding: 1.3em 0.9em;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        margin-top: 1em;
        padding: 1.5em 2.4vw 1em;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex+.flex {
        margin-top: 0.7em;
    }

    .offer-section .accordion .accordion-content .heading {
        font-size: 3.467vw;
        padding-top: 0.769em;
    }

    .offer-section .accordion .accordion-content .bg-gray .heading {
        font-size: 2.667vw;
        line-height: 1.5;
        padding-top: 0;
    }

    .offer-section .accordion .accordion-content .list {
        padding-top: 0.5em;
    }

    .offer-section .accordion .accordion-content .list p {
        font-size: 2.667vw;
        line-height: 1.5;
        text-indent: -1.1em;
        margin-left: 1.1em;
    }

    .offer-section .accordion .accordion-content .list p+p {
        margin-top: 0;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .img {
        width: 10.933vw;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .row {
        width: 67.733vw;
        margin-left: 2.667vw;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .heading {
        text-align: left;
    }

    .offer-section .accordion .accordion-content .bg-gray.flex .text {
        margin: 0;
    }

    .protect-ttl {
        font-size: 5.973vw;
        font-weight: bold;
        color: #2c893a;
        text-align: center;
        margin-top: 0 !important;
    }

    .protect-ttl span {
        position: relative;
        display: inline-block;
    }

    .protect-ttl span:before,
    .protect-ttl span:after {
        content: "";
        background: #2c893a;
        position: absolute;
        top: 50%;
        width: 0.089em;
        height: 1.027em;
    }

    .protect-ttl span:before {
        left: -0.313em;
        transform: translateY(-50%) rotate(331deg);
    }

    .protect-ttl span:after {
        right: -0.357em;
        transform: translateY(-50%) rotate(27deg);
    }

    .widget.banner.red {
        padding: 0 0 2em;
    }

    .wrap-button+.page-width .box {
        margin-top: 7.5em;
    }

    .subscribers-block {
        padding-bottom: 2.7em;
    }

    .subscri-ttl {
        font-size: 6.4vw;
        font-weight: bold;
        line-height: 1.583;
        text-align: center;
    }

    .subscri-ttl.txt-underline {
        font-size: 6.4vw;
        font-weight: bold;
        line-height: 1.583;
        text-align: center;
    }

    .subscri-ttl.underline .txt-underline {
        display: inline-block;
        padding: 0 0.12em;
        font-size: 8.32vw;
        line-height: 1.2179;
        position: relative;
        z-index: 0;
        color: #2c893a;
    }

    .subscri-ttl.underline .txt-underline:after {
        background: url("../img/ico_3_line_head.png") no-repeat top center/100% auto;
        content: "";
        position: absolute;
        top: -0.263em;
        left: -0.237em;
        width: 0.447em;
        height: 0.5em;
        z-index: -1;
    }

    .subscri-ttl.underline .txt-underline:before {
        background: #fff062;
        content: "";
        height: 0.289em;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: -1;
    }

    .subcri-box {
        background: #d1f4c2;
        border-radius: 0.75em;
        margin-top: 1.6em;
        padding: 1.6em 3.733vw 2.1em;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .subcri-box+.subcri-box {
        margin-top: 1.4em;
    }

    .subcri-box .avatar {
        width: 20vw;
    }

    .subcri-box .avatar .avatar-sub {
        font-size: 2.667vw;
        text-align: center;
        font-weight: bold;
    }

    .subcri-box .subcri-content {
        width: 64.267vw;
    }

    .subcri-box .subcri-content .ttl {
        font-size: 3.6vw;
        font-weight: bold;
        line-height: 1.4074;
        margin-top: 0;
    }

    .subcri-box .subcri-content .content {
        font-size: 2.933vw;
        font-weight: 500;
        line-height: 1.5454;
        margin-top: 0.9em;
        text-align: justify;
    }

    .subcri-box .subcri-content .content .cl-green {
        color: #2c893a;
        font-weight: 600;
    }

    .check-offer-block {
        border: 0.2em solid #e26059;
        border-radius: 1em;
        position: relative;
        padding: 1.4em 2.667vw 1.6em;
        margin: 1.5em 0;
    }

    .check-offer-ttl {
        display: flex;
        margin-bottom: 2.4em;
        position: relative;
    }

    .check-offer-ttl:after {
        content: "";
        position: absolute;
        border-bottom: 0.15em solid #e26059;
        bottom: -1.3em;
        left: 50%;
        width: 100%;
        transform: translate(-50%);
    }

    .check-offer-ttl .img-check {
        width: 12vw;
        margin-right: 4vw;
    }

    .check-offer-ttl>p {
        font-size: 3.467vw;
        font-weight: bold;
        line-height: 1.40625;
        margin-top: 0;
    }

    .check-offer-ttl>p .cl-light-red {
        color: #e26059;
    }

    .check-offer-txt-01 {
        font-size: 2.933vw;
        font-weight: bold;
        text-align: center;
    }

    .check-offer-content {
        text-align: left;
        padding: 1.2em 0 0 0.6em;
    }

    .check-offer-content .offer-box+.offer-box {
        margin-top: 0.8em;
    }

    .check-offer-content .offer-txt {
        display: inline-block;
        font-size: 3.2vw;
        font-weight: bold;
        line-height: 1;
        min-width: 24%;
        margin-top: 0;
    }

    .check-offer-content .offer-price {
        display: inline-block;
        font-size: 4.667vw;
        line-height: 1;
        font-weight: bold;
        margin-top: 0;
    }

    .check-offer-content .offer-price .cl-light-red {
        font-size: 6.667vw;
        color: #e26059;
    }

    .check-offer-img {
        position: absolute;
        bottom: 0;
        right: 2.133vw;
        width: 28.533vw;
    }

    .offer-section .accordion .accordion-content .text a {
        text-decoration: underline;
    }

    .mod-icon-window {
        width: 1.2em;
        height: 0.9em;
        margin-left: 0.5em;
    }
}

@media (min-width: 751px) and (max-width: 1024px) {
    .point-anchor-wrap .btn.w100 a:after {
        right: 10%;
    }

    .point-anchor-wrap .btn a .text_point,
    .aid-block .content-aid .txt-sub {
        font-size: 2.148vw;
    }

    .point-anchor-wrap .btn a .text {
        font-size: 2.539vw;
    }

    .point-anchor-wrap .btn a:after {
        font-size: 0.977vw;
    }

    .check-point-ttl>p {
        font-size: 3.125vw;
    }

    .aid-block .medium,
    .aid-block .txt.underline>.txt-underline .small {
        font-size: 3.32vw;
    }

    .aid-block .txt.underline>.txt-underline .big {
        font-size: 7.422vw;
    }

    .aid-block .content-aid .ttl-aid,
    .aid-block .content-aid .des-aid {
        font-size: 1.953vw;
    }

    .aid-block .content-aid .txt-note-right {
        font-size: 1.758vw;
    }

    .aid-block .content-aid .cover-aid {
        font-size: 1.563vw;
    }

    .check-offer-block {
        font-size: 0.977vw;
        padding-inline: 5em;
    }

    .check-offer-ttl>p,
    .check-offer-content .offer-txt {
        font-size: 2.344vw;
    }

    .check-offer-content .offer-price {
        font-size: 2.734vw;
    }

    .point-block .text-compare .text-left {
        margin-left: 0;
    }

    .point-block .text-compare .text-right {
        width: 50%;
    }

    .point-block .text-compare .txt-box-green {
        font-size: 3.32vw;
    }

    .point-block .text-compare .txt.underline>.txt-underline .big {
        font-size: 8.789vw;
    }

    .point-block .text-compare .txt.underline>.txt-underline .small,
    .point-block .txt .small {
        font-size: 3.515vw;
    }

    .point-ttl.point-ttl-edit .text{
        font-size: 2.3em;
    }
    .text-buble{
        font-size: 1.607em;
    }
}

@media (min-width: 500px) and (max-width: 750px) {
    .check-offer-img {
        width: 24.533vw;
    }
    .point-ttl.point-ttl-edit{
        padding: 0.808em 0.385em 0.385em;
    }
}