@charset "UTF-8";
/* =====================
  reset
===================== */
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align:baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
	border-style: none;
	background-color: ;
}

article, header, footer, aside, figure, figcaption, nav, section { 
  display:block;
}

body {
  font-family:'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
  color: #000;
  font-size: 16px;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
	text-align:center;
}

ol, ul {
  list-style: none;
  list-style-type: none;
}

img {
	border: 0;
  vertical-align: top;
  max-width: 100%;
  line-height: 1;
  font-size: 0;
}

/* =====================
  header
===================== */
#Wrap { 
	width: 100%;
	background-color: #fff;
	position: absolute;
	text-align: center;
}
@media screen and (max-width:750px) {
/*スマホ用のcssを記述*/
#Wrap .inner_sp { 
	width: 100%;
	position: relative;
	text-align:center;
	margin: 0 auto;
}
#Wrap .inner_sp .obi { 
	width: 100%;
	background-color: #CF0015;
	position: relative;
	text-align: center;
	margin: 0;
}
#Wrap .inner_sp .obi .box { 
	width: 100%;
	position: relative;
	text-align: center;
	margin: 0 auto;
	padding: 10px 0;
}
#Wrap .inner_sp .obi .logo { 
	width: 98%;
	text-align: center;
	margin: 0 auto;
}
#Wrap .inner { 
	display: none;
}
#Wrap .inner .obi { 
	display: none;
}
#Wrap .inner .obi .box { 
	display: none;
}
#Wrap .inner .obi .logo { 
	display: none;
}
/* =====================
  navi
===================== */
.nav_sp {
  width: 100%;
	background-color: #CF0015;
}
.nav_sp ul {
  text-align: center;
	list-style: none;
}
.nav_sp ul li {
  display: inline-block;
	padding: 15px 25px;
	font-size: 90%;
	letter-spacing: 0.2em;
  width: ;  /* 任意のwidth */
}
.nav_sp ul li a {
  text-decoration: none;
  color: #fff;
  text-align: center;
  font-weight: demi-bolder;
}
.nav_sp ul li a:hover {
  color: #FF3;
}
.nav {
  display: none;
}
.nav ul {
  display: none;
}
.nav ul li {
  display: none;
}
.nav ul li a {
  display: none;
}
.nav ul li a:hover {
  display: none;
}
/* =====================
  main
===================== */
#Wrap .main {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	z-index: 1;
}
#Wrap .sub {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0px 30px 30px 30px;
	text-align: center;
	z-index: 1;
}
#Wrap .sub2 {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0px 30px 40px 30px;
	text-align: center;
	z-index: 1;
}
.lead {
  padding: 40px 30px 30px 30px;
  text-decoration: none;
  color: #333;
  margin: ;
  text-align: center;
	line-height: 1.4;
  font-size: 115%;
  font-weight: bolder;
}
.lead2 {
  padding: 10px 30px 10px 30px;
  text-decoration: none;
  color: #CF0015;
  text-align: center;
	line-height: 1.4;
  font-size: 90%;
  font-weight: bolder;
}
.cap {
  padding: 0 30px 30px 30px;
  text-decoration: none;
  color: #333;
  text-align: center;
	line-height: 1.3;
  font-size: 70%;
}
.nav_footer {
  width: 100%;
}
.nav_footer ul {
  text-align: center;
	list-style: none;
}
.nav_footer ul li {
  display: inline-block;
	padding: 30px 20px 20px;
	font-size: 80%;
	letter-spacing: 0.2em;
  width: ;  /* 任意のwidth */
}
.nav_footer ul li a {
  text-decoration: none;
  color: #fff;
  text-align: center;
  font-weight: demi-bolder;
}
.nav_footer ul li a:hover {
  color: #fff;
	font-weight: demi-bolder;
}
.ad_sp {
  padding: 20px 0 20px 35px;
  text-decoration: none;
  color: #fff;
  text-align: left;
	line-height: 1.6;
  font-size: 80%;
}
.ad {
  display: none;
}
}
   
@media only screen and (min-width:640px) and (max-width:1023px) {
/*tablet用のcssを記述*/
}
  
@media screen and (min-width:751px) {
/*pc用のcssを記述*/
#Wrap .inner { 
	width: 100%;
	position: relative;
	text-align:center;
	margin: 0 auto;
}
#Wrap .inner .obi { 
	width: 100%;
	background-color: #CF0015;
	position: relative;
	text-align: center;
	margin: 0;
}
#Wrap .inner .obi .box { 
	width: 100%;
	background-color: ;
	position: relative;
	text-align: center;
	margin: 0 auto;
	padding: 5px 0;
}
#Wrap .inner .obi .logo { 
	width: 100%;
	max-width: 1100px;
	text-align: center;
	margin: 0 auto;
}
#Wrap .inner_sp { 
	display: none;
}
#Wrap .inner_sp .obi { 
	display: none;
}
#Wrap .inner_sp .obi .box { 
	display: none;
}
#Wrap .inner_sp .obi .logo { 
	display: none;
}
/* =====================
  navi
===================== */
.nav {
  width: 100%;
}
.nav ul {
  text-align: center;
	list-style: none;
}
.nav ul li {
  display: inline-block;
	padding: 15px 40px;
	letter-spacing: 0.2em;
  width: ;  /* 任意のwidth */
}
.nav ul li a {
  text-decoration: none;
  color: #333;
  width: ; 
  margin: ;
  text-align: center;
  font-size: 100%;
  font-weight: demi-bolder;
}
.nav ul li a:hover {
  color: #CF0015;
	font-weight: bolder;
}
.nav_sp {
  display: none;
}
.nav_sp ul {
  display: none;
}
.nav_sp ul li {
  display: none;
}
.nav_sp ul li a {
  display: none;
}
.nav_sp ul li a:hover {
  display: none;
}
/* =====================
  main
===================== */
#Wrap .main {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	z-index: 1;
}
#Wrap .sub {
	position: relative;
	width: 100%;
	max-width: 860px;
	margin: 0 auto;
	padding: 0 30px 30px 30px;
	text-align: center;
	z-index: 1;
}
#Wrap .sub2 {
	position: relative;
	width: 100%;
	max-width: 1030px;
	margin: 0 auto;
	padding: 0 30px 40px 30px;
	text-align: center;
	z-index: 1;
}
.lead {
  padding: 45px 30px 40px 30px;
  text-decoration: none;
  color: #333;
  margin: ;
  text-align: center;
	line-height: 1.4;
  font-size: 220%;
  font-weight: bolder;
}
.lead2 {
  padding: 25px 30px 20px 30px;
  text-decoration: none;
  color: #CF0015;
  margin: ;
  text-align: center;
	line-height: 1.4;
  font-size: 200%;
  font-weight: bolder;
}
.cap {
  padding: 0 0 30px 0;
  text-decoration: none;
  color: #333;
  margin: ;
  text-align: center;
	line-height: 1.3;
  font-size: 80%;
  font-weight: ;
}
.ad {
  padding: 10px 0 20px 0;
  text-decoration: none;
  color: #fff;
  margin: ;
  text-align: center;
	line-height: 1.3;
  font-size: ;
  font-weight: ;
}
.ad_sp {
  display: none;
}
}


/* =====================
  footer
===================== */
#Wrap .footer { 
	width: 100%;
	position: relative;
	text-align:center;
	margin: 0 auto;
}
#Wrap .footer .space { 
	width: 100%;
	background-color: #333;
	position: relative;
	text-align: center;
	margin: 0;
}
#Wrap .footer .space .box2 { 
	width: 100%;
	max-width: 1200px;
	background-color: ;
	position: relative;
	text-align: center;
	margin: 20px auto 0;
	padding: 0;
}
#Wrap .footer .space .box2 .tx { 
	width: 100%;
	text-align: center;
	margin: 0 auto;
}
.nav_footer {
  width: 100%;
}
.nav_footer ul {
  text-align: center;
	list-style: none;
}
.nav_footer ul li {
  display: inline-block;
	padding: 30px 20px 20px;
	letter-spacing: 0.2em;
  width: ;  /* 任意のwidth */
}
.nav_footer ul li a {
  text-decoration: none;
  color: #fff;
  text-align: center;
  font-size: 100%;
  font-weight: demi-bolder;
}
.nav_footer ul li a:hover {
  color: #fff;
	font-weight: demi-bolder;
}
.cl {
  padding: 20px 0 40px;
  text-decoration: none;
  color: #fff;
  text-align: center;
  font-size: 70%;
}



@-webkit-keyframes swing {
  0%,100% { 
    -webkit-transform-origin: bottom center; 
  }
  10% { -webkit-transform: rotate(-15deg); }
  20% { -webkit-transform: rotate(10deg); }
  30% { -webkit-transform: rotate(-5deg); }
  40% { -webkit-transform: rotate(5deg); }
  50% { -webkit-transform: rotate(-3deg); }
  60% { -webkit-transform: rotate(2deg); }
  70% { -webkit-transform: rotate(-2deg); }
  80% { -webkit-transform: rotate(1deg); }
  90% { -webkit-transform: rotate(-1deg); }
  100% { -webkit-transform: rotate(0deg); }
}