@charset "UTF-8";

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 95%;
	width:100%;
	min-width:1300px;
	color:#000;
	position:relative;
}

* html body {
  font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}

*:first-child+html body {
  font-family: "メイリオ", sans-serif;
} /*ブラウザごとのズレやフォントを解消するこれはＩＥ７に反映させる*/

img { 
  vertical-align: bottom; 
} /*画像の下端と、行の下端を揃える*/

/*リンクされた文字*/
a {
	text-decoration: underline;
}

a:hover {
	text-decoration: underline;
}

/*マウスをのせたとき*/
a img {
	-webkit-transition: 0.2s ease-in-out;  
	-moz-transition: 0.2s ease-in-out;  
	-o-transition: 0.2s ease-in-out;  
	transition: 0.2s ease-in-out;  
}

a img:hover {
	opacity: 0.4;  
	filter: alpha(opacity=60);
}

#wrap {
}

/* [ header ] ================================================*/

#header_o {
	height: 108px;
}

#header_in {
	margin: 0 auto;
	width:1200px;
	position: relative;
}

h1 {
	z-index: +3;
	position: absolute;
	top: 28px;
	left: 0;
}

#animate {
  animation-duration: 1.5s; /* アニメーションの時間 */
  animation-delay: 1s; /* アニメーション開始時間 */
}

#sec_2 {
	background-image: url("../img/v_01.png");
	background-repeat: no-repeat;
	width: 100%;
	height: 1220px;
}

#sec_2_in {
	width: 1200px;
	margin: 0 auto;
	position: relative;
}

.copy_1 {
	position: absolute;
	top:297px;
	right: 85px;
}

.copy_2 {
	position: absolute;
	top:401px;
	right: 137px;
	line-height: 2.5rem;
}

navi_page{
	width: 800px;
}

.navi_page ul{
	position: absolute;
	top:0;
	right: 0;
	display: table;
	padding: 0;
}
.navi_page ul li{
	display: table-cell;
	text-align: center;
	padding-left: 45px;
}
.navi_page ul li:last-child{
	border-right: none;
}
.navi_page ul li a{
	display: block;
	width: 100%;
	height: 40px;
	padding-top: 31px;
	text-decoration: none;
	color: #000;
	line-height: 1.1rem;
}
.navi_page ul li a:hover{
	height: 40px;
	text-decoration: none;
	color: #ff0000;
}

.nav_e {
	font-family: 'Poppins', sans-serif;
	font-size: 17px;
	letter-spacing: 2px;
}

.nav_j {
	font-size: 12px;
}

#news_o {
	position: absolute;
	top:570px;
	right: 0;
	background-color: #005aff;
	width: 760px;
	height: 200px;
	border-radius: 20px;
	box-shadow: 0 3px 25px 0 rgba(0, 0, 0, .5);
}

.news_ttl {
	padding: 30px 0 20px 30px;
}

.text_area {
	padding: 0 20px 20px 30px; 
	font-size: 90%;
	color: #fff;
}

.text_time {
    padding: 2px 20px 2px 0;
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
}

#sec3 {
	width: 1200px;
	margin: 0 auto;
	position: relative;
}

.sec3_txt {
	position: absolute;
	top: 973px;
	left: 0;
}

.sec3_txt1 {
	line-height: 2rem;
	font-size: 20px;
	padding: 25px 0;
}

.sec3_txt2 {
	line-height: 1.7rem;
	padding: 0 0;
	font-size: 95%;
}

.sec3_img {
	position: absolute;
	top: 973px;
	right: -40px;
}

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 15%);
  transition: 1.5s;
}

.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.sec_3_btn {
    margin-top: 32px;
    font-family: "Yu Gothic", YuGothic, Verdana, 'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, sans-serif;
    text-align: left;
}

/* ここから下がボタンのCSS　*/
.btn-border {
    display: inline-block;
    width: 300px;
    text-align: center;
    border: 2px solid #005aff;
    font-size: 18px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    letter-spacing: 0.3rem;
    padding: 22px 0;
    transition: .4s;
    background-color: #005aff;
}

.btn-border:hover {
  background-color: #fff;
  border-color: #005aff;
  color: #005aff;
  text-decoration: none;
}

/*=============
フローティングバナー
=============*/

#fixed_right_banner{
    position: fixed;
    top: 40px;
    right: 0;
}
 
/* 画像の共通設定 */
#fixed_right_banner
{
    width: 65px;
	z-index: +20;
}
 
/* 2個目以降の画像の上部に余白を作る */
#fixed_right_banner > * ~ * { margin-top: 10px; }
 
/* リンク要素 */
#fixed_right_banner > a
{
    /* ブロック要素に変更 */
    display: block;
 
    /* 透過変更をスムーズにする(任意) */
   -webkit-transition: opacity .2s ease;
   transition: opacity .2s ease;
}
 
/* マウスオーバー時の表現 */
#fixed_right_banner > a:hover
{
    /* 20%透過させる */
    opacity: .8;
}
 
/* コンテンツに被らないようにするメディアクエリ */
@media (max-width: 960px)
{
    #fixed_right_banner { display: none; }
}

/*=============*/


#sec_4 {
	width: 100%;
	height: 400px;
	margin-top: 500px;
}

#sec_4_in {
	width: 1200px;
	margin: 0 auto;
	position: relative;
}

#sec_4_in ul {
	overflow: hidden;
}

#sec_4_in ul li {
	float: left;
}

.sec_4_img {
	width: 323px;
	padding-top: 20px;
}

.sec_4_2 {
	padding-top: 42px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 30px;
}

.sec_4_txt {
	width: 554px;
	text-align: center;
}

.sec_4_btn {
	font-family: "Yu Gothic", YuGothic, Verdana, 'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, sans-serif;
	text-align: center;
}

.sec4_txt1 {
	line-height: 2rem;
	font-size: 20px;
	padding: 35px 0;
}

#sec_5 {
	width: 100%;
	background-image: url("../img/sec5_bg.png");
	background-repeat: repeat;
	height: 600px;
	margin-top: 80px;
	padding-top: 80px;
}

#sec_5_in {
	width:1200px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

.sec5_img {
	float: left;
}

.sec5_txt {
	float: right;
	width: 590px;
}

.sec5_txt1 {
	line-height: 2rem;
	font-size: 19px;
	padding: 25px 0;
}

#sec_7 {
	width: 100%;
	height: 470px;
	margin-top: 90px;
}

#sec_7_in {
	width:1200px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}


.sec7_img {
	float: right;
}

.sec7_txt {
	float: left;
	width: 590px;
}

#sec_6 {
	width: 100%;
	background-color: #e7e7e7;
	height: 553px;
	margin-top: 200px;
	padding: 50px 0;
	z-index: -21;
}

#sec_6_in {
	width: 1100px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

.sec_6_left {
	float: left;
	width: 608px;
}

.id_footer {
	padding: 14px 0 20px 0;
	font-size: 13px;
	line-height: 1rem;
	letter-spacing: 1px;
}

.map {
	border: 1px solid #9d9d9d;
}

.sec_6_right {
	float: right;
	background-image: url("../img/sec_6_2.png");
	background-repeat: no-repeat;
	width: 413px;
	height: 500px;
	margin-top: 51px;
	position: relative;
}

.sec_6_tel {
	position: absolute;
	top: 227px;
	left: 32px;
}

.sec_6_txt {
	position: absolute;
	top: 344px;
	left: 32px;
	font-size: 12px;
	line-height: 1.2rem;
}

.sec_7_txt {
	position: absolute;
	top: 157px;
	left: 32px;
	font-size: 12px;
	line-height: 1.2rem;
}

.sec_6_btn {
	font-family: "Yu Gothic", YuGothic, Verdana, 'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, sans-serif;
	text-align: center;
	letter-spacing: 0.1rem;
	position: absolute;
	top: 400px;
	left: 39px;
}

.sec_6_btn2 {
	font-family: "Yu Gothic", YuGothic, Verdana, 'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, sans-serif;
	letter-spacing: 0.1rem;
}

.btn-animation-02 {
  display: inline-block;
  width: 327px;
  text-align: center;
  background-color: #ff0000;
  border: 2px solid #ff0000;
  font-size: 16px;
  color: #ff0000;
  text-decoration: none;
  font-weight: bold;
  padding: 22px 0;
  position: relative;
}

.btn-animation-02 span {
  position: relative;
  z-index: 1;
}

.btn-animation-02::before,
.btn-animation-02::after {
  content: "";
  display: block;
  background-color: #fff;
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  transition: .2s;
}
.btn-animation-02::before {
  left: 0;
}
.btn-animation-02::after {
  right: 0;
}

.btn-animation-02:hover:before,
.btn-animation-02:hover:after {
  width: 0;
  background-color: #eeeeee;
}

.btn-animation-02:hover {
  color: #FFF;
	text-decoration: none;
}

/* [ COPY ] ================================================*/

#copy {
	text-align: center;
    font-size: 12px;
    letter-spacing: 2px;
	position: relative;
	background-color: #aeaeae;
	padding: 15px 0;
}


/* [ PAGE TOP ] ================================================*/

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 77%;
	z-index: 99999999999;
}








/* [ PAGE CSS ] ================================================*/


#header_o_p {
	height: 108px;
	position: sticky;/*固定する*/
	position: -webkit-sticky;/*Safari用ベンダープレフィックス*/
	top: 0;/*ブラウザの上からの距離はゼロ*/
	background-color: #fff;
	z-index: +5;
	border-bottom: 5px solid #aeaeae;
}

#header_in {
	margin: 0 auto;
	width:1200px;
}

#page_ttl {
  background-image: -webkit-linear-gradient(left, #005aff 50%, #008aff 90%);
  background-image: -o-linear-gradient(left, #005aff 50%, #008aff 90%);
  background-image: linear-gradient(to right, #005aff 50%, #008aff 90%);
	width: 100%;
	height: 182px;
}

#page_ttl p {
    text-align: center;
    padding: 49px 0 43px 0;
    font-family: 'Sawarabi Mincho', sans-serif;
    -webkit-font-smoothing: antialiased;
    -ms-font-feature-settings: "normal";
    font-size: 60px;
    letter-spacing: 5px;
    color: #fff;
    line-height: 1.2;
}

#page_main {
	margin: 0 auto;
	width: 1000px;
	padding-top: 60px;
}

.page_ttl_4 {
    padding: 0 0 30px 0;
    font-family: 'Sawarabi Mincho', sans-serif;
    -webkit-font-smoothing: antialiased;
    -ms-font-feature-settings: "normal";
    font-size: 32px;
    letter-spacing: 5px;
    line-height: 2.0;
	text-align: center;
}

.page_ttl_5 {
    padding: 40px 0 0 0;
    font-family: 'Sawarabi Mincho', sans-serif;
    -webkit-font-smoothing: antialiased;
    -ms-font-feature-settings: "normal";
    font-size: 25px;
    letter-spacing: 5px;
    line-height: 1.8;
	text-align: center;
}

.se_img_1 {
	text-align: center;
	padding-top: 40px;
}

#page_main table {
    width: 100%;
    margin: 0 0 50px 0;
    color: #333333;
    border-top: 1px solid #bbbbbb;
}

#page_main table th {
    width: 20%;
    font-weight: bold;
    background-color: #ececec;
}

#page_main table th, #page_main table td {
    padding: 30px 10px;
    line-height: 1.8;
    text-align: left;
    border-bottom: 1px solid #bbbbbb;
    box-sizing: border-box;
}

.navi_page .c a {
	color: #ff0000;
}

.page_s {
	overflow: hidden;
	padding-top: 30px;
}

.left {
	float: left;
	line-height: 1.7rem;
    padding: 0 0;
    font-size: 95%;
}

.right {
	float: right;
	line-height: 1.7rem;
    padding: 0 0;
    font-size: 95%;
}

h2 {
  padding: 1.2rem 2rem;
  color: #fff;
  font-size: 23px;
  background-image: -webkit-gradient(linear, left top, right top, from(#f00000), to(#ff9000));
  background-image: -webkit-linear-gradient(left, #f00000 0%, #ff9000 100%);
  background-image: linear-gradient(to right, #f00000 0%, #ff9000 100%);
	margin-top: 60px;
}

.page_text {
	margin-top: 30px;
	line-height: 1.8rem;
    padding: 0 0;
    font-size: 95%;
}

.page_img {
	margin-top: 30px;
}

.page_img_2 {
	margin-bottom: 70px;
}

h3 {
	text-align: center;
	margin: 50px 0;
	padding: 5px 0;
	font-size: 32px;
	color: #0052e7;
}

.page_text2 {
	margin-top: 30px;
	line-height: 1.7rem;
    padding: 0 0;
    font-size: 95%;
	text-align: center;
}

h5 {
  padding: 0.5rem 1rem;
  border: 3px solid #000;
  font-size: 23px;
	text-align: center;
	margin-bottom: 20px;
}

h6 {
  padding: 1.3rem 2rem;
	background-color: #000;
  font-size: 30px;
	text-align: center;
	margin-bottom: 20px;
	color: #fff;
}









