@charset "utf-8";

/* keyvisual
-------------------------------------*/
section#keyvisual{
padding-top: 110px;
}

/* kaisaijyohou
-------------------------------------*/
section.event section{
margin-bottom: 80px;
}
section.event table{
width: 100%;
font-size: 88%;
border-collapse: collapse;
}
section.event table caption{
margin-bottom: 10px;
font-size: 125%;
font-weight: bold;
text-align: center;
}
section.event table caption span{
font-size: 75%;
color: #8539d2;
}
section.event table tr{
border-bottom: 1px dotted #ccc;
}
section.event table tr th,
section.event table tr td{
padding: 0.5em 0;
}
section.event table tbody tr td.day{
text-indent: 1em;
}
section.event table thead tr th,
section.event table tbody tr td.void,
section.event table tbody tr td.yoyaku2{
text-align: center;
}
section.event table tbody tr td.map,
section.event table tbody tr td.yoyaku{
padding-right: 1em;
}
section.event table tbody tr td.time,
section.event table tbody tr td.yoyaku2{
padding-left: 1em;
}
section.event table tbody tr td.yoyaku a,
section.event table tbody tr td.yoyaku2 a{
padding: 0.15em 0.5em;
background: #fff;
color: #8539d2;
font-size: 88%;
font-weight: bold;
text-decoration: none;
border: 2px solid #8539d2;
border-radius: 5px;
vertical-align: middle;
}
section.event table tbody tr td.yoyaku a:hover,
section.event table tbody tr td.yoyaku2 a:hover,
section.event table tbody tr td.map a:hover{
background: #8539d2;
color: #fff;
}
section.event table tbody tr td.yoyaku a:after,
section.event table tbody tr td.yoyaku2 a:after{
content: "\f105";
font-family: fontAwesome;
margin-left: 0.25em;
}
section.event table tbody tr td.map a{
padding: 0.15em 0.5em;
background: #e7d5f3;
font-size: 75%;
color: #222;
font-weight: bold;
text-decoration: none;
vertical-align: text-top;
border-radius: 5px;
}
section.event table tbody tr td span{
color: #222;
}
section.event table tbody tr td span.saturday{
color: blue;
}
section.event table tbody tr td span.sunday,
section.event table tbody tr td span.holiday{
color: red;
}
section.event table tbody tr td span:before{
content: "\0028";
color: #222;
margin-left: 0.25em;
}
section.event table tbody tr td span:after{
content: "\0029";
color: #222;
}

/* kyose x ip
-------------------------------------*/
section.section article.article:first-of-type{
width: 48%;
float: left;
}
section.section article.article:last-of-type{
width: 48%;
float: right;
}
section.section h3.h3 span{
margin-right: 1em;
padding: 0.75em 1em;
color: #222;
vertical-align: text-bottom;
border-radius: 10px;
}
section.section h3.h3 span.kyose{
background: #e7d5f3;
}
section.section h3.h3 span.ip{
background: #e7d5f3;
}
section.section h3.h3 span:after{
margin-left: 0.75em;
color: #fff;
font-size: 75%;
vertical-align: middle;
text-shadow: 1px 1px 30px #8539d2;
text-transform: uppercase;
display: inline-block;
}
section.section h3.h3 span.kyose:after{
content: "Correction";
}
section.section h3.h3 span.ip:after{
content: "Implant";
}
section.section h4.h4 span{
margin-right: 1em;
padding: 0.5em 1em;
color: #222;
font-size: 75%;
vertical-align: text-bottom;
border: 2px solid #8539d2;
border-radius: 10px;
}
section.section ol.ol li{
margin-bottom: 20px;
}
section.section ol.ol li figure{
width: 18%;
float: left;
margin-right: 2%;
}
section.section ol.ol li section{
float: right;
width: 80%;
}
p.button01{
margin: 40px 0 80px;
}
p.button01 a{
width: 100%;
padding: 0.5em 0;
background: #fff;
color: #8539d2;
font-weight: bold;
text-align: center;
text-decoration: none;
border: 2px solid #8539d2;
border-radius: 5px;
vertical-align: middle;
}
p.button01 a:after{
margin-left: 0.5em;
content: "\f105";
font-family: fontAwesome;
}
p.button01 a:hover{
background: #8539d2;
color: #fff;
}

/* dantai
-------------------------------------*/
section.section table#dantai{
border-collapse: collapse;
}
section.section table#dantai tbody tr{
border-bottom: 2px solid #fff;
}
section.section table#dantai tbody th{
padding: 1em;
background: #f3ebff;
vertical-align: top;
border-right: 2px solid #fff;
}
section.section table#dantai tbody td{
padding: 1em;
background: #f6f6f6;
}
section.section ol.dantai li{
padding: 1em 0;
}
section.section ol.dantai li strong{
vertical-align: middle;
margin-bottom: 0.5em;
display: inline-block;
background: linear-gradient(transparent 50%, #e7d5f3 40%);
}
section.section ol.dantai li p{
font-weight: normal;
}

/* form
-------------------------------------*/
section.form nav.step ul{
overflow: hidden;
}
section.form nav.step ul li{
width: 30%;
margin: 0 0.5em 0 1em;
padding: 10px 0;
background: #e7d5f3;
color: #222;
text-align: center;
font-weight: bold;
position: relative;
float: left;
}
section.form nav.step ul li:before{
content: "";
margin-top: -1.5em;
border-width: 1.5em 0 1.5em 1em;
border-style: solid;
border-color: #e7d5f3 #e7d5f3 #e7d5f3 transparent;
position: absolute;
top: 50%;
left: -1em;
}
section.form nav.step ul li:after{
content: "";
margin-top: -1.5em;
border-top: 1.5em solid transparent;
border-bottom: 1.5em solid transparent;
border-left: 1em solid #e7d5f3;
position: absolute;
top: 50%;
right: -1em;
}
section.form nav.step ul li.now{
background: #8539d2;
color: #fff;
}
section.form nav.step ul li.now:before{
content: "";
margin-top: -1.5em;
border-width: 1.5em 0 1.5em 1em;
border-style: solid;
border-color: #8539d2 #8539d2 #8539d2 transparent;
position: absolute;
top: 50%;
left: -1em;
}
section.form nav.step ul li.now:after{
content: "";
margin-top: -1.5em;
border-top: 1.5em solid transparent;
border-bottom: 1.5em solid transparent;
border-left: 1em solid #8539d2;
position: absolute;
top: 50%;
right: -1em;
}
section.form dl{
margin-bottom: 20px;
padding-bottom: 20px;
border-bottom: 1px solid #eeeeee;
display: block;
}
section.form dl dt span.required,
section.form dl dt span.any{
margin-right: 0.75em;
padding: 0.25em 0.5em;
background: #c00;
font-size: 75%;
color: #fff;
vertical-align: middle;
border-radius: 5px;
}
section.form dl dt span.any{
background: #666;
}
section.form dl dt{
width: 35%;
float: left;
vertical-align: middle;
font-weight: bold;
}
section.form dl dd{
width: 60%;
float: right;
}
section.form dl dd input[type=text],
section.form dl dd input[type=tel],
section.form dl dd input[type=number],
section.form dl dd input[type=email],
section.form dl dd select,
section.form dl dd textarea{
width: 99%;
padding: 0.5em;
background: #f8f8f8;
border: 1px solid #ddd;
border-radius: 3px;
box-shadow: 0 2px 2px rgba(0,0,0,0.03) inset;
}
section.form input.reflect{
min-width: 10%;
padding: 0.5em 1em;
background: linear-gradient(#eee,#ccc);
color: #555;
font-weight: bold;
vertical-align: top;
border: 1px solid #bbb;
border-radius: 3px;
cursor: pointer;
}
section.form input.reflect:hover{
background: linear-gradient(#ccc,#eee);
}
section.form dd.radio input, section.form dd.checkbox input {
width: 25px;
margin-right: 0.25em;
vertical-align: middle;
transform: scale(1.8);
-webkit-transform: scale(1.8);
}
section.form dl dd textarea{
resize: vertical;
height: 200px;
min-height: 200px;
max-height: 350px;
}
section.form p.submit,
section.form p{
text-align: center;
}
section.form p input[type="submit"],
section.form p input[type=button]{
width: 30%;
padding: 0.5em 0;
background: #fff;
color: #8539d2;
font-weight: bold;
text-align: center;
text-decoration: none;
vertical-align: middle;
border: 2px solid #8539d2;
border-radius: 5px;
cursor: pointer;
}
section.form p input[type="submit"]:hover,
section.form p input[type=button]:hover{
color: #fff;
background: #8539d2;
}

/* form kakunin
-------------------------------------*/
section.form dl#newline{
width: 100%;
margin: 0 auto;
display: -webkit-flex;
display: flex;
flex-wrap: -webkit-wrap;
flex-wrap: wrap;
}
section.form dl#newline dt,
section.form dl#newline dd{
margin-top: 20px;
padding-top: 20px;
border-top: 1px solid #eeeeee;
text-indent: 1em;
}
section.form dl#newline dt{
width: 40%;
}
section.form dl#newline dd{
width: 60%;
}

/* form kanryo
-------------------------------------*/
section.form2 p{
text-align: center;
margin-bottom: 20px;
}
section.form2 p.button01{
margin: 60px auto 0;
}