@charset "utf-8";

html,body {margin:0;padding:0;box-sizing:border-box;text-align:center;}
header,article,section,a,ul,ol,li,dl,dt,dd,p,span,strong,h1,h2,h3,h4,h5,h6,i,b,aside,menu,nav,div {
  margin:0;padding:0;box-sizing:border-box;
}
h1,h2,h3,h4,h5,h6 {font-weight:100;}
input,textarea,button {box-sizing:border-box;margin:0;padding:0;}
body {
    font-size:14px;
    line-height:1.8em;
    color:#595757;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
}

ul,ol,li {list-style: none;}
.sponly{
    display: none;
}
.mincho {
    font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 400;
    font-style: normal;
    line-height:1.4;
}
.pc {display:block;}
.sp {display:none;}
a {
    color:#333;
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration:none;
    transition:opacity .4s ease;
}
a:hover {opacity:0.6;}


/* For modern browsers */
.cf:before,
.cf:after {
    content:"";
    display:table;
}

.cf:after {
    clear:both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
    zoom:1;
}

/*header*/
header {
    width:100%;
    height:200px;
    margin:0 auto;
    padding:0;
}
header .contents {
    position:relative;
    width:1000px;
    margin:0 auto;
}
header .logo_icon {
    display:block;
    width:153px;
    margin:0 auto;
    padding-top:55px;
}
header .logo {
    width:260px;
    position:absolute;
    top:45px;
    left:0;
}
.logo.pc h1 {
    font-size: 9px;
    text-align: left;
    padding-left: 9px;
    line-height: 0.8rem;
    margin-bottom: 10px;
}

header .right_cont {
    width:420px;
    text-align:left;
    position:absolute;
    right:-18%;
    top:25px;
    letter-spacing:-0.05em;
}

header .right_cont .tel {
    padding:5px 0 5px 40px;
    background:url(../img/tel01.png) no-repeat left;
    font-size:2em;
    color:#afa791;
    font-style: italic;
}

header .right_cont .mail {
    padding:5px 0 5px 40px;
    background:url(../img/mail01.png) no-repeat left;
    font-size:1.3em;
    color:#afa791;
    font-style: italic;
    margin-bottom: 10px;
}

header .right_cont .txt strong {
    font-size:1.2em;
    font-weight:bold;
}

header .right_cont .txt {line-height:1.3em;}

/*footer*/
footer {
    width:100%;
    margin: 0 auto;
    padding:30px 0 0px;
    text-align: center;
    background:#efede9;
    border-top:solid 1px #afa791;
}
footer .subtitle {
    width:100%;
    padding:10px 0;
    margin:20px auto;
    background:rgba(0,128,217,1);
    font-size:1.6em;
    color:#fff;
}
footer .subtitle strong {
    display:block;
    font-size:1.2em;
    margin:0 auto 10px;
    line-height:1em;
}

footer .bottom_cont {
    width:800px;
    text-align:left;
    margin:0 auto 20px;
}

footer .bottom_cont .tel {
    padding:5px 0 5px 40px;
    background:url(../img/tel01.png) no-repeat left;
    font-size:2em;
    color:#595757;
    display:inline-block;
    margin:0 40px 0 0;
    font-style: italic;
}

footer .bottom_cont .mail {
    padding:5px 0 5px 40px;
    background:url(../img/mail01.png) no-repeat left;
    font-size:1.8em;
    color:#595757;
    display:inline-block;
    font-style: italic;
}

footer .bottom_cont .txt {
    line-height:1.3em;
    margin:20px 0;
}

footer .bottom_cont .wrap{
    display: flex;
    align-items: center;
    gap:10px;
}

footer .bottom_cont a{
    display: block;
}
footer .bottom_cont .insta{
    display: flex;
    flex-direction: column;
    align-items: center;
}

footer .bottom_cont .insta h3{
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
}

footer small {
    display:block;
    width:100%;
    background:#595757;
    text-align:center;
    color:#fff;
    margin:0 auto;
    padding:5px 0;
}










/* fvArea */
.fvArea {
    width:1200px;
    height:650px;
    position:relative;
    margin:0 auto 40px;
    text-align:center;
    background:url(../images/mk-conter.webp) no-repeat center;
    padding-top:150px;
}


.fvArea .title {
    width:100%;
    padding:21px 0;
    background:rgba(256,256,256,0.8);
    font-size:2em;
}
.fvArea .title h2 {
    margin:0 auto 14px;
}

.fvArea .subtitle {
    width:100%;
    padding:10px 0;
    background:rgba(0,128,217,0.8);
    font-size:1.6em;
    color:#fff;
    line-height: 1.35;
}
.fvArea .subtitle strong {
    display:block;
    font-size:1.2em;
    margin:0 auto 10px;
    line-height:1em;
}
.op-date{
    margin-top:10px;
}
.op-date .number{
font-size: 30px;
}
.top-discount {
    color: #c5e008;
    margin-top: 10px;
}

/* block01 */
#block01 {
    width:1000px;
    margin:0 auto;
    padding:60px 0;
}

#block01 h2,
#block02 h2,
#block03 h2,
#block04 h2 {
    color:#595757;
    font-size:3em;
    font-weight:100;
    margin:0 auto 60px;
}

#block01 dl {
    width:100%;
    display:table;
}
#block01 dl dt {
    display:table-cell;
    width:300px;
    height:300px;
}
#block01 dl dd {
    display:table-cell;
    width:auto;
    padding:0 0 0 40px;
    vertical-align:top;
    text-align:left;
}

#block01 dl dd h3 {
    font-size:1.4em;
    margin:0 auto 20px;
    color:#0080d9;
    font-weight:bold;
}

#block01 p.top-name {
    text-align: right;
    margin-top: 20px;
}

#block01 p.top-name img {
    width: 100px;
}
.exam_room{
    width:300px;
    height:auto;
}
/* block02 */
#block02 {
    width:1000px;
    padding:60px 0 100px;
    margin:0 auto;
}
#block02 .layout {
    width:100%;
    margin:0 auto;
    padding:60px 100px;
    border:solid 1px #595757;
}
#block02 ul {
    width:100%;
    padding:0 0 20px;
    margin:0 auto 20px;
    border-bottom:solid 1px #595757;
    text-align:left;
}
#block02 ul li {
    width:40%;
    display:inline-block;
    text-align:left;
    padding:0 0 0 40px;
    font-size:3em;
    color:#595757;
}
#block02 ul li:last-child {width:58%;}
#block02 .tel {
    padding:5px 0 5px 40px;
    background:url(../img/tel01.png) no-repeat left;
    font-size:2.6em;
    font-style: italic;
}

#block02 .mail {
    padding:5px 0 5px 40px;
    background:url(../img/mail01.png) no-repeat left;
    font-size:2em;
    font-style: italic;
}

#block02 p {width:100%;text-align:left;font-size:1em;}

#block02 span {
    display:inline-block;
    background:url(../img/yellow.png) repeat-x bottom;
}

#block02 table {
    display: inline;
    border-collapse: collapse;
}

#block02 tr, td, th{
    border:#000 1px solid;
    font-size: 20px;
    padding: 5px;
    min-width: 20px;
}
section.sns{
margin-bottom: 100px;
}

section.sns h2{
    font-size: 2.5em;
    margin-bottom: 30px;
}

section.sns a{
    display: block;
    width: fit-content;
    margin: 0 auto;
}

/* block03 */
#block03 {
    width:1000px;
    margin:0 auto;
    padding:60px 0 100px;
}
#block03 ul {
    width:100%;
    margin:0 auto;
    padding:0 0 40px;
}

#block03 ul li {
    display:inline-block;
    margin:0;
    width:300px;
}

#block03 ul li p.title {
    width:100%;
    color:#0080d9;
    font-size:1.4em;
    font-weight:bold;
    margin:10px auto 10px;
}
#block03 ul li div.menu-desc {
    margin-bottom: 8px;
}

#block03 ul li span.red-discount {
    color: red;
    font-size: 18px;
}
#block03 ul li p.txt {
    width:100%;
    text-align:left;
}

#block03 ul li:nth-child(2) {margin:0 40px 0px;}
#block03 ul li:nth-child(4) {margin-right:20px;}
#block03 ul li:nth-child(5) {margin-left:20px;}



/* block04 */
#block04 {
    padding:100px 0 100px;
    width:100%;
    margin:0 auto;
    border-top:solid 1px #afa791;
}



#block04 dl {
    width:1000px;
    margin:0 auto;
    display:table;
}

#block04 dl dt {
    width:500px;
    height:500px;
    display:table-cell;
    margin:0;
    padding:0;
    vertical-align:bottom;
}

#block04 dl dd {
    width:499px;
    height:500px;
    display:table-cell;
    text-align:left;
    padding:0 0 240px 40px;
    vertical-align:top;
    background:url(../images/mk-clinic1.jpg) no-repeat bottom right;
}
#block04 dl dd h3 {margin:0 auto 20px;}

#block04 dl dd p {
    display:block;
}

#block04 dl dd div {
    display:inline-flex;
    min-width: 90px;
    margin-bottom: 10px;
}



/* formArea */
#formArea {
    width:100%;
    max-width:500px;
    margin:0 auto;
    padding:100px 0;
}

#formArea h2 {
    font-size:3em;
    color:#595757;
    margin:0 auto 60px;
}
#formArea p {
    width:100%;
    text-align:center;
    margin:0 auto 30px;
}

#formArea dl {
    display:block;
    width:100%;
    padding:0 20px 30px;
}

#formArea dl dt {
    width:100%;
    display:block;
    margin:0 auto 10px;
    text-align:left;
    font-size:1.2em;
    font-weight:bold;
}

#formArea dl dt span.hissu {
    display:inline-block;
    padding:3px 8px;
    background:#ff0000;
    color:#fff;
    font-size:0.8em;
    line-height:1.2em;
    font-weight:100;
    margin-left:5px;
    border-radius:4px;
}
#formArea dl dd {
    width:100%;
    margin:0 auto;
    text-align:left;
}
#formArea dl dd input,
#formArea dl dd textarea {
    width:100%;
    border:solid 1px #ccc;
    border-radius:5px;
    padding:15px 10px;
    font-size:1.2em;
}

#formArea dl dd textarea {height:200px;}

#formArea .btnArea {width:100%;}
#formArea .btnArea button {
    display:inline-block;
    height:60px;
    padding:0 80px;
    border-radius:30px;
    color:#fff;
    font-size:1.4em;
    line-height:40px;
    font-weight:bold;
    background:#afa791;
    cursor:pointer;
    outline:none;
    border:none;
}
#formArea .btnArea button:hover {
    transition:all .5s ease;
    opacity:0.8;
}



.formrun-system-show,
.alert {font-size:1em;color:#ff0000;}

.top-logo {
    margin-top: -7px;
}





.doc-schedule {
    font-weight: bold;
    padding-top: 15px;
}




@media screen and (max-width:768px) {
img {width:100%;height:auto;}
.exam_room{
    width: 100%;
}
.pc {display:none;}
.sp {display:block;}

header {
    height:80px;
}
header .contents {
    width:100%;
}
header .logo_icon {
    display:block;
    width:auto;
    height:60px;
    margin:0 auto;
    padding-top:10px;
}
header .logo_icon a img {width:auto;height:60px;}

.logo_icon a{
    display: block;
    width: fit-content;
    margin:0 auto;
}

.fvArea {
    width:100%;
    height: 461px;
    position: relative;
    margin: 0 auto 20px;
    text-align: center;
    background: url(../images/counter.jpg) no-repeat top;
    background-size:cover;
    padding-top: 75px;
}
.fvArea .title {
    padding: 10px;
    background: rgba(256,256,256,0.8);
    font-size: 1.4em;
}

.fvArea .title h2 img {width:60%;}

.fvArea .subtitle {
    width: 100%;
    padding: 10px 0;
    background: rgba(0,128,217,0.8);
    font-size: 1em;
    color: #fff;
}


#block01 {
    width: 100%;
    margin: 0 auto;
    padding:20px;
}
#block01 h2, #block02 h2, #block03 h2, #block04 h2, section.sns h2 {
    color: #595757;
    font-size: 2em;
    font-weight: 100;
    margin: 0 auto 20px;
}
#block01 dl {
    display:block;
    width:100%;
}
#block01 dl dt {
    display:block;
    width:60%;
    margin:0 auto 20px;
    /* max-height:200px; */
    overflow:hidden;
}
#block01 dl dd {
    display:block;
    width:100%;
    padding:0;
    text-align: left;
}
#block02 {
    width: 100%;
    padding: 20px 10px 40px;
    margin: 0 auto;
}
#block02 .layout {
    padding:20px;
    border: solid 1px #595757;
}
#block02 ul {
    padding: 0 0 10px;
    margin: 0 auto 10px;
}
#block02 ul li {
    width:100%;
    display:block;
    text-align: left;
    padding: 0;
    font-size:1.4em;
}
#block02 .tel {
    padding: 5px 0 5px 25px;
    background: url(../img/tel01.png) no-repeat left;
    background-size:20px auto;
    font-size: 2em;
    font-style: italic;
}
#block02 ul li:last-child {width:100%;}
#block02 .mail {
    padding: 5px 0 5px 25px;
    background: url(../img/mail01.png) no-repeat left;
    background-size:20px auto;
    font-size: 1.2em;
    font-style: italic;
}
section.sns{
    margin-bottom: 40px;
    }

#block03 {
    width: 100%;
    margin: 0 auto;
    padding: 20px 0 40px;
}

#block03 ul {
    width: 100%;
    margin: 0 auto;
    padding:0 20px;
}

#block03 ul li {
    display: inline-block;
    margin: 0 auto 20px;
    width:100%;
}
#block03 ul li:nth-child(2) {
    margin: 0;
}

#block04 {
    padding: 20px 0 40px;
}
#block04 dl {
    width: 100%;
    margin: 0 auto;
    display:block;
    padding:20px;
}

#block04 dl dt {
    width:100%;
    max-height: 200px;
    overflow:hidden;
    display:block;
    margin: 0 auto 20px;
    padding: 0;
}

#block04 dl dd {
    width:100%;
    height:auto;
    display:block;
    padding: 0;
    background:none;
}


footer {
    padding:20px 0 0px;
}
footer .spCont {
    padding:0 20px;
}
footer h2 {
    width:50%;
    margin:0 auto 20px;
}

footer .subtitle {
    width:100%;
    padding: 10px;
    line-height:1.2em;
    margin: 10px auto;
    font-size: 1em;

}

footer .bottom_cont {
    width:100%;
    text-align: left;
    margin: 0 auto 10px;
}


footer .bottom_cont .tel {
    padding: 5px 0 5px 25px;
    background: url(../img/tel01.png) no-repeat left;
    background-size:20px auto;
    font-size: 2em;
    font-style: italic;
}
footer .bottom_cont ul li:last-child {width:100%;}
footer .bottom_cont .mail {
    padding: 5px 0 5px 25px;
    background: url(../img/mail01.png) no-repeat left;
    background-size:20px auto;
    font-size: 1.2em;
    font-style: italic;
}
footer .bottom_cont .txt {
    line-height: 1.8em;
    margin: 10px auto;
}



#formArea {padding:20px 20px 40px;}
#formArea h2 {font-size:2em;margin:0 auto 10px;}
#formArea p {margin:0 auto 20px;}
#formArea dl {padding:0 0 20px;}
#formArea .btnArea input[type="submit"] {
    font-size:1.4em;
    line-height:1em;
    height:auto;
    padding:20px 0;
    width:100%;
    border-radius:10px;
}



footer ul {margin:0 auto 10px;}
footer ul li {
    display: block;
    margin: 0 auto 20px;
    padding: 0 0 20px 20px;
    border-bottom: solid 1px #fff;
    text-align: left;
}
footer ul li:first-child {border-top:solid 1px #fff;padding-top:20px;}
footer ul li:last-child {margin:0 auto 10px;}


.sponly{
    display: unset;
}

.btm-logo {
    width: 100px;
}




}
