﻿@charset "utf-8";
/* CSS Document */
.width_1000-max {
	max-width: 1080px!important;
}
html{font-size:100%;}
body,.txt_color_nomal{color: #666!important;}

body,.font_sans-serif{font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif!important;}
/* --all page-- */
/*予約バナー*/
#fixed_right_banner {
    position: fixed;
    top: 200px;
    right: 0;
	z-index: 99;
}
#fixed_right_banner > *{
    width: 40px;
	-webkit-transition: margin .2s ease;
    transition: margin .2s ease;
}
#fixed_right_banner > a {
    display: block;
}

/*main_menu*/
#main_menu {
	z-index: 99;
}
#main_menu.fixed{
    position: fixed;
    top: 0;
	/*background: rgba(65,71,79,0.9);*/
	border-bottom: 1px solid #fff;
	transition: all 0.5s;	
}
#main_menu ul li {
	padding: 10px;
}
#main_menu ul li a {
	color:#fff;
	padding: 10px;
}

/*fakeloader*/
#fakeloader{
	z-index: 9999;
}
#fakeloader .fl{
	position: absolute!important;
	top: 50%!important;
	left: 50%!important;
	transform: translate(-50%,-50%)!important;
	width: 30%!important;
	max-width: 300px!important;
}
/* リンクボタン */
.effect {
  text-align: center;
  display: inline-block;
  position: relative;
  text-decoration: none;
  width: 90px;
  overflow: hidden;
}
.effect.effect-1 {
-webkit-transition: all 0.2s linear 0s;
-ms-transition: all 0.2s linear 0s;
  transition: all 0.2s linear 0s;
text-indent: 0;
}
.effect.effect-1:before {
    content: "\f105";
	font-weight: 900;
    font-family: "Font Awesome 5 Free";
    font-size: 15px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 0;
    top: 0;
    opacity: 0;
    height: 100%;
    width: 40px;
	-webkit-transition: all 0.2s linear 0s;
	-ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
	text-indent: -20px;
  }
.effect.effect-1:hover {
    text-indent: -20px;
    }
.effect.effect-1:hover:before {
      opacity: 1;
      text-indent: 0px;
    }
#f_menu ul li a {
	color:#ffffff;
}
#page-top{
	position: fixed;
	right: 10px;
	z-index: 2;
}
#page-top a{
	display: block;
	width: 50px;
	height: 50px;
	position: relative;
}
/* -- index.html -- */
#aisatsu {
	background-size: cover;
	background-position: center top;
}
/*
#aisatsu > div {
	background-color: rgba(65,71,79,0.70);
}
*/
#contents1 .contents_img {
	z-index: 1;
}
#contents1 .contents_box,#contents2 .contents_box,#contents3 .contents_box {
	margin-left: 40%;
	margin-top: -200px;
	z-index: 2;
/*
	background: #23303d;
	background: -moz-linear-gradient(-45deg, #23303d 0%, #01011c 100%);
	background: -webkit-linear-gradient(-45deg, #23303d 0%,#01011c 100%);
	background: linear-gradient(135deg, #23303d 0%,#01011c 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#23303d', endColorstr='#01011c',GradientType=1 );
*/
}
.contents_box::before {
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	left: -30px;
	top: 0px;
	background-color: #ffffff;
	width: 100px;
	height: 1px;
}
.contents_box::after {
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	left: 0;
	top: -30px;
	background-color: #ffffff;
	width: 1px;
	height: 100px;
}
.contents_box2::before {
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: -30px;
	bottom: 0px;
	background-color: rgba(255, 255, 255, 0.7);
	width: 100px;
	height: 1px;
}
.contents_box2::after {
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: 0;
	bottom: -30px;
	background-color: rgba(255, 255, 255, 0.7);
	width: 1px;
	height: 100px;
}
#top_cms h2 {
	position: relative;
}
#top_cms .cms_title h2::before,#top_cms .cms_title h2::after{
	display: block;
	position: absolute;
	content: "";
	pointer-events: none;
	margin: auto;
	right: 0;
	left: 0;
	bottom: 0px;
	background-color: rgba(255, 255, 255, 0.7);
}
#top_cms .cms_title h2::before{
	width: 200px;
	height: 1px;
	bottom: -70px;
}
#top_cms .cms_title h2::after{
	width: 1px;
	height: 40px;
	bottom: -90px;
}

/* -- cms共通 -- */
.cate_list li {
	padding: 10px;
}
.cate_list li a {
	display: block;
	padding: 15px 10px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	text-align: center;
}
.cate_list li a:hover {
	transition: all 0.3s;
}
.pager{
	text-align: center;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
    align-items: center;
	flex-direction: row;
}
.pager li{margin: 0 5px}
.pager li a{
	display: block;
	height: 60px;
	line-height: 60px;
	transition: 0.5s;
}
.pager li.prev a {
	padding: 0 20px;
	width: 60px;
}
.pager li:not(.prev) a {
	width: 60px;
}

.map iframe{
	width: 100%;
	height: 500px;
}
/*下層ページタイトル*/
#main_img2 {
	/*background-image: url(../img/s3.jpg);*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	max-width: 1280px;
	width: 100%;
	height:240px;
	margin: 0 auto;
	margin-bottom: 50px;
}
/*
#main_img2 .page_title {
	background-color: rgba(65,71,79,0.70);
}
*/
/* -- page2.html -- */

/* -- page3.html -- */

/* -- page4.html -- */


/* -- page5.html -- */

/* -- page6.html -- */

/* -- page7.html -- */

/* -- page8.html -- */

.submit,.reset {
	-webkit-appearance:none;
	text-align: center;
}
#form_area input {
    border: none;
}

/* -- page9.html -- */

/* -- page10.html -- */


@media all and (-ms-high-contrast:none){
	.page_title h2 {padding-top: 35px;}
	.pager li a,.pager .prev a,.pager .next a {padding-top: 7px!important;}
	.cate_list li a {padding-top: 20px;}
	#page7 .box_txt1 {padding-top: 30px;}
	.submit, .reset {padding-top: 15px;}
	#page9 .cate_box p a{padding: 8px 10px 2px;}
}
@media screen and (max-width: 850px){
#fixed_right_banner {
    top: 280px;
}
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
/* --all page-- */
#fixed_right_banner {
    top: 280px;
}
#fakeloader .fl{
	width: 50%!important;
}
#main_menu ul li {
	padding: 10px 5px;
}
#main_menu ul li a {
	color:#fff;
	padding: 10px 5px;
}
#main_img2  {
	height:200px;
}
#contents1 .contents_box,#contents2 .contents_box,#contents3 .contents_box {
	margin-left: 30%;
	margin-top: -100px;
}
.cate_list li a {
	padding: 10px 10px;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#fixed_right_banner {
	display: none;
}
#contents1 .contents_box,#contents2 .contents_box,#contents3 .contents_box {
	margin-left: 0%;
	margin-top: 0px;
}
.contents_box::before {
	width: 0px;
	height: 0px;
}
.contents_box::after {
	width: 0px;
	height: 0px;
}
.cate_list li a {
	text-align: left;
}
.pager li:not(.prev) a {
	display: none;
}
}