@charset "shift_jis";
/* Updated 2026/03/17.T */
/* Updated 2025/09/19.T */
/* Updated 2025/06/11.T */
/* Updated 2025/05/19.T */
/* Updated 2025/02/17.T */
/* Updated 2024/12/17.T */
/* Updated 2024/08/19.T */
/* Updated 2024/06/17.T */
/* Updated 2024/05/17.T */
/* Updated 2024/02/19.T */
/* Updated 2024/01/17.T */
/* Updated 2023/11/17.T */
/* Updated 2023/10/17.T */
/* Updated 2023/09/19.T */
/* Updated 2023/06/19.T */
#footer-content {
  margin-top: 0;
}
#main-area {
  overflow: hidden;
}
.glyph-link01.-bottom.right-ico > .inner::before {
  left: inherit;
  right: 1em;
}
.section-kv {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 452px;
  background: url(/kojin/direct/products/imgs/common_bg_kv_pc.png) no-repeat center top/auto 453px, #4D7F6F;
}
.section-kv .kv__wrap .kv__h1 {
  width: 658px;
  margin: auto;
  padding-top: 71px;
}
.section-kv.-large01 .kv__h1 {
  padding-top: 0;
}
.section-topics {
  position: relative;
  padding: 44px 0 84px;
  background: linear-gradient(90deg, #b3c8c1 0%, #c6de78 99.46%, #c6de78 100%);
}
.section-topics::before {
  content: "";
  position: absolute;
  top: 116px;
  left: calc(50% - 850px);
  width: 250px;
  height: 225px;
  background: url(/kojin/direct/products/imgs/common_img_topics01.png) no-repeat left top/contain;
}
.section-topics .topics__txt {
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  line-height: 40px;
  text-align: center;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
}
.section-topics .topics__inner {
  position: relative;
  max-width: 970px;
  margin: 67px auto 0;
  padding: 66px 0 55px;
  border-radius: 0 90px 0 90px;
  background-color: #fff;
}
.section-topics .topics__inner::before {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 16px;
  width: 131px;
  height: 161px;
  background: url(/kojin/direct/products/imgs/common_img_topics02.png) no-repeat left top/contain;
}
.section-topics .topics__inner::after {
  content: "";
  position: absolute;
  bottom: -16px;
  right: -106px;
  width: 142px;
  height: 183px;
  background: url(/kojin/direct/products/imgs/common_img_topics05.png) no-repeat left top/contain;
}
.section-topics .topics__inner .topics__h2 {
  position: relative;
  color: #006444;
  font-family: 'Roboto', sans-serif;
  font-size: 5.7rem;
  font-weight: bold;
  font-style: italic;
  letter-spacing: 0.25em;
  text-align: center;
}
.section-topics .topics__inner .topics__h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 90px;
  height: 3px;
  background-color: #E2EFB9;
}
.section-topics .topics__inner .topics__list {
  margin: 33px auto 0;
  max-width: 586px;
}
.section-topics .topics__inner .topics__list > .item {
  padding: 16px 0 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #E3E3E3;
}
.section-topics .topics__inner .topics__list > .item .itemTxt {
  width: 460px;
  font-size: 1.8rem;
  letter-spacing: 1.7px;
  line-height: 1.4;
}
.section-topics .topics__inner .topics__list > .item .btnAnchor a {
  padding: 5px 10px;
  border: 1px solid #f0f0f0;
  border-radius: 16px;
  font-size: 1.3rem;
  font-weight: bold;
  text-decoration: none;
  letter-spacing: -0.7px;
}
.section-topics .topics__inner .topics__list > .item .btnAnchor a::after {
  content: "";
  display: inline-block;
  position: relative;
  top: 0.25em;
  left: 8px;
  width: 1.375em;
  height: 1.375em;
  background: url(/kojin/cmn/imgs/ico_arrow_right_01.svg) left top/cover no-repeat;
  transform: rotate(90deg);
}
.section-appli {
  position: relative;
  padding: 62px 0 69px;
  background: linear-gradient(90deg, #b3c8c1 0%, #c6de78 99.46%, #c6de78 100%);
}
.section-appli::before {
  content: "";
  position: absolute;
  top: -139px;
  left: calc(50% - 861px);
  width: 250px;
  height: 225px;
  background: url(/kojin/direct/products/imgs/common_img_topics01.png) no-repeat left top/contain;
}
.section-appli::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: calc(50% - 678px);
  width: 160px;
  height: 242px;
  background: url(/kojin/direct/products/imgs/common_img_topics03.png) no-repeat left top/contain;
}
.section-appli .appli__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
.section-appli .appli__inner::before {
  content: "";
  position: absolute;
  bottom: -69px;
  left: -172px;
  width: 487px;
  height: 514px;
  background: url(/kojin/direct/products/imgs/common_img_appli01.png) no-repeat left top/contain;
}
.section-appli .appli__inner .appli__h2 {
  position: relative;
  padding-bottom: 23px;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
}
.section-appli .appli__inner .appli__h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 1px;
  background: #fff;
}
.section-appli .appli__inner .btn-list01 {
  margin-top: 33px;
}
.section-appli .appli__inner .btn-list01 .item > div .btn-type01 {
  padding: 14px 30px;
}
.section-appli .appli__inner .btn-list01 .item > div .btn-type01 .inner {
  font-size: 2rem;
}
.topicsWrap {
  padding: 80px 0 162px;
  overflow: hidden;
  background-color: #F3F8F6;
}
.topicsWrap .topicsBox {
  max-width: 970px;
  margin: 112px auto 0;
}
.topicsWrap .topicsBox dl:not(.step__body),
.topicsWrap .topicsBox > .inner {
  overflow: hidden;
  border-radius: 55px;
}
.topicsWrap .topicsBox dl.txt {
  overflow: initial;
  border-radius: 0;
}
.topicsWrap .topicsBox .accBtn {
  position: relative;
  padding: 38px 0 34px;
  background: #e2efbc;
  color: #126444;
  font-size: 2rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
  cursor: pointer;
}
.topicsWrap .topicsBox .accBtn::before {
  content: "";
  position: absolute;
  top: calc(50% - 19px);
  right: 25px;
  width: 39px;
  height: 39px;
  background: url(/kojin/direct/products/imgs/common_ico_arrow.png) no-repeat right top/contain;
}
.topicsWrap .topicsBox .close .accBtn::before {
  transform: rotate(-180deg);
}
.topicsWrap .topicsBox .accConts {
  background-color: #F5F9E6;
}
.topicsWrap .topicsBox .accConts .problem {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding: 44px 43px 25px;
}
.topicsWrap .topicsBox .accConts .problem+.solving::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 52px;
  background: #f5f9e6;
  clip-path: polygon(100% 0, 50% 100%, 0 0);
  -webkit-clip-path: polygon(100% 0, 50% 100%, 0 0);
}
.topicsWrap .topicsBox .accConts .problem .voice {
  position: relative;
  width: 686px;
}
.topicsWrap .topicsBox .accConts .problem .voice::before {
  content: "";
  position: absolute;
  top: 40px;
  right: -24px;
  width: 47px;
  height: 32px;
  background: url(/kojin/direct/products/imgs/common_ico_popup_right.png) no-repeat right top/contain;
}
.topicsWrap .topicsBox .accConts .voice > .inner {
  padding: 40px 50px;
  background: #fff;
  border-radius: 55px;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 1.6px;
}
.topicsWrap .topicsBox .accConts .problem .voice > .note {
  margin-top: 10px;
  padding-right: 50px;
  font-size: 1.2rem;
  text-align: right;
  letter-spacing: 1.2px;
  line-height: 1.875;
}
.topicsWrap .topicsBox .accConts .problem .face {
  width: 149px;
}
.topicsWrap .topicsBox .accConts .solving {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding: 90px 43px 67px;
  background-color: #E2EFBC;
}
.topicsWrap .topicsBox .accConts .solving.-wrap {
  flex-wrap: wrap;
}
.topicsWrap .topicsBox .accConts .solving > .btm-btnList01 {
  width: 100%;
  margin-top: 51px;
}
.topicsWrap .topicsBox .accConts .solving > .btm-btnList01 > .item:not(:first-child) {
  margin-left: 20px;
}
.topicsWrap .topicsBox .accConts .solving .face {
  width: 149px;
}
.topicsWrap .topicsBox .accConts .solving .voice {
  position: relative;
  width: 686px;
}
.topicsWrap .topicsBox .accConts .solving .voice::before {
  content: "";
  position: absolute;
  top: 60px;
  left: -30px;
  width: 47px;
  height: 32px;
  background: url(/kojin/direct/products/imgs/common_ico_popup_left.png) no-repeat left top/contain;
}
.topicsWrap .topicsBox .accConts .solving .voice > .inner .txt + .txt {
  margin-top: 30px;
}
.topicsWrap .topicsBox .accConts .step__wrap {
  padding-bottom: 100px;
  background-color: #fff;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__head {
  position: relative;
  top: -27px;
  width: 207px;
  margin: 0 auto;
  padding: 4px 0;
  background: linear-gradient(90deg, #b3c8c1 0%, #c6de78 99.46%, #c6de78 100%);
  border-radius: 25px 0;
  color: #fff;
  font-family: 'Roboto', sans-serif;
  font-size: 2.8rem;
  text-align: center;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 16px;
  padding: 0 80px;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list li:not(.item):not(.item100w) {
  width: 50%;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w {
  width: 100%;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list li:nth-child(n+3) {
  margin-top: 55px;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list li .step__title {
  display: flex;
  align-items: center;
  padding-left: 20px;
  padding-right: 20px;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w .step__title,
.topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w ~ li .step__title {
  align-items: flex-start;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list li .step__title .num {
  margin-right: 10px;
  color: #004831;
  font-family: 'Roboto', sans-serif;
  font-size: 4.4rem;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list li .step__title .txt {
  font-size: 1.6rem;
}
.topicsWrap .topicsBox .accConts .step__wrap .step__list li figure {
  margin-top: 5px;
  padding: 0 33px;
}
.topicsWrap .topicsBox .accConts .solving .solving-inr {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.topicsWrap .topicsBox .accConts .solving .change {
  display: flex;
  justify-content: space-between;
  width: 754px;
  margin: 15px auto 0;
}
.topicsWrap .topicsBox .accConts .solving .change figure {
  width: 44.1%;
}
.topicsWrap .topicsBox .solving:first-child {
  padding: 44px 43px 74px;
}
.topicsWrap .topicsBox .solving:only-child {
  padding-bottom: 50px;
}
.topicsWrap .topicsBox:not(:first-child) {
  margin-top: 99px;
}
.topicsWrap .topicsBox .accConts .solving .voice > .inner .btnBlk {
  margin-top: 36px;
  text-align: center;
}
/*box01*/
.topicsWrap .topicsBox.box01 {
  position: relative;
  margin-top: 0;
}
.topicsWrap .topicsBox.box01::before {
  content: "";
  position: absolute;
  top: 202px;
  left: -319px;
  width: 160px;
  height: 242px;
  background: url(/kojin/direct/products/imgs/common_img_topics03.png) no-repeat left top/contain;
}
.topicsWrap .topicsBox.box01::after {
  content: "";
  position: absolute;
  top: 444px;
  right: -271px;
  width: 147px;
  height: 262px;
  background: url(/kojin/direct/products/imgs/common_img_topics04.png) no-repeat left top/contain;
}
/*box02*/
.topicsWrap .topicsBox.box02 .accConts .solving .solving-inr {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.topicsWrap .topicsBox.box03 .accConts .solving .voice > .inner .txt:not(:first-child) {
  margin-top: 31px;
}
/*box03*/
.modal-wrap .cvBtnBlk {
  padding: 44px 0 32px;
  margin-left: 72px;
}
.topicsWrap .cvBtnBlk {
  padding-top: 74px;
  margin-left: 33px;
}
.modal-wrap .cvBtnBlk p,
.topicsWrap .cvBtnBlk p {
  position: relative;
  width: 405px;
  margin: 0 auto;
}
.modal-wrap .cvBtnBlk p::before,
.topicsWrap .cvBtnBlk p::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -76px;
  width: 72px;
  height: 115px;
  margin-top: -57.5px;
  background-image: url("/kojin/direct/products/imgs/common_img_01.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center top;
}
.modal-wrap .cvBtnBlk p a,
.topicsWrap .cvBtnBlk p a {
  position: relative;
  width: 100%;
  padding: 13px 44px 15px 10px;
  background-color: #126444;
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  border-radius: 60px;
  transition: .3s;
}
.modal-wrap .cvBtnBlk p a::after,
.topicsWrap .cvBtnBlk p a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 45px;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background-image: url("/kojin/direct/products/imgs/common_ico_note_01.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center top;
}
.modal-wrap .cvBtnBlk p a:hover,
.topicsWrap .cvBtnBlk p a:hover {
  background-color: #004831!important;
  transition: .3s;
}
.topicsWrap .linkBox {
  position: relative;
  max-width: 970px;
  margin: 66px auto 0;
  padding: 59px 68px;
  background-color: #fff;
  border-radius: 90px 0;
}
.topicsWrap .linkBox .copyright {
  position: absolute;
  top: -32px;
  right: 0;
  color: #56635F;
}
.topicsWrap .linkBox .column-layoutB3 {
  justify-content: space-between;
}
.topicsWrap .linkBox .column-layoutB3 li {
  width: 230px;
}
.topicsWrap .linkBox .column-layoutB3 li a {
  width: 100%;
  padding: 9px 10px 15px 15px;
  font-size: 20px;
}
.icon-link01[class*=btn-type][aria-disabled=true]>.inner::after,
.glyph-link01[class*=btn-type][aria-disabled=true]>.inner::after,
.icon-link01[class*=btn-type][disabled]>.inner::after,
.glyph-link01[class*=btn-type][disabled]>.inner::after {
  background-image: url(/kojin/cmn/imgs/ico_arrow_right_02.svg);
}
.step__body:not(:first-of-type) {
  margin-top: 40px;
}
.step__body>.ttl {
  text-align: center;
  font-size: 2rem;
}
.memo-block {
  position: relative;
  margin: 0 70px 31px;
  padding: 23px 40px 35px;
  width: 100%;
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
}
.memo-block::before {
  position: absolute;
  top: -10px;
  right: 19px;
  content: '';
  display: block;
  width: 31px;
  height: 54px;
  background: url(/kojin/direct/products/imgs/cmn_bg_01.png) center center / contain no-repeat;
}
.memo-block>.ttl {
  position: relative;
  padding-left: 30px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #126444;
}
.memo-block>.ttl::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 23px;
  height: 22.5px;
  background: url(/kojin/direct/products/imgs/cmn_ico_01.png) center center / contain no-repeat;
}
.memo-block>.ttl+.memo-list {
  margin-top: 16px;
}
.memo-list {
  border-radius: 0 !important;
}
.memo-list:not(:first-child) {
  margin-top: 22px;
}
.memo-list>.ttl {
  padding-bottom: 14px;
  font-size: 1.6rem;
  border-bottom: 1px solid #e6e6e6;
}
.memo-list>.detail {
  padding-top: 14px;
  font-size: 1.2rem;
}
.ico-face {
  overflow: initial !important;
  border-radius: 0 !important;
}
.ico-face>.name {
  position: relative;
  width: 114px;
  margin: -16px auto;
  padding: 6px;
  text-align: center;
  font-size: 1.2rem;
  color: #004831;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0px 0px 6px rgba(177, 200, 110, 0.3);
  z-index: 0;
}
.box-bubble {
  position: relative;
  margin: auto;
  padding: 18px 66px;
  text-align: center;
  letter-spacing: 0.3em;
  font-weight: bold;
  font-size: 1.9rem;
  color: #346e5b;
  background: #fff;
  border-radius: 0 40px 0 40px;
}
.box-bubble::before,
.box-bubble::after {
  position: absolute;
  content: '';
  display: block;
  border-radius: 50%;
}
.box-bubble::before {
  bottom: -18px;
  left: -26px;
  width: 60px;
  height: 60px;
  border: 10px solid #bbcb84;
}
.box-bubble::after {
  top: -9px;
  left: -51px;
  width: 34px;
  height: 34px;
  border: 6px solid #f2f9db;
}
.box-bubble .underline {
  border-bottom: 3px solid #e2efb9;
}
.box-bubble .num {
  font-size: 2.4rem;
  letter-spacing: 0.16em;
}
.box-bubble:not(:first-child) {
  margin-top: 28px;
}
[class*="ls-button"] {
  width: 427px;
  border: 1px solid #004831;
  box-shadow: none;
}
[class*="ls-button"]:focus {
  background: #F5F5F5;
  outline: 4px solid #c4d700;
  outline-offset: -2px;
}
[class*="ls-button"] > .inner::before {
  display: block;
  width: 1.75em;
  height: 1.75em;
  margin-right: .5em;
  background: center / contain no-repeat;
  content: "";
  transition: background .3s ease-in-out;
}
.ls-button01 > .inner::before {
  background-image: url(/kojin/direct/products/imgs/cmn_ico_heart01.svg);
}
.ls-button01.-active > .inner::before {
  background-image: url(/kojin/direct/products/imgs/cmn_ico_heart02.svg);
}
.ls-button02 > .inner::before {
  background-image: url(/kojin/direct/products/imgs/cmn_ico_sprout01.svg);
}
.ls-button02.-active > .inner::before {
  background-image: url(/kojin/direct/products/imgs/cmn_ico_sprout02.svg);
}
/*  ------------------
fm kv
 ------------------ */
.fm-wrap01 .section-kv {
  position: relative;
  height: 548px;
  background: url(/kojin/direct/products/imgs/cmn_bg_fm_kv01.png) center / auto 100%;
}
.fm-wrap02 .section-kv {
  position: relative;
  height: 548px;
  background: url(/kojin/direct/products/imgs/cmn_bg_fm_kv02.png) center / auto 100%;
}
.fm-kvInr01 {
  text-align: center;
  overflow: hidden;
}
.fm-kvInr01 > .bgImg01 {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 50%;
  top: 0;
  width: 100%;
  min-width: 550px;
  height: 100%;
  transform: translateX(-50%);
}
.fm-kvInr01 > .wrap01 {
  position: relative;
}
.fm-kvInr01 > .wrap01 > .ttl01 {
  font-size: 6.2rem;
  font-weight: bold;
  font-feature-settings: "palt";
  letter-spacing: -.025em;
}
.fm-kvInr01 > .wrap01 > .txt01 {
  margin-top: 13px;
  font-size: 2rem;
}
.fm-kvInr01 > .wrap01 > .txt02 {
  font-size: 2.8rem;
}
.fm-kvInr01 > .wrap01 > .txt02 + .ttl01 {
  margin-top: 12px;
}
.fm-kvInr01 > .label01 {
  display: inline-block;
  width: 150px;
  margin-top: 23px;
  padding: 6px;
  background: #FFFFFF;
  border-radius: 0 20px 0 20px;
  font-size: 2rem;
  font-weight: 700;
}
/*  ------------------
fm main
 ------------------ */
.fm-mainWrap01 {
  padding-bottom: 80px;
  background: #F9F8F3;
  line-height: 1.8;
}
.fm-mainWrap01 > .inner {
  position: relative;
  max-width: 780px;
  margin: 0 auto;
  padding: 84px 20px 63px;
  background: #FFFFFF;
  z-index: 1;
}
.fm-mainWrap01 > .inner::before,
.fm-mainWrap01 > .inner::after {
  position: absolute;
  background: url(/kojin/direct/products/imgs/cmn_bg_fm_cont01.svg) center / contain no-repeat;
  content: "";
}
.fm-mainWrap01 > .inner::before {
  top: 148px;
  left: -320px;
  width: 160px;
  height: 243px;
}
.fm-mainWrap01 > .inner::after {
  top: 425px;
  right: -314px;
  width: 150px;
  height: 256px;
  background-image: url(/kojin/direct/products/imgs/cmn_bg_fm_cont02.svg);
}
.fm-wrap02 .fm-mainWrap01 > .inner::before {
  background-image: url(/kojin/direct/products/imgs/cmn_bg_fm_cont03.svg);
}
.fm-wrap02 .fm-mainWrap01 > .inner::after {
  background-image: url(/kojin/direct/products/imgs/cmn_bg_fm_cont04.svg);
}
.fm-secWrap01 {
  max-width: 620px;
  margin: 72px auto 0;
}
[class^="fm-secWrap"] + .fm-secWrap01 {
  margin-top: 56px;
}
/*  ------------------
fm parts
 ------------------ */
/* title */
.fm-head2Wrap01 > .ttl01 {
  padding-bottom: .583em;
  border-bottom: 2px solid #A99347;
  font-size: 2.4rem;
  font-weight: 700;
}
.fm-head2Wrap01 + [class^="fm-"] {
  margin-top: 32px;
}
.fm-head2Wrap01 + [class^="fm-"].-lMgn {
  margin-top: 40px;
}
/* image */
.fm-imgWrap01 {
  text-align: center;
}
.fm-imgWrap01 + [class^="fm-"] {
  margin-top: 24px;
}
.fm-imgWrap01 + [class^="fm-"].-lMgn {
  margin-top: 56px;
}
/* text */
.fm-txtWrap01 > :nth-child(n + 2) {
  margin-top: 24px;
}
.fm-txtWrap01.-lMgn > :nth-child(n + 2) {
  margin-top: 32px;
}
.fm-txtWrap01.-sMgn > :nth-child(n + 2) {
  margin-top: 16px;
}
.fm-txtWrap01 + [class^="fm-"] {
  margin-top: 32px;
}
.fm-txtWrap01 + [class^="fm-"].-lMgn {
  margin-top: 56px;
}
.tc-fmOrange01 {
  color: #E95501;
}
/* list */
.list-circle01 > .item::before {
  top: .66em;
}
.list-circle01.-dark01 > .item::before,
.list-circle01 > .item.-dark01::before {
  background: #56635F;
}
.list-num02.-dark01 > .item,
.list-num02 > .item.-dark01 {
  padding-left: calc(1.25em + 10px);
}
.list-num02.-dark01 > .item > .mark,
.list-num02 > .item.-dark01 > .mark {
  width: 1.25em;
  height: 1.25em;
  margin-top: .275em;
  padding-top: .12em;
  background: #004831;
  color: #FFFFFF;
}
.list-num02.-dark01 > .item > .mark > span,
.list-num02 > .item.-dark01 > .mark > span {
  font-family: roboto-bold !important;
  font-size: .875em;
  line-height: 1;
}
/* comment */
.fm-comment01 > .item {
  display: flex;
  justify-content: space-between;
}
.fm-comment01 > .item:nth-child(n + 2) {
  margin-top: 32px;
}
.fm-comment01:not(.-reverse) > .item:nth-child(2n + 1),
.fm-comment01.-reverse > .item:nth-child(2n) {
  flex-direction: row-reverse;
}
.fm-comment01 > .item > .txt01 {
  display: flex;
  align-items: center;
  position: relative;
  width: calc(100% - 116px);
  padding: 14px 24px;
  background: #F9F8F3;
  border-radius: 20px;
}
.fm-comment01 > .item > .txt01::before {
  position: absolute;
  bottom: 16px;
  border-style: solid;
  border-width: 8px 15px;
  border-color: rgb(255 255 255 / 0);
  content: "";
}
.fm-comment01:not(.-reverse) > .item:nth-child(2n + 1) > .txt01::before,
.fm-comment01.-reverse > .item:nth-child(2n) > .txt01::before {
  right: 100%;
  border-right-color: #F9F8F3;
}
.fm-comment01:not(.-reverse) > .item:nth-child(2n) > .txt01::before,
.fm-comment01.-reverse > .item:nth-child(2n + 1) > .txt01::before {
  left: 100%;
  border-left-color: #F9F8F3;
}
.fm-comment01:not(.-reverse) > .item > .img01 {
  width: 100px;
}
.fm-comment01 + [class^="fm-"] {
  margin-top: 56px;
}
/* quiz */
.fm-quizWrap01 + [class^="fm-"] {
  margin-top: 32px;
}
.fm-quizWrap01 > :nth-child(n + 2) {
  margin-top: 16px;
}
.fm-quizWrap01 > .ttl01 {
  margin-top: 32px;
  font-weight: 700;
}
.fm-choices01 {
  list-style-type: upper-latin;
  counter-reset: choices01;
}
.fm-choices01 > .item {
  counter-increment: choices01;
}
.fm-choices01 > .item::before {
  content: counter(choices01, upper-latin) "\FF1A";
}
/* box */
.fm-boxWrap01 {
  padding: 16px;
  background: #F9F8F3;
  border-radius: 20px;
}
/* btn */
.btn-type01.-fmGreen01 {
  background: #006444;
}
.btn-type01.-fmOrange01 {
  background: #FF5F04;
}
/* modal */
.ls-reactionModIco01 {
  text-align: center;
}
.ls-reactionModIco01 > .inner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 93px;
  height: 81px;
}
.reaction-modal01[aria-hidden="true"] .ls-reactionModIco01 > .inner {
  transform: scale(.9);
}
.reaction-modal01[aria-hidden="false"] .ls-reactionModIco01 > .inner {
  animation: reactHeart01 .3s ease-in-out .3s forwards;
}
.ls-reactionModIco01 > .inner::before {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: url(/kojin/direct/products/imgs/cmn_ico_fm_lsm02.svg) center / contain no-repeat;
  content: "";
  opacity: 0;
  transform: scale(.1);
}
.reaction-modal01[aria-hidden="false"] .ls-reactionModIco01 > .inner::before {
  animation: reactHeart02 .3s ease-in-out .4s forwards;
}
.ls-reactionModIco01 > .inner > .img01 {
  display: inline-block;
}
@keyframes reactHeart01 {
  50% {transform: scale(1.1);}
  100% {transform: none;}
}
@keyframes reactHeart02 {
  100% {transform: none; opacity: 1;}
}
/*  ------------------
fm top
 ------------------ */
.fm-topCont01 {
  max-width: 620px;
  margin: 0 auto;
}
.fm-date01 {
  display: flex;
  flex-wrap: wrap;
}
.fm-date01 > :nth-child(odd) {
  min-width: 3.1em;
}
.fm-date01 > :nth-child(even) {
  margin-left: .5em;
}
.fm-date01 + [class^="fm-"] {
  margin-top: 40px;
}
.fm-index01 {
  margin-top: 72px !important;
  padding: 40px 56px;
  background: #F1ECD4;
  border-radius: 0 55px 0 55px;
  color: #004831;
}
.fm-index01 > .ttl01 {
  text-align: center;
}
.fm-index01 > .ttl01 > .inner {
  display: inline-block;
  width: 109px;
  padding: 4px 0;
  background: #FFFFFF;
  font-family: roboto;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  border-radius: 100px;
}
.fm-ancList01 {
  margin-top: 16px;
  counter-reset: ancList01;
}
.fm-ancList01 > .item {
  display: flex;
  font-size: 1.4rem;
  counter-increment: ancList01;
}
.fm-ancList01 > .item:nth-child(n + 2) {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #FFFFFF;
}
.fm-ancList01 > .item::before {
  display: block;
  margin-right: .571em;
  color: inherit;
  content: counter(ancList01) ".";
}
.fm-ancLink01 {
  text-decoration: none;
}
.fm-ancLink01:hover {
  text-decoration: underline;
}
/*  ------------------
fm work sheet
 ------------------ */
.fm-workSheet {
  max-width: 620px;
  margin: 80px auto 0;
}
.fm-lsBtnList01 {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}
.fm-lsBtnList01 > .item:not(:first-child) {
  margin-left: 24px;
}
.fm-lsBtn01 {
  color: #006444;
}
.fm-lsBtn01:active,
.fm-lsBtn01:focus {
  outline: none;
}
.fm-lsBtn01 > .ico01 {
  display: inline-block;
  position: relative;
  border-radius: 50%;
}
.fm-lsBtn01.-click {
  animation: fnLsTrf1 .2s ease-in-out 0s forwards;
}
@keyframes fnLsTrf1 {
  50% {transform: scale(.9);}
}
.fm-lsBtn01.-click > .ico01 {
  transition: box-shadow .3s ease-in-out;
}
.fm-lsBtn01.-active > .ico01 {
  box-shadow: 0 0 0 1px #017A4F;
}
.fm-lsBtn01 > .ico01::before {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 90%;
  height: 90%;
  background: url(/kojin/direct/products/imgs/cmn_bg_fm_lsb01.svg) center / contain no-repeat;
  opacity: 0;
  transform: translate(-50%, -50%);
  pointer-events: none;
  content: "";
}
.fm-lsBtn01.-click > .ico01::before {
  animation: fnLsTrf2 .3s ease-in-out 0s forwards;
}
@keyframes fnLsTrf2 {
  30% {opacity: 1;}
  90% {width:130%; height: 130%;}
  100% {opacity: 0;}
}
.fm-lsBtn01 > .txt01 {
  display: block;
  margin-top: 4px;
  font-size: 1.2rem;
}
/*  ------------------
fm share
 ------------------ */
.fm-share {
  margin: 56px -20px 0;
  padding: 29px 20px 28px;
  background: #F1EDD4;
  text-align: center;
}
.fm-share > .ttl01 > .inner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 115px;
  min-height: 32px;
  padding: 4px;
  background: #DDD18A;
  border-radius: 100px;
  color: #004831;
  font-family: roboto;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
/*  ------------------
fm btm
 ------------------ */
.fm-btmCont01 {
  max-width: 620px;
  margin: 56px auto 0;
}
.fm-btmCont02 {
  max-width: 700px;
  margin: 40px auto 0;
}
.fm-btmCont02 .fm-boxWrap01 {
  padding: 24px;
  border-radius: 60px 0 60px 0;
}
@media screen and (min-width: 768px) {
  [class*="ls-button"] {
    font-size: 2rem;
  }
  [class*="ls-button"] > .inner {
    min-height: 62px;
  }
  [class*="ls-button"] > .inner::before {
    width: 1.9em;
    height: 1.9em;
    margin-right: 1em;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w ~ li {
    margin-top: 20px;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w ~ li .step__title .txt {
    margin-top: 12px;
  }
/*  ------------------
fm kv
 ------------------ */
  .fm-wrap02 .fm-kvInr01 > .label01 {
    background: #DDD08B;
  }
/*  ------------------
fm top
 ------------------ */
  .fm-date01 > :nth-child(2n + 3) {
    margin-left: 1em;
  }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
  .section-appli {
    padding: 40px 0 0;
  }
  .section-appli .appli__inner {
    padding-bottom: 30px;
  }
  .section-appli .appli__inner::before {
    left: -5%;
    bottom: 0;
    width: 370px;
    height: 370px;
    background-position: center bottom;
  }
  .section-appli .appli__inner .appli__h2 {
    padding-bottom: 18px;
    font-size: 2.8rem;
  }
  .section-appli .appli__inner .btn-list01 {
    margin-top: 25px;
  }
}
@media screen and (max-width: 767px) {
  .section-kv {
    height: 93.867vw;
    background: url(/kojin/direct/products/imgs/common_bg_kv_sp.png) no-repeat center top/100% 100%;
  }
  .section-kv .kv__wrap {
    width: 100%;
    padding: 5%;
  }
  .section-kv.-large01 {
    height: auto;
  }
  .section-kv .kv__wrap .kv__h1 {
    width: 66%;
    padding-top: 0;
  }
  .section-kv .kv__wrap .kv__h1 img {
    width: 100%;
  }
  .section-kv[class*="-spSimple"] {
    background-size: cover;
  }
  .section-kv[class*="-spSimple"] .kv__wrap .kv__h1 {
    width: 100%;
    padding: 66px 0 51px;
  }
  .section-kv.-spSimple05 .kv__wrap {
    padding: 0 5%;
  }
  .section-kv.-spSimple06 .kv__wrap {
    padding: 0 6%;
  }
  .section-kv.-spSimple07 .kv__wrap {
    padding: 0 7%;
  }
  .section-kv.-spSimple08 .kv__wrap {
    padding: 0 8%;
  }
  .section-kv.-spSimple09 .kv__wrap {
    padding: 0 9%;
  }
  .section-kv.-spSimple10 .kv__wrap {
    padding: 0 10%;
  }
  .section-kv.-spSimple11 .kv__wrap {
    padding: 0 11%;
  }
  .section-kv.-spSimple12 .kv__wrap {
    padding: 0 12%;
  }
  .section-kv.-spSimple13 .kv__wrap {
    padding: 0 13%;
  }
  .section-kv.-spSimple14 .kv__wrap {
    padding: 0 14%;
  }
  .section-kv.-spSimple15 .kv__wrap {
    padding: 0 15%;
  }
  .section-topics {
    padding: 10.5% 5% 21.5%;
  }
  .section-topics .topics__txt {
    font-size: 1.6rem;
    line-height: 2.2;
  }
  .section-topics .topics__inner {
    margin-top: 7.6%;
    padding: 5% 6% 25.2%;
    border-radius: 0 60px;
  }
  .section-topics .topics__inner::before {
    bottom: -7.7%;
    left: 1%;
    width: 70px;
    height: 85px;
  }
  .section-topics .topics__inner::after {
    bottom: -2.5%;
    right: 1%;
    width: 51px;
    height: 66px;
  }
  .section-topics .topics__inner .topics__h2 {
    font-size: 2.8rem;
  }
  .section-topics .topics__inner .topics__list {
    margin-top: 0;
  }
  .section-topics .topics__inner .topics__list > .item {
    flex-wrap: wrap;
    padding: 5% 0 4.2%;
  }
  .section-topics .topics__inner .topics__list > .item:last-child {
    border-bottom: none;
  }
  .section-topics .topics__inner .topics__list > .item .itemTxt {
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .section-topics .topics__inner .topics__list > .item .btnAnchor {
    margin-top: 4.3%;
  }
  .section-topics .topics__inner .topics__list > .item .btnAnchor a::before {
    content: "";
    display: inline-block;
    position: relative;
    top: 0.25em;
    right: 1px;
    width: 1.375em;
    height: 1.375em;
    background: url(/kojin/cmn/imgs/ico_arrow_right_01.svg) left top/cover no-repeat;
    transform: rotate(90deg);
  }
  .section-topics .topics__inner .topics__list > .item .btnAnchor a::after {
    display: none;
  }
  .section-appli {
    padding: 11% 0 16%;
  }
  .section-appli::before {
    top: 20%;
    left: 5%;
    width: 88px;
    height: 79px;
  }
  .section-appli::after {
    display: none;
  }
  .section-appli .appli__inner::before {
    display: none;
  }
  .section-appli .appli__inner .appli__h2 {
    font-size: 2.7rem;
  }
  .section-appli .appli__inner figure {
    margin-top: -70px;
  }
  .section-appli .appli__inner .btn-list01 {
    margin-top: 7%;
  }
  .section-appli .appli__inner .btn-list01 li {
    width: 89%;
  }
  .section-appli .appli__inner .btn-list01 li > div {
    margin-top: 0;
  }
  .topicsWrap {
    padding: 18.6% 5% 24%;
  }
  .topicsWrap .topicsBox {
    margin-top: 34px;
  }
  .topicsWrap .topicsBox .accBtn {
    padding: 4.5% 13% 4.4% 11%;
    font-size: 1.6rem;
    text-align: left;
    line-height: 1.4;
    letter-spacing: 1.6px;
  }
  .topicsWrap .topicsBox .accBtn::before {
    top: calc(50% - 13%);
    right: 4.5%;
    width: 25px;
    height: 25px;
  }
  .topicsWrap .topicsBox .accConts .problem {
    padding: 8vw 5vw;
    align-items: flex-start;
  }
  .topicsWrap .topicsBox .accConts .problem+.solving::before {
    height: 25px;
  }
  .topicsWrap .topicsBox .accConts .problem .voice {
    width: calc(85% - 60px);
    margin-right: 16px;
  }
  .topicsWrap .topicsBox .accConts .problem .voice::before {
    top: 37px;
    right: -16px;
    width: 24px;
    height: 16px;
  }
  .topicsWrap .topicsBox .accConts .voice > .inner {
    padding: 10%;
    border-radius: 32px;
    font-size: 1.3rem;
    line-height: 1.75;
    letter-spacing: 0;
  }
  .topicsWrap .topicsBox .accConts .problem .voice > .note {
    margin-top: 4%;
    padding-right: 0;
    font-size: 1.2rem;
    text-align: right;
    line-height: 1.2;
  }
  .topicsWrap .topicsBox .accConts .problem .face {
    width: 100px;
  }
  .topicsWrap .topicsBox .accConts .solving {
    padding: calc(25px + 8vw) 5vw;
  }
  .topicsWrap .topicsBox .accConts .solving > .btm-btnList01 {
    margin-top: 30px;
  }
  .topicsWrap .topicsBox .accConts .solving > .btm-btnList01:not(.-spColumn) > .item:not(:first-child) {
    margin: 10px 0 0;
  }
  .topicsWrap .topicsBox .accConts .solving .voice {
    width: calc(85% - 55px);
    margin-left: 11px;
  }
  .topicsWrap .topicsBox .accConts .solving .voice::before {
    top: 30px;
    left: -11px;
    width: 24px;
    height: 16px;
  }
  .topicsWrap .topicsBox .accConts .solving .voice > .inner .txt + .txt {
    margin-top: 1em;
  }
  .topicsWrap .topicsBox .accConts .solving .voice > .inner .btnBlk {
    margin-top: 16px;
  }
  .topicsWrap .topicsBox .accConts .solving .voice > .inner .btnBlk span {
    font-size: 14px;
  }
  .topicsWrap .topicsBox .accConts .solving .face {
    width: 100px;
  }
  .topicsWrap .topicsBox .accConts .step__wrap {
    padding-bottom: 16.3%;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__head {
    top: -24px;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list {
    margin-top: 6px;
    padding: 0;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li:not(.item):not(.item100w) {
    width: 100%;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li:not(:first-child) {
    margin-top: 11.7%;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li .step__title {
    align-items: flex-start;
    padding: 0 11%;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li .step__title .num {
    margin-right: 2.5%;
    font-size: 3rem;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li .step__title .txt {
    font-size: 1.4rem;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w .step__title .txt,
  .topicsWrap .topicsBox .accConts .step__wrap .step__list .item100w ~ li .step__title .txt {
    margin-top: 6px;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li figure {
    margin-top: -23px;
    padding: 0;
  }
  .topicsWrap .topicsBox .accConts .step__wrap .step__list li figure img {
    margin-left: 0;
  }
  .topicsWrap .topicsBox .accConts .solving .change {
    display: block;
    width: 100%;
    margin-top: 7%;
  }
  .topicsWrap .topicsBox .accConts .solving .change figure {
    width: 100%;
  }
  .topicsWrap .topicsBox .accConts .solving .change figure:not(:first-child) {
    margin-top: -9%;
  }
  .topicsWrap .topicsBox .solving:first-child {
    padding: 8vw 5vw calc(25px + 8vw);
  }
  .topicsWrap .topicsBox .solving:only-child {
    padding-bottom: 8vw;
  }
  .topicsWrap .topicsBox:not(:first-child) {
    margin-top: 9.7%;
  }
  /*box01*/
  .topicsWrap .topicsBox.box01 .accConts .step__wrap {
    padding-bottom: 10%;
  }
  .topicsWrap .topicsBox.box01 .accConts .step__wrap .step__list {
    margin-top: 5px;
  }
  .topicsWrap .topicsBox.box01 .accConts .step__wrap .step__list li {
    width: 100%;
  }
  .topicsWrap .topicsBox.box01 .accConts .step__wrap .step__list li figure {
    margin-top: -11px;
    padding: 0;
  }
  .topicsWrap .topicsBox.box01 .accConts .step__wrap .step__list li .step__title {
    padding: 0 18%;
  }
  /*box02*/
  .topicsWrap .topicsBox.box02 .accBtn {
    padding: 4.5% 13% 4.5% 11%;
  }
  .topicsWrap .topicsBox.box02 .accConts .solving .change {
    display: block;
    width: 100%;
    margin-top: 7%;
  }
  .topicsWrap .topicsBox.box02 .accConts .solving .change figure {
    width: 100%;
  }
  .topicsWrap .topicsBox.box02 .accConts .solving .change figure:not(:first-child) {
    margin-top: -9%;
  }
  /*box03*/
  .topicsWrap .topicsBox.box03 .accBtn {
    padding: 4.5% 13% 4.5% 11%;
  }
  .modal-wrap .cvBtnBlk {
    padding: 8% 0 16px;
    margin-left: 8%;
  }
  .topicsWrap .cvBtnBlk {
    padding-top: 15%;
    margin-left: 8%;
  }
  .modal-wrap .cvBtnBlk p {
    min-width: 220px;
  }
  .modal-wrap .cvBtnBlk p,
  .topicsWrap .cvBtnBlk p {
    width: 83%;
  }
  .modal-wrap .cvBtnBlk p::before,
  .topicsWrap .cvBtnBlk p::before {
    top: 21px;
    left: -42px;
    width: 38px;
    height: 60px;
    margin-top: 0;
  }
  .modal-wrap .cvBtnBlk p a,
  .topicsWrap .cvBtnBlk p a {
    padding: 14px 54px 13px 21px;
    line-height: 1.2;
  }
  .modal-wrap .cvBtnBlk p a::after,
  .topicsWrap .cvBtnBlk p a::after {
    right: 13px;
  }
  .topicsWrap .linkBox {
    margin-top: 17%;
    padding: 10% 6% 10%;
    border-radius: 60px 0;
  }
  .topicsWrap .linkBox .column-layoutB3 {
    justify-content: center;
    margin-top: 0;
  }
  .topicsWrap .linkBox .column-layoutB3 li {
    width: 48%;
  }
  .topicsWrap .linkBox .column-layoutB3 li .btn-type01 {
    padding: 0;
    min-width: auto;
  }
  .topicsWrap .linkBox .column-layoutB3 li .btn-type01 .inner {
    padding-right: 0;
    padding-left: 0;
    font-size: 1.3rem;
  }
  .memo-block {
    margin: 19px 0;
  }
  .ico-face {
    width: 74px;
  }
  .ico-face>.name {
    position: relative;
    width: 100%;
    margin: -10px auto;
  }
  .box-bubble {
    padding: 19px 80px 19px 14px;
    text-align: left;
    font-size: 1.4rem;
    letter-spacing: 0.38em;
  }
  .box-bubble::before {
    bottom: initial;
    top: -21px;
    left: 5px;
    width: 34px;
    height: 34px;
    border: 6px solid #bbcb84;
  }
  .box-bubble::after {
    top: -41px;
    left: -8px;
    width: 19px;
    height: 19px;
    border: 4px solid #f2f9db;
  }
  .box-bubble>.img {
    position: absolute;
    top: 50%;
    right: -10px;
    transform: translateY(-50%);
  }
  .box-bubble .num {
    font-size: 1.4rem;
  }
/*  ------------------
fm kv
 ------------------ */
  .fm-wrap01 .section-kv {
    height: 390px;
    background-image: url(/kojin/direct/products/imgs/cmn_bg_fm_kv01_sp.png);
  }
  .fm-wrap02 .section-kv {
    height: 390px;
    background-image: url(/kojin/direct/products/imgs/cmn_bg_fm_kv02_sp.png);
  }
  .fm-kvInr01 {
    width: 96%;
    max-width: 331px;
  }
  .fm-kvInr01 > .wrap01 {
    padding: 12px 4px 16px;
    background: #FFFFFF;
    border-radius: 0 40px 0 40px;
  }
  .fm-kvInr01 > .wrap01 > .ttl01 {
    font-size: 2.4rem;
  }
  .fm-kvInr01 > .wrap01 > .txt01 {
    margin-top: 10px;
    font-size: 1.4rem;
  }
  .fm-kvInr01 > .wrap01 > .txt02 {
    padding-top: 6px;
    font-size: 1.4rem;
  }
  .fm-kvInr01 > .wrap01 > .txt02 + .ttl01 {
    margin: 10px 0 -6px;
  }
  .fm-kvInr01 > .label01 {
    width: 80px;
    margin-top: 6px;
    padding: 4px;
    border-radius: 0;
    font-size: 1.6rem;
  }
/*  ------------------
fm main
 ------------------ */
  .fm-mainWrap01 {
    padding-bottom: 0;
  }
  .fm-mainWrap01 > .inner {
    padding: 40px 5.3vw 48px;
    background: #F9F8F3;
  }
  .fm-mainWrap01 > .inner::before,
  .fm-mainWrap01 > .inner::after {
    content: none;
  }
  .fm-secWrap01 {
    margin: 56px auto 0;
  }
  [class^="fm-secWrap"] + .fm-secWrap01 {
    margin-top: 46px;
  }
/*  ------------------
fm parts
 ------------------ */
  .fm-imgWrap01 + [class^="fm-"].-lMgn,
  .fm-txtWrap01 + [class^="fm-"].-lMgn {
    margin-top: 40px;
  }
  /* comment */
  .fm-comment01 > .item > .txt01 {
    width: calc(100% - 86px);
    padding: 14px 16px;
    background: #FFFFFF;
    border-radius: 12px;
    font-size: 1.4rem;
  }
  .fm-comment01 > .item > .txt01::before {
    bottom: 21px;
    border-width: 11px 18px;
  }
  .fm-comment01:not(.-reverse) > .item:nth-child(2n + 1) > .txt01::before,
  .fm-comment01.-reverse > .item:nth-child(2n) > .txt01::before {
    right: calc(100% - 3px);
    border-right-color: #FFFFFF;
  }
  .fm-comment01:not(.-reverse) > .item:nth-child(2n) > .txt01::before,
  .fm-comment01.-reverse > .item:nth-child(2n + 1) > .txt01::before {
    left: calc(100% - 3px);
    border-left-color: #FFFFFF;
  }
  .fm-comment01:not(.-reverse) > .item > .img01 {
    width: 70px;
  }
  .fm-comment01 + [class^="fm-"] {
    margin-top: 46px;
  }
  /* box */
  .fm-boxWrap01 {
    background: #FFFFFF;
    border-radius: 0;
  }
/*  ------------------
fm intro
 ------------------ */
  .fm-index01 {
    margin-top: 56px !important;
    padding: 32px 24px;
    border-radius: 0 60px 0 60px;
  }
/*  ------------------
fm top
 ------------------ */
  .fm-date01 > :nth-child(even) {
    width: calc(100% - 5em);
  }
/*  ------------------
fm work sheet
 ------------------ */
  .fm-workSheet {
    margin: 42px auto 0;
    padding-top: 24px;
    border-top: 1px solid #FFFFFF;
  }
  .fm-lsBtnList01 {
    justify-content: center;
  }
  .fm-lsBtnList01 > .item:not(:first-child) {
    margin-left: calc(6px + 1.6vw);
  }
  .fm-lsBtn01 > .ico01 {
    width: 74px;
  }
  .fm-lsBtn01 > .txt01.-nMgn {
    margin-left: -.75em;
    margin-right: -.75em;
  }
/*  ------------------
fm share
 ------------------ */
  .fm-share {
    margin: 32px -5.3vw 0;
    padding: 29px 5.3vw 28px;
  }
/*  ------------------
fm btm
 ------------------ */
  .fm-btmCont01 {
    margin: 46px auto 0;
  }
  .fm-btmCont02 {
    margin: 32px auto 0;
  }
  .fm-btmCont02 .fm-boxWrap01 {
    padding: 32px 16px;
  }
}
@media screen and (max-width: 374px) {
  .section-appli .appli__inner figure {
    margin-top: -18%;
  }
  .modal-wrap .cvBtnBlk {
    margin-left: 14%;
  }
/*  ------------------
fm work sheet
 ------------------ */
  .fm-lsBtnList01 > .item:not(:first-child) {
    margin-left: 6px;
  }
  .fm-lsBtn01 > .ico01 {
    width: 64px;
  }
  .fm-lsBtn01 > .txt01 {
    line-height: 1.2;
  }
  .fm-lsBtn01 > .txt01.-nMgn {
    margin-left: 0;
    margin-right: 0;
  }
}