@charset 'UTF-8';
@import url(//fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap&subset=japanese);


html {
  -webkit-text-size-adjust: 100%;
  line-height: 1.15;
}

/* Sections
----------------------------------------------- */
body {
  margin: 0;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

/* Grouping content
----------------------------------------------- */
hr {
  overflow: visible;
  box-sizing: content-box;
  height: 0;
}

pre {
  font-size: 1em;
  font-family: monospace, monospace;
}

/* Text-level semantics
----------------------------------------------- */
a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-size: 1em;
  font-family: monospace, monospace;
}

small {
  font-size: 100%;
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/* Embedded content
----------------------------------------------- */
img {
  border-style: none;
}

/* Forms
----------------------------------------------- */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-size: 100%;
  font-family: inherit;
  line-height: 1.15;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: .35em .75em .625em;
}

legend {
  display: table;
  box-sizing: border-box;
  padding: 0;
  max-width: 100%;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}

[type='search'] {
  outline-offset: -2px;
  -webkit-appearance: textfield;
}

[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
----------------------------------------------- */
details {
  display: block;
}

summary {
  display: list-item;
}

/* Misc
----------------------------------------------- */
template {
  display: none;
}

[hidden] {
  display: none;
}

/* ----------------------------------------------------------------
    Base
----------------------------------------------------------------- */
:root {
  font-size: 62.5%;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
li {
  margin: 0;
  padding: 0;
}

main {
  display: block;
}

body {
  background: #fff;
  color: #333;
  font-weight: 400;
  font-size: 1.5rem;
  font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic Pro', Meiryo, sans-serif;
  line-height: 1.73333;
}

@media only screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
    line-height: 1.78571;
  }
}

a {
  color: #069;
  text-decoration: underline;
}

a[class] {
  text-decoration: none;
}

sup a {
  color: inherit;
  text-decoration: none;
}

a:hover,
a:active,
a:focus {
  text-decoration: none;
}

button {
  cursor: pointer;
}

em {
  font-weight: 700;
  font-style: normal;
}

strong {
  color: #e0130e;
  font-weight: 700;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

p,
ul,
ol,
dl {
  margin: 0 0 28px;
  padding: 0;
}

p:not([class]) + p:not([class]) {
  margin-top: -10px;
}

ul[class],
ol[class] {
  list-style: none;
}

dfn {
  font-style: normal;
}

dd {
  margin: 0;
}

table {
  border-collapse: collapse;
}

blockquote {
  margin: 0;
}

iframe {
  margin: 0;
  padding: 0;
  border: 0;
}

input,
select {
  padding: 1px;
  font-size: 1.6rem;
}

fieldset {
  margin: 0;
  border: 0;
}

/* ----------------------------------------------------------------
    Centering Content
----------------------------------------------------------------- */

.topicpath_inner,
.t-content-inner-02,
.content-inner {
  margin: 0 auto;
  max-width: 980px;
}

@media only screen and (max-width: 1020px) {
  .topicpath_inner,
  .t-content-inner-02,
  .content-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}

/* ----------------------------------------------------------------
    Pseudo element (Block)
----------------------------------------------------------------- */
.h-link-login > a::before,
.h-link-login > a::after,
.h-link-login > a > span::before,
.h-menu_btn > button::before,
.h-menu_btn > button::after,
.h-menu_btn-inner::before,
.h-menu_btn-inner > span::before,
.h-menu_btn-inner > span::after,
.global-nav_inner > li > a::before,
.global-nav_inner > li > a::after,
.topicpath_list > li:not(:first-child)::before,
.topicpath_list > li:first-child > a::before,
.topicpath_list > li:first-child > a::after,
.topicpath_list > li:first-child > a > span::before,
.topicpath_list > li:first-child > a > span::after,
.f-nav-top > span > a::before,
.f-panel_txt > b > span::before,
.f-panel_txt > b > span::after,
.f-panel_btn > span > span::before,
.hdg-l4::before,
.txt-answer::before,
.list > li::before,
.list-number > li::before,
.list-desc > dd::before,
.list-faq-02_mark::before,
.list-faq-02_mark::after,
.list-check > li::before,
.list-check > li::after,
.link::before,
.link-list > li > a::before,
.link-list-02 > li > a::before,
.link-back > a::before,
.link-list-03_title::before,
.link-list-04_item:nth-child(2n+1):not(:first-child) > a::before,
.link-list-04_item:first-child:not(:last-child) > a::before,
.link-list-04_title::before,
.icon-mark::before,
.icon-label-02::before,
.nav-toc > li > a::before,
.panel-plan_col::after,
.panel-plan_list-catch::before,
.panel-plan_list-catch::after,
.panel-plan_list-catch_item::before,
.panel-plan_list-desc_inner:not(.-em)::before,
.panel-card::before,
.panel-card::after,
.panel-card_inner::before,
.panel-card_link_txt > span::before,
.panel-card-02_link > span::before,
.panel-card-multipurpose .panel-card-multipurpose_img::before,
.media-lyt-02::after,
.toggle_hdg::after,
.toggle_btn::before,
.toggle_btn::after,
.toggle_content::after,
.tab_list > li > a > span::before,
.tab_list > li > a::before,
.tab_list > li > a::after,
.tab_selectbox::before,
.modal_btn-close > button::before,
.modal_btn-close > button::after,
.carousel-slider_player > button::before,
.carousel-slider_player > button::after,
.carousel-slider_player > button > span::before,
.carousel-slider_prev > button::before,
.carousel-slider_next > button::before,
.uni-hdg-l2-02::before,
.uni-hdg-l2-02 > span::before,
.uni-hdg-l2-02 > span::after,
.uni-list-desc_inner > dt::before,
.uni-link-bnr > a::after,
.uni-nav-tab_item::before,
.t-content-fluid.-enterprise::before,
.t-content-fluid.-enterprise::after,
.t-content-fluid-04_body::before,
.t-lyt-point_hdg > span::before,
.t-lyt-point_hdg > span::after,
.t-lyt-point_list > li:not(:first-child)::before,
.t-lyt-hero-02_list > li::before,
.t-panel-02_hdg > span::before,
.t-panel-02_hdg > span::after,
.t-nav-toc_mark::before,
.t-nav-toc_mark::after,
.t-nav-toc_txt::before,
.t-nav-toc_img::before,
.t-txt-info_sub::before,
.content-fluid-hdg.-lower > .content-inner::before {
  display: block;
  content: '';
}

/* ----------------------------------------------------------------
    Header (.header and .h-*)
----------------------------------------------------------------- */
/* .header
----------------------------------------------- */
.header {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}

/* .h-inner
----------------------------------------------- */
.h-inner {
  position: fixed;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: stretch;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 13px 40px 13px 0;
  max-width: 1200px;
  width: 100%;
  background: rgba(255, 255, 255, .7);
  box-shadow: 0 0 4.8px .3px rgba(102, 102, 102, .3);
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.is-compact .h-inner {
  padding: 10px 40px 10px 0;
  background: #fff;
}

.h-inner.-no-menu {
  position: absolute;
  background: #fff;
}

.h-inner.-no-menu::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 58px;
  content: '';
}

@media only screen and (max-width: 1200px) {
  .h-inner {
    justify-content: stretch;
    align-items: flex-start;
    flex-direction: column;
  }
  .h-inner.-no-menu {
    justify-content: flex-start;
    flex-direction: row;
  }
}

@media only screen and (max-width: 767px) {
  .h-inner {
    align-items: center;
    flex-direction: row;
    padding: 8px 20px;
    background: #fff;
  }
  .h-inner.-no-menu::before {
    min-height: 35px;
  }
  .no-js .h-inner {
    position: static;
    flex-direction: column;
  }
}

/* .h-logo
----------------------------------------------- */
.h-logo {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 240px;
  margin: -13px 0;
  background: #fff;
}

.h-logo_item {
  display: flex;
  align-items: center;
  padding: 0 10px;
  width: 100%;
  height: 84px;
  font-size: 1.5rem;
}

.h-logo_item > a {
  display: block;
  width: 100%;
  color: inherit;
}

.h-logo_item > a > img {
  max-width: none;
  width: 100%;
  vertical-align: middle;
}

.h-logo_item > img {
  width: 160px;
  height: 23px;
}

.is-compact .h-logo {
  margin: -10px 0;
}

@media only screen and (max-width: 1200px) {
  .h-logo {
    flex: 0 0 auto;
    margin-bottom: 10px;
    padding: 15px 20px;
  }
}

@media only screen and (max-width: 767px) {
  .h-logo {
    justify-content: flex-start;
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 0;
    margin: 0;
    padding: 0;
  }
  .h-logo_item {
    width: 110px;
    height: 35px;
  }
  .h-logo_item > img {
    width: 110px;
    height: 16px;
  }
  .no-js .h-logo {
    flex: 0 0 auto;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

/* .h-group
----------------------------------------------- */
.h-group {
  display: flex;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 0 0 0 35px;
}

@media only screen and (max-width: 1200px) {
  .h-group {
    flex: 0 0 auto;
    padding: 0 20px;
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .h-group {
    flex-direction: row-reverse;
    padding: 0;
    width: auto;
  }
  .no-js .h-group {
    flex-direction: column;
    width: 100%;
  }
}

/* .h-link-login
----------------------------------------------- */
.h-link-login {
  margin: 0 0 0 30px;
  font-weight: 500;
}

.h-link-login > a {
  color: #77DD77;
  text-decoration: none;
}

.h-link-login > a > span {
  position: relative;
  padding: 0 0 0 23px;
}

.h-link-login > a > span::before {
  position: absolute;
  top: .35em;
  left: 0;
  width: 15px;
  height: 14px;
}

.h-link-login > a:hover,
.h-link-login > a:active,
.h-link-login > a:focus {
  text-decoration: underline;
}

@media only screen and (max-width: 1200px) {
  .h-link-login {
    margin-left: 2vw;
  }
}

@media only screen and (max-width: 767px) {
  .h-link-login {
    margin: 0;
    border-bottom: 1px solid #e1e1e1;
    font-size: 1.5rem;
  }
  .h-link-login > a {
    position: relative;
    display: block;
    padding: 8px 40px 10px 30px;
    background: #f6f6f6;
  }
  .h-link-login > a::before,
  .h-link-login > a::after {
    position: absolute;
    top: 50%;
    right: 27px;
    width: 7px;
    height: 1px;
    border-radius: 2px;
    background: #77DD77;
  }
  .h-link-login > a::before {
    transform: translateY(-50%) rotate(30deg);
    transform-origin: 100% 100%;
  }
  .h-link-login > a::after {
    transform: translateY(-50%) rotate(-30deg);
    transform-origin: 100% 0;
  }
}

/* .h-btn-primary
----------------------------------------------- */
.h-btn-primary {
  flex-shrink: 0;
  margin: 0;
  text-align: center;
  font-weight: 500;
  font-size: 1.9rem;
  line-height: 1;
}

.h-btn-primary > a {
  display: block;
  box-sizing: border-box;
  padding: 18px 10px 17px;
  min-width: 160px;
  border: 2px solid #FFA61B;
  border-radius: 5px;
  background: #FFA61B;
  color: #fff;
  text-decoration: none;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  font-size: 16px;
}

.h-btn-primary > a:hover,
.h-btn-primary > a:active,
.h-btn-primary > a:focus {
  background: #fff;
  color: #FFA61B;
}

.is-compact .h-btn-primary > a {
  padding-top: 11px;
  padding-bottom: 10px;
  min-width: 150px;
}

@media only screen and (max-width: 767px) {
  .h-btn-primary {
    font-size: 1.4rem;
  }
  .h-btn-primary > a {
    padding: 8px 0 9px;
    min-width: 110px;
    border-radius: 4px;
  }
}

/* .h-menu
----------------------------------------------- */
.h-menu {
  display: flex;
  align-items: center;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 0 35px 0 0;
}

.h-menu_content {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
}

.h-menu_inner {
  display: flex;
}

.h-menu_btn {
  position: relative;
  width: 24px;
  height: 20px;
}

.h-menu_btn > button {
  display: block;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
}

.h-menu_btn > button::before,
.h-menu_btn > button::after {
  position: absolute;
  top: 9px;
  left: 50%;
  margin-left: -12.5px;
  width: 25px;
  height: 3px;
  background: #ccc;
  opacity: 0;
  transition: all .3s cubic-bezier(.4, 0, .2, 1);
}

.h-menu_btn > button::before {
  transform: scale(.4) rotate(45deg);
}

.h-menu_btn > button::after {
  transform: scale(.4) rotate(-45deg);
}

.h-menu_btn-inner,
.h-menu_btn-inner > span {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  color: transparent;
}

.h-menu_btn-inner::before,
.h-menu_btn-inner > span::before,
.h-menu_btn-inner > span::after {
  position: absolute;
  left: 50%;
  margin-left: -12px;
  width: 24px;
  height: 3px;
  background: #77DD77;
  transition: all .3s cubic-bezier(.4, 0, .2, 1);
}

.h-menu_btn-inner::before {
  top: 0;
}

.h-menu_btn-inner > span::before {
  top: 9px;
}

.h-menu_btn-inner > span::after {
  top: 18px;
}

.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true']::before,
.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true']::after {
  opacity: 1;
  transform: scale(1);
}

.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true']::before {
  transform: scale(1) rotate(45deg);
}

.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true']::after {
  transform: scale(1) rotate(-45deg);
}

.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true'] .h-menu_btn-inner::before,
.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true'] .h-menu_btn-inner > span::before,
.h-menu:not(.is-collapse) > .h-menu_btn > [aria-expanded='true'] .h-menu_btn-inner > span::after {
  opacity: 0;
  transform: scale(.4);
}

@media only screen and (max-width: 1200px) {
  .h-menu {
    padding-right: 2vw;
  }
}

@media only screen and (max-width: 767px) {
  .h-menu {
    flex: 0 0 25px;
    margin: 0 0 0 18px;
    padding: 0;
  }
  .h-menu_content {
    top: 51px;
    right: 0;
    bottom: 0;
    left: 0;
    height: calc(100% - 51px);
  }
  .h-menu_inner {
    flex-direction: column;
    background: #fff;
  }
  .h-menu_btn-primary {
    position: absolute;
    top: 12px;
    right: 50px;
    margin: 0;
  }
  .h-menu_btn-primary > a {
    padding: 5px;
    max-width: none;
    font-size: 1.1rem;
  }
  .no-js .h-menu {
    flex: 0 0 auto;
  }
}

/* ----------------------------------------------------------------
    Global Nav (.global-nav[-*])
----------------------------------------------------------------- */
/* .global-nav
----------------------------------------------- */
.global-nav {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
}

.global-nav_inner {
  display: flex;
  justify-content: space-between;
  margin: 0;
}

.global-nav_inner > li:first-child {
  margin-left: 0;
}

.global-nav_inner > li > a {
	position: relative;
    display: block;
    padding: 0 0 0px;
    color: #000;
    text-align: center;
    text-decoration: none;
    transition: color .2s cubic-bezier(.4, 0, .2, 1);
    font-size: 14px;
}

.global-nav_inner > li > a::before {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 0;
  background: #77DD77;
  transition: height .1s cubic-bezier(.4, 0, .2, 1);
}

.global-nav_inner > li > a > b {
  font-weight: inherit;
}

.global-nav_inner > .is-current > a,
.global-nav_inner > li > a:hover,
.global-nav_inner > li > a:active,
.global-nav_inner > li > a:focus {
  color: #77DD77;
}

.global-nav_inner > .is-current > a::before,
.global-nav_inner > li > a:hover::before,
.global-nav_inner > li > a:active::before,
.global-nav_inner > li > a:focus::before {
  height: 2px;
}

@media only screen and (max-width: 767px) {
  .global-nav {
    flex: 0 0 auto;
    font-size: 1.6rem;
  }
  .global-nav_inner {
    display: block;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    border-top: 1px solid #e1e1e1;
  }
  .global-nav_inner > li {
    flex: 0 0 auto;
    border-bottom: 1px solid #e1e1e1;
  }
  .global-nav_inner > li > a {
    padding: 8px 40px 9px 30px;
    text-align: left;
  }
  .global-nav_inner > li > a::before,
  .global-nav_inner > li > a::after {
    position: absolute;
    top: 50%;
    right: 27px;
    width: 7px;
    height: 1px;
    border-radius: 2px;
    background: #77DD77;
  }
  .global-nav_inner > li > a::before {
    transform: translateY(-50%) rotate(30deg);
    transform-origin: 100% 100%;
  }
  .global-nav_inner > li > a::after {
    transform: translateY(-50%) rotate(-30deg);
    transform-origin: 100% 0;
  }
  .global-nav_inner > .is-current > a::before,
  .global-nav_inner > li > a:hover::before,
  .global-nav_inner > li > a:active::before,
  .global-nav_inner > li > a:focus::before {
    height: 1px;
  }
}

/* .global-nav-inquiry
----------------------------------------------- */
.global-nav-inquiry {
  display: flex;
  justify-content: flex-end;
  flex-grow: 1;
  padding-right: 30px;
}

.global-nav-inquiry_inner {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.global-nav-inquiry_num {
  display: inline-block;
  vertical-align: middle;
}

.global-nav-inquiry_tel > span {
  font-size: 1.2rem;
}

.global-nav-inquiry_num {
  color: #000;
  font-size: 1.8rem;
}

.global-nav-inquiry_num > a {
  color: inherit;
}

.global-nav-inquiry_form {
  margin-left: 20px;
  padding-left: 25px;
  border-left: 2px solid #77DD77;
  font-weight: 700;
}

.global-nav-inquiry_form > a {
  text-align: left;
  text-decoration: none;
}

@media only screen and (max-width: 980px) {
  .global-nav-inquiry {
    justify-content: flex-start;
    padding-right: 0;
  }
  .global-nav-inquiry_inner {
    flex-wrap: wrap;
  }
  .global-nav-inquiry_hdg {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .global-nav-inquiry {
    display: none;
  }
}

/* ----------------------------------------------------------------
Topicpath (.topicpath[-*])
----------------------------------------------------------------- */
/* .topicpath
----------------------------------------------- */
.topicpath_inner {
  padding-top: 20px;
}

.topicpath_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
  font-size: 1.2rem;
}

.topicpath_list > li {
  position: relative;
  padding: 0 12px 0 0;
}

.topicpath_list > li:not(:first-child) {
  padding-left: 18px;
}

.topicpath_list > li:not(:first-child)::before {
  position: absolute;
  top: .7em;
  left: 0;
  width: 4px;
  height: 4px;
  border: 1px solid #333;
  border-bottom-color: transparent;
  border-left-color: transparent;
  transform: rotate(45deg);
}

.topicpath_list > li > a {
  color: #333;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.topicpath_list > li > a[aria-current] {
  text-decoration: none;
  cursor: default;
}

.topicpath_list > li > a > b {
  font-weight: 400;
}

.topicpath_list > li > a:hover:not([aria-current]),
.topicpath_list > li > a:active:not([aria-current]),
.topicpath_list > li > a:focus:not([aria-current]) {
  color: #77DD77;
}

@media only screen and (min-width: 768px) {
  .media-hero + .topicpath {
    min-height: 170px;
  }
  .media-hero + .topicpath .topicpath_inner {
    padding-bottom: 20px;
  }
  .media-hero + .topicpath .topicpath_list > li:not(:first-child)::before {
    border-top-color: #fff;
    border-right-color: #fff;
  }
  .media-hero + .topicpath .topicpath_list > li > a {
    color: #fff;
  }
  .media-hero + .topicpath .topicpath_list > li > a:hover:not([aria-current]),
  .media-hero + .topicpath .topicpath_list > li > a:active:not([aria-current]),
  .media-hero + .topicpath .topicpath_list > li > a:focus:not([aria-current]) {
    color: #77DD77;
  }
}

@media only screen and (max-width: 767px) {
  .topicpath_inner {
    padding-top: 0;
    padding-bottom: 20px;
  }
  .topicpath_list > li:first-child > a {
    position: relative;
    top: 2px;
    display: inline-block;
    overflow: hidden;
    width: 14px;
    height: 13px;
    color: transparent;
  }
  .topicpath_list > li:first-child > a::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #333;
    border-left: 7px solid transparent;
  }
  .topicpath_list > li:first-child > a::after {
    position: absolute;
    top: 6px;
    left: 5px;
    width: 4px;
    height: 3px;
    background: #333;
  }
  .topicpath_list > li:first-child > a > span::before,
  .topicpath_list > li:first-child > a > span::after {
    position: absolute;
    bottom: 0;
    width: 4px;
    height: 7px;
    background: #333;
  }
  .topicpath_list > li:first-child > a > span::before {
    left: 2px;
  }
  .topicpath_list > li:first-child > a > span::after {
    right: 2px;
  }
  .topicpath_list > li:first-child > a:hover,
  .topicpath_list > li:first-child > a:active,
  .topicpath_list > li:first-child > a:focus {
    color: transparent;
  }
  .content-main > .topicpath {
    order: 1;
  }
}

/* ----------------------------------------------------------------
    Footer (.footer and .f-*)
----------------------------------------------------------------- */
/* .footer
----------------------------------------------- */
.footer {
  padding: 80px 0 25px;
  border-top: 1px solid #ccc;
  background: #77DD77;
  color: #fff;
  font-size: 1.4rem;
}

.footer.-copyright {
  padding: 0 0 30px;
  min-height: 50px;
}

@media only screen and (max-width: 767px) {
  .footer {
    padding: 50px 20px 15px;
  }
  .footer.-copyright {
    padding: 0 0 20px 0;
    min-height: 20px;
  }
}

/* .f-inner
----------------------------------------------- */
.f-inner {
  margin: 0 auto;
  max-width: 1200px;
}

.f-inner > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 1200px) {
  .f-inner {
    padding: 0 20px;
  }
}

@media only screen and (max-width: 767px) {
  .f-inner {
    padding: 0;
  }
}

/* .f-nav-top
----------------------------------------------- */
.f-nav-top {
  margin: 0;
  max-width: 1200px;
  width: calc(100% - 56px);
}

.f-nav-top > span {
  display: block;
  float: right;
}

.f-nav-top > span > a {
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 200;
	display: block;
	overflow: hidden;
	box-sizing: border-box;
	padding: 30px 0 0;
	width: 60px;
	height: 60px;
	border-radius: 40px;
	background: #f8f8f8;
	box-shadow: 1px 1.7px 2px rgba(102, 102, 102, .5);
	color: #77DD77;
	text-align: center;
	line-height: 1;
}

.f-nav-top > span > a::before {
  	position: absolute;
  	top: 11px;
  	left: 50%;
  	margin: 4px 0 0 -7px;
  	width: 0;
  	height: 0;
  	display: inline-block;
    vertical-align: middle;
    color: #77DD77;
    line-height: 1;
    width: 1em;
    height: 1em;
    border: 0.2em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(15%) rotate(-45deg);
}

@media only screen and (max-width: 767px) {
	
	.f-nav-top > span > a {
  		bottom: 20px;
		right: 20px;
  	}
}

/* .f-panel
----------------------------------------------- */
.f-panel {
  	margin: 0 0 45px;
  	padding: 30px 40px;
    background: #fff;
    color: #77DD77;
}

.f-panel_inner {
  	display: flex;
 	flex-wrap: wrap;
    margin-left: 0;
    justify-content: space-between;
    align-items: center;
}

.f-panel_col {
	display: flex;
	align-items: stretch;
	flex-grow: 2;
	margin-left: 0;
}

.f-panel_col:first-child {
  	flex-direction: column;
	width: calc((100% / 3) * 2);
}

.f-panel_col:last-child {
  	flex-direction: column;
	width: calc((100% / 3) * 1);
}

.companyInfo {
	
}

.companyInfo__title {
	font-size: 22px;
	color: #77DD77;
	line-height: 42px;
	padding: 0 0 10px;
}

.companyInfo__text {
	font-size: 14px;
	color: #333;
	line-height: 24px;
	padding: 0 0 20px;
}

.businessContent {
	display: flex;
    justify-content: flex-start;
    align-items: end;
	padding: 10px 0 0;
}

.businessContent__info {
	width: calc(100% / 2);
}

.businessContent__info__title {
	font-size: 16px;
	color: #77DD77;
	line-height: 28px;
	padding: 0 0 10px;	
}

.businessContent__info__text {
	font-size: 14px;
	color: #333;
	line-height: 26px;
	padding: 0 0 0px;	
}

.businessContent__detailCompany {
	font-size: 14px;
	color: #333;
	line-height: 26px;
	padding: 0 0 0px;
	width: calc(100% / 2);
}

.f-panel_col > :last-child {
  	margin-bottom: 0;
}

.f-panel_txt {
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin: 0 0 17px;
  font-weight: 500;
  font-size: 2.4rem;
}

.f-panel_txt > b {
  display: flex;
  justify-content: center;
  flex: 0 0 auto;
  margin: 15px 0 0;
  font-size: 2rem;
  line-height: 1.5;
}

.f-panel_txt > b > span {
  position: relative;
  display: block;
  padding: 0 0 0 60px;
}

.f-panel_txt > b > span::before {
  position: absolute;
  top: 9px;
  left: 0;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: #15aabc;
}

.f-panel_txt > b > span::after {
  position: absolute;
  top: 17px;
  left: 8px;
  width: 26px;
  height: 26px;
  content: url(/common/img/icon/tel.svg);
}

.f-panel_panel {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
}

.f-panel_panel .f-panel_panel-body,
.f-panel_panel .f-panel_panel-footer {
  box-sizing: border-box;
  width: 100%;
}

.f-panel_panel .f-panel_panel-body > :last-child,
.f-panel_panel .f-panel_panel-footer > :last-child {
  margin-bottom: 0;
}

.f-panel_panel .f-panel_panel-footer > :last-child {
	margin: 0 auto;	
}

.f-panel_panel .f-panel_panel-body {
  flex: 0 0 auto;
  padding: 25px 25px 30px;
  background: #77DD77;
  color: #fff;
}

.f-panel_panel .f-panel_panel-footer {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  padding: 20px 30px;
  background: #f7f7f7;
  color: #333;
}

.f-panel_list-desc > dt {
  font-weight: 500;
  font-size: 1.6rem;
}

.f-panel_list-desc > dd {
  font-weight: 400;
  font-size: 1.4rem;
}

.f-panel_list-desc > dd > b {
  display: block;
  font-size: 1.6rem;
}

.f-panel_list-desc-02 {
  text-align: center;
}

.f-panel_list-desc-02 > dt {
  margin: 0 0 15px;
  font-weight: 700;
  font-size: 2rem;
}

.f-panel_list-desc-02 > dd {
  padding: 11px 0;
  word-break: break-all;
  font-size: 3rem;
  line-height: 1;
}

.f-panel_list-desc-02 > dd > a {
  color: #fff;
}

.f-panel_list-desc-02 > dd > span {
  display: inline-block;
  font-size: 1.6rem;
}

.f-panel_list-desc-02.-has-btn > dd {
  padding: 0;
}

.f-panel_btn {
  display: block;
  box-sizing: border-box;
  padding: 14px 10px 17px;
  border: 1px solid #fff;
  border-radius: 26px;
  color: inherit;
  font-size: 1.9rem;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.f-panel_btn > span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
}

.f-panel_btn > span::before,
.f-panel_btn > span::after {
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 25px;
  height: 20px;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.f-panel_btn > span::before {

}

.f-panel_btn > span::after {

}

.f-panel_btn > span > span {
  display: inline-block;
  padding: 0 20px 0 0;
}

.f-panel_btn > span > span::before {
	/*
	position: absolute;
	top: 9px;
	right: 2px;
	width: 6px;
	height: 6px;
	border: 1px solid #fff;
	border-bottom-color: transparent;
	border-left-color: transparent;
	transition: border .2s cubic-bezier(.4, 0, .2, 1);
	transform: rotate(45deg);
  */
}

.f-panel_btn:hover,
.f-panel_btn:active,
.f-panel_btn:focus {
  background: #fff;
  color: #77DD77;
}

.f-panel_btn:hover > span::before,
.f-panel_btn:active > span::before,
.f-panel_btn:focus > span::before {
  opacity: 0;
}

.f-panel_btn:hover > span::after,
.f-panel_btn:active > span::after,
.f-panel_btn:focus > span::after {
  opacity: 1;
}

.f-panel_btn:hover > span > span::before,
.f-panel_btn:active > span > span::before,
.f-panel_btn:focus > span > span::before {
  border-top-color: #77DD77;
  border-right-color: #77DD77;
}

@media only screen and (max-width: 767px) {
  .f-panel {
    padding: 15px;
  }
  .f-panel_inner {
    flex-direction: column;
    margin: -18px 0 0;
  }
  .f-panel_col {
    flex: 0 0 auto;
    margin: 18px 0 0;
  }
  .f-panel_txt {
    text-align: center;
    font-size: 1.8rem;
  }
  .f-panel_txt > b {
    text-align: left;
  }
  .f-panel_panel .f-panel_panel-body {
    padding: 12px 10px 20px;
  }
  .f-panel_panel .f-panel_panel-footer {
    padding: 20px;
  }
  .f-panel_list-desc {
    text-align: center;
  }
  .f-panel_list-desc > dt {
    font-size: 1.4rem;
  }
  .f-panel_list-desc > dd {
    font-size: 1.2rem;
  }
  .f-panel_list-desc > dd > b {
    margin: 0 0 -4px;
    font-size: 2rem;
  }
  .f-panel_list-desc-02 > dt {
    margin: 0 0 15px;
    font-size: 1.8rem;
  }
  .f-panel_list-desc-02 > dd {
    padding: 0;
  }
  .f-panel_list-desc-02 > dd > span {
    font-size: 1.4rem;
  }
  .f-panel_btn {
    font-size: 1.4rem;
  }
  .f-panel_btn > span {
    padding: 0 0 0 30px;
  }
  .f-panel_btn > span::before,
  .f-panel_btn > span::after {
    top: -1px;
    transform: scale(.8);
  }
  .f-panel_btn > span > span {
    padding: 0 12px 0 0;
  }
  .f-panel_btn > span > span::before {
    top: 5px;
  }
}

/* .f-grid
----------------------------------------------- */
.f-grid {
	display: flex;
    flex-wrap: wrap;
    margin: 60px auto 0;
    border-top: 1px solid #fff;
    justify-content: center;
}

.f-grid_col {
    margin-left: 0;
    display: flex;
    justify-content: center;
    padding: 40px 0;
}

.f-grid_col > :last-child {
  	margin-bottom: 0;
}

.f-grid_col:first-child {
  	flex-basis: 100%;
}

@media only screen and (max-width: 767px) {
  .f-grid {
    flex-direction: column;
    margin: 0;
  }
  .f-grid_col {
    flex: 0 0 auto;
    margin: 0 0 38px;
  }
  .f-grid_col:first-child {
    flex: 0 0 auto;
  }
  .f-grid_col:last-child {
    margin-bottom: 0;
  }
}

/* .f-hdg-l2
----------------------------------------------- */
.f-hdg-l2 {
  margin: 28px 0 6px;
  padding: 0 0 5px;
  border-bottom: 1px solid #fff;
  font-weight: 700;
  font-size: 1.4rem;
}

.f-hdg-l2 > a {
  color: inherit;
  text-decoration: none;
}

.f-hdg-l2 > a:hover,
.f-hdg-l2 > a:active,
.f-hdg-l2 > a:focus {
  text-decoration: underline;
}

.f-grid_col > .f-hdg-l2:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .f-hdg-l2 {
    margin: 0 0 12px;
    font-size: 1.6rem;
  }
}

/* .f-link-list
----------------------------------------------- */
.f-link-list {
	margin: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.f-link-list > li {
	margin: 4px 0px 0;
    padding: 0 20px;
}

.f-link-list > li > a {
  color: inherit;
  text-decoration: none;
}

.f-link-list > li > a:hover,
.f-link-list > li > a:active,
.f-link-list > li > a:focus {
  text-decoration: underline;
}

/* .f-link-list-02
----------------------------------------------- */
.f-link-list-02 {
  display: flex;
  justify-content: center;
  margin: 55px 0 0;
  font-size: 1.2rem;
  line-height: 1.5;
}

.f-link-list-02 > li {
  padding: 0 16px 2px;
}

.f-link-list-02 > li:not(:last-child) {
  border-right: 1px solid #fff;
}

.f-link-list-02 > li > a {
  color: inherit;
  text-decoration: none;
}

.f-link-list-02 > li > a:hover,
.f-link-list-02 > li > a:active,
.f-link-list-02 > li > a:focus {
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  .f-link-list-02 {
    justify-content: left;
    flex-wrap: wrap;
    padding: 0 60px 0 0;
  }
  .f-link-list-02 > li {
    padding: 0 6px 2px;
  }
}

/* .f-badge
----------------------------------------------- */
.f-badge {
  display: flex;
  justify-content: center;
  margin: 25px 0 0 -20px;
}

.f-badge_col {
  margin: 0 0 0 20px;
}

.f-badge_col > a {
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.f-badge_col > a:hover,
.f-badge_col > a:active,
.f-badge_col > a:focus {
  opacity: .7;
}

@media only screen and (max-width: 767px) {
  .f-badge_col {
    margin-left: 9px;
  }
}

/* .f-copyright
----------------------------------------------- */
.f-copyright {
  margin: 30px 0 0;
  color: #a4e1ec;
  text-align: center;
  font-size: 1.2rem;
}

@media only screen and (max-width: 767px) {
  .f-copyright {
    margin: 20px 0 0;
  }
}

/* ----------------------------------------------------------------
    Heading (.hdg-*)
----------------------------------------------------------------- */
/* .hdg-l1
----------------------------------------------- */
.hdg-l1 {
  padding: 56px 0 0;
  color: #fff;
  text-align: center;
}

.hdg-l1 > :last-child {
  margin-bottom: 0;
}

.hdg-l1_txt-main {
  margin: 0 0 8px;
  font-weight: 500;
  font-size: 4rem;
  line-height: 1.4;
}

.hdg-l1_txt-main_lead {
  display: block;
  margin: -16px 0 21px;
  font-weight: 500;
  font-size: 2.2rem;
  line-height: 1.4;
}

.hdg-l1_txt-main_lead > span {
  display: inline-block;
  padding: 5px 15px;
  border: 1px solid #fff;
}

.hdg-l1_txt-sub {
  font-size: 1.6rem;
  line-height: 1.8125;
}

@media only screen and (max-width: 1200px) {
  .hdg-l1_txt-main_lead.-app {
    margin-top: -65px;
  }
}

@media only screen and (max-width: 767px) {
  .hdg-l1 {
    padding: 0;
  }
  .hdg-l1_txt-main {
    margin: 0 0 20px;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.66667;
  }
  .hdg-l1_txt-main_lead {
    margin: 10px 0;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.375;
  }
  .hdg-l1_txt-main_lead > span {
    padding: 5px 10px;
    border: 1px solid #fff;
  }
  .hdg-l1_txt-main_lead.-app {
    margin-top: 10px;
  }
  .hdg-l1_txt-sub {
    font-size: 1.3rem;
    line-height: 1.38462;
  }
}

/* .hdg-l1-02
----------------------------------------------- */
.hdg-l1-02 {
  padding: 40px 0;
}

.hdg-l1-02 > :last-child {
  margin-bottom: 0;
}

.hdg-l1-02_txt-main {
  margin: 0 0 12px;
  color: #444;
  font-weight: 500;
  font-size: 2.8rem;
  line-height: 1.03571;
}

.hdg-l1-02_txt-sub {
  color: #444;
}

@media only screen and (max-width: 767px) {
  .hdg-l1-02 {
    padding: 0;
  }
  .hdg-l1-02_txt-main {
    margin: 0 0 9px;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.66667;
  }
  .hdg-l1-02_txt-sub {
    font-size: 1.3rem;
    line-height: 1.38462;
  }
}

/* .hdg-l2
----------------------------------------------- */
.hdg-l2 {
  	margin: 80px 0 50px;
  	color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 2.6rem;
    line-height: 43px;
}

.hdg-l2 > span {
  display: block;
  color: #666;
  font-size: 2rem;
}

.hdg-l2_img {
  display: block;
  margin: 0 auto 7px;
}

.lp-panel .hdg-l2 {
  margin-bottom: 33px;
}

@media only screen and (max-width: 767px) {
  .hdg-l2 {
    margin: 0 0 30px;
    font-size: 2rem;
    line-height: 1.5;
  }
  .lp-panel .hdg-l2 {
    margin-bottom: 17px;
  }
}

/* .hdg-l2-02
----------------------------------------------- */
.hdg-l2-02 {
  margin: 60px 0 40px;
  padding: 7px 0 8px 15px;
  border-left: 5px solid #77DD77;
  color: #77DD77;
  font-weight: 500;
  font-size: 2.7rem;
  line-height: 1.40741;
}

@media only screen and (max-width: 767px) {
  .hdg-l2-02 {
    margin: 35px 0 25px;
    padding: 0 0 0 7px;
    border-left-width: 3px;
    font-size: 2rem;
  }
}

/* .hdg-l3
----------------------------------------------- */
.hdg-l3 {
  margin: 40px 0 20px;
  color: #77DD77;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.7;
}

.hdg-l3 > span {
  padding: 0 0 3px;
  border-bottom: 1px solid #77DD77;
}

.hdg-l2-02 + .hdg-l3 {
  margin-top: -10px;
}

@media only screen and (max-width: 767px) {
  .hdg-l3 {
    margin: 30px 0 15px;
    font-size: 1.6rem;
    line-height: 1.8;
  }
  .hdg-l3 > span {
    padding: 0 0 1px;
  }
}

/* .hdg-l3-02
----------------------------------------------- */
.hdg-l3-02 {
  margin: 60px 0 25px;
  color: #666;
  text-align: center;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.8;
}

@media only screen and (max-width: 767px) {
  .hdg-l3-02 {
    margin: 30px 0 15px;
    font-size: 1.6rem;
    line-height: 1.8;
  }
}

/* .hdg-l4
----------------------------------------------- */
.hdg-l4 {
  position: relative;
  margin: 30px 0 20px;
  padding: 0 20px;
  color: #333;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.41667;
}

.hdg-l4::before {
  position: absolute;
  top: .5em;
  left: 0;
  width: 8px;
  height: 8px;
  background: #91e5ef;
}

@media only screen and (max-width: 767px) {
  .hdg-l4 {
    margin: 30px 0 10px;
    font-size: 1.6rem;
  }
}

/* .hdg-l5
----------------------------------------------- */
.hdg-l5 {
  margin: 20px 0;
  color: #6e6e6e;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.41667;
}

@media only screen and (max-width: 767px) {
  .hdg-l5 {
    margin: 14px 0;
    font-size: 1.6rem;
    line-height: 1.8;
  }
}

/* 繝｢繧ｸ繝･繝ｼ繝ｫ邨�∩蜷医ｏ縺帶凾縺ｮ隕句�縺励�繝槭�繧ｸ繝ｳ隱ｿ謨ｴ
----------------------------------------------- */
.content-inner > [class^='hdg-']:first-child,
.media-lyt_col > [class^='hdg-']:first-child,
.grid_col > [class^='hdg-']:first-child,
.t-content-fluid-04_inner > [class^='hdg-']:first-child,
.content-inner-carousel > [class^='hdg-']:first-child {
  margin-top: 0;
}

/* ----------------------------------------------------------------
    Text (.txt-*)
----------------------------------------------------------------- */
/* .txt-em
----------------------------------------------- */
.txt-em {
  color: #e0130e;
}

/* .txt-lead
----------------------------------------------- */
.txt-lead {
  margin: 0 0 45px;
  color: #666;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.75;
}

.hdg-l2 + .txt-lead {
  margin-top: -43px;
}

.txt-lead.-big {
  font-size: 2rem;
}

@media only screen and (max-width: 767px) {
  .txt-lead {
    margin: 0 0 25px;
    font-size: 1.5rem;
  }
  .hdg-l2 + .txt-lead {
    margin-top: -24px;
  }
  .txt-lead.-big {
    font-size: 1.6rem;
  }
}

/* .txt-lead-02
----------------------------------------------- */
.txt-lead-02 {
  margin: 0 0 23px;
  color: #666;
  font-size: 1.6rem;
  line-height: 1.75;
}

.txt-lead-02 > b {
  position: relative;
  display: inline-block;
  padding: 11px 40px 13px 42px;
}

.txt-lead-02 > b::before,
.txt-lead-02 > b::after {
  position: absolute;
  display: block;
  color: #6dc2cc;
  font-weight: 700;
  font-size: 4.3rem;
  line-height: 1;
}

.txt-lead-02 > b::before {
  top: 1px;
  left: 0;
  content: '窶�';
}

.txt-lead-02 > b::after {
  right: 0;
  bottom: -20px;
  content: '窶�';
}

/* .txt-through
----------------------------------------------- */
.txt-through {
  text-decoration: line-through;
}

/* .txt-strong
----------------------------------------------- */
.txt-strong {
  font-size: 2rem;
}

.tbl-plan .txt-strong {
  display: block;
  color: #333;
  line-height: 1.3;
}

/* .txt-quote
----------------------------------------------- */
.txt-quote {
  margin: 0 0 34px;
}

.txt-quote_date {
  display: inline-block;
  margin: 0 20px 0 0;
  font-size: 1.4rem;
}

.txt-quote_voice {
  margin: 15px 0 11px;
  padding: 0 0 12px;
  border-bottom: 1px solid #ccc;
  color: #FFA61B;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.42857;
}

.txt-quote_voice > :last-child {
  margin-bottom: 0;
}

.txt-quote_name {
  display: block;
  font-style: normal;
  font-size: 1.4rem;
}

@media only screen and (max-width: 767px) {
  .txt-quote {
    margin: 0 0 20px;
  }
  .txt-quote_date {
    display: block;
    margin: 0 0 6px;
  }
  .txt-quote_voice {
    font-size: 2.2rem;
  }
  .content-fluid-hero .txt-quote {
    padding: 0 10px;
  }
}

/* .txt-answer
----------------------------------------------- */
.txt-answer {
  position: relative;
  padding-left: 40px;
  color: #777;
}

.txt-answer::before {
  position: absolute;
  top: calc(1rem + 2px);
  left: 0;
  width: 28px;
  height: 2px;
  background: #999;
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� List (.list[-*])
----------------------------------------------------------------- */
/* .list
----------------------------------------------- */
.list {
  margin: -3px 0 28px;
}

.list > li {
  position: relative;
  margin: 3px 0 0;
  padding: 0 0 0 16px;
}

.list > li::before {
  position: absolute;
  top: 11px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background: #676767;
}

.list > li > ul,
.list > li > ol {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .list > li::before {
    top: 10px;
  }
}

/* .list-number
----------------------------------------------- */
.list-number {
  margin: -3px 0 28px;
  counter-reset: number;
}

.list-number > li {
  position: relative;
  display: table;
  margin: 3px 0 0;
  counter-increment: number;
}

.list-number > li::before {
  display: table-cell;
  padding: 0 8px 0 0;
  min-width: 1.3em;
  content: counter(number) '.';
  text-align: right;
}

.list-number > li > ul,
.list-number > li > ol {
  margin: 0;
}

/* .list-note
----------------------------------------------- */
.list-note > li,
.list-note > li > strong {
  display: flex;
  flex-wrap: wrap;
}

.list-note > li {
  font-size: 1.3rem;
      margin: 0 auto;
    width: fit-content;
}

.list-note > li > strong {
  flex-basis: 100%;
}

.list-note.-center > li {
  justify-content: center;
}

.list-note.-center > li .list-note_txt {
  flex-grow: 0;
  flex-basis: auto;
}

.list-note_txt {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 0 0 0 10px;
}

/* .list-info
----------------------------------------------- */
.list-info > li {
  display: flex;
  padding: 24px 0 13px;
}

.list-info > li:not(:first-child) {
  border-top: 1px solid #e1e1e1;
}

.list-info_date {
  color: #000;
}

.list-info_txt {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 0 0 0 40px;
}

.list-info_txt > a {
  text-decoration: none;
}

.list-info_txt > a:hover,
.list-info_txt > a:active,
.list-info_txt > a:focus {
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  .list-info > li {
    flex-direction: column;
    padding-top: 14px;
  }
  .list-info_date,
  .list-info_txt {
    flex: 0 0 auto;
  }
  .list-info_txt {
    padding: 0;
  }
}

/* .list-desc
----------------------------------------------- */
.list-desc > dt {
  margin: 0 0 10px;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.625;
}

.list-desc > dd {
  position: relative;
  margin: 3px 0 0;
  padding: 0 0 0 16px;
}

.list-desc > dd::before {
  position: absolute;
  top: 11px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background: #676767;
}

/* .list-faq
----------------------------------------------- */
.list-faq_inner {
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #e1e1e1;
}

.list-faq_inner > dt,
.list-faq_inner > dd {
  display: flex;
}

.list-faq_inner > dt {
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 1.70588;
}

.list-faq_mark-q,
.list-faq_mark-a {
  flex-basis: 42px;
}

.list-faq_mark-q > span,
.list-faq_mark-a > span {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 42px;
  font-weight: 500;
  font-size: 2.4rem;
}

.list-faq_mark-q > span::before,
.list-faq_mark-a > span::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 42px;
  content: '';
}

.list-faq_mark-q {
  margin: 0 0 10px;
}

.list-faq_mark-q > span {
  background: #77DD77;
  color: #fff;
}

.list-faq_mark-a > span {
  background: #eee;
  color: #77DD77;
}

.list-faq_body {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  margin: 0 0 0 20px;
  padding: 6px 0 0;
}

.list-faq_body > :last-child {
  margin-bottom: 0;
}

.list-faq_txt {
  font-size: 1.7rem;
  line-height: 1.70588;
}

@media only screen and (max-width: 767px) {
  .list-faq_inner {
    margin: 0 0 15px;
    padding: 0 0 15px;
  }
  .list-faq_inner > dt {
    font-size: 1.5rem;
  }
  .list-faq_mark-q,
  .list-faq_mark-a {
    flex-basis: 36px;
  }
  .list-faq_mark-q > span,
  .list-faq_mark-a > span {
    flex-basis: 36px;
    font-size: 2rem;
  }
  .list-faq_mark-q > span::before,
  .list-faq_mark-a > span::before {
    /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
    min-height: 36px;
  }
  .list-faq_body {
    margin: 0 0 0 20px;
    padding: 6px 0 0;
  }
  .list-faq_txt {
    font-size: 1.5rem;
  }
}

/* .list-faq-02
----------------------------------------------- */
.list-faq-02_inner {
  margin: -1px 0 0;
  padding: 25px 0;
  border-top: 1px solid #e1e1e1;
  border-bottom: 1px solid #e1e1e1;
}

.list-faq-02_inner > dt {
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 1.70588;
}

.list-faq-02_inner > dd {
  padding: 10px 0 0;
}

.list-faq-02_btn,
.no-js .list-faq-02 .list-faq-02_inner > dt {
  display: flex;
  padding: 0;
  width: 100%;
  border: 0;
  background: none;
}

.list-faq-02_btn:active {
  color: inherit;
}

.list-faq-02_mark {
  position: relative;
  overflow: hidden;
  width: 27px;
  height: 27px;
  color: transparent;
}

.list-faq-02_mark::before,
.list-faq-02_mark::after {
  position: absolute;
  top: 50%;
  margin: -2px 0 0;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  background: #77DD77;
}

.list-faq-02_mark::before {
  transform: rotate(90deg);
}

[aria-expanded='true'] > .list-faq-02_mark::before {
  display: none;
}

.list-faq-02_mark-q,
.list-faq-02_mark-a {
  flex-basis: 42px;
}

.list-faq-02_mark-q > span,
.list-faq-02_mark-a > span {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 42px;
  font-weight: 500;
  font-size: 2.4rem;
}

.list-faq-02_mark-q > span {
  background: #77DD77;
  color: #fff;
  line-height: 1;
}

.list-faq-02_mark-q > span::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 42px;
  content: '';
}

.list-faq-02_mark-a > span {
  height: 38px;
  border: 2px solid #77DD77;
  background: #fff;
  color: #77DD77;
}

.list-faq-02_body {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  margin: 0 0 0 20px;
  padding: 6px 0 0;
  text-align: left;
}

.list-faq-02_body > :last-child {
  margin-bottom: 0;
}

.list-faq-02_txt {
  font-size: 1.7rem;
  line-height: 1.70588;
}

.list-faq-02_content-a {
  display: flex;
}

@media only screen and (max-width: 767px) {
  .list-faq-02_inner {
    padding: 25px 0 20px;
  }
  .list-faq-02_inner > dt {
    font-size: 1.5rem;
  }
  .list-faq-02_mark {
    top: 8px;
    margin: 0 2px 0 20px;
    width: 16px;
    height: 16px;
  }
  .list-faq-02_mark::before,
  .list-faq-02_mark::after {
    height: 2px;
  }
  .list-faq-02_mark-q,
  .list-faq-02_mark-a {
    flex-basis: 36px;
  }
  .list-faq-02_mark-q > span,
  .list-faq-02_mark-a > span {
    flex-basis: 36px;
    font-size: 2rem;
  }
  .list-faq-02_mark-q > span::before {
    /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
    min-height: 36px;
  }
  .list-faq-02_mark-a > span {
    height: 32px;
  }
  .list-faq-02_body {
    margin: 0 0 0 20px;
    padding: 6px 0 0;
  }
  .list-faq-02_txt {
    font-size: 1.5rem;
  }
}

/* .list-check
----------------------------------------------- */
.list-check > li {
  position: relative;
  margin: 0 0 10px;
  padding: 13px 15px 11px 45px;
  background: #def3f5;
}

.list-check > li::before {
  position: absolute;
  top: 16px;
  left: 14px;
  z-index: 1;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background: #fff;
}

.list-check > li::after {
  position: absolute;
  top: 19px;
  left: 21px;
  z-index: 1;
  box-sizing: border-box;
  width: 7px;
  height: 11px;
  border-right: 3px solid #27a6b8;
  border-bottom: 3px solid #27a6b8;
  transform: rotate(45deg);
}

.list-check > li:last-child {
  margin-bottom: 0;
}

/* .list-flow
----------------------------------------------- */
.list-flow > li {
  margin: 0 0 60px;
}

.list-flow > li > :last-child {
  margin-bottom: 0;
}

.list-flow > li:last-child {
  margin-bottom: 0;
}

.list-flow_hdg {
  position: relative;
  margin: 0 0 30px;
  padding: 3px 0 3px 25px;
}

.list-flow_hdg > span {
  display: block;
  padding: 3px 10px 6px 38px;
  background: #F0FAF0;
  color: #77DD77;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.68;
}

.list-flow_hdg > span > b {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  border-radius: 24px;
  background: #77DD77;
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
}

@media only screen and (max-width: 767px) {
  .list-flow > li {
    margin: 0 0 50px;
  }
  .list-flow > li:last-child {
    margin-bottom: 0;
  }
  .list-flow_hdg {
    margin: 0 0 20px;
    padding: 0 0 0 15px;
  }
  .list-flow_hdg > span {
    padding: 7px 10px 8px 32px;
    font-size: 1.6rem;
    line-height: 1.4;
  }
  .list-flow_hdg > span > b {
    width: 36px;
    height: 36px;
    border-radius: 18px;
  }
}

/* .list-social-btn
----------------------------------------------- */
.list-social-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: -10px 0 28px -30px;
}

.list-social-btn > li {
  margin: 10px 0 0 30px;
}

.list-social-btn > li > * {
  display: flex !important;
}

@media only screen and (max-width: 767px) {
  .list-social-btn {
    margin-left: -10px;
  }
  .list-social-btn > li {
    margin-left: 10px;
  }
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Table (.tbl[-*])
----------------------------------------------------------------- */
/* .tbl
----------------------------------------------- */
.tbl {
  margin: 0 0 34px;
  width: 100%;
  border: 1px solid #bfbfbf;
}

.tbl th,
.tbl td {
  padding: 12px 20px;
  border: 1px solid #bfbfbf;
}

.tbl th > :last-child,
.tbl td > :last-child {
  margin-bottom: 0;
}

.tbl > thead > tr > th {
  background: #d1d1d1;
  text-align: left;
  font-weight: normal;
}

.tbl > thead > tr > td {
  background: #d1d1d1;
}

.tbl > tbody > tr > th {
  background: #f5f5f5;
  text-align: left;
}

/* .tbl-02
----------------------------------------------- */
.tbl-02 {
  margin: -10px 0 24px -10px;
  width: calc(100% + 10px);
  /* border-spacing縺ｮ蛻�ｩｺ縺阪ｒ繧ｺ繝ｩ縺� */
  border-spacing: 10px;
  border-collapse: separate;
  font-size: 1.5rem;
}

.tbl-02 th,
.tbl-02 td {
  padding: 5px 10px;
  vertical-align: top;
  font-weight: 400;
}

.tbl-02 th > :last-child,
.tbl-02 td > :last-child {
  margin-bottom: 0;
}

.tbl-02 > tbody > tr > th {
  background: #ddd;
}

@media only screen and (max-width: 767px) {
  .tbl-02 {
    display: block;
    margin: 0 0 34px;
    width: 100%;
  }
  .tbl-02 > tbody,
  .tbl-02 > tbody > tr,
  .tbl-02 > tbody > tr > th,
  .tbl-02 > tbody > tr > td {
    display: block;
  }
  .tbl-02 > tbody > tr > td {
    margin: 14px 0 24px;
    padding: 0;
  }
  .tbl-02 > tbody > tr:last-child > td {
    margin-bottom: 0;
  }
}

/* .tbl-plan
----------------------------------------------- */
.tbl-plan {
  margin: 0 0 34px;
  width: 100%;
  border-spacing: 5px 3px;
  border-collapse: separate;
}

.tbl-plan th,
.tbl-plan td {
  line-height: 1.33333;
}

.tbl-plan th p,
.tbl-plan th ul,
.tbl-plan th ol,
.tbl-plan th dl,
.tbl-plan td p,
.tbl-plan td ul,
.tbl-plan td ol,
.tbl-plan td dl {
  margin-bottom: 5px;
}

.tbl-plan th {
  padding: 20px;
}

.tbl-plan td {
  padding: 20px 19px;
}

.tbl-plan > thead > tr > th {
  font-weight: 500;
}

.tbl-plan > thead > tr > td {
  background: none;
}

.tbl-plan > tbody > tr > th,
.tbl-plan > tfoot > tr > th {
  background: #e3e3e3;
  vertical-align: top;
  text-align: left;
  font-weight: 400;
}

.tbl-plan > tbody > tr > td,
.tbl-plan > tfoot > tr > td {
  vertical-align: top;
  text-align: center;
}

.tbl-plan_th-plan {
  background: #daf5f8;
}

.tbl-plan_th-plan-02 {
  background: #77DD77;
  color: #fff;
}

.tbl-plan_th-plan-03 {
  background: #77DD77;
  color: #fff;
}

.tbl-plan_th-plan-04 {
  background: #DFF7DF;
}

.tbl-plan_td-plan {
  background: #e6f3f3;
}

.tbl-plan_td-plan-02 {
  background: #c6e9ed;
}

.tbl-plan_td-plan-03 {
  background: #c7edf2;
}

.tbl-plan_td-plan-04 {
  background: #e6f3f3;
}

.tbl-plan_txt > b {
  font-weight: 400;
  font-size: 2.8rem;
}

.tbl-plan_list {
  margin: -3px 0 0;
  color: #999;
  font-size: 1.1rem;
}

.tbl-plan_list > li {
  margin: 0 0 3px;
}

@media only screen and (max-width: 767px) {
  .tbl-lyt-scroll > .tbl-plan {
    width: 980px;
  }
}

/* .tbl-lyt-scroll
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .tbl-lyt-scroll {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Link (.link[-*])
----------------------------------------------------------------- */
/* .link
----------------------------------------------- */
.link,
.link-list > li > a,
.link-list-02 > li > a,
.link-back > a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 25px;
  color: #333;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.link::before,
.link-list > li > a::before,
.link-list-02 > li > a::before,
.link-back > a::before {
  position: absolute;
  top: .3em;
  left: 0;
  width: 15px;
  height: 15px;
  background: url(/common/img/icon/link-angle.svg) no-repeat 0 0;
}

.link:hover,
.link-list > li > a:hover,
.link-list-02 > li > a:hover,
.link-back > a:hover,
.link:active,
.link-list > li > a:active,
.link-list-02 > li > a:active,
.link-back > a:active,
.link:focus,
.link-list > li > a:focus,
.link-list-02 > li > a:focus,
.link-back > a:focus {
  color: #77DD77;
}

.lp-list-desc .link,
.lp-list-desc .link-list > li > a,
.lp-list-desc .link-list-02 > li > a,
.lp-list-desc .link-back > a {
  margin-top: 7px;
  margin-right: auto;
  font-size: 1.4rem;
}

.bgnnr-lyt-custom_panel .link,
.bgnnr-lyt-custom_panel .link-list > li > a,
.bgnnr-lyt-custom_panel .link-list-02 > li > a,
.bgnnr-lyt-custom_panel .link-back > a,
.bgnnr-lyt-point .link,
.bgnnr-lyt-point .link-list > li > a,
.bgnnr-lyt-point .link-list-02 > li > a,
.bgnnr-lyt-point .link-back > a {
  padding-left: 20px;
  color: #77DD77;
  text-decoration: underline;
}

.bgnnr-lyt-custom_panel .link:hover,
.bgnnr-lyt-custom_panel .link-list > li > a:hover,
.bgnnr-lyt-custom_panel .link-list-02 > li > a:hover,
.bgnnr-lyt-custom_panel .link-back > a:hover,
.bgnnr-lyt-custom_panel .link:active,
.bgnnr-lyt-custom_panel .link-list > li > a:active,
.bgnnr-lyt-custom_panel .link-list-02 > li > a:active,
.bgnnr-lyt-custom_panel .link-back > a:active,
.bgnnr-lyt-custom_panel .link:focus,
.bgnnr-lyt-custom_panel .link-list > li > a:focus,
.bgnnr-lyt-custom_panel .link-list-02 > li > a:focus,
.bgnnr-lyt-custom_panel .link-back > a:focus,
.bgnnr-lyt-point .link:hover,
.bgnnr-lyt-point .link-list > li > a:hover,
.bgnnr-lyt-point .link-list-02 > li > a:hover,
.bgnnr-lyt-point .link-back > a:hover,
.bgnnr-lyt-point .link:active,
.bgnnr-lyt-point .link-list > li > a:active,
.bgnnr-lyt-point .link-list-02 > li > a:active,
.bgnnr-lyt-point .link-back > a:active,
.bgnnr-lyt-point .link:focus,
.bgnnr-lyt-point .link-list > li > a:focus,
.bgnnr-lyt-point .link-list-02 > li > a:focus,
.bgnnr-lyt-point .link-back > a:focus {
  color: #77DD77;
  text-decoration: none;
}

@media only screen and (max-width: 767px) {
  .link::before,
  .link-list > li > a::before,
  .link-list-02 > li > a::before,
  .link-back > a::before {
    top: .4em;
  }
  .bgnnr-lyt-custom_panel .link::before,
  .bgnnr-lyt-custom_panel .link-list > li > a::before,
  .bgnnr-lyt-custom_panel .link-list-02 > li > a::before,
  .bgnnr-lyt-custom_panel .link-back > a::before {
    top: .3em;
  }
}

/* .link-list
----------------------------------------------- */
.link-list {
  margin: -7px 0 28px;
}

.link-list > li {
  margin: 7px 0 0;
}

.link-list > li > a {
  text-decoration: none;
}

.link-list > li > ul,
.link-list > li > ol {
  margin: 10px 0 0 30px;
}

/* .link-list-02
----------------------------------------------- */
.link-list-02 {
  margin: 15px 0 30px;
}

.list > li > .link-list-02,
.list-number > li > .link-list-02 {
  margin: 15px 0 30px;
}

p + .link-list-02 {
  margin-top: -13px;
}

.link-list-02 > li {
  margin: 7px 0 0;
}

.link-list-02 > li:not(:first-child) {
  margin: 15px 0 0 0;
}

/* .link-list-03
----------------------------------------------- */
.link-list-03 {
  margin-bottom: 28px;
}

.link-list-03_item {
  width: 100%;
  border-bottom: 1px solid #d5d5d5;
}

.link-list-03_item > a {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 15px 30px 15px 3px;
  height: 100%;
  text-decoration: none;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.link-list-03_title {
  position: relative;
  display: inline-block;
  margin: 0 0 5px 0;
  padding: 0 0 0 25px;
  color: #333;
  font-weight: 700;
  font-size: 1.6rem;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.link-list-03_title::before {
  position: absolute;
  top: .5em;
  left: 0;
  width: 15px;
  height: 15px;
  background: url(/common/img/icon/link-angle.svg) no-repeat 0 0;
}

a:hover > .link-list-03_title,
a:active > .link-list-03_title,
a:focus > .link-list-03_title {
  color: #77DD77;
}

.link-list-03_txt {
  color: #333;
}

@media only screen and (max-width: 767px) {
  .link-list-03 {
    display: block;
  }
  .link-list-03_item {
    width: 100%;
  }
  .link-list-03_item > a {
    padding: 15px 8px 20px 8px;
  }
  .link-list-03_title {
    font-size: 1.5rem;
  }
  .link-list-03_txt {
    font-size: 1.4rem;
  }
}

/* .link-list-04
----------------------------------------------- */
.link-list-04 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 28px;
}

.link-list-04_item {
  width: 50%;
}

.link-list-04_item:nth-child(2n+1):not(:first-child) > a::before,
.link-list-04_item:first-child:not(:last-child) > a::before {
  position: absolute;
  top: 20px;
  right: -1px;
  width: 1px;
  height: calc(100% - 40px);
  background-color: #d5d5d5;
  transform: translateX(-50%);
}

.link-list-04_item > a {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 25px 30px 40px 20px;
  height: 100%;
  text-decoration: none;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.link-list-04_item > a:hover,
.link-list-04_item > a:active,
.link-list-04_item > a:focus {
  background: #eee;
}

.link-list-04_item:not(:nth-last-child(-n+2)),
.link-list-04_item:nth-child(2n):not(:last-child) {
  border-bottom: 1px solid #d5d5d5;
}

.link-list-04_title {
  position: relative;
  display: inline-block;
  margin: 0 0 5px 0;
  padding: 0 0 0 25px;
  color: #333;
  font-weight: 700;
  font-size: 1.6rem;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.link-list-04_title::before {
  position: absolute;
  top: .5em;
  left: 0;
  width: 15px;
  height: 15px;
  background: url(/common/img/icon/link-angle.svg) no-repeat 0 0;
}

a:hover > .link-list-04_title,
a:active > .link-list-04_title,
a:focus > .link-list-04_title {
  color: #77DD77;
}

.link-list-04_txt {
  color: #333;
}

@media only screen and (max-width: 767px) {
  .link-list-04 {
    display: block;
  }
  .link-list-04_item {
    width: 100%;
  }
  .link-list-04_item > a {
    padding: 20px 8px;
  }
  .link-list-04_item:nth-child(2n+1):not(:first-child) > a::before,
  .link-list-04_item:first-child:not(:last-child) > a::before {
    content: none;
  }
  .link-list-04_title {
    font-size: 1.5rem;
  }
  .link-list-04_txt {
    display: none;
  }
}

/* .link-back
----------------------------------------------- */
.link-back {
  margin: 80px 0 28px;
  padding: 20px 0 0;
  border-top: 1px solid #ccc;
}

.link-back > a {
  text-decoration: none;
}

.link-back > a::before {
  transform: rotate(180deg);
}

@media only screen and (max-width: 767px) {
  .link-back {
    margin: 60px 0 28px;
  }
}

/* .link-media
----------------------------------------------- */
.link-media {
  text-align: center;
}

.link-media > a {
  display: inline-block;
}

.link-media_img {
  display: block;
  background: #fff;
}

.link-media_img > img,
.link-media_img > picture > img {
  max-width: none;
  width: 100%;
  text-align: center;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
  backface-visibility: hidden;
}

.link-media > a:hover > .link-media_img > img,
.link-media > a:hover > .link-media_img > picture > img,
.link-media > a:active > .link-media_img > img,
.link-media > a:active > .link-media_img > picture > img,
.link-media > a:focus > .link-media_img > img,
.link-media > a:focus > .link-media_img > picture > img {
  opacity: .8;
}

.link-media_txt {
  display: block;
  margin: 10px 0 0;
  color: #333;
  text-align: left;
  text-decoration: underline;
  font-size: 1.4rem;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.link-media_txt > b {
  display: block;
  margin: 0 0 -2px;
  font-size: 1.6rem;
}

.link-media > a:hover > .link-media_txt,
.link-media > a:active > .link-media_txt,
.link-media > a:focus > .link-media_txt {
  color: #77DD77;
  text-decoration: none;
}

.link-media.-modal .link-media_txt {
  text-align: right;
}

/* .link-quote
----------------------------------------------- */
.link-quote {
  margin: 0 auto 28px;
  text-align: center;
}

.link-quote > a {
  display: inline-block;
  text-decoration: none;
}

.link-quote_img {
  display: block;
  background: #fff;
}

.link-quote_img > img,
.link-quote_img > picture > img {
  width: 100%;
  text-align: center;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
  backface-visibility: hidden;
}

.link-quote > a:hover > .link-quote_img > img,
.link-quote > a:hover > .link-quote_img > picture > img,
.link-quote > a:active > .link-quote_img > img,
.link-quote > a:active > .link-quote_img > picture > img,
.link-quote > a:focus > .link-quote_img > img,
.link-quote > a:focus > .link-quote_img > picture > img {
  opacity: .8;

}

.link-quote_txt {
  display: block;
  margin: 10px 0 0;
  color: #333;
  text-align: left;
  font-size: 1.4rem;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.link-quote_txt > q {
  display: block;
  text-decoration: underline;
  font-size: 1.6rem;
  line-height: 1.5;
}

.link-quote_txt > q::before,
.link-quote_txt > q::after {
  content: '';
}

.link-quote_txt > cite {
  text-decoration: none;
  font-style: normal;
  font-size: 1.2rem;
}

.link-quote > a:hover > .link-quote_txt,
.link-quote > a:active > .link-quote_txt,
.link-quote > a:focus > .link-quote_txt {
  color: #77DD77;
}

.link-quote > a:hover > .link-quote_txt > q,
.link-quote > a:active > .link-quote_txt > q,
.link-quote > a:focus > .link-quote_txt > q {
  text-decoration: none;
}

.grid[data-col='3'] .link-quote {
  max-width: 310px;
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Icon (.icon-*)
----------------------------------------------------------------- */
/* .icon-blank
----------------------------------------------- */
.icon-blank {
  padding: 0 3px;
  width: 14px;
  vertical-align: baseline;
}

[class*='btn'] .icon-blank {
  width: 15px;
}

.bgnnr-lyt-custom_panel .icon-blank {
  vertical-align: middle;
}

/* .icon-hover
----------------------------------------------- */
.icon-hover {
  position: relative;
  display: inline-block;
  line-height: 1;
}

.icon-hover::before {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.icon-hover > img {
  vertical-align: baseline;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

a:hover .icon-hover::before,
a:active .icon-hover::before,
a:focus .icon-hover::before {
  opacity: 1;
}

a:hover .icon-hover > img,
a:active .icon-hover > img,
a:focus .icon-hover > img {
  opacity: 0;
}

.icon-hover.-zoom {
  top: 2px;
  margin: 0 4px 0 0;
  width: 16px;
  height: 16px;
}

.icon-hover.-zoom::before {
  width: 16px;
  content: url(/common/img/icon/zoom-02.svg);
}

.icon-hover.-blank {
  margin: 0 0 0 4px;
  width: 15px;
  height: 12px;
}

.icon-hover.-blank::before {
  width: 15px;
  content: url(/common/img/icon/blank-03.svg);
}

.icon-hover.-download {
  margin: 0 0 0 10px;
  width: 24px;
  height: 24px;
  vertical-align: middle;
}

.icon-hover.-download::before {
  width: 24px;
  content: url(/common/img/icon/download-02.svg);
}

/* .icon-mark
----------------------------------------------- */
.icon-mark {
  position: relative;
  display: inline-block;
  overflow: hidden;
  box-sizing: border-box;
  color: transparent;
}

.icon-mark::before {
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
}

.icon-mark.-check {
  display: block;
  width: 9px;
  height: 13px;
  transform: rotate(45deg);
}

.icon-mark.-check::before {
  width: 5px;
  height: 9px;
  border-right: 3px solid #77DD77;
  border-bottom: 3px solid #77DD77;
}

.panel-plan_list_inner .icon-mark.-check {
  position: absolute;
  top: 5px;
  left: 0;
}

.icon-mark.-circle {
  width: 12px;
  height: 12px;
}

.icon-mark.-circle::before {
  width: 12px;
  height: 12px;
  border-radius: 6px;
  background: #77DD77;
}

/* .icon-label
----------------------------------------------- */
.icon-label {
  display: inline-block;
  padding: 5px 10px;
  background: #DFF7DF;
  font-size: 1.2rem;
  line-height: 1.4;
}

/* .icon-label-02
----------------------------------------------- */
.icon-label-02 {
  position: relative;
  top: -5px;
  display: inline-block;
  box-sizing: border-box;
  margin: 0 8px 0 0;
  padding: 5px 5px 6px;
  min-width: 90px;
  background: #FFA61B;
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.23077;
}

.icon-label-02::before {
  position: absolute;
  bottom: -6px;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 6px solid #FFA61B;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  transform: translateX(-50%);
}

/* .icon-label-03
----------------------------------------------- */
.icon-label-03 {
  display: inline-block;
  margin: 0 auto 6px;
  padding: 0 6px;
  border-radius: 4px;
  background: #77DD77;
  color: #fff;
  text-align: center;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .icon-label-03 {
    width: 52px;
    font-size: 1.2rem;
    line-height: 1.6;
  }
}

/* ----------------------------------------------------------------
    Button (.btn[-*])
----------------------------------------------------------------- */
/* .btn
----------------------------------------------- */
.btn {
  display: inline-block;
  box-sizing: border-box;
  padding: 10px 20px 11px;
  min-width: 260px;
  border: 1px solid #77DD77;
  border-radius: 5px;
  background: #fff;
  box-shadow: .5px .9px 2px rgba(102, 102, 102, .4);
  color: #77DD77;
  text-align: center;
  font-weight: 500;
  font-size: 1.9rem;
  line-height: 1.73333;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.btn.-thin {
  padding-top: 5px;
  padding-bottom: 6px;
  min-width: 170px;
  font-size: 1.6rem;
}

.btn:hover,
.btn:active,
.btn:focus {
  background: #77DD77;
  color: #fff;
}

/* .btn-primary
----------------------------------------------- */
.btn-primary {
  display: inline-block;
  box-sizing: border-box;
  padding: 15px 20px 14px;
  max-width: 260px;
  width: 100%;
  border: 2px solid #FFA61B;
  border-radius: 5px;
  background: #FFA61B;
  box-shadow: .5px .9px 2px rgba(102, 102, 102, .4);
  color: #fff;
  text-align: center;
  font-weight: 500;
  font-size: 1.9rem;
  line-height: 1.2;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background: #fff;
  color: #FFA61B;
}

.btn-primary.-external {
  min-width: 260px;
  max-width: none;
  width: auto;
  border-color: #069;
  background: #069;
}

.btn-primary.-external:hover,
.btn-primary.-external:active,
.btn-primary.-external:focus {
  background: #fff;
  color: #069;
}

.btn-primary.-wide {
  max-width: 310px;
}

/* .btn-fixed-bottom
----------------------------------------------- */
.btn-fixed-bottom {
  position: fixed;
  bottom: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 15px 20px;
  width: 100%;
  background: #fbfbfb;
}

.btn-fixed-bottom_item {
  display: block;
  box-sizing: border-box;
  padding: 15px 20px;
  min-width: 260px;
  border: 2px solid #069;
  border-radius: 3px;
  background: #069;
  box-shadow: .5px .9px 2px rgba(102, 102, 102, .4);
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.9rem;
  line-height: 1.73333;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.btn-fixed-bottom_item:hover,
.btn-fixed-bottom_item:active,
.btn-fixed-bottom_item:focus {
  background: #fff;
  color: #069;
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Nav (.nav-*)
----------------------------------------------------------------- */
/* .nav-toc
----------------------------------------------- */
.nav-toc {
  display: flex;
  flex-wrap: wrap;
  margin: -10px 0 0 -30px;
}

.nav-toc > li {
  margin: 10px 0 0 30px;
}

.nav-toc > li > a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
  color: #333;
  text-decoration: none;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.nav-toc > li > a::before {
  position: absolute;
  top: .3em;
  left: 0;
  width: 15px;
  height: 15px;
  background: url(/common/img/icon/link-angle.svg) no-repeat 0 0;
  transform: rotate(90deg);
}

.nav-toc > li > a:hover,
.nav-toc > li > a:active,
.nav-toc > li > a:focus {
  color: #77DD77;
}

.nav-toc.-column {
  flex-direction: column;
}

.uni-nav-toc .nav-toc {
  flex-basis: 100%;
}

.uni-nav-toc .nav-toc > li > a::before {
  top: .2em;
}

/* ----------------------------------------------------------------
    Grid (grid[-*])
----------------------------------------------------------------- */
/* .grid[data-col='2']
----------------------------------------------- */
.grid[data-col='2'] {
  margin-left: -3.06122%;
}

.grid[data-col='2'] > .grid_col {
  flex-basis: calc(50% - 2.9703%);
  margin-left: 2.9703%;
}

.grid[data-col='2'].-col-wide {
  margin-left: -2.04082%;
}

.grid[data-col='2'].-col-wide > .grid_col {
  flex-basis: calc(50% - 2%);
  margin-left: 2%;
}

/* .grid[data-col='3']
----------------------------------------------- */
.grid[data-col='3'] {
  margin-left: -3.06122%;
}

.grid[data-col='3'] > .grid_col {
  flex-basis: calc(33.33333% - 2.9703%);
  margin-left: 2.9703%;
}

.grid[data-col='3'].-col-wide {
  margin-left: -1.02041%;
}

.grid[data-col='3'].-col-wide > .grid_col {
  flex-basis: calc(33.33333% - 1.0101%);
  margin-left: 1.0101%;
}

/* .grid[data-col='4']
----------------------------------------------- */
.grid[data-col='4'] {
  margin-left: -2.04082%;
}

.grid[data-col='4'] > .grid_col {
  flex-basis: calc(25% - 2%);
  margin-left: 2%;
}

/* .grid
----------------------------------------------- */
.grid {
  display: flex;
  flex-wrap: wrap;
  margin-top: -30px;
  margin-bottom: 30px;
}

.lp-panel .grid {
  margin-bottom: 54px;
}

.grid_col {
  margin-top: 30px;
}

.grid_col > :last-child {
  margin-bottom: 0;
}

.grid.-center {
  justify-content: center;
}

.grid.-lyt-plan {
  justify-content: center;
}

.grid.-lyt-plan > .grid_col {
  display: flex;
  align-items: flex-end;
}

.grid.-lyt-stretch > .grid_col {
  display: flex;
  align-items: stretch;
}

.grid.link-list,
.grid.link-list[data-col-ss] {
  margin-top: -15px;
}

.grid.link-list > .grid_col,
.grid.link-list[data-col-ss] > .grid_col {
  margin-top: 15px;
}

@media only screen and (max-width: 767px) {
  .grid[data-col-ss='1'],
  .grid[data-col-ss='1'].-col-wide {
    flex-direction: column;
    flex-wrap: nowrap;
    margin: 0 0 40px;
  }
  .lp-panel .grid[data-col-ss='1'],
  .lp-panel .grid[data-col-ss='1'].-col-wide {
    margin-bottom: 46px;
  }
  .grid[data-col-ss='1'] > .grid_col,
  .grid[data-col-ss='1'].-col-wide > .grid_col {
    flex: 0 0 auto;
    margin: 0 0 40px;
  }
  .grid[data-col-ss='1'] > .grid_col:last-child,
  .grid[data-col-ss='1'].-col-wide > .grid_col:last-child {
    margin-bottom: 0;
  }
  .grid[data-col-ss='2'] {
    margin-top: -25px;
    margin-bottom: 25px;
    margin-left: -7.14286%;
  }
  .grid[data-col-ss='2'] > .grid_col {
    flex-basis: calc(50% - 6.66667%);
    margin-left: 6.66667%;
  }
  .grid[data-col-ss='2'] > .grid_col {
    margin-top: 25px;
  }
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Panel (.panel[-*])
----------------------------------------------------------------- */
/* .panel
----------------------------------------------- */
.panel {
  box-sizing: border-box;
  margin: 0 0 34px;
  padding: 20px 28px;
  border: 1px solid #e1e1e1;
  background: #fff;
}

.panel > :last-child {
  margin-bottom: 0;
}

.panel.-thick {
  border: 1px solid #77DD77;
}

@media only screen and (max-width: 767px) {
  .panel {
    margin: 0 0 20px;
    padding: 20px 10px;
  }
}

/* .panel-02
----------------------------------------------- */
.panel-02 {
  box-sizing: border-box;
  margin: 0 0 34px;
  padding: 40px 50px;
  border: 1px solid #77DD77;
  background: #fff;
}

.panel-02 > :last-child {
  margin-bottom: 0;
}

.hdg-l4 + .panel-02 {
  margin-top: 28px;
}

.panel-02_hdg {
  margin: 0 0 5px;
  color: #77DD77;
  font-size: 2rem;
}

@media only screen and (max-width: 767px) {
  .panel-02 {
    margin: 0 0 20px;
    padding: 25px 20px;
  }
  .panel-02_hdg {
    font-size: 1.6rem;
  }
}

/* .panel-03
----------------------------------------------- */
.panel-03 {
  box-sizing: border-box;
  margin: 0 0 34px;
  padding: 14px 28px 15px;
  border: 1px solid #e7e7e7;
  background: #fff;
  color: #6e6e6e;
}

.panel-03 > :last-child {
  margin-bottom: 0;
}

.panel-03_hdg {
  margin: 0 0 10px;
  color: #6e6e6e;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.44444;
}

@media only screen and (max-width: 767px) {
  .panel-03 {
    margin: 0 0 20px;
    padding: 25px 20px;
  }
  .panel-03_hdg {
    font-size: 1.6rem;
  }
}

/* .panel-04
----------------------------------------------- */
.panel-04 {
  padding: 26px 20px 30px;
  background: #F0FAF0;
  color: #666;
}

.panel-04 > :last-child {
  margin-bottom: 0;
}

.panel-04.-thin {
  background: #f8f8f8;
}

.panel-04_list > dt {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin: 0 0 10px;
  color: #02aec3;
  font-weight: 700;
  font-size: 1.8rem;
}

.panel-04_list > dt > b {
  flex: 0 0 auto;
  margin: 0 0 12px;
  padding: 0 5px 1px;
  border-bottom: 2px solid #25b4c7;
  color: #666;
  font-size: 1.6rem;
}

.panel-04_list > dd {
  text-align: center;
  font-size: 1.4rem;
  line-height: calc(21 / 14);
}

/* .panel-05
----------------------------------------------- */
.panel-05 {
  margin: 0 0 34px;
  padding: 24px 32px 32px;
  background: #F0FAF0;
  text-align: center;
}

.panel-05 > :last-child {
  margin-bottom: 0;
}

.panel-05_hdg {
  margin-bottom: 8px;
  color: #77DD77;
  font-size: 2.5rem;
}

.panel-05_txt {
  margin-bottom: 20px;
}

.panel-05_txt > p {
  margin-bottom: 0;
}

.panel-05_txt > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .panel-05 {
    padding: 18px 24px 24px;
  }
  .panel-05_hdg {
    font-size: 2.2rem;
  }
}

/* .panel-nav
----------------------------------------------- */
.panel-nav {
  margin: 0 0 34px;
  padding: 20px 40px;
  background: #f8f8f8;
}

.panel-nav > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .panel-nav {
    margin: 0 -20px 20px;
    padding: 20px 20px;
  }
}

/* .panel-plan
----------------------------------------------- */
.grid_col > .panel-plan {
  width: 100%;
}

.panel-plan_header {
  display: flex;
  flex-direction: column;
}

.panel-plan_col {
  position: relative;
  display: flex;
  align-items: stretch;
  margin: 0 0 20px;
  padding: 27px 0 0;
}

.panel-plan_col::before {
  min-height: 100px;
  content: '';
}

.panel-plan_col::after {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 15px solid #d0f5fa;
  border-right: 4.5px solid transparent;
  border-left: 4.5px solid transparent;
  transform: translateX(-50%);
}

.panel-plan_hdg {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  order: 2;
  box-sizing: border-box;
  padding: 8px 27px;
  min-height: 64px;
  background: #999;
  box-shadow: .5px .9px 2px #ccc;
  color: #fff;
  text-align: center;
  font-size: 2.4rem;
}

.panel-plan_hdg > span {
  flex-basis: 100%;
}

.panel-plan_hdg > span > b {
  display: block;
  margin: 3px auto 0;
  max-width: 160px;
  width: 100%;
  border-radius: 12px;
  background: #fff;
  color: #77DD77;
  font-size: 1.4rem;
}

.panel-plan_hdg > span > sup {
  top: -.8em;
  font-size: 1.4rem;
}

.panel-plan_hdg > span > sup > a {
  text-decoration: none;
}

.panel-plan_hdg.-lyt-wide-label > span > b {
  max-width: 220px;
}

.panel-plan_list-catch {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0;
  padding: 0 0 10px;
  width: 100%;
  border-radius: 10px 10px 0 0;
  font-size: 1.8rem;
}

.panel-plan_list-catch > :last-child {
  border-radius: 0 0 10px 10px;
}

.panel-plan_list-catch::before,
.panel-plan_list-catch::after {
  position: absolute;
  top: 1px;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 15px solid #d0f5fa;
  border-right: 4.5px solid transparent;
  border-left: 4.5px solid transparent;
}

.panel-plan_list-catch::before {

  margin: 0 0 0 11px;
  transform: translateX(-50%) rotate(30deg);
}

.panel-plan_list-catch::after {
  margin: 0 0 0 -11px;
  transform: translateX(-50%) rotate(-30deg);
}

.panel-plan_list-catch_item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 100%;
  background: #d0f5fa;
  color: #77DD77;
  text-align: center;
}

.panel-plan_list-catch_item::before {
  position: absolute;
  bottom: -10px;
  left: 50%;
  z-index: 1;
  width: 0;
  height: 0;
  border-top: 10px solid #d0f5fa;
  border-right: 13px solid transparent;
  border-left: 13px solid transparent;
  transform: translateX(-50%);
}

.panel-plan_list-catch_item > span {
  padding: 10px;
}

.panel-plan_list-catch_item.-enterprise {
  background: #22cbdf;
  color: #fff;
}

.panel-plan_list-catch_item.-enterprise::before {
  border-top-color: #22cbdf;
}

.panel-plan_body {
  box-sizing: border-box;
  padding: 0 27px 30px;
  border: 1px solid #999;
  background: #fff;
  box-shadow: .5px .9px 2px #ccc;
}

.panel-plan_body > :last-child {
  margin-bottom: 0;
}

.panel-plan_txt {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}

.panel-plan_txt::before {
  min-height: 92px;
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  content: '';
}

.panel-plan_txt > span {
  display: block;
  text-align: center;
  line-height: 1.3;
}

.panel-plan_txt > span > b {
  display: block;
  font-weight: 500;
  font-size: 3.2rem;
}

.panel-plan_txt > span > b > em {
  position: relative;
  top: -.4em;
  display: inline-block;
  margin: 0 10px 0 0;
  padding: 6px 10px;
  border-radius: 8px;
  background: #ff5692;
  color: #fff;
  font-size: 1.5rem;
}

.panel-plan_txt > span > span {
  display: block;
  margin: 0 0 6px;
  color: #ff5692;
  font-weight: 700;
}

.panel-plan_txt > .panel-plan_txt_inner > .panel-plan_txt_price {
  color: #333;
  font-weight: normal;
}

.panel-plan_txt > .panel-plan_txt_inner > .panel-plan_txt_price > .txt-price {
  font-size: 1.8rem;
}

.panel-plan_txt > .panel-plan_txt_inner > .panel-plan_txt_price > .txt-num {
  color: #77DD77;
  font-weight: 500;
  font-size: 3.2rem;
}

.panel-plan_txt.-lower::before {
  min-height: 132px;
}

.panel-plan_txt-02 {
  margin: 0;
  color: #ff5692;
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem;
}

.panel-plan_txt-03 {
  margin: 4px 0 26px;
  min-height: 57px;
  text-align: center;
}

.panel-plan_txt-03 > span {
  display: block;
  margin: 0 0 -6px;
}

.panel-plan_txt-03 > b {
  font-size: 2.2rem;
}

.panel-plan_txt-04 {
  color: #ff5692;
  text-align: center;
}

.panel-plan_list-desc {
  margin: 0 -27px;
}

.panel-plan_list-desc_inner {
  position: relative;
  padding: 4px 27px;
  text-align: center;
}

.panel-plan_list-desc_inner:not(.-em)::before {
  position: absolute;
  bottom: 0;
  width: calc(100% - 27px * 2);
  height: 1px;
  background: #e1e1e1;
}

.panel-plan_list-desc_inner:not(.-em) > dd {
  font-weight: 700;
}

.panel-plan_list-desc_inner:not(.-em) > dd > b {
  font-weight: 500;
  font-size: 2.2rem;
}

.panel-plan_list-desc_inner:not(.-em) > dd > span {
  font-weight: normal;
}

.panel-plan_list-desc_inner.-em {
  padding-top: 6px;
  padding-bottom: 6px;
  background: #fffce0;
}

.panel-plan_list-desc_inner.-em > dd {
  font-size: 1.6rem;
  line-height: 1.3;
}

.panel-plan_list-desc_inner.-em > dd > b {
  font-weight: 400;
  font-size: 2.6rem;
}

.panel-plan_list-desc_inner.-em > dd > span {
  display: block;
  font-size: 1.2rem;
}

.panel-plan_list-desc_inner.-em > dd > sup {
  top: -.7em;
  font-size: 1.4rem;
}

.panel-plan_list-desc_inner.-em > dd > sup > a {
  text-decoration: none;
}

.panel-plan_list-desc_inner.-adjust-h {
  display: table;
  box-sizing: border-box;
  padding-top: 6px;
  padding-bottom: 6px;
  min-height: 84px;
  width: 100%;
}

.panel-plan_list-desc_inner.-adjust-h > dt,
.panel-plan_list-desc_inner.-adjust-h > dd {
  display: table-row;
  vertical-align: middle;
}

.panel-plan_list-desc_inner.-adjust-h.-lower {
  min-height: 100px;
}

.panel-plan_list {
  margin: 17px -27px 20px;
}

strong.panel-plan_list_inner {
  background: #edfbfc;
  color: inherit;
}

strong.panel-plan_list_inner > span > span {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
}

strong.panel-plan_list_inner > span > b {
  padding: 3px 0 0;
  color: #77DD77;
  font-size: 1.3rem;
}

.panel-plan_list_inner {
  display: block;
  padding: 1px 27px 2px;
  font-size: 1.6rem;
}

.panel-plan_list_inner > span {
  position: relative;
  display: flex;
  padding: 0 0 0 20px;
}

.panel-plan_list_inner > span > span > span {
  font-size: 1.2rem;
}

.panel-plan_list_thin {
  color: #ccc;
}

.panel-plan_list-02 {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin: 15px 0 17px;
  font-size: 1.4rem;
}

.panel-plan_btn-primary {
  padding: 0 0 0 26px;
  text-align: center;
}

.panel-plan_btn-primary > a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 9px 10px 9px 46px;
  max-width: 240px;
  width: 100%;
  border: 1px solid #FFA61B;
  border-radius: 5px;
  background: #FFA61B;
  box-shadow: .5px .9px 2px #ccc;
  color: #fff;
  text-align: center;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.9rem;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-plan_btn-primary > a > span {
  position: absolute;
  top: -7px;
  left: -25px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 64px;
  border-radius: 32px;
  background-color: #7ebe36;
  box-shadow: .5px .9px 2px #ccc;
  color: #fff;
}

.panel-plan_btn-primary > a > span::before {
  min-height: 64px;
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  content: '';
}

.panel-plan_btn-primary > a:hover,
.panel-plan_btn-primary > a:active,
.panel-plan_btn-primary > a:focus {
  background: #fff;
  color: #FFA61B;
}

.panel-plan_btn-primary > a:hover > span,
.panel-plan_btn-primary > a:active > span,
.panel-plan_btn-primary > a:focus > span {
  color: #fff;
}

.panel-plan.-plan {
  border-color: #77DD77;
}

.panel-plan.-plan .panel-plan_hdg {
  background: #77DD77;
  font-size: 2.8rem;
}

.panel-plan.-plan .panel-plan_body {
  border-color: #77DD77;
}

.panel-plan.-plan .panel-plan_txt > span > b {
  color: #77DD77;
}

.panel-plan.-plan .panel-plan_txt > span > .panel-plan_txt-inner {
  display: inline-block;
  color: #ff5692;
}

.panel-plan.-plan .panel-plan_txt > span > sub > a {
  color: inherit;
  text-decoration: none;
}

.panel-plan.-plan .panel-plan_list-desc_inner.-em > dd {
  color: #77DD77;
}

.panel-plan.-plan .panel-plan_list-desc_inner.-em > dd > span {
  color: #333;
}

.panel-plan.-plan .panel-plan_col::after {
  border-top-color: #77DD77;
}

.panel-plan.-plan .panel-plan_list-catch {
  font-size: 1.7rem;
}

.panel-plan.-plan-02 {
  border-color: #22cbdf;
}

.panel-plan.-plan-02 .panel-plan_hdg {
  background: #22cbdf;
  font-size: 2.8rem;
}

.panel-plan.-plan-02 .panel-plan_body {
  border-color: #22cbdf;
}

.panel-plan.-plan-02 .panel-plan_txt > span > b {
  color: #22cbdf;
}

.panel-plan.-plan-02 .panel-plan_txt > span > .panel-plan_txt-inner {
  display: inline-block;
  color: #ff5692;
}

.panel-plan.-plan-02 .panel-plan_txt > span > sub > a {
  color: inherit;
  text-decoration: none;
}

.panel-plan.-plan-02 .panel-plan_txt > span > sub > .txt-price {
  color: #333;
  font-weight: 500;
  font-size: 1.8rem;
}

.panel-plan.-plan-02 .panel-plan_list-desc_inner.-em > dd {
  color: #22cbdf;
}

.panel-plan.-plan-02 .panel-plan_list-desc_inner.-em > dd > span {
  color: #333;
}

.panel-plan.-plan-02 .panel-plan_col::after {
  border-top-color: #22cbdf;
}

.panel-plan.-plan-02 .panel-plan_list-catch::before,
.panel-plan.-plan-02 .panel-plan_list-catch::after {
  border-top-color: #22cbdf;
}

.panel-plan.-plan-02 .panel-plan.-plan-02_btn-primary {
  max-width: none;
  width: 100%;
}

.panel-plan.-plan-03 {
  border-color: #6cccce;
}

.panel-plan.-plan-03 .panel-plan_hdg {
  background: #6cccce;
  font-size: 2.8rem;
}

.panel-plan.-plan-03 .panel-plan_body {
  border-color: #6cccce;
}

.panel-plan.-plan-03 .panel-plan_txt > span > b {
  color: #ff5692;
}

.panel-plan.-plan-03 .panel-plan_txt > span > .txt-price {
  color: #333;
  font-weight: 500;
  font-size: 1.8rem;
}

.panel-plan.-plan-03 .panel-plan_list-desc_inner.-em > dd {
  color: #29c9e6;
}

.panel-plan.-plan-03 .panel-plan_list-desc_inner.-em > dd > span {
  color: #333;
}

.panel-plan.-plan-03 .panel-plan_col::after {
  border-top-color: #29c9e6;
}

.panel-plan.-plan-03 .panel-plan_list-catch::before,
.panel-plan.-plan-03 .panel-plan_list-catch::after {
  border-top-color: #29c9e6;
}

.panel-plan.-plan-03 .panel-plan.-plan-03_btn-primary {
  max-width: none;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .panel-plan {
    width: 100%;
  }
  .panel-plan_btn-primary > a {
    min-width: 0;
    max-width: 240px;
    width: 100%;
  }
}

/* .panel-card
----------------------------------------------- */
.panel-card {
  position: relative;
  display: flex;
  align-items: stretch;
  box-sizing: border-box;
  padding: 0 0 33px;
  width: 100%;
}

.panel-card::before {
  position: absolute;
  right: 16px;
  bottom: 0;
  z-index: 1;
  width: calc(100% - 32px);
  height: 33px;
  background: #fff;
  box-shadow: .5px .9px 2px #ccc;
  transform: skew(-45deg);
}

.panel-card::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 32px;
  width: calc(100% - 2px);
  box-shadow: .5px .9px 2px rgba(102, 102, 102, .4);
}

.panel-card_inner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  padding: 15px 15px 5px;
  width: 100%;
  background: #fff;
  font-size: 1.4rem;
}

.panel-card_inner > :last-child {
  margin-bottom: 0;
}

.panel-card_inner::before {
  position: absolute;
  bottom: -33px;
  left: 0;
  z-index: 1;
  width: 35px;
  height: 35px;
  background: #fff;
}

.panel-card_link {
  margin: 0 0 10px;
}

.panel-card_link > a {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  color: #333;
  text-align: center;
  text-decoration: none;
  font-size: 1.5rem;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-card_link > a::before {
  min-height: 145px;
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  content: '';
}

.panel-card_link > a:hover,
.panel-card_link > a:active,
.panel-card_link > a:focus {
  color: #77DD77;
}

.panel-card_link_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.panel-card_link_txt {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  font-weight: 500;
}

.panel-card_link_txt > span {
  position: relative;
  display: block;
  padding: 0 0 0 25px;
}

.panel-card_link_txt > span::before {
  position: absolute;
  top: .3em;
  left: 0;
  width: 15px;
  height: 15px;
  background: url(/common/img/icon/link-angle.svg) no-repeat 0 0;
}

@media only screen and (max-width: 767px) {
  .panel-card_link > a::before {
    /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
    min-height: 115px;
  }
}

/* .panel-card-02
----------------------------------------------- */
.panel-card-02 {
  display: flex;
  align-items: stretch;
  flex-basis: 100%;
  box-sizing: border-box;
  border: 1px solid #ccc;
}

.panel-card-02 > a {
  display: block;
  box-sizing: border-box;
  padding: 0 30px 20px;
  width: 100%;
  background: #fff;
  color: #333;
  text-decoration: none;
}

.panel-card-02 > a > :last-child {
  margin-bottom: 0;
}

.panel-card-02 > a:hover > .panel-card-02_link > span,
.panel-card-02 > a:active > .panel-card-02_link > span,
.panel-card-02 > a:focus > .panel-card-02_link > span {
  color: #77DD77;
}

.panel-card-02_img {
  margin: 0 -30px 12px;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-card-02_img > img {
  max-width: none;
  width: 100%;
}

a:hover > .panel-card-02_img,
a:active > .panel-card-02_img,
a:focus > .panel-card-02_img {
  opacity: .8;
}

.panel-card-02_txt-lead {
  display: block;
  margin: 0 0 5px;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.625;
}

.panel-card-02_txt-lead::before,
.panel-card-02_txt-lead::after {
  content: '';
}

.panel-card-02_txt {
  margin: 0 0 5px;
  font-style: normal;
  font-size: 1.2rem;
}

.panel-card-02_link {
  text-align: right;
}

.panel-card-02_link > span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 25px;
  color: #333;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-card-02_link > span::before {
  position: absolute;
  top: .3em;
  left: 0;
  width: 15px;
  height: 15px;
  background: url(/common/img/icon/link-angle.svg) no-repeat 0 0;
}

@media only screen and (max-width: 767px) {
  .panel-card-02 > a {
    padding: 0 15px 15px;
  }
  .panel-card-02_img {
    margin-right: -15px;
    margin-left: -15px;
  }
}

/* .panel-card-03
----------------------------------------------- */
.panel-card-03 {
  display: flex;
  flex-direction: row-reverse;
  box-sizing: border-box;
  margin: 0 0 34px;
  height: 100%;
  border: 1px solid #77DD77;
  background: #fff;
  color: #333;
  transition: background .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-card-03:hover,
.panel-card-03:active,
.panel-card-03:focus {
  background: #F0FAF0;
}

.panel-card-03_col {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 30px;
}

.panel-card-03_col > :last-child {
  margin-bottom: 0;
}

.panel-card-03_img {
  display: flex;
  align-items: center;
}

.panel-card-03_img > img {
  max-width: none;
  width: 100%;
}

.panel-card-03_txt {
  margin: 0 0 12px;
  font-size: 1.6rem;
}

.panel-card-03_txt > strong {
  display: inline-block;
  margin: 0 0 17px;
  padding: 4px 16px 5px;
  background: #77DD77;
  color: #fff;
  line-height: 1;
}

.panel-card-03_txt > b {
  display: block;
  font-weight: 500;
  line-height: 1.625;
}

.panel-card-03_txt-02 {
  font-size: 1.2rem;
}

@media only screen and (max-width: 1020px) {
  .panel-card-03_img {
    width: 55%;
  }
}

@media only screen and (max-width: 767px) {
  .panel-card-03 {
    justify-content: flex-end;
    flex-direction: column-reverse;
  }
  .panel-card-03_col {
    flex: 0 0 auto;
    padding: 9px 15px;
  }
  .panel-card-03_img {
    flex: 0 0 auto;
    width: 100%;
  }
  .panel-card-03_txt {
    margin: 0 0 2px;
  }
  .panel-card-03_txt > strong {
    margin: 0 0 8px;
    padding: 4px 16px 5px;
    font-size: 1.2rem;
  }
  .panel-card-03_txt > b {
    font-size: 1.5rem;
    line-height: 1.33333;
  }
}

/* .panel-card-multipurpose
----------------------------------------------- */
.panel-card-multipurpose > li > a {
  display: flex;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0 0 34px;
  height: 100%;
  border: 1px solid #77DD77;
  border-radius: 10px;
  background: #fff;
  box-shadow: .5px .8px 2px 0 rgba(204, 204, 204, .004);
  color: #333;
  text-decoration: none;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-card-multipurpose > li > a:hover,
.panel-card-multipurpose > li > a:active,
.panel-card-multipurpose > li > a:focus {
  opacity: .8;
}

.panel-card-multipurpose .panel-card-multipurpose_col {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 30px 0 40px 40px;
}

.panel-card-multipurpose .panel-card-multipurpose_col > :last-child {
  margin-bottom: 0;
}

.panel-card-multipurpose .panel-card-multipurpose_img {
  position: relative;
  display: flex;
  align-items: center;
}

.panel-card-multipurpose .panel-card-multipurpose_img::before {
  position: absolute;
  top: 0;
  left: -2px;
  width: 180px;
  height: 100%;
  background: linear-gradient(to right, white 0, white 40%, rgba(255, 255, 255, 0) 100%);
}

.panel-card-multipurpose .panel-card-multipurpose_img > img {
  max-width: none;
  width: 100%;
}

.panel-card-multipurpose .panel-card-multipurpose_label {
  margin: 0 0 22px;
  color: #fff;
  font-size: 1.3rem;
}

.panel-card-multipurpose .panel-card-multipurpose_label > span {
  display: inline-block;
  margin: 0 0 0 -40px;
  padding: 5px 20px 5px 40px;
  background: #77DD77;
}

.panel-card-multipurpose .panel-card-multipurpose_txt {
  position: relative;
  right: -125px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  margin: 0 0 12px -125px;
}

.panel-card-multipurpose .panel-card-multipurpose_txt > q,
.panel-card-multipurpose .panel-card-multipurpose_txt > cite {
  display: block;
  flex: 0 0 auto;
}

.panel-card-multipurpose .panel-card-multipurpose_txt > q {
  font-size: 2.3rem;
  line-height: 1.47826;
}

.panel-card-multipurpose .panel-card-multipurpose_txt > q::before,
.panel-card-multipurpose .panel-card-multipurpose_txt > q::after {
  content: '';
}

.panel-card-multipurpose .panel-card-multipurpose_txt > cite {
  font-style: normal;
  font-size: 1.3rem;
}

@media only screen and (max-width: 767px) {
  .panel-card-multipurpose > li > a {
    position: relative;
    justify-content: flex-end;
    flex-direction: column-reverse;
  }
  .panel-card-multipurpose .panel-card-multipurpose_col {
    display: block;
    flex: 0 0 auto;
    padding: 13px 20px 15px;
  }
  .panel-card-multipurpose .panel-card-multipurpose_img {
    flex: 0 0 auto;
  }
  .panel-card-multipurpose .panel-card-multipurpose_img::before {
    display: none;
  }
  .panel-card-multipurpose .panel-card-multipurpose_label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    text-align: center;
  }
  .panel-card-multipurpose .panel-card-multipurpose_label > span {
    margin: 0;
    padding: 5px 10px;
  }
  .panel-card-multipurpose .panel-card-multipurpose_txt {
    right: auto;
    margin-left: 0;
  }
  .panel-card-multipurpose .panel-card-multipurpose_txt > q {
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .panel-card-multipurpose .panel-card-multipurpose_txt > cite {
    font-size: 1.2rem;
  }
}

/* .panel-card-multipurpose-02
----------------------------------------------- */
.panel-card-multipurpose-02 {
  display: flex;
  flex-wrap: wrap;
  margin-top: -30px;
  margin-bottom: 30px;
  margin-left: -2.55102%;
}

.panel-card-multipurpose-02 > li {
  flex-basis: calc(33.33333% - 2.48756%);
  margin-left: 2.48756%;
}

.panel-card-multipurpose-02 > li {
  margin-top: 30px;
}

.panel-card-multipurpose-02 > li > a {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  overflow: hidden;
  box-sizing: border-box;
  color: #333;
  text-decoration: none;
  transition: color .2s cubic-bezier(.4, 0, .2, 1);
}

.panel-card-multipurpose-02 > li > a:hover,
.panel-card-multipurpose-02 > li > a:active,
.panel-card-multipurpose-02 > li > a:focus {
  color: #77DD77;
}

.panel-card-multipurpose-02 > li > a:hover > .panel-card-multipurpose_img > img,
.panel-card-multipurpose-02 > li > a:active > .panel-card-multipurpose_img > img,
.panel-card-multipurpose-02 > li > a:focus > .panel-card-multipurpose_img > img {
  opacity: .8;
}

.panel-card-multipurpose-02 > li > a:hover q,
.panel-card-multipurpose-02 > li > a:active q,
.panel-card-multipurpose-02 > li > a:focus q {
  text-decoration: none;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_col,
.panel-card-multipurpose-02 .panel-card-multipurpose_img {
  flex: 0 0 auto;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_col > :last-child,
.panel-card-multipurpose-02 .panel-card-multipurpose_img > :last-child {
  margin-bottom: 0;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_img {
  position: relative;
  overflow: hidden;
  margin: 0 0 14px;
  min-height: 200px;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_img > img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  z-index: 0;
  max-width: none;
  max-height: 200px;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
  transform: translateX(-50%);
}

.panel-card-multipurpose-02 .panel-card-multipurpose_label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  color: #333;
  font-size: 1.3rem;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_label > span {
  display: inline-block;
  padding: 5px 10px;
  background: #DFF7DF;
  font-size: 1.2rem;
  line-height: 1.4;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_txt {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  flex: 1;
  margin: 0 0 12px;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_txt > q {
  display: block;
  margin: 0 0 6px;
  text-decoration: underline;
  font-size: 1.6rem;
  line-height: 1.4;
}

.panel-card-multipurpose-02 .panel-card-multipurpose_txt > q::before,
.panel-card-multipurpose-02 .panel-card-multipurpose_txt > q::after {
  content: '';
}

.panel-card-multipurpose-02 .panel-card-multipurpose_txt > cite {
  display: block;
  font-style: normal;
  font-size: 1.2rem;
}

@media only screen and (max-width: 1020px) {
  .panel-card-multipurpose-02 .panel-card-multipurpose_img {
    display: block;
    min-height: 0;
    width: 100%;
    background: #fff;
  }
  .panel-card-multipurpose-02 .panel-card-multipurpose_img > img {
    position: static;
    max-height: none;
    width: 100%;
    transform: none;
  }
}

@media only screen and (max-width: 767px) {
  .panel-card-multipurpose-02 {
    flex-direction: column;
    flex-wrap: nowrap;
    margin: 0 0 40px;
  }
  .panel-card-multipurpose-02 > li {
    flex: 0 0 auto;
    margin: 0 0 40px;
  }
  .panel-card-multipurpose-02 > li:last-child {
    margin-bottom: 0;
  }
  .panel-card-multipurpose-02 > li > a {
    position: relative;
    justify-content: flex-end;
    flex-direction: column-reverse;
  }
  .panel-card-multipurpose-02 .panel-card-multipurpose_txt > q {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

/* .panel-* 縺ｮ髫｣謗･譎ゅ�繝ｼ繧ｸ繝ｳ隱ｿ謨ｴ
----------------------------------------------- */
.panel + .panel,
.panel + [class^='panel-']:not([class*='_']):not([class^='panel-primary']),
[class^='panel-']:not([class*='_']) + .panel,
[class^='panel-']:not([class*='_']) + [class^='panel-']:not([class*='_']):not([class^='panel-primary']) {
  margin-top: 40px;
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Media (.media[-*])
----------------------------------------------------------------- */
/* .media
----------------------------------------------- */
.media {
  margin: 0 0 28px;
  width: 100%;
  /* for IE */
  text-align: center;
}

.media_item {
  margin: 0;
}

.grid_col > .media:first-child {
  margin-top: 6px;
}

.grid_col > .media:last-child {
  margin-bottom: 0;
}

.media.-iframe .media_item {
  margin: 0 auto;
}

.media.-shadow > .media_item > img {
  box-shadow: -3.9px 4.6px 10px rgba(102, 102, 102, .2);
}

.lp-lyt-point-02_col .media {
  display: flex;
  justify-content: flex-end;
}

.lp-lyt-point-02_col-02 .media {
  margin: 0;
}

.lp-lyt-point-02_col-02 .media > .media_item img {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .media.-iframe .media_item > iframe {
    max-width: 100%;
    max-height: 400px;
    width: 100vw;
    height: 40vw;
  }
  .media-lyt_item .media.-iframe .media_item > iframe {
    max-width: 580px;
    max-height: 480px;
    width: 59vw;
    height: 48vw;
  }
}

@media only screen and (max-width: 767px) {
  .modal_scroll .media_item > img {
    max-width: none;
  }
  .media.-iframe .media_item > iframe {
    width: 87vw;
    height: 112vw;
  }
  .lp-lyt-point-02_col .media {
    justify-content: center;
  }
}

/* .media-caption
----------------------------------------------- */
.media-caption {
  margin: 14px 0 0;
  font-size: 1.3rem;
  line-height: 1.6;
}

/* .media-lyt
----------------------------------------------- */
.media-lyt {
  display: flex;
  margin: 0 0 34px;
}

.media-lyt + media-lyt {
  margin-top: 40px;
}

.media-lyt_col > :last-child,
.media-lyt_item > :last-child {
  margin-bottom: 0;
}

.media-lyt_col {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
}

@media only screen and (min-width: 768px) {
  .media-lyt.-left {
    flex-direction: row-reverse;
  }
  .media-lyt.-left > .media-lyt_item {
    margin-right: 40px;
  }
  .media-lyt.-right > .media-lyt_item {
    margin-left: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .media-lyt {
    flex-direction: column-reverse;
  }
  .media-lyt_col,
  .media-lyt_item {
    flex: 0 0 auto;
  }
  .media-lyt_item {
    margin: 0 0 15px;
    text-align: center;
  }
  .media-lyt.-ss-bottom {
    flex-direction: column;
  }
  .media-lyt.-ss-bottom > .media-lyt_col {
    margin: 0 0 15px;
  }
  .media-lyt.-ss-bottom > .media-lyt_item {
    margin: 0;
  }
}

@media only screen and (max-width: 1020px) {
  .grid_col .media-lyt {
    flex-direction: column-reverse;
  }
  .grid_col .media-lyt_col,
  .grid_col
  .media-lyt_item {
    flex: 0 0 auto;
  }
  .grid_col .media-lyt_item {
    margin: 0 0 34px;
    text-align: center;
  }
  .grid_col .media-lyt.-ss-bottom {
    flex-direction: column;
  }
  .grid_col .media-lyt.-ss-bottom > .media-lyt_col {
    margin: 0 0 34px;
  }
  .grid_col .media-lyt.-ss-bottom > .media-lyt_item {
    margin: 0;
  }
}

/* .media-lyt-02
----------------------------------------------- */
.media-lyt-02 {
  margin: 0 0 34px;
}

.media-lyt-02 + media-lyt-02 {
  margin-top: 40px;
}

.media-lyt-02::after {
  clear: both;
}

.media-lyt-02_col > :last-child,
.media-lyt-02_item > :last-child {
  margin-bottom: 0;
}

.media-lyt-02_item {
  margin: 0 0 20px;
}

@media only screen and (min-width: 768px) {
  .media-lyt-02.-left > .media-lyt-02_item {
    float: left;
    margin-right: 40px;
  }
  .media-lyt-02.-right > .media-lyt-02_item {
    float: right;
    margin-left: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .media-lyt-02 {
    display: flex;
    flex-direction: column;
  }
  .media-lyt-02_col,
  .media-lyt-02_item {
    flex: 0 0 auto;
  }
  .media-lyt-02_item {
    margin: 0 0 15px;
    text-align: center;
  }
  .media-lyt-02.-ss-bottom {
    flex-direction: column-reverse;
  }
  .media-lyt-02.-ss-bottom > .media-lyt_col {
    margin: 0 0 15px;
  }
  .media-lyt-02.-ss-bottom > .media-lyt_item {
    margin: 0;
  }
}

/* .media-hero
----------------------------------------------- */
.media-hero {
  position: relative;
  height: 0;
}

.media-hero_inner {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  width: 100%;
  height: 300px;
}

.media-hero_inner > img {
  position: absolute;
  left: 50%;
  max-width: none;
  transform: translateX(-50%);
}

@media only screen and (max-width: 767px) {
  .media-hero {
    height: 60px;
  }
  .media-hero_inner {
    height: 140px;
  }
}

/* .media-* 縺ｮ髫｣謗･譎ゅ�繝ｼ繧ｸ繝ｳ隱ｿ謨ｴ
----------------------------------------------- */
.media + .media,
.media + [class^='media-']:not([class*='_']),
[class^='media-']:not([class*='_']) + .media,
[class^='media-']:not([class*='_']) + [class^='media-']:not([class*='_']) {
  margin-top: 40px;
}

/* ----------------------------------------------------------------
    Layout (.lyt-*)
----------------------------------------------------------------- */
/* .lyt-quote
----------------------------------------------- */
.lyt-quote {
  display: flex;
}

.lyt-quote_col > :last-child,
.lyt-quote_item > :last-child {
  margin-bottom: 0;
}

.lyt-quote_col {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
}

.lyt-quote_txt-catch {
  margin: 0 0 23px;
  color: #666;
  font-size: 2.3rem;
  line-height: 1.30435;
}

.lyt-quote_txt-catch > b {
  position: relative;
  display: inline-block;
  padding: 11px 25px 13px 28px;
}

.lyt-quote_txt-catch > b::before,
.lyt-quote_txt-catch > b::after {
  position: absolute;
  display: block;
  color: #6dc2cc;
  font-weight: 700;
  font-size: 4.3rem;
  line-height: 1;
}

.lyt-quote_txt-catch > b::before {
  top: 1px;
  left: 0;
  content: '窶�';
}

.lyt-quote_txt-catch > b::after {
  right: 0;
  bottom: -20px;
  content: '窶�';
}

.lyt-quote_list-desc > dt {
  margin: 0 0 10px;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.625;
}

@media only screen and (min-width: 768px) {
  .lyt-quote {
    flex-direction: row-reverse;
  }
  .lyt-quote_item {
    margin-right: 60px;
  }
}

@media only screen and (max-width: 1020px) {
  .lyt-quote_item {
    width: 40%;
  }
}

@media only screen and (max-width: 767px) {
  .lyt-quote {
    flex-direction: column-reverse;
  }
  .lyt-quote_col,
  .lyt-quote_item {
    flex: 0 0 auto;
  }
  .lyt-quote_item {
    width: auto;
  }
  .lyt-quote_txt-catch {
    margin: 30px 0 20px;
    font-size: 1.6rem;
    line-height: 1.625;
  }
}

/* .lyt-sample
----------------------------------------------- */
.lyt-sample {
  display: flex;
  flex-direction: column;
}

.lyt-sample_col,
.lyt-sample_col-02 {
  flex: 0 0 auto;
}

.lyt-sample_col > :last-child,
.lyt-sample_col-02 > :last-child {
  margin-bottom: 0;
}

.lyt-sample_col {
  order: 2;
}

.lyt-sample_col-02 {
  order: 1;
  margin: 0 0 3px;
}

.lyt-sample_txt {
  text-align: center;
  font-size: 1.6rem;
}

.lyt-sample_txt > span {
  display: block;
  margin: -3px 0 0;
  font-size: 1.4rem;
}

/* .lyt-case
----------------------------------------------- */
.lyt-case {
  display: flex;
  flex-direction: row-reverse;
  margin: 0 0 34px;
}

.lyt-case_col > :last-child,
.lyt-case_item > :last-child {
  margin-bottom: 0;
}

.lyt-case_col {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  margin-left: 14px;
}

.lyt-case_txt-name {
  display: block;
  margin: 0 0 4px;
  font-style: normal;
}

.lyt-case_txt-name_item {
  display: block;
  font-size: 1.2rem;
}

.icon-label + .lyt-case_txt-name_item {
  margin-top: 5px;
}

.lyt-case_txt-voice {
  margin: 0 0 6px;
  font-weight: 500;
  line-height: 1.4;
}

.lyt-case_txt-voice > :last-child {
  margin-bottom: 0;
}

.lyt-case_link {
  display: flex;
  justify-content: flex-end;
}

/* .lyt-cv
----------------------------------------------- */
.lyt-cv {
  margin: 60px 0 40px;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .lyt-cv {
    margin: 40px 0 20px;
  }
}

/* ----------------------------------------------------------------
    Function Element Fixed (.fn-fixed-elm)
----------------------------------------------------------------- */
/* .fn-fixed-elm
----------------------------------------------- */
.fn-fixed-elm {
  visibility: hidden;
}

.fn-fixed-elm.is-show,
.fn-fixed-elm.is-animate {
  visibility: visible;
}

.fn-fixed-elm_item {
  position: fixed;
  opacity: 0;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  transform: translateY(-5px);
}

.fn-fixed-elm.is-show .fn-fixed-elm_item {
  opacity: 1;
  transform: translateY(0);
}

.fn-fixed-elm.is-animate .fn-fixed-elm_item {
  opacity: 0;
  transform: translateY(-10px);
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-fixed-elm {
  visibility: visible;
  transition: none;
}

.no-js .fn-fixed-elm_item {
  opacity: 1;
  transition: none;
}

/* ----------------------------------------------------------------
    Toggle (.toggle[-*])
----------------------------------------------------------------- */
.toggle {
  box-shadow: 0 0 6px 2px rgba(0, 0, 0, .1);
}

.toggle_hdg {
  position: relative;
  font-size: 1.8rem;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.toggle_hdg:hover {
  opacity: .7;
}

.toggle_hdg::after {
  position: absolute;
  top: 50%;
  right: 39px;
  margin-top: -12px;
  width: 22px;
  height: 22px;
  border: 2px solid #77DD77;
  border-radius: 50%;
  background: #fff;
}

.toggle_btn {
  position: relative;
  padding: 16px 39px 15px;
  width: 100%;
  border-style: none;
  background: #fff;
  text-align: left;
}

.toggle_btn::before,
.toggle_btn::after {
  position: absolute;
  top: 50%;
  right: 47px;
  z-index: 1;
  width: 10px;
  height: 2px;
  background: #77DD77;
}

.toggle_btn::after {
  transform: rotate(90deg);
}

.toggle_btn[aria-expanded='true']::after {
  display: none;
}

.toggle_btn .toggle_btn_mark {
  position: absolute;
  bottom: 5px;
  left: 10px;
  color: transparent;
}

.toggle_btn:hover,
.toggle_btn:active,
.toggle_btn:focus {
  background: #77DD77;
  color: #fff;
}

.toggle_btn:hover .toggle_sub,
.toggle_btn:active .toggle_sub,
.toggle_btn:focus .toggle_sub {
  color: #fff;
}

.toggle_btn:hover .icon-label-03,
.toggle_btn:active .icon-label-03,
.toggle_btn:focus .icon-label-03 {
  background: #fff;
  color: #77DD77;
}

.toggle_sub {
  display: block;
  margin-bottom: 8px;
  color: #77DD77;
  font-weight: 400;
  font-size: 1.4rem;
}

.toggle_sub > .icon-label-03 {
  margin-right: 10px;
  padding: 4px 12px;
}

.toggle_content {
  position: relative;
  padding: 6px 40px 16px;
  background: #fff;
}

.toggle_content::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background-color: #fff;
}

.toggle_inner > :last-child {
  margin-bottom: 0;
}

.toggle_inner > :last-child > ::after {
  display: none;
}

@media only screen and (max-width: 767px) {
  .toggle {
    margin-right: -20px;
    margin-left: -20px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-shadow: none;
  }
  .toggle_hdg {
    position: relative;
    font-weight: 700;
    font-size: 1.8rem;
  }
  .toggle_hdg::after {
    top: 50%;
    right: 19px;
    margin-top: -12px;
  }
  .toggle_btn {
    padding-right: 15px;
    padding-left: 15px;
  }
  .toggle_btn::before,
  .toggle_btn::after {
    right: 27px;
    z-index: 1;
    width: 10px;
    height: 2px;
    background: #77DD77;
    content: '';
  }
  .toggle_sub {
    margin-bottom: 5px;
  }
  .toggle_sub > .icon-label-03 {
    margin-right: 20px;
    padding: 3px 9px;
  }
  .toggle_content {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.toggle + .toggle {
  border-top: 1px solid #ccc;
}

@media only screen and (max-width: 767px) {
  .toggle + .toggle {
    border-top: none;
  }
}

/* ----------------------------------------------------------------
    Function Toggle (.fn-toggle[-*])
----------------------------------------------------------------- */
/* .fn-toggle
----------------------------------------------- */
.fn-toggle_content {
  display: none;
}

.fn-toggle_content.is-block {
  display: block;
  overflow: hidden;
}

.fn-toggle_inner {
  opacity: 0;
  transform: translateY(-7px);
}

.fn-toggle_content.is-animate .fn-toggle_inner {
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  will-change: opacity, transform;
}

.fn-toggle_content.is-show .fn-toggle_inner {
  opacity: 1;
  transform: translateY(0);
}

/* .fn-toggle-menu
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .fn-toggle-menu_content {
    position: fixed;
    display: none;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .fn-toggle-menu_content.is-block {
    display: block;
  }
  .fn-toggle-menu_content.is-show {
    opacity: 1;
  }
  .fn-toggle-menu_inner {
    opacity: 0;
    transform: translateY(-7px);
    padding: 70px 0 0;
  }
  .fn-toggle-menu_content.is-animate .fn-toggle-menu_inner {
    transition: all .2s cubic-bezier(.4, 0, .2, 1);
    will-change: opacity, transform;
  }
  .fn-toggle-menu_content.is-show .fn-toggle-menu_inner {
    opacity: 1;
    transform: translateY(0);
  }
}

/* .is-toggle-menu-expand
----------------------------------------------- */
.is-toggle-menu-expand html {
  position: fixed;
  width: 100%;
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-toggle_hook {
  display: none;
}

.no-js .fn-toggle_content,
.no-js .fn-toggle-menu_content {
  position: static !important;
  display: block;
}

.no-js .fn-toggle_inner,
.no-js .fn-toggle-menu_inner {
  opacity: 1 !important;
  transform: none !important;
}

/* ----------------------------------------------------------------
    Tab (.tab[-*])
----------------------------------------------------------------- */
/* .tab
----------------------------------------------- */
.tab {
  margin: 0 0 40px;
}

.tab_list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: -10px 0 30px -10px;
  font-size: 1.7rem;
}

.tab_list > li {
  margin: 10px 0 0 10px;
}

.tab_list > li > a {
  position: relative;
  display: block;
  text-decoration: none;
}

.tab_list > li > a > span {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 13px 20px 14px 50px;
  border: 1px solid #ccc;
  background: #fff;
  color: #666;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.tab_list > li > a > span::before {
  position: absolute;
  top: -1px;
  left: -1px;
  box-sizing: border-box;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 0 solid #77DD77;
  transition: border .1s cubic-bezier(.4, 0, .2, 1);
}

.tab_list > li > a::before {
  position: absolute;
  top: 19px;
  left: 16px;
  z-index: 1;
  width: 21px;
  height: 21px;
  border-radius: 11px;
  background: #f2f2f2;
}

.tab_list > li > a::after {
  position: absolute;
  top: 17px;
  left: 25px;
  z-index: 1;
  box-sizing: border-box;
  width: 12px;
  height: 16px;
  border-right: 4px solid #FFA61B;
  border-bottom: 4px solid #FFA61B;
  transform: rotate(45deg);
}

.tab_list > li > a:hover > span,
.tab_list > li > a:active > span,
.tab_list > li > a:focus > span,
.tab_list > li > a[aria-selected='true'] > span {
  background: #daeff2;
}

.tab_list > li > a:hover > span::before,
.tab_list > li > a:active > span::before,
.tab_list > li > a:focus > span::before,
.tab_list > li > a[aria-selected='true'] > span::before {
  border-width: 2px;
}

.tab_content {
  box-sizing: border-box;
  padding: 50px 60px;
  min-height: 445px;
  background: #fff;
}

.tab_item > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .tab_selectbox {
    position: relative;
    margin: 0 0 20px;
  }
  .tab_selectbox::before {
    position: absolute;
    top: 16px;
    right: 12px;
    width: 10px;
    height: 10px;
    border: 1px solid #666;
    border-bottom-color: transparent;
    border-left-color: transparent;
    transform: rotate(135deg);
    pointer-events: none;
  }
  .tab_selectbox > select {
    box-sizing: border-box;
    padding: 15px 20px;
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 0;
    background: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #666;
    font-size: 1.6rem;
  }
  .tab_selectbox > select::-ms-expand {
    display: none;
  }
  .tab_content {
    padding: 20px 17px 33px;
    min-height: 0;
  }
}

/* ----------------------------------------------------------------
    Function Tab (.fn-tab[-*])
----------------------------------------------------------------- */
/* .fn-tab_item
----------------------------------------------- */
.fn-tab_item {
  display: none;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-10px);
}

.fn-tab_item.is-block {
  display: block;
}

.fn-tab_item.is-animate {
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  will-change: opcity, transform;
}

.fn-tab_item.is-show {
  opacity: 1;
  transform: translateX(0);
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-tab_item {
  display: block;
  margin-bottom: 20px;
  opacity: 1;
  transform: none;
}

.no-js .fn-tab_content > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Modal (.modal[-*])
----------------------------------------------------------------- */
/* .modal
----------------------------------------------- */
.modal_inner {
  position: relative;
  margin: 20px;
  padding: 0 20px;
  min-height: calc(100vh - (20px * 2));
}

.modal_body {
  position: relative;
  box-sizing: border-box;
  padding: 42px 80px;
  max-width: 800px;
  width: 100%;
  background: #fff;
}

.modal_body > :nth-last-child(-n+2) {
  margin-bottom: 0;
}

.modal_body.-lyt-wide {
  max-width: 1406px;
}

.modal_scroll-txt {
  display: none;
  justify-content: space-between;
  margin: 0 0 5px;
  color: #999;
  text-align: center;
}

.modal_scroll-txt::before {
  content: '竊�';
}

.modal_scroll-txt::after {
  content: '竊�';
}

.modal_scroll > :last-child {
  margin-bottom: 0;
}

.modal_overlay {
  background: #000;
}

.modal_btn-close {
  position: absolute;
  top: 20px;
  right: 20px;
}

.modal_btn-close > button {
  padding: 32px 0 0;
  border: 0;
  background: none;
  color: #999;
  font-size: 1.4rem;
}

.modal_btn-close > button::before,
.modal_btn-close > button::after {
  position: absolute;
  background: #999;
  transform: rotate(45deg);
}

.modal_btn-close > button::before {
  top: -1px;
  left: 19px;
  width: 3px;
  height: 29px;
}

.modal_btn-close > button::after {
  top: 12px;
  left: 6px;
  width: 29px;
  height: 3px;
}

@media only screen and (max-width: 767px) {
  .modal {
    padding: 0 20px;
  }
  .modal_inner {
    padding: 0;
  }
  .modal_body {
    padding: 55px 40px;
  }
  .modal_scroll-txt {
    display: flex;
  }
  .modal_scroll {
    overflow-x: auto;
  }
  .modal_btn-close {
    top: 10px;
    right: 10px;
  }
  .modal_btn-close > button {
    padding: 20px 0 0;
    font-size: 1.2rem;
  }
  .modal_btn-close > button::before {
    top: 0;
    left: 17px;
    width: 2px;
    height: 19px;
  }
  .modal_btn-close > button::after {
    top: 8px;
    left: 8px;
    width: 19px;
    height: 2px;
  }
}

/* ----------------------------------------------------------------
    Function Modal (.fn-modal[-*])
----------------------------------------------------------------- */
/* .fn-modal
----------------------------------------------- */
.fn-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 500;
  display: none;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1) .2s;
}

.fn-modal.is-modal-animate {
  will-change: opacity;
}

.fn-modal.is-modal-render {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
}

.fn-modal.is-modal-show {
  opacity: 1;
}

.fn-modal.is-modal-hide {
  transition-delay: 0s;
}

.fn-modal_overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 400;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.fn-modal_overlay.is-overlay-animate {
  will-change: opacity;
}

.fn-modal_overlay.is-overlay-render {
  opacity: 0;
}

.fn-modal_overlay.is-overlay-show {
  opacity: .5;
}

.fn-modal_overlay.is-overlay-hide {
  transition-delay: .2s;
}

.fn-modal_inner {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: auto;
  margin-left: auto;
}

.fn-modal_body {
  box-sizing: border-box;
  transition: transform .2s cubic-bezier(.4, 0, .2, 1) .2s;
  transform: translateY(-10px);
}

.is-modal-animate .fn-modal_body {
  will-change: transform;
}

.is-modal-open .fn-modal_body {
  overflow-y: auto;
}

.is-modal-show .fn-modal_body {
  transform: translateY(0);
}

.is-modal-hide .fn-modal_body {
  transition-delay: 0s;
}

/* .is-modal-open
----------------------------------------------- */
.is-modal-open,
.is-modal-open body {
  overflow: hidden;
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-modal {
  position: static;
  display: block;
  opacity: 1;
}

.no-js .fn-modal_inner {
  transform: none;
}

/* ----------------------------------------------------------------
    Carousel (.carousel-*)
----------------------------------------------------------------- */
/* .carousel-slider
----------------------------------------------- */
.carousel-slider {
  position: relative;
  box-sizing: border-box;
  margin: 0 0 60px;
  padding: 0 18px;
}

.carousel-slider_inner {
  margin: 0 auto 27px;
  max-width: 780px;
}

.carousel-slider_item {
  justify-content: center;
  margin: 0 0 0 -60px;
}

.carousel-slider_item > li {
  margin: 0 0 0 60px;
}

.carousel-slider_item > li[aria-hidden='true'] {
  opacity: .3;
  pointer-events: none;
}

.carousel-slider_item > li[aria-hidden='false'] {
  opacity: 1;
}

.carousel-slider_item.is-animate > li {
  transition: opacity .4s cubic-bezier(.4, 0, .2, 1);
  will-change: opacity;
}

.carousel-slider_control {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row-reverse;
  margin: 0 auto;
  max-width: 780px;
}

.carousel-slider_player {
  margin: 0 0 0 25px;
  width: 15px;
  height: 16px;
  line-height: 1;
}

.carousel-slider_player > button {
  position: relative;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
  color: transparent;
}

.carousel-slider_player > button::before,
.carousel-slider_player > button::after {
  /* 荳譎ょ●豁｢繝槭�繧ｯ */
  position: absolute;
  top: 0;
  width: 5px;
  height: 16px;
  background: #d7d7d7;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.carousel-slider_player > button::before {
  left: 0;
}

.carousel-slider_player > button::after {
  right: 0;
}

.carousel-slider_player > button:active::before,
.carousel-slider_player > button:active::after {
  transform: scale(.8);
}

.carousel-slider_player > button > span {
  display: block;
  overflow: hidden;
  width: 15px;
  height: 16px;
}

.carousel-slider_player > button > span::before {
  /* 蜀咲函繝槭�繧ｯ */
  position: absolute;
  top: 0;
  left: 2px;
  width: 0;
  height: 0;
  border-top: 7.5px solid transparent;
  border-bottom: 7.5px solid transparent;
  border-left: 11px solid #ccc;
  opacity: 0;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  transform: scale(0);
}

.carousel-slider_player.is-pause > button::before,
.carousel-slider_player.is-pause > button::after {
  opacity: 0;
  transform: scale(0);
}

.carousel-slider_player.is-pause > button > span::before {
  opacity: 1;
  transform: scale(1);
}

.carousel-slider_player.is-pause > button:active > span::before,
.carousel-slider_player.is-pause > button:active > span::after {
  transform: scale(.8);
}

.carousel-slider_prev,
.carousel-slider_next {
  position: absolute;
  top: calc((100% - (30px + 16px + 27px)) - 50% + 10px);
  margin: 0;
  transform: translateY(calc((-100% + (30px + 16px + 27px)) - 50%));
}

.carousel-slider_prev > button,
.carousel-slider_next > button {
  position: relative;
  overflow: hidden;
  padding: 0;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: #77DD77;
  color: transparent;
}

.carousel-slider_prev > button::before,
.carousel-slider_next > button::before {
  position: absolute;
  top: 9px;
  width: 7px;
  height: 7px;
  border: 2px solid #fff;
  border-bottom-color: transparent;
  border-left-color: transparent;
  transform: rotate(45deg);
}

.carousel-slider_prev > button > span,
.carousel-slider_next > button > span {
  display: block;
  overflow: hidden;
  width: 30px;
  height: 30px;
}

.carousel-slider_prev {
  left: 85px;
}

.carousel-slider_prev > button::before {
  left: 12px;
  transform: rotate(-135deg);
}

.carousel-slider_next {
  right: 85px;
}

.carousel-slider_next > button::before {
  right: 12px;
}

.carousel-slider_indicator {
  display: flex;
  margin: 0;
}

.carousel-slider_indicator > li {
  margin: 0 0 0 20px;
  width: 10px;
  height: 10px;
  transition: transform .3s cubic-bezier(.4, 0, .2, 1);
  backface-visibility: hidden;
}

.carousel-slider_indicator > li:first-child {
  margin-left: 0;
}

.carousel-slider_indicator > li > button {
  display: block;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 5px;
  background: #e5e5e5;
  color: transparent;
  transition: background .3s cubic-bezier(.4, 0, .2, 1);
}

.carousel-slider_indicator > .is-current {
  transform: scale(1.2);
}

.carousel-slider_indicator > .is-current > button {
  background: #666;
}

@media only screen and (max-width: 1020px) {
  .carousel-slider .carousel-slider_prev {
    left: 4px;
  }
  .carousel-slider .carousel-slider_next {
    right: 4px;
  }
}

@media only screen and (max-width: 767px) {
  .carousel-slider {
    margin: 0 0 40px;
  }
  .carousel-slider_inner {
    margin: 0 0 20px;
  }
}

/* ----------------------------------------------------------------
    Function Carousel (.fn-carousel-*)
----------------------------------------------------------------- */
/* .fn-carousel-slider
----------------------------------------------- */
.fn-carousel-slider_item {
  display: flex;
  flex-wrap: wrap;
}

.fn-carousel-slider_item.is-animate {
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  will-change: transform;
}

.fn-carousel-slider_item.is-swipe {
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  will-change: transform;
}

.fn-carousel-slider_item.is-update {
  transition: none !important;
}

.fn-carousel-slider_item > li > :last-child {
  margin-bottom: 0;
}

/* JavaScript Off
----------------------------------------------- */
/* ----------------------------------------------------------------
    Function Scroll Animation (.fn-sa[-*])
----------------------------------------------------------------- */
/* .fn-sa_item, .fn-sa_continuum
----------------------------------------------- */
.fn-sa_item,
.fn-sa_continuum {
  opacity: 0;
  transform: translateY(-15px);
}

.fn-sa_item.-no-rise,
.fn-sa_continuum.-no-rise {
  transform: none;
}

.fn-sa_item.-track,
.fn-sa_continuum.-track {
  transform: translateX(-15px);
}

.fn-sa_item.is-animate,
.fn-sa_continuum.is-animate {
  opacity: 1;
  transition: all 1s cubic-bezier(.4, 0, .2, 1);
  transform: translateY(0);
}

.fn-sa_item.is-animate.-track,
.fn-sa_continuum.is-animate.-track {
  transition-delay: .9s;
  transform: translateX(0);
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-sa_item,
.no-js .fn-sa_continuum {
  opacity: 1;
  transform: none;
}

/* ----------------------------------------------------------------
ﾂ�ﾂ�ﾂ� Unique (.uni-*[-*])
----------------------------------------------------------------- */
/* .uni-hdg-l2
----------------------------------------------- */
.uni-hdg-l2 {
  margin: 0 0 7px;
  color: #999;
  font-size: 2.6rem;
}

/* .uni-hdg-l2-02
----------------------------------------------- */
.uni-hdg-l2-02 {
  position: relative;
  margin: 57px 0 25px;
}

.uni-hdg-l2-02::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 24px;
  height: 12px;
  background: #77DD77;
}

.uni-hdg-l2-02 > span {
  display: block;
  padding: 0 0 5px 35px;
  border-bottom: 2px solid #77DD77;
  color: #77DD77;
  font-weight: 500;
  font-size: 2.6rem;
  line-height: 1.42308;
}

.uni-hdg-l2-02 > span::before,
.uni-hdg-l2-02 > span::after {
  position: absolute;
  top: 20px;
  z-index: 1;
  width: 12px;
  height: 12px;
  background: #77DD77;
}

.uni-hdg-l2-02 > span::before {
  left: 6px;
  transform: skew(-45deg);
}

.uni-hdg-l2-02 > span::after {
  left: 0;
}

.uni-hdg-l2-02.-quotation::before {
  background: #FFA61B;
}

.uni-hdg-l2-02.-quotation > span {
  border-bottom-color: #FFA61B;
  color: #FFA61B;
}

.uni-hdg-l2-02.-quotation > span::before,
.uni-hdg-l2-02.-quotation > span::after {
  background: #FFA61B;
}

.uni-hdg-l2-02.-delivery::before {
  background: #7ebe36;
}

.uni-hdg-l2-02.-delivery > span {
  border-bottom-color: #7ebe36;
  color: #7ebe36;
}

.uni-hdg-l2-02.-delivery > span::before,
.uni-hdg-l2-02.-delivery > span::after {
  background: #7ebe36;
}

.uni-hdg-l2-02.-order::before {
  background: #ff4c43;
}

.uni-hdg-l2-02.-order > span {
  border-bottom-color: #ff4c43;
  color: #ff4c43;
}

.uni-hdg-l2-02.-order > span::before,
.uni-hdg-l2-02.-order > span::after {
  background: #ff4c43;
}

.uni-hdg-l2-02.-receipt::before {
  background: #004a79;
}

.uni-hdg-l2-02.-receipt > span {
  border-bottom-color: #004a79;
  color: #004a79;
}

.uni-hdg-l2-02.-receipt > span::before,
.uni-hdg-l2-02.-receipt > span::after {
  background: #004a79;
}

@media only screen and (max-width: 767px) {
  .uni-hdg-l2-02::before {
    top: 5px;
    left: 0;
    width: 20px;
    height: 10px;
  }
  .uni-hdg-l2-02 > span {
    padding: 0 0 7px 30px;
    font-size: 2rem;
  }
  .uni-hdg-l2-02 > span::before,
  .uni-hdg-l2-02 > span::after {
    top: 15px;
    width: 10px;
    height: 10px;
  }
  .uni-hdg-l2-02 > span::before {
    left: 5px;
  }
}

/* .uni-txt-lead
----------------------------------------------- */
.uni-txt-lead {
  color: #666;
  text-align: center;
  font-size: 2.2rem;
  line-height: 1.72727;
}

.uni-txt-lead > b {
  font-weight: 400;
}

.uni-txt-lead.-big {
  font-size: 2.7rem;
}

@media only screen and (max-width: 767px) {
  .uni-txt-lead {
    font-size: 1.6rem;
    line-height: 1.75;
  }
  .uni-txt-lead.-big {
    font-size: 2rem;
  }
}

/* .uni-list-desc
----------------------------------------------- */
.uni-list-desc {
  margin: -14px 0 28px;
}

.uni-list-desc_inner {
  display: flex;
  margin: 14px 0 0;
  border: 1px solid #99e6ef;
}

.uni-list-desc_inner > dt {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 210px;
  box-sizing: border-box;
  padding: 22px 20px 25px;
  background: #99e6ef;
  font-weight: 500;
  font-size: 1.6rem;
}

.uni-list-desc_inner > dt::before {
  position: absolute;
  top: 50%;
  right: -12px;
  width: 0;
  height: 0;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 12px solid #99e6ef;
  transform: translateY(-50%);
}

.uni-list-desc_inner > dd {
  display: flex;
  align-items: center;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding: 24px 35px 24px 40px;
  background: #fff;
}

@media only screen and (max-width: 767px) {
  .uni-list-desc {
    margin-top: 0;
  }
  .uni-list-desc_inner {
    flex-direction: column;
    margin: 20px 0 0;
  }
  .uni-list-desc_inner > dt {
    flex-basis: auto;
    padding: 5px 10px 8px;
    font-weight: 500;
    font-size: 1.6rem;
  }
  .uni-list-desc_inner > dt::before {
    top: auto;
    right: auto;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
  .uni-list-desc_inner > dd {
    flex: auto;
    padding: 22px 19px 18px;
  }
}

/* .uni-link-bnr
----------------------------------------------- */
.uni-link-bnr {
  margin: 0 0 28px;
}

.uni-link-bnr > a {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: 0 70px 0 400px;
  border: 1px solid transparent;
  background: url(/common/img/content/uni-link-bnr_img.png) no-repeat #f6f6f6 -35px 20px;
  color: #333;
  text-decoration: none;
  transition: border-color .2s cubic-bezier(.4, 0, .2, 1);
}

.uni-link-bnr > a::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 200px;
  content: '';
}

.uni-link-bnr > a::after {
  position: absolute;
  top: 50%;
  right: 30px;
  width: 26px;
  height: 26px;
  border: 1px solid #77DD77;
  border-bottom-color: transparent;
  border-left-color: transparent;
  transform: translateY(-50%) rotate(45deg);
}

.uni-link-bnr > a:hover,
.uni-link-bnr > a:active,
.uni-link-bnr > a:focus {
  border-color: #77DD77;
}

.uni-link-bnr_img {
  flex-basis: 155px;
}

.uni-link-bnr_img > img {
  transform: scale(1.1);
}

.uni-link-bnr_col {
  margin: 0 0 0 20px;
}

.uni-link-bnr_col > :last-child {
  margin-bottom: 0;
}

.uni-link-bnr_list > dt {
  margin: 0 0 7px;
  color: #77DD77;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.58333;
}

.uni-link-bnr_list > dd {
  font-weight: 500;
  line-height: 1.73333;
}

@media only screen and (max-width: 1020px) {
  .uni-link-bnr > a {
    padding-left: 29vw;
    background-position: -3.43137% 1.96078%;
    background-size: 44.60784% auto;
  }
}

@media only screen and (max-width: 767px) {
  .uni-link-bnr > a {
    display: block;
    padding: 13px 35px 13px 20px;
    background-image: none;
  }
  .uni-link-bnr > a::before {
    display: none;
  }
  .uni-link-bnr > a::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }
  .uni-link-bnr_img {
    position: absolute;
    top: 14px;
    left: 23px;
    width: 84px;
  }
  .uni-link-bnr_img > img {
    transform: none;
  }
  .uni-link-bnr_col {
    margin: 0;
  }
  .uni-link-bnr_list > dt {
    margin: 0 0 22px;
    padding: 15px 0 0 90px;
    font-size: 1.7rem;
  }
  .uni-link-bnr_list > dd {
    font-size: 1.3rem;
  }
}

/* .uni-nav
----------------------------------------------- */
.uni-nav {
  margin: 0 auto 60px;
  max-width: 880px;
}

.uni-nav_inner {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: -20px 0 0 -2.27273%;
}

.uni-nav_col {
  display: flex;
  align-items: stretch;
  flex-basis: calc(33.33333% - 2.27273%);
  margin-top: 20px;
  margin-left: 2.27273%;
}

.uni-nav_col > :last-child {
  margin-bottom: 0;
}

.uni-nav_panel-card {
  display: flex;
  align-items: center;
  flex-direction: column;
  box-sizing: border-box;
  padding: 0 32px 25px;
  width: 100%;
  border: 2px solid transparent;
  background: #f6f6f6;
  box-shadow: .5px .9px 3px #bbb;
  color: #333;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.uni-nav_panel-card:hover,
.uni-nav_panel-card:active,
.uni-nav_panel-card:focus {
  border-color: #77DD77;
  background: #fff;
}

.uni-nav_list {
  display: flex;
  flex: 0 0 auto;
  order: 2;
  margin: 0;
  width: 100%;
  text-align: center;
}

.uni-nav_list::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 100px;
  content: '';
}

.uni-nav_list_inner {
  width: 100%;
}

.uni-nav_list_inner > dt {
  color: #77DD77;
  font-weight: 500;
  font-size: 1.6rem;
}

.uni-nav_list_inner > dd {
  font-size: 1.4rem;
}

.uni-nav_img {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  order: 1;
  width: 100%;
}

.uni-nav_img::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 156px;
  content: '';
}

@media only screen and (max-width: 767px) {
  .uni-nav_inner {
    justify-content: flex-start;
    flex-direction: column;
    flex-wrap: nowrap;
    margin: -10px;
  }
  .uni-nav_col {
    flex: 0 0 auto;
    margin: 10px 0 0;
  }
  .uni-nav_panel-card {
    align-items: flex-start;
    flex-direction: row;
    padding: 10px;
  }
  .uni-nav_list {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 0;
    text-align: left;
  }
  .uni-nav_list::before {
    display: none;
  }
  .uni-nav_list_inner > dt {
    font-size: 1.6rem;
  }
  .uni-nav_list_inner > dd {
    font-size: 1.4rem;
  }
  .uni-nav_img {
    justify-content: center;
    align-items: flex-start;
    flex: 0 0 90px;
    order: 1;
    width: auto;
  }
  .uni-nav_img::before {
    display: none;
  }
  .uni-nav_img > img {
    width: 60%;
  }
}

/* .uni-nav-02
----------------------------------------------- */
.uni-nav-02 {
  display: flex;
  flex-wrap: wrap;
  margin: -14px 0 0 -2.34694%;
}

.uni-nav-02_col {
  display: flex;
  align-items: stretch;
  flex-basis: calc(33.33333% - 2.34694%);
  margin-top: 14px;
  margin-left: 2.34694%;
}

.uni-nav-02_link {
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding: 10px 32px;
  width: 100%;
  height: 100%;
  border: 2px solid transparent;
  background: #f6f6f6;
  box-shadow: .5px .9px 3px #bbb;
  color: #77DD77;
  font-weight: 500;
  font-size: 2rem;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.uni-nav-02_link::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 65px;
  content: '';
}

.uni-nav-02_link > img {
  padding: 0 10px 0 0;
}

.uni-nav-02_link:hover,
.uni-nav-02_link:active,
.uni-nav-02_link:focus {
  border-color: #77DD77;
  background: #fff;
}

@media only screen and (max-width: 767px) {
  .uni-nav-02 {
    flex-direction: column;
    flex-wrap: nowrap;
    margin: -10px 0 28px;
  }
  .uni-nav-02_col {
    display: flex;
    align-items: flex-start;
    flex: 0 0 auto;
    margin: 10px 0 0;
  }
  .uni-nav-02_link {
    width: 100%;
    font-size: 1.6rem;
  }
}

/* .uni-nav-tab
----------------------------------------------- */
.uni-nav-tab {
  position: relative;
  display: flex;
  justify-content: space-around;
  margin: 60px 0;
  padding: 0 4px 0 0;
}

.uni-nav-tab_item {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  margin: 0 0 0 5px;
}

.uni-nav-tab_item::before {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: #77DD77;
}

.uni-nav-tab_item > a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #eee;
  color: #333;
  text-decoration: none;
  font-size: 1.7rem;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.uni-nav-tab_item > a::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: 55px;
  content: '';
}

.uni-nav-tab_item > a:hover,
.uni-nav-tab_item > a:active,
.uni-nav-tab_item > a:focus,
.uni-nav-tab_item > a[aria-current] {
  background: #77DD77;
  color: #fff;
}

.uni-nav-tab_item > a:hover > b,
.uni-nav-tab_item > a:active > b,
.uni-nav-tab_item > a:focus > b,
.uni-nav-tab_item > a[aria-current] > b {
  font-weight: 500;
}

.uni-nav-tab_item.is-current::before {
  z-index: 1;
}

.uni-nav-tab_item.-quotation > a:hover,
.uni-nav-tab_item.-quotation > a:active,
.uni-nav-tab_item.-quotation > a:focus,
.uni-nav-tab_item.-quotation > a[aria-current] {
  background: #FFA61B;
}

.uni-nav-tab_item.-quotation.is-current::before {
  background: #FFA61B;
}

.uni-nav-tab_item.-delivery > a:hover,
.uni-nav-tab_item.-delivery > a:active,
.uni-nav-tab_item.-delivery > a:focus,
.uni-nav-tab_item.-delivery > a[aria-current] {
  background: #7ebe36;
}

.uni-nav-tab_item.-delivery.is-current::before {
  background: #7ebe36;
}

.uni-nav-tab_item.-order > a:hover,
.uni-nav-tab_item.-order > a:active,
.uni-nav-tab_item.-order > a:focus,
.uni-nav-tab_item.-order > a[aria-current] {
  background: #ff4c43;
}

.uni-nav-tab_item.-order.is-current::before {
  background: #ff4c43;
}

.uni-nav-tab_item.-receipt > a:hover,
.uni-nav-tab_item.-receipt > a:active,
.uni-nav-tab_item.-receipt > a:focus,
.uni-nav-tab_item.-receipt > a[aria-current] {
  background: #004a79;
}

.uni-nav-tab_item.-receipt.is-current::before {
  background: #004a79;
}

/* .uni-nav-tab-02
----------------------------------------------- */
.uni-nav-tab-02 {
  position: relative;
  display: flex;
  margin: 60px 0 50px;
}

.uni-nav-tab-02:first-child {
  margin-top: 0;
}

.uni-nav-tab-02_item {
  flex: 1 0 auto;
  background: #f6f6f6;
  box-shadow: 2px 2px 2px rgba(187, 187, 187, .3);
}

.uni-nav-tab-02_item:not(:last-child) {
  margin-right: 8px;
}

.uni-nav-tab-02_item > a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 13px 16px;
  border-radius: 3px;
  color: #77DD77;
  text-decoration: none;
  font-weight: 500;
  font-size: 1.7rem;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.uni-nav-tab-02_item > a:hover,
.uni-nav-tab-02_item > a:active,
.uni-nav-tab-02_item > a:focus,
.uni-nav-tab-02_item > a[aria-current] {
  background: #77DD77;
  color: #fff;
}

.uni-nav-tab-02_item > a[aria-current] {
  text-decoration: underline;
}

.uni-nav-tab-02_item.is-current {
  border-radius: 3px;
}

@media only screen and (max-width: 767px) {
  .uni-nav-tab-02 {
    flex-wrap: wrap;
    margin-bottom: 30px;
    margin-left: -2.77778%;
  }
  .uni-nav-tab-02_item {
    flex: 0 1 auto;
    margin-left: 2.7027%;
    width: 30.63063%;
  }
  .uni-nav-tab-02_item > a {
    padding: 16px;
    line-height: 1.5;
  }
  .uni-nav-tab-02_item:nth-child(n+4) {
    margin-top: 10px;
  }
  .uni-nav-tab-02_item:not(:last-child) {
    margin-right: 0;
  }
}

/* .uni-nav-toc
----------------------------------------------- */
.uni-nav-toc {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 14px 28px;
  max-width: 840px;
  width: 100%;
  background: #f8f8f8;
}

.uni-nav-toc_tbl {
  width: 100%;
}

.uni-nav-toc_tbl > tbody > tr > th,
.uni-nav-toc_tbl > tbody > tr > td {
  font-weight: 400;
  line-height: 1.4;
}

.uni-nav-toc_tbl > tbody > tr > th {
  padding: 14px 28px;
  vertical-align: top;
  text-align: right;
}

.uni-nav-toc_tbl > tbody > tr > th > span {
  display: inline-block;
  padding: 0 20px 0 0;
  border-right: 2px solid #77DD77;
  white-space: nowrap;
}

.uni-nav-toc_tbl > tbody > tr > td {
  padding: 14px 0;
}

.uni-nav-toc_tbl > tbody > tr > td > div {
  display: flex;
  flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
  .uni-nav-toc {
    margin: 0 -20px;
    padding: 30px 20px 40px;
    max-width: none;
    width: auto;
  }
  .uni-nav-toc_tbl {
    display: block;
  }
  .uni-nav-toc_tbl > tbody {
    display: block;
  }
  .uni-nav-toc_tbl > tbody > tr,
  .uni-nav-toc_tbl > tbody > tr > th,
  .uni-nav-toc_tbl > tbody > tr > td {
    display: block;
  }
  .uni-nav-toc_tbl > tbody > tr > th {
    margin: 30px 0 20px;
    padding: 0;
    color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 1.6rem;
  }
  .uni-nav-toc_tbl > tbody > tr > th > span {
    display: block;
    padding: 0 0 3px;
    border: 0;
    border-bottom: 1px solid #77DD77;
  }
  .uni-nav-toc_tbl > tbody > tr > td {
    padding: 0;
  }
  .uni-nav-toc_tbl > tbody > tr:first-child > th {
    margin-top: 0;
  }
  .content-inner > .uni-nav-toc:first-child {
    margin-top: -40px;
  }
}

/* .uni-panel
----------------------------------------------- */
.uni-panel {
  display: flex;
  justify-content: flex-end;
  flex-direction: row-reverse;
  margin: 0 0 34px;
  border: 1px solid #77DD77;
  background: #fff;
}

.uni-panel_col,
.uni-panel_img {
  padding-right: 40px;
  padding-left: 40px;
}

.uni-panel_col > :last-child,
.uni-panel_img > :last-child {
  margin-bottom: 0;
}

.uni-panel_col {
  flex: 1;
  padding-top: 47px;
}

.uni-panel_col * {
  margin: 0 0 5px;
}

.uni-panel_img {
  display: flex;
  align-items: flex-end;
  flex: 0 0 auto;
  padding-top: 36px;
}

.uni-panel_txt-catch {
  margin: 0 0 25px;
  color: #FFA61B;
  font-size: 2.5rem;
  line-height: 1.52;
}

.uni-panel_list > li {
  margin: 0 0 20px;
}

.uni-panel_list > li:last-child {
  margin-bottom: 0;
}

.uni-panel_list > li > .btn-primary {
  max-width: none;
  width: auto;
}

@media only screen and (max-width: 767px) {
  .uni-panel {
    flex-direction: column;
    padding: 16px 20px 20px;
  }
  .uni-panel_col,
  .uni-panel_img {
    flex: 0 0 auto;
    margin-bottom: 20px;
    padding: 0;
  }
  .uni-panel_img {
    display: block;
    margin: 0 0 -20px;
  }
  .uni-panel_txt-catch {
    margin: 0 0 9px;
    font-size: 1.6rem;
    line-height: 1.6875;
  }
}

/* .uni-badge
----------------------------------------------- */
.uni-badge {
  display: flex;
  margin: 12px 0 28px -12px;
}

.uni-badge_col {
  margin-left: 12px;
}

.uni-badge_col > a {
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

.uni-badge_col > a:hover,
.uni-badge_col > a:active,
.uni-badge_col > a:focus {
  opacity: .7;
}

.uni-badge_col > a > img {
  width: 100%;
}

.lp-content-fluid-app .uni-badge_col {
  margin-left: 39px;
}

@media only screen and (max-width: 767px) {
  .lp-content-fluid-app .uni-badge {
    justify-content: center;
    margin: 0;
  }
  .lp-content-fluid-app .uni-badge_col {
    margin-left: 9px;
  }
  .lp-content-fluid-app .uni-badge_col:first-of-type {
    margin-left: 0;
  }
}

/* ----------------------------------------------------------------
    Unique - Top (.t-*[-*])
----------------------------------------------------------------- */
/* .t-list-desc
----------------------------------------------- */
.t-list-desc {
  padding: 0 20px;
  text-align: center;
}

.t-list-desc > dt {
  margin: 0 0 15px;
  color: #77DD77;
  font-weight: 700;
  font-size: 2rem;
}

.t-list-desc > dt > img {
  display: block;
  margin: 0 auto 35px;
}

@media only screen and (max-width: 767px) {
  .t-list-desc > dt {
    margin: 0 0 7px;
  }
  .t-list-desc > dt > img {
    margin-bottom: 14px;
  }
  .t-list-desc > dd {
    font-size: 1.5rem;
  }
}

/* .t-content-fluid
----------------------------------------------- */
.t-content-fluid {
  position: relative;
  padding: 84px 0 0;
  background: url(../img/top_main.png) no-repeat center/cover;
}

.t-content-fluid.-enterprise {
  overflow: hidden;
  background: url(/common/img/content/t-content-fluid-06_bg.jpg) no-repeat #fff center/cover;
}

.t-content-fluid.-enterprise::before,
.t-content-fluid.-enterprise::after {
  position: absolute;
  top: 50%;
  width: 34vw;
  height: 100%;
  background: url(/common/img/content/t-content-fluid-enterprise_bg.png) no-repeat 0 50%/100% 100%;
}

.t-content-fluid.-enterprise::before {
  left: 0;
  transform: translateY(-50%);
}

.t-content-fluid.-enterprise::after {
  right: 0;
  transform: translateY(-50%) rotate(180deg);
}

@media only screen and (max-width: 1200px) {
  .t-content-fluid {
    padding: 135px 0 0;
  }
  .t-content-fluid.-enterprise::before {
    left: -9vw;
  }
  .t-content-fluid.-enterprise::after {
    right: -11vw;
  }
}

@media only screen and (max-width: 767px) {
  .t-content-fluid {
    padding: 43px 0 0;
  }
  .t-content-fluid.-enterprise {
    background-position: 50% 0;
    background-size: 170% 45%;
  }
  .t-content-fluid.-enterprise::before,
  .t-content-fluid.-enterprise::after {
    display: none;
  }
}

/* .t-content-fluid-02
----------------------------------------------- */
.t-content-fluid-02 {
  background: url(/common/img/content/t-content-fluid-02_bg.jpg) no-repeat #bcdbe2 center/cover;
}

.t-content-fluid-02.-enterprise {
  background-image: url(/common/img/content/t-content-fluid-07_bg.jpg);
}

/* .t-content-fluid-03
----------------------------------------------- */
.t-content-fluid-03 {
  background: url(/common/img/content/t-content-fluid-03_bg.jpg) no-repeat #bcdbe2 center/cover;
}

/* .t-content-fluid-04
----------------------------------------------- */
.t-content-fluid-04_body {
  position: relative;
}

.t-content-fluid-04_body::before {
	/*
  position: absolute;
  bottom: -30px;
  left: 50%;
  z-index: 1;
  width: 0;
  height: 0;
  border-top: 30px solid #fff;
  border-right: 74px solid transparent;
  border-left: 74px solid transparent;
  transform: translateX(-50%);
  */
}

.t-content-fluid-04_body:nth-child(even) {
  background-color: #F0FAF0;
}

.t-content-fluid-04_body:nth-child(even)::before {
  border-top-color: #F0FAF0;
}

.t-content-fluid-04_body:last-child::before {
  display: none;
}

.t-content-fluid-04_body.-lyt-point {
  background-image: url(/img/index-bg-02.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.t-content-fluid-04_inner {
  position: relative;
  margin: 0 auto;
  padding: 80px 0;
  max-width: 980px;
}

.t-content-fluid-04_inner > :last-child {
  margin-bottom: 0;
}

.t-content-fluid-04 > .t-content-fluid-04_body[class*='-lyt-point'] > .t-content-fluid-04_inner {
  padding: 100px 0;
}

.t-content-fluid-04.-enterprise .t-content-fluid-04_body:nth-child(odd) {
  background: #F0FAF0;
}

.t-content-fluid-04.-enterprise .t-content-fluid-04_body:nth-child(odd)::before {
  border-top-color: #F0FAF0;
}

.t-content-fluid-04.-enterprise .t-content-fluid-04_body:nth-child(even) {
  background: #fff;
}

.t-content-fluid-04.-enterprise .t-content-fluid-04_body:nth-child(even)::before {
  border-top-color: #fff;
}

@media only screen and (max-width: 1020px) {
  .t-content-fluid-04_inner {
    padding-right: 20px;
    padding-left: 20px;
  }
  .t-content-fluid-04 > .t-content-fluid-04_body[class*='-lyt-point'] > .t-content-fluid-04_inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .t-content-fluid-04_inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .t-content-fluid-04 > .t-content-fluid-04_body[class*='-lyt-point'] > .t-content-fluid-04_inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-02 .t-content-fluid-04_inner {
    overflow: hidden;
    padding-bottom: 40px;
  }
  .t-content-fluid-04_body::before {
    bottom: -18px;
    border-top-width: 18px;
    border-right-width: 44px;
    border-left-width: 44px;
  }
}

/* .t-content-fluid-05
----------------------------------------------- */
.t-content-fluid-05 {
  background: url(/common/img/content/t-content-fluid-05_bg.jpg) no-repeat #bcdbe2 center/cover;
}

/* .t-content-fluid-06
----------------------------------------------- */
.t-content-fluid-06 {
  background: #77DD77;
  color: #fff;
}

/* .t-content-inner
----------------------------------------------- */
.t-content-inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  margin: 0 auto;
  max-width: 980px;
}

.t-content-inner > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 1020px) {
  .t-content-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .t-content-inner::before {
    min-height: 545px;
    content: '';
  }
}

.t-content-inner._mv {
  max-width: 1200px;
}

@media only screen and (max-width: 1200px) {
  .t-content-inner._mv {
    max-width: 980px;
  }
}

/* .t-content-inner-02
----------------------------------------------- */
.t-content-inner-02 {
  padding-top: 18px;
  padding-bottom: 18px;
}

.t-content-inner-02 > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .t-content-inner-02 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .t-lyt-point
----------------------------------------------- */
.t-lyt-point {
  display: flex;
}

.t-lyt-point_col > :last-child,
.t-lyt-point_item > :last-child {
  margin-bottom: 0;
}

.t-lyt-point_col {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
}

.t-lyt-point_col-02 {
  display: flex;
  align-items: center;
  margin: 0 0 0 90px;
  max-width: 580px;
}

.t-lyt-point_item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.t-lyt-point_hdg {
  margin: 0 0 29px;
}

.t-lyt-point_hdg > span {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 9px 0 0;
  min-height: 62px;
  max-width: 77px;
  background: #FFA61B;
  color: #fff;
  text-align: center;
  font-weight: 700;
  line-height: 1;
}

.t-lyt-point_hdg > span::before {

}

.t-lyt-point_hdg > span::after {

}

.t-lyt-point_hdg > span > span {
  display: block;
  margin: 4px 0 -2px;
  font-weight: 500;
  font-size: 3.4rem;
}

.t-lyt-point_hdg > h3 {
  	display: block;
    margin: 29px 0 0;
    padding: 16px 0 0;
    color: #FFA61B;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.52;
}

.t-lyt-point_list {
  display: flex;
  margin: 0 0 0 -50px;
}

.t-lyt-point_list > li {
  position: relative;
  margin: 0 0 0 50px;
}

.t-lyt-point_list > li:not(:first-child)::before {
  position: absolute;
  top: calc(50% + 17px);
  left: -28px;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid #77DD77;
  transform: translateY(calc(-50%));
}

.t-lyt-point_list > li > :last-child {
  margin-bottom: 0;
}

.t-lyt-point_media-caption {
  margin: 0 0 19px;
  color: #77DD77;
  font-weight: 700;
  font-size: 1.8rem;
}

.t-lyt-point_media {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.t-lyt-point_media-02 {
  position: absolute;
  right: 0;
  bottom: 40px;
}

.t-lyt-point_media-03 {
  position: absolute;
  top: 40px;
  right: -70px;
}

@media only screen and (min-width: 1360px) {
  .t-lyt-point_col-02 {
    margin-right: 0px;
    max-width: none;
  }
}

@media only screen and (max-width: 1200px) {
  .t-lyt-point_media-03 {
    right: 0;
  }
}

@media only screen and (min-width: 1020px) {
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point .t-lyt-point_item,
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point_item {
    margin-right: 80px;
    max-width: 580px;
  }
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-04 .t-lyt-point_item {
    margin-left: 70px;
    max-width: 580px;
  }
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point .t-lyt-point_item {
    margin-left: 40px;
    max-width: 573px;
  }
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-02 .t-lyt-point_item {
    margin-right: 92px;
    max-width: 562px;
  }
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point_item {
    margin-left: 50px;
    max-width: 636px;
  }
}

@media only screen and (max-width: 1020px) {
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-02 .t-lyt-point_col-02 {
    margin-left: 40px;
    max-width: 50%;
  }
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point .t-lyt-point_item,
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point_item {
    margin-right: 40px;
  }
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-04 .t-lyt-point_item {
    margin-left: 40px;
  }
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point .t-lyt-point_item,
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point_item {
    margin-left: 40px;
  }
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-02 .t-lyt-point_item {
    margin-right: 40px;
  }
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point .t-lyt-point_item,
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point_item,
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-04 .t-lyt-point_item,
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point .t-lyt-point_item,
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-02 .t-lyt-point_item,
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point_item {
    max-width: 50%;
  }
}

@media only screen and (min-width: 768px) {
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point .t-lyt-point,
  .t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-03 .t-lyt-point {
    flex-direction: row-reverse;
  }
  .t-content-fluid-04.-enterprise > .t-content-fluid-04_body.-lyt-point-02 .t-lyt-point {
    flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 767px) {
  .t-lyt-point {
    flex-direction: column;
  }
  .t-lyt-point_col,
  .t-lyt-point_item {
    flex: 0 0 auto;
  }
  .t-lyt-point_col {
    position: relative;
    margin: 0 0 30px;
  }
  .t-lyt-point_col-02,
  .t-lyt-point_item {
    margin: 0 !important;
    max-width: none !important;
  }
  .t-lyt-point_hdg {
    margin: 0 0 20px;
  }
  .t-lyt-point_hdg > span {
    padding: 13px 0 0;
    min-height: 60px;
    font-size: 1.6rem;
  }
  .t-lyt-point_hdg > span::before {
    right: 8px;
    bottom: -15px;
    width: calc(100% - 16px);
    height: 16px;
  }
  .t-lyt-point_hdg > span::after {
    bottom: -15px;
    left: 0;
    width: 16px;
    height: 16px;
  }
  .t-lyt-point_hdg > span > span {
    font-size: 2.2rem;
  }
  .t-lyt-point_hdg > h3 {
    margin: 27px 0 0;
    font-size: 2.2rem;
    line-height: 1.63636;
  }
  .t-lyt-point_list {
    margin-left: -7vw;
  }
  .t-lyt-point_list > li {
    margin-left: 6vw;
  }
  .t-lyt-point_list > li:not(:first-child)::before {
    top: calc(50% + 19px);
    left: -4vw;
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-left-width: 7px;
  }
  .t-lyt-point_media-caption {
    margin: 0 0 5px;
    font-weight: 400;
    font-size: 1.4rem;
  }
  .t-lyt-point_media {
    top: 90px;
    right: -30px;
    bottom: auto;
    left: auto;
    width: 177px;
  }
  .t-lyt-point_media-02 {
    bottom: -50px;
    width: 65px;
  }
  .t-lyt-point_media-03 {
    top: 70px;
    right: 4vw;
    bottom: auto;
    width: 120px;
    height: 91px;
  }
}

/* .t-lyt-hero
----------------------------------------------- */
.t-lyt-hero {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

.t-lyt-hero_col > :last-child,
.t-lyt-hero_col-02 > :last-child {
  margin-bottom: 0;
}

.t-lyt-hero_col {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.t-lyt-hero_col > * {
  width: 100%;
  text-align: center;
}

.t-lyt-hero_col-02 {
  margin: 0 -90px 0 0;
}

.t-lyt-hero_hdg {
  margin: 0 0 10px;
  color: #fff;
  text-align: center;
  text-shadow: 0 0 18px rgba(16, 54, 58, .2);
  font-size: 3.6rem;
  line-height: 1.4;
}

.t-lyt-hero_hdg > span {
  display: block;
  margin: -15px 0 0;
  font-size: 4.5rem;
}

.t-lyt-hero_hdg > span > em {
  position: relative;
  top: .05em;
  font-size: 6.3rem;
}

.t-lyt-hero_txt-lead {
  margin: 0 0 24px;
  color: #fff;
  text-align: center;
  text-shadow: 0 0 120px rgba(16, 54, 58, .4);
  font-weight: 500;
  font-size: 1.6rem;
}

.t-lyt-hero_txt-lead > span {
  display: block;
}

@media only screen and (max-width: 1200px) {
  .t-lyt-hero_col {
    width: calc(100% - 450px);
  }
  .t-lyt-hero_col-02 {
    margin: 0;
    width: calc(100% - 360px);
  }
  .t-lyt-hero_txt-lead {
    max-width: 440px;
  }
  .t-lyt-hero_txt-lead > span {
    display: inline;
  }
}

@media only screen and (max-width: 767px) {
  .t-lyt-hero {
    flex-direction: column;
  }
  .t-lyt-hero_col,
  .t-lyt-hero_col-02 {
    flex: 0 0 auto;
    width: 100%;
  }
  .t-lyt-hero_col-02 {
    margin: 10px 0 18px;
  }
  .t-lyt-hero_hdg {
    font-size: 2.6rem;
  }
  .t-lyt-hero_hdg > span {
    font-size: 3.4rem;
  }
  .t-lyt-hero_hdg > span > em {
    font-size: 4.7rem;
  }
  .t-lyt-hero_txt-lead {
    margin: 0 0 15px;
    font-size: 1.4rem;
  }
}

/* .t-lyt-hero-02
----------------------------------------------- */
.t-lyt-hero-02 {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  text-align: center;
}

.t-lyt-hero-02_hdg {
  margin: 0 0 13px;
  color: #77DD77;
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 1.3125;
}

.t-lyt-hero-02_hdg > span {
  display: block;
  font-weight: 700;
  font-size: 4.5rem;
}

.t-lyt-hero-02_txt-lead {
  font-weight: 500;
  font-size: 1.6rem;
}

.t-lyt-hero-02_list {
  display: flex;
  justify-content: center;
  max-width: 920px;
  width: 100%;
  font-size: 1.3rem;

  gap: 48px;
}

.t-lyt-hero-02_list > li {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.t-lyt-hero-02_list > li::before {
  margin: 0 0 10px;
  width: 100px;
  height: 100px;
  border-radius: 50px;
  background: #77DD77;
}

.t-lyt-hero-02_list_img {
  position: absolute;
  top: 0;
  left: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 100px;
  height: 100px;
  transform: translateX(-50%);
}

.t-lyt-hero-02_list_img.-team {
  top: -2px;
}

.t-lyt-hero-02_btn {
  margin: 0 0 20px;
  max-width: 260px;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .t-lyt-hero-02_hdg {
    font-size: 2.8rem;
  }
  .t-lyt-hero-02_hdg > span {
    font-size: 3.4rem;
  }
  .t-lyt-hero-02_txt-lead {
    font-size: 1.4rem;
  }
  .t-lyt-hero-02_list {
    flex-wrap: wrap;
    margin: -20px 0 25px;
  }
  .t-lyt-hero-02_list > li {
    flex-basis: 33.3%;
    box-sizing: border-box;
    margin: 20px 0 0;
  }
  .t-lyt-hero-02_list > li::before {
    width: 80px;
    height: 80px;
  }
  .t-lyt-hero-02_list_inner {
    padding: 0 5px;
  }
  .t-lyt-hero-02_list_img {
    width: 80px;
    height: 80px;
  }
  .t-lyt-hero-02_list_img > img {
    transform: scale(.8);
  }
}

/* .t-lyt-hero-03
----------------------------------------------- */
.t-lyt-hero-03 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding-right: 22%;
  width: 100%;
}

.t-lyt-hero-03_top {
  width: 100%;
}

.t-lyt-hero-03_hdg {
  margin: 27px auto 43px auto;
  padding: 44px 46px 43px 78px;
  background-color: #77DD77C0;
  color: #fff;
  text-align: left;
  text-shadow: 0 0 18px rgba(16, 54, 58, .2);
  font-size: 4.1rem;
    font-weight: 500;
    line-height: 1.5;
	position: relative;
}

.t-lyt-hero-03_hdg > span {
  display: block;
  margin-top: -12px;
}

.t-lyt-hero-03_img {
  position: absolute;
  right: 0;
  bottom: 30px;
  width: 35%;
}

.t-lyt-hero-03_img > figure {
  margin: 0;
}

.t-lyt-hero-03_links {
  padding-right: 9%;
  text-align: center;
}

.t-lyt-hero-03_links .btn-primary {
  min-width: 320px;
  font-size: 2.2rem;
}

@media only screen and (max-width: 1200px) {
  .t-lyt-hero-03 {
    padding: 0 20% 0 2%;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_hdg {
    padding: 30px;
    font-size: 3.5rem;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_img {
    bottom: 0;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_links .btn-primary {
    font-size: 2.1rem;
  }
}

@media only screen and (max-width: 767px) {
  .t-lyt-hero-03 {
    padding: 0;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_top {
    position: relative;
    margin-bottom: 24px;
    padding-bottom: 80px;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_hdg {
    margin: 0 auto;
    padding: 30px 30px 60px;
    max-width: 400px;
    text-align: center;
    font-size: 2rem;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_hdg > span {
    margin-top: 6px;
    font-size: 3rem;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_hdg > span > span {
    display: block;
    margin-top: -5px;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_img {
    width: 100%;
    text-align: center;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_img img {
    max-height: 130px;
    width: auto;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_links {
    padding-right: 0;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_links .link,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-list > li > a,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-list-02 > li > a,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-back > a {
    color: #fff;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_links .link:hover,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-list > li > a:hover,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-list-02 > li > a:hover,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-back > a:hover,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link:focus,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-list > li > a:focus,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-list-02 > li > a:focus,
  .t-lyt-hero-03 .t-lyt-hero-03_links .link-back > a:focus {
    color: #77DD77;
  }
  .t-lyt-hero-03 .t-lyt-hero-03_links .btn-primary {
    min-width: 270px;
    font-size: 1.9rem;
  }
}

/* .t-panel
----------------------------------------------- */
.t-panel {
  display: flex;
  align-items: center;
  margin: 0 0 60px;
  padding: 30px 20px;
  background: #F0FAF0;
}

.t-panel_img {
  flex-basis: 31.2766%;
  text-align: center;
}

.t-panel_img_yayoi {
  width: 151px;
}

.t-panel_col {
  flex-basis: 68.7234%;
  box-sizing: border-box;
  padding: 0 25px;
}

.t-panel_col > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .t-panel {
    flex-direction: column;
  }
  .t-panel_img,
  .t-panel_col {
    flex: 0 0 auto;
    width: 100%;
  }
  .t-panel_img {
    margin: 0 0 25px;
  }
  .t-panel_col {
    padding: 0;
  }
}

/* .t-panel-02
----------------------------------------------- */
.t-panel-02 {
  position: relative;
  border: 2px solid #77DD77;
  border-top: 0;
  background: #fff;
}

.t-panel-02_hdg {
  position: relative;
  top: -.8em;
  overflow: hidden;
  padding: 0 8px;
  color: #77DD77;
  text-align: center;
  font-size: 2.7rem;
}

.t-panel-02_hdg > span {
  position: relative;
  display: inline-block;
  padding: 0 8px;
}

.t-panel-02_hdg > span::before,
.t-panel-02_hdg > span::after {
  position: absolute;
  top: 23px;
  margin: -1px 0 0;
  width: 980px;
  height: 2px;
  background: #77DD77;
  transform: rotate(180deg);
}

.t-panel-02_hdg > span::before {
  left: 0;
  transform-origin: left center;
}

.t-panel-02_hdg > span::after {
  right: 0;
  transform-origin: right center;
}

.t-panel-02_inner {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  padding: 20px 40px 40px;
  font-size: 1.4rem;
}

.t-panel-02_col > :last-child {
  margin-bottom: 0;
}

.t-panel-02_txt-catch {
  color: #FFA61B;
  font-size: 2.5rem;
  line-height: 1.52;
}

.t-panel-02_img {
  margin: 0 50px 0 -160px;
}

.t-panel-02_img > img {
  max-width: none;
}

@media only screen and (max-width: 767px) {
  .t-panel-02_hdg {
    font-size: 1.7rem;
  }
  .t-panel-02_hdg > span::before,
  .t-panel-02_hdg > span::after {
    top: 15px;
  }
  .t-panel-02_inner {
    align-items: flex-start;
    flex-direction: column-reverse;
    padding: 20px 20px 40px;
    font-size: 1.5rem;
  }
  .t-panel-02_col {
    width: 100%;
  }
  .t-panel-02_txt-catch {
    margin: 0 0 6px;
    font-size: 1.6rem;
    line-height: 1.6875;
  }
  .t-panel-02_img {
    margin: 0 auto 50px;
  }
  .t-panel-02_img > img {
    max-width: 100%;
  }
}

/* .t-nav-toc
----------------------------------------------- */
.t-nav-toc {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.02041%;
}

.t-nav-toc > li {
  display: flex;
  align-items: stretch;
  flex-basis: calc(33.33333% - 1.0101%);
  margin-left: 1.0101%;
}

.t-nav-toc > li > a {
  position: relative;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #ccc;
  background: #77DD77;
  color: #fff;
  text-decoration: none;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
}

.t-nav-toc > li > a:hover,
.t-nav-toc > li > a:active,
.t-nav-toc > li > a:focus {
  border-color: #77DD77;
  text-decoration: underline;
}

.t-nav-toc_mark,
.t-nav-toc_txt,
.t-nav-toc_img {
  flex: 0 0 auto;
}

.t-nav-toc_mark {
  position: absolute;
  top: 53px;
  left: 50%;
  z-index: 1;
  display: block;
  order: 2;
  box-sizing: border-box;
  padding: 9px 0 0;
  min-height: 62px;
  max-width: 77px;
  width: 100%;
  background: rgba(255, 158, 6, .9);
  color: #fff;
  text-align: center;
  font-weight: 700;
  line-height: 1;
  transform: translateX(-50%);
}

.t-nav-toc_mark::before {
  position: absolute;
  right: 8px;
  bottom: -16px;
  z-index: 1;
  width: calc(100% - 16px);
  height: 16px;
  background: rgba(255, 158, 6, .9);
  transform: skew(-45deg);
}

.t-nav-toc_mark::after {
  position: absolute;
  bottom: -16px;
  left: 0;
  z-index: 1;
  width: 16px;
  height: 16px;
  background: rgba(255, 158, 6, .9);
}

.t-nav-toc_mark > span {
  display: block;
  margin: 4px 0 -2px;
  font-weight: 500;
  font-size: 3.4rem;
}

.t-nav-toc_txt {
  display: flex;
  justify-content: center;
  flex-direction: column;
  order: 3;
  padding: 18px 18px 50px;
  text-align: center;
  font-size: 2rem;
  line-height: 1.6;
}

.t-nav-toc_txt::before {
  position: absolute;
  bottom: 23px;
  left: 50%;
  width: 12px;
  height: 12px;
  border: 2px solid #fff;
  border-bottom-color: transparent;
  border-left-color: transparent;
  transition: bottom .2s cubic-bezier(.4, 0, .2, 1);
  transform: translateX(-50%) rotate(135deg);
}

.t-nav-toc_txt > b {
  display: block;
  font-weight: 400;
}

a:hover > .t-nav-toc_txt::before,
a:active > .t-nav-toc_txt::before,
a:focus > .t-nav-toc_txt::before {
  bottom: 13px;
}

.t-nav-toc_img {
  position: relative;
  order: 1;
}

.t-nav-toc_img > img {
  max-width: none;
  width: 100%;
}

.t-nav-toc_img::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #333;
  opacity: .5;
  transition: opacity .2s cubic-bezier(.4, 0, .2, 1);
}

a:hover > .t-nav-toc_img::before,
a:active > .t-nav-toc_img::before,
a:focus > .t-nav-toc_img::before {
  opacity: 0;
}

@media only screen and (max-width: 767px) {
  .t-nav-toc {
    flex-direction: column;
    flex-wrap: nowrap;
    margin-left: 0;
  }
  .t-nav-toc > li {
    align-items: flex-start;
    flex: 0 0 auto;
    margin: 0 0 16px;
  }
  .t-nav-toc > li:last-child {
    margin-bottom: 0;
  }
  .t-nav-toc_txt {
    flex-direction: row;
    flex-wrap: wrap;
    padding: 11px 18px 36px;
    font-size: 1.6rem;
  }
  .t-nav-toc_txt::before {
    bottom: 18px;
  }
  .t-nav-toc_txt > b {
    display: inline;
    flex: 0 0 auto;
  }
  .t-nav-toc_img {
    overflow: hidden;
  }
}

/* .t-grid
----------------------------------------------- */
.t-grid_inner {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  margin-left: -2.04082%;
}

.t-grid_col {
  display: flex;
  align-items: stretch;
  flex-basis: calc(33.33333% - 2%);
  margin-left: 2%;
  max-width: calc(33.33333% - 2%);
}

@media only screen and (max-width: 767px) {
  .t-grid {
    max-width: none;
  }
  .t-grid_inner {
    flex-direction: column;
    flex-wrap: nowrap;
    margin: 0;
  }
  .t-grid_col {
    flex: 0 0 auto;
    margin: 0 0 15px;
    max-width: none;
    width: 100%;
  }
  .t-grid_col:last-child {
    margin-bottom: 0;
  }
}

/* .t-grid-02
----------------------------------------------- */
.t-grid-02 {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  margin-left: -2.55102%;
}

.t-grid-02_col {
  display: flex;
  align-items: stretch;
  flex-basis: calc(33.33333% - 2.48756%);
  margin-left: 2.48756%;
  max-width: calc(33.33333% - 2.48756%);
}

@media only screen and (max-width: 767px) {
  .t-grid-02 {
    margin: 0 0 40px;
    max-width: none;
  }
  .t-grid-02_col {
    flex: 0 0 auto;
    margin: 0 0 15px;
    max-width: none;
    width: 100%;
  }
  .t-grid-02_col:last-child {
    margin-bottom: 0;
  }
}

/* .t-list-line
----------------------------------------------- */
.t-list-line {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: -55px 0 28px;
}

.t-list-line > li {
  flex-basis: 20%;
  margin: 55px 0 0;
  text-align: center;
}

.t-list-line > li > img {
  padding: 0 5px;
}

@media only screen and (max-width: 767px) {
  .t-list-line {
    margin: -20px 0 28px;
  }
  .t-list-line > li {
    flex-basis: 50%;
    margin: 20px 0 0;
  }
}

/* .t-txt-info
----------------------------------------------- */
.t-txt-info {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.t-txt-info_main,
.t-txt-info_sub {
  padding: 8px 0 4px;
  max-width: 100%;
}

.t-txt-info_main > :last-child,
.t-txt-info_sub > :last-child {
  margin-bottom: 0;
}

.t-txt-info_main {
  padding-right: 40px;
  font-size: 1.7rem;
}

.t-txt-info_main > p > b > em {
  display: inline-block;
  margin: 0 14px;
  padding: 0 10px;
  border: 1px solid #fff;
  font-size: 1.8rem;
}

.t-txt-info_sub {
  position: relative;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 0;
  padding-left: 41px;
}

.t-txt-info_sub::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #fff;
}

@media only screen and (max-width: 767px) {
  .t-txt-info {
    flex-direction: column;
  }
  .t-txt-info_main,
  .t-txt-info_sub {
    flex: 0 0 auto;
    padding: 0;
  }
  .t-txt-info_main {
    text-align: center;
    line-height: 3.4;
  }
  .t-txt-info_main:not(:last-child) {
    padding-bottom: 28px;
  }
  .t-txt-info_main > p > b > em {
    padding: 7px 10px 6px;
    line-height: 1.78571;
  }
  .t-txt-info_sub {
    padding-top: 30px;
    width: 100%;
  }
  .t-txt-info_sub::before {
    left: 50%;
    margin: 0 0 0 -22px;
    width: 44px;
    height: 1px;
  }
}

/* ----------------------------------------------------------------
    Content (.content-*)
----------------------------------------------------------------- */
/* .content-fluid
----------------------------------------------- */
.content-fluid {
  background: #fff;
}

/* .content-fluid-02
----------------------------------------------- */
.content-fluid-02 {
  background: #efefef;
}

/* .content-fluid-03
----------------------------------------------- */
.content-fluid-03 {
  background: #f8f8f8;
}

/* .content-fluid-04
----------------------------------------------- */
.content-fluid-04 {
  background: #77DD77;
}

/* .content-fluid-hdg
----------------------------------------------- */
.content-fluid-hdg {
  background: #77DD77;
}

.content-fluid-hdg.-lower {
  background: #F0FAF0;
}

/* .content-fluid-carousel
----------------------------------------------- */
.content-fluid-carousel {
  overflow: hidden;
}

/* .content-inner
----------------------------------------------- */
.content-inner {
  padding-top: 60px;
  padding-bottom: 60px;
}

.content-inner > :last-child {
  margin-bottom: 0;
}

.content-inner_body {
  box-sizing: border-box;
  padding: 60px 110px 0;
}

.content-inner_body > :last-child {
  margin-bottom: 0;
}

.content-inner.-border {
  padding-bottom: 80px;
  border-bottom: 1px solid #e1e1e1;
}

.content-main > .content-fluid:first-child > .content-inner {
  padding-top: 0;
}

.content-fluid-hdg > .content-inner {
  padding-top: 84px;
  padding-bottom: 43px;
}

.content-fluid-hdg.-lower > .content-inner {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding-bottom: 0;
}

.content-fluid-hdg.-lower > .content-inner::before {
  /* [IE11] 蜈�ｦ∫ｴ�縺ｧ min-height 繧定ｨｭ螳壹＠縺溷�ｴ蜷医’lex 縺梧ｭ｣縺励￥蜃ｦ逅�＆繧後↑縺�◆繧∫桝莨ｼ隕∫ｴ�縺ｧ莉｣逕ｨ */
  min-height: calc(250px - 84px);
}

.content-fluid-hero > .content-inner {
  padding-top: 0;
  max-width: 1200px;
}

.content-fluid-hero + .content-fluid > .content-inner {
  padding-top: 0;
}

.content-fluid-hero > .content-inner > .content-inner_body {
  background: #fff;
}

.content-fluid-carousel > .content-inner {
  padding-bottom: 0;
}

.lp-content-fluid-app > .content-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px 20px 44px;
}

.lp-content-fluid-06 > .content-inner {
  position: relative;
  padding: 0;
}

@media only screen and (max-width: 1200px) {
  .content-fluid-hdg > .content-inner {
    padding-top: 135px;
  }
  .content-inner_body {
    padding-right: 10px;
    padding-left: 10px;
    width: 100%;
  }
  .content-inner.-border {
    padding-bottom: 40px;
    border-image: linear-gradient(to right, transparent 20px, #e1e1e1 20px, #e1e1e1 calc(100% - 20px), transparent calc(100% - 20px), transparent 100%);
    border-image-slice: 1;
  }
  .content-fluid-hero > .content-inner {
    padding-right: 10px;
    padding-left: 10px;
  }
}

@media only screen and (max-width: 767px) {
  .content-inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .content-inner_body {
    padding-top: 17px;
  }
  .content-fluid-hdg > .content-inner {
    padding-top: 24px;
    padding-bottom: 30px;
  }
  .content-fluid-hdg.-lower > .content-inner {
    padding-bottom: 30px;
  }
  .content-fluid-hdg.-lower > .content-inner::before {
    display: none;
  }
  .lp-content-fluid-app > .content-inner {
    display: block;
    padding: 31px 20px 39px;
  }
}

/* .content-main
----------------------------------------------- */
.content-main {
  display: flex;
  flex-direction: column;
}

.content-main > * {
  flex: 0 0 auto;
  order: 0;
}

.content-main.-ios .anchor {
  display: block;
  margin-top: -100px;
  padding-top: 100px;
}

@media only screen and (max-width: 767px) {
  .content-main {
    padding: 51px 0 0;
  }
}

/* ----------------------------------------------------------------
    Helper
----------------------------------------------------------------- */
/* Control Align
----------------------------------------------- */
.left {
  text-align: left !important;
}

.center {
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: center !important;
}

.right {
  text-align: right !important;
}

.top {
  vertical-align: top !important;
}

.middle {
  vertical-align: middle !important;
}

.bottom {
  vertical-align: bottom !important;
}

/* Control Width
----------------------------------------------- */
.w-5 {
  width: 5% !important;
}

.w-10 {
  width: 10% !important;
}

.w-15 {
  width: 15% !important;
}

.w-20 {
  width: 20% !important;
}

.w-25 {
  width: 25% !important;
}

.w-30 {
  width: 30% !important;
}

.w-35 {
  width: 35% !important;
}

.w-40 {
  width: 40% !important;
}

.w-45 {
  width: 45% !important;
}

.w-50 {
  width: 50% !important;
}

/* Control Margin
----------------------------------------------- */
.m-top {
  margin-top: 60px !important;
}

@media only screen and (max-width: 767px) {
  .m-top {
    margin-top: 40px !important;
  }
}

.mb-0 {
  margin-bottom: 0 !important;
}

/* font size
----------------------------------------------- */
.fs-13 {
  font-size: 13px !important;
  font-size: 1.3rem !important;
}

/* font weight
----------------------------------------------- */
.fw-bold {
  font-weight: bold;
}

/* color
----------------------------------------------- */
.c-pink {
  color: #ff5692;
}

.c-black {
  color: #333;
}

.c-blue {
  color: #77DD77;
}

/* break
----------------------------------------------- */
@media only screen and (min-width: 640px) {
  .break-xs {
    display: block;
  }
}

@media only screen and (min-width: 767px) {
  .break-pc {
    display: block;
  }
}


/* arrow_box
----------------------------------------------- */

.arrow_box{
    position: absolute;
    background: #FFFFFF;
    padding: 10px 20px;
    text-align: center;
    color:#77DD77;
    font-size:16px;
    font-weight:500;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
	right: 195px;
	top: 40px;
}

.arrow_box:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(255, 255, 255, 0);
    border-top-width:19px;
    border-bottom-width:19px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-top-color:#FFFFFF;
    top:100%;
    left:50%;
}

.arrow_box span {
	font-size: 14px;
	color: #333;
}


/* contentsFunctionField
----------------------------------------------- */

.contentsFunctionField {
	
}

.contentsFunctionField__inner {
	width: 1200px;
	margin:0 auto;
}

.contentsFunctionField__inner__copy {
	margin: 80px 0 20px;
    color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 2.6rem;
}

.contentsFunctionField__inner__text {
	font-size: 14px;
	text-align:center;
	padding: 0px 0 50px;
}

.functionListDes {
	
}

.functionListDes ul {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.functionListDes ul li {
	list-style: none;
    width: calc((100% / 3) - 40px);
    text-align: center;
    font-size: 14px;
    padding: 20px 0 30px;
}

.functionListDes__title {
    padding: 25px 0 20px;
    color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 1.8rem;
}

.functionListDes__text {
    line-height: 26px;
}

.functionListAttention {
    font-size: 14px;
    text-align: center;
    padding: 70px 0;
    line-height: 26px;
    border-bottom: 1px solid #E1E1E1;
    width: 980px;
    margin: 0 auto;
}

.importantTxt {
	display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
    background: #FFA61B;
    width: 322px;
}

.t-lyt-point_hdg .importantTxt span {
	position: relative;
	display: block;
	box-sizing: border-box;
	padding: 10px 10px 5px;
	min-height: 100%;
	max-width: 100%;
	background: #FFA61B;
	color: #fff;
	text-align: center;
	font-weight: 500;
	line-height: 1;
}

.t-lyt-point_hdg .importantTxt .importantTxt__copy {
	padding: 22px 40px 25px;
    font-size: 22px;
}

.t-lyt-point_hdg .importantTxt span > span {
    padding: 2px 10px 5px;
    font-size: 32px;
    font-weight: 500;
}

.t-lyt-point_col .merit-Txt {
	font-size: 14px;	
    padding: 0 90px 0 0;
    line-height: 26px;
}

.t-lyt-point_col .merit-Txt span {
	color: #77DD77;
}

.t-lyt-point_col .merit-Txt--inner {
    padding: 40px 85px 0 0;
}

.t-content-fluid-04 > .t-content-fluid-04_body[class*='-lyt-point'] > .meritFourPointArea .t-content-fluid-04_inner {
	padding: 20xp 0 50px;	
}

.t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-03.meritFourPointArea .t-lyt-point {
	display: block;
}

.meritFourPointArea .meritTxtTitle {
	display: block;
    margin: 0px 0 0;
    padding: 0px 0 50px;
    color: #FFA61B;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.52;
    text-align: center;
}

.meritFourPointList {
	display: flex;	
	justify-content: space-between;
    align-items: flex-start;
}

.meritFourPointList__item {
	width: calc((100% / 4) - 20px);	
}

.meritFourPointList__item__copy {
	border-radius: 10px 10px 0 0;
	background: #77DD77;
	padding: 10px 10px;
	font-size: 18px;
	color: #fff;
	text-align: center;
}

.meritFourPointList__item__text {
	background: #F0FAF0;
	padding: 30px 15px;
	font-size: 14px;
	line-height: 26px;
	color: #333;
	height: 270px;
}

.point02Type .t-lyt-point {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

.point02Type .t-lyt-point_col {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 0;
    padding: 0 0 0 120px;
}

.point02Type .t-lyt-point_col-02 {
    display: flex;
    align-items: center;
    margin: 0 95px 0 0px;
}

.point02Type .t-lyt-point_hdg .importantTxt .importantTxt__copy {
    padding: 22px 10px 25px;
    font-size: 22px;
}

.point02Type .t-lyt-point_col .merit-Txt {
    font-size: 14px;
    padding: 0 50px 0 0;
    line-height: 26px;
}

.meritFourPointArea.point02--grasp {
	
}

.meritFourPointArea.point02--grasp .meritFourPointList {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
}

.meritFourPointArea.point02--grasp .meritFourPointList__item {
    width: 100%;
    padding: 0 0 30px;
}

.meritFourPointArea.point02--grasp .meritFourPointList__item__text {
    background: #F0FAF0;
    padding: 35px 75px 50px;
    font-size: 14px;
    line-height: 26px;
    color: #333;
    height: 100%;
}

.meritFourPointArea.point02--grasp .meritFourPointList__item__text span {
    color: #77DD77;
}

.point03--important .t-lyt-point_hdg .importantTxt .importantTxt__copy {
    padding: 22px 12px 25px;
    font-size: 22px;
}

.point03--important .t-lyt-point_col .merit-Txt {
    font-size: 14px;
    padding: 0 70px 0 0;
    line-height: 26px;
}

.point03--important .t-lyt-point_col .merit-Txt--inner {
    padding: 40px 80px 0 0;
}

.point03--important .t-lyt-point_hdg {
    margin: 0 0 15px;
}

.point03--important .t-lyt-point_hdg > h3 {
    display: block;
    margin: 0px 0 0;
    padding: 5px 0 0;
    color: #FFA61B;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.52;
}

.meritFourPointArea--03 .meritFourPointList__item {
    width: calc((100% / 3) - 20px);
}

.meritFourPointArea--03 .meritFourPointList__item__text {
    background: #F0FAF0;
    padding: 20px 25px;
    font-size: 14px;
    line-height: 26px;
    color: #333;
    height: 420px;
}

.resolutionPointArea {
	background: url(../img/function_bg.png) no-repeat;
	background-size: cover; 
  	width: 100%; 
  	aspect-ratio: 16 / 9;
}

.resolutionPointArea__inner {
	width: 980px;
	margin: 0 auto;
}

.resolutionPointArea__inner__title {
	color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 2.6rem;
    line-height: 43px;
	padding: 90px 0 60px;
}

.resolutionPointArea__inner__title span {
	font-size: 20px;
	color: #666;
	line-height: 34px;
}


.tab01 {
	width: 100%;
	margin: 0 auto 50px;
}

/*タブのスタイル*/
.tab_menu {
	width: calc((100% / 3) - 20px);
	height: 50px;
	line-height: 50px;
	font-size: 16px;
	text-align: center;
	color: #666;
	border: 1px solid #77DD77;
	background-color: #fff;
	display: block;
	float: left;
	text-align: center;
	font-weight: 400;
	transition: all 0.2s ease;
	margin: 0 0 25px;
	cursor: pointer;
}

.tab_menu:not(:last-of-type) {
  	margin-right: 27px;
}

.tab_menu:hover {
  	opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_menu"] {
  	display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_contents {
	display: none;
	padding: 40px;
	clear: both;
	overflow: hidden;
	transition: .5s opacity;
	background: #fff;
}

/*選択されているタブを表示*/
#menu01:checked ~ #menu01,
#menu02:checked ~ #menu02,
#menu03:checked ~ #menu03 {
  	display: block;
}

/*選択されているタブのスタイル*/
.tab01 input:checked + .tab_menu {
	background:#77DD77;
	color: #fff;
}

.tabContentsBoth {
	display: flex;
    align-items: center;
	padding: 50px 40px 60px;
}

.tabContentsBoth img {
	width: calc((100% / 2) - 25px);
}

.tabContentsBoth__des {
	width: calc((100% / 2) - 25px);
	padding: 0 0 0 50px;
}

.tabContentsBoth__des__title {
    color: #77DD77;
	padding: 0px 0 15px;
	font-size: 22px;
}

.tabContentsBoth__des__hosoku {
	font-size: 18px;
	line-height: 30px;
	color: #666;
	padding: 0 0 25px;
}

.tabContentsBoth__des__text {
	font-size: 14px;
	line-height: 24px;
	color: #666;
}

.electronicBookPreservationLaw {
	padding: 0 0 70px;
}

.electronicBookPreservationLaw__inner {
	width: 980px;
	margin: 0 auto;
}

.electronicBookPreservationLaw__inner img {
    width: auto;
	max-width: fit-content;
}

.electronicLawTitle {
	margin: 90px 0 50px;
    color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 2.6rem;
    line-height: 43px;
}

.electronicLawImg-SP {
	display: none;	
}

.electronicLawRequired {
	margin: 30px 0 20px;
	background: #333;
	padding: 40px 0;
	width: 100%;
}

.electronicLawRequired__title {
	color: #DB2D06;
	font-size: 22px;
	line-height: 38px;
	text-align: center;
	margin: 0px;
    padding: 0 0 10px;
}

.electronicLawRequired__text {
	color: #fff;
	font-size: 14px;
	line-height: 26px;
	text-align: center;
    margin: 0;
    padding: 0 0 5px;
}

.electronicLawCorrespondence {
	background: #F8F8F8;
	padding: 70px 0 90px;
}

.electronicLawCorrespondence__inner {
	width: 980px;
	margin: 0 auto;
}

.correspondenceTop {
	display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.correspondenceTop__left__title {
    color: #77DD77;
    text-align: left;
    font-weight: 500;
    font-size: 2.6rem;
    line-height: 43px;
    padding: 0px 0 20px;
}

.correspondenceTop__left__text {
    font-size: 14px;
    line-height: 26px;
    color: #333;
}

.correspondenceSaved__title {
    display: block;
    margin: 0px 0 0;
    padding: 90px 0 50px;
    color: #FFA61B;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.52;
    text-align: center;
}

.correspondenceSaved__ {
    display: flex;
    justify-content: space-between;
    align-items:stretch;
}

.correspondenceSaved__list {
    width: calc((100% / 3) - 25px);
    background: #F0FAF0;
    padding: 30px;
}

.correspondenceSaved__list:nth-child(2) {
	margin: 0 25px;	
}

.correspondenceSaved__list__title {
    position: relative;
    text-align: center;
    padding: 0px 0 60px;
    color: #77DD77;
    font-size: 18px;
    line-height: 31px;
}

.correspondenceSaved__list:first-child .correspondenceSaved__list__title {
    padding: 20px 0 70px;
}

.correspondenceSaved__list__title:after {
	content: "";
	border-bottom: 2px solid #25B4C7;
	position: absolute;
	top: 80px;
	width:80px;
	left: 50%;
  	transform: translateY(-50%) translateX(-50%);
  	-webkit- transform: translateY(-50%) translateX(-50%);
}

.correspondenceSaved__list__text {
    color: #666;
    font-size: 14px;
    line-height: 24px;
}

.correspondenceSaved__list__text span {
	color: #77DD77;
}

.urgentBusiness {
	
}

.urgentBusiness__inner {
    width: 980px;
    margin: 0 auto;
    padding: 10px 0 100px;
}

.urgentBusiness__inner__title {
    margin: 90px 0 50px;
    color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 2.6rem;
    line-height: 43px;
}

.urgentBusiness__inner__schedule {
	display: block;
    margin: 0px 0 0;
    padding: 30px 0 10px;
    color: #FFA61B;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.52;
}

.urgentBusiness__inner__text {
    font-size: 14px;
    line-height: 18px;
    padding: 0 0 40px;
}

.scheduleInfo {
    padding: 0 0 40px;
}

.scheduleInfo__list {
    border-top: 1px solid #E1E1E1;
    padding: 20px 0;
}

.scheduleInfo__list:last-child {
    border-bottom: 1px solid #E1E1E1;
}

.scheduleInfo__list__date {
    font-size: 16px;
    font-weight: bold;
}

.scheduleInfo__list:last-child .scheduleInfo__list__date {
	color: #77DD77;
}

.scheduleInfo__list__text {
    font-size: 14px;
}

.scheduleAttention {
    font-size: 14px;
    line-height: 18px;
    text-align: center;
    padding: 30px 0 0;
}

.flowDesArea {
	background: #F8F8F8;
}

.flowDesArea__inner {
    width: 980px;
    margin: 0 auto;
    padding: 10px 0 40px;
}

.flowDesArea__inner__title {
    margin: 90px 0 50px;
    color: #77DD77;
    text-align: center;
    font-weight: 500;
    font-size: 2.6rem;
    line-height: 43px;
}

.stepFlow {
	display: flex;
    justify-content: space-between;
    align-items:stretch;
}

.stepFlow__list {
	width: calc((100%/ 4) - 25px);	
}

.stepFlow__list:nth-child(2) {
	margin: 0 25px;	
}

.stepFlow__list:nth-child(3) {
	margin: 0 25px 0 0;	
}

.stepFlow__list__num {
	background: #77DD77;
	text-align:center;
	position: relative;
	color: #fff;
	padding: 20px 0 20px;
}

.stepFlow__list__num:after {
    position: absolute;
    content: '';
    bottom: -40%;
    border: 15px solid transparent;
    border-top: 20px solid #77DD77;
    width: 0;
    height: 0;
	left: 50%;
  	transform: translateY(-50%) translateX(-50%);
  	-webkit- transform: translateY(-50%) translateX(-50%);
}

.stepFlow__list__num p {
	font-size: 20px;
	font-weight: 500;
	padding: 0 0 5px;
	margin: 0px;
	letter-spacing: 2px;
}

.stepFlow__list__num span {
	font-size: 46px;
	font-weight: 600;
    line-height: 40px;
}

.stepFlow__list__text {
	padding: 30px;
	font-size: 18px;
	color: #333;
	font-weight: bold;
	line-height: 32px;
	text-align:center;
	background: #F0FAF0;
	height: 90px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.flowSchedule {
	padding: 40px 0 0;
}

.flowSchedule img {
	width: auto;
}

.flowAttention {
    font-size: 14px;
    line-height: 18px;
    padding: 50px 0 50px;
	text-align: center;
}

.resolutionPointArea--price {
	background: url(../img/price_bg.png) no-repeat;
    background-size: cover;
    width: 100%;
    aspect-ratio: 375 / 203;
}

.priceInfoArea {
	border: 1px solid #77DD77;
	background: #fff;
	text-align: center;
}

.priceInfoArea__title {
	color: #fff;
	padding: 30px 0;
	background: #77DD77;
	font-size: 26px;
	line-height: 48px;
	font-weight: 500;
}

.priceInfoArea__system {
	background: #FFFCE0;
	padding: 25px 0;
	font-size: 16px;
	font-weight: 400;
	color: #333;
}

.priceInfoArea__system span {
	color: #77DD77;
	font-size: 22px;
	line-height: 34px;
	vertical-align: bottom;
	padding: 0 3px 0 0;
}

.priceInfoArea__consulting {
	background: #EDFBFC;
	padding: 25px 0;
	font-size: 16px;
	font-weight: 400;
	color: #333;
}

.priceInfoArea__consulting span {
	color: #77DD77;
	font-size: 22px;
	line-height: 34px;
	vertical-align: bottom;
	padding: 0 3px 0 0;
}

.priceInfoArea__total {
	padding: 0px 0 60px;	
}

.priceInfoArea__total__price {
	padding: 25px 0;
	font-size: 16px;
	font-weight: 400;
	color: #333;
}

.priceInfoArea__total__price span {
	color: #77DD77;
	font-size: 26px;
	line-height: 34px;
	vertical-align: bottom;
	padding: 0 3px 0 0;
}

.priceInfoArea__total .btn-primary {
    max-width: 300px;
}

.contactFormArea {
	
}

.contactFormArea__inner {
	width: 980px;
	margin: 0 auto;
}

.contactFormArea__inner__title {
	padding: 90px 0 25px;
	text-align:center;
	color: #77DD77;
	font-size: 26px;
	line-height: 42px;
    font-weight: 500;
}

.contactFormArea__inner__des {
	font-size: 14px;
	line-height: 24px;
	color: #333;
	padding: 0 0 30px;
	text-align:center;
}

.contactFormField {
	padding: 0px 0px 90px;
    margin: 0 auto;
    width: 450px;	
}


.hbspt-form {
  	padding: 0 0 40px 0;
}

.hbspt-form form {
	max-width: 640px;
	margin: auto;
}

.hs-form-required {
	color: transparent;
	color: #C80404;
	font-size: 14px;
}

.hs-form-required::before {

}

.hs-form-field {
	margin-bottom: 25px;
	text-align: left;
}

.hs-form-field label {
	position: relative;
	font-size: 16px;
}

.hs-form-field .input {
  	margin: 0;
}

.hs-form-field .input input {
	box-sizing: border-box;
	width: 100%;
	margin-top: 5px;
	padding: 13px 15px;
	font-size: 15px;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	background-color: #fafafa;
	border: 1px solid #ddd;
	border-radius: 5px;
	outline: none;
}

.hs-form-radio {
  	margin: 13px 0;
}

.hs-form-radio label {
  	font-size: 16px;
}

.hs-form-radio-display input {
  	display: none;
}

.hs-form-radio-display input + span::before {
	display: inline-block;
	width: 28px;
	height: 28px;
	margin: -2px 5px 0 0;
	vertical-align: middle;
	background-color: #f0f0f0;
	border: 2px solid #ddd;
	border-radius: 17px;
	transition: 0.1s;
	content: "";
}

.hs-form-radio-display input[type="radio"]:checked + span::before {
	background-color: #5482f7;
	border-color: #5482f7;
	box-shadow: inset 0 0 0 8px #fff;
}

.hs-fieldtype-select select,
.hs-fieldtype-textarea textarea {
	box-sizing: border-box;
	width: 100%;
	height: 60px;
	padding: 0 29px;
	font-size: 15px;
	line-height: 57px;
	background-color: #fafafa;
	border: 1px solid #ddd;
	border-radius: 5px;
	outline: none;
}

.hs-fieldtype-textarea textarea {
  	padding: 8px 15px;
  	line-height: 1.5;
}

.hs-fieldtype-select select {
  	margin-top: 15px;
}

.hs-fieldtype-textarea {
  	display: flex;
  	flex-direction: column;
}

.hs-fieldtype-textarea textarea {
  	height: 259px;
}

.hs-fieldtype-textarea .hs-field-desc {
  	order: 3;
  	font-size: 13px;
}

.hs-fieldtype-textarea .input {
  	margin: 10px 0 0;
}

.hs_submit.hs-submit {
    text-align: center;
    padding: 15px 0;
}

.hs_submit.hs-submit input {
	cursor: pointer;	
}

.h-menu_btn--sp,
.h-menu_content--sp {
	display: none !important;	
}

.brSpp {
	display: none;	
}

.point02Type .t-lyt-point_col-02.img--SpType {
	display: none;	
}


.preservationLawImaging {
	font-size: 16px;
	padding: 10px 0 70px;
    height: fit-content;
}

.preservationLawImaging__title {
    background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;	
}

.preservationLawImaging__middle {
    margin: 15px 0 0;
	display: flex;
    align-items: stretch;
    justify-content: space-between;
}

.lawImagingLeft {
	width: calc((100% / 5) - 10px);
}

.lawImagingLeft__title {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;
}

.lawImagingLeft__des {
	background: #F0FAF0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 110px 0;
    text-align: center;
    font-size: 14px;
    line-height: 26px;	
    margin: 15px 0 0;
	position: relative;
}

.lawImagingLeft__des:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 50px 0 50px;
    border-color: #FFA61B transparent transparent transparent;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: -400px;
    left: 0;
    margin: auto;
}

.lawImagingMiddle {
	width: calc((100% / 5)*3 - 10px);
}

.lawImagingMiddle__topTitle {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;
}

.lawImagingMiddleBottom {
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 15px 0 0;
}

.lawImagingMiddleBottom__left {
    width: calc((100% / 3) - 8px);
}

.lawImagingMiddleBottom__left__title {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;
}

.lawImagingMiddleBottom__left__des {
	background: #F0FAF0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 73px 0;
    text-align: center;
    font-size: 14px;
    line-height: 26px;
    margin: 15px 0 0;
	position: relative;
}

.lawImagingMiddleBottom__left__des:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 50px 0 50px;
    border-color: #FFA61B transparent transparent transparent;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: -330px;
    left: 0;
    margin: auto;
}

.lawImagingMiddleBottom__right {
    width: calc((100% / 3) * 2 - 8px);
}

.lawImagingMiddleBottom__right__title {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;
}

.lawImagingDetail {
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 15px 0 0;
}

.lawImagingDetail__left {
	width: calc((100% / 2) - 10px);	
}

.lawImagingDetail__left__title {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;	
	line-height: 20px;
}

.lawImagingDetail__left__des {
	background: #F0FAF0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 18px 0;
    text-align: center;
    font-size: 14px;
    line-height: 26px;
    margin: 15px 0 0;
	position: relative;
}

.lawImagingDetail__left__des:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 50px 0 50px;
    border-color: #FFA61B transparent transparent transparent;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: -245px;
    left: 0;
    margin: auto;
}


.lawImagingDetail__right {
	width: calc((100% / 2) - 10px);
}

.lawImagingDetail__right__title {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;
	line-height: 20px;
}

.lawImagingDetail__right__des {
	background: #F0FAF0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 18px 0;
    text-align: center;
    font-size: 14px;
    line-height: 26px;
    margin: 15px 0 0;
	position: relative;
}

.lawImagingDetail__right__des:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 50px 0 50px;
    border-color: #FFA61B transparent transparent transparent;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: -245px;
    left: 0;
    margin: auto;
}

.lawImagingRight {
	width: calc((100% / 5) - 10px);
}

.lawImagingRight__title {
	background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;	
}

.lawImagingRight__des {
	background: #F0FAF0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 104px 0;
    text-align: center;
    font-size: 14px;
    line-height: 26px;
	position: relative;
}

.lawImagingRight__des:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 50px 0 50px;
    border-color: #FFA61B transparent transparent transparent;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: -418px;
    left: 0;
    margin: auto;
}

.lawSavedWay {

}

.lawSavedWay__title {
    background: #77DD77;
    color: #fff;
    text-align: center;
    padding: 15px 0;
	margin: 7px 0 15px;
}

.lawSavedWay__des {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.lawSavedWay__des__left {
    width: calc((100% / 2) - 87px);
    background: #DFF7DF;
    padding: 30px 40px;
    font-size: 12px;
    line-height: 18px;
}

.lawSavedWay__des__right {
	width: calc((100% / 2) - 87px);
    background: #DFF7DF;
    padding: 30px 40px;
    font-size: 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 1400px) {
	
	.resolutionPointArea--price {
		aspect-ratio: 375 / 253;
	}
	
}

@media only screen and (max-width: 1300px) {
	
	.resolutionPointArea--price {
		aspect-ratio: 13 / 9;
	}
	
	.resolutionPointArea {
		aspect-ratio: 13 / 9;
	}
	
}

@media only screen and (max-width: 1200px) {
	
	.contentsFunctionField__inner {
		width: 100%;	
	}
	
	.header {
		margin: 0 auto;
		max-width: 100%;
		width: 100%;
	}
	
	.h-inner {
	    padding: 13px 20px 13px 20px;
		max-width: 100%;
	}
	
	.h-logo {
		flex: 0 0 auto;
		margin: -13px -20px 10px;
		padding: 0px 20px;
		width: 100%;
	}
		
	.h-logo_item {
		display: flex;
		align-items: center;
		width: 160px;
		height: 60px;
		font-size: 1.5rem;
	}
	
	.h-group {
		flex: 0 0 auto;
		padding: 0 20px;
		width: 100%;
	}
	
	.arrow_box {
		font-size: 16px;
		right: 135px;
		top: 20px;
	}
	
	.resolutionPointArea--price {
		aspect-ratio: 13 / 11;
	}
	
}

@media only screen and (max-width: 1100px) {
	
	.arrow_box {
    	font-size: 16px;
    	right: 135px;
    	top: 10px;
	}

	.t-lyt-hero-03 .t-lyt-hero-03_hdg {
    	padding: 30px;
    	font-size: 3rem;
	}
	
	.f-panel_btn > span {
		position: relative;
		display: inline-block;
		padding: 0 0 0 0px;
	}
	
	.f-panel_btn > span > span {
		display: inline-block;
		padding: 0 0px 0 0;
	}

}

@media only screen and (max-width: 990px) {
	
	.resolutionPointArea__inner,
	.functionListAttention,
	.electronicBookPreservationLaw__inner,
	.electronicLawCorrespondence__inner,
	.urgentBusiness__inner,
	.flowDesArea__inner,
	.contactFormArea__inner {
		width: 100%;	
	}
	
	.t-content-fluid-04_inner {
		max-width: 100%;	
	}
	
	.electronicBookPreservationLaw__inner img {
    	width: 100%;
    	max-width: fit-content;
	}
	
	.t-lyt-hero-03 .t-lyt-hero-03_hdg {
		padding: 40px 30px;
		font-size: 2.5rem;
	}
	
	.contentsFunctionField {
		padding: 0 20px;
	}
	
	.functionListDes ul li {
		list-style: none;
		width: calc((100% / 2) - 40px);
		text-align: center;
		font-size: 14px;
		padding: 20px 0 30px;
	}
	
	.resolutionPointTab {
		padding: 0 20px;
	}
	
	.meritFourPointArea--03 .meritFourPointList__item__text {
		background: #F0FAF0;
		padding: 20px 25px;
		font-size: 14px;
		line-height: 26px;
		color: #333;
		height: 590px;
	}
	
	.meritFourPointList {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	
	.meritFourPointList__item {
		width: calc((100% / 2) - 20px);
		margin: 0 0 20px;
	}
	
	.meritFourPointList__item__text {
		background: #F0FAF0;
		padding: 30px 15px;
		font-size: 14px;
		line-height: 26px;
		color: #333;
		height: 200px;
	}
	
	.electronicBookPreservationLaw {
		padding: 0 20px 70px;
	}
	
	.urgentBusiness {
		padding: 0 20px;
	}
	
	.flowDesArea {
		background: #F8F8F8;
		padding: 0 20px;
	}
	
	
	.priceInfoArea {
		border: 1px solid #77DD77;
		background: #fff;
		text-align: center;
		margin: 0 20px;
	}
	
	.resolutionPointArea {
		aspect-ratio: 13 / 11;
	}
	
	.f-link-list > li {
		margin: 4px 0px 0;
		padding: 0 15px;
	}
	
	.arrow_box {
		background: #FFFFFF;
		padding: 7px 15px;
		font-size: 14px;
		right: 145px;
		top: 15px;
	}
	
	.arrow_box span {
		font-size: 12px;
		color: #333;
	}
	
	.arrow_box:after {
		border: solid transparent;
		content: '';
		height: 0;
		width: 0;
		pointer-events: none;
		position: absolute;
		border-color: rgba(255, 255, 255, 0);
		border-top-width: 15px;
		border-bottom-width: 15px;
		border-left-width: 10px;
		border-right-width: 10px;
		margin-left: -10px;
		border-top-color: #FFFFFF;
		top: 100%;
		left: 50%;
	}
	
	.f-panel_inner {
		display: flex;
		flex-wrap: wrap;
		margin-left: 0;
		justify-content: space-between;
		flex-direction: column;
	}
	
	.f-panel_col:first-child {
		flex-direction: column;
		width: 100%;
	}
	
	.f-panel_col:last-child {
		flex-direction: column;
		width: 100%;
		padding: 30px 0 10px;
	}
	
}

@media screen and (max-width: 850px) {
	
	.resolutionPointArea {
    	aspect-ratio: 13 / 13;
	}
	
}

@media screen and (max-width: 768px) {
	
	.t-content-fluid {
		position: relative;
    	padding: 50px 0 0;
    	background: url(../img/top_main_sp.png) no-repeat center/cover;
    	aspect-ratio: 140 / 142;
	}
	
	.t-lyt-hero-03 .t-lyt-hero-03_hdg {
		padding: 10px 30px 40px;
		font-size: 2.4rem;
		display: flex;
		flex-direction: column-reverse;
	}
	
	.arrow_box {
		background: #FFFFFF;
		padding: 10px 15px;
		font-size: 16px;
		right: inherit;
		top: 35px;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
		max-width: fit-content;
		display: flex;
		align-items: baseline;
		justify-content: center;
		position: relative;
		margin: 0 0 40px;
	}

	.t-lyt-hero-03 .t-lyt-hero-03_top {
		position: relative;
		margin-bottom: 24px;
		padding-bottom: 180px;
	}
	
	.t-lyt-hero-03 .t-lyt-hero-03_img img {
    	max-height: 210px;
    	width: auto;
	}
		
	.arrow_box span {
		font-size: 14px;
		color: #333;
	}
	
	.no-js .h-logo {
		flex: 0 0 auto;
		margin: 0px;
		padding: 0px 0px;
		width: auto;
	}

	.no-js .h-inner {
		align-items: center;
		flex-direction: row;
		padding: 8px 20px;
		background: #fff;
		justify-content: space-between;
	}
	
	.no-js .h-group {
		flex-direction: row-reverse;
		padding: 0;
		width: auto;
	}

  	.hbspt-form {
    	padding-right: 5%;
  		padding-left: 5%;
  	}

	.hs-form-field {
		padding-left: 0;
	}
	
	.hs-form-field label {
		display: flex;
		font-size: 16px;
	}
	
	.hs-form-field .input input,
	.hs-fieldtype-select select {
		padding: 13px;
		font-size: 14px;
	}
	
	.hs-fieldtype-select select {
		height: auto;
		line-height: unset;
	}
	
	.hs-form-field.hs_privacypolicy span {
		font-size: 12px;
	}
	
	.hs_submit input[type="submit"] {
		height: 60px;
	}
	
	.hs_submit .actions:hover::before {
		width: 80%;
	}
	
	.h-menu_content--pc {
		display: none !important;	
	}
	
	.h-menu_btn--sp {
		display: block !important;	
	}
	
	.h-menu_content--sp {
		display: block !important;	
	}
	
	.content-main {
    	padding: 0px 0 0;
	}
	
	.functionListDes ul li {
		list-style: none;
		width: calc((100% / 2) - 10px);
		text-align: center;
		font-size: 14px;
		padding: 20px 0 30px;
	}
	
	.meritFourPointList {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
	}
	
	.meritFourPointList__item {
		width: 100%;
	}
	
	.meritFourPointArea--03 .meritFourPointList__item {
		width: 100%;
	}
	
	.stepFlow {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-direction: column;
	}
	
	.stepFlow__list {
		width: 100%;
		margin: 0 0 20px;
	}
	
	.stepFlow__list:nth-child(2) {
		margin: 0 0px 20px;
	}	
	
	.stepFlow__list:nth-child(3) {
		margin: 0 0px 20px;
	}	
	
	.flowSchedule {
    	padding: 0px 0 0;
    	overflow-x: scroll;
	}
	
	.flowSchedule__img {
		overflow-x: auto;
		width: 980px;
	}
	
	.scrollbar {
	  position: relative;
	  overflow-x: scroll;
	}
		
	/* スクロールバーの幅と高さを設定する
	.scrollbar::-webkit-scrollbar {
		width: 10px;
	  	height: 10px;
	}
	
	/* スクロールバーの形を設定する
	.scrollbar-thumb-rounded::-webkit-scrollbar-thumb {
		border-radius: 0.25rem;
	}
	/* スクロールバーの色を設定する 
	.scrollbar-thumb-black::-webkit-scrollbar-thumb {
		--bg-opacity: 1;
	  	background-color: black;
	}
	*/
	
	.flowAttention {
		font-size: 14px;
		line-height: 22px;
		padding: 70px 0 20px;
		text-align: center;
	}
	
	.menu-btn {
		position: fixed;
		top: 18px;
		right: 10px;
		display: flex;
		height: 40px;
		width: 40px;
		justify-content: center;
		align-items: center;
		z-index: 90;
	}
	.menu-btn span,
	.menu-btn span:before,
	.menu-btn span:after {
		content: '';
		display: block;
		height: 3px;
		width: 25px;
		border-radius: 3px;
		background-color: #77DD77;
		position: absolute;
	}
	.menu-btn span:before {
		bottom: 8px;
	}
	.menu-btn span:after {
		top: 8px;
	}
	
	#menu-btn-check:checked ~ .menu-btn span {
		background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
	}
	
	#menu-btn-check:checked ~ .menu-btn span::before {
		bottom: 0;
		transform: rotate(45deg);
	}
	
	#menu-btn-check:checked ~ .menu-btn span::after {
		top: 0;
		transform: rotate(-45deg);
	}
	
	#menu-btn-check {
		display: none;
	}
	
	.h-menu_content--sp {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 100%;/*leftの値を変更してメニューを画面外へ*/
		z-index: 80;
		transition: all 0.5s;/*アニメーション設定*/
		background: #fff;
	}
	
	.no-js .fn-toggle-menu_content {
		position: fixed !important;	
	}
	
	#menu-btn-check:checked ~ .h-menu_content--sp {
		left: 0;/*メニューを画面内へ*/
	}
	
	.correspondenceSaved__ {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-direction: column;
	}
	
	.correspondenceSaved__list {
		width: 100%;
		background: #F0FAF0;
		padding: 0px;
	    margin: 0 0 20px;
	}
	
	.correspondenceSaved__list:nth-child(2) {
    	margin: 0 0px;
	}

	.t-content-fluid-04_inner .hdg-l2 {
		margin: 0 0 0px;
		font-size: 1.8rem;
		line-height: 32px;
	    padding: 20px 0;
	}
	
	.importantTxt {
    	width: 300px;
	}
	
	.t-lyt-point_hdg .importantTxt span > span {
		padding: 2px 10px 5px;
		font-size: 28px;
		font-weight: 500;
	}
	
	.importantTxt__copy {
		padding: 22px 40px 25px;
		font-size: 18px;
	}	
	
	.t-lyt-point_hdg > h3 {
		margin: 10px 0 0;
		font-size: 1.8rem;
		padding: 0px 0 0;
		line-height: 28px;
	}
	
	.t-lyt-point_hdg .importantTxt .importantTxt__copy {
		padding: 22px 40px 25px;
		font-size: 18px;
	}
	
	.t-lyt-point_col .merit-Txt {
		font-size: 12px;
		padding: 0 0px 30px 0;
		line-height: 26px;
	}
	
	.t-lyt-point_col .merit-Txt--inner {
		padding: 30px 10px 0 0;
		font-size: 12px;
	}
	
	.t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-02 .t-lyt-point_col-02 {
		padding: 35px 30px;
	}
	
	.meritFourPointArea .meritTxtTitle {
		display: block;
		margin: 0px 0 0;
		padding: 30px 0 40px;
		color: #FFA61B;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.52;
		text-align: center;
	}
	
	.meritFourPointList__item {
		width: 100%;
		margin: 0 0 20px;
	}
	
	.meritFourPointList__item__copy {
		border-radius: 10px 10px 0 0;
		background: #77DD77;
		padding: 15px 0px;
		font-size: 16px;
		color: #fff;
		text-align: center;
	}
	
	.meritFourPointList__item__text {
		background: #F0FAF0;
		padding: 20px 20px 30px;
		font-size: 12px;
		line-height: 26px;
		color: #333;
		height: fit-content;
	}
	
	.point02Type .t-lyt-point_col {
		flex-grow: 1;
		flex-shrink: 0;
		flex-basis: 0;
		padding: 0 0 0 0px;
	}
	
	.point02Type .t-lyt-point {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	
	.point02Type .t-lyt-point_hdg .importantTxt .importantTxt__copy {
		padding: 22px 25px 25px;
		font-size: 18px;
	}
	
	.point02Type .t-lyt-point_col-02.img--PcType {
		display: none;	
	}
	
	.point02Type .t-lyt-point_col-02.img--SpType {
		display: block;	
	}
	
	.point02Type .t-lyt-point_col .merit-Txt {
		font-size: 14px;
		padding: 0 0px 0 0;
		line-height: 26px;
	}
	
	.point02Type .t-lyt-point_col .merit-Txt {
		font-size: 12px;
		padding: 0 0px 0 0;
		line-height: 26px;
	}
	
	.meritFourPointArea.point02--grasp .meritFourPointList__item__text {
		background: #F0FAF0;
		padding: 20px 20px 40px;
		font-size: 12px;
		line-height: 26px;
		color: #333;
		height: 100%;
	}
	
	.meritFourPointArea.point02--grasp .meritFourPointList__item {
		width: 100%;
		padding: 0 0 0px;
	}
	
	.point03--important .t-lyt-point_hdg .importantTxt .importantTxt__copy {
		padding: 22px 22px 25px;
		font-size: 18px;
	}
	
	.point03--important .t-lyt-point_col .merit-Txt {
		font-size: 12px;
		padding: 0 0px 0 0;
		line-height: 26px;
	}
	
	.point03--important .t-lyt-point_col .merit-Txt.merit-Txt--inner {
		padding: 30px 0px 0 0;
		font-size: 12px;
	}
	
	.point03--important .t-lyt-point_hdg > h3 {
		display: block;
		margin: 0px 0 0;
		padding: 0px 0 0;
		color: #FFA61B;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.52;
	}
	
	.t-content-fluid-04:not(.-enterprise) > .t-content-fluid-04_body.-lyt-point-02 .t-content-fluid-04_inner {
		padding-top: 50px;
	}
	
	.meritFourPointArea--03 .meritFourPointList__item__text {
		background: #F0FAF0;
		padding: 20px 20px 40px;
		font-size: 12px;
		line-height: 26px;
		color: #333;
		height: auto;
	}
	
	.resolutionPointArea {
		background: url(../img/function_bg_sp.png) no-repeat;
		background-size: cover;
		width: 100%;
		aspect-ratio: 21 / 25;
	}
	
	.resolutionPointArea__inner__title {
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 42px;
		padding: 70px 0 40px;
	}
	
	.resolutionPointArea__inner__title span {
		font-size: 18px;
		color: #666;
		line-height: 34px;
	}
	
	.tab_menu {
		width: 100%;
		height: 46px;
		line-height: 46px;
		font-size: 14px;
		text-align: center;
		color: #666;
		border: 1px solid #77DD77;
		background-color: #fff;
		display: block;
		float: left;
		text-align: center;
		font-weight: 400;
		transition: all 0.2s ease;
		margin: 0 0 15px;
		cursor: pointer;
	}
	
	.tab_menu:not(:last-of-type) {
		margin-right: 0px;
	}
	
	.tab_contents {
		padding: 30px;
		clear: both;
		overflow: hidden;
		transition: .5s opacity;
		background: #fff;
	}
	
	.tabContentsBoth {
		display: flex;
		align-items: flex-start;
		padding: 0px 0px 40px;
		flex-direction: column;
	}
	
	.tabContentsBoth__des {
		width: 100%;
		padding: 30px 0 0 0px;
	}
	
	.resolutionPointTab {
		padding: 0 20px;
	}
	
	.tabContentsBoth img {
		width: 100%;
	}

	.tabContentsBoth__des__title {
		color: #77DD77;
		padding: 10px 0 15px;
		font-size: 18px;
	}
	
	.tabContentsBoth__des__hosoku {
		font-size: 16px;
		line-height: 30px;
		color: #666;
		padding: 0 0 25px;
	}
	
	.tabContentsBoth__des__text {
		font-size: 12px;
		line-height: 24px;
		color: #666;
	}
	
	.electronicBookPreservationLaw {
		padding: 0 20px 70px;
	}
	
	.electronicLawTitle {
		margin: 70px 0 30px;
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 46px;
	}
	
	.electronicLawRequired {
		margin: 20px 0 20px;
		background: #333;
		padding: 20px 0;
		width: 100%;
	}
	
	.electronicLawRequired__title {
		color: #DB2D06;
		font-size: 12px;
		line-height: 26px;
		text-align: center;
		margin: 0px;
		padding: 0 0 5px;
	}
	
	.electronicLawRequired__text {
		color: #fff;
		font-size: 10px;
		line-height: 20px;
		text-align: center;
		margin: 0;
		padding: 0 20px 5px;
	}
	
	.electronicBookPreservationLaw__inner img {
		width: 100%;
		max-width: fit-content;
		image-rendering: -webkit-optimize-contrast;
	}
	
	.electronicLawCorrespondence {
		background: #F8F8F8;
		padding: 70px 20px 50px;
	}
	
	.correspondenceTop {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: column;
	}
	
	.correspondenceTop__left__title {
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 43px;
		padding: 0px 0 20px;
	}
	
	.correspondenceTop__left__text {
		font-size: 12px;
		line-height: 26px;
		color: #333;
		text-align: center;
		padding: 0 0 50px;
	}
	
	.correspondenceSaved__title {
		display: block;
		margin: 0px 0 0;
		padding: 70px 40px 40px;
		color: #FFA61B;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.52;
		text-align: center;
	}
	
	.correspondenceSaved__list__text {
		color: #666;
		font-size: 12px;
		line-height: 22px;
		padding: 0 20px 40px;
	}
	
	.correspondenceSaved__list:nth-child(2) {
		margin: 0 0px 20px;
	}
	
	.correspondenceSaved__list__title {
		position: relative;
		text-align: center;
		padding: 50px 0 60px;
		color: #77DD77;
		font-size: 16px;
		line-height: 28px;
	}
	
	.correspondenceSaved__list:first-child .correspondenceSaved__list__title {
		padding: 50px 0 60px;
	}
	
	.correspondenceSaved__list__title:after {
		content: "";
		border-bottom: 2px solid #25B4C7;
		position: absolute;
		top: 130px;
		width: 80px;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
	}
	
	.correspondenceSaved__list:first-child .correspondenceSaved__list__title:after {
		content: "";
		border-bottom: 2px solid #25B4C7;
		position: absolute;
		top: 100px;
		width: 80px;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
	}
	
	.urgentBusiness {
		padding: 0 20px;
	}
	
	.urgentBusiness__inner {
		padding: 10px 0px 80px;
	}
	
	.urgentBusiness__inner__title {
		margin: 60px 0 0px;
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 43px;
	}
	
	.urgentBusiness__inner__schedule {
		display: block;
		margin: 0px 0 0;
		padding: 25px 0 15px;
		color: #FFA61B;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 1.52;
	}
	
	.urgentBusiness__inner__text {
		font-size: 12px;
		line-height: 22px;
		padding: 0 0 40px;
	}
	
	.scheduleInfo__list__date {
		font-size: 14px;
		font-weight: bold;
	}
	
	.scheduleInfo__list__text {
		font-size: 12px;
		line-height: 20px;
		padding: 2px 0 0;
	}
	
	.scheduleAttention {
		font-size: 12px;
		line-height: 22px;
		text-align: center;
		padding: 0px 0 0;
	}
	
	.flowDesArea {
		background: #F8F8F8;
		padding: 0 20px;
	}
	
	.flowDesArea__inner__title {
		margin: 70px 0 40px;
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 43px;
	}
	
	.stepFlow__list__num p {
		font-size: 18px;
		font-weight: 500;
		padding: 0 0 0px;
		margin: 0px;
		letter-spacing: 1.6px;
	}
	
	.stepFlow__list__num span {
		font-size: 43px;
		font-weight: 600;
		line-height: 36px;
	}
	
	.stepFlow__list__text {
		padding: 20px 0px;
		font-size: 14px;
		color: #333;
		font-weight: bold;
		line-height: 22px;
		text-align: center;
		background: #F0FAF0;
		height: 80px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.resolutionPointArea--price .resolutionPointArea__inner__title {
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 20px;
		line-height: 36px;
		padding: 70px 0 40px;
	}
		
	.priceInfoArea {
		border: 1px solid #77DD77;
		background: #fff;
		text-align: center;
		padding: 0 0px;
		margin: 0 20px;
	}
	
	.priceInfoArea__title {
		color: #fff;
		padding: 20px 0;
		background: #77DD77;
		font-size: 18px;
		line-height: 48px;
		font-weight: 500;
	}
	
	.priceInfoArea__system {
		background: #FFFCE0;
		padding: 25px 10px;
		font-size: 14px;
		font-weight: 400;
		color: #333;
	}
	
	.priceInfoArea__system span {
		color: #77DD77;
		font-size: 18px;
		line-height: 24px;
		vertical-align: bottom;
		padding: 0 2px 0 0;
	}
	
	.priceInfoArea__consulting {
		background: #EDFBFC;
		padding: 25px 10px;
		font-size: 14px;
		font-weight: 400;
		color: #333;
	}
	
	.priceInfoArea__consulting span {
		color: #77DD77;
		font-size: 18px;
		line-height: 24px;
		vertical-align: bottom;
		padding: 0 2px 0 0;
	}
	
	.priceInfoArea__total {
    	padding: 0px 0 50px;
	}

	.priceInfoArea__total__price span {
		color: #77DD77;
		font-size: 20px;
		line-height: 26px;
		vertical-align: bottom;
		padding: 0 2px 0 0;
	}
	
	.priceInfoArea__total .btn-primary {
    	max-width: 250px;
    	font-size: 18px;
	}
	
	.contactFormArea {
    	padding: 0 20px;
	}
	
	.contactFormArea__inner__title {
		padding: 90px 0 20px;
		text-align: center;
		color: #77DD77;
		font-size: 18px;
		line-height: 42px;
		font-weight: 500;
	}
	
	.contactFormArea__inner__des {
		font-size: 12px;
		line-height: 22px;
		color: #333;
		padding: 0 0 20px;
		text-align: center;
	}
	
	.hs-form-field label {
    	display: flex;
    	font-size: 12px;
	}
	
	.footer {
		padding: 50px 20px 15px;
		margin: 0px;
	}
	
	.f-panel {
		padding: 20px;
	}
	
	.f-panel_inner {
		flex-direction: column;
		margin: 0px 0 0;
	}
	
	.f-panel_col:first-child {
		flex-direction: column;
		width: 100%;
		margin: 10px 0 0;
	}
	
	.companyInfo__title {
		font-size: 18px;
		color: #77DD77;
		line-height: 42px;
		padding: 0 0 5px;
	}
	
	.companyInfo__text {
		font-size: 12px;
		color: #333;
		line-height: 22px;
		padding: 0 0 25px;
	}
	
	.businessContent {
		display: flex;
		justify-content: flex-start;
		align-items: end;
		padding: 10px 0 0;
		flex-direction: column;
	}
	
	.businessContent__info {
		width: 100%;
	}
	
	.businessContent__info__title {
		font-size: 14px;
		color: #77DD77;
		line-height: 24px;
		padding: 0 0 10px;
	}
	
	.businessContent__info__text {
		font-size: 12px;
		color: #333;
		line-height: 24px;
		padding: 0 0 0px;
	}
	
	.businessContent__detailCompany {
		font-size: 12px;
		color: #333;
		line-height: 26px;
		padding: 30px 0 20px;
		width: 100%;
	}
	
	.f-panel_col:last-child {
		flex-direction: column;
		width: 100%;
	}
	
	.f-panel_list-desc-02 > dt {
		margin: 5px 0 10px;
		font-size: 1.4rem;
	}
	
	.f-panel_btn {
		font-size: 1.4rem;
	}
	
	.f-panel_btn > span {
		padding: 0 0 0 0px;
	}
	
	.f-panel_btn > span > span {
		padding: 0 0px 0 0;
		text-align: center;
	}
	
	.f-grid_col {
		margin-left: 0;
		display: flex;
		justify-content: flex-start;
		padding: 30px 0 50px;
	}
	
	.f-link-list {
		margin: 0px;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		flex-direction: column;
	}
	
	.f-link-list > li {
		margin: 10px 0px 0;
		padding: 0 0px;
	}
	
	.preservationLawImaging {
		font-size: 12px;
		padding: 10px 0 70px;
		height: fit-content;
	}
		
	.lawImagingLeft__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 122px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 10px 0 0;
		position: relative;
	}
	
	.lawImagingMiddleBottom__left__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 91px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 10px 0 0;
		position: relative;
	}
	
	.lawImagingDetail__left__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 42px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 10px 0 0;
		position: relative;
	}
	
	.lawImagingDetail__right__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 42px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 10px 0 0;
		position: relative;
	}
	
	
	.lawImagingRight__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 113px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		position: relative;
	}
	
	.lawImagingLeft__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 35px 0 35px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -390px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingMiddleBottom__left__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 35px 0 35px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -330px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingDetail__left__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 35px 0 35px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -253px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingDetail__right__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 35px 0 35px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -253px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingRight__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 35px 0 35px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -397px;
		left: 0;
		margin: auto;
	}
	
	.lawSavedWay__title {
		background: #77DD77;
		color: #fff;
		text-align: center;
		padding: 15px 0;
		margin: 7px 0 15px;
		font-size: 12px;
	}
	
	.lawSavedWay__des__left {
		width: calc((100% / 2) - 87px);
		background: #DFF7DF;
		padding: 30px 40px;
		font-size: 10px;
		line-height: 18px;
	}
	
	.lawSavedWay__des__right {
		width: calc((100% / 2) - 87px);
		background: #DFF7DF;
		padding: 30px 40px;
		font-size: 10px;
		line-height: 18px;
		display: flex;
		align-items: center;
	}	
	
	.preservationLawImaging__middle {
		margin: 10px 0 0;
		display: flex;
		align-items: stretch;
		justify-content: space-between;
	}
	
	.lawImagingLeft {
		width: calc((100% / 5) - 8px);
	}
	
	.lawImagingMiddle {
		width: calc((100% / 5)*3 - 8px);
	}
	
	.lawImagingRight {
		width: calc((100% / 5) - 8px);
	}
	
	.lawImagingMiddleBottom {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin: 10px 0 0;
	}
	
	.lawImagingDetail {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin: 10px 0 0;
	}
	
	.lawImagingRight__title {
		background: #77DD77;
		color: #fff;
		text-align: center;
		padding: 15px 0;
		margin: 0 0 10px;
	}
	
	.lawImagingMiddleBottom__left {
		width: calc((100% / 3) - 6px);
	}
	
	.lawImagingMiddleBottom__right {
		width: calc((100% / 3) * 2 - 6px);
	}
	
	.lawImagingDetail__left {
		width: calc((100% / 2) - 6px);
	}
	
	.lawImagingDetail__right {
		width: calc((100% / 2) - 6px);
	}

	
}

@media only screen and (max-width: 600px) {
	
	.t-content-fluid {
		position: relative;
    	padding: 50px 0 0;
    	background: url(../img/top_main_sp.png) no-repeat center/cover;
    	aspect-ratio: 140 / 15;
	}
	
	.resolutionPointArea {
		background: url(../img/function_bg_sp.png) no-repeat;
		background-size: cover;
		width: 100%;
		aspect-ratio: 21 / 28;
	}
	
}

@media only screen and (max-width: 480px) {
  
  	.t-content-fluid {
		position: relative;
    	padding: 50px 0 0;
    	background: url(../img/top_main_sp.png) no-repeat center/cover;
    	aspect-ratio: 140 / 199;
	}
  
  	.electronicLawImg-SP {
		display: block;	
	}
	
	.electronicLawImg-PC {
		display: none;	
	}
	
	.hs_submit input[type="submit"] {
		font-weight: 500;
		font-size: 16px;
	}
	
	.hs_submit {
		text-align: center;
		padding: 30px 0;
	}
	
	.hs-form-field label {
		align-items: baseline;
		
	}
		
	.hs-form-required {
		font-size: 10px;
		padding: 0 0 0 5px;
	}
	
	.contentsFunctionField {
		padding: 0 10px;
	}
	
	.contactFormField {
		width: 100%;
		padding: 0px 0px 90px;
	}
	
	.contentsFunctionField__inner__copy {
		margin: 70px 0 20px;
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 18px;
		line-height: 32px;
	}
	
	.contentsFunctionField__inner__text {
		font-size: 14px;
		text-align: center;
		padding: 0px 0 50px;
		line-height: 24px;
		margin: 0px;
	}
	
	.functionListDes__title {
		padding: 25px 0 20px;
		color: #77DD77;
		text-align: center;
		font-weight: 500;
		font-size: 16px;
	}
	
	.functionListDes__text {
		line-height: 26px;
		font-size: 12px;
		line-height: 22px;
	}
	
	.functionListAttention {
		font-size: 12px;
		text-align: center;
		padding: 50px 0 60px;
		line-height: 26px;
		border-bottom: 1px solid #E1E1E1;
		margin: 0 auto;
	}
	
	.priceInfoArea__system {
		background: #FFFCE0;
		padding: 25px 10px;
		font-size: 12px;
		font-weight: 400;
		color: #333;
	}
	
	.priceInfoArea__system span {
		color: #77DD77;
		font-size: 16px;
		line-height: 22px;
		vertical-align: bottom;
		padding: 0 1px 0 0;
	}
	
	.priceInfoArea__consulting {
		background: #EDFBFC;
		padding: 25px 10px;
		font-size: 12px;
		font-weight: 400;
		color: #333;
	}
	
	.priceInfoArea__consulting span {
		color: #77DD77;
		font-size: 16px;
		line-height: 22px;
		vertical-align: bottom;
		padding: 0 1px 0 0;
	}
	
	.priceInfoArea__total__price span {
		color: #77DD77;
		font-size: 18px;
		line-height: 30px;
		vertical-align: bottom;
		padding: 0 2px 0 0;
	}
	
	.resolutionPointArea {
		background: url(../img/function_bg_sp.png) no-repeat;
		background-size: cover;
		width: 100%;
		aspect-ratio: 28 / 50;
	}
	
	.preservationLawImaging {
		font-size: 10px;
		padding: 10px 0 70px;
		height: fit-content;
	}
	
	.preservationLawImaging__middle {
		margin: 5px 0 0;
		display: flex;
		align-items: stretch;
		justify-content: space-between;
	}
	
	.lawImagingLeft__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 126px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 5px 0 0;
		position: relative;
	}
	
	.lawImagingLeft {
		width: calc((100% / 5) - 4px);
	}
	
	.lawImagingMiddle {
		width: calc((100% / 5)*3 - 4px);
	}
	
	.lawImagingRight {
		width: calc((100% / 5) - 4px);
	}
	
	.lawImagingMiddleBottom {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin: 5px 0 0;
	}
	
	.lawImagingMiddleBottom__left {
		width: calc((100% / 3) - 3px);
	}
	
	.lawImagingMiddleBottom__left__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 91px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 5px 0 0;
		position: relative;
	}
	
	.lawImagingMiddleBottom__right {
		width: calc((100% / 3) * 2 - 3px);
	}
	
	.lawImagingDetail {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin: 5px 0 0;
	}
	
	.lawImagingDetail__left {
		width: calc((100% / 2) - 3px);
	}
	
	.lawImagingDetail__right {
		width: calc((100% / 2) - 3px);
	}
	
	.lawImagingDetail__left__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 43px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 5px 0 0;
		position: relative;
	}
	
	.lawImagingDetail__right__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 53px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		margin: 5px 0 0;
		position: relative;
	}
	
	.lawImagingRight__title {
		background: #77DD77;
		color: #fff;
		text-align: center;
		padding: 15px 0;
		margin: 0 0 5px;
	}
	
	.lawImagingRight__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 108px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		position: relative;
	}
	
	.lawImagingMiddleBottom__left__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 25px 0 25px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -338px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingLeft__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 25px 0 25px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -390px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingDetail__left__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 25px 0 25px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -245px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingDetail__right__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 25px 0 25px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -265px;
		left: 0;
		margin: auto;
	}
	
	.lawImagingRight__des:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 25px 0 25px;
		border-color: #FFA61B transparent transparent transparent;
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -393px;
		left: 0;
		margin: auto;
	}
	
	.lawSavedWay__title {
		background: #77DD77;
		color: #fff;
		text-align: center;
		padding: 15px 0;
		margin: 0px 0 5px;
		font-size: 10px;
	}
	
	.lawSavedWay__des__left {
		width: calc((100% / 2) - 63px);
		background: #DFF7DF;
		padding: 20px 30px;
		font-size: 10px;
		line-height: 18px;
	}
	
	.lawSavedWay__des__right {
		width: calc((100% / 2) - 63px);
		background: #DFF7DF;
		padding: 20px 30px;
		font-size: 10px;
		line-height: 18px;
		display: flex;
		align-items: center;
	}
	
	.electronicLawRequired {
		margin: 10px 0 10px;
		background: #333;
		padding: 20px 0;
		width: 100%;
	}
	
	
	.footer {
		padding: 50px 20px 15px;
		margin: 0px;
	}
	
	.f-link-list > li {
		margin: 10px 0px 0;
		padding: 0 0px;
	}
	
	.spBr {
		display:none;	
	}
	
	.brSpp {
		display: block;	
	}

  
}

@media only screen and (max-width: 400px) {
	
	.lawImagingRight__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 99px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		position: relative;
	}
	
}

@media only screen and (max-width: 380px) {
	
	.lawImagingRight__des {
		background: #F0FAF0;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 99px 0;
		text-align: center;
		font-size: 10px;
		line-height: 18px;
		position: relative;
	}
	
}




.term-service {
	font-size: 14px;	
}

.term-service__inner {
	padding: 50px;	
}

.term-service__inner h1 {
	font-size: 20px;	
	padding:0 0 20px;
}
