@charset "UTF-8";

* { box-sizing: border-box; margin: 0;	padding: 0;}

/*
レイアウト確認用css
* {
	outline: 1px solid magenta;
}
*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700;900&display=swap');

/* フォント指定 */
body {
	font-family: 
	"Noto Sans JP", 
	"Helvetica Neue",
	  Arial,
	  "Hiragino Kaku Gothic ProN",
	  "Hiragino Sans",
	  "BIZ UDPGothic",
	  Meiryo,
	  sans-serif;
  }

/*レイアウト*/
.wrap{width:100%; height: 100%; display: flex; justify-content: center; align-items: center; align-content: center; min-height: 100vh;}
.container,.first_content,.second_content,.third_content,.fourth_content,.fifth_content{width: 1000px;}
.container{ display: flex;  justify-content: center; flex-direction: column; align-items: center; position: relative; z-index: 2;}
.first_content{display: flex; justify-content: center;}
.second_content{display: flex; flex-wrap: wrap; width:920px; text-align: left; background: rgba(255, 255, 255, 0.8); margin: 20px 0; padding: 10px ; line-height: 180%; }
.third_content{display: flex; justify-content: center; gap:20px; margin: 50px 0 20px 0;}
.fourth_content{
	display: flex;
    justify-content: left;
    background-color: #3e3e3ecc;
    color: #fefefe;
    padding: 1em 0;
    width: 100%;
	height: 100%;
    flex-wrap: wrap;
}
.fourth_content p{
	text-align: left;
    font-size: 0.8rem;
	margin-left:50px;
	line-height: 150%;
	width: 100%;
}
.fifth_content{display: flex; justify-content: space-between; align-items: center; position: relative; margin-top: 10px;}

#bg-video{position: fixed; right: 0; bottom: 0; min-width: 100%; min-height: 100%; width: auto; height: auto; z-index: -100; background-size: cover;}
.title_content{
    letter-spacing: 1.0rem;
	font-family: 'Noto Sans JP', sans-serif; 
	font-weight: 200; 
	font-size: 2.5rem; 
	color: #fefefe;
	text-align: center; 
	/* background-color: #5f073033;  */
	height: 100%;
	width: 100%;
	padding: 10px; 
	text-shadow: 2px 5px 2px #22045033;
}



ul,li{list-style: none;}
a{text-decoration: none;}
/* a img:hover{filter: brightness(140%);} */
.first_content a:hover,.fifth_content a:hover{background-color: #999; color: #fff !important; filter: brightness(100%);}

/*first_content*/
.logo{width:430px; height: auto; }
.block01 ul{display: flex; gap:0 5px; justify-content: space-between;}
.block01 li{border-radius: 3px; text-align: center; display: flex; justify-content: center; align-items: center; line-height: 90%; width: 240px; height:36px}
.block01 li a{display: flex; justify-content: center;align-items: center; color:#fff; font-size: 12px; width: 240px; height: 36px; border-radius: 3px; padding: 4px; }
.block01 li.block01_menu01{background-color: #0099cc;}
.block01 li.block01_menu02{background-color: #7030a0;}
/* .block01 li.block01_menu03{background-color: #f04a76;} */
.block01 li.block01_menu03{background-color: #009900;}
.block01 li.block01_menu04{background-color: #e4ab00;}
.block02,.block02 ul{display: flex; align-items: center; align-content: center; gap:6px;}
.block02{background-color: #0066cc; margin-top: 10px; height:50px; font-size: 13px; color:#fff; padding: 6px;}
.block02 img{vertical-align: bottom; height: 24px;}


/*second_content*/
.second_content p{font-size: 14px; font-family:monospace; text-align: left; padding-left: 1em;}

/*third_content*/
.third_content img{width: 360px;}

/*fourth_content*/
.left_banner{display: flex; background-color: #c70067; width:55%; height:90px; margin:0 5x 0 0;}
.left_banner:hover{ background-color: #999; }
.left_banner .side_banner{width:30%;}
.left_banner img{height:70px; width: 140px; margin: 10px 10px 5px -20px;}
.left_banner div{display: flex; flex-direction: column; padding-top: 10px; color: #fff; width: 70%;padding: 5px; padding-right: 10px;}
.left_banner div hr{margin: 5px 0 15px;  margin-left: -40px;}.left_banner div a{color: #fff; width: 100%; height: 90px;}
.left_banner .banner_title{font-size: 12px; font-weight: bold; margin-left: -40px; margin-right: 10px; margin-top: 5px; letter-spacing: 5px;}
.left_banner .banner_txt{font-size: 10px; margin:-10px 0 0 -40px; letter-spacing: 3px;}

.right_banner{display: flex; flex-direction: column; justify-content: center; width: 34%; height: 90px; text-align: center; background-color: #2e6fa5; font-size: 11px; color: #fff;}
.right_banner div{display: flex; justify-content: space-around; }
.right_banner div img{width: 120px;}

/*fifth_content*/
.fifth_content .date_txt{font-weight: bold;}
.fifth_content div{position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); display: flex; align-items: center; background-color: #2d6ca0; padding: 10px; gap:20px;}
.fifth_content div a{display: block;}
.fifth_content div img{width: 70px; vertical-align: bottom;}
.entry_btn{display: flex; align-items: center; justify-content: center; background-color: #ed7d31; text-align: center; border-radius: 3px; line-height: 90%; width: 220px; height: 75px;}
.entry_btn a{color: #fff; font-size: 13px; display: flex; justify-content: center; align-items: center; width: 220px; height: 75px; border-radius: 3px;}
.date_txt{float:left; font-weight: bold; text-align: left; align-items:flex-start}


.entry_btn a:hover{ background-color: #999; }
.entry_btn{float:right; margin:-95px 40px 0 0; background:#0099cc; line-height:150%; width:220px; height:75px;}
.ent_eng_btn2{display: none;}

#secondcontent{display: inline-block; margin:0 0 0 0; width:75%}

a.grid-item {
    background-color: #eee4;
    box-shadow: -5px -5px 10px 0px rgba(255, 255, 255, 0.5), 5px 5px 10px 0px rgba(0, 0, 0, 0.8);
	border:solid 0px;
	outline: 1px solid #eee4;
	outline-color: rgba(255, 255, 255, 0.8);
	outline-offset: 0px;
	text-shadow: none;
	/* -webkit-transition: all 1250ms cubic-bezier(0.19, 1, 0.22, 1); */
	/* transition: all 1250ms cubic-bezier(0.19, 1, 0.22, 1); */
	width: 100%;
	align-items: center;
    display: flex;
	padding: 20px 0;
}
a.grid-item:hover {
	/* border: 1px solid #eee4; */
	box-shadow: inset 0 0 20px rgba(255, 255, 255, 0.5), 0 0 20px rgba(255, 255, 255, 0.2);
	/* outline-color: rgba(255, 255, 255, 0.5); */
	/* outline-offset: 15px; */
	/* text-shadow: 1px 1px 2px #427388; */
}


a.sck_btn,a.khn_btn{
	font-size: 20px;
display: inline-block;
padding: 10px 20px;
background-color: #000099; 
color: #ffffff; 
border-radius: 5px;
text-align: center;
text-decoration: none; 
font-weight: bold; 
transition: background-color 0.3s; 
}

a.sck_btn:hover {
background-color: #3431e1;
color: #ffffff;
}

a.khn_btn{
background-color: #ff3399; 
}
a.khn_btn:hover {
background-color: #fa8435;
color: #ffffff;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-svg {
  font-weight: 700;
  line-height: 120px;

  width: 204px;
  height: 120px;
  padding: 0;

  cursor: pointer;
  text-decoration: none;

  background-color: transparent;
}

a.btn-svg svg {
  position: absolute;
  top: 0;
  left: 0;

  width: 100%;
  height: 100%;
}

a.btn-svg svg rect {
  -webkit-transition: all 400ms ease;
  transition: all 400ms ease;

  stroke: #000;
  stroke-width: 2;
  stroke-dasharray: 200px, 16px;
  stroke-dashoffset: 70px;
}

a.btn-svg:hover svg rect {
  stroke-dashoffset: 284px;
}

a.btn-svg span {
  color: #000;
  font-size: 25px;
}
.grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 2列 */
  /* grid-template-rows: 1fr 1fr;  */
  gap: 30px 30px; /* セル間ギャップ */
  justify-items: center;

}

.grid-item img {
  height: auto;
  margin: auto;
}
/* ウィンドウサイズが600px以下の場合 */
@media only screen and (max-width: 1000px) {
  .container{
    width: 100%;
  }
  .grid-container {
    grid-template-columns: 1fr; /* 1列にする */
    width: 100%;
  }
  .grid-item {
    max-width: 100%; 
    margin: auto;
  }
  .fourth_content {
    width: 100%;
  }
  .fourth_content p{
    font-size: 12px;
  }
}

@media screen and (max-width: 1000px) {
	.wrap{
width: 90%;
margin: 0 auto;
	}
}
