@charset "utf-8";
	/* 480px以上は写さない */
@media (min-width: 480px) {
	.sp-only {
		display: none!important;
	}
}
	/* 960px以上は写さない */
@media (min-width: 960px) {
	.tb-only {
		display: none!important;
	}
}

	/* 1280px以下に適用されるCSS（スクエアモニター用） */
@media screen and (max-width: 1280px) {
	.header-left {
		width: 15%;
	}
	.header-right {
		width: 85%;
	}
	
	
	}


	/* 960px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 960px) {
	.header-left {
		width: 10%;
	}
	.header-right {
		width: 90%;
	}
	.slider, .slider-item {
		height: 80vh;
	}
	.menu > li a {
		font-size: 13px;
	}
	.cp {
		width: 90%;
	}
	.t-flex {
		flex-direction: column;
	}
	#topics .index-ttl, .t-content {
		width: 100%;
		text-align: left;
	}
	#topics::after {
		background-size: 70%;
	}
	#information .index-ttl span::after {
		background-size: 80%;
	}
	#information {
		flex-direction: column;
	}
	#information .left, #information .right {
		width: 100%;
	}
	#review .ttl {
		font-size: 22px;
	}
	#review .img {
		width: 25%;
	}
	#review .txt p {
		font-size: 23px;
	}
	#review .txt span {
		font-size: 43px;
	}
	#review .txt span::after {
		background-size: 65%;
	}
	.review-btn {
		width: 22%;
		right: 10px;
	}
	#greeting .wrap, #index-philosophy .wrap {
		flex-direction: column;
	}
	#greeting .img, #index-philosophy .img {
		width: 100%;
		margin-bottom: 25px;
	}
	#greeting .flex-2, #index-philosophy .flex-2 {
		width: 90%;
		margin: 0 auto;
	}
	#index-feature .index-ttl .en {
		font-size: 70px;
	}
	#index-feature .index-ttl .ja {
		font-size: 24px;
	}
	.f-item .number {
		font-size: 55px;
		top: -25px;
	}
	.f-item .ttl {
		font-size: 25px;
	}
	#index-feature::before {
		width: 140px;
		right: 13%;
	}
	#index-feature::after {
		width: 130px;
		left: 13%;
	}
	#index-doctor .index-ttl .en {
		font-size: 70px;
	}
	.footer-top .wrap {
		width: 95%;
	}
	.f-tel {
		font-size: 22px;
	}
	
	
	
	/**** ここから下層ページ　****/
	#mainvisual {
		height: 35vh;
	}
	.page-ttl .ja {
		font-size: 25px;
	}
	.page-ttl .en {
		font-size: 16px;
	}
	.sec-ttl {
		padding: 30px 0 20px;
	}
	.sec-ttl .ja {
		font-size: 24px;
		padding-bottom: 12px;
		border-bottom: 3px solid #C8D8A3;
	}
	.sec-ttl::before {
		width: 80px;
		height: 60px;
	}
	.sec-ttl::after {
		width: 55px;
		height: 60px;
	}
	#philosophy .item .number::before {
		width: 85px;
		height: 60px;
	}
	.facility-list .ttl {
		font-size: 16px;
	}
	#access .sec-ttl {
		margin: 0 auto;
	}
	.skill-list dt {
		width: 100%;
		margin-bottom: 0;
	}
	.skill-list dd {
		width: 100%;
	}
	#recruit p.txt {
		font-size: 18px;
	}
	.info-list dt {
		width: 120px;
	}
	.info-list dd {
		width: calc(100% - 120px);
	}
	
	.bg-gray {
		padding: 30px 3%;
	}
	.list li {
		padding-left: 0;
	}
	.pet-pass__box {
		grid-template-columns: 1fr;
		row-gap: 30px;
	}

	}

@media screen and (max-width: 768px) {
	.container article {
		padding: 0 0 30px;
	}

	.single-header .sec-ttl {
		padding: 30px 0 30px;
	}

	.single-date,
	.single-body {
		padding: 0 50px;
	}

	.single-nav {
		margin-left: 50px;
		margin-right: 50px;
		padding: 20px 20px;
	}

	.back-to-archive a {
		font-size: 18px;
	}

	#archive .container article {
		padding: 25px 0 30px;
	}

	.archive .single-date,
	.archive .single-title,
	.excerpt,
	.read-more,
	.pagination {
	padding: 0 40px;
}
}


	/* 480px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 480px) {
	.pc-only {
		display: none!important;
	}
	#header {
		transform: none;
		left: 0;
		background: none;
	}
	.header-left {
		width: 30%;
	}
	.header-right {
		display: none!important;
	}
	.sp-nav {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		position: fixed;
	}
	.nav_wrapper {
		position: fixed;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		bottom: 0;
	}
	.nav_wrapper div:first-child {
		border-left: 1px solid #F3F3F3;
	}
	.nav_wrapper div {
		width: 25%;
		display: flex;
		background: #A5C477;
		align-items: center;
		justify-content: center;
		border-right: 1px solid #F3F3F3;
		border-top: 1px solid #F3F3F3;
	}
	.nav_wrapper a {
		padding: 10px;
	}
	#page_top {
		display: none!important;
	}
	.wrap {
		width: 90%;
	}
	.flex {
		flex-direction: column;
	}
	.flex-2, .flex-3 {
		width: 100%;
		margin-bottom: 30px;
	}
	#topics .border {
		border: 5px solid #C8D8A3;
		padding: 35px 2%;
	}
	.index-ttl .ja {
		font-size: 27px;
	}
	.index-ttl .en {
		font-size: 17px;
	}
	#topics::after {
		background-size: 55%;
		right: 15px;
	}
	.biz-hour td, .biz-hour th {
		padding: 2px;
	}
	.biz-hour-txt {
		font-size: 13px;
	} 
	#review .ttl {
		font-size: 18px;
		max-width: 140px;
	}
	#review .txt p {
		font-size: 20px;
		margin-bottom: 40px;
	}
	#review .txt span {
		font-size: 32px;
	}
	#review .txt span::after {
		background-size: 35%;
	}
	#review .bg::before {
		width: 80px;
		height: 60px;
	}
	.review-btn {
		width: 30%;
		bottom: 5px;
		right: 5px;
	}
	.review-btn::after {
		width: 50px;
	}
	#greeting .txtbox h3, #index-philosophy .txtbox h3 {
		font-size: 20px;
	}
	#greeting::after {
		width: 130px;
		height: 160px;
	}
	#index-philosophy::after {
		width: 90px;
		height: 110px;
		bottom: 10px;
		left: 20px;
	}
	.more-btn {
		font-size: 17px;
		padding: 12px 0;
	}
	#index-feature .index-ttl .en {
		font-size: 55px;
	}
	#index-feature .index-ttl .ja {
		font-size: 19px;
	}
	#index-feature::before {
		width: 100px;
	}
	.f-item .ttl {
		font-size: 22px;
	}
	.f-item {
		margin-bottom: 40px;
	}
	#index-feature::after {
		width: 75px;
		bottom: 4%;
	}
	.menu-wrap li {
		width: 48%;
	}
	.menu-wrap .menu-btn {
		padding: 15px 0;
	}
	.menu-btn img {
		margin: 0 auto 20px;
	}
	.menu-btn .img {
		width: 40%;
		margin: 0 auto;
	}
	.menu-btn h3 {
		font-size: 16px;
	}
	#index-doctor {
		padding: 50px 0 80px;
	}
	#index-doctor .index-ttl .en {
		font-size: 55px;
	}
	#index-doctor .index-ttl .ja {
		font-size: 20px;
	}
	#index-doctor .txt, #index-doctor .img {
		width: 100%;
	}
	.index-flex {
		margin: 60px auto 0;
	}
	#index-recruit, #link {
		width: 100%;
		margin-bottom: 20px;
	}
	.footer-top .left {
		width: 100%;
		margin-bottom: 20px;
	}
	.footer-top .right {
		width: 100%;
	}
	.f-tel {
		font-size: 20px;
		width: 200px;
	}
	.copyright {
		padding: 12px 0 80px;
	}
	
	
	/****　ここから下層ページ　****/
	#mainvisual {
		height: 23vh;
	}
	.section {
		padding-top: 70px;
	}
	.sec-ttl {
		width: 90%;
		margin: 0 auto 30px;
		padding: 20px 0 10px;
	}
	.sec-ttl .ja {
		font-size: 20px;
		padding-bottom: 7px;
		border-bottom: 2px solid #C8D8A3;
	}
	.sec-ttl::before {
		width: 50px;
		height: 40px;
	}
	.sec-ttl::after {
		width: 35px;
		height: 40px;
	}
	#philosophy .item {
		flex-direction: column;
	}
	#philosophy .item .number {
		width: 100%;
		margin-bottom: 20px;
	}
	#philosophy .item .txt {
		width: 100%;
	}
	#target li {
		width: 50%;
	}
	.list li {
		margin-bottom: 15px;
	}
	.facility-list .img img {
		margin: 0 auto;
	}
	.border-line {
		font-size: 18px;
		margin-bottom: 25px;
	}
	.faq-item div span {
		padding-left: 0;
	}
	.faq-item div span::before {
		width: 35px;
		height: 35px;
		top: -15px;
	    left: 24%;
	}
	.content {
		padding-top: 40px;
	}
	
	.scroll {
		overflow-x: auto;
	}
	.price {
		min-width: 480px;
	}
	.exo-btn {
		flex-wrap: wrap;
	}
	.exo-btn li {
		width: 48%;
		margin-bottom: 15px;
	}
	.doctor .txt, .doctor .img {
		width: 100%;
	}
	.doctor-name {
		margin-bottom: 20px;
	}
	.info-list dt, .info-list dd {
		width: 100%;
	}

	.nav-prev a, .nav-next a {
		padding: 10px 15px;
	}
	.single-nav {
        padding: 20px 0px;
    }

}