@charset "UTF-8";


/* sass */
/* header
===================*/
/* header-lv2
-------------------*/
.wrap-hdg-lv2-pt1 { background-color: #e3f5c9; margin: 45px -10px 15px; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; /* ダーシ */ }

.wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt { -webkit-order: 2; order: 2; padding: 15px; }

.wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt .hdg-lv2-pt1 { color: #54850d; font-size: 2rem; line-height: 1.8; font-weight: bold; }

.wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt p { color: #54850d; font-size: 1.6rem; line-height: 1.5; font-weight: bold; }

.wrap-hdg-lv2-pt1 .endash { padding-left: 1.5em; text-indent: -1.5em; }

.wrap-hdg-lv2-pt1 .endash::before, .wrap-hdg-lv2-pt1 .endash::after { content: ""; display: inline-block; vertical-align: 18%; width: 1em; height: 2px; background-color: #54850d; }

.wrap-hdg-lv2-pt1 .endash::before { margin-right: 0.5em; }

.wrap-hdg-lv2-pt1 .endash::after { margin-left: 0.5em; }

.wrap-hdg-lv2-pt1 .img-hdg { -webkit-order: 1; order: 1; text-align: center; min-height: 0%; }

.wrap-hdg-lv2-pt1 .img-hdg img { width: 100%; height: auto; }

/* header-lv3
-------------------*/
.hdg-lv3-pt1 { margin-top: 20px; margin-bottom: 25px; position: relative; background-color: #e5e3d1; border-radius: 5px; font-size: 1.6rem; line-height: 1.5; padding: 10px 10px 8px 15px; color: #333; }

.hdg-lv3-pt1::before { content: ""; display: block; position: absolute; margin: auto; width: 4px; height: calc(100% - 20px); top: 0; bottom: 0; left: 5px; background-color: #54850d; border-radius: 3px; }

/* paragraph
===================*/
/* std */
.txt-soz-std { color: #333; font-size: 1.4rem; line-height: 1.5; }

/* large sankaku */
.txt-nextflow { margin-top: 25px; margin-bottom: 20px; text-align: center; color: #222a7a; font-size: 1.4rem; font-weight: bold; line-height: 1.5; position: relative; padding-bottom: 1.0em; }

.txt-nextflow.pt2 { color: #333; }

.txt-nextflow::before { display: block; box-sizing: content-box; content: ""; z-index: 0; width: 0; height: 0; margin: auto auto -2.1em; left: 0; right: 0; top: 0; border-top: 2.5em solid #e6e6e6; border-right: 2.4em solid rgba(0, 0, 0, 0); border-left: 2.4em solid rgba(0, 0, 0, 0); }

.txt-nextflow.pt3sp::before { margin: auto auto -3.2em; border-top: 3.5em solid #e6e6e6; border-right: 3.5em solid rgba(0, 0, 0, 0); border-left: 3.5em solid rgba(0, 0, 0, 0); }

/* 2019年5月現在
===================*/
.box-credit { margin-top: 10px; }

.box-credit p { font-size: 1.2rem; line-height: 1.5; }

.box-credit .txt-pubdate { text-align: right; margin-right: 14px; }

.lst-boder { margin-top: 2px; margin-bottom: 2px; }

.lst-boder::after { content: ""; display: block; clear: both; }

.lst-boder dt { border: 1px solid #999; padding: 4px 4px 4px; font-size: 1.2rem; line-height: 1.5; display: inline-block; float: left; margin-right: 0.5em; }

.lst-boder dd { font-size: 1.2rem; line-height: 1.5; margin-left: 5.5em; padding: 5px 0px; }

/* box
===================*/
.box-notice { margin-top: 30px; border: 2px solid #cc9685; padding: 13px; }

.hd-notice { font-size: 1.6rem; line-height: 1.5; color: #333; font-weight: bold; }

.lst-notice { margin-top: 5px; }

.lst-notice dt { font-size: 1.4rem; line-height: 1.5; border-bottom: 1px solid #ccc; font-weight: bold; padding-left: 20px; padding-bottom: 4px; position: relative; }
.lst-notice dt.sub {font-size: 1.2rem; font-weight: bold; border-bottom: none; margin: 10px 0 0; padding-left: 0;}

.lst-notice dt::before { content: ""; display: inline-block; position: absolute; top: 0; left: 0; margin-top: 0.25em; width: 17px; height: 15px; background: transparent url(../image/ico-notice.png) 0 0 no-repeat; background-size: 17px 15px; margin-right: 6px; }
.lst-notice dt.sub::before { display: none; }

.lst-notice dd { font-size: 1.2rem; line-height: 1.5; padding-top: 5px; padding-left: 15px; position: relative; }

.lst-notice dd::before { content: ""; display: block; width: 5px; height: 5px; background-color: #343c85; position: absolute; left: 0; top: 5px; margin-top: 0.5em; }

.lst-notice dd + dd { margin-top: 5px; border-top: 1px dotted #999; }

@media all and (min-width: 768px) { /* header-lv2
-------------------*/
  .wrap-hdg-lv2-pt1 { -webkit-flex-direction: row; flex-direction: row; margin: 50px 0 0; border-radius: 7px; overflow: hidden; width: 100%; }
  .wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt { box-sizing: border-box; width: calc(100% - 320px); padding: 25px 30px 30px; }
  .wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt .hdg-lv2-pt1 { font-size: 3.6rem; line-height: 1.8; }
  .wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt p { font-size: 2.8rem; }
  .wrap-hdg-lv2-pt1 .img-hdg { width: 320px; }
  .wrap-hdg-lv2-pt1 .img-hdg img { width: 100%; height: auto; }
  /* header-lv3
-------------------*/
  .hdg-lv3-pt1 { margin-top: 50px; margin-bottom: 15px; font-size: 2.4rem; padding: 10px 10px 8px 30px; }
  .hdg-lv3-pt1::before { content: ""; width: 8px; height: calc(100% - 20px); top: 0; bottom: 0; left: 10px; }
  /* paragraph
===================*/
  /* large sankaku */
  .txt-nextflow { font-size: 1.8rem; line-height: 1.5; margin-top: 50px; margin-bottom: 20px; padding-bottom: 1em; }
  .txt-nextflow::before { margin: auto auto -2.4em; border-top: 3em solid #e6e6e6; border-right: 3em solid transparent; border-left: 3em solid transparent; }
  .txt-nextflow.pt3sp::before { margin: auto auto -2.4em; border-top: 3em solid #e6e6e6; border-right: 3em solid transparent; border-left: 3em solid transparent; }
  /* 2019年5月現在
===================*/
  .box-credit p { font-size: 1.4rem; }
  .box-credit .txt-pubdate { float: right; }
  .box-credit::after { content: ""; display: block; clear: both; }
  .lst-boder dt { font-size: 1.4rem; }
  .lst-boder dd { font-size: 1.4rem; }
  /* box
===================*/
  .box-notice { margin-top: 25px; padding: 10px; }
  .hd-notice { font-size: 1.8rem; }
  .lst-notice { margin-top: 10px; }
  .lst-notice dt { font-size: 1.6rem; padding-left: 30px; }
  .lst-notice dt.sub {font-size: 1.6rem;padding-left: 0px; }
  .lst-notice dd { font-size: 1.6rem; padding-left: 20px; }
  .lst-notice dd::before { width: 6px; height: 6px; } }

/* keyvisual */
.kv-wrap .kv-hdg.souzoku { left: 16px; bottom: 16px; }

.txt-soz-movie { margin: 0 auto 25px; padding: 0 10px; text-align: center; }

.txt-soz-movie a { display: block; position: relative; }

.txt-soz-movie a::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: url(../image/ico_play.png) no-repeat;
	background-size: contain;
	display: block;
	height: 34px;
	width: 34px;
}

.txt-soz-movie img { width: 100%; height: auto; }

.lst-anc { /* ダーシ */ }

.lst-anc .endash { font-size: 1.2rem; }

.lst-anc .endash::before, .lst-anc .endash::after { content: ""; display: inline-block; vertical-align: 18%; width: 1em; height: 1px; background-color: #333; }

.lst-anc .endash::before { margin-right: 0.5em; }

.lst-anc .endash::after { margin-left: 0.5em; }

/* h3...
===========================*/
/*h3
--------------------------*/
.hdg-soz-lv3-pt1 { margin-top: 15px; margin-bottom: 5px; font-size: 1.6rem; line-height: 1.5; font-weight: bold; }

/* h4
--------------------------*/
.hdg-soz-lv4-pt1 { color: #333; font-size: 1.4rem; line-height: 1.5; font-weight: bold; margin-top: 10px; margin-bottom: 5px; }

.hdg-soz-lv4-pt2 { color: #333; font-size: 1.8rem; line-height: 1.5; font-weight: bold; margin-bottom: 15px; }

/* ul lst
===========================*/
/* kome
--------------------------*/
.lst-soz-indent { margin-top: 10px; }

.lst-soz-indent::after { content: ""; display: block; clear: both; }

.lst-soz-indent > li { font-size: 1.2rem; line-height: 1.5; }

.lst-soz-indent > li > .mark { float: left; }

.lst-soz-indent > li > .detail { display: block; overflow: hidden; }

[class^="hdg-"] + .lst-soz-indent { margin-top: 0; }

/* family
--------------------------*/
.lst-soz-family { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; max-width: 560px; margin: 8px auto 0; }

.lst-soz-family > li { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }

.lst-soz-family > li:nth-child(2n+1) { width: 58%; }

.lst-soz-family > li:nth-child(2n) { width: 42%; }

.lst-soz-family > li:nth-child(n+3) { margin-top: 15px; }

.lst-soz-family > li .text { text-align: center; font-size: 1.4rem; line-height: 1.4; font-weight: bold; width: 220px; }

.lst-soz-family > li .text span { font-size: 1rem; }

/* class
--------------------------*/
.lst-soz-class > li { background-color: #f7f6f0; border-radius: 5px; margin-top: 10px; padding: 10px; font-size: 1.4rem; line-height: 1.5; }

.lst-soz-class > li > [class^="txt-soz-title-"]:first-child { margin-top: 0; }

/* dot
--------------------------*/
.lst-soz-dot > li { font-size: 1.4rem; line-height: 1.5; position: relative; padding-left: 1em; }

.lst-soz-dot > li::before { content: ""; display: block; position: absolute; top: 0; left: 0; margin: 0.62em 0.62em 0 0.5em; width: 3px; height: 3px; border-radius: 50%; background-color: #333; }

/* check
--------------------------*/
.wrap-lst-soz-check { margin-top: 15px; background-color: #fff; padding: 15px; border-radius: 5px; }

.wrap-lst-soz-check .lst-soz-check { margin-left: 5px; }

.lst-soz-check > li { font-size: 1.4rem; line-height: 1.5; padding-left: 16px; position: relative; }

.lst-soz-check > li + li { margin-top: 5px; }

.lst-soz-check > li::before { content: ""; display: block; width: 6px; height: 12px; position: absolute; left: 0; top: 0; margin-top: 0.1em; border-bottom: 2px solid #cf4b45; border-right: 2px solid #cf4b45; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

/* form
===========================*/
.frm-checkbox { font-size: 1.5rem; font-weight: bold; text-align: center; margin-top: 22px; margin-bottom: 22px; }

.frm-checkbox label { display: inline-block; cursor: pointer; position: relative; padding-left: 30px; vertical-align: middle; }

.frm-checkbox label span { display: inline-block; }

.frm-checkbox label span::before, .frm-checkbox label span::after { content: ""; position: absolute; top: 0; }

.frm-checkbox label span::before { display: block; box-sizing: content-box; margin: auto; width: 16px; height: 16px; left: 0; top: 0; bottom: 0; border: 3px solid #333; border-radius: 3px; }

.frm-checkbox label span::after { display: none; margin: auto; left: 3px; top: -3px; bottom: 0; background-color: #F00; width: 25px; height: 19px; background: transparent url(../image/icn_checkbox.png) 0 0 no-repeat; background-size: 25px 19px; }

.frm-checkbox label input { opacity: 0; position: absolute; }

.frm-checkbox label input:checked + span::after { display: block; }

select { font-size: 1.6rem; text-align: center; box-sizing: border-box; width: 100%; background: transparent url(../image/ico-select.png) right center no-repeat; background-size: 20px 6px; padding-left: 25px; padding-right: 25px; cursor: pointer; }

select option { font-size: 1.6rem; text-align: center; }

/* table
============================*/
/* simlation table */
.tbl-soz-pt1 { box-sizing: border-box; width: 100%; table-layout: fixed; border-top: 1px solid #222a7a; border-left: 1px solid #222a7a; }

.tbl-soz-pt1 th, .tbl-soz-pt1 td { border-right: 1px solid #222a7a; border-bottom: 1px solid #222a7a; font-size: 1.6rem; line-height: 1.5; text-align: center; }

.tbl-soz-pt1 th { width: 40%; background-color: #222a7a; color: #fff; padding-top: 10px; padding-bottom: 10px; }

.tbl-soz-pt1 td { background-color: #fff; color: #333; padding-top: 5px; padding-bottom: 5px; }

.tbl-soz-pt1 td select { padding-top: 5px; padding-bottom: 5px; }

/* result table */
.tbl-soz-pt2 { box-sizing: border-box; width: 100%; table-layout: fixed; border-top: 1px solid #f69647; border-left: 1px solid #f69647; }

.tbl-soz-pt2 th, .tbl-soz-pt2 td { border-right: 1px solid #f69647; border-bottom: 1px solid #f69647; font-size: 1.6rem; line-height: 1.5; text-align: center; padding-top: 10px; padding-bottom: 10px; }

.tbl-soz-pt2 th { width: 40%; background-color: #f69647; color: #fff; }

.tbl-soz-pt2 td { background-color: #fff; color: #f69647; }

/* txt
============================*/
.txt-soz-next { text-align: center; margin-top: 15px; margin-bottom: 15px; }

.txt-soz-next::before { content: ""; display: inline-block; box-sizing: content-box; vertical-align: middle; width: 0; height: 0; border-top: 19px solid #222a7a; border-left: 20px solid transparent; border-right: 20px solid transparent; }

.txt-soz-next span { display: none; }

.txt-soz-caution { box-sizing: content-box; font-size: 1.4rem; min-height: 20px; color: #333; font-weight: bold; line-height: 1.5; background: transparent url(../image/icn_note.png) 0 0 no-repeat; background-size: 21px 20px; margin-bottom: 8px; padding-left: 30px; }

.txt-soz-title { margin-top: 25px; margin-bottom: 10px; font-size: 1.5rem; color: #222a7a; text-align: center; font-weight: bold; }

.txt-soz-title-pt2 { margin-bottom: 10px; font-size: 1.5rem; color: #333; text-align: center; font-weight: bold; }

.txt-soz-title-pt3 { font-size: 1.8rem; line-height: 1.5; font-weight: bold; color: #1f2678; text-align: center; }

.txt-soz-title-pt4 { color: #333; font-size: 1.4rem; font-weight: bold; margin-top: 15px; margin-bottom: 5px; }

.txt-soz-extitle { font-size: 1.2rem; line-height: 1.5; color: #fff; background-color: #54850d; border-radius: 5px; font-weight: bold; margin-bottom: 8px; padding: 5px 10px; }

.txt-soz-strong { margin-top: 20px; font-size: 1.6rem; line-height: 1.5; font-weight: bold; color: #f04938; text-align: center; }

.txt-soz-strong span { font-size: 1.4rem; }

.txt-soz-strong-pt2 { margin-top: 20px; font-size: 1.4rem; line-height: 1.5; font-weight: bold; color: #54850d; }

.txt-soz-strong-pt2 + [class^="hdg-soz-"] { margin-top: 0; }

.txt-soz-strong-pt3 { margin-top: 8px; font-size: 1.4rem; line-height: 1.5; font-weight: bold; color: #e33d3d; }

.txt-soz-imgc { text-align: center; }

.txt-soz-imgc img { width: auto; max-width: 100%; height: auto; }

/* box
============================*/
/* box-soz-column */
.box-soz-column { margin-top: 15px; border-radius: 5px; border: 2px solid #d8d3b3; padding: 8px; }

.box-soz-column .lst-soz-indent + p { margin-top: 5px; }

.box-soz-column .txt-soz-caution { border-bottom: 2px solid #d8d3b3; padding-bottom: 8px; }

.box-soz-column > [class^="hdg-"]:first-child, .box-soz-column > section:first-child > [class^="hdg-"] { margin-top: 0; }

/* simuration */
.wrap-simuration { display: block; background-color: #ecf5fa; margin: 0 -10px; }

.box-simuration { padding: 25px 10px 15px; }

/* average */
.box-soz-average { margin-top: 15px; }

.box-soz-average .box-soz-grave, .box-soz-average .box-soz-funeral { border-radius: 5px; color: #fff; padding: 15px 5px 15px; }

.box-soz-average .box-soz-grave { background-color: #75bdde; }

.box-soz-average .box-soz-funeral { margin-top: 10px; background-color: #f2b657; }

.box-soz-average .title, .box-soz-average .avg { font-weight: bold; }

.box-soz-average .title, .box-soz-average .avg, .box-soz-average .result { text-align: center; }

.box-soz-average .title { font-size: 1.2rem; line-height: 1.5; }

.box-soz-average .title::before { content: ""; display: inline-block; vertical-align: 16%; width: 0.5em; height: 2px; background-color: #fff; margin-right: 0.25em; }

.box-soz-average .avg { font-size: 1.5rem; line-height: 1.6em; }

.box-soz-average .number { font-size: 2.6rem; }

.box-soz-average .result { margin-top: 10px; font-size: 1rem; line-height: 1.2; }

.box-soz-example { margin-top: 20px; background-color: #f7f6f0; padding: 10px; border-radius: 9px; }

.box-soz-example .inner-image { text-align: center; }

.box-soz-example .inner-image img { border-radius: 7px; border: 1px solid #e58989; width: auto; max-width: 100%; height: auto; }

.box-soz-necessary { margin-top: 20px; background-color: #e5f1f8; padding: 20px 10px; }

.box-soz-important { margin-top: 30px; background-color: #e5f1f8; border-radius: 7px; padding: 25px 10px; }

@media all and (min-width: 768px) { /* layout */
  .l-body-main.wall { width: auto; padding: 0; }
  .l-main-inner { width: 1000px; padding: 0 10px; margin: 0 auto; }
  /* keyvisual */
  .kv-wrap .kv-hdg.souzoku { left: 16px; bottom: 16px; }
  .kv-wrap .kv-hdg.souzoku img { width: 898px; height: 286px; }
  .txt-soz-movie { width: 320px; padding: 0; }
  .txt-soz-movie a { display: block; }
  .txt-soz-movie a::after { content: ""; width: 42px; height: 42px;  background-size: 42px 42px; transition: opacity 0.2s; }
  .txt-soz-movie a:hover::after { opacity: 0.8; }
  .lst-anc.souzoku > li a { padding: 12px 9px; }
  .lst-anc > li a { -webkit-align-items: center; align-items: center; }
  .lst-anc > li a p { display: inline-block; /* ダーシ */ }
  .lst-anc > li a p .endash { display: block; font-size: 1.6rem; padding: 0 1.5em; position: relative; }
  .lst-anc > li a p .endash::before, .lst-anc > li a p .endash::after { content: ""; display: block; vertical-align: middle; position: absolute; margin: auto; transition: background 0.2s; }
  .lst-anc > li a p .endash::before { left: 0; top: 0; bottom: 0; }
  .lst-anc > li a p .endash::after { right: 0; top: 0; bottom: 0; }
  .lst-anc > li a:hover p .endash::before, .lst-anc > li a:hover p .endash::after { background-color: #fff; }
  /* paragraph
===================*/
  /* std */
  .txt-soz-std { font-size: 1.6rem; }
  .txt-align-c-pc { text-align: center; }
  /* h3...
===========================*/
  /*h3
--------------------------*/
  .hdg-soz-lv3-pt1 { margin-top: 15px; margin-bottom: 10px; font-size: 2.0rem; }
  /* h4
--------------------------*/
  .hdg-soz-lv4-pt1 { font-size: 1.8rem; margin-top: 20px; margin-bottom: 0px; }
  .hdg-soz-lv4-pt2 { font-size: 3.0rem; margin-bottom: 40px; text-align: center; }
  /* ul lst
===========================*/
  /* kome
--------------------------*/
  .lst-soz-indent { margin-top: 15px; }
  .lst-soz-indent > li { font-size: 1.4rem; }
  /* family
--------------------------*/
  .lst-soz-family { display: -webkit-flex; display: flex; max-width: none; margin: 25px auto 0; }
  .lst-soz-family > li:nth-child(n+3) { margin-top: 25px; }
  .lst-soz-family > li img { width: 46px; height: auto; }
  .lst-soz-family > li .text { font-size: 1.8rem; width: 180px; }
  .lst-soz-family > li .text span { font-size: 1.4rem; }
  /* class
--------------------------*/
  .lst-soz-class > li { margin-top: 20px; padding: 10px 20px; font-size: 1.6rem; }
  /* dot
--------------------------*/
  .lst-soz-dot > li { font-size: 1.6rem; }
  /* check
--------------------------*/
  .wrap-lst-soz-check { margin-top: 30px; padding: 25px; border-radius: 7px; text-align: center; }
  .wrap-lst-soz-check .lst-soz-check { display: inline-block; margin: 0; }
  .lst-soz-check > li { font-size: 2.0rem; padding-left: 35px; }
  .lst-soz-check > li + li { margin-top: 20px; }
  .lst-soz-check > li::before { content: ""; display: block; width: 12px; height: 20px; position: absolute; left: 0; top: 0; margin-top: 0; border-bottom: 4px solid #cf4b45; border-right: 4px solid #cf4b45; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
  /* form
===========================*/
  .frm-checkbox { font-size: 2.0rem; margin-top: 35px; margin-bottom: 35px; }
  select { font-size: 2.4rem; background: transparent url(../image/ico-select.png) right center no-repeat; background-size: auto auto; padding-left: 45px; padding-right: 45px; }
  select option { font-size: 2.4rem; }
  /* table
============================*/
  /* simlation table */
  .tbl-soz-pt1 { border-top: 2px solid #222a7a; border-left: 2px solid #222a7a; }
  .tbl-soz-pt1 th, .tbl-soz-pt1 td { border-right: 2px solid #222a7a; border-bottom: 2px solid #222a7a; font-size: 2.8rem; }
  .tbl-soz-pt1 th { width: 28%; }
  /* result table */
  .tbl-soz-pt2 { border-top: 2px solid #f69647; border-left: 2px solid #f69647; }
  .tbl-soz-pt2 th, .tbl-soz-pt2 td { border-right: 2px solid #f69647; border-bottom: 2px solid #f69647; font-size: 2.8rem; }
  .tbl-soz-pt2 th { width: 28%; }
  /* txt
============================*/
  .txt-soz-next { margin-top: 7px; margin-bottom: 7px; }
  .txt-soz-next::before { border-top: 38px solid #222a7a; border-left: 40px solid transparent; border-right: 40px solid transparent; }
  .txt-soz-caution { font-size: 2.0rem; margin-bottom: 10px; }
  .txt-soz-caution + .txt-soz-caution { margin-top: 25px; }
  .txt-soz-title { margin-top: 45px; margin-bottom: 20px; font-size: 3.0rem; }
  .txt-soz-title-pt2 { margin-bottom: 35px; font-size: 3.0rem; }
  .txt-soz-title-pt3 { font-size: 3.6rem; margin-bottom: 20px; }
  .txt-soz-title-pt4 { font-size: 1.8rem; margin-top: 25px; margin-bottom: 10px; }
  .txt-soz-extitle { font-size: 1.8rem; padding: 10px 10px; display: table; margin-bottom: 10px; }
  .txt-soz-strong { margin-top: 10px; font-size: 2.4rem; text-align: left; }
  .txt-soz-strong span { font-size: 2.0rem; }
  .txt-soz-strong-pt2 { margin-top: 30px; font-size: 2.0rem; }
  .txt-soz-strong-pt3 { margin-top: 15px; font-size: 1.6rem; color: #e33d3d; }
  /* box
============================*/
  /* box-soz-column */
  .box-soz-column { border: 4px solid #d8d3b3; margin-top: 50px; padding: 35px 38px; }
  .box-soz-column .lst-soz-indent + p { margin-top: 20px; }
  .box-soz-column .txt-soz-caution { border-bottom-style: none; padding-bottom: 0; margin-bottom: 15px; }
  .box-soz-column .txt-soz-caution span { display: inline; border-bottom: 2px solid #d8d3b3; }
  /* simuration */
  .wrap-simuration { min-width: 1000px; margin: 50px auto 0; }
  .box-simuration { margin: 0 auto; padding: 40px 35px 35px; }
  /* average */
  .box-soz-average { margin-top: 25px; display: -webkit-flex; display: flex; }
  .box-soz-average .box-soz-grave, .box-soz-average .box-soz-funeral { border-radius: 7px; padding: 20px 0 8px; width: 470px; }
  .box-soz-average .box-soz-funeral { margin: 0 0 0 auto; }
  .box-soz-average .title, .box-soz-average .avg, .box-soz-average .result { margin-left: 10px; margin-right: 10px; }
  .box-soz-average .title { font-size: 1.8rem; margin-bottom: 15px; }
  .box-soz-average .avg { font-size: 3.0rem; line-height: 1.8em; }
  .box-soz-average .number { font-size: 4.0rem; }
  .box-soz-average .result { margin-top: 20px; font-size: 1.6rem; line-height: 1.2; }
  .box-soz-example { padding: 20px 40px; border-radius: 15px; }
  .box-soz-example .inner-example { margin-top: 20px; display: -webkit-flex; display: flex; }
  .box-soz-example .inner-example .inner-image { width: 450px; }
  .box-soz-example .inner-example .inner-image img { width: 448px; max-width: none; height: auto; }
  .box-soz-example .inner-example .inner-example-family { margin-left: auto; width: 400px; }
  .box-soz-example .inner-example .inner-example-family .txt-soz-strong { text-align: center; }
  .box-soz-example .img-zoom-wrap { margin-top: 10px; }
  .box-soz-example .txt-soz-extitle { margin-left: -20px; }
  .box-soz-necessary { margin-top: 50px; padding: 35px 58px 40px; }
  .box-soz-important { margin-top: 55px; padding: 60px 40px; }
  /* block
============================*/
  .blk-soz-2-pc { margin-top: 30px; display: -webkit-flex; display: flex; width: 100%; }
  .blk-soz-2-pc .blk-inner > .txt-soz-strong-pt2:first-child { margin-top: 0; }
  .blk-soz-2-pc .blk-inner + .blk-inner { margin-left: auto; width: 320px; } }

.kv-wrap { background: no-repeat url(../image/kv_sp.jpg) center/cover; position: relative; padding-top: 114.0625%; }

.kv-wrap::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.kv-wrap .kv-hdg { position: absolute; }

.kv-wrap .kv-hdg img { width: 100%; height: auto; }

.kv-wrap .kv-hdg.secondlife { left: 5px; right: 15px; bottom: 5px; }

.media-area { background-color: #f7f6f0; border-bottom: 1px solid #d8d3b3; }

.media-area .inner { padding: 25px 0 0; }

.txt-lead-chk-wrap { margin-top: 20px; }

.txt-lead-chk { position: relative; padding-left: 23px; line-height: 1.5; }

.txt-lead-chk::before { content: ''; position: absolute; left: 2px; top: 12px; display: inline-block; width: 12px; height: 6px; border-left: 2px solid #cf4b45; border-bottom: 2px solid #cf4b45; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.txt-lead-chk > .body { display: inline-block; color: #1f2678; font-weight: bold; font-size: 2rem; background-image: linear-gradient(transparent 70%, #fff0b2 70%); background-position: left bottom 3px; }

.img-zoom-wrap { margin-top: 15px; position: relative; text-align: right; }

.img-zoom-wrap img { width: 100%; height: auto; }

.img-zoom-wrap .zoom-txt { margin-top: 10px; display: inline-block; text-decoration: none; font-weight: bold; font-size: 1.1rem; line-height: 1.5; color: #1f2678; padding-left: 17px; background: url(../image/icn_zoom.png) no-repeat left top/15px auto; }

.lst-anc { overflow: hidden; margin-top: 25px; }

.lst-anc > li { border-top: 1px solid #d8d3b3; }

.lst-anc > li a { padding: 5px 25px 5px 10px; color: #333; text-decoration: none; position: relative; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; min-height: 50px; background-color: #fff; font-size: 1.4rem; line-height: 1.5; }

.lst-anc > li a > span { display: block; font-size: 1.2rem; }

.lst-anc > li a::after { position: absolute; content: ''; top: 0; bottom: 0; right: 15px; margin: auto; width: 4px; height: 4px; border-top: 2px solid #54850d; border-left: 2px solid #54850d; -webkit-transform: rotate(225deg); transform: rotate(225deg); }

.btn-std { margin-top: 25px; }

.btn-std > a { border-radius: 50px; display: block; border: 1px solid #54850d; background-color: #54850d; color: #fff; text-align: center; font-size: 1.4rem; line-height: 1.5; font-weight: bold; text-decoration: none; padding: 6px 30px; position: relative; }

.btn-std > a::after { content: ''; position: absolute; right: 20px; -webkit-transform: rotate(135deg); transform: rotate(135deg); top: 0; bottom: 0; margin: auto; width: 4px; height: 4px; border-top: 2px solid #fff; border-left: 2px solid #fff; }

.btn-std-pt2 { margin-top: 20px; text-align: center; }

.btn-std-pt2 > a { border-radius: 50px; display: inline-block; border: 1px solid #1f2678; background-color: #1f2678; color: #fff; text-align: center; font-size: 1.4rem; line-height: 1.5; font-weight: bold; text-decoration: none; min-width: 210px; padding: 8px 30px; position: relative; }

.btn-std-pt2 > a::after { content: ''; position: absolute; right: 20px; -webkit-transform: rotate(135deg); transform: rotate(135deg); top: 0; bottom: 0; margin: auto; width: 4px; height: 4px; border-top: 2px solid #fff; border-left: 2px solid #fff; }

.btn-srh-shop > a { text-decoration: none; display: inline-block; color: #fff; background-color: #0075be; border: 1px solid #0075be; line-height: 1.1; font-size: 1.4rem; font-weight: bold; padding: 12px; min-width: 192px; text-align: center; border-radius: 24px; }

.btn-srh-shop > a span { position: relative; display: inline-block; padding-left: 20px; }

.btn-srh-shop > a span::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; background: url(../image/icn_pin.png) no-repeat left top/12px auto; width: 12px; height: 16px; }

.inq-box .btn-srh-shop { margin-top: 12px; }

.wrap-inq-area { margin-top: 30px; background-color: #f7f6f0; padding: 1px 10px 30px; }

.lst-inq-area { width: 90%; margin: 15px auto 0; }

.lst-inq-area > li { font-weight: bold; font-size: 1.5rem; line-height: 1.5; position: relative; padding-left: 1.2em; }

.lst-inq-area > li + li { margin-top: 2px; }

.lst-inq-area > li::before { content: ''; display: inline-block; position: absolute; width: 1em; height: 1em; background-color: #333; left: 0; top: 3px; border-radius: 50%; }

.inq-box { margin-top: 30px; }

.inq-box > .hdg { padding: 10px; border-radius: 5px 5px 0 0; border: 1px solid #0075be; background-color: #0075be; color: #fff; text-align: center; font-size: 1.6rem; line-height: 1.5; font-weight: bold; }

.inq-box > .body { border-radius: 0 0 5px 5px; background-color: #fff; border: 1px solid #0075be; text-align: center; padding: 1px 5px 14px; }

.inq-box .lead { margin-top: 10px; font-weight: bold; font-size: 1.4rem; line-height: 1.5; }

.inq-box .txt { font-size: 1.2rem; line-height: 1.5; margin: 14px -3px 0; }

.lst-inq-area + .inq-box { margin-top: 15px; }

@media all and (min-width: 768px) { .kv-wrap { background: no-repeat url(../image/kv_pc.jpg) center/cover; position: relative; padding-top: 0; height: 550px; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: flex-end; justify-content: flex-end; }
  .kv-wrap::after { content: none; }
  .kv-wrap .kv-hdg { position: static; width: 1000px; padding: 0 10px; margin: 0 auto 30px; }
  .kv-wrap .kv-hdg img { width: 796px; }
  .kv-wrap .kv-hdg.secondlife img { -webkit-transform: translateX(-15px); transform: translateX(-15px); }
  .media-area .inner { width: 1000px; margin: 0 auto; padding: 50px 10px 0; }
  .txt-lead-chk-wrap { margin-top: 35px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
  .txt-lead-chk { padding-left: 40px; }
  .txt-lead-chk::before { top: 12px; width: 24px; height: 12px; border-left: 4px solid #cf4b45; border-bottom: 4px solid #cf4b45; }
  .txt-lead-chk > .body { font-size: 3rem; }
  .img-zoom-wrap { margin-top: 45px; text-align: left; pointer-events: none; }
  .img-zoom-wrap .zoom-txt { display: none; }
  .box-sec-example .img-zoom-wrap, .box-sec-merit .img-zoom-wrap { margin-top: 10px; }
  .lst-anc { margin-top: 50px; border-bottom: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; overflow: visible; }
  .lst-anc.row3 > li { width: 26.5%; }
  .lst-anc.row4 > li { width: 23.4%; }
  .lst-anc > li { display: -webkit-flex; display: flex; margin: 0 5px; text-align: center; border-top: none; }
  .lst-anc > li a { border-top: 1px solid #d8d3b3; border-left: 1px solid #d8d3b3; border-right: 1px solid #d8d3b3; width: 100%; border-radius: 4px 4px 0 0; padding: 12px; font-size: 1.8rem; transition: background .2s; }
  .lst-anc > li a > span { font-size: 1.6rem; }
  .lst-anc > li a::before { transition: all .2s; }
  .lst-anc > li a::after { content: none; transition: all .2s; }
  .lst-anc > li a:hover { background: #54850d; color: #fff; font-weight: bold; border-top: 1px solid #54850d; border-left: 1px solid #54850d; border-right: 1px solid #54850d; }
  .lst-anc > li a:hover::before { position: absolute; left: 0; right: 0; margin: auto; bottom: -9px; content: ""; display: inline-block; width: 0; height: 0; border-style: solid; border-width: 10px 10px 0 10px; border-color: #53850d transparent transparent transparent; }
  .lst-anc > li a:hover::after { position: absolute; content: ''; top: auto; bottom: -1px; right: 0; margin: auto; width: 100%; height: 1px; border-top: none; background: #54850d; border-left: none; -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  .btn-std { margin-top: 40px; text-align: center; }
  .btn-std > a { display: inline-block; border: 2px solid #54850d; font-size: 1.8rem; padding: 10px 40px; transition: background .2s; }
  .btn-std > a::after { right: 22px; transition: border .2s; }
  .btn-std > a:hover { background-color: #fff; color: #54850d; }
  .btn-std > a:hover::after { border-top: 2px solid #54850d; border-left: 2px solid #54850d; }
  .btn-std-pt2 { text-align: right; }
  .btn-std-pt2 > a { font-size: 1.6rem; min-width: 240px; padding: 7px 40px; border: 2px solid #1f2678; transition: background .2s; }
  .btn-std-pt2 > a::after { content: ''; position: absolute; right: 20px; -webkit-transform: rotate(135deg); transform: rotate(135deg); top: 0; bottom: 0; margin: auto; width: 4px; height: 4px; border-top: 2px solid #fff; border-left: 2px solid #fff; }
  .btn-std-pt2 > a:hover { background-color: #fff; color: #1f2678; }
  .btn-std-pt2 > a:hover::after { border-top: 2px solid #1f2678; border-left: 2px solid #1f2678; }
  .btn-srh-shop > a { font-size: 1.8rem; padding: 14px; min-width: 240px; transition: background .2s; border: 2px solid #0075be; }
  .btn-srh-shop > a span { padding-left: 25px; }
  .btn-srh-shop > a span::before { background: url(../image/icn_pin.png) no-repeat left top/14px auto; width: 14px; height: 18px; }
  .btn-srh-shop > a:hover { background-color: #fff; color: #0075be; }
  .btn-srh-shop > a:hover span::before { background: url(../image/icn_pin_b.png) no-repeat left top/14px auto; width: 14px; height: 18px; }
  .wrap-inq-area { margin-top: 70px; padding: 1px 0 50px; }
  .wrap-inq-area .l-inner { width: 700px; margin: 0 auto; padding: 0; }
  .lst-inq-area { width: auto; margin: 25px 100px 0 165px; }
  .lst-inq-area > li { font-size: 1.8rem; }
  .lst-inq-area > li::before { top: 4px; }
  .inq-box { margin-top: 50px; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; overflow: hidden; border-radius: 5px; border: 2px solid #0075be; }
  .inq-box > .hdg { height: 160px; width: 26%; text-align: left; padding: 10px 0 10px 20px; border-radius: 5px 0 0 5px; border: none; font-size: 2rem; position: relative; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; }
  .inq-box > .hdg > span { position: relative; z-index: 1; }
  .inq-box > .hdg::after { content: ''; position: absolute; width: 250px; height: 250px; background-color: #0075be; border-radius: 50%; top: 0; bottom: 0; margin: auto; right: -30px; }
  .inq-box > .body { height: 160px; width: 74%; border-radius: 0 5px 5px 0; border: none; padding: 1px 5px 0; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; }
  .inq-box .lead { margin-top: 0; font-size: 1.6rem; }
  .inq-box .txt { font-size: 1.4rem; margin: 14px 0 0; } }

/* header-lv2
-------------------*/
.wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt .hdg-lv2-pt1 { line-height: 1.5; }

.wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt .nodash { margin-top: 5px; color: #54850d; font-size: 1.6rem; line-height: 1.5; font-weight: bold; }

/* header-lv3
-------------------*/
.hdg-lv3-pt1 .hdg-sub { display: block; font-size: 1.2rem; }

/* lst
===================*/
.lst-source { margin-top: 10px; font-size: 1.2rem; line-height: 1.5; }

.lst-source .dtl { margin-top: 5px; }

.lst-indent .body { font-size: 1.2rem; line-height: 1.5; display: table; margin-top: 5px; }

.lst-indent .item { display: table-cell; }

.lst-indent .item:first-child { white-space: nowrap; padding-right: .2em; }

.lst-def { margin-top: 12px; font-size: 1.4rem; line-height: 1.5; }

.lst-def .hdg { font-weight: bold; }

.hdg-lv3-pt1 + .lst-def { margin-top: -13px; }

.box-sec-merit + .lst-def { margin-top: 15px; }

.txt-lead-chk-wrap + .lst-def { margin-top: 25px; }

.lst-def-pt2 { font-size: 1.4rem; line-height: 1.5; }

.lst-def-pt2 .hdg { margin-top: 12px; font-weight: bold; }

.lst-notice dd + dt { margin-top: 20px; }

.lead-large-wrap { margin-top: 30px; background: #e5f1f8; text-align: center; padding: 20px 5px; border-radius: 9px; }

.lead-large { font-weight: bold; font-size: 1.8rem; line-height: 1.5; color: #1f2678; }

.lst-source + .txt-nextflow { margin-top: 35px; margin-bottom: 40px; }

.box-sec-example ~ .txt-nextflow { margin-bottom: 20px; }

/* paragraph
===================*/
.txt-std { margin-top: 15px; font-size: 1.4rem; line-height: 1.5; }

.box-sec-example { margin-top: 15px; background-color: #f7f6f0; padding: 10px; border-radius: 9px; }

.box-sec-example > .hdg { font-weight: bold; font-size: 1.4rem; line-height: 1.5; text-align: center; }

.box-sec-example > .body { margin-top: 13px; background-color: #fff; border-radius: 5px; padding: 15px; }

.box-sec-img-txt { font-size: 1.4rem; line-height: 1.5; margin-top: 10px; margin-bottom: 10px; }

.box-sec-img-txt strong { font-weight: bold; font-size: 1.6rem; color: #0075be; }

.box-sec-merit { margin-top: 15px; background-color: #e5f1f8; padding: 10px; border-radius: 9px; }

.txt-sec-metitle { font-size: 1.8rem; line-height: 1.5; color: #fff; background-color: #0075be; text-align: center; border-radius: 5px; font-weight: bold; padding: 5px 10px; }

.lst-sec-merit { font-size: 1.4rem; line-height: 1.5; color: #0075be; margin-top: 8px; }

.lst-sec-merit > li { position: relative; padding-left: 1em; }

.lst-sec-merit > li::before { top: 0; left: 0; position: absolute; content: '\0030fb'; }

.lst-sec-merit-def { margin-top: 15px; line-height: 1.5; }

.lst-sec-merit-def > .hdg { font-weight: bold; color: #0075be; font-size: 1.4rem; }

.lst-sec-merit-def > .dtl .txt { font-size: 1.4rem; }

.lst-sec-merit-def > .dtl .lst-sec-merit { color: #333; margin-top: 0; }

.txt-sec-extitle { display: inline-block; font-size: 1.2rem; line-height: 1.5; color: #fff; background-color: #54850d; border-radius: 5px; font-weight: bold; padding: 5px 10px; }

.txt-sec-example { color: #c77405; font-weight: bold; font-size: 1.4rem; line-height: 1.5; text-align: center; }

.txt-sec-example strong { font-size: 2rem; }

.txt-sec-example-note { color: #c77405; font-size: 1.4rem; line-height: 1.5; margin-top: 10px; }

@media all and (min-width: 768px) { /* header-lv2
-------------------*/
  .wrap-hdg-lv2-pt1 .wrap-hdg-lv2-txt .nodash { font-size: 2.8rem; }
  /* header-lv3
-------------------*/
  .hdg-lv3-pt1 .hdg-sub { display: inline; font-size: 1.8rem; }
  /* paragraph
===================*/
  .txt-std { font-size: 1.6rem; }
  /* lst
===================*/
  .lst-source { margin-top: 22px; font-size: 1.4rem; display: -webkit-flex; display: flex; }
  .lst-source .hdg { white-space: nowrap; margin-top: 5px; }
  .lst-source .dtl { margin-top: 0; }
  .lst-indent .body { font-size: 1.4rem; }
  .lst-indent.box-inner { margin-left: 40px; }
  .lst-indent.box-inner .body { margin-top: 10px; }
  .img-zoom-wrap + .lst-indent .body { margin-top: 20px; }
  .txt-lead-chk-wrap + .lst-def { margin-top: 35px; }
  .lst-def { margin-top: 15px; }
  .lst-def .hdg { font-size: 1.8rem; }
  .lst-def .dtl { font-size: 1.6rem; }
  .hdg-lv3-pt1 + .lst-def { margin-top: 0; }
  .box-sec-merit + .lst-def { margin-top: 40px; }
  .lst-def-pt2 .hdg { margin-top: 25px; font-size: 1.6rem; }
  .lst-def-pt2 .dtl { font-size: 1.6rem; }
  .lead-large-wrap { margin-top: 80px; padding: 40px 15px; border-radius: 20px; }
  .lead-large { font-size: 3.6rem; }
  .lst-notice dd + dt { margin-top: 25px; }
  .lst-source + .txt-nextflow { margin-top: 70px; margin-bottom: 70px; }
  .box-sec-example ~ .txt-nextflow { margin-top: 50px; margin-bottom: 35px; }
  .txt-lead-chk-wrap + .txt-std { margin-top: 20px; }
  .box-sec-example { margin-top: 20px; padding: 20px; border-radius: 20px; }
  .box-sec-example > .hdg { font-size: 1.7rem; }
  .box-sec-example > .body { padding: 15px 25px 25px; margin-top: 30px; margin-left: 40px; margin-right: 40px; border-radius: 10px; }
  .box-sec-merit { margin-top: 20px; padding: 30px 40px; border-radius: 20px; }
  .box-sec-merit + .lst-def + .box-sec-merit { margin-top: 40px; }
  .box-sec-img-wrap { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; justify-content: center; margin-left: 20px; margin-right: 20px; margin-top: 10px; }
  .box-sec-img-wrap .img-zoom-wrap { width: 70%; }
  .box-sec-img-txt { width: calc(42% - 90px); font-size: 1.6rem; margin-top: 0; margin-bottom: 0; margin-left: 90px; }
  .wrap-sec-metitle { display: -webkit-flex; display: flex; }
  .wrap-sec-metitle .lst-sec-merit { margin-left: 20px; }
  .txt-sec-metitle { font-size: 2rem; line-height: 1.6; display: inline-block; padding: 12px 30px; }
  .lst-sec-merit { font-size: 1.8rem; margin-top: 0; }
  .lst-sec-merit-def > .hdg { font-size: 1.6rem; }
  .lst-sec-merit-def > .dtl .txt { font-size: 1.6rem; }
  .lst-sec-merit-def > .dtl .lst-sec-merit { color: #333; margin-top: 0; }
  .txt-sec-extitle { font-size: 1.8rem; padding: 8px 30px; }
  .txt-sec-example { font-size: 1.8rem; }
  .txt-sec-example strong { font-size: 2.8rem; }
  .txt-sec-example-note { font-size: 1.6rem; text-align: center; }
  .txt-pc-center { text-align: center; } }
