@charset "UTF-8";
/* CSS Document */
body{
	background: url("../images/bg.jpg");
	background-repeat: repeat-y, no-repeat;
	background-position: center top, center center;
	background-size: cover;
	font-size: 16px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.75;
}
a{
	text-decoration: none;
}
a:hover{
	opacity: 0.8;
}
/*------------------------

  common

------------------------*/
.mt10{margin-top: 10px;} .mt20{margin-top: 20px;} .mt30{margin-top: 30px;} .mt40{margin-top: 40px;} .mt50{margin-top: 50px;} .mt60{margin-top: 60px;} .mt70{margin-top: 70px;} .mt80{margin-top: 80px;} .mt90{margin-top: 90px;} .mt100{margin-top: 100px;}
.mb10{margin-bottom: 10px;} .mb20{margin-bottom: 20px;} .mb30{margin-bottom: 30px;} .mb40{margin-bottom: 40px;} .mb50{margin-bottom: 50px;} .mb60{margin-bottom: 60px;} .mb70{margin-bottom: 70px;} .mb80{margin-bottom: 80px;} .mb90{margin-bottom: 90px;} .mb100{margin-bottom: 100px;}
.mr10{margin-right: 10px;} .mr20{margin-right: 20px;} .mr30{margin-right: 30px;} .mr40{margin-right: 40px;} .mr50{margin-right: 50px;} .mr60{margin-right: 60px;} .mr70{margin-right: 70px;} .mr80{margin-right: 80px;} .mr90{margin-right: 90px;} .mr100{margin-right: 100px;}
.ml10{margin-left: 10px;} .ml20{margin-left: 20px;} .ml30{margin-left: 30px;} .ml40{margin-left: 40px;} .ml50{margin-left: 50px;} .ml60{margin-left: 60px;} .ml70{margin-left: 70px;} .ml80{margin-left: 80px;} .ml90{margin-left: 90px;} .ml100{margin-left: 100px;}

.pt10{padding-top: 10px;} .pt20{padding-top: 20px;} .pt30{padding-top: 30px;} .pt40{padding-top: 40px;} .pt50{padding-top: 50px;} .pt60{padding-top: 60px;} .pt70{padding-top: 70px;} .pt80{padding-top: 80px;} .pt90{padding-top: 90px;} .pt100{padding-top: 100px;}
.pb10{padding-bottom: 10px;} .pb20{padding-bottom: 20px;} .pb30{padding-bottom: 30px;} .pb40{padding-bottom: 40px;} .pb50{padding-bottom: 50px;} .pb60{padding-bottom: 60px;} .pb70{padding-bottom: 70px;} .pb80{padding-bottom: 80px;} .pb90{padding-bottom: 90px;} .pb100{padding-bottom: 100px;}
.pr10{padding-right: 10px;} .pr20{padding-right: 20px;} .pr30{padding-right: 30px;} .pr40{padding-right: 40px;} .pr50{padding-right: 50px;} .pr60{padding-right: 60px;} .pr70{padding-right: 70px;} .pr80{padding-right: 80px;} .pr90{padding-right: 90px;} .pr100{padding-right: 100px;}
.pl10{padding-left: 10px;} .pl20{padding-left: 20px;} .pl30{padding-left: 30px;} .pl40{padding-left: 40px;} .pl50{padding-left: 50px;} .pl60{padding-left: 60px;} .pl70{padding-left: 70px;} .pl80{padding-left: 80px;} .pl90{padding-left: 90px;} .pl100{padding-left: 100px;}

@media screen and (max-width: 767px) {
.mt10{margin-top: 5px;} .mt20{margin-top: 10px;} .mt30{margin-top: 15px;} .mt40{margin-top: 20px;} .mt50{margin-top: 25px;} .mt60{margin-top: 30px;} .mt70{margin-top: 35px;} .mt80{margin-top: 40px;} .mt90{margin-top: 45px;} .mt100{margin-top: 50px;}
.mb10{margin-bottom: 5px;} .mb20{margin-bottom: 10px;} .mb30{margin-bottom: 15px;} .mb40{margin-bottom: 20px;} .mb50{margin-bottom: 25px;} .mb60{margin-bottom: 30px;} .mb70{margin-bottom: 35px;} .mb80{margin-bottom: 40px;} .mb90{margin-bottom: 45px;} .mb100{margin-bottom: 50px;}
.mr10{margin-right: 5px;} .mr20{margin-right: 10px;} .mr30{margin-right: 15px;} .mr40{margin-right: 20px;} .mr50{margin-right: 25px;} .mr60{margin-right: 30px;} .mr70{margin-right: 35px;} .mr80{margin-right: 40px;} .mr90{margin-right: 45px;} .mr100{margin-right: 50px;}
.ml10{margin-left: 5px;} .ml20{margin-left: 10px;} .ml30{margin-left: 15px;} .ml40{margin-left: 20px;} .ml50{margin-left: 25px;} .ml60{margin-left: 30px;} .ml70{margin-left: 35px;} .ml80{margin-left: 40px;} .ml90{margin-left: 45px;} .ml100{margin-left: 50px;}

.pt10{padding-top: 5px;} .pt20{padding-top: 10px;} .pt30{padding-top: 15px;} .pt40{padding-top: 20px;} .pt50{padding-top: 25px;} .pt60{padding-top: 30px;} .pt70{padding-top: 35px;} .pt80{padding-top: 40px;} .pt90{padding-top: 45px;} .pt100{padding-top: 50px;}
.pb10{padding-bottom: 5px;} .pb20{padding-bottom: 10px;} .pb30{padding-bottom: 15px;} .pb40{padding-bottom: 20px;} .pb50{padding-bottom: 25px;} .pb60{padding-bottom: 30px;} .pb70{padding-bottom: 35px;} .pb80{padding-bottom: 40px;} .pb90{padding-bottom: 45px;} .pb100{padding-bottom: 50px;}
.pr10{padding-right: 5px;} .pr20{padding-right: 10px;} .pr30{padding-right: 15px;} .pr40{padding-right: 20px;} .pr50{padding-right: 25px;} .pr60{padding-right: 30px;} .pr70{padding-right: 35px;} .pr80{padding-right: 40px;} .pr90{padding-right: 45px;} .pr100{padding-right: 50px;}
.pl10{padding-left: 5px;} .pl20{padding-left: 10px;} .pl30{padding-left: 15px;} .pl40{padding-left: 20px;} .pl50{padding-left: 25px;} .pl60{padding-left: 30px;} .pl70{padding-left: 35px;} .pl80{padding-left: 40px;} .pl90{padding-left: 45px;} .pl100{padding-left: 50px;}
}

/*----------コンテンツ 背景高さ----------*/
.container{max-width: 1200px;}
@media screen and (min-width: 768px) {
  section.bg-white{
    min-height: 780px;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  section.bg-white{
    min-height: 850px;
    height: auto;
  }
}

/*------------------------

  wrap

------------------------*/
.all-wrap{padding: 30px;max-width: 1300px;margin: auto;}
.wrap{
	background-color: #fff;
	height: auto;
	margin: 0 auto;
	position: relative;
}

@media screen and (max-width: 767px) {
.all-wrap{padding: 15px;}
}

/*------------------------

  header

------------------------*/
.top-gradiation{
	background:linear-gradient(90deg, #AFD134, #63C676 10%, #63C676 20%, #3B77AD 30%, #8B4E9B 40%, #D14F99 50%, #D14F99 60%, #EC8443 70%, #F2AF20 80%, #EAC224);
	height: 8px;
	width: 100%;
}
header {
  width: 100%;
  height: auto;
  overflow: hidden;
  top: 0;
  left: 0;
  z-index: 999;
}

@media screen and (min-width: 768px) {
  header h1 {
    width: 100%;
    display: inline;
	padding: 20px 0 20px 20px;
    position: relative;
    top: 10px;
  }
  header h1 img {
    max-width: 550px;
  }
  header h1.logo-sp{
	display: none;  
  }
  header .nav-header .nav-bgarea {
    display: none;
  }
  header .nav-header {
    padding: 10px 0;
    display: inline-block;
  }
  header .nav-header ul {
    list-style-type: none;
  }
  header .nav-header ul li {
    display: inline-block;
    padding: 0.5rem;
  }
  header .nav-header ul li a {
    color: #ffffff;
    text-decoration: none;
    position: relative;
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .top-gradiation{
	height: 4px;
  }
  header h1 {
    width: 20%;
	display: inline;
    padding: 10px 0 10px 15px;
  }
  header h1 img {
    max-width: 115px;
  }
  header h1.logo-pc{
	display: none;  
  }
  header .nav-header {
    position: fixed;
    display: none;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 99998;
    background-color: #fff;
  }
  header .nav-header .nav-bgarea {
    width: 100%;
    height: 100vh;
    background-image: url("");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center bottom;
    background-blend-mode: color;
    background-color: rgba(255, 255, 255, 0.9);
  }
  header .nav-header nav {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    width: 100%;
    padding: 0 12%;
    box-sizing: border-box;
    overflow: hidden;
    clear: both;
    line-height: 1;
  }
  header .nav-header nav ul {
    list-style-type: none;
  }
  header .nav-header nav ul li {
    padding: 1rem;
    font-size: 1.0rem;
    width: 100%;
    float: left;
	position: relative;
  }
  header .nav-header nav ul.delayScroll li::before {
    content: "〉";
  }
  header .nav-header nav ul.delayScroll a {
    color: #000;
    text-decoration: none;
  }
}
/*---  ナビゲーション btn---*/
@media screen and (max-width: 767px) {
  header .nav-header ul.nav-btn{
	display:flex;
 	justify-content:center;
	width:100%;
  }
header .nav-header nav ul.nav-btn li {
    font-size: 16px;
	padding: 0.5rem;
  }
  header .nav-header nav ul.nav-btn a{
    width: 100%;
	text-align: center;
	font-weight: bold;
	margin: 0 5px;
	display: block;
  }
  header .nav-header ul.nav-btn li a{
    text-decoration: none;
  }
  header .nav-header ul.nav-btn li.kaiin-btn{
	color: #fff;
	background-color: #006699;
	border: solid 2px #006699;
	border-radius: 2em;
	}
  header .nav-header ul.nav-btn li.sanjo-btn{
	color: #006699;
	background-color: #fff;
	border: solid 2px #006699;
	border-radius: 2em;
}
}

/*----------ハンバーガーアイコン----------*/
@media screen and (max-width: 767px) {
  .hamburger {
    position: fixed;
    display: block;
    width: 35px;
    height: 30px;
    top: 34px;
    right: 25px;
    z-index: 99999;
    transition: all .4s;
    box-sizing: border-box;
    cursor: pointer;
  }
  .hamburger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    position: absolute;

    left: 0;
    width: 100%;
    height: 3px;
    background-color: #D9D9D9;
    margin: 0 auto;
  }
  .hamburger span:nth-of-type(1) {
    top: 3px;
    webkit-animation: menu-ber01 .75s forwards;
    animation: menu-ber01 .75s forwards;
  }
  .hamburger span:nth-of-type(2) {
    top: 13px;
    transition: all .25s .25s;
    opacity: 1;
  }
  .hamburger span:nth-of-type(3) {
    bottom: 4px;
    -webkit-animation: menu-ber02 .75s forwards;
    animation: menu-ber02 .75s forwards;
  }
  .active span:nth-of-type(1) {
    -webkit-animation: active-menu-ber01 .75s forwards;
    animation: active-menu-ber01 .75s forwards;
    background-color: #D9D9D9;
	top: -5px;
  }
  .active span:nth-of-type(2) {
    opacity: 0;
  }
  .active span:nth-of-type(3) {
    -webkit-animation: active-menu-ber03 .75s forwards;
    animation: active-menu-ber03 .75s forwards;
    background-color: #D9D9D9;
  }
}
  @-webkit-keyframes menu-ber01 {
    0% {-webkit-transform: translateY(8px) rotate(45deg);}
    50% {-webkit-transform: translateY(8px) rotate(0);}
    100% {-webkit-transform: translateY(0) rotate(0);}
  }
  @keyframes menu-ber01 {
    0% {transform: translateY(13px) rotate(45deg);}
    50% {transform: translateY(13px) rotate(0);}
    100% {transform: translateY(0) rotate(0);}
  }
  @-webkit-keyframes menu-ber02 {
    0% {-webkit-transform: translateY(-15px) rotate(-45deg);}
    50% {-webkit-transform: translateY(-15px) rotate(0);}
    100% {-webkit-transform: translateY(0) rotate(0);}
  }
  @keyframes menu-ber02 {
    0% {transform: translateY(-15px) rotate(-45deg);}
    50% {transform: translateY(-15px) rotate(0);}
    100% {transform: translateY(0) rotate(0);}
  }
  @-webkit-keyframes active-menu-ber01 {
    0% {-webkit-transform: translateY(0) rotate(0);}
    50% {-webkit-transform: translateY(13px) rotate(0);}
    100% {-webkit-transform: translateY(13px) rotate(45deg);}
  }
  @keyframes active-menu-ber01 {
    0% {transform: translateY(0) rotate(0);}
    50% {transform: translateY(13px) rotate(0);}
    100% {transform: translateY(13px) rotate(45deg);}
  }
  @-webkit-keyframes active-menu-ber03 {
    0% {-webkit-transform: translateY(0) rotate(0);}
    50% {-webkit-transform: translateY(-15px) rotate(0);}
    100% {-webkit-transform: translateY(-15px) rotate(-45deg);}
  }
  @keyframes active-menu-ber03 {
    0% {transform: translateY(0) rotate(0);}
    50% {transform: translateY(-15px) rotate(0);}
    100% {transform: translateY(-15px) rotate(-45deg);}
  }



/*---  header 2段目 ---*/
header .header-two-wrap{
    background: #006699;
    height: auto;
    top: 46px;
	overflow: hidden;
	clear: both;
}
header #navbarNavAltUnderup .nav-header{
	display: inline;
	padding-right: 30px;
}

@media screen and (min-width:768px){
header #navbarNavAltUnderup .nav-header {
    display: block;
	text-align: right;
}
}

@media screen and (max-width:767px){
header #navbarNavAltUnderup {
    display: none;
}
}
	
/*---  会員 賛助会員 btn ---*/
header #kaiin-btn{
	display:  inline-block;
	float: right;
}
header #kaiin-btn button{
	width: 100px;
	font-size: 14px;
}
header #kaiin-btn button.kaiin{
	color: #fff;
	background-color: #006699;
	border: solid 1px #006699;
	border-radius: 2em;
}
header #kaiin-btn button.sanjo{
	color: #006699;
	background-color: #fff;
	border: solid 1px #006699;
	border-radius: 2em;
}
header #kaiin-btn button a{
	display: block;
}
@media screen and (min-width:768px){
header #kaiin-btn{
	padding-right: 30px;
	margin-bottom: 10px;
}
header #kaiin-btn button:first-child {
	margin-bottom: 10px;
}
header #kaiin-btn button.kaiin{
	display: block;
}
}

@media screen and (max-width:767px){
header #kaiin-btn{
	padding-right: 55px;
}
}

@media (min-width:376px) and (max-width:767px){
header #kaiin-btn button{
	width: 70px;
	font-size: 0.7rem;
}
}

@media screen and (min-width:960px){
header #kaiin-btn button{
	width: 145px;
}
}
@media screen and (max-width:959px){
header #kaiin-btn button span{
	display: none;
}
}
@media screen and (max-width:375px){
header #kaiin-btn button{
	width: 68px;
	font-size: 2.5vw;
}
}

/*------------------------

  footer

------------------------*/
footer{
	border-top: dotted 2px #ededed;
	text-align: right;
	background-color: #fff;
	padding: 0 15px;
}
footer p{
	padding: 15px 0;
}
@media screen and (min-width:767px){
footer p{
	padding-right: 15px;
	padding-left: 15px;
}	
}
@media screen and (max-width:767px){
footer p{
	font-size: 12px;
	padding: 15px 0;
}
footer .container{
	padding: 0;
}
}
	