
.sp{
	display:none;
}

#sp_menu{
  display: none;
}
label {
    position: relative;
}
.tel_list {
    display: flex;
    justify-content: center;
}
ul#menu2, ul#menu3 {
    position: absolute;
    top: 62px;
    background: #fff;
    opacity: 1;
    z-index: 1000;
    right: 0px;
    width: 100%;
    padding: 20px 0;
}
ul#menu2 li {
    text-align: center;
    margin-right: 10px;
}
ul#menu2 li img {
    max-width: 200px;
}

ul#menu2 li:first-child {
    margin-left: 10px;
}
ul#menu3 li {
    text-align: center;
    margin-right: 10px;
}
.line_list li:first-child {
    margin-left: 10px;
}
.line_list {
    display: flex;
    justify-content: center;
}
ul#menu3 li a {
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.05rem;
    border-radius: 5px;
    display: block;
    font-size: 15px;
}
ul#menu5 li a {
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.05rem;
    border-radius: 5px;
    padding: 12px 0;
    display: block;
    margin: 0 13px;
    font-size: 15px;
}
#toggle3:checked + #menu3 {
    display: block;
}

.sp_linebtn {
    background-color: #00B900;
    border-radius: 7px;
    height: 45px;
    font-size: 11px;
    color: #fff;
    align-items: center;
    display: flex;
    text-align: center;
    padding-left: 4px;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: 0.03rem;
}

#toggle4 {
  display: none;
  cursor: pointer;
  }
#menu4 {
  display: none;
  }
#toggle4:checked + #menu4 {
  display: block;
  }


	ul#menu4, ul#menu5 {
    position: absolute;
    bottom: 80px;
    width: 100%;
    right: 0px;
}
ul#menu4 {
    bottom: 93%;
    right: 0%;
    background: #fff;
    padding-top: 16px;
}

ul#menu4>p {
    font-size: 16px;
    text-align: center;
    margin-bottom: 16px;
    font-weight: bold;
}
ul#menu4 li a {
    margin: 0px 8px;
}

	ul#menu4>li, ul#menu5>li {
    background: #fff!important;
}
ul#menu4 li:first-child {
    padding-top: 21px;
}
ul#menu4 li {
    text-align: center;
    padding-bottom: 24px;
    display: flex;
    justify-content: center;
}
ul#menu4 li a img {
    max-width: 200px;
}

.sp_tel_btn ul li {
    text-align: center;
    padding-bottom: 8px;
    padding-top: 8px;
    display: flex;
    justify-content: center;
}
.sp_tel_btn ul li a img {
    max-width: 320px;
}
.sp_tel_btn ul li a:first-child {
    margin-right: 16px;
}

	#toggle5 {
	  display: none;
	  cursor: pointer;
	  }
	#menu5 {
	  display: none;
	  }
	#toggle5:checked + #menu5 {
	  display: block;
	  }


.contact_box {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 100000;
}
.contact_box ul {
    display: flex;
    justify-content: space-between;
}
.contact_box ul li {
    width: 100%;
    text-align: center;
    padding: 9.83px 0;
}
.box_area p {
    color: #fff;
    font-size: 13px;
    margin-top: 8px;
}
.contact_box ul li:nth-child(1), .contact_box ul li:nth-child(2), .contact_box ul li:nth-child(3) {
    background: #004190;
}
.contact_box ul li:nth-child(4) {
    background: #e60000;
}
.contact_box ul li:nth-child(5) {
    background: #00b900;
}
.contact_box ul li:nth-child(1) img {
    max-width: 40px;
}
.contact_box ul li:nth-child(2) img {
    max-width: 27px;
}
.contact_box ul li:nth-child(3) img {
    max-width: 40px;
    margin-left: 7px;
}
.contact_box ul li:nth-child(4) .box_area>img {
    max-width: 35px;
}
.contact_box ul li:nth-child(5) .box_area>img {
    max-width: 38px;
}

/* header */
#sp_menu {
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 100px auto 0;
    padding: 30px 0 0;
    line-height: 1;
    z-index: 999;
}
#sp_menu a,
#sp_menu {
    color: #fff;
    text-decoration: none;
}
#sp_menu .inner {
    position: relative;
}
#sp_menu .logo {
    float: left;
    font-size: 36px;
}
#sp_menu>ul {
    list-style: none;
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 14px;
}
#global-nav ul li {
    float: left;
}
#global-nav ul li a {
    padding: 0 30px;
}


#sp_menu.fixed .logo {
    font-size: 24px;
    color: #333;
}
#sp_menu.fixed #global-nav ul li a {
    color: #333;
    padding: 0 20px;
}

#nav-toggle {
    display: none;
    width: 25.01px;
    height: 21.01px;
    cursor: pointer;
    z-index: 101;
    padding: 12px 10px;
    border-radius: 8px;
    background: #004190;
}

#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 10px;
}
#nav-toggle span:nth-child(3) {
    top: 20px;
}

.sp_nav_icon {
    display: flex;
    margin-top: 15px;
    margin-right: 10px;
}

.tel_icon_sp {
    width: 130px;
    height: 45px;
    margin-right: 3px;
}

.tel_icon_sp {
    width: 130px;
    height: 45px;
	  margin-right: 3px;
}

.mail_icon_sp {
    top: 15px;
    width: 45px;
    height: 45px;
    margin-right: 3px;
}

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



}

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

	.pc{
		display:none;

	}

	.sp{
		display:block;

	}

	#sp_menu,
		#sp_menu.inner {
				width: 100%;
				padding: 0;
				display:block;
		}

		#sp_menu {
				top: 0;
				left: 0;
				position: fixed;
				margin-top: 0;
		}


		/* Fixed reset */
		#sp_menu.fixed {
				padding-top: 0;
				background: transparent;
		}
		#mobile-head {
		    background: #fff;
		    width: 100%;
		    height: 72px;
		    z-index: 999;
		    border-bottom: 4px solid #004190;
				display: flex;
        justify-content: space-between;
		}
		#sp_menu.fixed .logo,
		#sp_menu .logo {
				position: absolute;
				left: 13px;
				top: 13px;
				color: #333;
				font-size: 26px;
		}
		#global-nav {
		    position: absolute;
		    top: -585px;
		    background: #fff;
		    width: 100%;
		    text-align: left;
		    padding: 0;
		    -webkit-transition: .5s ease-in-out;
		    -moz-transition: .5s ease-in-out;
		    transition: .5s ease-in-out;
		}
		#global-nav ul.sp_menu_list {
		    list-style: none;
		    position: static;
		    right: 0;
		    bottom: 0;
		    font-size: 14px;
		    display: flex;
		    flex-wrap: wrap;
		}
	#global-nav ul li.sp_menu_child {
	    float: none;
	    position: static;
	    border-right: 1px solid #d1d0d0;
	    border-bottom: 1px solid #d1d0d0;
	    width: 49.7961%;
	}
	#global-nav ul li:nth-child(2n) {
	    border-right: none;
	}
	#sp_menu #global-nav ul li a, #sp_menu.fixed #global-nav ul li a {
	    width: 100%;
	    display: block;
	    color: #333;
	    padding: 25px 0 15px 30px;
	    letter-spacing: 0.08em;
	}
	#sp_menu #global-nav ul li a h2 {
	    font-size: 18px;
	    padding-bottom: 0.5rem;
	    color: #000b00;
	    font-weight: 500;
	}
	#sp_menu #global-nav ul li a p {
	    font-size: 1.1rem;
	    color: #85b500;
	}
		#nav-toggle {
				display: block;
		}
		/* #nav-toggle 切り替えアニメーション */
		.open #nav-toggle {
	    background-color: #004190;
	}
		.open #nav-toggle span:nth-child(1) {
				top: 11px;
				-webkit-transform: rotate(315deg);
				-moz-transform: rotate(315deg);
				transform: rotate(315deg);
				background: #fff;
		}
		.open #nav-toggle span:nth-child(2) {
				width: 0;
				left: 50%;
		}
		.open #nav-toggle span:nth-child(3) {
				top: 11px;
				-webkit-transform: rotate(-315deg);
				-moz-transform: rotate(-315deg);
				transform: rotate(-315deg);
				background: #fff;
		}
		/* #global-nav スライドアニメーション */
		.open #global-nav {
		    -moz-transform: translateY(660px);
		    -webkit-transform: translateY(660px);
		    transform: translateY(660px);
		}

		.logo_top_sp img {
		    max-width: 180px;
		    margin: .8rem 2rem 0rem 2rem;
		}


		h2.sp_mail {
		    text-align: center;
		    padding-right: 24px;
		}
		#sp_menu #global-nav ul li a h2 span {
    display: block;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    padding-bottom: 6px;
}
		.m_slider {
		    display: block;
		    margin-top: 75px;
		}

.w_1000{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}

.c_simokita .btn_area, .c_komagome .btn_area {
    border: none;
}

.contact_group {
    margin-top: 8px;
}

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
	 }

	 .movie-wrap iframe {
	      position: absolute;
	      top: 0;
	      left: 0;
	      width: 100%;
	      height: 100%;
	 }

.onayami h2>span, .onayami h2>span, .fee_banner_space h2, section.access h2 {
	font-size: 40px;
}

h2.celeb_ttl, h2.movie_ttl, .contact_line_txt h2, .onayami h2, .sym_menu_space h2 {
  font-size: 35px;
}

.onayami ul li, .onayami ul li.wide {
    width: 90%;
}

.sym_menu_space li:nth-child(2n) {
    margin-right: 0px;
}
.sym_menu_space li:nth-child(3n) {
    margin-right: 20px;
}

.voice_space {
    width: 95%;
}

.voice_space h3 {
    font-size: 22px;
}

dl.voice_qa {
    width: 100%;
    max-width: 460px;
}

dl.voice_qa dt {
    font-size: 17px;
		line-height: 1.6em;
}

.voice_bg {
background-size: cover;
background-position: center;
}

.reco_txt_area {
width: 95%;
margin: 0 auto;
}
.achieve_list {
flex-wrap: wrap;
}

.profile_child_02 {
    padding-left: 20px;
}

.promise_list ul li:nth-child(2n) {
    margin-right: 0px;
}

.promise_list ul li:nth-child(3n) {
    margin-right: 20px;
}

.info_ttl h2 {
    font-size: 35px;
	}

.info_ttl p {
    font-size: 40px;
	}

.info_ttl p::before {
    content: '';
    width: 37px;
    height: 47px;
    bottom: -6px;
    left: -50px;
    display: block;
}
.info_ttl p::after {
    content: '';
    position: absolute;
    width: 37px;
    height: 47px;
    bottom: -6px;
    right: -50px;
}

img.info_link_btn {
    max-width: 485px;
}

.root_info ul li:nth-child(3n)::before {
    background: url(../img/root_arrow.png);
    background-size: cover;
    background-position: center;
}

.root_info ul li:nth-child(3n) {
    margin-right: 65px;
}

.footer_group {
    flex-wrap: wrap;
    width: 90%;
    margin: 80px auto 40px auto;
}

.footer_logo {
    margin-bottom: 40px;
}

.footer_contact_link {
    margin-bottom: 40px;
}

.footer_nav_ttl {
    width: 88%;
    margin: 40px auto 15px auto;
}

ul.footer_menu_list {
    width: 93%;
    margin: 40px auto 15px auto;
}

#global-nav ul.sp_menu_list li.sns_sp_nav {
    height: 60px;
    width: 100%;
}

li.sns_sp_nav ul {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    width: 100%;
    align-items: center;
}

li.sns_sp_nav ul li {
    max-width: 35px;
    margin-right: 15px;
}

}


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


	section.top_contact>p {
    margin: 24px 0 0px;
}
p.pay1 {
    margin-right: 24px;
}
.card {
    padding: 24px 40px;
}
	.contact_btn_group {
    flex-wrap: wrap;
}
.please_area .inner>p span {
    font-size: 30px;
}
.please_area .inner>p.note2 {
    font-size: 18px!important;
}
.please_area .inner ul {
    flex-wrap: wrap;
}
.please_area .inner {
    width: 94%;
    padding: 10px;
}
.flow_group {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.flow_group .flow_child01 {
    margin-right: 0;
    margin-bottom: 21px;
		margin-right: 0;
    width: 90%;
}
.sample_img img:first-child {
    margin-right: 0!important;
    margin-bottom: 21px;
}
.sample_img {
    flex-wrap: wrap;
    justify-content: center;
}
.note_area {
    font-size: 16px!important;
}
.form_btn_group {
    flex-wrap: wrap;
}
.sample_img img {
    width: 90%;
}
ul.anchor {
    flex-wrap: wrap;
}
ul.anchor li:first-child {
    margin-right: 0!important;
    margin-bottom: 13px;
    margin-top: 21px;
}
.c_mail_btn {
    margin-right: 0!important;
    margin-bottom: 21px;
}
	.c_simokita h2::after, .c_komagome h2::after {
	    content: '';
	    position: absolute;
	    height: 70px;
	    z-index: -1;
	    max-width: 300px;
	    width: 100%;
	    top: 50%;
	    left: 50%;
	    transform: translate(-50%, -50%);
	    -webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	}
	h2.info_shopname {
	    font-size: 21px;
	}
 .footer_group .inner {
	    padding: 21px;
	    flex-wrap: wrap;
	}

	.test_tel img.info_tel_btn {
	    bottom: 30%;
	}
	.i_komagome img.info_tel_btn {
    max-width: 555px;
    bottom: 31%;
}

.w_1000 {
  width: 95%;
  max-width: 1000px;
  margin: 0 auto;
}

.pc_768 {
	display: none;
}

.sp_768 {
	display: block!important;
}

.blue_bg {
    background-color: #004190;
    padding: 50px 0;
}

#page_top {
    right: .5rem;
    bottom: 5.5rem;
}

.info_ttl>span {
  font-size: 14px;
  margin: 24px 0 32px 0;
  padding: 20px 0;
}


/* ----
スライダーの左右矢印を消す
----- */
	.swiper-button-prev, .swiper-button-next {
	    display: none;
	}

/* ----
スライダー2枚目の赤いラインの高さ変更
----- */
.m_slider .m_slide_02::after {
  height: 55px;
}

/* ----
テレビ出演
----- */
.tv_ttl {
    margin: 50px auto 30px auto;
		max-width: 400px;
}

.tv_txt {
    font-size: 18px;
    margin: 30px auto 50px auto;
    line-height: 1.5em;
    letter-spacing: 0.02em;
}

.tv_slider img {
    max-width: 500px;
}

.tv_slider {
    max-width: 500px;
    height: 270px;
    padding-top: 8px;
}

.tv_space {
    width: 515px;
    height: 345px;
}

/* ----
SNSへの導線&ブログ・ニュース
----- */

.titleWrap {
    padding: 30px 0 15px 0;
}

p.ttl_space {
    width: 100%;
    margin-top: 20px;
}

.sns_space {
    margin-top: 50px;
}

h3.twitter_ttl {
    margin-top: 50px;
}

/* ----
コンテンツ間の幅調整
----- */
h3.info_ttl {
    margin: 50px 0 0 0;
}

section.contact_line, section.onayami {
    margin-top: 50px;
}

.onayami ul {
    margin-top: 0px;
}

section.sym_menu {
    padding-bottom: 50px;
    margin: 50px auto;
}

.voice_line_btn {
    margin: 30px auto 50px auto;
}

.fee_banner_space h2 {
    margin: 50px auto 30px auto;
}

section.profile {
    padding: 50px 0;
    margin: 50px 0;
}

.reason_inner {
    margin-bottom: 50px;
}

.promise_ttl {
    padding-top: 50px;
}

section.promise {
    padding-bottom: 50px;
}

section.info {
    padding: 50px 0;
}

section.access {
    margin: 50px auto;
}

.info_ttl p {
    margin-top: 30px;
    width: 85%;
}

.access_info {
    flex-wrap: wrap;
}

table.inner_01, .shop_time table {
    max-width: 580px;
    margin-top: 10px;
}

.access_line_btn {
    padding: 30px 0;
    margin: 0 auto;
}
.c_simokita h2, .c_komagome h2 {
    font-size: 21px;
    text-align: center;
    font-weight: bold;
    color: #fff;
    position: relative;
    padding-bottom: 13px;
    letter-spacing: 0.05rem;
}

/* ----
文字の大きさ調整
----- */
h2.celeb_ttl, h2.movie_ttl, .contact_line_txt h2, .onayami h2, .sym_menu_space h2, .info_ttl h2, section.access h2, p.tag, .reason_ttl h2, .promise_ttl h2 {
    font-size: 25px;
}

.onayami h2>span, .sym_menu_space h2 span {
font-size: 35px;
}

.fee_banner_space h2,.info_ttl p {
	font-size: 30px;
}

.contact_line_btn a, .profile_link_btn a, .reason_line_btn a, .promise_line_btn a, .txt span, .txt, .sym_menu_space li>a p, .promise_ttl h2>span.small, .voice_line_btn a, .access_line_btn a {
    font-size: 20px;
}

.contact_line_txt p, .root p {
    font-size: 18px;
}

.reco_txt_area h3, p.reco_name>span {
    line-height: 1.2em;
}

.profile_child_02 .txt_group h3 {
    font-size: 35px;
}

.profile_child_02 .txt_group h3>span {
    font-size: 31px;
}

.profile_link_btn {
    max-width: 439px;
}

.promise_ttl h2>span.big {
    font-size: 40px;
}


/* ----
症状別メニュー
----- */
.sym_menu_space ul {
    justify-content: center;
}

.sym_menu_space li {
    margin-right: 0px;
}

.sym_menu_space li:nth-child(3n) {
    margin-right: 0px;
}

.voice_space h3 {
    font-size: 18px;
    line-height: 1.5em;
}

img.qa_img {
    margin-bottom: 30px;
}

.voice_space p {
    width: 85%;
}

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

/* ----
推薦状
----- */
.reco_ttl {
    width: 95%;
}
.reco_ttl img {
    max-width: 368px;
    padding-right: 0px;
}
.reco_group {
    flex-wrap: wrap;
}
.reco_txt_area h3, p.reco_name>span {
    font-size: 15px;
}
p.reco_name {
    font-size: 20px;
}
p.reco_txt {
    font-size: 15px;
}

.reco_img {
    max-width: 315px;
    margin: 0 auto;
}

/* ----
プロフィール
----- */
.porofile_group {
    justify-content: center;
    flex-wrap: wrap;
}

.profile_child_01 {
    margin-bottom: 25px;
}

.profile_point {
    padding: 0 20px 20px 20px;
}

.profile_point li {
    font-size: 18px;
    line-height: 1.8em;
    margin-top: 20px;
}

.profile_point li {
    margin-top: 20px;
}


.reason_ttl img {
    max-width: 250px;
	  margin-bottom: 10px;
}

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

.reason_line_btn {
    margin-top: 30px;
}

.promise_list ul li {
    margin-right: 0px;
}

.promise_list ul li:nth-child(3n) {
    margin-right: 0px;
}

.promise_line_btn {
    max-width: 360px;
    margin-top: 30px;
}

.info_ttl p::before {
    content: '';
    width: 27px;
    height: 35px;
    bottom: -6px;
    left: -33px;
    display: block;
}

.info_ttl p::after {
    content: '';
    position: absolute;
    width: 27px;
    height: 35px;
    bottom: -6px;
    right: -33px;
}

table.inner_01 tr th {
    font-size: 16px;
}

thead.weekly tr th, tbody.weekly_time tr td {
    font-size: 18px;
}

.root_info ul {
    max-width: 600px;
    width: 100%;
    margin: 0 auto;
}

.root_info ul li::before{
	display: none;
}

.root_info ul li {
    margin-right: 0px;
}

.root_info ul li:nth-child(3n) {
    margin-right: 20px;
}


.root_info ul li:nth-child(2n-1) {
    margin-right: 20px;
}

.root_info ul li:last-child {
    margin-right: 0;
}


/* ----
ブログ
----- */

.blog_single_area {
    width: 95%;
    margin: 0 auto;
}

.ttl_list_h2, h2#danraku2 {
    font-size: 18px;
}

h2#danraku2>span, h3#danraku3>span {
    line-height: 1.5em;
}

/* ----
追従ナビ
----- */

.sp_tel_btn {
    padding: .2rem 0.2rem 0 0;
    width: 95%;
    margin: 0 auto;
}

.sp_line_btn {
    width: 44%;
    max-width: 187px;
}

.tel_box {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 1000;
    width: 100%;
    background: rgba(255,255,255,0.7);
    padding: 0 0 .2rem 0;
}

.sp_tel_btn a img {
    max-width: 430px;
    opacity: 1;
}

.sp_tel_btn a:hover{
	opacity:1;
}
.sp_line_btn a:hover{
	opacity:1;
}

.copyright {
    margin: 20px 0 110px 0;
}


/* -----
画面下部ボタン追従
----- */

.tel_box02 {
    bottom: 0;
    left: 0;
    width: 100%;
    position: fixed;
    background: rgba(255,255,255,0.7);
    opacity: 0;
    transition: all .5s;
    padding: 0 0 .2rem 0;
}

.tel_box02.is-fixed {
    position: fixed;
    bottom: 0;
    opacity: 1;
    transition: all .5s;
    z-index: 1000;
}


}


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

	.root_info ul {
	    justify-content: center;
	}

	section.access div.root_info ul li {
    margin-right: 0;
}

.btn_area {
    padding: 13px 8px;
}

.contact_group {
    margin-bottom: 19px;
}

}


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

	/* ----
	メインビジュアル切り替え
	----- */
	.more_480 {
		display: none;
	}

	.min_480 {
		display: block;
	}

/* ----
ハンバーガーメニュー
----- */
#sp_menu #global-nav ul li a h2 {
  font-size: 16px;
}

/* ----
TV紹介
----- */
.tv_space {
    width: 322px;
    height: 216px;
}
.tv_slider {
    max-width: 310px;
    height: 160px;
    padding-top: 7px;
}
.tv_slider img {
    max-width: 310px;
}

em.logo_top_sp {
    margin-right: 13px;
}

.logo_top_sp img {
    max-width: 120px;
    margin: 20px 0rem 0rem 10px;
}

section.top_contact>p {
    font-size: 18px;
}

h2.celeb_ttl {
    line-height: 1.5em;
    letter-spacing: 0.08em;
    padding-bottom: 30px;
}

h2.movie_ttl {
    line-height: 1.5em;
    letter-spacing: -0.05em;
    padding-bottom: 30px;
    padding-top: 40px;
}

h2.movie_ttl>span {
    font-size: 25px;
}

.contact_line_txt h2 {
    text-align: left;
    font-size: 20px;
    letter-spacing: -0.02em;
}

.contact_line_txt p {
    text-align: left;
    letter-spacing: 0.01em;
		font-weight: 400;
}

.contact_line_btn {
    margin: 30px auto 0px auto;
}

.onayami h2>span {
    letter-spacing: 0.02em;
    line-height: 1.2em;
		font-weight: 500;
}

.onayami ul li .tag {
    left: -20px;
}

.onayami ul li, .onayami ul li.wide {
    width: 75%;
    margin-left: 30px;
}

.voice_space p {
    padding-top: 0px;
    line-height: 1.4em;
}

dl.voice_qa dt>span {
    padding-right: 5px;
}

.voice_space h3, dl.voice_qa {
    width: 92%;
}

dl.voice_qa dd {
    padding: 14px 5px 20px 10px;
}

p.reco_name {
    font-size: 18px;
    line-height: 1.4em;
}

.reco_txt_area h3 {
    line-height: 1.4em;
}

.fee_banner_space h2, {
    line-height: 1.2em;
}

.profile_child_02 .txt_group h3 {
    font-size: 30px;
}

.profile_child_02 .txt_group h3>span {
    font-size: 26px;
}

ul.reason_list li {
    line-height: 1.4em;
}

.info_ttl h2 {
    font-size: 20px;
    letter-spacing: -0.02em;
    line-height: 1.4em;
}

.footer_contact_link {
    padding: 27px 10px 25px 10px;
}

p.f_tel_btn.f_btn {
    margin-bottom: 10px;
    margin-top: 20px;
}

p.f_tel_btn.f_btn a {
    display: block;
    background: #004190;
    color: #fff;
    text-align: center;
    font-size: 20px;
    padding: 11.5px 0;
    border-radius: 5px;
    -moz-box-shadow: 0 2px 0 #6f6f6f;
    -webkit-box-shadow: 0 2px 0 #6f6f6f;
    box-shadow: 0 2px 0 #6f6f6f;
}

p.f_tel_btn.f_btn a>span {
    color: #fff;
    font-weight: bold;
}

thead.weekly tr th, tbody.weekly_time tr td {
    font-size: 16px;
}

p.shop_note {
    font-size: 16px;
}

.footer_group {
    display: flex;
    justify-content: space-between;
    margin: 50px auto 0px auto;
    border-bottom: none;
    padding-bottom: 30px;
}

p.copyright {
    font-size: 10px;
}

section.access h2 {
    line-height: 1.2em;
}

#sp_menu #global-nav ul li a, #sp_menu.fixed #global-nav ul li a {
    padding: 14px 0 12px 15px;
}

.fee_banner_02 {
    margin: 30px 0;
}


/* ----
LINEで予約スペース
----- */
.line_banner_sp {
    margin-top: 30px;
    display: block;
    background: #1dcd00;
    padding: 15px 20px;
}

p.sp_line_ttl {
    font-size: 20px;
    font-weight: bold;
    color: #282624;
    background: #fff;
    text-align: center;
    border-radius: 8px;
    padding: 10px;
    line-height: 1.2em;
}

p.sp_line_ttl>span {
    font-weight: bold;
}

p.sp_line_img {
    text-align: center;
}

p.sp_line_img img {
    width: 100%;
    max-width: 72px;
    margin: 10px 0;
}

p.sp_line_txt01 {
    font-size: 13px;
    color: #fff;
    line-height: 1.4em;
}

.sp_line_reserve {
    margin-top: 20px;
    border-top: 2px solid #fff;
    padding-top: 20px;
    color: #fff;
}

h3.sp_line_reserve_ttl01 {
    font-size: 20px;
    font-weight: bold;
    text-decoration: underline;
    text-align: center;
    margin-bottom: 20px;
    color: #fff;
}

section.sp_line_reserveconts {
    margin-bottom: 20px;
}

h4.sp_line_reserve_ttl02 {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #fff;
}

.sp_line_reserve p {
    font-size: 14px;
    margin-bottom: 0;
    line-height: 1.4em;
    color: #fff;
}

p.sp_line_reservebtn {
    margin-top: 10px;
}

section.sp_line_reserveconts a {
    border: 1px solid #fff;
    padding: 10px;
    border-radius: 5px;
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

section.sp_line_reserveconts a img {
    width: auto;
    max-width: 26px;
    vertical-align: middle;
    margin-right: 10px;
    line-height: 0;
}

.root_info ul li:nth-child(2n-1) {
    margin-right: 0px;
}

/* -----
症状別メニュー（メインビジュアル）
----- */
.sym_main {
    width: 95%;
    margin: 0 auto;
    margin-bottom: 20px;
}

/* -----
クレジットカード
----- */
.credit>p {
    font-size: 16px;
    padding: 16px;
}
.card {
    padding: 20px;
}
p.pay1 {
    margin-right: 16px;
}
p.pay2 img {
    max-height: 196px;
}

}
