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

header{height: 325px;}

header{background: url("../img/index/mv_cover.png");background-size:100%;}

header:after{background: url("../img/index/mv_bg.jpg");background-size: cover;
	background-attachment: fixed}

header .txt{font-family: YuMincho, "Yu Mincho", "serif";font-size: 2.5em; color: #FFC000;
	letter-spacing: 0.1em;position: absolute;top: 50%;right: 8vw;transform: translateY(-50%);
	line-height: 1.7;}
header .txt span{display: block; border-bottom: 1px solid;}

header .mv{width: 54vw;height: 287px; position: absolute;left: 0;top: 140px;}
header .mv img{width: 100%;height: 100%;object-fit: cover;}


.sub main{background: #f4f4f4; padding: 115px 0;}

.sub .pankuzu{width: 800px;margin: auto;text-align: right;margin-bottom: 15px;}
.sub .pankuzu li{display: inline-block;font-size: 0.85em;color: #7e7e7e; letter-spacing: 0.1em;}
.sub .pankuzu li:not(:last-child):after{content: "-";margin: 0 5px;letter-spacing: 0;}

.sub  section{background: #fff;padding: 50px;}
.sub  section:not(:last-child){margin-bottom: 60px;}
.sub  section p{text-align: justify;letter-spacing: 0.1em;line-height: 1.8;}
.sub  section p:not(:last-child){margin-bottom: 1em;}


/* H1 - H5 -------------------- */
.sub h1{
	width: 25vw;
	font-family: YuMincho, "Yu Mincho", "serif";font-weight: normal;color: #ffcc00;
	letter-spacing: 0.1em;border-bottom: 1px solid #ffcc00;
	position: absolute;right: 8vw;bottom: 85px;}

.sub h2{background: #282828;color: #fff;
	font-family: YuMincho, "Yu Mincho", "serif";font-size: 1.714em; text-align: center;
	letter-spacing: 0.2em;padding: 8px 10px;margin-bottom: 30px;}

.sub h3{font-family: YuMincho, "Yu Mincho", "serif";font-size: 1.714em;font-size: 1.42em;font-weight: normal;
	letter-spacing: 0.1em;padding-bottom: 15px;border-bottom: 1px solid #ffcc00; margin-bottom: 30px;}
.sub h3:not(:first-child){margin-top: 40px;}

.sub h4{font-family: YuMincho, "Yu Mincho", "serif";font-weight: normal;font-size: 1.28em;
	letter-spacing: 0.1em;margin-bottom: 30px;}
.sub h4:not(:first-child){margin-top: 30px;}

.sub h5{font-size: 1.28em; color: #ffcc00;letter-spacing: 0.1em;margin-bottom: 20px;}
.sub h5:not(:first-child){margin-top: 20px;}

/* table -------------------- */
.sub table:not(:first-child){margin-top: 30px;}
.sub table:not(:last-child){margin-bottom: 30px;}
.sub table tr{border: 1px solid #282828;}

.sub table th,
.sub table td{padding: 10px 20px;text-align: left;vertical-align: middle;line-height: 1.75}

.sub table th{background: #e9e9e9;}

.sub table{width: 100%;}




/* list -------------------- */
.sub .list{border-left: 1px solid #282828;padding-left: 15px;}
.sub .list li{letter-spacing: 0.1em;line-height: 1.8;padding-left: 20px; position: relative;}
.sub .list li:before{content: "";width: 7px;height: 7px;background: #ffcc00;border-radius: 10px;
	position: absolute;top: 8px;left: 0;}
.sub .list:not(:first-child){margin-top: 30px;}
.sub .list:not(:last-child){margin-bottom: 30px;}

/* flow -------------------- */
.sub .flow .box{background: #f8f8f8;padding: 20px 20px 20px 50px;position: relative;counter-increment: flow;}
.sub .flow .box:not(:last-child){margin-bottom: 10px;}
.sub .flow .box:before{content: counter(flow);background: #282828;color: #fff;
	font-family: YuMincho, "Yu Mincho", "serif";font-size: 1.714em;
	display: flex;align-items: center;justify-content: center;padding: 10px;
	position: absolute;top: 0;left: 0;bottom: 0;}
.sub .flow:not(:first-child){margin-top: 30px;}
.sub .flow:not(:last-child){margin-bottom: 30px;}

/* img付き -------------------- */
.sub .block:not(:first-child){margin-top: 50px;}
.sub .block:not(:last-child){margin-bottom: 30px;}

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

.sub .block > *:first-child{margin-right: 40px;}

.sub .block .txt{flex-grow: 1;}

.sub .block .txt p + h3,
.sub .block .txt p + h4{margin-top: 40px;}

.sub .block .photo{flex-grow: 0;}
.sub .block .photo img{max-width: none;}
.sub .block .photo p{
	line-height: 0;
	overflow: hidden;}

/* other -------------------- */
.sub .gr_back{background: #f8f8f8;padding: 30px;}
.sub .gr_back:not(:first-child){margin-top: 30px;}
.sub .gr_back:not(:last-child){margin-bottom: 30px;}

.sub .half{display: flex;justify-content: space-between;}
.sub .half:not(:first-child){margin-top: 30px;}
.sub .half:not(:last-child){margin-bottom: 30px;}

.sub .half .box{flex-basis: calc(50% - 20px);}

/* doctor -------------------- */

.sub .name_box .post{font-weight: bold;letter-spacing: 0.1em;margin-bottom: 0;}
.sub .name_box .name{font-family: YuMincho, "Yu Mincho", "serif";font-size: 1.714em;
	letter-spacing: 0.1em;}
.sub .name_box .name span{display: block;font-size: 1rem;line-height: 1.4}

.sub .carrer li{position: relative;padding-left: 12px;line-height: 1.7;}
.sub .carrer li:not(:last-child){margin-bottom: 0.5em;}
.sub .carrer li:before{content: "-"; position: absolute;top: 0;left: 2px;}
.sub .carrer:not(:first-child){margin-top: 30px;}
.sub .carrer:not(:last-child){margin-bottom: 30px;}


.sub table.price_table td{text-align: right;}
.sub table.price_table th{width: 50%;}



.sub .group h2{margin-bottom: 30px;}
.sub .group .wrap{display: flex;justify-content: space-evenly;width: 700px;flex-wrap: wrap;}
.sub .group .box{margin: 30px 15px;position: relative;width: 300px;}
.sub .group .txt{width: calc(100% - 30px);background: #fff;padding: 30px 25px 0;margin: auto;transform: translateY(-25px);}
.sub .group .txt .add{letter-spacing: 0.1em;line-height: 1.7;margin-bottom: 10px;}
.sub .group .txt .tel{font-family: YuMincho, "Yu Mincho", "serif";font-size: 1.42em;letter-spacing: 0.1em;margin-bottom: 15px;}
.sub .group .txt .btn{text-align: center;}
.sub .group .txt .btn a{width: 100%;}
.sub .group h3{background: #FFC000;padding: 20px 8px;font-weight: normal; font-size: 1.28em;font-family: YuMincho, "Yu Mincho", "serif";letter-spacing: 0.1em;writing-mode: vertical-rl; -webkit-writing-mode: vertical-lr;position: absolute;right: 20px;top: -20px;}


