@charset "UTF-8";
/* CSS Document */
* {
	box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
}
.font_57 {
	font-size: 2.5em;
}

.font_48 {
	font-size: 2.2em;
}

.font_47 {
	font-size: 2.1em;
}
.font_40 {
	font-size: 2.0em;
}
.font_39 {
	font-size: 1.85em;
}
.font_38 {
	font-size: 1.7em;
}
.font_32 {
	font-size: 1.6em;
}
.font_30 {
	font-size: 1.5em;
}
.font_29 {
	font-size: 1.4em;
}
.font_28 {
	font-size: 1.35em;
}
.font_25 {
	font-size: 1.28em;
}
.font_22 {
	font-size: 1.2em;
}
.font_20 {
	font-size: 1.08em;
}
.font_19 {
	font-size: 1.03em;
}
.font_18 {
	font-size: .95em;
}
.font_17 {
	font-size: .85em;
}



.height_26 {
	line-height: 2.6;
}
.height_2 {
	line-height: 2;
}
.height_19 {
	line-height: 1.9;
}
.height_18 {
	line-height: 1.8;
}
.height_175 {
	line-height: 1.75;
}
.height_16 {
	line-height: 1.6;
}
.height_153 {
	line-height: 1.53;
}
.height_15 {
	line-height: 1.5;
}
.height_146 {
	line-height: 1.46;
}
.height_1 {
	line-height: 1;
}
.space_100 {
	letter-spacing: 0.1em;
}
.space_200 {
	letter-spacing: 0.2em;
}

article{
	margin: 5em auto;
	
}

.pc_none{
	display: none; 
	}

.pc_wrap{
	margin: 0 auto;
	padding: 0;
	width: 100svw;
}


.font_blue{
	color: #315773;
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	font-style: normal;
}

.pc_wrap p{
	color: #0B1D2E;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.content_wrap{
	width: 70%;
	margin: 0 auto;
	max-width: 1200px;
}

.s_txt{
	margin-bottom: .5em;
}

/*-----------------------------------
fadein
-----------------------------------*/
.fadeUp{
	-webkit-animation-name: fadeUpAnime;
	animation-name:fadeUpAnime;
	-webkit-animation-duration: 1s;
	animation-duration:1s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
	transform: translateY(20px);
  }
  to {
    opacity: 1;
	 -webkit-transform: translateY(0);
	transform: translateY(0);
  }
}

.fadeUpTrigger {
  opacity: 0; /*非表示*/
}

.fadeDown{
animation-name:fadeDownAnime;
animation-duration:1.8s;
animation-fill-mode:forwards;
animation-delay: 2.8s;
opacity:0;
}

@keyframes fadeDownAnime{
  from {
    opacity: 0;
	transform: translateY(-20px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
	
}

.fadeinLeft{
animation-name:fadeinLeftAnime;
animation-duration:1s;
animation-fill-mode:forwards;
animation-delay: .5s;
opacity:0;
}

@keyframes fadeinLeftAnime{
  from {
    opacity: 0;
	transform: translateX(-20px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}
.fadeUptop{
	-webkit-animation-name: fadeUpAnime;
	animation-name:fadeUpAnime;
	-webkit-animation-duration: 1s;
	animation-duration:1s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode:forwards;
	opacity:0;
	animation-delay: 1s;
}

@keyframes fadeUptopAnime{
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
	transform: translateY(20px);
  }
  to {
    opacity: 1;
	 -webkit-transform: translateY(0);
	transform: translateY(0);
  }
}

.fadeIn{
	-webkit-animation-name: fadeUpAnime;
	animation-name:fadeUpAnime;
	-webkit-animation-duration: .5s;
	animation-duration:.5s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeUpTrigger {
  opacity: 0; /*非表示*/
}

/*motion--------------------------------------*/

.jump_animetion {
  animation: jumpanimetion 2s infinite;
}

@keyframes jumpanimetion {
  0%,
  15%,
  48%,
  100% {
    transform: translateY(0);
  }

  22% {
    transform: translateY(-4px);
  }

  30% {
    transform: translateY(-18px);
  }

  34% {
    transform: translateY(-20px);
  }

  38% {
    transform: translateY(-16px);
  }

  45% {
    transform: translateY(0);
  }
}


/*about--------------------------------------*/

.about_info_photo{
	
	z-index: 2;
}
.about_info_box{
	display: flex;
	justify-content: space-between;
	padding: 10em 0;
}
.about_info_box_img{
	width: 30%;
}
.about_info_box_txt{
	width: 60%;
}
.about_info_box_txt img{
	width: 80px;
	margin-top: -140px;
	position: absolute;
	right: 0;
}
.about_leaf{
	margin-top: -100px;
	right: -50px;
	z-index: -1;
	position:relative;
}
.about_info_box_txt h2{
	font-weight: 500;
	margin-bottom: 2.2em;
}
.about_info_box_txt h3{
	margin-bottom: 2em;
    font-size: 2.2em;
    line-height: 1.8
}
.main_txt{
	margin-bottom: 2em;
}
.mane_txt{
	text-align: right;
}
.about_info_box .about_info_box_txt_name{
  font-weight: 500;
}

.about_philosophy{
	background-image: url("../img/about/about_bg.png");
	background-size: cover;
	background-repeat: no-repeat;
}
.about_philosophy img{
	 margin-bottom: -3em;
	margin-left: 12em;
}

.about_philosophy h2{
	font-weight: 500;
	letter-spacing: 1.7px;
	margin-bottom: 1.5em;
}

.about_philosophy .back_white{
	width: 50%;
	max-width: 800px;
	margin: 0 auto;
	padding: 4em 0;
	background: rgb(255, 255,255,.9);
	text-align: center;
}
.dot_under {
   text-decoration-line: underline;
   text-decoration-color: #315773;
   text-decoration-thickness: .08em;
   text-underline-offset: .7em;
   text-decoration-skip-ink: none;
	text-decoration-style: dashed;
	line-height: 2.4;
	margin: 1em auto;
	padding: 0 2em;
}

.about_philosophy .back_white p{
	font-family: "Shippori Mincho", serif;
	width: 100%;
}

.about_philosophy img{
	width: 70px;
}

.about_vision{
	padding: 10em 0;
}

.about_vision_container{
	display: flex;
	justify-content:flex-start;
	width: 90%;
}
.about_vision_box{
	
}
.about_vision_box_01{
	width: 50%;
	padding-right: 5em;
}
.about_vision_box_01 img{
	width: 100%;
}
.about_vision_box_02{
	width: 50%;
}
.about_vision_item{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	background-color: #fff;
}
.about_vision_box_ill{
	width: 100%;
	text-align: right;
	margin: -120px 0 -18px;
}
.about_vision_box_ill img{
	z-index: 10;
	width: 160px;
}
.over{
	width:40%;
	max-width: 280px;
	min-width: 250px;
	margin: .2em;
	overflow: hidden;
	line-height: 0em;
	background-color: #fff;
}
.thick {
    position: relative;
    border: 2px solid #113C64;
    padding: 1em;
    text-align: center;
	aspect-ratio: 1;
	
}
.thick:before,
.thick:after,
.circle:before,
.circle:after {
    position: absolute;
    display: block;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    content: "";
    background-color: #fff ;
    border: 2px solid #113C64;
}
.thick:before {
    top: -12px;
    left: -12px;
}
.thick:after {
    top: -12px;
    right: -12px;
}
.circle:before {
    right: -12px;
    bottom: -12px;
}
.circle:after {
    left: -12px;
    bottom: -12px;
}

.about_vision_item_nmb{
	margin-bottom: 1em;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
	line-height: 1;
	white-space: nowrap;
	pointer-events: none;
	font-weight: 600;
}
.about_vision_item_04 h3{
	margin-bottom: 1.1em;
	height: auto;
}
.vision_item_line{
	width: 25%;
	margin: 1em auto;
	border-bottom: solid #707070 1px;
}
.about_vision_item_txt{
	text-align: left;
	line-height: 1.5em;
}
.about_staff{
	background-color: #FFFAF2;
	padding: 8em 0;
}
.about_staff_container{
	margin: 0 auto;
	width: 70%;
	max-width: 1000px;
}
.about_staff_title{
	width: auto;
	margin: 0 auto 2em;
	text-align: center;
}
.about_img_box{
	text-align: right;
}
.about_staff_illust{
	width: 200px;
	margin-top: -70px;
}
.about_staff_container h3{
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-style: normal;
	margin-bottom: 1em;
}


@media (max-width: 999px) {
	
.about_info_box{
	display: block}
	
.about_info_box_img{
	width: 70%;
	margin: -2em auto 2em;
}
.about_info_box_txt{
	width: 100%;
	margin: 0 auto;
}
.about_info_box_txt img{
	width: 50px;
	margin-top: -220px
}
	.about_philosophy{
		width: 100svw!important;
	}
.about_philosophy .back_white{
	width: 90%;
}
	.about_vision_container{
		display: block;
	}
.about_vision_box_01{
	width: 100%;
	padding-right: 0em;
}
.about_vision_box_01 img{
	width: 100%;
}
.about_vision_box_02{
	width: 100%;
	text-align: center;
}
.about_vision_box_02 h2{
	margin: 1em 0;
}
.about_vision_item{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	background-color: #fff;
}
.about_vision_box_ill{
	width: 100%;
	text-align: right;
	margin: -190px 0 0;
}
.about_vision_box_ill img{
	z-index: 10;
	width: 100px;
}
	.about_vision_item{
		display: flex;
		margin: 4em auto;
		text-align: center;
	}
	.over{
		margin: 1em auto;
		width: 40%;
	}
	.about_staff_illust{
		width:100px;
		margin-top: -40px
	}
}



/*facility--------------------------------------*/
.overview_wrap{
	margin:8em auto;
}
.center_title{
	margin: 4em auto;
	text-align: center;
}
.overview_box {
	display: flex;
	width: 100%;
	margin: 0 auto;
	padding: 1.5em 0 1.5em 2em;
	border-bottom: solid 1px #C9D2DB;
}
.overview_name{
	width: 20%;
	color: #315773;
	font-weight: 500;
}
.overview_txt{
	width: 80%;
	color: #0B1D2E;
}
.overview_txt li a{
    color: var(--page-black);
    text-decoration: underline;
}
.overview_txt li a i{
    padding-right: 8px
}
.overview_txt li a:hover{
    color: var(--main-color);
}

.access_wrap .center_title{
    position: relative;
}



.access_img_01{
	width: 250px;
	position: absolute;
	right: 10%;
	top:-250px;
    
}
.access_img_03{
	/*width: 50px;
	margin-bottom: -110px;
	margin-left: -120px;
	margin-right:100px*/
    width: 50px;
    position: absolute;
    bottom: -15px;
    left: 42%;
}
.access_img_02{
	width: 60px;
    position: absolute;
    top: 0;
    right: 43%;
    /*margin-bottom: -40px;
	margin-right: -120px;*/
}
.access_wrap{
	background-color: #FFFAF2;
	padding:  1em 0 3em;
	position: relative;
}
.access_map_box{
	display: flex;
	width:70%;
	margin: 2em auto;
	justify-content: space-between;
}
.access_map{
	width: 48%;
}
.access_map iframe{
    aspect-ratio: 5/ 4.1;
    width: 100%;
    height: auto;
}
.facility_wrap{
	width: 100svw;
}
.facility_wrap_bg{
	width: 100svw;
	display: flex;
	justify-content: space-between;
	position: relative;
}
.facility_wrap_bg img{
	width: 30%;
	z-index: -1;
	position: absolute;
	top:100px;
}
.facility_wrap_bg_l{
	left: 0;
}
.facility_wrap_bg_r{
	right: 0;
}
.facility_map_box{
	width: 63%;
	border-radius: 10px;
	margin: 2em auto 5em;
	background: #fff;
	text-align: center;
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
	z-index: 1;
}
.facility_map_box img{
	width: 80%;
	padding: 1em 0 2em;
}
.facility_info_box{
	/*width: 80%;*/
	margin: 2em auto 10em;
}
.facility_info_box h3{
	margin: 1em 0 .5em;
}

.facility_info_box p{
	color: #0B1D2E;
}
.facility_info_img_box{
	position: relative;
}
.facility_info_view{
	width: 100%;
}
.facility_info_item{
	width: 10%;
	position: absolute;
	right: 0;
	bottom: -50px;
}
.facility_info_item_01{
	width: 20%;
	right: -50px;
	bottom: -50px;
}
.facility_info_txt{
	
}
.facility_info_bottun_box{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.facility_info_bottun_box p{
	width: 75%;
}
.facility_info_bottun{
	width: 20%;
}
.bottun_color{
	width:100%;
	background-color: #113C64;
	padding:.8em 1em;
	border-radius: 3px;
}
.bottun_link{
	display: flex;
}
.bottun_link p{
	color: #fff;
}
.bottun_white{
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #fff;
	margin-top: .1em;
	margin-right: 1em;
}
.arrow {
  position: relative;
  display: inline-block;
  width: 18px;
  height: 28px;
}

.arrow::before,
.arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 8px;
  height: 1px;
  border-radius: 9999px;
  background-color: #113c64;
  transform-origin: calc(100% - 1px) 50%;
}

.arrow::before {
  transform: rotate(40deg);
}
.arrow::after {
  transform: rotate(-40deg);
}


@media (max-width: 999px) {
	.overview_wrap{
		width: 90%
	}
	.access_map_box{
		display: block;
		width: 90%;
		margin: 3em auto;
	}
	
.facility_map_box{
	width: 90%;
}
.facility_map_box img{
	width: 100%;
	padding: 0;
	margin: 0;
}
.facility_info_box{
	width: 100%;
	margin: 1em auto 4em;
}
.access_img_01{
	width: 150px;
	position: absolute;
	right: 3%;
	top:-150px
}
.access_map{
	width: 100%;
	margin: 2em auto;
}
.facility_info_img_box{
	width: 90%;
	margin: 1em auto;
}
	.facility_info_txt{
		
	width: 90%;
	margin: 1em auto;
	}
	.facility_info_bottun_box{
		display: block;
	}
	.facility_info_bottun_box p{
	width: 90%;
	}
	.facility_info_bottun{
		width: 70%;
		margin: 1em auto;
	}
}


.facility_info_txt .section-title1{
    text-align: left;
    font-size: clamp(1.5rem, 1.36rem + 0.7vw, 2.2rem);
    letter-spacing: 1px;
}
.facility_info_txt p{
    font-size:clamp(0.938rem, 0.9rem + 0.19vw, 1.125rem)
}

/*features--------------------------------------*/

.content_wrap_featureread{
	text-align: center;
	margin: 3em auto 5em;
	width: 80%;
}
@media (min-width:768px){
    .content_wrap_featureread{
        margin: 10em auto 5em;
    }
}
.doubule_wrap{
	width: 80%;
	margin: 0 auto;
	padding: 1.5em 0;
	background-color: #FFFAF2;
	position: relative;
	
}
.doubule_line{
	width: 96%;
	margin: 0 auto;
	border: 1px solid #113C64; /* 内側の線 */
  box-shadow: 0 0 0 9px #FFFAF2, 0 0 0 10px #113C64;
}
.titleimg_01{
	width: 100px;
	position: absolute;
	top: -10px;
	left: 3%;
}
.titleimg_02{
	width: 100px;
	position: absolute;
	top:50px;
	right: 7%;
}
.medical_box{
	display: flex;
	justify-content: space-between;
	width: 90%;
	margin: 6em auto;
	align-items: center;
}
.medical_box h3{
	margin-bottom: 1em;
}
.medical_box_item_txt{
	width: 66%
}

.medical_box_item_img{
	width: 30%
}
.medical_box_line{
	width: 90%;
	border-bottom: solid 1px #113C64;
	margin: 5em auto;
}

.link_bottun{
	width: 20em;
}
.medical_box_item_txt_under{
	margin-bottom: 1em
}
.dental_box{
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.dental_box_item{
	width: 48%;
	border: solid 1px #99B0C6;
	padding: 1.3em;
}
.dental_box_item_title{
	margin-bottom: 1em;
}

.features_wrap{
	width: 80%;
}
.features_doctor{
	margin: 2em 0;
}

.doctor_box{
	width: 100%;
	display: flex;
	justify-content:space-between;
	margin-bottom: 8em;
}
.doctor_item{
	width: 28%;
	text-align: center;
}
.doctor_name{
	background-color: #113C64;
	color: #fff;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", sans-serif;
	width: 13em;
	padding: .5em;
	border-radius: 3px;
	margin: 1em auto;
}
.doctor_txt{
	text-align: left;
	display: inline-block;
}
.features_other_wrap{
	width: 100svw;
	margin: 0 auto 12em;
	position: relative;
	
}
.features_other{
	width: 80%;
	margin: 0 auto;
}
.other_box_01{
	width: 100%;
	display: flex;
	justify-content:center;
    gap:50px;
    flex-wrap: wrap
}
.other_box_02{
	width: 100%;
	display: flex;
	justify-content:space-around
}
.other_item{
	width: calc((100% / 3) - 50px);
	margin: 3em 0;
}
.other_item img{
    width: 100%;
    height: auto;
}
.other_title{
	color: #113C64;
	margin: 1em 0;
    font-size: 1.5em
}
.other_item p{
    color: var(--page-black);
    font-size: 16px;
    line-height: 2
}
.features_wrap_bg{
	width: 100svw;
	display: flex;
	justify-content: space-between;
}
.features_wrap_bg img{
	width: 18%;
	z-index: -1;
	position: absolute;
	bottom:0px;
}
.features_wrap_bg_l{
	left: 15px;
}
.features_wrap_bg_r{
	right: 35px;
}


@media (max-width: 999px) {
	.medical_box{
		display: block;
	}
	.medical_box_item{
		width: 90%;
		margin: 2em auto;
	}
	.doctor_box{
		
		display: block;
	}
	.doctor_item{
		
		width: 70%;
		margin: 2em auto 6em;
	}
	.doctor_item img{
		
		width: 80%;
	}
	.other_box_01,.other_box_02{
		display: block;
		
	}
	.other_item{
		
		width:95%;
		margin: 2em auto 4em;
	}
	.other_item img{
		
		width:95%;
	}
	.features_wrap_bg {
		justify-content: space-around;
		margin-top: 7em;
	}
	.features_wrap_bg img{
		width: 25%;
		margin-bottom: -6em;
		min-width: 150px
	}
}





.features_read{
    font-size: clamp(0.875rem, 0.838rem + 0.19vw, 1.063rem);
    line-height: 2.2;
    text-align: left
}
@media (min-width:668px){
    .features_read{
        text-align: center
    }
}

.medical_box_item h3{
    font-size: clamp(1.4rem, 1.28rem + 0.6vw, 2rem)
}


/*diary--------------------------------------*/

.schedule_box{
	width: 85%;
	margin: 4em auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.schedule_item{
	width: 30%;
	margin: 2em 0 3em;
}
.schedule_item_title_box{
	display: flex;
	width: 100%;
	align-items: center;
	margin: 1.5em 0 1em;
}
.schedule_item_title_box h3{
    font-size: 1.6em
}
.schedule_item_txt{
	color: #0B1D2E;
    line-height: 2;
    font-size: 1em;
}
.schedule_item_title{
	margin-right: .5em;
}
.event_wrap{
	width: 100svw;
	padding: 2em 0;
	background-color: #FFFAF2;
}
.event_swiper{
	margin: 2em auto;
	width: 100%;
}


.slide-animation {
  display: flex;
  overflow: hidden;
}

.slide-animation .slide-contents {
  margin: 0;
  padding: 0 10px 0 0;
  display: flex;
  gap: 10px;
  animation: loopAnimation 24s linear infinite;
}

.slide-animation .slide-contents li {
  width: 350px;
  list-style: none;
}

.slide-animation .slide-contents li img {
  width: 100%;
}

@keyframes loopAnimation {
  0% {
    transform: translate(0%);
  }

  100% {
    transform: translate(-100%);
  }
}

.eventschedule{
	margin: 4em 0 8em;
	
}
.event_box{
	width: 60%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	
}
.event_item_mounth{
	color: #0B1D2E;
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	font-style: normal;
	width: 15%;
	text-align: center;
	padding: .3em;
	border: solid .5px #EDEDED;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.event_item_mounth_sp{
	background-color: #EDD5D0
		
}
.event_item_txt{
	width: 85%;
	padding: 1em;
	padding-left: 2em;
	border: solid .5px #EDEDED;
}
.event_item_mounth_sm{
	background-color: #C0D9B2
		
}
.event_item_mounth_ou{
	background-color: #EED79D
		
}
.event_item_mounth_wt{
	background-color: #D5E0E3
		
}
@media (max-width: 999px) {
	.schedule_box{
		display: block;
		width: 90%;
	}
	.schedule_item{
		width: 100%;
		margin: 3em auto;
	}
	.event_box{
		width: 90%;
	}
	.event_item_mounth{
		width: 25%;
	}
	.event_item_txt{
		
		width: 75%;
	}
	
}
/*admission--------------------------------------*/

.outline_container{
	width: 70%;
	margin: 5em auto;
	display: flex;
	justify-content: space-between;
}
.outline_img{
	width: 40%;
}
.outline_img img{margin-bottom: .5em;
}
.outline_item{
	width: 55%;
}
.outline_item_box{
	display: flex;
	justify-content: space-between;
	border-bottom: solid 1px #C9D2DB;
	padding: 2em 1em;
}
.outline_item_box_none{
	display: flex;
	justify-content: space-between;
	padding: 2em 1em;
}
.outline_item_box_title{
	width: 20%;
	color: #113C64;
}
.outline_item_box_txt{
	width: 80%;
	color: #0B1D2E;
}
.outline_item_box_txt_s{
	color: #0B1D2E;
	margin-bottom: 2em;
}

.flow_container{
	width: 90%;
	margin: 1em auto;
	display: flex;
	justify-content: space-between;
}
.flow_mounth{
	width: 15%;
	text-align: center;
	align-content: center;
	
}

.flow_mounth_blue{
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: #113C64;
	margin-right: 1em;
	text-align: center;
	align-content: center;
}
.flow_mounth_blue p{
	color: #fff;
	
}
.flow_box{
	width: 94%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	padding: 1em 2em;
}
.flow_box_txt{
	color: #0B1D2E;
	width: 70%;
}
.flow_box_title{
	width: 30%;
	color: #315773!important;
	font-family: "Shippori Mincho", serif!important;
	font-weight: 400;
	font-style: normal;
}

.flow_mounth_blue_none{
	background-color: #FFFAF2;
}
.flow_container_lu{
	margin-bottom: 5em;
}
.step {
  position: relative;
  padding-bottom: 40px;
}

/* 縦線の描画 */
.step:not(:last-child)::before {
  position: absolute;
  top: 0;
  left: 25px;
  width: 3px;
  height: 100%;
  content: "";
  background-color: #e5e9f0;
}

@media (max-width: 999px) {
	
	.outline_container{
		display: block;
		width: 90%;
		
	}
	.outline_img{
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin: 1em auto;
	}
	.outline_img img{
		width: 48%;
	}
.outline_item{
	width: 100%;
}
	.outline_item_box_title{
		
	width: 20%;
	}
	.outline_item_box_txt{
		width: 65%;
	}
	.flow_container{
		width: 95%;
	}
	.flow_box{
		display: block;
		width: 90%;
		
	}
	.flow_box_txt,.flow_box_title{
		width: 100%
	}
	.flow_mounth_blue{
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: #113C64;
	margin-right: 1em;
	text-align: center;
	align-content: center;
}
	
.flow_mounth_blue_none{
	background-color: #FFFAF2;
}
	.titleimg_01{
		width: 70px;
	}
	.titleimg_02{
		width: 60px;
		margin-top: -20px;
	}
}

/*support--------------------------------------*/

.service_container{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.service_box{
	width: 30%;
	text-align: left;
	margin-bottom: 2em;
    display: flex;
	flex-direction: column;
}
.service_box h3{
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 1em 0;
    font-weight: bold
}
.service_box > p{
    margin-bottom: 2em
}
.link_bottun_service{
	margin:1.5em auto;
	width: 80%;
    margin-top: auto;
}


@media (max-width: 999px) {
	.service_container{
		display: block;
	}
	.service_box{
		width: 95%;
		margin-bottom: 8em;
	}
	.pc_wrap{width: 90%}
}

/*sick_childcare--------------------------------------*/


.sick-heading {
    margin-bottom: 42px;
    color: var(--page-main-color);
    text-align: center;
}

.sick-heading p {
    margin-bottom: 7px;
    color: inherit;
    font: italic 16px/1.4 var(--en-font), Georgia, serif;
}

.sick-heading h2 {
    margin-bottom: 0;
    color: inherit;
    font: 500 29px/1.5 var(--font-mincho);
    letter-spacing: .08em;
}

@media (min-width: 701px) {
   .sick-heading {
        margin-bottom: 65px;
    }

   .sick-heading h2 {
        font-size: clamp(32px, 2.6vw, 42px);
    }
}



/* 子育て支援ページ共通ヒーロー */
.support-hero {
    position: relative;
    overflow: hidden;
    padding: 55px 0 70px;
    background-color: #fff;
}

/* 写真より前に表示する下部の草・葉 */
.support-hero::after {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 0;
    left: 0;
    height: 70px;
    background-image: url("../img/common/grass.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    background-size: auto 70px;
    content: "";
    pointer-events: none;
}

.support-hero__inner {
    position: relative;
    width: min(1440px, 100%);
    margin-inline: auto;
}

.support-hero__copy {
    position: relative;
    z-index: 2;
    width: calc(100% - 40px);
    margin: 0 auto 38px;
}

.support-hero__eyebrow {
    margin: 0 0 26px;
    color: var(--page-main-color);
    font-size: 1.8em;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .08em;
}

.support-hero__title {
    margin: 0 0 30px;
    color: var(--page-main-color);
    font-family: var(--font-mincho);
    font-size: clamp(34px, 8vw, 47px);
    font-weight: 500;
    line-height: 1.65;
    letter-spacing: .1em;
}

.support-hero__text {
    max-width: 560px;
    margin: 0;
    color: var(--page-black);
    font-size: 15px;
    line-height: 2.2;
    letter-spacing: .025em;
}

.support-hero__photo {
    position: relative;
    z-index: 1;
}

.support-hero__photo img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1.55;
    border-radius: 85px 0 0 0;
    object-fit: cover;
}

/* 木は草・葉より前面 */
.support-hero__tree {
    position: absolute;
    z-index: 4;
    bottom: 38px;
    left: -15px;
    display: block;
    width: 130px;
    height: auto;
    pointer-events: none;
}

@media (min-width: 701px) {
    .support-hero {
        padding: 100px 0 50px;
    }

    .support-hero::after {
        height: 100px;
        background-size: auto 100px;
    }

    .support-hero__inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 4%;
    }

    .support-hero__copy {
        width: 88%;
        margin: 0 0 0 auto;
        padding-bottom: 35px;
    }

    .support-hero__photo {
        align-self: stretch;
    }

    .support-hero__photo img {
        height: 100%;
        min-height: 500px;
        aspect-ratio: 1.28;
        border-radius: 145px 0 0 0;
    }

    .support-hero__tree {
        bottom: 45px;
        width: clamp(150px, 16vw, 240px);
    }
}

@media (min-width: 1001px) {
    .support-hero {
        padding-top: 125px;
    }

    .support-hero__inner {
        grid-template-columns: 47% 53%;
        gap: 30px;
    }

    .support-hero__copy {
        width: 78%;
    }
}






/***********************************************************
   privacy
************************************************************/
.privacy_wrap{
    margin: 5em auto}
.privacy_wrap h2{
	font-size: 1.5em;
	margin-bottom: 1em;
	font-weight: bold;
	text-align: center
}
.privacy_wrap > p{
	margin-bottom: 2em;
    color: var(--page-black)
}


.privacy_wrap p,
.privacy_wrap dd{
	font-size: 1em;
	font-weight: 400;
	line-height: 2;
    color: var(--page-black)
}
.privacy_wrap dt{
	font-weight: bold;
	font-size: 1.4em;
	letter-spacing: 1px;
	margin-bottom: .5em;color: var(--color-green);
    color: var(--page-black)
}

.privacy_wrap dl{
	border-bottom: solid 1px #eee;
	padding: 1em 0;
	margin-bottom: 2em;
}
.privacy_wrap dd h4{font-weight: bold;}

.privacy_wrap ul,
.privacy_wrap ol{
	margin: 1em auto;
	padding-left: 2em
}
.privacy_wrap li{
	list-style: disc;
	margin-bottom: .5em
}
.privacy_wrap ol li{list-style: decimal}

@media screen and (max-width:768px){
	#page_privacy p,
	#page_privacy dd{font-size: 15px;}
}



