@charset "UTF-8";
html{
	font-size: 62.5%;
	color: #444;
	line-height: 150%;
	letter-spacing: 0.1em;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
a{
	text-decoration: none;
	color:#444;
	opacity: 1;
	-moz-transition: 0.2s ease-in-out;
	-webkit-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
a:hover{
	opacity: 0.6;
}
img{
	width: 100%;
	height: auto;
}
body{
	line-height: 150%;
	font-size: 1.4rem;
	width:100%;
	height:100%;
}
ul,li{
	list-style: none;
}
.mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	/* 追加 */
	transform: none;
}
.gothic{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
header{
	width: 100%;
	border-bottom: 5px #c1ac4a solid;
}
header #header{
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px 0 0;
}
header #header h1,
header #header h2{
	margin: 0 0 0;
}
header #header .head_logo,header #header .head_tel{
	display: flex;
	width:293px;
}
header #header .header_top{
	display: flex;
	justify-content: space-between;
}
header #header .globalMenuSp ul{
	display: flex;
	justify-content: space-between;
	padding: 0;
	margin: 0 0 13px;
}
header #header ul li{
	padding: 20px 0 10px;
	text-align: center;
}
header #header ul li a,footer #footer ul li a{
	font-size: 1.6rem;
}
footer{
	clear:both;
	width:100%;
	background-image: url(/common/img/foot_bg.gif);
	background-repeat: repeat;
	display: block;
}
footer #footer{
	max-width: 1200px;
	margin: 0 auto;
	padding-bottom: 30px;
}
footer #footer .foot_access {
	width: 71%;
	display: flex;
	flex-direction: column;
	margin: 38px 0 0;
}
footer #footer .foot_access p{
	margin:0; 
}
footer #footer .border_right{
	border-right: 1px #000 dotted;
	width: 54%;
}
footer #footer .foot_access .googlemap{
	text-align: right;
}
footer #footer .foot_access .googlemap:before{
	content: url(/common/img/googlemap.png);
}
footer #footer .foot_access .googlemap a{
	font-size: 1.2rem;
	color: #fff;
	text-decoration: underline;
	font-weight: bold;
}
footer #footer .foot_access dl dt{
	font-weight: bold;
	font-size: 1.4rem;
	padding-bottom: 8px;
	line-height: 20px;
	height: 20px;
}
footer #footer .foot_access dl dt.car:before{
	content: url(/common/img/car.png);
	margin-right: 5px;
}
footer #footer .foot_access dl dt.bus:before{
	content: url(/common/img/bus.png);
	margin-right: 5px;
}
footer #footer .foot_access dl dd{
	line-height: 120%;
	margin-bottom: 15px;
	margin-left: 0;
	font-size: 1.2rem;	
	padding-bottom:5px;
}
footer #footer .foot_ad{
	width:27%;
	display: flex;
}
footer #footer .foot_ad h3{
	margin-top: 0;
}
footer #footer .foot_ad figure{
	max-width: 332px;
	width: 100%;
	margin:0;
}
footer #footer .foot_ad p{
	font-size: 1.2rem;
	margin:0 0 5px 0;
	line-height: 130%;
}
footer #footer .foot_ad a{
	float: right;
	display: block;
}
footer #footer .foot_ad a img{
	max-width: 100%;
}
footer #footer .foot_ad p.foot_mail{
	text-align: right;
}
footer #footer .foot_ad p.foot_mail:before{
	content: url(/common/img/foot_mail.png);
	margin-right: 5px;
}
footer small{
	text-align: center;
	clear: both;
	display: block;
}
#side{
	width: 206px;
	background-color: #F9F7ED;
	padding-bottom: 100px;
	margin-right: 14px;
}
#side ul{
	padding:0;
	margin:0;
}
#side ul li{
	padding: 5px 0;
}
#side ul li ul li{
	margin-left: 30px;
}
#side ul li ul li:before{
	content:url(/common/img/arrow_icon.png);
}
#side .banner img{
	margin: 20px auto;
	display: block;
}
#contents{
	margin: 0 auto;
	width: 980px;
	display: flex;
}
#contents_box {
	float: right;
	width: 760px;
	margin: 0 auto;
	display: block;
	padding-bottom: 100px;
}
#contents_box .box {
	width:95%;
	margin: 0 auto;
}
#contents_box h3{
	background-image: url(../img/h3.png);
	background-repeat: no-repeat;
	background-position: bottom;
	font-size: 2.2rem;
	font-weight: 200;
	padding-bottom: 30px;
	padding-left: 10px;
	clear: both;
	margin:40px auto 20px; 
	display: block;
}
#contents_box h4{
	clear: both;
	font-size: 1.8rem;
	border-bottom: 1px #c1ac4a solid;
	padding-top: 40px;
	padding-bottom: 8px;
	font-weight: normal;
}
#contents_box #main_img,
#contents_box .main_img{
	margin: 20px 0;
}
/* TOPページバナー */
.btn_mizukokuyou {
	text-align: center;
	margin-bottom: 80px;
}
.btn_mizukokuyou a {
	display: inline-block;
}
.mizukokuyou_link {
	font-weight: bold;
	color: #3ab1cb;
	text-decoration: underline;
}

#slide {
	width:1200px;
	height:515px;
	margin:0 auto;
	position:relative;
	display: block;
}
#slide img {
	position:absolute;
	left:0;
	top:0;
	max-width: 1200px;
	width: 100%;
	height: auto;
}
#wrap{
	width: 100%;
	max-width: 1200px;
	margin:0 auto;
}
#wrap ul.menu{
	display: table;
	table-layout: fixed;
	width: 100%;
}
#wrap ul.menu2{
	margin-bottom: 80px; /* 100px */
}	
#wrap ul.menu li{
	display: table-cell;
	max-width: 250px;
}
#wrap ul.menu li img{
	max-width: 223px;
	height: auto;
	width: 100%;
}
aside p.info_title{
	font-size: 2rem;
	font-weight: bold;
	color: #C1AC4A;
	border-top:1px #C1AC4A solid;
	border-bottom:1px #C1AC4A solid;
	padding: 10px 0;
	margin-top: 100px;
	margin-bottom: 0;
}
aside ul{
	border-bottom: 1px #C1AC4A solid;
	padding: 0;
	margin: 0 0 50px 0;
}
aside ul li{
	border-bottom: 1px #666 dotted;
	width: 95%;
	margin:0 25px;
	display: inline-block;
	padding: 5px;
	clear: both;
}
aside ul li:last-child{
	border:none;
}
aside ul li time,aside ul li h3,aside ul li span{
	font-weight: bold;
	display: inline-block;
	float: left;
	margin: 4px 0 0;
	margin-bottom: 10px;
}
aside ul li time{
	margin-right: 10px;
	font-weight:normal;
}
aside ul li time,aside ul li h3{
	font-size: 1.6rem;
}
aside ul li h3 a{
	text-decoration: underline;
}
aside ul li p.detail{
	display: inline-block;
	float: right;
	margin: 4px 0 10px;
}
#page-top{
	width:100px;
	height:50px;
	display:none;
	position:fixed;
	right:16px;
	bottom:16px;
}
#page-top p{
	border-radius: 15px;
	margin:0;
	padding:0;
	text-align:center;
	background:#c1ac4a;
	-webkit-transition:all 0.3s;
	-moz-transition:all 0.3s;
	transition:all 0.3s;
}
#page-top p:hover{
	opacity: 0.65;
}
#move-page-top{
	color:#fff;
	line-height:50px;
	text-decoration:none;
	display:block;
	cursor:pointer;
}
#back{
	clear: both;
	padding:5px;
	text-align: center;
	width:100%;
	display: block;
/*	background-color: #e6e6e6;*/
	color: #666;
	margin: 20px auto;
	border-radius: 10px;
}
#contact_banner{
	clear: both;
	display: block;
	background-color: #E0F5F4;
	padding: 20px 10px 10px;
	border-radius: 10px;
	margin-bottom: 40px;
}
#contact_banner h5{
	font-size: 2.2rem;
	font-weight: bold;
	border-bottom: none;
	margin:0;
	padding: 0; 
}
#contact_banner p{
	font-size: 2rem;
	margin-left: 28px;
}
.contact_banner_mail{
	margin-bottom: 0;
	text-align: right;
}
.contact_banner_mail a{
	color: #0099FF;
	font-weight: bold;
	font-size: 1.4rem !important;
}
.contact_banner_mail:before{
	content: url(../img/contents_mail.png);
	padding-right: 5px;
}

.footer_sns{
	width: 100%;
	margin: 0 auto;
	padding: 30px 0 23px;
	background-color: #FBF8F4;
}
.footer_sns ul{
	width: 1200px;
	display: flex;
	margin: 0 auto;
	padding: 0;
}
.footer_sns ul li{
	margin-right: 10px;
}

.footer_sns ul li:last-of-type{
	margin-right: 0;
}

footer #footer ul{
	display: flex;
	justify-content: space-between;
	margin: 0 0 0 0;
	padding: 30px 0 0 0;
}
footer #footer ul li:first-of-type{
	margin-left: 0;
}
footer #footer .foot_box{
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}
footer #footer .list_box{
	display: flex;
	justify-content: space-between;
}
footer #footer .foot_address{
	margin-left: 40px;
}
footer #footer .shingonin_logo {
	width: 230px;
	margin: 20px auto 0 0;
}
footer #footer .foot_ad {
	width: 100%;
	display: flex;
	flex-direction: column;
}
footer #footer .foot_access .mincho {
	margin-bottom: 10px;
	font-size: 22px;
	color: #000;
	letter-spacing: 0;
	font-weight: bold;
}
#footer nav ul li a{
	text-decoration: underline;
}
.sp_show{
	display: none;
}
.pc_show{
	display: block;
}
@media screen and (min-width:561px) and ( max-width:960px) {
	/*　画面サイズが768pxから1024pxまではここを読み込む　*/
	header #header {
    max-width: 100%;
    margin: 0 auto;
    padding: 20px 10px 0;
}
#kuyo_qa .inner figure img {
	width: 200px;
}
footer #footer {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 10px 30px;
}
.footer_sns ul {
	width: 100%;
}
footer #footer .border_right {
	border-right: 1px #000 dotted;
	width: 90%;
	padding: 0 0px 0 0;
	margin: 15px 10px 0 0;
}
.footer_sns ul {
	width: 98%;
	flex-wrap: wrap;
	justify-content: center;
}
.footer_sns ul li {
	width: 32%;
	margin-right: 10px;
}
.footer_sns ul li:nth-child(3){
	margin-right: 0;
}
}
@media(max-width:560px){
	.sp_show{
		display: block;
	}
	.pc_show{
		display: none;
	}
	#footer{
		width: 100%;
		padding-bottom: 20px;
	}
	.footer_sns ul{
		width: 100%;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
	}
	.footer_sns ul li{
		width: 350px;
		margin: 0 auto 10px;
	}
	.footer_sns ul li img{
		width: 100%;
	}
	#footer nav ul{
		width: 90%;
		display: flex;
		flex-wrap: wrap;
		padding: 30px 0 0 20px;
	}
	#footer nav ul li{
		 width: 165px;
		 margin-bottom: 20px;
		 text-align: center;
	}

	footer #footer .foot_box {
    display: flex;
		flex-direction: column;
    justify-content: space-between;
    margin-top: 30px;
}
	footer #footer .foot_access{
		width: 90%;
		margin: 0 auto;
		flex-direction: column;
	}
	footer #footer .foot_access .mincho{
		margin-bottom: 10px;
		font-size: 22px;
		color: #000;
		letter-spacing: 0;
		font-weight: bold;
	}
	footer #footer .list_box {
    display: flex;
    justify-content: space-between;
		flex-direction: column;
}
	footer #footer .border_right {
		border-bottom: 1px #000 dotted;
		border-right: none;
		width: 100%;
	}
	footer #footer .foot_access .googlemap {
		margin-top: 10px;
	}
	footer #footer .shingonin_logo{
		width: 194px;
		margin: 0 auto 10px;
	}
	footer #footer .foot_address {
    margin-left: 0;
}
	footer #footer .foot_ad{
		width:90%;
		margin: 0 auto 18px;
		flex-direction: row;
	}
	footer #footer .foot_ad figure {
		max-width: 140px;
		width: 100%;
		margin: 0;
	}
	footer #footer .foot_ad figure img{
		width: 100%;
	}
	footer #footer .foot_ad p{
		margin-left: 10px;
		font-size: 10px;
		text-align: left;
	}
	footer #footer .foot_ad p.foot_mail {
		text-align: left;
	}footer #footer .foot_ad a {
		float: none;
		display: inline-flex;
		align-items: center;
	}
	footer #footer .foot_ad p.foot_mail:before {
		content: '';/*何も入れない*/
		background-image: url(/common/img/foot_mail.png);
	background-size: contain;
		margin-right: 5px;
		width: 16px;
		height: 10px;
		display: inline-block;
	}
	.footer_sns ul li:last-of-type {
    margin: 0 auto;
}
	/* +++ SPメニュー +++ */
	header #header {
		height: 80px;
		padding: 0;
	}
	header #header .head_logo, header #header .head_tel {
    width: 274px;
		padding-left: 10px;
}
	header #header h1,
	header #header h2{
		margin: 0;
	}
	header #header h1 a{
		width: 270px;
		padding: 20px 0 0 10px;
	}
	.global_logo_sp{
		padding: 20px 0 0;
		height: 60px;
		border-bottom: 1px solid #CCCCCC;
	}
	header #header ul li {
		padding: 0;
		text-align: left;
	}
	.global_contact{
		padding: 10px 0 0;
	}
	.global_contact p{
		font-size: 18px;
		margin: 0;
	}
	.global_contact .foot_mail{
		margin-top: 5px;
		font-size: 14px;
	}
	.global_contact .foot_mail:before {
		content: '';/*何も入れない*/
		background-image: url(/common/img/head_mail.png);
	background-size: contain;
		margin-right: 5px;
		width: 16px;
		height: 12px;
		display: inline-block;
	}
	.global_contact .head_sns{
		width: 120px;
		height: 50px;
		margin: 20px auto 0;
		display: flex;
		justify-content: space-between;
	}
	.global_contact .head_sns p{
		width: 50px;
	}
	.global_contact p span{
		padding-top: 10px;
		display: block;
		font-size: 12px;
	}
	header #header .globalMenuSp ul{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
	}
	/*　ハンバーガーメニューボタン　*/
	.hamburger {
		display : block;
		position: absolute;
		z-index : 3;
		right : 20px;
		top   : 20px;
		width : 42px;
		height: 42px;
		cursor: pointer;
		text-align: center;
	}
	.hamburger span {
		display : block;
		position: absolute;
		width   : 30px;
		height  : 1px ;
		left    : 6px;
		background : #000;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}
	.hamburger span:nth-child(1) {
		top: 10px;
	}
	.hamburger span:nth-child(2) {
		top: 20px;
	}
	.hamburger span:nth-child(3) {
		top: 30px;
	}
	
	/* スマホメニューを開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
		top : 16px;
		left: 6px;
		background :#000;
		-webkit-transform: rotate(-45deg);
		-moz-transform   : rotate(-45deg);
		transform        : rotate(-45deg);
	}
	.hamburger.active span:nth-child(2){
		background :#fff !important;
	}
	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 16px;
		background :#000;
		-webkit-transform: rotate(45deg);
		-moz-transform   : rotate(45deg);
		transform        : rotate(45deg);
	}
	
	/* メニュー背景　*/
	nav.globalMenuSp {
		position: absolute;
		z-index : 2;
		top  : 0;
		left : 0;
		color: #707070;
		background: rgba( 255,255,255,1 );
		text-align: center;
		width: 100%;
		transform: translateY(-100%);
		transition: all 0.6s;
		padding-bottom: 30px;
	}
	
	nav.globalMenuSp ul {
		margin: 0 auto;
		padding: 0;
		width: 100%;
	}
	
	nav.globalMenuSp ul li {
		margin: 0;
		display: flex;
		flex-direction: column;
		padding: 0;
		width: 100%;
		transition: .4s all;
		border-bottom: 1px solid #ccc;
	}
	nav.globalMenuSp ul li:last-child {
		padding-bottom: 0;
	}
	nav.globalMenuSp ul li:hover{
		background :#ddd;
	}
	
	nav.globalMenuSp ul li a {
		display: flex;
		align-items: center;
		color: #707070;
		padding: 15px 0 15px 20px;
		text-decoration :none;
		line-height: 1;
	}
	nav.globalMenuSp ul li a:before {
		content: '';/*何も入れない*/
		display: inline-block;/*忘れずに！*/
		width: 10px;/*画像の幅*/
		height: 10px;/*画像の高さ*/
		background-image: url(../img/listicon.png);
		background-size: contain;
		margin-right: 5px;
	}
	/* クリックでjQueryで追加・削除 */
	nav.globalMenuSp.active {
		opacity: 100;
		display: block;
		 transform: translateY(0%);
	}
	
	/* くの字CSS */
	.arrow {
		position: relative;
		display: inline-block;
		padding: 10px;
	}
	
	.arrow::after {
		content: '';
		width: 10px;
		height: 10px;
		border-top: solid 1px #A3A3A3;
		border-right: solid 1px #A3A3A3;
		position: absolute;
		right: 20px;
		top: 18px;
	}
	.arrow.arrow-right::after {
		transform: rotate(45deg);
	}
	}