@charset "UTF-8";



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

	/* common /////////////////////////////////////////////////////////////////////////////////////////// */

	.spNone {
		display: none;
	}

	.pcNone {
		display: block;
	}

	.cmn_maxbox {
		padding-left: 3%;
		padding-right: 3%;
	}

	/* aタグ(電話番号) */
	a[href^="tel"] {
		pointer-events: all;
	}









	/* 共通dlリスト */
	.cmn_dl dt {
		/* padding: 11px 14px; */
		padding: 11px 4%;
	}

	.cmn_dl dd {
		/* padding: 18px 22px; */
		padding: 18px 5%;
	}




	/* header */
	.header_info {
		display: none;
	}

	.header_logo {
		width: auto;
		max-width: 180px;
	}



	/* スマホメニュー */


	#header_spmenu {
		position: fixed;
		top:0;
		right: 0;
		display: block;
		width: 60px;
		height: 60px;
		z-index: 1000;
	}

	#header_spmenu_check {
		display: none;
	}

	#header_spmenu_open {
		display: inline-block;
		width: 100%;
		height: 100%;
		background: url(../img/header_modal_open.svg) no-repeat;
		background-position: center;
		cursor: pointer;
	}

	#header_spmenu_close_bg {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 99;
		display: none;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0);
	}

	#header_spmenu_check:checked ~ #header_spmenu_close_bg {
		display: inline-block;
		background: rgba(0, 0, 0, 0.7);
	}

	#header_spmenu_conts {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 99;
		display: block;
		width: 100%;
		max-height: 100%;
		background: #FFFFFF;
		overflow: auto;
		transform: translate(0,-120%);
		transition: transform .35s;
		text-align: center;
	}

	#header_spmenu_check:checked ~ #header_spmenu_conts {
		transform: translate(0,0);
	}


	#header_spmenu_conts > a {
		display: inline-block;
		padding: 0 3%;
		margin: 30px 0 40px;
		text-align: center;
	}

	#header_spmenu_conts ul {
		margin: 0 0 40px 0;
	}

	#header_spmenu_conts li {
		margin: 0 0 20px 0;
	}

	#header_spmenu_conts li a {
		display: inline-block;
	}

	#header_spmenu_conts li a span {
		display: block;
		margin: 0;
		font-size: 1.6rem;
	}

	#header_spmenu_conts li a small {
		display: block;
		color: #ec6d65;
		font-size: 1.1rem;
		letter-spacing: 0.15rem;
	}


	#header_spmenu_close_btn {
		display: inline-block;
		width: 100%;
		padding: 10px 0;
		background-color: #ec6d65;
		cursor: pointer;
	}

	#header_spmenu_close_btn span {
		display: inline-block;
		padding: 0 0 0 22px;
		background-image: url(../img/header_spmenu_close.svg);
		background-repeat: no-repeat;
		background-position: left top 5px;
		background-size: 14px;
		color: #FFFFFF;
	}




	/* footer */

	.footer_gotop {
		right: 20px;
		bottom: 0px;
	}

	.footer_gotop a {
		width: 50px;
		height: 50px;
		padding: 10px 0;
	}


	.cmn_footer_navi ul {
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	.cmn_footer_navi ul li {
		width: 50%;
		border: none;
	}

	.cmn_footer_navi ul li:last-of-type {
		border-right:none;
	}
	
	.cmn_footer_navi ul li a {
		display: inline-block;
		padding: 10px 0;
	}
	
	.cmn_footer_info {
		width: 94%;
	}


	.sub_page_title_box {
		margin-bottom: 70px;
	}

	.sub_page_title_box::before {
		height: 120px;
	}

	.sub_page_title {
		height: 200px;
	}

	.sub_page_title h1 {
		line-height: 100%;
	}
	
	.sub_page_title h1 span {
		font-size: 5rem;
	}

	.sub_page_title h1 small {
		font-size: 2rem;
	}


	/* home /////////////////////////////////////////////////////////////////////////////////////////// */

	.home_logo img {
		width: 80px;
		padding-top: 30px;
	}

	.sub_header_logo {
		width: auto;
		max-width: 180px;
	}

	.home_main_copy {
		justify-content: flex-end;
	}

	.home_main_copy_main {
		width: 100%;
		margin-bottom: 30px;
	}

	.home_main_copy_sentence {
		max-width: 90%;
		width: 480px;
	}

	.home_main_copy_sentence h2 {
		font-size:2.2rem; 
	}

	.home_main_copy_sentence p {
		font-size: 1.5rem;
	}

	.home_topics > div {
		justify-content: space-around;
	}

	.home_topics section {
		margin-bottom: 30px;
		height: auto;
		max-height: 480px;
	}

	.home_news ul {
		height: auto;
		max-height: 440px;
	}



	.home_trial_price_wrapper {
		flex-wrap: wrap;
	}

	.home_trial_price_wrapper dl {
		min-width: 486px;
	}


	.home_menu_list figure {
		height: 220px;
	}

	.home_menu_list dl dt {
		font-size: 2.3vw;
		line-height: 120%;
	}

	.home_menu_list dl dd strong {
		font-size: 1.3vw;
	}


	.home_seminar {
		max-width: 94%;
	}




	/* menu 施術メニュー /////////////////////////////////////////////////////////////////////////////////////////// */


	.menu_constipation {
		flex-wrap: wrap;
		justify-content: space-around;
	}

	.menu_constipation li {
		margin-bottom: 30px;
	}

	.menu_constipation::after {
		display: block;
		content:"";
		width: 300px;
	}


	.menu_cource {
		flex-wrap: wrap;
		justify-content: center;
	}

	.menu_cource > div {
		width:100%;
		margin-bottom: 20px;
	}


	/* info ルミナスについて /////////////////////////////////////////////////////////////////////////////////////////// */



	/* profile プロフィール /////////////////////////////////////////////////////////////////////////////////////////// */



	/* faq よくある質問 /////////////////////////////////////////////////////////////////////////////////////////// */




	.faq_list dt {
		font-size: 2rem;
		padding-left:2em;
		text-indent:-2em;
		line-height: 130%;
	}

	.faq_list dd {
		margin-bottom: 40px;
		padding-left: 3em;
	}

	.faq_list dt::before {
		padding: 2px 10px 2px 10px;
		padding-left:0;
		text-indent:0.5em;
	}











	/* contact /////////////////////////////////////////////////////////////////////////////////////////// */

	.contact_form > p {
		margin: 0 0 30px 0;
	}

	.contact_form > small {
		margin: 0 0 16px 0;
	}


	.contact_form_dl > div {
		display: block;
	}

	.contact_form_dl {
		margin: 0 0 60px 0;
	}


	.contact_form_dl dt {
		display: block;
		width: 100%;
		padding: 11px 24px;
		border-bottom: 0;
	}

	.contact_form_dl dd {
		padding: 18px 24px;
		border-bottom: 0;
	}


	.contact_form_dl #fax,
	.contact_form_dl #tel,
	.contact_form_dl #toiawase {
		width: 100%;
	}

	.contact_form_dl #mail1 {
		width: calc(100% - 80px);
	}

	/* mfp */
	#contactButton button[type="reset"],
	#contactButton button[type="submit"] {
		font-size: 1.6rem;
	}






}






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


	/* common /////////////////////////////////////////////////////////////////////////////////////////// */

	.cmn_conts_sec {
		padding: 40px 0;
	}


	.h2_type01 strong, .h2_type02 strong, .h2_type03 strong{
		font-size: 2.6rem;
	}

	.h2_type01 small, .h2_type02 small {
		font-size: 1.4rem;
	}







	#header_spmenu_conts > a {
		display: inline-block;
		padding: 0 3%;
		margin: 20px 0 20px;
		text-align: center;
		width: 200px;
	}


	#header_spmenu_conts li {
		margin: 0 0 18px 0;
	}

	#header_spmenu_conts li a span {
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 120%;
	}
	
	#header_spmenu_conts li a small {
		display: block;
		color: #999999;
		font-size: 1rem;
		letter-spacing: 0.15rem;
	}


	/* ボタン */

	.cmn_btn {
		
	}

	.cmn_btn a {
		min-width: 200px;
		padding: 16px 25px 16px 20px;
		
		text-align: center;
		font-size: 1.3rem;
		font-weight: normal;
	}






	.cmn_info_flexbox {
		flex-wrap: wrap;
	}

	.cmn_info_flexbox_title {
		width: 100%;
	}

	.cmn_info_flexbox_conts {
		width: 100%;
		text-align: center;
		padding: 30px 20px 0 20px;
	}

	.cmn_info_flexbox_conts p strong {
		font-size:3rem;
	}
	
	/* header */





	/* footer */

	.cmn_footer_navi ul {
		justify-content: flex-start;
		flex-wrap: wrap;
		padding: 10px 0;
	}

	.cmn_footer_navi ul li {
		text-align: center;
		margin: auto;
	}

	.cmn_footer_info > div {
		width: 100%;
		margin-bottom: 30px;
	}





	/* 定義リスト */
	
	.cmn_dl > div {
		flex-wrap: wrap;
	}

	.cmn_dl dt {
		width: 100%;
		padding: 10px 10px 5px 10px;
		font-size: 1.5rem;
		text-align: left;
	}

	.cmn_dl dd {
		width: 100%;
		padding: 0px 10px 10px 25px;
	}

	.cmn_btn_between {
		justify-content: space-around;
	}



	/* 色つき、角丸定義リスト */

	.cmn_dl_desc {
		margin: 20px auto 10px auto;
	}
	
	.cmn_dl_desc dt {
		width: 100px;
		padding: 30px 20px;
	}

	.cmn_dl_desc dt strong {
		font-size: 3rem;
	}

	.cmn_dl_desc dt small {
		font-size: 1.6rem;
	}

	.cmn_dl_desc dd {
		width: calc(100% - 100px);
	}
	
	.cmn_dl_desc dd strong {
		font-size: 2rem;
		height: 64px;
	}








	/* home /////////////////////////////////////////////////////////////////////////////////////////// */



	.home_trial p {
		text-align: left;
	}

	.home_trial_price_wrapper dl {
		min-width: auto;
		width: 100%;
	}

	.home_trial_price li:nth-of-type(1) {
		width: 40px;
		height: 40px;
		padding-top: 18px;
		color: #B71C25;
		font-size: 1.2rem;
	}

	.home_trial_price li:nth-of-type(3) span {
		font-size: 3rem;
	}



	.home_menu_wrapper {
		flex-wrap: wrap;
	}

	.home_menu_list {
		display: flex;
		width: 100%;
	}



	.home_menu_list figure {
		height: 200px;
	}

	.home_menu_list figure img {
		height: auto;
		max-width: auto;
	}

	.home_menu_list dl dt {
		font-size: 4vw;
		line-height: 120%;
	}

	.home_menu_list dl dd strong {
		font-size: 2.3vw;
	}

	.home_menu_list dl {
		min-height: 230px;
	}

	.home_seminar {
		align-items: center;
	}


	.home_seminar::after {
		width: 100px;
		height: 100px;
		right: 20px;
		top: -20px;
	}




	/* menu 施術メニュー /////////////////////////////////////////////////////////////////////////////////////////// */



	/* info ルミナスについて /////////////////////////////////////////////////////////////////////////////////////////// */



	/* profile プロフィール /////////////////////////////////////////////////////////////////////////////////////////// */

	.profile_wrapper {
		flex-direction: column-reverse;
		justify-content: center;
	}
	
	.profile_wrapper .profile_detail {
		width: 100%;
	}
	
	.profile_wrapper figure {
		max-width: 350px;
		margin: auto;
	}
	
	.profile_soudan dt strong {
		font-size: 2.4rem;
	}
	
	.profile_soudan dt small  {
		font-size: 1.3rem;
	}
	
	.profile_soudan dt img {
		width: 24px;
	}
	
	.profile_soudan dd {
		padding: 3%;
	}
	


	/* faq よくある質問 /////////////////////////////////////////////////////////////////////////////////////////// */


	.faq_list dt {
		font-size: 1.8rem;
	}

	.faq_list dd {
		padding-left: 28px;
	}













	/* contact /////////////////////////////////////////////////////////////////////////////////////////// */

	.contact_info section {
		padding: 26px 28px 16px;
	}

	.contact_info h3 {
		font-size: 2.6rem;
	}

	.contact_info dl {
		display: block;
	}

	.contact_info .tel,
	.contact_info .fax {
		justify-content: center;
		width: 100%;
		margin: 0 0 10px 0;
	}

	.contact_info dd {
		width: 230px;
	}

	.contact_info dd span,
	.contact_info dd a {
		font-size: 2.2rem;
	}

	.contact_info dd a {
		pointer-events: all;
	}

	.contact_info address {
		font-size: 1.4rem;
	}





}









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




	/* common /////////////////////////////////////////////////////////////////////////////////////////// */

	.cmn_conts_sec {
		padding: 40px 0;
	}


	.h2_type01 strong, .h2_type02 strong {
		font-size: 2.4rem;
	}

	.h2_type01 small, .h2_type02 small {
		font-size: 1.2rem;
	}



	.cmn_dl_desc dd strong {
		font-size: 1.8rem;
		height: 64px;
	}



	/* header */





	/* footer */




	.sub_page_title_box::before {
		height: 120px;
	}

	.sub_page_title {
		height: 200px;
	}

	.sub_page_title h1 {
		line-height: 80%;
		bottom: -30px;
	}
	
	.sub_page_title h1 span {
		font-size: 4rem;
	}

	.sub_page_title h1 small {
		font-size: 1.6rem;
	}



	/* home /////////////////////////////////////////////////////////////////////////////////////////// */


	.home_trial_price li:nth-of-type(3) span {
		font-size: 2rem;
	}

	.home_menu_list {
		flex-wrap: wrap;
	}

	.home_menu_list > li {
		width: 100%;
	}

	.home_menu_list dl dt {
		font-size: 5vw;
	}

	.home_menu_list dl dd strong {
		font-size: 4vw;
	}

	.home_seminar {
		flex-wrap: wrap;
	}

	.home_seminar > figure {
		width: 80%;
	}

	.home_seminar > div {
		width: 100%;
	}


	.home_seminar::after {
		width: 100px;
		height: 100px;
		right: 20px;
		top: -20px;
	}

	.home_seminar > div h3 {
		font-size: 3.2rem;
	}

	.home_seminar > div h3 small {
		font-size: 1.4rem;
	}








	/* menu 施術メニュー /////////////////////////////////////////////////////////////////////////////////////////// */

	
	.menu_list_title strong {
		height: auto;
		font-size: 2rem;
	}


	/* info ルミナスについて /////////////////////////////////////////////////////////////////////////////////////////// */



	/* profile プロフィール /////////////////////////////////////////////////////////////////////////////////////////// */



	/* faq よくある質問 /////////////////////////////////////////////////////////////////////////////////////////// */







	/* contact /////////////////////////////////////////////////////////////////////////////////////////// */






}