@charset "utf-8";
/*==================================================================

  メインビジュアル

==================================================================*/
.header_mv{
	position: relative;
	background: none;
	height: auto;
}
.top_mainvisual{
  height: 680px;
}
.mainvisual_wrap{
  position: relative;
  height: 680px;
}
.mainvisual_wrap::before{
	position: absolute;
	content: "";
	background: url("../images/mainvisual_tree_left.png") no-repeat top center;
	width: 444px;
	height: 180px;
	left: 0;
	bottom: 0;
}
.mainvisual_wrap::after{
	position: absolute;
	content: "";
	background: url("../images/mainvisual_tree_right.png") no-repeat top center;
	width: 573px;
	height: 210px;
	right: 0;
	bottom: 0;
}
.top_mainvisual .inner{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.nav_wrap {
    top: 849px;
}
/* キャッチフレーズ */
.mainvisual_catch {
    position: absolute;
    top: 81px;
    left: calc((100% - 1420px) / 2);
}
@media (min-width: 641px) and (max-width: 1420px) {
.mainvisual_catch {
    left: 0;
}	
}
.mainvisual_catch p{
  display:block;
  letter-spacing: 0.08em;
  font-size: 18.2px;
}
.mainvisual_catch span{
  display:block;
  letter-spacing: 0.08em;
  font-size: 15px;
}
.mainvisual_open {
    position: absolute;
    bottom: 48px;
    right: 0;
    width: 710px;
    display: flex;
    justify-content: space-between;
}
.mainvisual_open img{
  width:100%;
}

/* メインスライド */
#slick_fade{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 860px;
}
#slick_fade .slide_item img{
  width: 100%;
  height: 860px;
  object-fit: cover;
  object-position: center;
}




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

  .top_problem

==================================================================*/
.top_problem {
    position: relative;
    padding: 110px 0 97px;
	background: url("../images/top_trouble_bg.jpg") no-repeat center / cover;
	border-bottom: 3px solid #83b4be;
}
.top_problem::before{
	position: absolute;
	content: "";
	background: url("../images/top_trouble_bg02.png") no-repeat center / cover;
	width: 100%;
	height: 560px;
	bottom: 0;
	left: 0;
	border-top: 3px solid #83b4be;
}
.tit_h2_problem {
    position: relative;
    text-align: center;
    padding: 136px 0 82px;
	background: url("../images/tit_h2_problem_white.png") no-repeat top center;
}
.tit_h2_problem h2 {
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #0d5c6d;
    line-height: 1.5;
    font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_problem p {
    font-size: 14px;
    letter-spacing: 0.05em;
    color: #ffffff;
    line-height: 1.5;
    padding-top: 8px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h3_problem {
	position: relative;
    display: table;
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #2e3a64;
    line-height: 1.5;
    margin: 0 auto;
    padding: 0 53px 40px;
	background: url("../images/tit_h3_trouble_hukidashi.png") no-repeat bottom center;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h3_problem::before {
    position: absolute;
    content: "";
    background: url("../images/tit_h3_trouble_left.png") no-repeat;
    width: 50px;
    height: 41px;
    left: 11px;
    top: -35px;
}
.tit_h3_problem::after {
    position: absolute;
    content: "";
    background: url("../images/tit_h3_trouble_right.png") no-repeat;
    width: 50px;
    height: 41px;
    right: 10px;
    top: -34px;
}
.top_problem_flex {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 35px 34px;
    flex-wrap: wrap;
    padding-top: 54px;
}


.problem_img01 {
    position: absolute;
    left: calc((100% - 1180px) /2);
    top: 70px;
}
.problem_img02 {
    position: absolute;
    left: 0;
    top: 200px;
}
.problem_img03 {
    position: absolute;
    right: 92px;
    top: 96px;
}
@media (min-width: 641px) and (max-width: 1670px) {
.problem_img01 {
    top: 40px;
}
.problem_img02 {
    width: 200px;
}	
}
@media (min-width: 641px) and (max-width: 1620px) {
.problem_img03 {
    width: 300px;
}	
}







.top_problem02 {
    position: relative;
    padding: 86px 0 200px;
	background: url("../images/top_attention_bg.jpg") no-repeat center / cover;
}
.top_problem02::before {
    position: absolute;
    content: "";
    background: url("../images/top_attention_bg.png") no-repeat center / cover;
    width: 100%;
    height: 670px;
    left: 0;
    top: 130px;
    border-top: 3px solid #83b4be;
    border-bottom: 3px solid #83b4be;
}
.top_problem02 .top_problem_flex {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 0px 47px;
    flex-wrap: wrap;
    padding-top: 30px;
}
.top_problem02 .top_problem_flex p:nth-child(2),.top_problem02 .top_problem_flex p:nth-child(4),.top_problem02 .top_problem_flex p:nth-child(7),.top_problem02 .top_problem_flex p:nth-child(9){
	padding-top: 70px;
}
.top_problem02 .top_problem_flex p:nth-child(n+6){
	margin-top: -33px;
}
.top_problem02 .tit_h3_problem {
    position: relative;
    display: table;
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #0d5c6d;
    line-height: 1.5;
    margin: 0 auto;
    padding: 0 53px 40px;
    width: 607px;
    text-align: center;
    background: url("../images/tit_h3_attention.png") no-repeat bottom center;
}
.problem02_img01 {
    position: absolute;
    left: 12px;
    top: 41px;
}
.problem02_img02 {
    position: absolute;
    right: 24px;
    top: -162px;
}









.top_reserve {
    position: relative;
    padding: 100px 0;
    margin-top: 0;
	background: url("../images/top_reserve_bg_blue.jpg") no-repeat center / cover;
	z-index: 2;
}
.top_reserve::before {
    position: absolute;
    content: "";
    background: url("../images/top_reserve_tree_left.png") no-repeat;
    width: 715px;
    height: 558px;
    left: 0;
    top: -260px;
    z-index: -1;
}
.top_reserve::after {
    position: absolute;
    content: "";
    background: url("../images/top_reserve_tree_right.png") no-repeat;
    width: 650px;
    height: 538px;
    right: 0;
    top: -260px;
    z-index: -1;
}
.img_reserve_center {
    position: absolute;
    text-align: center;
    top: -76px;
    left: 0;
    right: 0;
    margin: auto;
}
.img_reserve_left {
    position: absolute;
    left: 69px;
    top: 11px;
}
.img_reserve_right {
    position: absolute;
    right: 92px;
    top: 8px;
}
@media (min-width: 1480px) and (max-width: 1760px) {
.img_reserve_left img {
    width: 400px;
	height: auto;
}	
.img_reserve_right img {
	width: 400px;
	height: auto;
}
.img_reserve_left {
    position: absolute;
    left: 10px;
}
.img_reserve_right {
    right: 10px;
}
}
@media (min-width: 641px) and (max-width: 1479px) {
.img_reserve_left img {
    width: 300px;
	height: auto;
}	
.img_reserve_right img {
	width: 300px;
	height: auto;
}
.img_reserve_left {
    position: absolute;
    left: 10px;
}
.img_reserve_right {
    right: 10px;
}
}
.reserve_text {
    position: relative;
    text-align: center;
    font-size: 20px;
    letter-spacing: 0.05em;
    color: #2e3a64;
    line-height: 2.0;
    padding-bottom: 38px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}








.top_first {
    position: relative;
    padding-bottom: 180px;
    background: url("../images/top_first_bg.jpg") no-repeat top center;
    overflow: hidden;
}
.tit_h2_first {
    position: relative;
    text-align: center;
    padding: 173px 0 67px;
    background: url("../images/tit_h2_first.png") no-repeat top center;
    z-index: 2;
}
.tit_h2_first p {
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #2e3a64;
    line-height: 1.5;
    padding-bottom: 19px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.top_first_flex {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.first_flex_left{
	width: 45%;
}
.first_flex_right {
    width: 53.4%;
}
.first_flex_left h3 {
    position: relative;
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #3c6e66;
    text-align: center;
    padding-bottom: 53px;
    line-height: 1.5;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.first_flex_left h3::before{
	position: absolute;
	content: "";
	background: url("../images/tit_h3_first_bg.png") no-repeat;
	width: 229px;
	height: 242px;
	left: 0;
	right: 0;
	margin: auto;
	top: -85px;
}
.first_flex_left p {
    font-size: 18px;
    letter-spacing: 0.05em;
    color: #222222;
    line-height: 1.95;
    text-align: center;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.first_flex_right p {
    position: absolute;
    top: -201px;
}
.first_flex_right p img {
    width: 874px;
    max-width: 874px;
    height: auto;
}







.top_sankaku {
    position: relative;
    padding-bottom: 94px;
}
.top_sankaku::before{
	position: absolute;
	content: "";
	background: url("../images/top_first_bg_circle_left.png") no-repeat;
	width: 350px;
	height: 592px;
	left: 0;
	top: -318px;
}
.top_sankaku::after{
	position: absolute;
	content: "";
	background: url("../images/top_first_bg_circle_right.png") no-repeat;
	width: 345px;
	height: 523px;
	right: 0;
	top: -329px;
}
.top_sankaku .tit_h3_problem {
    color: #f1821f;
    line-height: 1.5;
    margin: 0 auto;
    padding: 0 53px 40px;
    background: url("../images/tit_h3_nintei.png") no-repeat bottom center;
    top: -55px;
	text-align: center;
}
.top_sankaku .tit_h3_problem::before{
	display: none;
}
.top_sankaku .tit_h3_problem::after {
    right: 195px;
    top: -44px;
    background: url("../images/tit_h3_nintei_line.png") no-repeat;
    width: 55px;
    height: 30px;
}
.top_sankaku_flex {
    position: relative;
    margin-top: -19px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.sankaku_flex_left {
    position: relative;
    width: 43%;
}
.sankaku_flex_left img{
	width: 530px;
	height: 489px;
	max-width: 530px;
}
.sankaku_flex_right {
    position: relative;
    width: 57%;
    padding-top: 51px;
    text-align: center;
}
.sankaku_flex_right p{
	font-size: 18px;
    letter-spacing: 0.05em;
    color: #222222;
    line-height: 2.0;
	margin-bottom: 33px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}






.top_merit {
    position: relative;
    padding-bottom: 563px;
    margin-bottom: 50px;
}
.top_merit::before {
    position: absolute;
    content: "";
    background: url("../images/img_merit_right.png") no-repeat;
    width: 828px;
    height: 731px;
    right: 0;
    top: -109px;
    z-index: 1;
}
@media (min-width: 1400px) and (max-width: 1700px) {
.top_merit::before {
    background-size: contain;
    width: 453px;
    height: 400px;
    right: 0;
    top: 96px;
    z-index: 1;
}
}
@media (min-width: 641px) and (max-width: 1399px) {
.top_merit::before {
	display: none;
}	
}
.tit_h2_merit {
    position: relative;
    padding: 105px 0 62px;
    text-align: center;
    background: url("../images/tit_h3_merit.png") no-repeat top center;
    z-index: 2;
}
.tit_h2_merit p{
	font-size: 32px;
	letter-spacing: 0.05em;
	color: #8867a0;
	line-height: 1.3;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_merit h2 {
    padding-top: 20px;
}
.top_merit_flex{
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	counter-reset: number 0;
}
.merit_box {
    position: relative;
    width: 47%;
    margin-bottom: 73px;
}
.merit_box:nth-child(2n) {
    top: 200px;
}
.img_mert{
	position: relative;
	padding-bottom: 31px;
}
.tit_h3_merit {
    position: relative;
    padding-left: 133px;
    padding-bottom: 26px;
}
.tit_h3_merit::before {
    position: absolute;
    left: 25px;
    top: -5px;
    counter-increment: number 1;
    content: "0" counter(number) " ";
    font-size: 80px;
    letter-spacing: 0;
    line-height: 1.0;
    color: #a8a0d9;
	font-family: fot-tsukubrdgothic-std, sans-serif;
	font-weight: 400;
	font-style: normal;
}
.tit_h3_merit::after {
    position: absolute;
    content: "POINT";
    color: #a8a0d9;
    writing-mode: vertical-rl;
    left: -7px;
    top: 5px;
    transform: rotate(180deg);
    font-size: 16px;
    letter-spacing: 0.05em;
	font-family: fot-tsukubrdgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}
.tit_h3_merit h3{
	font-size: 25px;
	letter-spacing: 0;
	color: #705332;
	line-height: 1.4;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h3_merit p {
    font-size: 12px;
    letter-spacing: 0.05em;
    color: #d9b778;
    padding-bottom: 7px;
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
}
.merit_text {
    font-size: 18px;
    letter-spacing: 0;
    line-height: 1.9;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.merit_img_under01 {
    position: absolute;
    background: url("../images/img_merit_under_left02.png") no-repeat;
    width: 648px;
    height: 556px;
    left: calc((100% - 1200px) / 2);
    bottom: -10px;
}
.merit_img_under02 {
    position: absolute;
    background: url("../images/img_merit_under_left.png") no-repeat;
    width: 291px;
    height: 235px;
    left: 67px;
    bottom: 406px;
}
@media (min-width: 641px) and (max-width: 1640px) {
	.merit_img_under02{
		display: none;
	}	
}


.top_sankaku_merit{
	position: relative;
	background: url("../images/top_merit_bg.jpg") no-repeat top center / cover;
}
.top_sankaku_merit::before {
    position: absolute;
    content: "";
    background: url("../images/top_first_wave.png") no-repeat bottom center / cover;
    width: 100%;
    height: 28px;
    left: 0;
    top: -10px;
}








.top_advice {
    position: relative;
    padding: 63px 0 50px;
    background: url("../images/top_problem_02_bg.png") no-repeat 50% calc(100% - 1467px),url("../images/top_problem_03_bg.png") no-repeat bottom center;
}
.top_advice::before {
    position: absolute;
    content: "";
    background: url("../images/top_problem_01_bg.jpg") no-repeat;
    width: 100%;
    height: 2147px;
    left: 0;
    top: 318px;
}
.tit_h2_advice{
	position: relative;
	text-align: center;
	padding: 136px 0 26px;
	background: url("../images/tit_h2_problem.png") no-repeat top center;
}
.tit_h2_advice h2{
	font-size: 32px;
	letter-spacing: 0.05em;
	color: #0d5c6d;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_advice p{
	font-size: 14px;
	letter-spacing: 0.05em;
	color: #dca8aa;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_advice_sub {
    position: relative;
    display: table;
    margin: 0 auto;
    font-size: 24px;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 1.5;
    padding: 12px 93px;
    background: #dca8aa;
    border-radius: 40px;
    margin-bottom: 77px;
    font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    z-index: 2;
}
.box2_advice01 {
    position: relative;
    padding: 124px 0 111px;
    border: 2px solid #e0b0b1;
    border-radius: 50px;
    background: url("../images/top_problem_contents_bg_pink.jpg") no-repeat center / cover;
    margin-bottom: 73px;
}
.top_advice_flex{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.advice_flex_left {
    position: relative;
    width: 53%;
    z-index: 2;
}
.advice_flex_right{
	position: relative;
	width: 42%;
}
.advice_flex_right p{
	position: relative;
	top: -154px;
	z-index: 2;
}
.advice_flex_right p::before {
    position: absolute;
    content: "";
    background: url("../images/img_problem01_bg.png") no-repeat;
    width: 165px;
    height: 215px;
    left: -51px;
    top: 9px;
    z-index: -1;
}

.box2_advice02 .advice_flex_right p::before {
    display: none;
}
.advice_flex_left h3 {
    position: relative;
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #13829a;
    line-height: 1.5;
    padding-right: 20px;
    margin-left: 109px;
    z-index: 2;
    margin-bottom: 24px;
    font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    padding-left: 10px;
}
.advice_flex_left h3::before{
	position: absolute;
	content: "";
	background: url("../images/tit_h3_problem_line.png") no-repeat;
	width: 460px;
	height: 33px;
	bottom: -12px;
	left: 0;
	z-index: -1;
}
.advice_flex_left h3::after{
	position: absolute;
	content: "";
	background: url("../images/tit_h3_blue_flower.png") no-repeat;
	width: 91px;
	height: 70px;
	left: -110px;
	top: -15px;
}
.advice_flex_left p {
    padding-left: 101px;
    font-size: 18px;
    letter-spacing: 0;
    line-height: 1.9;
    font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}


.top_advice_merit {
    position: relative;
    margin-top: -205px;
	padding-bottom: 68px;
}
.top_advice_merit h4 {
    position: relative;
    display: table;
    font-size: 26px;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 1.5;
    padding: 10px 20px;
    min-width: 300px;
    text-align: center;
    background: url("../images/tit_h4_problem_flower.png") no-repeat 25px 50%,url("../images/tit_h4_problem_flower.png") no-repeat calc(100% - 25px) 50%,#dca8aa;
    border-radius: 40px;
    margin-bottom: 29px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.top_advice_merit h4::before {
    position: absolute;
    content: "";
    background: url("../images/tit_h4_merit_bg.png") no-repeat;
    width: 43px;
    height: 50px;
    right: -33px;
    top: -31px;
}
.advice_merit_flex {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 1087px;
    margin: auto 0 0 auto;
}
.advice_merit_box {
    position: relative;
    width: 31.5%;
    padding: 33px 18px 28px;
    border: 2px solid #dca8aa;
    border-radius: 20px;
	background: url("../images/top_problem_merit_bg.jpg") no-repeat center / cover;
	z-index: 2;
}
.advice_merit_box:nth-child(2)::before {
    position: absolute;
    content: "";
    background: url("../images/top_problem_merit_cat.png") no-repeat;
    width: 100px;
    height: 98px;
    left: 0;
    right: 0;
    margin: auto;
    top: -100px;
    z-index: -1;
}
.top_advice_demerit .advice_merit_box:nth-child(2)::before{
	display: none;
}
.advice_merit_box h5 {
    font-size: 24px;
    letter-spacing: 0.05em;
    color: #a03034;
    line-height: 1.5;
    text-align: center;
    padding-bottom: 26px;
    background: url("../images/tit_h4_line.png") no-repeat bottom center;
    margin-bottom: 18px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.advice_merit_box p {
    font-size: 17px;
    letter-spacing: 0;
    line-height: 2.05;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}


.top_advice_demerit{
	position: relative;
	margin: 0 auto;
}
.top_advice_demerit h4{
	background: url(../images/tit_h4_problem_flower.png) no-repeat 25px 50%, url(../images/tit_h4_problem_flower.png) no-repeat calc(100% - 25px) 50%, #8ab396;
	font-weight: 700;
}
.top_advice_demerit h4::before {
    background: url("../images/tit_h4_demerit_bg.png") no-repeat;
    width: 38px;
    height: 55px;
    right: -44px;
    top: -48px;
}
.advice_merit_flex_demerit .advice_merit_box {
    width: 48.4%;
	border: 2px solid #8ab396;
	background: url("../images/top_problem_demerit_bg.jpg") no-repeat center / cover;
}
.top_advice_demerit h5{
	color: #20554d;
	font-weight: 700;
}


.step_box{
	position: relative;
	padding-top: 26px;
}
.tit_h3_step{
	position: relative;
	padding-bottom: 30px;
}
.tit_h3_step h3{
	position: relative;
	text-align: center;
	padding-bottom: 23px;
	background: url("../images/tit_h3_step_circle.png") no-repeat 20px 30%,url("../images/tit_h3_step_circle_right.png") no-repeat calc(100% - 10px) 30%;
}
.tit_h3_step p {
    text-align: center;
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #2e3a64;
    line-height: 1.0;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.step_text {
    position: relative;
    text-align: center;
    font-size: 18px;
    letter-spacing: 0.05em;
    color: #222222;
    line-height: 2.2;
    padding-bottom: 30px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.step_flex {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 1030px;
    margin: 0 auto;
    counter-reset: number 0;
    z-index: 2;
}
.step_flex_box{
	width: 30%;
}
.step_img{
	position: relative;
	text-align: center;
}
.step_flex_box h4 {
    position: relative;
    font-size: 24px;
    letter-spacing: 0.05em;
    color: #3589a0;
    text-align: center;
    line-height: 1.5;
    padding-top: 24px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.step_flex_box h4::before {
    position: absolute;
    counter-increment: number 1;
    content: "0" counter(number) " ";
    font-size: 50px;
    letter-spacing: 0.05em;
    color: #65b5cb;
    line-height: 1.0;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
-1px 1px 0 #FFF, 1px -1px 0 #FFF,
0px 1px 0 #FFF, 0-1px 0 #FFF,
-1px 0 0 #FFF, 1px 0 0 #FFF;
    left: 0;
    right: 0;
    margin: auto;
    top: -34px;
}



.box2_advice02 {
    padding: 124px 0 30px;
    border: 2px solid #e9b595;
    margin-bottom: 77px;
}
.box2_advice02 .advice_flex_left h3::before {
    background: url("../images/tit_h3_problem_line02.png") no-repeat;
    width: 128px;
    height: 33px;
    bottom: -12px;
    left: 0;
    z-index: -1;
}
.box2_advice02 .advice_flex_right {
    width: 47%;
}
.box2_advice02 .top_advice_merit {
    margin-top: -137px;
    padding-bottom: 68px;
}
.box2_advice02 .advice_merit_box:nth-child(2)::before {
    background: url("../images/top_problem_merit_cat02.png") no-repeat;
    width: 229px;
    height: 99px;
    left: -40px;
    right: 0;
    margin: auto;
    top: -100px;
}
.box2_advice02 .top_advice_demerit{
	margin-top: 0;
}
.box2_advice02 .advice_merit_flex_demerit .advice_merit_box{
	width: 31.5%;
}




.box2_advice03 {
    padding: 124px 0 44px;
    border: 2px solid #f2d694;
}
.box2_advice03 .advice_flex_left h3::before {
    background: url("../images/tit_h3_problem_line03.png") no-repeat;
    width: 235px;
    height: 33px;
    bottom: -12px;
    left: 0;
    z-index: -1;
}
.box2_advice03 .advice_flex_right p::before {
    background: url("../images/img_problem01_bg.png") no-repeat;
    width: 165px;
    height: 215px;
    left: 6px;
}
.box2_advice03 .top_advice_merit {
    margin-top: -85px;
    padding-bottom: 68px;
}
.box2_advice03 .top_advice_demerit {
    margin-top: 0;
}
.box2_advice03 .advice_merit_flex_demerit .advice_merit_box {
    width: 48.4%;
}





.top_problem_circle_left{
	position: absolute;
	background: url("../images/top_problem_circle_left.png") no-repeat;
	width: 350px;
	height: 592px;
	left: 0;
	top: 218px;
}
.top_problem_circle_left02{
	position: absolute;
	background: url("../images/top_problem_circle_left02.png") no-repeat;
	width: 288px;
	height: 294px;
	left: 0;
	top: 1918px;
}
.top_problem03_circle_left{
	position: absolute;
	background: url("../images/top_problem03_circle_left.png") no-repeat;
	width: 241px;
	height: 248px;
	left: 0;
	bottom: 728px;
}
.top_problem_circle_right{
	position: absolute;
	background: url("../images/top_problem_circle_right.png") no-repeat;
	width: 345px;
	height: 523px;
	right: 0;
	top: 893px;
}
.top_problem02_circle_right{
	position: absolute;
	background: url("../images/top_problem02_circle_right.png") no-repeat;
	width: 242px;
	height: 248px;
	right: 0;
	top: 2784px;
}
.top_problem03_circle_right {
    position: absolute;
    background: url("../images/top_problem03_circle_right.png") no-repeat;
    width: 251px;
    height: 145px;
    right: 78px;
    bottom: 1011px;
}





.top_feature {
    position: relative;
    padding: 70px 0 119px;
	background: url("../images/top_feature_bg.jpg") no-repeat bottom center;
}
.tit_h2_feature{
	position: relative;
	text-align: center;
	padding: 220px 0 68px;
	background: url("../images/tit_h2_feature.png") no-repeat top center;
}
.tit_h2_feature p{
	font-size: 32px;
	letter-spacing: 0.05em;
	color: #20554d;
	line-height: 1.5;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_feature h2{
	padding-top: 17px;
}
.top_feature .merit_box:nth-child(2n) {
    top: 0px;
}
.top_feature .top_merit_flex{
	z-index: 3;
}






.top_flow {
    position: relative;
    padding: 72px 0 241px;
	background: url("../images/top_flow_bg.jpg") no-repeat bottom center / cover;
}
.tit_h2_flow{
	position: relative;
	text-align: center;
	padding: 261px 0 43px;
	background: url("../images/tit_h2_flow.png") no-repeat top center;
}
.tit_h2_flow h2 {
    font-size: 32px;
    letter-spacing: 0.05em;
    color: #0d5c6d;
    line-height: 1.5;
    padding-bottom: 6px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_flow p{
	font-size: 14px;
	letter-spacing: 0.05em;
	color: #bbdce3;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.flow_text {
    font-size: 22px;
    letter-spacing: 0.05em;
    color: #0d5c6d;
    line-height: 1.5;
    padding: 13px 20px;
    text-align: center;
    width: 100%;
    background: #def0f4;
    border-radius: 40px;
    margin-bottom: 50px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.blue{
	color: #169ebb;
}
.flow_flex {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    counter-reset: number 0;
    padding-bottom: 24px;
}
.img_flow {
    text-align: center;
}
.flow_flex_box {
    position: relative;
    width: 33%;
    margin-bottom: 36px;
}
.flow_flex_box:nth-child(4) {
    width: 41%;
    margin-left: 40px;
}
.flow_flex_box:nth-child(5) {
    width: 48%;
    margin-right: 10px;
}
.flow_flex_box:nth-child(1)::before, .flow_flex_box:nth-child(2)::before {
    position: absolute;
    content: "";
    background: url("../images/icon_arrow_flow01.png") no-repeat;
    width: 76px;
    height: 10px;
    right: -48px;
    top: 125px;
}
.flow_flex_box:nth-child(4)::before {
    position: absolute;
    content: "";
    background: url("../images/icon_arrow_flow02.png") no-repeat;
    width: 276px;
    height: 10px;
    right: -204px;
    top: 122px;
}
.flow_flex_box h3 {
    font-size: 30px;
    letter-spacing: 0.05em;
    color: #3589a0;
    line-height: 1.5;
    text-align: center;
    padding: 22px 0 5px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.flow_flex_box h3::before {
    position: absolute;
    counter-increment: number 1;
    content: "0" counter(number) " ";
    font-size: 50px;
    letter-spacing: 0.05em;
    color: #65b5cb;
    line-height: 1.0;
    left: 0;
    right: 0;
    margin: auto;
    top: 215px;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
-1px 1px 0 #FFF, 1px -1px 0 #FFF,
0px 1px 0 #FFF, 0-1px 0 #FFF,
-1px 0 0 #FFF, 1px 0 0 #FFF;
}
.flow_box_text {
    position: relative;
    text-align: center;
    font-size: 18px;
    letter-spacing: 0.05em;
    color: #222222;
    line-height: 1.95;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.flow_sub_text {
    position: relative;
    display: table;
    margin: 0 auto;
    font-size: 18px;
    letter-spacing: 0.05em;
    color: #222222;
    padding: 14px 20px;
    width: 600px;
    background: #e8d6e7;
    text-align: center;
    border-radius: 40px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.top_flow_img_right{
	position: absolute;
	background: url("../images/top_flow_img_right.png") no-repeat bottom center;
	width: 505px;
	height: 651px;
	right: 0;
	top: 0;
}

.top_flow_img_left{
	position: absolute;
	background: url("../images/top_flow_img_left.png") no-repeat;
	width: 396px;
	height: 612px;
	left: 0;
	top: 749px;
}
@media (min-width: 641px) and (max-width: 1680px) {
.top_flow_img_right {
    background-size: contain;
    width: 285px;
    height: 367px;
    right: 0;
    top: 0;
}
.top_flow_img_left {
    background-size: contain;
    width: 150px;
    height: 230px;
    left: 0;
    top: 819px;
}
}







.top_cost {
    position: relative;
    padding: 0px 0 157px;
}
.top_cost::before{
	position: absolute;
	content: "";
	background: url("../images/top_cost_bg.png") no-repeat center / cover;
	width: 100%;
	height: 1020px;
	bottom: 0;
	left: 0;
}
.tit_h2_cost{
	position: relative;
	text-align: center;
	padding: 160px 0 41px;
	background: url("../images/tit_h2_cost.png") no-repeat top center;
}
.tit_h2_cost h2{
	font-size: 32px;
	letter-spacing: 0.05em;
	color: #5f4f3c;
	line-height: 1.5;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.tit_h2_cost p {
    font-size: 14px;
    letter-spacing: 0.05em;
    font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    color: #ebb878;
    padding-top: 4px;
}
.top_cost_contents .tb03 {
    width: 1000px;
    margin: 0 auto;
}
.cost_text {
    position: relative;
    text-align: center;
    font-size: 17px;
    letter-spacing: 0.05em;
    color: #222222;
    line-height: 1.5;
    padding: 25px 0 29px;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.cost_box {
    position: relative;
    z-index: 3;
    width: 1000px;
    margin: 0 auto;
}
.cost_box h3{
	font-size: 22px;
	letter-spacing: 0.05em;
	color: #fff;
	text-align: center;
	padding: 19px 10px;
	background: #61a2b0;
	font-family: "fot-tsukubrdgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.img_card{
	position: relative;
	text-align: center;
	padding: 21px 0;
	background: #fff;
}

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

  .top_info

==================================================================*/
/* ↓↓↓見た目確認用↓↓↓ */
.top_info:not(.top_info2){
}
.top_info:not(.top_info2) .top_info_flex{
  padding: 64px 0;
}
/* ↑↑↑見た目確認用↑↑↑ */

.top_info_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_info_item{
  width: 49%;
}

/********************************
  .top_news お知らせ
*********************************/
/* 旧仕様 */
.top_news_frame{
  padding:35px 33px;
  border:15px solid #F0F0F0;
}
.top_news_headline{
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_info .top_news .top_news_frame{
  border: none;
  padding: 0;
  background: #fff;
  padding: 20px 12px;
}

/* お知らせの高さ */
.top_info .top_news .scroll_area{
  height: 285px;
  overflow-y: scroll;
}
.top_info .top_news ul{
  padding-right: 24px;
}

.news_list li{
  margin-bottom: 10px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.news_list li span{
  margin-right: 5px;
}
.news_list li em{
  margin-right: 5px;
  display:inline-block;
  min-width:75px;
  padding:1px 6px;
  font-style: normal;
  text-align:center;
}

/*スクロールバーの横幅指定*/
.scroll_area::-webkit-scrollbar {
  width: 5px;
}
/*スクロールバーの背景色・角丸指定*/
.scroll_area::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #fff;
}
/*スクロールバーの色・角丸指定*/
.scroll_area::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #ccc;
}

/********************************
  .top_sche 診療時間
*********************************/
.top_sche .sub_info_note li{
  color: var(--main-color);
  text-align: center;
  padding: 10px 5px;
  border: 1px solid var(--main-color);
  margin-bottom: 12px;
}
/* 補足リスト */
.top_sche .sub_info_note li:last-child{
  margin-bottom: 0;
}
.top_info2 .top_sche{
  border-radius: 10px;
  padding: 12px;
  background-color: rgba(192,171,154,0.3);
}
/* 診療科目、お問い合わせリスト */
.top_sche_note {
  margin-top: 10px;
}
.top_sche_note dl{
  display: flex;
  margin-bottom: 12px;
}
.top_sche_note dl:last-child{
  margin-bottom: 0;
}
.top_sche_note dl dt{
  width: 25%;
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-weight: bold;
  padding: 16px 5px;
  background: #C0AB9A;
  border-radius: 10px;
  margin-right: 2%;
}
.top_sche_note dl dd{
  width: 73%;
  display: flex;
  align-items: center;
  padding: 10px;
  background: #fff;
  border-radius: 10px;
}
.top_sche_note dl dd a{
  color: inherit;
}
.top_sche_note dl dd a:hover{
  color: inherit;
}

/********************************
  .top_access アクセス
*********************************/
.top_info2 .top_access{
  border-radius: 10px;
  background-color: rgba(192,171,154,0.3);
}
.top_access{
  padding: 12px;
}
.top_access .map{
  position: relative;
}
.top_access .map .btn01{
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0;
  margin-bottom: 0;
}
.top_access .map img{
  width: 100%;
  /* 下記はサンプル画像が正方形のため調整用に記載しています */
  height: 320px;
  object-fit: cover;
  object-position: center;
}
.top_access p{
  margin-top: 10px;
}

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

  .top_doctor

==================================================================*/
.top_doctor_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_doctor_flex .text{
  position:relative;
  width:70%;
}
.top_doctor_name{
  color:var(--main-color);
  line-height: 1.4;
  font-weight:bold;
}
.top_doctor_name span{
  font-size: 30px;
}
.top_doctor_img{
  width: 28%;
}
.top_doctor_img img{
  width: 100%;
}
.top_doctor .btn01{
  float:right;
  width:240px;
}
.top_doctor .btn01 a{
  display:block;
}

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

  .top_medical

==================================================================*/
.top_medical .text p{
  text-align:center;
}
.top_medical_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_medical_list a{
  display:block;
  width:22%;
  margin-bottom:20px;
  text-align:center;
}
.top_medical_list a img{
  width: 100%;
}
.top_medical_list dl{
  width:100%;
}
.top_medical_list dl dt{
  margin-bottom:7px;
}
.top_medical_list dl dd{
  font-weight:bold;
}
/*==================================================================

  .top_medical2

==================================================================*/
.top_medical2 .text p{
  text-align:center;
}
.top_medical2_list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top_medical2_list a{
  display:block;
  width: 120px;
  margin-right: 17.14px;
  margin-bottom:20px;
  text-align:center;
}
.top_medical2_list a:last-child{
  margin-right:0;
}
.top_medical2_list dl{
  width:100%;
}
.top_medical2_list dl dt{
  margin-bottom:7px;
}
.top_medical2_list img{
  width:100%;
}
.top_medical2_list dl dd{
  font-weight:bold;
}
/*==================================================================

  .top_medical3

==================================================================*/
.top_medical3 .text p{
  text-align:center;
}
.top_medical3_list ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top_medical3_list li{
  width: 120px;
  margin-right: 17.14px;
  margin-bottom:20px;
  text-align:center;
}
.top_medical3_list li:last-child{
  margin-right:0;
}
.top_medical3_list img{
  width:100%;
}
/*==================================================================

  .top_medical4

==================================================================*/
.top_medical4{
  padding-top:80px;
}
.top_medical4_list{
  width:980px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_medical4_list dl{
  position:relative;
  width: 270px;
  text-align:center;
  margin-bottom: 30px;
}
.top_medical4_list a{
  position:absolute;
  height:100%;
  width:100%;
  top:0;
  left:0;
}
.top_medical4_list dt img{
  width:100%;
  border-radius:100%;
}


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

  スマホ

==================================================================================================================*/
@media screen and (max-width:640px) {
  #wrapper, html, body{
    min-height:500px;
  }

  .nav_wrap {
    top: 0;
}
	
  /*==================================================================

    メインビジュアル（スマホ）

  ==================================================================*/
  .top_mainvisual{
    height:330px;
  }

  .mainvisual_wrap{
    height: 330px;
  }

  /* トップページキャッチフレーズ */
  .mainvisual_catch {
    position: absolute;
	top: 3%;
    left: 10px;
    width: 40%;
  }
  .mainvisual_catch h2 {
    margin-bottom: 10px;
    font-size: 22px;
  }
  .mainvisual_catch p {
    font-size: 15px;
  }
  .mainvisual_open{
    right: 10px;
    bottom: 10px;
    width: 290px;
  }
	.mainvisual_wrap::before,.mainvisual_wrap::after{
		display: none;
	}
  h1 {
    position: absolute;
    top: 330px;
}

  /* メインスライド */
  #slick_fade{
    height: 330px;
  }
  #slick_fade .slide_item img{
    height: 330px;
	object-position: 60%;
  }
	
  #container {
	padding-top: 52px; 
  }
	
	.problem_img01,.problem_img02,.problem_img03,.problem02_img01,.problem02_img02,.top_problem::before,.top_problem02::before{
		display: none;
	}
  .top_problem {
    padding: 40px 0 47px;
    border-bottom: none;
}
  .tit_h2_problem {
    padding: 66px 0 32px;
    background: url("../images/tit_h2_problem_white.png") no-repeat top center;
    background-size: 160px;
}
  .tit_h2_problem h2 {
    font-size: 21px;
    letter-spacing: 0;
}
  .tit_h3_problem {
    font-size: 17px;
    letter-spacing: 0;
    padding: 0 13px 32px;
}
	.tit_h3_problem::before,.tit_h3_problem::after{
		display: none;
	}
  .top_problem_flex {
    gap: 10px 5px;
    padding-top: 34px;
}
  .top_problem_flex p {
    width: 48%;
    text-align: center;
}
	
	
  .top_problem02 {
    padding: 46px 0 90px;
}
.top_problem02 .tit_h3_problem {
    font-size: 17px;
    letter-spacing: 0;
    padding: 0 5px 32px;
    width: auto;
}
  .top_problem02 .top_problem_flex p:nth-child(2), .top_problem02 .top_problem_flex p:nth-child(4), .top_problem02 .top_problem_flex p:nth-child(7), .top_problem02 .top_problem_flex p:nth-child(9) {
    padding-top: 0;
}
  .top_problem02 .top_problem_flex {
    gap: 5px;
}
  .top_problem02 .top_problem_flex p:nth-child(n+6) {
    margin-top: 0;
}
	
	
	
	
	
  .top_reserve::after {
    background-size: contain;
    width: 140px;
    height: 118px;
    top: -60px;
}
  .top_reserve::before {
    background-size: contain;
    width: 135px;
    height: 108px;
    left: 0;
    top: -60px;
}
  .img_reserve_center {
    top: -36px;
    width: 150px;
}
.top_reserve .box1 {
    padding-top: 160px;
}
  .img_reserve_right {
    right: 10px;
    top: 18px;
    width: 150px;
}
  .img_reserve_left {
    left: 20px;
    top: 51px;
    width: 170px;
}
@media (min-width: 440px) and (max-width: 640px) {
  .img_reserve_right {
    width: 200px;
}
  .img_reserve_left {
    width: 200px;
    top: 30px;
}
}
  .reserve_text {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.8;
    padding-bottom: 38px;
}
	.reserve_text br{
		display: none;
	}
  .top_reserve {
    padding: 40px 0;
    margin-top: 0;
}
  .top_reserve .btn01 a {
    background: #606781;
}
	
	
	

	
	
	
  .top_first {
    padding-bottom: 100px;
}
  .tit_h2_first {
    padding: 93px 0 30px;
    background-size: 100px;
}
  .tit_h2_first p {
    font-size: 20px;
    letter-spacing: 0;
    padding-bottom: 19px;
}
  .tit_h2_first h2 {
    width: 240px;
    margin: 0 auto;
}
	
  .top_first_flex {
    flex-direction: column-reverse;
}	
  .first_flex_left {
    width: 100%;
}
  .first_flex_right {
    width: 100%;
}
  .first_flex_right p {
    position: static;
}
  .first_flex_right p img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
	.first_flex_left h3::before,.top_sankaku::after,.top_sankaku::before{
		display: none;
	}
  .first_flex_left h3 {
    font-size: 20px;
    letter-spacing: 0;
    padding-bottom: 23px;
}
  .first_flex_left p {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.7;
}
	
	
	
	
  .top_sankaku .tit_h3_problem {
    padding: 0 10px 33px;
    top: -55px;
}
  .sankaku_flex_left {
    width: 100%;
}
  .sankaku_flex_left img {
    width: 100%;
    height: auto;
    max-width: 100%;
}
  .sankaku_flex_right {
    width: 100%;
    padding-top: 30px;
    text-align: left;
}
  .sankaku_flex_right p {
    font-size: 16px;
    letter-spacing: 0;
    margin-bottom: 25px;
}
  .top_sankaku {
    padding-bottom: 30px;
}
	
	
	
	
	.top_merit::before{
		display: none;
	}
  .tit_h2_merit {
    padding: 45px 0 62px;
    background-size: 230px auto;
}
  .tit_h2_merit p {
    font-size: 21px;
    letter-spacing: 0;
}
  .tit_h2_merit h2 img {
    width: 240px;
}
  .merit_box {
    width: 100%;
    margin-bottom: 50px;
    max-width: 360px;
    margin: 0 auto 50px;
}
  .tit_h3_merit h3 {
    font-size: 19px;
    letter-spacing: 0;
}
  .tit_h3_merit::before {
    left: 23px;
    top: -5px;
    font-size: 60px;
    letter-spacing: 0;
    line-height: 1.0;
}
  .tit_h3_merit {
    padding-left: 93px;
    padding-bottom: 25px;
}
  .merit_text {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.8;
}
  .merit_box:nth-child(2n) {
    top: 0;
}
  .tit_h3_merit p {
    font-size: 12px;
    letter-spacing: 0;
    padding-bottom: 2px;
}
  .tit_h3_merit::after {
    font-size: 14px;
    letter-spacing: 0;
}
	.merit_img_under02,.merit_img_under01{
		display: none;
	}
  .top_merit {
    padding-bottom: 13px;
    margin-bottom: 50px;
}
	
	
	
	
	.top_problem_circle_left,.top_problem_circle_left02{
		display: none;
	}
  .tit_h2_advice {
    padding: 66px 0 26px;
    background: url("../images/tit_h2_problem.png") no-repeat top center;
    background-size: 180px;
}
  .tit_h2_advice h2 {
    font-size: 21px;
    letter-spacing: 0;
}
  .tit_h2_advice p {
    font-size: 14px;
    letter-spacing: 0;
}
  .tit_h2_advice_sub {
    font-size: 18px;
    letter-spacing: 0;
    padding: 10px 20px;
    margin-bottom: 30px;
    width: 96%;
}
	
	
	
  .box2_advice01 {
    padding: 54px 0 31px;
    border-radius: 20px;
    margin-bottom: 50px;
    width: 96%;
    max-width: 96%;
    min-width: 96%;
    margin: 0 auto 30px;
}
  .top_problem03_circle_left,.top_problem03_circle_right,.advice_flex_left h3::after,.top_advice_demerit h4::before,.top_advice_merit h4::before{
	  display: none;
	}
  .advice_flex_left {
    width: 100%;
}
  .advice_flex_left h3 {
    font-size: 21px;
    letter-spacing: 0;
    padding-right: 0px;
    margin-left: 0;
}
  .advice_flex_left h3::before {
    background: url("../images/tit_h3_problem_line.png") no-repeat;
    width: 100%;
}
  .advice_flex_left p {
    padding-left: 0;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.7;
}
  .advice_flex_right {
    width: 100%;
}
  .top_advice_flex {
    flex-direction: column-reverse;
}
	.advice_flex_right p::before,.top_problem_circle_right{
		display: none;
	}
  .advice_flex_right p {
    top: 0;
}
  .top_advice_merit {
    margin-top: 60px;
    padding-bottom: 40px;
}
  .top_advice_merit h4 {
    font-size: 18px;
    letter-spacing: 0;
    padding: 10px 15px;
    min-width: 250px;
    margin-bottom: 29px;
}
  .advice_merit_flex {
    width: 100%;
    margin: 0 auto;
}
  .advice_merit_box {
    width: 100%;
    padding: 15px;
    margin-bottom: 20px;
}
  .advice_merit_box h5 {
    font-size: 18px;
    letter-spacing: 0;
    padding-bottom: 26px;
    margin-bottom: 18px;
}
  .advice_merit_box p {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.7;
}
	.advice_merit_box:nth-child(2)::before{
		display: none;
	}
  .advice_merit_flex_demerit .advice_merit_box {
    width: 100%;
}
	
	
	
	
	
	
  .tit_h3_step p {
    font-size: 20px;
    letter-spacing: 0;
}
  .tit_h3_step h3 {
    background: none;
}
  .tit_h3_step h3 img {
    width: 280px;
}
  .step_text {
    font-size: 16px;
    letter-spacing: 0;
    line-height: 1.8;
    padding-bottom: 30px;
}
  .step_flex {
    width: 100%;
	flex-wrap: wrap;
}
  .step_flex_box {
    width: 100%;
}
	.top_problem02_circle_right{
		display: none;
	}
  .step_flex_box h4 {
    font-size: 19px;
    letter-spacing: 0;
    padding-top: 24px;
	padding-bottom: 20px;
}
  .box2_advice02 .top_advice_merit {
    margin-top: 50px;
    padding-bottom: 8px;
}
  .box2_advice02 .advice_merit_flex_demerit .advice_merit_box {
    width: 100%;
}
  .box2_advice02 .advice_flex_right {
    width: 100%;
}
	
	
	
	
  .top_feature {
    padding: 40px 0 39px;
    background: url("../images/top_feature_bg.jpg") no-repeat bottom center /cover;
}
  .tit_h2_feature p {
    font-size: 21px;
    letter-spacing: 0;
}
  .tit_h2_feature h2 {
    width: 240px;
    margin: 0 auto;
}
	.top_flow_img_right,.top_flow_img_left{
		display: none;
	}
  .tit_h2_feature {
    padding: 80px 0 28px;
    background: url("../images/tit_h2_feature.png") no-repeat top center;
    background-size: 240px;
}
	
	
	
  .top_flow {
    padding: 42px 0 71px;
    background: url("../images/top_flow_bg.jpg") no-repeat bottom center / cover;
}
  .tit_h2_flow {
    padding: 81px 0 30px;
    background: url("../images/tit_h2_flow.png") no-repeat top center;
    background-size: 280px;
}
  .tit_h2_flow h2 {
    font-size: 21px;
    letter-spacing: 0;
    line-height: 1.5;
    padding-bottom: 6px;
}
  .flow_flex_box h3 {
    font-size: 20px;
    letter-spacing: 0;
    text-align: center;
    padding: 14px 0 5px;
}
  .flow_text {
    font-size: 16px;
    letter-spacing: 0;
    padding: 10px 16px;
    width: 100%;
    border-radius: 10px;
    margin-bottom: 40px;
}
  .flow_flex_box {
    width: 100%;
    margin-bottom: 46px;
}
	.flow_flex_box:nth-child(1)::before, .flow_flex_box:nth-child(2)::before,.flow_flex_box:nth-child(4)::before{
		display: none;
	}
  .flow_flex_box:nth-child(4) {
    width: 100%;
    margin-left: 0;
}
  .flow_flex_box:nth-child(5) {
    width: 100%;
    margin-right: 0;
}
  .flow_box_text {
    font-size: 16px;
    letter-spacing: 0;
    line-height: 1.6;
}
  .flow_sub_text {
    font-size: 16px;
    letter-spacing: 0;
    padding: 10px 20px;
    width: 100%;
}
	
	
	
	
  .tit_h2_cost {
    padding: 100px 0 40px;
    background: url("../images/tit_h2_cost.png") no-repeat top center;
    background-size: 130px;
}
  .tit_h2_cost h2 {
    font-size: 21px;
    letter-spacing: 0;
}
  .top_cost_contents .tb03 {
    width: 100%;
    margin: 0 auto;
}
  .tb03 th {
    padding: 10px 0;
    font-size: 14px;
    letter-spacing: 0;
}
  .tb03 td {
    font-size: 14px;
    letter-spacing: 0;
}
  .cost_box {
    width: 100%;
}
  .cost_box h3 {
    font-size: 18px;
    letter-spacing: 0;
    padding: 10px 10px;
}
  .top_cost::before {
    background: url("../images/top_cost_bg.png") no-repeat center / cover;
    width: 100%;
    height: 100%;
}
  .top_cost {
    padding: 0px 0 97px;
}
  .tb03 td, .tb03 th {
    padding: 1%;
}	
	
	
	
	
	
  
	
	
	
  /*==================================================================

    .top_info（スマホ）

  ==================================================================*/
  .news_list li a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .top_info_item {
    width: 100%;
    margin-top: 40px;
  }
  
  .top_info_item:first-child {
    margin-top: 0;
  }
  
  .top_info .top_news .scroll_area {
    height: 200px;
  }

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

    .top_doctor（スマホ）

  ==================================================================*/
  .top_doctor_flex {
    flex-direction: column-reverse;
  }

  .top_doctor .text {
    width: auto;
  }

  .top_doctor_img {
    width: auto;
    margin-bottom: 15px;
  }

  .top_doctor_img p {
    text-align: center;
  }

  .top_doctor_img p img {
    width: 60%;
    margin: 0 auto 15px;
    display: block;
  }

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

    .top_medical2（スマホ）

  ==================================================================*/
  .top_medical2_list a {
    width: 46%;
    margin-right: 8%;
  }

  .top_medical2_list a:nth-child(even) {
    margin-right: 0;
  }
  /*==================================================================

    .top_medical3（スマホ）

  ==================================================================*/
  .top_medical3_list li {
    width: 46%;
    margin-right: 8%;
  }

  .top_medical3_list li:nth-child(even) {
    margin-right: 0;
  }
  /*==================================================================

    .top_medical4（スマホ）

  ==================================================================*/
  .top_medical4_list {
    width: auto;
    margin: 0 8%;
  }

  .top_medical4_list dl {
    width: 45%;
    margin-right: 0;
  }
}
