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


h4.midashi001 {
	font-size: 27px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: normal;
	padding: 8px 10px;
	border-radius: 10px;
	text-align: center;
	margin-bottom: 40px;
	background-color: #cc0500;
	width: 840px;
}

h4.midashi001 span {
	font-size: 17px;
}

/*contents01*/

.contents01, .contents02 {
	margin-bottom: 90px;
}

.contents01 .box01, .contents02 .box01, .contents05 {
	width: 100%;
	display: flex;
  justify-content: center;
	align-items: center;
	margin-bottom: 60px;
background-position: left top;
background-repeat: no-repeat;
	background-size: cover;
	height: 560px;
}

.contents01 .box01 {
	background-image: url("images/back01.jpg");
	text-align: right;
}

.contents01a .box01 {
	text-align: center;
}

.contents02 .box01 {
	background-image: url("images/back02.jpg");
	background-position: right top;
}

.contents05 {
	background-image: url("images/back03.jpg");
	height: 760px;
}

.contents01 .box01 .box-box, .contents02 .box01 .box-box {
	width: 80%;
}

.contents01 .box01 h3, .contents02 .box01 h3 {
	font-size: 28px;
	margin-bottom: 15px;
	color: #cc0500;
}

.contents01 .box01 h4, .contents02 .box01 h4 {
	font-size: 51px;
	line-height: 1.2;
	letter-spacing: 0.05em;
}

.contents02 .box01 p {
	font-size: 24px;
	line-height: 1.6;
	letter-spacing: 0.05em;
	padding-top: 30px;
}

.contents01 .box02 {
	text-align: center;
	margin-bottom: 50px;
}

.contents01 .box02 h3 {
	font-size: 33px;
	line-height: 1.4;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 40px;
	color: #cc0500;
}

.contents01 .box02 .box-in {
	width: 580px;
}

.contents01 .box02 table {
	width: 100%;
}

.contents01 .box02 table td {
	font-size: 28px;
color: #000;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: bold;
	padding: 10px 25px;
vertical-align: middle;
	border: none;
}

.contents01 .box02 table td.td01 {
	font-size: 18px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: bold;
	background-color: #b1b1b1;
}

.contents01 .box02 table td:last-child {
	border-left-style : solid;
border-left-color : #000000;
border-left-width : 1px;
}


.contents01 .box03 {
	display: flex;
  justify-content: center;
flex-wrap: wrap;
}

.contents01 .box03 .box {
	width: 348px;
	margin: 0px 10px;
}

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


/*contents02*/

.contents02 .box02 {
	width: 1000px;
	margin-bottom: 90px;
	border-style : solid;
border-color : #cc0500;
border-width : 5px;
	padding: 70px 60px;
	position: relative;
	margin-top: 100px;
}

.contents02 .box02::before {
	content: "プライベート人工ひざ関節手術の特徴";
	position: absolute;
left: 10%;
top: 0px;
	width: 80%;
	font-size: 30px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: bold;
	padding: 8px 0px;
	text-align: center;
	border-radius: 60px;
	display: inline-block;
	background-color: #cc0500;
	margin-top: -30px;
}

.contents02 .box02::after {
	content: "";
	position: absolute;
right: 10px;
bottom: 0px;
	background-image: url("images/img04.png");
background-position: right bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 250px;
	height: 358px;
}

.contents02 .box02 ul li {
	font-size: 28px;
color: #000;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: bold;
	position: relative;
	margin-bottom: 25px;
	padding-left: 50px;
}

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

.contents02 .box02 ul li::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("images/check.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 38px;
	height: 35px;
}


.contents02 .box03 {
	text-align: center;
}

.contents02 .box03 .box {
	position: relative;
	padding-bottom: 70px;
	margin-bottom: 70px;
	border-bottom-style : dotted;
border-bottom-color : #b1b1b1;
border-bottom-width : 4px;
	margin-top: 170px;
	width: 900px;
}

.contents02 .box03 .box:last-child {
	padding-bottom: 0px;
	margin-bottom: 0px;
	border-bottom-style : none;
}

.contents02 .box03 .box::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 86px;
	margin-top: -100px;
}

.contents02 .box03 .box:nth-child(1)::before {
	background-image: url("images/fe01.svg");
}

.contents02 .box03 .box:nth-child(2)::before {
	background-image: url("images/fe02.svg");
}

.contents02 .box03 .box:nth-child(3)::before {
	background-image: url("images/fe03.svg");
}

.contents02 .box03 .box:nth-child(4)::before {
	background-image: url("images/fe04.svg");
}

.contents02 .box03 .box001 p {
	padding-top: 35px;
	line-height: 1.6;
	font-size: 18px;
letter-spacing: 0.05em;
}

.contents02 .box03 .box001 p span {
	font-size: 14px;
	color: #666666;
	display: inline-block;
	padding-top: 20px;
}

.contents02 .box03 .box002, .contents02 .box03 .box003 {
	display: flex;
  justify-content: center;
	align-items: center;
flex-wrap: wrap;
}

.contents02 .box03 .box002 {
	padding-top: 30px;
}

.contents02 .box03 .box002 img, .contents02 .box03 .box003 img {
	width: 100%;
height: auto;
}

.contents02 .box03 .box002 .box-box {
	width: 240px;
	margin: 0px 10px;
}

.contents02 .box03 .box003 .box-box {
	width: 360px;
	margin: 0px 20px;
}


/*contents03*/

.contents03 {
	display: flex;
  justify-content: center;
	align-items: center;
	padding: 30px 0px;
	background-color: #cc0500;
}

.contents03 > div {
	padding: 0px 60px;
}

.contents03 > div:first-child {
	border-right-style : solid;
border-right-color : rgba(255, 255, 255, 0.5);
border-right-width : 1px;
}

.contents03 h3 {
	font-size: 40px;
color: #FFF;
line-height: 1.2;
	padding: 20px 0px;
}

.contents03a h3 {
	font-size: 20px;
}

.contents03 h4 {
	font-size: 32px;
color: #FFF;
line-height: 1.2;
	letter-spacing: 0.05em;
}


/*contents04*/

.contents04 {
	padding: 70px 0px 90px;
}

.contents04 .box-in {
	width: 1200px;
	display: flex;
  justify-content: space-between;
	background-image: url("images/line.svg");
background-position: center 85px;
background-repeat: no-repeat;
	margin-bottom: 30px;
}

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

.contents04 .box {
	width: 216px;
}

.contents04 .box p {
	padding-top: 15px;
	font-size: 15px;
line-height: 1.6;
}

/*contents05*/

.contents05 .box-in {
	width: 80%;
	display: flex;
  justify-content: flex-end;
}

.contents05 .box {
	margin-left: 20px;
}


.sp-view {
    display: none;
}

html, body {
    height: 100%;
}


