@charset "utf-8";
@media (hover: none), (pointer: coarse) {
  .others-area .swiper a:hover img {
    transform: none !important;
    filter: grayscale(100%) !important;
  }

  .others-area .swiper img {
    transition: none !important;
  }

  .top-doctor ol li a:hover img {
    transform: none !important;
    filter: none !important;
  }
}

@media screen and (max-width:736px) {
	html, body {
		min-width: 0;
		width: 100%;
		height: 100%;
		-webkit-text-size-adjust : 100%;
	}

	img {
		max-width: 100% !important;
		height: auto;
	}

	.is-sp {
		display: inherit;
	}
	
	.is-pc {
		display: none;
	}
	
	a[href^="tel:"] {
		pointer-events: auto;
	}
	
	input[type="submit"] {
	  appearance: none;
	  -webkit-appearance: none;
	}


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

	header

	------------------------------*/
	header h1 {width: 50%;}
	
	#nav-toggle {
	    position: fixed;
	    top: 4%;
	}
	
	header .inner {
		height: 70px;
		border-bottom: none;
	}

	header .hd-contact {display: none;}	
	
	#gloval-nav {
		width: 100%;
		overflow-y: scroll;
		padding-bottom: 10rem;
	}
	
	/*-----------------------------

	top

	------------------------------*/
	.main-content {
	    margin-top: 7rem;
	}
	#main-fv {
		padding: 16rem 0 31.4rem;
		margin-top: 0;
		margin-bottom: 3rem;
	}
	
	.main-ttl {
		width: 90%;
		margin: 0 auto;
	}
	.top-concept {margin-bottom: 5rem;}
	.top-concept .inner {flex-wrap: wrap;}
	.top-concept .concept-info {
		width: 100%;
		max-width: 100%;
	}
	.top-concept .concept-img {
		width: 100%;
		max-width: 100%;
		position: inherit;
	}

	h2.ttl {
		font-size: 2.3rem;
	}
	.concept-info h2.ttl br {display: none;}
	.top-concept p.sub-ttl {
		font-size: 2rem;
		font-weight: bold;
		text-align: center;
	}

	.top-concept p {
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}
	
	.top-concept .concept-img .concept-pdf img {
		width: 100%;
		height: 300px;
		object-fit: cover;
	}
	
	.top-concept .concept-img .concept-pdf {
		width: 23rem;
		position: relative;
		top: 0;
		left: 0;
		z-index: 2;
	}

	.top-concept .concept-img .concept-img01 {
		position: static;
		bottom: -500px;
		right: 0;
		z-index: 1;
		margin-top: -10rem;
		/* padding-right: 20rem; */
		margin-left: 15rem;
		right: 0;
	}

	.wow.fadeInUp {
		visibility: visible !important;
		animation-name: fadeInUp !important;
		opacity: 1 !important;
	}
	
	.cd-fixed-bg {
		background-size: cover;
		background-attachment: scroll;
	}
	.cd-fixed-bg::before {
		content: none;
		/*
		position: absolute;
		background-image: url(../img/page/top/object-sp.jpg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		background-attachment: fixed;
		filter: grayscale(100%);
		transition: filter 1.5s. ease-out;
		*/
	}
	
	.cd-fixed-bg {
		position: relative;
		width: 100%;
		height: 257px;
		overflow: hidden;
		margin-top: 50rem;
	}
	.object-area {margin-top: 8rem;}
	.object-area .inner {
		position: relative;
		z-index: 2;
		box-sizing: border-box;
		max-width: 100%;
		width: 90%;
		margin: -10rem auto 0;
		padding: 2rem 3rem;
	}
	
	.top-doctor {margin-bottom: 4.5rem;}
	.top-doctor .inner {
		width: 100%;
	}

	
	.top-doctor h2.doctor-ttl {
		font-size: 2rem;
		margin-bottom: 2.5rem;
	}
	
	
	.top-doctor ol {
		margin-bottom: 1rem;
		grid-template-columns: repeat(2, 1fr);
	}
	.top-doctor ol li {
		padding: 0 0 4rem;
	}

	/*
	.top-doctor ol li + li {
		padding-top: 4rem;
		border-top: 1px solid #222222;
	}
	*/

	.top-doctor ol li .doctor-inner {flex-wrap: wrap;}
	.top-doctor .doctor-img {
		width: 100%;
		max-width: 100%;
		overflow: hidden;
		margin-bottom: 1rem;
	}
	
	.top-doctor ol li img,
	.articles-inner ul li .articles-thumbnail img,
	.others-area .swiper img {
		filter: none;
	}
	
	.top-doctor .doctor-img img {
		width: 100%;
		height: 140px;
	}
	
	.top-doctor .doctor-info {
		width: 100%;
		max-width: 100%;
		padding-left: 0;
	}
	
	.top-doctor .doctor-info h3 {
		font-size: 2.2rem;
		font-weight: bold;
	}
	.top-doctor .doctor-info h3:first-of-type {letter-spacing: 0.1rem}

	.top-doctor .doctor-info p {}
	.top-doctor .doctor-info p + h3 {margin-top: 1rem;}
	
	.more {
		font-size: 2.2rem;
		text-align: center;
	}

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

	page

	------------------------------*/
	#page-fv {padding: 6.5rem 0;}
	#page-fv h2 {font-size: 2.5rem;}

	#pan {margin-bottom: 3.5rem;}
	#pan ul li,
	#pan ul li a {
		font-size: 1.1rem;
	}
	

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

	contact

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

	.contact-page {}
	.contact-inner {
		max-width: 100%;
	}

	.contact-inner h3 {
		font-size: 1.6rem;
		margin-bottom: 3rem;
	}
	
	.contact-inner .agree label {
		font-size: 1.1rem;
	}
	.contact-inner .agree {padding-bottom: 3rem;}
	
	/*
	.contact-inner .agree input {
		display: inline-block;
		margin: 0 1.6rem 0 0;
		width: 1.8rem;
		height: 1.8rem;
		background: url(../img/common/icon_checkbox.svg) no-repeat center left; 
		background-size: 100%;
	}
	
	.contact-inner .agree input[type="checkbox"] {
		vertical-align: middle;
	}
	*/
	
	
	/*--thanks--*/
	.thanks-area {
		padding: 2rem 0 17.5rem;
		background: url(../img/page/contact/thanks-bg-sp.jpg) no-repeat;
    	background-size: cover;
	}

	.thanks-area h2 {
		padding-top: 14rem;
		font-size: 4.3rem;
		letter-spacing: 0.05em;
	}

	.thanks-area p {
		font-size: 1.4rem;
		line-height: 2;
		letter-spacing: 0.08em;
		margin-bottom: 5rem;
	}

	.thanks-area .back-btn {
		margin-left: 4%;
	}

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

	sitemap

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

	.sitemap-area {
		max-width: 100%;
		margin-bottom: 2.7rem;
	}
	
	.sitemap-area .di-fl {flex-wrap: wrap;}
	.sitemap-area ul + ul {margin-top:2rem;}
	.sitemap-area ul {
		width: 100%;
	}
	.sitemap-area ul:nth-of-type(2n) {
		width: 100%;
	}

	.sitemap-area ul li.top a {font-size: 2rem;}
	.sitemap-area ul li ul.child li a {font-size: 2rem;}
	.sitemap-area ul li ul.child li a::before {
		 content: none !important;
	}

	.privacypolicy {
		text-align: right;
		padding-top: 5rem;
	}

	.privacypolicy a {
		font-size: 2rem;
	}
	
	
	
	/*-----------------------------

	policy

	------------------------------*/
	
	.policy-area h3 {
		font-size: 1.6rem;
		letter-spacing: 0;
	}

	.policy-area p {
		font-size: 1.4rem;
		letter-spacing: 0;
	}

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

	articles

	------------------------------*/
	
	.articles-inner {
		width: 100%;
		max-width: 90%;
		margin: 0 auto 2rem;
	}

	.articles-inner ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 2rem;
		margin-bottom: 7rem;
	}	

	.articles-inner ul li .articles-thumbnail {
		overflow: hidden;
		margin-bottom: 1rem;
	}
	.articles-inner ul li .articles-thumbnail img {
		width: 100%;
		height: 165px;
		object-fit: cover;
		object-position: top;
	}

	.articles-inner ul li h3 {
		font-size: 1.6rem;
		font-weight: bold;
	}

	.articles-inner ul li h3:nth-of-type(2n) {
		margin-top: 1rem;
		font-size: 1.4rem;
	}

	.articles-inner ul li p {
		font-size: 1.2rem;
	}
	
	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink {
		font-size: 1.4rem;
	}
	.wp-pagenavi .previouspostslink {padding-right: 1rem;}
	.wp-pagenavi .nextpostslink {padding-left: 1rem;}
	.wp-pagenavi a, .wp-pagenavi span {
		font-size: 1.4rem;
		position: relative;
		padding: 0;
		transition: color 0.3s 
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
	  margin: 0;
	}
	
	
	
	/*----articles-top----*/
	.articles-pan-sp {margin-bottom: 0 !important;}
	#articles-top {
		align-items: flex-end;
		flex-wrap: wrap;
		margin-bottom: 1.5rem;
	}

	#articles-top .articles-single-main {
		width: 100%;
		max-width: 100%;
		margin-bottom: 1rem;
	}

	#articles-top .articles-single-main img {
		width: 100%;
		height: 340px;
		object-fit: cover;
	}

	#articles-top .articles-single-info {
		width: 100%;
		max-width: 100%;
		padding: 2rem 2rem 0;
	}
	

	#articles-top .articles-single-info h2 {
		font-size: 2.8rem;
		line-height: 1.2;
		margin-bottom: 3rem;
		padding-bottom: 1rem;
		text-align: center;
		border-bottom: 1px solid #222222;
	}

	#articles-top .articles-single-info h3 {
		font-size: 2.5rem;
		text-align: center;
	}

	#articles-top .articles-single-info p {
		font-size: 1.4rem;
		text-align: left;
	}

	#articles-top .articles-single-info p:nth-of-type(2n) {
		font-size: 1.4rem;
		margin-top: 1rem;
		text-align: left;
	}

	.articles-area h3 {
		font-size: 2.3rem;
		letter-spacing: 0.08em;
		font-weight: bold;
	}
	
	.articles-area h3.first-ttl {margin-bottom: 1.5rem;}
	.articles-area p {
		font-size: 1.5rem;
		line-height: 1.8;
	}

	.articles-area .single-area {
		margin: 0;
		display: none;
	}

	.articles-area .single-area {flex-wrap: wrap;}
	.articles-area .single-area .img {
		width: 100%;
		max-width: 100%;
		margin-bottom: 2.5rem;
	}

	.articles-area .single-area .img img {
		width: 100%;
		height: 227px;
		object-fit: cover;
	}

	.articles-area .single-area .txt {
		width: 100%;
		max-width: 100%;
		padding-left: 0;
	}


	
	.cd-bg-1 {
		background:none;
		height: inherit;
		display: none;
	}

	.cd-bg-1::before {
		content: none;
	}
	
	.articles-area p + h3 {margin-top: 2rem;}
	
	.sp-articles {
		position: relative;
		width: 100%;
		height: auto;
		overflow: hidden;
		margin-bottom: 2rem;
		background-image: url("../img/page/top/bg-01_1.jpg");
		background-size: cover;
		background-position: center;
		background-attachment: scroll;
	}
	.bg-pa {
		position: relative;
		width: 100%;
		background-color: rgba(255,255,255,0.9);
	}

	.articles-bg {
		position: relative;
	}

	.articles-bg .articles-inner {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		padding: 0;
		margin-bottom: 0;
	}

	.articles-bg .articles-inner h3 {
		width: 100%;
		max-width: 100%;
		text-align: left;
		margin-bottom: 1rem;
	}

	.articles-bg .articles-inner p {
		width: 100%;
		max-width: 100%;
	}

	.articles-02 .articles-area .single-area .img {
		order: 1;
		margin-bottom: 1rem;
	}
	.articles-02 .articles-area .single-area .txt {
		order: 2;
		padding-left:0;
		padding-right:0;
	}

	.articles-bt-img {margin-bottom: 3rem;}
	.articles-bt-img img {
		height: 285px;
		object-fit: cover;
	}
	.others-area {padding-bottom: 3rem;}
	.others-area h2 {
		font-size: 2rem;
	}
	
	.others-area .swiper h3 {
		font-size: 2rem;
	}

	.others-area .swiper h3:nth-of-type(2n) {
		margin-top: 1rem;
		font-size: 1.6rem;
	}
	.others-area .swiper h3 p {
		font-size: 1.4rem;
	}

	.swiper-button-prev,
	.swiper-button-next {
		width: 20% !important;
		height: 0 !important;
	}
	
	/*-----------------------------

	footer

	------------------------------*/
	footer {
		padding: 4.5rem 0 2rem;
	}

	footer .footer-info {
		margin-bottom: 4rem;
		flex-wrap: wrap;
	}
	
	footer .footer-logo {
		width: 100%;
		order: 2; 
		text-align: center;
		padding-top: 3rem;
	}
	
	footer .footer-left-group {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		gap: 0;
		order: 2;
	}
	
	footer .footer-nav ul {
		width: 100%;
		display: grid;
		grid-template-columns: 1fr;
		grid-column-gap: 0px;
		grid-row-gap: 10px;
		text-align: center;
		justify-content: center;
	}

	footer .footer-nav ul li a {
		font-size: 1.8rem;
		color: #fff !important;
	}
	
	footer .footer-nav ul li{margin-bottom: 1.5rem;}

	footer a:hover {opacity: 0.5;}
	footer .footer-nav {
		width: 100%;
		text-align: center;
	}
	.nav1 { grid-area: 1 / 1 / 2 / 2; }
	.nav2 { grid-area: 2 / 1 / 3 / 2; }
	.nav4 { grid-area: 3 / 1 / 4 / 2; }
	.nav5 { grid-area: 4 / 1 / 5 / 2; } 

	footer .footer-area {
		text-align: center;
		order: 1;
		margin-bottom: 4rem;
	}
	
	footer .footer-area h3 {
		font-size: 2.5rem;
		font-weight: bold;
	}

	footer .footer-area p {
		font-size: 1.5rem;
		margin-bottom: 2rem;
		text-align: left;
	}
	
	footer .footer-area p br {display: none;}
	footer .footer-area .btn a {
		width: 100%;
		font-size: 2.2rem;
	}

	footer .footer-bt ul {
		justify-content: center;
		margin-bottom: 2rem;
	}
	
	footer .footer-bt ul li a {
		font-size: 1.5rem;
	}
	
	footer .footer-bt ul li + li {margin-left: 1rem;}
	.copyright {
		font-size: 0.9rem;
		letter-spacing: 0em;
		text-align: center;
	}

	.back-btn-1 {
		margin: 2rem 0;
	}
	.back-btn-1 .wpcf7-previous {
		margin-left: 0;
		color: #333 !important;
	}
	
	
  .others-area .swiper img,
  .top-doctor ol li a img {
    transition: none !important;
    filter: none !important;
  }

  .top-doctor ol li a:active img,
  .top-doctor ol li a:focus img {
    transform: none !important;
    filter: none !important;
  }
	
	.top-doctor ol li a img,
	.others-area .swiper img {
	  filter: grayscale(0) !important;
	  transition: filter .3s !important;
	}
	
	.top-doctor ol li a:hover img,
	.top-doctor ol li a:active img,
	.top-doctor ol li a:focus img {
	  filter: grayscale(0) !important;
	}
	
	.others-area .swiper a:hover img,
	.others-area .swiper a:active img,
	.others-area .swiper a:focus img {
	  filter: grayscale(0) !important;
	}
	
	.articles-area p, .articles-area p span {
	    font-size: 1.4rem !important;
	}
	
	.contact-inner input[type=submit],
	.contact-inner button[type=submit] {
		width: 80%;
		max-width: 100%;
		margin: 0 auto;
	}

	

}