@charset "utf-8";
/* =======================================================================
	Style
======================================================================= */
/* Font
-------------------------------
@font-face {
    font-family: "LogoTypeGothic";
    src: url("../font/07LogoTypeGothic7.eot?") format('eot'), url("../font/07LogoTypeGothic7.woff") format('woff');
}
.LogoType {
    font-family: "LogoTypeGothic", "Noto Sans Japanese", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}*/
html {
    font-size: 62.5%; /* ベースを10pxに */
    width: 100%;
}
body {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #444;
    font-size: 1.4rem;/*14px*/
    line-height: 1.6em;
    border-top: 5px solid #00417D;
}
h1 {
    display: none;
}
#lower h2 {
    font-family: "LogoTypeGothic", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 2rem;
    margin: 0;
    padding: 1.5rem 0.5rem;
    text-align: center;
    background: url("../images/common/h2.jpg") bottom center no-repeat;
    background-size: cover;
    color: #444547;
    width: 100%;
}
#lower h3 {
    border: double 3px #ddd;
    border-radius: 0.5rem;
    padding: 0.7rem;
    background: rgb(254,253,253);
    background: -moz-linear-gradient(top, rgba(254,253,253,1) 1%, rgba(242,240,240,1) 100%);
    background: -webkit-linear-gradient(top, rgba(254,253,253,1) 1%, rgba(242,240,240,1) 100%);
    background: linear-gradient(to bottom, rgba(254,253,253,1) 1%, rgba(242,240,240,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefdfd', endColorstr='#f2f0f0', GradientType=0 );
    font-size: 110%;
    margin-bottom: 1rem;
}
#lower h4 {
	    font-weight: bold;
    color: #00417D;
    font-size: 120%;
    margin-bottom: 0.5rem;
}
main {
    font-size: 100%;
}
/* ==== link ==== */
a {
    text-decoration: none;
}
a:link {
    color: #43A236;
}
a:visited {
    color: #43A236;
}
a:hover {
    opacity: 0.7;/*	color:#f9a2b7;　*/
}
a i {
    width: 1.8em!important;
}
/* モジュール */

.flex_LRTB, .flex_RLTB {
    flex-direction: column;
    -webkit-flex-direction: column;
}
/* 画像のフロート SP時は解除 */
.float-l, .float-r {
    float: none;
    margin: auto;
    width: 100%;
    text-align: center;
    margin-bottom: 1rem;
}
.sp_none, .sp_none_in {
    display: none;
}
.flip-horizontal {
    transform: scale(-1, 1);
}
main p {
    margin-bottom: 1em;
}
.align_center {
    text-align: center
}
.align_left {
    text-aling: left!important;
}
.align_right {
    text-align: right;
}
.clear {
    clear: both;
    display: block;
}
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}
/* ボタン */
.btn_s {
    padding: 0.2rem 3rem;
    text-align: center;
    display: inline-block;
}
.btn {
    padding: 0.5rem 1rem;
    text-align: center;
    display: inline-block;
}
a.btn_gmap {
    background-color: #007d7b;
    color: #fff;
    border-radius: 3rem;
    font-size: 0.9em;
}
a.btn_gmap:visited, a.btn_gmap:link {
    background-color: #007d7b;
    color: #fff;
}
a.btn_gmap::before {
    font-family: "Font Awesome 5 Free";
    content: "\f3c5";
    padding-right: 4px;
    font-weight: bold;
    color: #fff;
}
a.btn_def {
    background-color: #238A86;
    color: #fff;
    border-radius: 0.5rem;
}
a.btn_def::before {
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    padding-right: 4px;
    font-weight: bold;
    color: #fff;/*アイコンの色*/
}
/* リストマーク */
ul {
    margin: 0 0 1rem;
    list-style: none;
}
ol {
    margin: 0 0 1rem 1.5rem;
}
ul.list_kome li {
    text-indent: -1em;
    padding-left: 1em;
    margin-bottom: 0.5rem;
}
ul.list_kome li:before {
    content: '※';
    left: -1.5em;
    width: 1em;
    margin-top: -.8em;
}
ul.list_def li {
    padding-left: 1.3em;
}
ul.list_def li::before {
    display: inline-block;
    content: '●';
    margin-left: -1.3em;
    margin-right: 0.3em;
    color: #F9C56B;
}
ul.list_sim > li {
    list-style: disc!important;
    margin-left: 2rem;
}
li ul {
    margin-left: 1.5rem;
}
ul.list_in li {
    display: inline-block;
    margin-right: 2rem!important;
}
ul.list_dot li {
    border-bottom: 1px dotted #9ACE6B;
    padding: 0.2rem 0;
}
/* 定義リスト */
dl.dl_def {
    margin-bottom: 2rem;
}
dl.dl_def dt {
    font-weight: bold;
    color: #00417D;
    font-size: 120%;
    margin-bottom: 0.5rem;
}
dl.dl_daia dt::before {
    content: '◆ '
}
dl.dl_def dd {
    margin-bottom: 1rem;
}
dl.dl_def dd:last-child p:last-child, dl.dl_def dd:last-child {
    margin-bottom: 0;
}
dl.dl_def dd + dt {
    margin-top: 2rem;
}
dl.dl_def dd strong {
    color: #66B5E3;
}
dl.dl_tbl {
    border: #eee solid 1px;
}
dl.dl_tbl dt {
    font-weight: bold;
    background: #eee;
    padding: 0.3rem;
    text-align: center;
}
dl.dl_tbl dd {
    padding: 1rem;
    margin: 0;
}
dl.dl_tbl dd *:last-child {
    margin-bottom: 0;
}
dl.dl_disease dd {
    margin-bottom: 2rem;
    border-bottom: 1px dotted #666;
}
dl.dl_disease dd:last-child {
    border-bottom: none;
}
/* テキストの装飾 */
.underline {
    background: linear-gradient(transparent 70%, yellow 70%);
}
.bold {
    font-weight: bold;
}
/* 囲み枠 */
.box {
    background: #F9F9F1;
    padding: 0.5em 0.5em;
}
.box *:last-child {
    margin-bottom: 0!important;
}
/* ==== 全体の横幅設定 ==== */

.wrapper {
    width: 100%;
    margin: 0 auto;
}
.inner {
    padding: 0 2%;
}
/* ==== header情報部全体 ==== */
header {
    text-align: center;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
header .wrapper {
    padding: 1rem;
}
header .contact {
    display: flex;
    justify-content: center;
    margin-top: 1rem;
}
header .contact figure {
    margin: 0 1rem;
}
/* ==== グローバルナビ全体設定 ==== */
nav {
    width: 100%;
    margin: 0;
    padding: 0;
}
nav ul {
    text-align: center;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    border-top: 1px solid #ddd;
	
}
nav li {
    width: 50%;
    text-align: center;
    border-bottom: 1px solid #ddd;
    font-weight: bolder;
    background: rgb(2,54,102);
    background: -moz-linear-gradient(top, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
    background: -webkit-linear-gradient(top, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
    background: linear-gradient(to bottom, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#023666', endColorstr='#023666', GradientType=0 );
}
nav li:nth-child(even) {
    border-right: 1px solid #ddd;
}
nav li img {
}
nav li a {
    display: block;
    width: 100%;
    color: #333;
    padding: 0.5rem 1rem 0.1rem;
}
nav li a:hover, nav li a:visited, nav li a:link {
    color: #666;
}
img {
    max-width: 100%;
    width: auto;
}
/* ==== メインエリア ====*/
main {
    padding-top: 1rem;
    width: 95%;
    margin: 0 auto;
}
/* ==== サイドナビ ====  */
aside {
    width: 95%;
    margin: 3rem auto 1rem;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    transform: rotate(.03deg);
    font-style: normal;
}
aside dl {
    margin-bottom: 2rem;
    border: 1px solid #00417D;
    border-radius: 0.5rem;
    padding: 0;
    text-align: center;
    background: rgb(234,243,250);
    background: -moz-linear-gradient(top, rgba(234,243,250,1) 0%, rgba(203,224,240,1) 16%);
    background: -webkit-linear-gradient(top, rgba(234,243,250,1) 0%, rgba(203,224,240,1) 16%);
    background: linear-gradient(to bottom, rgba(234,243,250,1) 0%, rgba(203,224,240,1) 16%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eaf3fa', endColorstr='#cbe0f0', GradientType=0 );
}
aside dt {
    padding: 1rem 1rem 0;
}
aside dd {
    margin-bottom: 0;
    padding: 0;
}
aside dd .sp_none {
    margin-bottom: 1.5rem;
}
aside dd .sp_none li {
    margin: 0;
    padding: 0;
    max-height: 50px;
}
aside dd .sp_none li a {
    margin: 0;
    padding: 0;
    display: block;
    max-height: 50px;
}
aside dd .pc_none {
    display: flex;
    text-align: left;
    flex-wrap: wrap;
    margin: 0.5rem 2rem;
}
aside dd .pc_none li {
    margin: 0.5rem 2rem 0 0;
}
aside dd .pc_none li a {
    color: #222!important;
}
aside dd .pc_none li a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0da";
    padding-right: 3px;
    font-weight: bold;
    color: #00417D!important;
}
aside p:last-child {
    margin-top: 2rem;
}
/* ==== フッター ==== */
footer {
    background: #00417D;
    color: #fff;
    text-align: center;
    padding: 0;
}
footer ul li {
    display: inline-block;
}
footer ul li::after {
    content: ' ｜ '
}
footer ul li:last-child::after {
    display: none;
}
footer a {
    color: #fff!important;
}
/* ==== 著作権表記エリア ==== */
address {
    text-align: center;
    font-size: 0.9em;
    color: #fff;
    font-style: normal;
    margin-top: 3rem;
}
/* ==== ページトップ ==== */
#pageTop {
    display: block;
    position: fixed;
    z-index: 9999;
    bottom: 0;
    right: 20px;
    transition: .5s;
    opacity: 0.8;
}
#pageTop a {
    display: block;
    color: #00417D!important;
    text-align: center;
    text-decoration: none;
    background-color: #E9F5FE;
    border-radius: 80px;
    font-size: 0.8em;
    line-height: 1.1em;
    padding: 0.5rem 1rem;
}
#pageTop a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0d8\00a0";
    font-weight: bold;
}
/* 診療時間 */
.timetable {
    width: 98%;
    margin: 0 auto;
    text-align: center;
    font-size: 110%;
}
.timetable th {
    padding: 0.5rem;
    border: 1px solid #CCC;
    background-color: #00417D;
    color: #fff;
    font-weight: normal;
    vertical-align: middle;
}
.timetable td {
    padding: 0.5rem;
    border: 1px solid #CCC;
    vertical-align: middle;
}
.timetable .time {
    width: 10em;
    text-align: right;
    padding: 0.5rem 1em 0.5rem 0;
}
.overview dl {
    margin-bottom: 2rem;
}
.overview dt {
    font-size: 120%;
    font-weight: bold;
}
.overview dd {
    margin-top: 0.5rem;
}
.overview dd a {
    color: #00417D;
    font-size: 110%;
}
.overview dd span {
    color: #FF6600;
}
.overview figure img {
    border: 1px solid #999;
}
/* Google Map */ 
.gmap {
    width: 100%;
}
.gmap iframe {
    width: 100%;
    height: 300px;
    margin: 1rem 0;
}
/* クリニック紹介 */
	
ul.clinic_li li {
    margin-bottom: 2rem;
}
ul.machine_li li {
    margin-bottom: 2rem;
}
ul.machine_li dt {
    font-weight: bold;
    color: #00417D;
    font-size: 110%;
}
ul.machine_li dt::before {
    content: '◆ '
}
ul.machine_li figure {
    text-align: center;
}
.dr_name span {
    font-size: 90%;
}
.dr_name strong {
    font-weight: normal;
    font-size: 130%;
}
main section + section {
    margin-top: 2rem;
}
main section .inner *:last-child {
    margin-bottom: 0
}
/* メールフォーム */
#mailform .mailform {
    width: 98%;
    margin: auto;
}
#mailform .mailform th, #mailform .mailform td {
    display: block;
    text-align: left;
    border: 1px solid #fff;
    width: 100%;
}
#mailform .mailform th {
    background: #D5E3F1;
    padding: 0.3rem;
}
#mailform #mfp_buttons #button_mfp_reset, #mailform #mfp_buttons #button_mfp_goconfirm {
    background-image: none!important;
    width: 100%;
    height: auto;
    padding: 0.5rem;
    background: #00417D;
    border-radius: 0.5rem;
    font-weight: bold;
    color: #fff;
}
#mailform #mfp_buttons ul {
    display: flex;
    justify-content: space-around;
    width: 100%;
    margin: 2rem 0;
}
div#mfp_buttons ul li {
    width: 45%!important;
    text-align: center;
    float: none;
    height: auto!important;
}
#mailform #privacy {
    margin: 2rem auto;
    width: 98%;
}
#mailform #privacy h4 {
    background: #18417D;
    color: #fff;
    font-weight: bold;
    font-size: 110%;
    padding: 0.5rem;
    text-align: center;
}
#mailform #privacy .inner {
    height: 20rem;
    overflow-y: scroll;
    border: 1px solid #949494;
    padding: 1rem;
}
#mailform #privacy dt {
    color: #18417D;
    font-weight: bold;
    border-bottom: 1px solid #DDDDDD;
    margin-bottom: 0.5rem;
}
#mailform #privacy dd {
    margin-bottom: 2rem;
}
table.infield {
    width: auto!important;
    font-size: 90%;
}
table.infield tr th, table.infield tr td p {
    font-size: 90%;
}
table.infield tr th {
    width: 25%;
}
/* フォーム SP時のみ*/
@media only screen and (max-width: 480px) {
div#confirmBody {
    background-color: #666;
    padding: 15px;
    margin: 0px auto;
    border-radius: 5px;
    box-shadow: 0px 0px 10px #000;
    width: 640px;
    max-width: 90%!important;
    left: 5%!important;
}
ul.confirm_layer, ul.confirm_layer li {
    width: 100%;
}
li.confirm_top, li.confirm_middle, li.confirm_bottom {
    background-image: none;
}
li.confirm_middle {
    background: #fff;
}
	
div#confirmBody input {
	width:45%;
}
	div#confirmBody div.mfp_title {
		width:100%;
		height:auto;
	}
	div#confirmBody div.mfp_title img {
		max-width:294px;
		width:100%;
		height:auto;
	}
}
#thanks dl dt {
    font-size: 120%;
    font-weight: bold;
    margin-bottom: 0.5rem;
}
#thanks dl dd:last-child {
    color: #00417D;
    font-size: 110%;
    margin-top: 0.5rem;
}



/* -----------------------------------------------------------------------------------------------------------------------------------
	PC
----------------------------------------------------------------------------------------------------------------------------------- */
@media print, screen and (min-width: 46.875em) {
/* ==== モジュールあれこれ ====*/
/* PCで左→右に配置／SPで上→下に配置 */
.flex_LRTB {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    -webkit-flex-direction: row;
}
/* PCで右→左に配置／SPで上→下に配置 */
.flex_RLTB {
    display: flex;
    display: -webkit-flex;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
}
.half {
    justify-content : space-between;
    flex-wrap: wrap;
}
.half > * {
    width: 48%;
    margin-bottom: 1.5rem;
}
.flex1 {
    -webkit-flex-grow: 1;
    flex-grow: 1;
}
/* 画像のフロート SP時は解除 */
.float-r {
    float: right;
    width: auto;
    margin-left: 2rem;
    margin-bottom: 1.5rem;
}
.float-l {
    float: left;
    width: auto;
    margin-right: 2rem;
    margin-bottom: 1.5rem;
}
.sp_none_in {
    display: inline;
}
.pc_none {
    display: none;
}
.sp_none {
    display: block;
}
.split_wrap {
    display: flex;
    justify-content: space-between;
}
a[href^="tel:"] {
    pointer-events: none;
    color: #333
}
body {
    border: none;
}
div.bg {
    background: url("../images/common/bg.png") no-repeat left top;
    background-size: contain;
    margin: 0;
    padding: 0;
}
div.bg >div.wrapper {
    background: #fff;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    padding: 2rem;
}
/* ==== メインエリア ====*/
main {
    padding: 2rem 0 5rem 1rem;
    max-width: 85rem;
    width: 73%;
}
#lower h2 {
    font-family: "LogoTypeGothic", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 2.5rem;
    margin: 0;
    padding: 5rem 0.5rem 5rem 10%;
    text-align: left;
    background: url("../images/common/h2.jpg") bottom center no-repeat;
    background-size: cover;
    color: #444547;
    width: auto;
}
#lower h3 {
    font-size: 120%;
    padding: 0.7rem 1.5rem;
    /* IE */ 
    background: url("../images/common/h3.png"), -ms-linear-gradient(top, #FFF, #F2F0F0);
    /* Mozilla */ 
    background: url("../images/common/h3.png"), -moz-linear-gradient(top, #FFF, #F2F0F0);
    /* Opera */ 
    background: url("../images/common/h3.png"), -o-linear-gradient(top, #FFF, #F2F0F0);
    /* Webkit */ 
    background: url("../images/common/h3.png"), -webkit-linear-gradient(top, #FFF, #F2F0F0);
    /* W3C */ 
    background: url("../images/common/h3.png"), linear-gradient(top, #FFF, #F2F0F0);
    background-repeat: no-repeat;
    background-position: right center;
}
main section + section {
    margin-top: 3rem;
}
/* ==== 全体の横幅設定 ==== */
.inner {
    margin: 0 auto;
    padding: 1.5rem;
    border : 1px solid #ddd;
}
.inner > *:last-child {
    margin-bottom: 0;
}
.wrapper {
    width: 98%;
    max-width: 1000px;
    margin: 0 auto;
}
/* ==== ヘッダー ==== */
h1 {
    display: block;
    background: rgb(2,54,102);
    background: -moz-linear-gradient(top, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
    background: -webkit-linear-gradient(top, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
    background: linear-gradient(to bottom, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#023666', endColorstr='#023666', GradientType=0 );
    padding: 0.3rem;
    color: #fff;
    font-size: 0.8rem;
    font-weight: normal;
    line-height: 1em;
    text-align: right;
    position: relative;
}
h1 span {
    display: block;
    width: 98%;
    max-width: 960px;
    margin: 0 auto;
}
h1::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 1px;
    background: rgb(2,54,102);
}
header {
    border-bottom: 1px solid #00417D;
    margin-bottom: 0;
    position: relative;
}
header::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 1px;
    width: 100%;
    height: 1px;
    background: rgb(2,54,102);
}
header .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 2rem 1.5rem;
}
header figcaption {
    display: block;
    color: #fff;
    text-align: center;
    padding: 0.3rem;
    width: 100%;
    background: #009286;
    margin-bottom: 0.5rem;
}
/* ==== グローバルナビ全体設定 ==== */

nav {
    background: rgb(2,54,102);
    background: -moz-linear-gradient(top, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
    background: -webkit-linear-gradient(top, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
    background: linear-gradient(to bottom, rgba(2,54,102,1) 0%, rgba(0,65,125,1) 50%, rgba(2,54,102,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#023666', endColorstr='#023666', GradientType=0 );
    margin-bottom: 0;
    position: relative;
}
nav::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 1px;
    background: rgb(2,54,102);
}
nav ul {
    width: 97%;
    max-width: 960px;
    margin: 0 auto;
    border: none;
    padding: 0.2rem;
}
nav li {
    width: calc( 100% / 5 );
    padding: 0!important;
    border-right: 1px solid #eaf4fc!important;
    border-bottom: none;
    font-size: 1.15em;
}
	

_:-ms-lang(x)::-ms-backdrop, nav li { /* IE ハック */
    width: calc( 99% / 5 );
}

nav li:first-child {
    border-left: 1px solid #eaf4fc;
}
nav li a {
    padding: 0.5rem 0;
}
nav li a:hover {
    background: rgba(0, 146, 134,0.1);
}
nav li img {
    width: auto;
}
/* ==== サイドナビ ==== */
aside {
    width: 25rem;
    padding: 2rem 1rem 10rem 0;
    margin: 0;
}
aside dt {
    padding: 1.5rem 0;
}
aside dd .pc_none {
    display: none;
}
/* ==== フッター ==== */	
footer {
    padding: 3rem 0;
}
/* ==== フッターナビ ==== */	
	
#fnavi {
    padding: 2rem 0 0;
    background: #98774C;
}
#fnavi figcaption {
    background: #fff;
    color: #98774C;
    text-align: center;
    margin-bottom: 1rem;
}
#fnavi p {
    color: #fff;
    margin: 1em 0;
}
#fnavi .sp_none {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1rem 0;
}
#fnavi ul {
    margin-left: 2rem;
    font-size: 0.9em;
}
#fnavi > .wrapper > ul > li {
    padding-right: 1rem;
}
#fnavi > .wrapper > ul > li > a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f35a";
    padding-right: 3px;
}
#fnavi ul li a {
    color: #fff!important;
}
#fnavi ul ul {
    border-top: 1px solid #fff;
    margin-left: 0;
}
#fnavi ul ul li {
    margin-left: 1.5rem;
}
#fnavi .wrapper ul li li a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0da";
    padding-right: 3px;
    font-weight: bold;
}
#fnavi li.price {
    margin-top: 2rem;
}
/* クリニック紹介 */
	
ul.clinic_li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin-bottom: 0;
}
ul.clinic_li li {
    width: 32%;
    margin-bottom: 2rem;
}
ul.clinic_li li:nth-child(n + 4) {
    margin-bottom: 0;
}
ul.machine_li li {
    display: flex;
    justify-content: space-around;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    border-bottom: dotted 1px #ddd;
}
ul.machine_li li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}
ul.machine_li li figure {
    width: 41%;
}
ul.machine_li li dl {
    width: 58%;
    padding-left: 1.5rem;
}
/* メールフォーム */

#mailform .mailform th, #mailform .mailform td {
    display: table-cell;
    vertical-align: middle;
}
#mailform .mailform th {
    width: 15em;
    padding: 0.5rem 0.5rem 0.5rem 1rem;
    font-weight: normal;
	text-align:right;
}
#mailform .mailform td {
    width: calc( 100% - 11em );
    padding: 1rem 0.3rem 1.5rem 1.5rem;
}
#mailform .mailform td p {
    margin: 0.3rem;
}
#mailform .mailform td input[type="text"], #mailform .mailform td input[type="email"] {
    width: 70%;
    min-width: 20em!important;
    margin-bottom: 0;
}
#mailform .mailform td input.w30 {
    width: 3rem!important;
    min-width: 10em!important;
}
#mailform .mailform #textfield3 {
    min-width: 4em!important;
}
#mailform div.align_center button {
    margin: 1.5rem 1rem;
    padding: 0.5rem 1rem;
}
table.infield {
    width: 90%!important;
}
table.infield tr th, table.infield tr td p {
    font-size: 100%;
}
table.infield tr th {
    width: 25%;
}
div#confirmBody input {
    width: 16rem;
}
}

/* -----------------------------------------------------------------------------------------------------------------------------------
	Tablet 73.063=1169px  60em=960px
----------------------------------------------------------------------------------------------------------------------------------- */

@media screen and (min-width: 46.875em) and (max-width: 73.063em) {
}

.caledit_c li::before{
  display: inline-block;
  content: '';
  width: 1rem;
  height: 1rem;
  border: 1px solid #ccc;
  margin-left: 0.4rem;
  box-sizing: inherit;
	
}


ul.calendar_c li::before {
  display: inline-block;
  content: '';
  width: 1rem;
  height: 1rem;
  border: 1px solid #ccc;
  margin-left: 0.4rem;
  box-sizing: inherit;
}
ul.calendar_c li.holiday::before {
    background: #CCCBCC;
}
ul.calendar_c li.pmOnly::before {
    background: #B4D7F7;
}