@charset "UTF-8";



/*メインイメージ
---------------------------------------------------------*/
.m_img_area,
.m_img_area .m_img .swiper-slide {
	width: 100%;
	height: 100vh;	/*画面ピッタリにしないのでCSSで適当に調整*/
	max-height: 970px;
}
.m_img_area .m_img {
	position: absolute;
	z-index: 0;
	width: 100%;
	left: 0;
	top: 0;
}
.m_img_area .m_img .m_photo {
	position: absolute;
	z-index: 0;
}
.m_img_area .m_img .m_copy {
	position: absolute;
	z-index: 2;
}
.m_img_area .m_img .m_obj1 li {
	z-index: 1;
}
.m_img_area .m_img .m_obj2 li {
	position: absolute;
	z-index: 3;
}

/*スライドショーのベースレイアウト*/
.m_img_area .m_img .m_photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.m_img_area .m_img .m_copy {
	width: min(50%,80vh);
	max-width: 680px;
	left: 10%;
	bottom: 5%;
}
.m_img_area .m_obj1 li:nth-child(4) {
	left: 4.5%;	/*左下ベージュ*/
	bottom: 0;
	transform: translate(0%,55%);
}
.m_img_area .m_obj1 li:nth-child(5) {
	right: 0;	/*右下オレンジ*/
	bottom: 0;
	transform: translate(50%,110%);
}
.m_img_area .m_img .m_obj2 li:nth-child(1) {
	width: min(9%,12vh);	/*鳥*/
	max-width: 123px;
	left: 22%;
	top: 30%;
}
.m_img_area .m_img .m_obj2 li:nth-child(2) {
	width: min(10%,14vh);	/*枝*/
	max-width: 133px;
	left: 0;
	bottom: 1%;
	transform: translateX(-18%);
}

/*スライドショー：タイプ1*/
.m_img_area .m_img .slide1 .m_photo {
	width: 80%;
	height: 93%;
	right: 0;
	bottom: 0;
	transform: translate(5%,17%);
	/*★★★ローカル作業時はマスクCSSをコメントアウトして「overflow: hidden;」を有効にする★★★*/
	mask-image: url("../images/top/m_mask@2x.png");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	-webkit-mask-image: url("../images/top/m_mask@2x.png");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	/*overflow: hidden;*/
}

/*スライドショー：タイプ2*/
.m_img_area .m_img .slide2 .m_photo {
	width: 60%;
	aspect-ratio: 900 / 600;
	left: 50%;
	top: 50%;
	transform: translate(-45%,-45%);
	/*★★★ローカル作業時はマスクCSSをコメントアウトして「overflow: hidden;」を有効にする★★★*/
	mask-image: url("../images/top/m_mask2@2x.png");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	-webkit-mask-image: url("../images/top/m_mask2@2x.png");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	/*overflow: hidden;*/
}
.m_img_area .m_img .slide2 .m_photo2 {
	width: 38%;
	max-width: 570px;
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translate(15%,38%);
}
.m_img_area .slide2 .m_obj1 li:nth-child(5) {
	right: 0;	/*右下オレンジ*/
	bottom: 50%;
	transform: translate(53%,53%);
}

/*スライドショー：タイプ3*/
.m_img_area .m_img .slide3 .m_photo {
	width: 107%;
	height: 120%;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-45%);
	/*★★★ローカル作業時はマスクCSSをコメントアウトして「overflow: hidden;」を有効にする★★★*/
	mask-image: url("../images/top/m_mask3@2x.png");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	-webkit-mask-image: url("../images/top/m_mask3@2x.png");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	/*overflow: hidden;*/
}
.m_img_area .m_img .slide3 .m_photo::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 50%;
	left: 0;
	top: 0;
	background: #FFFFFF;
	background: linear-gradient(0deg,rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
}
.m_img_area .m_img .slide3 .m_obj1 li:nth-child(3) {
	display: none;	/*左中オレンジ*/
}
.m_img_area .m_img .slide3 .m_obj2 li:nth-child(1) {
	display: none;	/*鳥*/
}

.m_img_area .m_obj1 li span {
	display: block;
	transform: scale(0.8);
	opacity: 0;
	transition: all 1.5s cubic-bezier(0.33, 1, 0.68, 1);
}
.m_img_area .m_obj1 li:nth-child(1) span,
.m_img_area .m_obj1 li:nth-child(4) span {
	transition-delay: 0.2s;
}
.m_img_area .m_obj1 li:nth-child(2) span {
	transition-delay: 0.4s;
}
.m_img_area.anime_on .m_obj1 li span {
	display: block;
	transform: scale(1.0);
	opacity: 1;
}

.m_img_area .m_img .m_copy p {
	opacity: 0;
	transform: scale(0.95);
	transition: 1.2s 0.8s ease-out;
}
.m_img_area.anime_on .m_img .m_copy p {
	opacity: 1;
	transform: scale(1.0);
}

.m_img_area .m_img .m_obj2 li:nth-child(1) span {
	display: block;
	animation: bird 8s infinite;
}
@keyframes bird {
0% {
	transform: translateY(0%);
}
30% {
	transform: translateY(20%);
}
60% {
	transform: translateY(0%);
}
100% {
	transform: translateY(0%);
}
}

/*.m_img_area .m_img .m_obj1 li:nth-child(1) span {
	display: block;
	animation: fuwafuwa1 8s linear infinite alternate-reverse;
}
.m_img_area .m_img .m_obj1 li:nth-child(2) span {
	display: block;
	animation: fuwafuwa2 10s linear infinite alternate-reverse;
}
.m_img_area .m_img .m_obj1 li:nth-child(3) span {
	display: block;
	animation: fuwafuwa2 12s linear infinite alternate;
}
.m_img_area .m_img .m_obj1 li:nth-child(4) span {
	display: block;
	animation: fuwafuwa1 10s linear infinite alternate;
}
.m_img_area .m_img .m_obj1 li:nth-child(5) span {
	display: block;
	animation: fuwafuwa2 8s linear infinite alternate-reverse;
}
@keyframes fuwafuwa1 {
0% {
	transform: translate(0%,0%) rotate(0deg);
}
100% {
	transform: translate(10%,10%) rotate(30deg);
}
}
@keyframes fuwafuwa2 {
0% {
	transform: translateY(0%);
}
100% {
	transform: translateY(10%);
}
}*/


/* 画面高さ：900px以下
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-height: 900px) {
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_img_area,
.m_img_area .m_img .swiper-slide {
	height: 80vh;	/*画面ピッタリにしないのでCSSで適当に調整*/
}
/*スライドショーのベースレイアウト*/
.m_img_area .m_img .m_copy {
	width: 55%;
	left: 5%;
	bottom: 15%;
}
/*スライドショー：タイプ1*/
.m_img_area .m_img .slide1 .m_photo {
	width: 95%;
	height: 75%;
	right: 0;
	bottom: 5%;
	transform: translate(5%,0%);
}
/*スライドショー：タイプ2*/
.m_img_area .m_img .slide2 .m_photo {
	width: 75%;
	aspect-ratio: 900 / 800;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-40%);
}
.m_img_area .m_img .slide2 .m_photo2 {
	width: 45%;
	transform: translate(15%,30%);
}
.m_img_area .slide2 .m_obj1 li:nth-child(5) {
	right: 0;	/*右下オレンジ*/
	bottom: 50%;
	transform: translate(53%,53%);
}

/*スライドショー：タイプ3*/
.m_img_area .m_img .slide3 .m_photo {
	width: 107%;
	height: 110%;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-45%);
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {	
.m_img_area .m_obj1 li:nth-child(4) {
	left: 0;
	bottom: 0;
	transform: translate(-55%,5%);
}
.m_img_area .m_obj1 li:nth-child(5) {
	right: 0;
	bottom: 0;
	transform: translate(60%,10%);
}
}

/* 縦向きの場合
------------------------------------------*/
@media only screen and (max-width: 767px) and (orientation: portrait) {
.m_img_area,
.m_img_area .m_img .swiper-slide {
	height: 135vw;
	max-height: 135vw;
}
.m_img_area .m_img .m_copy {
	width: 85%;
	left: 5%;
	bottom: 0;
	transform: translateY(5%);
}
.m_img_area .m_obj1 li:nth-child(3) {
	z-index: -1;
}
.m_img_area .m_img .m_obj2 li:nth-child(1) {
	width: 17%;
	left: auto;
	right: 13%;
	top: 14%;
	transform: none;
}
.m_img_area .m_img .m_obj2 li:nth-child(2) {
	display: none;
}

/*スライドショー：タイプ1*/
.m_img_area .m_img .slide1 .m_photo {
	width: 106%;
	height: 60%;
	right: 50%;
	bottom: 50%;
	transform: translate(50%,65%);
}
/*スライドショー：タイプ2*/
.m_img_area .m_img .slide2 .m_photo {
	width: 85%;
	left: 0;
	top: 28%;
	transform: translate(-5%,0%);
}
.m_img_area .m_img .slide2 .m_photo2 {
	width: 50%;
	right: 0;
	bottom: 8%;
	transform: translate(10%,0%);
}
.m_img_area .slide2 .m_obj1 li:nth-child(5) {
	right: 0;	/*右下オレンジ*/
	bottom: 45%;
	transform: translate(65%,0%);
}
/*スライドショー：タイプ3*/
.m_img_area .m_img .slide3 .m_photo {
	width: 150%;
	height: 82%;
	left: 50%;
	top: 3%;
	transform: translate(-50%,0%);
}
}



/*スマホメニュー
---------------------------------------------------------*/
.sp_menu_area .sp_menu_btn {
	width: 100%;
	padding: 6% 0 10%;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	text-align: left;
}
.sp_menu_area .sp_menu_btn > li {
	width: 48%;
	box-sizing: border-box;
}
.sp_menu_area .sp_menu_btn li.col_left {
	padding-left: 5%;
}
.sp_menu_area .sp_menu_btn li.col_right {
	padding-right: 5%;
}
.sp_menu_area .sp_menu_btn li.sp_inmenu {
	display: none;
	width: 100%;
	box-sizing: border-box;
	padding: 6% 5%;
	background: #F5F2E8;
}
.sp_menu_area .sp_menu_btn > li > a,
.sp_menu_area .sp_menu_btn > li > span {
	display: block;
	padding: .7em 0;
	padding-left: 1.8em;
	border-bottom: solid 1px #ccc;
	font-size: 105%;
	position: relative;
}
.sp_menu_area .sp_menu_btn > li > a::before,
.sp_menu_area .sp_menu_btn > li > span::before {
	content: "";
	position: absolute;
	width: 1.2em;
	height: 1.2em;
	background: #E69300 url("../images/arrow1@2x.png") no-repeat center center;
	background-size: contain;
	border-radius: 50%;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.sp_menu_area .sp_menu_btn li.ord_5 {order: 5;}
.sp_menu_area .sp_menu_btn li.ord_6 {order: 6;}
.sp_menu_area .sp_menu_btn li.ord_7 {order: 7;}
.sp_menu_area .sp_menu_btn li.ord_8 {order: 8;}
.sp_menu_area .sp_menu_btn li.ord_9 {order: 9;}



/*トップページ共通
---------------------------------------------------------*/
/*お知らせ・ブログ：トップ共通*/
.top_news_blog .title_box {
	display: flex;
    align-items: center;
    flex-wrap: wrap;
	margin-bottom: 10px;
}
.top_news_blog .title_box .com_info_index {
	margin-right: 1.0em;
}
.top_news_blog .post_list > li {
	padding: 1.5em 0;
	border-bottom: dotted 2px #000;
}
.top_news_blog .post_list > li:last-child {
	padding-bottom: 0;
	border-bottom: none;
}
.top_news_blog .post_list dl {
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
	padding-left: 0;
	padding-right: 3%;
	transition: all 0.8s;
}
.top_news_blog .post_list li:hover dl {
	transition: all 0.4s;
	padding-left: 3%;
	padding-right: 0;
}
.top_news_blog .post_list dt {
	width: 130px;
	color: #E69300;
	letter-spacing: .1em;
	line-height: 1.4em;
	padding-top: .2em;
}
.top_news_blog .post_list dd {
	width: calc(100% - 130px);
	color: #000;
	font-size: 105%;
	letter-spacing: .2em;
	line-height: 1.6em;
}
.top_news_blog .post_list li:hover dd {
	color: #E69300;
}
.top_news_blog .post_list .fs15 {
	margin-top: 1.0em;
	line-height: 1.6em;
}

/*インデックス*/
.top_index1 {
	color: #000;
}
.top_index1 .ft_hero_m {
	font-size: min(410%,5.4vw);
	letter-spacing: .25em;
	line-height: 1.4em;
}
.top_index1 .ft_hero_m span {
	display: inline-block;
}
.top_index1 .ft_hero_m .txt_poit {
	color: transparent;
	position: relative;
}
.top_index1 .ft_hero_m .txt_poit::before {
	font-family: 'fontello';
	content: '\e808';
	color: #6FC14F;
	font-size: 90%;
	font-weight: normal;
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;
	transform: translate(-3%,-55%);
}
.top_index1 .ft_zen_m {
	font-size: 105%;
	letter-spacing: .2em;
	line-height: 1.6em;
	opacity: 0;
	transition: all 0.8s 1.0s ease-in-out;
}
.top_index1 .ft_hero_m span {
	transform: translateY(-50%);
	opacity: 0;
	transition: all 0.8s ease-in-out;
}
.top_index1 .ft_hero_m span:nth-child(2) {transition-delay: 0.1s;}
.top_index1 .ft_hero_m span:nth-child(3) {transition-delay: 0.2s;}
.top_index1 .ft_hero_m span:nth-child(4) {transition-delay: 0.3s;}
.top_index1 .ft_hero_m span:nth-child(5) {transition-delay: 0.4s;}
.top_index1 .ft_hero_m span:nth-child(6) {transition-delay: 0.5s;}
.top_index1 .ft_hero_m span:nth-child(7) {transition-delay: 0.6s;}
.top_index1 .ft_hero_m span:nth-child(8) {transition-delay: 0.7s;}
.top_index1 .ft_hero_m span:nth-child(9) {transition-delay: 0.8s;}
.top_index1 .ft_hero_m span:nth-child(10) {transition-delay: 0.9s;}
.top_index1.anime_on .ft_hero_m span {
	transform: translateY(0%);
	opacity: 1;
}
.top_index1.anime_on .ft_zen_m {
	opacity: 1;
}

/*テキストカラーアニメーション*/
.anm_orange,
.anm_green {
	transition: color 0.8s ease-out;
}
.anime_on .anm_orange {color: #E69300;}
.anime_on .anm_green {color: #6FC14F;}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
/*お知らせ・ブログ：トップ共通*/
.top_news_blog .title_box {
	margin-bottom: 0;
}
.top_news_blog .title_box .com_info_index {
	margin-right: .6em;
}
.top_news_blog .post_list > li {
	padding: 1.5em 0;
}
.top_news_blog .post_list dl {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.top_news_blog .post_list dt {
	width: 110px;
	letter-spacing: .1em;
}
.top_news_blog .post_list dd {
	width: calc(100% - 110px);
	letter-spacing: .1em;
}
.top_news_blog .post_list .fs15 {
	margin-top: .5em;
}

/*インデックス*/
.top_index1 .ft_zen_m {
	letter-spacing: .15em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/*お知らせ・ブログ：トップ共通*/
.top_news_blog .title_box {
	margin-bottom: 0;
}
.top_news_blog .post_list > li {
	padding: 1.2em 0;
}
.top_news_blog .post_list dl {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.top_news_blog .post_list dt {
	width: 30%;
	letter-spacing: .05em;
	padding-top: .2em;
}
.top_news_blog .post_list dd {
	width: 70%;
	letter-spacing: .1em;
}
.top_news_blog .post_list .fs15 {
	margin-top: .5em;
	line-height: 1.6em;
}

/*インデックス*/
.top_index1 .ft_hero_m {
	font-size: 280%;
	letter-spacing: .2em;
}
.top_index1 .ft_zen_m {
	font-size: 100%;
	letter-spacing: .1em;
	line-height: 1.6em;
}
}



/*top_news
---------------------------------------------------------*/
.top_news {
	position: relative;
	z-index: 5;
	margin-bottom: 60px;
}
.top_news .flex_box {
	display: flex;
    justify-content: space-between;
}
.top_news .box_l {
	width: 50%;
	max-width: 600px;
	padding-top: 2%;
}
.top_news .box_r {
	width: 47%;
	max-width: 510px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_news {
	margin-bottom: 12%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_news {
	margin-bottom: 14%;
}
.top_news .flex_box {
	display: block;
}
.top_news .box_l {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0 5%;	/*カレンダーと幅を揃える*/
	margin-bottom: 4%;
}
.top_news .box_r {
	width: 100%;
	max-width: 100%;
}
}



/*top_kodawari
---------------------------------------------------------*/
.top_kodawari {
	position: relative;
	margin-bottom: 120px;
}
.top_kodawari::before {
	content: "";
	position: absolute;
	z-index: -1;
	width: 100%;
	height: calc(100% - 50px);
	left: 0;
	bottom: 0;
	background: #F8F7F0;
	border-top-left-radius: 200px;	/*com_radius_tl_200と揃える*/
}

.top_kodawari .lead_box {
	position: relative;
	z-index: 0;
}
.top_kodawari .slide_box .kodawari_slider {
	position: relative;
	z-index: 1;
}
.top_kodawari .kodawari01 {
	position: relative;
	z-index: 2;
}
.top_kodawari .kodawari02 {
	position: relative;
	z-index: 0;
}
.top_kodawari .kodawari03_05 {
	position: relative;
	z-index: 1;
}

.top_kodawari .lead_box {
	margin-bottom: 100px;
}
.top_kodawari .lead_box .in_box {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.top_kodawari .lead_box .top_index1,
.top_kodawari .lead_box .txt_box dt,
.top_kodawari .lead_box .txt_box .txt {
	position: relative;
	z-index: 2;
}
.top_kodawari .lead_box .abs1 li {
	position: absolute;
	z-index: 1;
}
.top_kodawari .lead_box .abs2 li {
	position: absolute;
	z-index: 0;
}

.top_kodawari .lead_box .top_index1 {
	margin-bottom: 40px;
}
.top_kodawari .lead_box .txt_box dt {
	font-size: min(350%,4.8vw);
	letter-spacing: .05em;
	line-height: 1.6em;
	margin-bottom: 1.0em;
}
.top_kodawari .lead_box .txt_box .txt {
	margin-left: 18%;
}
.top_kodawari .lead_box .abs1 li:nth-child(1) {
	width: 27%;
	max-width: 400px;
	left: 0;
	bottom: 0;
	transform: translateX(-25%);
}
.top_kodawari .lead_box .abs1 li:nth-child(2) {
	width: 48%;
	max-width: 710px;
	right: 0;
	top: 0;
	transform: translate(6%,-15%);
}
.top_kodawari .lead_box .abs1 li:nth-child(2) .illust1,
.top_kodawari .lead_box .abs1 li:nth-child(2) .illust2 {
	position: absolute;
	z-index: 1;
}
.top_kodawari .lead_box .abs1 li:nth-child(2) .illust1 {
	width: 18%;
	max-width: 127px;
	left: 0;
	top: 11%;
	transform: translateX(-30%);
}
.top_kodawari .lead_box .abs1 li:nth-child(2) .illust2 {
	width: 21%;
	max-width: 145px;
	right: 13%;
	bottom: 0;
	transform: translateY(90%);
}

.top_kodawari .lead_box .abs2 li:nth-child(1) {
	width: 35%;
	max-width: 520px;
	left: 40%;
	bottom: 0;
	transform: translateY(45%);
}
.top_kodawari .lead_box .abs2 li:nth-child(2) {
	width: 25%;
	max-width: 370px;
	right: 0;
	bottom: 0;
	transform: translate(13%,80%);
}

.top_kodawari .slide_box {
	position: relative;
}
.top_kodawari .slide_box .swiper-slide {
	width: 50vw;
	max-width: 660px;
}
.top_kodawari .slide_box .slide_arrow > div {
	position: absolute;
	z-index: 5;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	text-align: center;
	color: #544337;
	font-size: min(200%,3.0vw);
	letter-spacing: normal;
	line-height: 2.5em;
	width: 2.4em;
	background: #fff;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.2);
	border-radius: 3.0em;
	transition: all 0.8s;
}
.top_kodawari .slide_box .slide_arrow > div:hover {
	transition: all 0.4s;
	background: #FFEE93;
}
.top_kodawari .slide_box .slide_arrow i {
	display: block;
}
.top_kodawari .slide_box .slide_arrow .swiper-button-prev {
	left: -.4em;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
.top_kodawari .slide_box .slide_arrow .swiper-button-prev i {
	transform: rotate(180deg);
}
.top_kodawari .slide_box .slide_arrow .swiper-button-prev:hover {
	left: 0;
}
.top_kodawari .slide_box .slide_arrow .swiper-button-next {
	right: -.4em;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.top_kodawari .slide_box .slide_arrow .swiper-button-next:hover {
	right: 0;
}

.top_kodawari .com_link1 {
	margin-top: 30px;
	text-align: right;
}
.koda_width .no {
	width: 13vw;
	max-width: 180px;
	position: relative;
}
.koda_width .no p {
	position: relative;
	z-index: 1;
}
.koda_width .no div {
	position: absolute;
	z-index: 0;
	margin: auto;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: 161%;
	max-width: 290px;
}
.koda_width .mask-path1 {
	stroke-dasharray: 270;
	stroke-dashoffset: 0;
}
.koda_width .anime_on .mask-path1 {
	animation: draw_line1 0.8s ease-out forwards;
}
@keyframes draw_line1 {
to {
	stroke-dashoffset: 270;
}
}
.koda_width h3 {
	color: #000;
	font-size: min(350%,4.8vw);
	letter-spacing: .1em;
	line-height: 1.3em;	
	margin-bottom: .6em;
}

.kodawari01 {
	padding-top: 100px;
	margin-bottom: 170px;
}
.kodawari01 .no {
	position: absolute;
	z-index: 1;
	top: 0;
	transform: translateY(-40%);
}
.kodawari01 .flt_box .txt_box {
	float: left;
	width: 47.5%;
	max-width: 570px;
}
.kodawari01 .flt_box .img_box {
	float: right;
	width: 50%;
	max-width: 580px;
	position: relative;
	padding-top: 1%;
}
.kodawari01 .flt_box .img_box ul {
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.kodawari01 .flt_box .img_box ul li {
	width: 32%;
	max-width: 180px;
}
.kodawari01 .flt_box .img_box .abs {
	width: 43.5%;
	max-width: 252px;
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.kodawari02 {
	margin-bottom: 100px;
}
.kodawari02 .img_box {
	width: 50%;
	max-width: 750px;
	position: absolute;
	z-index: 0;
	left: 0;
	top: 0;
	transform: translateX(-7%);
}
.kodawari02 .txt_box {
	width: 49%;
	max-width: 570px;
	position: relative;
	z-index: 1;
	margin-left: auto;
	margin-right: 0;
	padding-top: 80px;
}
.kodawari02 .no {
	position: absolute;
	z-index: 5;
	top: 0;
	transform: translateY(-50%);
}
.kodawari02 .kakko_l {
	margin-left: -.5em;
}
.kodawari02 .kakko_r {
	margin-right: -.5em;
}
.kodawari02 .img_box .abs1 {
	width: 28%;
	max-width: 180px;
	position: absolute;
	z-index: 2;
	left: 17%;
	top: 0;
	transform: translateY(-35%);
}
.kodawari02 .img_box .abs2 {
	width: 35%;
	max-width: 260px;
	position: absolute;
	z-index: 1;
	left: 37%;
	top: 0;
	transform: translateY(-20%);
}
.kodawari02 .abs_bg li {
	position: absolute;
	z-index: -1;
}
.kodawari02 .abs_bg li:nth-child(1) {
	width: 25%;
	max-width: 370px;
	right: 0;
	bottom: 20%;
	transform: translateX(50%);
}
.kodawari02 .abs_bg li:nth-child(2) {
	width: 48%;
	max-width: 710px;
	right: 0;
	bottom: 0;
	transform: translate(5%,60%);
}

.kodawari03_05 {
	padding-bottom: 100px;
}
.kodawari03_05 .item_list {
	width: 100%;
	max-width: 1390px;
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
	position: relative;
	z-index: 1;
}
.kodawari03_05 .item_list li {
	width: 32%;
	max-width: 430px;
	position: relative;
}
.kodawari03_05 .item_list li:nth-child(2) {
	margin-top: 70px;
}
.kodawari03_05 .item_list li:nth-child(3) {
	margin-top: 140px;
}
.kodawari03_05 .no {
	width: 9vw;
	max-width: 130px;
	position: absolute;
	z-index: 1;
	left: 3%;
	top: 0%;
	transform: translateY(-95%);
}
.kodawari03_05 .no p {
	position: relative;
	z-index: 1;
}
.kodawari03_05 .no div {
	position: absolute;
	z-index: 0;
	margin: auto;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: 154%;
	max-width: 200px;
}
.kodawari03_05 .mask-path2 {
	stroke-dasharray: 180;
	stroke-dashoffset: 0;
}
.kodawari03_05 .anime_on .mask-path2 {
	animation: draw_line2 0.6s ease-out forwards;
}
@keyframes draw_line2 {
to {
	stroke-dashoffset: 180;
}
}
.kodawari03_05 .img_box {
	position: relative;
	z-index: 0;
}
.kodawari03_05 h3 {
	position: relative;
	z-index: 1;
	color: #000;
	font-size: min(223%,2.6vw);
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-top: -2.6em;
	margin-bottom: .7em;
}
.kodawari03_05 .txt {
	width: 90%;
	max-width: 370px;
	margin-left: auto;
	margin-right: auto;
}
.kodawari03_05 .abs1 {
	width: 48%;
	max-width: 710px;
	position: absolute;
	z-index: -1;
	left: 3%;
	bottom: 0;
	transform: translateY(25%);
}
.kodawari03_05 .abs2 {
	width: 12%;
	max-width: 178px;
	position: absolute;
	z-index: 0;
	left: 4%;
	bottom: 0;
	transform: translateY(30%);
}
.kodawari03_05 .abs2 li:nth-child(1) {
	width: 74%;
	max-width: 130px;
	position: absolute;
	left: 0;
	top: 0;
	transform: translate(-53%,-30%);
}
.kodawari03_05 .abs2 li:nth-child(3) {
	width: 50%;
	max-width: 83px;
	position: absolute;
	right: 0;
	bottom: 3%;
	transform: translateX(120%);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_kodawari {
	margin-bottom: 10%;
}
.top_kodawari::before {
	height: calc(100% - 4vw);
	border-top-left-radius: 15vw;	/*com_radius_tl_200と揃える*/
}

.top_kodawari .lead_box {
	margin-bottom: 10%;
}
.top_kodawari .lead_box .top_index1 {
	margin-bottom: 5%;
}
.top_kodawari .lead_box .txt_box dt {
	margin-bottom: 5%;
}
.top_kodawari .lead_box .txt_box .txt {
	margin-left: 25%;
}
.top_kodawari .lead_box .abs1 li:nth-child(1) {
	transform: translateX(-20%);
}

.top_kodawari .com_link1 {
	margin-top: 20px;
}
.koda_width .no {
	width: 15vw;
}
.koda_width h3 {
	letter-spacing: .05em;
	line-height: 1.4em;	
	margin-bottom: .4em;
}

.kodawari01 {
	padding-top: 8%;
	margin-bottom: 12%;
}
.kodawari01 .flt_box .txt_box {
	float: none;
	width: 100%;
	max-width: 100%;
}
.kodawari01 .flt_box .img_box {
	width: 53%;
	padding-top: 1%;
	margin-left: 3%;
	margin-bottom: 1.0em;
}

.kodawari02 {
	margin-bottom: 4%;
}
.kodawari02 .img_box {
	padding-top: 0;
}
.kodawari02 .txt_box {
	padding-top: 0;
}
.kodawari02 .no {
	left: 0;
	top: 0;
	transform: translate(-50%,-100%);
}
.kodawari02 .img_box .abs1 {
	width: 32%;
	left: 17%;
	top: 100%;
	transform: translateY(-35%);
}
.kodawari02 .img_box .abs2 {
	width: 45%;
	left: 45%;
	top: 100%;
	transform: translateY(-20%);
}

.kodawari03_05 {
	padding-bottom: 10%;
}
.kodawari03_05 .no {
	width: 10vw;
}
.kodawari03_05 h3 {
	font-size: 3.2vw;
	letter-spacing: .05em;
	margin-bottom: .4em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_kodawari {
	margin-bottom: 16%;
}
.top_kodawari::before {
	height: calc(100% - 8vw);
	border-top-left-radius: 20vw;	/*com_radius_tl_200と揃える*/
}

.top_kodawari .lead_box {
	margin-bottom: 14%;
}

.top_kodawari .lead_box .top_index1 {
	margin-bottom: 8%;
}
.top_kodawari .lead_box .txt_box dt {
	font-size: 200%;
	line-height: 1.5em;
	margin-bottom: .5em;
}
.top_kodawari .lead_box .txt_box .txt {
	margin-left: 0%;
	margin-right: 20%;
}
.top_kodawari .lead_box .abs1 {
	width: 120%;
	margin-left: -10%;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.top_kodawari .lead_box .abs1 li {
	position: relative;
}
.top_kodawari .lead_box .abs1 li:nth-child(1) {
	width: 35%;
	left: auto;
	bottom: auto;
	transform: none;
}
.top_kodawari .lead_box .abs1 li:nth-child(2) {
	width: 61%;
	right: auto;
	top: auto;
	transform: none;
}

.top_kodawari .lead_box .abs2 li:nth-child(1) {
	width: 60%;
	left: 5%;
	bottom: 0;
	transform: translateY(10%);
}
.top_kodawari .lead_box .abs2 li:nth-child(2) {
	width: 40%;
	right: 0;
	bottom: 12%;
	transform: translate(20%,0);
}

.top_kodawari .slide_box .swiper-slide {
	width: 90vw;
	max-width: 100%;
}
.top_kodawari .slide_box .slide_arrow > div {
	top: 100%;
	transform: translateY(-20%);
	font-size: 110%;
	line-height: 2.5em;
	width: 2.4em;
	border-radius: 3.0em !important;
	transition: all 0.8s;
}
.top_kodawari .slide_box .slide_arrow .swiper-button-prev {
	left: 65% !important;
}
.top_kodawari .slide_box .slide_arrow .swiper-button-next {
	right: 10% !important;
}

.top_kodawari .com_link1 {
	margin-top: .6em;
}
.koda_width .no {
	width: 25vw;
}
.koda_width h3 {
	font-size: 200%;
	letter-spacing: .05em;
	line-height: 1.5em;
	margin-bottom: .3em;
}

.kodawari01 {
	padding-top: 10%;
	margin-bottom: 20%;
}
.kodawari01 .flt_box {
    display: flex;
    align-items: flex-start;
    flex-direction: column-reverse;
}
.kodawari01 .flt_box .txt_box {
	float: none;
	width: 100%;
	max-width: 100%;
}
.kodawari01 .flt_box .img_box {
	float: none;
	width: 108%;
	max-width: 108%;
	margin-left: -4%;
	padding-top: 6%;
}

.kodawari02 {
	margin-bottom: 14%;
}
.kodawari02 .img_box {
	width: 110%;
	position: relative;
	left: auto;
	top: auto;
	transform: translateX(-10%);
}
.kodawari02 .txt_box {
	width: 100%;
	max-width: 100%;
	position: relative;
	z-index: 1;
	margin-left: auto;
	margin-right: 0;
	padding-top: 10%;
}
.kodawari02 .abs_bg li:nth-child(1) {
	width: 35%;
	right: 0;
	bottom: auto;
	top: 62vw;
	transform: translateX(50%);
}
.kodawari02 .abs_bg li:nth-child(2) {
	width: 70%;
	right: 0;
	bottom: 0;
	transform: translate(5%,0%);
}

.kodawari03_05 {
	padding-bottom: 16%;
}
.kodawari03_05 .item_list {
	display: block;
}
.kodawari03_05 .item_list li {
	width: 100%;
	max-width: 100%;
}
.kodawari03_05 .item_list li:nth-child(2),
.kodawari03_05 .item_list li:nth-child(3) {
	margin-top: 12%;
}
.kodawari03_05 .no {
	width: 20vw;
	left: 3%;
	top: 0%;
	transform: translateY(-40%);
}
.kodawari03_05 .img_box {
	width: 80%;
	margin: 0 auto;
}
.kodawari03_05 h3 {
	font-size: 180%;
	letter-spacing: .05em;
	line-height: 1.5em;
	margin-top: -2.0em;
	margin-bottom: .4em;
}
.kodawari03_05 .txt {
	width: 100%;
	max-width: 100%;
}
.kodawari03_05 .abs1 {
	width: 70%;
	left: 3%;
	bottom: 0;
	transform: translate(-20%,15%);
}
.kodawari03_05 .abs2 {
	width: 18%;
	left: 4%;
	bottom: 0;
	transform: translateY(50%);
}
}



/*top_medical
---------------------------------------------------------*/
.top_medical {
	position: relative;
	z-index: 1;
	margin-bottom: 150px;
}
.top_medical .lead_box {
	text-align: center;
	margin-bottom: 50px;
}
.top_medical .lead_box h2 {
	width: 55%;
	margin: 0 auto 30px;
}
.top_medical .lead_box dt {
	font-size: min(235%,3.8vw);
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: .6em;
}

.top_medical .age_box {
	margin-bottom: 100px;
}
.top_medical .age_box .btn_list {
	width: 70%;
	max-width: 720px;
	margin: 0 auto 100px;
	display: flex;
    justify-content: space-between;
	text-align: center;
}
.top_medical .age_box .btn_list li {
	width: 25%;
	background: rgba(255,172,172,0.2);
	color: #FFACAC;
	font-size: min(145%,2.2vw);
	letter-spacing: .2em;
	line-height: 1.5em;
	padding: 1.5em 0;
	border-radius: .8em;
	cursor: pointer;
	position: relative;
	transition: all 0.4s;
}
.top_medical .age_box .btn_list li::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 10px;
	left: 0;
	top: 100%;
	background: url("../images/top/medi_fukidashi1@2x.png") no-repeat 30% center;
	background-size: contain;
	opacity: 0;
	transition: all 0.8s;
}
.top_medical .age_box .btn_list li.thumb-media-active {
	background: rgba(255,172,172,1.0);
	color: #fff !important;
}
.top_medical .age_box .btn_list li.thumb-media-active::before {
	transition: all 0.4s;
	opacity: 1;
}

.top_medical .medi_slide .swiper-wrapper {
	padding: 0 3%;
}
.top_medical .medi_slide .lead {
	color: #000;
	font-size: min(115%,2.0vw);
	letter-spacing: .2em;
	line-height: 1.5em;
	padding-left: 4.0em;
	position: relative;
}
.top_medical .medi_slide .lead::before {
	content: "";
	position: absolute;
	width: 5.5em;
	height: 5.5em;
	left: 0;
	top: 0;
	transform: translate(-35%,-40%);
	background: url("../images/top/medi_age1@2x.png") no-repeat center center;
	background-size: contain;
}
.top_medical .medi_slide h3 {
	color: #FFACAC;
	font-size: min(295%,4.6vw);
	letter-spacing: .2em;
	line-height: 1.4em;
	margin: .2em 0 .4em;
	position: relative;
}
.top_medical .medi_slide h3::before {
	content: "";
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 2px;
	left: 0;
	top: 50%;
	background: #FFACAC;
}
.top_medical .medi_slide h3 span {
	display: inline-block;
	background: #fff;
	padding-right: 2%;
	position: relative;
	z-index: 1;
}
.top_medical .medi_slide .swiper-slide {
	width: 30vw;
	max-width: 340px;
}
.top_medical .medi_slide .swiper-slide.col2 {
	width: 54vw;
	max-width: 610px;
}
.top_medical .medi_slide .swiper-slide.col3 {
	width: 81vw;
	max-width: 920px;
}
.top_medical .medi_slide .swiper-slide.col1 .com_medical > li {
	width: 90%;
	margin-top: 3%;
}
.top_medical .medi_slide .swiper-slide.col1 .com_medical > li:first-child {
	margin-top: 0%;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical {
	display: flex;
    flex-wrap: wrap;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical > li {
	width: 32.6%;
	margin-right: 1.1%;
	margin-top: 1.1%;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical > li:nth-child(3n),
.top_medical .medi_slide .swiper-slide.col3 .com_medical > li:last-child {
	margin-right: 0;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical > li:nth-child(-n+3) {
	margin-top: 0;
}

/*コントロール*/
.top_medical .medi_slide .slide_control {
	margin-top: 40px;
	width: 100%;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.top_medical .medi_slide .slide_control .swiper-scrollbar {
	width: calc(97% - 180px);
	max-width: 1170px;
}
.top_medical .medi_slide .slide_control .slide_arrow {
	width: 180px;
	display: flex;
    justify-content: space-between;
    align-items: center;
	font-size: min(200%,3.0vw);
	letter-spacing: normal;
	line-height: 1.0em;
	text-align: center;
}
.top_medical .medi_slide .slide_control .slide_arrow > div {
	width: 2.4em;
	line-height: 2.4em;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.2);
	cursor: pointer;
	transition: all 0.8s;
}
.top_medical .medi_slide .slide_control .slide_arrow > div:hover {
	transition: all 0.4s;
	background: #FFEE93;
}
.top_medical .medi_slide .slide_control .slide_arrow i {
	display: block;
}
.top_medical .medi_slide .slide_control .swiper-button-prev i {
	transform: rotate(180deg);
}

/*色*/
.top_medical .age_box .btn_list li.color2 {
	background: rgba(245,194,99,0.2);
	color: #F5C263;
}
.top_medical .age_box .btn_list li.color2.thumb-media-active {
	background: rgba(245,194,99,1.0);
}
.top_medical .age_box .btn_list li.color2::before {
	background-image: url("../images/top/medi_fukidashi2@2x.png");
}
.top_medical .medi_slide .color2 .lead::before {
	background-image: url("../images/top/medi_age2@2x.png");
}
.top_medical .medi_slide .color2 h3 {
	color: #F5C263;
}
.top_medical .medi_slide .color2 h3::before {
	background: #F5C263;
}

.top_medical .age_box .btn_list li.color3 {
	background: rgba(149,189,154,0.2);
	color: #95BD9A;
}
.top_medical .age_box .btn_list li.color3.thumb-media-active {
	background: rgba(149,189,154,1.0);
}
.top_medical .age_box .btn_list li.color3::before {
	background-image: url("../images/top/medi_fukidashi3@2x.png");
}
.top_medical .medi_slide .color3 .lead::before {
	background-image: url("../images/top/medi_age3@2x.png");
}
.top_medical .medi_slide .color3 h3 {
	color: #95BD9A;
}
.top_medical .medi_slide .color3 h3::before {
	background: #95BD9A;
}

.top_medical .age_box .btn_list li.color4 {
	background: rgba(163,187,175,0.2);
	color: #A3BBAF;
}
.top_medical .age_box .btn_list li.color4.thumb-media-active {
	background: rgba(163,187,175,1.0);
}
.top_medical .age_box .btn_list li.color4::before {
	background-image: url("../images/top/medi_fukidashi4@2x.png");
}
.top_medical .medi_slide .color4 .lead::before {
	background-image: url("../images/top/medi_age4@2x.png");
}
.top_medical .medi_slide .color4 h3 {
	color: #A3BBAF;
}
.top_medical .medi_slide .color4 h3::before {
	background: #A3BBAF;
}

.top_medical .yobo_box {
	color: #fff;
	background: #AAA284;
	padding: 70px 4%;
	position: relative;
	z-index: 0;
	margin-bottom: 100px;
}
.top_medical .yobo_box .in_box {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.top_medical .yobo_box .abs1 {
	position: absolute;
	top: 0;
	transform: translateY(-50%);
	background: #F4E498;
	text-align: center;
	font-size: min(150%,2.3vw);
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: .5em 0;
	border-radius: .8em;
	width: 10.0em;
}
.top_medical .yobo_box .abs1::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 11px;
	left: 0;
	top: calc(100% - 1px);
	background: url("../images/top/medi_fukidashi5@2x.png") no-repeat 20% center;
	background-size: contain;
}
.top_medical .yobo_box .txt_box {
	width: 53%;
	max-width: 580px;
	position: relative;
	z-index: 1;
}
.top_medical .yobo_box .img_box {
	position: absolute;
	z-index: 0;
	width: 51%;
	max-width: 710px;
	right: 0;
	top: 0;
	transform: translate(11%,-4%);
}
.top_medical .yobo_box .txt_box h3 {
	font-size: min(205%,3.0vw);
	letter-spacing: .1em;
	line-height: 1.6em;
}
.top_medical .yobo_box .com_link1 a {
	color: #F9E43F;
	font-size: min(350%,5.0vw);
	letter-spacing: .2em;
	line-height: 1.2em;
	padding-left: 1.7em;
	position: relative;
	margin: .2em 0 .5em;
}
.top_medical .yobo_box .com_link1 a::before {
	content: "";
	position: absolute;
	width: 1.4em;
	height: 1.4em;
	background: url("../images/icon_med1@2x.png") no-repeat center center;
	background-size: contain;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.top_medical .yobo_box .com_link1 .com_arrow1 {
	top: 55%;
}
.top_medical .yobo_box .com_link1 a:hover .com_arrow1 {
	background: #F9E43F;
	color: #544337;
}
.top_medical .yobo_box .img_box .abs2 li {
	position: absolute;
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(1) {
	width: 47%;
	max-width: 330px;
	z-index: 0;
	left: 0;
	bottom: 0;
	transform: translate(-30%,55%);
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(2) {
	width: 48%;
	max-width: 340px;
	z-index: 1;
	left: 39%;
	bottom: 0;
	transform: translateY(22%);
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(3) {
	width: 26%;
	max-width: 180px;
	z-index: 2;
	left: 0;
	bottom: 18%;
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(4) {
	width: 26%;
	max-width: 180px;
	z-index: 3;
	left: 20%;
	bottom: 0;
	transform: translateY(15%);
}

.top_medical .other_link {
	position: relative;
	z-index: 1;
	width: 90%;
	max-width: 910px;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
	text-align: center;
	color: #fff;
	font-size: 105%;
	letter-spacing: .2em;
	line-height: 1.4em;
}
.top_medical .other_link > li {
	width: 32%;
	max-width: 290px;
}
.top_medical .other_link a {
	display: block;
	background: #E69300;
	padding: 2.5em 0;
	border-radius: 1.6em;
}
.top_medical .other_link a:hover {
	background: #F7B52C;
}
.top_medical .other_link span {
	display: inline-block;
	padding-left: 3.0em;
	padding-right: 1.8em;
	position: relative;
}
.top_medical .other_link span::before {
	content: "";
	position: absolute;
	width: 3.5em;
	height: 3.5em;
	background: url("../images/icon_med13_w@2x.png") no-repeat center center;
	background-size: contain;
	left: -.5em;
	top: 50%;
	transform: translateY(-50%);
}
.top_medical .other_link .icon2 span::before {background-image: url("../images/icon_med11_w@2x.png");}
.top_medical .other_link .icon3 span::before {background-image: url("../images/icon_med12_w@2x.png");}
.top_medical .other_link span::after {
	content: "";
	position: absolute;
	width: 1.3em;
	height: 1.3em;
	border-radius: 50%;
	background: #544337 url("../images/arrow1@2x.png") no-repeat center center;
	background-size: contain;
	right: 0;
	top: 50%;
	transform: translateY(-40%);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_medical {
	margin-bottom: 10%;
}
.top_medical .lead_box {
	margin-bottom: 6%;
}
.top_medical .lead_box h2 {
	margin-bottom: 3%;
}
.top_medical .lead_box dt {
	margin-bottom: .4em;
}

.top_medical .age_box {
	margin-bottom: 8%;
}
.top_medical .age_box .btn_list {
	margin-bottom: 8%;
}
.top_medical .medi_slide .lead {
	letter-spacing: .1em;
}
.top_medical .medi_slide h3 {
	letter-spacing: .1em;
}
/*コントロール*/
.top_medical .medi_slide .slide_control {
	margin-top: 3%;
}
.top_medical .medi_slide .slide_control .swiper-scrollbar {
	width: 78%;
}
.top_medical .medi_slide .slide_control .slide_arrow {
	width: 18%;
}

.top_medical .yobo_box {
	padding: 6% 4%;
	margin-bottom: 6%;
}
.top_medical .yobo_box .img_box .abs2 {
	position: relative;
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(1) {
	width: 47%;
	max-width: 330px;
	z-index: 0;
	left: 15%;
	bottom: auto;
	top: 0;
	transform: translate(0%,-40%);
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(2) {
	position: relative;
	width: 55%;
	margin-left: auto;
	margin-right: 0;
	left: auto;
	bottom: auto;
	transform: none;
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(3) {
	width: 35%;
	left: 0;
	bottom: auto;
	top: 0;
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(4) {
	width: 35%;
	left: 20%;
	bottom: 0;
	transform: translateY(15%);
}

.top_medical .other_link {
	letter-spacing: .1em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_medical {
	margin-bottom: 18%;
}
.top_medical .lead_box {
	margin-bottom: 6%;
}
.top_medical .lead_box h2 {
	width: 85%;
	margin-bottom: 6%;
}
.top_medical .lead_box dt {
	font-size: 170%;
	letter-spacing: .05em;
	line-height: 1.5em;
	margin-bottom: .6em;
}

.top_medical .age_box {
	margin-bottom: 12%;
}
.top_medical .age_box .btn_list {
	width: 100%;
	max-width: 100%;
	margin-bottom: 12%;
}
.top_medical .age_box .btn_list li {
	font-size: 100%;
	letter-spacing: .1em;
}

.top_medical .medi_slide .swiper-wrapper {
	padding: 0;
}
.top_medical .medi_slide .lead {
	font-size: 100%;
	letter-spacing: .05em;
	line-height: 1.5em;
}
.top_medical .medi_slide h3 {
	font-size: 200%;
	letter-spacing: .15em;
}
.top_medical .medi_slide .swiper-slide {
	width: 47vw;
	max-width: 100%;
}
.top_medical .medi_slide .swiper-slide.col2 {
	display: none;
}
.top_medical .medi_slide .swiper-slide.col2,
.top_medical .medi_slide .swiper-slide.col3 {
	width: 95vw;
	max-width: 95vw;
}
.top_medical .medi_slide .swiper-slide.col1 .com_medical > li {
	width: 95% !important;
	margin-top: 3% !important;
}
.top_medical .medi_slide .swiper-slide.col1 .com_medical > li:first-child {
	margin-top: 0% !important;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical {
    justify-content: space-between;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical > li {
	width: 48%;
	margin-right: 0;
	margin-top: 3% !important;
}
.top_medical .medi_slide .swiper-slide.col3 .com_medical > li:nth-child(-n+2) {
	margin-top: 0 !important;
}

/*コントロール*/
.top_medical .medi_slide .slide_control {
	margin-top: 5vw;
}
.top_medical .medi_slide .slide_control .swiper-scrollbar {
	width: 67%;
}
.top_medical .medi_slide .slide_control .slide_arrow {
	width: 28%;
	font-size: 110%;
}

.top_medical .yobo_box {
	padding: 10% 6% 8%;
	margin-bottom: 10%;
}
.top_medical .yobo_box .abs1 {
	font-size: 110%;
	letter-spacing: .1em;
	width: 9.0em;
}
.top_medical .yobo_box .txt_box {
	width: 100%;
	max-width: 100%;
	margin-bottom: 6%;
}
.top_medical .yobo_box .img_box {
	position: relative;
	width: 100%;
	max-width: 100%;
	right: auto;
	top: auto;
	transform: none;
}
.top_medical .yobo_box .txt_box h3 {
	font-size: 130%;
	letter-spacing: .05em;
	line-height: 1.5em;
}
.top_medical .yobo_box .com_link1 a {
	font-size: 250%;
	letter-spacing: .1em;
	padding-left: 1.5em;
	margin: .3em 0 .5em;
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(1) {
	z-index: -1;
	width: 47%;
	left: auto;
	bottom: auto;
	right: 0;
	top: 0;
	transform: translate(30%,-15%);
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(2) {
	width: 55%;
	max-width: 340px;
	z-index: 1;
	left: auto;
	right: 0;
	bottom: 0;
	transform: translate(25%,15%);
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(3) {
	width: 35%;
	left: 0;
	bottom: 18%;
	transform: translateX(-30%);
}
.top_medical .yobo_box .img_box .abs2 li:nth-child(4) {
	width: 35%;
	left: 12%;
	bottom: 0;
	transform: translateY(20%);
}

.top_medical .other_link {
	width: 100%;
    flex-wrap: wrap;
	letter-spacing: .05em;
}
.top_medical .other_link > li {
	width: 31%;
	max-width: 100%;
}
.top_medical .other_link a {
	padding: .5em 0;
	border-radius: 1.0em;
}
.top_medical .other_link span {
	display: block;
	padding: 2.5em 0 1.6em;
}
.top_medical .other_link span::before {
	width: 2.5em;
	height: 2.5em;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	transform: none;
}
.top_medical .other_link span::after {
	width: 1.2em;
	height: 1.2em;
	margin: auto;
	left: 0;
	right: 0;
	top: auto;
	bottom: 0;
	transform: none;
}
}



/*top_dr
---------------------------------------------------------*/
.top_dr {
	background: #F1EEE0;
	position: relative;
	margin-bottom: 120px;
}
.top_dr .com_link1 a:hover {
	color: #6FC14F;
}
.top_dr .com_link1 a:hover .com_arrow1 {
	background: #6FC14F;
}
.top_dr .message_box {
	position: relative;
	padding-top: 100px;
	padding-bottom: 120px;
}
.top_dr .message_box .img_box {
	width: 56%;
	max-width: 710px;
	position: absolute;
	z-index: 0;
	left: 0;
	top: 0;
	transform: translate(-18%,-8%);
}
.top_dr .message_box .txt_box {
	width: 51%;
	max-width: 590px;
	margin-left: auto;
	margin-right: 0;
}

.top_dr .message_box .img_box dl {
	position: absolute;
	z-index: 3;
	left: 62%;
	top: 36%;
}
.top_dr .message_box .img_box .abs1 {
	position: absolute;
	z-index: 2;
	width: 20%;
	max-width: 140px;
	right: 3%;
	bottom: 6%;
}
.top_dr .message_box .img_box .abs2 {
	position: absolute;
	z-index: 0;
	width: 47%;
	max-width: 330px;
	right: 0;
	bottom: 0;
	transform: translate(30%,60%);
}
.top_dr .message_box .img_box dl {
	font-size: min(120%,1.8vw);
	letter-spacing: .15em;
	line-height: 1.4em;
}
.top_dr .message_box .img_box dd {
	font-size: 175%;
	letter-spacing: .3em;
	line-height: 1.2em;
	margin: .2em 0;
}
.top_dr .message_box .img_box dd.ft_hero_m {
	font-size: 75%;
	letter-spacing: .3em;
	line-height: 1.2em;
	margin: 0;
}
.top_dr .message_box .img_box .abs1 li:nth-child(2) {
	position: absolute;
	width: 60%;
	max-width: 83px;
	left: 0;
	bottom: 5%;
	transform: translateX(-105%);
}

.top_dr .message_box .txt_box {
	position: relative;
	z-index: 1;
}
.top_dr .message_box .txt_box dt {
	font-size: min(225%,3.0vw);
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: .8em;
}
.top_dr .message_box .txt_box .com_link1 {
	margin-top: 30px;
	text-align: right;
}
.top_dr .message_box .txt_box .abs3 {
	width: 24%;
	max-width: 137px;
	position: absolute;
	right: 0;
	top: 0;
	transform: translate(50%,-100%);
}

.top_dr .mission_box {
	position: relative;
}
.top_dr .mission_box::before {
	content: "";	/*下白背景*/
	position: absolute;
	width: 100vw;
	height: 50%;
	background: #fff;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
.top_dr .mission_box .bg {
	position: relative;
	z-index: 1;
	background: #F7ECB7;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.2);
	padding: 130px 2% 80px;
}
.top_dr .mission_box .bg .top_index1 {
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	transform: translateY(-40%);
	text-align: center;
}
.top_dr .mission_box .bg .item_list {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
}
.top_dr .mission_box .bg .item_list li {
	width: 25%;
	box-sizing: border-box;
	border-right: solid 1px #999999;
	padding: 0 3%;
}
.top_dr .mission_box .bg .item_list li:last-child {
	border-right: none;
}
.top_dr .mission_box .bg .item_list dt {
	color: #6FC14F;
	font-size: min(195%,2.5vw);
	letter-spacing: .1em;
	line-height: 1.5em;
	margin-bottom: .3em;
	position: relative;
	z-index: 1;
}
.top_dr .mission_box .bg .item_list dt::before {
	content: "";
	position: absolute;
	z-index: -1;
	width: 2.4em;
	height: 2.4em;
	background: url("../images/check@2x.png") no-repeat center center;
	background-size: contain;
	left: 0;
	top: 0;
	transform: translate(-5%,-55%);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_dr {
	margin-bottom: 10%;
}
.top_dr .message_box {
	padding-top: 10%;
	padding-bottom: 10%;
}
.top_dr .message_box .img_box {
	width: 60%;
	top: 50%;
	transform: translate(-18%,-50%);
}
.top_dr .message_box .txt_box {
	width: 55%;
}

.top_dr .message_box .img_box dl {
	left: 56%;
	top: 25%;
}
.top_dr .message_box .img_box .abs1 {
	right: 10%;
}
.top_dr .message_box .img_box dl {
	font-size: 2.0vw;
}

.top_dr .message_box .txt_box dt {
	font-size: 3.4vw;
	letter-spacing: .05em;
}
.top_dr .message_box .txt_box .com_link1 {
	margin-top: 20px;
}
.top_dr .message_box .txt_box .abs3 {
	transform: translate(20%,-100%);
}

.top_dr .mission_box .bg {
	padding: 12% 1% 5%;
}
.top_dr .mission_box .bg .item_list dt {
	font-size: 2.8vw;
	letter-spacing: normal;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_dr {
	margin-bottom: 14%;
}
.top_dr .message_box {
	padding-top: 0;
	padding-bottom: 14%;
}
.top_dr .message_box .img_box {
	width: 100%;
	max-width: 100%;
	position: relative;
	left: auto;
	top: auto;
	transform: translate(-18%,-8%);
}
.top_dr .message_box .txt_box {
	width: 100%;
	max-width: 100%;
}

.top_dr .message_box .img_box dl {
	left: auto;
	right: 0;
	top: 30%;
	transform: translateX(30%);
}
.top_dr .message_box .img_box dl {
	font-size: 110%;
}

.top_dr .message_box .txt_box {
	position: relative;
	z-index: 1;
}
.top_dr .message_box .txt_box dt {
	font-size: 160%;
	letter-spacing: .05em;
	line-height: 1.5em;
	margin-bottom: .6em;
}
.top_dr .message_box .txt_box .com_link1 {
	margin-top: 1.0em;
}
.top_dr .message_box .txt_box .abs3 {
	right: 0;
	top: 0;
	transform: translate(40%,-70%);
}

.top_dr .mission_box::before {
	height: 20%;	/*下白背景*/
}
.top_dr .mission_box .bg {
	padding: 20% 2% 8%;
}
.top_dr .mission_box .bg .item_list {
    flex-wrap: wrap;
}
.top_dr .mission_box .bg .item_list li {
	width: 50%;
	padding: 0 5%;
	margin-top: 8%;
}
.top_dr .mission_box .bg .item_list li:nth-child(-n+2) {
	margin-top: 0;
}
.top_dr .mission_box .bg .item_list li:nth-child(even) {
	border-right: none;
}
.top_dr .mission_box .bg .item_list dt {
	font-size: 135%;
	letter-spacing: .05em;
	line-height: 1.5em;
	margin-bottom: .2em;
}
.top_dr .mission_box .bg .item_list dd {
	text-align: justify;
}
}



/*top_blog
---------------------------------------------------------*/
.top_blog {
	margin-bottom: 120px;
}
.top_blog .flex_box {
	display: flex;
    justify-content: space-between;
}
.top_blog .flex_box .box_l {
	width: 50%;
	max-width: 600px;
}
.top_blog .flex_box .box_r {
	width: 45%;
	max-width: 510px;
}

.top_blog .top_news_blog .com_link1 a:hover {
	color: #6FC14F;
}
.top_blog .top_news_blog .com_link1 a:hover .com_arrow1 {
	background: #6FC14F;
}
.top_blog .top_news_blog .post_list dt {
	color: #6FC14F;
}
.top_blog .top_news_blog li:hover dd {
	color: #6FC14F;
}

.top_blog .bnr_rec .txt {
	width: 92%;
	margin-left: auto;
	margin-right: 0;
	margin-top: -1.0em;
}
.top_blog .bnr_rec .com_link1 a {
	color: #FF86AF;
	font-size: min(265%,4.0vw);
	letter-spacing: .2em;
}
.top_blog .bnr_rec.com_hov:hover .com_arrow1 {
	background: #FF86AF;
}
.top_blog .bnr_rec .com_link1 a::before {
	content: "";
	position: absolute;
	width: 1.2em;
	height: 1.2em;
	background: url("../images/recr_point@2x.png") no-repeat center center;
	background-size: contain;
	left: 0;
	top: 0;
	transform: translate(-70%,-70%);
}
.top_blog .bnr_rec .fs15 {
	margin-top: .8em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_blog {
	margin-bottom: 10%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_blog {
	margin-bottom: 12%;
}
.top_blog .flex_box {
	display: block;
}
.top_blog .flex_box .box_l {
	width: 100%;
	max-width: 100%;
	margin-bottom: 10%;
}
.top_blog .flex_box .box_r {
	width: 100%;
	max-width: 100%;
}

.top_blog .bnr_rec {
	width: 90%;
	margin: 0 auto;
}
.top_blog .bnr_rec .txt {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: -1.0em;
}
.top_blog .bnr_rec .com_link1 a {
	font-size: 200%;
	letter-spacing: .1em;
}
.top_blog .bnr_rec .fs15 {
	margin-top: .5em;
}
}



/*top_inst
---------------------------------------------------------*/
.top_inst {
	position: relative;
	padding: 90px 0 120px;
	text-align: center;
}
.top_inst::before {
	content: "";
	position: absolute;
	z-index: -1;
	width: 100%;
	height: calc(100% + 200px);	/*フッターの角丸と揃える*/
	left: 0;
	top: 0;
	background: url("../images/top/inst_bg@2x.jpg") repeat-x center center;
	background-size: auto 100%;
}
.top_inst .bnr {
	width: 50%;
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
	background: #fff;
	box-sizing: border-box;
	padding: 40px 0;
	font-size: 105%;
	letter-spacing: .1em;
	line-height: 1.4em;
	position: relative;
	transition: all 0.8s;
}
.top_inst .bnr:hover {
	transition: all 0.4s;
	background: rgba(255,255,255,0.6);
}
.top_inst .bnr a {
	display: inline-block;
	text-align: left;
	padding-left: 4.2em;
	position: relative;
}
.top_inst .bnr .img_txt {
	width: 25vw;
	max-width: 264px;
	margin-top: .5em;
	margin-left: .1em;
}
.top_inst .bnr a::before {
	content: "";
	position: absolute;
	width: 3.4em;
	height: 3.4em;
	background: url("../images/icon_inst@2x.png") no-repeat center center;
	background-size: contain;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.top_inst .bnr .abs li {
	position: absolute;
}
.top_inst .bnr .abs li:nth-child(1) {
	width: 12%;
	max-width: 55px;
	right: 0;
	top: 0;
	transform: translate(80%,-80%);
}
.top_inst .bnr .abs li:nth-child(2) {
	width: 10%;
	max-width: 44px;
	left: 0;
	bottom: 0;
	transform: translate(-80%,80%);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_inst {
	padding: 7% 0 10%;
	text-align: center;
}
.top_inst::before {
	height: calc(100% + 15vw);	/*フッターの角丸と揃える*/
}
.top_inst .bnr {
	width: 50%;
	padding: 4% 0;
	font-size: 1.7vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_inst {
	padding: 12% 0;
}
.top_inst::before {
	height: calc(100% + 20vw);	/*フッターの角丸と揃える*/
}
.top_inst .bnr {
	width: 75%;
	max-width: 100%;
	padding: 1.2em 0;
	font-size: 95%;
	letter-spacing: .05em;
}
.top_inst .bnr a {
	padding-left: 3.8em;
}
.top_inst .bnr .img_txt {
	width: 47vw;
}
.top_inst .bnr a::before {
	width: 3.0em;
	height: 3.0em;
}
}



/*オープン告知
---------------------------------------------------------*/
.top_news .open_inf {
	width: 90%;
	max-width: 900px;
	margin: 80px auto 100px;
	box-sizing: border-box;
	padding: 0 5%;
	position: relative;
	z-index: 1;
}
.top_news .open_inf::before {
	content: "";
	position: absolute;
	z-index: -2;
	width: 100%;
	height: calc(100% - 60px);
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	box-sizing: border-box;
	border: solid 1px #453a29;
}
.top_news .open_inf::after {
	content: "";
	position: absolute;
	z-index: -1;
	width: 90%;
	height: 100%;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: #fff;
}
.top_news .open_inf .open_txt {
	width: 90%;
	margin: 0 auto;
}
.top_news .open_inf .event_inbox {
	margin: 6% auto 0;
}
.top_news .open_inf .event_inbox .tit {
	padding: 0 3% 2%;
	border-bottom: solid 1px #805b37;
	margin-bottom: 3%;
}
.top_news .open_inf .event_inbox .day {
	width: 80%;
	margin: 0 auto;
}
.top_news .open_inf .btn_flyer {
	margin-top: 1.5em;
}
.top_news .open_inf .btn_flyer a {
	display: inline-block;
	color: #FFF;
	font-size: 110%;
	font-weight: bold;
	letter-spacing: .05em;
	line-height: 1.4;
	background-color: #453a29;
	padding: .6em 4em;
	border-radius: 2em;
}
.top_news .open_inf .btn_flyer a:hover {
	background-color: #805b37;
}

.top_news .top_news_blog .open_txt {
	margin-bottom: 50px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_news .open_inf {
	margin: 6% auto 8%;
}

.top_news .top_news_blog .open_txt {
	margin-bottom: 8%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_news .open_inf {
	width: 100%;
	margin: 8% auto 10%;
	padding: 0;
}
.top_news .open_inf::before,
.top_news .open_inf::after {
	display: none;
}
.top_news .open_inf .open_txt {
	width: 100%;
}
.top_news .open_inf .event_inbox {
	margin: 8% auto 0;
}
.top_news .open_inf .event_inbox .tit {
	padding: 0 0 2%;
	margin-bottom: 4%;
}
.top_news .open_inf .event_inbox .day {
	width: 95%;
}
.top_news .open_inf .btn_flyer {
	margin-top: 1.5em;
}
.top_news .open_inf .btn_flyer a {
	font-size: 105%;
}

.top_news .top_news_blog .open_txt {
	margin-bottom: 10%;
}
}



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

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
}