@charset "UTF-8";
/* Scss Document */
/*
.itoptel1 img {
	transform-origin:right top;
}
*/

.changeBanner {
	position: absolute;
	left: 5%;
	bottom: 5%;
	width: 90%;
	max-width: 380px;
	background-color: #ec4c4c;
	text-align: center;
	padding: 45px 0;
	text-decoration: none !important;
	transition: 0.3s;
}

.changeBanner:hover {
	opacity: 0.8;
}

.changeBanner span {
	color: #fff;
	font-size: 17px;
	letter-spacing: 1.5px;
}

.itoplogo img,
.itop1,
.itoptel1 img,
.iad,
.itopnet,
.newbanner img {
	transition: 0.3s ease-in-out;
}

.itoptel1 {
	text-align: right;
}

.iad {
	transform-origin: right top;
}

.itop1.headMove {
	padding: 10px;
	top: 10px;
}

.itop1.headMove .itoplogo img {
	width: 250px;
	height: auto;
}

.itop1.headMove .itoptel1 img {
	width: 240px;
	height: auto;
}

.itop1.headMove .iad {
	padding-top: 10px;
	transform: scale(0.8);
}

.itop1.headMove .itopnet .newbanner img {
	width: 200px;
	height: auto;
}

.lp_banner {
	display: none;
}

/************/
.scale_img {
	transform: scale(0.7);
	transition: 0.3s ease-in-out;
}

.scale_img2 {
	transform: scale(1);
	transition: 0.3s ease-in-out;
}

.flexslider {
	position: relative;
	width: 100%;
	height: 47vw;
}

.f_flex {
	display: flex;
}
.f_link_flex{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.f_link_flex img{
	width: 250px;
}
#fade1 {
	background-image: url(../images/fade1.jpg);
}

#fade2 {
	background-image: url(../images/fade2.jpg);
}

#fade3 {
	background-image: url(../images/fade3.jpg);
}

#fade1,
#fade2,
#fade3 {
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
	height: 47vw;
}

.itop1 {
	position: fixed;
	z-index: 9990;
	top: 30px;
	right: 0;
	bottom: auto;
	left: 0;
	margin: 0 auto;
	max-width: 1600px;
	width: 94%;
	background-color: #fff;
	padding: 20px;
	border-radius: 10px;
}

.itop1 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.itop1 a {
	transition: 0.3s ease-in-out;
}

.itop1 a:hover {
	opacity: 0.7;
}

.h_banner img {
	width: 320px;
	height: auto;
}

.itoplogo img {
	width: 320px;
	height: auto;
}

.itoptel {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	text-align: right;
}

.itoptel div:nth-child(1) {
	margin-right: 30px;
}

.itoptel1 img {
	width: 362px;
	height: auto;
}

.iad {
	text-align: right;
	padding-top: 15px;
	line-height: 1.4;
}

.itopnet img {
	width: 260px;
	height: auto;
}

.newbanner img {
	width: 260px;
	height: auto;
}

.itopsia {
	position: absolute;
	z-index: 999;
	top: 15%;
	bottom: 0;
	left: 14%;
	right: auto;
	margin: auto 0;
	width: 30% !important;
	height: auto;
}

.itophikari {
	position: absolute;
	z-index: 990;
	top: 16%;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto 0;
	width: 50% !important;
	height: auto;
}

.itophapi {
	position: absolute;
	z-index: 999;
	top: 0;
	bottom: 0;
	left: auto;
	right: 0;
	margin: auto 0;
	width: 45% !important;
	height: auto;
}

.itopsin {
	position: absolute;
	z-index: 999;
	top: 45%;
	bottom: 0;
	left: auto;
	right: 13%;
	margin: auto 0;
	width: 28% !important;
	height: auto;
}

.itopmenu ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 40px 0;
}

.itopmenu ul li {
	width: 10.5%;
	text-align: center;
	border-right: 2px dotted #9c9c9c;
	height: 40px;
	padding-top: 10px;
}

.itopmenu ul li:nth-child(1) {
	border-left: 2px dotted #9c9c9c;
}

.itopmenu ul li:nth-child(2) {
	padding-top: 0;
}

.itopmenu ul li a {
	color: #333;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

.itopmenu ul li a:hover {
	color: #03a356;
}

.all {
	padding: 100px 0 0 0;
}

.if1 {
	padding: 100px 0;
}

.if2 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-weight: bold;
	align-items: center;
}

.if2 ul li {
	width: 45%;
}

.iflogo {
	max-width: 320px;
	width: 80%;
	height: auto;
	margin-bottom: 10px;
}

.if212 {
	padding-top: 20px;
}

.iftel {
	max-width: 350px;
	width: 80%;
	height: auto;
	margin-top: 10px;
	margin-bottom: 20px;
}

.ifnet {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.ifnet div {
	width: 48%;
}

.ifnet div a {
	transition: 0.3s ease-in-out;
}

.ifnet div a:hover {
	opacity: 0.7;
}

.ifnet div img {
	width: 100%;
	height: auto;
}

.ifmap iframe {
	width: 100%;
	height: 350px;
}

.if3 {
	position: relative;
	background-image: url(../images/iback8.jpg);
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	padding: 80px 0;
	color: #fff;
}

.if33 img {
	width: 100%;
	height: auto;
	max-width: 550px;
}

.if33 a:hover {
	opacity: 0.6;
	transition: 0.3s;
}

.sp_if33 {
	display: none;
}

.if32 {
	position: absolute;
	bottom: 90px;
	right: 3%;
	width: 250px;
}

.if32 ul {
	display: flex;
	flex-wrap: wrap;
}

.if32 ul li {
	padding: 0 20px;
}

.if32 ul li a {
	transition: 0.3s ease-in-out;
}

.if32 ul li a:hover {
	opacity: 0.7;
}

.if32 ul li img {
	width: 35px;
	height: auto;
}

.if31 ul {
	display: flex;
	flex-wrap: wrap;
}

.if31 ul li {
	width: 240px;
}

.if31 ul li a {
	position: relative;
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 8px 0;
	font-weight: bold;
}

.if31 ul li a:before {
	content: ">";
	position: absolute;
	top: 6px;
	left: -20px;
	opacity: 0;
	transition: 0.3s ease-in-out;
}

.if31 ul li a:hover:before {
	opacity: 1;
}

#copy {
	text-align: center;
	padding: 10px 0;
	font-size: 12px;
}

#copy a {
	color: #333;
}

/*********************************** index ***************************************/
.i1 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.i1 ul li {
	width: 55%;
}

.i1 ul li:nth-child(2) {
	width: 40%;
}

.i11 {
	border: 2px dotted #9c9c9c;
	border-radius: 20px;
	padding: 60px;
	height: 480px;
}

.i12 {
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 20px;
}

.i121 {
	position: relative;
	top: -5px;
	font-size: 18px;
	color: gray;
	font-weight: normal;
	padding-left: 20px;
}

.i13 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.i13 a {
	width: 45%;
	display: block;
	text-decoration: none;
	transition: 0.3s ease-in-out;
	color: #333;
}

.i13 a:hover {
	opacity: 0.7;
}

.i13 a img {
	width: 100%;
	height: auto;
}

.itime {
	color: gray;
	font-size: 18px;
	padding-top: 10px;
}

.i2all {
	position: relative;
	padding: 100px 0 450px;
}

.ihai {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}

.i2 {
	display: table;
	width: 100%;
}

.i21 {
	position: relative;
	top: 45px;
	display: table-cell;
	vertical-align: top;
	width: 130px;
}

.i23 {
	display: table-cell;
}

.i23 ul {
	display: table;
	width: 100%;
}

.i23 ul li {
	display: table-cell;
	width: 33.333%;
	padding: 0 2%;
}

.i23 ul li img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto auto;
	width: 100%;
	height: auto;
}

.i23 ul li a {
	position: relative;
	height: 320px;
	overflow: hidden;
	display: block;
	transition: 0.3s ease-in-out;
}

.i23 ul li a:hover {
	opacity: 0.7;
}

.i24 img {
	width: 100%;
	height: auto;
}

.i22 {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 30px;
	line-height: 1.3;
	height: 240px;
}

.i221 {
	font-size: 16px;
	position: relative;
	top: 15px;
	color: gray;
	font-weight: normal;
}

.iin2 {
	position: relative;
	top: 130px;
	left: 33px;
	width: 25px;
	height: auto;
}

.i3all {
	position: relative;
}

.isan {
	position: absolute;
	bottom: -17%;
	left: 0;
	width: 100%;
	height: auto;
}

.iha {
	position: absolute;
	z-index: 9;
	bottom: 80px;
	right: 10%;
	width: 300px;
	height: auto;
}

.i3 {
	position: relative;
	z-index: 9;
	background-image: url(../images/iback.png);
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	height: 850px;
	margin-top: -340px;
}

.i32 {
	font-size: 38px;
	color: #616161;
	padding-top: 100px;
}

.ikuwa a {
	position: relative;
	display: block;
	margin: 0 0 0 auto;
	margin-top: 440px;
	width: 220px;
	text-align: center;
	padding: 20px;
	border-radius: 35px;
	background-color: #beb535;
	border: 1px solid #beb535;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

.ikuwa a:hover {
	background-color: #fff;
	color: #beb535;
	border: 1px solid #beb535;
}

.ikuwa2 a {
	position: relative;
	display: block;
	margin-top: 40px;
	width: 280px;
	text-align: center;
	padding: 20px;
	border-radius: 35px;
	background-color: #beb535;
	border: 1px solid #beb535;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

.ikuwa2 a:hover {
	background-color: #fff;
	color: #beb535;
	border: 1px solid #beb535;
}

.ikuwa3 a {
	position: relative;
	display: block;
	margin: 0 auto;
	margin-top: 60px;
	width: 220px;
	text-align: center;
	padding: 20px;
	border-radius: 35px;
	background-color: #beb535;
	border: 1px solid #beb535;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

.ikuwa3 a:hover {
	background-color: #fff;
	color: #beb535;
	border: 1px solid #beb535;
}

.ikuwa5 a {
	position: relative;
	z-index: 9;
	display: block;
	margin: 0 0 0 auto;
	margin-top: 100px;
	width: 220px;
	text-align: center;
	padding: 20px;
	border-radius: 35px;
	background-color: #beb535;
	border: 1px solid #beb535;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

.ikuwa5 a:hover {
	background-color: #fff;
	color: #beb535;
	border: 1px solid #beb535;
}

.i4all {
	position: relative;
	background-image: url(../images/ihai2.png);
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	height: 100%;
	margin-top: 200px;
}

.i40 {
	position: absolute;
	top: 100px;
	left: 50%;
	margin-left: -600px;
	font-weight: bold;
}

.i41 {
	max-width: 1400px;
	width: 100%;
	display: block;
	margin: 0 0 0 auto;
}

.i41 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.i41 ul li {
	width: 50%;
}

.i42 {
	position: relative;
	z-index: 9;
	left: 100px;
	padding-top: 130px;
}

.i421 {
	position: relative;
	font-size: 30px;
	color: #616161;
}

.i422 {
	padding-top: 70px;
	line-height: 1.8;
	text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
}

.i4221 {
	background: linear-gradient(transparent 60%, #deda9a 60%);
	font-size: 20px;
}

.i01 {
	position: absolute;
	top: -50px;
	left: -50px;
	height: 140px;
	width: auto;
}

.i43 {
	position: relative;
}

.igazou1 {
	position: relative;
	width: 100%;
	height: auto;
}

.iha2 {
	position: absolute;
	top: 10px;
	left: 20%;
	width: 160px !important;
	height: auto;
}

.iha3 {
	position: absolute;
	bottom: -40px;
	left: 20%;
	width: 120px !important;
	height: auto;
}

.iha4 {
	position: absolute;
	top: 15px;
	left: 20%;
	width: 120px !important;
	height: auto;
}

.iha5 {
	position: absolute;
	top: 20px;
	right: 20%;
	width: 120px !important;
	height: auto;
}

.iha6 {
	position: absolute;
	bottom: -80px;
	left: 20%;
	width: 120px !important;
	height: auto;
}

.iha7 {
	position: absolute;
	top: 25px;
	right: 20%;
	width: 120px !important;
	height: auto;
}

.i44 {
	max-width: 1400px;
	width: 100%;
	display: block;
}

.i44 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.i44 ul li {
	width: 50%;
}

.i45 {
	position: relative;
	left: 100px;
}

.i5 {
	position: relative;
	background-image: url(../images/iback3.jpg);
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	padding: 180px 0 100px;
	margin-top: 130px;
}

.iira {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto auto;
	width: auto;
	height: 80%;
}

.ieq {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	opacity: 0.4;
}

.i51 {
	position: relative;
	text-align: center;
	color: #fff;
	max-width: 680px;
	width: 100%;
	display: block;
	margin: 0 auto;
}

.ifuki {
	position: absolute;
	top: -110px;
	left: 0;
	width: 200px;
	height: auto;
}

.i52 {
	font-size: 40px;
	line-height: 1;
	font-weight: bold;
}

.i521 {
	font-size: 16px;
	font-weight: normal;
}

.i53 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 130px;
}

.i53 ul li {
	width: 29%;
}

.i55 {
	position: relative;
}

.icou {
	position: absolute;
	top: -60px;
	left: -40px;
	width: 90%;
	height: auto;
}

.i5gazou {
	width: 100%;
	height: auto;
}

.i6 {
	position: relative;
	background-image: url(../images/iback5.jpg);
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	padding: 150px 0 400px;
}

.i6ha {
	position: absolute;
	bottom: 480px;
	right: 5%;
	width: 100px;
	height: auto;
}

.ihidari {
	position: absolute;
	top: 0;
	left: 0;
	width: 200px;
}

.imigi {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 200px;
}

.i52 {
	text-align: center;
	line-height: 0.8;
}

.i61 {
	text-align: center;
	padding: 40px 0 60px;
}

.i62 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.i62 ul li {
	width: 31%;
}

.i62 ul li:nth-child(n + 4) {
	padding-top: 60px;
}

.i62 ul li a {
	display: block;
	text-decoration: none;
}

.i63 {
	position: relative;
	background-color: #fff;
	padding: 60px 40px;
	border-radius: 10px;
	height: 550px;
}

.i62 ul li a .ikuwa4 {
	position: absolute;
	top: -40px;
	left: -20px;
	width: 100px;
	height: auto;
	opacity: 0;
	transition: 0.3s ease-in-out;
}

.i62 ul li a:hover .ikuwa4 {
	opacity: 1;
}

.i631 {
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	color: #03a307;
}

.i632 {
	width: 100%;
	height: auto;
	margin: 20px 0 30px;
}

.i633 {
	text-align: center;
	color: #03a307;
}

.i7 {
	display: flex;
	align-items: center;
	position: relative;
	background-image: url(../images/iback2.png);
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	height: 850px;
	color: #fff;
	margin-top: -450px;
}

.i72 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.1;
	margin-bottom: 30px;
	margin-top: 12%;
}

.i721 {
	font-size: 16px;
	font-weight: normal;
}

.is1 {
	display: none;
}

/************************************ access *********************************/
.a1all {
	position: relative;
	background-image: url(../images/ahai.png);
	background-size: contain;
	background-repeat: repeat;
	background-position: 50% 0;
	width: 100%;
	padding: 100px 0 120px;
}

.asan {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}

.atop1,
.ntop1 {
	display: table;
	position: relative;
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	height: 500px;
}

.atop1 {
	background-image: url(../images/a1.jpg);
}

.ntop1 {
	background-image: url(../images/n1.jpg);
}

.atoptitle {
	display: table-cell;
	vertical-align: middle;
	font-size: 50px;
	font-family: fontlogo;
	padding-top: 150px;
	padding-left: 13%;
	color: #000;
	text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
}

.a1 {
	text-align: center;
}

.a11 {
	font-size: 30px;
	line-height: 1;
	padding-bottom: 40px;
}

.a111 {
	font-size: 18px;
	color: #969696;
}

.a2 {
	padding-top: 100px;
}

.a21 {
	position: relative;
	font-size: 30px;
	color: #616161;
}

.a01 {
	position: absolute;
	top: 0;
	right: auto;
	left: -40px;
	bottom: 0;
	margin: auto 0;
	width: 230px;
	height: auto;
}

.a22 {
	padding: 80px 0;
}

.a22 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.a22 ul li {
	width: 50%;
	padding: 0 4%;
}

.a22 ul li img {
	width: 100%;
	height: auto;
}

.a24 {
	max-width: 960px;
	width: 100%;
	display: block;
	margin: 0 auto;
	border-bottom: 5px solid #e4e4e4;
	padding-bottom: 80px;
	margin-bottom: 80px;
}

.a24 ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.a24 ul li {
	width: 65%;
}

.a24 ul li:nth-child(2) {
	width: 30%;
}

.a24 ul li img {
	width: 100%;
	height: auto;
}

.a25 p {
	padding: 5px 0;
	font-size: 18px;
}

.a2511 {
	color: #03a38b;
}

.a2512 {
	font-size: 24px;
	font-weight: bold;
}

.a28 {
	position: relative;
	right: 2%;
	text-align: center;
}

.a28 img {
	max-width: 57%;
	width: 100%;
	height: auto;
	margin-top: 40px;
}

.a3 {
	background-image: url(../images/aback.jpg);
	background-size: contain;
	background-repeat: repeat;
	background-position: 50% 0;
	width: 100%;
	padding: 100px 0 60px;
}

.a4 {
	position: relative;
	background-image: url(../images/ahai.png);
	background-size: contain;
	background-repeat: repeat;
	background-position: 50% 0;
	width: 100%;
	padding: 220px 0 100px;
}

.asan2 {
	position: absolute;
	top: -2%;
	left: 0;
	width: 100%;
	height: auto;
}

.a5 {
	position: relative;
	padding-bottom: 100px;
}

.akusa {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}

.a5 ul {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.a5 ul li {
	width: 42%;
}

.a5 ul li:nth-child(2) {
	width: 50%;
}

.a51 img {
	max-width: 320px;
	width: 100%;
	height: auto;
}

.a52 {
	padding: 10px 0 40px;
}

.a53 {
	background-color: #fff;
	box-shadow: 0px 0px 6px 3px #eeeeee;
	padding: 30px;
}

.a54 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.a540 {
	margin-top: 20px;
}

.a55 {
	width: 80px;
	text-align: center;
}

.a55 img {
	width: 100%;
	height: auto;
}

.a57 {
	width: 80px;
	text-align: center;
}

.a57 img {
	width: 70px;
	height: auto;
}

.a56 {
	padding-left: 20px;
}

.a58 img {
	width: 100%;
	height: auto;
}

.amap iframe {
	width: 100%;
	height: 500px;
}

.aback {
	position: relative;
	background-image: url(../images/aback.png);
	background-size: cover;
	background-repeat: repeat;
	background-position: 50% 0;
	background-attachment: fixed;
	width: 100%;
	height: 400px;
	margin-top: -6px;
}

.junbi {
	text-align: center;
	font-size: 30px;
	padding: 150px 0;
}

/*********************************** news ********************************/
.n11 {
	padding-top: 20px;
	justify-content: flex-start !important;
}

.n11 a {
	width: 25% !important;
	padding: 1.5%;
}

.n11 a:nth-child(n + 5) {
	padding-top: 50px;
}

/****************************************************************************

	ハピネス歯科について

****************************************************************************/
#main_in {
	background: url(../images/main_in.jpg) 50% 0 / cover no-repeat;
	display: table;
	position: relative;
	background-size: cover;
	background-position: 50% 0;
	width: 100%;
	height: 500px;
}

/*******/
.pt-150 {
	padding-top: 150px;
}

.mt-150 {
	margin-top: 150px;
}

.padding150 {
	padding: 150px 0;
}

.flex_box {
	display: flex;
	justify-content: space-between;
}

.flex_46 {
	width: 46%;
}

.flex_50 {
	width: 50%;
}

.midashi_inline {
	font-size: 42px;
}

.midashi_inline .eng {
	display: inline-block;
	color: #969696;
	padding-left: 20px;
	font-size: 18px;
}

.name {
	font-size: 26px;
}

.name span {
	color: #03a329;
	padding-left: 10px;
	font-size: 16px;
}

/***************/
.ab_af_img {
	position: relative;
}

.ab_af_img:before {
	content: "";
	background: url(../images/about_bg1.jpg) left 0/366px 1300px no-repeat;
	width: 366px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.ab_af_img:after {
	content: "";
	background: url(../images/about_bg2.jpg) right 0/362px 1345px no-repeat;
	width: 362px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
}

.center_midashi {
	text-align: center;
	font-size: 42px;
}

.center_midashi span {
	display: block;
	color: #969696;
	font-size: 18px;
	padding-top: 5px;
}

#ab_center_img {
	text-align: center;
	margin-top: 40px;
}

#ab_center_img img {
	width: 100%;
	height: auto;
	max-width: 920px;
}

#ab_img1 {
	position: absolute;
	left: 0;
	top: 150px;
}

#ab_img2 {
	position: absolute;
	left: 100px;
	bottom: 150px;
}

#ab_img3 {
	position: absolute;
	right: 0;
	top: 150px;
}

#ab_img4 {
	position: absolute;
	right: 40px;
	bottom: 230px;
}

/*********************/
.bg_on {
	background: url(../images/bg_on.png) 50% 0/1920px 92px no-repeat;
	width: 100%;
	height: 92px;
}

.bg_under {
	background: url(../images/bg_under.png) 50% 0/1920px 92px no-repeat;
	width: 100%;
	height: 92px;
}

.padding100 {
	padding: 100px 0;
}

.bg_gray {
	background: url(../images/top26.jpg) left 0/358px 226px repeat;
}

.flex_52 {
	width: 52%;
}

.item_center {
	align-items: center;
}

.ab_table {
	display: table;
	width: 100%;
}

.ab_cell1 {
	display: table-cell;
	vertical-align: middle;
	width: 145px;
}

.ab_cell1 img {
	width: 100%;
	height: auto;
}

.ab_cell2 {
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
	font-size: 26px;
	color: #616161;
}

/***************/
.font_b {
	font-weight: bold;
	font-size: 20px;
	font-family: NOTOSANSJP-BLACK;
}

.ab_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 80px;
}

.ab_list li {
	width: 48%;
	position: relative;
	margin: 60px 0;
	border: 2px dotted #03a329;
	padding: 90px 30px 60px;
}

.ab_icon {
	position: absolute;
	top: -56px;
	left: 0%;
	width: 100%;
	text-align: center;
}

.ab_midashi {
	text-align: center;
	color: #616161;
	font-size: 28px;
	padding: 0 0 30px;
}

/***************************/
.ab_posi {
	position: relative;
	padding: 120px 120px 0;
	margin-top: 60px;
}

.ab_num {
	position: absolute;
	left: 0;
	top: 0;
}

.ab_right_img {
	float: right;
	width: 44%;
	margin: 0 0 40px 40px;
}

.midashi40 {
	font-size: 40px;
}

.midashi24 {
	font-size: 28px;
}

.num_list li {
	font-size: 18px;
	padding: 5px 0;
}

.a_center a {
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
}

/************/
.ab04_table li {
	display: table;
	width: 100%;
	padding: 5px 0;
}

.ab04_cell1 {
	display: table-cell;
	width: 225px;
	position: relative;
}

.ab04_cell1:after {
	content: "…";
	position: absolute;
	right: 0;
	top: 0;
}

.ab04_cell2 {
	display: table-cell;
	padding-left: 30px;
}

.ab04_minitable {
	display: table;
	width: 100%;
}

.ab04_minicell1 {
	display: table-cell;
	width: 350px;
}

.ab04_minicell2 {
	display: table-cell;
}

.markar {
	background: linear-gradient(transparent 60%, #deda9a 60%);
}

/*************/
.ab_care {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 46%;
}

.ab_care li {
	width: 32.33%;
	margin: 10px 0;
	display: table;
}

.ab_care img {
	width: 50px;
	height: auto;
}

.ab_care_icon {
	display: table-cell;
	vertical-align: middle;
	width: 50px;
	text-align: center;
}

.ab_care_cell {
	display: table-cell;
	vertical-align: middle;
	font-size: 18px;
	padding-left: 10px;
}

/****************************************************************************

	初診について

****************************************************************************/
.c_gray {
	color: #616161;
}

.first_posi {
	position: relative;
	padding: 40px 0 0 180px;
}

.f_midashi_ver {
	position: absolute;
	left: 20px;
	top: 0;
	display: inline-block;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.midashi_table {
	display: table;
	width: 100%;
}

.m_cell1 {
	display: table-cell;
	width: 440px;
	position: relative;
	vertical-align: top;
	font-size: 28px;
}

.m_cell1:after {
	content: "";
	border-bottom: 1px solid #03a329;
	position: absolute;
	top: 26px;
	right: 0;
	width: 80px;
}

.color {
	color: #03a38a;
}

.m_cell2 {
	display: table-cell;
	vertical-align: top;
	padding-left: 50px;
	padding-top: 13px;
}

/**********************/
.af_bl {
	position: relative;
}

.af_bl:after {
	content: "";
	border-left: 1px solid #03a329;
	width: 1px;
	height: 120px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -10px;
}

.flow_flex {
	display: flex;
	justify-content: space-between;
	margin-top: 100px;
}

.flow_flex li {
	width: 48%;
	border: 1px dotted #03a329;
	text-align: center;
	padding: 50px 20px 40px;
	border-radius: 30px;
	position: relative;
}

.flow_flex li .a_center {
	margin-top: 5px;
}

.flow_flex li .a_center a {
	padding: 10px;
}

.flow_icon {
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
}

.tel_img {
	margin-top: 10px;
}

.tel_img img {
	max-width: 360px;
	width: 100%;
	height: auto;
}

/***************/
.flex_40 {
	width: 40%;
}

.img_list li {
	margin-bottom: 20px;
}

/*************/
.first_flex {
	display: flex;
	justify-content: space-between;
}

.first_flex img {
	width: 100%;
	height: auto;
}

.first_left {
	width: 25%;
	border: 1px solid #ccc;
	padding: 10px;
}

.first_right {
	width: 74%;
	border: 1px solid #ccc;
	padding: 10px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.first_right li {
	width: 49%;
}

/**************/
.m_flex {
	display: flex;
	align-items: flex-end;
}

.m_flex .mini {
	font-size: 16px;
	padding-left: 30px;
	padding-bottom: 6px;
}

.flex_text {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 20px;
}

.flex_text li {
	width: 48%;
	margin: 40px 0 0;
}

/**************/
.bg_img {
	background: url(../images/top22.jpg) left 0/291px 229px repeat;
}

.bg_text {
	color: #fff;
	text-align: center;
	padding: 80px 0;
}

/****************************************************************************

	診療案内

****************************************************************************/
.guidance_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.guidance_list li {
	width: 31.33%;
	background-color: #fff;
	border-radius: 20px;
	text-align: center;
	margin: 25px 0;
}

.guidance_list li a {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding: 20px;
	width: 100%;
	height: 100%;
	position: relative;
}

.guidance_list li a:after {
	content: "";
	background: url(../images/ikuwa.png) left 0/100% 100% no-repeat;
	width: 115px;
	height: 115px;
	position: absolute;
	left: -30px;
	top: -30px;
	opacity: 0;
	transform: scale(0) rotate(-10deg);
	transition: 0.3s ease-in-out;
}

.guidance_list li a:hover:after {
	opacity: 1;
	transform: scale(1) rotate(0);
}

.guidance_list img {
	width: 135px;
	height: auto;
}

.center_midashi.white {
	color: #fff;
}

.center_midashi.white span {
	color: #fff;
}

/***************/
#gui_bg1 {
	background: url(../images/medical1.jpg) 80% 0 / cover no-repeat;
}

.bg_size {
	height: 525px;
	position: relative;
	z-index: 1;
	margin-top: 60px;
}

.icon_size {
	position: absolute;
	top: -100px;
}

.left_icon {
	left: 80px;
	z-index: 500;
}

/**/
.gui_table {
	display: table;
	width: 100%;
}

.gui_cell1 {
	display: table-cell;
	vertical-align: top;
	font-size: 32px;
	width: 460px;
}

.gui_cell2 {
	display: table-cell;
	vertical-align: top;
}

/**/
.border_midashi {
	display: flex;
	align-items: center;
	font-size: 32px;
	text-align: center;
}

.border_midashi:before {
	content: "";
	flex-grow: 1;
	margin-right: 40px;
	border-bottom: 3px solid #ccc;
}

.border_midashi:after {
	content: "";
	flex-grow: 1;
	margin-left: 40px;
	border-bottom: 3px solid #ccc;
}

.cont_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
	padding: 30px;
}

.cont_list li {
	width: 49%;
	background-color: #afcf00;
	padding: 40px;
	border-radius: 10px;
	color: #fff;
	display: table;
	margin: 1% 0;
}

.cont_list:after {
	content: "";
	border: 3px solid #ccc;
	border-top: 0;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 28px);
}

.cont_icon {
	display: table-cell;
	vertical-align: middle;
	width: 80px;
}

.icon_cell {
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
	font-size: 24px;
	line-height: 1.3em;
}

.icon_cell .mini {
	font-size: 14px;
}

.icon_cell .big {
	padding-left: 10px;
	font-size: 34px;
}

/***************/
#gui_bg2 {
	background: url(../images/medical4.jpg) 20% 0 / cover no-repeat;
}

.right_icon {
	right: 80px;
	z-index: 500;
}

.more a {
	padding: 10px;
}

/***************/
#gui_bg3 {
	background: url(../images/medical7.jpg) 50% 0 / cover no-repeat;
}

.free_size {
	position: absolute;
	top: -80px;
	z-index: 500;
}

.right_free {
	right: 80px;
}

/***************/
#gui_bg4 {
	background: url(../images/medical10.jpg) 50% 0 / cover no-repeat;
}

.left_free {
	left: 80px;
}

/***/
.invisa_midashi {
	text-align: center;
}

.invisa_box {
	margin-top: 120px;
	border: 3px solid #ccc;
	position: relative;
	padding: 100px 60px 60px;
}

.invisa_logo {
	position: absolute;
	top: -88px;
	left: 50%;
	transform: translateX(-50%);
}

/****/
.center {
	text-align: center;
}

.merit_list {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.merit_list li {
	width: 48%;
	margin: 40px 0;
	text-align: center;
	position: relative;
	background-color: #fff;
	padding: 60px 40px 40px;
}

.merit_icon {
	position: absolute;
	left: 50%;
	top: -30px;
	transform: translateX(-50%);
}

/*************/
.implant_img {
	text-align: center;
}

#sar_bg {
	background: url(../images/medical21.jpg) 50% 0 / cover no-repeat;
	height: 590px;
	display: flex;
	align-items: center;
	color: #fff;
	padding-top: 40px;
}

.sar_width {
	width: 100%;
	max-width: 606px;
}

.midashi30 {
	font-size: 30px;
}

#first_bg {
	position: relative;
}

#first_bg:before {
	content: "";
	background: url(../images/about_bg1.jpg) left 0/640px 1425px no-repeat;
	height: 100%;
	width: 640px;
	position: absolute;
	left: 0;
	top: 0;
}

#first_bg:after {
	content: "";
	background: url(../images/about_bg2.jpg) left 0/282px 1293px no-repeat;
	height: 100%;
	width: 282px;
	position: absolute;
	right: 0;
	top: 0;
}

.merit_border li {
	border: 2px solid #ccc;
	display: flex;
	justify-content: center;
	align-items: center;
}

/***************/
#gui_bg5 {
	background: url(../images/medical24.jpg) 40% 0 / cover no-repeat;
}

/***************/
#gui_bg6 {
	background: url(../images/medical26.jpg) 70% 0 / cover no-repeat;
}

/***************/
.gui_af_bg {
	position: relative;
	padding: 100px 0 0;
	color: #fff;
}

.gui_af_bg:after {
	content: "";
	background: url(../images/top22.jpg) left 0/281px 229px repeat;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 120px);
}

.w1024_auto {
	width: 100%;
	max-width: 1024px;
	margin: 0 auto;
}

.gui_list {
	display: flex;
	justify-content: space-between;
}

.gui_list li {
	width: 48%;
}

.gui_list img {
	width: 100%;
	height: auto;
}

/****************************************************************************

	院内紹介

****************************************************************************/
.intro_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 40px;
}

.intro_list li {
	width: 46%;
	border: 2px dotted #ccc;
	padding: 40px;
	margin: 40px 0;
	border-radius: 15px;
}

.faci_box {
	display: flex;
	justify-content: space-between;
	padding: 40px;
	border: 2px dotted #ccc;
	border-radius: 15px;
}

.faci_left {
	width: 40%;
}

.faci_midashi {
	text-align: center;
	margin-top: 20px;
	font-size: 22px;
}

.faci_midashi .mini {
	font-size: 18px;
}

.faci_right {
	width: 55%;
}

.faci_list {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.faci_list li {
	width: 46%;
}

.center_img {
	margin-bottom: 30px;
	text-align: center;
}

.center_img img {
	max-width: 255px;
	width: 100%;
	height: auto;
}

/*************/
.inline_midashi {
	display: inline-block;
	background-color: #0fa68e;
	color: #fff;
	padding: 3px 5px;
}

.indent_list li {
	text-indent: -1em;
	padding-left: 16px;
	margin: 5px 0;
}

/****************************************************************************

	採用情報

****************************************************************************/
.rec_list {
	border: 1px solid #ccc;
}

.rec_list li {
	display: table;
	width: 100%;
	border-bottom: 1px solid #ccc;
}

.rec_cell1 {
	display: table-cell;
	width: 250px;
	padding: 30px;
	vertical-align: middle;
	background-color: #f1f1f1;
	border-right: 1px solid #ccc;
}

.rec_cell2 {
	display: table-cell;
	padding: 30px;
	vertical-align: middle;
}

.w_1680 {
	display: flex;
	margin: 0 auto;
	max-width: 1680px;
}

.w_1680 img {
	display: inline-block !important;
}

.ohr {
	width: 33.33%;
	margin: 10px;
}

.ohr img {
	width: 100%;
	height: auto;
}

.rec_catch {
	color: #fff;
	background-color: #afcf00;
	margin: 0 auto;
	margin-top: 40px !important;
	text-align: center;
	max-width: 500px;
	width: 100%;
	padding: 8px 0;
	border-radius: 10px;
	font-size: 24px;
}

.new-page {
	line-height: 2;
}

.container950 {
	max-width: 950px;
	margin: 0 auto;
	width: 94%;
}

.daini_p {
	width: 90%;
	max-width: 195px;
	background-color: #ec4c4c;
	text-align: center;
	padding: 10px;
	transition: 0.3s;
	color: #fff;
	border-radius: 10px;
}

.n_center {
	text-align: center;
}

.aaaaa {
	margin-bottom: 20px;
}

.top_daini {
	width: 90%;
	max-width: 230px;
	background-color: #ec4c4c;
	text-align: center;
	padding: 20px;
	transition: 0.3s;
	color: #fff;
	border-radius: 10px;
	margin: 20px auto 0;
	display: block;
}

.font_bold {
	font-weight: bold;
	text-align: center;
	font-size: 16px;
}

.c_ec4c4c {
	color: #ec4c4c;
}

.newbanner {
	margin-top: 40px;
	text-align: center;
}

.n_b_text {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

.app_banner {
	background-color: #6af36d33;
	margin-top: 20px;
	padding: 30px 0;
}

.app_banner img {
	max-width: 860px;
	height: auto;
	width: 95%;
	margin: 0 auto;
	display: block;
}

.sp_app_banner {
	display: none;
}
.flex_recruit{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}
.remarks{
	color: #ec4c4c;
	font-size: 24px;
	padding-left: 1em;
}
/* フォーム追加 */

.contact_table {
	background-color: #F3F1EB;
	border-radius: 7px;
	padding: 5vw 5vw;
}

.contact_table>div {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 30px;
}

.e_cell1 {
	width: 200px;
	font-size: 15px;
	/* text-align: right; */
	margin-right: 30px;
}

.e_hissu {
	color: #fe1d1d;
	text-align: center;
	font-size: 13px;
	margin-left: 5px;
}

.nini {
	color: #555555;
	text-align: center;
	font-size: 13px;
	margin-left: 5px;
}

.e_cell2 {
	width: calc(100% - 200px);
}

.size input {
	width: 100%;
	padding: 10px 20px;
	background-color: #fff;
	height: 60px;
	border: none;
}

.area textarea {
	width: 100%;
	padding: 10px 20px;
	background-color: #fff;
	height: 340px;
	border: none;
}

.submit input {
	max-width: 270px;
	width: 100%;
	margin: 0 auto;
	background-color: #03a38a;
	color: #FFF;
	border: 1px solid #03a38a;
	text-align: center;
	font-size: 15px;
	letter-spacing: 0.4em;
	line-height: 1.1;
	padding: 20px 20px;
	transition: 0.5s ease;
	border-radius: 10px;
}

.submit input:hover {
	background-color: #fff;
	color: #03a38a;
}

.contact_table_top {
	align-items: flex-start !important;
}

.contact_table_top .e_cell1 {
	margin-top: 20px;
}


/****************************************************************************

	料金

****************************************************************************/
.font-13 {
	font-size: 13px;
}

.price_table {
	width: 94%;
	margin: 0 auto;
}

.table_top thead {
	background: rgba(220, 20, 60, 0.6);
	border-radius: 20px;
	display: table-caption;
}

.table_top thead th {
	text-align: center;
	padding: 20px;
	font-size: 24px;
	color: #fff;
}

.table_top thead tr {
	display: grid;
}

.table_top tbody th {
	text-align: center;
	padding: 13px 7px;
	background: rgba(220, 20, 60, 0.1);
	border: 5px solid #fff;
	border-radius: 20px;
}

.table_top tbody tr {
	border: 6px solid #fff;
}

.table_top td {
	text-align: center;
	padding: 8px;
	border: 5px solid #fff;
	border-radius: 20px;
	background: antiquewhite;
}


.table_center thead {
	background: rgba(255, 165, 0, 0.9);
	border-radius: 20px;
	display: table-caption;
}

.table_center thead th {
	text-align: center;
	padding: 20px;
	font-size: 24px;
	color: #fff;
}

.table_center thead tr {
	display: grid;
}

.table_center tbody th {
	text-align: center;
	padding: 13px;
	background: rgba(255, 165, 0, 0.2);
	border: 5px solid #fff;
	border-radius: 20px;
}

.table_center tbody tr {
	border: 6px solid #fff;
}

.table_center td {
	text-align: center;
	padding: 8px;
	border: 5px solid #fff;
	border-radius: 20px;
	background: antiquewhite;
}


.table_bottom thead {
	background: rgba(25, 25, 112, 0.6);
	border-radius: 20px;
	display: table-caption;
}

.table_bottom thead th {
	text-align: center;
	padding: 20px;
	font-size: 24px;
	color: #fff;
}

.table_bottom thead tr {
	display: grid;
}

.table_bottom tbody th {
	text-align: center;
	padding: 13px;
	background: rgba(25, 25, 112, 0.1);
	border: 5px solid #fff;
	border-radius: 20px;
}

.table_bottom tbody tr {
	border: 6px solid #fff;
}

.table_bottom td {
	text-align: center;
	padding: 8px;
	border: 5px solid #fff;
	border-radius: 20px;
	background: antiquewhite;
}

.overF-scroll_1024 p {
	display: none;
}

.guarantee_table {
	width: 100%;
	max-width: 500px;
}

.guarantee_table th {
	padding: 20px;
	text-align: center;
}

.guarantee_table th:nth-child(1) {
	background: rgba(218, 165, 30, 0.3);
}

.guarantee_table th:nth-child(2) {
	background: rgba(107, 142, 35, 0.3);
}

.guarantee_table td {
	padding: 10px;
	text-align: center;
}

.guarantee_table td:nth-child(odd) {
	background: rgba(218, 165, 30, 0.2);
}

.guarantee_table td:nth-child(even) {
	background: #fff;
}

.price_midashi22 {
	color: #DAA520;
	font-size: 22px;
}

.guarantee_bg {
	background: rgba(210, 180, 140, 0.3);
	padding: 40px 30px;
	width: 88%;
	margin: 30px auto;
	border-radius: 7px;
}

.bg_orange {
	background: rgba(255, 140, 0, 1);
	color: #fff;
	max-width: 600px;
	text-align: center;
	padding: 10px;
	border-radius: 20px;
	margin: 0 0 20px 70px;
}

.guarantee_text p {
	font-weight: bold;
}

.guarantee_text li {
	padding: 0 0 10px 70px;
}

.guarantee_text ul li span {
	color: rgba(255, 140, 0, 1);
	padding-right: 3px;
}

.guarantee_text .flex {
	display: flex;
}

.guarantee_text .flex span {
	position: relative;
	top: 3px;
	padding-right: 3px;
}

.green-line {
	background: linear-gradient(transparent 80%, #c7ddae 0%);
	display: inline;
	font-size: 18px;
}

.yellow-line {
	background: linear-gradient(transparent 80%, #FFFF00 0%);
	display: inline;
	font-size: 18px;
}
.blue-line{
		background: linear-gradient(transparent 80%, #93f1f1 0%);
	display: inline;
	font-size: 18px;

}
.break480 {
	display: none;
}
.coverrage_table{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.coverrage_table h3{
	text-align: center;
	font-size: 1.2em;
}
.coverrage_table > div{
	width: 48%;

}
@media (max-width: 1024px) {
	.overF-scroll_1024 {
		overflow: scroll;
		width: 94%;
		margin: 0 auto;
	}

	.overF-scroll_1024 p {
		display: block;
		padding-top: 20px;
	}

	.table_bottom {
		width: 200%;
	}
}

@media (max-width: 780px) {
	.guarantee_text p {
		margin: 0 0 20px 0;
	}

	.guarantee_text li {
		padding: 0 0 20px 0;
		display: flex;
	}
	.coverrage_table{
		flex-direction: column;
		align-items: center;
		gap: 30px;
	}
	.coverrage_table > div{
		width: 90%;
		margin: 0 auto;
	}
}

@media (max-width: 740px) {
	.table_bottom {
		width: 280%;
	}

	.table_top thead th {
		font-size: 17px;
	}

	.table_center thead th {
		font-size: 17px;
	}

	.table_bottom thead th {
		font-size: 17px;
	}

	.price_midashi22 {
		font-size: 16px;
	}

	.guarantee_bg {
		padding: 30px 20px;
		width: 98%;
	}

	.green-line {
		background: linear-gradient(transparent 80%, #c7ddae 0%);
		display: inline;
		font-size: 14px;
	}

	.yellow-line {
		background: linear-gradient(transparent 80%, rgba(255, 255, 0, 0.6) 0%);
		display: inline;
		font-size: 14px;
	}
.blue-line{
		background: linear-gradient(transparent 80%, #93f1f1 0%);
	display: inline;
	font-size: 14px;

}

	.font-13 {
		font-size: 12px;
	}
}

@media (max-width: 480px) {
	.overF-scroll_480 {
		overflow: scroll;
	}

	.break480 {
		display: block;
	}

	/*.table_top {
		width: 120%;
	}
	.table_center {
		width: 120%;
	}*/
		.coverrage_table > div{
			width: 100%;
		}
}





@media only screen and (max-width: 1800px) {
	.i40 {
		position: absolute;
		top: 100px;
		left: 50%;
		margin-left: -700px;
		font-weight: bold;
	}
}

@media only screen and (max-width: 1600px) {
	.isan {
		position: absolute;
		bottom: -12%;
		left: 0;
		width: 100%;
		height: auto;
	}

	.i40 {
		position: static;
		margin-left: 0;
		font-weight: bold;
		text-align: center;
		line-height: 0.7;
		-ms-writing-mode: lr-tb;
		/* for MS IE8+ */
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
	}

	.i4all {
		position: relative;
		background-image: url(../images/ihai2.png);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		height: 100%;
		margin-top: 150px;
	}

	.i41 {
		max-width: 1400px;
		width: 100%;
		display: block;
		margin: 0 0 0 auto;
	}

	.i42 {
		position: static;
		z-index: 99;
		padding-top: 130px;
		padding-left: 100px;
		padding-right: 4%;
	}

	.iira {
		position: absolute;
		top: 30px;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto auto;
		width: 95%;
		height: auto;
	}

	.i6ha {
		position: absolute;
		bottom: 460px;
		right: 1%;
		width: 80px;
		height: auto;
	}

	.if33 img {
		width: 65%;
	}
}

@media only screen and (max-width: 1440px) {
	.itop1 {
		top: 20px !important;
	}

	.itopsin {
		position: absolute;
		top: 45%;
		bottom: 0;
		left: auto;
		right: 11%;
		margin: auto 0;
		width: 30% !important;
		height: auto;
	}

	.itopmenu ul li a {
		color: #333;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s ease-in-out;
		font-size: 14px;
	}

	.isan {
		position: absolute;
		bottom: -8%;
		left: 0;
		width: 100%;
		height: auto;
	}

	.icou {
		position: absolute;
		top: -49px;
		left: -40px;
		width: 90%;
		height: auto;
	}

	.i53 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 100px;
	}

	.i62 ul li:nth-child(n + 4) {
		padding-top: 40px;
	}

	.a01 {
		position: absolute;
		top: 0;
		right: auto;
		left: 20px;
		bottom: 0;
		margin: auto 0;
		width: 200px;
		height: auto;
	}

	.h_banner {
		display: none;
	}

	.lp_banner {
		display: block;
		text-align: center;
		margin: 100px auto 0;
	}

	.lp_banner a:hover {
		opacity: 0.6;
		transition: 0.3s;
	}

	.lp_banner img {
		width: 100%;
		max-width: 600px;
		height: auto;
	}
}

@media only screen and (max-width: 1279px) {
	.itoplogo img {
		width: 280px;
		height: auto;
	}

	.iira {
		display: none;
	}

	.n11 {
		padding-top: 20px;
	}

	.n11 a {
		width: 33.333% !important;
		padding: 1.5%;
	}

	.n11 a:nth-child(n + 4) {
		padding-top: 50px;
	}
}

@media only screen and (max-width: 1200px) {
	.itop1.headMove {
		top: 5px;
	}

	.itop1.headMove .itoplogo img {
		width: 180px;
		height: auto;
	}

	.itoplogo img {
		width: 250px;
		height: auto;
	}

	.i62 ul li {
		width: 50%;
		padding: 3%;
	}

	.i63 {
		position: relative;
		background-color: #fff;
		padding: 60px 40px;
		border-radius: 10px;
		height: auto;
	}

	.i62 ul li a .ikuwa4 {
		position: absolute;
		top: -40px;
		left: -20px;
		width: 80px;
		height: auto;
		opacity: 0;
		transition: 0.3s ease-in-out;
	}

	.a5 ul li {
		width: 47%;
	}
}

@media (max-width:1148px) {
	.if33 {
		display: none;
	}

	.f_flex {
		display: block;
	}

	.sp_if33 {
		display: block;
		text-align: center;
	}
	.sp_if33.lc{margin-bottom: 50px;}

	.sp_if33 a:hover {
		opacity: 0.6;
		transition: 0.3s;
	}

	.sp_if33 img {
		width: 100%;
		height: auto;
		max-width: 350px;
	}
}

@media only screen and (max-width: 1023px) {
	.itop1 {
		position: absolute;
		top: 0 !important;
		right: 0;
		bottom: auto;
		left: 0;
		margin: 0 auto;
		max-width: 1600px;
		width: 94%;
		background-color: transparent;
		padding: 20px;
		border-radius: 10px;
	}

	.itop1 ul li:nth-child(3) {
		display: none;
	}

	.itophapi {
		display: none;
	}

	.itopsia {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto auto;
		width: 350px !important;
		height: auto;
	}

	.itophikari {
		position: absolute;
		top: 0;
		bottom: 0;
		left: -50px;
		right: 0;
		margin: auto auto;
		width: 600px !important;
		height: auto;
	}

	.itopsin {
		position: absolute;
		top: auto;
		bottom: 1%;
		left: auto;
		right: 1%;
		margin: auto;
		width: 240px !important;
		height: auto;
	}

	.itopmenu {
		display: none;
	}

	.i1 ul li {
		width: 100% !important;
	}

	.i1 ul li:nth-child(2) {
		padding-top: 20px;
	}

	.i11 {
		border: 2px dotted #9c9c9c;
		border-radius: 20px;
		padding: 60px;
		height: auto;
	}

	.i21 {
		position: static;
		display: block;
		width: 100%;
		text-align: center;
		margin-bottom: 70px;
	}

	.i23 {
		display: block;
	}

	.i22 {
		-ms-writing-mode: lr-tb;
		/* for MS IE8+ */
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		font-size: 30px;
		line-height: 0.5;
		height: auto;
	}

	.iin2 {
		position: static;
		display: block;
		margin: 0 auto;
		margin-top: 40px;
		top: 130px;
		left: 33px;
		width: 30px;
		height: auto;
	}

	.iha {
		position: absolute;
		z-index: 99;
		bottom: 50px;
		right: 10%;
		width: 300px;
		height: auto;
	}

	.i3 {
		position: relative;
		z-index: 99;
		background-image: url(../images/iback.png);
		background-size: cover;
		background-position: 80% 0;
		width: 100%;
		height: 600px;
		margin-top: -400px;
	}

	.i3:after {
		content: "";
		position: absolute;
		background-color: rgba(255, 255, 255, 0.5);
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.i32 {
		position: relative;
		z-index: 99;
		font-size: 26px;
		color: #616161;
		padding-top: 200px;
		padding-left: 20px;
	}

	.ihai {
		position: absolute;
		bottom: 200px;
		left: 0;
		width: 100%;
		height: auto;
	}

	.ikuwa a {
		display: block;
		margin: 0;
		margin-top: 20px;
		width: 220px;
		text-align: center;
		padding: 20px;
		border-radius: 35px;
		background-color: #beb535;
		border: 1px solid #beb535;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s ease-in-out;
	}

	.lp_banner img {
		max-width: 400px;
	}

	.i41 ul {
		flex-direction: column-reverse;
	}

	.i41 ul li {
		width: 100%;
	}

	.iha2,
	.iha3,
	.iha4,
	.iha5,
	.iha6,
	.iha7 {
		display: none;
	}

	.i42 {
		position: static;
		z-index: 99;
		left: 100px;
		padding: 0 4%;
		padding-top: 80px;
	}

	.i01 {
		position: absolute;
		top: -28px;
		left: 0;
		height: 100px;
		width: auto;
	}

	.i421 {
		position: relative;
		font-size: 26px;
		color: #616161;
	}

	.i4all {
		position: relative;
		background-image: url(../images/ihai2.png);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		height: 100%;
		margin-top: 100px;
	}

	.i44 {
		max-width: 1400px;
		width: 100%;
		display: block;
		margin-top: 40px;
	}

	.i44 ul li {
		width: 100%;
	}

	.i44 ul li:nth-child(1) {
		margin-bottom: -100px;
	}

	.i5 {
		position: relative;
		background-image: url(../images/iback3.jpg);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		padding: 150px 0 80px;
		margin-top: 100px;
	}

	.i53 ul {
		justify-content: center;
	}

	.i53 ul li {
		width: 50%;
		padding: 5%;
	}

	.i6 {
		position: relative;
		background-image: url(../images/iback5.jpg);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		padding: 100px 0 150px;
	}

	.i6ha {
		display: none;
	}

	.ikuwa5 a {
		position: relative;
		display: block;
		margin: 0 auto;
		margin-top: 60px;
		width: 220px;
		text-align: center;
		padding: 10px;
		border-radius: 35px;
		background-color: #beb535;
		border: 1px solid #beb535;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s ease-in-out;
	}

	.i7 {
		display: flex;
		align-items: center;
		position: relative;
		background-image: url(../images/iback2.png);
		background-size: cover;
		background-position: 60% 0;
		width: 100%;
		height: 600px;
		color: #fff;
		margin-top: -150px;
	}

	.i72 {
		font-size: 30px;
		font-weight: bold;
		line-height: 1.1;
		margin-bottom: 30px;
		margin-top: 10%;
	}

	.if1 {
		padding: 80px 0;
	}

	.if2 ul li {
		width: 100%;
	}

	.if2 ul li:nth-child(2) {
		padding-top: 40px;
	}

	.if21 {
		text-align: center;
	}

	.iftel {
		margin-bottom: 40px;
	}

	.if32 {
		position: absolute;
		bottom: 90px;
		right: 0;
		width: 250px;
	}

	.if31 ul li a:before {
		display: none;
	}

	.atop1,
	.ntop1 {
		display: table;
		position: relative;
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		height: 350px;
	}

	.atoptitle {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		font-size: 40px;
		font-family: fontlogo;
		padding-top: 0;
		padding-left: 0;
		color: #616161;
		text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
	}

	.a1all {
		position: relative;
		background-image: url(../images/ahai.png);
		background-size: contain;
		background-repeat: repeat;
		background-position: 50% 0;
		width: 100%;
		padding: 80px 0 40px;
	}

	.a01 {
		position: absolute;
		top: 0;
		right: auto;
		left: 20px;
		bottom: 0;
		margin: auto 0;
		width: 150px;
		height: auto;
	}

	.a21 {
		position: relative;
		font-size: 24px;
		color: #616161;
	}

	.a24 ul li {
		max-width: 580px;
		width: 100% !important;
		display: block;
		margin: 0 auto;
	}

	.a24 ul li:nth-child(2) {
		padding-top: 30px;
	}

	.a24 ul li img {
		max-width: 350px;
		width: 100%;
		height: auto;
	}

	.a26 {
		text-align: center;
	}

	.a22 {
		padding: 60px 0;
	}

	.a220 {
		padding-top: 0 !important;
	}

	.a22 ul li {
		max-width: 480px;
		width: 100%;
		padding: 0;
		display: block;
		margin: 0 auto;
	}

	.a22 ul li:nth-child(2) {
		padding-top: 40px;
	}

	.a28 img {
		max-width: 350px;
		width: 100%;
		height: auto;
		margin-top: 40px;
	}

	.a3 {
		background-image: url(../images/aback.jpg);
		background-size: contain;
		background-repeat: repeat;
		background-position: 50% 0;
		width: 100%;
		padding: 80px 0 60px;
	}

	.a4 {
		position: relative;
		background-image: url(../images/ahai.png);
		background-size: contain;
		background-repeat: repeat;
		background-position: 50% 0;
		width: 100%;
		padding: 120px 0 80px;
	}

	.a5 {
		position: relative;
		padding: 60px 0;
	}

	.a5 ul li {
		max-width: 650px;
		width: 100% !important;
		display: block;
		margin: 0 auto;
	}

	.a5 ul li:nth-child(2) {
		padding-top: 40px;
	}

	.a51 {
		text-align: center;
	}

	.a53 {
		text-align: left;
	}

	.a58 {
		max-width: 450px;
		width: 100%;
		display: block;
		margin: 0 auto;
	}

	.amap iframe {
		height: 350px;
	}

	.aback {
		position: relative;
		background-image: url(../images/aback.png);
		background-size: cover;
		background-repeat: repeat;
		background-position: 50% 0;
		background-attachment: fixed;
		width: 100%;
		height: 300px;
		margin-top: -6px;
	}

	.a28 {
		position: static;
		text-align: center;
	}

	.i23 ul li a {
		position: relative;
		height: auto;
		overflow: visible;
		display: block;
		transition: 0.3s ease-in-out;
	}

	.i23 ul li img {
		position: static;
		width: 100%;
		height: auto;
	}

	.all {
		padding: 80px 0 0 0;
	}

	/****************************************************************************

	ハピネス歯科について

****************************************************************************/
	#main_in {
		height: 300px;
	}

	/*******/
	.pt-150 {
		padding-top: 80px;
	}

	.mt-150 {
		margin-top: 80px;
	}

	.padding150 {
		padding: 80px 0;
	}

	.midashi_inline {
		font-size: 32px;
	}

	.midashi_inline .eng {
		display: inline-block;
		padding-left: 20px;
		font-size: 16px;
	}

	.name {
		font-size: 22px;
	}

	.name span {
		padding-left: 10px;
		font-size: 14px;
	}

	/*********************/
	.bg_on {
		background: url(../images/bg_on.png) 50% 0/1024px 62px no-repeat;
		width: 100%;
		height: 62px;
	}

	.bg_under {
		background: url(../images/bg_under.png) 50% 0/1024px 62px no-repeat;
		width: 100%;
		height: 62px;
	}

	.padding100 {
		padding: 60px 0;
	}

	.ab_cell1 {
		width: 100px;
	}

	.ab_cell2 {
		padding-left: 20px;
		font-size: 20px;
	}

	/***************************/
	.ab_posi {
		padding: 80px 0 0;
		margin-top: 60px;
	}

	.ab_num {
		position: absolute;
		left: 0;
		top: 0;
	}

	.ab_num img {
		width: 150px;
		height: auto;
	}

	.ab_right_img {
		float: right;
		width: 46%;
		margin: 0 0 40px 40px;
	}

	.midashi40 {
		font-size: 30px;
	}

	.midashi24 {
		font-size: 20px;
	}

	.num_list li {
		font-size: 18px;
		padding: 5px 0;
	}

	.a_center a {
		margin-top: 0;
		margin-left: auto;
		margin-right: auto;
	}

	/*************/
	.ab_care {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: 46%;
	}

	.ab_care li {
		width: 48%;
		margin: 10px 0;
	}

	/****************************************************************************

	初診について

****************************************************************************/
	.midashi_table {
		display: block;
	}

	.m_cell1 {
		display: block;
		width: 100%;
		font-size: 28px;
	}

	.m_cell1:after {
		content: "";
		border-bottom: 1px solid #03a329;
		position: static;
		width: 40px;
		display: block;
		margin-top: 15px;
	}

	.color {
		color: #03a38a;
	}

	.m_cell2 {
		display: block;
		vertical-align: top;
		padding-left: 0;
		padding-top: 20px;
	}

	.changeBanner {
		max-width: 224px;
		padding: 13px 29px;
	}

	.changeBanner span {
		font-size: 9px;
	}
}
@media only screen and (max-width: 856px) {

.flex_recruit{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}
p.remarks{
	margin-top: 0;
	font-size: 1.2em;
	padding-left: 0;
}
}
@media only screen and (max-width: 740px) {
	.itopsin {
		position: absolute;
		top: auto;
		bottom: 20px;
		left: 0;
		right: 0;
		margin: auto auto;
		width: 280px !important;
		height: auto;
	}

	.itopsia {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto auto;
		width: 250px !important;
		height: auto;
	}

	.itophikari {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto auto;
		width: 100% !important;
		height: auto;
	}

	.itop1 {
		position: absolute;
		top: 0;
		right: 0;
		bottom: auto;
		left: 0;
		margin: 0 auto;
		max-width: 1600px;
		width: 94%;
		background-color: transparent;
		padding: 20px;
		border-radius: 10px;
	}

	.itoplogo img {
		width: 180px;
		height: auto;
	}

	.lp_banner {
		margin-top: 60px;
	}

	.lp_banner img {
		max-width: 320px;
	}

	.i21 {
		position: static;
		display: block;
		width: 100%;
		text-align: center;
		margin-bottom: 50px;
	}

	.i23 ul li {
		display: table-cell;
		width: 50%;
		padding: 0 2%;
	}

	.i23 ul li:nth-child(3) {
		display: none;
	}

	.isan {
		position: absolute;
		bottom: 5%;
		left: 0;
		width: 100%;
		height: auto;
	}

	.iha {
		position: absolute;
		z-index: 99;
		bottom: 80px;
		right: 10%;
		width: 150px;
		height: auto;
	}

	.i32 {
		position: relative;
		z-index: 99;
		font-size: 20px;
		color: #616161;
		padding-top: 250px;
		padding-left: 20px;
	}

	.i44 ul li:nth-child(1) {
		margin-bottom: -40px;
	}

	.i52 {
		font-size: 30px;
		line-height: 1;
		font-weight: bold;
	}

	.i521 {
		font-size: 14px;
		font-weight: normal;
	}

	.ifuki {
		position: absolute;
		top: -100px;
		left: 10%;
		width: 130px;
		height: auto;
	}

	.i5 {
		position: relative;
		background-image: url(../images/iback3.jpg);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		padding: 130px 0 60px;
		margin-top: 60px;
	}

	.i62 ul li {
		width: 100%;
		padding: 3%;
	}

	.i632 {
		max-width: 350px;
		width: 100%;
		height: auto;
		margin: 20px auto 30px;
		display: block;
	}

	.i62 ul li a .ikuwa4 {
		position: absolute;
		top: 10px;
		left: 10px;
		width: 70px;
		height: auto;
		opacity: 1;
		transition: 0.3s ease-in-out;
	}

	.i61 {
		text-align: left;
		padding: 20px 0 40px;
	}

	.ihidari {
		position: absolute;
		top: 0;
		left: 0;
		width: 100px;
	}

	.imigi {
		position: absolute;
		bottom: 0;
		right: 0;
		width: 100px;
	}

	.i6 {
		position: relative;
		background-image: url(../images/iback5.jpg);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		padding: 60px 0 150px;
	}

	.i72 {
		font-size: 30px;
		font-weight: bold;
		line-height: 1.1;
		margin-bottom: 30px;
		margin-top: 20%;
	}

	.itime {
		color: gray;
		font-size: 16px;
		padding-top: 10px;
	}

	.n11 {
		padding-top: 10px;
	}

	.n11 a {
		width: 50% !important;
		padding: 2%;
	}

	.n11 a:nth-child(n + 3) {
		padding-top: 30px;
	}

	/****************************************************************************

	ハピネス歯科について

****************************************************************************/
	#main_in {
		height: 230px;
	}

	/*******/
	.pt-150 {
		padding-top: 60px;
	}

	.mt-150 {
		margin-top: 60px;
	}

	.padding150 {
		padding: 60px 0;
	}

	.flex_box {
		display: block;
	}

	.flex_46 {
		width: 100%;
	}

	.flex_50 {
		width: 100%;
	}

	.midashi_inline {
		text-align: center;
		font-size: 26px;
		letter-spacing: 0.2em;
		color: #03a38a;
	}

	.midashi_inline .eng {
		display: block;
		padding-left: 0;
		font-size: 14px;
		letter-spacing: 0.05em;
	}

	.name {
		font-size: 22px;
	}

	.name span {
		padding-left: 10px;
		font-size: 12px;
	}

	/***************/
	.ab_af_img:before {
		content: "";
		background: url(../images/about_bg1.jpg) left 0/160px 568px no-repeat;
		width: 160px;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
	}

	.ab_af_img:after {
		content: "";
		background: url(../images/about_bg2.jpg) right 0/120px 547px no-repeat;
		width: 120px;
		height: 100%;
		position: absolute;
		right: 0;
		top: 0;
	}

	.center_midashi {
		font-size: 26px;
		color: #03a38a;
	}

	.center_midashi span {
		font-size: 12px;
		color: #454444;
		padding-top: 5px;
	}

	#ab_center_img {
		margin-top: 20px;
	}

	#ab_img1 {
		display: none;
	}

	#ab_img2 {
		display: none;
	}

	#ab_img3 {
		display: none;
	}

	#ab_img4 {
		display: none;
	}

	/*********************/
	.flex_52 {
		width: 100%;
	}

	.ab_table {
		display: table;
		width: 100%;
	}

	.ab_cell1 {
		width: 60px;
	}

	.ab_cell2 {
		padding-left: 20px;
		font-size: 14px;
	}

	/***************/
	.font_b {
		font-size: 16px;
	}

	.ab_list {
		display: block;
		margin-top: 60px;
	}

	.ab_list li {
		width: 100%;
		margin: 60px 0;
		border: 2px dotted #03a329;
		padding: 60px 20px 40px;
	}

	.ab_icon {
		top: -40px;
	}

	.ab_icon img {
		width: auto;
		height: 80px;
	}

	.ab_midashi {
		font-size: 20px;
		padding: 0 0 20px;
		color: #03a38a;
	}

	/***************************/
	.ab_posi {
		padding: 0;
		margin-top: 0;
	}

	.ab_num {
		position: relative;
		top: 40px;
		left: 0;
		margin-bottom: 0;
		text-align: right;
	}

	.sp_order {
		display: flex;
		flex-wrap: wrap;
	}

	.ab_right_img {
		float: none;
		width: 100%;
		margin: 40px 0 0;
		order: 2;
	}

	.sp_order_text {
		width: 100%;
	}

	.midashi40 {
		font-size: 24px;
		color: #03a38a;
	}

	.midashi40 .mini {
		color: #000;
	}

	.midashi24 {
		font-size: 18px;
		color: #03a38a;
	}

	.num_list li {
		font-size: 14px;
		padding: 5px 0;
	}

	.a_center a {
		margin-top: 0;
		margin-left: auto;
		margin-right: auto;
	}

	/************/
	.ab04_table li {
		display: block;
		padding: 10px 0;
	}

	.ab04_cell1 {
		display: block;
		width: 100%;
		border-bottom: 1px dotted #ccc;
		padding-bottom: 5px;
	}

	.ab04_cell1:after {
		display: none;
	}

	.ab04_cell2 {
		display: block;
		padding-left: 0;
		margin-top: 10px;
	}

	.ab04_minitable {
		display: block;
		width: 100%;
	}

	.ab04_minicell1 {
		display: block;
		width: 100%;
	}

	.ab04_minicell2 {
		display: block;
	}

	.markar {
		background: linear-gradient(transparent 60%, #deda9a 60%);
	}

	/*************/
	.ab_care {
		width: 100%;
	}

	.ab_care li {
		width: 48%;
		margin: 5px 0;
		display: table;
	}

	.ab_care img {
		width: 40px;
		height: auto;
	}

	.ab_care_icon {
		width: 40px;
	}

	.ab_care_cell {
		font-size: 16px;
		padding-left: 10px;
	}

	/****************************************************************************

	初診について

****************************************************************************/
	.first_posi {
		position: relative;
		padding: 0;
	}

	.f_midashi_ver {
		position: static;
		left: 0;
		top: 0;
		display: block;
		text-align: center;
		margin-bottom: 20px;
		-ms-writing-mode: lr-tb;
		/* for MS IE8+ */
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
	}

	.midashi_table {
		display: block;
	}

	.m_cell1 {
		font-size: 22px;
	}

	/**********************/
	.af_bl:after {
		height: 80px;
		bottom: -10px;
	}

	.flow_flex {
		display: block;
		margin-top: 20px;
	}

	.flow_flex li {
		width: 100%;
		margin: 60px 0;
		padding: 50px 20px 40px;
		border-radius: 30px;
		position: relative;
	}

	.flow_flex li .a_center {
		margin-top: -25px !important;
	}

	.flow_icon {
		position: absolute;
		top: -30px;
	}

	.flow_icon img {
		width: 60px;
		height: auto;
	}

	.tel_img {
		margin-top: 10px;
	}

	.tel_img img {
		max-width: 280px;
		width: 100%;
		height: auto;
	}

	/***************/
	.flex_40 {
		width: 100%;
	}

	.img_list li {
		margin-bottom: 20px;
	}

	/*************/
	.first_flex {
		display: block;
	}

	.first_flex img {
		width: 100%;
		height: auto;
	}

	.first_left {
		width: 100%;
	}

	.first_right {
		width: 100%;
		border: 1px solid #ccc;
		margin-top: 20px;
		padding: 10px;
		display: block;
	}

	.first_right li {
		width: 100%;
		margin: 10px 0;
	}

	/**************/
	.m_flex {
		display: block;
	}

	.m_flex .mini {
		font-size: 14px;
		padding-left: 0;
		padding-bottom: 0;
		display: block;
		margin-top: 10px;
	}

	.flex_text {
		display: block;
		margin-top: 20px;
	}

	.flex_text li {
		width: 100%;
		margin: 20px 0;
	}

	/**************/
	.bg_text {
		padding: 40px 0;
		text-align: left;
	}

	/****************************************************************************

	診療案内

****************************************************************************/
	.guidance_list {
		display: flex;
	}

	.guidance_list li {
		width: 49%;
		margin: 1% 0;
	}

	.guidance_list img {
		width: 90px;
		height: auto;
	}

	.center_midashi.white {
		color: #fff;
	}

	.center_midashi.white span {
		color: #fff;
	}

	/***************/
	#gui_bg1 {
		background: url(../images/medical1.jpg) 80% 0 / cover no-repeat;
	}

	.bg_size {
		height: 300px;
		margin-top: -60px;
		position: relative;
		z-index: 1;
	}

	.icon_size {
		position: relative;
		top: 0;
		text-align: center;
		margin-bottom: 0;
		z-index: 500;
	}

	.icon_size img {
		width: 160px;
		height: auto;
	}

	.left_icon {
		position: relative;
		top: 0;
		right: 0;
		left: 0;
		text-align: center;
		margin-bottom: 0;
	}

	/**/
	.gui_table {
		display: block;
	}

	.gui_cell1 {
		display: block;
		font-size: 20px;
		width: 100%;
	}

	.gui_cell2 {
		display: block;
		margin-top: 20px;
	}

	/**/
	.border_midashi {
		display: flex;
		font-size: 20px;
	}

	.border_midashi:before {
		content: "";
		flex-grow: 1;
		margin-right: 40px;
		border-bottom: 3px solid #ccc;
	}

	.border_midashi:after {
		content: "";
		flex-grow: 1;
		margin-left: 40px;
		border-bottom: 3px solid #ccc;
	}

	.cont_list {
		display: block;
		padding: 15px;
	}

	.cont_list li {
		width: 100%;
		padding: 15px;
		border-radius: 10px;
	}

	.cont_list:after {
		height: calc(100% + 18px);
	}

	.cont_icon {
		width: 40px;
	}

	.cont_icon img {
		width: 100%;
		height: auto;
	}

	.icon_cell {
		padding-left: 20px;
		font-size: 18px;
		line-height: 1.5em;
	}

	.icon_cell .mini {
		font-size: 10px;
	}

	.icon_cell .big {
		padding-left: 10px;
		font-size: 20px;
	}

	/***************/
	.right_icon {
		right: 0;
		z-index: 500;
	}

	/***************/
	.free_size {
		top: 0;
	}

	.free_size img {
		width: 45px;
		height: auto;
	}

	.right_free {
		right: 10px;
	}

	/***************/
	.left_free {
		left: 10px;
	}

	/***/
	.invisa_midashi {
		text-align: center;
	}

	.invisa_midashi img {
		width: 200px;
		height: auto;
	}

	.invisa_box {
		margin-top: 60px;
		padding: 60px 20px 20px;
	}

	.invisa_logo {
		top: -30px;
	}

	.invisa_logo img {
		width: 260px;
		height: auto;
	}

	/****/
	.merit_list {
		margin-top: 40px;
		display: block;
	}

	.merit_list li {
		width: 100%;
		margin: 60px 0;
		padding: 60px 15px 40px;
	}

	/*************/
	.implant_img {
		text-align: center;
	}

	.implant_img img {
		width: 160px;
		height: auto;
	}

	#sar_bg {
		background: url(../images/medical21.jpg) 50% 0 / cover no-repeat;
		height: auto;
		display: block;
		padding: 100px 14px 40px;
	}

	.sar_width {
		width: 100%;
		max-width: 606px;
	}

	.midashi30 {
		font-size: 20px;
		color: #03a38a;
	}

	#first_bg {
		position: relative;
	}

	#first_bg:before {
		display: none;
	}

	#first_bg:after {
		display: none;
	}

	/***************/
	.gui_af_bg {
		padding: 40px 0;
		color: #fff;
	}

	.gui_af_bg:after {
		height: 100%;
	}

	.gui_list {
		display: block;
	}

	.gui_list li {
		width: 100%;
		margin: 10px 0;
	}

	/****************************************************************************

	院内紹介

****************************************************************************/
	.intro_list {
		display: block;
		margin-top: 20px;
	}

	.intro_list li {
		width: 100%;
		border: 2px dotted #ccc;
		padding: 20px;
		margin: 20px 0;
	}

	/****************************************************************************

	設備紹介

****************************************************************************/
	.faci_box {
		display: block;
		padding: 20px;
	}

	.faci_left {
		width: 100%;
	}

	.faci_midashi {
		text-align: center;
		margin-top: 20px;
		font-size: 20px;
	}

	.faci_midashi .mini {
		font-size: 14px;
	}

	.faci_right {
		width: 100%;
		margin-top: 20px;
	}

	.faci_list {
		display: flex;
		justify-content: space-between;
		margin-bottom: 30px;
	}

	.faci_list li {
		width: 48%;
	}

	.center_img {
		margin-bottom: 20px;
		text-align: center;
	}

	.center_img img {
		max-width: 100%;
		width: 100%;
		height: auto;
	}

	/****************************************************************************

	採用情報

****************************************************************************/
	.rec_list {
		border: 1px solid #ccc;
	}

	.rec_list li {
		display: table;
		width: 100%;
		border-bottom: 1px solid #ccc;
	}

	.rec_cell1 {
		display: table-cell;
		width: 250px;
		padding: 30px;
		vertical-align: middle;
		background-color: #f1f1f1;
		border-right: 1px solid #ccc;
	}

	.rec_cell2 {
		display: table-cell;
		padding: 30px;
		vertical-align: middle;
	}

	/****************************************************************************

	採用情報

****************************************************************************/
	.rec_list {
		border: 1px solid #ccc;
	}

	.rec_list li {
		display: block;
		border-bottom: 1px solid #ccc;
	}

	.rec_cell1 {
		display: block;
		width: 100%;
		padding: 20px;
		vertical-align: middle;
		background-color: #f1f1f1;
		border-right: 1px solid #ccc;
	}

	.rec_cell2 {
		display: block;
		padding: 20px;
		vertical-align: middle;
	}

	.rec_catch {
		color: #fff !important;
		margin: 0 auto;
		text-align: center;
		font-size: 18px;
		max-width: 350px;
		width: 100%;
		margin-top: 20px !important;
	}

	.ohr {
		width: 33.33%;
		margin: 3px;
	}

	.n_b_text {
		font-size: 17px;
	}

	.font_bold {
		font-size: 15px;
	}

	.app_banner {
		display: none;
	}

	.sp_app_banner {
		display: block;
		background-color: #6af36d33;
		margin-top: 20px;
		padding: 30px 0;
	}

	.b_t img {
		max-width: 380px;
		width: 95%;
		margin: 0 auto;
		display: block;
	}

	.apple_app img {
		max-width: 160px;
		width: 95%;
		height: auto;
	}

	.apple_app {
		display: block;
		width: 48%;
	}

	.google_app img {
		max-width: 180px;
		height: auto;
		width: 95%;
	}

	.google_app {
		display: block;
		width: 48%;
	}

	.b_b {
		display: flex;
		margin: 20px auto 0;
		justify-content: space-between;
		align-items: center;
		max-width: 385px;
		width: 95%;
	}

	/* フォーム追加 */
	.contact_table {
		padding: 40px 20px 20px;
	}

	.contact_table>div {
		display: block;
		padding-bottom: 20px;
	}

	.e_cell1 {
		font-size: 13px;
		margin-right: 20px;
	}

	.e_cell2 {
		width: 100%;
		padding-top: 5px;
	}

	.e_hissu {
		font-size: 11px;
	}

	.nini {
		font-size: 11px;
	}

	.size input {
		height: 50px;
	}

	.area textarea {
		height: 240px;
	}

	.submit input {
		max-width: 240px;
		padding: 20px 20px;
	}

	.contact_table_top {
		align-items: flex-start !important;
	}

	.contact_table_top .e_cell1 {
		margin-top: 20px;
	}

	.submit {
		margin: 0 auto;
		width: 240px;
	}
}

@media only screen and (max-width: 648px) {
	.sp_if33 img {
		max-width: 320px;
	}

	.changeBanner {
		left: 1%;
		bottom: -9%;
		max-width: 200px;
		padding: 25px 0;
		z-index: 15000;
	}

	.changeBanner span {
		font-size: 13px;
	}

	.i12 {
		font-size: 24px;
		font-weight: bold;
		margin-bottom: 20px;
	}

	.i121 {
		position: relative;
		top: 0;
		font-size: 16px;
		color: gray;
		font-weight: normal;
		padding-left: 20px;
	}

	.i13 div {
		width: 100%;
	}

	.i13 div:nth-child(2) {
		padding-top: 40px;
	}

	.i11 {
		border: 2px dotted #9c9c9c;
		border-radius: 20px;
		padding: 20px;
		height: auto;
	}

	.i3 {
		position: relative;
		z-index: 99;
		background-image: url(../images/iback.png);
		background-size: cover;
		background-position: 60% 0;
		width: 100%;
		height: 450px;
		margin-top: -400px;
	}

	.iha {
		position: absolute;
		z-index: 99;
		bottom: 42px;
		right: 10%;
		width: 150px;
		height: auto;
	}

	.i32 {
		position: relative;
		z-index: 99;
		font-size: 20px;
		color: #616161;
		padding-top: 160px;
		padding-left: 20px;
	}

	.isan {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: auto;
	}

	.i32 {
		position: relative;
		z-index: 99;
		font-size: 20px;
		color: #616161;
		padding-top: 120px;
		padding-left: 20px;
	}

	.ikuwa a {
		position: relative;
		z-index: 99;
		display: block;
		margin: 0;
		margin-top: 20px;
		width: 220px;
		text-align: center;
		padding: 10px;
		border-radius: 35px;
		background-color: #beb535;
		border: 1px solid #beb535;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s ease-in-out;
	}

	.i01 {
		position: absolute;
		top: -28px;
		left: 0;
		height: 80px;
		width: auto;
	}

	.i41 {
		max-width: 1400px;
		width: 100%;
		display: block;
		margin: 0 auto;
		margin-top: 30px;
	}

	.i42 {
		position: static;
		z-index: 99;
		left: 100px;
		padding: 0 4%;
		padding-top: 50px;
	}

	.i421 {
		position: relative;
		font-size: 20px;
		color: #616161;
	}

	.i422 {
		padding-top: 50px;
		line-height: 1.8;
		text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
	}

	.ikuwa2 a {
		position: relative;
		display: block;
		margin: 0 auto;
		margin-top: 40px;
		width: 220px;
		text-align: center;
		padding: 10px;
		border-radius: 35px;
		background-color: #beb535;
		border: 1px solid #beb535;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s ease-in-out;
	}

	.i4221 {
		background: linear-gradient(transparent 60%, #deda9a 60%);
		font-size: 18px;
	}

	.i4all {
		position: relative;
		background-image: url(../images/ihai2.png);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		height: 100%;
		margin-top: 60px;
	}

	.i22 {
		-ms-writing-mode: lr-tb;
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		font-size: 26px;
		line-height: 0.5;
	}

	.i53 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 60px;
	}

	.i53 ul li {
		width: 50%;
		padding: 5%;
	}

	.i53 ul li {
		max-width: 450px;
		width: 100%;
		display: block;
		margin: 0 auto;
		padding: 6% 10%;
	}

	.icou {
		position: absolute;
		top: -40px;
		left: -20px;
		width: 90%;
		height: auto;
	}

	.ikuwa3 a {
		position: relative;
		display: block;
		margin: 0 auto;
		margin-top: 20px;
		width: 220px;
		text-align: center;
		padding: 10px;
		border-radius: 35px;
		background-color: #beb535;
		border: 1px solid #beb535;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s ease-in-out;
	}

	.if1 {
		padding: 60px 0;
	}

	.ifnet div {
		max-width: 350px;
		width: 90%;
		display: block;
		margin: 0 auto;
	}

	.ifnet div:nth-child(2) {
		margin-top: 10px;
	}

	.if3 {
		position: relative;
		background-image: url(../images/iback8.jpg);
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		padding: 50px 0;
		color: #fff;
	}

	.if31 ul li {
		width: 100%;
		display: block;
		margin: 0 auto;
		text-align: center;
	}

	.if32 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.if32 {
		position: static;
		width: 100%;
		display: block;
		margin: 40px auto 0;
	}

	.if32 ul li {
		padding: 0 10px;
	}

	#copy {
		text-align: center;
		padding: 10px 0 18%;
		font-size: 10px;
	}

	.itopsin {
		position: static;
		width: 280px !important;
		height: auto;
		margin-top: 380px;
	}

	.is1 {
		display: block;
		position: fixed;
		z-index: 999;
		bottom: 0;
		left: 0;
		width: 100%;
	}

	.is1 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.is1 ul li {
		width: 49%;
	}

	.is1 ul li a {
		transition: 0.3s ease-in-out;
		display: block;
	}

	.is1 ul li a:hover {
		opacity: 0.8;
	}

	.is1 ul li img {
		position: relative;
		z-index: 999;
		width: 100%;
		height: auto;
	}

	.atoptitle {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		font-size: 24px;
		font-family: fontlogo;
		padding-top: 0;
		padding-left: 0;
		color: #616161;
		text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
	}

	.atop1,
	.ntop1 {
		display: table;
		position: relative;
		background-size: cover;
		background-position: 50% 0;
		width: 100%;
		height: 250px;
	}

	.a1all {
		position: relative;
		background-image: url(../images/ahai.png);
		background-size: contain;
		background-repeat: repeat;
		background-position: 50% 0;
		width: 100%;
		padding: 50px 0;
	}

	.a11 {
		font-size: 24px;
		line-height: 1.2;
		padding-bottom: 40px;
	}

	.a111 {
		font-size: 16px;
		color: #969696;
	}

	.a01 {
		position: absolute;
		top: 0;
		right: auto;
		left: 20px;
		bottom: 0;
		margin: auto 0;
		width: 120px;
		height: auto;
	}

	.a2 {
		padding-top: 60px;
	}

	.a21 {
		position: relative;
		font-size: 20px;
		color: #616161;
	}

	.a22 {
		padding: 60px 0 40px;
	}

	.a24 {
		max-width: 960px;
		width: 100%;
		display: block;
		margin: 0 auto;
		border-bottom: 5px solid #e4e4e4;
		padding-bottom: 50px;
		margin-bottom: 50px;
	}

	.a25 p {
		padding: 5px 0;
		font-size: 15px;
	}

	.a2512 {
		font-size: 18px;
		font-weight: bold;
	}

	.a3 {
		background-image: url(../images/aback.jpg);
		background-size: contain;
		background-repeat: repeat;
		background-position: 50% 0;
		width: 100%;
		padding: 40px 0;
	}

	.a220 {
		padding-bottom: 40px;
	}

	.asan2 {
		position: absolute;
		top: -0.8%;
		left: 0;
		width: 100%;
		height: auto;
	}

	.a4 {
		position: relative;
		background-image: url(../images/ahai.png);
		background-size: contain;
		background-repeat: repeat;
		background-position: 50% 0;
		width: 100%;
		padding: 80px 0 50px;
	}

	.a51 img {
		max-width: 250px;
		width: 100%;
		height: auto;
	}

	.a55 {
		width: 90px;
		text-align: center;
		display: block;
		margin: 0 auto;
		margin-bottom: 20px;
	}

	.a56 {
		padding-left: 0;
		width: 100%;
		text-align: center;
	}

	.a57 {
		margin: 0 auto;
		margin-bottom: 20px;
	}

	.amap iframe {
		height: 300px;
	}

	.aback {
		position: relative;
		background-image: url(../images/aback.png);
		background-size: cover;
		background-repeat: repeat;
		background-position: 50% 0;
		background-attachment: fixed;
		width: 100%;
		height: 250px;
		margin-top: -6px;
	}

	.junbi {
		text-align: center;
		font-size: 26px;
		padding: 100px 0;
	}

	.flexslider {
		position: relative;
		width: 100%;
		height: 300px;
	}

	#fade1 {
		background-image: url(../images/fade1.jpg);
	}

	#fade2 {
		background-image: url(../images/fade2.jpg);
	}

	#fade3 {
		background-image: url(../images/fade3.jpg);
	}

	#fade1,
	#fade2,
	#fade3 {
		background-position: 50% 0;
		background-repeat: no-repeat;
		background-size: cover;
		height: 350px;
	}

	.all {
		padding: 60px 0 0 0;
	}

	.sp_app_banner {
		margin-top: 300px;
	}
}

@media only screen and (max-width: 480px) {
	.changeBanner {
		bottom: 22%;
		left: 50%;
		transform: translateX(-50%);
	}

	#fade1 {
		background-image: url(../images/fade1.jpg);
	}

	#fade2 {
		background-image: url(../images/fade2.jpg);
	}

	#fade3 {
		background-image: url(../images/fade3.jpg);
	}

	#fade1,
	#fade2,
	#fade3 {
		background-position: 50% 0;
		background-repeat: no-repeat;
		background-size: cover;
		height: 200px;
	}

	.itopsin {
		margin-top: 230px;
	}

	.itopsia {
		position: absolute;
		top: 50px;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto auto;
		width: 180px !important;
		height: auto;
	}

	.sp_app_banner {
		margin-top: 140px;
	}
}

@media only screen and (max-width: 377px) {
	.sp-only {
		display: none;
	}
}