@charset "utf-8";


#header .sitemenu,
#header .header_tel,
.question td label > span,
.treatment_lead_sp,
#main_content_4_inner .procedure01-sp,
#main_content_4_inner .procedure02-sp {
	display: none;
}


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

	#header .global_navi {
		display: block !important;
		height: auto !important;
	}

	.footer_bnr li {
		padding-bottom: 10px;
	}

	.footer_bnr li:nth-of-type(6) {
		margin-left: 0;
	}

}

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

	*,
	*:after,
	*:before {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	img {
		max-width: 100%;
	}

	.anchor,
	body.SP .anchor {
		top: -76px;
	}

	/* wrapper
	========================================================================== */
	#wrapper {
		min-width: 0;
	}

	/* content_bg
	========================================================================== */
	#content_bg,
	body.SP #content_bg {
		display: block;
		background-position: center center;
		z-index: 0;
	}

	/* header
	========================================================================== */
	#header,
	body.SP #header {
		position: unset;
		background-image: none;
	}

	#header_inner {
		width: 100%;
		height: auto;
	}

	#header .sitename {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 50px;
		padding: 8px;
		padding-left: 15px;
		background-image: none;
		background-color: #fff;
		z-index: 99999;
	}

	#header .sitename a {
		width: calc(100% - 50px);
		background-image: url(../images/header_logo.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: contain;
	}

	/* sitemenu */

	#header .sitemenu {
		display: block;
		position: fixed;
		top: 8px;
		right: 11px;
		padding: .25em;
		z-index: 99999;
	}

	#header .sitemenu button {
		background-color: transparent;
		border: none;
		outline: none;
		cursor: pointer;
	}

	#header .sitemenu button,
	#header .sitemenu button span {
		display: inline-block;
		box-sizing: border-box;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-ms-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	#header .sitemenu button {
		position: relative;
		width: 25px;
		height: 22px;
	}

	#header .sitemenu button span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 4px;
		background-color: rgb(68, 85, 101);
		border-radius: 4px;
	}

	#header .sitemenu button span:nth-of-type(1) {
		top: 0;
	}

	#header .sitemenu button span:nth-of-type(2) {
		top: 9px;
	}

	#header .sitemenu button span:nth-of-type(3) {
		bottom: 0;
	}

	#header .sitemenu button.close span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}

	#header .sitemenu button.close span:nth-of-type(2) {
		opacity: 0;
	}

	#header .sitemenu button.close span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
	}

	/* header_sns */

	#header .header_sns {
		position: unset;
		text-align: center;
		padding-top: 90px;
		padding-bottom: 10px;
		background-color: #fff;
	}

	body.body_question #header .header_sns,
	body.blog #header .header_sns {
		padding-top: 80px;
		padding-bottom: 0;
	}

	#header .header_sns ul {
		overflow: hidden;
	}

	body.body_question #header .header_sns ul,
	body.blog #header .header_sns ul {
		display: none;
	}

	#header .header_sns li {
		display: inline-block;
		margin: 0;
		float: unset;
	}

	/* header_tel */

	#header .header_tel {
		display: block;
		padding-bottom: 10px;
		background-color: #fff;
	}

	#header .header_tel a {
		display: block;
		width: 100%;
		height: 34px;
		margin: 0 auto;
		background-image: url(../images/header_tel.png);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}

	#header .header_tel a span {
		display: none;
	}

	/* header_navi */

	#header .header_navi {
		position: fixed;
		left: 0;
		top: 50px;
		z-index: 99999;
	}

	#header .header_navi ol {
		overflow: hidden;
	}

	#header .header_navi li.tel {
		display: none;
		width: 100%;
		height: 30px;
		margin-top: 10px;
		margin-bottom: 10px;
		float: none;
		background-position: center center;
		background-size: contain;
	}

	#header .header_navi li.snav01,
	#header .header_navi li.snav02 {
		width: calc(100% / 2);
		height: auto;
		margin: 0;
		text-indent: 0;
		text-align: center;
		background-image: none;
	}

	#header .header_navi li.snav01 {
		background-color: #f164ab;
	}

	#header .header_navi li.snav02 {
		background-color: #469fb4;
	}

	#header .header_navi li a {
		height: auto;
		font-size: 11px;
		font-weight: bold;
		letter-spacing: 2px;
		text-decoration: none;
		color: #fff;
		line-height: 30px;
	}

	#header .header_navi .ro:hover,
	#header .header_navi.ro.touch {
		opacity: 1 !important;
	}

	/* global_navi */

	#header .global_navi {
		position: fixed;
		top: 80px;
		left: 0;
		display: none;
		width: 100%;
		max-height: calc( 100vh - 80px);
		overflow: auto;
		background-color: rgba(255, 255, 255, .95);
		z-index: 99999;
	}

	#header .global_navi ol {
		overflow: hidden;
	}

	#header .global_navi li {
		float: none;
		width: 100% !important;
		height: auto;
		margin: 0;
		background-image: none !important;
		border-bottom: solid 1px #ddd;
	}

	#header .global_navi li a {
		padding: .75em;
		text-indent: 0;
		text-decoration: none;
		font-size: 1em;
		color: #333;
	}

	#header .global_navi li a::after {
		content: '›';
		position: absolute;
		top: 50%;
		right: 15px;
		margin-top: -11px;
		font-size: 22px;
		line-height: 1;
		color: #333;
	}



	/* footer
	========================================================================== */

	#footer {
		padding: 0;
	}

	#footer_inner {
		width: 100%;
	}

	.footer-info-left,
	.footer-info-right {
		float: none;
		width: 100%;
	}

	.footer-clinic {
		margin: 0;
		margin-bottom: 2em;
		padding: 0 15px;
	}

	.footer-clinic dl {
		width: 100%;
		margin-top: 1em;
		margin-left: 0;
	}

	.footer-clinic dt {
		margin: 0.67em 0;
		padding: 0;
	}

	.footer-clinic dd img {
		max-width: 100px;
	}

	.footer-info {
		margin: 1em 0;
		padding: 15px;
		border-top: solid 1px #ddd;
	}

	.time_table {
		margin: 0 auto;
		font-size: 11px;
	}

	.footer-info-left li.fsnav01,
	.footer-info-left li.fsnav02,
	.footer-info-left li.fsnav03 {
		width: calc(100% / 3);
		margin: 0;
		background-size: contain;
		background-position: center center;
	}

	.bnr_line {
		text-align: center;
	}

	.gmap {
		float: none;
		max-width: 100%;
	}

	.gmap iframe {
		max-width: 100%;
	}

	.footer_bnr {
		margin-bottom: 30px;
	}

	.footer_bnr_title {
		margin: 0 15px;
		margin-bottom: 1em;
		font-size: 1.2em;
		border-bottom: solid 1px #999;
	}

	.footer_bnr_title:after {
		content: 'みやはら耳鼻咽喉科 関連サイト';
		color: #999;
	}

	.footer_bnr_title img {
		display: none;
	}

	.footer_bnr ul {
		margin: 0;
		padding: 0 15px;
	}

	.footer_bnr li {
		width: 48%;
		margin-left: 4%;
		margin-bottom: 10px;
		text-align: center;
	}

	.footer_bnr li:nth-child(odd) {
		margin-left: 0;
	}

	#footer .footer_navi {
		width: 100%;
		padding: 0 15px;
		font-size: .9em;
	}

	#footer .footer_navi ol {
		display: inline;
	}

	#footer .footer_navi ol:last-child li:first-child {
		border-left: 0;
	}

	#footer .copyright {
		padding: 1.5em 0;
		font-size: 10px;
		line-height: normal;
	}






	/* btn_top
	========================================================================== */

	#btn_top {
		bottom: 45px;
		right: 15px;
	}

	#btn_top img {
		width: 40px;
	}





	/* content
	========================================================================== */

	#content {
		min-width: 0;
		background-image: none !important;
	}

	#content h1 {
		font-size: 1.5em;
	}

	#content h2 {
		font-size: 1.25em;
	}

	#content p {
		margin-top: 0;
	}

	/* main-content-1 */

	#main-content-1 {
		background-image: url(../images/content_1_bg_2.jpg);
		background-size: cover;
		height: auto;
	}

	#main-content-1-inner {
		width: 100%;
		margin: 0 auto;
	}

	.main-lead {
		padding: 40px 20px;
	}

	.main-lead img {
		width: 100%;
		height: auto;
	}

	/* main-content-2 */

	#main-content-2-inner {
		background: none;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	#main-content-2-inner .symptom {
		padding: 40px 20px;
	}

	#main-content-2-inner .symptom-title img {
		width: 100%;
		height: auto;
	}

	#main-content-2-inner .symptom p {
		margin-bottom: 0;
	}

	/* main-content-3 */

	#main-content-3-inner {
		width: 100%;
	}

	#main-content-3-inner .what {
		background: none;
		width: 100%;
		padding: 40px 20px;
	}

	#main-content-3-inner .what-title img {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	#main-content-3-inner .what p {
		margin-bottom: 0;
	}

	/* main-content-4 */

	#main-content-4-inner {
		background-image: url(../images/content_4_bg_2.jpg);
		background-position: bottom right;
		background-size: contain;
		width: 100%;
		margin: 0 auto;
	}

	#main-content-4-inner .treatment {
		width: auto;
		margin: 0;
		padding: 40px 20px;
	}

	#main-content-4-inner .treatment-main-title {
		display: block;
		margin: 0 0 20px 0;
		text-align: center;
	}

	#main-content-4-inner .treatment-title {
		margin-bottom: 20px;
	}

	#main-content-4-inner .treatment p {
		margin-bottom: 0;
	}

	/* main-content-5 */

	#main-content-5-inner {
		background: none;
		width: 100%;
		margin: 0 auto;
		padding-bottom: 0;
	}

	#main-content-5-inner .merritt {
		width: auto;
		margin: 0;
		padding: 40px 20px;
	}

	#main-content-5-inner p.merritt-note {
		text-align: left;
	}

	#main-content-5-inner .merritt-banner {
		width: 100%;
		font-size: 3.125vw;
	}

	#main-content-5-inner .merritt-banner span {
		font-size: 4.6875vw;
	}

	/* main-content-6 */

	#main-content-6-inner {
		background: none;
		width: 100%;
		margin: 0 auto;
	}

	#main-content-6-inner .price {
		padding: 40px 20px;
	}

	#main-content-6-inner .price-main-title {
		display: block;
		text-align: center;
		margin: 0 0 20px 0;
	}

	#main-content-6-inner .price-title {
		margin: 0 0 20px 0;
	}

	#main-content-6-inner .price p {
		font-size: 18px;
		line-height: 1.6;
	}

	/* main-content-7 */

	#main-content-7,
	body.SP #main-content-7 {
		height: auto;
		background-image: none !important;
	}

	#main-content-7_inner {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: auto;
		padding: 0 15px;
		background-color: rgba(255, 255, 255, .8);
	}

	#main-content-7_bg_box {
		display: none;
		width: 100%;
	}

	#main-content-7_image_1 {
		position: unset;
		margin-top: -1.8em;
	}

	#main-content-7_image_1 img {
		width: 40%;
	}

	#main-content-7_text_box {
		position: unset;
		width: 100%;
		order: -1;
	}

	#main-content-7_text_box h1 {
		position: unset;
		width: 100%;
		height: auto;
		text-indent: 0;
		color: #f164ab;
		background-image: none;
	}

	/* main-content-8 */

	#main-content-8-inner {
		width: 100%;
		margin: 0 auto;
		padding: 40px 20px;
	}

	.flow-title {
		margin-bottom: 35px;
	}

	.flow-title-main {
		float: none;
		margin: 0;
		padding: 0;
		text-align: center;
	}

	.flow-title-main img {
		display: inline;
	}

	.flow-title-sub {
		float: none;
		margin: 0 0 20px 0;
		padding-top: 20px;
		text-align: center;
		font-size: 18px;
		font-weight: bold;
	}

	.flow-title-desc {
		clear: both;
		padding-top: 25px;
		max-height: 100%;
	}

	.flow-left {
		float: none;
		width: 100%;
	}

	.flow-right {
		float: none;
		width: 100%;
	}

	.flow h2 {
		margin: 0 0 20px;
	}

	.flow-hr {
		background: none;
	}

	.flow-steps {
		margin-left: 0;
	}

	.flow-steps li {
		padding-top: 10px;
	}

	.flow-steps .step-img {
		text-align: center;
	}

	/* main-content-9 */

	#main-content-9 {
		height: auto;
	}

	#main-content-9_inner {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: auto;
		padding: 0 15px;
	}

	#main-content-9_inner h1 {
		position: unset;
		width: 100%;
		height: auto;
		margin: 0.67em 0;
		text-indent: 0;
		color: #f164ab;
		background-image: none;
	}

	#faq_top_box {
		height: auto;
	}

	#faq_top_box .faq_dr {
		display: none;
		position: unset;
		width: 100px;
	}

	#faq_top_box p {
		position: unset;
		width: 100%;
	}

	.faq {
		padding: 0;
	}

	.faq-box {
		display: inline-block;
		margin-bottom: 0;
	}

	.faq-box dl {
		width: 100%;
		margin-bottom: 20px;
		padding: 15px 10px;
	}

	.faq-box dt {
		margin: 0 0 10px 0;
		padding-left: 60px;
	}

	.faq-box dd {
		padding-left: 60px;
	}


	#main-content-tv-inner {
		background: none;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}
	
}