@charset "utf-8";

/* 各ページ適用CSS
------------------------------------------------------------------------------------*/
.disp_sp{
	display:none;
}


#contents p#bread{
	text-align:left;
	padding:10px 0 10px;
	font-size:1.2rem;
}
#contents p#bread a{
	font-size:1.2rem;
	color:#333;
}

img {
	/*width: 100%;*/
	height: auto;	
}
a.tel{
	color:#333;
	text-decoration:none;
}
a.tel:hover{
	cursor:default;
}
a.tel:hover img{
	cursor:default;
	opacity:1;
}




/*　共通
--------------------------------------------------------------*/
#contents main p{
	font-size:1.4rem;
	text-align:left;
	line-height:1.6;
	letter-spacing:0.05em;
}




/*　トップページ
--------------------------------------------------------------*/
.index #contents main{
	margin: 4% 0 5%;
}
.index #contents main .block01{
	width:87%;
	margin:0 auto 5%;
}

.index #contents main .block01 p.txt{
	text-indent:1em;
}

.index #contents main p.btn{
	text-align:center;
}

.index #contents main .block02{
	width: 53%;
    margin: 0 auto;
}

.index #contents main .block02 ul li{
	margin: 0 auto;
    width: 50%;
	padding:0 0 30px;
}


.index #contents main .ttl03{
	color:#EF89B5;
	font-weight:bold;
	font-size:2.0rem;
	/*text-align:center;*/
	margin: 0 0 1.5%;
}
.index #contents main .ttl03 span{
	display:block;
	margin: 1% 0 0;
}
.index #contents main .ttl03 img{
	text-align:center;
	display:inline-block;
	width:6.5%;
}




/*スライダー*/
.index #index_top_wrap{
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	background:url(../img/img-index/main_bg.jpg) no-repeat;
}
.index #index_top {
	width: 1000px; 
	padding:0;
    position: relative;
    margin: 0 auto;
}

.index ul.index_slider{
	margin: 0;
}
.index #slider_main{
	width:1000px;
	padding: 0px 0 48px;
	position:relative;
	margin: 0 auto;
}
.index #slider_main p{
	position:absolute;
	left: 70px;
	top: 19px;
}

.index ul.index_slider li a{
	display: block;
	margin: 0 0;
}
.index ul.index_slider li a:hover img{
	opacity:1;
}
.index .bx-wrapper{
    position: relative;
}
#slider_main .bx-viewport{
    width: 1000px !important;
    margin: 0 auto;
    overflow: visible !important;
	box-shadow: none !important;
    border: none !important;
    left: 0 !important;
}
.bx-wrapper .bx-controls-direction a{
	margin-top: -35px;
	outline: 0;
	width: 65px;
	height: 100px;
	text-indent: -9999px;
	z-index: 9999;
}
.index .bx-wrapper .bx-controls-direction a.bx-next {
	right: -10px;
	position: absolute;
    top: 45%;
	background: url(../img/img-index/arrowR.png) no-repeat left center;
}

.index .bx-wrapper .bx-controls-direction a.bx-prev {
	position: absolute;
    top: 45%;
	left: -10px;
	background: url(../img/img-index/arrowL.png) no-repeat left center;
}
.index #contents .block02 .btn03.pc{
	display: block;
}
.index #contents .block02 .btn03.sp{
	display: none;
}
.bx-wrapper .bx-pager{
	display: block;	
}





.kasou footer{
	/* margin:11% 0 0; */
}
.kasou #contents{
	padding:0 0 0%;
}
.kasou #contents main{
	width: 900px;
	/*padding:20px 28px 100px;*/
	padding:20px 28px 30px;
	margin: 0 26px 0 38px;
	text-align:left;
	float:right;
	letter-spacing:0.05em;
	line-height:1.6;
	background:#fff;
	min-height:710px;
}
.kasou.noside #contents main{
	width:916px;
	margin:0 auto;
	padding:20px 42px 100px;
}


.kasou #contents aside{
	float:right;
	position: absolute;
	top: 40px;
	left: 0;
}
/*.recruit #contents aside,
.form #contents aside,
.recruit_form #contents aside{
	top: 0px;
}*/




/*下層h2共通*/

.kasou #contents main h2 {
	background: #F9F9F9;
	border-bottom: none;
	border-top: 3px solid #F29DC3;
	color: #333;
	font-weight: bold;
	letter-spacing: .05em;
	line-height: 55px;
	margin: 0 0 25px;
	padding: 0 0 0 24px;
}
.kasou #contents main h2 span{
	border:none;
	padding:0;
}


/*見出し下層h2*/

.kasou #contents main .ttl02{
	color:#E84F94;
	font-weight:bold;
	font-size:2.0rem;
	/*text-align:center;*/
	margin: 0 0 3.5%;
}
.kasou #contents main .ttl02 span{
	display:block;
	/*margin: 2% 0 0;*/
}
.kasou #contents main .ttl02 img{
	text-align:center;
	display:inline-block;
	width:10%;
}


/*見出し下層h3 [1]*/

.kasou #contents main h3.ttl03{
	border-bottom:3px solid #DDDDDD;
	padding: 0;
	margin: 0 25px 25px 25px;
	line-height: 1.5;
	font-size: 1.4rem;
	background:none;

}
.kasou #contents main h3.ttl03 span {
    margin: 0;
    display: inline-block;
	padding: 0px 18px 7px 10px;
    margin-bottom: -3px;
	font-weight: bold;
}
.kasou #contents main h3.ttl03 span{
	color:#0065B1;
	border-bottom:3px solid #0065B1;
}

.kasou #contents main h3{
	width:850px;
	margin:0 auto 15px
}

.kasou #contents main h3.ttl03 span{
	color:#000000;
	border-bottom:3px solid #73DCFF;
}



/*見出し下層h4 [1]*/

.kasou #contents main h4.ttl04{
	border-bottom:1px solid #DDDDDD;
	padding: 0;
	margin: 0 57.5px 15px 57.5px;
	line-height: 1.5;
	font-size: 1.4rem;
	background:none;

}
.kasou #contents main h4.ttl04 span {
    margin: 0;
    display: inline-block;
	padding: 0px 18px 7px 10px;
    margin-bottom: -3px;
	font-weight: bold;
}
.kasou #contents main h4.ttl04 span{
	color:#DC1D72;
}

.kasou #contents main h4{
	width:785px;
	margin:0 auto 15px
}

.kasou #contents main h4.ttl03 span{
	color:#000000;
	border-bottom:3px solid #73DCFF;
}




/*アコーディオン*/
.kasou #contents main .blk .ttl05{
	padding: 2% 5% 1.5% 3%;
	margin:0 auto;
	color:#fff;
	background:#0065B1;
	position: relative;
	vertical-align: super;
	font-weight:bold;
	font-size:1.8rem;
	color:#fff;
}
.kasou #contents main .blk05 .ttl05{
	padding: 1.7% 0 1.7% 3%;
}

.kasou #contents main .blk .ttl05 span{
	font-size:1.6rem;
}
.kasou #contents main .blk .ttl05 span.small{
	font-size:72%;
	display:block;
}

.kasou #contents main .blk .ttl05:after, 
.kasou #contents main .blk .ttl05.active:after{
  font-size: 18px;
  position: absolute;
  right: 2%;
  top: 24%;
  color: #fff;
}
.kasou #contents main .blk05 .ttl05:after, 
.kasou #contents main .blk05 .ttl05.active:after{
  font-size: 12px;
  position: absolute;
  right: 5%;
  top: 30%;
  color: #fff;
}

.kasou #contents main .blk .ttl05:after{
  content: "▼";
}
.kasou #contents main .blk .ttl05.active:after{
  content: "▲";
}

.kasou #contents main .ttl05 p{
	display:inline-block;
	margin:0% 0 0;
	color:#fff;
}
/*.kasou #contents main .ttl05 p{
	display:inline-block;
	color:#fff;
	font-size:120%;
	vertical-align:-webkit-baseline-middle;
}
*/

.kasou #contents main .blk .ttl05 em{
	font-style:normal;
	font-size:170%;
	line-height:1.2;
	display:inline-block;
	font-weight: bold;
	margin: 0 4% 0 0;
	vertical-align:top;
	color:#fff;
}

.kasou #contents main .ttl06{
	color:#2393E9;
	font-size:117%;
	border-bottom:1px solid #ccc;
	padding:2% 4%;
	font-weight:bold;
	letter-spacing:0.05em;
}


/*---------------------------------------------------
	糖尿病患者セルフケア支援ツール
----------------------------------------------------*/
.application #contents main{
	font-size: 1.4rem;
}

.application #contents main h5{
	font-size: 1.4rem;
}

.application .block01 .blk01{
	width: 84%;
    margin: 0 auto 8%;
    font-size: 1.4rem;
}

.application .block01 .blk01 .txt{
	text-indent:1em;
}


.application .block03 section{
	width: 90%;
    margin: 0 auto 4.5%;
    font-size: 1.4rem;
}

.application .faq main .txt00{
	margin:0 10px 20px 10px;
}

.application .faq main .acMenu{
	padding: 120px 0 0px 0;
	margin:-80px 0 0 0 ;
}

.application .faq .pat_faq_b{
	margin:0 10px;
}

.application .faq .pat_faq_b .quetion span{
	font-weight:normal;
}

.application .faq .pat_faq_b .a_area p{
	margin:0 0 20px 0;
	/*padding:6px 35px 0 35px;*/
}




.application .faq .pat_faq_b{
	border-bottom: 1px dotted #ccc;
}

.application .faq .pat_faq_b:last-child{
	border-bottom: none;
}

.application .faq .pat_faq_b .quetion{
	background:url(../img/img-application/faq_icon_q.gif) no-repeat left 18px;
	background-size:3.0%;
	line-height:1.5;
	padding:19px 0 19px 35px;
	font-weight:normal;
	text-decoration: none;
	margin:0 !important;
	cursor:default !important;
}

.application .faq .pat_faq_b .answer{
	background:url(../img/img-application/faq_icon_a.gif) no-repeat left 4px;
	background-size:3.2%;
	line-height:1.5;
	padding:5px 0 19px 35px;
	/*font-weight:bold;*/
	margin:0 0 0 10px;
	/*text-decoration: underline;*/
	cursor:default !important;
}

.application .faq .pat_faq_b .a_area{
	display:block;
}

.application .block01 .blk01 a{
	color:#006CD8;
}
.application .block01 .blk01 a img{
	width: 90%;
}

.application .block01 .blk01 p.small{
	font-size:1.2rem;
}

.application .block01 .blk01 p.txt2{
	padding: 0 0 0 15px;
}

.application .block01 .blk01 .txt3{
	padding: 0 0 0 25px;
}

.application .block01 .blk01 p.txt2 span{
	display: inline-block;
}


.application .block01 .blk01 p.small{
	font-size:1.2rem !important;
	text-indent:0 !important;	
}

.application .block01 .blk01 p.txt2 span.disp_sp{
	display:none;
}

.application .block01 p.btn,.application .block03 p.btn{
	text-align:center !important;
	padding:25px 0 0 ;
	
}

.application .block01 ul{
	width:550px;
	margin:0 auto 20px;
	padding: 25px 0;
}

.application .block01 ul li{
	float:left;
	width: 50%;
	
}

.application .block01 dl dt{
	font-weight:bold;
	font-size:1.6rem;
	line-height:1.3;
	text-align:center;
	
}

.application .block01 dl dd{
	text-align:center;
	padding: 10px 0 0;
	
}

.application #link01,.application #link02,.application #link03{
	padding:30px 0 0 !important;
}

.application .block03 section:last-child{
	width: 90%;
	margin: 0 auto 6%;
	font-size: 1.4rem;
}

.application #contents main .ttl02{
	margin: 0 0 6px;
}



/*---------------------------------------------------
	研究グループ
----------------------------------------------------*/
.member #contents {
	font-size: 14px;
	
}
.member #contents table {
	margin: 0px 0 68px 32px;
}
.member #contents table tr td{
	
	padding: 2px 10px 2px ;
}

.member #contents table tr td.name{
	font-weight:bold;
	vertical-align: top;
}

.member #contents p.index01{
	/*width:715px;*/
	margin-left:4em;
	/*text-indent:-1.0em;*/
	width: 90%;
	margin:0 auto 15px;
}

.member #contents .block{
	background:#f4f4f4;
	padding: 20px 20px 20px 20px;
	width: auto;
	margin:0 26px 10px 34px;
}

.member #contents .block .left,
.member #contents .block .right{
	float:left;
	display:block;
}

.member #contents .txt00{
	margin: 0 26px 15px 34px;
}
.member #contents .txt01{
    margin: 5px 30px 0 30px;
		padding: 0 0 0 30px;
    width: 600px;
		margin-left:1em;
		text-indent:-1.0em;
}
.member #contents .txt01 span{
	margin: 0 5px 0 0 ;	
}

.member #contents .icon{
	margin: 15px auto 20px auto;
	width:73px;
	line-height:0;
}
.member #contents .img01 {
	margin:10px 10px 8px 8px;
}

.member #contents .last {
	margin-bottom: 70px;
}
.member  #contents .block04 {
    /*margin: 30px auto 40px 45px;
    width: 800px;*/
	width: 90%;
    margin: 0 auto 40px;
}

.member  #contents .block04 p {
	margin-bottom: 27px;
}

.member #contents .block04 span.small {
	font-size: 1.2rem;
}

/* 202408追記 */
#contents main .first_txt{
	font-size:1.6rem;
	color:#E84F94;
	margin:0 0 30px 24px;
	font-weight:bold;
}

#contents main .block1 .block01 {
	font-size: 1.4rem;
	margin: 0 auto 30px;
	color: #333;
	width: 90%;
	line-height: 160%;
}

#contents main .block {
	margin-bottom: 50px;
	padding: 20px 0 0;
}

#contents .block .block01 .left.gallery {
	margin: 0 0 30px;
    text-align: center;
}