@charset "utf-8";
/* CSS Document */
/* リセット */
*,
*::before,
*::after {
box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}


/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
   scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* リセット */
/* デザイン */
#container{
padding: 0;
}
#header{
position: relative;
width: 100%;
margin: 20px 0;
}
#content{
clear: both;
max-width: 1024px;
margin: 0 auto;
}
#main_content{
background-image:url("../img/hosizora.png");
background-size: cover;
padding: 50px 15px 10px;
}
#main_content article{
background-color: rgba(255, 255, 255, 0.8);
border-radius: 15px;
padding: 20px;
}
h1{
background-color: rgba(255, 255, 255, 0.8);
border-radius: 15px;
padding: 10px;
margin: 20px 0 0 0;
text-align: center;
border: #f0810f 3px solid;
}
h2{
border-bottom: 2px solid #f0810f;
padding-left: 10px;
}
h3{
border-left: 5px solid #f0810f;
padding-left: 20px;
margin: 20px 0 0;
}
.lead{
}
.text{
}
p{
font-size: 120%;
word-wrap: break-word;
}
#content h2{

}
#content .se{
}
#content h3{
	line-height: 1.5em;
	padding: 2px 15px;
}
#footer{
background-color: #063852;
color: #f0810f;
}
.buttonin {
display: inline-block;
}
.buttoncol {
text-decoration: none;
color: #f0810f;
}
a button {
background-color: #3286DA;
border-radius: 5px;
border: 1px solid #f0810f;
margin: 15px;
padding: 10px 30px;
}


/*PC*/
@media screen and (min-width:769px){
#content{
clear: both;
padding: 0 40px;
}
#header{
	padding:0 40px;
    margin-top: 80px;
}
#access{
}
#content h1 {
}
#main_content{
}
article{
word-wrap: break-word;
}

#top{
padding: 5px;
max-width: 85%;
margin: 0 auto;
}
#about{
padding: 5px;
max-width: 90%;
margin: 0 auto;
}
#action{
padding: 5px;
max-width: 90%;
margin: 0 auto;

}
#opinion{
padding: 5px;
max-width: 90%;
margin: 0 auto;
}
#info{
padding: 5px;
max-width: 90%;
margin: 0 auto;
}
#info{
padding: 5px;
max-width: 90%;
margin: 0 auto;
}
#document{
padding: 5px;
max-width: 90%;
margin: 0 auto;
}
#main_content article {
 margin: 20px 0; 
}
#main_content article img {
}
#main_content article p{
line-height: 1.5em;
margin: 20px 5px;
}

#footer img{

}
}
/*スマホ*/
@media screen and (max-width:768px){
#content{
clear: both;
}
#access{
display: none;
}
#content h1{
	margin:100px;
	padding:0;
    border: #f0810f 5px solid;
}
#main_content{
}

#top{
max-width: 95%;
margin: 0 auto;
}
#about{
max-width: 95%;
margin: 0 auto;
}
#action{
max-width: 95%;
margin: 0 auto;
}
#opinion{
max-width: 95%;
margin: 0 auto;
}
#main_content article{
margin: 20px 0;
padding: 15px;
}
#main_content article p{
line-height: 1.5em;
margin: 20px 5px;
}
#main_content article img{

}
#footer img{
}
p img {
width: 100%;
height: auto;
}
}
/* 年表 */
.history_ul{
  margin: 3em auto;
  box-sizing:border-box;
}
.history_ul dt{
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing:border-box;
  font-weight: bold;
}
.history_ul dd{
  box-sizing:border-box;
}
@media screen and (min-width:769px){
.history_ul dl{
  width: 70%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  font-size: 110%;
  line-height: 1.4em;
}
.history_ul dt{
  width: 25%;
  margin:  0;
  padding: 0.8em 0.4em;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  border: 2px solid #FFFFFF;
  background-color: #f0810f;
}
.history_ul dd{
  width: 75%;
  padding: 0.8em 1.5em;
  margin: 0;
  border-bottom-right-radius: 5px;
  border-bottom: 2px solid #f0810f;
}
}
@media screen and (max-width:768px){
.history_ul dl{
	width: 100%;
	font-size: 110%;
	line-height: 1.4em;
}
.history_ul dt{
  padding: 0.4em;
  border-radius: 1em 1em 0 0;
  border: 2px solid #FF982D;
  background-color: #FF982D;
}
.history_ul dd{
  padding: 0.6em 1em;
  margin: 0 0 10px 0;
  border-radius: 0 0 1em 1em;
  border: 2px solid #FF982D;
  border-top:none;
  margin-bottom: 1.2em;
}
}

/* CSS Document */
/* hamburger */
#hamburger .btn-gNav{
  position: fixed;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 24px;
  z-index: 3;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: all 400ms;
  transition: all 400ms;
}

#hamburger .btn-gNav span{
  position: absolute;
  width: 100%;
  height: 4px;
  background: #f0810f;
  border-radius: 10px;
  -webkit-transition: all 400ms;
  transition: all 400ms;
}
#hamburger .btn-gNav span:nth-child(1) {
  top:0;
}
#hamburger .btn-gNav span:nth-child(2) {
  top:10px;
}
#hamburger .btn-gNav span:nth-child(3) {
  top:20px;
}
#hamburger .btn-gNav.open span:nth-child(1){
  background: #fff;
  top: 6px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}
#hamburger .btn-gNav.open span:nth-child(2),#hamburger .btn-gNav.open span:nth-child(3){
  top: 6px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}
ul{padding-inline-start:0px;}
#gNav.open{
  right: 0px;
}
#gNav .gNav-menu{
  width: 100%;
  height:100%;
  display: flex;
  flex-direction: column;
  text-align: center;
  /*justify-content: center;*/
}
#gNav .gNav-menu li{
  display: block;
  padding : 20px 15px;
}
#gNav .gNav-menu li a{
  color: #f0810f;
  text-decoration: none;
}
/*ハンバーガースマホ画角*/
@media screen and (min-width:769px){
#gNav{
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  background: #063852;
  font-size: 15px;
  font-weight: bold;
  box-sizing: border-box;
  z-index: 2;
  padding-top: 50px;
  transition: .3s;
  opacity: 0.9;
}

#gNav li{
white-space: nowrap;
}
  .btn-gNav{
    display: none;
  }
  #gNav{
    position: fixed;
    top: 0;
    right: 0;
    height: 50px;
  }
  #gNav .gNav-menu{
    display: flex;
    justify-content:space-around;
    flex-direction: row;
    width: 100%;
    height: 50px;
    position: fixed;
    top: 0;
    right: 0;
    padding-left: 0px;
  }
#gNav .gNav-menu li{
    padding-top: 5px;
  }
}
@media screen and (max-width:768px){
#gNav{
  position: fixed;
  top: 0;
  right: -80%;
  width: 70%;
  height: 100%;
  background: #063852;
  font-size: 16px;
  font-weight: bold;
  box-sizing: border-box;
  z-index: 2;
  padding-top: 50px;
  transition: .3s;
  opacity: 0.9;
}
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}