@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.0/font/bootstrap-icons.css");
html {
  font-size: 16px;
}
body {
    margin: 0;
    display: flex;
    flex-flow: column;
    min-height: 100vh;
    font-family: 'Noto Sans JP', san-serif;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #222;
}

main{
    flex: 1;
}

a, a:visited {
	color: #222;
}
a:hover {
	color: /*#20afe4*/#751c77;
}
.font_bold {
    font-weight: 700;
}
span.aks {
    display: inline-block;
}
/*.font_blue, a.font_blue, a.font_blue:visited {
	color: #0086d1;
}*/
a.font_blue:hover {
	color: #2246ac;
}
.font_orange {
	color: #ed6a00;
}
.font_green {
	color: #415b2e;
}
.font_white{
	color: #fff !important;
}

.t-c{
    text-align: center
}

/** header **/
#header {
	font-size: 12px;
	transition: all .4s;
}
#header.header_up { /* 余裕があったら */
	transform: translateY(-110px);
}
#header .container-fluid > div > * {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
}
#header .h1, #header .navbar-brand {
	font-size: 1rem;
}
#header a, #header a:visited {
	
}
.navbar-brand {
	max-width: calc(100% - 140px);
	margin-right: 0;
}
.navbar-brand img {
	height: auto;
}

.bg-white{

}

.bg-back-color{
    background: white;
    width: 100%;
}

.title_logo{

}

.navbar-light .navbar-toggler {
	font-size: 1.7rem;
	border: none;
	box-shadow: none;
	transition: all .8s;
	top: 1.5rem;
	right: 0.5rem;
	padding: 0;
}
.navbar-light .navbar-toggler-icon {
	/*background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");*/
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28117,28,119,1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
	 transition: all .8s;
}
.navbar-light .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	/*background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M6 6L 24 24M24 6L6 24'/%3E%3C/svg%3E");*/
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(117,28,119,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M6 6L 24 24M24 6L6 24'/%3E%3C/svg%3E");
	 transition: all .8s;
}
#navbar .navbar-nav {
    background-color: #e5d9e7/*#0086d1*/;
}
#navbar .menu-item {
	padding: 0.2rem 1rem;
	background-color: #fff;
	margin: 0.5rem;
	border-radius: 4px;
}
#navbar .menu-item:hover .dropdown-menu, #navbar .menu-item:hover .dropdown-menu .menu-item {
	background-color: rgba( 195,234,251,1);
}
#navbar .nav-link {
	color: #222;
	font-size: 1.2rem;
}
#navbar .dropdown-menu {
	border: none;
	border-top: solid 1px #222;
	border-radius: 0;
}
#navbar .dropdown-menu .menu-item {
	padding: 0.1rem 1rem;
	margin: 0;
}
/** main **/
#main {
    margin-top: 63px;
}
/** footer **/
#footer {
	background: linear-gradient(180deg,#751c7791 20%,#751c779c 25%,#751c77 100%);
	color: #fff;
}
#footer .menu-item a, #footer .menu-item a:visited, #footer .menu-item a[aria-current="page"] {
	color: #fff;
}
#footer .d-none.d-md-block.menu-item {
	display: none!important;
}
#footer .dropdown-menu {
	display: block;
	background-color: transparent;
	position: relative;
	border: none;
	padding-left: 1rem;
}
#footer .dropdown-menu a {
	padding: 0 0 0.5rem 1rem;
}
#footer .dropdown-menu a:before {
	content: '-';
}
#footer > .container > .row ul.menu {
	display: block;
}

/* frontpage */
#main_slider_outer {
	background-color: #61c1be;
}
#main_slider .slide_img {
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	height: 40vh;
}
.slick-arrow{
	position: absolute;
	display: block;
	z-index:2!important;
	top: 45%;
	color: #9fa0a0;
	background-color: transparent;
	border: none;
	font-size: 6vw;
	padding: 0;
}
.slick-next{
    right:0!important;
}
.slick-prev{
	left:0!important;
}
.slider_message {
	left: 50%;
	transform: translateX(-50%);
	width: 90%;
	transition: all .8s;
	text-shadow: 1px 1px 1px #fff, -1px -1px 1px #fff,-1px 1px 1px #fff,1px -1px 1px #fff;
	position: relative;
	font-size: 1.2rem;
}
.slide_cap p {
	color: #fff;
	text-shadow: 0 0 1px #000, 0 0 3px #000;
}
.slide_cap {
	opacity: 0;
	transition: all 1s 1s;
	transform: translate(-2em);
	padding-left: 5vw;
}
.slick-active .slide_cap {
	opacity: 1;
	transform: translate(0);
	transition: all 1s 1s;
}

.slick-dots{
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  padding: 1rem 0rem 1.3rem 0rem;
}
.slick-dots li{
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button{
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus{
  outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before{
  opacity: 1;
}
.slick-dots li button:before{
  font-family: 'slick';
  font-size: 20px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '□';
  text-align: center;
  /*opacity: .25;*/
  color: #fff;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before{
  opacity: .75;
  color: #730075;
  background: #710074
}


.frontpage h2 {
	font-size: 1.5rem;
}
#topics, #power {
	max-width: 980px;
	margin: 0 auto;
}
.power_inner {
	border: solid 2px #52abe1;
}

.power_title {
	border-bottom: solid 2px #52abe1;
}

.news_block{
    display: inline-table;
    width: 100%;
}

.topics_p{
    padding: 1rem
}

.topics_title{
    background: #751c77;
}
.topics_post,
.power_desc:not(:last-child), .power_desc:not(:last-child) {
	border-bottom: solid 2px #000;
}
.topics_post .post-date/*, .power_desc_title*/ {
	width: 200px;
}

.topics_post{
   height: 20%;
}
.power_desc .row {
    max-width: 750px;
    margin: 0 auto;
}
.power_amount {
    height: fit-content;
    align-self: center;
}
.topics_post.space {
	height: 58px;
}
.power_amount {
	background-color: #222;
	color: #fff100;
}
.banner_t{
    text-align: center
}

.banner_block{
    text-align: center;
    margin: 1rem 0 0 0;
}

.banner_erea{
    margin: 2rem 0 0 0
}


/* pages */
.w_960 {
	max-width: 960px;
	margin: 0 auto;
}
h1.page_title, h2.page_title {
color: #000;
    border-bottom: solid 3px #751c77;
    display: inline-block;
    font-size: 2rem;
    width: 100%;
}

.map {
	height: 0;
	overflow: hidden;
	padding-bottom: 75%;
	position: relative;
}
.map iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

.koki_td_1{
        width: 30%
}

.kensetu_box{
    margin: 0 0 1rem 0
}

.kensetu_img_box{
text-align: center;
    display: grid;
    row-gap: 3rem
}

.sisetu_box{
    margin: 1rem 0
}

.sisetu_img{
    width: 100%;
    max-width: 800px;
}

.sisetu_img_box{
    text-align: center
}

.table_sisetu {
    border: solid 1px;
    text-align: center;
    max-width: 800px;
    width: 100%;
    margin: auto;
}
.table_sisetu tr {
	border: solid 1px;
}
.table_sisetu th {
	background-color: #FFE599/*#52abe1*/;
	padding: 0.3rem;
        border: solid 1px;
}
.table_sisetu td {
        border: solid 1px;
	padding: 0.3rem;
}

.access_box{
    text-align: center
}

.access_link_box{
margin: 1rem 0;
    text-align: center;
    font-size: 1.5rem;
}

.access_link_text{
color: #0075C2 !important
}

.samune_wrapper iframe{
    width: 380px;
    height: 300px;
}

.img_flame{
      width: 380px;
    height: 300px;  
}

.samune_wrapper{
   width: 380px;
    height: 300px;
}

.report-title{
font-size: 1.5rem;
    width: 100%;
    border-bottom: solid 2px
}

.report_post{
    position: relative;
    width: 100%
}

.report-date{
position: absolute;
    bottom: 0;
    right: 0;
    text-align: end;
}

.VideoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
 
.VideoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.h_nav{
    padding: 1rem 0
}

.topics_title_c{
    text-align: center;
    border-bottom: solid #751c77;
    padding: 0 0 1rem 0;
}

.topics_movie_box{
    max-width: 600px;
    margin: auto;
}

.kensetsuimg{
    max-width: 380px;
}
        
.yearly-list li {
list-style: none;
    width: 120px;
    padding: 0.5rem 1rem;
    background-color: #e5d9e7;
    margin: 0.5rem 1rem 0.5rem 0;
}
.nav_links .btn.btn-secondary.btn-lg {
	background-color: transparent;
	border: none;
	font-size: 1.1rem;
}
.nav_links .btn.btn-secondary.btn-lg:hover {
	background-color: transparent;
	border: none;
	color: #0086d1;
}

.pdf_btn, a.pdf_btn {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 1rem 1.5rem;
    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;
    color: #fff;
    border-radius: 0.5rem;
    margin: 1rem 0 0;
    overflow-wrap: anywhere;
    background: linear-gradient(180deg,#751c7791 20%,#751c779c 25%,#751c77 100%);
}

.p-2 {
    padding: 1rem 1rem 1.5rem 1rem !important;
}

/* move */
.move {
    transition: all .8s ease-in-out;
    transform: translateX(-20vw) scale(0.1);
    opacity: 0;
}
.move.active {
    transition: all .8s;
    transform: translateX(0) scale(1);
    opacity: 1;
}

/**
メディアクエリ
 */
 @media all and (max-width: 350px) { /* 調整 */
     html {
         font-size: 14px;
     }
     .navbar-light .navbar-toggler {
         top: 1.8rem;
     }

 }
 
  @media all and (max-width: 400px) { /* 調整 */
    .navbar-brand {
    font-size: 0.9rem !important;
}
 }
 
 @media all and (max-width: 400px) { /* 調整 */
     .img_flame{
         max-width: 330px;
         max-height: 300px
     }
    
     
 }
 
@media all and (max-width: 767px) { /* 調整 */
      .samune_wrapper{
    width: 100%;
    text-align: center
}
}
 
@media all and (min-width: 576px) {
	html {
		font-size: 16px;
	}
	#header {
		font-size: 16px;
	}
	#header .h1, #header .navbar-brand {
		font-size: 1.5rem;
	}
	.navbar-light .navbar-toggler {
		top: 2.5rem;
		right: 1.1rem;
	}
	.fit_img {
		top: 0.5rem;
		right: 3rem;
		width: 60px;
	}
	#main {
		margin-top: 90px;
	}
        
        	.br::before {
		content: "\A" ;
		white-space: pre ;
	}

	/* frontpage */
	#main_slider::after {
		width: 108px;
		height: 156px;
	}
	.topics_post.space {
		height: 42px;
	}
	
	/* pages */
.bg_p {
	background-color: #61c1be;
        /*height: 100%;*/
        height: 70px
}

.kensetsuimg{
    min-width: 500px;
}


        
        
}
@media all and (min-width: 768px) {
	#header .bg-white {
		border-bottom: none;
	}
	.fit_img {
		top: 0.6vw;
		right: 0.75rem;
		width: 70px;
	}
    #navbar {
        width: 100%;
        margin-top: 0.5rem;
	}
	#navbar .navbar-nav {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
        width: 100%;
        margin: 1rem 0 0 0;
	}
	#navbar .navbar-nav > .menu-item {
		/*height: fit-content;*/
		font-size: 1.2rem;
        padding: 0.7rem 0.2rem;
        margin: 0;
        background-color: #fff;
        width: calc(100% / 6);
        text-align: center;
        border-left: 1px solid #61c1be;
        border-radius: 0;
        flex-grow: 1;
	}
	#navbar .navbar-nav > .menu-item:last-child {
		border-right: 1px solid #61c1be;
		padding: 0.7rem 0.15rem;
	}
        /*
	#navbar .navbar-nav > .menu-item:hover, #navbar .navbar-nav > .menu-item.current_page_item {
		background-color: #98d6f6;
	}
        */
	#navbar .navbar-nav > .menu-item:last-child > a {
		padding-left: 0;
		padding-right: 0;
		letter-spacing: -1px;
	}
    #navbar .navbar-nav > .menu-item a {
		padding-top: 0;
		padding-bottom: 0;
		line-height: 1;
    }
	/*#navbar .navbar-nav > .menu-item:hover a, #navbar .navbar-nav > .menu-item.current_page_item a {
		color: #2246ac;
	}*/
	#navbar .dropdown-menu {
		display: block;
	}
	#navbar li.d-none.d-md-block {
		pointer-events: none;
		opacity: 0;
	}
	#main {
		margin-top: 130px;
	}
	#footer > .container > .row ul.menu {
		display: flex;
	}

	/* frontpage */
	#main_slider .slide_img {
		height: 55vw;
	}
	.slick-arrow {
		font-size: 5rem;
		top: 35%;
	}
	.slick-next{
		right:-2.5rem!important;
	}
	.slick-prev{
		left:-2.5rem!important;
	}
	.slider_message {
		position: absolute;
		top: 8vw;
		background-color: rgba(255,255,255,0.6);
		max-width: 700px;
		line-height: 1.7;
	}
	.topics_title a {
position: absolute;
    /* top: 0.6rem; */
    right: 0rem;
    bottom: 0;
    left: 5rem;
    width: 100%;
	}
        
        .sinchaku_font{
            width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
        }
	
	/* pages */
        
        .topics_inner{
            display: flex;
        }
        
        .topics_title {
            min-width: 280px;
            min-height: 280px;
            margin: 0 1rem 0 0;
}

.report_box{
    display: flex
}
}

@media all and (min-width: 900px) {
	/* frontpage */
.banner_box{
    display: flex;
    justify-content: center;
}

.banner_block{
    margin: 0 0.5em 0 0;
}

.banner_size{
    max-width: 260px
}
}




@media all and (min-width: 992px) {
	/* frontpage */
	.slider_message {
		font-size: 1.4rem;
		max-width: 800px;
	}
	/* pages */
	.shorikoutei img {
		height: 200px;
		width: auto;
	}
	.blue_box > div > div:last-child {
		min-width: 350px;
	}
        
        .kensetu_img_box{
    display: flex
}

}
@media all and (min-width: 1200px) {
	#header .h1, #header .navbar-brand {
		font-size: 2.2rem;
	}
	.fit_img {
		width: 85px;
	}
	#main {
		margin-top: 125px;
    }
	
	/* frontpage */
	#main_slider .slide_img {
		height: 700px;
	}
	.slick-arrow {
		top: 40%;
	}
	
	/* pages */
	.shorikoutei img {
		height: 250px;
		width: auto;
	}
}
@media all and (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
		max-width: 1140px;
	}
}

