.page-footer, body {
  background-color: #fff
}
.header_logo img, .pbMainArea {
  max-width: 100%
}
*, :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: .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 .455em 1.091em 0;
  padding-right: .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 {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-top: 3px solid #fff;
  content: '';
  display: block;
  height: 0;
  margin: auto 0;
  position: absolute;
  bottom: 0;
  right: .4em;
  top: 0;
  transition: transform .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
}
@media all and (min-width:751px) {
  .concept_lower-title, .concept_text {
    font-size: 1.7rem;
    line-height: 1.65;
    margin-top: .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: .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 .455em 1.091em 0;
    padding-right: .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
  }
  .wrap-slide .page-width {
    max-width: 820px
  }
  .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 .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: .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: -.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: -.2rem;
    width: calc(215 / 685 * 100%)
  }
  ul.page-tab li:nth-child(2) {
    margin: 0 1.429em -.3rem
  }
  ul.page-tab .tab-current {
    z-index: 2
  }
  .mainvisual {
    margin: 0 auto;
    max-width: 1366px
  }
  .mainvisual h1 {
    text-align: center
  }
  .mainvisual img {
    width: auto;
    margin: 0 auto
  }
  .mv-slider-box {
    margin-top: -13px
  }
  .mainvisual-inner {
    padding: .952% 0 9.2245%;
    background: url(../img/mv_bg_pc.jpg) center bottom/contain no-repeat
  }
  .mainvisual-inner.fv_new {
    padding: .952% 0 9.2245%;
    background: url(../img/mv_bg_2501_pc.jpg) center bottom/contain no-repeat
  }
  .mainvisual-inner.fv_new02 {
    margin-top: 2px;
    padding: min(8.667%, 104px) 0 min(8.833%, 106px);
    background: url(../img/mv_bg_2505_pc.jpg) center top/auto 100% no-repeat;
  }
  .mainvisual-inner.fv_new02 h1 img {
    max-width: 41%;
  }
  .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 .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 .786em 3em;
    width: calc(306 / 960 * 100%)
  }
  .convertion-box_item_title {
    color: #403d3c;
    font-size: 2.4rem;
    padding-bottom: .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 .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 .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: -.06em;
    margin-top: 1.143em;
    padding: 0 .714em
  }
}
@media all and (min-width:751px) and (max-width:1366px) {
  .mainvisual h1 img {
    max-width: 48%
  }
  .mv-slider-box {
    width: 36.75%;
    margin: -1.025% auto 0
  }
  .mv-slider-box img {
    max-width: 100%
  }
  ul.page-tab li {
    margin-bottom: -.2rem
  }
}
@media print {
  .sp {
    display: none !important
  }
}
@media all and (max-width:750px) {
  .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: .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: .909em .682em 0 0;
    overflow: visible;
    padding-right: .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 {
    margin-top: .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: 25.3335% 1.6% 64.5335%;
    background: url(../img/mv_bg_sp.jpg) center bottom/contain no-repeat
  }
  .mainvisual-inner.fv_new {
    padding: 25.3335% 1.6% 64.5335%;
    background: url(../img/mv_bg_2501_sp.jpg) center bottom/contain no-repeat
  }
  .mainvisual-inner.fv_new02 {
    margin-top: 3px;
    padding: 23.733% 0 23.6%;
    background: url(../img/mv_bg_2505_sp.jpg) center top/cover no-repeat;
  }
  .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: 0 1em 2.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: .9em .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: .577em 1.038em .731em
  }
  .convertion-box_item_title {
    color: #403d3c;
    font-size: 4.267vw;
    padding-bottom: .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: -.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: .2em auto 0;
    width: 100%
  }
  .convertion-box_item_list {
    margin: .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: .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: .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, .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: -.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: .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: .6em 1.438em .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: .4em;
    position: absolute;
    left: 50%;
    top: 46%;
    transform: translate(-50%, -50%) rotate(135deg);
    width: .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: .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: .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: .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: 600;
    line-height: 1.533;
    padding: .64em .2em .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: .9em
  }
  .widget.orange .list > .row .list-text .fs26 {
    line-height: 1.42
  }
  .widget.orange .list > .row:nth-child(3) .list-text .fs26 {
    letter-spacing: -.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: .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: .19em
  }
  .widget .box p.txt.fs20 {
    font-size: 4.267vw;
    font-weight: 600;
    line-height: 1.5;
    margin-top: .6em
  }
  .widget .box p.txt.fs20 .fs12 {
    display: inherit;
    font-size: .625em;
    margin-top: .25em
  }
  .widget .box p.txt.underline {
    font-size: 18.4vw;
    font-weight: 600;
    line-height: 1;
    margin-top: .06em
  }
  .widget .box p.txt.underline > span {
    display: inline-block;
    padding: 0 .12em;
    position: relative;
    z-index: 0
  }
  .widget .box p.txt.underline > span::before {
    background: #fff062;
    content: "";
    height: .22em;
    position: absolute;
    bottom: .072em;
    left: 0;
    width: 100%;
    z-index: -1
  }
  .widget .box p.txt.underline > span .small {
    display: inline-block;
    font-size: .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: 600;
    padding: .53em 1.5em .53em .2em;
    position: relative;
    text-align: center
  }
  .accordion.active .accordion-head h3::before {
    display: none
  }
  .accordion .accordion-head h3::after {
    background: #fff;
    content: "";
    height: .158em;
    position: absolute;
    right: .526em;
    top: 50%;
    transform: translateY(-50%);
    width: .947em
  }
  .accordion .accordion-head h3::before {
    background: #fff;
    content: "";
    height: .947em;
    position: absolute;
    right: .987em;
    top: 50%;
    transform: translate(50%, -50%);
    width: .158em
  }
  .accordion .accordion-content {
    background: #fff;
    padding: 2em 1.6em .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: 600;
    line-height: 1.3;
    margin: 0 auto;
    padding: .3em 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: 600;
    line-height: 1.5;
    margin-top: 0;
    text-align: center
  }
  .accordion .accordion-content .text p.fs16 {
    font-size: 3.2vw;
    margin-top: .167em;
    text-align: center
  }
  .accordion .accordion-content .text p.note {
    font-size: 2.933vw;
    letter-spacing: -.03em;
    line-height: 1.5;
    margin-top: .55em;
    padding-left: 1.1em;
    text-align: left;
    text-indent: -1.1em
  }
  .accordion .accordion-content > .row.last {
    margin-top: .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: .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: 600;
    letter-spacing: -.03em;
    line-height: 1.5;
    margin: 0 auto
  }
  .list > .row .list-text .fs18 {
    font-size: .692em
  }
  .list > .row .list-text .note {
    font-size: 2.933vw;
    letter-spacing: -.05em;
    margin-top: .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: .415em 1.4em .415em .455em;
    position: relative
  }
  .widget .box .button a::before {
    content: "";
    display: inline-block;
    height: .529em;
    position: absolute;
    right: 1.324em;
    top: 50%;
    transform: translate(0, -50%) rotate(45deg);
    width: .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: .56em 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;
    text-align: center
  }
  .widget .wrap-button .plus-head .txt {
    background: url(../img/ico_plus_banner_sp.png) top center/30% no-repeat;
    display: inline-block;
    font-size: 1.333vw;
    padding: 3.4em 0 6.1em;
    position: relative;
    text-align: center
  }
  .widget .wrap-button .plus-head .txt::before {
    background: url(../img/ico_plus_banner_ava_01.png) center center/contain no-repeat;
    height: 10.9em;
    left: -4.6em;
    top: 60%;
    width: 8em
  }
  .widget .wrap-button .plus-head .txt::after {
    background: url(../img/ico_plus_banner_ava_02.png) center center/contain no-repeat;
    height: 8.7em;
    right: -4.1em;
    top: 65%;
    width: 7.1em
  }
  .widget .wrap-button .plus-head .txt .fs40 {
    font-size: 6.667vw;
    font-weight: 600;
    line-height: 1.3;
    margin: 0;
    text-align: center
  }
  .widget .wrap-button .plus-head .txt .fs12 {
    font-size: 2.933vw;
    margin-top: .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: .364em;
    padding: .9em 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 .364em 0 0 #026f30
  }
  .list-button .button.red {
    background-image: linear-gradient(to bottom, #fe5050, #ea1d1c);
    box-shadow: 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: .3em
  }
  .slide .item .head > h3, .slide .item .point p.head .pt {
    background: #2c893a;
    color: #fff;
    display: inline-block;
    width: 100%
  }
  .slide .item .head > h3 {
    border-radius: 1.8rem;
    font-size: 2.2em;
    font-weight: 600;
    max-width: 6.818em;
    text-align: center
  }
  .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: .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: .765em;
    font-size: 4.533vw;
    line-height: 1;
    max-width: 7.647em;
    padding: .4em 0 .15em
  }
  .slide .item .desc {
    margin-top: .776em
  }
  .slide .item01 .photo {
    margin: 1.75em auto 0;
    width: calc(570 / 650 * 100%)
  }
  .slide .item02 .photo {
    margin: .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
  }
  .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: .444em;
    max-width: 5.091em;
    padding: .222em 0 .111em;
    text-align: center
  }
  .slide .item .point p.head > * {
    vertical-align: middle
  }
  .slide .item .point p.des {
    font-size: 3.2vw;
    margin-top: .45em
  }
  .slide .item .point p.des > span {
    font-size: .7em;
    vertical-align: 27%
  }
  .slide .item .note {
    margin: .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: .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) {
  .slide .item .head > h3 {
    position: absolute;
    max-width: 30rem;
    width: 100%;
    background: #009944;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    color: #fff;
    font-size: 2.222rem;
    font-weight: bold;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    text-align: center
  }
  .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: .7
  }
  .hub_convertion_fixed {
    background-color: rgba(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: .9
  }
  #pageTop {
    cursor: pointer;
    position: fixed;
    bottom: 16em;
    right: 5em;
    width: 8.2em
  }
  .hub {
    background: #094;
    padding: 1.7em 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: .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: .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: .4em;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -.35em) rotate(135deg);
    width: .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: 4em 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: 5.5em
  }
  .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: .6em 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: .846em
  }
  .widget .box p.txt.fs32 {
    font-size: 3.2em;
    font-weight: 600;
    line-height: 1.34;
    margin-top: .13em
  }
  .widget .box p.txt.fs20 {
    font-size: 2em;
    font-weight: 600;
    margin-top: .85em
  }
  .widget .box p.txt.fs20 .fs12 {
    display: inherit;
    font-size: .6em;
    margin-top: .25em
  }
  .widget .box p.txt.underline {
    font-size: 10em;
    font-weight: 600;
    line-height: 1;
    margin-top: .05em
  }
  .widget .box p.txt.underline > span {
    display: inline-block;
    padding: 0 .12em;
    position: relative;
    z-index: 0
  }
  .widget .box p.txt.underline > span::before {
    background: #fff062;
    content: "";
    height: .22em;
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    z-index: -1
  }
  .widget .box p.txt.underline > span .small {
    display: inline-block;
    font-size: .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: .55em 3em .292em;
    position: relative;
    text-align: center
  }
  .accordion.active .accordion-head h3::before {
    display: none
  }
  .accordion .accordion-head h3::after {
    background: #fff;
    height: .167em;
    right: .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: .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: 600;
    line-height: 1.3;
    padding: .35em 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: .583em;
    text-align: center
  }
  .list > .row:nth-child(n+2), .slide .item .point, .widget .box .button, .wrap-slide .item:nth-child(n+2) {
    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: -.03em;
    line-height: 1.5
  }
  .list > .row .list-text .fs18 {
    font-size: .692em;
    letter-spacing: -.08em
  }
  .list > .row .list-text .note {
    font-size: 1.2em;
    margin-top: .35em
  }
  .list-button .button, .widget .box .button a {
    display: block;
    font-weight: 600;
    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: .545em 1.818em .409em .455em;
    position: relative
  }
  .widget .box .button a::before {
    content: "";
    display: inline-block;
    height: .545em;
    position: absolute;
    right: 1.364em;
    top: 50%;
    transform: translate(0, -50%) rotate(45deg);
    width: .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: .7em 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: 4em 0;
    text-align: center
  }
  .widget .wrap-button .plus-head .txt {
    background: url(../img/ico_plus_banner.png) top center no-repeat;
    display: inline-block;
    padding: 3.4em 0 4.8em;
    position: relative;
    text-align: center
  }
  .widget .wrap-button .plus-head .txt::before {
    background: url(../img/ico_plus_banner_ava_01.png) center center/contain no-repeat;
    height: 10.9em;
    left: -12.6em;
    top: 37%;
    width: 8em
  }
  .widget .wrap-button .plus-head .txt::after {
    background: url(../img/ico_plus_banner_ava_02.png) center center/contain no-repeat;
    height: 8.7em;
    right: -12.1em;
    top: 42%;
    width: 7.1em
  }
  .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: .4em;
    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: .4em;
    padding: .7em 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 .4em 0 0 #026f30
  }
  .list-button .button.red {
    background-image: linear-gradient(to bottom, #fe5050, #ea1d1c);
    box-shadow: 0 .4em 0 0 #b50909
  }
  .list-button .button .fs24 {
    font-size: 1.2em
  }
  .widget .wrap-button .bnr .fs12 {
    font-size: .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 9.3em
  }
  .wrap-slide .item {
    background: #fff;
    border-radius: 1rem;
    margin: 0 auto;
    max-width: 960px;
    padding: 3em 0 2.6em;
    position: relative;
    width: 100%
  }
  .slide .item {
    height: 480px
  }
  .wrap-slide .item:last-child::after {
    content: none
  }
  .wrap-slide .head > h2 {
    margin: 0 auto;
    max-width: 417px
  }
  .slide .item .desc {
    font-size: 2.2em;
    line-height: 1.5;
    margin-top: 1.636em
  }
  .slide .item .photo {
    margin: 2.3em auto 0;
    width: calc(860 / 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: .818em;
    margin-right: .444em;
    max-width: 5.556em;
    padding: .222em 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: .7em;
    vertical-align: 21%
  }
  .slide .item .note {
    margin: .6em auto 0;
    width: calc(758 / 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: 1em
  }
  .slide .item02 .photo {
    margin: 2.5em auto 0
  }
  .slide .item03 .photo {
    margin: 1.3em auto 0
  }
  .slide .item04 .photo {
    margin: 2.8em auto 0
  }
  .green .box p.txt.fs32 {
    margin-top: .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: .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: .9em
  }
  .orange .accordion .accordion-content > .row:nth-child(n+2), .turquoise .box .icon img, .violet .box p.txt.fs20 {
    margin-top: .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: .23em
  }
  .lightgreen .accordion .accordion-content {
    padding: 3em 4.4em 1.6em
  }
  .pink .box .icon img {
    margin-right: .7em;
    margin-top: .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: .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: -.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: .15em;
    padding-left: 2.6em;
    text-indent: -.8em
  }
  .red .accordion .accordion-content .text p.note {
    margin-top: .333em
  }
  .red .accordion .accordion-content {
    padding: 3em 4.4em 2.2em
  }
  .darkblue .box p.txt.fs20 {
    margin-top: .75em
  }
  .darkblue .accordion .accordion-content .text p.note {
    margin-top: .1em
  }
  .darkblue .accordion .accordion-content {
    padding: 3em 4.4em 2.45em
  }
  .widget-button.last {
    padding: 3.4em 0 4em
  }
}
.slick-next:before, .slick-prev:before {
  background: url(../img/ico_slice.png) no-repeat center;
  content: "";
  height: 8.267vw;
  opacity: 1 !important;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  background-size: 100%
}
.slide .slick-dots {
  box-sizing: border-box;
  font-size: 2.667vw;
  margin: 0 auto;
  bottom: -5.4rem
}
.slick-dots li {
  margin: 0 .5rem
}
.slick-dots li button {
  background: #bcbcbc;
  border-radius: 50%;
  cursor: pointer;
  padding: 0;
  width: 15px;
  height: 15px
}
.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: -5%;
  z-index: 1
}
.slick-next {
  right: -5%
}
.slick-next:before {
  transform: rotateY(180deg)
}
.slick-disabled {
  opacity: 0;
  pointer-events: none
}
@media (min-width:750px) and (max-width:1065px) {
  .slick-prev {
    left: 0
  }
  .slick-next {
    right: 0
  }
}
@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: .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 .5em
  }
  .widget.lightgreen .box .head h2, .widget.orange .box .head h2 {
    line-height: 1.3;
    padding: .64em 0 .2em
  }
  .widget.orange .box p.txt.fs20 {
    margin-top: .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: .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: -.08em;
    line-height: 1.4
  }
  .turquoise .list > .row:nth-child(n+2) {
    margin-top: 1.25em
  }
  .turquoise .list > .row .list-text .fs26 {
    letter-spacing: -.08em
  }
  .widget.violet .box .head h2 {
    line-height: 1.3;
    padding: .477em 0 .32em
  }
  .violet .list > .row .list-text.dot .fs26 {
    letter-spacing: -.07em;
    padding-left: 1em;
    text-indent: -1em
  }
  .violet .list > .row .list-text .note {
    font-size: 2.933vw;
    margin-top: .5em;
    padding-left: 2.6em;
    text-indent: -.8em
  }
  .widget.red .box .head h2 {
    line-height: 1.3;
    padding: .55em 0 .25em
  }
  .red .accordion .accordion-content {
    padding: 2em 1.6em 0
  }
  .red .accordion .accordion-content .cont {
    padding: 1.05em 0 .9em
  }
  .red .list > .row:last-child .list-number span {
    margin-top: -.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: .52em 0 .24em
  }
  .darkblue .accordion .accordion-content .text p.fs26 {
    line-height: 1.3;
    margin-top: .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 .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: .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 {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border-top: 3px solid #fff;
    content: '';
    display: block;
    height: 0;
    margin: auto 0;
    position: absolute;
    bottom: 0;
    right: .8em;
    top: 0;
    transition: transform .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: .06em;
    line-height: 1;
    margin-top: .06em
  }
  .about-section-title.underline > span {
    display: inline-block;
    padding: 0 .12em;
    position: relative;
    z-index: 0
  }
  .about-section-title.underline > span::before {
    background: #fff062;
    content: "";
    height: .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: .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: .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 {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border-top: 3px solid #fff;
    content: '';
    display: block;
    height: 0;
    margin: auto 0;
    position: absolute;
    bottom: 0;
    right: .4em;
    top: 0;
    transition: transform .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: .01em;
    line-height: 1;
    margin-top: .26em
  }
  .about-section-title.underline > span {
    display: inline-block;
    padding: 0 .12em;
    position: relative;
    z-index: 0
  }
  .about-section-title.underline > span::before {
    background: #fff062;
    content: "";
    height: .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: .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: .577em !important
  }
  .convertion-box .mod-ul-notes li {
    font-size: 3.2vw !important
  }
  .last .convertion-box_item_list {
    margin: .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
  }
}
@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: -.04em
  }
}
/*TCV update 20240514*/
@media (min-width:751px) {
  .policy-inner a:hover {
    opacity: .7
  }
}
.policy-wrap01 {
  width: 960px;
  margin: 0 auto;
}
.policy-wrap01 .policy-inner {
  margin: 50px 0;
}
.policy-wrap01 .policy-inner h2 {
  display: flex;
  justify-content: center;
  font-size: 37px;
  font-weight: bold!important;
  color: #019A44;
  margin-bottom: 16px
}
.policy-wrap01 .policy-inner .list-note {
  margin-top: 10px;
  padding-left: 14px
}
.policy-wrap01 .policy-inner .list-note li {
  font-size: 16px;
  line-height: 1.3;
  padding-left: 16px;
  text-indent: -16px
}
.policy-wrap02 .policy-inner {
  margin-top: 30px
}
@media (min-width:751px) and (max-width:1024px) {
  .policy-wrap01 {
    width: 95%
  }
  .policy-wrap01 .policy-inner h2 {
    font-size: 30px
  }
}
@media screen and (max-width:750px) {
  .policy-wrap01 {
    width: calc(685 / 750 * 100%)
  }
  .policy-wrap01 .policy-inner {
    margin: 6.67vw 0;
  }
  .policy-wrap01 .policy-inner h2 {
    flex-direction: column;
    align-items: center;
    font-size: 4.8vw;
    margin-bottom: 2.13vw;
    line-height: 1.45
  }
  .policy-wrap01 .policy-inner h2 .fs-large {
    font-size: 6vw
  }
  .policy-wrap01 .policy-inner .list-note {
    margin-top: 2vw;
    padding-left: 0;
  }
  .policy-wrap01 .policy-inner .list-note li {
    font-size: 2.266667vw;
    padding-left: 8px;
    text-indent: -8px;
  }
  .policy-wrap02 .policy-inner {
    margin: 3.3vw 0;
  }
  .convertion-box_item_wrap {
    display: flex;
    flex-wrap: wrap;
  }
  .convertion-section .convertion-box_item {
    width: 100%;
  }
  .convertion-section .convertion-box_item:nth-child(1) {
    order: 1;
  }
  .convertion-section .convertion-box_item:nth-child(2) {
    order: 2;
    margin-top: .6em;
  }
  .convertion-section .convertion-box_item:nth-child(3) {
    order: 3;
    margin-top: .6em
  }
}

/*TCV update 202501*/
.new_benefits_wrap {
  background-color: #ffffe3;
}
.new_benefits .ttl {
  text-align: center;
}
.new_benefits .ttl > span {
  position: relative;
}
.txt_yellow {
  color: #fff000;
}
.txt_green {
  color: #44af35;
}
.txt_green01 {
  color: #009844;
}
.txt_orange {
  color: #e45f00;
}
.bg_yellow {
  display: inline;
  background: linear-gradient(transparent 60%, #fff062 0, #fff062 100%);
}
.benefits_area {
  background: #ffffe3 url('../img/benefits_bg_sp.jpg') top center no-repeat;
}
.benefits_area .ttl {
  background-color: #009844;
  text-align: center;
  color: #fff;
  font-weight: 600;
  position: relative;
}
.benefits_area .ttl .ttl_outer,
.benefits_area .ttl .ttl_inner {
  position: relative;
  display: inline-block;
}
.benefits_area .ttl::before,
.benefits_area .ttl .ttl_outer::before,
.benefits_area .ttl .ttl_inner::before,
.benefits_area .ttl .ttl_inner::after {
  content: '';
  position: absolute;
}
.box_planning .benefits_list03 li {
  position: relative;
}
.box_planning .benefits_list03 .txt,
.box_planning .benefits_list03 .note {
  position: absolute;
}
.flex_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.box_planning .ttl01 {
  text-align: center;
  font-weight: 600;
  line-height: 1;
}
.box_planning .ttl01 .img {
  display: block;
  margin: 0 auto;
}
.box_planning > .txt {
  text-align: center;
  font-weight: 600;
  line-height: 1.54;
}
.box_planning .link_btn a {
  color: #fff;
  display: block;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}
.box_planning .link_box .link_txt a {
  color: #0018ff;
  font-weight: 600;
  text-decoration: underline;
}
sup {
  vertical-align: super;
  font-size: smaller;
}
@media (min-width:751px) {
  .benefits_area {
    background:  url('../img/benefits_bg.jpg') top center no-repeat, linear-gradient(#defdda 478px, #ffffe3 478px);
  }
  .benefits_area .ttl {
    font-size: 3em;
    padding: 0.7em;
  }
  .benefits_area .ttl .ttl_outer {
    padding: 0 0.9em 0 6.1em;
  }
  .benefits_area .ttl .ttl_inner {
    padding: 0 1.5em;
  }
  .benefits_area .ttl::before {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0.3333334em 0.5em 0 0.5em;
    border-color: #009844 transparent transparent transparent;
    bottom: -0.333334em;
    left: 50%;
    transform: translateX(-50%);
  }
  .benefits_area .ttl .ttl_outer::before {
    width: 2.166667em;
    height: 2.433334em;
    background: url('../img/benefits_ico01.png') center/100% no-repeat;
    top: -0.4em;
    left: 3.6em;
  }
  .benefits_area .ttl .ttl_inner::before,
  .benefits_area .ttl .ttl_inner::after {
    width: 1.133334em;
    height: 1.333334em;
  }
  .benefits_area .ttl .ttl_inner::before {
    background: url('../img/benefits_ico02.png') center/100% no-repeat;
    top: 0.1em;
    left: 0;
  }
  .benefits_area .ttl .ttl_inner::after {
    background: url('../img/benefits_ico03.png') center/100% no-repeat;
    top: 0.1em;
    right: 0;
  }
  .benefits_content {
    margin-top: 3em;
  }
  .benefits_inner {
    margin-left: auto;
    margin-right: auto;
    max-width: 860px;
    padding-left: 2em;
    padding-right: 2em;
  }
  .benefits_content .img01 {
    width: calc(624 / 860 * 100%);
    margin: 0 auto;
  }
  .benefits_area .img_box {
    display: flex;
    justify-content: space-between;
    width: calc(602 / 860 * 100%);
    margin: 2.9em auto 0;
  }
  .benefits_area .img_box > * {
    width: calc(286 / 602 * 100%);
  }
  .life_planning {
    margin-top: 15em;
  }
  .box_planning .ttl01 {
    font-size: 2.6em;
  }
  .box_planning .ttl01 .img {
    width: calc(552 / 860 * 100%);
  }
  .box_planning .ttl01 .txt {
    display: inline-block;
    padding: 0 3.6rem;
    position: relative;
  }
  .box_planning .ttl01 .txt::before,
  .box_planning .ttl01 .txt::after {
    content: '';
    position: absolute;
    width: 2.3rem;
    height: 2.9rem;
    top: 0;
  }
  .box_planning .ttl01 .txt::before {
    background: url('../img/benefits_ico04.png') center/100% no-repeat;
    left: 0;
  }
  .box_planning .ttl01 .txt::after {
    background: url('../img/benefits_ico05.png') center/100% no-repeat;
    right: 0;
  }
  .box_planning > .txt {
    font-size: 2.6em;
    margin-top: 0.9rem;
  }
  .box_planning .ttl02 {
    width: calc(720 / 860 * 100%);
    margin: 3.3rem auto 0;
  }
  .box_planning .ttl02.ttl03 {
    margin-top: 5.2rem;
  }
  .box_planning .benefits_list {
    margin-top: 2rem;
  }
  .box_planning .benefits_list li {
    width: calc(420 / 860 * 100%);
    font-size: 1em;
  }
  .box_planning .benefits_list li:nth-child(n+3) {
    margin-top: 2rem;
  }
  .box_planning .benefits_list03 .txt {
    font-size: 2em;
    font-weight: 600;
    width: 80%;
    left: 10%;
    bottom: 8.833%;
    line-height: 1.8;
    margin: 0;
  }
  .box_planning .benefits_list03 .note {
    font-size: 1.2em;
    width: 80%;
    left: 10%;
    bottom: 4.104%;
    margin: 0;
  }
  .box_planning .link_box {
    margin-top: 4rem;
  }
  .box_planning .link_box .link_btn {
    width: calc(584 / 860 * 100%);
    margin: 0 auto;
  }
  .box_planning .link_btn a {
    background-image: linear-gradient(to bottom, #fe5050, #ea1d1c);
    box-shadow: 0 .4em 0 0 #b50909;
    border-radius: 15px;
    font-size: 2em;
    margin-bottom: .4em;
    padding: .7em 0 .5em;
  }
  .box_planning .link_btn a .fs24 {
    font-size: 1.2em;
  }
  .box_planning .link_btn a:hover {
    opacity: 0.9;
  }
  .box_planning .link_box .link_txt {
    text-align: center;
    margin-top: 2rem;
  }
  .box_planning .link_box .link_txt a {
    font-size: 2em;
  }
  .box_planning .note_list {
    margin: 2.7em auto 0;
    width: calc(690 / 860* 100%);
  }
  .box_planning .note_list li {
    font-size: 1.2em;
    line-height: 1.5;
  }
  .insurance_planning {
    margin-top: 6em;
  }
  .box_planning .benefits_list.benefits_list03 {
    margin-top: 3.1em;
  }
  .benefits_area .box_bnr {
    margin-top: 3em;
    padding-bottom: 4em;
  }
}

@media screen and (max-width: 750px) {
  .benefits_area {
    background: #ffffe3 url('../img/benefits_bg_sp.jpg') top center/100% auto no-repeat;
  }
  .benefits_area .ttl {
    font-size: 5.333vw;
    padding: 1em 0.5em 0.9em;
    margin: 0;
    line-height: 1.3;
  }
  .benefits_area .ttl .ttl_outer {
    padding: 0 0 0 1.8em;
  }
  .benefits_area .ttl .ttl_inner {
    padding: 0 8.533vw 0 13.333vw;
  }
  .benefits_area .ttl::before {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0.7em 1em 0 1em;
    border-color: #009844 transparent transparent transparent;
    bottom: -0.65em;
    left: 50%;
    transform: translateX(-50%);
  }
  .benefits_area .ttl .ttl_outer::before {
    width: 9.467vw;
    height: 11.067vw;
    background: url('../img/benefits_ico02_sp.png') center/100% no-repeat;
    top: 1.6vw;
    left: -2.4vw;
  }
  .benefits_area .ttl .ttl_inner::before {
    width: 13.467vw;
    height: 15.067vw;
    background: url('../img/benefits_ico01_sp.png') center/100% no-repeat;
    top: -0.8vw;
    left: -2.133vw;
  }
  .benefits_area .ttl .ttl_inner::after {
    width: 9.467vw;
    height: 11.067vw;
    background: url('../img/benefits_ico03_sp.png') center/100% no-repeat;
    top: 1.6vw;
    right: -2.4vw;
  }
  .benefits_content {
    margin-top: 2.3em;
  }
  .benefits_inner {
    margin-left: 1em;
    margin-right: 1em;
  }
  .benefits_content .img01 {
    width: calc(682 / 710 * 100%);
    margin: 0 auto;
  }
  .benefits_area .img_box {
    display: flex;
    justify-content: space-between;
    width: calc(650 / 710 * 100%);
    margin: 2em auto 0;
  }
  .benefits_area .img_box > * {
    width: calc(312 / 650 * 100%);
  }
  .life_planning {
    margin-top: 8.3em;
  }
  .box_planning .ttl01 {
    font-size: 4.533vw;
    margin: 0;
  }
  .box_planning .ttl01 .img {
    width: calc(690 / 710 * 100%);
    margin-top: 0.42em;
  }
  .box_planning .ttl01 .txt {
    display: inline-block;
    padding: 0 1.12em;
    position: relative;
  }
  .box_planning .ttl01 .txt::before,
  .box_planning .ttl01 .txt::after {
    content: '';
    position: absolute;
    width: 0.824em;
    height: 1.06em;
    top: 0;
  }
  .box_planning .ttl01 .txt::before {
    background: url('../img/benefits_ico04_sp.png') center/100% no-repeat;
    left: 0;
  }
  .box_planning .ttl01 .txt::after {
    background: url('../img/benefits_ico05_sp.png') center/100% no-repeat;
    right: 0;
  }
  .box_planning > .txt {
    font-size: 4vw;
    margin-top: 0.8em;
  }
  .box_planning .ttl02 {
    width: calc(677 / 710* 100%);
    margin: 0.924em auto 0;
  }
  .box_planning .ttl02.ttl03 {
    margin-top: 2.27em;
  }
  .box_planning .benefits_list {
    margin: 0.9em auto 0;
    width: calc(610 / 710* 100%);
  }
  .box_planning .benefits_list .slick-track {
    display: block !important;
  }
  .box_planning .benefits_list .slick-next,
  .box_planning .benefits_list .slick-prev,
  .box_planning .benefits_list .slick-next:before,
  .box_planning .benefits_list .slick-prev:before {
    width: 3.6vw;
    height: 6.667vw;
  }
  .box_planning .benefits_list .slick-prev {
    left: -2.6em;
  }
  .box_planning .benefits_list .slick-next {
    right: -2.6em;
  }
  .box_planning .benefits_list .slick-dots {
    bottom: -3.1em;
  }
  .box_planning .link_box {
    margin-top: 5.9em;
  }
  .box_planning .link_box .link_btn {
    width: 100%;
  }
  .box_planning .link_btn a {
    background-image: linear-gradient(to bottom, #fe5050, #ea1d1c);
    box-shadow: 0 .364em 0 0 #b50909;
    border-radius: 2vw;
    font-size: 3.467vw;
    margin-bottom: .4em;
    padding: 0.54em 0 0.23em;
  }
  .box_planning .link_btn a .fs24 {
    font-size: 4.8vw;
    display: inline-block;
    margin-top: -0.167em;
  }
  .box_planning .link_box .link_txt {
    text-align: center;
    margin-top: 2em;
  }
  .box_planning .link_box .link_txt a {
    font-size: 3.733vw;
  }
  .box_planning .note_list {
    margin: 2.7em auto 0;
    width: calc(650 / 710* 100%);
  }
  .box_planning .note_list li {
    font-size: 2.933vw;
    line-height: 1.45;
    padding-left: 1.1em;
    text-indent: -1.1em;
  }
  .insurance_planning {
    margin-top: 4.5em;
    position: relative;
  }
  .box_planning .benefits_list.benefits_list03 {
    margin-top: 2.5em;
    width: calc(650 / 710* 100%);
  }
  .box_planning .benefits_list03 .txt {
    font-size: 3.2vw;
    font-weight: 600;
    width: 87.692%;
    left: 6.154%;
    bottom: 5.231%;
    line-height: 1.5;
    margin: 0;
  }
  .box_planning .benefits_list03 li:nth-child(2) .txt {
    bottom: 11.218%;
  }
  .box_planning .benefits_list03 .note {
    font-size: 2.933vw;
    width: 87.692%;
    left: 6.154%;
    bottom: 4.104%;
    margin: 0;
    text-align: center;
  }
  .box_planning .benefits_list.benefits_list03 li:nth-child(n+2) {
    margin-top: 0.923em;
  }
  .box_planning.insurance_planning .link_box {
    margin-top: 2.5em;
  }
  .benefits_area .box_bnr {
    margin: 2.3em auto 0;
    padding-bottom: 2.3em;
    width: calc(650 / 710* 100%);
  }
}

.word_break_auto_phrase {
  word-break: auto-phrase;
}

/* .tab-hub */
.tab-hub-head{
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
}
.tab-hub-head::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: #999999;
}
.tab-hub-head .item {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-style: solid;
  border-color: #999999;
  box-sizing: border-box;
}
.tab-hub-head .item span {
  display: block;
}
.tab-hub-head .item.active {
  border-bottom: none;
}
.tab-hub-head .item.head01 {
  background: #2a9443;
  color: #fff;
}
.tab-hub-head .c1 {
  color: #98f0ba;
}
.tab-hub-head .c2 {
  color: #ff5831;
}
.tab-hub-head .item.head02 {
  background: #f8f3ad;
}
.tab-hub-head a {
  color: inherit;
  text-decoration: none;
}
.tab-hub .tab_hosyo .hub {
  background: #2a9443;
}
.tab-hub .tab-hub-content .hub .hub_ttl > span{
  color: #fff;
  font-weight: bold;
  line-height: 1.227;
  display: inline-block;
}
.tab-hub .tab_chochiku .hub {
  background: #f8f3ad;
}
.tab-hub .tab-hub-content .tab_chochiku .hub .hub_ttl > span{
  color: #ff5831;
  border-bottom-color: rgba(255,88,49,.5);
}
@media (min-width: 751px){
  .tab-hub{
    margin-top: 38px;
  }
  .tab-hub-head{
    padding: 0 calc(2em - 5px);
  }
  .tab-hub-head a:hover > * {
    opacity: 0.7;
  }
  .tab-hub-head .item{
    margin: 0 5px;
    font-size: 3.2em;
    border-radius: 25px 25px 0 0;
    padding: 8px 0 6px;
    width: 440px;
    border-width: 4px;
    line-height: 1.25;
  }
  .tab-hub-head::before{
    height: 4px;
  }
  .tab-hub .tab-hub-content .hub .hub_ttl{
    text-align: center;
    margin: 0px 0 3em;
  }
  .tab-hub .tab-hub-content .hub .hub_ttl > span{
    font-size: 3.8em;
    line-height: 1.184;
    padding: 0 1.5em 10px;
    border-bottom: 9px dotted rgba(152, 240, 186, .5);
  }
}

@media (min-width: 751px) and (max-width: 1024px) {
  .tab-hub-head .item{
    font-size: 3.32vw;
  }
  .tab-hub .tab-hub-content .hub .hub_ttl > span{
    font-size: 4.297vw;
    border-bottom-width: 0.977vw;
  }
}

@media (max-width: 750px){
  .tab-hub{
    margin-top: 6.8vw;
  }
  .tab-hub-head{
    padding: 0 1em;
    justify-content: space-between;
  }
  .tab-hub-head .item{
    font-size: 5.067vw;
    border-radius: 15px 15px 0 0;
    padding: 1.5vw 0;
    width: 49.296%;
    border-width: 2px;
    line-height: 1.368;
  }
  .tab-hub-head .item span{
    margin-top: .5vw;
  }
  .tab-hub-head::before{
    height: 2px;
  }
  .tab-hub .tab-hub-content .hub .hub_ttl{
    text-align: center;
    margin: -.5em 0 .5em;
  }
  .tab-hub .tab-hub-content .hub .hub_ttl > span{
    font-size: 6.133vw;
    padding: 0 0 3.5vw;
    display: block;
    background: url('../img/tab_dot01_sp.png') no-repeat center bottom / auto 1.333vw;
  }
}