@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);



html{min-height:100%; position:relative; font-family: Meiryo, 'MS PGothic', Sans-serif}

body{margin:0 0 4em 0}

h1,h2,h3,h4,h5,h6,p,dl,dd,dt,ul,ol,li{margin:0; padding:0}

h2,h3,h4,h5,h6{font-family:'Noto Sans JP'}

p{line-height:180%; font-size:90%}

ul,dl{font-size:95%; list-style:none}

.sp {clear:both; height:1px}


a {text-decoration:none}

a:link,a:visited,a:active{outline:none}

img,a img{border-style:none}



.l{float:left}

.r{float:right}

#mb_15 {margin-bottom:15px}



.wrap01 {margin:0 auto; width:980px}




.wrap02 {margin:0 auto 4em auto; width:1350px; position:relative}





#header_h1 {margin-bottom:64px; height:70px; background:#467dc1 url(../img/logo_rc.png) no-repeat left top; text-indent:-9999px}

h2 {margin-bottom:20px; padding-bottom:25px; text-align:center; color:#616161; font-size:170%; line-height:125%; background:url(../img/h2_mark.png) no-repeat center bottom}

h2 span{font-size:80%}



.main_box01 {padding:0 25px 35px 25px; border:solid 1px #b1b1b1}

.main_box01 h3{margin:20px 0 10px 0; color:#616161}

.main_box01 h4{margin:10px 0 5px 10px; color:#616161}

.main_box01 h5{margin:10px 0 5px 15px; color:#616161}

.main_box01 p{padding-left:15px}

.main_box01 ol{margin-bottom:10px; padding-left:40px}

.main_box01 a{color:#3277cc; font-weight:bold; font-family:'Noto Sans JP'}

.main_box01 a:hover{color:#2d588f}



.back_top, .back_form {margin:40px auto 10px auto; width:300px; background:#22426a url(../img/arrow_white3.png) no-repeat left 30px center; border-radius:5px; font-size:110%; text-align:center; font-family:'Noto Sans JP'; font-weight:bold}

.back_top a, .back_form a{padding:8px 10px 10px 25px; background:#2664b2 url(../img/arrow_white3.png) no-repeat left 30px center; border-radius:5px; display:block; color:#fff}

.back_top a:hover, .back_form a:hover{background:none}

.button-container a:hover {opacity:0.5}

p#terms_p01, p#consent_p01 {margin:30px 0 0 0}



/* トップページ */




#top_box00 {margin:0 auto}

#top_box00 h2{height:144px; margin:0; padding:0; background:url(../img/top_box00.png) no-repeat center top; text-indent:-9999px}



.top_box01 {width:920px; margin:20px auto 20px auto; padding:20px 30px 10px 30px; background:url(../img/bg.gif); border-radius:5px}

.top_box01 p{text-indent:1em; margin-bottom:10px}






.top_box02 h3{margin-bottom:13px; padding-bottom:17px; color:#585858; background:url(../img/h3_border.gif) repeat-x center bottom}

.top_box02 ul{font-size:90%}

#consultant_ul {margin-right:10px; padding-right:10px; border-right:1px solid #a2b5ce}



#to_top {margin:30px auto 10px auto; width:280px; background:#22426a url(../img/arrow_white2.png) no-repeat left 30px center; border-radius:5px; font-size:110%; text-align:center; font-family:'Noto Sans JP'; font-weight:bold; letter-spacing:2px}

#to_top a{padding:8px 10px 10px 40px; background:#2664b2 url(../img/arrow_white2.png) no-repeat left 30px center; border-radius:5px; display:block; color:#fff}

#to_top a:hover{background:none}



#top_box03 {margin:80px 0 100px 0; padding:20px 30px; background:#eff3f7; border-radius:5px}


#top_box03 ul{margin:30px auto; padding-left:427px; min-height:269px;}

#top_box03 li{margin-bottom:17px; padding:0}





#top_box04 {margin-top:80px; padding:20px 30px; background:#eff3f7; border-radius:5px}


/*ボタン*/
.button-container {
  display: flex;
  gap: 10px; /* ボタン間の余白 */
  flex-wrap: wrap; /* 幅が狭くなったら折り返し */
  justify-content: flex-start;
 width:600px;
	margin:0 auto 2%;
}

.button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 5px;
  font-size: 16px;
  text-decoration: none;
  white-space: nowrap;
}

.button.outline {
  border: 2px solid #1E3A8A;
  color: #1E3A8A;
  background: white;
}

.button.filled {
  background: #1E3A8A;
  color: white;
}

.connect_rc_image {
	width:800px;
	margin:0 auto;
}



/*リスト*/
.list-container {
  display: flex;
  gap: 30px; /* リスト間の余白 */
  flex-wrap: wrap; /* 画面幅が狭いとき折り返し */
  justify-content: flex-start;
  padding-top: 10px;
}

.list {
  flex: 1;
  min-width: 300px; /* 最小幅を指定 */
}

h3.top_system_consulting {
  font-size: 18px;
  font-weight: bold;
  border-bottom: 5px solid #5e8cc2; /* 見出しの下のライン */
  padding-bottom: 5px;
  margin-bottom: 10px;
}

.list-container　p {
  font-size: 16px;
  margin: 5px 0;
	line-height:1.3em;
}

/*トップのRCイメージリスト*/
   .list-outbox {
            background-color: #f0f4f8;        }

        .list-inbox {
            max-width: 600px;
            margin: 20px auto;
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .list-item {
            display: flex;
            align-items: center;
            background: white;
            padding: 15px;
            border-radius: 10px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            border: 2px dashed #7aa6c2;
        }

        .number-box {
            width: 40px;
            height: 40px;
            background: #3478b6;
            color: white;
            font-size: 20px;
            font-weight: bold;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 5px;
            margin-right: 10px;
        }

        .text {
            flex-grow: 1;
            font-size: 14px;
        }


/* システム登録申請　利用規約 */

.agreebox {margin-top:50px; text-align:center}

.agreebox p{margin:15px auto 0 auto; width:360px; background:#22426a url(../img/arrow_white.png) no-repeat right 30px center; border-radius:5px; font-size:120%; text-align:center}

/*.agreebox a{padding:15px; background:#2664b2 url(../img/arrow_white.png) no-repeat right 30px center; border-radius:5px; display:block; color:#fff; font-family:'Noto Sans JP'; font-weight:bold}*/

.agreebox a:hover{background:none}



.back_top,.agreebox {margin:40px auto 10px auto; width:300px; background:#22426a url(../img/arrow_white3.png) no-repeat left 30px center; border-radius:5px; font-size:110%; text-align:center; font-family:'Noto Sans JP'; font-weight:bold}

.back_top a, .agreebox a{padding:8px 10px 10px 25px; background:#2664b2 url(../img/arrow_white3.png) no-repeat left 30px center; border-radius:5px; display:block; color:#fff}

.back_top a:hover{background:none}





/* 追加 */

.top_img {width:870px}

.patient_consent {text-decoration: underline;}


.sp_br {display: none;}

.operation {margin-left:6em!important;}

.purpose, .identification, .personal_information {list-style-type:lower-alpha;}




@media only screen and (max-width: 1024px) { 
	
.wrap02, .wrap01 {width:98%!important; margin:0 auto;}

.top_box01{width:96%; margin:2% auto; padding:2%;}
	
.top_img {width:100%}
	
	
.connect_rc_image {
	width:98%;
	margin:0 auto;
	}
	
.button-container {
 width:600px;
	margin:0 auto 2%;
}	
	
		}




@media only screen and (max-width: 780px) { 
	
.wrap02, .wrap01 {width:98%!important; margin:0 auto;}

.top_box01  {width:94%!important; margin:0 auto;}
	
.top_img {width:100%}
	
	#top_btn01 {display: none;}
	
	#top_btn02 {display: none;}
	
  .button-container {
    flex-direction: column; /* スマホでは縦並び */
    align-items: stretch;
	  width:98%;
  }
	
  .list-container {
    flex-direction: column; /* スマホでは縦並び */
	  max-width:98%;
	  margin:0 auto;
  }	
	
.connect_rc_image {
	width:98%;
	margin:0 auto;
}
	.list-item {
  display: flex;
  align-items: center;
  padding: 10px;
  border: 2px dashed #b0c4de;
  border-radius: 10px;
  background: #fff;
  width: 90%;
  max-width: 500px;
}

.number-box {
  flex: 0 0 40px; /* 幅を固定 */
  height: 40px;
  font-size: 18px;
  font-weight: bold;
  background: #2664b2;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  margin-right: 15px;
}

	
		}

@media only screen and (max-width: 480px) { 
	.sp_br{display: block!important;}
	
.operation {margin-left:0!important;}
	
	}
