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


/* contents01 degi-mama*/

.contents01 {
	width: 100%;
	background-image: url("images/back01.jpg");
background-position: top;
background-repeat: repeat-x;
	background-size: 100% auto;
	text-align: center;
	padding: 90px 0px;
}

.contents01 .box-in {
	width: 1100px;
	background-color: #FFF;
	padding-bottom: 60px;
	border-radius: 30px;
}

.contents01 .box-in p {
	font-size: 17px;
	line-height: 2.2;
}

.contents01 .box-in p span {
	font-size:14px;
}



/* contents02 degi-mama*/

.contents02 {
	width: 100%;
	background-image: url("images/back02.png");
background-position: center bottom;
background-repeat: repeat-x;
	text-align: center;
	padding: 90px 0px;
}

.contents02 .box-in {
	width: 960px;
}

.contents02 .box01, .contents02 .box02 {
	padding: 60px 0px 50px;
	border-style : solid;
border-width : 5px;
	border-radius: 30px;
	background-color: #FFF;
	position: relative;
}

.contents02 .box01::before, .contents02 .box02::before {
	position: absolute;
left: 30%;
top: 0px;
	content: "";
	display: inline-block;
	width: 40%;
	padding: 10px 0px;
	text-align: center;
	margin-top: -30px;
	font-family: "Zen Maru Gothic", serif;
	font-size: 30px;
color: #FFF;
line-height: 1.2;
font-weight: 500;
}


.contents02 .box01 {
	border-color : #ffb6bf;
	width: 60%;
	margin: 0 auto 60px;
}

.contents02 .box01 ul {
	display: inline-block;
}

.contents02 .box01 ul li {
	font-size: 20px;
color: #000;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: 400;
	position: relative;
	text-align: left;
	padding-left: 45px;
}

.contents02 .box01 ul li:not(:last-child) {
	margin-bottom: 25px;
}

.contents02 .box01 ul li::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	width: 25px;
	height: 25px;
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
	background-color: #ffb6bf;
	border-radius: 50%;
	font-family: "Zen Maru Gothic", serif;
	font-size: 18px;
	letter-spacing: 0em;
}

.contents02 .box01 ul li:nth-child(1)::before {
	content: "1";
}

.contents02 .box01 ul li:nth-child(2)::before {
	content: "2";
}

.contents02 .box01 ul li:nth-child(3)::before {
	content: "3";
}

.contents02 .box01 ul li:nth-child(4)::before {
	content: "4";
}


.contents02 p {
	margin-bottom: 30px;
	font-size: 18px;
}

.contents02 p.text01 span {
    font-weight: 600;
	border-bottom: 5px solid #ffb6bf;
	
}

.contents02 .box01 ul li span {
	font-size: 16px;
}

/*contents02a */

.contents02a {
	width: 100%;
	text-align: center;
	background-image: url("../top/images/back03.jpg");
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
	padding: 75px 0px;
}

.contents02a .box-in {
	width: 1240px;
	background-color: #FFF;
	display: flex;
  justify-content: center;
flex-wrap: wrap;
	gap:0px 45px;
	padding: 70px 0px;
}

.contents02a .box {
	width: 310px;
}

.contents02a h4 {
	width: 300px;
	text-align: left;
	font-family: "Zen Maru Gothic", serif;
    font-size: 24px;
    color: #666666;
    line-height: 1.2;
    letter-spacing: 0em;
    font-weight: 400;
    padding: 5px;
    background-color: #E0DF4B;
}

.contents02a h4::before {
	content: "";
	position: absolute;
left: 0px;
top: 40px;
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 64px;
}

.contents02a p {
	text-align: left;
	padding: 5px 10px 40px;
}


/*contents03 top-sodan*/

.contents03 {
	width: 100%;
	padding: 70px 0px;
}

.contents03 .box-in {
	position: relative;
}


.contents03 .box02::before, .contents03 .box02::after {
	content: "";
	position: absolute;
	background-image: url("../top/images/icon02.svg");
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 254px;
	height: 200px;
}

.contents03 .box02::before {
left: 0px;
top: 0px;
background-position: left top;
	margin-left: -10px;
	margin-top: -80px;
}

.contents03 .box02::after {
right: 0px;
bottom: 0px;
background-position: right bottom;
	margin-right: 10px;
	margin-bottom: 100px;
}

.contents03 .group {
	width: 960px;
	border-style: solid;
    border-color: #CBCC00;
    border-width: 5px;
    border-radius: 30px;
    padding: 60px 50px 40px;
    text-align: center;
    margin: 0 auto 60px;
	
}

.contents03 .box02 .list-box {
	padding-left :20px; 
    background-color: #FFF;
    display: flex;
    justify-content: stretch;
    flex-wrap: wrap;
    position: relative;
		padding-top: 10px;
}

.contents03 .box02 .group ul li {
	font-size: 16px;
	color: #000;
	line-height: 1.2;
	letter-spacing: 0.05em;
	font-weight: 400;
	position: relative;
	text-align: left;
	padding-left: 30px;
}

.contents03 .box02 .group ul {

}

.contents03 .box02 .group ul li {
	margin-bottom: 18px;
}

.contents03 .box02 .group 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: 20px;
    height: 20px;
}

.contents03 .box02 .group ul li::before {
	content: "";
}


.contents03 .box02 .box {
	width: 100%;
	position: relative;
	
}

.contents03 .box02 .title {
	padding-bottom: 40px;
	text-align: center;
}

.contents03 .box02 .title h6{
	font-size: 42px;
	color: #666666;
}


.contents03 .box02 .box:not(:last-child) {
	margin-bottom: 40px;
}

.contents03 .box02 .box002 {
	/*width: 940px;*/
	text-align: left;
}

.contents03 .box02 h5, .contents03 .box02 h6 {
	font-family: "Zen Maru Gothic", serif;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: 400;
}

.contents03 .box02 h6{
	font-size: 37px;
    color: #CBCC00;
	margin-bottom: 20px;
	position: relative;
}


.contents03 .box002 {
    position: relative; 
	border-color: #e0df4b;
}

.contents03 .box002 h6 {
    padding-left: 80px; 
}

.contents03 .box002 h6.c01::before,
.contents03 .box002 h6.c02::before,
.contents03 .box002 h6.c03::before,
.contents03 .box002 h6.c04::before, 
.contents03 .box002 h6.c05::before,
.contents03 .box002 h6.c06::before {
    content: "";
    position: absolute;
    top: -10px; 
    left: 0; 
    background-repeat: no-repeat;
	background-size: auto 100%;
    width: 100%;
    height: 64px;
}

.contents03 .box002 h6.c01::before {
    background-image: url("images/img01.svg");
}

.contents03 .box002 h6.c02::before {
    background-image: url("images/img02.svg");
}

.contents03 .box002 h6.c03::before {
    background-image: url("images/img03.svg");
}

.contents03 .box002 h6.c04::before {
    background-image: url("images/img04.svg");
}

.contents03 .box002 h6.c05::before {
    background-image: url("images/img05.svg");
}

.contents03 .box002 h6.c06::before {
    background-image: url("images/img06.svg");
}


/* contents04 doctor */

.contents04 {
	width: 100%;
	margin-bottom: 80px;
	margin-top:30px;
}

.contents04 .box01 {
	width: 100%;
	background-image: url("../top/images/back05.png");
background-position: center bottom;
background-repeat: repeat-x;
	padding-bottom: 65px;
	margin-bottom: 40px;
}

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

/*
.contents04 .box02 {
	width: 960px;
	display: flex;
  justify-content: space-between;
}
*/

.contents04 .box02 {
    max-width: 960px; /* 固定幅をやめて、最大幅を設定 */
    margin: 0 auto; /* セクション全体を中央寄せ */
    display: flex;
    justify-content: center; /* 中央寄せ */
    gap: 40px; /* ボックス間のスペース */
}

.contents04 .box:first-child {
    width: 60%; /* 経歴のボックスを60%に */
}

.contents04 .box:last-child {
    width: 40%; /* 専門医・認定医のボックスを40%に */
}

.contents04 .box-in {
	align-items: center;
}

.contents04 .box01 p {
	font-size: 18px;
line-height: 2;
}

.contents04 h3 {
	position: relative;
}

.contents04 h3::after {
	content: "";
	position: absolute;
	left: 0px;
	bottom: 0px;
	background-image: url("images/icon-name.svg?1");
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: auto 100%;
	width: 450px;
	height: 80px;
	/*margin-left: -100px;
	margin-bottom: -60px;*/
}

.contents04 h3 img {
	border-radius: 50%;
}

.contents04 h4 {
	font-family: "Zen Maru Gothic", serif;
	width: 190px;
	text-align: center;
	font-size: 24px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.05em;
	padding: 5px 0px;
font-weight: normal;
	position: relative;
	background-color: #E0DF4B;
	margin-bottom: 15px;
}

.contents04 h4::after {
	content: "";
	position: absolute;
right: 0px;
top: 7px;
	font-size: 18px;
color: #CBCC00;
}

/*ついか*/
.contents04 .box {
    width: 50%; /* 均等な幅を持たせる */
    text-align: left; /* 中央寄せ */
}



.contents04 .box:nth-child(1) h4::after {
	content: "Career";
	margin-right: -80px;
}

.contents04 .box:nth-child(2) h4::after {
	content: "Affiliated academic society";
	margin-right: -265px;
}

.career {
    display: block; /* dt, dd を正しく扱うために block にする */
}

.career dt, .career dd {
    display: inline-block;
    vertical-align: top;
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #000;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

.career dt {
    width: 70px; 
    padding-right: 10px;
}

.career dd {
    display: inline-block;
    width: calc(100% - 110px); /* 残りのスペースを使用 */
    margin: 0;
}

/*水曜医師*/
.contents03 .doctor {
	width:100%;
}

.contents03 .box02 .doctor h6 {
	width:50%;
	margin: 10px auto 30px;
    text-align: center;
    font-family: "Zen Maru Gothic", serif;
    font-size: 24px;
    color: #fff;
    line-height: 1.2;
    letter-spacing: 0em;
    font-weight: 400;
    padding: 5px;
    background-color: #CBCC00;
}

.doctor .box01 {
	width: 800px;
	display: flex;
  justify-content: space-between;
	margin-bottom: 30px;
	gap: 20px;
}

.doctor .box01 .box001 {
	width: 30%; /* 画像側の幅を調整 */
	text-align: center; /* 中央寄せ（必要なら） */
}


.doctor .box-in {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px; /* スペースを追加（任意） */
}


.doctor .box-in p {
	width: 65%; /* 残りのスペースを占める */
	font-size: 18px;
	line-height: 2;
}

.doctor h3 img {
	width: 100%;
height: auto;
	border-radius: 50%
}

.doctor .box01 .box002 {
	padding-top: 30px;
	width: 600px;
}

.dotor .box01 .box002 p {
	letter-spacing: 0em;
}

.doctor .box01 .box002 p.career {
	font-family: "Zen Maru Gothic", serif;
    width: 120px;
    text-align: center;
    font-size: 18px;
    color: #FFF;
    line-height: 1.2;
    letter-spacing: 0.05em;
    padding: 5px 0px;
    font-weight: normal;
    position: relative;
    background-color: #E0DF4B;
    margin-bottom: 15px;
}



.doctor .box01 h3 {
	font-size: 18px;
    font-family: "Zen Maru Gothic", serif;
    color:  #E0DF4B;
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: 0.05em;
	padding-bottom: 20px;
}

.doctor .box01 h4{
	font-family: "Zen Maru Gothic", serif;
	font-size:24px;
    color: #666666;
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: 0.05em;
}

.doctor .box01 h4 {
	font-size: 27px;
}

.doctor .box01 h5 {
	font-size: 20px;
	padding-top: 30px;
}






.sp-view {
	display: none;
}
