@charset "utf-8";
/*================================
ここから全サイズ適用
================================*/








/*================================
共通パーツ
================================*/

/*================================
ヘッダー
================================*/
.header {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}

/*================================
メインビジュアル
================================*/
#main-visual {
	padding-top: 88px;
	padding-bottom: 55px;
	background-image: url(../img/top/mv_bg.png);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-color: #fcfbf7;
}
/*-------------------------------
スライドエリア
-------------------------------*/
.mv-content {
	position: relative;
	z-index: 1;
}
/* スライド
-------------------------------*/
.mv-slider {
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
}
.swiper-wrapper {}
.swiper-wrapper::before {
	position: absolute;
	z-index: 2;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../img/top/mv_slogan.png?0804);
	background-position: center;
	/* background-size: contain; */
	background-repeat: no-repeat;
}
/*スライド画像
--------------------------------*/
.mv-slider .swiper-slide {
	position: relative;
	z-index: 1;
	width: 100%;
	/* aspect-ratio: 1/0.458333; */
	
    aspect-ratio: 1140 / 547;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.mv-slide01 {
	background-image: url(../img/top/mv_img01.png?0804);
}
.mv-slide02 {
	/*background: orange;*/
}

/* スライドカバー
-------------------------------*/
.mv-slider_cover {}

/*モバイル検索のサムネイル画像対策
--------------------------------*/
.mv-content .thumbnail_img {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 200px;
	opacity: 0;
}

/*================================
メインコンテンツ
================================*/
.main {}

/*================================
お知らせ・バナーなど
================================*/
.topics {
	/*background: #ebebeb;*/
}
.topics .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 4rem;
	padding-bottom: 4rem;
}
.topics_frame {
	padding: 30px;
	background: #fff;
	border: 1px solid var(--main-color01);
}
.topics_title {
	margin-bottom: 20px;
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
	color: var(--theme-color01);
}
.topics_text_wrap {
	width: fit-content;
	margin-inline: auto;
}
.topics_text {
	text-align: left;
}

/*================================
新着情報
================================*/
.news {}
.news .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 4rem;
	padding-bottom: 2rem;
}
.news_heading {
	position: relative;
	z-index: 1;
	padding: 4px 2rem 4px 6rem;
	background: url(../img/triangle01_color01.png?02)center bottom -1px/0.7rem auto repeat-x #a79686;
	border-radius: 1rem 1rem 0 0;
	font-size: 2.4rem;
	text-align: left;
	line-height: 1.6;
	color: #fff;
}
.news_heading::before {
	position: absolute;
	z-index: -1;
	content: "";
	left: 0.4em;
	top: -1.5rem;
	background: url(../img/heading_deco01.png)center/contain no-repeat;
	width: 5rem;
	height: 3.2rem;
}
.news_heading .en {
	font-family: "Josefin Slab", serif;
	font-optical-sizing: auto;
	font-weight: 600;
}
.news_heading .jp {
	font-weight: 500;
}
.news_content {}
.news_frame {
	padding: 2rem 3rem;
	background: #fff;
	border-radius: 0 0 1rem 1rem;
}

.news_scroll {
	overflow-y: scroll;
	margin-left: auto;
	margin-right: auto;
	min-height: 6rem;
	max-height: 14rem;
	padding-right: 20px;
}
.news_list {}
.news_list .date {
	float: left;
	width: 14rem;
	font-weight: 1.8rem;
	font-weight: 500;
	color: #f2a5ab;
}
.news_list .article {
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	padding-left: 14rem;
	border-bottom: 1px solid #f2a5ab;
	font-weight: 1.8rem;
}
.news_list .article span {
	font-weight: bold;
}
.news_list .article a {
	text-decoration: underline;
}

/*================================
写真とテキストレイアウト
================================*/
.intro_group {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 6rem 4rem;
}
.intro_group.-reverse {
	flex-direction: row-reverse;
}
.intro_picture {
	width: 44%;
}
.intro_picture_frame {
	position: relative;
	z-index: 1;
	width: fit-content;
	margin: auto;
}
.intro_picture_frame::before {
	position: absolute;
	z-index: 2;
	content: "";
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	width: 80%;
	height: 68%;
	top: -21%;
	left: -42%;
}
.intro_group.-reverse .intro_picture_frame::before {
	left: auto;
	right: -42%;
}
.intro_picture_frame.-deco01::before {
	background-image: url(../img/top/pic_deco01.png);
}
.intro_picture_frame.-deco02::before {
	background-image: url(../img/top/pic_deco02.png);
}
.intro_picture_frame.-deco03::before {
	background-image: url(../img/top/pic_deco03.png);
}
.intro_article {
	width: calc(100% - (44% + 4rem));
}
.intro_heading {
	margin-bottom: 2rem;
}
.intro_heading .en {
	position: relative;
	z-index: 1;
	margin-bottom: 2rem;
	font-family: "Josefin Slab", serif;
	font-optical-sizing: auto;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.6;
}
.intro_heading .en::before {
	position: absolute;
	z-index: 1;
	content: "";
	background: url(../img/heading_deco02.png)center/contain no-repeat;
	width: 3.1rem;
	height: 3.8rem;
	left: 0;
	top: -3.8rem;
}
.intro_heading .jp {
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.5;
	/*text-shadow: 2px 2px 0px #ffffff, -2px 2px 0px #ffffff, 2px -2px 0px #ffffff, -2px -2px 0px #ffffff, 2px 0px 0px #ffffff, 0px 2px 0px #ffffff, -2px 0px 0px #ffffff, 0px -2px 0px #ffffff;*/
}
.intro_heading .small {
	font-size: 2.6rem;
}

/*================================
患者さまお一人おひとりが
本当に納得いく治療をご提供します
================================*/
.counseling {
	position: relative;
	z-index: 1;
}
.counseling::before {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	min-width: 1200px;
	height: 100%;
	background-image: url(../img/leaves01_R.png);
	background-position: top right;
	background-size: 38.7rem auto;
	background-repeat: no-repeat;
}
.counseling .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 10rem;
	padding-bottom: 9rem;
}
.counseling .intro_heading .en {
	color: #8e7d6c;
}

/*================================
ご家族で通える歯科医院を目指して
================================*/
.family {
	position: relative;
	z-index: 1;
	background: url(../img/top/family_bg.png)top center/100% auto no-repeat;
}
.family::before {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	min-width: 1200px;
	height: 100%;
	background-image: url(../img/leaves01_L.png);
	background-position: top left;
	background-size: 38.4rem auto;
	background-repeat: no-repeat;
}
.family::after {
	position: absolute;
	z-index: -2;
	content: "";
	background: #fff;
	top: 6vw;
	left: 0;
	width: 100%;
	height: calc(100% - 6vw);
}
.family_deco01 {
	position: absolute;
	z-index: 2;
	background: url(../img/leaves02_R.png)center/contain no-repeat;
	width: 27.9rem;
	height: 16.3rem;
	top: 370px;
	right: 0;
}
.family .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 18rem;
	padding-bottom: 5rem;
}
.family .intro_heading .en {
	color: #7d464a;
}
.family_pickup_group {
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-flow: row wrap;
	flex-flow: row wrap;
	gap: 2rem 3.5rem;
}
.family_pickup_item {
	display: flex;
	justify-content: center;
	align-items: center;
	width: calc(100%/3 - 3.5rem*2/3);
	padding: 2rem;
	height: 16rem;
	border-radius: 5px;
	background-position: top 6px left 6px,top 6px right 6px,bottom 6px left 6px,bottom 6px right 6px;
	background-size: 5px 5px;
	background-repeat: no-repeat;
}
.family_pickup_content {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 230px;
	padding-bottom: 1.6rem;
	background-position: center bottom;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.family_pickup_title {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	min-height: 6rem;
	padding-left: 6rem;
	background-position: left center;
	background-size: 5.4rem auto;
	background-repeat: no-repeat;
	font-weight: 500;
	text-align: left;
}
/*カラーバリエーション*/
/*-----------------------------*/
/*color01*/
.family_pickup_item.-color01 {
	background-color: #e5c3c6;
	background-image:
		url(../img/top/circle01.png),
		url(../img/top/circle01.png),
		url(../img/top/circle01.png),
		url(../img/top/circle01.png);
}
.family_pickup_item.-color01 .family_pickup_content {
	background-image: url(../img/top/family_pickup_border01.png);
}
.family_pickup_item.-color01 .family_pickup_title {
	background-image: url(../img/top/family_pickup_icon01.png);
	color: #7d464a;
}
/*color02*/
.family_pickup_item.-color02 {
	background-color: #ddd2c7;
	background-image:
		url(../img/top/circle02.png),
		url(../img/top/circle02.png),
		url(../img/top/circle02.png),
		url(../img/top/circle02.png);
}
.family_pickup_item.-color02 .family_pickup_content {
	background-image: url(../img/top/family_pickup_border02.png);
}
.family_pickup_item.-color02 .family_pickup_title {
	background-image: url(../img/top/family_pickup_icon02.png);
	color: #8e7d6c;
}
/*color03*/
.family_pickup_item.-color03 {
	background-color: #bbdae3;
	background-image:
		url(../img/top/circle03.png),
		url(../img/top/circle03.png),
		url(../img/top/circle03.png),
		url(../img/top/circle03.png);
}
.family_pickup_item.-color03 .family_pickup_content {
	background-image: url(../img/top/family_pickup_border03.png);
}
.family_pickup_item.-color03 .family_pickup_title {
	background-image: url(../img/top/family_pickup_icon03.png);
	color: #3f717f;
}

/*================================
総合的な幅広い診療
================================*/
.general {
	position: relative;
	z-index: 1;
}
.general::before {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	min-width: 1200px;
	height: 100%;
	background-image: url(../img/leaves01_R.png);
	background-position: top 2rem right;
	background-size: 38.7rem auto;
	background-repeat: no-repeat;
}
.general .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 13rem;
}
.general .intro_heading .en {
	color: #3f717f;
}
.general .content {
	position: relative;
	z-index: 1;
	padding: 3rem 0 3.5rem;
}
.general .content::before {
	position: absolute;
	z-index: -1;
	content: "";
	width: 110vw;
	height: 100%;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.general .content::after {
	position: absolute;
	z-index: 4;
	content: "";
	right: -6rem;
	bottom: 2rem;
	width: 24.2rem;
	height: 16rem;
}
.general_pickup {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 0 0;
	flex-flow: row wrap;
	position: relative;
	z-index: 1;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	padding: 2rem 4rem 5.6rem;
	background-color: #fff;
	background-position: top 6px left 6px,top 6px right 6px,bottom 6px left 6px,bottom 6px right 6px;
	background-size: 5px 5px;
	background-repeat: no-repeat;
	border-radius: 6px 6px 0 0;
}
.general_pickup::before {
	position: absolute;
	z-index: -1;
	content: "";
	left: 0;
	bottom: -0.5rem;
	width: 100%;
	height: 0.5rem;
	background: url(../img/triangle01_inverted_color01.png?02)center top -1px/0.7rem auto repeat-x;
}
.general_pickup_picture {
	position: relative;
	z-index: 1;
	width: 24%;
}
.general_pickup_picture_frame {
	position: absolute;
	z-index: 1;
	width: 128%;
	top: -30%;
	left: -46%;
}
.general_pickup_article {
	width: calc(100% - 24%);
}
.general_pickup .sub-heading {
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	font-weight: 500;
	line-height: 1.6;
	/*color: #816400;*/
	border-bottom: 1px solid #ccc;
}
.general_pickup .main-heading {
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
	flex-flow: row wrap;
	gap: 1rem 2.6rem;
	margin-bottom: 1rem;
}
.general_pickup .main-heading .jp {
	font-size: 3rem;
	font-weight: 500;
	line-height: 1.6;
}
.general_pickup .main-heading .en {
	font-family: "Josefin Slab", serif;
	font-optical-sizing: auto;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.6;
}

/*予防歯科*/
/*-----------------------------*/
.preventive::before {
	background: #e8e1b2;
}
.preventive::after {
	background: url(../img/top/general_pickup_ill01.png)center/contain no-repeat;
}
.preventive .general_pickup {
	background-image:
		url(../img/top/circle04.png),
		url(../img/top/circle04.png),
		url(../img/top/circle04.png),
		url(../img/top/circle04.png);
}
.preventive .sub-heading {
	color: #816400;
	border-color: #e8e1b2;
}
.preventive .main-heading {
	color: #816400;
}

/*矯正歯科*/
/*-----------------------------*/
.orthodontics::before {
	background: #bad3da;
}
.orthodontics::after {
	background: url(../img/top/general_pickup_ill02.png)center/contain no-repeat;
}
.orthodontics .general_pickup {
	background-image:
		url(../img/top/circle05.png),
		url(../img/top/circle05.png),
		url(../img/top/circle05.png),
		url(../img/top/circle05.png);
}
.orthodontics .sub-heading {
	color: #417382;
	border-color: #bad3da;
}
.orthodontics .main-heading {
	color: #417382;
}

/*精度の高い診査・診断*/
/*-----------------------------*/
.accurate::before {
	background: #d4c3d9;
}
.accurate::after {
	background: url(../img/top/general_pickup_ill03.png)center/contain no-repeat;
}
.accurate .general_pickup {
	background-image:
		url(../img/top/circle06.png),
		url(../img/top/circle06.png),
		url(../img/top/circle06.png),
		url(../img/top/circle06.png);
}
.accurate .sub-heading {
	color: #79637f;
	border-color: #d4c3d9;
}
.accurate .main-heading {
	color: #79637f;
}

/*================================
診療内容
================================*/
.services {
	position: relative;
	z-index: 1;
	background: url(../img/bottom_flower01.png)center bottom/33.2rem auto repeat-x #fff;
}
.services::before {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	/*min-width: 1200px;*/
	height: 100%;
	background-image:
		url(../img/leaves01_L.png),
		url(../img/leaves01_R.png);
	background-position: top 7rem left,top 7rem right;
	background-size: 38.4rem auto,38.7rem auto;
	background-repeat: no-repeat;
}
.services .inner {
	position: relative;
	z-index: 1;
	max-width: calc(1000px + 14rem);
	padding-top: 10rem;
	padding-bottom: 12rem;
}
.services .inner::before {
	position: absolute;
	z-index: -1;
	content: "";
	background: url(../img/top/ill_rabbit.png)center/contain no-repeat;
	width: 8.3rem;
	height: 10.8rem;
	left: 0;
	bottom: 0;
}
.services_heading {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
	gap: 3rem;
	margin-bottom: 1rem;
}
.services_heading .en {
	position: relative;
	z-index: 1;
	padding-bottom: 1rem;
	font-family: "Josefin Slab", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-size: 2.4rem;
	line-height: 1.6;
	text-align: center;
	color: #7ba256;
}
.services_heading .en::before {
	position: absolute;
	z-index: 1;
	content: "";
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: #839970;
	height: 1px;
	width: 19rem;
}
.services_heading .jp {
	position: relative;
	z-index: 1;
	width: fit-content;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: center;
	color: var(--theme-color01);
}
.services_heading .jp::before {
	position: absolute;
	z-index: -1;
	content: "";
	left: -1.8em;
	top: -0.05em;
	background: url(../img/heading_deco01.png)center/contain no-repeat;
	width: 5rem;
	height: 3.2rem;
}
.services_leading {
	margin-bottom: 5rem;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: center;
	color: #f2a5ab;
}
.services_group {
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-flow: row wrap;
	gap: 3rem 4rem;
	max-width: 80rem;
	margin-left: auto;
	margin-right: auto;

}


.services_item {
	width: 17rem;
	position: relative;
	z-index: 1;
	transition: transform 0.3s;
}
.services_item:hover {
	transform: rotate(8deg)scale(1.04);
}
.services_item:nth-child(2n):hover {
	transform: rotate(-8deg)scale(1.04);
}
.services_link {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-direction: column;
	position: relative;
	z-index: 1;
	width: 100%;
	aspect-ratio: 1/1;
	padding: 2.2rem 1rem 4rem;
	border-width: 3px;
	border-style: solid;
	border-radius: 50%;
	box-shadow: 0 0 0 1px #fff inset;
}
.services_link::before {
	position: absolute;
	z-index: 1;
	content: "";
	right: 0;
	top: 1.6rem;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	width: 3.2rem;
	height: 3.8rem;
}
.services_overview {
	display: flex;
	justify-content: center;
	align-items: center;
	height: calc(1.8rem*1.4*2);
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
	color: #fff;
}
.services_name {
	position: relative;
	z-index: 1;
	margin-top: auto;
	padding-bottom: 1.4rem;
	font-size: 2rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.4;
	color: #78400a;
}
.services_name::before {
	position: absolute;
	z-index: -1;
	content: "";
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	height: 4px;
	width: 11rem;
	background-image: radial-gradient(circle, #fff 2px, transparent 2px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 16px 4px;
}
/*カラーバリエーション*/
/*-----------------------------*/
/*color01*/
.services_link.-color01 {
	border-color: #d3c3b1;
	background: #d3c3b1;
}
.services_link.-color01::before {
	background-image: url(../img/top/services_item_deco01.png);
}
/*color02*/
.services_link.-color02 {
	border-color: #dab4ad;
	background: #dab4ad;
}
.services_link.-color02::before {
	background-image: url(../img/top/services_item_deco02.png);
}
/*color03*/
.services_link.-color03 {
	border-color: #cbc693;
	background: #cbc693;
}
.services_link.-color03::before {
	background-image: url(../img/top/services_item_deco03.png);
}
/*color04*/
.services_link.-color04 {
	border-color: #abc198;
	background: #abc198;
}
.services_link.-color04::before {
	background-image: url(../img/top/services_item_deco04.png);
}
/*color05*/
.services_link.-color05 {
	border-color: #c7bbd3;
	background: #c7bbd3;
}
.services_link.-color05::before {
	background-image: url(../img/top/services_item_deco05.png);
}
/*color06*/
.services_link.-color06 {
	border-color: #dabdd1;
	background: #dabdd1;
}
.services_link.-color06::before {
	background-image: url(../img/top/services_item_deco06.png);
}
/*color07*/
.services_link.-color07 {
	border-color: #b0cac4;
	background: #b0cac4;
}
.services_link.-color07::before {
	background-image: url(../img/top/services_item_deco07.png);
}
/*color08*/
.services_link.-color08 {
	border-color: #b2bfce;
	background: #b2bfce;
}
.services_link.-color08::before {
	background-image: url(../img/top/services_item_deco08.png);
}
/*color09*/
.services_link.-color09 {
	border-color: #b5bb99;
	background: #b5bb99;
}
.services_link.-color09::before {
	background-image: url(../img/top/services_item_deco09.png);
}
/*color10*/
.services_link.-color10 {
	border-color: #a7c6d1;
	background: #a7c6d1;
}
.services_link.-color10::before {
	background-image: url(../img/top/services_item_deco10.png);
}
/*color11*/
.services_link.-color11 {
	border-color: #c8b5b4;
	background: #c8b5b4;
}
.services_link.-color11::before {
	background-image: url(../img/top/services_item_deco11.png);
}

/*================================
患者さまに優しい治療と
環境をご提供します
================================*/
.treat-enviro {
	position: relative;
	z-index: 1;
}
.treat-enviro::before {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	min-width: 1200px;
	height: 100%;
	background-image: url(../img/leaves01_L.png);
	background-position: top 2rem left;
	background-size: 38.4rem auto;
	background-repeat: no-repeat;
}
.treat-enviro .inner {
	max-width: calc(1000px + 14rem);
	/*padding-top: 10rem;*/
	padding-top: 20rem;
	padding-bottom: 10rem;
}
.treat-enviro .intro_article {
	/*padding-top: 10rem;*/
}
.treat-enviro .intro_heading .en {
	color: #517d73;
}
.treat-enviro .doctor {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 2rem;
	padding-bottom: 1.4rem;
	background-image: radial-gradient(circle, #78400a 2px, transparent 2px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 12px 4px;
}
.treat-enviro .job {}
.treat-enviro .name {
	width: fit-content;
	display: flex;
	justify-content: flex-start;
	/* align-items: center; */
	flex-direction: column;
	padding-top: 2rem;
}
.treat-enviro .name_jp {
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.6;
	color: #78400a;
	letter-spacing: 7px;
}
.treat-enviro .name_en {
	font-family: "Josefin Slab", serif;
	font-optical-sizing: auto;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.6;
	color: #9a8a70;
}




/*================================
ノートPC 1366px～0px
================================*/
@media (max-width: 1366px) {

	/*================================
	共通パーツ
	================================*/

	/*================================
	ヘッダー
	================================*/
	.header {}

	/*================================
	メインビジュアル
	================================*/
	#main-visual {}
	/*-------------------------------
	スライドエリア
	-------------------------------*/
	.mv-content {}
	/* スライド
	-------------------------------*/
	.mv-slider {}
	.swiper-wrapper {}
	.swiper-wrapper::before {}
	/*スライド画像
	--------------------------------*/
	.mv-slider .swiper-slide {}
	.mv-slide01 {}

	/*================================
	メインコンテンツ
	================================*/
	.main {}

	/*================================
	お知らせ・バナーなど
	================================*/
	.topics {}
	.topics .inner {}
	.topics_frame {}
	.topics_title {}
	.topics_text_wrap {}
	.topics_text {}

	/*================================
	新着情報
	================================*/
	.news {}
	.news .inner {}
	.news_heading {}
	.news_heading::before {}
	.news_heading .en {}
	.news_heading .jp {}
	.news_content {}
	.news_frame {}

	.news_scroll {}
	.news_list {}
	.news_list .date {}
	.news_list .article {}
	.news_list .article a {}

	/*================================
	写真とテキストレイアウト
	================================*/
	.intro_group {}
	.intro_group.-reverse {}
	.intro_picture {}
	.intro_picture_frame {}
	.intro_picture_frame::before {}
	.intro_group.-reverse .intro_picture_frame::before {}
	.intro_article {}
	.intro_heading {}
	.intro_heading .en {}
	.intro_heading .en::before {}
	.intro_heading .jp {}
	.intro_heading .small {}

	/*================================
	患者さまお一人おひとりが
	本当に納得いく治療をご提供します
	================================*/
	.counseling {}
	.counseling::before {}
	.counseling .inner {}
	.counseling .intro_heading .en {}

	/*================================
	ご家族で通える歯科医院を目指して
	================================*/
	.family {}
	.family::before {}
	.family::after {}
	.family_deco01 {}
	.family .inner {}
	.family .intro_heading .en {}
	.family_pickup_group {}
	.family_pickup_item {}
	.family_pickup_content {}
	.family_pickup_title {}

	/*================================
	総合的な幅広い診療
	================================*/
	.general {}
	.general::before {}
	.general .inner {}
	.general .intro_heading .en {}
	.general .content {}
	.general .content::before {}
	.general .content::after {}
	.general_pickup {}
	.general_pickup::before {}
	.general_pickup_picture {}
	.general_pickup_picture_frame {}
	.general_pickup_article {}
	.general_pickup .sub-heading {}
	.general_pickup .main-heading {}
	.general_pickup .main-heading .jp {}
	.general_pickup .main-heading .en {}

	/*================================
	診療内容
	================================*/
	.services {}
	.services::before {}
	.services .inner {}
	.services .inner::before {}
	.services_heading {}
	.services_heading .en {}
	.services_heading .en::before {}
	.services_heading .jp {}
	.services_heading .jp::before {}
	.services_leading {}
	.services_group {}
	.services_item {}
	.services_link {}
	.services_link::before {}
	.services_overview {}
	.services_name {}
	.services_name::before {}

	/*================================
	患者さまに優しい治療と
	環境をご提供します
	================================*/
	.treat-enviro {}
	.treat-enviro::before {}
	.treat-enviro .inner {}
	.treat-enviro .intro_article {}
	.treat-enviro .intro_heading .en {}
	.treat-enviro .doctor {}
	.treat-enviro .job {}
	.treat-enviro .name {}
	.treat-enviro .name_jp {}
	.treat-enviro .name_en {}

}


/*================================
TABLET横 1080px～0px
================================*/
@media (max-width: 1080px) {

	/*================================
	共通パーツ
	================================*/

	/*================================
	ヘッダー
	================================*/

	/*================================
	メインビジュアル
	================================*/
	#main-visual {
		background-image: url(../img/top/mv_bg_tab.png);
		background-size: contain
	}
	/*-------------------------------
	スライドエリア
	-------------------------------*/
	.mv-content {}
	/* スライド
	-------------------------------*/
	.mv-slider {}
	.swiper-wrapper {}
	.swiper-wrapper::before {}
	/*スライド画像
	--------------------------------*/
	.mv-slider .swiper-slide {}
	.mv-slide01 {}

	/*================================
	メインコンテンツ
	================================*/
	.main {}

	/*================================
	お知らせ・バナーなど
	================================*/
	.topics {}
	.topics .inner {}
	.topics_frame {}
	.topics_title {}
	.topics_text_wrap {}
	.topics_text {}

	/*================================
	新着情報
	================================*/
	.news {}
	.news .inner {}
	.news_heading {}
	.news_heading::before {}
	.news_heading .en {}
	.news_heading .jp {}
	.news_content {}
	.news_frame {}

	.news_scroll {}
	.news_list {}
	.news_list .date {}
	.news_list .article {}
	.news_list .article a {}

	/*================================
	写真とテキストレイアウト
	================================*/
	.intro_group {}
	.intro_group.-reverse {}
	.intro_picture {}
	.intro_picture_frame {}
	.intro_picture_frame::before {
		width: 70%;
		left: -26%;
	}
	.intro_group.-reverse .intro_picture_frame::before {
		right: -26%;
	}
	.intro_article {}
	.intro_heading {}
	.intro_heading .en {}
	.intro_heading .en::before {}
	.intro_heading .jp {}
	.intro_heading .small {}

	/*================================
	患者さまお一人おひとりが
	本当に納得いく治療をご提供します
	================================*/
	.counseling {}
	.counseling::before {
		min-width: 110vw;
	}
	.counseling .inner {}
	.counseling .intro_heading .en {}

	/*================================
	ご家族で通える歯科医院を目指して
	================================*/
	.family {}
	.family::before {
		min-width: 110vw;
	}
	.family::after {}
	.family_deco01 {
		right: -60px;
	}
	.family .inner {}
	.family .intro_heading .en {}
	.family_pickup_group {}
	.family_pickup_item {}
	.family_pickup_content {}
	.family_pickup_title {}

	/*================================
	総合的な幅広い診療
	================================*/
	.general {}
	.general::before {
		min-width: 110vw;
	}
	.general .inner {}
	.general .intro_heading .en {}
	.general .content {}
	.general .content::before {}
	.general .content::after {}
	.general_pickup {}
	.general_pickup::before {}
	.general_pickup_picture {}
	.general_pickup_picture_frame {}
	.general_pickup_article {}
	.general_pickup .sub-heading {}
	.general_pickup .main-heading {}
	.general_pickup .main-heading .jp {}
	.general_pickup .main-heading .en {}

	/*================================
	診療内容
	================================*/
	.services {}
	.services::before {
		min-width: 110vw;
	}
	.services .inner {}
	.services .inner::before {
		left: 100px;
	}
	.services_heading {}
	.services_heading .en {}
	.services_heading .en::before {}
	.services_heading .jp {}
	.services_heading .jp::before {}
	.services_leading {}
	.services_group {}
	.services_item {}
	.services_item:hover,
	.services_item:nth-child(2n):hover {}
	.services_link {}
	.services_link::before {}
	.services_overview {}
	.services_name {}
	.services_name::before {}

	/*================================
	患者さまに優しい治療と
	環境をご提供します
	================================*/
	.treat-enviro {}
	.treat-enviro::before {
		min-width: 110vw;
	}
	.treat-enviro .inner {}
	.treat-enviro .intro_article {}
	.treat-enviro .intro_heading .en {}
	.treat-enviro .doctor {}
	.treat-enviro .job {}
	.treat-enviro .name {}
	.treat-enviro .name_jp {}
	.treat-enviro .name_en {}
	
	
}


/*================================
TABLET縦 834px～0px
================================*/
@media (max-width: 834px) {

	/*================================
	共通パーツ
	================================*/

	/*================================
	ヘッダー
	================================*/

	/*================================
	メインビジュアル
	================================*/
	#main-visual {
		padding-top: 20px;
		padding-bottom: 12vw;
	}
	/*-------------------------------
	スライドエリア
	-------------------------------*/
	.mv-content {}
	/* スライド
	-------------------------------*/
	.mv-slider {}
	.swiper-wrapper {}
	.swiper-wrapper::before {
		background-size: 70% auto;
        top: 10%;
	}
	/*スライド画像
	--------------------------------*/
	.mv-slider .swiper-slide {
		aspect-ratio: 1.44927/1;
	}
	.mv-slide01 {
		background-image: url(../img/top/mv_img01_tab.png?0804);
	}

	/*================================
	メインコンテンツ
	================================*/
	.main {}

	/*================================
	お知らせ・バナーなど
	================================*/
	.topics {}
	.topics .inner {}
	.topics_frame {}
	.topics_title {}
	.topics_text_wrap {}
	.topics_text {}

	/*================================
	新着情報
	================================*/
	.news {}
	.news .inner {}
	.news_heading {}
	.news_heading::before {}
	.news_heading .en {}
	.news_heading .jp {}
	.news_content {}
	.news_frame {}

	.news_scroll {}
	.news_list {}
	.news_list .date {}
	.news_list .article {}
	.news_list .article a {}

	/*================================
	写真とテキストレイアウト
	================================*/
	.intro_group {
		flex-direction: column;
	}
	.intro_group.-reverse {
		flex-direction: column;
	}
	.intro_picture {
		width: 100%;
	}
	.intro_picture_frame {}
	.intro_picture_frame::before {}
	.intro_group.-reverse .intro_picture_frame::before {}
	.intro_article {
		width: 100%;
	}
	.intro_heading {}
	.intro_heading .en {}
	.intro_heading .en::before {}
	.intro_heading .jp {}
	.intro_heading .small {}

	/*================================
	患者さまお一人おひとりが
	本当に納得いく治療をご提供します
	================================*/
	.counseling {}
	.counseling::before {}
	.counseling .inner {}
	.counseling .intro_heading .en {}

	/*================================
	ご家族で通える歯科医院を目指して
	================================*/
	.family {}
	.family::before {}
	.family::after {}
	.family_deco01 {}
	.family .inner {}
	.family .intro_heading .en {}
	.family_pickup_group {}
	.family_pickup_item {
		width: calc(100%/2 - 3.5rem/2);
	}
	.family_pickup_content {}
	.family_pickup_title {}

	/*================================
	総合的な幅広い診療
	================================*/
	.general {}
	.general::before {}
	.general .inner {}
	.general .intro_heading .en {}
	.general .content {}
	.general .content::before {}
	.general .content::after {}
	.general_pickup {
		flex-direction: column;
		padding: 2rem 4rem 60px;
	}
	.general_pickup::before {}
	.general_pickup_picture {
		position: static;
		width: 100%;
	}
	.general_pickup_picture_frame {
		position: relative;
		width: 100%;
		top: -30px;
		left: auto;
	}
	.general_pickup_article {
		width: 100%;
	}
	.general_pickup .sub-heading {}
	.general_pickup .main-heading {}
	.general_pickup .main-heading .jp {}
	.general_pickup .main-heading .en {}

	/*================================
	診療内容
	================================*/
	.services {}
	.services::before {}
	.services .inner {}
	.services .inner::before {
		left: 20px;
	}
	.services_heading {}
	.services_heading .en {}
	.services_heading .en::before {}
	.services_heading .jp {}
	.services_heading .jp::before {}
	.services_leading {}
	.services_group {}
	.services_item {}
	.services_link {}
	.services_link::before {}
	.services_overview {}
	.services_name {}
	.services_name::before {}

	/*================================
	患者さまに優しい治療と
	環境をご提供します
	================================*/
	.treat-enviro {}
	.treat-enviro::before {}
	.treat-enviro .inner {
		padding-top: 10rem;
	}
	.treat-enviro .intro_article {
		/*padding-top: 0;*/
	}
	.treat-enviro .intro_heading .en {}
	.treat-enviro .doctor {}
	.treat-enviro .job {}
	.treat-enviro .name {}
	.treat-enviro .name_jp {}
	.treat-enviro .name_en {}


}


/*================================
SP表示 667px～0px
================================*/
@media (max-width: 667px) {

	/*================================
	共通パーツ
	================================*/

	/*================================
	ヘッダー
	================================*/

	/*================================
	メインビジュアル
	================================*/
	#main-visual {
		padding-top: 40px;

        padding-bottom: 45%;
		
	}
	/*-------------------------------
	スライドエリア
	-------------------------------*/
	.mv-content {}
	/* スライド
	-------------------------------*/
	.mv-slider {}
	.swiper-wrapper {}
	.swiper-wrapper::before {
        top: 75%;
		background-size: 100% auto;
	}
	/*スライド画像
	--------------------------------*/
	.mv-slider .swiper-slide {}
	.mv-slide01 {}

	/*================================
	メインコンテンツ
	================================*/
	.main {}

	/*================================
	お知らせ・バナーなど
	================================*/
	.topics {}
	.topics .inner {}
	.topics_frame {}
	.topics_title {}
	.topics_text_wrap {}
	.topics_text {}

	/*================================
	新着情報
	================================*/
	.news {}
	.news .inner {}
	.news_heading {}
	.news_heading::before {}
	.news_heading .en {}
	.news_heading .jp {}
	.news_content {}
	.news_frame {}

	.news_scroll {
		padding-right: 0;
		max-height: 160px;
	}
	.news_list {}
	.news_list .date {
		float: none;
		width: auto;
	}
	.news_list .article {
		padding-left: 0;
	}
	.news_list .article a {}

	/*================================
	写真とテキストレイアウト
	================================*/
	.intro_group {}
	.intro_group.-reverse {}
	.intro_picture {}
	.intro_picture_frame {}
	.intro_picture_frame::before {}
	.intro_group.-reverse .intro_picture_frame::before {}
	.intro_article {}
	.intro_heading {}
	.intro_heading .en {}
	.intro_heading .en::before {}
	.intro_heading .jp {
		font-size: 2.9rem;
	}
	.intro_heading .small {
		font-size: 2.4rem;
	}

	/*================================
	患者さまお一人おひとりが
	本当に納得いく治療をご提供します
	================================*/
	.counseling {}
	.counseling::before {
		background-size: 40% auto;
	}
	.counseling .inner {}
	.counseling .intro_heading .en {}

	/*================================
	ご家族で通える歯科医院を目指して
	================================*/
	.family {}
	.family::before {
		background-size: 40% auto;
	}
	.family::after {}
	.family_deco01 {
		width: 200px;
		top: 300px;
	}
	.family .inner {}
	.family .intro_heading .en {}
	.family_pickup_group {}
	.family_pickup_item {
		width: 100%;
	}
	.family_pickup_content {}
	.family_pickup_title {}

	/*================================
	総合的な幅広い診療
	================================*/
	.general {}
	.general::before {
		background-size: 40% auto;
	}
	.general .inner {}
	.general .intro_heading .en {}
	.general .content {}
	.general .content::before {}
	.general .content::after {
		width: 160px;
		right: -60px;
		bottom: 30px;
	}
	.general_pickup {}
	.general_pickup::before {}
	.general_pickup_picture {}
	.general_pickup_picture_frame {}
	.general_pickup_article {}
	.general_pickup .sub-heading {}
	.general_pickup .main-heading {}
	.general_pickup .main-heading .jp {}
	.general_pickup .main-heading .en {
		font-size: 2rem;
	}

	/*================================
	診療内容
	================================*/
	.services {}
	.services::before {
		background-position: top 20px left,top 20px right;
		background-size: 40% auto;
	}
	.services .inner {}
	.services .inner::before {}
	.services_heading {}
	.services_heading .en {}
	.services_heading .en::before {}
	.services_heading .jp {}
	.services_heading .jp::before {}
	.services_leading {}
	.services_group {}
	.services_item {}
	.services_item:nth-child(2n) {}
	.services_link {}
	.services_link::before {}
	.services_overview {}
	.services_name {}
	.services_name::before {}

	/*================================
	患者さまに優しい治療と
	環境をご提供します
	================================*/
	.treat-enviro {}
	.treat-enviro::before {
		background-size: 40% auto;
	}
	.treat-enviro .inner {}
	.treat-enviro .intro_article {}
	.treat-enviro .intro_heading .en {}
	.treat-enviro .doctor {}
	.treat-enviro .job {}
	.treat-enviro .name {}
	.treat-enviro .name_jp {
		  letter-spacing: 5.5px;
	}
	.treat-enviro .name_en {}


}


/*================================
SP表示 480px～0px
================================*/
@media (max-width: 480px) {

	
	/*================================
	診療内容
	================================*/
	.services {}
	.services::before {}
	.services .inner {}
	.services .inner::before {}
	.services_heading {}
	.services_heading .en {}
	.services_heading .en::before {}
	.services_heading .jp {}
	.services_heading .jp::before {}
	.services_leading {}
	.services_group {
		justify-content: flex-start;
		gap: 2rem 2rem;
		max-width: calc(17rem*2 + 2rem);
	}
	.services_item {
		max-width: 17rem;
		width: calc(100%/2 - 2rem/2);
	}
	.services_item:nth-child(2n) {
		transform: translateY(50%);
	}
	.services_item:hover {
		transform: scale(1.04);
	}
	.services_item:nth-child(2n):hover {
		transform: scale(1.04)translateY(50%);
	}
	.services_link {}
	.services_link::before {}
	.services_overview {}
	.services_name {
		font-size: 1.8rem;
		
	}
	.services_name::before {}


}

















