@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&family=Noto+Serif+JP:wght@600&display=swap');body {
    color: #777;
    font-family: "Noto Sans JP",sans-serif;
    font-size: 15px;
    font-weight: 400
}

h1 {
    color: #171C61;
    font-family: "Noto Sans JP",sans-serif;
    font-size: 48px !important;
    font-weight: 900
}
@media all and (min-width: 768px) and (max-width: 1024px) { 
h1 {
    font-size: 2.09rem !important;
}

}

h2 {
    color: #171C61;
    font-family: "Noto Sans JP",sans-serif;
    font-size: 28px !important;
    font-weight: 700
}

h3 {
    color: #222;
    font-family: "Noto Sans JP",sans-serif;
    font-size: 18px !important;
    font-weight: 700;
    text-transform: uppercase
}

h4 {
    color: #222;
    font-family: "Noto Sans JP",sans-serif;
    font-size: 16px !important;
    font-weight: 400
}

h5 {
    color: #777;
    font-family: "Noto Sans JP",sans-serif;
    text-transform: capitalize;
    font-size: 14px !important;
    font-weight: 400
}

h6 {
    color: #777;
    font-size: 12px !important;
    font-family: "Noto Sans JP",sans-serif;
    text-transform: uppercase;
    font-weight: 500
}

.bg_h2 {
	width: 100%;
	height: 100%;
/*  background-color:rgba(255,255,255,0.4);*/
	display: flex;
	flex-direction: column;
	/*justify-content: center;
	align-items: center;*/
}
.fuchi{
  color: #171C61;
  text-shadow:2px 2px 0 #ffffff, -2px -2px 0 #ffffff,
              -2px 2px 0 #ffffff, 2px -2px 0 #ffffff,
              0px 2px 0 #ffffff,  0-2px 0 #ffffff,
              -2px 0 0 #ffffff, 2px 0 0 #ffffff;
}
.circle {
    display: inline-block;
    width: 100px;
    height: 100px;
    color: #fff;
    background-color:#171C61;
    line-height: 1.2;
		font-weight: bold;
    text-align: center;
    border-radius: 50%;
		letter-spacing: 0.05em;
}

/*つかわないが*/
.bg_rgba {
	width: 100%;
	height: 100%;
  background-color:rgba(255,255,255,0.4);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.bg-text {
	font-size: 25px;
	font-weight: bold;
	color: #171C61;
  padding:1rem;
}
/*つかわないが*/


img.nvlg,img.nvlg2{height:50px;}
@media (max-width: 575.98px) {
img.nvlg,img.nvlg2{height:40px;}
}
.nnews-area {
    background: #EDF9F9;
}

table.table.prog{font-weight: normal;}
table.table.prog th{background-color: white; padding:1rem;width:15%;}
.topics{text-align: left;
/* height: 120px;*/
overflow: scroll;
overflow-x: hidden;
}
.topics dl {
}

.topics dt {
padding-bottom: 5px;
}
.disabled{pointer-events: none;background-color: #ccc !important;opacity:0.30 !important;border:none;}
@media screen and (min-width: 768px) {
.topics dt {
clear: left;
float: left;
width: 10%;
}
.topics dd {
margin-left: 14%;
}
.topics{text-align: left;}
}
.sc1 table.table {background-color: #ffffff;}
.sc1 table.table th{width:24%;background-color:#62C9EF;}
.sc1 table.table td dl {display: flex;flex-wrap: wrap;width: 100%;}
.sc1 table.table td dt{width: 22%;padding-bottom: 20px;margin-bottom: 10px;color:#555;}
.sc1 table.table td dd{width: 78%;padding-bottom: 20px;margin-bottom: 10px;}
.sc1 .table>:not(caption)>*>* {padding:1rem;}
.fs-s{font-size:0.9rem !important;}
.fs-ss{font-size:0.8rem !important; font-feature-settings: "palt";}

/*----- スムーズスクロール -----*/
#page-top a {
	position: fixed; /* 要素固定*/
	bottom: 3%; /*下からの位置*/
	right: 5%; /*右からの位置*/
	width: 3rem;
	height: 3rem;
	background-color: #62C9EF;
	border-radius: 100%;
	color: #fff;
	text-decoration: none;
	text-align: center;
	display: block;
	line-height: 0;
	padding:0.5rem;
}
#page-top a:hover{
	background-color: #171C61;
}
.drkblue{background-color:#171c61;}

.spbr{display: none}
@media screen and (max-width:575.98px) {
    .spbr{
        display: block;
    }
}
.toiw{line-height: 1.6rem;}
.banner-area {
/*    padding: 140px 0 100px;*/
		padding: 100px 0 70px;
    background-color: #b0b0b0;
    background-image: url("../images/banner-bg.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .banner-area {
        padding:280px 0
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .banner-area {
        padding:250px 0
    }
}

@media (max-width: 575.98px) {
    .banner-area {
        padding:100px 0
    }
 .banner-area h1 {
        font-size:1.6rem !important;
    }
 .banner-area h2 {
        font-size:1.2rem !important;
/*				text-align:left;*/
    }
}

.nwsttl {
    width: auto;
    height: 100%;
		padding:1.6rem;
/*		padding:2rem;*/
		font-weight: bold;
		font-size:1.1rem;
    background-color:#62C9EF;
}
@media (max-width: 575.98px) {
		.nwsttl {font-size:0.9rem;padding:0.5rem;}
		
}

.mar-btn.success-border {
    color: #171C61;
    border: 4px solid #171C61;
    background: #fff
}
.mar-btn.circle {
    border-radius: 20px;
}
.mar-btn {
    display: inline-block;
    outline: none;
    line-height: 40px;
    padding: 0 30px;
    font-size: .8em;
    text-align: center;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.mar-btn.success-border:hover {
    color: #fff;
    background: #171C61;
    border: 4px solid transparent;
}

.clr-area {
    background: #e1f1f4;
}

.sec-pad0 {
    padding: 80px 0
}

.sec-pad {
    padding: 100px 0
}

.section-top {
    margin-bottom: 80px
}
.mou-btn {
    color: #fff;
    background-color: #171C61;
    font-family: "Noto Sans JP",sans-serif;
    text-transform: uppercase;
    font-size: 1rem;
    font-weight: 600;
    display: inline-block;
    padding: 1.4rem!important;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
a.mou-btn:hover {background-color:#62C9EF;color:white;}
.bg-ftr {
  padding: 2rem 0;
  color: #ffffff;
  text-align: center;
  background-color: #959597;
}
.bg-ftr p:last-child {
  margin-bottom: 0;
}

/******講演内容******/
#program, .bdy2{color:#212529;}
#program h3 {
padding:0.5rem;
font-size:1.2rem;
border-bottom:solid 1px #2554FD;
border-left:solid 8px #2554FD;
color:#333;
}
.pg-cont{margin-left:0.5rem; /*width:90%;*/}
.pgttl{color:#2554FD;font-weight:bold;font-size:1.1rem;}
.timetxt{color:#212529;font-size:1rem;font-weight: normal;}

@media (max-width: 575.98px) {
#program img, #sc2_vw img {width: 50%;display: block; margin: 0 auto;text-align: center;}
}


/********視聴ページ********/
:root {
  --light-blue2:#2554FD;  /* 値を定義 */
}

.bgkv {
    background-image: url("../images/banner-bg.png");
    background-size: cover;
}
h1.lgh1{font-size:2.1rem !important;font-weight: bold !important;}
p.lgchui{font-size:88%;margin-top: 1rem;text-align: left;color:#000000;}
p.kikan{color:#212529;}
h1.vwpg {
    font-size: 1.6rem;
    position: relative;
    padding: 0.5rem 0;
    display: inline-block;
    border-bottom: 6px solid #BFBDBC;
}

@media (max-width: 575.98px) {
.bgkv {background-size: cover; 
}
h1.lgh1{font-size:1.4rem !important;}
p.kikan{font-size:90% !important;}
p.lgchui{font-size:80%;}
}

hr.bdr {
  border-top: 3px solid #171C61;
	margin:3rem auto;
	width:75%;
}
h3.lginttl{color:#171C61;}
h1.ond{font-size:1.2rem !important; color: var(--light-blue2);}
.txs{font-size:90%;}
.reTxt{color:red;}
p.xstxt{margin:0 auto 1rem;}
p.xstxt a{font-size:0.7rem;}
a.pclk{cursor:pointer;color:blue;text-decoration: underline;}
.note{font-size:70%;display:inline-block;text-align: left;margin:0 auto;padding:0;line-height:1.1;}
span.sage{padding-left: 1em;text-indent: -1em;}

#sc1_greeting {
  background: -moz-linear-gradient(45deg, rgba(255, 255, 255, 1), rgba(199,230,234, 0.2)),url("../images/bg1.png");
  background: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 1), rgba(199,230,234, 0.2)),url("../images/bg1.png");
  background: linear-gradient(25deg, rgba(255, 255, 255, 1), rgba(199,230,234, 0.2)),url("../images/bg1.png");
  background-size:cover;
	padding:1.5rem 3rem;
}
#sc2_vw, #sc3_vw, #sc4_vw {
  background: -moz-linear-gradient(45deg, rgba(255, 255, 255, 1), rgba(199,230,234, 0.2)),url("../images/bg2.png");
  background: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 1), rgba(199,230,234, 0.2)),url("../images/bg2.png");
  background: linear-gradient(25deg, rgba(255, 255, 255, 1), rgba(199,230,234, 0.2)),url("../images/bg2.png");
  background-size:cover;
}
.clrb2{color:var(--light-blue2);}
@media (max-width: 575.98px) {
#sc1_greeting{padding:0.5rem;
}
}
p.cstm-flex {
			order: 2;
			color:#171C61;
    }
		
/**/	
    .textlink a {
      position: relative;
      color: #333 !important;
      text-decoration: none;
      display: inline-block;
      padding: 10px;
    }

    .textlink a:hover {
      color: #b99b00;
    }

    #pglink {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      justify-content: center;
    }

    #pglink li {
      text-align: center;
      position: relative;
      margin-right: 50px;
    }

    #pglink li:last-child {
      margin-right: 0;
    }

    #pglink li a {
      color: #333 !important;
      text-decoration: none;
      font-weight: bold;
      padding: 5px 10px;
    }

    #pglink li a::before {
      content: '';
      position: absolute;
      bottom: -2px;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #6AD6F3;
      transform: scaleX(0);
      transition: transform 0.3s;
    }

    #pglink li a:hover::before {
      transform: scaleX(1);
    }

    #pglink li a::after {
      content: '\f138';
      position: absolute;
      top: 50%;
      right: -20px;
      transform: translateY(-50%);
      font-family: "Font Awesome 6 Free";
      font-size: 16px;
      color: #62C9EF;
      transition: color 0.3s;
      opacity: 1;
      display: inline-block;
      padding: 5px;
      border-radius: 50%;
      margin-left: 5px;
    }

    #pglink li a:hover::after {
      color: #6AD6F3;
/*      background-color: #f9f9f9;  アイコンに背景色を追加 */
    }

    @media screen and (max-width: 767px) {
      #pglink {
        display: block;
      }

      #pglink li {
        text-align: left;
        position: relative;
        padding-left: 25px;
      }

      #pglink li a::before {
        display: none;
      }

      #pglink li a::after {
        content: "\f138";
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        font-family: "Font Awesome 6 Free";
        font-size: 12px;
        color: #62C9EF;
        transition: color 0.3s;
        opacity: 1;
        display: inline-block;
        padding: 5px;
        border-radius: 50%;
        margin-left: 5px;
      }

      #pglink li a:hover::after {
        color: #94E5F8;
        background-color: #f9f9f9; /* アイコンに背景色を追加 */
      }
    }
		
.btn-grd-success { background: linear-gradient(to right, #314755 0%, #26a0da 51%, #314755 100%); color: white; border: none; padding: 0.5rem 1rem; text-align: center; text-decoration: none; display: inline-block; transition: 0.3s; border-radius: 0.375rem; background-size: 200% auto; } 
.btn-grd-success:hover { background-position: right center; text-decoration: none; }


         .btn-grad {background-image: linear-gradient(to right, #314755 0%, #26a0da  51%, #314755  100%)}
         .btn-grad {
            margin: 10px;
            padding: 15px 45px;
            text-align: center;
            text-transform: uppercase;
            transition: 0.5s;
            background-size: 200% auto;
            color: white;            
            box-shadow: 0 0 20px #eee;
            border-radius: 10px;
            display: block;
          }

          .btn-grad:hover {
            background-position: right center; /* change the direction of the change here */
            color: #fff;
            text-decoration: none;
          }
         