@charset "UTF-8";

.top .sec {
	width: 100%;
	position: relative;
	z-index: 1;
	min-width:1180px;	
	margin: auto;
}

@media screen and (max-width: 768px) {
.top .sec {
	width: 100%;
	position: relative;
	z-index: 1;
	min-width:100%;	
	margin: auto;
}	
}

/*--------------------------------------------------
  mv
--------------------------------------------------*/
.top .mv {
	width: 100%;
	position: relative;
	min-width:1180px;
	margin: 0 auto;
	margin-top: 120px;
	max-width: 1800px; 
}




.img-frame{
   position: relative;
   width: 100%;
	height: 730px;
   overflow: hidden;
   margin: 0 auto;
}


.img-frame{
	width: 100%;
	height: 730px;
}

.img-01, .img-02, .img-03{
   position: absolute;
   left:0;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
}


.img-01{
background: url("../images/mv-img01.jpg") 0 0 no-repeat;
   animation: slide-animation-01 24s infinite;
	background-size: cover;
	height: 730px;	
	width: 100%;	

}
.img-02{
background: url("../images/mv-img02.jpg") 0 0 no-repeat;
   animation: slide-animation-02 24s infinite;
		background-size: cover;
		width: 100%;	

	height: 730px;
}
.img-03{
background: url("../images/mv-img03.jpg") 0 0 no-repeat;
   animation: slide-animation-03 24s infinite;
		background-size: cover;
	width: 100%;
	height: 730px;

}


@keyframes slide-animation-01 {
    0% {opacity: 1; transform: scale(1.0);}
  30% {opacity: 1;}
  40% {opacity: 0; transform: scale(1.15);}
  90% {opacity: 0}
100% {opacity: 1; transform: scale(1.0);}
}
@keyframes slide-animation-02 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.1);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.0);}
100% {opacity: 0;}
}
@keyframes slide-animation-03 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.0);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.1);}
}

.top .mv .box {
	position: relative;
}

.top .mv .box::before {
	content: "";
	position: absolute;
	bottom: -220px;
	width: 100%;
	height: 622px;
	left: 0;
	right: 0;
	margin: auto;
	background: url("../images/mv-lline.png") center bottom no-repeat;
	background-size: 2000px 622px;		
	z-index: 1;
}

.top .mv .text-box {
	position: absolute;
	top: 240px;
	z-index: 1;
	left: 2%;
}

.top .mv .mv-txt01 {
	font-size: 18px;
}

.top .mv .tx-bg {
	background: #fff;
	padding: 0 20px 4px;
	font-weight: bold;
	font-size: 50px;
	border-radius: 4px;
}

.top .mv .f-size {
	font-weight: bold;
	font-size: 42px;
}






@media screen and (max-width: 768px) {
.top .mv {
	width: 100%;
	position: relative;
	min-width:100%;
	margin-top: 50px;
	max-width: 100%; 
}



.img-frame{
   position: relative;
   width: 100%;
  height: 600px;
   overflow: hidden;
   margin: 0 auto;
}


.img-frame{
	width: 100%;
  height: 600px;
}
	
	
.img-01, .img-02, .img-03{
   position: absolute;
   left:0;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
}


.img-01{
  background: url("../images/mv-img01.jpg") center 0 no-repeat;
  animation: slide-animation-01 24s infinite;
  background-size: cover;
  height: 600px;
  width: 100%;	

}
.img-02{
  background: url("../images/mv-img02.jpg") center 0 no-repeat;
   animation: slide-animation-02 24s infinite;
		background-size: cover;
		width: 100%;
	  height: 600px;
}
.img-03{
  background: url("../images/mv-img03.jpg") 70% 0 no-repeat;
  animation: slide-animation-03 24s infinite;
  background-size: cover;
  width: 100%;
  height: 600px;	

}

	
.top .mv .box {
	position: relative;
  height: 600px;
}

.top .mv .box::before {
	content: "";
	position: absolute;
	bottom:0;
	width: 100%;
	height:100%;
	left: 0;
	right: 0;
	margin: auto;
	background: url("../images/sp-mv-lline.png") center bottom no-repeat;
	background-size: 100% auto;		
	z-index: 1;
}

.top .mv .text-box {
	position: absolute;
	top: 320px;
	z-index: 1;
	left: 2%;
}

.top .mv .mv-txt01 {
	font-size: 16px;
}

.top .mv .tx-bg {
	background: #fff;
	padding: 0 12px 4px;
	font-weight: bold;
	font-size: 28px;
	border-radius: 4px;
}

.top .mv .f-size {
	font-weight: bold;
	font-size: 18px;
}

	
}



/*--------------------------------------------------
  sec01
--------------------------------------------------*/

.top .sec01 {
	width: 100%;
	margin: 70px auto 0;
	min-width: 1180px;
}

.top .sec01 .fix-box {
	display: flex;
  justify-content: space-between;
  flex-wrap: wrap; 
}

.top .sec01 .fix-box .title-box01 {
	width: 280px;
}
.top .sec01 .fix-box .news-box {
	width: 820px;
	position: relative;
	margin-top: 30px;
	height: 180px;
	overflow-y: scroll;
}

.top .sec01 .title-box01 .link01 a {
	margin: 0;
	margin-top: 50px;
	width: 168px;
}



.top .sec01 .news-box li a {
	display: block;
}
.top .sec01 .news-box li {
	box-sizing: border-box;
	margin-bottom: 40px;
}



.top .sec01 .news-box .deta {
	float: left;
	width: 12%;
	font-size: 16px;
	margin-right: 1%;
	color: #333;
	font-weight: bold;
}

.top .sec01 .news-box .tag {
	float: left;
	width: 10%;
	text-align: center;
	font-size: 13px;
	color: #003d8a;
	padding: 1px 0px;
	border: solid 1px #003d8a;
	border-radius: 100px;
}

.top .sec01 .news-box .news-ttl {
	float: left;
	width: 72%;
	font-size: 16px;
	margin-left: 3%;
}



@media screen and (max-width: 768px) {
.top .sec01 {
	width: 100%;
	margin: 0 auto 0;
	min-width: 100%;
}

.top .sec01 .fix-box {
	display: block;
  justify-content: space-between;
  flex-wrap: wrap; 
}

.top .sec01 .fix-box .title-box01 {
	width: 100%;
}
.top .sec01 .fix-box .news-box {
	width: 100%;
	position: relative;
	margin-top: 25px;
	height: 180px;
	overflow-y: scroll;
}

.top .sec01 .link01 a {
	margin: 0;
	width: 80%;
	margin: auto;
	margin-top: 40px;	
}



.top .sec01 .news-box li a {
	display: block;
}
.top .sec01 .news-box li {
	box-sizing: border-box;
	margin-bottom: 25px;
}



.top .sec01 .news-box .deta {
	float: none;
	width: 15%;
	font-size: 14px;
	margin-right: 1%;
	color: #333;
	display: inline-block;
	font-weight: bold;
}

.top .sec01 .news-box .tag {
	float: none;
	width:auto;
  margin-left: 12%;
	text-align: center;
	font-size: 13px;
	color: #003d8a;
	padding: 1px 20px;
	display: inline-block;	
	border: solid 1px #003d8a;
	border-radius: 100px;
}

.top .sec01 .news-box .news-ttl {
	float: none;
	width: 100%;
	font-size: 14px;
	margin-left: 0;
	margin-top: 5px;
}



	
}


/*--------------------------------------------------
  sec02
--------------------------------------------------*/

.top .sec02 {
	margin-top: 120px;
	min-width: 1180px;
}


.top .sec02 .box {
	padding-top: 100px;
	background: #e7f2ff;
	margin: 0 40px;
	position: relative;
	border-radius: 24px;
	padding-bottom: 130px;
}

.top .sec02 .box::after {
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	margin: auto;
	background: url("../images/sec02-bg.png") center bottom no-repeat;
	background-size: 100% auto;		
	border-radius:0 0 24px 24px;
}
.top .sec02 .inner {
	position: relative;
	z-index: 1;
	width: 1060px
}
.top .sec02 .title-box01 {
	text-align: center;
}

.top .sec02 .fix-box {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
.top .sec02 .fix-box .text-box {
	width: 70%;
	margin-top: 40px;
}
.top .sec02 .fix-box .text-box .txt {
	margin-top: 15px;
	line-height: 2;
}

.top .sec02 .fix-box .link01 {
	margin-top:170px;
}
.top .sec02 .line01 {
	font-size: 24px;
	font-weight: bold;
	position: relative;
	padding-left: 30px;
}
.top .sec02 .line01::before {
	content: "";
	position: absolute;
	top: 22px;
	left: 0;
	background: #003d8a;
	width: 20px;
	height: 2px;
}


.top .sec02 .com01-ls-box {
	margin-top: 40px;
}



@media screen and (max-width: 768px) {
.top .sec02 {
	margin-top: 70px;
	min-width: 100%;
}


.top .sec02 .box {
	padding-top: 45px;
	background: #e7f2ff;
	margin: 0 5%;
	position: relative;
	border-radius: 12px;
	padding-bottom: 40px;
}

.top .sec02 .box::after {
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	margin: auto;
	background: url("../images/sp-sec02-bg.png") center bottom no-repeat;
	background-size: 100% auto;		
	border-radius:0 0 12px 12px;
}
.top .sec02 .inner {
	position: relative;
	z-index: 1;
	width: 88%;
	margin: auto;
}
.top .sec02 .title-box01 {
	text-align: center;
}

.top .sec02 .fix-box {
 display: block;
 justify-content: space-between;
 flex-wrap: wrap;
}
.top .sec02 .fix-box .text-box {
	width: 100%;
	margin-top: 20px;
}
.top .sec02 .fix-box .text-box .txt {
	margin-top: 10px;
	line-height: 2;
}

.top .sec02 .fix-box .link01 {
	margin-top:25px;
}
.top .sec02 .line01 {
	font-size: 16px;
	font-weight: bold;
	position: relative;
	padding-left: 24px;
}
.top .sec02 .line01::before {
	content: "";
	position: absolute;
	top: 14px;
	left: 0;
	background: #003d8a;
	width: 16px;
	height: 2px;
}
.top .sec02 .com01-ls-box {
	margin-top: 40px;
}

	
}






/*--------------------------------------------------
  sec03
--------------------------------------------------*/
.top .sec03 {
	margin-top: 140px;
	min-width: 1180px;
}
.top .sec03 .image-box {
	position: absolute;
	left: 40px;
	width: 38%;
}

.top .sec03 .image {
	position: relative;
}
.top .sec03 .image::after {
	content: "";
	position: absolute;
	left: -40px;
	bottom: -40px;
	background: #e7f2ff;
	width: 386px;
	height: 308px;
	border-radius: 24px;	
	z-index: -1;
}
.top .sec03 .image img {
	height: 676px;
	width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover';	
	border-radius: 24px;
}
.top .sec03 .box {
	width: 53%;
	margin-left: 48%;
	padding-top: 30px;
}
.top .sec03 .title-box01 span {
	font-weight: bold;
	font-size: 30px;
}

.top .sec03 .title-box01 {
	margin-bottom: 20px;
}

.top .sec03 .link-box .link01 a {
	margin: 0 0 0 auto;
	margin-top: 30px;
}

.top .sec03 .link-ls {
	margin-top: 80px;
}

.top .sec03 .link-ls li {
	padding: 24px 0;
	border-bottom: solid 1px #003d8a;
	box-sizing: border-box;
}

.top .sec03 .link-ls li:first-child {
	border-top: solid 1px #003d8a;
	box-sizing: border-box;	
}

.top .sec03 .link-ls li a {
	position: relative;
	font-weight: bold;
	font-size: 18px;
	display: block;
}
.top .sec03 .link-ls li a::after {
	content: "";
	position: absolute;
	width: 35px;
	height: 35px;
	right: 0;
	margin: auto;
	background: url("../images/arrow03.png") 0 0 no-repeat;
	background-size: 100% auto;		
}



@media screen and (max-width: 768px) {
.top .sec03 {
	margin-top: 70px;
	min-width: 100%;
}


.top .sec03 .image {
	position: relative;
	margin-top: 20px;
}
.top .sec03 .image::after {
	content: "";
	position: absolute;
	left: -5%;
	bottom: -20px;
	background: #e7f2ff;
	width: 226px;
	height: 158px;
	border-radius: 12px;	
	z-index: -1;
}
.top .sec03 .image img {
	height: 336px;
	width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover';	
	border-radius: 12px;
}
.top .sec03 .box {
	width: 100%;
	margin-left: 0;
	padding-top: 30px;
}
.top .sec03 .title-box01 span {
	font-weight: bold;
	font-size: 15px;
}

.top .sec03 .title-box01 {
	margin-bottom: 40px;
}

.top .sec03 .link-box .link01 a {
	margin: auto;
	margin-top: 25px;
}

.top .sec03 .link-ls {
	margin-top: 50px;
}

.top .sec03 .link-ls li {
	padding: 16px 0;
	border-bottom: solid 1px #003d8a;
	box-sizing: border-box;
}

.top .sec03 .link-ls li:first-child {
	border-top: solid 1px #003d8a;
	box-sizing: border-box;	
}

.top .sec03 .link-ls li a {
	position: relative;
	font-weight: bold;
	font-size: 16px;
	display: block;
}
.top .sec03 .link-ls li a::after {
	content: "";
	position: absolute;
	width: 30px;
	height: 30px;
	right: 0;
	margin: auto;
	background: url("../images/arrow03.png") 0 0 no-repeat;
	background-size: 100% auto;		
}
	
}




/*--------------------------------------------------
  sec04
--------------------------------------------------*/

.top .sec04 {
	margin-top: 180px;
	min-width: 1180px;
}
.top .sec04 .image-box {
	position: absolute;
	right: 40px;
	width: 38%;
}

.top .sec04 .image {
	position: relative;
}
.top .sec04 .image::after {
	content: "";
	position: absolute;
	right: -40px;
	bottom: -40px;
	background: #e7f2ff;
	width: 304px;
	height: 290px;
	border-radius: 24px;	
	z-index: -1;
}
.top .sec04 .image img {
	height: 461px;
	width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover';	
	border-radius: 24px;
}
.top .sec04 .box {
	width: 53%;
	padding-top: 40px;
}

.top .sec04 .title-box01 {
	margin-bottom: 20px;
}
.top .sec04 .link-box .link01 a {
	margin: 0;
	margin-top: 45px;
}


@media screen and (max-width: 768px) {
.top .sec04 {
	margin-top: 40px;
	min-width: 100%;
}


.top .sec04 .image {
	position: relative;
	margin-top: 20px;
}
.top .sec04 .image::after {
	content: "";
	position: absolute;
	right: -5%;
	bottom: -20px;
	background: #e7f2ff;
	width: 204px;
	height: 150px;
	border-radius: 12px;	
	z-index: -1;
}
.top .sec04 .image img {
	height: 250px;
	width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover';	
	border-radius: 12px;
}
.top .sec04 .box {
	width: 100%;
	padding-top: 40px;
}

.top .sec04 .title-box01 {
	margin-bottom: 40px;
}
.top .sec04 .link-box .link01 a {
	margin: auto;
	margin-top: 25px;
}
	
}




/*--------------------------------------------------
  sec05
--------------------------------------------------*/

.top .sec05{
	margin-top: 270px;
	background: #f2f3f7;
	border-radius: 24px;
	min-width: 1180px;
	padding: 80px 0;
}


.top .sec05 .box {
	background:url(https://fukudai-gastroenterology.jp/wp/wp-content/themes/fukuoka-u.ac/images/recruit-sec01-image01.jpg) no-repeat center top / 100% ;
 background-color: rgba(255, 255, 255, 0.8); /* 半透明の白 */
	background-blend-mode: lighten; /* overlay, multiply なども可 */
	margin: 0 40px;
	border-radius: 24px;	
	padding: 50px 0 100px;	
}



.top .sec05 .inner {
	width: 1060px
}
.top .sec05 .fix-box {
	 display: flex;
  justify-content: space-between;
  flex-wrap: wrap; 
}

.top .sec05 .text-box {
	width: 65%;
}

.top .sec05 .link01{
	margin-top: 80px;
}

.top .sec05 h3 {
	font-size: 45px;
	color: #003d8a;
}

.top .sec05 .insta-box {
	margin-top: 50px;
	text-align: center;
}

@media screen and (max-width: 768px) {
.top .sec05{
	margin-top: 90px;
	background: #f2f3f7;
	border-radius: 12px;
	min-width: 100%;
	padding: 10% 0;
}


.top .sec05 .box {
	background: #fff;
	
	background:url(https://fukudai-gastroenterology.jp/wp/wp-content/themes/fukuoka-u.ac/images/recruit-sec01-image01.jpg) no-repeat 65% top / 200% ;
 background-color: rgba(255, 255, 255, 0.8); /* 半透明の白 */
	background-blend-mode: lighten; /* overlay, multiply なども可 */	
	margin: 0 5%;
	border-radius: 12px;	
	padding: 5% 0 10%;	
}


	
	
	
.top .sec05 .inner {
	width: 90%;
}
.top .sec05 .fix-box {
	 display: block;
  justify-content: space-between;
  flex-wrap: wrap; 
}

.top .sec05 .text-box {
	width: 100%;
}

.top .sec05 .link01{
	margin-top: 40px;
}

.top .sec05 h3 {
	font-size: 22px;
	color: #003d8a;
}

.top .sec05 .insta-box {
	margin-top: 30px;
	text-align: center;
}
	
}




/*--------------------------------------------------
  sec06
--------------------------------------------------*/

.top .sec06 {
	margin-top: 150px;
	min-width: 1180px;
}
.top .sec06 .image-box {
	position: absolute;
	right: 40px;
	width: 38%;
}

.top .sec06 .image {
	position: relative;
}
.top .sec06 .image::after {
	content: "";
	position: absolute;
	right: -40px;
	bottom: -40px;
	background: #e7f2ff;
	width: 304px;
	height: 290px;
	border-radius: 24px;	
	z-index: -1;
}
.top .sec06 .image img {
	height: 461px;
	width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover';	
	border-radius: 24px;
}
.top .sec06 .box {
	width: 53%;
	padding-top: 40px;
}

.top .sec06 .title-box01 {
	margin-bottom: 20px;
}
.top .sec06 .link-box .link01 a {
	margin: 0;
	margin-top: 45px;
}


@media screen and (max-width: 768px) {
.top .sec06 {
	margin-top: 40px;
	min-width: 100%;
}


.top .sec06 .image {
	position: relative;
	margin-top: 20px;
}
.top .sec06 .image::after {
	content: "";
	position: absolute;
	right: -5%;
	bottom: -20px;
	background: #e7f2ff;
	width: 204px;
	height: 150px;
	border-radius: 12px;	
	z-index: -1;
}
.top .sec06 .image img {
	height: 250px;
	width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover';	
	border-radius: 12px;
}
.top .sec06 .box {
	width: 100%;
	padding-top: 40px;
}

.top .sec06 .title-box01 {
	margin-bottom: 40px;
}
.top .sec06 .link-box .link01 a {
	margin: auto;
	margin-top: 25px;
}
	
}




/*--------------------------------------------------
  sec07
--------------------------------------------------*/

.top .sec07{
	margin-top: 280px;
	min-width: 1180px;
	
}

.top .sec07 .title-box01 {
	text-align: center;
}

.top .sec07 .fix-box {
  display: flex;
  justify-content: flex-start; 
  flex-wrap: wrap; 
	margin-top: 30px;
}

.top .sec07 .fix-box .item {
	width: 23%;
	margin-right: 2.6%;
} 

.top .sec07 .fix-box .item:last-child{
	margin-right: 0;
}

.top .sec07 .fix-box .item a {
	display: block;
}
.top .sec07 .fix-box .item img {
	border-radius: 12px;
}

.top .sec07 .fix-box .deta {
	font-weight: bold;
	font-size: 15px;
	margin-top: 10px;
}

.top .sec07 .link01 a {
	margin-top: 60px;
}

@media screen and (max-width: 768px) {
.top .sec07{
	margin-top: 70px;
	min-width: 100%;
}

.top .sec07 .title-box01 {
	text-align: center;
}

.top .sec07 .fix-box {
	 display: flex;
  justify-content: space-between;
  flex-wrap: wrap; 
	margin-top: 30px;
}

.top .sec07 .fix-box .item {
	width: 48.5%;
	margin-bottom: 20px;
	margin-right: 0;
} 
.top .sec07 .fix-box .item a {
	display: block;
}
.top .sec07 .fix-box .item img {
	border-radius:6px;
}

.top .sec07 .fix-box .deta {
	font-weight: bold;
	font-size: 13px;
	margin-top: 10px;
}

.top .sec07 .link01 a {
	margin-top: 20px;
}	
}




