@charset "utf-8";

/* New universal settings
----------------------------------------*/

/* prevent superscripts and subscripts from messing up line spacing*/
body.en sup,
body.en sub {
  line-height: 0;
}



/* New utility classes
----------------------------------------*/
/* simple left and right floats */
/* Similar to common.css img_float_l and img_float_r, but needed to get rid
   of !important. Also, this way we can ensure continuity even if common.css is
   removed

  使用例：
    https://www.kyushu-u.ac.jp/en/topics/view/436
*/
.ku-float_left-m-xl {
  float: left;
  *display: inline;
  *zoom: 1;
  margin-right: 18px;
  z-index: 2;
}
.ku-float_right-m-xl {
  float: right;
  *display: inline;
  *zoom: 1;
  margin-left: 18px;
  z-index: 2;
}
@media only screen and (max-width: 736px) {
  .ku-float_left-m-xl,
  .ku-float_right-m-xl {
    float: none;
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }
/*	.img_float_l img,
  .img_float_r img  {
    display: block;
    margin: 0 auto;
  }*/
}

/* wrapper for fixed aspect ratio box for 16:9 */
.ku-aspect-16x9 {
  width: auto;
  padding-top: 56.25%;
  position: relative;
}

/* content to be fit in 16:9 box */
.ku-aspect-16x9 *:first-child {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}



/* 九大のカスタムclassなど
----------------------------------------
九大が作ったと分かるために、いつもku-かku_で始まる。
ku-はIDやIDと繋がっていないclassのため。
ku_はセレクターの最初にku-のIDがあるもののため（名前が短くなるため）。）
*/

/*
  Break anywhere on urls. URLs should always be links,
  so currently just for links, but can expand later if necessary.
*/
a.ku-url {
  word-break: break-all;
}

/*
  Hide the automatically generate icon for links to
  -xls, xlsx, xlsm
  -doc, docx, docm
  -ppt, pptx, pptm
  -pdf
  files and for target="_blank" links
*/
#contents a.ku-a-no-icon::after {
  content: none;
}


/* link covering content. ku-link-overlay goes on the main container */
.ku-link-overlay {
  position: relative;
}
/* WJP: #contentsを付けてくないですが、#contents a{position:relative}があるから、しょうがない... */
#contents .ku-link-overlay > a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-decoration: none;
  font-size: 0;
}


/*
  画面の幅によって、ちょっとのフォント調整
  使用例：
    現在なし？
*/

.ku-font-08em {font-size: 0.8em;}
.ku-font-10em {font-size: 1em;}
.ku-font-12em {font-size: 1.2em;}

/* screen-xl (1281-1600px)*/
@media only screen and (max-width: 1600px) {
  .ku-font-xl-08em {font-size: 0.8em;}
  .ku-font-xl-10em {font-size: 1em;}
  .ku-font-xl-12em {font-size: 1.2em;}
}

/* screen-l (1024-1280px)*/
@media only screen and (max-width: 1280px) {
  .ku-font-l-08em {font-size: 0.8em;}
  .ku-font-l-10em {font-size: 1em;}
  .ku-font-l-12em {font-size: 1.2em;}
}

/* screen-m (737-1023px)*/
@media only screen and (max-width: 1023px) {
  .ku-font-m-08em {font-size: 0.8em;}
  .ku-font-m-10em {font-size: 1em;}
  .ku-font-m-12em {font-size: 1.2em;}
}

/* screen-s (561-736px)*/
@media only screen and (max-width: 736px) {
  .ku-font-s-08em {font-size: 0.8em;}
  .ku-font-s-10em {font-size: 1em;}
  .ku-font-s-12em {font-size: 1.2em;}
}

/* screen-xs (320-560px)*/
@media only screen and (max-width: 560px) {
  .ku-font-xs-08em {font-size: 0.8em;}
  .ku-font-xs-10em {font-size: 1em;}
  .ku-font-xs-12em {font-size: 1.2em;}
}


/* 画面幅によって、表示非表示。未完成。

  .ku-visible-a-bはaからbまで表示。それ以外非表示。
  .ku-visible-aはaのみ表示。

  使用例：
    https://www.kyushu-u.ac.jp/en/topics/view/463
    https://www.kyushu-u.ac.jp/en/topics/view/436
*/
.ku-visible-m-xl  {display: block !important;}
.ku-visible-xs-l  {display: none !important;}
.ku-visible-xs-s  {display: none !important;}

/* screen-xl (1201-1600px)*/
/* WJP：前は1281pxに使用としたが、ウェブサイトリニュアルの時、ブレイクポイントが1200pxになったから、それと合わせた。 */
@media only screen and (max-width: 1600px) {
}

/* screen-l (1024-1200px)*/
/* WJP：前は1280pxに使用としたが、ウェブサイトリニュアルの時、ブレイクポイントが1200pxになったから、それと合わせた。 */
@media only screen and (max-width: 1200px) {
  .ku-visible-xs-l  {display: block !important;}
}

/* screen-m (737-1023px)*/
@media only screen and (max-width: 1023px) {
}

/* screen-s (561-736px)*/
@media only screen and (max-width: 736px) {
  .ku-visible-m-xl  {display: none !important;}
  .ku-visible-xs-s  {display: block !important;}
}

/* screen-xs (320-560px)*/
@media only screen and (max-width: 560px) {
  .ku-visible-m-xl  {display: none !important;}
  .ku-visible-xs-s  {display: block !important;}
}




/* columns with equal width and same height across individual rows

   使用ページ: RCU
            Vision 2030
            Kyushu U Connect
      全Features（下にあるPrevious Featuresのため）
*/
.ku-col-3,
.ku-col-2 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

/* default margin-bottom of 20px */
.ku-col-3 > *,
.ku-col-2 > * {
  margin-bottom: 20px;
}

/* wider bottom margin */
.ku-col-mb-wide > * {
  margin-bottom: 40px;
}
/* no bottom margin */
.ku-col-mb-none > * {
  margin-bottom: 0;
}

/* two column width and margins */
.ku-col-2 > * {
  width: 49%;
  margin-right: 2%;
}
.ku-col-2 > :nth-child(even) {
  margin-right: 0;
}

/*.ku-col-2 > :last-child:nth-child(odd) {
  margin-left: auto;
  margin-right: auto;
}*/

/* three column width and margins */
.ku-col-3 > * {
  margin-right: 1.55%;
  width: 32.3%;
}
.ku-col-3 > :nth-child(3n) {
  margin-right: 0;
}


/* screen-xl (1281-1600px)*/
@media only screen and (max-width: 1600px) {
  /* wider bottom margin */
  .ku-col-mb-wide > * {
    margin-bottom: 40px;
  }
  /* no bottom margin */
  .ku-col-mb-none > * {
    margin-bottom: 0;
  }
}

/* screen-l (1024-1280px)*/
@media only screen and (max-width: 1280px) {
  /* wider bottom margin */
  .ku-col-mb-wide > * {
    margin-bottom: 40px;
  }
  /* no bottom margin */
  .ku-col-mb-none > * {
    margin-bottom: 0;
  }
}

/* screen-m (737-1023px)*/
@media only screen and (max-width: 1023px) {
  /* wider bottom margin */
  .ku-col-mb-wide > * {
    margin-bottom: 40px;
  }
  /* no bottom margin */
  .ku-col-mb-none > * {
    margin-bottom: 0;
  }
}

/* screen-s (561-736px)*/
@media only screen and (max-width: 736px) {
  /* two columns for small screens and below */
  .ku-col-s-2 > * {
    width: 49%;
  }
  .ku-col-s-2 > :nth-child(odd) {
    margin-right: 2%;
  }
  .ku-col-s-2 > :nth-child(even) {
    margin-right: 0;
  }
  .ku-col-s-2 > :last-child:nth-child(odd) {
    margin-left: auto;
    margin-right: auto;
  }

  /* one columns for small screens and below */
  .ku-col-s-1 {
    display: block;
  }
  .ku-col-s-1 > * {
    display: block;
    width: auto;
    margin-bottom: 20px;
  }
  .ku-col-s-1 > *:nth-child(n) {
    margin-left: auto;
    margin-right: auto;
  }
}

/* screen-xs (320-560px)*/
@media only screen and (max-width: 560px) {
  /* one column for extra small screens */
  .ku-col-xs-1 {
    display: block;
  }
  .ku-col-xs-1 > * {
    display: block;
    width: auto;
    margin-bottom: 20px;
  }
  .ku-col-xs-1 > *:nth-child(n) {
    margin-left: auto;
    margin-right: auto;
  }
}






/*----------------------------------------
  Button modeled after the top page buttons

  .ku-btn-em resizes based on font size,
  and .ku-btn forces font-size of 16px to match top page

  使用例：
    全Features（下にある「All Features）」）
    RCU
    Vision 2030
    Kyushu U Connect

----------------------------------------*/
.ku-btn,
.ku-btn-em {
  font-family: 'Noto Sans JP', sans-serif;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
/*	width: 240px;
  height: 40px;*/
  width: 15em;
  height: 2.5em;
  font-weight: bold;
  color: #000;
  border: 1px solid #85023e;
  transition: .4s;
  box-sizing: border-box;
}
.ku-btn {
  font-size: 1.6rem;
}

.en .ku-btn,
.en .ku-btn-em {
  font-family: 'Noto Sans', sans-serif;
}

.ku-btn:link,
.ku-btn-em:link {
  text-decoration: none;
}

.ku-btn:before,
.ku-btn-em:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  /*width: 12px;*/
  width: 0.75em;
  height: 1px;
  background: #85023e;
  margin: auto;
  transition: .4s;
}

.ku-btn:hover,
.ku-btn-em:hover {
  opacity: 1;
  color: #fff;
  background: #85023e;
}

.ku-btn:hover:before,
.ku-btn-em:hover:before {
  /*width: 6px;*/
  width: 0.375em;
  background: #fff;
}

@media screen and (max-width: 736px) {
  .ku-btn,
  .ku-btn-em {
    width: 100%;
  }
}



/* Figure container for image and caption.
   Float with float_left and float_right, and use w30per, w40per, etc., to set
   the floated width.
   Set max-width inline for images that are narrower than 736px, though caption
   should stay same width on Chrome and Edge because of max-content...
   (Could set img width to 100% here so they scale up...)
*/
.ku-figure {
  margin: 0 auto 25px;
}
.ku-figure img {
  display: block;
  margin: 0 auto;
  /*width: 100%;*/
}
/* appropriate margins when floated */
.ku-figure.ku-float_left-m-xl {
  margin: 0 18px 15px -15px;
}
.ku-figure.ku-float_right-m-xl {
  margin: 0 -15px 15px 18px;
}
/* Figure caption for inside figure container */
.ku-figcaption {
  line-height: 1.2;
  font-size: 1.4rem;
  padding: 5px 10px;
  color: #ffffff;
  background: rgba(0,0,0, 0.75);
  text-align: left;
}
@media only screen and (max-width: 736px) {
  .ku-figure.ku-float_left-m-xl,
  .ku-figure.ku-float_right-m-xl {
    margin: 0 auto 25px;
    /* Keep caption same width as image on Edge and Chrome... doesn't work
    Firefox... */
    width: -moz-fit-content;
    width: fit-content;
  }
  .ku-figcaption {
    max-width: -moz-fit-content;
    max-width: fit-content;
    min-width: 100%;
  }
}

/* Table with no border and tighter spacing.
   Currently used for paper information in 研究成果. */
.ku-table-plain table,
.ku-table-plain table td {
  border: none;
}
.ku-table-plain table td {
  padding: 2px;
}



/* COVID page classes (id: ku-cvd)
----------------------------------------
  https://www.kyushu-u.ac.jp/ja/crisismanagement/riskmanagement/coronavirus/
  https://www.kyushu-u.ac.jp/en/crisismanagement/riskmanagement/coronavirus/

  CSSのルールが固まる前に作ったページですから、「ku_」の名前式を使っていないです...
*/


/* 上にある全ページ共通画像 */
#ku-cvd .ku-cvd-img_page {
  height: 200px;
  width: 100%;
  overflow: hidden;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  background-image: url(/img/common/covid-19-top.png);
  background-position: center center;
}

/* title displayed over hero image */
#ku-cvd .ku-cvd-ttl {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  color: #ffffff;
  font-weight: bold;
  font-size: 50px;
  line-height: 1.2;
  padding-top: 40px;
}

body.en #ku-cvd .ku-cvd-ttl {
  font-family: 'Montserrat', sans-serif;
}

/* COVID page tabs navigation */
nav#ku-cvd-tabs {
  background:#0070c0;
  border-top: solid #00405a 3px;
}

/* list with COVID tabs */
nav#ku-cvd-tabs ul.ku-tabs {
  list-style: none;
  display: flex;
  text-align: center;
  max-width: 1200px;
  padding: 0 20px;
  margin: 0 auto;
  font-weight: bold;
  font-size: 19px;
  color: #00405a;
}

/* list items for COVID tabs */
nav#ku-cvd-tabs ul.ku-tabs li {
  flex-grow: 1;
  margin: 10px 5px;
}

/* current tab */
nav#ku-cvd-tabs ul.ku-tabs li.ku-current {
  background: #ffffff;
  padding: 5px;
  margin-bottom: 0;
  border-style: solid;
  border-color: #00405a;
  border-width: 3px 3px 0 3px;
  border-radius: 10px 10px 0 0;
}

/* tab links */
nav#ku-cvd-tabs ul.ku-tabs a {
  display: block;
  box-sizing: border-box;
  height: 100%;
  text-decoration: none;
  background: #ffffff;
  padding: 5px;
  border: solid #00405a 3px;
  border-radius: 10px;
  color: #00405a;
}

/* change color when mouse over */
nav#ku-cvd-tabs ul.ku-tabs a:hover {
  background: #00405a;
  color: #ffffff;
  border-color: #ffffff;
}

body.en nav#ku-cvd-tabs {
  font-family: 'Montserrat', sans-serif;
}

/* warning if you feel sick */
#ku-cvd .ku-cvd-warning {
  max-width: 960px;
  border: solid 5px #8b0000;
  margin: 0 auto;
  background: #8b0000;
  font-size: 2.6rem;
  font-weight: bold;
  color: #ffffff;
}

#ku-cvd .ku-cvd-warning:before {
  content: "!";
  box-sizing: border-box;
  display: block;
  float: left;
  height: 150px;
  width: 150px;
  margin: 5px 10px 5px 5px;
  border: solid 5px white;
  border-radius: 100%;
  text-align: center;
  line-height: 150px;
  font-size: 125px;
}

@media only screen and (max-width: 736px) {
  #ku-cvd .ku-cvd-img_page {
    height: auto;
    width: 100%;
  }

  /* title displayed over hero image */
  #ku-cvd .ku-cvd-ttl {
    padding-top: 5%; /* no calc fallback */
    padding-top: calc(15.625% - 36px); /* no vw units fallback */
    font-size: 30px; /* no vw units fallback */
    padding-top: 7vw;
    font-size: 7vw;
  }

  nav#ku-cvd-tabs {
    padding: 0 0 7px 0;
  }

  nav#ku-cvd-tabs ul.ku-tabs {
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin-bottom: 0;
    padding: 0;
    font-size: 14px;
  }

  nav#ku-cvd-tabs ul.ku-tabs li {
    flex-grow: 0;
    width: 48%;
    margin: 5px 0 0;
  }

  nav#ku-cvd-tabs ul.ku-tabs li.ku-current {
    border-radius: 10px;
    border-width: 3px;
    background: #005374;
    color: #ffffff;
    border-color: #ffffff;
  }

  /* change order for SP */
  .ku-sp-order-1 {order: 1;}
  .ku-sp-order-2 {order: 2;}
  .ku-sp-order-3 {order: 3;}
  .ku-sp-order-4 {order: 4;}
  .ku-sp-order-5 {order: 5;}
  .ku-sp-order-6 {order: 6;}
  .ku-sp-order-7 {order: 7;}
  .ku-sp-order-8 {order: 8;}
  .ku-sp-order-9 {order: 9;}

  /* warning if you feel sick */
  #ku-cvd .ku-cvd-warning {
    font-size: 1.8rem;
    margin: 0 10px;
  }
  /* exclamation mark */
  #ku-cvd .ku-cvd-warning:before {
    height:35px;
    width: 35px;
    border: solid 3px white;
    line-height: 35px;
    font-size: 25px;
    margin: 2px 5px 0 0;
  }
  #ku-cvd .ku-cvd-warning p {
    margin: 0!important;
  }
}



/* Research Close-Up classes (id: ku-rcu)
----------------------------------------
  https://www.kyushu-u.ac.jp/ja/research/close-up
  https://www.kyushu-u.ac.jp/en/research/close-up
*/

/* get rid of all automatic images after links */
#ku-rcu .ku_container a:after {
  content: none;
}

/* all images display block to avoid space after image*/
#ku-rcu img {
  display: block;
}

/* main container for entire RCU */
#ku-rcu .ku_container {
  width: auto;
  font-size: 1.8rem;
  margin: 0 auto 40px;
  max-width: 1200px;
}

/* container for article (title and video to end of text) */
#ku-rcu .ku-rcu-article {
  max-width: 980px;
  margin: auto;
}

/* container for title, byline, date, etc. */
#ku-rcu .ku-rcu-title {
  font-family: 'Montserrat', sans-serif;
  margin: 25px auto;
  line-height:1.2;
  border-left: 2px solid #85023e;
  padding-left: 20px;
}

/* title */
#ku-rcu .ku-rcu-title h1 {
  font-size: 2.667em;
}

/* with prof. ... */
#ku-rcu .ku-rcu-title .ku-rcu-prof {
  font-size: 1.778em;
  margin:0px 0 10px;
}

/* author, date, ICER link */
#ku-rcu .ku-rcu-title .ku-rcu-byline {
  font-style: italic;
  color: #aaaaaa;
  font-size: 0.778em;
  line-height: 1.4;
}

/* separater between byline items */
#ku-rcu .ku-rcu-title .ku-rcu-sep:after {
  content: " \2022 ";
  display: inline-block;
  margin:0 4px 0 7px;
}

/* container for main youtube video */
#ku-rcu .ku-rcu-main-video {
  margin-bottom: 45px;
}

/* container for profile */
#ku-rcu .ku-rcu-profile {
  display: block;
  background: #eeeeee;
  width: 200px;
  border-radius: 100px;
  color: #333333;
  margin-right: 15px;
}

/* container for picture and sp profile links */
#ku-rcu .ku-rcu-profile-part1 {
}

/* profile picture (circle crop) */
#ku-rcu .ku-rcu-profile-pic {
  display: block;
  margin: 0 auto;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 20px 0px;
}

/* sp profile link container */
#ku-rcu .ku-rcu-profile-sp-links {
  display: none;
}

/* profile name, affilition, specialization, and pc links */
#ku-rcu .ku-rcu-profile-part2 {
  padding: 10px 15px 15px;
  line-height: 1.1;
  text-align: center;
}

/* name */
#ku-rcu .ku-rcu-profile-name {
  font-size: 1.333em;
  font-family: 'Montserrat', sans-serif;
  font-weight:bold;
  font-variant:small-caps;
}

/* job title */
#ku-rcu .ku-rcu-profile-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.889em;
  margin-bottom: 10px;
}

/* profile details (affiliation, specialization) */
#ku-rcu .ku-rcu-profile-details {
  font-size: 0.778em;
  margin-bottom: 10px;
}

/* specialization title */
#ku-rcu .ku-rcu-profile-special {
  font-family: 'Montserrat', sans-serif;
  font-weight: bold;
  font-variant: small-caps;
  margin: 1.111em 0 0.278em;
}

/* pc profile links container */
#ku-rcu .ku-rcu-profile-pc-links {
  margin-top: 10px;
}

/* pc profile links */
#ku-rcu .ku-rcu-profile-pc-links > a {
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  font-size: 0.611em;
  line-height: 30px;
  text-decoration: none;
  background: #85023e;
  font-weight: bold;
  color: white;
  overflow: hidden;
}

/* sns links container */
#ku-rcu .ku-rcu-sns {
  font-size: 0;
  margin-bottom: 20px;
  margin-left: 15px;
}

/* sns links (links around images) */
#ku-rcu .ku-rcu-sns > * {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 5px;
  vertical-align: top;
}

/* Container for main body text and pictures */
#ku-rcu .ku-rcu-body {
  margin: 0 auto 20px;
  width: 72%;
  max-width: 702px
}

/* Main body paragraphs */
#ku-rcu .ku-rcu-body > p {
  line-height: 1.7;
  margin-bottom: 1.1em;
}

/* Links in main body paragraphs */
#ku-rcu .ku-rcu-body > p > a {
  color: #85023e;
  font-weight: bold;
  text-decoration: underline;
  text-decoration-color: rgba(0, 0, 0, 0);
  transition: text-decoration-color 300ms;
}
#ku-rcu .ku-rcu-body > p > a:hover {
  text-decoration-color: inherit;
}

/* Drop cap for first letter (probably span) */
#ku-rcu .ku-rcu-drop-cap {
  float: left;
  font-weight: bold;
  color: #85023e;
  font-family: serif;
  font-size: 6.667em;
  line-height: 0.733;
  margin-right: 5px;
}

/* figure container */
#ku-rcu .ku-rcu-figure {
  width: 60%;
  padding-top: 7px;
  max-width: 450px;
}

/* push to margin for left and right figures */
#ku-rcu .ku-rcu-figure.ku-float_left-m-xl {
  margin-left: -17.5%;
}
#ku-rcu .ku-rcu-figure.ku-float_right-m-xl {
  margin-right: -17.5%;
}

/* figure caption */
#ku-rcu .ku-rcu-figcaption {
  font-size: 16px;
  line-height: 1.25;
  margin: 0.5em auto 1.5em;
}

/* container (with image and title) for links to RCU articles.
   change this font-size to scale all text. */
#ku-rcu .ku-rcu-article-link {
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 20px 0px;
  font-size: 1.8rem;
}
/* line to the left of title info but behind image */
#ku-rcu .ku-rcu-article-link:before {
  content: "";
  display: block;
  border-left: 2px solid #85023e;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}

/* container for title, prof, date */
#ku-rcu .ku-rcu-article-link-info {
  font-family: 'Montserrat', sans-serif;
  margin-left: 2px;
  line-height: 1.1;
  padding: 10px;
}

/* title */
#ku-rcu .ku-rcu-article-link-info > h2 {
  font-size: 1.444em;
}
/* prof */
#ku-rcu .ku-rcu-article-link-prof {
  margin: 5px;
}
/* date */
#ku-rcu .ku-rcu-article-link-date {
  color: #aaaaaa;
  font-size: 0.667em;
  line-height: 1.2;
}

/* screen-m-l */
@media only screen and (max-width: 1200px) {
  /* 下にパンくずがでるから、もう下のマージン要らない */
  #ku-rcu .ku_container {
    margin-bottom: 0;
  }
  /* WJP: 2022年度リニュアルの実装までのため。実装が終わったら、消していい */
  #ku-rcu #topic_path {
    display: none;
  }
}

/* screen-xs-s */
@media only screen and (max-width: 736px) {
  /* tweak title */
  #ku-rcu .ku-rcu-title {
    margin: 20px auto;
    padding:0 10px;
  }
  #ku-rcu .ku-rcu-title h1 {
    font-size: 1.667em;
  }
  #ku-rcu .ku-rcu-title .ku-rcu-prof {
    font-size: 1.333em;
    margin: 5px 0 10px;
  }
  #ku-rcu .ku-rcu-title .ku-rcu-byline {
    font-size: 0.722em;
  }

  /* multiple lines for byline on sp */
  #ku-rcu .ku-rcu-title .ku-rcu-sep:after {
    content: "";
    display: block;
  }

  #ku-rcu .ku-rcu-main-video {
    margin-bottom: 15px;
  }

  /* change profile layout */
  #ku-rcu .ku-rcu-profile {
    margin: 0 15px 20px;
    display: flex;
    align-items: center;
    width: auto;
    background: inherit;
    border-radius: 0;
  }

  /* profile pic and sp profile links */
  #ku-rcu .ku-rcu-profile-part1 {
    max-width: 150px;
    vertical-align:top;
  }

  /* smaller profile pic */
  #ku-rcu .ku-rcu-profile-pic {
    width: 30vw;
    height: 30vw;
    max-width: 150px;
    max-height: 150px;
  }

  /* hide pc profile links (circles) */
  #ku-rcu .ku-rcu-profile-pc-links {
    display: none;
  }

  /* sp profile links container */
  #ku-rcu .ku-rcu-profile-sp-links {
    display: block;
    text-align: center;
    padding-top: 7px;
    font-size: 0;
  }

  /* sp profile links */
  #ku-rcu .ku-rcu-profile-sp-links > a {
    display: inline-block;
    width: 30%;
    height: 15px;
    line-height: 15px;
    font-size: 9px;
    text-decoration: none;
    background: #85023e;
    font-weight: bold;
    color: #ffffff;
    margin-right: 2px;
  }
  /* no margin for last link */
  #ku-rcu .ku-rcu-profile-sp-links > a:last-child {
    margin-right: 0;
  }

  /* sp profile name, affiliation, specialization */
  #ku-rcu .ku-rcu-profile-part2 {
    padding: 0 15px;
    text-align: left;
    line-height: 1.5;
  }

  /* name */
  #ku-rcu .ku-rcu-profile-name {
    font-size: 1.222em;
    line-height:1.1;
  }
  /* job title */
  #ku-rcu .ku-rcu-profile-title {
    font-size: 0.778em;
    margin-bottom: 0px;
  }

  /* affiliation and specialization */
  #ku-rcu .ku-rcu-profile-details {
    font-size: 0.611em;
    margin-bottom: 5px;
  }

  /* specialization title */
  #ku-rcu .ku-rcu-profile-special {
    margin: 0.556em 0 0;
  }

  /* sns icons to the right */
  #ku-rcu .ku-rcu-sns {
    margin-left: 0;
    margin-right: 15px;
    text-align: right;
  }
  #ku-rcu .ku-rcu-sns > * {
    margin-right: 0;
    margin-left: 5px;
  }

  /* sp body */
  #ku-rcu .ku-rcu-body {
    margin-top: 0;
    padding: 0 15px;
    width: auto;
    max-width: none;
  }

  /* full width images on sp */
  #ku-rcu .ku-rcu-figure.ku-float_left-m-xl,
  #ku-rcu .ku-rcu-figure.ku-float_right-m-xl {
    margin: 0 auto;
    width: auto;
  }

  /* smaller font for links to RCU articles */
  #ku-rcu .ku-rcu-article-link {
    font-size: 1.5rem;
  }

}



/*

  ニュースのFeaturesのため
  https://www.kyushu-u.ac.jp/en/topics?category=2

  --colorの変数でタイトルやアクセントの色を変えられる。初期設定は九大のワインレッド。
*/

/* general wrapper */
#ku-feature {
  font-size: 1.8rem;
  line-height: 1.7;
  margin:auto;
  --color: #85023e;
}

/* 余計なスペースを削除するため... */
#ku-feature img {
  display: block;
}

/*

  レイアウトのためのcontainers

*/

/* 本文（文書とサイドコンテンツ）のため */
#ku-feature .ku_container-body{
  max-width:1024px;
  margin: auto;
  padding-left: 22px;
  padding-right: 22px;
}
/* 文章と同じ幅のcontainer（.ku_container-bodyのなかに使う） */
#ku-feature .ku_container-copy {
  max-width: 702px;
}
/* サイドコンテンツ（右のみ）のため（.ku_container-bodyのなかに使う） */
#ku-feature .ku_container-side {
  float: right;
  *display: inline;
  *zoom: 1;
  margin-left: 18px;
  z-index: 2;
  width: 25%;
}
/* 左にフロートするコンテンツのため（.ku_container-bodyのなかに使う） */
#ku-feature .ku_container-left {
  float: left;
  *display: inline;
  *zoom: 1;
  margin-right: 18px;
  margin-left: -22px;
  z-index: 2;
  width: 35%;
}
/* 右にフロートするコンテンツのため（.ku_container-bodyのなかに使う） */
#ku-feature .ku_container-right {
  float: right;
  *display: inline;
  *zoom: 1;
  margin-left: 18px;
  z-index: 2;
  width: 50%;
}
/* .ku_container-bodyと同じ幅（paddingとmarginなし）
  （.ku_container-bodyのなかにも外でも使う） */
#ku-feature .ku_container-wide {
  display: block;
  max-width: 1024px;
  margin: 0 auto;
}
#ku-feature .ku_container-body > .ku_container-wide {
  margin: 0 -22px;
}

/* 普段より幅広いコンテンツのため（.ku_container-bodyの外で使う） */
#ku-feature .ku_container-xwide {
  width: 100%;
  display: block;
  max-width: 1920px;
  margin: 0 auto;
}
/* 画面と同じ幅のコンテンツ（帯など）のため。（.ku_container-bodyの外で使う） */
#ku-feature .ku_container-full {
  width: 100%;
  display: block;
  margin: 0 auto;
}


/*
  よく使っている要素の初期設定
*/
#ku-feature p {
  margin: 0 0 1.1em;
  line-height: 1.7;
}

#ku-feature a {
  color: #85023e;
  color: var(--color);
  font-weight: bold;
  text-decoration: underline;
  transition: text-decoration-color 300ms;
}
#ku-feature a:hover {
  text-decoration-color: rgba(0, 0, 0, 0);
}


/* 丸い角のため */
#ku-feature .ku_round-corners {
  border-radius: 10px;
}


/* 情報があるサイドバーのデザイン
   参照： https://www.kyushu-u.ac.jp/en/topics/view/436
*/
#ku-feature .ku_side-info {
  border-bottom: 2px solid #c384a1 /*#ffd5e8 /*#debecd*/;
  border-top: 2px solid #c384a1 /*#ffd5e8 /*#debecd*/;
  background: rgba(0,0,0,0.01);
  font-size: .77em;
  line-height: 1.3;

}

/* トップ画像 */
#ku-feature .ku_hero {
  max-width: 1024px;
  margin: 0 auto;
}

/* タイトル */
#ku-feature .ku_title {
  font-family: 'Montserrat', sans-serif;
  font-size: 2.667em;
  margin: 0.3em auto 0;
  line-height: 1.2;
  max-width: 1024px;
  border-left: 2px solid #85023e;
  border-left-color: var(--color);
  padding: 0 0.4em;
}

/* サブタイトル */
#ku-feature .ku_subtitle {
  font-size: 1.2em;
  margin: 0.3em auto 0;
  line-height: 1.3;
  max-width: 1024px;
  padding: 0 1em;
}



/* 著者 */
#ku-feature .ku_byline {
  max-width: 980px;
  margin: 1em auto 2em;
  font-style: italic;
  font-size: 0.778em;
  line-height: 1.4;
}

/* 著者と日付の間の「・」（狭い画面で改行になる） */
#ku-feature .ku_sep:after {
  content: " \2022 ";
  display: inline-block;
  margin:0 4px 0 7px;
}


#ku-feature .ku_flag {
}

/* ニュースカテゴリのためのフラグ */
#ku-feature .ku_flag:before {
  content: 'Feature';
  background: #8bc500;
  font-style: normal;
  line-height: 1.7142;
  color: #fff;
  display: inline-block;
  font-size: 0.778em;
  padding: 0 8px;
  margin-bottom: 0.5em;
}

/* 発言者もある引用のため */
#ku-feature .ku_quoteblock {
  width: auto;
  margin: 3em;
  padding: 2em 1em;
  background: linear-gradient(to right, transparent 35%, #85023e 35%, #85023e 65%, transparent 65%) 50% 0,
        linear-gradient(to right, transparent 35%, #85023e 35%, #85023e 65%, transparent 65%) 50% 100%;
  background: linear-gradient(to right, transparent 35%, var(--color) 35%, var(--color) 65%, transparent 65%) 50% 0,
        linear-gradient(to right, transparent 35%, var(--color) 35%, var(--color) 65%, transparent 65%) 50% 100%;

  background-size: 100% 2px;
  background-repeat: no-repeat;
}

/* 狭い場所で使う時、マージンを小さく
  使用例：
    https://www.kyushu-u.ac.jp/en/topics/view/475
*/
#ku-feature .ku_container-right .ku_quoteblock {
  margin: 1em;
  padding: 1.5em 1em;
}

/* 引用 */
#ku-feature .ku_quote {
  font-family: serif;
  font-style: italic;
  font-size: 1.7em;
  text-align: center;
  line-height: 1.2;
  margin: 0 0 0.5em;
}
/* 狭い場所で使う時、文字を少し小さく */
#ku-feature .ku_container-right .ku_quote {
  font-size: 1.4em;
}

/* 発言者 */
#ku-feature .ku_quotespeaker {
  font-variant: small-caps;
  font-weight: bold;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.9em;
  text-align: center;
}

/* 通常のヘディング（普段はh2だけど、別の要素でもいい）
  使用例：
    https://www.kyushu-u.ac.jp/en/topics/view/436
    https://www.kyushu-u.ac.jp/en/topics/view/463
    https://www.kyushu-u.ac.jp/en/topics/view/475
*/
#ku-feature .ku_heading {
  color: #85023e;
  color: var(--color);
  max-width: 702px;
  font-size: 1.16em;
  margin: 0 0 0.5em;
  font-family: Montserrat, sans-serif;
  font-weight: bold;
  line-height: 1.5;
  clear: left;
}

/* もっと狭くて高いヘディング。短いヘディングに推奨。（普段はh2だけど、別の要素でもいい）
  使用例：
    https://www.kyushu-u.ac.jp/en/topics/view/469
    https://www.kyushu-u.ac.jp/en/topics/view/470
    https://www.kyushu-u.ac.jp/en/topics/view/471
*/
#ku-feature .ku_heading-narrow {
  color: #85023e;
  color: var(--color);
  max-width: 702px;
  font-size: 1.6em;
  margin: 0 0 0.5em;
  font-family: Oswald, sans-serif;
  font-weight: bold;
  line-height: 1.3;
  clear: left;
}

/* 最初の要素じゃない時だけ、上にマージン */
#ku-feature .ku_heading:not(:first-child),
#ku-feature .ku_heading-narrow:not(:first-child) {
  margin-top: 2em;
}

/* 文章の段落 */
#ku-feature .ku_copy {
  margin: 0 0 1.1em;
  max-width: 702px;
}

/* 画像の下のキャプション */
#ku-feature .ku_caption {
  font-size:0.85em;
  line-height:1.3;
  margin: .5em auto;
  padding: 0 .25em;
}
#ku-feature .ku_caption p {
  line-height:1.3;
}

/* 長い追加情報のパネル */
#ku-feature .ku_long-info {
  background-color: rgba(255, 218, 143, 0.2);
  padding: 1em;
  margin: 2em auto;
}
/* 中ぐらいのpadding */
#ku-feature .ku_padding-m {
  padding: 1em;
}



/* 記事にリンクする画像とタイトルがあるカードのためのcontainer。
   これでフォントサイズを調整する。 */
#ku-feature .ku_link-card {
  position: relative;
  display: block;
  box-sizing: border-box;
  height: 100%;
  padding-bottom:10px;
  font-family: 'Noto sans', sans-serif;
  font-size: 1.8rem;
  font-weight: normal;
  color: inherit;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 20px 0px;
  text-decoration: none;
}
/* 左にある線（タイトルの隣だけど画像の裏） */
#ku-feature .ku_link-card:before {
  content: "";
  position: absolute;
  display: block;
  border-left: 2px solid #85023e;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}

/* タイトル、詳細（サブタイトル、日付など）のため */
#ku-feature .ku_link-card__title,
#ku-feature .ku_link-card__subtitle,
#ku-feature .ku_link-card__date {
  padding-left: 12px;
  line-height: 1.3;
  display: block;
}

/* タイトル */
#ku-feature .ku_link-card__title {
  font-size: 1.4em;
  font-weight: bold;
  padding-top: 10px;
  padding-right: 10px;
  text-decoration: underline;
  text-decoration-color: rgba(0, 0, 0, 0);
  transition: text-decoration-color 300ms;
}
#ku-feature .ku_link-card:hover .ku_link-card__title {
  /* 通常のフォント色（見えにくい場合の黒を使ったら、見えない...） */
  text-decoration-color: #333333;
}

/* サブタイトル、著者などのため */
#ku-feature .ku_link-card__subtitle {
  margin: 7px auto;
  font-weight: normal;
}

/* 日付 */
 #ku-feature .ku_link-card__date {
  color: #aaaaaa;
  font-size: 0.7em;
}


@media only screen and (max-width: 736px) {
  #ku-feature .ku_title {
    font-size: 1.6em;
  }
  #ku-feature .ku_subtitle {
    font-size: 1.1em;
    padding: 0 .7em;
  }
  #ku-feature .ku_byline {
    margin: 1em 1em 2em;
  }
  #ku-feature .ku_flag {
    display: block;
  }
  #ku-feature .ku_sep:after {
    content: '';
    display:block;
  }
  #ku-feature .ku_container-body {
    padding: 0 0.7em;
  }
  #ku-feature .ku_container-side {
    float: none;
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 2em auto;
    z-index: auto;
  }
  #ku-feature .ku_container-left,
  #ku-feature .ku_container-right {
    float: none;
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    z-index: auto;
  }

  #ku-feature .ku_container-body > .ku_container-wide {
    margin: 0 -0.7em;
  }

  #ku-feature .ku_quoteblock,
  #ku-feature .ku_container-right .ku_quoteblock {
    margin: 2em 0;
    padding: 1.5em;
    background: linear-gradient(to right, transparent 20%, #85023e 20%, #85023e 80%, transparent 80%) 50% 0,
        linear-gradient(to right, transparent 20%, #85023e 20%, #85023e 80%, transparent 80%) 50% 100%;
    background: linear-gradient(to right, transparent 20%, var(--color) 20%, var(--color) 80%, transparent 80%) 50% 0,
        linear-gradient(to right, transparent 20%, var(--color) 20%, var(--color) 80%, transparent 80%) 50% 100%;
    background-size: 100% 2px;
    background-repeat: no-repeat;
  }
  #ku-feature .ku_quote,
  #ku-feature .ku_container-right .ku_quote {
    font-size: 1.2em;
  }

  /* リンクカードのフォントをもうちょっと小さく　*/
  #ku-feature .ku_link-card {
    font-size: 1.5rem;
  }

}



/*

  Kyushu U Visions 2030

*/

/* main container setting. everything limited to 1200px for simplicity */
#ku-vision {
  font-size: 1.8rem;
  --color: #79636b;
  max-width: 1200px;
  margin: 0 auto;
  line-height: 1.5;
}
.en #ku-vision {
  font-family: 'Noto Sans', sans-serif;
}

/* main section headings */
#ku-vision h2 {
  font-size: 2em;
  color: #79636b;
  border-bottom: 1px solid #79636b;
  padding: 0.1em 0.5em;
  width: fit-content; /* so border doesn't extend past text */
  margin: 2.5em 0 1em 0;
  font-family: serif;
  line-height: 1.3;
}
.en #ku-vision h2 {
  font-family: 'Times New Roman', serif;
  padding: 0.1em 0.3em;
}
/* container for menu with 8 visions */
#ku-vision .ku-vision-menu {
  margin: 4em auto;
  font-size: 0.8888888888em; /* so 3em for Vision background is even 48px */
}
/* list of 8 visions as menu */
#ku-vision .ku-vision-menu ul {
  text-align: center;
  font-family: serif;
  margin-right: 5px; /*to balance margin-left on each menu item...*/
}
.en #ku-vision .ku-vision-menu ul {
  font-family: 'Times New Roman', serif;
}
#ku-vision .ku-vision-menu ul a {
  color: inherit;
  text-decoration: none;
}
#ku-vision .ku-vision-menu li {
  display: inline-block;
  width: 100px;
  margin-left: 5px;
  color: #79636b;
  font-weight: bold;
  vertical-align: top;
}
.en #ku-vision .ku-vision-menu li {
  line-height: 1;
  margin-bottom: 0.5em;
  width: 120px;
}
/* span for "Vision X" in menu*/
#ku-vision .ku-vision-menu li span {
  color: #fff;
  text-align: right;
  display: block;
  background: #79636b; /* fallback */
  background: var(--color);
  padding: 0 0.5em 0 0;
  position: relative;
  line-height: 1.5;
}
.en #ku-vision .ku-vision-menu li span {
  padding: 0 1.8em 0 0;
  margin-bottom: 0.2em;
}
/* stick in the "Vision" text using an image */
#ku-vision .ku-vision-menu li span:before {
  content: '';
  display: block;
  background-image: url(/img/common/vision-s.png);
  background-repeat: no-repeat;
  /*background-position: 1.8em .44em;*/
  background-position: 1.8em center;
  background-size: 3em auto;
  position: absolute;
  width: 100px;
  height: 1.5em;
  top: 0;
  left:0;
}

/* container for background image and title for each vision */
#ku-vision .ku-vision-header {
  position: relative;
  width: 100%;
  padding-top: 40%;
  background: linear-gradient(to left, transparent 30%, white 72.5%), url(/img/common/vision1.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right;
}
/* vision name */
#ku-vision h3 {
  color: #fff;
  background-color: #79636b; /* fallback */
  background-color: var(--color);
  line-height: 1;
  font-family: serif;
  min-width: 350px;
  font-size: 3em;
  padding: .2em .5em 0.4em;
  position: absolute;
  left: 0;
  /*top: 22%;
  top: calc(50% - 93px);*/
  top: 50%;
  transform: translateY(-50%);
}
.en #ku-vision h3 {
  font-family: 'Times New Roman', serif;
}
/* vision number and "Vision" text image */
#ku-vision h3:before {
  line-height: 1.5;
  content: '\00a0'; /* fallback */
  content: var(--count);
  font-size: 0.7962962962em; /* so background-size of 3em will be 129px */
  border-bottom: 1px solid #fff;
  display: block;
  background-image: url(/img/common/vision-m.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 3em auto;
  padding-left: 3.2em;
  margin-bottom: 0.5em;
}
/* lead sentence for each vision */
#ku-vision .ku-vision-lead {
  color: #79636b; /* fallback */
  color: var(--color);
  font-size: 1.6em;
  font-family: serif;
  margin: 1em 0 1.5em;
  padding: 0 1.25em;
  line-height: 1.3;
  font-weight: bold;
}
.en #ku-vision .ku-vision-lead {
  font-size: 2.2em;
  font-weight: normal;
  line-height: 1.2;
  margin: 0.7em 0 1em;
  padding: 0 0.9em;
  font-family: 'Times New Roman', serif;
}

/* container for the two columns (PC) for each vision */
#ku-vision .ku-vision-cols {
  display: flex;
  align-items: stretch;
}
/* column for each vision */
#ku-vision .ku-vision-col {
  flex-grow: 1;
  padding: 0 2em;
  width: 50%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
/* border only on right column */
#ku-vision .ku-vision-col:last-child {
  border-left: 1px solid #79636b; /* fallback */
  border-left: 1px solid var(--color);
}
/* headings under each vision */
#ku-vision .ku-vision-col h4 {
  border-left: 6px solid #79636b; /* fallback */
  border-left: 6px solid var(--color);
  font-weight: bold;
  font-size: 1.2em;
  padding: 0.4em 0.8em;
  margin: 2em 0 1em;
  line-height: 1.5;
}
.en #ku-vision .ku-vision-col h4 {
  font-size: 1.4em;
  line-height: 1.25;
  margin-bottom: 0.8em;
  padding: 0.3em 0.6em;
}


/* no top margin for first heading under vision */
#ku-vision .ku-vision-col h4:first-child {
  margin-top: 0;
}
/* currently using default #ku-vision settings, so empty... */
#ku-vision .ku-vision-col p {
}
/* container for images */
#ku-vision .ku-vision-image {
  max-width: 550px;
  margin: 1.45em auto 0;
  font-size: 0.7em;
}
/* achievements container */
#ku-vision .ku-vision-achievements {
  position: relative;
  border: 1px solid #79636b;
  border-radius: 10px;
  margin: 3em 2em 2em;
  padding: 1.5em 2em 1em 3em;
}
/* achievements heading */
#ku-vision .ku-vision-achievements:before {
  content: '実績内容';
  line-height: 1.2em;
  position: absolute;
  color: #79636b; /* fallback */
  color: var(--color);
  font-family: serif;
  font-size: 1.2em;
  font-weight: bold;
  background-color: #fff;
  padding: 0 .5em;
  top: -.6em;
  left: .7em;
}
.en #ku-vision .ku-vision-achievements:before {
  content: 'Current initiatives';
  font-family: 'Noto Sans', sans-serif;
}

/* achievement list */
#ku-vision .ku-vision-achievements ul {
  list-style: none;
}
#ku-vision .ku-vision-achievements ul li::before {
  content: "\2022";
  color: #79636b; /* fallback */
  color: var(--color);
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}

@media only screen and (max-width: 736px) {
  #ku-vision h2 {
    font-size: 1.5em;
  }
  #ku-vision h3, .en #ku-vision h3 {
    font-size: 1.4em;
    min-width: 175px;
  }
  #ku-vision h3:before {
    /*background-position: left .39em;*/
  }
  #ku-vision .ku-vision-lead {
    padding: 0 0.625em;
  }
  .en #ku-vision .ku-vision-lead {
    font-size: 1.8em;
    padding: 0 0.6em;
  }
  #ku-vision .ku-vision-cols {
    display: block;
  }
  #ku-vision .ku-vision-col {
    padding: 1em 1em;
    width: auto;
  }
  #ku-vision .ku-vision-col:last-child {
    border-left: none;
  }
  #ku-vision .ku-vision-image {
    max-width: 420px;
  }
  #ku-vision .ku-vision-achievements {
    margin: 2em 1em 1em;
    padding-left: 2em;
    padding-right: 1em;
  }
}




/*

  Kyushu U Connect

*/

/* main container for page */
#ku-connect {
  font-size: 1.8rem;
  margin: 0 auto;
  line-height: 1.5;
}
.en #ku-connect {
  font-family: 'Noto Sans', sans-serif;
}

/* hero image and logo (pc and sp) */
#ku-connect .ku_header {
  margin: 1em auto 3.5em;
  max-width: 2400px;
  position: relative;
}

/* hero/banner image (pc and sp) */
#ku-connect .ku_hero {
  margin: 1em 9.5% 0 0;
  max-width: 80%;
  float: right;
}
#ku-connect .ku_hero img {
  display: block;
}

/* logo in header (pc and sp) */
#ku-connect .ku_logo {
  display:block;
  position:absolute;
  left: 12%;
  top: 5%;
  padding:.5em;
  width:15%;
}

/* Spotlight container */
#ku-connect .ku_spotlight {
  clear: both;
  max-width: 1200px;
  margin: auto;
  width: 70%;
}
/* Spotlight article image */
#ku-connect .ku_spotlight-img {
  float: right;
  width: 50%;
  margin-left: 1em;
  z-index: 2;
  margin-bottom: .5em;
}

/*
   Classes for links.
     ku_txt-link: link on text only
     ku_img-ttl-link: link on image and optionally title
*/
#ku-connect a.ku_txt-link,
#ku-connect a.ku_img-ttl-link {
  text-decoration: none;
}
#ku-connect a.ku_img-ttl-link img {
  display: block;
  border-radius: 10px;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
  margin: auto;
  transition: 0.2s;
}
/* span to add margins to link so not quite as wide as image... */
#ku-connect a.ku_img-ttl-link > span {
  display: block;
  margin: 0.5em .5em 0;
}
/* nested span for line under link text... ugly, but necessary since we can't put <div> in <a> */
#ku-connect a.ku_txt-link,
#ku-connect a.ku_img-ttl-link > span > span {
  border-bottom: 1px solid rgba(132, 3, 68, 0.3);
  transition: 0.2s;
}
#ku-connect a.ku_img-ttl-link > span > span {
  font-weight:bold;
  font-size: 1.3em;
}
/* change color and bottom line thickness when hovering */
#ku-connect a.ku_txt-link:hover,
#ku-connect a.ku_img-ttl-link:hover > span > span {
  color: #85023e;
  border-bottom: 3px solid rgba(132, 3, 68, 1);
}
/* lighten image when hovering */
#ku-connect a.ku_img-ttl-link:hover img {
  opacity: 0.5;
}

/* section header (title and description) portions */
#ku-connect .ku_section-header {
  display: flex;
  align-items: center;
  margin: 0 0 2em 0;
}
/* section heading */
#ku-connect .ku_section-header h2 {
  font-size: 2.5em;
  font-family: Montserrat, serif;
  line-height: 1.3;
  margin-right: 0.4em;
}
/* section description */
#ku-connect .ku_section-header p {
  line-height: 1.3;
}

/* Item details, such as description and Japanese link. Optional. */
#ku-connect .ku_item-details {
  line-height: 1.5;
  margin: 0.5em;
  font-size: 0.8em;
}

/* Container for japanese link */
#ku-connect .ku_item-ja {
  font-size: 1em;
  margin-top: 1em;
}
/* Label indicating Japanese version */
#ku-connect .ku_item-ja:before {
  content: "日本語版";
  display: inline;
  font-size: 0.8em;
  color: #85023e;
  padding: 0.2em 0.2em 0.2em 0;
  margin-right: .2em;
}

@media only screen and (max-width: 736px) {
  /* smaller margins on sp */
  #ku-connect .ku_header {
    margin: 0 auto;
  }
  /* don't float hero on smaller screen */
  #ku-connect .ku_hero {
    float: none;
    max-width: none;
    margin: 1.5em 1.2% 0;
  }
  /* reposition logo */
  #ku-connect .ku_logo {
    display:block;
    padding: 0 1%;
    width:22%;
    max-width: 150px;
    position: absolute;
    left: 5%;
    top: -3%;
  }
  /* use full width for spotlight, add bottom margin since menu is now above */
  #ku-connect .ku_spotlight {
    width: auto;
    margin-bottom: 2em;
  }
  /* section title and description on separate lines now */
  #ku-connect .ku_section-header {
    display: block;
  }
  #ku-connect .ku_section-header h2 {
    font-size: 2em;
  }
  #ku-connect .ku_section-header > p {
    font-size: 0.8em;
    line-height: 1.3;
    display: block;
  }
  /* slightly smaller title links */
  #ku-connect a.ku_img-ttl-link > span > span {
    font-size: 1em;
  }
}


@media only screen and (max-width: 560px) {
  /* Fill width with banner on smartphone using background*/
  #ku-connect .ku_hero {
    background-image: url(/img/common/connect-banner-top.jpg);
    background-size: auto 130%;
    background-position: center bottom;
    background-repeat: no-repeat;
    padding-top: 44%;
    margin: 0 auto;
  }
  #ku-connect .ku_hero img {
    display: none;
  }
  /* hide logo on smartphone */
  #ku-connect .ku_logo {
    display:none;
  }
  /* no floating spotlight image on smartphone */
  #ku-connect .ku_spotlight-img {
    float: none;
    width: auto;
    margin-left: 0;
  }
}