@charset "UTF-8";

header {
  -js-display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background:#8cbefa;
}

div.content {
   margin: 0 15px;
   padding: 0;
}

h1.videolib{
  font-size: clamp(16px, 1.8vw, 30px);
  font-weight: bold;
  padding-top: .5em;
  padding-bottom: .5em;
  padding-left: .5em;
  margin-bottom: 1em;
  border-left: 20px solid #1f71b5;
  background-color: #e5f2ff;
  color: #19448e;
}

h2.videolib {
  position: relative;
  padding: 1rem .5rem;
  width: 100%;
}

h2.videolib:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  content: '';
  border-radius: 3px;
  background-image: -webkit-gradient(linear, right top, left top, from(#2af598), to(#009efd));
  background-image: -webkit-linear-gradient(right, #2af598 0%, #009efd 100%);
  background-image: linear-gradient(to left, #2af598 0%, #009efd 100%);
}

p.guide {
  margin-right: 20px;
  margin-left: 20px;
}

footer {
    line-height: 200%;
    background:#8cbefa;
    padding: 5px 10px;
    margin: 10px 0px;
   }

/* シリーズ見出し */
.videolib_ttl_frame1 {
  font-size: 1em;
  font-weight: bold;
  padding: 0.5em 1.5em;
  border: 3px solid #4c9ac0;
  overflow: hidden;
  position: relative;
}
.videolib_ttl_frame1::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  border-width: 25px 25px 0 0;
  border-style: solid;
  border-color: #4c9ac0 #fff #4c9ac0;
}

/* 再生動画メニュー */
.videolib_videolist{
	margin: 5px;
	padding: 0;
}
.videolib_videolist li{
	list-style: none;
	margin: 0 0 15px 0;
}
.videolib_videolist li:last-child{
	margin-bottom: 1.5em;
}
.videolib_videolist li a{
	text-decoration: none;
	display: block;
	position: relative;
	padding: 8px calc(1em + 10px) 8px 8px;	
	line-height: 1.4;
	background: #e5f2ff;
	color: #19448e;
}
.videolib_videolist li a:after{
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 1em;
	height: 1em;
	line-height: 1em;
	margin: auto;
	text-align: center;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900;
	content: '\f105';
}

/* -------サムネイル付きリストAパターン------- */


article.videolist {
  display: flex;
  margin-bottom: 10px;
  padding: 5px;
  border-radius: 5px;
  box-sizing: border-box;
  box-shadow: 0 0 5px #999;
}
article.videolist a {
  text-decoration: none;
}

article.videolist .text_content {
    float: right;
    margin-left: -70px;
    width: 100%;
  }
article.videolist .text_content h2,
article.videolist .text_content p {
      margin-left: 50px;
      margin-top: .5em;
      margin-bottom: .5em;
    }
article.videolist .text_content h2 {
  font-size: 1em;
    }
  article.videolist figure {
    margin-right: 10px;
    width: 100px;
  }
    article.videolist figure img {
    margin-left: -30px;
      min-width: 100px;
      max-width: 100%;
      vertical-align: top;
    }


/* -------サムネイル付きリストBパターン------- */


.videolist1 {
  box-shadow: 0 0 3px #aaa;
}

.videolist1 h1 {
  font-weight: bold;
  text-align: center;
  font-size: 0.9em;
  padding: 10px;
}

.videolist1 p {
  padding: 5px;
  font-size: 0.9em;
}

.videolist1 img {
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
  box-shadow: 0 0 3px #aaa;
}

main {
  -js-display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

main div.videolist1 {
  width: calc(25% - 35px);
  margin: 5px;
  padding: 10px;
  text-align: center;
}

@media (max-width: 768px) {
  header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }

  main div.videolist1 {
    width: calc(50% - 35px);
    margin: 5px;
    padding: 5px;
    text-align: center;
  }
.title span{
  vertical-align: middle;
  white-space: normal;
  }
}
.indention {
  display: inline-block; 
}
main div.video_thum {
    position: relative;
    width: 100%;
    height: 100px;
    img {
    width: 100%;
    height: 100%;
    object-fit: scale-down;
  }
}



/* -------モーダルウィンドウ------- */
div.modal {
	position: relative;
	display:none;
	z-index:9999;
}
div.modal .pr_box {
	width:80%;
	height:auto;
	margin:auto;
	box-shadow:0px 0px 12px rgba(0,0,0,0.4);
	padding:40px;
	background:#FFFFFF;
}
.pr_box img:hover {
	filter: alpha(opacity=50);
	-webkit-opacity:0.50;
	-moz-opacity:0.50;
	-ms-opacity:0.50;
	-o-opacity:0.50;
	opacity:0.50;
}
.close_modal{
	display: block;
	width: 120px;
	line-height:50px;
	display: inline-table;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	transition: all 200ms linear;
	-webkit-transition: all 300ms linear;
	-moz-transition: all 300ms linear;
	-o-transition: all 300ms linear;
	transition: all 300ms linear;
	color: #fff;
	border: 2px solid #018ad1;
	background: #018ad1;
	*display: inline;
	*zoom: 1;
}
.close_modal:hover {
	text-decoration: none;
	display: inline-table;
	color: #018ad1;
	border: 2px solid #018ad1;
	background: #fff;
}
.close_modal_no{
	display: block;
	width: 120px;
	line-height:50px;
	display: inline-table;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	transition: all 200ms linear;
	-webkit-transition: all 300ms linear;
	-moz-transition: all 300ms linear;
	-o-transition: all 300ms linear;
	transition: all 300ms linear;
	color: #fff;
	border: 2px solid #60cfff;
	background: #60cfff;
	*display: inline;
	*zoom: 1;
}
.close_modal_no:hover {
	text-decoration: none;
	display: inline-table;
	color: #018ad1;
	border: 2px solid #60cfff;
	background: #fff;
}
.modal_btn {
    font-size: 1.5em;
    text-align:center;
    margin: 10px;
}
.library_name {
    font-size: 1.5em;
    text-align:center;
    margin: 10px;
}

