@charset "UTF-8";
body {
    min-height: 100vh;
    height: 100%;
}
.appli ul {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 50px;
}
footer .copyright {
    text-align: center;
    font-size: 0.8rem;
    padding: 25px 0 22px;
    margin-bottom: 0;
    margin: 0;
    line-height: 0;
}
.center{
    text-align: center;
    margin: 0 auto;
}
/*--------------------会員ログイン関連--------------------*/
.main-contents {
    position: relative;
    padding: 0 0 50px 0;
}
.main-contents h2{
    font-size: 1.2rem;
    color: #333;
    margin: 30px auto;
    font-weight: 600;
    line-height: 1.4;
}
.login-form-wrap{
    max-width: 700px;
    margin: 70px auto;
}
.login-form-wrap dl{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 25px auto;
}
.login-form-wrap dl dt{
    display: inline-block;
    font-weight: normal;
    width: 160px;
}
.login-form-wrap dl dd{
    display: inline-block;
}
.login-form-wrap input{
    width: 500px;
    border: 1px solid #ccc;
    padding: 0.5em;
    font-size: 1em;
}
.login-form-wrap input.password{
    width: 250px;
}
.login-form-wrap input#admin_login{
    width: 200px;
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.login-form-wrap input#admin_login:hover {
    background: #148add;
}
.submit-wrap {
    margin: 50px auto 0;
    text-align: center;
    padding-bottom: 20px;
}
.submit-wrap a{
    display: block;
    text-align: center;
    margin: 20px 0;
}
.admin-login {
    width: 100%!important;
}
/*--------------------会員登録・パスワード設定関連--------------------*/
.regist-form-wrap{
    margin: 50px auto 70px;
}
.regist-form-wrap p{
    text-align: center;
    line-height: 1.7;
    margin: 50px 0 30px;
}
.regist-form-wrap dl{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 25px auto;
}
.regist-form-wrap dl dt{
    display: block;
    font-weight: bold;
    width: 100%;
}
.regist-form-wrap dl dd{
    display: inline-block;
}
dd.comfirm {
    text-indent: 1rem;
}
.regist-form-wrap input{
    width: 600px;
    border: 1px solid #ccc;
    padding: 0.5em;
    font-size: 1em;
}
.regist-form-wrap input.password{
    width: 250px;
}
.regist-form-wrap input#admin_login{
    width: 200px;
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.regist-form-wrap input#admin_login:hover {
    background: #148add;
}
.regist-form-wrap input.radio {
    width: 40px;
}
.regist-form-wrap input.birth_y {
    width: 50px;
}
.regist-form-wrap input.birth_md {
    width: 25px;
}
.regist-form-wrap input.checkbox {
    width: 20px;
}
dt label span{
    color: red;
    padding: 0 0 0 2em;
}
p.red{
    color: #ff0000;
}
.underline dl{
    border-bottom: 1px dotted #ccc;
    padding-bottom: 25px;
}
/*--------------------マイページ関連--------------------*/
.mypage-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1006px;
    max-width: 1006px;
    margin: 0 auto 30px;
}
.mypage-wrap .left h2{
    display: flex;
    align-items: center;
    margin: 0;
}
.mypage-wrap .left .mypage-avatar{
    width: 120px;
    height: 120px;
    margin: 0 30px 0 10px;
}
.mypage-wrap .left .mypage-avatar img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.mypage-wrap .right{
    padding-right: 40px;
}
.mypage-wrap .right .point-wrap{
    display: block;
    margin: 0 2rem 0 0;
    position: relative;
    padding-left: 60px;
}
.mypage-wrap .point-wrap::before{
    content: '';
    width: 49px;
    height: 45px;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background: left 2px center / 45px 45px no-repeat url(../images/common/icon-point-mark.png);
    background-image:
}
.point-wrap dl{
    margin: 0;
    display: flex;
    align-items: center;
}
.point-wrap dl dt{
    letter-spacing: 0.25em;
    line-height: 1;
}
.point-wrap dl dd{
    margin: 0;
    font-weight: bold;
    font-size: 1.57rem;
    line-height: 1;
}
.point-wrap dl dd span{
    font-size: 2.0rem;
}
.point-wrap a{
    font-size: 0.8rem;
    display: block;
    color: #0169ca;
    text-decoration: none;
}
.rank-wrap{
    display: block;
    position: relative;
    padding-left: 60px;
    margin-top: 15px;
}
.rank-wrap h3{
    margin: 0 0.5em 0 0;
    font-size: 16px;
    text-align: center;
    border: none;
    padding: 0;
    font-weight: normal;
}
.rank-wrap h3:before {
    content: "";
    background: none;
}
.rank-wrap p{
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 5px 0;
}
.square{
    content: '';
    width: 49px;
    height: 43px;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background:center / contain no-repeat;
}
.rank-wrap.bronze .square{
    background-image: url(../images/common/icon-rank-bronze.png);
}
.rank-text {
	margin-top: 0;
    padding-left: 60px;
}
.rank-text a{
    font-size: 0.8rem;
    display: block;
    color: #0169ca;
    text-decoration: none;
}
.mypage-message{
    max-width: 1006px;
    margin: 0 auto 40px;
}
.mypage-message .mypage-message-inner{
    border: 1px solid #e4e5e5;
    border-radius: 4px;
}
.mypage-message h3{
    font-weight: normal;
    background: #f5f5f5;
    margin: 0;
    padding: 10px;
    border-bottom: 1px solid #e4e5e5;
}
.mypage-message h3::before{
    display: none;
}
.mypage-message .mypage-message-contents{
    padding: 1em 2em;
}
.mypage-message .mypage-message-contents ul{
    list-style: none;
}
.mypage-message .mypage-message-contents a{
    color: #0169ca;
    text-decoration: none;
}
.mypage-message .mypage-message-contents .date{
    margin-right: 1em;
}
.mypage-menu{
    position: relative;
    max-width: 1006px;
    margin: 0 auto;
}
.mypage-menu ul{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.mypage-menu ul li{
    width: calc((100% - 40px) / 3);
    list-style: none;
    text-align: center;
    margin-right: 20px;
    margin-bottom: 20px;
}
.mypage-menu ul li:nth-child(3n){
    margin-right: 0;
}
.mypage-menu ul li a{
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #fff;
    font-weight: bold;
    background: #0169ca;
    text-decoration: none;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
    height: calc(130px - 40px);
    font-size: 1.375rem;
}
.mypage-menu ul li a img{
    margin-right: 0.5em;
}
.mypage-menu .mypage-menu-message a{
    background-color: #f68080;
}
.mypage-menu .mypage-menu-favorite a{
    background-color: #73b434;
    padding-left: calc(20px + 20px);
}
.mypage-menu .mypage-menu-calling a{
    background-color: #f58e32;
    padding-left: calc(20px + 20px);
    padding-right: calc(20px + 1em);
}
.mypage-menu .mypage-menu-pointuse a{
    background-color: #7587c7;
}
.mypage-menu .mypage-menu-profile a{
    background-color: #57bdc1;
}
.mypage-menu .mypage-menu-withdrawal a{
    background-color: #63514d;
    padding-left: calc(20px + 20px);
    padding-right: calc(20px + 1em);
}
.point-comfirm-wrap{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.point-comfirm-wrap .left{
    margin-right: 4rem;
}
.point-comfirm-wrap .right{
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}
.point-comfirm-wrap .right p{
    padding-right: 4rem;
}
.point-comfirm-wrap .right p span{
    font-weight: bold;
    font-size: 2.0rem;
    padding: 0 0.5rem 0 0;
}
.point-comfirm-wrap .right a p{
    font-size: 0.8rem;
    padding-right: 0;
}
.exchange-wrap {
    padding: 30px 0 50px;
    position: relative;
    max-width: 900px;
    margin: 0 auto;
}
.exchange-wrap h3 {
    display: block;
    font-size: 16px;
    border: 0;
}
.exchange-wrap h3:before{
    background: none;
}
.exchange-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.exchange-inner .left {
    display: block;
    margin: 0 4rem 0 0;
}
.exchange-inner .left p {
    margin: 10px auto;
    text-align: center;
}
.exchange-inner .middle {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    margin: 0 6rem 0 0;
}
.exchange-inner .middle input{
    padding: 5px 5px;
    font-size: 16px;
    margin-bottom: 0px;
    max-width: 95%;
}
.exchange-inner .right{

}
.exchange-inner .right input{
    width: 200px;
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.exchange-inner .right input:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.pb100{
    padding-bottom: 100px;
}
span.rank-modal{
    font-size: 15px;
    font-weight: normal;
    padding-left: 6%;
}
.rank-wrap {
    display: inline-flex;
    align-items: center;
}
.rank-wrap p{
    font-weight: bold;
}
.rank-wrap img {
    display: block;
    padding: 0 40px;
}
.rank-contents {
    max-width: 550px;
    margin: 0 auto;
}
.rank-ex dt{
    display: inline-block;
    width: 180px;
    font-weight: bold;
    padding: 5px;
    border-bottom: 1px solid #ccc;
}
.rank-ex dd{
    display: inline-block;
    text-align: center;
    width: 70px;
    margin: 0px -5px;
    padding: 5px 0 5px 40px;
    border-bottom: 1px #ccc solid;
}
p.rank-next {
    padding-left: 16%;
}
.rank-wrap02 {
    margin: 50px auto 70px;
}
.rank-ex dd.bold{
    font-weight: bold;
}
.rank-ex dd.red{
    font-weight: bold;
    color: #e02222;
}
.d-column {
    padding: 50px 0;
    position: relative;
    max-width: 960px;
    margin: 0 auto;
}
.info-wrap {
    max-width: 600px;
    margin: 50px auto 70px;
}
.info-wrap dl {
    display: flex;
}
.info-wrap dl dt {
    /* display: inline-block; */
    width: 170px;
    margin: 0;
    border-bottom: 1px #ccc dotted;
    padding: 10px;
    font-weight: bold;
}
.info-wrap dl dd{
    /* display: inline-block; */
    border-bottom: 1px #ccc dotted;
    margin: 0 0 0 -4px;
    padding: 10px;
    width: 380px;
}
.mypage-menu .mypage-menu-heading {
    font-size: 1.1875em;
    border-bottom: 1px solid #bbb;
    margin-bottom: 1em;
    padding-bottom: 0.5em;
    text-align: center;
}
.mypage-menu .mypage-menu-card a{
    background-color: #5b9bd5;
}
.mypage-menu .mypage-menu-waiting a{
    background-color: #f4be1a;
}
.mypage-menu .mypage-menu-settlement a{
    background-color: #e36753;
}

/*-------------------リスト形式ページ関連--------------------*/
.list-wrap {
    max-width: 100%;
    padding-bottom: 50px;
    margin: 0;
}
.list-item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px dotted #ccc;
}
.list-inner01 img{
    max-width: 100%;
}
.list-inner01 img:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.list-inner02 {
    padding-left: 2rem;
    width: 85%;
}
.list-inner03 {
    padding-left: 2rem;
    width: 90%;
}
.list-inner02 h3,.list-inner03 h3{
    margin: 0;
    font-size: 15px;
    text-align: left;
    border: none;
    padding: 0 0 0px;
}
.list-inner02 h3:before,.list-inner03 h3:before{
    content: "";
    background: none;
}
.list-inner02 h3:hover,.list-inner03 h3:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.list-inner02 p,.list-inner03 p{
    margin: 0;
    font-size: 15px;
}
span.chat-notice {
    background: #f19149;
    border-radius: 50%;
    color: #fff;
    padding: 3px 10px;
    margin-left: 0rem;
}
span.chat-notice:empty{
    display: none;
}
.notice-button-wrap {
    width: 100%;
    margin: 20px auto;
}
.notice-button-wrap ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.notice-button-wrap ul li{
    list-style: none;
    text-align: center;
    margin: 0 10px;
}
.notice-button-wrap ul li input{
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 20px;
    border: none;
}
.notice-button-wrap ul li input:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.notice-button-wrap ul a{
    position: relative;
    display: inline-block;
    padding: 0 0 0 15px;
    color: #000;
    font-size: 15px;
}
.notice-button-wrap ul a::before{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.notice-button-wrap ul a:before{
    left: 0px;
    box-sizing: border-box;
    width: 8px;
    height: 8px;
    border: 6px solid transparent;
    border-left: 8px solid #0969ca;
}
.notice-button-wrap ul li a{
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 20px;
}
.list-notece {
    width: 85%;
}
.dlt-wrap {
    text-align: right;
    position: absolute;
    bottom: 15px;
    right: 0;
}
.dlt-wrap input {
    width: 200px;
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.pb80 {
    padding-bottom: 80px;
}
.clinicinfo-wrap {
    margin: 0 auto 50px;
}
.clinicinfo-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px dotted #ccc;
}
.clinicinfo-inner {
    width: 100%;
    padding: 0 1rem;
}
.clinicinfo-inner p {
    margin: 5px 0;
    line-height: 1.6;
}
.clinicinfo-inner a p{
    margin: 0;
    line-height: 1.6;
}
.clinicinfo-inner a p:hover{
opacity: 0.7;
transition: 0.5s;
}
.clinicinfo-button-wrap {
    text-align: center;
}
.clinicinfo-button-wrap .button-basic {
    width: auto;
    max-width: 100%;
}
.clinicinfo-button-wrap .button-basic span {
    display: inline-block;
}

/*-------------------クリニック予約・お知らせページ関連--------------------*/
.c_list-wrap {
    max-width: 100%;
    padding-bottom: 20px;
}
.c_list-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 25px;
}
.c_list-item h3{
    font-size: 14px;
    font-weight: normal;
    border: none;
    color: #444;
    margin: 0;
}
.c_list-item h3:before{
    background: none;
}
.c_list-item .name{
    width: 45%
}
.c_list-item .name p.time {
    font-size: 0.9rem;
    margin: 0 auto 5px;
}
.c_list-item .date{
    width: 17%;
    font-size:14px;
}
.c_list-item .date p{
    word-break: break-all;
}
.c_list-item .action{
    width: 38%;
    display: flex;
}
/* .c_list-item .action input{
    width: 150px;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 20px;
    border: none;
    margin: 0 auto 10px;
} */
.c_list-item .action input:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.c_list-item .title{
    width: 30%
}
.c_list-item .status{
    width: 15%
}
.news-button {
    position: relative;
    margin: 0 auto 40px;
}
.news-button input{
    width: 200px;
    background: #0169ca;
    list-style: none;
    color: #fff;
    text-decoration: none;
    padding: 20px 20px;
    border: none;
    margin: 0 auto 10px;
}
.news-button input:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.c_news_form {
    max-width: 800px;
    padding-bottom: 50px;
}
.c_news_form dl dt{
    display: block;
    font-weight: normal;
    width: 100%;
}
.c_news_form dl dd{
    margin: 0 auto 25px;
}
.c_news_form dl dd input.news_title{
    width: 100%;
    border: 1px solid #ccc;
    padding: 0.5em;
    font-size: 1em;
}
.c_news_form dl dd textarea{
    width: 95%;
    border: 1px solid #ccc;
    padding: 0.5em;
    font-size: 1em;
    font-weight: normal;
}
.c_news_form p input[type=radio]{
    margin-left: 3rem;
}
.news_form_button {
    display: flex;
    justify-content: center;
    margin: 50px auto 30px;
}
.news_form_button input{
    width: 200px;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 20px;
    border: none;
    margin: 0 10px;
}
.news_form_button input:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.clinic-sidebar{
    width: 35%;
    max-width: 358px;
    margin-left: 20px;
    position: relative;
    padding-bottom: 30px;
}
.clinic-sidemenu{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 40px;
}
.clinic-sidemenu ul{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.clinic-sidemenu ul li{
    position: relative;
    list-style: none;
    margin-bottom: 20px;
    width: 100%;
}
.clinic-sidemenu ul li a{
    display: block;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 20px;
    text-decoration: none;
}
.clinic-sidemenu ul li:first-child{
    background: #00a2ee;
}
.clinic-sidemenu ul li:nth-child(2){
    background: #f5807f;
}
.clinic-sidemenu ul li:nth-child(3){
    background: #73b434;
}
.clinic-sidebutton ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 800px;
    margin: 0 auto;
}
.clinic-sidebutton ul li{
    list-style: none;
    width: 46%;
}
.clinic-sidebutton ul li a{
    display: block;
    margin-bottom: 20px;
    font-size: 0.9rem;
    text-decoration: none;
    text-align: center;
    background-size: 80% auto;
    background-position: top center;
    background-repeat: no-repeat;
    padding-top: calc(80% + 1rem);
}
.clinic-sidebutton ul li:first-child a{
    background-image: url(../images/common/icon-registration.png);
}
.clinic-sidebutton ul li:nth-child(2) a{
    background-image: url(../images/common/icon-update.png);
}
.clinic-sidebutton ul li:nth-child(3) a{
    background-image: url(../images/common/icon-inquiry.png);
}
.clinic-sidebutton ul li:nth-child(4) a{
    background-image: url(../images/common/icon-withdrawal.png);
}
.clinicinfodetail-header h2{
    position: relative;
    padding: 5px 0;
    border-bottom: 5px solid #88b5df;
    font-weight: bold;
    font-size: 1.5rem;
    margin: 30px auto;
}
.clinicinfodetail-header h2:before {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 20%;
    height: 5px;
    content: "";
    background: #c8d3dd;
}
.clinicinfodetail-wrap {
    margin: 0 auto 50px;
}
.clinicinfodetail-wrap h2 {
    font-size: 1.3rem;
    color: #0769c8;
    border: none;
    margin: 10px 0 15px;
    border-left: 7px solid #0769c8;
    padding: 3px 0 0px 10px;
    line-height: 1.4;
}
.clinicinfodetail-wrap h3{
    border-bottom: none;
}
.clinicinfodetail-wrap h3:before {
    position: absolute;
    bottom:0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background: transparent;
}
.clinicinfodetail-button {
	display: flex;
	justify-content: center;
}


/*-------------------クリニック側申請フォーム関連--------------------*/
.c-app-wrap {
    max-width: 960px;
    margin: 50px auto 70px;
}
.c-app-wrap dl {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 30px auto;
}
.c-app-wrap dl dt {
    display: inline-block;
    font-weight: normal;
    width: 20%;
    margin: 0;
}
.c-app-wrap dl dd {
    display: inline-block;
    width: 73%;
}
.c-app-wrap input {
    width: 550px;
    border: 1px solid #ccc;
    padding: 0.5em;
    font-size: 1em;
}
.c-app-wrap input.name {
    width: 350px;
}
.submit-wrap {
    margin: 50px auto 0;
    text-align: center;
    padding-bottom: 20px;
}
.c-app-wrap input[type=submit] {
    width: 200px;
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.c-app-wrap input.applicable {
    width: 400px;
}
.c-app-wrap input[type=submit]:hover{
    opacity: 0.7;
    transition: 0.5s;
}
.c-app-wrap dt span,.c-app-wrap dd span {
    color: red;
    padding: 0 1em 0 0em;
    font-size: 0.9rem;
    display: inline-block;
}
.c-app-wrap dt span{
	margin-left:10px;
}
.c-app-wrap dd p {
    font-size: 0.9rem;
    margin: 10px 0;
    display:inline-block;
}
.c-app-wrap dd ul,.c-app-wrap dd li{
	list-style:none;
	margin-left:0;
	padding-left:0;
}
.c-app-wrap input[type=radio]{
    width: 4%;
}
.c-app-wrap input[type=checkbox]{
    width: 4%;
}
p.term-check {
    text-align: center;
    margin: 50px 0 0;
}

/* STEP表示 */

.flow-wrap{
	position:relative;
    display: flex;
    justify-content: space-between;
    margin: 0 0 50px;
    width: 100%;
    padding:0;
}
.flow-wrap .flow-inner{
	position:relative;
	text-align:center;
	text-transform:uppercase;
	width:calc(100% / 4);
	color:#999;
	font-weight:bold;
	counter-increment:steps;
}
.flow-wrap .flow-inner:before{
	display:block;
	width:30px;
	height:30px;
	margin:5px auto 20px;
	content:"";
	line-height:30px;
	font-size:12px;
	text-align:center;
	border-radius:50%;
	background-color:#f5f5f5;
	content:counter(steps);
}
.flow-wrap .flow-inner:after{
	position:absolute;
	z-index:-1;
	width:100%;
	top:17px;
	left:-50%;
	height:2px;
	content:"";
	background-color:#f5f5f5;
}
.flow-wrap .flow-inner:first-child:after{
	content:none;
}
.flow-wrap .flow-inner.active,.flow-wrap .flow-inner.complete{
	color:#0070BD;
}
.flow-wrap .flow-inner.active:before,.flow-wrap .flow-inner.complete:before{
	background-color:#0070BD;
	color:#fff;
}
.flow-wrap .flow-inner.active:after,.flow-wrap .flow-inner.complete:after{
	background-color:#0070BD;
}

.c-name-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.c-name-list dl.left{
    display: block;
    width: 50%;
    margin: 0;
    padding: 15px;
    border: 1px solid #ccc;
}
.c-name-list dl.right{
    display: block;
    width: 40%;
    margin: 0;
    padding: 15px;
    border: 1px solid #ccc;
}
.c-name-list dl span {
    display: block;
    line-height: 1.5;
    font-size: 14px;
    color: #444;
    margin: 15px 0 20px;
}
.c-name-list dl dt {
    font-weight: bold;
    width: 100%;
}
.c-name-list dl dd{
    width: 100%;
}
.c-name-list dl dd a{
    display: block;
    margin-bottom: 15px;
}
.c-app-wrap textarea {
    border: 1px #ccc solid;
}
.c-app-wrap dl dd.adjust,.c-app-wrap dl dd label.adjust{
    padding-left: 53px;
}
.c-app-wrap dl dd.adjust02{
    padding-left: 60px;
}
.c-app-wrap dl dd label.adjust{
    padding-left: 60px;
}
.c-app-wrap select{
    padding: 7px;
    margin-left: 0.5rem;
    border: 1px solid #ccc;
}
.c-app-wrap input.tel,input.address,input.station{
    width: 400px;
}
.submit-app input[type=submit] {
    margin: 0 20px;
}
p.address-p {
    display: inline-block;
    font-size: 1.0rem!important;
    margin: 10px 0;
    padding: 0 0.8rem 0 60px;
}

dl#kodawari-area,dl#osusume-area{
    width: 100%;
}

dl#kodawari-area dt,dl#osusume-area dt{
    vertical-align: top;
}
div#kodawari-plus,div#osusume-plus{
    text-align: center;
}
.c-app-wrap dl#kodawari-area dd.adjust,.c-app-wrap dl#osusume-area dd.adjust{
    padding-left: 48px;
}
.c-app-wrap dl#kodawari-area dd.adjust>.kodawari-part,.c-app-wrap dl#osusume-area dd.adjust>.osusume-part{
    display:flex;
    align-items:center;
}
.c-app-wrap dl#kodawari-area dd.adjust .kodawari_form,.c-app-wrap dl#osusume-area dd.adjust .osusume_form{
	width:calc(100% - 35px);
	margin-right:10px;
	padding-right:10px;
	border-right:1px dotted #ccc;
	margin-bottom:20px;
}
.kodawari-btn,.osusume-btn{
    margin: 10px auto 30px;
}
#kodawari .kodawari-btn span,#osusume .osusume-btn span{
    background: #f00;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 8px 0px 7px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
    margin: 0 0 0 10px;
}
div#kodawari-plus,div#osusume-plus{
    text-align: center;
    margin: 0px auto 60px;
}
#kodawari-plus span,#osusume-plus span{
    background: #0469c9;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 8px 0px 7px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
    margin: 0 0 0 10px;
}

.kodawari-contents{
    display: flex;
    justify-content: space-between;
}
.kodawari-text{
    margin-right: 1em;
}
.kodawari-image{
    max-width: 256px;
}
.osusume-contents{
    display: flex;
    justify-content: space-between;
}
.osusume-text{
    margin-right: 1em;
    flex: 1;
}
.osusume-image{
    max-width: 256px;
    flex-basis: 256px;
}

div#time-plus span{
    background: #0469c9;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 8px 0px 7px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
    margin: 0 0 0 10px; 
}
.exa {
    margin: 20px auto 20px;
    border-bottom:1px dotted #ccc;
    padding-bottom:20px;
}
.exa .left{
    width: 20%;
    margin: 0;
}
.exa .left dl dt{
    width: 100%;
}
.exa .right {
    padding-left: 0;
}
.exa .right dl{
    display: block;
    margin: 0 0 25px;
}
.exa .right dl.week{
    display: flex;
    flex-wrap:nowrap;
    margin: 0 0 10px;
    width: 100%;
    align-items: center;
}
.exa .right dl dt{
    width: 220px;
    font-size: 14px;
}
.exa .right dl dd{
    margin-bottom: 5px;
}
input.time {
    width: 70px;
    margin: 0 7px 5px;
}
.exa .right dl dd input[type=checkbox] {
    width: 11.5%;
    margin: 0;
}
.exa .right dl.week span {
    color: red;
    padding: 0 6px 0 0;
    font-size: 0.9rem;
    display: inline-block;
}
.exa .right dl.week span.dow-name {
    color: #232323;
    padding: 0;
    font-size: 0.8rem;
    display: inline-block;
    text-align: center;
    font-weight: 600;
    width: 11.5%;
}
dl.plus-title {
    text-align: left;
}
.exa .right dl dd {
    display: flex;
    align-items:center;
    width: calc(100% - 220px);
}
.acd-check{
    display: none;
}
.acd-label{
    background: none;
    color: #232323;
    display: inline-block;
    margin: 30px 0 10px;
    padding: 10px;
    position: relative;
}
.acd-label:after{
    box-sizing: border-box;
    content: '＋';
    height: 33px;
    position: absolute;
    right: -2.0rem;
    top: 4px;
    background: #0469c9;
    color: #fff;
    font-weight: 500;
    font-size: 1.1rem;
    padding: 8px 0px 7px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
}
.acd-content{
    display: block;
    height: 0;
    opacity: 0;
    padding: 0x;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: 'ー';
    background: #f00;
}
.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    padding: 0;
    visibility: visible;
}
.add-wrap {
    text-align: center;
    margin: 0 auto 50px;
}
.add-wrap a span{
    background: #0469c9;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 8px 0px 7px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
    margin: 0 0 0 10px;
}
.time-minus {
    margin: 5px auto;
    width:35px;
}
.exa .right dl.week .time-minus span,#kodawari .time-minus span,#osusume .time-minus span,#watingroom .time-minus span{
    background: #f00;
    color: #fff;
    font-size: 1.5rem;
    padding: 5px 0px 3px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
}
.plus-btn span {
    background: #0469c9;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 8px 0px 7px;
    width: 35px;
    display: inline-block;
    line-height: 1;
    text-align: center;
    margin: 0 0 0 10px;
}

.exa .right dl.week-first span.dow-name {
    color: #232323;
    padding: 0;
    font-size: 0.8rem;
    display: inline-block;
    text-align: center;
    font-weight: 600;
}
.exa .right dl.week-second dd input[type=checkbox] {
    margin: 0;
}

span.publish {
    display: block;
    text-align: center;
    background: #0469c9;
    color: #fff;
    font-size: 12px;
    padding: 6px 0px 4px;
    width: 50%;
    margin: 3px 0;
}
.c-name-list h3{
    position: relative;
    padding: 0;
    border-bottom: none;
    font-weight: bold;
    font-size: 1.1rem;
    margin: 0 0 20px;
    width: 100%;
}
.c-name-list h3:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background: none;
}
input.add-number {
    width: 200px;
    margin-left: 8px;
}
button.sele-pref {
    width: 100px!important;
    display: inline-block;
    background: #888;
    text-align: center;
    color: #fff!important;
    padding: 5px 5px 3px!important;
    margin: 0 0 0 10px;
    font-size: 0.9rem;
    border: none;
}
button.sele-pref:hover{
    opacity: 0.8;
    transition: 0.5s;
}
.c-info-wrap dl.subject-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 25px auto;
}
.c-info-wrap dl.subject-wrap dd {
    display: flex;
}
.c-info-wrap dl.subject-wrap dd .left{
    margin: 0;
}
.c-info-wrap dl.subject-wrap dd .right{
    margin: 0 0 20px;
    line-height: 1.5;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.c-info-wrap dl.subject-wrap dd .right span{
    display: block;
    width: 100%;
    color: #222;
    font-size: 16px;
    font-weight: 600;
    margin: 0px 0 10px
}
.c-info-wrap dl.subject-wrap dd .right label{
    display: inline-block;
    width: 33%;
    font-size: 13px;
    margin: 0 0 10px;
}
.c-info-wrap dl.subject-wrap dd .right label input[type=checkbox] {
    width: 15%;
    margin: 0 0 0;
}
.c-info-wrap dl.subject-wrap dd .right .w100 label{
    width: auto
}
.c-info-wrap dl.subject-wrap dd .right .w100 label input[type=checkbox] {
    width: auto;
}
input.consultation {
    margin: 10px 0;
}
label.pic-method {
    margin: 15px 0 -5px;
    display: block;
}
input.posted-pic {
    border: none;
    margin: 5px 0;
}
span.sm-txt {
    width: 100%!important;
    display: block;
    font-size: 0.9rem;
    margin: 0px 0 5px;
    color: #222!important;
}
span.blue-txt {
    color: #0769c8;
    font-size: 0.9rem;
    font-weight: 600;
}
p.agree-check {
    text-align: center;
}
p.agree-check input {
    width: 2%!important;
}
/*-------------------チャットページ関連--------------------*/
.chat-enter {
    margin: 30px 0 50px;
    display: block;
    width: 94%;
}
.chat-enter dl dd{
    padding: 10px 0;
    margin: 0;
}
.chat-enter dl dd textarea{
    padding: 10px 1%;
    font-size: 15px;
    width: 100%;
    border: 1px #ccc solid;
}
.chat-enter dl dd.smt-wrap{
    text-align: center;
}
.chat-enter input[type="submit"]{
    width: 200px;
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.chat-enter input[type="submit"]:hover{
    transition: 0.5s;
    opacity: 0.7;
}
.chat-wrap {
    background: #fbfdff;
    padding: 30px;
    border-top: 2px solid #ddd;
    border-bottom: 2px solid #ddd;
    overflow: scroll;
    min-height: 400px;
    max-height: 400px;
    width: 90%;
}
.chat-contents {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 20px 0
}
.chat-contents .date{
    margin-right: 3%;
}
.chat-contents .date p{
    font-size: 12px;
    margin: 0;
}
.chat-contents .msg p{
    font-size: 13px;
    margin: 0 0 5px;
    text-align: right;
}
.opp-msg-wrap {
    max-width: 100%;
    padding: 15px;
    border-radius: 10px;
    background: #f1f1f1;
    position: relative;
    display: inline-block;
}
.user-msg-wrap {
    max-width: 100%;
    padding: 15px;
    border-radius: 10px;
    background: #b3d8ff;
    position: relative;
    display: inline-block;
}
.chat-contents .opp-msg-wrap p,.chat-contents .user-msg-wrap p{
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
    text-align: left;
}
.opp-msg-wrap:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -20px;
    margin-top: -10px;
    border: 10px solid transparent;
    border-right: 10px solid #f1f1f1;
}
.user-msg-wrap:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -10px;
    border: 10px solid transparent;
    border-left: 10px solid #b3d8ff;
}
/*-------------------管理者画面関連--------------------*/
.admin-contents{
    width: 100%;
    padding-top: 20px;
}
.mypage-menu ul li.edit a {
    padding: 9px 0 7px;
}
.admin-sidebar {
    width: 35%;
    max-width: 358px;
    margin-left: 20px;
    position: relative;
}
.admin-sidebar ul li {
    list-style: none;
    width: 100%;
}
.admin-sidebar ul li a {
    display: block;
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
    margin-bottom: 20px;
    background: #f19149;
    color: #fff;
    font-weight: bold;
    font-size: 1.2rem;
    text-decoration: none;
    text-align: center;
    padding: 20px;
}
.a_list-wrap01 {
    padding-bottom: 20px;
}
.a_list-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 25px;
}
.a_list-item .name {
    width: 50%;
}
.a_list-item .comment {
    width: 10%;
}
.a_list-item .comment span {
    display: inline-block;
    background: #f00;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    position: absolute;
    left: 45px;
}
.a_list-item .date {
    width: 15%;
}
.a_list-item .date p{
    font-size: 0.9rem;
}
.a_list-item .action {
    width: 25%;
}
.a_list-item h3 {
    font-size: 15px;
    font-weight: normal;
    border: none;
    color: #444;
    margin: 0;
}
.a_list-item h3:before {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 20%;
    height: 5px;
    content: "";
    background: none;
}
.a_list-item .action input {
    width: 200px;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 20px;
    border: none;
    margin: 0 auto 10px;
}
.a_list-item .action input:hover{
    opacity: 0.7;
    transition: 0.5s;;
}
.admin_app_list {
    max-width: 100%;
    padding-bottom: 20px;
}
.admin_app_item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 25px;
}
.admin_app_item h3{
    font-size: 14px;
    font-weight: normal;
    border-bottom:none;
}
.admin_app_item h3:before {
    position: absolute;
    content: "";
    background: none;
}
.admin_app_item .c_name{
    width: 20%;
}
.admin_app_item .app_date{
    width: 10%;
}
.admin_app_item .app_date p{
    font-size: 14px;
}
.admin_app_item .type{
    width: 5%;
    font-size: 15px;
}
.admin_app_item .status{
    width: 10%;
    font-size: 15px;
}
.admin_app_item .memo{
    width: 20%;
}
.admin_app_item .memo p{
    font-size: 14px;
}
.admin_app_item .app_action{
    width: 35%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.admin_app_item .app_action input {
    width: 40%;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 0px;
    border: none;
    margin: 0 auto 10px;
}
.admin_app_item .app_action input.mini {
    width: 25%;
}
.admin_app_item .c_name p:hover,.admin_app_item .app_action input:hover {
    opacity: 0.7;
    transition: 0.5s;
}
.admin_review_list {
    max-width: 100%;
    padding-bottom: 20px;
}
.admin_review{
    position: relative;
}
.admin_review_check{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-70%);
}
.admin_review_item, .admin_report_item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 25px;
}
.admin_review_item h3, .admin_report_item h3{
    font-size: 1rem;
    font-weight: normal;
    border-bottom:none;
}
.admin_review_item h3:before, .admin_report_item h3:before{
    position: absolute;
    content: "";
    background: none;
}
.admin_review_item .review_action, .admin_report_item .report_action{
    width: 6em;
}
.admin_review_item .review_action input, .admin_report_item .report_action input{
    width: 100%;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 0px;
    border: none;
    margin: 0 auto 10px;
    cursor: pointer;
}
.admin_review_item .r_title{
    width: calc(58% - 21.5em);
    font-size: 1.375em;
    font-weight: bold;
}
.admin_review_item .c_name{
    width: calc(42% - 21.5em);
}
.admin_review_item .c_name p{
    font-weight: bold;
}
.admin_review_item .s_date, .admin_review_item .r_date{
    width: 9.5em;
    text-align: center;
}
.admin_review_item .rate{
    width: 2em;
    text-align: center;
}
.admin_review_item .rate p{
    font-size: 1.25em;
    font-weight: bold;
}
.admin_review_item .status{
    width: 5em;
    text-align: center;
}
.admin_review_item .status p{
    font-size: 1.25em;
    font-weight: bold;
}
.admin_review_item .poster{
    width: 11em;
}
.admin_review_item .r_title p:hover, .admin_review_item .c_name p:hover, 
.admin_review_item .poster p:hover, .admin_review_item .review_action input:hover {
    opacity: 0.7;
    transition: 0.5s;
}
.admin_report_item .r_title{
    width: calc(40% - 9em);
    font-size: 1.375em;
    font-weight: bold;
}
.admin_report_item .c_name{
    width: calc(28% - 9em);
    font-weight: bold;
}
.admin_report_item .comment{
    width: calc(33% - 9em);
    font-weight: bold;
}
.admin_report_item .s_date{
    width: 12em;
    text-align: center;
}
.admin_report_item .status{
    width: 9em;
    text-align: center;
}
.admin_report_item .status p{
    font-size: 1.25em;
    font-weight: bold;
}
.admin_report_item .status .unsupported{
    color: #f00;
}
.admin_report_item .r_title p:hover, .admin_report_item .c_name p:hover, 
.admin_report_item .comment p:hover, .admin_report_item .report_action input:hover {
    opacity: 0.7;
    transition: 0.5s;
}
.admin .modal-review .certificate{
	background:#eee;
	padding:10px 20px;
	margin-top:20px;
}
.modal-review, .modal-report{
    max-width: 1256px;
    overflow-x: hidden;
    overflow-y: auto;
}
.modal-review .modal-review-inner, .modal-report .modal-report-inner{
    max-width: 1024px;
    margin: 0 auto;
}
.modal-review h4, .modal-report h4{
    color: #000;
    font-size: 1em;
}
.modal-review .review-comment, .modal-report .report-comment{
    margin-top: 1em;
}
.modal-review .review-comment p, .modal-report .report-comment p{
    margin: 0;
}
.modal-review .request-date, .modal-report .request-date{
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    margin: 50px 0 60px;
}
.modal-review .request-date dt, .modal-report .request-date dt{
    margin: 0 2em 0 0;
}
.modal-review .request-button-wrap,
.modal-report .request-button-wrap{
    display: flex;
    justify-content: center;
    align-items: center;
}
.modal-review .request-button input, .modal-report .request-button input{
    width: 100%;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 0px;
    border: none;
    border-radius: 0;
    margin: 0 auto 10px;
    font-weight: normal;
}
.modal-review .request-button:not(:first-child),
.modal-report .request-button:not(:first-child){
    margin-left: 50px;
}
.modal-review .modal-review-inner{
    padding: 30px;
}
.modal-review .clinic-stars img{
    width: 28px;
    height: 27px;
}
.modal-review.modal-comment .poster-info{
    justify-content: left;
}
.modal-review .review-contents .poster-info{
    display: flex;
    justify-content: left;
    align-items: center;
}
.modal-review .review-contents .poster-info p{
    font-size: 0.75rem;
}
.modal-review .review-contents .poster-info img{
    width: 23px;
    height: 23px;
    margin-right: 1em;
}
.modal-review .request-button{
    width: 220px;
}
.modal-report .report-item{
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #eef7fC;
    padding: 30px;
}
.modal-report .report-item h3{
    width: 9em;
    font-size: 1em;
    font-weight: normal;
    padding: 0;
    margin: 1em 0;
}
.modal-report .report-item .report-contents{
    max-width: 280px;
}
.modal-report .report-item h4{
    font-weight: normal;
    margin: 0;
}
.modal-report .report-item .poster-info{
    display: flex;
    align-items: center;
    margin-top: 10px;
}
.modal-report .report-item .poster-info img{
    width: 50px;
    height: 50px;
    margin-right: 20px;
}
.modal-report .report-item figure{
    width: 31.25%;
    margin: 0 0 0 1em;
}
.modal-report .report-item figure img{
    width: 100%;
    height: auto;
}
.modal-report .report-info{
    max-width: 500px;
    margin: 50px auto;
}
.modal-report .report-info-comment{
    margin-top: 1em;
}
.modal-report .report-info-comment p{
    margin: 0;
}
.modal-report .request-button{
    width: 183px;
}
.modal-report .request-button:first-child{
    width: 276px;
}
.admit_wrap {
    max-width: 75%;
    padding-bottom: 20px;
    margin: 0 auto;
}
.admit_submit_wrap{
    display: flex;
    flex-wrap: wrap;
    width: 65%;
    margin: 0 auto 50px;
}
.admit_submit_wrap input{
    width: 45%;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 20px 0px;
    border: none;
    margin: 0 auto 10px;
}
.admit_submit_wrap input:hover{
    opacity: 0.7;
    transition: 0.5s;
}
.admit_wrap dl {
    display: flex;
    align-items: flex-start;
    margin: 25px 0;
    padding-bottom: 25px;
    border-bottom: 1px dotted #ccc;
}
.admit_wrap dl dt{
    width: 25%;
    display: inline-block;
}
.admit_wrap dl dd{
    display: inline-block;
    width: 74%;
    margin: 0;
}
.mt50{
    margin-top: 50px;
}
.admit_wrap dl dd select{
    padding: 7px;
    border-radius: 0;
    font-size: 16px;
    border: 1px solid #b9b9b9;
    width: 200px;
}
.admit_wrap dl dd textarea {
    padding: 10px 1%;
    font-size: 16px;
    width: 70%;
    border: 1px solid #b9b9b9;
}
dl.memo_area dd{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}
dl.memo_area dd input{
    width: 20%;
    height: 100%;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 0px;
    border: none;
    margin: 0 auto 5px;
}
dl.memo_area dd input:hover{
    opacity: 0.7;
    transition: 0.5s;
}
dl.exa_time {
    padding: 0;
    margin: 0 0 20px;
    border: none;
}
dl.exa_time dd{
    display: flex;
}
dl.exa_time dd .left{
    display: inline-block;
    width: 10%;
}
dl.exa_time dd .right{
    display: inline-block;
}
dl.appli {
    border-top: 1px dotted #ccc;
    padding-top: 25px;
}
h2.clinic_name:after {
    content: '';
    display: inline-block;
    width: 50px;
    height: 50px;
    background-image: url(../images/common/c-sideicon01.png);
    background-size: contain;
    vertical-align: middle;
    margin-left: 20px;
}
.admin_point_wrap {
    margin-top: 70px;
}
.admin_point_wrap h3{
    font-size: 18px;
    border: none;
    color: #444;
    margin: 0;
}
.admin_point_wrap h3:before {
    position: absolute;
    content: "";
    background: none;
}
.admin_point_wrap h3:after {
    content: '';
    display: inline-block;
    width: 50px;
    height: 50px;
    background-image: url(../images/common/c-sideicon01.png);
    background-size: contain;
    vertical-align: middle;
    margin-left: 25px;
}
.admin_point_wrap dl{
    margin: 20px 0;
    padding-bottom: 20px;
}
.admin_point_wrap dl dt{
    font-size: 15px;
    width: 20%;
    display: inline-block;
}
.admin_point_wrap dl dd{
    font-size: 15px;
}
.a_list-item h3 {
    font-size: 15px;
    font-weight: normal;
    border: none;
    color: #444;
    margin: 0;
}
.a_list-item h3:before {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 20%;
    height: 5px;
    content: "";
    background: none;
}
.admin_c_list {
    max-width: 100%;
    padding-bottom: 20px;
}
.admin_c_item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 25px;
}
.admin_c_item .c_name{
    width: 30%;
}
.admin_c_item .comment{
    width: 10%;
    text-align: center;
}
.admin_c_item .day{
    font-size: 15px;
    width: 10%;
    text-align: center;
}
.admin_c_item .regidt{
    font-size: 15px;
    width: 10%;
    text-align: center;
}
.admin_c_item .type{
    width: 10%;
    text-align: center;
}
.admin_c_item .action{
    width: 26%;
}
.admin_c_item .action input {
    width: 200px;
    background: #0169ca;
    list-style: none;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 15px 0px;
    border: none;
    margin: 0 auto 10px;
}
.admin_c_item .action input:hover {
    opacity: 0.7;
    transition: 0.5s;
}
.admin_review_item.status2 a, .admin_review_item.status2 p,
.admin_report_item.status2 a, .admin_report_item.status2 p{
    color: #ccc;
    text-decoration: none;
}
.admin_review_item.status2 .review_action input, .admin_report_item.status2 .report_action input{
    background: #ddd;
}
.admin_review_item.status2 *:hover, .admin_report_item.status2 *:hover{
    opacity: 1 !important;
    cursor: default;
}
.admin_review_item.status0 .status p, .admin_report_item.status0 .status p{
    color: #f00;
}
.admin_review_item.status1 .status p{
    color: #73b434;
}
.admin_report_item.status1 .status p{
    color: #88b5df;
}
.admin .main-contents {
    font-size: 15px;
}
.admin .certificate img {
    cursor: pointer;
}
.admin .review-image {
    display: inline-block;
    margin: 0;
}
.admin .review-image.image_large {
    width: 100%;
    height: auto;
}
.admin .review-image.image_large img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.admin fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}
.admin_u-info .form-unit {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 1em auto 2em;
}
.admin_u-info .form-unit > * {
    margin: 1em 0 0 2em;
}
.admin_u-info .form-unit-words {
    margin-left: 0;
}
.admin_u-info .form-unit-words label {
    display: inline-block;
    margin-right: 1em;
}
.admin_u-info .form-unit-words input[type="text"] {
    box-sizing: border-box;
    width: 26em;
    max-width: 100%;
}
.admin_u-info .form-unit-words input[type="text"]:focus::placeholder {
    color: transparent;
}
.admin_u-info .admin_c_item > div {
    text-align: center;
}
.admin_u-info .u_id {
    flex-basis: 6em;
    text-align: center;
}
.admin_u-info .u_name {
    flex-basis: 16em;
    flex: 1;
    min-width: 8em;
}
.admin_u-info .c_id {
    flex-basis: 16em;
    text-align: center;
    min-width: 8em;
}
.admin_u-info .date {
    flex-basis: 12em;
    text-align: center;
}
.admin_u-info .status {
    flex-basis: 8em;
    text-align: center;
}
.admin_u-info .action {
    flex-basis: 200px;
    text-align: center;
}
.admin_u-info .a_list-item .action input {
    margin: 0;
}
.admin_u-info .a_list-item .status p {
    font-weight: bold;
}
.admin_u-info .a_list-item.status0 .status p {
    color: #f00;
}
.admin_u-info .a_list-item.status1 .status p{
    color: #73b434;
}
.admin_u-info .a_list-item.status2 .status p {
    color: #ccc;
}

/*-------------------症状から探すページ--------------------*/
.symp-details-wrap {
    margin: 50px 0 0;
}
.symp-details-wrap h2{
    position: relative;
    padding: 5px 0;
    border-bottom: 5px solid #88b5df;
    font-weight: bold;
    font-size: 1.3rem;
    color: #0469c9;
}
.symp-details-wrap h2:before {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 20%;
    height: 5px;
    content: "";
    background: #c8d3dd;
}
.symp-details-inner {
    max-width: 950px;
    margin: 30px auto 50px;
    display: flex;
    padding-bottom: 30px;
    flex-wrap: wrap;
}
.symp-details-inner a{
    text-decoration: none;
    width: 43%;
    margin: 0 1% 2%;
    border: 2px solid #ccc;
    padding: 15px 20px;
}
.symp-details-inner a:hover{
    opacity: 0.7;
    transition: 0.5s all;
    transform: scale(1.03,1.03);
}
a .symp-list h3{
    font-size: 16px;
    padding: 5px 0;
    border-bottom: none;
    font-weight: bold;
    margin: 0 0 5px;
}
a .symp-list h3:before {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 0px;
    content: "";
    background:none;
}
a .symp-list p{
    font-size: 14px;
    text-decoration: none;
    margin: 0;
    color: #555;
}
p.symp-nmb {
    margin: 50px 0 30px;
}
p.symp-nmb span.cnt{
    font-weight: bold;
    color: #ef81a0;
    font-size: 1.3rem;
    margin-right: 0.3rem;
}
p.symp-nmb span{
    font-size: 0.9rem;
}
.symp-column-header{
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    border-bottom: 5px solid #88b5df;
    padding: 0 0 10px;
    margin-bottom: 30px;
}
.symp-column-header:before {
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 20%;
    height: 5px;
    content: "";
    background: #c8d3dd;
}
.symp-column-wrap h2{
    position: relative;
    margin: 10px auto 0 0;
    line-height: 1.2;
    border-bottom: none;
    font-weight: bold;
    font-size: 1.5rem;
    color: #333;
    letter-spacing: 2px;
}
span.head_ruby {
    display: block;
    margin: 0 0 5px;
    color: #444;
    font-size: 0.8rem;
    font-weight: normal;
    letter-spacing: 0px;
}
.clinic_date {
    display: flex;
    align-items: center;
}
.clinic_date img{
    width: 60px;
}
.clinic_date p{
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 0 0 5px;
}
.clinic_date p small{
    font-weight: 100;
    border-bottom: 2px solid #f19149;
    line-height: 2.5;
}
.symp-column-contents{
    width: 90%;
    margin: 0 auto 20px;
    border: 1px solid #ccc;
    padding: 25px;
}
.symp-column-wrap h2.symp-column-heading {
    position: relative;
    margin: 0;
    padding: 0 0 10px;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
    font-size: 1.3rem;
    color: #0469c9;
}
.symp-column-wrap h2.symp-column-heading:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background: none;
}
.symp-column-contents p{
    font-size: 15px;
    line-height: 1.7;
    margin: 30px 0 0;
    color: #333;
    padding: 0 10px;
}
.doctor-wrap {
    width: 85%;
    border: 3px solid #ccc;
    margin: 50px auto 30px;
    padding: 20px 30px;
}
.doctor-wrap .top{
    display: flex;
    align-items: flex-start;
}
.doctor-wrap img{
    width: 130px;
}
.doctor-detail {
    padding: 0 0 0 30px;
}
.doctor-detail p {
    font-size: 1.1rem;
    font-weight: 600;
    color: #f19148;
    margin: 10px 0 20px;
}
.doctor-detail p.clinic {
    font-weight: normal;
    font-size: 0.85rem;
    color: #444;
    margin: 0;
}
.doctor-detail p.name {
    font-size: 1.15rem;
    color: #333;
    margin: 5px 0;
}
.doctor-detail p.detail {
    font-size: 0.9rem;
    color: #444;
    font-weight: 100;
}
.doctor-wrap .bottom ul a{
    text-decoration: none;
    font-size: 0.9rem;
    color: #0469c9;
}
.doctor-wrap .bottom ul a:hover{
    opacity: 0.7;
    transition: 0.5s;
}
.doctor-wrap .bottom ul a li{
    list-style: none;
    background: #ececec;
    padding: 10px;
    margin: 15px 0;
}
.doctor-wrap .bottom ul a li:hover{
    opacity: 0.7;
    transition: 0.5s;
}
p.symp-column-date {
    margin: -10px 0 30px;
    /* text-align: right; */
    font-size: 0.9rem;
    padding: 0 2% 0 0;
}
p.symp-column-date:before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(../images/common/date-icon.png);
    background-size: contain;
    vertical-align: middle;
    margin: -4px 5px 0 0;
  }
.symp-match-contents {
    width: 95%;
    margin: 0 auto 20px;
    padding: 25px 0;
}
/* .symp-list-contents {
    width: 95%;
    margin: 0 auto 50px;
    padding: 0;
}
.symp-list-contents h2 {
    position: relative;
    margin: 0;
    padding: 0 0 10px;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
    font-size: 1.3rem;
    color: #0469c9;
}
.symp-list-contents h2:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background: none;
}
.symp-list-contents ul a{
    text-decoration: none;
}
.symp-list-contents ul li{
    list-style: none;
    border-bottom: 1px dotted #ccc;
    padding: 0px 0 25px;
}
.symp-list-contents img{
    margin-right: 20px;
}
.symp-list-contents ul li h3 {
    color: #0169ca;
    font-size: 1.2rem;
    font-weight: bold;
    margin-top: 15px;
    margin-bottom: 0px;
    border: none;
}
.symp-list-contents ul li h3:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background:none;
}
.symp-list-contents .right ul.list li{
    border-bottom:none;
    padding: 0;
} */
.symp-list-contents ul li {
    margin-top: 20px;
}
.more-search-wrap {
    text-align: center;
    margin: 30px auto 20px;
}
.more-search-wrap input {
    background: #0169ca;
    color: #fff;
    padding: 20px 20px;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
}
.symp-match-contents:empty{
    display: none;
}
.symp-column-contents:empty{
    display: none;
}
.symp-column-contents h3:empty{
    display: none;
}
.symp-column-contents p:empty{
    display: none;
}
.symps-wrap{
    margin-bottom: 50px;
}
.symp-column-wrap .search-result h2 {
    color: #0169ca;
    font-size: 1.5rem;
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 20px;
    width: 100%;
}
.symp-column-wrap .symp-column-title {
    position: relative;
    margin: 10px auto 0 0;
    padding: 0;
    line-height: 1.2;
    border-bottom: none;
    font-weight: bold;
    font-size: 1.5rem;
    color: #333;
	background: transparent;
    letter-spacing: 2px;
}

/*-------------------クリニック詳細ページ--------------------*/
.clinical_department_wrap p{
    font-size: 1.1rem;
    font-weight: bold;
    margin: 0;
}
.c_contact dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: baseline;
}
.c_contact dl dt {
    display: inline-block;
    width: 25%;
    text-align: right;
    margin: 0 auto 10px;
}
.c_contact dl dd {
    display: inline-block;
    width: 70%;
    margin: 0 auto 10px;
}
section.clinic-detail-head {
    display: flex;
    justify-content: space-between;
    /* align-items: baseline; */
    align-items: center;
}
section.clinic-detail-head .left {
    width: 60%;
}
section.clinic-detail-head .right {
    width: 40%;
}
.clinic-detail-head h3{
    color: #555;
    font-size: 1.5rem;
    font-weight: bold;
    margin:0px;
    border: none;
}
.clinic-detail-head h3:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0px;
    content: "";
    background: none;
}
.clinic-detail-head p{
    margin: 0;
}
.time_access {
    width: 30%;
    text-align: right;
}
.clinic-detail-2clm {
    display: flex;
    align-items: flex-start;
    margin: 20px auto 0;
}
.clinic-detail-head .time_access a {
    position: relative;
    font-size: 1.0rem;
    padding: 7px 36px 7px  10px;
    text-decoration: none;
    margin: 0 5px;
    border-bottom: 2px solid #a4b0bc;
}
.clinic-detail-head .time_access a span {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    margin-top: -0.15em;
}
.clinic-detail-head .time_access a span::after {
    content: '';
    display: inline-block;
    width: 0.3rem;
    height: 0.3rem;
    border-bottom: 2px solid #333;
    border-right: 2px solid #333;
    transform: rotate(45deg);
}
.coverage-clinic #coverage{
    display: block;
    margin-top:-85px;
    padding-top:85px;
}
.coverage-wrap {
    border: 1px solid #ccc;
    display: flex;
    flex-wrap: wrap;
}
.coverage-wrap img{
    padding: 15px;
    /* object-fit: contain; */
    max-width: 238px;
    height: auto;
}
.coverage-wrap .coverage-content{
    padding: 15px;
}
.coverage-wrap .coverage-content p {
    font-weight: bold;
}
.supervised-wrap {
    border: 1px solid #ccc;
    display: flex;
    flex-wrap: wrap;
}
.supervised-wrap img{
    padding: 15px;
    /* object-fit: contain; */
    max-width: 238px;
    height: auto;
}
.supervised-wrap .supervised-content{
    padding: 15px;
}
.supervised-wrap .supervised-content p {
    font-weight: bold;
}
.kodawari{
    font-size: 17px;
}
.kodawari dt{
    font-size: 1.12em;
    font-weight: bold;
    margin-bottom: 1rem;
    padding: 3px 0 3px 12px;
    border-left: 8px solid #4ca74c;
}
.kodawari dd{
    margin-left: 0;
}
.osusume{
    font-size: 17px;
}
.osusume dt{
    font-size: 1.12em;
    font-weight: bold;
    margin-bottom: 1rem;
}
.osusume dd{
    margin-left: 0;
}
.osusume .point-icon{
    display: inline-block;
    color: #fff;
    background: #4ca74c;
    font-size: 14px;
    position: relative;
    margin: -5px 24px 0 21px;
    padding: 5px 4px 4px 33px;
}
.osusume .point-icon::before{
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -21px;
    width: 42px;
    height: 42px;
    background: center / contain no-repeat url(../images/common/icon-point.png);
    transform: translateY(-50%);
}
.osusume .point-icon::after{
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    top: 8px;
    left: calc(100% - 8px);
    border-style: solid;
    border-color: #4ca74c transparent transparent transparent;
    border-width: 15px 15px 0 15px;
    z-index: 1;
    transform: rotate(-90deg);
}
.access-clinic dl{
    display: flex;
    flex-wrap: wrap;
}
.access-clinic dl dt{
    display: inline-block;
    width: 10%;
    margin: 0 auto 5px;
    text-align: right;
}
.access-clinic dl dd{
    display: inline-block;
    margin: 0 auto 10px;
    width: 90%;
}
.map-wrap iframe {
    width: 100%;
    height: 450px;
    border: 1px solid #ccc;
}
ul.clinic-data-list{
    list-style-type: none;
    color: #555;
}
ul.clinic-data-list li {
    position: relative;
    padding-left: calc(1em + 24px) !important;
}
ul.clinic-data-list li::before{
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: calc(1em + 5px);
    height: calc(1em + 5px);
    margin-top: 5px;
    background: center / contain no-repeat;
}
ul.clinic-data-list li.clinic-address::before{
	background-image: url(../images/common/icon-map-gray.png);
}
ul.clinic-data-list li.clinic-tel::before{
    background-image: url(../images/common/icon-tel-gray.png);
}
ul.clinic-data-list li.clinic-transportation::before{
    background-image: url(../images/common/icon-train-gray.png);
}
ul.clinic-data-list li.clinic-department::before{
    background-image: url(../images/common/icon-doctor-gray.png);
}
dl.clinic-data {
    border: 1px solid #ccc;
    display: flex;
    flex-wrap: wrap;
    margin-top:50px;
}
dl.clinic-data dt{
    width: calc(20% - 40px);
    margin: 0;
    text-align: left;
    padding: 12px 20px;
    border-right: 1px solid #ccc; 
}
dl.clinic-data dd {
    margin: 0;
    width: 70%;
    padding: 12px 20px;
}
.map-wrap {
    margin: 20px auto 30px;
}
.medical-date-clininc h3,.medical-date-clininc h3:before{
    border: none;
    background: none;
    margin: 20px 0 10px;
}
.medical-date-wrap {
    display: flex;
    justify-content: space-between;
    border: 1px solid #ccc;
}
.medical-date-wrap dl {
    margin: 0;
    width: 10%;
}
.medical-date-wrap dl:first-child {
    margin: 0;
    width: 20%;
    border-right: 1px solid #ccc;
}
.medical-date-wrap dl dt{
    margin: 0;
    text-align: center;
    padding: 5px 10px;
    border-bottom: 1px solid #ccc;
    font-size: 0.9rem;
}
.medical-date-wrap dl dd{
    margin: 0;
    font-size: 0.8rem;
    padding: 5px 10px;
    text-align: center;
}
div#mainImg img{
    width: 100%;
}
div#mainImg.main-img{
    position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    height: 0;
    overflow: hidden;
}
div#mainImg .main-img-inner{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: center / cover no-repeat url(../images/common/sample-movie.png);
}
div#mainImg .movie{
    position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    height: 0;
    overflow: hidden;
    background: #fff;
    /* background: center / cover no-repeat url(../images/common/sample-movie.png); */
}
div#mainImg .movie.movie-on{
    display: block;
}
div#mainImg .movie > div,
div#mainImg .movie > iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
div#mainImg .movie > img{
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translateX(-50%);
    object-fit: contain;
}
ul#subImg {
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
    margin: 5px auto 0;
}
ul#subImg li{
    list-style: none;
    margin: 5px;
    width: calc(25% - 10px);
    padding-top: calc((25% - 10px) * 0.5625);
    cursor: pointer;
    position: relative;
}
ul#subImg li img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}
.clinic-rating{
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    font-weight: bold;
}
.clinic-rating-group{
    display: flex;
    align-items: flex-end;
}
.clinic-rating-group .clinic-stars{
    color: #ff5b00;
}
.clinic-rating-group .clinic-stars img{
    width: 20px;
    height: auto;
}
.clinic-rating-group .clinic-rate{
    color: #ff5b00;
    margin: 0 0 0 0.5em;
    line-height: 1;
}
.clinic-comment-group{
    display: flex;
    align-items: center;
}
.clinic-comment-group .comment-num{
    color: #1e6097;
    padding-left: 1.75em;
    position: relative;
    margin: 0 20px;
}
.clinic-comment-group .comment-num::before{
    content: "";
    display: inline-block;
    width: 1.5em;
    height: 1.375em;
    position: absolute;
    top: 50%;
    left: 0;
    margin-right: 0.5em;
    background: center / contain no-repeat url(../images/common/icon-comment.png);
    transform: translateY(-50%);
}
.comment-balloon{
    display: inline-block;
    padding: 0.5em 1.5em;
	font-size: 0.875rem;
    color: #fff;
    background: #ff5b00;
    text-decoration: none;
    border-radius: 4px;
    position: relative;
    margin-left: 12px;
}
.comment-balloon::before{
    content: "";
    position: absolute;
    top: 50%;
    left: -20px;
    margin-top: -8px;
    border: 8px solid transparent;
    border-right: 12px solid #ff5b00;
    z-index: 1;
}
.comments-clinic .comment{
    margin-bottom: 15px;
    padding: 15px;
    border: 2px solid #dbd2cd;
    border-radius: 4px;
}
.comments-clinic .comment-balloon{
    margin-left: calc(12px + 1em);
}
.comments-clinic .comment-header h3{
    margin: 0.25rem 0;
    padding: 0;
    border: 0;
}
.comments-clinic .comment-header h3::before{
    display: none;
}
.comments-clinic .clinic-stars img{
    width: 1em;
    height: auto;
}
.comments-clinic .comment-info{
    display: flex;
    align-items: center;
    font-size: 0.75rem;
}
.comments-clinic .comment-info img{
    width: 23px;
    height: 23px;
    margin-right: 1em;
}
.comments-clinic .comment-content a{
    display: inline-block;
    max-width: 33%;
}
.comments-clinic .comment-content a img{
    margin-right: 10px;
    width: calc(100% - 10px);
}
.comments-clinic .comment-more{
    margin: 10px 0;
    text-align: right;
}
.comments-clinic .comment-more a{
    display: inline-block;
    color: #fff;
    background: #006d8e;
    width: 120px;
    max-width: 120px;
    text-decoration: none;
    font-size: 0.875rem;
    padding: 1em;
    position: relative;
    text-align: center;
    line-height: 1;
}
.comments-clinic .comment-more a span {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(3.75em, -50%);
    margin-top: -0.3em;
}
.comments-clinic .comment-more a span::after {
    content: '';
    display: inline-block;
    width: 0.3rem;
    height: 0.3rem;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
}
.comments-clinic .comment-time{
    font-size: 0.75rem;
    position: relative;
    padding-left: 1.5em;
}
.comments-clinic .comment-time span{
    display: inline-block;
    margin-right: 1em;
}
.comments-clinic .comment-time::before{
    content: "";
    display: inline-block;
    width: 1.05em;
    height: 1.05em;
    position: absolute;
    top: 50%;
    left: 0;
    background: center / contain no-repeat url(../images/common/icon-time.png);
    transform: translateY(-50%);
}
.comments-clinic .comment-footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875rem;
    background: #f2f2f2;
    padding: 10px 15px;
}
.comments-clinic .comment-reference{
    display: flex;
    align-items: center;
}
.comments-clinic .comment-reference a{
    background: #fff;
    margin-right: 1em;
    padding: 0.75em 1.5em;
    border: 1px solid #828282;
    border-radius: 4px;
    text-decoration: none;
    line-height: 1;
}
.comments-clinic .comment-reference p{
    margin: 0.5em 0;
}
.comments-clinic .comment-list-more{
    margin-top: 40px;
    text-align: center;
}
.comments-clinic .comment-list-more a{
    position: relative;
    font-size: 0.875rem;
    font-weight: bold;
    color: #3f3f3f;
    padding-left: 1.5em;
    text-decoration: none;
}
.comments-clinic .comment-list-more a span {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -0.2em;
    transform: translateY(-50%);
}
.comments-clinic .comment-list-more a span::before {
    content: '';
    display: inline-block;
    width: 0.3rem;
    height: 0.3rem;
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: rotate(45deg);
}
.comments-clinic .modal.modal-image{
    padding: 80px 40px 40px 40px;
    overflow: hidden;
    background: transparent;
    max-height: 80vh;
}
.comments-clinic .modal-image figure{
    display: block;
    margin: 0;
    width: 100%;
    height: calc(80vh - 120px);
}
.comments-clinic .modal-image img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.comments-clinic .modal_close{
    position: fixed;
    top: 20px;
    right: 20px;
    color: #fff;
    background: #555;
    border: 0;
    border-radius: 4px;
    padding: 0.1em 0.3em;
    font-size: 2rem;
    font-weight: bold;
    cursor: pointer;
    line-height: 1;
}
.modal-comment{
    max-width: 1000px;
    overflow: auto;
}
.modal-comment-inner {
    max-width: 788px;
    margin: 0 auto;
}
.modal-comment .caution-wrap{
    text-align: center;
    margin-bottom: 2em;
}
.modal-comment .caution-wrap .caution{
    color:#f00;
    font-weight:bold;
}
.modal-comment .caution-wrap .btn{
    margin-bottom: 1em;
}
.modal-comment .caution-wrap .btn a{
    display:inline-block;
    background:#0169ca;
    color:#fff;
    padding:10px;
    border-radius:30px;
    text-decoration:none;
    width:70%;
}
.modal-comment h3{
    padding: 0;
    border: 0;
    text-align: center;
}
.modal-comment h3::before{
    display: none;
}
.modal-comment table {
    width: 100%;
    max-width: 650px;
    margin: 0 auto;
}
.modal-comment th,
.modal-comment td{
    text-align: left;
    vertical-align: top;
    padding: 10px;
}
.modal-comment th{
    padding-top: calc(10px + 0.25em);
}
.modal-comment td{
    font-weight: normal;
}
.modal.modal-comment .required{
    display: inline-block;
    color: #f00;
    font-size: 0.75rem;
    margin-left: 0.5em;
}
.modal-comment .rating-form th{
    width: 6em;
}
.modal-comment .rating-form input[type="text"],
.modal-comment .rating-form textarea{
    padding: 0.25em;
    border: 1px solid #c4c4c4;
}
.modal-comment .rating-form input[type="text"]{
    width: 100%;
}
.modal-comment .rating-form textarea{
    width: 96%;
}
.modal-comment .rating-form h4{
    color: #000;
    font-size: 0.875rem;
    margin-top: 0;
}
.modal-comment .rating-form input.year[type="text"],
.modal-comment .rating-form select{
    padding: 0.25em;
    width: 6em;
}
.modal-comment .rating-form .poster-date{
    display: inline-block;
    margin-left: 0.5em;
}
.modal-comment .rating-form .select{
    display: inline-block;
    position: relative;
}
.modal-comment .rating-stars input[type="radio"] {
    display: none;
}
.modal-comment .rating-stars input[type="radio"] + input[type="radio"]{
    margin-left: 0.5em;
}
.modal-comment .rating-stars input[type="radio"] + span::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 27px;
    background: center / contain no-repeat url(../images/common/icon-star-off.png);
}
.modal-comment .rating-stars input[type="radio"] + span:hover::before {
    background-image: url(../images/common/icon-star-on.png);
}
.modal-comment .rating-stars input[type="radio"]:checked + span::after {
  display: none;
}
.modal-comment .rating-stars input[type="radio"].rating-on + span::before {
    background-image: url(../images/common/icon-star-on.png);
}
.modal-comment .rating-stars img{
    width: 28px;
    width: 27px;
}
.modal-comment .poster-form{
    background: #f6f6f6;
    padding: 15px 7.5%;
    max-width: 790px;
    font-size: 0.875rem;
}
.modal-comment .poster-form h4{
    color: #000;
    font-size: 0.875rem;
    margin-top:0;
}
.modal-comment .poster-form th{
    width: 7em;
}
.modal-comment .poster-form .select::after{
    content: '▼';
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0.25em;
    transform: translateY(-50%);
    margin-top: -0.05em;
}
.modal-comment .poster-form .select select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
}
.modal-comment .poster-form .select select::-ms-expand {
    display: none; 
}

.modal-comment .poster-info{
    display: flex;
    align-items: center;
    justify-content:center;
}
.modal-comment .poster-info img{
    width: 50px;
    height: 50px;
    margin-right: 20px;
}
.modal-comment .poster-info p{
    margin: 0;
}
.modal-comment .comment-submit{
    text-align: center;
    margin-top: 40px;
}
.modal-comment .comment-submit input[type="submit"]{
    background: #ff8d06;
    width: 170px;
    padding: 0.5em;
    border-radius: 1.5em;
    cursor: pointer;
}
.modal-comment .red{
	color:#f00;
	margin-top:0.5em;
}
.modal-comment .note{
    font-size: 0.85rem;
    margin: 0 0 1em;
}
.modal-comment .attention{
    color:#f00;
}
.doctor-movie .movie{
    position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    height: 0;
    overflow: hidden;
}
.doctor-movie .movie > div,
.doctor-movie .movie > iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.introductory-wrap {
    border: 1px solid #ccc;
    display: flex;
    flex-wrap: wrap;
}
.introductory-wrap img{
    padding: 15px;
    max-width: 238px;
    height: auto;
}
.introductory-wrap .introductory-content{
    padding: 15px;
}
.introductory-wrap .introductory-content p {
    font-weight: bold;
}

/*-------------------名医・雑誌動画コンテンツ関連--------------------*/
.content-more-wrap {
    text-align: right;
    margin: 20px 10px;
}
.content-more-wrap a{
    width: 200px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    padding: 10px;
    border-bottom:1px solid #555;
}
.content-more-wrap a:before{
	content:">> ";
}
p.skilled01 {
    background: #ef81a0;
}
p.skilled02 {
    background: #6fceca;
}
p.skilled03 {
    background: #5bc769;
}
p.skilled04 {
    background: #cec22c;
}
p.skilled01:hover,p.skilled02:hover,p.skilled03:hover,p.skilled04:hover{
    opacity: 0.8;
    transition: 0.5s;
}
section.media {
    margin-bottom: 80px;
}
p.media01 {
    background: #fc9e38;
}
p.media02 {
    background: #8dd075;
}
p.media03 {
    background: #38C8FC;
}
p.media04 {
    background: #38B08E;
}
p.media01:hover,p.media02:hover,p.media03:hover,p.media04:hover{
    opacity: 0.8;
    transition: 0.5s;
}
.content-post-item {
    display: flex;
    width: 90%;
    margin: 0 auto 20px;
}
.content-post-wrap {
    max-width: 100%;
    padding-bottom: 40px;
    margin: 0;
}
h2.content-post-header{
color: #0169ca;
font-size: 1.4rem;
font-weight: bold;
margin-top: 30px;
margin-bottom: 30px;
}
#top_body .recomend ul li .img, #top_body .supervised ul li .img,#top_body .magazine ul li .img, #top_body .media ul li .img{
    width: 100%;
    height: 0;
    padding-top: 65%;
    position: relative;
    overflow: hidden;
}
#top_body .recomend ul li .img img, #top_body .supervised ul li .img img,#top_body .magazine ul li .img img, #top_body .media ul li .img img{
    width: 100%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.content-post-item .right{
    position: relative;
    width: 75%;
}
.content-post-item .right a{
    color: #0169ca;
    text-decoration: none;
}
.content-post-item .left{
    position: relative;
    width: 25%;
}
.content-post-item .left img{
    max-width: 100%;
	height: 10vw;
    vertical-align: bottom;
    /* height: auto; */
    object-fit: cover;
}
.content-post-item .left .category{
    position: absolute;
    bottom: -5px;
    right: -5px;
    padding: 5px;
    margin: 0;
}
.content-post-item .left .category a {
    text-decoration: none;
    padding: 10px;
    font-size: 0.8rem;
    color: #fff;
}
.content-post-item .right h3 {
    margin: 0;
    border: none;
    font-weight: 600;
}
.content-post-item .right h3:before {
    position: absolute;
    bottom:0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background: none;
}
.content-post-item .right h3:hover{
    opacity: 0.7;
    transition: 0.5s;
}
.content-post-item .right p{
    margin: 0;
}
.sidebar .column-info{
    display: block;
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
    margin-bottom: 20px;
}
.sidebar .column-info h2 {
    background: #1e6097;
    display: inline-block;
    margin-left: 20px;
    padding: 10px 20px;
    color: #fff;
    font-size: 1rem;
    border-radius: 0 0 5px 5px;
    margin-bottom: 0;
    margin-top: 0;
}
.sidebar .column-info ul {
    padding: 20px;
}
.sidebar .column-info ul li {
    list-style: none;
    border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
    padding-bottom: 10px;
}
.sidebar .column-info ul li:last-child {
    border-bottom: none;
    margin-bottom: 0;
}
.sidebar .column-info ul li img {
    margin-right: 10px;
}
.sidebar .column-info ul li h3 {
    font-size: 0.9rem;
    font-weight: normal;
    border-bottom: none;
    margin-top: 0;
    margin-bottom: 0;
	font-weight: bold;
}
.sidebar .column-info ul li h3:before {
    position: absolute;
    bottom: 0x;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    background: none;
}
.sidebar .column-info ul li .date {
    margin: 0;
    font-size: 0.8rem;
	color: #999;
    /* color: #0169ca;
    font-weight: bold; */
}
.sidebar .column-info ul li a {
    text-decoration:none;
    display: flex;
    align-items: center;
}
.sidebar .column-info ul li:nth-child(n+4) {
    display: none;
}
p.magazine01 {
    background: #fc9e38;
}
p.magazine02 {
    background: #8dd075;
}
p.magazine03 {
    background: #38C8FC;
}
p.magazine04 {
    background: #38B08E;
}
p.magazine01:hover,p.magazine02:hover,p.magazine03:hover,p.magazine04:hover{
    opacity: 0.8;
    transition: 0.5s;
}
.magazine-image figure {
    margin: 0 0 1em;;
    padding: 100% 0 0;
    position: relative;
    background: #f0f4f7;
}
.magazine-image img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 30%);
    height: calc(100% - 30%);
    object-fit: contain;
    margin: 0 auto;
}
.magazine-title {
    color: #000;
    font-size: 1.625rem;
    font-weight: normal;
    margin-top: 0;
}
.magazine-clinic-title {
    display: inline-block;
    color: #fff;
    background: #0169ca;
    font-size: 0.9rem;
    border: 0;
    padding: 6px 12px;
    line-height: 1;
}
.magazine-clinic-title::before {
    display: none;
}
.magazine-clinic > .wp-block-group__inner-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}
.magazine-clinic-list-group {
    margin-right: 1em;
}
.magazine-clinic-list {
    list-style: none;
}
.magazine-clinic-list .magazine-clinic-name {
    display: inline-block;
    position: relative;
    padding-left: 1.25em;
}
.magazine-clinic-list .magazine-clinic-name::before {
    content: '■';
    color: currentColor;
    position: absolute;
    top: 0;
    left: 0;
}
.magazine-clinic-name span:first-child {
    font-weight: bold;
}
.magazine-clinic-list a {
    color: #0169ca;
    text-decoration: none;
}
.magazine-hr {
    border: none;
    border-bottom: 1px solid #e2e2e2;
    margin-top: 40px;
}
.magazine-button {
    text-align: right;
    margin-bottom: 1em;
}
.magazine-button a {
    display: inline-block;
    color: #0169ca;
    font-weight: bold;
    border: 1px solid currentColor;
    padding: 6px 20px;
    transition: 0.5s;
    line-height: 1;
}
.magazine-button a:hover {
    opacity: 0.7;
}
.magazine-text, .magazine-clinic-list {
    margin-left: 10px;
}
.magazine-info-title {
    font-size: 1.17rem;
    font-weight: normal;
    border-bottom: 1px solid #e2e2e2;
}
.magazine-info-title::before {
    display: none;
}
.magazine-info-table table td:nth-child(1) {
    width: 12em;
}
.magazine-info-table table td:nth-child(2) {
    width: 1em;
    text-align: center;
}

/*-------------------クリニック管理ページ関連--------------------*/
.clinic-admin {
    background: #f5f5f5;
}
.clinic-admin .clinic-myinfo {
    margin: 0 auto;
    text-align: center;
}
.clinic-admin .clinic-myinfo-title {
    font-size: 1.3rem;
}
.clinic-admin .clinic-myinfo-img {
    width: 101px;
    margin: 0 auto -10px;
    text-align: center;
}
.clinic-admin h3 {
    font-weight: normal;
    padding: 0;
    border-bottom: 0;
}
.clinic-admin h3::before {
    display: none;
}
.clinic-admin .clinic-admin-menu ul {
    display: flex;
    justify-content: space-between;
    width: 100%;
    list-style: none;
}
.clinic-admin .clinic-admin-menu li {
    display: flex;
    align-items: center;
    width: 49%;
    background-color: #fff;
}
.clinic-admin .clinic-admin-menu a {
    display: block;
    position: relative;
    width: 100%;
    padding: 1.3em 1.5em 1.3em 4em;
    text-decoration: none;
}
.clinic-admin .clinic-admin-menu a::before,
.clinic-admin .clinic-admin-menu a::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    background-size: contain;
    background-position: center center;
    transform: translateY(-50%);
}
.clinic-admin .clinic-admin-menu a::before {
    width: 2.8em;
    height: 2.8em;
    left: 0.5em;
}
.clinic-admin .clinic-admin-menu1 a::before {
    background-image: url(../images/common/icon-message.png);
}
.clinic-admin .clinic-admin-menu2 a::before {
    background-image: url(../images/common/icon-unsupported.png);
}
.clinic-admin .clinic-admin-menu a::after {
    width: 0.7em;
    height: 1.1em;
    right: 0.5em;
    background-image: url(../images/common/icon-arrow-r.png);
}

/*-------------------お問い合わせページ関連--------------------*/
.contact-radio-title{
	color: #000;
	font-size: 1.1rem;
	margin-top: 20px;
}
.contact-radio-type{
	font-size: 1rem;
	font-weight: normal;
	border-bottom: 0;
	padding: 0;
}
.contact-radio-type::before{
	display: none;
}
.contact-radio-type:last-of-type + p{
	margin-bottom: 2em;
}

/*-------------------ポイント数設定関連--------------------*/
.admin_point_num {
    font-size: 0.9rem;
}
.admin_point_num * {
    box-sizing: border-box;
}
.admin_point_num .admin_app_list {
    overflow-x: auto;
}
.admin_point_num table {
    width: 100%;
    border-collapse: collapse;
}
.admin_point_num table tr:nth-child(even) {
    background-color: #eaf2f9;
}
.admin_point_num table th, .admin_point_num table td {
    border: 1px solid #88b5df;
    padding: 0.5em;
    text-align: left;
}
.admin_point_num table th {
    background-color: #eaf2f9;
}
.admin_point_num table th.th_point {
    background: #88b5df;
}
.admin_point_num .point_timetype {
    width: 16em;
}
.admin_point_num .point_timewrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
.admin_point_num .time_info span {
    display: block;
}
.admin_point_num input{
    margin-bottom: 0;
}
.admin_point_num input[type=submit],
.admin_point_num input[type=button],
.admin_point_num input[type=reset],
.admin_point_num button {
    background: #0169ca;
    color: #fff;
    padding: 0.5em 1em;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
    font-family : inherit;
    font-size   : 100%;
	cursor: pointer;
    line-height: 1.2;
}
.admin_point_num input[type=submit]:hover,
.admin_point_num input[type=button]:hover,
.admin_point_num input[type=reset]:hover,
.admin_point_num button:hover {
    background: #148add;
}
.admin_point_num .point_rank {
    width: 9em;
}
.admin_point_num .point_rank input {
    margin-right: 0.5em;
}
.admin_point_num .point_rank span {
    display: inline-block;
    font-size: 0.8em;
}
.admin_point_num .point_num{
    width: 3.5em;
}
.admin_point_num .usually_form_button {
    text-align: center;
}
.admin_point_num .usually_form_button input[type=submit],
.admin_point_num .usually_form_button input[type=button],
.admin_point_num .usually_form_button input[type=reset],
.admin_point_num .usually_form_button button {
    padding: 1.5em;
    margin: 30px 5px;
}
.admin_point_num .modal {
    width: 90%;
    overflow: hidden auto;
}
.admin_point_num .modal h3 {
    border: 0;
    padding: 0;
}
.admin_point_num .modal h3::before {
    display: none;
}
.admin_point_num .modal .linited_radio {
    text-align: center;
    max-width: 380px;
}
.admin_point_num .modal .linited_radio label{
    margin: 0 0.5em;
}
.admin_point_num .modal .linited_radio label span{
    display: inline-block;
    margin-top: -0.25em;
}
.admin_point_num .modal .linited_date {
    display: flex;
    align-items: center;
    width: 100%;
}
.admin_point_num .modal .linited_date_between {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3em;
    padding-top: 3em;
}
.admin_point_num .modal .linited_form_button {
    text-align: center;
}
.admin_point_num .modal .limited_point_num {
    margin-top: 30px;
}
.admin_point_num .modal .limited_point_num table td {
    width: auto;
}
.admin_point_num .modal .linited_form_button {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.admin_point_num .modal input[type=submit],
.admin_point_num .modal input[type=button],
.admin_point_num .modal input[type=reset],
.admin_point_num .modal button {
    width: 200px;
    padding: 1.5em;
    margin: 30px 5px;
}

/*-------------------ポイントログイン時モーダル--------------------*/
.modal_login_point {
	overflow: auto;
}
.modal_login_point h2 {
	color: #000;
	margin-top: 0;
}
.modal_login_point p,
.modal_login_point .login_point_button {
	text-align: center;
}
.modal_login_point button {
    width: 200px;
    background: #0169ca;
    color: #fff;
    margin: 30px 5px;
    padding: 1em;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
    font-family : inherit;
    font-size   : 100%;
	cursor: pointer;
}
.modal_login_point button:hover {
    background: #148add;
}

/*-------------------ポイントCSV--------------------*/
.admin_point_import .admin_app_list {
    max-width: 960px;
    margin: 50px auto 70px;
}
.admin_point_import .import_list {
    margin-left: 2em;
}
.admin_point_import .attention {
    display: block;
}
.admin_point_import .form_button {
    max-width: 960px;
    margin: 0 auto;
}
.admin_point_import .form_button button,
.admin_point_import .form_button a {
	display: inline-block;
    width: 200px;
    background: #0169ca;
    color: #fff;
    margin: 30px 5px;
    padding: 1em;
    font-weight: bold;
    border-radius: 0px;
    border: none;
    transition: 0.5s;
    font-family : inherit;
    font-size   : 100%;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
}
.admin_point_import .form_button button:hover,
.admin_point_import .form_button a:hover {
    background: #148add;
}
.admin_point_import .flex {
	justify-content: space-between;
	align-items: center;
}
.admin_point_import .flex h2 {
	margin: 30px 0;
}
.admin_point_import .flex .form_button {
	margin: 0;
}
.admin_point_import .flex .form_button a {
	margin: 0;
}

/*--------------------会話吹き出し--------------------*/
.talk-unit * {
    box-sizing: border-box;
}
.talk-unit.wp-block-columns {
    flex-wrap: nowrap;
    margin-bottom: 0;
}
.talk-unit > .wp-block-group__inner-container {
    display: flex;
    justify-content: space-between;
}
.talk-unit.talk-unit-right > .wp-block-group__inner-container {
    flex-direction: row-reverse;
}
.talk-unit .wp-block-column:nth-child(2n) {
    margin-left: 0;
}
.talk-unit .wp-block-column:not(:only-child) {
    flex-basis: auto !important;
}
.talk-image.wp-block-column {
    width: 6% !important;
    min-width: 40px !important;
    flex-basis: auto !important;
    flex-grow: 0;
}
.talk-contents.wp-block-column {
    flex: 1;
    flex-basis: auto !important;
    width: 94% !important;
}
.talk-unit-left .talk-contents {
    padding-left: 3%;
}
.talk-unit-right .talk-contents {
    padding-right: 3%;
    text-align: right;
}
.talk-image .wp-block-image {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 100%;
    margin: 1em 0;
}
.talk-image .wp-block-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.talk-name {
    font-weight: bold;
    font-size: 0.9em;
    margin-bottom: 0.5em;
}
.talk-unit-right .talk-name {
    text-align: right;
}
.talk-text {
    display: inline-block;
    border: 1px solid #ccc;
    position: relative;
    margin-top: 0 !important;
    border-radius: 4px;
    padding: 1em !important;
}
.talk-text::before, .talk-text::after {
    content: '';
    position: absolute;
}
.talk-text::before {
    border: 8px solid transparent;
    border-top-color: #ccc;
    top: -1px;
}
.talk-text::after {
    border: 6px solid transparent;
    border-top-color: #fff;
    top: 0;
}
.talk-unit-right .talk-text::before {
    right: -9px;
}
.talk-unit-right .talk-text::after {
    right: -6px;
}
.talk-unit-left .talk-text::before {
    left: -9px;
}
.talk-unit-left .talk-text::after {
    left: -6px;
}

/*-------------------ポイント詳細--------------------*/
.point-detail {
    max-width: 700px;
    margin: 0 auto 50px;
}
.point-detail .point-header {
    margin-bottom: 2em;
}
.point-detail .point-header h3 {
    color: #000;
    font-size: 1em;
    font-weight: normal;
    border: 0;
}
.point-detail .point-header h3::before {
    display: none;
}
.point-detail .acquire-point {
    text-align: right;
    font-weight: bold;
    margin: 0;
    padding-right: 1em;
}
.point-detail .acquire-num {
    font-size: 2.5em;
}
.point-detail .acquire-symbol {
    color: #999;
    padding-left: 0.25em;
}
.point-detail .acquire-link {
    text-align: right;
    padding: 1em;
    border-top: 1px solid #ccc;
    border-bottom: 4px solid #ccc;
}
.point-detail .acquire-link a {
    display: inline-block;
    font-weight: bold;
    text-decoration: none;
}
.point-detail .acquire-link a::after {
    content: ">";
    padding-left: 0.25em;
}
.point-detail .point-contents-title {
    padding: 0;
    border: 0;
    text-align: center;
}
.point-detail .point-contents-title::before {
    display: none;
}
.point-detail .point-limit-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 1em;
    border-bottom: 1px solid #ccc;
}
.point-detail .limit-point {
    text-align: right;
    font-weight: bold;
    margin: 0;
}
.point-detail .limit-num {
    font-size: 2em;
}
.point-detail .limit-symbol {
    color: #999;
    padding-left: 0.25em;
}
.point-page-back {
    margin-top: 50px;
}
.point-page-back a {
    display: inline-block;
    text-align: center;
    width: 4em;
    font-weight: bold;
    color: #fff;
    background: #999;
    padding: 0.75em;
    line-height: 1;
    border-radius: 0.25em;
    text-decoration: none;
}

/*-------------------ポイント履歴--------------------*/
.point-history {
    margin: 0 auto 50px;
}
.point-history-table {
    width: 100%;
    border-collapse: collapse;
	margin-bottom: 50px;
}
.point-history-table th, .point-history-table td {
    border: 1px solid #ccc;
    padding: 0.5em;
}
.point-history-table th {
    background: #b3d8ff;
}
.point-history-table td p {
    margin: 0;
}
.point-history .point-history-date {
    width: 6em;
}
.point-history .point-history-num {
    text-align: right;
    font-weight: bold;
}
.point-history .point-history-num .history-symbol {
    color: #999;
    padding-left: 0.25em;
}
.point-history .point-history-type {
    width: 7.5em;
    text-align: center;
}
.point-history .point-history-type p {
    display: inline-block;
    text-align: center;
    width: 6em;
    font-size: 0.9em;
    font-weight: bold;
    color: #fff;
    background: #999;
    padding: 0.5em 0.5em;
    line-height: 1;
    border-radius: 0.25em;
	white-space: nowrap;
}
.point-history .point-history-type .point-use {
    background: #fc9e38;
}
.point-history .point-history-type .point-lose {
    background: #f00;
}
.point-history .point-history-type .point-get {
    background: #4ca74c;
}

/*-------------------ポイント通知設定--------------------*/
.point-notification {
    margin: 0 auto 50px;
}
.point-notification .point-header {
    margin-bottom: 1em;
}
.point-notification .point-header p {
    margin: 0;
}
.point-notification label {
    display: block;
    margin-bottom: 0.5em;
}
.point-notification .point-update {
    margin-top: 2em;
}
.point-notification button, .point-notification input[type="submit"] {
    color: #fff;
    background: #0169ca;
    font-family: inherit;
    font-weight: bold;
    border: 0;
    border-radius:5px;
    padding: 10px 20px;
    -webkit-appearance: none;
    cursor: pointer;
}

/*-------------------会員ランク--------------------*/
.user-rank .rank-contents {
    max-width: 1000px;
}
.user-rank .rank-attention {
    color: #ef81ab;
    font-weight: bold;
}
.user-rank .rank-note {
    font-size: 0.875em;
    line-height: 2;
}
.user-rank .rank-wrap {
    display: block;
    background: #edf4fc;
}
.user-rank .rank-wrap p {
    display: block;
    margin: 0 auto;
    text-align: left;
    padding: 5px 0;
}
.user-rank .rank-wrap .myrank {
    display: inline-block;
    font-size: 1.375em;
    margin: 0 0.5em;
}
.user-rank .rank-wrap .myrank.bronze {
    color: #b9976e;
}
.user-rank .rank-wrap .myrank.silver {
    color: #a9a9a9;
}
.user-rank .rank-wrap .myrank.gold {
    color: #d3b97a;
}
.user-rank .rank-wrap .myrank.platinum {
    color: #76aacc;
}
.user-rank .rank-wrap .myrank.diamond {
    color: #7783d9;
}
.user-rank .rank-next {
    padding-left: 0;
}
.user-rank .rank-ex h3 {
    border-color: #a4c5ec;
}
.user-rank .rank-ex h3::before {
    display: none;
}
.user-rank .rank-chart * {
    box-sizing: border-box;
}
.user-rank .rank-chart dl {
    display: flex;
}
.user-rank .rank-chart dt, .user-rank .rank-chart dd {
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: 0;
    padding: 0.5em;
}
.user-rank .rank-chart dt {
    width: 145px;
    color: #fff;
    background: #0169ca;
}
.user-rank .rank-chart dl:first-of-type dt {
    background: transparent;
}
.user-rank .rank-chart dd {
    width: calc((100% - 195px) / 5);
    margin-left: 10px;
}
.user-rank .rank-chart dd:nth-of-type(n) {
    background: #eae0d3;
}
.user-rank .rank-chart dd:nth-of-type(2n) {
    background: #e5e5e5;
}
.user-rank .rank-chart dd:nth-of-type(3n) {
    background: #ede3ca;
}
.user-rank .rank-chart dd:nth-of-type(4n) {
    background: #d6e5f0;
}
.user-rank .rank-chart dd:nth-of-type(5n) {
    background: #f1e1fd;
}
.user-rank .rank-chart-info dl:first-child dd {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    background: transparent;
    padding: 0;
}
.user-rank .rank-chart-image {
    display: inline-block;
    width: 78%;
    position: relative;
}
.user-rank .rank-chart-image img {
    width: 74%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}
.user-rank .rank-chart-info dl:first-child dd:nth-of-type(n) .rank-chart-image {
    height: 63px;
    background: #b9976e;
}
.user-rank .rank-chart-info dl:first-child dd:nth-of-type(2n) .rank-chart-image {
    height: 99px;
    background: #a9a9a9;
}
.user-rank .rank-chart-info dl:first-child dd:nth-of-type(3n) .rank-chart-image {
    height: 127px;
    background: #d3b97a;
}
.user-rank .rank-chart-info dl:first-child dd:nth-of-type(4n) .rank-chart-image {
    height: 155px;
    background: #76aacc;
}
.user-rank .rank-chart-info dl:first-child dd:nth-of-type(5n) .rank-chart-image {
    height: 196px;
    background: linear-gradient(#d8a0fe, #7683d9);
}
.user-rank .rank-chart-data {
    position: relative;
    padding-top: 6%;
}
.user-rank .rank-chart-data .rank-chart-balloon {
    position: absolute;
    top: 8%;
    left: 0;
    width: 111px;
}
.user-rank .rank-chart-data p {
    padding-left: 155px;
}

/*-------------------ポイント利用--------------------*/
.point-use iframe {
    border: 1px solid #ccc;
}

/*--------------------検索結果UI--------------------*/
.search-result > ul {
	background: #edf4fc;
	padding: 20px;
}
.search-result > ul * {
	box-sizing: border-box;
}

.search-result>ul>li:first-child {
	margin-top: 0;
}

.search-result > ul > li {
	background: #fff;
	border: 2px solid #629cde;
	padding: 0;
	font-size: 15px;
}

.search-result > ul > li + li {
	margin-top: 47px;
}

.search-result .result-header2 {
	display: flex;
	justify-content: space-between;
	background: linear-gradient(#fff, 68%, #e8edf3);
}

.search-result .result-header2 .result-header-inner {
	flex: 1;
	padding: 5px 10px 10px 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.search-result .result-header2 .favorite-button, .search-result .result-header2 .favorite-button.favorite {
	background: #629cde;
	color: #fff;
	font-size: 12px;
	border: 0;
	border-radius: 0;
	text-align: center;
	width: 74px;
	height: 84px;
	position: relative;
	top: auto;
	right: auto;
	transition: 0.5s;
	margin: -1px 0 0;
	padding: 0;
}

.search-result .result-header2 .favorite-button:hover {
	opacity: 0.7;
}

.search-result .result-header2 .favorite-button-inner {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.search-result .result-header2 .favorite-button-text {
	display: block;
	margin-top: 0.5em;
	white-space: nowrap;
}

.search-result .result-header2 .favorite-button-mark {
	content: "";
	display: inline-block;
	width: 25px;
	height: 25px;
	background: center/contain no-repeat url("../images/common/icon_favorite_off.png");
}

.search-result .result-header2 .favorite .favorite-button-mark {
	background-image: url("../images/common/icon_favorite.png");
}

.search-result .result-header2 .result-header-contents {
	padding-top: 1em;
	max-width: calc(100% - 132px);
}

.search-result .result-header2 .result-title-link {
	display: inline-block;
	position: relative;
}

.search-result .result-header2 .result-title {
	display: inline-block;
	color: #1e6097;
	text-decoration: underline;
	margin: 1em 1em 0 0;
	font-size: 1.4rem;
	width: auto;
}

.search-result .result-header2 .result-title:hover {
	text-decoration: none;
}

.search-result .result-header2 .goto-page-wrap {
	position: absolute;
	left: calc(100% - 1.5em);
	top: -0.5em;
}

.search-result .result-header2 .goto-page {
	display: inline-block;
	color: #fff;
	background: #1e6097;
	font-size: 12px;
	padding: 0.3em 1em;
	border-radius: 5px;
	text-align: center;
	position: relative;
	z-index: 1;
	white-space: nowrap;
}

.search-result .result-header2 .goto-page::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -7px; 
	left: 0;
	border: 5px solid transparent;
	border-right: 18px solid #1e6097;
	transform: rotate(-40deg);
	z-index: -1;
}

.search-result .result-header2 .result-reserv-list {
	flex-shrink: 1;
	display: flex;
	flex-wrap: wrap;
	margin-top: 10px;
	max-width: 320px;
}

.search-result .result-header2 .result-reserv-list li {
	margin: 0 5px 5px 0;
}

.search-result .result-header2 .result-reserv-list .result-btn-reserv {
	font-size: 10px;
	flex-shrink: 0;
	padding: 0.5em 1em;
}

.search-result .result-header2 .result-reserv-list a {
	display: inline-block;
	background: #fff;
}

.search-result .result-header2 .result-reserv-list img {
	width: 70px;
}

.search-result .result-header2 .result-reserv-list h4 {
	display: none;
}

.search-result .result-btns-sp {
	display: none;
}

.search-result .result-btns-member2 ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 1.5em 0 10px;
}

.search-result .result-btns-member2 ul li + li {
	margin-left: 10px;
}

.search-result .result-btns-member2 a {
	display: inline-block;
	width: 170px;
	color: #1e6097;
	background: #fff;
	font-size: 14px;
	font-weight: bold;
	padding: 0.3em 0.5em;
	text-align: center;
	border-radius: 5px;
	border: 2px solid #a0c1dd;
	box-shadow: 0 4px 0 #a0c1dd;
	transition: 0.1s;
}

.search-result .result-btns-member2 a:hover {
	box-shadow: none !important;
	opacity: 1;
	margin-top: 5px;
	margin-bottom: -5px !important;
}

.search-result .result-btns-member2 a.choku-btn {
	color: #fff;
	position: relative;
	margin-bottom: 0;
}

.search-result .result-btns-member2 .choku-btn-balloon-wrap {
	position: absolute;
	top: -1.5em;
	left: 50%;
	transform: translateX(-50%);
}

.search-result .result-btns-member2 .choku-btn-balloon {
	display: inline-block;
	color: #4d4d4d;
	background: #fff;
	font-size: 10px;
	padding: 0.25em 1em;
	border: 2px solid currentColor;
	border-radius: 3px;
	position: relative;
	white-space: nowrap;
	line-height: 1;
}

.search-result .result-btns-member2 .choku-btn-balloon:before {
	content: "";
	position: absolute;
	bottom: -8px;
	left: 50%;
	margin-left: -5px;
	border: 4px solid transparent;
	border-top: 4px solid #FFF;
	z-index: 2;
}

.search-result .result-btns-member2 .choku-btn-balloon:after {
	content: "";
	position: absolute;
	bottom: -12px;
	left: 50%;
	margin-left: -6px;
	border: 6px solid transparent;
	border-top: 6px solid currentColor;
	z-index: 1;
}

.search-result .result-btns-member2 .choku-btn-balloon span {
	display: inline-block;
	font-size: 1.5em;
	transform: translateY(0.125em) rotate(30deg);
}

.search-result .result-btns-member2 a.online-btn {
	background: #fe887e;
	border-color: #f55a60;
	box-shadow: 0 5px 0 #f55a60;
}

.search-result .result-btns-member2 a.meeting-btn {
	background: #fda53d;
	border-color: #ef8a15;
	box-shadow: 0 5px 0 #ef8a15;
}

.search-result .result-btns-member2 a.online-btn .choku-btn-balloon {
	border-color: #f55a60;
}

.search-result .result-btns-member2 a.online-btn .choku-btn-balloon::after {
	border-top-color: #f55a60;
}

.search-result .result-btns-member2 a.meeting-btn .choku-btn-balloon {
	border-color: #ef8a15;
}

.search-result .result-btns-member2 a.meeting-btn .choku-btn-balloon::after {
	border-top-color: #ef8a15;
}

.search-result .result-contents {
	padding: 20px 30px;
}

.search-result .result-contents-unit {
	display: flex;
	justify-content: space-between;
}

.search-result .result-contents-unit .img{
	width: auto;
	margin: 0;
	flex-basis: 49.6%;
}

.search-result .result-contents1 {
	flex-basis: 49%;
}

.search-result .result-contents1 .clinic-rating {
	flex-direction: column;
	margin: 0;
	align-items: flex-start;
}

.search-result .result-contents1 .comment-num {
	margin: 0.5em 0;
}

.search-result .result-contents1 .comment-link {
	display: inline-block;
	color: #4d4d4d;
	font-size: 13px;
	font-weight: normal;
	margin: 1em 0;
	padding-left: 30px;
	position: relative;
	flex-shrink: 0;
}

.search-result .result-contents1 .comment-link::before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 20px;
	background: center/contain no-repeat url("../images/common/icon_message.png");
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.search-result .result-contents1 .comment-count {
	color: #1e6097;
	font-weight: bold;
}

.search-result .result-contents1 .comment-num2 {
	font-size: 1.6em;
	margin-left: 0.25em;
}

.search-result .result-contents1 .comment-balloon {
	background: #1e6097;
	text-align: center;
	padding: 0.5em 1em;
	border-radius: 2em;
	font-size: 15px;
}

.search-result .result-contents1 .comment-balloon span {
	display: inline-block;
}

.search-result .result-contents1 .comment-balloon::before {
	border-right-color: #1e6097;
	top: 50%;
	left: -15px;
	border: 10px solid transparent;
	border-bottom: 10px solid #1e6097;
	margin-top: 0;
	transform: translateY(-50%) rotate(-90deg);
}

.search-result .result-contents1 .clinic-data-list {
	width: 100%;
	background: #edf4fc;
	margin-bottom: 1em;
	padding: 0.5em 1em;
}

.search-result .result-contents1 .clinic-data-list li {
	border-bottom: 1px dotted #b6b6b6;
	padding: 0.5em 1em;
	padding-left: calc(1em + 1.53em) !important;
	min-height: 2.5em;
}

.search-result .result-contents1 .clinic-data-list li::before {
	width: 1.53em;
	height: 1.53em;
	top: 0.15em;
	left: 0.5em;
}

.search-result .result-contents1 .clinic-data-list li:last-of-type {
	border-bottom: 0;
}

.search-result .result-contents1 .clinic-data-list li .map-btn {
	color: #1e6097;
	font-size: 9px;
	border-color: currentColor;
	border-radius: 2em;
}

.search-result .result-contents1 .clinic-data-list  li.clinic-address::before {
	background-image: url(../images/common/icon_map_lg.png);
}

.search-result .result-contents1 .clinic-data-list  li.clinic-transportation::before {
	background-image: url(../images/common/icon_train_lg.png);
}

.search-result .result-contents1 .clinic-data-list  li.clinic-tel::before {
	background-image: url(../images/common/icon_phone_lg.png);
}

.search-result .result-contents1 .clinic-data-list  li.clinic-department::before {
	background-image: url(../images/common/icon_doctor2_lg.png);
}

.search-result .result-contents2 {
	margin-top: 1em;
	flex: 1;
	font-size: 15px;
}

.search-result .result-contents2 .clinic-introduction {
	margin-bottom: 1.5em;
}

.search-result .result-contents2 .medical-date-wrap {
	border: 1px solid #b6b6b6;
}

.search-result .result-contents2 .medical-date-wrap dl {
	display: flex;
	flex-direction: column;
}

.search-result .result-contents2 .medical-date-wrap dl:first-child {
	border-right: 0;
}

.search-result .result-contents2 .medical-date-wrap dl dt, .search-result .result-contents2 .medical-date-wrap dl dd {
	border-right: 1px solid #b6b6b6;
}

.search-result .result-contents2 .medical-date-wrap dl:last-child dt, .search-result .result-contents2 .medical-date-wrap dl:last-child dd {
	border-right: 0;
}

.search-result .result-contents2 .medical-date-wrap dl dt {
	border-bottom: 0;
}

.search-result .result-contents2 .medical-date-wrap dl dd {
	border-top: 1px solid #b6b6b6;
	height:	50%;
	flex: 1;
}

.search-result .result-contents2 .medical-date-wrap dl:first-child dd {
	text-align: left;
}

.search-result .result-contents2 .medical-date-wrap .saturday {
	background: #dfedfc;
}

.search-result .result-contents2 .medical-date-wrap .holiday {
	background: #fbe4e4;
}

.search-result .result-contents2 ul.conditions {
	margin-top: 0;
}

.search-result .result-contents2 ul.conditions li {
	font-size: 0.9em;
}

.search-result .result-movie {
	margin-top: 1em;
}

.search-result .result-movie-unit {
	display: flex;
	align-items: flex-start;
}

.search-result .result-movie-unit .result-movie-col {
	width: 23%;
	margin-right: 2%;
	border: 1px solid #c4c4c4;
}

.search-result .result-movie-unit .result-movie-col:last-child {
	margin-right: 0;
}

.search-result .result-btns2 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 5px;
}

.search-result .result-btns2 ul li {
	margin-top: 1em;
	margin-right: 1%;
}

.search-result .result-btns2 ul li:nth-of-type(3), .search-result .result-btns2 ul li:nth-of-type(4) {
	margin-right: 0;
}

.search-result .result-btns2 .meeting-btn-wrap {
	flex-basis: 35%;
}

.search-result .result-btns2 .online-btn-wrap {
	flex-basis: 43%;
}

.search-result .result-btns2 .site-btn-wrap {
	flex-basis: 20%;
}

.search-result .result-btns2 .more-btn-wrap {
	flex-basis: 100%;
}

.search-result .result-btns2 a {
	display: block;
	width: 100%;
	color: #fff;
	background: #1e6097;
	font-size: 15px;
	font-weight: bold;
	padding: 0.25em 1em;
	text-align: center;
	border-radius: 5px;
	border: 2px solid #264967;
	box-shadow: 0 5px 0 #264967;
	line-height: 1;
}

.search-result .result-btns2 a:hover {
	box-shadow: none;
	opacity: 1;
	margin-top: 5px;
	margin-bottom: -5px !important;
}

.search-result .result-btns2 .result-btn-text {
	display: flex;
	align-items: center;
	justify-content: center;
}

.search-result .result-btns2 .site-btn {
	color: #1e6097;
	background: #fff;
	border-color: #a0c1dd;
	box-shadow: 0 5px 0 #a0c1dd;
}

.search-result .result-btns2 .online-btn {
	background: #fe887e;
	border-color: #f55a60;
	box-shadow: 0 5px 0 #f55a60;
}

.search-result .result-btns2 .meeting-btn {
	background: #fda53d;
	border-color: #ef8a15;
	box-shadow: 0 5px 0 #ef8a15;
}

.search-result .result-btns2 ul .choku-btn {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
	padding: 0;
}

.search-result .result-btns2 a span {
	padding: 1em 0;
}

.search-result .result-btns2 .choku-btn-arrow {
	background: #FFF;
	margin-right: 1em;
	padding: 1em 0 1em 1em;
	position: relative;
}

.search-result .result-btns2 .choku-btn-arrow::after {
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 0;
	right: -1em;
	border-left: 1em solid #fff;
	border-top: 1.75em solid transparent;
	border-bottom: 1.75em solid transparent;
}

.search-result .result-btns2 .choku-btn-arrow span {
	display: inline-block;
	font-size: 1.5em;
	transform: translateY(0.125em) rotate(30deg);
	padding: 0;
}

.search-result .result-btns2 .online-btn .choku-btn-arrow {
	color: #f55a60;
}

.search-result .result-btns2 .meeting-btn .choku-btn-arrow {
	color: #ef8a15;
}

.search-result .result-btns2 .choku-btn-bg {
	flex-basis: 30%;
	position: relative;
	overflow: hidden;
}

.search-result .result-btns2 .choku-btn-bg::after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	background: center/contain no-repeat url("../images/common/btn_meeting_bg.png");
	position: absolute;
	right: 0;
	top: 30%;
}

.search-result .result-btns2 .online-btn .choku-btn-bg::after {
	background-image: url("../images/common/btn_online_bg.png");
}

.search-result .result-coverage {
	color: #565656;
	font-size: 1rem;
	margin-top: 1em;
}

.search-result .result-coverage-tab, .search-result .coverage-sp {
	display: none;
}

.search-result .coverage-area-title {
	font-size: 1em;
	padding: 0;
	border-bottom: 1px solid #1e6097;
}

.search-result .coverage-area-unit {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.search-result .coverage-area-col {
	flex-basis: 49%;
	display: flex;
	margin-bottom: 1em;
}

.search-result .coverage-image {
	flex-basis: 26%;
	margin-right: 1em;
}

.search-result .coverage-image figure {
	width: 100%;
	height: 0;
	padding-top: 66.4%;
	margin: 0;
	overflow: hidden;
	position: relative;
}

.search-result .coverage-image figure img {
	width: 100%;
	height: auto;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.search-result .coverage-post {
	flex: 1;
}

.search-result .coverage-post-title {
	font-size: 1em;
	margin: 0;
}

.search-result .coverage-post-text {
	font-size: 0.75em;
    margin: 0.3em 0 0;
}

.search-result .coverage-post-date {
	font-size: 0.75em;
    margin-top: 0.3em;
}

.search-result .coverage-more-wrap {
	text-align: right;
}

.search-result .coverage-more {
	font-size: 0.85em;
	font-weight: bold;
	background: transparent;
	border: 0;
	border-bottom: 1px solid currentColor;
	cursor: pointer;
}

.search-result .coverage-more::before {
	content: ">";
	display: inline-block;
	font-size: 0.8em;
	margin-right: 0.5em;
	padding-left: 0.25em;
	padding-bottom: 0.2em;
}

.search-result .coverage-more:hover {
	border-bottom-color: transparent;
}

/*--------------クリニック編集画面待合室---------------*/
.clinic-edit-waiting * {
	box-sizing: border-box;
}
.clinic-edit-waiting input[type="checkbox"] {
	display: none;
}
.clinic-edit-waiting input[type="checkbox"] + span {
	display: inline-block;
	color: #000 !important;
	width: auto;
	min-width: calc(2em + 1.5em);
	height: 1em;
	font-size: 1em !important;
	padding: 0 0 0 1.5em !important;
	line-height: 1;
	position: relative;
}
.clinic-edit-waiting input[type="checkbox"] + span::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	background: #fff;
	border: 1px solid #999;
	border-radius: 2px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.clinic-edit-waiting input[type="checkbox"]:checked + span::before {
	background: #ef81ab;
	border-color: #ef81ab;
}
.clinic-edit-waiting input[type="checkbox"]:checked + span::after {
	content: "";
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	background: center/contain no-repeat url("../images/common/icon_check.png");
	margin-left: 0.2em;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.clinic-edit-waiting input[type="radio"] {
	display: none;
}
.clinic-edit-waiting input[type="radio"] + span {
	display: inline-block;
	color: #000 !important;
	width: auto;
	min-width: calc(1em + 1.5em);
	height: 1em;
	font-size: 1em !important;
	padding: 0 0 0 1.5em !important;
	line-height: 1;
	position: relative;
}
.clinic-edit-waiting input[type="radio"] + span::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	background: #fff;
	border: 1px solid #999;
	border-radius: 2em;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.clinic-edit-waiting input[type="radio"]:checked + span::after {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	background: #ef81ab;
    border: 1px solid #ef81ab;
	border-color: #ef81ab;
	border-radius: 2em;
    position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.clinic-edit-waiting input[type="text"], .clinic-edit-waiting input[type="email"], .clinic-edit-waiting textarea {
	width: 100%;
	max-width: 100%;
	font-family: inherit;
	border: 1px solid #999;
	border-radius: 5px;
}
.clinic-edit-waiting textarea {
    padding: 2em;
}
.clinic-edit-waiting input.time {
	width: 6.5em !important;
    margin: 0 !important;
}
.clinic-edit-waiting .time-interval {
    display: inline-block;
    color: #000;
    margin: 0 !important;
    padding: 0 0.5em;
}
.clinic-edit-waiting fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}
.clinic-edit-waiting h3 {
	border-bottom: 1px solid #0169ca;
}
.clinic-edit-waiting h3:before {
	display: none;
}
.clinic-edit-waiting dl {
	display: block;
	margin: 0;
}
.clinic-edit-waiting dl dt {
	width: 100%;
}
.clinic-edit-waiting dl dd, .clinic-edit-waiting dl dd.adjust, .clinic-edit-waiting dl dd label.adjust {
	padding-left: 0;
	width: 100%;
}
.clinic-edit-waiting .watingroom-area-dd {
	background: #edf4fc;
	border: 1px solid #5e8fc6;
}
.clinic-edit-waiting .waitingroom-area-title {
	display: block;
	color: #fff;
	background: #5e8fc6;
	font-weight: bold;
	padding: 1em 2em;
	line-height: 1;
    position: relative;
    cursor: pointer;
}
.clinic-edit-waiting .waitingroom-area-title::before, .clinic-edit-waiting .waitingroom-area-title::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.clinic-edit-waiting .waitingroom-area-title::before {
    width: 2em;
    height: 2em;
    background: #fff;
    right: 1em;
    border-radius: 4em;
}
.clinic-edit-waiting .waitingroom-area-title::after {
    width: 1em;
    height: 1em;
	background: center/contain no-repeat url("../images/common/icon_down.png");
    right: 1.5em;
}
.clinic-edit-waiting .waitingroom-area-title.is-active::after {
    background-image: url("../images/common/icon_up.png");
}
.clinic-edit-waiting .waitingroom-area-contents {
	width: 90%;
	max-width: 840px;
	margin: 0 auto;
	padding: 2em 0;
    /* display: none; */
}
.clinic-edit-waiting #waitingroom-area1 .waitingroom-area-contents {
	display: block;
}
.clinic-edit-waiting .waitingroom-area-heading {
	display: block;
	color: #000;
	font-size: 1rem;
	font-weight: bold;
	margin: 1em 0 0.5em;
}
.clinic-edit-waiting .waitingroom-area-department label {
    display: inline-block;
    margin: 0 1em 0.5em 0;
}
.clinic-edit-waiting .waitingroom-time-tables {
    margin-top: 1em;
}
.clinic-edit-waiting .week {
    display: flex;
	flex-wrap: wrap;
    align-items: center;
    margin-bottom: 1em;
}
.clinic-edit-waiting .week-first {
    justify-content: space-between;
}
.clinic-edit-waiting .week dd {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
}
.clinic-edit-waiting .week .dow-name {
    font-size: 1em;
    color: #000;
    padding: 0;
    text-align: center;
}
.clinic-edit-waiting .time-minus a, .clinic-edit-waiting .WaitingRoom-time-minus a {
    display: inline-block;
    text-decoration: none;
}
.clinic-edit-waiting .time-minus span, .clinic-edit-waiting .WaitingRoom-time-minus span {
    color: #fff;
    background: #ef81ab !important;
    font-size: 1rem !important;
    font-weight: bold;
    padding: 0.5em 0.75em !important;
    border-radius: 5px;
    width: auto !important;
    white-space: nowrap;
}
.clinic-edit-waiting .watingroom-unit1 .WaitingRoom-time-minus span {
    padding: 0.25em 0.75em !important;
}
.clinic-edit-waiting .WaitingRoom-time-minus a {
    margin-left: 0.5em;
}
.clinic-edit-waiting #time-plus span {
    display: none;
}
.clinic-edit-waiting .waitingroom-time-plus-wrap {
	display: block;
    text-align: center;
    width: 100% !important;
}
.clinic-edit-waiting .waitingroom-time-plus {
    display: inline-block;
    width: 100%;
    color: #fff;
    background: #ef81ab;
    font-weight: bold;
    padding: 0.75em;
    border: 1px solid #967d87;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    line-height: 1;
}
.waitingroom-depertment-plus-wrap {
    display: block;
    text-align: center;
    margin: 1em 0;
    width: 100% !important;
}
.waitingroom-depertment-plus {
    display: inline-block;
    width: 100%;
    max-width: 335px;
    color: #fff;
    background-color: #0169ca;
    font-weight: bold;
    margin: 1em auto;
    padding: 0.8em 1em;
    text-align: center;
    position: relative;
    text-decoration: none;
    border: 1px solid #00274a;
    border-radius: 3em;
}
.waitingroom-depertment-plus::after {
    content: "＋";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
}
.waitingroom-depertment-minus-wrap {
    margin: 0 auto 2em !important;
}
.clinic-edit-waiting .waitingroom-payee dd {
    padding: 0 !important;
}
.clinic-edit-waiting .waitingroom-payee-item {
    width: 100%;
    max-width: 600px;
    margin-bottom: 1em;
    display: flex;
    align-items: center;
}
.clinic-edit-waiting .waitingroom-payee-item label {
    width: 8em;
    margin-right: 1em;
    text-align: right;
}
.clinic-edit-waiting .waitingroom-payee-item input[type="text"] {
    border-radius: 2px;
    width: calc(100% - 9em);
}
.clinic-edit-waiting .waitingroom-payee-type {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1em;
    display: flex;
    align-items: center;
}
.clinic-edit-waiting .waitingroom-payee-type legend {
    width: 8em;
    margin-right: 1em;
    text-align: right;
}
.clinic-edit-waiting .waitingroom-payee-type label {
    margin-right: 1em;
}
.clinic-edit-waiting .waitingroom-confirm-merchant .waitingroom-payee-item {
    max-width: 100%;
}
.clinic-edit-waiting .watingroom-unit1 .week-first + .week-second .WaitingRoom-time-minus {
    visibility: hidden;
}
.clinic-edit-waiting .waitingroom-depertment-plus2 {
    display: inline-block;
    width: auto;
    color: #fff;
    background-color: #0169ca;
    font-weight: bold;
    margin: 1em auto 0;
    padding: 0.75em 1.5em;
    text-align: center;
    position: relative;
    text-decoration: none;
    border: 1px solid #00274a;
    border-radius: 5px;
    line-height: 1;
}
.clinic-edit-waiting input[type="submit"].waitingroom-confirm {
    display: inline-block;
    width: 100%;
    max-width: 335px;
    color: #fff;
    background-color: #0169ca;
    font-weight: bold;
    margin: 0 auto 1em;
    padding: 0.8em 1em;
    text-align: center;
    position: relative;
    text-decoration: none;
    border: 1px solid #00274a;
    border-radius: 3em;
    cursor: pointer;
    transition: 0.5s ;
}
.clinic-edit-waiting input[type="submit"].waitingroom-confirm:hover {
	opacity: 0.7;
}
.waiting-clinic .page-title {
    color: #404040;
    background: transparent;
    font-size: 1.1875em;
    margin: 2em 0 0;
    padding: 0 0 5px;
    border-bottom: 4px solid #c8d3dd;
    position: relative;
}
.waiting-clinic .page-title:before {
    position: absolute;
    bottom: -4px;
    right: 0;
    width: 36%;
    height: 4px;
    content: "";
    background: #88b5df;
}
.clinic-edit-waiting input[type="submit"].waitingroom-confirm-reset {
    background-color: #7c7676;
    border-color: #674e4e;
}

/*--------------ログイン画面---------------*/
.u-login .main-contents * {
    box-sizing: border-box;
}
.u-login .login-title {
    font-size: 1.5em;
    border-left: 7px solid #4a83bc;
    padding: 0.25em 1em;
    line-height: 1;
}
.u-login .login-unit {
    display: flex;
    justify-content: space-between;
}
.u-login .login-col {
    flex-basis: 49%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875em;
    margin-bottom: 1em;
    padding: 3em 1.25em;
    border: 1px solid #bebebe;
    border-radius: 5px;
}
.u-login .login-heading {
    color: #565656;
    font-size: 1.125em;
    margin: 0 0 1em;
    padding: 0;
    border: 0;
    text-align: center;
}
.u-login .login-heading::before {
    display: none;
}
.u-login .login-form-item {
    width: 100%;
    max-width: 400px;
    margin: 0 auto 0.5em;
    position: relative;
    z-index: 1;
}
.u-login .login-col form {
    width: 100%;
}
.u-login .login-form-item::before {
    content: "";
    width: 1.0625em;
    height: 1.1875em;
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-70%);
    background-position: center;
    background-size: contain;
    background-repeat:  no-repeat;
    z-index: 3;
}
.u-login .login-form-email::before {
    background-image: url(../images/common/icon_login_email.png);
}
.u-login .login-form-password::before {
    background-image: url(../images/common/icon_login_pass.png);
}
.u-login .login-form-item input[type=email], .u-login .login-form-item input[type="password"] {
    width: 100%;
    max-width: 100%;
    font-family: inherit;
    padding: 0.5em 1em 0.5em 3em;
    border: 1px solid #a1a1a1;
    border-radius: 5px;
    line-height: 1;
    position: relative;
    z-index: 2;
}
.u-login .login-link:hover {
    text-decoration: none;
}
.u-login .login-button-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.u-login button, .u-login input[type="submit"], .u-login input[type="button"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
	background: transparent;
	font: inherit;
	cursor: pointer;
    transition: 0.5s;
}
.u-login button, .u-login input[type="submit"]:hover, .u-login input[type="button"]:hover {
    opacity: 0.7;
}
.u-login .login-button, .u-login button.login-button, .u-login input[type="submit"].login-button, .waiting input[type="button"].login-button {
	display: block;
	width: 100%;
    max-width: 400px;
	color: #fff;
	background: #6f6f6f;
    font-size: 1rem;
	font-weight: bold;
	margin: 1em auto;
	padding: 0.8em 1em;
	text-align: center;
	position: relative;
	text-decoration: none;
	border: 1px solid #231916;
	border-radius: 3em;
}
.u-login input[type="submit"].login-button-login {
    background: #ef81ab;
    border-color: #bc4572;
}
.u-login .login-text {
    display: block;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
}
.u-login .login-regist .login-button-wrap {
    padding-bottom: 1.5em;
}
.u-login .login-clinic {
    background: #eee;
    padding: 0.5em;
    border: 1px solid #ccc;
    text-align: center;
}

/*--------------------検索結果予約モーダル--------------------*/
.modal-reserve {
    width: 90%;
    max-width: 650px;
    color: #4d4d4d;
    font-size: 14px;
    text-align: left;
}
.modal-reserve .reserve-title {
    color: #565656;
    font-size: 15px;
    margin: 0 0 1em;
    padding: 0;
}
.modal-reserve .reserve-system {
    border-bottom: 1px dashed #4d4d4d;
    margin-bottom: 1em;
    padding-bottom: 1em;
}
.modal-reserve .reserve-system-list {
    display: flex;
}
.modal-reserve .reserve-system-list li {
    flex-basis: 49%;
    margin-right: 2%;
}
.modal-reserve .reserve-system-list li:nth-of-type(2n) {
    margin-right: 0;
}
.modal-reserve .reserve-button {
    display: block;
    color: #fff;
    background: #629cde;
    font-size: 15px;
    font-weight: bold;
    padding: 1.5em 1.5em 1.5em 3.5em;
    border: 2px solid #629cde;
    line-height: 1;
    position: relative;
    z-index: 1;
    text-decoration: none;
}
.modal-reserve .reserve-button::before {
    content: "";
    width: 1.53em;
    height: 1.53em;
    position: absolute;
    left: 1.25em;
    top: 50%;
    transform: translateY(-50%);
    background-position: center;
    background-size: contain;
    background-repeat:  no-repeat;
    z-index: 2;
}
.modal-reserve .reserve-button::after {
    content: "";
    border-style: solid;
    border-color: transparent #fff #fff transparent;
    border-width: 0.75em 0.75em 0.75em 0.75em;
    position: absolute;
    right: -1px;
    bottom: -1px;
}
.modal-reserve .reserve-button-url::before {
    background-image: url(../images/common/icon_web_w.png);
}
.modal-reserve .reserve-button-tel {
    color: #629cde;
    background: #fff;
}
.modal-reserve .reserve-button-tel::before {
    background-image: url(../images/common/icon_phone_b.png);
}
.modal-reserve .reserve-button-tel::after {
    border-color: transparent #629cde #629cde transparent;
}
.modal-reserve .reserve-app-list, .modal-reserve .reserve-app-list2 {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -0.5em;
}
.modal-reserve .reserve-app-list li, .modal-reserve .reserve-app-list2 li {
    margin-bottom: 1.5%;
}
.modal-reserve .reserve-app-list li h4, .modal-reserve .reserve-app-list2 li h4 {
    display: none;
}
.modal-reserve .reserve-app-list li a, .modal-reserve .reserve-app-list2 li a {
    display: block;
    background: #fff;
    line-height: 1;
}
.modal-reserve .reserve-app-list li img, .modal-reserve .reserve-app-list2 img {
    width: 100%;
    max-width: 100%;
	border: 1px solid #b5b5b6;
}
.modal-reserve .reserve-app-list li a, .modal-reserve .reserve-app-list2 li a {
    border: 2px solid #629cde;
}
.modal-reserve .reserve-app-list li a img, .modal-reserve .reserve-app-list2 li a img {
    border: 0;
}
.modal-reserve .reserve-app-list li {
    flex-basis: 28%;
    margin-right: 1.5%;
}
.modal-reserve .reserve-app-box {
    background: #f1f1f1;
    padding: 1.5em;
}
.modal-reserve .reserve-app-list2 li {
    flex-basis: 28%;
    margin-right: 1.5%;
}
.modal-reserve li {
    list-style: none;
}
.modal-reserve h3 {
    border: 0;
}
.modal-reserve h3::before {
    display: none;
}

/*-------------------症状から探す検索結果--------------------*/
.symp-result * {
    box-sizing: border-box;
}
.symp-result {
    color: #4d4d4d;
    margin-bottom: 50px;
}
.symp-result .symp-result-title {
    color: #4d4d4d;
    background: transparent;
    position: relative;
    font-size: 1em;
    margin: 2em 0 1em;
    padding: 0 0 5px;
    border-bottom: 4px solid #c8d3dd;
}
.symp-result .symp-result-title:before{
    position: absolute;
    bottom: -4px;
    right: 0;
    width: 36%;
    height: 4px;
    content: "";
    background: #88b5df;
}
.symp-result .symp-result-title span {
    font-size: 1.375em;
    margin-right: 0.5em;
}
.symp-result .symp-result-subtitle {
    color: #4d4d4d;
    margin: 1em 0 0.75em;
    padding: 0 0 0 2em;
    border-bottom: 0;
    position: relative;
}
.symp-result .symp-result-subtitle::before, .symp-result .symp-result-subtitle::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.symp-result .symp-result-subtitle::before {
    width: 1.5em;
    height: 1.5em;
    background: #4a83bc;
    border-radius: 50%;
    left: 0;
}
.symp-result .symp-result-subtitle::after {
    width: 1em;
    height: 1em;
    background: center / contain no-repeat url(../images/symptoms/icon_shojo.png);
    left: 0.25em;
}
.symp-result .symp-result-medical {
    margin-top: -0.75em;
}
.symp-result .symp-result-button,
.symp-column-wrap .symp-result-button {
    display: inline-block;
    color: #1e6097;
    background: #fff;
    border: 1px solid #1e6097;
    border-radius: 2em;
    cursor: pointer;
    margin: 0.75em 0.75em 0 0;
    line-height: 1;
    padding: 0.4em 1.25em;
    /* white-space: nowrap; */
    transition: 0.5s all;
    text-decoration: none;
}
.symp-result .symp-result-button:hover {
    color: #FFF;
    background: #1e6097;
}
.symp-result .symp-result-list {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #a6a6a6;
    border-left: 1px solid #a6a6a6;
}
.symp-result .symp-result-list dt, .symp-result .symp-result-list dd {
    flex-basis: 50%;
    margin: 0;
    padding: 1em;
    border-right: 1px solid #a6a6a6;
    border-bottom: 1px solid #a6a6a6;
}
.symp-result .symp-result-list dt {
    background: #eff1f1;
    font-weight: bold;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
}
.symp-result .symp-result-subject-title span {
    display: inline-block;
}
.symp-result .symp-result-item a {
    display: flex;
    text-decoration: none;
    color: #4d4d4d;
}
.symp-result .symp-result-image {
    flex-basis: 25%;
    margin: 0 1em 0 0;
}
.symp-result .symp-result-heading {
    color: #1e6097;
    font-size: 1.25em;
    margin: 0.5em 0 0 0;
    padding: 0;
    border: 0;
}
.symp-result .symp-result-heading::before {
    display: none;
}
.symp-result .symp-result-ruby {
    font-size: 0.8125em;
    margin: 0.5em 0 0 0;
}

/*-------------------病名辞典--------------------*/
.dictionary * {
    box-sizing: border-box;
}
.dictionary {
    color: #4d4d4d;
}
.dictionary .dictionary-title {
    background: transparent;
    padding: 0;
}
.dictionary .dictionary-title img {
    width: 100%;
}
.dictionary .dictionary-menu {
    display: flex;
    align-items: center;
    margin: 4em 0 2em;
}
.dictionary .dictionary-menu-title {
    color: #4d4d4d;
    flex-basis: 9em;
    flex-shrink: 0;
    margin: 0;
}
.dictionary .dictionary-menu-list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 0 0;
}
.dictionary .dictionary-menu-item {
    flex-basis: 100% / 10;
    margin-left: 10px;
    margin-bottom: 10px;
}
.dictionary .dictionary-menu-button {
    display: inline-block;
    width: 100%;
    background: #fff;
    font-family: inherit;
    font-size: 1.5rem;
    font-weight: bold;
    border: 1px solid #adbac7;
    border-bottom-width: 3px;
    border-radius: 3px;
    padding: 0.75em 0.95em 0.65em;
    line-height: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    cursor: pointer;
}
.dictionary .dictionary-menu-button.is-active {
    background: #edf4fc;
}
.dictionary .dictionary-list {
    list-style: none;
    margin: 0;
}
.dictionary .dictionary-list > li {
    margin-bottom: 3em;
    display: none;
}
.dictionary .dictionary-list > li.is-active {
    display: block;
}
.dictionary .dictionary-index {
    color: #4d4d4d;
    border-bottom: 1px dotted currentColor;
    position: relative;
    margin-bottom: -1em;
}
.dictionary .dictionary-index + p {
    margin-top: 2em;
}
.dictionary .dictionary-sub-list {
    list-style: none;
    margin: 0;
}
.dictionary .dictionary-button {
    display: inline-block;
    color: #1e6097;
    background: #fff;
    border: 1px solid #1e6097;
    border-radius: 2em;
    cursor: pointer;
    margin: 0.75em 0.75em 0 0;
    line-height: 1;
    padding: 0.4em 1.25em;
    /* white-space: nowrap; */
    transition: 0.5s all;
    text-decoration: none;
}
.dictionary .dictionary-button:hover {
    color: #FFF;
    background: #1e6097;
}
.dictionary .dictionary-label {
    color: #fff;
    background: #d9784a;
    margin: 2em 0 1em;
    padding: 0.5em;
    line-height: 1;
    border: 0;
}
.dictionary .dictionary-label::before {
    display: none;
}
.dictionary .dictionary-item-list {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #a6a6a6;
    border-left: 1px solid #a6a6a6;
}
.dictionary .dictionary-item-list dt, .dictionary .dictionary-item-list dd {
    flex-basis: 50%;
    margin: 0;
    padding: 1em;
    border-right: 1px solid #a6a6a6;
    border-bottom: 1px solid #a6a6a6;
}
.dictionary .dictionary-item-list dt {
    background: #eff1f1;
    font-weight: bold;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
}
.dictionary .dictionary-subject-title span {
    display: inline-block;
}
.dictionary .dictionary-contents a {
    display: flex;
    text-decoration: none;
    color: #4d4d4d;
}
.dictionary .dictionary-image {
    flex-basis: 25%;
    margin: 0 1em 0 0;
}
.dictionary .dictionary-heading {
    color: #1e6097;
    font-size: 1.25em;
    margin: 0.5em 0 0 0;
    padding: 0;
    border: 0;
}
.dictionary .dictionary-heading::before {
    display: none;
}
.dictionary .dictionary-ruby {
    font-size: 0.8125em;
    margin: 0.5em 0 0 0;
}

/*-------------------関連記事--------------------*/
.related-article, .related-article * {
    box-sizing: border-box;
}
.related-article-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    color: #4d4d4d;
    list-style: none;
    margin-top: -10px;
}
.related-article-list li {
    flex-basis: 49%;
    margin-top: 20px;
    display: none;
}
.related-article-list li.is-active {
    display: inline-flex;
}
.related-article-box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    height: 100%;
    font-size: 0.75rem;
    padding: 1em;
    border: 1px solid #a6a6a6;
    border-bottom-width: 3px;
    border-radius: 3px;
    text-decoration: none;
    position: relative;
}
.related-article-image-wrap {
    width: 26%;
}
.related-article-image {
    aspect-ratio: 122 / 81;
    margin: 0;
    background: center / cover no-repeat url(../images/common/sample-img2.png);
}
.related-article-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.related-article-contents {
    width: 70%;
}
.related-article-title {
    font-size: 1rem;
    margin: 0;
    padding: 0;
    border: 0;
}
.related-article-title::before {
    display: none;
}
.related-article-text {
    margin: 0.5em 0;
}
.related-article-date {
    color: #ababab;
    margin: 0;
}
.related-post-type {
    color: #fff;
    background: #6d9bc9;
    font-size: 0.875rem;
    font-weight: bold;
    margin: 0;
    padding: 0.5em 1em;
    text-align: center;
    line-height: 1;
    position: absolute;
    right: -1px;
    bottom: -1px;
}
.related-more-wrap {
    margin-top: 1em;
    text-align: right;
}
.related-more-wrap button {
    background: none;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.related-more {
    display: inline-block;
    color: #565656;
    font-size: 0.875rem;
    font-weight: bold;
    padding: 0 0 0 1.5em;
    border-bottom: 1px solid currentColor !important;
    text-decoration: none;
    position: relative;
    cursor: pointer;
}
.related-more::before {
    content: ">";
    font-size: 0.875em;
    position: absolute;
    left: 0.25em;
    top: 50%;
    transform: translateY(-52%) rotate(90deg);
}

/*------マイページ（ユーザー・クリニック）新デザイン-------*/
.mypage, .mypage * {
    box-sizing: border-box;
}
.mypage {
    color: #404040;
    font-size: 1rem;
    margin-top: 40px;
}
.mypage .mypage-header {
    display: flex;
    justify-content: space-between;
    border-bottom: 4px solid #c8d3dd;
    position: relative;
}
.mypage .mypage-header:before {
    position: absolute;
    bottom: -4px;
    right: 0;
    width: 36%;
    height: 4px;
    content: "";
    background: #88b5df;
}
.mypage .mypage-title {
    color: #404040;
    background: transparent;
    font-size: 1.1875em;
    margin: 0;
    padding: 0;
    line-height: 1;
}
.mypage .mypoint {
    display: flex;
    justify-content: flex-end;
}
.mypage .mypoint p {
    margin: 0 0 0 1em;
}
.mypage .mypoint a {
    color: #0169ca;
    font-size: 0.75em;
    text-decoration: none;
    position: relative;
    padding-left: 2em;
}
.mypage .mypoint a::before {
    content: "";
    display: inline-block;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.mypage .mypoint-history a::before{
    width: 1.2em;
    height: 1.2em;
    background-image: url(../images/common/icon-point-mark.png);
}
.mypage .mypoint-rank.bronze a::before{
    width: 1.2em;
    height: 1em;
    background-image: url(../images/common/icon-rank-bronze.png);
}
.mypage .my-msg {
    display: flex;
    margin: 3em 0 0;
}
.mypage .my-msg-icon {
    width: 50px;
    height: 50px;
    background: #1e6097;
    margin-right: 6px;
    border-radius: 5px;
    position: relative;
}
.mypage .my-msg-icon::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: center / contain no-repeat url(../images/common/icon_notice.png);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.mypage .my-msg-unit {
    display: flex;
    flex: 1;
    padding: 1em;
    border: 1px solid #878787;
    border-radius: 5px;
}
.mypage .my-msg-heading {
    font-size: 1rem;
    font-weight: normal;
    margin: 0 1em 0 0;
    position: relative;
    padding-right: 1em;
    line-height: 1;
}
.mypage .my-msg-heading::after {
    content: "";
    display: inline-block;
    width: 1px;
    height: 100%;
    background: #838383;
    position: absolute;
    right: 0;
    top: 0;
}
.mypage .my-msg-list {
    list-style: none;
    line-height: 1;
}
.mypage .my-msg-item a {
    color: #1e6097;
    text-decoration: none;
}
.mypage .my-msg-item .my-msg-date {
    margin-right: 1em;
}
.mypage .my-utility-list {
    list-style: none;
    display: flex;
    justify-content: center;
    margin: 3em auto 0;
    width: 100%;
    max-width: 538px;
}
.mypage .my-utility-item {
    flex-basis: 50%;
    margin: 0 10px;
}
.mypage .my-utility-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #fff;
    font-size: 0.875em;
    font-weight: bold;
    border: 1px solid #c2c2c2;
    border-radius: 5px;
    padding: 0.75em 1em;
    text-decoration: none;
    width: 258px;
    height: 100%;
}
.mypage .my-utility-item-favorite .my-utility-link {
    background: #a3cf43;
    border-color: #73bf28;
}
.mypage .my-utility-item-point .my-utility-link {
    background: #43afd2;
    border-color: #3583b5;
}
.mypage .my-utility-link img {
    height: 2.2em;
}
.mypage .my-utility-link-inner {
    flex: 1;
    text-align: center;
}
.mypage .my-utility-link-inner .i-block {
    display: inline-block;
}
.mypage .my-menu-heading {
    color: #404040;
    background: transparent !important;
    font-size: 1.1875em !important;
    border-bottom: 1px dotted #4d4d4d;
    margin: 40px 0 1em;
    padding: 0 !important;
}
.mypage .my-menu-list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -1em;
}
.mypage .my-menu-item {
    flex-basis: 32%;
    margin-right: 2%;
    margin-bottom: 1em;
}
.mypage .my-menu-item:nth-of-type(3n) {
    margin-right: 0;
}
.mypage .my-menu-item a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    font-weight: bold;
    border: 1px solid #c2c2c2;
    border-radius: 9px;
    padding: 1em;
    text-decoration: none;
}
.mypage .my-menu-item a img {
    height: 2.25em;
}
.mypage .my-menu-item a span {
    flex: 1;
    text-align: center;
}
.mypage .my-setting {
    background: #f5f5f5;
    margin-top: 60px;
    padding-bottom: 30px;
}
.mypage .my-setting-heading {
    color: #404040;
    background: #e8e8e8;
    margin: 0 0 30px;
    padding: 0.5em 4%;
    line-height: 1;
}
.mypage .my-setting-list {
    list-style: none;
    margin: 0 4%;
}
.mypage .my-setting-item {
    font-size: 0.875em;
    font-weight: bold;
    padding: 0.5em;
    border-bottom: 1px solid #1e6097;
    line-height: 1;
}
.mypage .my-setting-item a {
    display: flex;
    align-items: center;
    color: #1e6097;
    text-decoration: none;
}
.mypage .my-setting-item a img {
    margin-right: 0.5em;
}
.mypage .my-setting-item span {
    flex: 1;
    position: relative;
}
.mypage .my-setting-item span::after {
    content: "→";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.mypage .my-menu-item.my-menu-waiting a img {
    height: 2.625em;
}
.page-mypage {
    overflow-x: hidden;
}

/*-----------クリニック管理画面新デザイン------------*/
.clinic-admin2 {
    background: #fff;
}
.clinic-admin2 .mypage .mypage-title {
    padding-bottom: 0.25em;
}
.clinic-admin2 .mypage .my-menu-waiting {
    color: #fff;
    background: #f29e79;
    border-color: #e77340;
}
.clinic-admin2 .mypage .my-menu-history {
    color: #fff;
    background: #7aaad5;
    border-color: #3d7db7;
}
.clinic-side {
    border: 12px solid #edf4fc;
}
.clinic-side .clinic-side-inner {
    border: 1px solid #4a83bc;
}
.clinic-side .clinic-side-title {
    display: block;
    color: #404040;
    font-size: 1.3125em;
    margin: 0;
    padding: 1.25em 20px 1em;
    border-bottom: 2px solid #4a83bc;
    line-height: 1;
    position: relative;
}
.clinic-side .clinic-side-title::after {
    content: "";
    width: 1.15em;
    height: 1.15em;
    background: center / contain no-repeat url(../images/common/icon_dots.png);
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
.clinic-side .clinic-side-contents {
    padding: 0 20px;
    margin-top: 1.75em;
}
.clinic-side .clinic-side-contents:last-child {
    margin-bottom: 2em;
}
.clinic-side .clinic-side-heading {
    color: #404040;
    font-size: 1em;
    font-weight: bold;
    margin: 0;
    padding: 0.25em 0;
    border-bottom: 1px dotted #4a83bc;
}
.clinic-side .clinic-side-heading::before {
    display: none;
}
.clinic-side .clinic-side-list {
    list-style: none;
}
.clinic-side .clinic-side-item {
    font-size: 0.8125em;
    border-bottom: 1px solid #1e6097;
}
.clinic-side .clinic-side-item a {
    display: block;
    color: #1e6097;
    font-weight: bold;
    padding: 0.5em 0 0.25em;
    text-decoration: none;
    position: relative;
}
.clinic-side .clinic-side-item a::after {
    content: "→";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.clinic-side .clinic-side-item a img {
    margin-right: 0.25em;
}

/*-----------クリニック詳細画面新デザイン------------*/
.page-clinic-detail * {
    box-sizing: border-box;
}
.page-clinic-detail {
    color: #4d4d4d;
}
.page-clinic-detail .contents {
    margin-bottom: 30px;
}
.page-clinic-detail h3 {
    position: relative;
    margin: 0;
    padding: 0;
    border-bottom: 0;
    font-size: 1rem;
}
.page-clinic-detail h3::before {
    display: none;
} 
.page-clinic-detail .clinic-detail-head {
    border-bottom: 4px solid #c8d3dd;
    position: relative;
}
.page-clinic-detail .clinic-detail-head:after {
    position: absolute;
    bottom: -4px;
    right: 0;
    width: 36%;
    height: 4px;
    content: "";
    background: #88b5df;
}
.page-clinic-detail .clinic-detail-head-group {
    display: flex;
    flex: 1;
}
.page-clinic-detail .clinic-detail-title {
    color: #4d4d4d !important;
    background: transparent !important;
    font-size: 26px !important;
    margin: 0 20px 0 0 !important;
    padding: 0 !important;
}
.page-clinic-detail .detail-head-appli {
    flex-shrink: 1;
    display: flex;
    flex-wrap: wrap;
    margin-right: 20px;
}
.page-clinic-detail .detail-head-appli li {
    list-style: none;
    margin: 0 5px 5px 0;
}
.page-clinic-detail .detail-head-appli a {
    display: inline-block;
    background: #fff;
}
.page-clinic-detail .detail-head-appli img {
    width: 70px;
}
.page-clinic-detail .detail-head-favorite .favorite-button {
    display: inline-block;
    width: 52px;
    margin: 0 6px 6px 0;
    padding: 0;
    text-align: center;
    background: transparent;
    border: 0;
    cursor: pointer;
}
.page-clinic-detail .detail-head-favorite .favorite-icon {
    content: "";
    display: inline-block;
    width: 36px;
    height: 36px;
    background: center/contain no-repeat url(../images/common/icon_favorite_off.png);
}
.page-clinic-detail .detail-head-favorite .favorite-button.favorite .favorite-icon {
    background-image: url(../images/common/icon_favorite.png);
}
.page-clinic-detail .detail-head-favorite .favorite-text {
    font-size: 7px;
    margin-top: 1em;
    display: none;
}
.page-clinic-detail .detail-info {
    display: flex;
    align-items: flex-start;
    margin: 20px auto 0;
}
.page-clinic-detail .detail-main-img {
    width: 60%;
    margin-right: 3%;
}
.page-clinic-detail .detail-contents1 {
    width: 47%;
}
.page-clinic-detail .detail-contents1 .clinic-rating {
    flex-direction: column;
    margin: 0;
    align-items: flex-start;
}
.page-clinic-detail .detail-contents1 .comment-num {
    margin: 0.5em 0;
}
.page-clinic-detail .detail-contents1 .comment-link {
    display: inline-block;
    color: #4d4d4d;
    font-size: 13px;
    font-weight: normal;
    margin: 1em 0;
    padding-left: 30px;
    position: relative;
    flex-shrink: 0;
    text-decoration: none;
}
.page-clinic-detail .detail-contents1 .comment-link::before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 20px;
    background: center/contain no-repeat url("../images/common/icon_message.png");
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.page-clinic-detail .detail-contents1 .comment-count {
    color: #1e6097;
    font-weight: bold;
}
.page-clinic-detail .detail-contents1 .comment-num2 {
    color: #1e6097;
    font-size: 1.6em;
    margin-left: 0.25em;
}
.page-clinic-detail .detail-contents1 .comment-balloon, .page-clinic-detail .comments-clinic .comment-balloon {
    color: #fff;
    background: #1e6097;
    text-align: center;
    padding: 0.5em 1em;
    border-radius: 2em;
    font-size: 15px;
}
.page-clinic-detail .detail-contents1 .comment-balloon span, .page-clinic-detail .comments-clinic .comment-balloon span {
    display: inline-block;
}
.page-clinic-detail .detail-contents1 .comment-balloon::before, .page-clinic-detail .comments-clinic .comment-balloon::before {
    border-right-color: #1e6097;
    top: 50%;
    left: -15px;
    border: 10px solid transparent;
    border-bottom: 10px solid #1e6097;
    margin-top: 0;
    transform: translateY(-50%) rotate(-90deg);
}
.page-clinic-detail .detail-contents1 .comment-invitation {
    font-weight: normal;
}
.page-clinic-detail .detail-contents1 .clinic-data-list {
    margin-bottom: 1em;
}
.page-clinic-detail .detail-contents1 .clinic-data-list li {
    border-bottom: 1px dotted #b6b6b6;
    padding: 0.5em 1em;
    padding-left: calc(1em + 1.53em) !important;
}
.page-clinic-detail .detail-contents1 .clinic-data-list li::before {
    width: 1.53em;
    height: 1.53em;
    top: 0.15em;
    left: 0.5em;
}
.page-clinic-detail .detail-contents1 .clinic-data-list li:last-of-type {
    border-bottom: 0;
}
.page-clinic-detail .detail-contents1 .clinic-data-list li .map-btn {
    display: inline-block;
    color: #1e6097;
    font-size: 9px;
    margin-left: 1em;
    padding: 0.2em 0.5em;
    border: 2px solid currentColor;
    border-radius: 2em;
    text-decoration: none;
}
.page-clinic-detail .detail-contents1 .clinic-data-list  li.clinic-address::before {
    background-image: url(../images/common/icon_map_lg.png);
}
.page-clinic-detail .detail-contents1 .clinic-data-list  li.clinic-transportation::before {
    background-image: url(../images/common/icon_train_lg.png);
}
.page-clinic-detail .detail-contents1 .clinic-data-list  li.clinic-tel::before {
    background-image: url(../images/common/icon_phone_lg.png);
}
.page-clinic-detail .detail-contents1 .clinic-data-list  li.clinic-department::before {
    background-image: url(../images/common/icon_doctor2_lg.png);
}
.page-clinic-detail .from-clinic-heading {
    color: #4d4d4d;
    font-size: 22px;
    margin: 1em 0 0;
}
.page-clinic-detail .detail-menu-list {
    list-style: none;
    display: flex;
    margin: 50px 0 0;
    border: 1px solid #d9d7d7;
    border-bottom-width: 5px;
}
.page-clinic-detail .detail-menu-list li {
    flex-basis: calc(100% / 7);
    padding: 6px;
    position: relative;
    flex: 1;
}
.page-clinic-detail .detail-menu-list li::before {
    content: "";
    display: inline-block;
    background: #d9d7d7;
    width: 1px;
    height: 60%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.page-clinic-detail .detail-menu-list li:first-child:before {
    display: none;
}
.page-clinic-detail .detail-menu-list a {
    display: block;
    background: #fff;
    font-size: 15px;
    font-weight: bold;
    padding: 1em;
    border-radius: 6px;
    text-align: center;
    text-decoration: none;
}
.page-clinic-detail .detail-menu-list a:hover, .page-clinic-detail .detail-menu-list a:focus {
    background: #edf4fc;
    opacity: 1;
}
.page-clinic-detail .title-h-second {
    display: block;
    color: #4d4d4d;
    font-family: "Noto Sans JP", Helvetica Neue, Helvetica, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    font-size: 20px;
    margin: 30px 0 1em;
    padding: 0 0 0.25em;
    border-bottom: 1px dotted currentColor;
}
.page-clinic-detail .detail-media {
    display: flex;
    flex-wrap: wrap;
	margin-right: -2%;
}
.page-clinic-detail .detail-media .movie {
    flex-basis: calc((100% - 2% * 3) / 3);
    margin: 0 2% 20px 0;
    border: 1px solid #c4c4c4;
}
.page-clinic-detail .detail-media .thumbnail-block {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.page-clinic-detail .detail-media .movie-image {
    width: 100%;
    height: 0;
    margin: 0;
    padding: 56.25% 0 0;
    position: relative;
    overflow: hidden;
}
.page-clinic-detail .detail-media .thumbnail, .page-clinic-detail .detail-media .movie-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
}
.page-clinic-detail .clinic-detail-feature {
    background: #edf4fc;
    margin: 30px 0 0;
    padding: 20px;
}
.page-clinic-detail .detail-feature-heading {
    color: #1e6097;
    display: block;
    font-size: 25px;
    font-family: "Noto Sans JP", Helvetica Neue, Helvetica, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    margin: 0 0 20px;
    padding: 0 0 0 2em;
    line-height: 1;
    position: relative;
}
.page-clinic-detail .detail-feature-heading::before {
    content: "";
    display: inline-block;
    width: 1.36em;
    height: 1.36em;
    background: center/contain no-repeat url("../images/common/icon_commitment.png");
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.page-clinic-detail .clinic-detail-good .detail-feature-heading::before {
    background-image: url("../images/common/icon_good.png");
}
.page-clinic-detail .detail-feature-count {
    font-size: 0.64em;
    margin-right: 0.5em;
    vertical-align: middle;
}
.page-clinic-detail .detail-feature-list {
    background: #fff;
    padding: 0 20px 20px;
    border: 2px solid #629cde;
}
.page-clinic-detail .feature-contents {
    margin: 0;
}
.page-clinic-detail .detail-feature-unit {
    display: flex;
    flex-wrap: wrap;
}
.page-clinic-detail .detail-feature-unit > * {
    flex-basis: calc((100% - 30px) / 2);
    margin-right: 30px;
}
.page-clinic-detail .detail-feature-unit > *:nth-of-type(2n) {
    margin-right: 0;
}
.page-clinic-detail .detail-feature-title {
    padding: 20px 0 10px 78px;
    position: relative;
    border-bottom: 1px solid #c8cfd8;
    min-height: 80px;
}
.page-clinic-detail .detail-feature-mark {
    display: inline-block;
    font-family: "Noto Sans JP", Helvetica Neue, Helvetica, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    font-weight: bold;
    position: absolute;
    top: -8px;
    left: 0;
    margin: 0;
    padding: 15px 13px 25px 10px;
    z-index: 2;
    text-align: center;
    color: #fff;
    background: center/contain no-repeat url("../images/common/bg_feature-mark.png");
    line-height: 1;
}
.page-clinic-detail .feature-mark-title {
    display: block;
    font-size: 11px;
}
.page-clinic-detail .feature-mark-num {
    display: block;
    font-size: 28px;
}
.page-clinic-detail .feature-subtitle {
    font-weight: bold;
    margin: 0 0 10px;
}
.page-clinic-detail .feature-maintitle {
    color: #1e6097;
    font-size: 21px;
    font-weight: bold;
    margin: 0;
}
.page-clinic-detail .feature-text p, .page-clinic-detail .feature-image figure {
    margin: 1em 0 0;
}
.page-clinic-detail .feature-image figure {
    width: 100%;
    height: 0;
    padding: 56.25% 0 0;
    position: relative;
    overflow: hidden;
}
.page-clinic-detail .feature-image figure img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.page-clinic-detail .feature-note {
    background: #eee;
    font-size: 11px;
    padding: 1em;
}
.page-clinic-detail .feature-note p {
    margin: 0;
}
.page-clinic-detail .feature-note p + p {
    margin-top: 1em;
}
.page-clinic-detail .medical-date-wrap dl {
    border-right: 1px solid #ccc;
}
.page-clinic-detail .medical-date-wrap dl:last-child {
    border-right: 0;
}
.page-clinic-detail .medical-date-wrap dl dd {
    border-bottom: 1px solid #ccc;
}
.page-clinic-detail .medical-date-wrap dl dd:last-child {
    border-bottom: 0;
}
.page-clinic-detail .medical-date-saturday {
    background: #dfedfc;
}
.page-clinic-detail .medical-date-sunday, .page-clinic-detail .medical-date-holiday {
    background: #fbe4e4;
}
.page-clinic-detail .clinic-data {
    margin: 1em 0;
}
.page-clinic-detail .clinic-data dt {
    width: calc(10em + 20px * 2);
    border-right: 0;
}
.page-clinic-detail .clinic-data dd {
    width: calc(100% - (10em + 20px * 2));
}
.page-clinic-detail .access-clinic dl dt, .page-clinic-detail .access-clinic dl dd {
    width: auto;
    margin: 0;
}
.page-clinic-detail .comment {
    border: 1px solid #a6a6a6;
    border-bottom-width: 3px;
}
.page-clinic-detail .comment-unit {
    display: flex;
}
.page-clinic-detail .comment-sub {
    flex-basis: 17%;
    padding-right: 15px;
    border-right: 1px dotted currentColor;
}
.page-clinic-detail .comment-main {
    flex: 1;
    padding-left: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.page-clinic-detail .comment-header {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -15px;
}
.page-clinic-detail .clinic-stars {
    margin: 0 15px 15px 0;
    line-height: 1;
    flex-shrink: 0;
}
.page-clinic-detail .comment-header h3 {
    margin: 0 0 15px;
}
.page-clinic-detail .comment-time {
    padding-left: 0;
}
.page-clinic-detail .comment-time::before {
    display: none;
}
.page-clinic-detail .comment-more {
    display: none;
}
.page-clinic-detail .comment-footer {
    background: #edf4fc;
}
.page-clinic-detail .comment-footer a {
    text-decoration: none;
    border-bottom: 1px solid currentColor;
}
.page-clinic-detail .comment-footer a:hover {
    border-bottom-color: transparent;
    opacity: 1;
}
.page-clinic-detail .coverage-department-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
}
.page-clinic-detail .coverage-department-button {
    display: inline-block;
    color: #1e6097;
    background: #fff;
    border: 1px solid #1e6097;
    border-radius: 2em;
    cursor: pointer;
    margin: 0 0.75em 0.75em 0;
    line-height: 1;
    padding: 0.4em 1.25em;
    transition: 0.5s all;
    text-decoration: none;
}
.page-clinic-detail .coverage-unit {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.page-clinic-detail .coverage-unit .coverage-col {
    flex-basis: 49%;
    display: flex;
    margin-bottom: 1em;
    padding: 12px;
    padding-bottom: calc(2px + 28px);
    border: 1px solid #a6a6a6;
    border-bottom-width: 3px;
    border-radius: 3px;
    text-decoration: none;
    position: relative;
}
.page-clinic-detail .coverage-unit .coverage-image {
    flex-basis: 26%;
    margin-right: 1em;
}
.page-clinic-detail .coverage-unit .coverage-image figure {
    width: 100%;
    height: 0;
    padding-top: 66.4%;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.page-clinic-detail .coverage-unit .coverage-image figure img {
    width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.page-clinic-detail .coverage-unit .coverage-post {
    flex: 1;
}
.page-clinic-detail .coverage-unit .coverage-post-title {
    font-size: 1em;
    margin: 0;
}
.page-clinic-detail .coverage-unit .coverage-post-text {
    font-size: 0.75em;
    margin: 0.3em 0 0;
}
.page-clinic-detail .coverage-unit .coverage-post-text span {
    display: inline-block;
}
.page-clinic-detail .coverage-unit .coverage-post-date {
    font-size: 0.75em;
    margin: 0.3em 0 0;
}
.page-clinic-detail .coverage-unit .coverage-post-category {
    display: inline-block;
    color: #fff;
    background: #6d9bc9;
    font-size: 14px;
    font-weight: bold;
    padding: 0.5em 1em;
    border-bottom-right-radius: 3px;
    line-height: 1;
    position: absolute;
    right: -1px;
    bottom: -1px;
}
.page-clinic-detail .coverage-unit .category-karadas {
    background: #b4945f;
}
.page-clinic-detail .coverage-unit .category-kodomo {
    background: #ffc774;
}
.page-clinic-detail .coverage-more-wrap {
    text-align: right;
    margin: 2em 0;
}
.page-clinic-detail .coverage-more {
    color: #565656;
    font-size: 14px;
    font-weight: bold;
    padding-left: 1.3em;
    position: relative;
	cursor: pointer;
}
.page-clinic-detail .coverage-more::before {
    content: "";
    display: inline-block;
    width: 0.8em;
    height: 0.8em;
    background: center/contain no-repeat url("../images/common/icon_down.png");
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.page-clinic-detail .coverage-unit-more {
    display: none;
}
.page-clinic-detail .detail-head-appli + .detail-head-appli {
    margin-left: -20px;
}
.page-clinic-detail .detail-head-appli .result-btn-reserv {
    display: inline-block;
    color: #fff;
    background: #0169ca;
    font-size: 10px;
    padding: 0.5em 1em;
}
.page-clinic-detail .sp-clinic-btns .choku-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #fff;
    font-size: 12px;
    font-weight: bold;
    width: 100%;
    margin-bottom: 0;
    border: 1px solid currentColor;
    border-bottom-width: 3px;
    text-decoration: none;
    position: relative;
    line-height: 1;
}
.page-clinic-detail .sp-clinic-btns .choku-btn::after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
}
.page-clinic-detail .sp-clinic-btns .choku-btn:hover {
    opacity: 1;
}
.page-clinic-detail .sp-clinic-btns .choku-btn > span {
    width: 100%;
}
.page-clinic-detail .sp-clinic-btns .choku-btn-arrow {
    padding: 1.5% 0.5em 0;
    font-size: 11px;
    position: relative;
}
.page-clinic-detail .sp-clinic-btns .choku-btn-arrow::after {
    content: "";
    width: 100%;
    height: 0;
    background: top center/contain no-repeat url("../images/common/button_line.png");
    padding-top: 3%;
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
}
.page-clinic-detail .sp-clinic-btns .choku-btn-arrow span {
    display: inline-block;
    font-size: 1.5em;
    transform: translateY(0.125em) rotate(30deg);
}
.page-clinic-detail .sp-clinic-btns .choku-btn-text {
    color: #fff;
    padding: 0.75em;
    padding-top: calc(3% + 0.75em);
}
.page-clinic-detail .sp-clinic-btns .online-btn::after {
    background: #f55a60;
}
.page-clinic-detail .sp-clinic-btns .meeting-btn::after {
    background: #ef8a15;
}
.page-clinic-detail .sp-clinic-btns .online-btn {
    color: #f55a60;
}
.page-clinic-detail .sp-clinic-btns .meeting-btn {
    color: #ef8a15;
}
.page-clinic-detail .sp-clinic-btns .online-btn .choku-btn-text {
    background: #fe887e;
}
.page-clinic-detail .sp-clinic-btns .meeting-btn .choku-btn-text {
    background: #fda53d;
}

/*-----------クリニック詳細サイドメニュー------------*/
.side-clinicdetail {
    color: #4d4d4d;
    margin-bottom: 30px;
}
.side-clinicdetail .side-box {
    background: #edf4fc;
    padding: 10px;
}
.side-clinicdetail .side-box-inner {
    background: #fff;
    padding: 1em;
    border: 1px solid #4a83bc;
}
.side-clinicdetail .side-tel, .side-clinicdetail-sp .side-tel {
    display: inline-block;
    color: #1e6097;
    font-family: "Noto Sans JP", Helvetica Neue, Helvetica, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    font-size: 28px;
    font-weight: bold;
    width: 100%;
    margin: 0 0 0.5em;
    padding-left: 56px;
    text-align: justify;
    position: relative;
    cursor: pointer;
}
.side-clinicdetail .side-tel::before, .side-clinicdetail-sp .side-tel::before {
    content: "";
    display: inline-block;
    width: 43px;
    height: 33px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: center / contain no-repeat url(../images/common/icon_phone_bl.png);
}
.side-clinicdetail .side-clinic-btns ul {
    list-style: none;
}
.side-clinicdetail .side-clinic-btns ul li {
    margin-top: 1em;
    margin-right: 1%;
}
.side-clinicdetail .side-clinic-btns ul li:nth-of-type(3), .side-clinicdetail .side-clinic-btns ul li:nth-of-type(4) {
    margin-right: 0;
}
.side-clinicdetail .side-clinic-btns a {
    display: block;
    width: 100%;
    color: #fff;
    background: #1e6097;
    font-size: 13px;
    font-weight: bold;
    padding: 0.25em 1em;
    text-align: center;
    border-radius: 5px;
    border: 2px solid #264967;
    box-shadow: 0 5px 0 #264967;
    line-height: 1;
}
.side-clinicdetail .side-clinic-btns .choku-btn-text {
    display: flex;
    align-items: center;
    justify-content: center;
}
.side-clinicdetail .side-clinic-btns .online-btn {
    background: #fe887e;
    border-color: #f55a60;
    box-shadow: 0 5px 0 #f55a60;
}
.side-clinicdetail .side-clinic-btns .meeting-btn {
    background: #fda53d;
    border-color: #ef8a15;
    box-shadow: 0 5px 0 #ef8a15;
}
.side-clinicdetail .side-clinic-btns ul .choku-btn {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
    padding: 0;
    text-decoration: none;
}
.side-clinicdetail .side-clinic-btns a span {
    padding: 1em 0;
}
.side-clinicdetail .side-clinic-btns .choku-btn-arrow {
    background: #FFF;
    font-size: 11px;
    margin-right: 1em;
    padding: 1em 0 1em 1em;
    position: relative;
}
.side-clinicdetail .side-clinic-btns .choku-btn-arrow::after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    right: -1em;
    border-left: 1em solid #fff;
    border-top: 1.75em solid transparent;
    border-bottom: 1.75em solid transparent;
}
.side-clinicdetail .side-clinic-btns .choku-btn-arrow span {
    display: inline-block;
    font-size: 1.5em;
    transform: translateY(0.125em) rotate(30deg);
    padding: 0;
}

.side-clinicdetail .side-clinic-btns .online-btn .choku-btn-arrow {
    color: #f55a60;
}
.side-clinicdetail .side-clinic-btns .meeting-btn .choku-btn-arrow {
    color: #ef8a15;
}
.side-clinicdetail .side-clinic-btns .choku-btn-bg {
    flex-basis: 20%;
    position: relative;
    overflow: hidden;
}
.side-clinicdetail .side-clinic-btns .choku-btn-bg::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 110%;
    background: center/contain no-repeat url("../images/common/btn_meeting_bg2.png");
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.side-clinicdetail .side-clinic-btns .online-btn .choku-btn-bg::after {
    background-image: url("../images/common/btn_online_bg.png");
}
.side-clinicdetail .side-clinic-btns .message-btn {
    color: #1e6097;
    background: #fff;
    border-color: #a0c1dd;
    box-shadow: 0 5px 0 #a0c1dd;
}
.side-clinicdetail .side-clinic-btns .message-btn .choku-btn-bg::after {
    width: 100%;
    height: 60%;
    background-image: url("../images/common/btn_message_bg.png");
}
.side-clinicdetail .side-clinic-btns .message-btn .choku-btn-text {
    flex: 1;
}
.side-clinicdetail .side-sns-title, .side-clinicdetail-sp .side-tel-title {
    color: #4d4d4d;
    font-family: "Noto Sans JP", Helvetica Neue, Helvetica, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
    font-size: 1rem;
    font-weight: normal;
    margin: 1.5em 0 1em;
    text-align: center;
}
.side-clinicdetail .side-sns-list {
    list-style: none;
    display: flex;
    justify-content: space-between;
}
.side-clinicdetail .side-sns-list li {
    flex-basis: calc((100% - 12px) / 3);
}
.side-clinicdetail .side-sns-list a {
    display: block;
    padding: 8px;
    border: 1px solid currentColor;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
}
.side-clinicdetail .side-sns-mark {
    content: "";
    display: inline-block;
    width: 54px;
    height: 54px;
    background: center/contain no-repeat url("../images/common/icon_twitter.png");
}
.side-clinicdetail .side-sns-text {
    display: block;
}
.side-clinicdetail .side-sns-list .facebook a {
    color: #1e6db6;
}
.side-clinicdetail .facebook .side-sns-mark {
    background-image: url("../images/common/icon_facebook2.png");
}
.side-clinicdetail .side-sns-list .twitter a {
    color: #1d9bf0;
}
.side-clinicdetail .twitter .side-sns-mark {
    background-image: url("../images/common/icon_twitter2.png");
}
.side-clinicdetail .side-sns-list .line a {
    color: #06c755;
}
.side-clinicdetail .line .side-sns-mark {
    background-image: url("../images/common/icon_line.png");
}
.side-clinicdetail .from-clinic {
    margin: 35px 0;
}
.side-clinicdetail .from-clinic-title {
    display: block;
    color: #4d4d4d;
    font-size: 18px;
    margin: 0 0 1em;
    padding: 0 0 0.25em;
    border-bottom: 1px dotted currentColor;
}
.side-clinicdetail .from-clinic dl {
    flex-direction: column;
}
.side-clinicdetail .from-clinic dt, .side-clinicdetail .from-clinic dd {
    width: 100%;
}
.side-clinicdetail .from-clinic dt a {
    text-decoration: none;
}
.side-clinicdetail .from-clinic dd {
    color: #ababab;
    font-size: 12px;
}
.side-clinicdetail .from-clinic .tr {
    margin-bottom: 0;
}
.side-clinicdetail .from-clinic .tr a {
    border-bottom: 1px solid currentColor;
    text-decoration: none;
}
.side-clinicdetail .from-clinic .tr a::before {
    display: inline-block;
    content: ">>";
    margin-right: 0.5em;
}

/*-----------検索ページ新検索フォーム------------*/
.page-search .page-search-title {
    color: #45484b;
    background: transparent;
    font-size: 1.25rem;
    margin: 40px 0 0;
    padding: 0;
}

/*-----------登録関連 新デザイン------------*/
.registration .registration-title {
	color: #231916;
	background: transparent;
	font-size: 1.6875em;
	margin: 1em 0;
	padding: 0;
	text-align: center;
}
.registration .registration-text {
	text-align: center;
}
