@charset "utf-8";
/* CSS Document */




/*---------------------------------------------基本----------------------------------*/

html {
    margin-top: 0px!important;
}

a{
	transition: 0.5s;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
}

a:hover{
	    opacity: 0.7;
}

div#wrap {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
}

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

.w_960{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

ul {
	list-style: none;
}

.quick {
	font-family: 'Quicksand', sans-serif;
	font-weight: bold;
}

.lato {
	font-family: 'Lato', sans-serif;
	font-weight: bold;
}

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

.red{
	color: #e90000;
}

.orange {
	color: #ff761b;
}

.green {
	color:#009005;
}

.bold {
	font-weight: bold;
}

.f_35 {
	font-size: 35px;
}

.f_20 {
	font-size: 20px;
}

.f_18 {
	font-size: 18px;
}

.y_marker {
background: linear-gradient(transparent 50%, #ffff66 0%);
}

.m_40 {
    margin-top: 40px;
}

.m_top {
    margin-top: 50px;
}

.sp_768 {
	display: none!important
}

.clicked {
    overflow: hidden;
}

/*----------------------------------------ヘッダー----------------------------------*/

.sym_main.sample_01 {
    margin-top: 4rem;
}

.h_top_space {
    border-bottom: 4px solid #004190;
}

.h_top_space .inner {
    display: flex;
    justify-content: space-between;
    height: 40px;
    align-items: center;
}

.h_top_space .inner h1 {
    font-size: 12px;
}

.h_top_space .inner ul {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    max-width: 400px;
}

.h_top_space .inner li {
    font-size: 13px;
    max-width: 120px;
    position: relative;
    padding: 0 15px 0 15px;
}

.h_top_space .inner li:last-child {
padding-right: 0;
}

.h_top_space .inner li:before {
    font-family: "Font Awesome 5 Free";
    content: "\f138";
    position: absolute;
    left: 0em;
    font-weight: 700;
    color: #004190;
}

.h_top_space .inner li a {
    color: #282624;
    letter-spacing: 0.01em;
}

.h_logo_space .inner {
    margin-top: 20px;
}

.logo_top_txt {
    font-size: 13px;
    letter-spacing: 0.12em;
    margin-bottom: 10px;
		font-weight: 500;
}

span.big {
    font-size: 18px;
    letter-spacing: 0.12em;
		font-weight: 500;
}

.logo_wrap {
    display: flex;
    align-items: center;
}

.logo_wrap img {
    max-width: 277px;
}

.logo_wrap p {
    font-size: 12px;
    background: #e7edf4;
    width: 100%;
    max-width: 190px;
    border-radius: 5px;
    text-align: center;
    padding: 9px 5px;
    margin-left: 10px;
    font-weight: 500;
}

.h_center_space {
    display: flex;
    justify-content: space-between;
}

.h_address_space {
    width: 100%;
    max-width: 220px;
}

.h_address_space .inner {
    margin-top: 20px;
}

.h_address_space .inner h2 {
    background: #e7edf4;
    max-width: 65px;
    width: 100%;
    text-align: center;
    padding: 4px 0px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.28em;
    margin-bottom: 5px;
}

.h_address_space .inner p {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.14em;
    line-height: 1.5em;
}

ul.h_sns_space {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px;
}

ul.h_sns_space li {
    max-width: 40px;
}

ul.h_sns_space img {
    max-width: 40px;
}

.h_contact_space {
    width: 100%;
    max-width: 264px;
    margin-top: 20px;
}

p.tel_txt {
    font-size: 13px;
    font-weight: 500;
    text-align: center;
}

p.h_tel {
    font-size: 34px;
    text-align: right;
    position: relative;
    font-weight: 900;
    letter-spacing: 0.04em;
    margin-top: 4px;
}

.h_tel a {
    color: #004190;
    font-size: 34px;
}

.h_tel a::before {
    content: '';
    background: url(../img/h_tel_icon.svg);
    width: 23px;
    height: 23px;
    display: block;
    position: absolute;
    background-position: center;
    background-size: cover;
    top: 7px;
    left: 0px;
}

.h_tel a::before{
	display: none;
}


p.yoyaku_date {
    font-size: 13px;
    font-weight: 500;
    text-align: left;
    letter-spacing: 0.068em;
    padding: 3px 0 8px 0;
}

.mail_btn {
    width: 87%;
    padding: 11.5px 0;
    text-align: center;
    position: relative;
    color: #fff;
    font-size: 16px;
    background: #008104;
    padding-left: 34.33px;
    margin-top: 5px;
}
p.mail_btn::before {
    content: '';
    background: url(../img/h_mail_icon.svg);
    width: 23px;
    height: 18px;
    background-size: cover;
    position: absolute;
    top: 10px;
    left: 23px;
    background-position: center;
    display: block;
}

/* トップ02 */
.header_btn {
    display: flex;
    justify-content: space-between;
}

.header_btn .child {
    width: 100%;
    max-width: 49%;
    flex-basis: 49%;
}

.mail02_btn {
    	padding: 7.5px 0;
	    text-align: left;
	    position: relative;
	    color: #fff;
	    font-size: 11px;
	    background: #008104;
	    padding-left: 37.33px;
	    margin-top: 5px;
	    line-height: 1.2;
	    letter-spacing: 0.05em;
}
p.mail02_btn::before {
    content: '';
    background: url(../img/h_mail_icon.svg);
    width: 23px;
    height: 18px;
    background-size: cover;
    position: absolute;
    top: 12px;
    left: 9px;
    background-position: center;
    display: block;
}

p.line_btn2 {
    padding: 7.5px 0;
    text-align: left;
    position: relative;
    color: #fff;
    font-size: 11px;
    background: #00b900;
    padding-left: 38.33px;
    margin-top: 5px;
    line-height: 1.2;
    letter-spacing: 0.05em;
}
/* --
p.line_btn::before {
    content: '';
    background: url(../img/line_btn.png);
    width: 23px;
    height: 22px;
    background-size: cover;
    position: absolute;
    top: 10px;
    left: 9px;
    background-position: center;
    display: block;
}
--*/
p.line_btn2::before {
    content: '';
    background: url(../img/line_btn.png);
    width: 23px;
    height: 22px;
    background-size: cover;
    position: absolute;
    top: 10px;
    left: 9px;
    background-position: center;
    display: block;
}
/* トップ02 end */

/* トップ03 start */
.h_contact_btn {
    display: flex;
    margin-top: 21px;
}
.h_shimokita {
    padding-right: 13px;
    border-right: 1px dashed #ccc;
    margin-right: 13px;
}
.h_logo_space {
    width: 100%;
    max-width: 318px;
    padding-right: 18px;
    display: flex;
    align-items: center;
}
.h_logo_space img {
    max-width: 318px;
}
.h_tel img, .h_mail img {
    max-width: 272px;
}
.h_mail img {
    margin-top: 8px;
}
.h_shimokita h2, .h_komagome h2 {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.05rem;
}
.h_shimokita h2 span, .h_komagome h2 span {
    font-size: 14px;
    background: #d10000;
    color: #fff;
    padding: 3px 7px 5px 7px;
    margin-left: 10px;
    display: inline-block;
    align-items: center;
    line-height: 14px;
}
.h_contact_area {
    margin-top: 13px;
}
.c_simokita h2::after, .c_komagome h2::after {
    content: '';
    position: absolute;
    background-size: cover;
    height: 70px;
    width: 380px;
    top: -30px;
    left: 50px;
    z-index: -1;
}
.c_simokita h2::after{
   background: url(../img/contact_item1.png);
	 background-size: contain;
   background-repeat: no-repeat;
}
.c_komagome h2::after{
	 background: url(../img/contact_item2.png);
	 background-size: contain;
   background-repeat: no-repeat;
}
.c_simokita h2, .c_komagome h2 {
    font-size: 26px;
    text-align: center;
    font-weight: bold;
    color: #fff;
    position: relative;
    padding-bottom: 13px;
}
.contact_group {
    display: flex;
    justify-content: space-between;
}
.c_simokita, .c_komagome {
    width: 100%;
    max-width: 480px;
}
.fee_mail {
    display: flex;
    justify-content: center;
    margin-top: 13px;
}
.top_fee {
    padding-right: 20px;
}
.c_komagome .btn_area {
    border: 3px solid #f1ae10;
}
.c_simokita .btn_area {
    border: 3px solid #004180;
}
.btn_area {
    border-radius: 5px;
    padding: 13px;
}
.btn_area .tel p {
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.05rem;
    padding-bottom: 8px;
}
.c_komagome .btn_area .tel p {
    color: #523b05;
}
.c_simokita .btn_area .tel p {
    color: #001c3d;
}
.btn_area .tel {
    text-align: center;
}
.c_simokita .btn_area .tel img, .c_komagome .btn_area .tel img {
    max-width: 440px;
}
.contact_group {
    display: flex;
    justify-content: space-between;
    margin-top: 84px;
    margin-bottom: 55px;
}
.top_fee img, .top_line img {
    max-width: 210px;
    width: 100%;
}

section.top_contact>p {
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.05rem;
    margin: 32px 0 16px;
}




/* トップ03 end */

.nav_pc {
    padding: 40px 0 20px 0;
    border-bottom: 3px solid #9ca0a5;
}

ul.nav_pc_list {
    display: flex;
    justify-content: space-between;
}

ul.nav_pc_list li.nav_pc_child {
    padding: 0px 5px;
    position: relative;
    display: inline-block;
    text-decoration: none;
}

ul.nav_pc_list li.nav_pc_child::after {
    position: absolute;
    bottom: -23px;
    left: 0;
    content: '';
    width: 100%;
    height: 4px;
    background: #004190;
    transform: scale(0, 1);
    transform-origin: center top;
    transition: transform .3s;
    border-radius: 5px;
}

ul.nav_pc_list li.nav_pc_child:hover::after {
  transform: scale(1, 1);
}

ul.nav_pc_list li.nav_pc_child a {
    color: #333;
    font-weight: 500;
    opacity: 1;
}

/* -----
プルダウンナビゲーション
----- */
.tel_sp_nav {
    width: 100%;
    border-bottom: 1px solid #d1d0d0;
    text-align: center;
}

.tel_sp_nav a>img {
    height: 60px;
    max-width: 230px;
}

ul.nav_pc_list li.menu__single {
    position: relative;
}

ul.nav_pc_list li.menu__single .init-bottom {
    padding: 16px 0;
    color: #333;
    font-weight: 500;
    opacity: 1;
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 40px;
    width: 260px;
    background: #004190;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

ul.menu__second-level {
	opacity: 0;
	visibility: hidden;
	z-index: 1;
}

li.m_second_child:not(:last-child) {
    border-bottom: 1px solid #fff;
}

li.m_second_child {
    padding: 20px 0 20px 15px;
}

li.m_second_child a {
    color: #fff;
    width: 100%;
    letter-spacing: 0.05em;
}

li.menu__single:hover ul.menu__second-level {
	  position: absolute;
    top: 36px;
    visibility: visible;
    opacity: 1;
		z-index: 4!important;
		display: block;
}


/* -----
追従ナビ
----- */
.fix-header {
    background-color: #004190;
    line-height: 70px;
    top: -70px;
    left: 0;
    text-align: center;
    width: 100%;
    margin: 0 auto;
    color: #fff;
    position: fixed;
    opacity: 0;
    z-index: 1000;
}

.fix-header-contents{
	width:800px;
	margin: 0 auto;
}

.fix-header .nav_pc_fix {
    list-style-type: none;
    display: flex;
    justify-content: center;
    position: relative;
    flex-wrap: wrap;
}

.fix-header .nav_pc_child_fix, .fix-header .menu__single_fix {
    margin-right: 32px;
}

.fix-header li a,.fix-header li a:visited{
color: #fff;
text-decoration: none;
}
.fix-header li:last-child{
margin-right:0;
}
#fix-header-logo{
float:left;
}

#fix-header-logo img{
width:54px;
}

#fix-header-menus{
float:right;
text-align: right;
}
#scroll-fix-menu img{
padding-bottom: 5px;
 border-bottom:2px solid #fff;
}

#scroll-fix-menu .current-menu-item img{
 border-bottom:2px solid #0f142a;
}

#scroll-fix-menu a img:hover{
 border-bottom:2px solid #0f142a;
transition:border-color 0.6s ease-out;
}

/* micro clearfx */
.cf:before, .cf:after {
	content:"";
	display:table
}
.cf:after { clear:both }
.cf { zoom:1 } /* For IE 6/7 */

ul.nav_pc_list_fix {
    display: flex;
    justify-content: space-between;
}

ul.nav_pc_list_fix li.nav_pc_child_fix {
    padding: 0px 5px;
    position: relative;
    display: inline-block;
    text-decoration: none;
}

ul.nav_pc_list_fix li.nav_pc_child_fix:hover::after {
  transform: scale(1, 1);
}

ul.nav_pc_list_fix li.nav_pc_child_fix a {
    color: #333;
    font-weight: 500;
    opacity: 1;
}

ul.nav_pc_list_fix li.menu__single_fix {
    position: relative;
}

ul.nav_pc_list_fix li.menu__single .init-bottom_fix {
    padding: 16px 0;
    color: #333;
    font-weight: 500;
    opacity: 1;
}

li.menu__single_fix ul.menu__second-level_fix {
    position: absolute;
    top: 40px;
    width: 260px;
    background: #004190;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

ul.menu__second-level_fix {
	opacity: 0;
	visibility: hidden;
	z-index: 1;
}

li.m_second_child_fix:not(:last-child) {
    border-bottom: 1px solid #fff;
}

li.m_second_child_fix {
    padding: 0 0 0 15px;
    text-align: left;
}

li.m_second_child_fix a {
    color: #fff;
    width: 100%;
    letter-spacing: 0.05em;
}

li.menu__single_fix:hover ul.menu__second-level_fix {
	  position: absolute;
    top: 66px;
    visibility: visible;
    opacity: 1;
		z-index: 4!important;
		display: block;
}
li.nav_pc_child_fix.contact_nav {
    position: relative;
}

#toggle {
  display: none;
  cursor: pointer;
  }
#menu {
  display: none;
  }
#toggle:checked + #menu {
  display: block;
  }

#toggle2 {
display: none;
cursor: pointer;
}
#menu2 {
display: none;
}
#toggle2:checked + #menu2 {
display: block;
}

#toggle3 {
display: none;
cursor: pointer;
}
#menu3 {
display: none;
}
#toggle3:checked + #menu3 {
display: block;
}


.contact_nav {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 150px;
    padding-top: 0px;
}

img.tel_fix {
    max-width: 150px;
    height: 19px;
    width: 100%;
    padding-bottom: 5px;
}

.contact_nav a {
    display: inline-flex;
}

img.mail_fix {
    max-width: 150px;
    height: 35px;
    width: 100%;
    margin-bottom: 16px;
}


/* -----
ページトップボタン
----- */
#page_top {
    position: fixed;
    right: 2rem;
    bottom: 2rem;
    background: #333;
    opacity: 0.7;
    border-radius: 50%;
    z-index: 999;
}
#page_top a {
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    text-decoration: none;
}
#page_top a::before {
    font-family: FontAwesome;
    content: '\f106';
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 30px;
    height: 29px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}





/*--------------------------------------------コンテンツ----------------------------------*/


/* -----
メインビジュアル
----- */

div.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    background-image: url(../img/right_arrow.svg);
    width: 30px;
    height: 45px;
    background-position: center;
    background-size: cover;
    right: 40px;
}

div.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    background-image: url(../img/left_arrow.svg);
    width: 30px;
    height: 45px;
    background-position: center;
    background-size: cover;
    left: 40px;
}

.m_slider .swiper-slide {
    text-align: center;
}

.m_slider {
    position: relative;
}

.m_slider img {
    max-width: 1000px;
}

.m_slider .m_slide_01 {
    background: #e7edf4;
}

.m_slider .m_slide_02 {
    background: #ecedee;
    z-index: -2;
}

.m_slider .m_slide_03 {
    background: #b8d59f;
}

.m_slider .m_slide_02::after {
	  content: '';
		position: absolute;
		bottom: 0;
		left:0;
		width: 100%;
		height: 70px;
    background: #e90000;
    z-index: -1;
}

.min_480 {
	display: none;
}


/* -----
TV紹介
----- */

.tv_ttl {
    width: 100%;
    max-width: 561px;
    margin: 80px auto 40px auto;
}

.tv_space {
    background-image: url(../img/tv_bg.jpg);
    background-size: cover;
    background-position: center;
    width: 600px;
    height: 400px;
		margin: 0 auto;
}

.tv_slider {
    position: relative;
    width: 100%;
    max-width: 575px;
    height: 310px;
    margin: 0 auto;
    padding-top: 12px;
}

.tv_slider .swiper-container.swiper-container-horizontal {
    position: unset;
}

.tv_slider div.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    background-image: none;
    width: 45px;
    height: 45px;
    background-position: center;
    background-size: cover;
    left: -78px;
    border-radius: 50px;
    background-color: rgba(40,38,36,0.6);
}

.tv_slider div.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    background-image: none;
    width: 45px;
    height: 45px;
    background-position: center;
    background-size: cover;
    right: -78px;
    border-radius: 50px;
    background-color: rgba(40,38,36,0.6);
}

.triangle1 {
    width: 0;
    height: 0;
    border-right:13px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    margin: 0 auto;
    margin-top: 15px;
    margin-right: 18px;
}

.triangle2 {
    width: 0;
    height: 0;
    border-left: 13px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    margin: 0 auto;
    margin-top: 15px;
    margin-left: 18px;
}

.tv_txt {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #e90000;
    margin: 40px auto 80px auto;
}

/* -----
有名人来院
----- */

h2.celeb_ttl {
    font-size: 40px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding-bottom: 40px;
}

.celeb_img_space img {
    border-radius: 10px;
}

h2.movie_ttl {
    font-size: 40px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding-bottom: 40px;
    padding-top: 80px;
}

h2.movie_ttl>span {
    font-size: 40px;
    font-weight: bold;
    color: #fff;
    display: inline-block;
    letter-spacing: -0.3em;
}

.movie-wrap {
		 text-align: center;
}


/* -----
ブログ&ニュースとSNSの埋め込み
----- */

h3.info_ttl {
    font-size: 30px;
    border-bottom: 4px solid #004190;
    margin: 80px 0 0 0;
    padding-bottom: 10px;
}

h3.insta_ttl {
    font-size: 30px;
    border-bottom: 4px solid #004190;
    margin-bottom: 20px;
    padding-bottom: 10px;
}

h3.twitter_ttl {
    font-size: 30px;
    border-bottom: 4px solid #004190;
    margin-bottom: 20px;
    padding-bottom: 10px;
}



.titleWrap {
    padding: 40px 0;
    border-bottom: 1px solid #282624;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

span.title a {
    color: #282624;
    line-height: 2em;
}

span.date {
    font-size: 20px;
}

span.post {
    background: #74ad43;
    padding: 3px 35px 3px;
    color: #fff;
    border-radius: 50px;
    font-size: 18px;
    margin: 0 20px;
}

span.blog {
    background: #004190;
    padding: 3px 44px 3px;
    color: #fff;
    border-radius: 50px;
    font-size: 18px;
    margin: 0 20px;
}


.sns_space {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 80px;
}

.insta_space {
    width: 100%;
    max-width: 480px;
}

.Twitter_space {
    width: 100%;
    max-width: 480px;
}

/* -----
スタッフ写真
----- */
section.staffimg_area .inner {
    margin: 0 auto;
    width: 100%;
    text-align: center;
    margin-top: 55px;
}
section.staffimg_area .inner img {
    max-width: 1000px;
}



/* -----
お問い合わせへの導線
----- */

section.contact_line {
    margin-top: 39px;
}

.contact_line_txt h2 {
    font-size: 40px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 1.6em;
    letter-spacing: 0.04em;
}

.contact_line_txt p {
    font-size: 20px;
    color: #fff;
    text-align: center;
    font-weight: 300;
    line-height: 1.8em;
    letter-spacing: 0.16em;
    padding-top: 20px;
}

.contact_btn_group {
    display: flex;
    justify-content: space-between;
}

.contact_line_btn {
    margin: 27px auto 0px auto;
    width: 100%;
    max-width: 460px;
}

.contact_line_btn a {
    padding: 27.5px 0px;
    background: #008104;
    font-size: 25px;
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.08em;
    display: block;
    text-align: center;
}
/* -----
お悩み
----- */

section.onayami {
    margin-top: 70px;
}

.onayami h2 {
    font-size: 40px;
    font-weight: 400;
    color: #004190;
    text-align: center;
}

.onayami h2>span {
    font-size: 45px;
    font-weight: bold;
    color: #004190;
}

ul.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.onayami ul {
    margin-left: -3%;
    margin-top: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.onayami ul li {
    -webkit-box-shadow: 0px 0px 15px 0px rgba(35, 24, 21, 0.4);
    -moz-box-shadow: 0px 0px 15px 0px rgba(35, 24, 21, 0.4);
    box-shadow: 0px 0px 15px 0px rgba(35, 24, 21, 0.4);
    width: 40%;
    margin-left: 5.5%;
    background: rgba(255, 255, 255, 0.8);
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    padding: 35px 20px 15px 20px;
    margin-top: 65px;
    font-size: 1.8rem;
    position: relative;
    line-height: 1.6;
}

.onayami ul li .tag {
    -moz-transform: rotate(-15deg);
    -ms-transform: rotate(-15deg);
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    left: -25px;
}

p.tag {
    color: #fff;
    font-size: 1.7rem;
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 0;
    background: #5783b5;
    color: #fff;
    padding: 2px 8px;
}

.tag span {
    display: inline-block;
    width: 30px;
    line-height: 30px;
    height: 30px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #fff;
    color: #5783b5;
    text-align: center;
    margin-left: 5px;
}

.txt {
    font-size: 24px;
}

.txt span{
    font-size: 24px;
}

span.bg_line {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 50%, #fffacc 50%);
    font-weight: bold;
}

.onayami ul li.wide {
    width: 89%;
}

/* -----
症状別メニュー
----- */

section.sym_menu {
    background: #f9f9f9;
    padding-bottom: 80px;
    margin: 80px auto;
}

.triangle_down {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 37px 43.5px 0 43.5px;
    border-color: #ffffff transparent transparent transparent;
    margin: 0 auto;
    padding-bottom: 40px;
}

.sym_menu_space h2 {
    font-size: 40px;
    text-align: center;
    line-height: 1.5em;
    color: #004190;
    letter-spacing: 0.08em;
}

.sym_menu_space h2 span {
    font-size: 45px;
    font-weight: bold;
    color: #004190;
    letter-spacing: 0.08em;
}

.sym_menu_space ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sym_menu_space li {
    margin-right: 20px;
    margin-top: 40px;
    position: relative;
    width: 100%;
    max-width: 320px;
		overflow: hidden;
}

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

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


.sym_menu_space li>a p {
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 25px;
    padding: 17.5px 0px;
    width: 100%;
    text-align: center;
    color: #fff;
    letter-spacing: 0.05em;
    background-color: rgba(40,38,36,0.6);
}

.sym_menu_space li img {
    width: 100%;
    transition-duration: .5s;
}

.sym_menu_space li a:hover img{
	transform: scale(1.2);
  transition-duration: 0.5s;
}

/* -----
お客様の声
----- */

.voice_bg {
    background: url(../img/voice_bg.jpg);
    width: 100%;
    padding: 20px 0;
		margin-top: 40px;
}

.voice_space {
    background: #fff;
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
}

.voice_space h3 {
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    padding: 40px 0 20px 0;
    border-bottom: 1px solid #282624;
    width: 96%;
    margin: 0 auto;
}

.voice_content {
    display: flex;
    justify-content: space-between;
    width: 96%;
    margin: 20px auto 0 auto;
}

.voice_img {
    width: 100%;
    max-width: 280px;
    text-align: center;
}

img.costomer_img {
    max-width: 270px;
    margin: 0 auto;
    padding: 5px;
    border: 1px solid #e3e3e3;
}

img.qa_img {
    max-width: 270px;
    margin: 0 auto;
    padding: 5px;
    margin-top: 15px;
    border: 1px solid #e3e3e3;
}

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

dl.voice_qa dt {
    background: #004190;
    color: #fff;
    padding: 15px;
    font-size: 18px;
}

dl.voice_qa dt>span {
    font-size: 20px;
    color: #fff;
    padding-right: 10px;
}

dl.voice_qa dd {
    padding: 14px 5px 20px 20px;
    line-height: 1.5em;
}

.voice_space p {
    width: 96%;
    margin: 0 auto;
    padding-bottom: 40px;
    padding-top: 10px;
		font-size: 12px;
    color: #383f48;
}

.voice_line_btn {
    width: 100%;
    text-align: center;
    margin: 50px auto 80px auto;
    max-width: 500px;
}

.voice_line_btn a {
    padding: 27.5px 0px;
    font-size: 25px;
    color: #fff;
    background: #004190;
    letter-spacing: 0.08em;
    display: block;
}

/* -----
推薦状
----- */

.reco_ttl {
    text-align: center;
    width: 100%;
    margin-bottom: 20px;
}

.reco_ttl img {
    max-width: 557px;
    padding-right: 100px;
}

.reco_player {
    width: 100%;
    background: #004190;
    position: relative;
    border-radius: 15px;
}

.reco_player h2 {
    color: #fff;
    font-size: 25px;
    margin-left: 53px;
    padding: 18.5px;
    font-weight: bold;
}

.reco_player h2:before {
    content: '';
    background: url(../img/reco_icon.svg);
    width: 43px;
    height: 32px;
    background-position: center;
    background-size: cover;
    position: absolute;
    left: 20px;
}

.reco_bg {
    margin-top: 30px;
}

.reco_group {
    display: flex;
    justify-content: space-between;
    background: #fff;
    border: 8px solid #88a7cb;
    padding: 15px 10px;
}

.reco_img {
    width: 100%;
    max-width: 235px;
}

.reco_child {
	width: 100%;
max-width: 700px;
margin-top: 10px;
}

.reco_txt_area h3 {
    font-size: 20px;
    font-weight: bold;
}

p.reco_name {
    font-size: 23px;
    font-weight: bold;
    margin-top: 10px;
}

p.reco_name>span {
    font-size: 20px;
    color: #003c81;
    font-weight: bold;
    padding-right: 10px;
}

.achieve_list {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid #004190;
}

.achieve_list ul {
    width: 100%;
}

.achieve_list ul li {
    font-size: 13px;
    line-height: 1.6em;
}

.achieve_list ul li>span {
    color: #003c81;
    padding-right: 3px;
}

p.reco_txt {
    font-size: 16px;
    margin-top: 10px;
    line-height: 1.5em;
    letter-spacing: 0.05em;
}

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

/* -----
インターネット限定open特別価格
----- */

.fee_banner_space h2 {
    font-size: 50px;
    color: #e90000;
    border-top: 1px solid #282624;
    border-bottom: 1px solid #282624;
    padding: 30px 0;
    font-weight: bold;
    margin: 70px auto 40px auto;
    text-align: center;
}

.fee_txt {
    font-size: 18px;
    line-height: 1.5em;
    margin-top: 20px;
}

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

section.profile {
    background: #f9f9f9;
    padding: 80px 0;
    margin: 80px 0;
}

.porofile_group {
    display: flex;
    justify-content: space-between;
}

.profile_child_01 {
    width: 100%;
    max-width: 280px;
}

.profile_child_02 {
    width: 100%;
    max-width: 670px;
		display: flex;
    align-items: center;
}

.profile_child_02 .txt_group h3 {
    font-size: 40px;
    font-weight: bold;
    color: #004190;
		line-height: 1.5em;
    letter-spacing: 0.08em;
}

.profile_child_02 .txt_group h3>span {
    font-size: 36px;
    color: #004190;
    font-weight: bold;
		letter-spacing: 0.08em;
}

.profile_child_02 .txt_group p {
    font-size: 18px;
    line-height: 1.8em;
    letter-spacing: 0.08em;
    margin-top: 10px;
}

.profile_point {
    background: #fff;
    border: 1px solid #e3e3e3;
    padding: 20px;
    margin: 30px auto;
}

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

.profile_point li>span {
    color: #004190;
    padding-right: 5px;
}

section.profile p {
    font-size: 18px;
    line-height: 1.8em;
    letter-spacing: 0.08em;
}

.profile_link_btn {
    width: 100%;
    max-width: 550px;
    margin: 0 auto;
    margin-top: 30px;
}

.profile_link_btn a {
    color: #fff;
    background: #004190;
    padding: 26px 0px;
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 0.08em;
    display: block;
    text-align: center;
}

/* -----
選ばれる理由
----- */

.reason_ttl h2 {
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 20px;
    border-bottom: 1px solid #282624;
	  letter-spacing: 0.08em;
}

.reason_ttl img {
    max-width: 372px;
    margin: 0 auto;
    display: block;
    margin-bottom: 20px;
}

.reason_inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}

ul.reason_list {
    width: 100%;
    max-width: 540px;
}

ul.reason_list li {
    border-bottom: 1px dotted #b9b9b9;
    font-size: 20px;
    font-weight: bold;
    padding: 30px 0;
    display: flex;
    align-items: center;
}

ul.reason_list li>span {
    font-size: 30px;
    color: #5783b5;
    padding-right: 20px;
}

.reason_line {
    width: 100%;
    max-width: 435px;
}

.reason_thm {
    margin-top: 30px;
}

.reason_line_btn {
    width: 100%;
    text-align: center;
    margin-top: 70px;
}

.reason_line_btn a {
    color: #fff;
    background: #004190;
    padding: 26px 0;
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 0.08em;
    display: block;
}

/* -----
お客様へのお約束
----- */

section.promise {
    background: #f9f9f9;
    padding-bottom: 80px;
}

.promise_ttl {
    padding-top: 70px;
}

.promise_ttl h2 {
    font-size: 40px;
    text-align: center;
    line-height: 1.2em;
    font-weight: bold;
    letter-spacing: 0.08em;
}

.promise_ttl h2>span.small {
    font-size: 30px;
    display: block;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.08em;
}

.promise_ttl h2>span.big {
    font-size: 60px;
    font-weight: bold;
    color: #004190;
    letter-spacing: 0.08em;
}

.promise_list ul {
    display: flex;
    justify-content: center;
		flex-wrap: wrap;
}

.promise_list ul li {
    width: 100%;
    max-width: 300px;
    background: #fff;
    border: 10px solid #ccd9e8;
    padding: 20px 0;
		position: relative;
		margin-right: 20px;
		margin-top: 30px;
}

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

.promise_list ul li::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 40px 0 0;
    border-color: #004190 transparent transparent transparent;
		top: -10px;
    left: -10px;
}

.promise_list ul li .inner {
    text-align: center;
    max-width: 280px;
    margin: 0 auto;
}

img.promise_num {
    max-width: 98.5px;
    margin-bottom: 10px;
}

.promise_list ul li .inner h3 {
    font-size: 20px;
    font-weight: bold;
    max-width: 240px;
    text-align: center;
    display: inline-block;
    line-height: 1.4em;
    margin-bottom: 10px;
}

img.promise_img {
    max-width: 280px;
}

.promise_list ul li p {
    display: inline-block;
    text-align: left;
    font-size: 16px;
    line-height: 1.5em;
    margin-top: 10px;
}

.promise_line_btn {
    width: 100%;
    margin: 0 auto;
    max-width: 550px;
    margin-top: 40px;
}

.promise_line_btn a {
    background: #004190;
    color: #fff;
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 0.08em;
    padding: 23.5px 0px;
    text-align: center;
    display: block;
}

/* -----
アクセス
----- */

section.access {
    margin: 80px auto;
}

section.access>img {
    max-width: 1000px;
    margin-top: 34px;
}

section.access h2 {
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    color: #004190;
    letter-spacing: 0.08em;
}

.access_info {
    display: flex;
    justify-content: space-between;
}

table.inner_01 {
    width: 100%;
    max-width: 500px;
    margin-top: 20px;
}

table.inner_01 tr {
    text-align: left;
}

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

table.inner_01 tr td {
    font-size: 18px;
    padding: 20px 0;
    line-height: 1.5em;
}

table.inner_01 tr {
    text-align: left;
}

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

.access_info td span {
    color: #004190;
    padding-right: 5px;
}

.shop_time {
    width: 100%;
}

.shop_time table {
    width: 100%;
    max-width: 500px;
    margin-top: 40px;
}

thead.weekly {
    width: 100%;
}

thead.weekly tr {
    background: #ccd9e8;
}

thead.weekly tr th {
    font-size: 20px;
    padding: 23px 10px 23px 0;
}

tbody.weekly_time {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #282426;
}

tbody.weekly_time tr td {
    padding: 30px 10px 30px 0px;
    font-size: 20px;
}
.shop_sns {
    background: #e6ecf3;
    padding: 43px;
    margin-top: 16px;
    margin-bottom: 30px;
}
.sns_group {
    display: flex;
    justify-content: space-around;
}
.sns_group a:not(:last-child) {
    padding-right: 21px;
}
.sns_group a {
    max-width: 70px;
}
.sns_group a img {
    max-height: 60px;
}
.shop_img {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
}
.shop_img .inner img {
    max-width: 320px;
}
.shop_img .inner:not(:last-child) {
    margin-right: 13px;
}

.credit {
    border: 1px solid;
    color: #282624;
    margin-bottom: 32px;
}
p.pay1 {
    margin-right: 32px;
}
p.pay2 img {
    max-width: 196px;
}
.credit>p {
    font-size: 18px;
    text-align: center;
    padding: 20px;
    font-weight: 500;
    letter-spacing: 0.08rem;
}
.card {
    border-top: 1px solid #282624;
    padding: 40px 120px;
    margin: 0px;
    display: flex;
    justify-content: center;
}
.access_line_btn {
    text-align: center;
    width: 100%;
    max-width: 500px;
    padding: 0 0 36px 0;
    margin-top: 67px;
}
.access_line_btn a {
    color: #fff;
    font-size: 25px;
    letter-spacing: 0.08em;
    padding: 6% 0;
    background: #004190;
    display: block;
}

.ggmap {
    position: relative;
    padding-bottom: 35%;
    padding-top: 40px;
    height: 0;
    overflow: hidden;
    margin-top: 30px;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.map_link {
    text-align: center;
    margin-top: 20px;
}

.map_link a {
    border-bottom: 1px solid #004190;
    color: #282624;
}

.root {
    margin-top: 82px;
}

section.access .root h2 {
    color: #282624;
}

.root p {
    font-size: 20px;
    text-align: center;
    border-top: 1px solid #282624;
    border-bottom: 1px solid #282624;
    padding: 20px 0;
    margin-top: 30px;
}

.root_info ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.root_info ul li {
    max-width: 290px;
    margin-top: 30px;
		position: relative;
		margin-right: 65px;
}

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

.root_info ul li:nth-child(3n)::before,.root_info ul li:last-child::before {
	content: '';
	background:none;
}

.root_info ul li::before {
    content: '';
    background: url(../img/root_arrow.png);
    width: 24px;
    height: 23px;
    position: absolute;
    top: 27%;
    right: -15%;
    background-size: cover;
    background-position: center;
}

.root_num_space {
    display: flex;
}

.root_num {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    background: #004190;
    padding: 10px 14px;
    margin: 15px 0 61px;
    max-width: 12px;
}

p.root_txt {
    padding-top: 20px;
    letter-spacing: 0.08em;
    padding-left: 10px;
    line-height: 1.5em;
}

a.root_img {
    color: #868686;
}

/*--------------------------------------------フッター----------------------------------*/


section.info {
    background: #004190;
    padding: 80px 0;
}

.info_ttl h2 {
    font-size: 40px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
}
.info_ttl p::before {
    content: '';
    position: absolute;
    background: url(../img/ttl_item_left.png);
    background-position: center;
    background-size: cover;
    width: 44px;
    height: 58px;
    bottom: -4px;
    left: -55px;
}

.info_ttl>span {
    font-size: 20px;
    text-align: center;
    display: block;
    margin: 40px 0 60px 0;
    padding: 20px 0;
    color: #fff;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #FFF;
}

.info_ttl p {
    font-size: 50px;
    text-align: center;
    font-weight: bold;
    color: #fff;
    border-bottom: 4px solid #fff;
    width: 80%;
    margin: 0 auto;
    padding-bottom: 5px;
    margin-top: 40px;
		position: relative;
}

.info_ttl p::after {
    content: '';
    position: absolute;
    background: url(../img/ttl_item_right.png);
    background-position: center;
    background-size: cover;
    width: 44px;
    height: 58px;
    bottom: -4px;
    right: -55px;
}

.fee_banner_02 {
    margin: 55px 0;
}

.info_banner {
    max-width: 1000px;
    width: 100%;
    height: 100%;
		position: relative;
    overflow: hidden;
    display: block;
}
h2.info_shopname {
    font-size: 42px;
    color: #001c3d;
    background: #fff;
    padding: 14px 0;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.05rem;
    margin-bottom: 34px;
}
.i_komagome {
    margin-top: 55px;
}
.i_komagome img.info_tel_btn {
    max-width: 555px;
    bottom: 40%;
}
img.info_link_btn {
		width: 56%;
		height: auto;
		margin: 24% 1% 0% 40%;
		display: inline-block;
    position: absolute;
		bottom: 7%;
    right: 3%;
    max-width: 575px;
}

.test_tel img.info_tel_btn {
    width: 56%;
    height: auto;
    margin: 0% 3% 0% 0%;
    display: inline-block;
    position: absolute;
    bottom: 40%;
    right: 2%;
    max-width: 547px;
}

img.info_tel_btn {
    width: 56%;
    height: auto;
    margin: 0% 3% 0% 0%;
    display: inline-block;
    position: absolute;
    bottom: 51%;
    right: 2%;
    max-width: 547px;
}

.line_banner {
    margin-top: 40px;
}

.line_banner a:hover {
	opacity: 1;
}


section.footer_space {
    background: #e6ecf3;
    padding-bottom: 14px;
    border-top: 5px solid #001c3d;
}

.w_1375 {
    max-width: 1375px;
    width: 100%;
    margin: 0 auto;
}
.footer_group {
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
}
.footer_group .inner  {
    background: #fff;
    padding: 40px;
    border: 3px solid #004180;
    border-radius: 15px;
    display: flex;
		justify-content:space-between;
		width:100%;
	}
.footer_shop_info {
    max-width: 330px;
}
.footer_group.f_komagome {
    margin-top: 34px;
    border-bottom: 1px solid #383634;
    padding-bottom: 40px;
}
h2.f_shopname {
    font-size: 32px;
    font-weight: bold;
    color: #004180;
}
p.f_txt {
    font-size: 15px;
    background: #d0d6dd;
    padding: 7.5px 0;
    text-align: center;
    border-radius: 5px;
    max-width: 235px;
    margin-top: 21px;
    font-weight: bold;
}
 p.footer_address {
    margin-top: 13px;
}

.footer_logo {
    text-align: center;
    margin: 0 auto;
    width: 100%;
    max-width: 330px;
}
.footer_logo img {
    max-width: 250px;
    margin-top: 21px;
}

p.footer_address {
    font-size: 18px;
    line-height: 1.5em;
    margin-top: 20px;
}




p.map_link_btn {
    margin-top: 21px;
}

p.map_link_btn a {
    padding: 24.5px 0px;
    background: #004190;
    text-align: center;
    display: block;
    border-radius: 10px;
}

p.map_link_btn a>span {
    color: #fff;
}

.footer_contact_link {
    width: 100%;
    max-width: 336px;
    padding: 27px 30px 25px 30px;
    border: 2px solid #282624;
    border-radius: 10px;
}

.footer_contact_link h3 {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

p.f_mail_btn.f_btn {
    margin-bottom: 10px;
}

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

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

p.f_mail_btn.f_btn a {
    display: block;
    background: #008104;
    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.line_btn.f_btn a {
    display: block;
    background: #00b900;
    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.tel {
    font-size: 45px;
    font-weight: 900;
    text-align: right;
    margin: 15px 0;
    position: relative;
}

p.tel a {
    color: #282624;
}

p.tel::before {
    content: '';
    background: url(../img/h_tel_icon.svg);
    width: 29px;
    height: 29px;
    display: block;
    position: absolute;
    background-position: center;
    background-size: cover;
    top: 12px;
    left: 0px;
}

.footer_shop_time table {
    width: 100%;
}

.footer_shop_time {
    width: 100%;
    max-width: 500px;
}

p.shop_note {
    font-size: 18px;
    line-height: 1.5em;
    margin-top: 10px;
}


.footer_nav_ttl {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 15px;
    padding-left: 20px;
		position: relative;
		margin-top: 40px;
}

.footer_nav_ttl::before {
	font-family: "Font Awesome 5 Free";
	content: "\f138";
	position: absolute;
	left: 0em;
	font-weight: 700;
	color: #004190;
}

ul.footer_menu_list {
    display: flex;
    justify-content: start;
		align-items: center;
		flex-wrap: wrap;
}

ul.footer_menu_list li:not(:last-child) {
    border-right: 1px solid #282624;
}

ul.footer_menu_list li {
    margin-bottom: 20px;
}

ul.footer_menu_list li a {
    font-size: 14px;
    font-weight: 500;
    padding: 0 15px;
    text-align: center;
    color: #282624;
}

.footer_sns_link ul {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 40px;
}

.footer_sns_link ul li {
    width: 100%;
    max-width: 27px;
}

.footer_sns_link ul li:not(:last-child) {
    margin-right: 10px;
}

.footer_sns_link ul li a img {
    max-width: 27px;
}

.copyright {
    text-align: center;
    font-size: 12px;
    margin: 20px 0 40px 0;
}


/* -----
症状別メニュー（メインビジュアル）
----- */
.sym_main {
    margin-bottom: 40px;
}
