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




/* contents-top */

.contents-top {
	width: 100%;
}

/* contents01 */

.contents01 {
	width: 100%;
	text-align: center;
	margin-bottom: 50px;
	overflow: hidden;
}

.contents01 img {
	width: 100%;
height: auto;
}

.contents01 .box-in {
	padding: 60px 0px 120px;
	background-image: url("top/images/scroll.svg");
background-position: center bottom;
background-repeat: no-repeat;
	background-size: auto 70px;
}

.contents01 h3, .contents01 h4, .contents03 h4, .contents03 h5, .contents04 > h4, .contents04 h5, .contents04 h6, .contents04 .box02 p, .contents05 h4, .contents05 h5, .contents05 h6, .contents06 h4, .contents06 h6, .contents07 h4, .contents08 p, .contents08 h4, .contents09 h4, .contents10 h4, .contents10 h5, .contents11 h4, .contents11 h5 {
	font-family: 'Noto Serif JP', serif;
font-weight: 400;
}

.contents01 h3 {
	font-size: 30px;
line-height: 1.6;
letter-spacing: 0.2em;
}

.contents01 h4, .contents03 h4 {
	font-size: 13px;
line-height: 1.2;
letter-spacing: 0.05em;
	padding-top: 20px;
}


/* contents02 */

.contents02 {
	width: 100%;
	position: relative;
}

.contents02 > img {
	width: 100%;
height: auto;
}

.contents02 .box-in {
	position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
	width: 90%;
}

.contents02 h3 {
	margin-bottom: 30px;
}

.contents02 h3 img {
	height: 60px;
	width: auto;
}

.contents02 .box {
	padding: 30px 40px;
	width: 48%;
	background-color: rgba(153,153,153,0.9);
}

.contents02 p {
color: #FFF;
line-height: 1.8;
	text-shadow: 0px 0px 5px #000;
}

.contents02 h6 {
	font-family: 'Klee One', cursive;
	padding-top: 30px;
	text-align: right;
	font-size: 34px;
color: #FFF;
line-height: 1.2;
font-weight: 400;
}

.contents02 h6 span {
	font-size: 14px;
}

/* contents03 */

.contents03 {
	width: 100%;
	text-align: center;
	padding: 70px 0px 120px;
}

.contents03 h3 img, .contents04 h3 img, .contents05 h3 img, .contents09 h3 img, .contents10 h3 img, .contents11 h3 img {
	height: 48px;
	width: auto;
}

.contents07 h3 img {
	height: 40px;
	width: auto;
}

.contents06 h3 img {
	height: 58px;
	width: auto;
}

.contents03 h5 {
	font-size: 20px;
line-height: 1.2;
letter-spacing: 0.1em;
	padding: 25px 0px 50px;
}

.contents03 .box-in {
	background-image: url("top/images/back01.png");
background-position: center center;
background-repeat: repeat-x;
	background-size: auto 275px;
}

.contents03 .box {
	width: 930px;
}

.contents03 .box div {
	position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.contents03 .box iframe {
	position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


/* contents04 */

.contents04 {
	width: 100%;
	text-align: center;
}

.contents04 h4, .contents05 h4, .contents06 h4, .contents07 h4, .contents09 h4, .contents10 h4, .contents11 h4 {
	margin-bottom: 50px;
	padding-top: 30px;
	font-size: 20px;
letter-spacing: 0.1em;
}

.contents04 .box01 {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
}

.contents04 .box01 .box {
	width: 33.3%;
	height: 566px;
	background-position: center center;
background-repeat: no-repeat;
	background-size: cover;
	padding-top: 135px;
}

.contents04 .box01 .box:nth-child(1) {
	background-image: url("top/images/img02.jpg");
}

.contents04 .box01 .box:nth-child(2) {
	background-image: url("top/images/img03.jpg");
}

.contents04 .box01 .box:nth-child(3) {
	background-image: url("top/images/img04.jpg");
}

.contents04 .box01 h5 {
	font-size: 15px;
letter-spacing: 0.1em;
	padding: 40px 0px 30px;
	position: relative;
}

.contents04 .box01 .box:nth-child(1) h5, .contents04 .box01 .box:nth-child(2) h5 {
	text-shadow: 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF;
}

.contents04 .box01 .box:nth-child(3) h5 {
	color: #FFF;
	text-shadow: 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000;
}

.contents04 .box01 h5::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 27px;
}

.contents04 .box01 .box:nth-child(1) h5::before {
	background-image: url("top/images/text02.svg");
}

.contents04 .box01 .box:nth-child(2) h5::before {
	background-image: url("top/images/text03.svg");
}

.contents04 .box01 .box:nth-child(3) h5::before {
	background-image: url("top/images/text04.svg");
}

.contents04 .box01 .box div {
	width: 80%;
	height: 220px;
	position: relative;
	margin: auto;
	text-align: left;
	background-color: rgba(0,0,0,0.6);
}

.contents04 .box01 .box p {
	position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
	width: 85%;
	font-size: 14px;
color: #FFF;
line-height: 1.8;
letter-spacing: 0em;
}

.contents04 .box02 {
	padding: 40px 0px 60px;
	background-color: #f2f2f2;
	background-image: url("top/images/arrow.svg");
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 120px;
}

.contents04 .box02 h5 {
	font-size: 20px;
line-height: 1.2;
letter-spacing: 0.1em;
	margin-bottom: 75px;
}

.contents04 .box02 h6 {
	font-size: 18px;
line-height: 2.2;
letter-spacing: 0.1em;
	margin-bottom: 30px;
}

.contents04 .box02 p {
line-height: 1.2;
	display: inline-block;
	padding: 10px 20px;
	background-color: #FFF;
}

/* contents05 */

.contents05 {
	width: 100%;
	text-align: center;
	padding-top: 70px;
}

.contents05 .box01, .contents05 .box02 {
	padding: 60px 0px 50px;
}

.contents05 .box01 {
	background-color: #f2f2f2;
}

.contents05 .box01 > h5, .contents05 .box02 > h5 {
	font-size: 24px;
color: #384f78;
line-height: 1.2;
letter-spacing: 0.1em;
	margin-bottom: 30px;
}

.contents05 .box, .contents05 p {
	width: 960px;
	text-align: left;
}

.contents05 p {
	font-size: 14px;
}

.contents05 .box {
	margin-top: 30px;
}

.contents05 .box div {
	display: flex;
  justify-content: flex-start;
	align-items: center;
	margin-bottom: 15px;
}

.contents05 .box h5 {
	font-size: 14px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
	padding: 6px 0px;
	text-align: center;
	background-color: #000;
	width: 100px;
	border-radius: 5px;
}

.contents05 .box01 div h6, .contents05 .box02 div h6 {
	font-size: 20px;
line-height: 1.2;
letter-spacing: 0.1em;
	flex: 1;
	padding-left: 20px;
}

.contents05 ul {
	padding: 25px 30px;
	background-color: #FFF;
}

.contents05 ul li {
	margin-bottom: 10px;
	font-size: 14px;
}

.contents05 ul li:last-child {
	margin-bottom: 0px;
}

.contents05 .box02 ul {
	background-color: #f2f2f2;
}

/* contents06 */

.contents06 {
	width: 100%;
	text-align: center;
	padding: 70px 0px;
}

.contents06 .box-in {
	width: 960px;
	text-align: left;
}

.contents06 .box {
	margin-bottom: 20px;
}

.contents06 .box:last-child {
	margin-bottom: 0px;
}

.contents06 .box01 {
	background-image: url("top/images/question.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	height: 57px;
	padding-left: 75px;
	background-color: #000;
}

.contents06 .box01 h6 {
	font-size: 18px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
	padding-top: 17px;
}

.contents06 .box02 {
	background-image: url("top/images/answer.svg");
background-position: left 20px top 20px;
background-repeat: no-repeat;
	background-size: auto 25px;
	padding: 15px 20px;
	padding-left: 75px;
	background-color: #f2f2f2;
}

.contents06 .box01 p {
	font-size: 15px;
line-height: 1.6;
}

summary {
  list-style: none;
  position: relative;
  cursor: pointer;
}

summary::-webkit-details-marker {
  display: none;
}

summary::after {
	content: '';
	background-image: url("top/images/icon-qa.svg");
background-position: left top;
background-repeat: no-repeat;
	width: 24px;
	height: 25px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	transition: transform 0.5s;
}

details[open] summary::after {
	transform: translateY(-50%) rotate(45deg);
}

details[open] .box02 {
  animation: fadein 0.5s ease;
}

@keyframes fadein {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

/* contents07 */

.contents07 {
	width: 100%;
	text-align: center;
	padding: 70px 0px 50px;
	background-color: #f2f2f2;
}


/*contact*/
.contact {
	width: 960px;
	text-align: left;
}


.contact table {
	width: 100%;
	display:block;
	margin-left: auto;
	margin-right: auto;
	
}

.contact table .box {
	margin-bottom:5px;
	
}

.contact table tr {
	clear: both;
	display: block;
	margin-bottom:10px;
	margin-top:10px;
}

.contact table tr td {
	font-size: 22px;
	line-height:1.2;
	color: #000;
	letter-spacing: 0.1em;
	padding-bottom: 20px;
	display: block;
	clear: both;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.contact table tr td:last-child {
	font-size: 16px;
	color: #333;
	letter-spacing: 0em;
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1.6;
}

.contact table span.sp-view {
	display: none;
}

.contact table tr td input {
	width:940px;
	margin-bottom: 15px;
}

.contact table tr td input.radio {
	width: 15px;
}

.contact table tr td textarea {
	width:940px;
}

.contact table tr td.left {
	width: 100%;
}

.contact table tr.t-end td {
	vertical-align: top;
}

.contact table tr.errer td {
	color: #fb5373;
	vertical-align: middle;
}


p.text02 {
	line-height: 1.6;
}


form,input,textarea,button{
	margin:0;
	padding:15px 15px;
	font-size:100%;
}

td div.space {
	margin-top: 20px;
}

input[type="text"] {
	outline: 0;
	border: 1px solid #FFF;
}

textarea[type="textarea"] {
	border: 1px solid #FFF;
	padding: 15px 15px;
}


.check-box {
	padding-top:30px;
	padding-bottom:30px;
	margin-top: 50px;
	width: 700px;
	text-align: center;
	background-image: url(../img/index/text-back.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}

.check-box p {
	color:#000;
	line-height:1.6;
	margin-bottom:15px;
}

.check-box span {
	color:#000;
	font-size:16px;
	line-height: 2;
	padding-left:15px;
	display:inline-block;
}

.check-box p a {
	color:#29abe2;
	line-height:1.6;
	text-decoration:underline;
}



.button {
	text-align: center;
	margin-top: 40px;
}

.button p {
	padding-top: 20px;
}

.button p a {
	color: #fb5373;
}

button {
	cursor: pointer;
	border:none;
	background-color: rgba(255,255,255,0);
}

.button img {
	height:40px;
	width:auto;
}

button span {
	display:inline-block;
	padding:40px;
	padding-top:12px;
	padding-bottom:10px;
	background-color:#000000;
	color:#FFF;
	font-size:15px;
	letter-spacing:0.2em;
	border: 1px solid #000000;
}

button:hover span {
	background-color: #FFF;
	color: #000000;
}


.btn-box {
	padding-top:40px;
	clear:both;
	margin-bottom:30px;
}



#formWrap {
	width:100%;
	padding-top: 30px;
	padding-bottom: 30px;
}

.formtable {
	width: 100%;
}

.formtable tr {
	padding-left:5px;
	padding-right:5px;
	display:block;
}

.formtable th {
	text-align: left;
	font-weight: normal;
	width: 100%;
	display:block;
	margin-bottom:10px;
}

.formtable td  {
	text-align: left;
	font-weight: normal;
	width: 100%;
	display:block;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.formtable input  {
	width: 100%;
}




.contact h4 {
	color: #000;
	line-height: 1.6;
	letter-spacing: 0.05em;
	font-weight: normal;
	margin-bottom:30px;
}

.contact h5 {
	color: #000;
	line-height: 1.6em;
	letter-spacing: 0.2em;
	font-size: 20px;
	font-weight: normal;
	text-align: center;
	margin-bottom: 20px;
	padding-top: 40px;
}


a.btn-mail {
	display:inline-block;
	padding:40px;
	padding-top:15px;
	padding-bottom:13px;
	background-color:#000000;
	color:#FFF;
	font-size:15px;
	letter-spacing:0.2em;
	font-weight:bold;
	border: 2px solid #000000;
	margin-bottom:60px;
}

a.btn-mail:hover {
	background-color:#FFF;
	color:#000000;
}

span.text003 {
	display:none;
}


.text002 {
	padding-top: 60px;
}


br.sp-s {
	display: none;
}




/* contents08 */

.contents08 {
	width: 1100px;
	margin-top: 120px;
	text-align: center;
	padding: 60px 0px 40px;
	margin-bottom: 100px;
	position: relative;
	border-style : solid;
border-color : #000000;
border-color : rgba(0, 0, 0, 0.5);
border-width : 1px;
}

.contents08::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/midashi06.png");
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 51px;
	margin-top: -25px;
}

.contents08 .box-in {
	display: flex;
  justify-content: center;
flex-wrap: wrap;
	align-items: center;
	margin-bottom: 30px;
}

.contents08 p {
line-height: 1.2;
letter-spacing: 0.05em;
	margin-right: 30px;
}

.contents08 h4, .contents08 h4 a {
font-size: 50px;
line-height: 1.2;
letter-spacing: 0.05em;
	color: #000;
}

.contents08 h4 {
	position: relative;
	padding-left: 75px;
}

.contents08 h4::before {
	content: "";
	position: absolute;
left: 0px;
top: 22px;
	background-image: url("top/images/tel-footer.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 95px;
	height: 25px;
}


/* contents09 */

.contents09 {
	width: 100%;
	text-align: center;
	padding: 70px 0px 90px;
}

.contents09 .box-in {
	width: 1060px;
	text-align: left;
	padding: 15px 60px;
	border-style : solid;
border-color : #f2f2f2;
border-width : 10px;
}

.contents09 .box {
	display: flex;
  justify-content: space-between;
	align-items: flex-start;
	padding: 30px 5px;
	border-bottom-style : solid;
border-bottom-color : rgba(0, 0, 0, 0.3);
border-bottom-width : 1px;
}

.contents09 .box:last-child {
	border-bottom-style : none;
}

.contents09 h5 {
	font-size: 14px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
	padding: 6px 0px;
	text-align: center;
	background-color: #000;
	width: 100px;
	border-radius: 5px;
}

.contents09 p {
	flex: 1;
	padding-left: 20px;
}

/* guide */
.contentsguide {
       width: 100%;
       text-align: center;
       margin-bottom: 70px;
}


/* contents10 */

.contents10 {
	width: 100%;
	text-align: center;
	padding: 70px 0px 60px;
	background-color: #e9fff9;
}

.contents10 .box-in {
	width: 1060px;
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
}

.contents10 .box {
	width: 340px;
	margin-bottom: 30px;
	background-color: #FFF;
	border-radius: 20px;
	padding: 20px;
}

.contents10 .box h4 {
	padding: 0px;
	margin: 0px;
	position: relative;
	margin-top: 50px;
}

.contents10 .box h4::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 41px;
	margin-top: -50px;
}

.contents10 .box:nth-child(1) h4::before {
	background-image: url("top/images/logo01-footer.png");
	height: 41px;
}

.contents10 .box:nth-child(2) h4::before {
	background-image: url("top/images/logo02-footer.png");
}

.contents10 .box:nth-child(3) h4::before {
	background-image: url("top/images/logo03-footer.png");
}

.contents10 .box:nth-child(4) h4::before {
	background-image: url("top/images/logo04-footer.png");
}

.contents10 .box:nth-child(5) h4::before {
	background-image: url("top/images/logo05-footer.png");
}

.contents10 .box:nth-child(6) h4::before {
	background-image: url("top/images/logo06-footer.png");
}

.contents10 .box h5, .contents10 .box h5 a {
	font-size: 33px;
color: #4fc4a9;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: normal;
}

.contents10 .box h5 {
	display: inline-block;
	position: relative;
	padding-left: 25px;
	margin: 12px 0px 10px;
}

.contents10 .box h5::before {
	content: "";
	position: absolute;
left: 0px;
top: 10px;
	background-image: url("top/images/tel-clinic.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 18px;
	height: 26px;
}

.contents10 .box p {
	font-size: 14px;
color: #4d4d4d;
line-height: 1.4;
	text-align: left;
	margin-bottom: 15px;
}

.contents10 .m-box, .contents10 .m-box iframe {
	width: 100%;
	height: 120px;
}


/* contents11 */

.contents11 {
	width: 100%;
	text-align: center;
	padding: 70px 0px 60px;
	background-color: #f2f2f2;
}

.contents11 .box-in {
	width: 1060px;
	text-align: left;
	margin-bottom: 60px;
}

.contents11 .box-in:last-child {
	margin-bottom: 0px;
}

.contents11 .box01 {
	width: 960px;
	display: flex;
  justify-content: center;
	margin-bottom: 60px;
}

.contents11 .box-in:last-child .box01 {
	flex-direction: row-reverse;
}

.contents11 .box01 .box001 {
	width: 330px;
	margin-right: 60px;
}

.contents11 .box-in:last-child .box01 .box001 {
	margin-right: 0px;
	margin-left: 60px;
}

.contents11 .box01 .box001 img {
	width: 100%;
height: auto;
	border-radius: 50%;
}

.contents11 .box01 .box002 {
	flex: 1;
	padding-top: 110px;
}

.contents11 .box01 .box002 div {
	display: flex;
  justify-content: flex-start;
	align-items: center;
	border-bottom-style : dotted;
border-bottom-color : #666;
border-bottom-width : 3px;
	padding: 0px 5px;
	padding-bottom: 18px;
	margin-bottom: 22px;
}

.contents11 .box01 h4 {
	margin-bottom: 0px;
	font-size: 16px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: normal;
	padding: 6px 20px;
	background-color: #000;
	display: inline-block;
	border-radius: 5px;
	margin-top: 6px;
	margin-right: 30px;
}

.contents11 .box01 h5 {
	font-size: 36px;
color: #000;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: normal;
}

.contents11 .box01 h5 span {
	font-size: 26px;
	display: inline-block;
	padding-left: 15px;
}

.contents11 .box01 h6 {
	padding-left: 10px;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.contents11 .box01 h6 a {
	text-decoration: underline;
	color: #333;
	font-size: 14px;
	letter-spacing: 0.05em;
}


.contents11 .box02 {
	background-color: #FFF;
	position: relative;
	padding: 55px 50px 40px;
}

.contents11 .box02::before {
	content: "";
	position: absolute;
left: 45px;
top: 0px;
	background-image: url("top/images/text05.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 272px;
	height: 48px;
	margin-top: -20px;
}

.contents11 .box02 p {
	line-height: 2;
	font-size: 15px;
}




    .sp-view {
        display: none;
    }