@charset "UTF-8";
/*
data-sc-sp
data-sc-pc
data-sc-onlyPc
data-sc-tab
data-sc-pcMin
*/
/*
	@include hover() {
		opacity: 0.6;
	}
*/
/*
	$line:イラレの行の値
	$size:イラレの文字の値

	@include lh(38, 15);
*/
/*
	$size:object-fitの値

	@include objectfit();
	@include objectfit('contain');
*/
/*
	@include taJ();
*/
/*
	@extend %rightarr;
*/
/*
	$weight:フォントの太さ
	@include f_min();
	@include f_min(400);Reguler
	@include f_min(600);SemiBold
*/
/*
* "はんなり明朝" licensed under the IPA Font License Agreement v1.0
* https://typingart.net/?p=44（配布元のURL）
* http://ipafont.ipa.go.jp/（IPAフォントのURL）
* http://ipafont.ipa.go.jp/ipa_font_license_v1.html（IPAフォントライセンスv1.0のURL）
*/
@font-face {
  font-family: "hannari";
  src: url("/common/font/hannari.woff2") format("woff2"), url("/common/font/hannari.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
/*
	$weight:フォントの太さ

	@include f_min();
	@include f_min(500);
	@include f_min(600);
*/
/*
	$color:色指定
	$stripe:線サイズ
	$spacing:線の空きサイズ
	$height:太さ

	@include dotted(#e6e1d2, 4,4,2);
*/
/*
example
@include dotted-y(#COLOR, WidthPX,SpaceingPX,LengthPX,); 横破線
@include dotted-y(#e6e1d2, 4,4,2,10);
*/
/* -----------------------------------------------------------------------------

common local

----------------------------------------------------------------------------- */
.mainVisual .contTit::before {
  background-image: url(../img/about/mv_title_bg.svg);
}
.mainVisual .contTit::after {
  background-image: url(../img/about/mv_title_deco.svg);
}

/* -----------------------------------------------------------------------------

content（rem値修正）

----------------------------------------------------------------------------- */
.sec_intro > .in {
  padding: 1rem 0 1.4rem;
  background-color: #f3efec;
}
@media screen and (max-width: 640px) {
  .sec_intro > .in {
    padding: 0.45rem 0 1.05rem;
  }
}
.sec_intro .secTit .title {
  font-size: 0.34rem;
}
@media screen and (max-width: 640px) {
  .sec_intro .secTit .title {
    font-size: 0.23rem;
  }
  .android .sec_intro .secTit .title {
    letter-spacing: 0.05em;
  }
}
.sec_intro .secTit .title::before, .sec_intro .secTit .title::after {
  position: static;
  content: unset;
}
.sec_intro .txt {
  margin-top: 0.54rem;
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.18rem;
  line-height: 2.2;
}
@media screen and (max-width: 640px) {
  .sec_intro .txt {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_intro .txt {
    margin-top: 0.3rem;
    font-size: 0.16rem;
    letter-spacing: 0.11em;
  }
}

.sec_reason > .in {
  position: relative;
  padding: 1rem 0;
}
@media screen and (max-width: 640px) {
  .sec_reason > .in {
    padding-top: 0.7rem;
    padding-bottom: 0.43rem;
  }
}
.sec_reason .deco {
  position: absolute;
  z-index: 1;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.sec_reason .deco.deco01 {
  top: -1.05rem;
  left: 0;
  right: -0.06rem;
  margin: 0 auto;
  width: 0.54rem;
  height: 1.45rem;
  background-image: url("../img/about/reason_deco01.png");
}
@media screen and (max-width: 640px) {
  .sec_reason .deco.deco01 {
    top: -0.75rem;
    left: 0;
    right: -0.02rem;
    width: 0.41rem;
    height: 1.08rem;
  }
}
.sec_reason .deco.deco02 {
  top: -0.47rem;
  left: calc(50% - 2.87rem);
  width: 0.64rem;
  height: 0.83rem;
  background-image: url("../img/about/reason_deco02.png");
}
@media screen and (max-width: 640px) {
  .sec_reason .deco.deco02 {
    top: auto;
    bottom: -0.35rem;
    left: auto;
    right: 0.42rem;
    width: 0.44rem;
    height: 0.57rem;
  }
}
.sec_reason .deco.deco03 {
  top: -0.26rem;
  right: calc(50% - 3.8rem);
  width: 1.11rem;
  height: 0.66rem;
  background-image: url("../img/about/reason_deco03.png");
}
@media screen and (max-width: 640px) {
  .sec_reason .deco.deco03 {
    top: auto;
    bottom: -0.06rem;
    right: 0.36rem;
    width: 0.61rem;
    height: 0.37rem;
  }
}
.sec_reason .secTit .title {
  line-height: 1.46;
  letter-spacing: 0.25em;
}
@media screen and (max-width: 640px) {
  .sec_reason .secTit .title {
    font-size: 0.23rem;
    letter-spacing: 0.1em;
  }
}
.sec_reason .secTit .title::before {
  left: calc(50% - 0.34rem);
  top: calc(50% - 0.37rem);
  width: 1.04rem;
  height: 0.84rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .secTit .title::before {
    left: calc(50% - 0.46rem);
  }
}
.sec_reason .intro .txt {
  padding: 0.35rem 0 0.65rem;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  text-align: center;
  font-size: 0.18rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .intro .txt {
    font-feature-settings: "palt";
  }
}
.sec_reason .intro .txt .tab {
  display: none;
}
@media screen and (max-width: 640px) {
  .sec_reason .intro .txt {
    padding: 0.4rem 0 0.5rem;
    font-size: 0.16rem;
    letter-spacing: 0.11em;
    line-height: 1.87;
  }
}
.sec_reason .detailBox {
  position: relative;
  margin: 0 auto;
  padding: 0.74rem 0;
  width: 100%;
  max-width: 10rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox {
    max-width: 100%;
    padding: 2.35rem 0 0.55rem;
    width: 100%;
  }
}
.sec_reason .detailBox::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 8.8rem;
  height: 0.03rem;
  background-image: url(../img/about/reason_deco_line01.svg);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox::before {
    position: static;
    content: none;
  }
}
.sec_reason .detailBox > .title {
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.26rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox > .title {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox > .title {
    display: flex;
    justify-content: center;
    padding-right: 0.15rem;
    font-size: 0.2rem;
    letter-spacing: 0.11em;
    line-height: 1.5;
  }
}
.sec_reason .detailBox > .title span {
  position: relative;
  display: inline-block;
  padding-left: 0.53rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox > .title span {
    padding-left: 0.48rem;
  }
}
.sec_reason .detailBox > .title span::before {
  position: absolute;
  content: "";
  top: calc(50% - 0.16rem);
  left: 0;
  width: 0.4rem;
  height: 0.35rem;
  background-image: url(../img/about/reason_title_deco_bg.svg);
  opacity: 0.5;
  background-repeat: no-repeat;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox > .title span::before {
    top: calc(50% - 0.16rem);
    left: 0;
    width: 0.4rem;
    height: 0.35rem;
  }
}
.sec_reason .detailBox > .title span::after {
  position: absolute;
  left: 0.13rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox > .title span::after {
    left: 0.13rem;
  }
}
.sec_reason .detailBox .detail {
  margin-top: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail {
    margin-top: 0.26rem;
  }
}
@media print, screen and (min-width: 641px) {
  .sec_reason .detailBox .detail .content {
    position: relative;
    display: block;
  }
}
.sec_reason .detailBox .detail .content > svg {
  display: block;
  height: 0;
  width: 0;
  line-height: 0;
  overflow: hidden;
}
.sec_reason .detailBox .detail .content .mask01 {
  -webkit-clip-path: url(#reasonMask01);
          clip-path: url(#reasonMask01);
}
.sec_reason .detailBox .detail .content .mask02 {
  -webkit-clip-path: url(#reasonMask02);
          clip-path: url(#reasonMask02);
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .mask02 {
    -webkit-clip-path: url(#reasonMask02_sp);
            clip-path: url(#reasonMask02_sp);
  }
}
.sec_reason .detailBox .detail .content .mask03 {
  -webkit-clip-path: url(#reasonMask03);
          clip-path: url(#reasonMask03);
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .mask03 {
    -webkit-clip-path: url(#reasonMask03_sp);
            clip-path: url(#reasonMask03_sp);
  }
}
.sec_reason .detailBox .detail .content .txtBox {
  width: 46%;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .txtBox {
    width: 100%;
  }
}
.sec_reason .detailBox .detail .content .txtBox .title {
  position: relative;
  padding-left: 0.21rem;
  font-size: 0.2rem;
  line-height: 1.8;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .txtBox .title {
    margin-left: 0.29rem;
    padding-left: 0.36rem;
    padding-left: 0.21rem;
    font-size: 0.17rem;
    letter-spacing: 0.11em;
    line-height: 1.76;
    box-sizing: border-box;
    white-space: inherit;
  }
}
.sec_reason .detailBox .detail .content .txtBox .title::before {
  position: absolute;
  content: "";
  display: block;
  top: 0.12rem;
  left: 0;
  width: 0.13rem;
  height: 0.13rem;
  background-image: url(../img/about/reason_txt_deco02.svg);
  opacity: 0.5;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .txtBox .title::before {
    top: 0.09rem;
    left: 0.02rem;
    width: 0.13rem;
    height: 0.13rem;
  }
}
.sec_reason .detailBox .detail .content .txtBox .txt {
  position: relative;
  display: block;
  margin-top: 0.16rem;
  padding-top: 0.22rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .txtBox .txt {
    margin-top: 0.16rem;
    padding: 0.2rem 0.29rem 0;
    letter-spacing: 0.08em;
    line-height: 1.78;
  }
}
.sec_reason .detailBox .detail .content .txtBox .txt::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100%;
  height: 0.05rem;
  background-image: url(../img/about/reason_deco_line02.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .txtBox .txt::before {
    width: calc(100% - 0.54rem);
  }
}
.sec_reason .detailBox .detail .content .txtBox .boxWrap + .boxWrap {
  margin-top: 0.3rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .content .txtBox .boxWrap + .boxWrap {
    margin-top: 0.3rem;
  }
}
.sec_reason .detailBox .detail .plus {
  position: relative;
  display: block;
  margin-top: 0.85rem;
  padding: 0.32rem;
  box-sizing: border-box;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .plus {
    margin: 0.45rem auto 0;
    padding: 0.26rem 0.23rem;
    width: calc(100% - 0.6rem);
  }
}
.sec_reason .detailBox .detail .plus::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #3e8b8c;
  opacity: 0.15;
  border-radius: 0.18rem;
  z-index: -1;
}
.sec_reason .detailBox .detail .plus::after {
  position: absolute;
  content: "";
  display: block;
  top: -0.24rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0.05rem;
  height: 0.4rem;
  background-image: url(../img/about/reason_deco_dot.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .plus::after {
    top: -0.24rem;
    width: 0.05rem;
    height: 0.4rem;
  }
}
.sec_reason .detailBox .detail .plus .title {
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.2rem;
  letter-spacing: 0.11em;
  line-height: 1.6;
  color: #03888e;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .plus .title {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .plus .title {
    font-size: 0.18rem;
  }
}
.sec_reason .detailBox .detail .plus .txt {
  margin-top: 0.12rem;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .plus .txt {
    margin-top: 0.1rem;
    text-align: left;
  }
}
.sec_reason .detailBox .detail .link {
  margin-top: 0.53rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox .detail .link {
    width: calc(100% - 0.54rem);
    margin: auto;
    margin-top: 0.25rem;
  }
}
.sec_reason .detailBox.detail01 > .title span::after {
  content: "1";
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox.detail01 .txtBox .title {
    letter-spacing: 0.05em !important;
  }
}
.sec_reason .detailBox.detail01 .ph {
  position: absolute;
  right: 0;
  top: 0.06rem;
  width: 4.7rem;
  height: 3.07rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox.detail01 .ph {
    left: 0;
    right: 0;
    margin: 0 auto;
    width: calc(100% - 0.53rem);
    height: 53.26vw;
  }
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox.detail02 {
    padding-top: 2.31rem;
  }
}
.sec_reason .detailBox.detail02 > .title span::after {
  content: "2";
}
.sec_reason .detailBox.detail02 .txtBox {
  margin-left: auto;
}
.sec_reason .detailBox.detail02 .ph {
  position: absolute;
  left: 0;
  top: 0.06rem;
  width: 4.7rem;
  height: 3.56rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox.detail02 .ph {
    right: 0;
    margin: 0 auto;
    width: calc(100% - 0.44rem);
    height: 52vw;
  }
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox.detail03 {
    padding-top: 2.35rem;
  }
}
.sec_reason .detailBox.detail03 > .title span::after {
  content: "3";
}
.sec_reason .detailBox.detail03 .ph {
  position: absolute;
  right: 0;
  top: 0.06rem;
  width: 4.7rem;
  height: 4.12rem;
}
@media screen and (max-width: 640px) {
  .sec_reason .detailBox.detail03 .ph {
    left: 0;
    right: 0;
    margin: 0 auto;
    width: calc(100% - 0.42rem);
    height: 52.91vw;
  }
}

.sec_result > .in {
  padding: 1.2rem 0 1.4rem;
}
@media screen and (max-width: 640px) {
  .sec_result > .in {
    padding: 0.75rem 0 0.9rem;
  }
}
@media screen and (max-width: 640px) {
  .sec_result .secTit .title {
    font-size: 0.26rem;
    letter-spacing: 0.2em;
  }
  .android .sec_result .secTit .title {
    letter-spacing: 0.05em;
  }
}
.sec_result .graphBox {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0.8rem auto 0;
  width: 100%;
  max-width: 10rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox {
    display: block;
    margin-top: 0.55rem;
    max-width: 100%;
  }
}
.sec_result .graphBox .graph {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 4.7rem;
  box-sizing: border-box;
  padding: 0.35rem;
  background-color: #fff;
  border-radius: 0.18rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph {
    justify-content: baseline;
    margin: 0 auto;
    width: calc(100% - 0.6rem);
    height: auto;
    padding: 0.25rem;
  }
  .sec_result .graphBox .graph + .graph {
    margin-top: 0.3rem;
  }
}
.sec_result .graphBox .graph > .title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 0.56rem;
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.22rem;
  color: #fff;
  background-color: #03888e;
  border-radius: 0.27rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .title {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .title {
    height: 0.43rem;
    font-size: 0.2rem;
  }
}
.sec_result .graphBox .graph > .detail {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  height: 100%;
}
.sec_result .graphBox .graph > .detail .catch {
  margin-top: 0.27rem;
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.22rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .detail .catch {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .detail .catch {
    margin-top: 0.23rem;
    font-size: 0.17rem;
    line-height: 1.69;
    white-space: wrap;
  }
}
.sec_result .graphBox .graph > .detail .catch .underline.txt_digit3:before {
  background-image: url("../img/about/txt_digit_line3.svg");
  background-size: 75% auto;
  bottom: -1px;
  left: -0.12rem;
}
.sec_result .graphBox .graph > .detail .catch .underline.txt_digit6::before {
  background-image: url("../img/about/txt_digit_line6.svg");
  background-size: 95% auto;
  bottom: -0.04rem;
  left: -0.12rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .detail .catch .underline.txt_digit6::before {
    left: -0.08rem;
  }
}
.sec_result .graphBox .graph > .detail .catch strong {
  font-size: 1.3em;
  bottom: -0.03rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .detail .catch strong {
    bottom: -1px;
  }
}
.sec_result .graphBox .graph > .detail .txt span {
  font-weight: 600;
}
.sec_result .graphBox .graph > .detail .note {
  position: absolute;
  display: inline-block;
  font-size: 0.14rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph > .detail .note {
    font-size: 0.11rem;
  }
}
.sec_result .graphBox .graph > .detail .ph {
  width: 100%;
  height: auto;
}
.sec_result .graphBox .graph.graph01 > .detail .note {
  right: 0;
}
@media print, screen and (min-width: 641px) {
  .sec_result .graphBox .graph.graph01 > .detail .note {
    bottom: 1.23rem;
  }
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph.graph01 > .detail .note {
    bottom: auto;
    top: 67.5vw;
  }
}
.sec_result .graphBox .graph.graph01 > .detail .txt {
  margin-top: 0.7rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph.graph01 > .detail .txt {
    margin-top: 0.5rem;
  }
}
.sec_result .graphBox .graph.graph01 > .detail .ph {
  margin: 0;
}
@media print, screen and (min-width: 641px) {
  .sec_result .graphBox .graph.graph01 > .detail .ph {
    margin-top: 0.5rem;
    width: 4.06rem;
  }
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph.graph01 > .detail .ph {
    margin-top: 0.22rem;
  }
}
.sec_result .graphBox .graph.graph02 > .detail .note {
  bottom: 1.75rem;
  right: 0.1rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph.graph02 > .detail .note {
    bottom: 1.85rem;
  }
}
.sec_result .graphBox .graph.graph02 > .detail .txt {
  margin-top: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph.graph02 > .detail .txt {
    margin-top: 0.35rem;
  }
}
.sec_result .graphBox .graph.graph02 > .detail .ph {
  margin: 0.25rem auto 0;
  width: 1.86rem;
}
@media screen and (max-width: 640px) {
  .sec_result .graphBox .graph.graph02 > .detail .ph {
    width: 38.9vw;
    height: auto;
    margin-top: 0.2rem;
  }
  .sec_result .graphBox .graph.graph02 > .detail .ph img {
    height: auto;
  }
}

.sec_flow > .in {
  padding: 1.2rem 0 1.6rem;
}
@media screen and (max-width: 640px) {
  .sec_flow > .in {
    padding: 0.8rem 0;
  }
}
.sec_flow .deco {
  position: absolute;
  z-index: 1;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.sec_flow .deco.deco01 {
  top: -0.53rem;
  right: calc(50% - 4.5rem);
  width: 1.22rem;
  height: 1.14rem;
  background-image: url("../img/about/flow_deco01.png");
}
@media screen and (max-width: 640px) {
  .sec_flow .deco.deco01 {
    top: -0.43rem;
    right: 0;
    width: 0.79rem;
    height: 0.74rem;
  }
}
.sec_flow .deco.deco02 {
  top: 0.94rem;
  left: calc(50% - 3.09rem);
  width: 1.19rem;
  height: 0.97rem;
  background-image: url("../img/about/flow_deco02.png");
}
@media screen and (max-width: 640px) {
  .sec_flow .deco.deco02 {
    top: -0.16rem;
    left: auto;
    right: 0;
    width: 0.74rem;
    height: 0.6rem;
  }
}
.sec_flow .deco.deco03 {
  top: -0.3rem;
  right: calc(50% - 4.08rem);
  width: 1.19rem;
  height: 1.3rem;
  background-image: url("../img/about/flow_deco03.png");
}
@media screen and (max-width: 640px) {
  .sec_flow .deco.deco03 {
    top: -0.21rem;
    right: 0;
    width: 0.61rem;
    height: 0.66rem;
  }
}
.sec_flow .deco.deco04 {
  bottom: -0.3rem;
  right: calc(50% - 4.09rem);
  width: 1.04rem;
  height: 0.86rem;
  background-image: url("../img/about/flow_deco04.png");
}
@media screen and (max-width: 640px) {
  .sec_flow .deco.deco04 {
    top: -0.39rem;
    bottom: auto;
    right: 0.05rem;
    width: 0.61rem;
    height: 0.52rem;
  }
}
.sec_flow .intro {
  margin-top: 0.33rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .intro {
    margin-top: 0.24rem;
  }
}
.sec_flow .intro .txt {
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  text-align: center;
  font-size: 0.16rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .intro .txt {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_flow .intro .txt {
    font-size: 0.16rem;
  }
}
.sec_flow .flowBox {
  margin: 0 auto;
  padding: 0.62rem 0.85rem 0.1rem 0.84rem;
  width: 100%;
  max-width: 10rem;
  background-color: #e9edef;
  border-radius: 0.18rem;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox {
    margin: 0 auto;
    padding: 0.25rem 0.25rem 0;
    width: calc(100% - 0.6rem);
    max-width: 100%;
  }
}
.sec_flow .flowBox > .title {
  text-align: center;
  font-family: "hannari";
  font-weight: 400;
  font-size: 0.3rem;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox > .title {
    font-size: 0.25rem;
  }
}
.sec_flow .flowBox > .title span {
  position: relative;
  display: inline-block;
}
.sec_flow .flowBox > .title span::before {
  content: "";
  position: absolute;
  top: calc(50% + 0.35rem);
  display: block;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0.27rem;
  height: 0.06rem;
  background-image: url(../img/about/flow_title_deco_dot.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox > .title span::before {
    top: calc(50% + 0.29rem);
    width: 0.17rem;
    height: 0.04rem;
  }
}
.sec_flow .flowBox + .flowBox {
  margin-top: 0.55rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox + .flowBox {
    margin-top: 0.28rem;
  }
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox:last-of-type {
    padding-bottom: 0.25rem;
  }
}
.sec_flow .flowBox.flow01 {
  margin-top: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox.flow01 {
    margin-top: 0.4rem;
  }
}
.sec_flow .flowBox .flowItem {
  margin-top: 0.15rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .flowItem {
    margin-top: 0.15rem;
  }
}
.sec_flow .flowBox .contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  padding-bottom: 0.48rem;
  width: 5.33rem;
  height: 1.96rem;
  background-image: url(../img/about/flow_contact_bg.svg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .contact {
    margin-top: -0.26rem;
    margin-left: 0.12rem;
    padding-bottom: 0.2rem;
    height: 35.76vw;
    width: calc(100% - 0.36rem);
    background-image: url(../img/about/flow_contact_bg_sp.svg);
  }
}
.sec_flow .flowBox .contact .catch {
  margin-top: 0.05rem;
  text-align: center;
  font-weight: 600;
  font-size: 0.2rem;
  letter-spacing: 0.11em;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .contact .catch {
    margin-top: 0.05rem;
    font-size: 0.14rem;
    letter-spacing: 0;
  }
}
.sec_flow .flowBox .contact .link {
  margin-top: 0.21rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .contact .link {
    margin-top: 0.08rem;
  }
}
.sec_flow .flowBox .contact .btn01 {
  width: 3.4rem;
  height: 0.5rem;
  font-size: 0.17rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .contact .btn01 {
    font-size: 0.16rem;
    width: calc(100% + 0.39rem);
    margin-left: -0.15rem;
  }
}
.sec_flow .flowBox .contact .btn01::after {
  position: absolute;
  content: "";
  display: block;
  top: 0.1rem;
  left: calc(50% - 1.3rem);
  width: 0.27rem;
  height: 0.28rem;
  background-image: url(../img/about/contact_icon.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .contact .btn01::after {
    top: 0.11rem;
    left: calc(50% - 1.18rem);
    width: 0.27rem;
    height: 0.28rem;
  }
}
.sec_flow .flowBox .contact .btn01 span {
  display: inline-block;
}
@media print, screen and (min-width: 641px) {
  .sec_flow .flowBox .contact .btn01 span {
    padding-left: 0.1rem;
  }
}
.sec_flow .flowBox .itemWrap {
  position: relative;
  display: block;
  padding: 0.5rem 0;
}
@media print, screen and (min-width: 641px) {
  .sec_flow .flowBox .itemWrap {
    display: flex;
  }
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap {
    padding: 0.3rem 0 0.32rem;
  }
}
.sec_flow .flowBox .itemWrap::before {
  position: absolute;
  content: "";
  top: -0.1rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0.36rem;
  height: 0.2rem;
  background-image: url(../img/about/flow_deco_arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap::before {
    top: -0.1rem;
    width: 0.27rem;
    height: 0.15rem;
  }
}
.sec_flow .flowBox .itemWrap .dt_ttl {
  padding-left: 0.45rem;
  width: 2.18rem;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.22rem;
  letter-spacing: 0.11em;
  box-sizing: border-box;
  color: #473933;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .dt_ttl {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .dt_ttl {
    padding-left: 0.34rem;
    width: 100%;
    font-size: 0.17rem;
    letter-spacing: 0.05em;
  }
}
.sec_flow .flowBox .itemWrap .dt_ttl > span {
  position: relative;
}
.sec_flow .flowBox .itemWrap .dt_ttl > span::before {
  position: absolute;
  content: "";
  top: 0.01rem;
  left: -0.45rem;
  width: 0.35rem;
  height: 0.3rem;
  background-image: url(../img/about/flow_title_deco_bg.svg);
  background-repeat: no-repeat;
  opacity: 0.5;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .dt_ttl > span::before {
    top: 1px;
    left: -0.33rem;
    width: 0.28rem;
    height: 0.25rem;
  }
}
.sec_flow .flowBox .itemWrap .dt_ttl > span::after {
  position: absolute;
  top: -0.02rem;
  left: -0.34rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .dt_ttl > span::after {
    top: 0;
    left: -0.24rem;
  }
}
.sec_flow .flowBox .itemWrap .txt {
  padding-left: 0.35rem;
  width: 5.3rem;
  font-size: 0.15rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .txt {
    margin-top: 0.15rem;
    padding-left: 0;
    width: 100%;
    font-size: 0.14rem;
  }
}
.sec_flow .flowBox .itemWrap .txt .txtLink {
  display: block;
}
.sec_flow .flowBox .itemWrap .txt .txtLink .btn {
  position: relative;
  font-weight: 500;
  font-size: 0.17rem;
  color: #03888e;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .txt .txtLink .btn {
    width: 100%;
    font-size: 0.14rem;
    letter-spacing: 0.04em;
  }
}
.sec_flow .flowBox .itemWrap .txt .txtLink .btn::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.08rem);
  right: -0.22rem;
  display: block;
  width: 0.16rem;
  height: 0.16rem;
  background-image: url(../img/area/btn_arrow_green_bottom.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap .txt .txtLink .btn::before {
    right: -0.2rem;
  }
}
.sec_flow .flowBox .itemWrap._01::before {
  position: static;
  content: unset;
}
.sec_flow .flowBox .itemWrap._01 .dt_ttl > span::after {
  content: "1";
}
.sec_flow .flowBox .itemWrap._02 .dt_ttl > span::after {
  content: "2";
}
.sec_flow .flowBox .itemWrap._03 .dt_ttl > span::after {
  content: "3";
}
.sec_flow .flowBox .itemWrap._04::before {
  position: static;
  content: unset;
}
.sec_flow .flowBox .itemWrap._04 .dt_ttl > span::after {
  content: "4";
}
.sec_flow .flowBox .itemWrap._05 .dt_ttl > span::after {
  content: "5";
}
.sec_flow .flowBox .itemWrap._06 .dt_ttl > span::after {
  content: "6";
}
.sec_flow .flowBox .itemWrap._07::before {
  position: static;
  content: unset;
}
.sec_flow .flowBox .itemWrap._07 .dt_ttl > span::after {
  content: "7";
}
.sec_flow .flowBox .itemWrap._08 .dt_ttl > span::after {
  content: "8";
}
.sec_flow .flowBox .itemWrap._09 .dt_ttl > span::after {
  content: "9";
}
.sec_flow .flowBox .itemWrap._10 .dt_ttl > span::after {
  content: "10";
  left: -0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox .itemWrap._10 .dt_ttl > span::after {
    left: -0.29rem;
  }
}
.sec_flow .flowBox > .link {
  padding-bottom: 0.6rem;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox > .link {
    padding-bottom: 0.05rem;
    margin-top: -0.12rem;
  }
}
.sec_flow .flowBox > .link .btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 auto;
  width: 2.9rem;
  font-weight: 500;
  font-size: 0.17rem;
  color: #03888e;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox > .link .btn {
    width: 100%;
    font-size: 0.14rem;
    letter-spacing: 0.04em;
    margin-left: -0.08rem;
  }
}
.sec_flow .flowBox > .link .btn::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.09rem);
  right: -0.12rem;
  display: block;
  width: 0.16rem;
  height: 0.16rem;
  background-image: url(../img/about/btn_arrow_green_bottom.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_flow .flowBox > .link .btn::before {
    right: 0;
  }
}
.sec_flow .flowBox .btn {
  transition: opacity 0.3s;
}
.no-touchevents .sec_flow .flowBox .btn:hover {
  opacity: 0.7;
}

.sec_feature > .in {
  padding: 1.2rem 0 1.35rem;
}
@media screen and (max-width: 640px) {
  .sec_feature > .in {
    padding: 0.8rem 0 1rem;
  }
}
.sec_feature .deco {
  position: absolute;
  z-index: 1;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.sec_feature .deco.deco01 {
  top: -0.6rem;
  right: calc(50% - 6.15rem);
  width: 2.34rem;
  height: 1.11rem;
  background-image: url("../img/about/feature_deco01.png");
}
@media screen and (max-width: 640px) {
  .sec_feature .deco.deco01 {
    top: -0.78rem;
    right: 0.36rem;
    width: 1.23rem;
    height: 0.58rem;
  }
}
.sec_feature .deco.deco02 {
  bottom: 0.6rem;
  left: calc(50% - 5.09rem);
  width: 0.94rem;
  height: 0.7rem;
  background-image: url("../img/about/feature_deco02.png");
}
@media screen and (max-width: 640px) {
  .sec_feature .deco.deco02 {
    bottom: 0.25rem;
    left: 0.97rem;
    width: 0.47rem;
    height: 0.35rem;
  }
}
.sec_feature .intro {
  margin-top: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .intro {
    margin-top: 0.4rem;
  }
}
.sec_feature .intro .txt {
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.18rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .intro .txt {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_feature .intro .txt {
    padding: 0 0.3rem;
    text-align: left;
    font-size: 0.16rem;
    line-height: 2;
  }
}
.sec_feature .detailWrap {
  overflow: hidden;
  padding-top: 0.7rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailWrap {
    padding-top: 0;
  }
}
.sec_feature .detailBox {
  position: relative;
  margin: 0 auto;
  padding-top: 0.7rem;
  width: 100%;
  max-width: 14.4rem;
  box-sizing: border-box;
  z-index: 0;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox {
    padding-top: 0.9rem;
    max-width: 100%;
  }
}
.sec_feature .detailBox::before, .sec_feature .detailBox::after {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}
.sec_feature .detailBox::before {
  top: -0.6rem;
  right: calc(50% - 0.7rem);
  width: 61.38%;
  max-width: 8.84rem;
  height: 5.6rem;
  background-image: url(../img/about/feature_detail_bg01.svg);
  background-position: top center;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox::before {
    top: 0.68rem;
    right: 0.15rem;
    width: calc(100% + 0.15rem);
    height: 80.69vw;
    background-image: url(../img/about/feature_detail_bg01_sp.svg);
  }
}
.sec_feature .detailBox::after {
  bottom: -0.15rem;
  left: calc(50% - 1.25rem);
  width: 62.08%;
  max-width: 8.94rem;
  height: 5.86rem;
  background-image: url(../img/about/feature_detail_bg02.svg);
  background-position: bottom center;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox::after {
    bottom: calc(50% - 87.2vw);
    left: 0.08rem;
    width: calc(100% + 0.4rem);
    height: 78.61vw;
    background-image: url(../img/about/feature_detail_bg02_sp.svg);
  }
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail {
    position: relative;
  }
  .sec_feature .detailBox .detail + .detail {
    margin-top: 0.42rem !important;
  }
}
.sec_feature .detailBox .detail.detail01 {
  margin-left: auto;
  padding-top: 0.86rem;
  padding-left: 0.5rem;
  width: 50%;
  min-width: 4.4rem;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail.detail01 {
    padding-left: 0;
    padding-top: 63.5vw;
    width: 100%;
    min-width: auto;
  }
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail.detail01 .title {
    max-width: 100%;
  }
}
.sec_feature .detailBox .detail.detail01 .title:before {
  top: -0.27rem;
  left: calc(50% + 0.55rem);
  width: 1.08rem;
  height: 1.08rem;
  background-image: url(../img/about/feature_title_deco01.svg);
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail.detail01 .title:before {
    top: -0.12rem;
    left: 0.17rem;
    width: 0.48rem;
    height: 0.5rem;
  }
}
.sec_feature .detailBox .detail.detail02 {
  margin: 0 auto;
  padding: 2.7rem 0 1.6rem 0.7rem;
  width: 100%;
  max-width: 10rem;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail.detail02 {
    padding-left: 0;
    padding-top: 63.5vw;
    padding-bottom: 0.4rem;
    max-width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail.detail02 .title {
    max-width: 100%;
  }
}
.sec_feature .detailBox .detail.detail02 .title::before {
  top: -0.2rem;
  right: calc(50% + 0.88rem);
  width: 1.26rem;
  height: 1.21rem;
  background-image: url(../img/about/feature_title_deco02.svg);
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail.detail02 .title::before {
    top: -0.14rem;
    right: auto;
    left: 0.12rem;
    width: 0.48rem;
    height: 0.5rem;
    background-image: url(../img/about/feature_title_deco01.svg);
  }
}
.sec_feature .detailBox .detail > .title {
  position: relative;
  max-width: 3rem;
  font-size: 0.28rem;
  line-height: 1.78;
  letter-spacing: 0.11em;
  z-index: 0;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail > .title {
    padding: 0 0.3rem;
    font-size: 0.2rem;
    line-height: 1.5;
  }
}
.sec_feature .detailBox .detail > .title::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.4;
  z-index: -1;
}
.sec_feature .detailBox .detail .txt {
  margin-top: 0.15rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .txt {
    margin-top: 0.15rem;
    padding: 0 0.3rem;
    width: 100%;
  }
}
.sec_feature .detailBox .detail .note {
  margin-top: 0.22rem;
  font-size: 0.12rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .note {
    margin-top: 0.1rem;
    padding: 0 0.3rem;
    text-align: right;
    font-size: 0.11rem;
  }
}
.sec_feature .detailBox .detail .ph {
  position: absolute;
  display: block;
  width: 48.6%;
  max-width: 7rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .ph {
    max-width: auto;
  }
}
.sec_feature .detailBox .detail .ph._01 {
  top: 0;
  left: 0;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .ph._01 {
    width: calc(100% - 0.3rem);
    max-width: none;
    left: 0;
    right: auto;
  }
}
.sec_feature .detailBox .detail .ph._01 img {
  border-radius: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .ph._01 img {
    border-radius: 0 0.2rem 0.2rem 0;
  }
}
.sec_feature .detailBox .detail .ph._02 {
  bottom: 0.84rem;
  left: calc(50% + 0.18rem);
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .ph._02 {
    width: calc(100% - 0.3rem);
    max-width: none;
    left: auto;
    right: 0;
    top: 0;
    bottom: auto;
  }
}
.sec_feature .detailBox .detail .ph._02 img {
  border-radius: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_feature .detailBox .detail .ph._02 img {
    border-radius: 0.2rem 0 0 0.2rem;
  }
}
@media screen and (max-width: 640px) {
  .sec_feature .link {
    margin: 0 auto;
    max-width: calc(100% - 0.6rem);
  }
}

.sec_support > .in {
  padding: 1.2rem 0 1.4rem;
}
@media screen and (max-width: 640px) {
  .sec_support > .in {
    padding: 0.8rem 0;
  }
}
@media screen and (max-width: 640px) {
  .sec_support .secTit .title {
    font-size: 0.26rem;
    letter-spacing: 0.2em;
  }
}
@media screen and (max-width: 640px) {
  .sec_support .secTit .title::before {
    left: calc(50% - 0.39rem);
  }
}
.sec_support .intro {
  margin-top: 0.4rem;
}
@media screen and (max-width: 640px) {
  .sec_support .intro {
    margin-top: 0.6rem;
  }
}
.sec_support .intro .txt {
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.18rem;
}
@media screen and (max-width: 640px) {
  .sec_support .intro .txt {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_support .intro .txt {
    padding: 0 0.3rem;
    text-align: left;
    font-size: 0.16rem;
    letter-spacing: 0.11em;
    line-height: 1.87;
  }
}
.sec_support .itemBox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0.45rem auto 0;
  padding-bottom: 1.6rem;
  width: 100%;
  max-width: 10rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox {
    display: block;
    margin-top: 0.38rem;
    padding-bottom: 0.87rem;
    max-width: 100%;
  }
}
.sec_support .itemBox .item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.34rem 0 0.3rem;
  width: 30%;
  max-width: 3rem;
  background-color: #ebecde;
  border-radius: 0.18rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item {
    margin: 0 auto;
    padding: 0.37rem 0 0.26rem;
    max-width: calc(100% - 0.6rem);
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item + .item {
    margin-top: 0.3rem;
  }
}
.sec_support .itemBox .item .ph {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item .ph {
    height: auto;
  }
}
.sec_support .itemBox .item .ph img {
  height: auto;
}
.sec_support .itemBox .item .title {
  margin-top: 0.2rem;
  text-align: center;
  font-size: 0.2rem;
  letter-spacing: 0.09em;
  line-height: 1.6;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item .title {
    margin-top: 0.25rem;
    font-size: 0.2rem;
    line-height: 1.5;
  }
}
.sec_support .itemBox .item .txt {
  margin-top: 0.12rem;
  padding: 0 0.24rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item .txt {
    margin-top: 0.12rem;
    padding: 0 0.24rem;
  }
}
.sec_support .itemBox .item.item01 .ph {
  width: 0.93rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item.item01 .ph {
    width: 0.83rem;
  }
}
.sec_support .itemBox .item.item02 .ph {
  width: 0.62rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item.item02 .ph {
    width: 0.53rem;
  }
}
.sec_support .itemBox .item.item03 .ph {
  width: 0.63rem;
}
@media screen and (max-width: 640px) {
  .sec_support .itemBox .item.item03 .ph {
    width: 0.59rem;
  }
}
.sec_support .supportList_in {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 1rem 0 1.4rem;
}
@media screen and (max-width: 640px) {
  .sec_support .supportList_in {
    padding: 0.45rem 0 0.7rem;
    overflow: visible;
    background-color: #ebe4d9;
  }
}
.sec_support .supportList_in::before {
  content: "";
  position: absolute;
  top: 0%;
  right: 0;
  left: calc(50% - 8.8rem);
  margin: 0 auto;
  width: 134%;
  max-width: 19.33rem;
  min-width: 19.33rem;
  height: 8.77rem;
  background-image: url(../img/about/support_slide_bg.svg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_support .supportList_in::before {
    top: -0.36rem;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    height: 0.36rem;
    background-image: url(../../img/about/support_slide_bg_sp01.png);
    background-size: 100%;
    background-position: bottom center;
  }
}
.sec_support .supportList_in > .catch {
  position: relative;
  display: block;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  text-align: center;
  font-size: 0.22rem;
  letter-spacing: 0.11em;
  line-height: 1.9;
  z-index: 0;
}
@media screen and (max-width: 640px) {
  .sec_support .supportList_in > .catch {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_support .supportList_in > .catch {
    font-size: 0.2rem;
    line-height: 1.62;
  }
}
.sec_support .supportList_in > .catch::before {
  position: absolute;
  content: "";
  display: block;
  top: calc(50% - 0.05rem);
  left: calc(50% - 2.19rem);
  width: 0.67rem;
  height: 0.54rem;
  background-image: url(../img/about/support_slide_title_deco.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.6;
  z-index: -1;
}
@media screen and (max-width: 640px) {
  .sec_support .supportList_in > .catch::before {
    top: calc(50% - 0.3rem);
    left: calc(50% + 0.41rem);
    width: 0.76rem;
    height: 0.61rem;
  }
}
.sec_support [data-slidearea01].supportList {
  margin-top: 0.3rem;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList {
    margin-top: 0.25rem;
  }
}
.sec_support [data-slidearea01].supportList.type01 {
  padding: 0;
  overflow: hidden;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_wrap {
  max-width: 11.1rem;
  width: 100%;
  margin: auto;
  position: relative;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_wrap {
    width: calc(100% - 0.3rem);
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns {
  position: absolute;
  top: 0;
  bottom: auto;
  left: 0;
  right: 0;
  margin: auto;
  height: 100%;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns {
    display: none;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0.5rem;
  height: 0.5rem;
  z-index: 1;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button {
    width: 0.6rem;
    height: 0.9rem;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button:before, .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: 0.2s;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button:before {
  width: 0.44rem;
  height: 0.44rem;
  border-radius: 0;
  background-color: transparent;
  background-image: url("../common/img/btn_arrow_green02.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button:before {
    width: 0.3rem;
    height: 0.3rem;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button:after {
  content: none;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button.next {
  right: -0.1rem;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button.next {
    right: 0px;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button.prev {
  left: -0.1rem;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button.prev {
    left: 0px;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button.prev:before {
  transform: scale(-1, 1);
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button.disabled {
  pointer-events: none;
  opacity: 0.3;
}
.no-touchevents .sec_support [data-slidearea01].supportList.type01 .slidearea01_btns button:hover:before {
  opacity: 0.5;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_wrapin {
  padding: 0 33.33333%;
  padding-bottom: 0.08rem;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_wrapin {
    padding: 0 3.6%;
    overflow: visible;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_content {
  position: relative;
  display: flex;
}
@media print, screen and (min-width: 641px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_content {
    margin: 0 -100%;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_content.disableTrs {
  transition: none !important;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_link {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 0;
  /*&::before {
  	position: absolute;
  	content: "";
  	display: block;
  	top: 0.08rem;//8px;
  	right: 0.08rem;//8px;
  	width: calc(100% - 0.3rem);//calc(100% - 30px);
  	height: 100%;
  	border-radius: 0.2rem;//20px;
  	background-color: #cdbea9;
  	z-index: -1;
  	opacity: .5;
  	// @include sc(pcMin) {
  	// 	top: 7px;
  	// 	right: 7px;
  	// 	width: calc(100% - 26px);
  	// }
  	// @include sc(tab) {
  	// 	top: 5px;
  	// 	right: 5px;
  	// 	width: calc(100% - 20px);
  	// }
  	@include sc(sp) {
  		top: 0.04rem;//4px;
  		right: 1px;
  		width: calc(100% - 0.1rem);//calc(100% - 10px);
  	}
  }*/
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox {
  width: calc(100% - 0.3rem);
  margin: auto;
  padding: 0.3rem;
  background-color: #fff;
  border-radius: 0.2rem;
  box-sizing: border-box;
  box-shadow: 5px 5px 5px rgba(212, 212, 212, 0.3);
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox {
    width: calc(100% - 0.1rem);
    padding: 0.25rem 0.25rem 0.2rem;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .thumb {
  width: 100%;
  height: 1.56rem;
  margin: auto;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .thumb {
    height: 33.33vw;
    margin: 0;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .thumb img {
  border-radius: 0.16rem;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .title {
  margin-top: 0.18rem;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  text-align: center;
  font-size: 0.21rem;
  line-height: 1.4;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .title {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .title {
    margin-top: 0.18rem;
    font-size: 0.19rem;
    letter-spacing: 0.11em;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .txt {
  margin-top: 0.15rem;
  letter-spacing: 0.01em;
  line-height: 1.86;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_link .supportBox .txt {
    letter-spacing: 0.04em;
    line-height: 1.71;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_pager {
  margin: 0 0.15rem;
  margin-top: 0.32rem;
  text-align: center;
  border-radius: 0;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_pager {
    margin: 0;
    margin-top: 0.28rem;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button {
  margin: 0 0.11rem;
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: 0.1rem;
  height: 0.1rem;
}
@media screen and (max-width: 640px) {
  .sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button {
    margin: 0 0.14rem;
    width: 0.12rem;
    height: 0.12rem;
  }
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button:after, .sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  border-radius: 50%;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button:after {
  transition: 0.2s;
}
.no-touchevents .sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button:hover:after, .sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button.active:after {
  background-color: #03888e;
}
.sec_support [data-slidearea01].supportList.type01 .slidearea01_pager button.active {
  cursor: default;
  pointer-events: none;
}
.sec_support .bottom {
  position: relative;
}
@media screen and (max-width: 640px) {
  .sec_support .bottom {
    position: relative;
    padding: 0.56rem 0 0;
    background-color: #fff;
  }
  .sec_support .bottom::before {
    position: absolute;
    content: "";
    display: block;
    top: -0.3rem;
    left: 0;
    right: 0;
    width: 100%;
    height: 0.3rem;
    background-image: url(../img/about/support_slide_bg_sp02.png);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100%;
  }
}
.sec_support .bottom .deco {
  position: absolute;
  z-index: 1;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.sec_support .bottom .deco.deco01 {
  top: -1.19rem;
  left: calc(50% + 3.18rem);
  width: 0.95rem;
  height: 0.65rem;
  background-image: url("../img/about/support_bottom_deco01.png");
}
@media screen and (max-width: 640px) {
  .sec_support .bottom .deco.deco01 {
    top: -0.36rem;
    left: auto;
    right: 0.36rem;
    width: 0.61rem;
    height: 0.42rem;
  }
}
.sec_support .bottom .txt {
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.18rem;
}
@media screen and (max-width: 640px) {
  .sec_support .bottom .txt {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_support .bottom .txt {
    padding: 0 0.3rem;
    text-align: left;
    font-size: 0.16rem;
    letter-spacing: 0.11em;
    line-height: 1.87;
  }
}

.supportContact {
  margin: 0 auto;
  margin-top: 0.55rem;
  width: 100%;
  max-width: 6.5rem;
  background-color: rgba(3, 136, 142, 0.1);
  border-radius: 0.18rem;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .supportContact {
    margin-top: 0.36rem;
    max-width: calc(100% - 0.6rem);
  }
}
.supportContact .title {
  padding: 0.1rem 0 0.16rem;
  text-align: center;
  font-family: "hannari";
  font-weight: 400;
  font-size: 0.3rem;
  letter-spacing: 0;
  color: #fff;
  background-color: #03888e;
}
@media screen and (max-width: 640px) {
  .supportContact .title {
    padding: 0.1rem 0 0.16rem;
    font-size: 0.27rem;
  }
}
.supportContact .title .min {
  display: block;
  font-size: 0.15rem;
  line-height: 1;
}
@media screen and (max-width: 640px) {
  .supportContact .title .min {
    margin-top: 0.03rem;
    font-size: 0.13rem;
  }
}
.supportContact .detail .telLink {
  position: relative;
  display: block;
  margin: 0.3rem auto;
  padding-left: 0.34rem;
  width: 3.4rem;
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.4rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 640px) {
  .supportContact .detail .telLink {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .supportContact .detail .telLink {
    margin: 0.2rem auto;
    padding-left: 0;
    width: auto;
    font-size: 0.32rem;
  }
}
.supportContact .detail .telLink::before {
  position: absolute;
  content: "";
  display: block;
  top: calc(50% - 0.16rem);
  left: calc(50% - 1.79rem);
  width: 0.34rem;
  height: 0.35rem;
  background-image: url(../img/about/contact_icon.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .supportContact .detail .telLink::before {
    position: static;
    content: none;
  }
}
.supportContact .detail .note {
  margin-top: 0.05rem;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0.11em;
  line-height: 2;
}
@media screen and (max-width: 640px) {
  .supportContact .detail .note {
    font-feature-settings: "palt";
  }
}
.supportContact .detail .note small {
  font-size: 0.15rem;
}
@media screen and (max-width: 640px) {
  .supportContact .detail .note small {
    font-size: 0.13rem;
  }
}
@media screen and (max-width: 640px) {
  .supportContact .detail .note {
    margin-top: 0.02rem;
  }
}
.supportContact .detail .link {
  margin-top: 0.18rem;
  padding-bottom: 0.4rem;
}
@media screen and (max-width: 640px) {
  .supportContact .detail .link {
    margin: 0 auto;
    margin-top: 0.16rem;
    padding-bottom: 0.4rem;
    width: 83.33%;
  }
}

.sec_lead > .in {
  padding: 1.85rem 0 0.9rem;
}
@media screen and (max-width: 640px) {
  .sec_lead > .in {
    padding: 1.55rem 0 0.5rem;
  }
}
.sec_lead .secTit .title {
  font-size: 0.28rem;
  line-height: 1.64;
}
@media screen and (max-width: 640px) {
  .sec_lead .secTit .title {
    font-size: 0.19rem;
    letter-spacing: 0.09em;
  }
}
.sec_lead .secTit .title::before {
  top: calc(50% - 1.57rem);
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 1rem;
  height: 0.93rem;
  background-image: url(../img/about/lead_title_deco.svg);
  opacity: 1;
}
@media screen and (max-width: 640px) {
  .sec_lead .secTit .title::before {
    top: calc(50% - 1.18rem);
    width: 0.78rem;
    height: 0.73rem;
  }
}
.sec_lead .leadBox {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 0.48rem auto 0;
  width: 100%;
  max-width: 10rem;
}
@media screen and (max-width: 640px) {
  .sec_lead .leadBox {
    margin-top: 0.3rem;
    max-width: calc(100% - 0.6rem);
  }
}
.sec_lead .leadBox .lead {
  padding: 0.4rem 0 0.42rem;
  width: 48%;
  background-color: #fff;
  border-radius: 0.18rem;
}
@media print, screen and (min-width: 641px) {
  .sec_lead .leadBox .lead:nth-of-type(n + 3) {
    margin-top: 0.4rem;
  }
}
@media screen and (max-width: 640px) {
  .sec_lead .leadBox .lead {
    width: 100%;
    padding: 0.3rem 0;
  }
  .sec_lead .leadBox .lead + .lead {
    margin-top: 0.3rem;
  }
}
.sec_lead .leadBox .lead .title {
  text-align: center;
  font-family: source-han-serif-japanese, serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.22rem;
  color: #03888e;
}
@media screen and (max-width: 640px) {
  .sec_lead .leadBox .lead .title {
    font-feature-settings: "palt";
  }
}
@media screen and (max-width: 640px) {
  .sec_lead .leadBox .lead .title {
    font-size: 0.19rem;
  }
}
.sec_lead .leadBox .lead .txt {
  text-align: center;
  margin-top: 0.12rem;
}
@media screen and (max-width: 640px) {
  .sec_lead .leadBox .lead .txt {
    margin-top: 0.08rem;
  }
}
.sec_lead .leadBox .lead .link {
  margin-top: 0.2rem;
}
@media screen and (max-width: 640px) {
  .sec_lead .leadBox .lead .link {
    margin: 0.15rem auto 0;
    max-width: 83.33%;
  }
}/*# sourceMappingURL=about.css.map */