﻿@charset "utf-8";
/*==========================================
 device
===========================================*/
.pc_none {display: none !important;}
.sp_none {display: block !important;}
@media screen and (min-width: 0px) and (max-width:768px) {
.pc_none {display: block !important;}
.sp_none {display: none !important;}
}

@media screen and (min-width: 0px) and (max-width:768px) {
.min_img{
  width:50% !important;
  display:block;
  margin:0 auto;
}
}

/*==========================================
 layout
===========================================*/
.db,
.btl,
.btc,
.btr {
  display:block;
}
ul[class*="grid"],
div[class*="grid"],
span[class*="grid"]{
  letter-spacing: -.4em;
}
[class*="grid"] li,
[class*="grid"] div,
[class*="grid"] span{
  display:inline-block;
  vertical-align: top;
  letter-spacing: normal;
  padding: 0.5%;
}
.grid2>li,
.grid2>div,
.grid2>span{
  width:50%;
}
.grid3>li,
.grid3>div,
.grid3>span{
  width:33.33%;
}
.grid4>li,
.grid4>div,
.grid4>span{
  width:25%;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.sp_grid1>li,
.sp_grid1>div,
.sp_grid1>span{
  width: 100%;
}
.grid4>li,
.grid4>div,
.grid4>span{
  width:50%;
}
}

/*==========================================
 title
===========================================*/
/*===h1===*/
h1 {font-size: 10px;}

/*===h2===*/
h2{
  font-size: 30px;
  text-align: center;
  line-height:1.4;
  margin-bottom: 40px;
}
#home h2 span,
.footer_contact h2 span{	
color: #cc9f2c;	
display: block;	
font-size: 26px;	
font-family: 'Tangerine', cursive;	
}
/*下層先頭*/
h2.low-top{
	font-size: 22px;
	text-align:left;
	background: #f6f6f6;
	padding: 12px 0 12px 1em;
	margin-bottom: 40px;
}
/*===Gfont===*/	
.gfont {	
font-family: 'Tangerine', cursive;	
}
@media screen and (min-width: 0px) and (max-width:768px) {
h2 {
	font-size: 18px;
	margin-bottom: 20px;
}
#home h2 span{	
font-size: 20px;	
}
/*下層先頭*/
h2.low-top{
	font-size: 18px;
	padding: 12px 0 12px 10px;
}
}

/*===h3===*/
h3{
  position: relative;
  font-size:18px;
  font-weight:bold;
  border-bottom: 2px solid #f7f5f0;
  padding:0 0 .5em 8px;
  margin:0 0 24px 0;
}
h3::after {
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: 2;
    content: "";
	width: 20%;
	height: 2px;
	background-color: #9f1e62;
}
@media screen and (min-width: 0px) and (max-width:768px) {
h3 {
  padding-bottom: .3em;
  margin-bottom: 12px;
}
}

/*===h4===*/
h4{
font-size:16px;
font-weight:bold;
border-left:4px solid #666;
padding:0 0 0 8px;
margin:0 0 .5em 0;
}

/*===見出し装飾===*/
/*短い中央下ライン*/
.ttl--lineBtm{
  position: relative;
  padding-bottom: 10px;
}
.ttl--lineBtm::after{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  width: 60px;
  border-bottom: 1px solid #666666;
  margin: auto;
}
/*短い左右ライン*/
.ttl--lineSide {
  position: relative;
  display: inline-block;
  padding: 0 80px;
}
.ttl--lineSide::before,
.ttl--lineSide::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 64px;
  height: 1px;
  background: #000;
}
.ttl--lineSide::before {
  left:0;
}
.ttl--lineSide::after {
  right: 0;
}


/*==========================================
 text
===========================================*/
/*===書体===*/
.font_sans{
font-family: "游ゴシック", "Yu Gothic", YuGothic,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro', 'メイリオ','Meiryo','Osaka',Verdana,'ＭＳ Ｐゴシック','MS P Gothic',Arial,Helvetica,sans-serif;
}
.font_serif{
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

/*===装飾===*/
.fw{
font-weight:bold;
}
.att{
background: #f6ecd8;
border-bottom:1px dashed #f5deb3;
}
.point{
color:#000000;
font-weight:bold;
}
mark, .mark{
  background: -moz-linear-gradient(transparent 70%, #fef9ae 70%);
  background: -webkit-linear-gradient(transparent 70%, #fef9ae 70%);
  background: -webkit-gradient(linear, 0 0, 0 100%, color-stop(0.70, transparent), color-stop(0.70, #fef9ae));
  background: linear-gradient(transparent 70%, #fef9ae 70%);
}
.title{
border-left : #8e3013 solid 7px;
padding:3px 7px ;
margin:5px 0 3px 0;
font-weight : bold;
font-size:110%;
display: inline-block;
}
.att3 {
	background: #9f1e62;
	padding:4px 14px 2px;
	margin:5px 5px 10px 0px;
	font-weight:bold;
	font-size:110%;
	display:inline-block;
	color:#fff;
	text-shadow: 
		-1px -1px #9f1e62,
		1px -1px #9f1e62,
		-1px 1px #9f1e62,
		1px 1px #9f1e62;
	box-shadow: 1px 1px 0 #e8539f inset;
	border: 1px solid #8e084d;
}
.att4 {
	background: #f9f2f6;
	padding:10px 15px;
	display:block;
	border: 1px solid #f9f2f6;
	box-shadow: 1px 1px 0 #fff inset;
	margin-top: 6px;
}
.att4 .point {
	color: #038dc7;
	font-size: 1.06em;
	font-weight: bold;
	text-shadow: 0 1px #fff;
}

/*===位置===*/
.btl{text-align:left;}
.btc{text-align:center;}
.btr{text-align:right;}

/*===色===*/
.fc-red{color:#df0101;}
.fc-orange{color:#f60;}
.fc-yellow{color:#fc0;}
.fc-lime{color:#9c3;}
.fc-green{color:#060;}
.fc-aqua{color:#20bbe0;}
.fc-teal{color:#099;}
.fc-blue{color:#039;}
.fc-navy{color:#006;}
.fc-purple{color:#639;}
.fc-fuchsia{color:#f36;}
.fc-pink{color:#f69;}
.fc-maroon{color:#600;}
.fc-brown{color:#633;}
.fc-olive{color:#990;}
.fc-gray{color:#666;}
.fc-silver{color:#999;}
.fc-black{color:#000;}
.fc-white{color:#fff;}

/*===大きさ===*/
.fs-1{font-size:10px;}
.fs-2{font-size:12px;}
.fs-3{font-size:14px;}
.fs-4{font-size:16px;}
.fs-5{font-size:18px;}
.fs-6{font-size:20px;}
.fs-7{font-size:22px;}

/*===白フチ===*/
.outline-1{
  text-shadow: 
  #fff 1px 0px,  #fff -1px 0px,
  #fff 0px -1px, #fff 0px 1px,
  #fff 1px 1px , #fff -1px 1px,
  #fff 1px -1px, #fff -1px -1px,
  #fff 1px 1px,  #fff -1px 1px,
  #fff 1px -1px, #fff -1px -1px,
  #fff 1px 1px,  #fff -1px 1px,
  #fff 1px -1px, #fff -1px -1px;
}
.outline-2{
  text-shadow: 
  #fff 2px 0px,  #fff -2px 0px,
  #fff 0px -2px, #fff 0px 2px,
  #fff 2px 2px , #fff -2px 2px,
  #fff 2px -2px, #fff -2px -2px,
  #fff 1px 2px,  #fff -1px 2px,
  #fff 1px -2px, #fff -1px -2px,
  #fff 2px 1px,  #fff -2px 1px,
  #fff 2px -1px, #fff -2px -1px;
}


/*==========================================
 img-layout
===========================================*/
/*画像左レイアウト300px*/
.img_left{padding: 20px 0; overflow:hidden;}
.img_left img, .img_left .img_box{display:block; float:left; width:300px;}
.img_left .txt_box{ float:right; width:400px; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_left img, .img_left .img_box{ float:none; width:100%; margin-bottom: 20px;}
.img_left .txt_box{float:none; width:100%; padding-bottom: 20px;}
}
/*画像右レイアウト300px*/
.img_right{padding: 20px 0; overflow:hidden;}
.img_right img, img_right .img_box{display:block; float:right; width:300px;}
.img_right .txt_box{float:left; width:400px; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_right img, img_right .img_box{float:none; width:100%; margin-bottom: 20px;}
.img_right .txt_box{float:none; width:100%; padding-bottom: 20px;}
}
/*画像のみ表示*/
.img_only{display: block; width: 100%; padding: 0 0 20px 0; margin: 0 auto;}
.img_only img{width: 100%; max-width: 100%; height:auto; margin: 0 auto;}

/*画像左レイアウト200px*/
.img_left1{padding: 20px 0; overflow:hidden;}
.img_left1 img, .img_left1 .img_box{display:block; float:left; width:200px;}
.img_left1 .txt_box{ float:right; width:500px; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_left1 img, .img_left1 .img_box{ float:none; width:100%; margin-bottom: 20px;}
.img_left1 .txt_box{float:none; width:100%; padding-bottom: 20px;}
}
/*画像右レイアウト200px*/
.img_right1{padding: 20px 0; overflow:hidden;}
.img_right1 img, img_right1 .img_box{display:block; float:right; width:200px;}
.img_right1 .txt_box{float:left; width:500px; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_right1 img, img_right1 .img_box{float:none; width:100%; margin-bottom: 20px;}
.img_right1 .txt_box{float:none; width:100%; padding-bottom: 20px;}
}


/*==========================================
 list
===========================================*/
ul.list_type1{
	list-style-position: inside;
	list-style-type : disc;
	margin-left: 1em;
	padding-left: 1em;
	text-indent: -1em;
}
ul.list_type2{
	list-style-position: inside;
	list-style-type : decimal;
	margin-left: 1em;
	padding-left: 1em;
	text-indent: -1em;
}


/*==========================================
 table
===========================================*/
table{
	width: 100%;
	table-layout: fixed;
}
table th{
	background:#f7f7ee;
}
table th.left,
table td.left,
table th.center,
table td.center,
table th.right,
table td.right,
table tr.left,
table tr.center,
table tr.right,
table.left,
table.center,
table.right{
	float:inherit;
}
table th.center,
table td.center,
table tr.center,
table.center{
	margin:inherit;
	display:table-cell;
}
table tr.center{
	display:table-row;
}table.center{
	display:table;
}
.t-l,
table.t-l th,
table.t-l td,
table tr.t-l th,
table tr.t-l td,
table th.t-l,
table td.t-l{
	text-align:left;
}
.t-c,
table.t-c th,
table.t-c td,
table tr.t-c th,
table tr.t-c td,
table th.t-c,
table td.t-c{
	text-align:center;
}
.t-r,
table.t-r th,
table.t-r td,
table tr.t-r th,
table tr.t-r td,
table th.t-r,
table td.t-r{
	text-align:right;
}
table.v-t th,
table.v-t td,
table tr.v-t th,
table tr.v-t td,
table th.v-t,
table td.v-t{
	vertical-align:top;
}
table tr.v-t img,
table th.v-t img,
table td.v-t img{
display: inline-block;
vertical-align: top;
}
table.v-m th,
table.v-m td,
table tr.v-m th,
table tr.v-m td,
table th.v-m,
table td.v-m{
	vertical-align:middle;
}
table tr.v-m img,
table th.v-m img,
table td.v-m img{
	display: inline-block;
	vertical-align: middle;
}
table.v-b th,
table.v-b td,
table tr.v-b th,
table tr.v-b td,
table th.v-b,
table td.v-b{
	vertical-align:bottom;
}
table tr.v-b img,
table th.v-b img,
table td.v-b img{
	display: inline-block;
	vertical-align: bottom;
}
table caption{
	font-size:1em;
	font-weight:bold;
	text-align: left;
}
table caption::before{
	content: "●";
	color: #000;
	margin-right: .3em;
}


/*===sp===*/
@media screen and (min-width: 0px) and (max-width:768px) {
table img{
	max-width: 50% !important;
}

/*col1*/
table.sp_col1 th{
display: block;
width: 100%;
}
table.sp_col1 td{
display: block;
border: 1px solid #ddd;
border-top: none;
}
table.sp_col1 {
border-collapse: separate;
border-spacing: 0 10px;
}
}


/*==========================================
 link
===========================================*/
/*hover*/
@media screen and (min-width:768px) {
a {-webkit-transition: all .4s; transition: all .4s;}
.link_type1 a:hover{color: #45bdd9;}
.link_type1 a i{padding: .3em;}
a.fade:hover {opacity: .7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; -webkit-transition: all .4s; transition: all .4s;}
}
/*IE（アニメーション無効化）*/
@media all and (-ms-high-contrast:none) {
a {transition: none;}
a.fade {transition: none;}
a.fade:hover {transition: none;}
}

/*==========================================
 space
===========================================*/
/*margin*/
.mt0{margin-top: 0 !important;}.mr0{margin-right: 0 !important;}.mb0{margin-bottom: 0 !important;}.ml0{margin-left: 0 !important;}
.mt10{margin-top: 10px !important;}.mr10{margin-right:10px !important;}.mb10{margin-bottom: 10px !important;}.ml10{margin-left: 10px !important;}
.mt20{margin-top: 20px !important;}.mr20{margin-right:20px !important;}.mb20{margin-bottom: 20px !important;}.ml20{margin-left: 20px !important;}
.mt30{margin-top: 30px !important;}.mr30{margin-right:30px !important;}.mb30{margin-bottom: 30px !important;}.ml30{margin-left: 30px !important;}
.mt40{margin-top: 40px !important;}.mr40{margin-right:40px !important;}.mb40{margin-bottom: 40px !important;}.ml40{margin-left: 40px !important;}
.mt50{margin-top: 50px !important;}.mr50{margin-right:50px !important;}.mb50{margin-bottom: 50px !important;}.ml50{margin-left: 50px !important;}
.mt60{margin-top: 60px !important;}.mr60{margin-right:60px !important;}.mb60{margin-bottom: 60px !important;}.ml60{margin-left: 60px !important;}
.mt70{margin-top: 70px !important;}.mr70{margin-right:70px !important;}.mb70{margin-bottom: 70px !important;}.ml70{margin-left: 70px !important;}
.mt80{margin-top: 80px !important;}.mr80{margin-right:80px !important;}.mb80{margin-bottom: 80px !important;}.ml80{margin-left: 80px !important;}
.m-r1em{margin:0 1em 0 0;}.m-b1em{margin:0 0 1em 0;}.m-l1em{margin:0 0 0 1em;}.m-half{margin:0 0 .5em 0;}.m-lrhalf{margin:0 .5em;}.m-lr1em{margin:0 1em;}.m-b1ema{margin:0 auto 1em auto;}
.m-0a{margin:0 auto !important;}

/*==========================================
 width
===========================================*/
.w100{width:100%;}.w90{width:90%;}.w85{width:85%;}.w80{width:80%;}.w75{width:75%;}.w70{width:70%;}.w60{width:60%;}.w50{width:50%;}.w40{width:40%;}.w35{width:35%;}.w30{width:30%;}.w25{width:25%;}.w20{width:20%;}.w15{width:15%;}.w10{width:10%;}


/*==========================================
 パンくず
===========================================*/
.breadcrumbs {
  width: 98%;
  max-width: 960px;
  height: auto;
  font-size: 12px;
  margin: 0px auto 40px auto;
  overflow: hidden;
  color: #666;
}
.breadcrumbs li {
  float: left;
  padding-left: 5px;
}
.breadcrumbs a {
  color: #666;
  text-decoration: underline;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.breadcrumbs {
  display: none;
}
}


/*==========================================
 Googleマップ
===========================================*/
.ggmap {
  position: relative;
  padding-top: 0px;
  height: 0;
  overflow: hidden;
  height: 240px;
  width: 100%;
}
.ggmap iframe, .ggmapr object, .ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding-left: 0%;
  padding-right: 0%;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.ggmap {
  position: relative;
  padding-top: 0px;
  height: 0;
  overflow: hidden;
  height: 240px;
  border-bottom: none;
}
.ggmap iframe, .ggmapr object, .ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 240px;
  padding-left: 0%;
  padding-right: 0%;
}
}


/*==========================================
 動画
===========================================*/
.movie_area{
  width: 850px;
  margin-left: auto;
  margin-right: auto;
}
.youtube_outer {
  width: 100%;
  padding-top: 50%;
  position: relative;
  top: 0;
  left: 0;
}
.youtube_outer iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (min-width: 0px) and (max-width:767px) {
.movie_area{
  width: 90%;
}
}


/*==========================================
 関連ページリンク
===========================================*/
ul.page_linklist {
  width: 100%;
  margin: 0 auto;
}
ul.page_linklist li{
	vertical-align: top;
/*	width: 23.3%;*/
	margin-left: 1em;
	margin-bottom: 1%;
}
ul.page_linklist li ul li{
	display: inline-block;
}
ul.page_linklist li:nth-child(4n){
  margin-right: 0;
}
ul.page_linklist li a{
	color: #333;
	font-size: 14px;
	font-weight:bold !important;
	text-decoration: none;
}
ul.page_linklist li ul li a{
	display: inline-block;
	font-weight:normal !important;
}
ul.page_linklist li a:hover{
  color: #330303;
}
ul.page_linklist li a i{
	font-size:14px;
	margin-right:3px;
}

/*===マーク===*/
/*第1階層*/
ul.page_linklist li::before{
	content:"●";
	color:#9f1e62;
	font-size:12px;
	margin-right:0.3em;
}
/*第2階層*/
ul.page_linklist li ul li::before{
	content:"●";
	color:#cebda1;
	font-size:10px;
	margin-right:0.3em;
}



/*==========================================
 404ページ
===========================================*/
.box-notfound {
  width: 95%;
  max-width: 960px;
  font-size: 18px;
  line-height: 1.6;
  text-align: center;
  border: 1px dotted #666;
  padding: 40px 2%;
  margin: 100px auto;
}
.box-notfound span {
  display: block;
  line-height: 1.6;
  padding: 20px 0;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.box-notfound {
	font-size: 14px;
}
}


