@charset "UTF-8";

@media only screen and (min-width: 1000px) {

	.pcNone {
		display: none !important;
	}
}




/* common /////////////////////////////////////////////////////////////////////////////////////////// */



.cmn_maxbox {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
	position: relative;
}

.cmn_maxbox svg{
	position:absolute;
	bottom:-10px;
	right:0;
	}

#wrapper {
    width: 100%;
	overflow: hidden;
}


/* ヘッダー */
.cmn_header {
	position: absolute;
	width: 100%;
	top : 0;
	min-height: 162px;
	background-image:url("../img/cmn_bg_cricle02.png");
	background-repeat:no-repeat;
	background-position: top center;
	background-size: 100% 100%;
}

#sub_header {
	top : 0;
	height: 256px;
	background-image:url("../img/cmn_bg_cricle01.png");
	overflow: hidden;
}





.cmn_header_container {
	position: relative;
}

.cmn_header_conts {
	display: flex;
	flex-wrap: wrap;
	align-items: center;

	padding: 20px 250px 20px 0;
}

.cmn_header_conts li:nth-of-type(1){
	width: 48%;
}

.cmn_header_conts li:nth-of-type(2) {
	width: 50%;
}

.cmn_header_conts li:nth-of-type(2) span {
	display: inline-block;
	padding: 16px;
	background: #d2edee;
}



/* TOPページメニュー */
.home_gnavi {
	position: absolute;
	width: 100%;
	bottom : 0;
	min-height: 115px;
	background-image:url("../img/cmn_bg_cricle03.png");
	background-repeat:no-repeat;
	background-position: top center;
	background-size: 100% 100%;
}

.home_gnavi ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;

	padding: 60px 0 0 0;

	font-weight: 600;
}

.home_gnavi li {
	text-align: center;
	font-size: 1.7rem;
}

.home_gnavi li a {
	display: block;
	padding: 5px 10px 5px 26px;

	background-repeat: no-repeat;
	background-position: left 6px;
}

.home_gnavi li a span {
	display: block;
	color: #4bb8ba;
	font-weight: normal;
	font-size: 1.2rem;
}


.home_gnavi .about a {
	background-image: url("../img/cmn_ico_menu_info.svg");
}

.home_gnavi .doctor a {
	background-image: url("../img/cmn_ico_menu_doctor.svg");
}

.home_gnavi .shishubyo a {
	background-image: url("../img/cmn_ico_menu_sishu.svg");
}

.home_gnavi .facility a {
	background-image: url("../img/cmn_ico_menu_facility.svg");
}

.home_gnavi .access a {
	background-image: url("../img/cmn_ico_menu_access.svg");
}



/* SUBページメニュー */
.sub_gnavi {
	width: 100%;
	bottom : 0;
	min-height: 115px;
}

.sub_gnavi ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;

	padding: 50px 200px 20px 20px;

	font-weight: 600;
}

.sub_gnavi li {
	text-align: center;
	font-size: 1.6rem;
}

.sub_gnavi li a {
	display: block;
	padding: 30px 10px 5px 10px;

	background-repeat: no-repeat;
	background-position: top center;
}

.sub_gnavi li a span {
	display: block;
	color: #4bb8ba;
	font-weight: normal;
	font-size: 1.2rem;
}

.sub_gnavi li:nth-of-type(1) {
	margin-top: -35px;
}

.sub_gnavi li:nth-of-type(2) {
	margin-top: -10px;
}

.sub_gnavi li:nth-of-type(3) {
	margin-top: 0px;
}

.sub_gnavi li:nth-of-type(4) {
	margin-top: 0px;
}
.sub_gnavi li:nth-of-type(5) {
	margin-top: -10px;
}



.sub_gnavi .about a {
	background-image: url("../img/cmn_ico_menu_info_b.svg");
}

.sub_gnavi .doctor a {
	background-image: url("../img/cmn_ico_menu_doctor_b.svg");
}

.sub_gnavi .shishubyo a {
	background-image: url("../img/cmn_ico_menu_shishu_b.svg");
}

.sub_gnavi .facility a {
	background-image: url("../img/cmn_ico_menu_facility_b.svg");
}

.sub_gnavi .access a {
	background-image: url("../img/cmn_ico_menu_access_b.svg");
}








/* ヘッダーお問い合わせ */
.cmn_header_contactbox {
	position: absolute;
	top:-100px;
	right: -120px;
	width: 320px;
	height: 320px;
	padding: 110px 10px 20px 10px;
	background: #e86f79;
	border-radius: 50%;
	border:2px dashed #FFFFFF;
	box-shadow:0px 0px 0px 3px #e86f79;

	text-align: center;
	font-weight: bold;
	color: #FFFFFF;
}

.cmn_header_contactbox .cmn_header_contact_title {
	font-size: 1.8rem;
	color: #f3ff00;
}

.cmn_header_contactbox strong {
	display: inline-block;
	font-size: 2.8rem;
	margin: 10px auto;
}

.cmn_header_contactbox strong img {
	display: inline-block;
	padding: 0 8px 8px 0;
}

.cmn_header_contactbox small {
	font-size: 1.4rem;
}

.cmn_header_contactbox small span {
	display: inline-block;
	padding: 0px 6px;
	margin: 0 4px 0 0;
	font-size:1.2rem;
	color: #e86f79;
	background: #FFFFFF;
}

.cmn_header_contactbox > div {
	margin: 10px auto auto auto;
}

.cmn_header_contactbox > div > a {
	display: inline-block;
	padding: 2px 10px;
	background: #f3ff00;
	color: #e86f79;
}

.cmn_header_contactbox > div > a > img {
	display: inline-block;
	margin-right: 3px;
	margin-bottom: 3px;
}





/* スマホメニュー */
.cmn_menu {
	cursor: pointer;
	margin-right: 20px;
	text-align: right;
}

.cmn_spmenu_box {
	position: fixed;
	top: 0;
	right: 0;
	width: 250px;
	/*padding: 20px;*/
	box-sizing: border-box;
	z-index: 1000;
}

.cmn_spmenu_box ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.cmn_spmenu_box ul li:nth-of-type(2) {
margin-left: 14px;
}

.cmn_menu_wrap {
	position: fixed;
	z-index:99999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 20px;
	text-align: center;
	background: #2babad;

	transform-origin: top right; 	/* 開閉位置 */
	transition: all 300ms ease;		/* スピード */
}

#cmn_menu_open {
	z-index: 1000;
	padding: 20px 20px 20px 0;
	right: -5px;
    margin: auto 20px auto auto;
	display: none;
}


.cmn_menu_item {
	overflow: hidden;
}


.cmn_hide_menu {
	/* ポップアップメニューが展開する（閉じる）方向を指定 */
	transform: scale(0, 0);
}

.cmn_menu_wrap {
	transform-origin: top right;
}

.cmn_hide_menu {
	transform: scale(1, 0);
}

.cmn_menu_close {
	color: #FFFFFF;
}


.cmn_spmenu {
	height: 100vh;
	margin: 40px auto auto auto;
}

.cmn_spmenu li {
	margin: auto auto 20px auto;
	text-align: center;
}

.cmn_spmenu li a {
	display: inline-block;
	width: 80%;
	max-width: 260px;

	font-size: 1.7rem;
	font-weight: bold;
	padding: 8px 10px;
	border-radius: 0.5em;
	color:  #2babad;

	background-repeat: no-repeat;
	background-position: 5% 50%;
	background-color: #FFFFFF;
}

.cmn_spmenu .about a  {
	background-image: url("../img/cmn_ico_menu_info_b.svg");
}

.cmn_spmenu .doctor a  {
	background-image: url("../img/cmn_ico_menu_doctor_b.svg");
}

.cmn_spmenu .shishubyo a  {
	background-image: url("../img/cmn_ico_menu_shishu_b.svg");
}

.cmn_spmenu .facility a  {
	background-image: url("../img/cmn_ico_menu_facility_b.svg");
}

.cmn_spmenu .access a  {
	background-image: url("../img/cmn_ico_menu_access_b.svg");
}

.cmn_spmenu_logo {
	padding-right: 15px;
}

.cmn_spmenu_logo img {
	width: 180px;
}







/* フッターお問い合わせ */
.cmn_contact {
	text-align: center;
	padding: 50px 0 80px 0;
}

.cmn_contact_container {
	background: url("../img/cmn_contact_bg_l.svg") no-repeat center left 50px, url("../img/cmn_contact_bg_r.svg") no-repeat center right 50px;
}


.cmn_contact_u {
	height: 50px;
    margin: -50px auto auto auto;
    background-image: url(../img/cmn_bg_cricle05.png);
    background-size: 100% 50px;
    background-position: center bottom;
    background-repeat: no-repeat;
}

.cmn_contact_title {
	margin: auto auto 30px auto;
	color: #46a5dc;
	font-size: 2.2rem;
	font-weight: bold;
}

.cmn_contact strong {
	display: inline-block;
	padding: 0 0 0 55px;

	font-size: 4rem;

	background: url("../img/cmn_ico_tel_b.svg") no-repeat center left;
}

.cmn_contact_time {
	margin: 16px auto;
	font-size: 1.4rem;
}



.cmn_footer_u, .cmn_sub_pagetitle_u {
	position: relative;
	height: 50px;
    margin: -50px auto auto auto;
    background-image: url(../img/cmn_gmap_d.png);
    background-size: 100% 50px;
    background-position: center bottom;
    background-repeat: no-repeat;
}

.cmn_footer_container {
	padding: 20px 10px 60px 10px;
	color: #FFFFFF;

	background:url("../img/cmn_footer_wave.png") repeat-x center bottom;
	background-color: #2babad;
}

.cmn_footer_container nav ul {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	font-weight: bold;
}

.cmn_footer_container nav ul li a:hover {
	color: #ffff00;
}

.cmn_footer_info {
	display: flex;
	max-width: 590px;
	margin: 40px auto;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.cmn_footer_info div:nth-of-type(1) {
	width: 200px;
}

.cmn_footer_info div:nth-of-type(2) {
	max-width: 350px;
}

.cmn_footer_container p {
	max-width: 768px;
	margin: auto;

}

address {
	padding: 20px 10px;
	text-align: center;
	font-style: normal;
	font-size: 1.4rem;
}

.footer_gotop {
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 1000;
    display: none;
    width: 100%;
    text-align: right;
	pointer-events: none;
}
.footer_gotop > a{
	pointer-events: auto;
}







/* 角丸 */
.rd10 {
	border-radius: 10px;
}

.rd20 {
	border-radius: 20px;
}

.rd50pct {
	border-radius: 50%;
}

/*基本の下マージン*/
.mgn30 {
	margin-bottom: 30px !important;
}

.mgn50 {
	margin-bottom: 50px !important;
}

.mgn80 {
	margin-bottom: 80px !important;
}

/* ボックスの下にカーブの色つき画像を配置 */

.cmn_u_lb_wh,
.cmn_u_wh_lb,
.cmn_u_bg_lb
{
	background-repeat:no-repeat;
	background-position: bottom center;
	padding-bottom: 90px;
}


.cmn_u_lb_wh {
	background-color: #f4fbfb;
	background-image: url("../img/cmn_bg_cricle04.png");
	background-size: 100% 50px;
}

.cmn_u_wh_lb {
	background-color: #FFFFFF;
	background-image: url("../img/cmn_bg_cricle05.png");
	background-size: 100% 50px;
}


/* sub */
#sub_main_visual {
	position: relative;
	margin: auto;
	z-index: 0;
	height: 700px;

	background-repeat: no-repeat;
	background-position:  top 190px center;
	background-size: auto 370px;
}

.sub_main_xxxx {
	background-image: url("../img/about_main.jpg");
}

.cmn_sub_pagetitle {
	position: absolute;
	width: 100%;
	bottom : 0;
	text-align: center;
	color: #FFFFFF;
}

.cmn_sub_pagetitle_conts {
	height: 185px;
	background-image: url("../img/cmn_bg_cricle05.png");
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: 100% 50px;
	background-color: #2babad;
}

.cmn_sub_pagetitle h1 {
	margin: auto auto 10px auto;
	font-size: 3.4rem;
}

.cmn_flex_container {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.cmn_flex_reverse {
	flex-flow: row-reverse;
}


.cmn_flex_conts_w {
	width: 60%;
	padding:0 10px;
}

.cmn_flex_conts_s {
	width: 40%;
	text-align: center;
	padding:0 10px;
}



/* 見出し */
h2 {
	padding: 80px 10px 70px 10px;

	text-align: center;
	color: #46a5dc;
	font-size: 2.5rem;
	background: url("../img/cmn_kame_laugh.svg") no-repeat top center;
}

h2 span {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
}

.doctor_main h2 {
	background: none;
	padding: 10px 10px 70px 10px;
}



.shishubyo_senmon_list_no,
h3 {
	font-size: 2.2rem;
	color: #46a5dc;
	margin: auto auto 20px auto;
	letter-spacing: 1px;
}

.shishubyo_senmon_list_no_conts,
h3 span {
	display: inline-block;
	padding: 0 10px;
	background:linear-gradient(transparent 70%, #fcfacf 70%);
}


.cmn_btn {
	display: flex;
	margin: 30px auto auto auto;
	justify-content: center;
	flex-wrap: wrap;
}

.cmn_btn_left {
	justify-content: flex-start;
}

.cmn_btn_right {
	justify-content:flex-end;
}

.cmn_btn_between {
	justify-content: space-between;
}

.cmn_btn span {
	display: block;
	margin: auto 5px;
}

.cmn_btn a {
	display: inline-block;
	min-width: 214px;
	text-align: center;
	padding: 10px 25px;
	background: #2babad;
	color: #FFFFFF;
	font-size: 1.8rem;
	border-radius: 5em;
}

/* シャドウ */
.cmn_box_shadow,
.cmn_sub_container,
.cmn_sub_container_nomargin
{
	box-shadow:0px 0px 20px 5px rgba(0,0,0,0.12);
	overflow: hidden;
}

.cmn_sub_container,
.cmn_sub_container_nomargin {
	padding: 45px;
	border-radius: 20px;
	background: #FFFFFF;
}

.cmn_sub_container {
	margin: auto auto 50px auto;
}

.cmn_sub_container_nomargin {
	margin-bottom:0;
}

/* 定義リスト */
.cmn_dl {
	width: 100%;
	margin: auto auto 40px auto;
	border-top: 2px solid #6aaea3;
	border-bottom: 2px solid #6aaea3;
}

.cmn_dl > div {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border-bottom: 1px dashed #6aaea3;
}

.cmn_dl > div:last-of-type {
	border: none;
}

.cmn_dl dt, .cmn_dl dd
{
	padding: 15px;
	text-align: left;
}

.cmn_dl dt {
	width: 20%;
	font-size: 1.5rem;
	text-align: left;
	font-weight: bold;
}

.cmn_dl dd {
	width: 80%;
}


/* 定義リストのもっと見るボタン */
.cmn_dl_more_outer{
    position: relative;
}
[id*="cmn_dl_more_checkbox_no"]{
    /* display: none; */
    position: absolute;
    z-index: -9999999999999;
    left: 0;
    top: 1200px;
    opacity: 0;
    font-size: 0;
	visibility: hidden;
}
.cmn_dl_more_label{
	position: absolute;
	bottom: 0;
    /* display: inline-flex;
    justify-content: center;
    align-items: flex-end; */
	width: 100%;
	height: 110px;
	cursor: pointer;
	text-align: center;
	background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(244, 251, 251, 0.95) 90%);
}
[id*="cmn_dl_more_checkbox_no"]:checked ~ .cmn_dl_more_label{
	background: none;
}
.cmn_dl_more_label_conts{
    position: absolute;
    left: 50%;
    bottom: 0.5em;
    transform: translate(-50%,0);
    display: inline-block;
    padding: 0.4em 2.4em;
    background: #2babad;
    color: #FFFFFF;
    font-size: 1.4rem;
    border-radius: 5em;
    /* font-weight: 500; */
}
.cmn_dl_more_label_conts_isopen{
    display: none;
}
[id*="cmn_dl_more_checkbox_no"]:checked ~ .cmn_dl_more_label .cmn_dl_more_label_conts_isclose{
    display: none;
}
[id*="cmn_dl_more_checkbox_no"]:checked ~ .cmn_dl_more_label .cmn_dl_more_label_conts_isopen{
    display: inline;
}
[id*="cmn_dl_more_checkbox_no"]:checked ~ .cmn_dl_more_wrap{
    padding-bottom: calc(110px * 0.3);
}
.cmn_dl_more{
    overflow-y: hidden;
	height: 1200px;
    border-bottom: 0;
}
[id*="cmn_dl_more_checkbox_no"]:checked ~ .cmn_dl_more_wrap .cmn_dl_more{
    height: auto;
    border-bottom: 2px solid #6aaea3;
}


/* jquery上書き */
.sl-wrapper .sl-image .sl-caption {
	background: rgba(0,0,0,0.6) !important;;
}


main {
	background-color: #f4fbfb;
}

.doctor_main {
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif, Meiryo, メイリオ, Osaka;
}


/* home /////////////////////////////////////////////////////////////////////////////////////////// */


#home_main_visual {
	position: relative;
	margin: auto;
	z-index: 0;
}

.header_mainimg {
	height: 715px !important;
	position: relative !important;
}

.header_mainimg .slide01,
.header_mainimg .slide02,
.header_mainimg .slide03,
.header_mainimg .slide04 {
	background-size: auto 538px;
	background-position: center;
	background-repeat: no-repeat;
	height: 715px !important;
}


.header_mainimg .slide01 {
    background-image: url(../img/home_main_slide01.jpg);
}

.header_mainimg .slide02 {
    background-image: url(../img/home_main_slide02.jpg);
}

.header_mainimg .slide03 {
    background-image: url(../img/home_main_slide03.jpg);
}

.slick-dots {
	bottom: 134px !important;
	z-index: 9999;
}

.slick-dotted.slick-slider {
	margin-bottom: 0 !important;
}


/* キャッチコピー */
.home_copy {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: 100%;
}

.home_copy p {
	position: relative;
}

.home_copy p span {
	display: inline-block;
	padding: 6px 20px;
	margin-bottom: 20px;
	font-size: 3.2rem;
	color: #2babad;
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 4%, rgba(255,255,255,0.7) 50%, rgba(255,255,255,0.6) 96%, rgba(255,255,255,0) 100%);
}

.home_copy span:last-of-type {
	margin-left: 20px;
}


/* 診療時間 */




.home_info_container {
	display: flex;
	padding: 50px 0 0 0;
	justify-content: space-between;
	flex-wrap: wrap;
}

.home_info_container section {
	width: 48%;
}




.home_schedule {
	max-width: 100%;
}

/* トップおよび藤田歯科についての診療時間 */
.home_schedule table, .about_schedule table {
	width: 100%;
	margin: auto auto 10px auto;
	border-top: 2px solid #6aaea3;
	border-bottom: 2px solid #6aaea3;
	font-weight: bold;
}

.home_schedule th, .home_schedule td,
.about_schedule th, .about_schedule td
{
	padding: 15px 5px;
	text-align: center;
}

.home_schedule th.home_schedule_time,
.about_schedule th.about_schedule_time
{
	width: 128px;
}

.home_schedule td,
.about_schedule td
{
	color: #6aaea3;
}

.home_schedule .yasumi,
.about_schedule .yasumi
{
	color: #4d4d4d;
}

.home_schedule .tan,
.about_schedule .tan
{
	color: #e88b8b;
}

.home_schedule table tr:nth-of-type(2),
.about_schedule table tr:nth-of-type(2)
{
	border-top: 1px dashed #6aaea3;
	border-bottom: 1px dashed #6aaea3;
}

.home_schedule dl,
.about_schedule dl
{
	display: flex;
	font-size: 1.4rem;
}


/* お知らせ・新着情報 */

.home_news {
	position: relative;
	z-index: 0;
}

.home_news_post article {
	margin: auto auto 12px auto;
	background: #FFFFFF;
	padding: 8px 15px;	/* 暫定 */
}

/*.home_news_post article a {
	display: block;
	padding: 8px 15px;
}
*/


.home_news_post article a:hover {
	color: #108787;
	text-decoration: underline;
}

.home_news_post article dt {
	font-size: 1.3rem;
	font-weight: bold;
	color : #2babad;
}

.home_news_post article dt span {
	display: inline-block;
	margin-left: 5px;
	background: #e86d6d;
	color: #FFFFFF;
	font-size: 1.1rem;
	font-weight: bold;
	padding: 4px 6px 2px 6px;
	line-height: 100%;
}

.home_news_listbtn {
	display: inline-block;
	position: absolute;
	top :6px;
	right: 0px;
}

.home_news_listbtn a {
	display: inline-block;
	padding: 5px 8px 4px 34px;

	font-size: 1.4rem;
	color: #FFFFFF;
	background: url("../img/cmn_ico_note.svg") no-repeat 10px 50%;
	background-color: #6aaea3;
}


/* 藤田歯科のご紹介 */
.home_about {
	padding: 0 0 80px 0;

	background: url("../img/home_about_bg2.jpg") no-repeat top 40px right 0px,
	url("../img/home_about_bg1.jpg") no-repeat top 200px left 0px,
	linear-gradient(to bottom,  rgba(255,255,255,1) 1%,rgba(255,255,255,1) 30%,rgba(255,255,255,1) 60%,rgba(255,255,255,0) 100%) ;

	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );

}

.home_greeting {
	text-align: center;
	line-height: 240%;
	font-size: 1.6rem;
}

.home_greeting_doctor {
	margin: 30px auto 80px auto;
	text-align: center;
}


.home_about_conts {
	display: flex;
	max-width: 1060px; margin: auto;
	justify-content: space-between;
	flex-wrap: wrap;
}

.home_about_conts > div {
	width: 320px;
	height: 370px;

	background-color: #FFFFFF;
	box-shadow:0px 0px 20px 5px rgba(17,79,76,0.08);
	border-radius: 20px;
	overflow: hidden;
}

.home_about_conts dt {
	overflow: hidden;
}


.home_about_conts dt a {
	position: relative;
	display: block;
	height: 188px;

	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.home_about_conts > div {
	position: relative;
}

.home_about_conts .home_about_shishubyo dt a {
	background-image: url("../img/home_info_sishu.jpg");
}

.home_about_conts .home_about_facility dt a {
	background-image: url("../img/home_info_facility.jpg");
}

.home_about_conts .home_about_doctor dt a {
	background-image: url("../img/home_info_doctor.jpg");
}

.home_about_conts a:hover {
	transform: scale(1.04);
}

.home_about_conts dt strong {
	display: inline-block;
	position: absolute;
	top: 60px;
	right: 0;
	padding: 6px 30px;
	font-size: 2rem;
	letter-spacing: 2px;
	color: #46a5dc;
	border-top-left-radius: 1.5em;
	border-bottom-left-radius: 1.5em;
	background: rgba(255,255,255,0.7)
}

.home_about_conts dd {
	padding: 16px;
}

.home_about_conts dd a {
	display: block;
	position: absolute;
	bottom:20px;
	right: 20px;
	color: #2babad;
}

.home_about_annai{
	width: 100%;
	max-width: 1060px;
	padding: 2em;
	border: 2px solid #6aaea3;
	margin-top: 4em;
	background-color: #FFFFFF;
	text-align: center;
	word-break: break-all;
	> h3{
		> span{
			background: none;
		}
	}
	> p{
		> a{
			text-decoration: underline;
		}
	}
}
@media screen and (max-width: 1000px) {
	.home_about_annai{
		width: calc(100% - (20px * 2));
		margin-left: auto;
		margin-right: auto;
	}
}



/* HOME Googlemap */

.home_access {
	position: relative;
}

.home_gmap_u {
	position: absolute;
	width: 100%;
	height: 30px;
	top:0;
	background: url("../img/cmn_gmap_u.png") no-repeat top center;
	background-size: 100% 30px;
}



/* about /////////////////////////////////////////////////////////////////////////////////////////// */

.sub_main_about {
	background-image: url("../img/about_main.jpg");
}


.about_msg {
	margin: auto auto 40px auto;
	justify-content: space-between;
}


.about_msg_txt {
	width: 62%;
}

.about_msg_photo {
	position: relative;
	width: 32%;
}

.about_msg_txt strong {
	font-size: 2.5rem;
	display: block;
	margin-bottom: 10px;
	line-height: 140%;
}


.about_msg_photo strong {
	display: inline-block;
	position: absolute;
	bottom: 40px;
	right: 0;
	padding: 6px 30px;
	font-size: 1.9rem;
	letter-spacing: 2px;
	border-top-left-radius: 1.5em;
	border-bottom-left-radius: 1.5em;
	background: rgba(255,255,255,0.7)
}


.about_shinryo .cmn_sub_container {
	max-width: 810px;
}


.about_msg_photo strong span {
	font-size: 1.3rem;
}

.about_kamoku h4 {
	margin: auto auto 20px auto;
	text-align: center;
	font-size: 2.5rem;
}

.about_kamoku h4  small {
	font-size: 1.6rem;
}

.about_infection_ctrl ul li {
	padding-left: 15px;
}

.about_reserve {
	text-align: left;
}

.about_reserve strong {
	font-size: 2.8rem;
}





/* doctor /////////////////////////////////////////////////////////////////////////////////////////// */
.sub_main_doctor {
	background-image: url("../img/doctor_main.jpg");
}



.doctor_msg {
	position: relative;
	display: flex;
	max-width: 1100px;
	margin: auto auto 40px auto;
}

.doctor_msg_txt {
	padding: 45px;
	max-width: 72%;
	background: #FFFFFF;
}

.doctor_msg_txt p {
	padding: 0 10px 0 0;
}

.doctor_msg_txt strong {
	display: inline-block;
	margin: auto auto 20px auto;
	font-size: 2.5rem;
	letter-spacing: 2.5px;
}

.doctor_msg_photo {
	position: absolute;
	width: 340px;
	top : 50px;
	right: 0;
}

.doctor_msg_sign {
	text-align: right;
	padding-right: 20px;
}

.doctor_msg_sign img {
	max-width: 160px;
}

.doctor_position, .doctor_text {
	display: flex;
	flex-wrap: wrap;
	justify-content: start;

	margin: 30px auto 20px auto;
}

.doctor_position li, .doctor_text li {
	max-width: 220px;
	margin: 0 20px 20px 0;
}
.doctor_position li:hover, .doctor_text li:hover {
	transform: scale(1.02);
	transition: .2s;
}

.doctor_text li p {
	margin: 10px;
	text-align: center;
}

.doctor_shozoku dt {
	width:30%;
}

.doctor_shozoku dd {
	width:70%;
}


.doctor_award {
	display: flex;
	flex-wrap: wrap;
	justify-content: start;
	margin: auto auto 80px auto;
}

.doctor_award li {
	width: 480px;
	margin: auto 20px 30px 0;
}

.doctor_award li:hover {
	transform: scale(1.02);
	transition: .2s;
}

.doctor_award li a {
	display: flex;
	height: 175px;
	overflow: hidden;
}

.doctor_award_photo {
	width: 210px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.doctor_award_info {
	display: flex;
	align-items: center;
	padding: 15px;
}



/* shishyubyo (periodontal) /////////////////////////////////////////////////////////////////////////// */
.sub_main_shishubyo {
	background-image: url("../img/shishubyo_main.jpg");
}


.shishubyo_flex_container {
	display: flex;
	position: relative;
	align-items: flex-start;
	margin-bottom: 50px;
}

.shishubyo_txt {
	position: relative;
	width: 54%;;
	max-width: 540px;
	padding: 40px;
	border-radius: 20px;
	z-index: 1;
}

.shishubyo_img {
	position: relative;
	max-width: 500px;
	width: 50%;
	margin-left: -30px;
	margin-bottom: 50px;
	padding: 60px 70px 60px 80px;
	background: #FFFFFF;
	border-radius: 20px;
	z-index: 0;
	right: 0;
	top: 50px;
}

.shishubyo_flex_container .midori {
	background: #dff3f3;
}

.shishubyo_flex_container .aka {
	background: #fceaeb;
}


.shishubyo_txt h3 {
	text-align: center;
	font-size: 2.5rem;
	font-weight: normal;
	color: #4d4d4d;
}

.shishubyo_flex_container .midori h4,
.shishubyo_flex_container .aka h4 {
	font-size: 2rem;
	margin: auto auto 10px auto;
}

.shishubyo_flex_container .midori h4 {
	color: #118e8e;
}
.shishubyo_flex_container .aka h4 {
	color: #dd4558;
}

.shishubyo_txt span.att {
	color: #dd4558;
	background: none;
}

.shishubyo_txt span.att02 {
	color: #118e8e;
	background: none;
}

.shishubyo_img_list {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.shishubyo_img_list li {
	width: 46%;
	margin-bottom: 15px;
	margin-top: 15px;
}

.shishubyo_img_list li img {
	border-radius: 15px;
	border: 2px solid #b3b3b3;
}

.shishubyo_img_list li p {
	text-align: center;
	margin: 10px auto auto auto;
}

.shishubyo_img_2col {
	width: 100% !important;
}

.shishubyo_comment {
	border: 0 !important;
}

.shishubyo_chkpoint {
	margin: auto auto 20px auto;
	text-align: center;
}

.shishubyo_chkpoint img {
	display: inline-block;
}


.shishubyo_care_flow > div > p {
	margin: 30px auto;
	text-align: center;

}

.shishubyo_flow {
	margin: 50px auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.shishubyo_flow li {
	background: #FFFFFF;
	max-width: 300px;
	padding: 30px;
	margin-bottom: 30px;
	text-align: center;
}

.shishubyo_flow li strong {
	display: block;
	margin: 20px auto;
	color: #2babad;
	font-size: 1.8rem;
}

.shishubyo_flow li img {
	display: block;
	margin: auto auto 20px auto;
}

.shishubyo_flow li.arr {
	width: 50px;
	padding: 0;
	background: url("../img/shishubyo_flow_arr.svg") no-repeat center / 15px auto;
}

.shishubyo_flow li p {
	text-align: left;
}

.shishubyo_flex02_kodawari02{
	align-items: center;
	flex-direction: row-reverse;
}
.shishubyo_flex02_kodawari03{
	align-items: center;
}
.shishubyo_flex02_silent{
	flex-direction: row-reverse;
}
.shishubyo_flex02_img_wrap.shishubyo_flex02_img_wrap{
	padding: 0;
}
.shishubyo_flex02_img_wrap_kodawari01,
.shishubyo_flex02_img_wrap_kodawari02,
.shishubyo_flex02_img_wrap_kodawari03{
	width: 54%;
	max-width: 540px;
}
.shishubyo_flex02_img_wrap_kodawari01{
	margin-left: 0;
	margin-left: -80px;
}
.shishubyo_flex02_img_wrap_kodawari02{
	top: 20px;
	margin-right: -80px;
}
.shishubyo_flex02_img_wrap_kodawari03{
	top: 20px;
	margin-left: 0;
	margin-left: -80px;
}
.shishubyo_flex02_img_wrap_silent{
	top: 60px;
	margin-left: 0;
	margin-right: -30px;
}
.shishubyo_senmon_outline01{
	text-align: center;
}
.shishubyo_senmon_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 60px;
	margin-bottom: 40px;
}
.shishubyo_senmon_list_item{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: 32%;
	max-width: 300px;
	padding: 20px 45px 30px;
	border-radius: 20px;
	background-color: #ffffff;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.2);
}
.shishubyo_senmon_list_no,
.shishubyo_senmon_list_title,
.shishubyo_senmon_list_img{
	flex-shrink: 0;
}
.shishubyo_senmon_list_no{
	font-size: 2rem;
	font-weight: 800;
}
.shishubyo_senmon_list_title{
	color: #2BABAD;
	font-size: 1.8rem;
	font-weight: 800;
	text-align: center;
}
.shishubyo_senmon_list_desc{
	height: 100%;
}
.shishubyo_senmon_list_img{
	border-radius: 10px;
	margin-top: 15px;
}



/* facility /////////////////////////////////////////////////////////////////////////////////////////// */
.sub_main_facility {
	background-image: url("../img/facility_main.jpg");
}


.facility_photo_list {
	display: flex;
	margin: 0 auto 50px auto;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.facility_photo_list li {
/*	display: flex;
	align-items: center;
*/
	width: 30%;
	margin: 10px 1.6%;
	/*max-height: 200px;*/
}

.facility_photo_list li img {
	display: block;
	box-shadow:0px 0px 20px 5px rgba(0,0,0,0.12);
	overflow: hidden;
	border-radius: 10px;
}

.facility_photo_list li p {
	margin: 20px auto auto auto;
	text-align: center;
}


.facility_setubi {
	margin-bottom: 50px;
}

 .facility_comment {
 	margin: auto auto 50px auto;
	text-align: center;
 }

/* access /////////////////////////////////////////////////////////////////////////////////////////// */
.sub_main_access {
	background-image: url("../img/access_main.jpg");
}


.access_flexbox {
	overflow: hidden;
	align-content: stretch;
	background: #FFFFFF;
	border-radius: 20px;
	display: flex;
	height: 330px;
	margin-bottom: 50px;
}

.access_photo {
	width: 50%;
	height: auto;
	background: url("../img/facility_gaikan.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

.access_info {
	width: 50%;
	padding: 50px;
}

.access_info strong {
	font-size: 1.8rem;
	font-weight: normal;
	display: block;
	margin-bottom: 20px;
}

.access_map {
	text-align: center;
}

.access_map .pc {

}

.access_map .sp {
	display: none;
}


/* news /////////////////////////////////////////////////////////////////////////////////////////// */
.sub_main_news {
	background-image: url("../img/news_main.jpg");
}

.sub_news_post {
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}

.sub_news_post article {
	width: 49%;
	margin: inherit;
	margin-bottom: 20px;
}

.news_post_box {
	padding: 20px;
	background: #FFFFFF;
}

.news_post_date {
	text-align: right;
	margin: auto auto 20px auto;
}



/* CMS /////////////////////////////////////////////////////////////////////////////////////////// */



.cms_page_box {
	padding: 20px;
	background: #FFFFFF;
}






