@charset "UTF-8";
/* CSS Document */

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

　   web font

--------------------------------------------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Crimson+Text&display=swap');

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

　   サイト全体

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

html {
	margin:			0!important;
	padding:		0!important;
	overflow-y: auto;
	-webkit-overflow-scrolling:touch;
	-moz-text-size-adjust:		none;/* スマホ文字サイズ自動調整 */
	-webkit-text-size-adjust:	100%;
	}
*{
	margin:				0;
	padding:			0;
	}
	
body{
	color: #656565;
	font-family: "Montserrat", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	-webkit-font-smoothing: antialiased;/*チラつき防止*/
	line-height:	160%;
	width:			100%;
	padding:		0;
	}
	@media only screen and (max-width: 800px) {
		body{
			line-height:	150%;
			}
		}
	@media only screen and (max-width: 600px) {
		body{
			font-size:		0.85em;
			}
		}

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

　   ページ読み込み　ふわっと表示

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

  body {
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
    -o-animation: fadeIn 1.5s ease 0s 1 normal;
	animation: fadeIn 1.5s ease 0s 1 normal;
	}
	@keyframes fadeIn {
		0% {
			opacity: 0
			}
		100% {
			opacity: 1
			}
		}
	@-webkit-keyframes fadeIn {
		0% {
			opacity: 0
			}
		100% {
			opacity: 1
			}
		}

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

　   ローディングアニメーション

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

#loading {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 9999;
    background-color: #fff;
	}
#loading .f_logo {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 160px;
    height: 50px;
    text-align: center;
    color: #fff;
    font-size: 30px;
	}
#loading .f_logo img {
    width: 100%;
    height: auto;
	}
#loading .f_logo:before {
    content: "";
    display: block;
    width: 100%;
    height: 110%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 100%;
    -webkit-animation: loadLogo 1.5s;
    -o-animation: loadLogo 1.5s;
	animation: loadLogo 1.5s;
	}	
	@keyframes loadLogo {
		0% {
			left: 0;
			}
		50% {
			left: 0;
			}
		100% {
			left: 100%;
			}
		}
#loading .f_logo:before {
	-webkit-animation: loadLogo 1.5s;
	-o-animation: loadLogo 1.5s;
    animation: loadLogo 1.5s;
	}
#loading.open {
	-webkit-animation-name: slideOut;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-duration: 1.5s;
    -webkit-animation-delay: 1.5s;
	-webkit-animation-timing-function: ease-in-out;
	-o-animation-name: slideOut;
    -o-animation-fill-mode: forwards;
    -o-animation-duration: 1.5s;
    -o-animation-delay: 1.5s;
	-o-animation-timing-function: ease-in-out;
    animation-name: slideOut;
    animation-fill-mode: forwards;
    animation-duration: 1.5s;
    animation-delay: 1.5s;
	animation-timing-function: ease-in-out;
	}
	@keyframes slideOut {
		0% {
		-webkit-transform: translateX(0%);
		-moz-transform: translateX(0%);
		-ms-transform: translateX(0%);
		-o-transform: translateX(0%);
		transform: translateX(0%);
		opacity: 1;
		}
		49% {
		-webkit-transform: translateX(0%);
		-moz-transform: translateX(0%);
		-ms-transform: translateX(0%);
		-o-transform: translateX(0%);
		transform: translateX(0%);
		opacity: 0.98; 
		}
		50% {
		-webkit-transform: translateX(0%);
		-moz-transform: translateX(0%);
		-ms-transform: translateX(0%);
		-o-transform: translateX(0%);
		transform: translateX(0%);
		opacity: 0.95; 
		}
		100% {
		-webkit-transform: translateX(100%);
		-moz-transform: translateX(100%);
		-ms-transform: translateX(100%);
		-o-transform: translateX(100%);
		transform: translateX(100%);
		opacity: 0;
		}
	}

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

　   wrap

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

/*ページ全体*/
.wrap{
	overflow: hidden;
	}

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

　   パーツ

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

/*　PC・タブレットで非表示、スマホで表示　*/
.pc_hidden{
	display: none;
	}
	@media only screen and (max-width: 800px) {
		.pc_hidden{
			display:block !important;
			}
		}
/*　スマホで非表示、PC・タブレットで表示　*/
.sp_hidden{
	display: block;
	}
	@media only screen and (max-width: 800px) {
		.sp_hidden{
			display:none!important;
			}
		}

/*　回りこみ解除　*/
.clear{
	clear:both;
	float: none;
	}
.clear:after {
	content: " "; 
	display: block;
	clear: both;
	}

/*PCでのtel:無効に*/
[href^="tel"] {
    text-decoration: none;
    cursor: default;
    pointer-events: none;
	}
@media screen and (max-width: 800px) {
    [href^="tel"] {
        pointer-events: auto;
    	}
	}

/*-- タイトル 両サイドライン有り --*/
.ttl_line{
	color: #656565;
	font-size: 23px;
	font-weight: bold;
	letter-spacing: 1px;
	margin: 15px auto 0 auto;
	display: -webkit-box;
  	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
    align-items: center;
	width:96%;
	max-width: 940px;
	}

/* ライン */
.ttl_line:before,
.ttl_line:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #DEDEDE;
	}
.ttl_line:before {
    margin-right: 1rem;
	}
.ttl_line:after {
    margin-left: 1rem;
	}
.ttl_line + span{
	color: #656565;
	display: block;
	font-size: 12px;
	font-family: 'Crimson Text';
	letter-spacing: 3px;
	margin: 1px auto 0 auto;
	text-align: center;
	}
	@media only screen and (max-width: 650px) {
		.ttl_line{
			font-size: 20px;
			margin: 8px auto 0 auto;
			}
		.ttl_line + span{
			font-size: 10px;
			letter-spacing: 3px;
			line-height: 150%;
			margin: 0 auto;
			}
		}
	@media only screen and (max-width: 480px) {
		.ttl_line{
			font-size: 16px;
			margin: 2px auto 0 auto;
			}
		.ttl_line + span{
			font-size: 9px;
			letter-spacing: 2px;
			line-height: 120%;
			}
		.ttl_line:before {
			margin-right: 0.3rem;
			}
		.ttl_line:after {
			margin-left: 0.3rem;
			}
		}

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

　 　画像

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

img {
	border:			0;
	vertical-align:	middle;
	}
a img {
	text-align:center;
    border-style:none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	}

/* 画像 正方形トリミング object-fit　IE・Edge用　*/
.object-fit-img{
	-o-object-fit: contain;
	object-fit: contain;
	font-family: 'object-fit: contain;'
	}

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

　 　罫線

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

hr {
	border-width: 1px 0px 0px 0px;
	border-style: dashed;
	border-color: #ccc;
	height: 1px;
    max-width: 100%;
	clear:both;
	margin: 23px 0px;
	}

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

　 　ボタン

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

/*-- ボタン 四角 --*/
.button_wrap{
	text-align: center;
	}
.button {
	position: relative;
	display: inline-block;
	border: 1px solid #73b4af;
	border-radius: 3px;
	background: #73b4af;
	color: #fff!important;
	font-size: 100%;
	font-weight: bold;
	margin: 30px auto ;
	padding-top: 14px;
	padding-bottom: 14px;
	text-align: center;
	text-decoration: none;
	width: 50%;
	max-width: 400px;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	-ms-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	}
.button:hover {
	border: 1px solid #73b4af;
	}
.button:hover span{
	color: #73b4af;
	}
.button::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: '';
	background:#fff;
	-webkit-transform-origin: right top;
	-moz-transform-origin: right top;
	-ms-transform-origin: right top;
	-o-transform-origin: right top;
	transform-origin: right top;
	-webkit-transform: scale(0, 1);
	-moz-transform: scale(0, 1);
	-ms-transform: scale(0, 1);
	-o-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transition: transform .3s;
	-moz-transition: transform .3s;
	-ms-transition: transform .3s;
	-o-transition: transform .3s;
	transition: transform .3s;
	}
.button:hover::before {
	-webkit-transform-origin: left top;
	-moz-transform-origin: left top;
	-ms-transform-origin: left top;
	-o-transform-origin: left top;
	transform-origin: left top;
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
	}
.button span{
	position: inherit;
	z-index: 2;
	}
/* 矢印 */
a.button::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 0.5em;
    height: 0.5em;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
	-ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    border-radius: 3px;
    border-right: 3px solid currentColor;
    border-top: 3px solid currentColor;
    content: "";
	z-index: 2;
	}
a.button:hover::after {
    border-right: 3px solid #73b4af;
    border-top: 3px solid #73b4af;
	}
	@media only screen and (max-width: 480px) {
		.button {
			font-size: 95%;
			margin: 10px auto;
			padding-top: 12px;
			padding-bottom: 12px;
			}
		}	
	@media only screen and (max-width: 360px) {
		.button {
			width: 84%!important;
			}
		}

/*-- ボタン 角丸 --*/
.btn_round a {
	display: block;
	text-align: center;
	width: auto;
	border-radius: 40px;
	background: #fff;
	border: 1px solid #73b4af;
	color: #73b4af;
	text-shadow: 0;
	font-size: 15px;
	font-weight: bold;
	cursor: pointer;
	padding: 8px 10px;
	margin: 12px 0;
	-webkit-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
	}
.btn_round a:hover {
	color: #fff;
	background: #73b4af;
	}
	@media only screen and (max-width: 480px) {
		.btn_round a {
			font-size: 13px;
			padding: 7px 10px;
			}
		}	
	@media only screen and (max-width: 360px) {
		.btn_round a {
			font-size: 12px;
			padding: 5px 10px;
			margin: 10px 0;
			}
		}

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

　 　hover テキストアニメーション

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

/*文字がグラデーション*/
.txt_gd {
	position: relative;
	display: inline-block;
	color:#656565;
	overflow: hidden;
	background: -webkit-linear-gradient(left, #aaaaaa, #aaaaaa 50%, #656565 50%);
	background: -o-linear-gradient(left, #aaaaaa, #aaaaaa 50%, #656565 50%);
	background: linear-gradient(to right, #aaaaaa, #aaaaaa 50%, #656565 50%);
	-webkit-background-clip: text;
	-moz-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-background-size: 200% 100%;
	background-size: 200% 100%;
	background-position: 100%;
	-webkit-transition: background-position 275ms ease;
	-moz-transition: background-position 275ms ease;
	-ms-transition: background-position 275ms ease;
	-o-transition: background-position 275ms ease;
	transition: background-position 275ms ease;
	cursor: pointer;
	z-index: 1;
	}
.txt_gd:hover {
	background-position: 0 100%;
	}

/*文字にマーカー*/
.marker {
  padding-bottom: .25em;
  background: -webkit-linear-gradient(#4FE0EA, #4FE0EA) 0 100%/0 40% no-repeat;
  background: -o-linear-gradient(#4FE0EA, #4FE0EA) 0 100%/0 40% no-repeat;
  background: linear-gradient(#4FE0EA, #4FE0EA) 0 100%/0 40% no-repeat;
  -webkit-transition: background .4s;
  -o-transition: background .4s;
  transition: background .4s;
  text-decoration: none;
	}
.marker.reverse {
	background-position: 100% 100%;
	}
.marker:hover {
	background-size: 100% 40%;
	}


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

　 　ボックス

------------- */
.box_border{
	display: table;
	border: 1px solid #73b4af;
	border-radius: 3px;
	margin: 0;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	}
.box_border span.header{
	display: table-cell;
	text-align: center;
	color: #fff;
	background: #73b4af;
	font-weight: bold;
	padding: 8px 18px;
	vertical-align: middle;
	-ms-word-break: keep-all;
	word-break: keep-all;
	}
.box_border span.body{
	display: table-cell;
	padding: 8px 18px;
	font-weight: bold;
	vertical-align: middle;
	-ms-word-break: break-all;
	word-break: break-all;
	}
.box_border a:hover{
	text-decoration: underline!important;
	}

/*みどり*/
.box_border.gr{border: 1px solid #5b8965;}
.box_border.gr span.header{background: #5b8965;}
.box_border.gr a{color: #5b8965;}

/*黄みどり*/
.box_border.lg{border: 1px solid #74b34d;}
.box_border.lg span.header{background: #74b34d;}
.box_border.lg a{color: #74b34d;}

/*赤*/
.box_border.rd{border: 1px solid #ed3e20;}
.box_border.rd span.header{background: #ed3e20;}
.box_border.rd a{color: #ed3e20;}

/*facebook色*/
.box_border.fb{border: 1px solid #3B579D;}
.box_border.fb span.header{background: #3B579D;}
.box_border.fb a{color: #3B579D;}

/*黄色*/
.box_border.yl{border: 1px solid #e1b23c;}
.box_border.yl span.header{background: #e1b23c;}
.box_border.yl a{color: #e1b23c;}

	@media only screen and (max-width: 800px) {
		.box_border span.header{
			-ms-word-break: normal;
			word-break: normal;
			}
		}
	@media only screen and (max-width: 650px) {
		.box_border{
			font-size: 90%;
			}
		.box_border span.header{
			padding: 5px 8px;
			}
		.box_border span.body{
			padding: 5px 8px;
			}
		}

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

　 　文字色

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

/*みどり*/
.txt_gr{color: #5b8965!important;}

/*黄みどり*/
.txt_lg{color: #74b34d!important;}

/*赤*/
.txt_rd{color: #ed3e20!important;}

/*水色*/
.txt_bl{color: #73b4af!important;}

/*黄色*/
.txt_yl{color: #e1b23c!important;}

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

　 　リスト

------------- */
ol{}
ol li{
	margin-left: 2em;
	margin-bottom: 5px;
	}

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

　   header

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

/*全体*/
header#header{
	position: fixed;
	background:#fff;
	padding-bottom: 5px;
	width: 100%;
	z-index: 999;
	}
header#header .h_block{
	max-width: 980px;
	margin: 0 auto;
	}
header#header .h_inner{
	position: relative;
	width: 96%;
	max-width: 940px;
	margin: 0 auto;
	}

/*-- サイトタイトル --*/
.site_ttl{
	float: left;
	padding: 0;
	}
.site_ttl .s_ttl_inner{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	}

/*ロゴマーク*/
.site_ttl span{}
.site_ttl span a{
	display: block;
	width: 100%;
	max-width: 220px;
	height: auto;
	max-height: 63px;
	margin: -3px auto 15px auto;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
	}
.site_ttl span a:hover{
	opacity: .6;
	}
.site_ttl span a img{
	width: 100%;
	height: auto;
	}
	@media only screen and ( max-width : 800px ) {
		header#header{
			height: auto;
			padding-bottom: 0;
			-webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
			box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
			}
		.site_ttl span a{
			max-width: 180px;
			margin: 14px auto 12px auto;
			}
		}
	@media only screen and ( max-width : 650px ) {
		.site_ttl span a{
			max-width: 150px;
			margin: 14px auto 12px auto;
			}
		}
	@media only screen and ( max-width : 480px ) {
		.site_ttl span a{
			max-width: 115px;
			margin: 13px auto 10px auto;
			}
		}
	@media only screen and ( max-width : 300px ) {
		.site_ttl span a{
			max-width: 95px;
			}
		}

/*-- 右上 富山県南砺市移住サイト --*/
header#header .h1_block{
	max-width: 980px;
	margin: 0 auto;
	}
header#header .h1_inner{
	width: 96%;
	max-width: 940px;
	margin: 0 auto;
	}
h1.heading{
	display: block;
	font-size: 13px;
	font-weight: normal;
	padding: 3px 0 0 0;
	text-align: right;
	}
	@media only screen and ( max-width : 800px ) {
		header#header .h1_block{
			background:#eaeaea;
			width: 100%;
			max-width: 100%;
			}
		h1.heading{
			padding: 4px 10px;
			}
		}
	@media only screen and ( max-width : 650px ) {
		h1.heading{
			font-size: 12px;
			padding: 3px 10px;
			}
		}
	@media only screen and ( max-width : 360px ) {
		h1.heading{
			font-size: 9px;
			}
		}


/*-- ナビメニュー --*/
.h_nav{
	width: 72%;
	margin: 0 auto;
	position: absolute;
	top:-3px;
	right: 0;
	}
	@media only screen and ( max-width : 800px ) {
		 .h_nav {
			display: none;
			top:5px;
			}
		}

#gNav{
	width: 96%;
	max-width: 980px;
	margin: 0 auto;
	z-index: 9999;
	}

#gNav a:hover {
	opacity:0.6;
	-webkit-filter: alpha(opacity=60);
	-moz-filter: alpha(opacity=60);
	-ms-filter:"alpha( opacity=60 )";
	-o-filter: alpha(opacity=60);
	filter: alpha(opacity=60);
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
	}


nav .sub-menu,.mean-container .mean-nav ul ul {/*プルダウン背景*/
	background-color: #ffffff;
	}

#gNav ul.nav {
	position: relative;
	display: flex;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	}
#gNav li {
	position: relative;
	list-style: none;
	align-items:center;
	}
#gNav ul.nav > li {
	width: 20%;
	}

#gNav ul.nav > li > a {
	display: block;
	color: #656565;
	text-align: center;
	text-decoration: none;
	padding-top: 12px;
	padding-bottom: 6px;
	}
#gNav ul.nav > li:last-child > a {
	border-right: none;
	}
#gNav ul.nav > li.nav01 > a > .n_icon{background: url("../img/nav_icon1.jpg");}
#gNav ul.nav > li.nav02 > a > .n_icon{background: url("../img/nav_icon2.jpg");}
#gNav ul.nav > li.nav03 > a > .n_icon{background: url("../img/nav_icon3.jpg");}
#gNav ul.nav > li.nav04 > a > .n_icon{background: url("../img/nav_icon4.jpg");}
#gNav ul.nav > li.nav05 > a > .n_icon{background: url("../img/nav_icon5.jpg");}

#gNav ul.nav > li.nav01 > a > .n_icon,
#gNav ul.nav > li.nav02 > a > .n_icon,
#gNav ul.nav > li.nav03 > a > .n_icon,
#gNav ul.nav > li.nav04 > a > .n_icon,
#gNav ul.nav > li.nav05 > a > .n_icon{
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: cover;
	background-size: cover;
	width: 50px;
	height: 38.3px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	margin: auto;
	}

#gNav ul.nav > li > a > span{
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 120%;
	}

#gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 76px!important;
    left: 50%;
    margin-left: -100px;
    width: 200px;
	text-align: center;
    -webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
    transition: all .2s ease;
	}
#gNav .sub-menu a {
    display: block;
    padding: 14px 10px;
    line-height: 1.2em;
	border: none;
	border-radius: 0;
	background: #aaa;
	color: #ffffff!important;
	text-decoration: none;
	font-weight: bold;
	}

#gNav ul.nav > li.nav01 .sub-menu a {
	background: #88c84d;
	}
#gNav ul.nav > li.nav05 .sub-menu a {
	background: #73b4af;
	}

#gNav .sub-menu li {
	border-bottom: solid 1px #ffffff;
	}
#gNav .sub-menu li:last-child {
	border-bottom: none;
	}
#gNav .sub-menu a:hover:after {
    content: none;
	}
#gNav .sub-menu li {
    display: block;
    font-size: 14px;
    padding: 0;
    margin: 0;
	}
#gNav .sub-menu li:last-child {
    border-bottom: none;
	}
#gNav ul > li:hover {
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-ms-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
	}

#gNav li:hover ul.sub-menu {
    top: 100px;
    visibility: visible;
    opacity: 1;
    z-index: 99;
	}
#gNav li ul li:after {
    content: none;
	}
#gNav li:hover ul.sub-menu a {
    color: #777;
	text-decoration: none;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	-ms-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	}

/*「市内のコミュニティ」改行*/
#gNav ul.nav > li.nav04 > a > span > br {
	display: none;
	}
	@media only screen and ( max-width : 950px ) {
		#gNav ul.nav > li.nav04 {
			letter-spacing: -1px;
			}
		}
	@media only screen and ( max-width : 900px ) {
		#gNav ul.nav > li.nav04 > a > span > br {
			display: block;
			}
		#gNav ul.nav > li.nav04 > a {
			padding-top: 4px;
			padding-bottom: 6px;
			}
		#gNav ul.nav > li > a > span{
			font-size: 13px;
			line-height: 100%;
			}
		#gNav ul.nav > li.nav04 {
			letter-spacing: 0;
			line-height: 100%;
			}
		}

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

　   スマホメニュー

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

/*　全体　*/
#g-nav,
.openbtn{
    display: none;
	}
#g-nav{
    position:fixed;
    z-index: 999;
	top:-200%;
    left:0;
	width:100%;
    height: 100vh;
	background: url("../img/bg_wt.jpg") repeat;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	overflow: hidden;
	}
#g-nav.panelactive{
    top: 0;
	}

/*ナビの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
	}
	@media only screen and (max-width: 800px) {
		/*　全体　*/
		#g-nav,
		.openbtn{
			display: block;
			}
		}

/*白背景ボックス*/
.wt_box{
	width: 94%;
	background: #fff;
	border-radius: 5px;
	margin: 18px auto;
	padding: 15px 0 15px 0;
	}
	@media only screen and (max-width: 480px) {
		.wt_box{
			border-radius: 3px;
			margin: 8px auto;
			padding: 12px 0 8px 0;
			}
		}
	@media only screen and (max-width: 360px) {
		.wt_box{
			border-radius: 3px;
			margin: 5px auto;
			padding: 10px 0 8px 0;
			}
		}

/*ロゴマーク*/
.g_ttl{}
.g_ttl a{
	display: block;
	width: 100%;
	max-width: 220px;
	height: auto;
	max-height: 63px;
	margin: 24px auto 18px auto;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
	}
.g_ttl a:hover{
	opacity: .6;
	}
.g_ttl a img{
	width: 100%;
	height: auto;
	}
	@media only screen and ( max-width : 800px ) {
		.g_ttl a{
			max-width: 180px;
			margin: 14px auto 12px auto;
			}
		}
	@media only screen and ( max-width : 650px ) {
		.g_ttl a{
			max-width: 150px;
			margin: 14px auto 12px auto;
			}
		}
	@media only screen and ( max-width : 480px ) {
		.g_ttl a{
			max-width: 110px;
			margin: 12px auto 10px auto;
			}
		}

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

　 　1段目 メインメニュー 5つ

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

ul.g_nav {
	position: relative;
	display: flex;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	}
ul.g_nav li {
	position: relative;
	list-style: none;
	-ms-align-items: center;
	align-items: center;
	line-height: 100%;
	}
ul.g_nav > li {
	width: 20%;
	}
ul.g_nav > li > a {
	display: block;
	color: #656565;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	padding: 0;
	margin: 0;
	}
ul.g_nav > li > a {
	border-right: dashed 1px #ccc;
	-webkit-transition: all .2s;
	-o-transition: all .2s;
	transition: all .2s;
	}
ul.g_nav > li:last-child > a {
	border-right: none;
	}
ul.g_nav > li.nav01 > a > .n_icon{background: url("../img/nav_icon1.jpg");}
ul.g_nav > li.nav02 > a > .n_icon{background: url("../img/nav_icon2.jpg");}
ul.g_nav > li.nav03 > a > .n_icon{background: url("../img/nav_icon3.jpg");}
ul.g_nav > li.nav04 > a > .n_icon{background: url("../img/nav_icon4.jpg");}
ul.g_nav > li.nav05 > a > .n_icon{background: url("../img/nav_icon5.jpg");}

ul.g_nav > li.nav01 > a > .n_icon,
ul.g_nav > li.nav02 > a > .n_icon,
ul.g_nav > li.nav03 > a > .n_icon,
ul.g_nav > li.nav04 > a > .n_icon,
ul.g_nav > li.nav05 > a > .n_icon{
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	width: 50px;
	height: 38.3px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	margin: auto;
	}
/*文字*/
ul.g_nav > li > a > span{
	width: 100%;
	font-size: 13px;
	text-align: center;
	line-height: 100%;
	}
ul.g_nav > li > a:hover {
	opacity: .6;
	}
ul.g_nav > li > a > span br{
	display: none;
	}
	@media only screen and (max-width: 650px) {
		ul.g_nav > li.nav01 > a > .n_icon,
		ul.g_nav > li.nav02 > a > .n_icon,
		ul.g_nav > li.nav03 > a > .n_icon,
		ul.g_nav > li.nav04 > a > .n_icon,
		ul.g_nav > li.nav05 > a > .n_icon{
			width: 42px;
			height: 30px;
			text-indent:100%;
			}
		ul.g_nav > li > a > span{
			font-size: 11px;
			}
		}
	@media only screen and (max-width: 480px) {
		ul.g_nav > li > a > span{
			font-size: 10px;
			}
		}
	@media only screen and (max-width: 380px) {
		ul.g_nav {
			display:flex;
			}
		ul.g_nav > li > a > span br{
			display: block;
			}
		ul.g_nav > li > a > span{
			height: 100%;
			}
		}

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

　 　2段目 バナー3つ

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

.g_service{
	margin: 22px auto 18px auto;
	}

/*-- バナー囲い --*/
.g_service .s_block{
	width: 94%;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	}

/*-- バナー1こずつ --*/
.g_service .s_block .s_inner{
	width: 33%;
	margin-right: 1%;
	}
.g_service .s_block .s_inner:last-child{
	margin-right: 0;
	}

/*-- バナー 背景画像 個別設定 --*/
/* バナー */
.g_service .s_block .s_inner.kosodate a,
.g_service .s_block .s_inner.taiken a,
.g_service .s_block .s_inner.house a{
	display: block;
	position: relative;
	background-position: bottom right;
	background-repeat: no-repeat;
	-webkit-background-size: auto;
	background-size: auto;
	border-radius: 3px;
	height: auto;
	margin: 0 auto;
	padding: 12px 5px 10px 5px;
	text-align: center;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	}
/* 南砺で子育て */
.g_service .s_block .s_inner.kosodate a{
	background-image: url("../img/s_bg_kosodate.jpg");
	-webkit-background-size: cover;
	background-size: cover;
	}
/* 移住体験 */
.g_service .s_block .s_inner.taiken a{
	background-image: url("../img/s_bg_taiken.jpg");
	-webkit-background-size: cover;
	background-size: cover;
	}
/* 空き家情報 */
.g_service .s_block .s_inner.house a{
	background-image: url("../img/s_bg_house.jpg");
	-webkit-background-size: cover;
	background-size: cover;
	}
/* イラスト */
.g_service .s_block .s_inner.kosodate a img,
.g_service .s_block .s_inner.taiken a img,
.g_service .s_block .s_inner.house a img{
	position: relative;
	top: -23px;
	width: 65%;
	height: auto;
	margin: 0 auto;
	z-index: 1;
	}
.g_service .s_block .s_inner.kosodate a:hover,
.g_service .s_block .s_inner.taiken a:hover,
.g_service .s_block .s_inner.house a:hover{
	opacity: 0.6;
	}

/*-- タイトル&キャッチコピー --*/
.g_service .s_block .s_inner.house a .tex{
	display: block;
	}
.g_service .s_block .s_inner a{
	color: #fff;
	text-decoration: none;
	}
/* タイトル */
.g_service .s_block .s_inner a p.ttl{
	position: relative;
	font-size:18px;
	font-weight: bold;
	margin-top: -18px;
	z-index: 3;
	}
	@media only screen and (max-width: 650px) {
		/* バナー */
		.g_service .s_block .s_inner.kosodate a,
		.g_service .s_block .s_inner.taiken a,
		.g_service .s_block .s_inner.house a{
			padding: 10px 5px;
			}
		/* イラスト */
		.g_service .s_block .s_inner.kosodate a img,
		.g_service .s_block .s_inner.taiken a img,
		.g_service .s_block .s_inner.house a img{
			top: -18px;
			width: 100%;
			}
		/* タイトル */
		.g_service .s_block .s_inner a p.ttl{
			font-size:16px;
			margin-top: -12px;
			}
		}
	@media only screen and (max-width: 480px) {
		.g_service{
			margin: 15px auto 12px auto;
			}
		/* イラスト */
		.g_service .s_block .s_inner.kosodate a img,
		.g_service .s_block .s_inner.taiken a img,
		.g_service .s_block .s_inner.house a img{
			top: -15px;
			}
		/* タイトル */
		.g_service .s_block .s_inner a p.ttl{
			font-size:14px;
			}
		}
	@media only screen and (max-width: 360px) {
		/* イラスト */
		.g_service .s_block .s_inner.kosodate a img,
		.g_service .s_block .s_inner.taiken a img,
		.g_service .s_block .s_inner.house a img{
			width: 100%;
			}
		/* タイトル */
		.g_service .s_block .s_inner a p.ttl{
			font-size:12px;
			}
		}

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

　 　3段目 メニュー 一覧

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

/*-- 囲み --*/
.sub_nav_wrap{
	width: 94%;
	margin: 0 auto;
	display: flex;
	justify-content:space-around;
	}

/* 親メニュー */
ul.sub_nav{
	list-style: none;
	width: 43%;
	}
ul.sub_nav > li{
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: dashed 1px #ccc;
	}
ul.sub_nav > li:last-child{
	margin-bottom: 12px;
	padding-bottom: 0;
	border-bottom: none;
	}
ul.sub_nav > li > a{
	color: #656565;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	}

/* 子メニュー */
ul.sub_nav > li > ul{
	list-style: none;
	padding-top: 8px;
	}
ul.sub_nav > li > ul > li{
	margin-bottom: 3px;
	}
ul.sub_nav > li > ul > li > a{
	color: #656565;
	font-size: 14px;
	margin-left: 12px;
	text-decoration: none;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	}
ul.sub_nav > li a:hover{
	opacity: .6;
	}
	@media only screen and (max-width: 650px) {
		ul.sub_nav > li{
			margin-bottom: 10px;
			padding-bottom: 10px;
			}
		ul.sub_nav > li:last-child{
			margin-bottom: 10px;
			}
		ul.sub_nav > li > a{
			font-size: 14px;
			}
		ul.sub_nav > li > ul{
			padding-top: 6px;
			}
		ul.sub_nav > li > ul > li{
			margin-bottom: 4px;
			}
		ul.sub_nav > li > ul > li > a{
			font-size: 13px;
			margin-left: 8px;
			}
		}

/* お問合せはこちらボタン */
.button {
	margin: 12px auto;
	padding-top: 11px;
	width: 75%;
	}

/*-- お問合せ先情報 --*/
nav#g-nav .address{
	text-align: center;
	width: 100%;
	margin-top: 5px;
	}
nav#g-nav .a_inner{
	color: #656565;
	}
nav#g-nav .a_ttl{
	font-size: 17px;
	font-weight: bold;
	letter-spacing: 1px;
	}
nav#g-nav .a_txt{
	font-size: 12px;
	letter-spacing: 1px;
	line-height: 175%;
	}

/* コピーライト */
nav#g-nav .cpright{
	padding: 12px;
	}
nav#g-nav .cpright small{
	color: #777;
	font-size:9px;
	font-weight: normal;
	}
	@media only screen and (max-width: 650px) {
		nav#g-nav .a_ttl{
			font-size: 14px;
			letter-spacing: 1px;
			}
		nav#g-nav .a_txt{
			font-size: 10px;
			letter-spacing: 1px;
			line-height: 175%;
			}
		}

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

　 　ボタン

---------------- */
.openbtn{
	position:fixed;
    z-index: 9999;
	top:35px;
	right: 10px;
	cursor: pointer;
    width: 58px;
    height:58px;
	}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #666;
  	width: 50%;
	}
/*線の色*/
.openbtn span:nth-of-type(1) {
	top:15px;
	background-color: #e1b23c;
	}
.openbtn span:nth-of-type(2) {
	top:24px;
	background-color: #88c84d;
	}
.openbtn span:nth-of-type(3) {
	top:33px;
	background-color: #73b4af;
	}

.openbtn.active span:nth-of-type(1) {
    top: 0;
    left: 8px;
    -webkit-transform: translateY(6px) rotate(-45deg);
    -ms-transform: translateY(6px) rotate(-45deg);
    -o-transform: translateY(6px) rotate(-45deg);
    transform: translateY(6px) rotate(-45deg);
    width: 50%;
	}
.openbtn.active span:nth-of-type(2) {
	opacity: 0;
	}
.openbtn.active span:nth-of-type(3){
    top: 12px;
    left: 8px;
    -webkit-transform: translateY(-6px) rotate(45deg);
    -ms-transform: translateY(-6px) rotate(45deg);
    -o-transform: translateY(-6px) rotate(45deg);
    transform: translateY(-6px) rotate(45deg);
    width: 50%;
	}
	@media only screen and (max-width: 800px) {
		.openbtn{
			top:45px;
			}
		}
	@media only screen and (max-width: 650px) {
		.openbtn{
			top:38px;
			right: 4px;
			}
		.openbtn.active span:nth-of-type(1) {
			top: -4px;
			left: 0;
			}
		.openbtn.active span:nth-of-type(3){
			top: 8px;
			left: 0;
			}
		}

	@media only screen and (max-width: 480px) {
		.openbtn{
			top:24px;
			}
		.openbtn.active span:nth-of-type(1) {
			top: -6px;
			}
		.openbtn.active span:nth-of-type(3){
			top: 6px;
			}
		}


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

　   main

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

main#main{
	margin-top: 110px;/*メニューの高さ*/
	}
	@media only screen and (max-width: 800px) {
		main#main{
			margin-top: 125px;
			}
		}
	@media only screen and (max-width: 650px) {
		main#main{
			margin-top: 112px;
			}
		}
	@media only screen and (max-width: 480px) {
		main#main{
			margin-top: 82px;
			}
		}

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

　  お知らせ・イベント情報

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

/*-- 全体 --*/
.news{
	padding: 20px 0 25px 0;
	}

/*-- 記事囲い --*/
.news .n_block{
	max-width: 980px;
	margin: 0 auto;
	}
.news .n_inner{
	width: 96%;
	max-width: 940px;
	margin: 20px auto 10px auto;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	}
.news .n_inner::after {/*追記20210924*/
	content: "";
	display: block;
	width: 30%;
	height: 0;
	}
	
/*-- 記事1こずつ --*/
.news .entry{
	width: 30%;
	margin-bottom: 20px;
	}

/*-- アイキャッチ画像 --*/
.entry .thumb{
	position: relative;
	width: 100%;
	margin-bottom:4px;
	overflow: hidden;
	}
.entry .thumb:before{
	content: "";
	display: block;
	padding-top: 100%;
	}
.thumb a .trmg img{
	border-radius: 3px;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: "object-fit-cover;";
	-webkit-transition: 1s all;
	-moz-transition: 1s all;
	-ms-transition: 1s all;
	-o-transition: 1s all;
	transition: 1s all;
	}
.thumb a:hover .trmg img{
	-webkit-transform: scale(1.1,1.1);
	-moz-transform: scale(1.1,1.1);
	-ms-transform: scale(1.1,1.1);
	-o-transform: scale(1.1,1.1);
	transform: scale(1.1,1.1);
	-webkit-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;
	-o-transition: 0.5s all;
	transition: 0.5s all;
	}

/*-- カテゴリー名 --*/
.news .entry .cat{
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 160%;
	letter-spacing: 1px;
	padding: 3px 18px 3px 18px;
	border-radius: 5px 0 5px 0;
	}
/* topics 色設定 */
.news .entry.c_topics .cat{background: #88c84d;}
/* event 色設定 */
.news .entry.c_event .cat{background: #e1b23c;}
/* akiya 色設定 */
.news .entry.c_akiya .cat{background: #73b4af;}

/*-- 記事タイトル --*/
.news .entry h4.ttl a{
	display: block;
	color: #656565;
	font-size: 15px;
	font-weight: bold;
	line-height: 160%;
	text-decoration: none;
	margin-top: 6px;
	margin-bottom: 5px;
	padding-bottom: 5px;
	}
/* hoverで伸びる線 */
.btnline{
	position:relative;
	display:inline-block;
    outline: none;
	}
.btnline::before,
.btnline::after{
	content:'';
	position:absolute;
	z-index:1;
	bottom:0;
	left:0;
	background:#ddd;
	width:24%;
	height:2px;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	}
.c_topics .btnline::after{
	width:0;
	background:#88c84d;
	}
.c_event .btnline::after{
	width:0;
	background:#e1b23c;
	}
.c_akiya .btnline::after{
	width:0;
	background:#73b4af;
	}
.btnline:hover::after {
	width:24%;
	}

/*-- 日付 --*/
.news .entry .date{
	display: block;
	position: relative;
	color: #777;
	font-size: 14px;
	margin-top: 4px;
	}

/*-- もっとみるボタン --*/
.news .button {
	margin: 0 auto 15px auto;
	}
	@media only screen and (max-width: 800px) {
		/*-- カテゴリー名 --*/
		.news .entry .cat{
			font-size: 12px;
			padding: 2px 14px 2px 14px;
			}
		/*-- 記事タイトル --*/
		.news .entry h4.ttl a{
			font-size: 14px;
			margin-top: 1px;
			margin-bottom: 5px;
			padding-bottom: 5px;
			}
		/*-- 日付 --*/
		.news .entry .date{
			font-size: 13px;
			margin-top: 0;
			}
		}
	@media only screen and (max-width: 650px) {
		/*-- 記事1こずつ --*/
		.news .entry{
			width: 48%;
			margin-bottom: 14px;
			}
		/*-- カテゴリー名 --*/
		.news .entry .cat{
			font-size: 11px;
			padding: 2px 12px 2px 12px;
			}
		/*-- 記事タイトル --*/
		.news .entry h4.ttl a{
			font-size: 13px;
			margin-top: 0px;
			margin-bottom: 5px;
			}
		/*-- 日付 --*/
		.news .entry .date{
			font-size: 12px;
			margin-top: 4px;
			}
		.news .entry .date::before{
			top: -5px;
			}
		}
	@media only screen and (max-width: 480px) {
		/*-- 全体 --*/
		.news{
			padding: 15px 0 10px 0;
			}
		.news .n_inner{
			width: 90%;
			margin: 16px auto 8px auto;
			}
		/*-- 記事タイトル --*/
		.news .entry h4.ttl a{
			font-size: 12px;
			margin-top: 0px;
			margin-bottom: 2px;
			}
		/*-- 日付 --*/
		.news .entry .date{
			font-size: 11px;
			margin-top: 0;
			}
		/*-- もっとみるボタン --*/
		.news .button {
			margin: 0 auto 10px auto;
			}
		}

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

　   footer

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

/*-- 全体 --*/
footer#footer{
	background: url("../img/f_bg2.jpg") no-repeat center top;
	-webkit-background-size: cover;
	background-size: cover;
	padding-top: 8px;
	padding-bottom: 10px;
	width: 100%;
	}

footer#footer .f_block{
	max-width: 980px;
	margin: 0 auto;
	}

/*-- フッター メニュー --*/
.f_nav{
	width: 96%;
	max-width: 940px;
	border-top: solid 1px #e9e9e9;
	border-bottom: solid 1px #ddd;
	margin: 0 auto;
	padding: 20px 0 16px 0;
	}
.f_nav .f_inner{
	display: flex;
	justify-content: space-between;
	}
.f_nav dl{}
.f_nav dl dt{
	list-style: none;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 9px;
	line-height: 100%;
	}
/*三角*/
.f_nav dl dt::before{
	content: '\f0da';
	color: #bbb;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right:4px;
	position: relative;
	top: -2px;
	}
.f_nav dl dt:hover::before{
	color: #ccc;
	}
.f_nav dl dd{
	list-style: none;
	font-size: 13px;
	font-weight: bold;
	margin-left: 10px;
	line-height: 175%;
	}
.f_nav dl a{
	color: #656565;
	text-decoration: none;
	}
	@media only screen and (max-width: 940px) {
		.f_nav{
			width: 90%;
			padding: 20px 3% 16px 3%;
			}
		.f_nav dl dt{
			font-size: 13px;
			}
		/*三角*/
		.f_nav dl dt::before{
			margin-right:2px;
			top: 0px;
			}
		.f_nav dl dd{
			font-size: 12px;
			}
		}
	@media only screen and (max-width: 800px) {
		.f_nav{
			display: none;
			}
		}


/*-- お問合せ先＆ガイドブック 囲み --*/
.f_info{
	width: 96%;
	max-width: 940px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	}

/*-- ガイドブック --*/
.guidebook{
	width: 50%;
	margin: 0 auto 0 auto;
	padding-top: 30px;
	}
.guidebook a{
	display: block;
	background-image: url("../img/gb_left.png"), url("../img/gb_bg.jpg") ;
	background-position: left bottom, center center;
	background-repeat: no-repeat, no-repeat;
	-webkit-background-size: 32%, cover;
	background-size: 32%, cover;
	border-radius: 3px;
	color: #fff;
	text-align: left;
	text-decoration: none;
	padding: 20px 0 14px 150px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	}
.guidebook a p{
	line-height: 120%;
	}
.guidebook a p.gb_ttl{
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 5px;
	}
.guidebook a p.gb_txt{
	font-size: 17px;
	font-weight: bold;
	margin-bottom: 5px;
	}
.guidebook a p.gb_alf{
	font-size: 11px;
	font-family: 'Crimson Text';
	letter-spacing: 2px;
	}
.guidebook a:hover{
	opacity: 0.7;
	}

/*-- お問合せ先情報 --*/
.f_info .address{
	text-align: center;
	padding-top: 30px;
	width: 48%;
	}
.f_info .address .a_inner{
	color: #656565;
	border-radius: 3px;
	padding-bottom: 10px;
	}
.f_info .address .a_ttl{
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 1px;
	margin-bottom: 8px;
	display:inline-block;
	text-shadow: 0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1);
	}
.f_info .address .a_txt{
	font-size: 13px;
	letter-spacing: 1px;
	line-height: 170%;
	text-shadow: 0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1),0px 0px 5px rgba(255, 255, 255, 1);
	}
.f_info .address .a_txt a{
	color: #656565;
	}
/*hover左から色変化*/
#footer .bgskw::before{
	background:#73b4af;
	}
	@media only screen and (max-width: 940px) {
		.guidebook{
			width: 65%;
			}
		}
	@media only screen and (max-width: 850px) {
		.guidebook a p.gb_ttl{
			font-size: 20px;
			}
		.guidebook a p.gb_txt{
			font-size: 14px;
			}
		.guidebook a p.gb_alf{
			font-size: 10px;
			}
		}
	@media only screen and (max-width: 800px) {
		.guidebook{
			width: 70%;
			}
		.guidebook a{
			padding: 20px 0 14px 34%;
			}
		.guidebook a p.gb_ttl{
			font-size: 18px;
			}
		.f_info .address .a_ttl{
			font-size: 18px;
			}
		.f_info .address .a_txt{
			font-size: 13px;
			line-height: 165%;
			margin-bottom: 15px;
			}
		}
	@media only screen and (max-width: 650px) {
		.f_info{
			width: 96%;
			display: block;
			}
		.guidebook{
			width: 77%;
			margin: 0 auto 20px auto;
			padding-top: 0;
			}
		.guidebook a{
			background-size: 32%, cover;
			padding: 18px 0 10px 32%;
			}
		.guidebook a p.gb_ttl{
			font-size: 16px;
			}
		.guidebook a p.gb_txt{
			font-size: 12px;
			}
		.guidebook a p.gb_alf{
			font-size: 9px;
			}
		.f_info .address{
			width: 100%;
			padding-top: 3px;
			}
		.f_info .address .a_ttl{
			letter-spacing: 1px;
			margin-bottom: 10px;
			}
		.f_info .address .a_txt{
			font-size: 12px;
			}
		}
	@media only screen and (max-width: 480px) {
		.guidebook{
			width: 88%;
			margin: 0 auto;
			padding-top: 0;
			}
		.guidebook a{
			background-size: 34%, cover;
			padding: 14px 0 10px 32%;
			}
		.guidebook a p.gb_ttl{
			font-size: 14px;
			}
		/*-- お問合せ先情報 --*/
		.f_info .address{
			padding-top: 2px;
			}
		.f_info .address .a_ttl{
			font-size: 16px;
			margin-bottom: 8px;
			}
		.f_info .address .a_txt{
			font-size: 11px;
			margin-bottom: 10px;
			}
		}
	@media only screen and (max-width: 360px) {
		.guidebook a{
			background-size: 34%, cover;
			padding: 9px 0 6px 32%;
			}
		.guidebook a p.gb_ttl{
			font-size: 12px;
			margin-bottom: 3px;
			}
		.guidebook a p.gb_txt{
			font-size: 11px;
			margin-bottom: 2px;
			}
		.guidebook a p.gb_alf{
			font-size: 8px;
			letter-spacing: 1px;
			}
		.f_info .address .a_ttl{
			font-size: 14px;
			margin-bottom: 6px;
			}
		.f_info .address .a_txt{
			font-size: 10px;
			margin-bottom: 8px;
			}
		}

/*お問合せはこちら*/
footer#footer .button {
	margin: 30px auto 0 auto!important;
	border: none;
	background: #fff;
	color: #73b4af;
	}
footer#footer .button span{
	color: #73b4af;
	}
footer#footer .button:hover {
	border: none;
	}
footer#footer .button:hover span{
	color: #fff;
	}
footer#footer .button::before {
	background:#73b4af;
	}

/* 矢印 */
footer#footer a.button::after {
    border-right: 3px solid #73b4af;
    border-top: 3px solid #73b4af;
	}
footer#footer a:hover::after {
    border-right: 3px solid #fff!important;
    border-top: 3px solid #fff!important;
	}

/*-- コピーライト --*/
.cpright{
	text-align:center;
	padding: 28px;
	}
.cpright small{
	color:#fff;
	font-size:10px;
	font-weight: bold;
	letter-spacing: 1px;
	}
