@charset "UTF-8";
/* CSS Document */

@media screen and (max-width:599px) {

	.pc {
		display: none;
	}

	.sp {
		display: inherit;
	}

	/* nav------------------------------------------------ */

	nav {
		flex-direction: row-reverse;
		justify-content: flex-start;
		background: none;
	}

	nav label {
		width: 60px;
		display: flex;
		flex-wrap: wrap;
		background: #ff2200;
		color: #fff;
		align-items: center;
		padding: 15px;
		z-index: 200;
	}

	nav label:before {
		content: "";
		display: block;
		width: 100%;
		border-bottom: 1px solid #fff;
		transition-duration: .4s;
	}

	nav label:after {
		content: "";
		display: block;
		width: 100%;
		height: 9px;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		transition-duration: .4s;
	}

	nav ul {
		position: fixed;
		width: 100%;
		top: 0;
		left: 0;
		bottom: 0;
		z-index: 100;
		padding: 30px 0;
		opacity: 0;
		visibility: hidden;
		transition-duration: .4s;
	}

	nav ul li {
		display: block;
		margin-bottom: 10px;
	}

	nav input:checked~ul {
		opacity: 1;
		visibility: visible;
	}

	nav input:checked~label {
		height: 50px;
		background: #fff;
		position: fixed;
	}

	nav input:checked~label:before,
	nav input:checked~label:after {
		border-color: #111;
	}

	nav input:checked~label:before {
		transform: rotate(-45deg) translate(-5px, 5px);
	}

	nav input:checked~label:after {
		border-top: none;
		transform: rotate(45deg) translate(-2px, -7px);
	}

	/* footer------------------------------------------------ */
	footer {
		display: block;
	}

	footer .foot_info {
		padding: 30px;
	}

	.copy {
		background: #f8f8f8;
		color: #111;
		padding-bottom: 120px;
	}

	.copy a {
		color: #111 !important;
	}

	.sp_fix {
		position: fixed;
		left: 0;
		bottom: 0px;
		width: 100%;
		background: #111;
		display: flex;
		justify-content: center;
		z-index: 9999;
	}



	.sp_fix li {
		background: #ee782f;
		color: #FFF;
		flex-basis: calc(100%/2);
		font-size: 1.1rem;
		font-weight: 700;
		letter-spacing: 0.05rem;
		text-align: center;
	}

	.sp_fix li:nth-child(2) {
		background: #ff2201;
	}

	.sp_fix li:not(:last-child) {
		border-right: 1px solid #fff;
	}

	.sp_fix li a:before {
		content: "";
		background: url("../images/common/icon-tel.svg") no-repeat center/contain;
		display: inline-block;
		width: 25px;
		height: 25px;
		margin: 0 8px -5px 0;
	}

	.sp_fix li:nth-child(2) a:before {
		background-image: url("../images/common/icon-mail.svg");
	}

	.sp_fix_text {
		position: fixed;
		left: 0;
		bottom: 55.05px;
		z-index: 9999;
		background: #000;
		color: #fff;
		width: 100%;
		font-size: 14px;
		letter-spacing: 1px;
		height: 35px;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.sp_fix li.web_link a:before {
		background-image: url("../images/common/icon-resv.svg");
	}

	.sp_fix li:not(:last-child) {
		border-right: 1px solid #fff;
	}

	.sp_fix a {
		display: block;
		color: #fff;
		letter-spacing: 0.05rem;
		padding: 15px 0px;
	}

	.sp_fix a i {
		margin-right: 3px;
	}


	.sp-fix-txt {
		position: fixed;
		left: 0;
		bottom: 0px;
		width: 100%;
		background: #ff2200;
		display: flex;
		justify-content: center;
		z-index: 9999;
		color: #fff;
		border-top: 1px solid #fff;
		text-align: center;
		font-weight: 600;
	}

	header .logo-txt {
		top: 78%;
		width: 80%;
		margin: auto;
	}


	header .logo-txt {
		padding: 10px;
		margin-top: 5px;
	}

	.flex-btn2 {
		width: 100%;
		margin: auto;
		display: block;
	}

	.flex-btn2 a {
		padding: 20px !important;
		font-size: 4.8vw;
	}

	.yoyaku_area {
		text-align: center;
		margin-bottom: 0px;
		border-top: 1px solid;
		padding: 15px;
		padding-top: 40px;
		width: 90%;
		margin-bottom: 5rem;
	}

	.yoyaku_area .txt {
		font-size: 5.5vw;
		font-weight: 600;
		line-height: 1.6;
		letter-spacing: 3px;
	}

	.yoyaku_area2 {
		border-top: none;
		margin-bottom: 40px;
		padding-top: 20px;
	}

	/*目黒医院TOP修正*/
	.top .about .about-txt {
		padding: 50px 20px;
	}

	/*目黒医院TOP修正*/


	/* sub------------------------------------------------ */
	main.sub {
		width: 100%;
		padding: 60px 20px;
		box-sizing: border-box;
	}

	main.sub img {
		width: 100%;
		height: 100%;
	}

	main.sub img.w_auto {
		width: auto;
	}

	.breadcrumb ul {
		width: 100%;
		padding: 0 20px;
	}

	.sub .block {
		flex-wrap: wrap;
	}

	.sub .block>* {
		flex-basis: 100%;
	}

	.sub .block>*:first-of-type {
		margin-right: 0;
	}

	.sub .block .photo {
		order: 0;
		margin-bottom: 30px;
	}

	.sub .block .txt {
		order: 1;
	}

	.sub .block .photo img {
		width: 100%;
		height: auto;
	}

	.sub table.type01 td {
		padding: 0;
	}

	.sub table th,
	.sub table td {
		border: none;
	}

	.sub table.type02 th,
	.sub table.type02 td {
		width: 100%;
		display: block;
		border-right: none;
	}

	#recruit_contact table,
	#recruit_contact table th,
	#recruit_contact table td {
		width: 100%;
		display: block;
		box-sizing: border-box;
	}

	#recruit_contact table textarea {
		width: 100%;
	}

	.sub h4.mt20 {
		margin-top: 20px;
	}


	/* top--------------------------------------------------------------------------------- */

	footer .foot_info .map_btn a {
		padding: 15px 70px;
		width: 100%;
		box-sizing: border-box;
	}

	header.top {
		height: 100vh;
	}

	section {
		width: 100%;
		padding: 0 20px;
	}



	header .logo {
		white-space: nowrap;
		min-width: 280px;
		font-size: 7vw;
	}

	.top_info {
		display: block;
		padding: 40px 20px;
	}

	.top_info .hour {
		margin-bottom: 50px;
	}

	.top_info .hour table {
		width: 100%;
	}

	.top .intro section>div {
		max-width: 85%;
		display: block;
		margin: 0 auto;
	}

	.top .intro .catch {
		font-size: 5vw;
	}

	.top .about {
		width: calc(100% - 40px);
		padding: 50px 40px;
	}

	.top .about .about_box {
		flex-wrap: wrap;
	}

	.top .about .about_box>* {
		flex-basis: 100%;
	}

	.top .about .about_box h3 {
		order: 1;
		text-align: center;
		margin-bottom: 20px;
	}

	.top .about .about_box p,
	.top .about .about_box:nth-of-type(2) p {
		order: 2;
	}



	.top .facility_in {
		display: block;
		padding: 0 20px;
	}

	.top .facility_in .facility_box p img {
		max-width: 51vw;
	}

	.top .facility ul {
		width: 90%;
		margin: 0 auto;
		overflow: scroll;
		display: flex;
		justify-content: left;
	}

	.top .facility ul li {
		flex-basis: 50%;
		flex-shrink: 0;
		width: auto;
	}

	.top .facility .btn a {
		width: calc(100% - 40px);
	}

	.top .treatment ul {
		padding: 30px 20px !important;
	}

	.top .treatment ul,
	.sub .treatment ul {
		padding: 30px 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.top .treatment ul li,
	.sub .treatment ul li {
		background: #f8f8f8;
		width: calc(49%);
		margin-bottom: 10px;
	}

	.top .treatment ul li:nth-child(n + 1):nth-child(-n+3),
	.top .treatment ul li:nth-child(n + 5):nth-child(-n+7),
	.top .treatment ul li:nth-child(n + 9):nth-child(-n+11),
	.top .treatment ul li:nth-child(n + 13):nth-child(-n+15),
	.sub .treatment ul li:nth-child(n + 1):nth-child(-n+3),
	.sub .treatment ul li:nth-child(n + 5):nth-child(-n+7),
	.sub .treatment ul li:nth-child(n + 9):nth-child(-n+11),
	.sub .treatment ul li:nth-child(n + 13):nth-child(-n+15) {
		margin-right: 0;
	}

	.top .treatment ul li a,
	.sub .treatment ul li a {
		font-size: 12px;
		width: 100%;
		height: 100%;
		box-sizing: border-box;
		vertical-align: middle;
		padding: 10px;
	}

	/*--
	.sub .treatment ul li:last-child{
		width: calc(100%);
	}
	--*/
	.sub .treatment ul li:last-child a {
		padding-bottom: 20px;
	}

	/*--
	.sub .treatment ul li:last-child img{
		width: 13%;
	}
	--*/

	.top .treatment ul li img,
	.sub .treatment ul li img {
		width: 25%;
		height: auto;
	}





	.top .for_first ul li {
		flex-basis: 100%;
		margin: 0;
	}

	.top .for_first ul li .photo {
		width: 45%;
		margin-right: 20px;
		float: left;
		clear: left;
	}

	.top .clinic {
		padding-left: 20px;
		padding-right: 20px;
	}

	.top .clinic ul {
		flex-wrap: wrap;
	}

	.top .clinic ul li {
		flex-basis: calc(50% - 40px);
		margin: 10px;
	}

	#geka_case img {
		width: 155px;
		float: left;
		margin-bottom: 10px;
	}

	#geka_case img:nth-child(odd) {
		margin-right: 10px;
	}

	.top .intro:after {
		width: 100vw;
		opacity: 0.3;
	}


	/*--------------------------------20190515更新分*/
	#subclinic_list .clinic_box {
		width: 100%;
		margin: 15px 0 0 0;
		padding: 15px 10px;
	}

	#subclinic_list .clinic_box p {
		margin-bottom: 0;
	}

	#subclinic_list .clinic_box p.clinic_name {
		font-size: 14px;
		margin-bottom: 10px;
		padding-bottom: 15px;
		height: auto;
	}

	#subclinic_list .clinic_box .btn_clinic {
		margin: 10px 0 5px;
	}

	#subclinic_list .clinic_box .btn_clinic a {
		padding: 10px 30px;
	}


	.footer .foot_info table {
		font-size: 12px;
	}

	/***** slider ****/



	.siema.sp-slide {
		display: block;
	}

	.siema.pc-slide {
		display: none;
	}



	.sub .box_02 {
		width: 100%;
		float: none;
		margin: 0;
	}

	.top .jidv section {
		padding: 0 30px;
	}

	.top .jidv section img {
		width: 100%;
	}

	.top .jidv section p br {
		display: none;
	}


	main.sub p.img_R img {
		width: 100%;
		float: none;
		margin-left: 0;
	}

	main.sub table.price {
		width: 100% !important;
		font-size: 12px;
	}

	main.sub table.price td,
	main.sub table.price th {
		padding: 10px 8px;
	}

	.taihu_news {
		background: #f8f8f8;
		padding: 3.5vw 5vw 5vw;
		box-sizing: border-box;
		width: 100%;
		margin: 7vw auto 0;
		line-height: 2;
	}

	.midashi {
		font-size: 4.8vw;
		color: #ff2200;
		padding-bottom: 1vw;
	}


	.btn a {
		width: 100%;
		padding: 10px;
	}


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

	.dr2_box {
		display: block !important;
	}

	.dr2_box .photo {
		text-align: center;
		margin-right: 0;
	}

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


	.top-info-txt {
		font-size: 1.5em;
	}


	.sub-iin-box {
		display: block;
	}

	.sub-iin {
		width: 100%;
	}

	.sub-iin-bnt {
		padding: 10px !important;
	}



}

@media screen and (max-width:768px) {

	.flex-btn {
		flex-wrap: wrap;
	}
}

@media screen and (max-width:375px) {
	header.top {
		height: 95vh;
	}

	header .logo {
		top: 40%;
	}

	.mv img {
		height: 100%;
		/*object-position: -425px 0px;*/
	}

	.top_info {
		display: block;
		margin-top: 0;
	}

	.top_info .hour table th {
		padding: 6px;
	}
}



/*English Page 20200417*/

@media screen and (max-width:599px) {

	.english_maps {

		width: 100%;

		margin: 0 auto;

		text-align: center;

	}



	.english_maps iframe {

		width: 90%;

	}

	.shibuya_area {

		border-bottom: solid 4px dodgerblue;

		padding-bottom: 15px;

		width: 50%;

		margin: 0 auto;

	}



	.minato_area {

		border-bottom: solid 4px red;

		padding-bottom: 15px;

		width: 50%;

		margin: 0 auto;

		margin-top: 30px;

	}



	.setagaya_area {

		border-bottom: solid 4px green;

		padding-bottom: 15px;

		width: 50%;

		margin: 0 auto;

		margin-top: 30px;

	}



	.kotoku_area {

		border-bottom: solid 4px brown;

		padding-bottom: 15px;

		width: 50%;

		margin: 0 auto;

		margin-top: 30px;

	}





	.english_page_link #subclinic_list .clinic_box {

		width: 100%;

		border: 0;

		display: inline-block;

		margin: 0 auto;

		padding: 10px;

		font-size: 12px;

		box-sizing: border-box;

	}



	.english_maps h3 {

		font-size: 1.5em;

		margin: 0px auto 15px;

	}



	.english_maps .top_info .hour {

		margin-bottom: 15px;

	}



	.dental_services ul li a {

		font-size: 2.9vw !important;

		width: 100%;

		height: 100%;

		box-sizing: border-box;

		vertical-align: middle;

		padding: 10px;

	}



	header .mv_dr {

		top: 25vh;

		height: auto;

		left: 20%;

	}

	.side-img {
		flex-wrap: wrap;
	}


	main.sub img.auto {
		width: 100% !important;
	}

	footer .foot_info table th,
	footer .foot_info table td {
		padding: 5px 3px;
	}


	.top .painless_area {
		padding: 1rem;
	}

	.top .painless_area p {
		margin-bottom: 2rem;
	}

	.top .painless_area ul li {
		flex-basis: 100%;
		margin: 0;
	}

	.top .painless_area ul li .photo {
		width: 45%;
		margin-right: 20px;
		float: left;
		clear: left;
	}


	/*sec-features*/
	.sec-features {
		padding-top: 5rem;
		margin-bottom: 4.5rem;
	}

	.sec-features .deco-en {
		-webkit-writing-mode: initial;
		-ms-writing-mode: initial;
		writing-mode: initial;
		left: 0;
		top: -.5rem;
	}

	.sec-features h2 {
		font-size: 6.333vw;
		margin-bottom: 2.5rem;
	}

	.sec-features ol li {
		padding: 8.75rem 2.5rem 0;
		width: 100vw;
		margin-left: -2.5rem;
		min-height: 0;
	}

	.sec-features ol li:after {
		position: static;
		height: 15rem;
		width: 100vw;
		margin-left: -2.5rem;
		display: block;
		margin-top: 2.75rem;
	}

	.sec-features ol li .no {
		font-size: 3.75rem;
		left: 2.5rem;
	}

	.sec-features ol li h3 {
		font-size: 1.75rem;
		margin-bottom: 1em;
	}


	/*side-img-new*/
	.side-img-new {
		flex-direction: column-reverse;
	}

	.side-img-new .content-new {
		width: 100%;
	}

	.side-img-new .img-new {
		width: 100%;
	}

	.top .about.about-sp {
		padding: 4vw;
	}

	.wrap {
		width: 100%;
		/*
    padding-left: 2.5rem;
    padding-right: 2.5rem;
*/
	}

	.sec-price .first-price {
		padding: 3rem 2rem 8rem;
	}

	.sec-price .first-price:after {
		width: calc(100% - 4rem);
		bottom: 4rem;
	}

	.sec-price .first-price h3 {
		font-size: 6.33vw;
		line-height: 1.4;
		margin-bottom: 1.8rem;
	}

	.sec-price .first-price h3 .inner {
		padding-left: 0;
		background: none;
	}

	.sec-price .first-price h3 .inner span {
		font-size: 5.333vw;
		display: inline-block;
		padding-left: 3rem;
		background: url(../images/common/icon-first01.svg) no-repeat left .5rem center/1.33rem;
	}

	.sec-price .first-price h3 span[class^="border"] {
		top: 1.5rem;
	}

	.sec-price .first-price h3+p small {
		display: block;
		line-height: 1.6;
	}

	.sec-price .first-price h3+p strong {
		font-size: 5.333vw;
	}

	.sec-price .first-price .btn a {
		margin-bottom: 30px;
	}

	.sec-flow .flow-list li {
		flex-wrap: wrap;
	}

	.sec-flow .flow-list li+li {
		margin-top: 5rem;
	}

	.sec-flow .flow-list li .txt {
		width: 100%;
		order: 2;
	}

	.sec-flow .flow-list li>img {
		order: 1;
		display: block;
		width: 100%;
		margin-bottom: 3rem;
	}

	main section ol.flow {
		margin: 4rem 0;
	}

	main section ol.flow li.has-img {
		padding: 0;
	}

	main section ol.flow li+li {
		margin-top: 2.5rem;
	}

	main section ol.flow li strong:first-of-type {
		padding-left: 4.4rem;
	}

	main section ol.flow li strong:first-of-type:before {
		width: 3.5rem;
		height: 3.5rem;
		border-radius: 3.5rem;
		font-size: 2rem;
		top: -.3rem;
	}

	main section ol.flow li img {
		position: static;
		margin-top: 1.5rem;
		display: block;
		width: 100%;
	}


}

@media screen and (max-width: 599px) {
	.sp_fix {
		position: fixed;
		left: 0;
		bottom: 0px;
		width: 100%;
		background: #111;
		display: flex;
		justify-content: center;
		z-index: 9999;
	}

	header .logo {
		top: 45%;
	}

	nav input:checked~div.sp-menu {
		opacity: 1 !important;
		visibility: visible !important;
		align-items: center;
		background: #f3f3f3;
		display: flex;
		width: 100%;
		justify-content: space-between;
		left: 0;
		opacity: 0;
		padding: 14vw 8.3vw;
		position: fixed;
		top: 0;
		transition-duration: .4s;
		z-index: 10;
	}

	nav input:checked~div.sp-menu ul {
		opacity: 1 !important;
		visibility: visible !important;
		position: initial !important;
		background: #f3f3f3;
		padding: 0px !important;
	}

	nav input:checked~div.sp-menu {
		justify-content: flex-start;
		margin-bottom: 5rem;
		flex-wrap: wrap;
	}

	nav input:checked~div.sp-menu>ul+ul {
		margin-top: 0px;
		padding-top: 0px;
	}

	nav input:checked~div.sp-menu>ul>li {
		font-weight: 700;
		padding: 6px 0px;
		margin-bottom: 0 !important;
		font-size: 14px;
	}

	nav input:checked~div.sp-menu>ul>li+li {
		margin-top: .2rem;
	}

	nav input:checked~div.sp-menu>ul>li.parent .row {
		margin-top: 1rem;
	}

	nav input:checked~div.sp-menu>ul>li.parent .child+.child {
		margin-left: 1rem;
	}

	nav input:checked~div.sp-menu>ul>li.parent .child li {
		font-size: .9rem;
		font-weight: 400;
		padding-left: 0.5rem;
		position: relative;
		margin-bottom: 0 !important;
		padding-bottom: 0px !important;
		padding-right: 0 !important;
		padding-left: 0;
	}

	nav div.sp-menu ul li a:after {
		display: none;
	}

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

	.treat-list .parent .row .child li a {
		display: flex;
		align-items: center;
	}

	.treat-list .parent .row .child li a:before {
		content: "";
		display: block;
		width: 1.5rem;
		height: 1.55rem;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		margin-right: 0.6rem;
		transition: .5s;
		transform: rotateY(0deg);
	}

	.treat-list .parent .row .child.child01 li:nth-child(1) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico05.png);
	}

	.treat-list .parent .row .child.child01 li:nth-child(2) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico07.png);
	}

	.treat-list .parent .row .child.child01 li:nth-child(3) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico01.png);
	}

	.treat-list .parent .row .child.child01 li:nth-child(4) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico06.png);
	}

	.treat-list .parent .row .child.child01 li:nth-child(5) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico02.png);
	}

	.treat-list .parent .row .child.child01 li:nth-child(6) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico12.png);
	}

	.treat-list .parent .row .child.child01 li:nth-child(7) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico18.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(1) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico11.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(2) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico04.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(3) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico03.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(4) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico08.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(5) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico09.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(6) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico10.png);
	}

	.treat-list .parent .row .child.child02 li:nth-child(7) a:before {
		background-image: url(https://www.setaden.com/img/common/treatment_ico19.png);
	}

	/*sec-clinic*/
	.sec-clinic2 {
		padding: 14.5rem 0 5rem;
		background-image: url(../img/index/policy-bg01-sp.jpg);
	}

	.sec-clinic2 .img01 {
		width: 20rem;
		height: 20rem;
		background-image: url(../img/index/treatment01-sp.jpg);
		top: -5rem;
	}

	.sec-clinic2 h2 {
		margin-bottom: 3rem;
	}

	.sec-clinic2 .wrap {
		padding: 2rem;
	}

	.sec-banner .flex-banner {
		flex-wrap: wrap;
	}


}

@media screen and (max-width:375px) {
	header.top {
		height: 115vh;
	}
}



@media screen and (max-width: 768px) {
	p.case-before {
		width: 90%;
		margin: 5px auto 0;
		padding-left: 110px;
	}

	p.case-after {
		width: 90%;
		margin: 5px auto 0;
		padding-left: 115px;
	}

	.case table.sp-break th {
		display: block;
		width: 100%;
		text-align: center;
		font-weight: 600;
		border-bottom: 1px solid #aaa;
		background-color: #CCCCCC;
	}

	.case table.sp-break td {
		display: block;
		width: 100%;
		font-weight: 500;
	}

	.sub .block2 {
		flex-wrap: wrap;
	}

	.sub .block2>* {
		flex-basis: 100%;
	}

	.sub .block2>*:first-of-type {
		margin-right: 0;
	}

	.sub .block2 .photo {
		order: 1;
		margin-bottom: 30px;
	}

	.sub .block2 .txt {
		order: 0;
		margin-bottom: 15px;
	}

	.sub .block2 .photo img {
		width: 100%;
		height: auto;
	}

	.sub .block2 .txt img {
		width: 90%;
		margin: 0 auto 0;
	}

	.sub .block2 .txt a {
		margin-top: 0;
	}

	.sec-price .first-price h3+p {
		text-align: left;
	}

	/* news----------------*/
	.top .news_area {
		width: calc(100% - 40px);
		padding: 30px 20px
	}


}

@media screen and (max-width: 768px) {

	.sec-banner {
		margin-bottom: 2rem;
	}

	.sec-banner .flex-banner {
		flex-wrap: wrap;
	}

	.flex-banner img {
		width: 100%;
	}

	.flex-banner a {
		margin-bottom: 2rem;
	}

	.flex-banner+.flex-banner {
		margin-top: 0rem;
	}

	.top h2 {
		font-size: 1.6em;
		letter-spacing: 0.1px;
	}

	.top h2:after {
		margin: 15px auto;
	}

}

/* 20241115start */
@media screen and (max-width: 768px) {

	/*top　googleカレンダー*/
	.top .news_area .calendar iframe {
		width: 100%;
		height: 350px;
		box-sizing: border-box;
	}

	body #yDmH0d {
		overflow-x: hidden;
	}
}

/* 20241115end */

@media screen and (max-width: 599px) {
	.news_area .btn a {
		width: 94%;
		padding: 8px;
		margin-top: 5px;
		line-height: 1.7;
		font-size: 12px;
	}
}

/* 20250212 */
@media screen and (max-width: 599px) {
	nav input:checked~div.sp-menu {
		overflow-y: auto;
		max-height: 87vh;
		justify-content: center;
	}

	nav input:checked~ul {
		overflow-y: auto;
		max-height: 87vh;
	}

	.reservation-link-txt {
		text-align: center;
		font-size: 1.3rem;
		font-weight: bold;
		margin-top: 16px;
	}

	.reservation-link-txt a {
		color: #0563C1;
		text-decoration: underline;
	}

	.sp-reservation-link-txt {
		font-size: 1.1rem;
	}

	.sp-reservation-link-txt a {
		line-height: 1.8;
		font-size: 1rem;
	}
}

/* 20250212 END */

/* 20250411 */
@media screen and (max-width: 599px) {
	.footer_banner {
		display: flex !important;
	}

	.footer_banner li:nth-child(1) {
		background: #4472C4;
	}

	ul.footer_banner li:nth-child(2) a:before {
		background: url(https://www.setaden.com/column/wp-content/uploads/2024/11/icon-magnifying-glass.webp) no-repeat center / contain;
		width: 22px;
	}

	ul.footer_banner li:nth-child(1) a:before {
		background: url(https://www.setaden.com/column/wp-content/uploads/2025/01/lightbulb-regular.png) no-repeat center / contain;
	}

	ul.footer_banner li a:before {
		margin: 0 8px -6px 0;
	}

	.footer_banner li.reason_banner {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.footer_banner li.reason_banner a {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0;
		font-size: 14px;
	}

	ul.footer_banner li:nth-child(1) a:before {
		margin: 0 8px 0 0;
	}

	.sp_fix_text {
		bottom: 54.05px;
	}
}

/* 20250411 END */

/* 20251023 */
@media screen and (max-width: 599px) {
	.insta {
		display: none;
	}

/*	div.sp {
		display: none;
	}*/
}

/* 20251023 END */
