/*====================================

	----------------------------------
  		Structure
  	----------------------------------

  	0. General
  	1. Header
  	2. Main
  	3. Footer

  	----------------------------------
  		Change Log
  	----------------------------------

	-2018/5/31	 Fixed all

====================================*/

/*====================================

	0. General

====================================*/
@font-face {
 font-weight: 100;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Medium");
}
@font-face {
 font-weight: 200;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Medium");
}
@font-face {
 font-weight: 300;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Medium");
}
@font-face {
 font-weight: 400;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Medium");
}
@font-face {
 font-weight: 600;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Bold");
}
@font-face {
 font-weight: 700;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Bold");
}
@font-face {
 font-weight: 800;
 font-family: "Yu Gothic";
 src: local("Yu Gothic Bold");
}
@font-face {
 font-weight: 500;
 font-family: "Yu Mincho";
 src: local("Yu Mincho Regular");
}
@font-face {
 font-weight: 500;
 font-family: "Yu Mincho";
 src: local("Yu Mincho Regular");
}
@keyframes fadeIn {
    0% {opacity: 0; }
    100% {opacity: 1; }
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0; }
    100% {opacity: 1; }
}


html { font-size: 62.5%; -webkit-text-size-adjust: 100%; }
body { -webkit-animation: fadeIn 1s ease 0s 1 normal; animation: fadeIn 1s ease 0s 1 normal; color: #202020; font-family:"游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; font-size: 1.0rem; line-height: 1.5; position: relative; }

img { height: auto; max-width: 100%; vertical-align: bottom; }
a { color: #036EB8; text-decoration: underline; }
a:hover { opacity: 0.8; text-decoration: underline; }
ul, ol { list-style: none; }

.pcOnly { display: none !important; }
#page-top { bottom: 3vw; position: fixed; right: 3vw; z-index: 100; }
#page-top a { background: url("/common/img/icon_gototop.png") no-repeat 0 0 / 10vw auto; display: block; height: 20vw; text-indent:-9999px; width: 10vw; }

/*====================================

  1. Header

====================================*/
header { border-bottom: 0.6vw solid #e0e0e0; height: 21vw; position: relative; }
.l-header__h1 { float: left; margin: 4vw 0 0 4vw; width: 60vw; }

#panel-btn { background: #009b69; display: inline-block; height: 11vw; position: absolute; right: 4vw; text-indent: -9999px; top: 0; width: 11vw; z-index: 2000; } 
#panel-btn.cls { background: #ffffff; }
#panel-btn-icon { background: #ffffff; display: block; height: 0.6vw; left: 50%; margin: -0.3vw 0 0 -2.3vw; position: absolute; top: 50%; transition: .2s; width: 4.6vw; } 
#panel-btn-icon:before,
#panel-btn-icon:after { background: #ffffff; content: ""; display: block; height: 0.6vw; left: 0; position: absolute; top: 50%; transition: .3s; width: 4.6vw; } 
#panel-btn-icon:before { margin-top: -2.1vw; }
#panel-btn-icon:after { margin-top: 1.8vw; } 
#panel-btn .close { background: transparent; }
#panel-btn .close:before,
#panel-btn .close:after { margin-top: 0; } 
#panel-btn .close:before { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); } 
#panel-btn .close:after { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); } 
.gnav { background: #fff; box-shadow: 0 0 5px rgba(0,0,0,0.5); display: none; font-weight: bold; position: absolute; top: 20vw; width: 100%; z-index: 1000; }
ul.l-header_nav li { border-bottom: 0.2vw solid #a495bd; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font-size: 4.3vw; }
ul.l-header_nav li:last-child { border: none; }
ul.l-header_nav li > a { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; color: #202020; display: block; padding: 3vw 5vw 3vw 10vw; position: relative; text-decoration: none; vertical-align: middle; }
ul.l-header_nav li > a:before { content: ""; height: 7vw; left: 3vw; margin-top: -3.5vw; position: absolute; top: 50%; width: 7vw; }
ul.l-header_contact { display: flex; font-size: 3.4vw; }
ul.l-header_contact li { width: 50vw; }
ul.l-header_contact li a { color: #fff; display: block; padding: 3vw 3vw 3vw 7vw; position: relative; text-align: center; text-decoration: none; }
ul.l-header_contact li a.requestBtn { background: #ef8100 url("/common/img/icon_estimate.svg") no-repeat 5vw 50% / 3.6vw auto; }
ul.l-header_contact li a.contactBtn { background: #009b69 url("/common/img/icon_contact.svg") no-repeat 10vw 50% / 4.8vw auto; }
.l-header__tel { padding: 4vw; text-align: center; }
.l-header__tel img { width: 50vw; }


/*====================================

  2. Main

====================================*/
main { background: #fff; display: block; font-size: 4vw; overflow: hidden; }
main.page { margin: 0 5vw; }

/*====== [MODULE] p style ======*/
p { margin-top: 1.5em; }
p.catch { font-size: 3.7vw; line-height: 1.5; }
span.catch { font-size: 3.7vw; font-weight: bold; }


/*====== [MODULE] title style ======*/
.titleLV1 { color: #009b69; font-size: 6vw; margin-top: 5vw; padding-left: 23vw; position: relative; }
.titleLV1 span { font-size: 4.3vw; letter-spacing: -0.07em; }
.titleLV1:before { content: ""; height: 20vw; left: 0; margin-top: -10vw; position: absolute; top: 50%; width: 20vw; }
.titleLV1.t1:before { background: url("/common/img/bg_titleLV1_01.png") no-repeat 50% 50% / 100% auto; }
.titleLV1.t2:before { background: url("/common/img/bg_titleLV1_02.png") no-repeat 50% 50% / 100% auto; }
.titleLV1.t3:before { background: url("/common/img/bg_titleLV1_03.png") no-repeat 50% 50% / 100% auto; }
.titleLV1.t4:before { background: url("/common/img/bg_titleLV1_04.png") no-repeat 50% 50% / auto 100%; }
.titleLV1.t5:before { background: url("/common/img/bg_titleLV1_05.png") no-repeat 50% 50% / 100% auto; }
.titleLV1.t6 { padding-left: 18vw; }
.titleLV1.t6:before { background: url("/common/img/bg_titleLV1_06.png") no-repeat 50% 50% / auto 19vw; }

.titleLV2 { background: url("/common/img/bg_btn.png") no-repeat 0 50% / 100% auto; color: #fff; font-size: 5vw; line-height: 1; margin-top: 10vw; min-height: 14vw; padding: 4vw 6vw; }
.titleLV2 span { font-size: 3.4vw; }

.titleLV3 { border-bottom: 0.4vw solid #97d6d5; font-size: 5.2vw; line-height: 1; margin-top: 6vw; padding: 0 0 2vw 4vw; position: relative; }
.titleLV3:before { background: #009b69; border-radius: 3px; content: ""; height: 7vw; left: 0; position: absolute; top: -1vw; width: 2vw; }

.titleLV4 { display: flex; margin-top: 10vw; }
.titleLV4 span:first-child { align-items: center; background: #109954; border-radius: 50%; color: #ffff06; display: flex; float: left; font-size: 4.6vw;height: 15vw; justify-content: center; margin: 1vw 2vw 0 0; width: 15vw ; }
.titleLV4 span:last-child { width: 75vw; }
.titleLV4 mark { background: linear-gradient(transparent 50%, #ffff06 50%); color: #109954; font-size: 5.2vw; }


/*====== [MODULE] list style ======*/
.list { list-style: disc; margin-left: 1.5em; }
.numList { list-style: decimal; margin-left: 1.5em; }
.hiraganaList { list-style: hiragana; margin-left: 1.5em; }
.katakanaList { list-style: katakana; margin-left: 1.5em; }
.romanList { list-style: lower-roman; margin-left: 1.5em; }
.alphaList { list-style: lower-alpha; margin-left: 1.5em; }
.komeList { padding-left: 1em; text-indent: -1em; }


/*====== [MODULE] text style ======*/
.taC { text-align: center !important; }
.taL { text-align: left!important; }
.taR { text-align: right!important; }



/*====== [MODULE] table style ======*/
table { border-collapse: collapse; margin: 3vw 0; width: 100%; }
caption { color: #009b69; font-size: 5.2vw; font-weight: bold; margin-bottom: 2vw; }
th,
td { border: 0.2vw solid #97d6d5; padding: 2vw 1vw; text-align: center; }
th { background: #cdf1e3; font-weight: normal; }


/*====== [MODULE] btn style ======*/
.btnBlock { margin: 10vw 0; text-align: center; }
.btn { background: #009b69; border-radius: 1.5vw; color: #fff; display: block; font-size: 4vw; font-weight: bold; line-height: 1; padding: 4vw 3vw; position: relative; text-align: center; text-decoration: none; }
.arrow { padding-left: 7vw; position: relative; }
.arrow:before { background: url("/common/img/icon_arrow_y.svg") no-repeat 50% 50% / 4.5vw auto; content: ""; height: 5vw; left: 0; margin-top: -2.5vw; position: absolute; top: 50%; width: 5vw; }


/*====== [MODULE] notice style ======*/
span.notice { color: #bf0707; }


/*====== [MODULE] block style ======*/
.binder { border: 5vw solid #fccc86; border-radius: 3vw; margin-top: 10vw; position: relative; }
.binder:before { background: url("/common/img/bg_clip.svg") no-repeat 0 0 / 50vw auto; content: ""; height: 20vw; left: 50%; margin-left: -25vw; position: absolute; top: -7vw; width: 50vw; }
.binderInner { background: url("/common/img/bg_topblock02.png") 0 0 / auto 10vw; border: solid #fff; border-width: 12vw 5vw 5vw; }



/*====================================

  3. Footer

====================================*/
footer { font-size: 3.7vw; line-height: 1; }
footer.top { margin-top: 0; }
footer a { color: #202020; }

.l-foot_contact { background: #009b69; padding: 5vw; }
.l-foot_contact p { color: #fff; font-size: 4.6vw; line-height: 1.3; margin: 0; text-align: center; }
.l-foot_contact ul {}
.l-foot_contact li { margin-top: 3vw; }
.l-foot_contact li a { background: #fff; border-radius: 3vw; color: #009b69; display: block; font-size: 5.2vw; font-weight: bold; padding: 5vw; text-align: center; text-decoration: none; }
.l-foot_contact li span { display: inline-block; padding-left: 11vw; position: relative; }
.l-foot_contact li span:before { content: ""; height: 7vw; left: 0; margin-top: -3.5vw; position: absolute; top: 50%; width: 7vw; }
.l-foot_contact li span.requestBtn:before { background: url("/common/img/icon_estimate_o.svg") no-repeat 50% 50% / auto 7vw; }
.l-foot_contact li span.contactBtn:before { background: url("/common/img/icon_contact_o.svg") no-repeat 50% 50% / 7vw auto; }

.l-foot { padding: 5vw; }
.l-foot h1 { font-size: 5vw; margin-top: 5vw; }
.l-foot h1 em { display: block; font-size: 4vw; font-style: normal; margin-bottom: 5px; }
.l-foot dl { border-top: 0.2vw solid #ccc; margin-top: 5vw; }
.l-foot dt { float: left; padding-top: 2vw; }
.l-foot dd { border-bottom: 0.2vw solid #ccc; padding: 3vw 0 3vw 10em; }
.l-foot address { font-style: normal; margin-top: 5vw; }
.l-foot p { line-height: 1.6; }
.l-foot ul { margin-bottom: 5vw; }
.l-foot ul li { margin: 0 22px 15px 0; }
.l-foot ul a { background: url("/common/img/icon_window.svg") no-repeat 0 50% / 4vw auto; display: inline-block; padding-left: 5vw; }

#page-nav { display: none; }


/*====================================

  4. Contents

====================================*/

/*---------------------
   top
---------------------*/
.topBlock01 { background: #a5d7d4; }
.topBlock01 img { width: 1200%; }

.topBlock02 { border: 5vw solid #fccc86; position: relative; }
.topBlock02:before { background: url("/common/img/bg_clip.svg") no-repeat 0 0 / 50vw auto; content: ""; height: 20vw; left: 50%; margin-left: -25vw; position: absolute; top: -7vw; width: 50vw; }
.topBlock02 div { background: url("/common/img/bg_topblock02.png") 0 0 / auto 10vw; border: solid #fff; border-width: 12vw 5vw 5vw; }

.topBlock03 { background: #cdf1e3; padding: 8vw 5vw 0.1vw; }
.topBlock03 h2 { color: #009b69; font-size: 6vw; margin-bottom: 5vw; text-align: center; }
.topBlock03 ul {}
.topBlock03 li { background: #fff; border-radius: 3vw; margin-bottom: 10vw; padding: 5vw; }
.topBlock03 li h3 { color: #009b69; font-size: 5.4vw; line-height: 1.3; margin-bottom: 3vw; position: relative; text-align: center; }
.topBlock03 li h3 span { align-items: center; background: #ef8100; border-radius: 50%; color: #fff; display: flex; font-size: 3.4vw; height: 15vw; justify-content: center; left: -9vw; letter-spacing: -0.1em; line-height: 1.2; position: absolute; top: -8vw; transform:rotate(-15deg); width: 15vw; }
.topBlock03 li h3 small { display: block; font-size: 4vw; margin-top: 1vw; }
.topBlock03 li dt { font-size: 4.3vw; font-weight: bold; line-height: 1.3; margin-bottom: 3vw; text-align: center; }
.topBlock03 li dd { margin-bottom: 3vw; }
.topBlock03 li .btn {}


/*---------------------
   ★riskmanagement
---------------------*/
.risk .case { background: #cdf1e3; border-radius: 3vw; margin: 5vw 0; padding: 5vw; }
.risk .case2 { background: #cdf1e3; border-radius: 3vw; margin: 5vw 0 15vw; padding: 5vw; position: relative; }
.risk .case2:after { background: #009b69; bottom: -12vw; clip-path: polygon(0 0, 100% 0, 50% 100%); content: ""; height: 7vw; left: 0; margin: auto; position: absolute; right: 0; width: 24vw; }

.risk h4 { font-size: 4.6vw; text-align: center; }
.risk .moreInfo {}
.risk .moreInfo .btn { margin: 2vw; }
.risk .caseAnswer { font-size: 4.6vw; margin-bottom: 7vw; text-align: center; }
.risk .caseAnswer em { color: #109954; font-size: 5.2vw; font-style: normal; }
.risk mark { background: linear-gradient(transparent 50%, #ffff06 50%); font-weight: bold; }

.riskBlock01 h2 { background: url("/common/img/bg_title_topblock02.png") no-repeat 50% 80% / 100% auto; color: #009b69; font-size: 6vw; line-height: 1; padding-bottom: 3vw; text-align: center; }

.riskBlock02 { margin: 10vw 0; }
.riskBlock02 .riskList { background: #fff; display: flex; flex-wrap: wrap; justify-content: space-between; padding: 5vw 5vw 10vw; }
.riskBlock02 .riskList li { margin-top: 5vw; width: 32vw; }
.riskBlock02 .riskList figure { margin-bottom: 3vw; }
.riskBlock02 h5.triangle { color: #fff; font-size: 4vw; font-weight: 700; margin: -1vw 0 4vw; padding-bottom: 2vw; position: relative; text-align: center; z-index: 0; }
.riskBlock02 h5.triangle::before { background: #009b69; bottom: 0; clip-path: polygon(0 0, 100% 0, 50% 100%); content: ""; height: 20vw; left: 0; margin: auto; position: absolute; right: 0; top: 0; width: 70vw; z-index: -1; }
.riskBlock02 .priceList { display: flex; flex-wrap: wrap; justify-content: space-between; }
.riskBlock02 .priceList li { background: #009b69; border-radius: 3vw; color: #fff; font-weight: bold; line-height: 1; margin-top: 3vw; padding: 3vw 1vw; text-align: center; width: 38vw; }
.riskBlock02 p { line-height: 1.6; }
.riskBlock02 .caseList {}
.riskBlock02 .caseList > div { margin-top: 7vw; }
.riskBlock02 .caseList > div:first-child { border-bottom: 0.4vw solid #cdf1e3; padding-bottom: 5vw; }
.riskBlock02 .caseList h5 { background: #109954; color: #fff; font-size: 4.6vw; line-height: 1; margin-bottom: 3vw; padding: 2vw; text-align: center; }
.riskBlock02 .caseList dl { display: block; margin-bottom: 5vw; overflow: hidden; }
.riskBlock02 .caseList dt { text-align: center; }
.riskBlock02 .caseList dd { margin-top: 3vw; }



/*---------------------
   ★medical
---------------------*/
.medicalBlock01 { margin-bottom: 10vw; }
.medicalBlock01 h2 { color: #009b69; font-size: 6vw; margin-bottom: 5vw; padding-left: 18vw; position: relative; }
.medicalBlock01 h2 span { align-items: center; background: #ef8100; border-radius: 50%; color: #fff; display: flex; font-size: 3.4vw; font-weight: normal; height: 15vw; justify-content: center; left: 0; line-height: 1.1; position: absolute; text-align: center; top: 0; transform:rotate(-15deg); width: 15vw; }
.medicalBlock01 h3 { font-size: 6vw; line-height: 1.2; margin-bottom: 3vw; text-align: center; }
.medicalBlock01 h3 + p { font-size: 4.9vw; margin: 0 5vw 5vw; }
.medicalBlock01 .moreInfo { margin-bottom: 5vw; }
.medicalBlock01 h4 { align-items: center; color: #009b69; display: flex; font-size: 5.2vw; justify-content: center; margin: 5vw 0; text-align: center; }
.medicalBlock01 h4 span:first-child { align-items: center; border: 0.4vw solid #ef8100; border-radius: 50%; color: #ef8100; display: flex; font-size: 3.4vw; height: 15vw; justify-content: center; line-height: 1.1; margin-right: 2vw; text-align: center; transform:rotate(-15deg); width: 15vw; }
.medicalBlock01 h4 span:last-child { width: 55vw; }
.medicalBlock01 p {}
.medicalBlock01 .arrowW { padding-left: 7vw; position: relative; }
.medicalBlock01 .arrowW:before { background: url("/common/img/icon_arrow_w.svg") no-repeat 50% 50% /  5vw auto; content: ""; height: 7vw; left: 0; margin-top: -3.5vw; position: absolute; top: 50%; transform:rotate(90deg); width: 5vw; }

.medicalBlock02 {}
.medicalBlock02 .setBlock,
.medicalBlock02 .setBlock01,
.medicalBlock02 .setBlock02 { margin: 5vw 0; }
.medicalBlock02 dl.green { border: 0.4vw solid #009b69; border-radius: 3vw; position: relative; }
.medicalBlock02 dl.green dt { background: #009b69; color: #fff; font-weight: bold; padding: 3vw; text-align: center; }
.medicalBlock02 dl.green dt:first-child { border-top-left-radius: 2vw; border-top-right-radius: 2vw; }
.medicalBlock02 dl.green dd { margin: 0 3vw; padding: 3vw 0; }
.medicalBlock02 dl.green dd.ex { border-top: 0.2vw solid #009b69; padding-bottom: 20px; }
.medicalBlock02 dl.green figure { text-align: center; }
.medicalBlock02 span.ex { display: block; text-align: right; }
.medicalBlock02 dl.orange { border: 0.4vw solid #ef8100; border-radius: 3vw; position: relative; }
.medicalBlock02 dl.orange dt { background: #ef8100; color: #fff; font-weight: bold; padding: 3vw; text-align: center; }
.medicalBlock02 dl.orange dt:first-child { border-top-left-radius: 2vw; border-top-right-radius: 2vw; }
.medicalBlock02 dl.orange dd { margin: 0 3vw; padding: 3vw 0; }
.medicalBlock02 dl.green2 { background: #bfe6d9; line-height: 1.4; padding: 5vw 5vw 1vw; }
.medicalBlock02 dl.green2 figure { margin: 3vw 0; text-align: center; }
.medicalBlock02 dl.orange2 { background: #fbdfbf; line-height: 1.4; padding: 5vw 5vw 1vw; }
.medicalBlock02 dl.orange2 figure { margin: 3vw 0; text-align: center; }
.medicalBlock02 dl.orange2 .space {}
.medicalBlock02 th.max { background: #009b69; color: #fff; }
.medicalBlock02 table { margin-top: 5vw; }
.medicalBlock02 table + small { display: block; font-size: 4vw; margin-top: 3vw; }
.medicalBlock02 table + .time { margin-top: 0.5em; text-align: right; }
.medicalBlock02 p + dl.green { margin-top: 5vw; }
.medicalBlock02 small strong { color: #ef8100; font-weight: normal; }
.medicalBlock02 .setBlock01 div,
.medicalBlock02 .setBlock02 div { margin-top: 5vw; }
.medicalBlock02 .setBlock01 div h4,
.medicalBlock02 .setBlock02 div h4 { font-size: 5vw; margin-bottom: 2vw; text-align: center; }
.medicalBlock02 .setBlock strong { font-size: 4.3vw; }
.medicalBlock02 .setBlock01 strong,
.medicalBlock02 .setBlock02 strong { display: block; font-size: 4.3vw; }
.medicalBlock02 .sum { border-top: 0.2vw solid #333; margin-top: 2vw; padding-top: 2vw; text-align: right; }
.medicalBlock02 .sum span { color: #ef8100; font-size: 6vw; font-weight: bold; }
.medicalBlock02 .setBlock dl.green:first-child { margin-bottom: 15vw; }
.medicalBlock02 .setBlock dl.green:first-child:before { bottom: -15vw; color: #009b69; content: "＋"; font-size: 10vw; left: 50%; margin-left: -0.5em; position: absolute; }
.medicalBlock02 .setBlock01 dl.green { margin-bottom: 12vw; }
.medicalBlock02 .setBlock01 dl.green:before { border-left: 10vw solid transparent; border-right: 10vw solid transparent; border-top: 5vw solid #009b69; bottom: -10vw; content: ""; left: 50%; margin-left: -10vw; position: absolute; }
.medicalBlock02 .setBlock02 dl.orange { margin-bottom: 12vw; }
.medicalBlock02 .setBlock02 dl.orange:before { border-left: 10vw solid transparent; border-right: 10vw solid transparent; border-top: 5vw solid #ef8100; bottom: -10vw; content: ""; left: 50%; margin-left: -10vw; position: absolute; }

.medicalBlock03 { margin-bottom: 5vw; }
.medicalBlock03 small { display: block; font-size: 4vw; margin-top: 0.5em; }


/*---------------------
   doctor
---------------------*/
.doctorBlock01 { }
.doctorBlock01 dl { align-items: center; border-bottom: 0.2vw solid #e0e0e0; display: flex; padding: 3vw 0; }
.doctorBlock01 dt { align-items: center; background: #009b69; border-radius: 50%; color: #ffff00; display: flex; font-size: 6vw; font-weight: bold; height: 20vw; justify-content: center; line-height: 1.1; margin-right: 4vw; width: 20vw; }
.doctorBlock01 dd { width: 65vw; }
.doctorBlock01 .moreInfo { margin-top: 15px; text-align: center; }


/*---------------------
   income
---------------------*/
.incomeBlock01 { }
.incomeBlock01 h2 { color: #009b69; font-size: 6vw; margin-bottom: 5vw; padding-left: 18vw; position: relative; }
.incomeBlock01 h2 span { align-items: center; background: #ef8100; border-radius: 50%; color: #fff; display: flex; font-size: 3.4vw; font-weight: normal; height: 15vw; justify-content: center; left: 0; line-height: 1.1; position: absolute; text-align: center; top: 0; transform:rotate(-15deg); width: 15vw; }
.incomeBlock01 .moreInfo { margin-bottom: 5vw; }
.incomeBlock01 .btn { padding: 15px 30px; }
.incomeBlock01 dl {}
.incomeBlock01 dt { align-items: center; display: flex; font-size: 5vw; font-weight: bold; }
.incomeBlock01 dt span:first-child { align-items: center; background: #009b69; border-radius: 50%; color: #ffff00; display: flex; font-size: 4vw; height: 15vw; justify-content: center; line-height: 1.1; margin-right: 2vw; text-align: center; width: 20vw; }
.incomeBlock01 dd { background: url("/common/img/icon_arrow.svg") no-repeat 0 10px / 6vw auto; font-size: 4.6vw; margin: 2vw 0 5vw; padding-left: 8vw; }
.incomeBlock01 dd small { font-size: 3.1vw; }
.incomeBlock01 .arrowW { padding-left: 7vw; position: relative; }
.incomeBlock01 .arrowW:before { background: url("/common/img/icon_arrow_w.svg") no-repeat 50% 50% /  5vw auto; content: ""; height: 7vw; left: 0; margin-top: -3.5vw; position: absolute; top: 50%; transform:rotate(90deg); width: 5vw; }

.incomeBlock02 { }
.incomeBlock02 p em { color: #ef8100; font-style: normal; }
.incomeBlock02 .setBlock01 { display: flex; justify-content: space-between; margin: 5vw 0; position: relative; }
.incomeBlock02 .setBlock01:before { bottom: 0; color: #009b69; content: "＋"; font-size: 8vw; left: 50%; margin: -4vw auto auto -4vw; position: absolute; top: 50%; }
.incomeBlock02 .setBlock01 dl { background: #009b69; border-radius: 3vw; color: #fff; padding: 5vw 3vw; text-align: center; width: 40vw; }
.incomeBlock02 .setBlock01 dt { border-bottom: 0.2vw solid #fff; font-weight: bold; margin-bottom: 2vw; padding-bottom: 2vw; }
.incomeBlock02 .setBlock01 dd {}
.incomeBlock02 div.age { overflow: scroll; }
.incomeBlock02 table.age { font-size: 3.1vw; }
.incomeBlock02 table + .komeList { line-height: 1.2; margin-top: -2vw; }
.incomeBlock02 .titleLV3 + .list { margin-top: 1.5em; }
.incomeBlock02 .example { color: #009b69; font-weight: bold; text-align: center; }
.incomeBlock02 .example dt { border: 0.4vw solid #009b69; border-radius: 3vw; font-size: 4.9vw; margin: 5vw 0; padding: 3vw; }
.incomeBlock02 .example dd { font-size: 5.2vw; }
.incomeBlock02 .example dd span { color: #ef8100; }
.incomeBlock02 .example dd span span { font-size: 6vw; }
.incomeBlock02 .example mark { background: linear-gradient(transparent 50%, #ffff06 50%); color: #009b69; font-weight: bold; }

.incomeBlock03 { }
.incomeBlock03 > dl { margin-top: 5vw; }
.incomeBlock03 > dl dt { font-size: 5vw; margin-bottom: 2vw; }
.incomeBlock03 > dl dt mark { background: url("/common/img/bg_title_topblock02.png") no-repeat -1vw 100% / auto 100%; color: #009b69; display: inline-block; font-weight: bold; padding: 0 1vw; }
.incomeBlock03 > dl dd { background: url("/common/img/icon_arrow.svg") no-repeat 0 5px / 6vw auto; font-size: 4.6vw; margin-bottom: 3vw; padding-left: 8vw; }
.incomeBlock03 .komeList { font-size: 3.1vw; }
.incomeBlock03 p.t1,
.incomeBlock03 p.t2,
.incomeBlock03 p.t3 { padding-left: 20vw; position: relative; }
.incomeBlock03 p:before { content: ""; height: 20vw; left: 0; margin-top: -40px; position: absolute; top: 50%; width: 20vw; }
.incomeBlock03 p.t1:before { background: url("/common/img/income_img01.png") no-repeat 0 50% / 18vw auto; }
.incomeBlock03 p.t2:before { background: url("/common/img/income_img02.png") no-repeat 50% 50% / auto 20vw; }
.incomeBlock03 p.t3:before { background: url("/common/img/income_img03.png") no-repeat 0 50% / 18vw auto; }
.incomeBlock03 p span { background: #ef8100; color: #fff; display: inline-block; font-size: 3.4vw; font-weight: bold; padding: 0.5vw 1vw; }
.incomeBlock03 p em { color: #ef8100; font-style: normal; }
.incomeBlock03 div.reception { background: #cdf1e3; margin-bottom: 3vw; padding: 3vw 5vw 1vw; }
.incomeBlock03 div.reception h4 { margin-bottom: 2vw; }
.incomeBlock03 div.reception h4 span { font-size: 3.4vw; font-weight: normal; }
.incomeBlock03 div.reception dl { }
.incomeBlock03 div.reception dt { float: left; margin-top: 2vw; }
.incomeBlock03 div.reception dd { border-top: 1px solid #97d6d5; padding: 1.5vw 0 1.5vw 12em; }

.incomeBlock04 { border-top: 0.2vw solid #97d6d5; margin: 5vw 0; padding-top: 5vw; }
.incomeBlock04 h2 { color: #ef8100; font-size: 2.4rem; padding-left: 8vw; position: relative; text-align: center; }
.incomeBlock04 h2:before { background: url("/common/img/icon_caution.png") no-repeat 0 50% / 8vw auto; content: ""; height: 8vw; margin: 0 0 0 -8vw; position: absolute; width: 8vw; }
.incomeBlock04 p { margin-top: 0; text-align: center; }
.incomeBlock04 .list { margin-top: 1.5em; }
.incomeBlock04 .komeList { font-size: 3.4vw; margin-top: 1.5em; }


/*---------------------
   example
---------------------*/
.exampleBlock01 {}


/*---------------------
   fee
---------------------*/
.feeBlock01 { margin-bottom: 6vw; }
.feeBlock01 ul { background: #cdf1e3; margin-top: 5vw; padding: 1vw 5vw 5vw; }
.feeBlock01 li { background: #fff; border-radius: 3vw; margin-top: 8vw; padding: 8vw 5vw 5vw; position: relative; }
.feeBlock01 li h3 { color: #009b69; font-size: 5.6vw; line-height: 1.1; margin-bottom: 3vw; position: relative; text-align: center; }
.feeBlock01 li h3 span { align-items: center; background: #ef8100; color: #fff; display: flex; font-size: 4.3vw; height: 8vw; justify-content: center; left: 50%; margin-left: -25vw; position: absolute; top: -11vw; width: 50vw; }
.feeBlock01 li h3 small { display: block; font-size: 3.4vw; margin-top: 1vw; }
.feeBlock01 li dt { font-size: 5vw; font-weight: bold; line-height: 1.3; margin-bottom: 3vw; text-align: center; }
.feeBlock01 li dd { margin-bottom: 3vw; text-align: center; }



/*---------------------
   contact
---------------------*/
.formBlock {}
.formBlock span.required { background: #ef8100; color: #fff; display: inline-block; font-size: 3.1vw; font-weight: bold; line-height: 1; margin-right: 2vw; padding: 1vw; }
.formBlock .btn { display: block; font-size: 6vw; margin: 3vw 0; padding: 4vw 2vw 4vw 10vw; position: relative; text-align: center; }
.formBlock .btn:before { background: url("/common/img/icon_arrow_y.svg") no-repeat 50% 50% / 8vw auto; content: ""; height: 10vw; left: 10vw; margin-top: -5vw; position: absolute; top: 50%; width: 10vw; }
.formBlock small { display: block; font-size: 3.1vw; font-weight: normal; margin-top:5px;}

.formType01 thead th{background: #009b69; color: #fff; font-weight: bold; text-align:center; padding: 5px;}
.formType01 { border-collapse: collapse; margin-top: 5vw; }
.formType01 th,
.formType01 td { display: block; padding: 3vw 4vw; text-align: left; }
.formType01 td input[type=text],
.formType01 td input[type=email],
.formType01 td input[type=tel] { border: 0.2vw solid #ccc; padding: 3vw 4vw; width: 100%; }
.formType01 td textarea { border: 0.2vw solid #ccc; height: 8em; padding: 3vw 4vw; width: 100%; }
.formType01 label { display: inline-block; margin-right: 3vw; }
.formType01 input[type=radio],
.formType01 input[type=checkbox] { margin-right: 1vw; }
.formType01 select { background: url("/common/img/icon_arrrow_b.png") no-repeat 100% 50%; border: 0.2vw solid #333; border-radius: 2vw; padding: 2vw 7vw 2vw 3vw; }

.formBlock .btnBlock input[type=submit],
.formBlock .btnBlock a { background: #009b69 url("/common/img/icon_arrow_y.svg") no-repeat 5vw 50% / 7vw auto; border-radius: 2vw; color: #fff; cursor: pointer; display: inline-block; font-size: 5vw; font-weight: bold; padding: 3vw 5vw 3vw 15vw; position: relative; text-decoration: none;white-space: normal; }


.formDoneBlock { background: #f0f0f0; margin: 10vw 0 7vw; padding: 5vw; text-align: center; }
.formDoneBlock p { line-height: 1.6; margin-bottom: 1.5em; }




/*---------------------
   sitepolicy
---------------------*/
.sitepolicyBlock { margin-bottom: 10vw; }
.sitepolicyBlock .titleLV1 { padding-left: 0; }



/*---------------------
  PDFダウンロードページ
---------------------*/
.pdfDl .titleLV1{ display: flex; align-items: center; min-height: 45px; }
.pdfDl .titleLV2{ margin-top: 40px; }
.pdfDlBox{ margin: 10vw 0; }
.pdfDlBox_item + .pdfDlBox_item{ margin-top: 30px; padding-top: 30px; border-top: 1px dashed #ccc; }
.pdfDlBox_item + .pdfDlBox_item .itemTtl{ margin-top: 0; }
.pdfDlBox .itemImg img{width: 210px; }



/*---------------------
  フォーム上部テキスト
---------------------*/
.formIntro_box{
  margin: 30px 0 0;
  font-size: 14px;
}
.formIntro{
  font-size: 15px;
}