@charset "UTF-8";
/* CSS Document */
 
 
body {
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	padding: 0px;
}
.wrap {
	overflow: hidden;
}


.red{
	color: #F00 !important;
}
.clear {
	clear: both;
	margin: 0px;
}
ul {
	margin: 0px;
	padding: 0px;
}
li {
	list-style-type: none;
	display: block;
}
a {
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-ms-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
a, a:hover, a:focus, .btn:focus {
	text-decoration: none;
	outline: none;
}
.switch01 {
	    visibility: hidden;
}
.switch02 {
	    visibility: hidden;
}
.switch03 {
	    visibility: hidden;
}
.switch04 {
	    visibility: hidden;
}
.clone-nav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	transition: .3s;
	transform: translateY(-100%);
}
.is-show {
	transform: translateY(0);
}
.is-fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
}
.is-hide {
	transform: translateY(100%);
}

.text {
	display: inline-block;
}
.table-top {
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #b3b1b2;
}
section {
	margin-top : -100px;
	padding-top : 100px;
}
.bold {
	font-weight: 700;
}
.fixed {
	position: fixed;
	top: 0;
}
.image-box-100 {
	width: 100%;
}
.image-box-100 img {
	width: 100%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}


/* ----------------------------------------- */
/* 改行 ---------------------------------- */
/* ----------------------------------------- */

.br-480{
	display: none;
}
.n-br-480{
	display: block;
}


/* ----------------------------------------- */
/* 色指定 ---------------------------------- */
/* ----------------------------------------- */

.c-gray{
	background-image: url(../img/back-white.jpg);
	background-repeat: repeat;
}
.c-white{
	background-image: url(../img/back-white.jpg);
	background-repeat: repeat;
}
.c-blue{
	background-image: url(../img/back-blue.jpg);
	background-repeat: repeat;
}


/* ----------------------------------------- */
/* ライン ---------------------------------- */
/* ----------------------------------------- */

.b-line{
	background-color: #031c3c;
	height: 1px;
	width: 100%;
	margin-top: 40px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}

/* ----------------------------------------- */
/* 画像のフェード ---------------------------------- */
/* ----------------------------------------- */
.fade {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.fade:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}
.fade002 {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.fade002:hover {
	opacity: 0.4;
	filter: alpha(opacity=40);
}
/* ----------------------------------------- */
/* pagetop ---------------------------------- */
/* ----------------------------------------- */


.pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 55px;
	z-index: 9999;
}
.pagetop a {
  display: block;
  width: 50px;
  height: 50px;
  background-color: #031c3c;
  border-radius: 50px;
  text-align: center;
  color: #fff;
  font-size: 24px;
  text-decoration: none;
  line-height: 50px;
	z-index: 9999;
}



/* ----------------------------------------- */
/* 追従バナー ---------------------------------- */
/* ----------------------------------------- */




/* ----------------------------------------- */
/* ボタン ---------------------------------- */
/* ----------------------------------------- */
.button {
	position: relative;
	display: inline-block;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	font-size: 25px;
	font-weight: 400;
	letter-spacing: 0.1em;
	padding-top: 1em;
	padding-bottom: 1em;
	padding-left: 2em;
	padding-right: 2em;
	margin-top: 40px;
	margin-bottom: 20px;
}
.bu-green{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #9D0000;
	color: #fff;
	border: 1px solid #9D0000;
}
.bu-ma{
	margin-right: 20px;
}


.button a:link, .button a:visited {
	text-decoration: none;
}
.button::after{
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	transition: all .3s;
	border-left-color: #fff;

}




.button:hover {
	background-color: #fff;
	color: #9D0000;
	border: 1px solid #9D0000;
}


/* ----------------------------------------- */
/* top-共通 ---------------------------------- */
/* ----------------------------------------- */

.top-base {
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	text-align: center;
	padding-top: 80px;
	padding-right: 0px;
	padding-bottom: 80px;
	padding-left: 0px;
}
.top-base2 {
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	text-align: center;
	padding-right: 0px;
	padding-bottom: 80px;
	padding-left: 0px;
}
.top-base-naka {
	width: 1300px;
	margin-right: auto;
	margin-left: auto;
	padding: 0px;
}

.top-base-naka h1 {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-weight: 700;
	font-style: normal;
	font-size: 40px;
	text-align: center;
	padding: 0px;
	margin-bottom: 30px;
	margin-top: 0px;
	color: #031c3c;
}
.top-base-naka h4 {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 20px;
	line-height: 35px;
	margin-top: 0px;
}


/* 画面サイズが870以下の場合に適用 */
@media only screen and (max-width: 1300px) {

/* ----------------------------------------- */
/* top-共通1300 ---------------------------------- */
/* ----------------------------------------- */


.top-base-naka {
	width: 90%;
}


.top-base-naka h1 {
	font-size: 30px;
	margin-bottom: 20px;
}
.top-base-naka h4 {
	font-size: 16px;
	line-height: 28px;
}

}
/* 画面サイズが1024以下の場合に適用 */
@media only screen and (max-width: 1024px) {

/* ----------------------------------------- */
/* ボタン1024 ---------------------------------- */
/* ----------------------------------------- */
.button {

	font-size: 18px;
	letter-spacing: 0.1em;
	padding-top: 1em;
	padding-bottom: 1em;
	padding-left: 2em;
	padding-right: 2em;
	margin-top: 20px;
	margin-bottom: 10px;
}




}

/* 画面サイズが870以下の場合に適用 */
@media only screen and (max-width: 870px) {
section {
	margin-top : -0px;
	padding-top : 0px;
}
}


/* 画面サイズが768以下の場合に適用 */
@media only screen and (max-width: 768px) {


/* ----------------------------------------- */
/* top-共通768 ---------------------------------- */
/* ----------------------------------------- */

.top-base {

	padding-top: 40px;
	padding-bottom: 40px;
}
.top-base2 {
	padding-bottom: 40px;
}

.top-base-naka {
	width: 90%;
}

.top-base-naka h1 {
	font-size: 24px;
	margin-bottom: 20px;
}
.top-base-naka h4 {
	font-size: 16px;
	line-height: 28px;
	margin-top: 0px;
}
section {
	margin-top : -50px;
	padding-top : 50px;
}


/* ----------------------------------------- */
/* ボタン768 ---------------------------------- */
/* ----------------------------------------- */
.button {

	font-size: 16px;
	letter-spacing: 0em;
	padding-top: 0.6em;
	padding-bottom: 0.6em;
	padding-left: 1em;
	padding-right: 1em;
	margin-top: 10px;
	margin-bottom: 20px;
}

.bu-ma{
	margin-right: 10px;
}

.button::after{
	display: none;

}



}

/* 画面サイズが560以下の場合に適用 */
@media only screen and (max-width: 560px) {
/* ----------------------------------------- */
/* 追従バナー 560---------------------------------- */
/* ----------------------------------------- */
.floating {
	display: none;
}
.floating2 {
	display: none;
}
}


/* 画面サイズが480以下の場合に適用 */
@media only screen and (max-width: 480px) {
/* ----------------------------------------- */
/* 改行 ---------------------------------- */
/* ----------------------------------------- */

.br-480{
	display: block;
}
.n-br-480{
	display: none;
}
/* ----------------------------------------- */
/* top-共通 ---------------------------------- */
/* ----------------------------------------- */

.top-base {
	padding-top: 35px;
	padding-bottom: 35px;
}

.top-base-naka {
	width: 90%;
}

.top-base-naka h1 {
	font-size: 20px;
	margin-bottom: 20px;
}
.top-base-naka h4 {
	font-size: 14px;
	line-height: 24px;
	margin-top: 0px;
}

/* ----------------------------------------- */
/* ボタン480 ---------------------------------- */
/* ----------------------------------------- */
.button ,
.button-white ,
.white-button {
	font-size: 16px;
	letter-spacing: 0.1em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 2.5em;
	width: 180px;
	padding-right: 2.5em;
	margin-top: 20px;
	margin-bottom: 0px;
}
/* ----------------------------------------- */
/* ライン480 ---------------------------------- */
/* ----------------------------------------- */

.c-gray-line,
.c-gray-line2,
.c-white-line{
	margin-top: 25px;
	margin-bottom: 25px;
}
.c-gray-line2{
	background-color: #fff;
	margin-top: 15px;
	margin-bottom: 15px;
	width: 100%;
	height: 1px;
}
/* ----------------------------------------- */
/* ライン ---------------------------------- */
/* ----------------------------------------- */

.b-line{
	background-color: #031c3c;
	height: 1px;
	width: 100%;
	margin-top: 20px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}

}


/* 画面サイズが375以下の場合に適用 */
@media only screen and (max-width: 375px) {
/* ----------------------------------------- */
/* pagetop ---------------------------------- */
/* ----------------------------------------- */


.pagetop {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 9999;
}
.pagetop a {
  display: block;
  width: 50px;
  height: 50px;
  background-color: #031c3c;
  border-radius: 50px;
  text-align: center;
  color: #fff;
  font-size: 24px;
  text-decoration: none;
  line-height: 50px;
	z-index: 9999;
}
}
