@charset "utf-8";

/* ------------------------------------------------------- */
/* layout ------------------------------------------------ */
/* ------------------------------------------------------- */

/* base ---------------------------------------------------*/

body{
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 0.9em;
	line-height: 1.5em;
	color: #000000;
	-webkit-text-size-adjust: none;
}
* {
	box-sizing: border-box;
}


/* ------------------------------------------------------- */
/* share ------------------------------------------------- */
/* ------------------------------------------------------- */

/* display */
.dispinline {	display: inline; }
.dispib {		display: inline-block; }
.dispb {		display :block!important; }
.dispnone {		display: none; }

/* margin */
.mauto {	margin-left: auto; margin-right: auto; }
.mb0 {		margin-bottom: 0px!important; }
.mb1 {		margin-bottom: 1px!important; }
.mb5 {		margin-bottom: 5px!important; }
.mb10 {		margin-bottom: 10px!important; }
.mb15 {		margin-bottom: 15px!important; }
.mb20 {		margin-bottom: 20px!important; }
.mb25 {		margin-bottom: 25px!important; }
.mb30 {		margin-bottom: 30px!important; }

/* vertical align */
.vaTop {	vertical-align: top; }
.vaBottom {	vertical-align: bottom; }
.vaMiddle {	vertical-align: middle; }

/* indent */
.indent {	text-indent: 1em; }
.indent1 {	margin-left: 1em; text-indent: -1em; }

/* width */
.w400 { width: 400px; }

/* ページ上部に戻る スクロールで自動表示 */
#pageTop {
	width: 45px;
	height: 40px;
	display: none;
	position: fixed;
	right: 16px;
	bottom: 16px;
	z-index: 9999;
}
#pageTop p {
	margin: 0;
	padding: 2px 0;
	text-align: center;
	background: #3b3b3b;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
#pageTop p span { display: none; }
#pageTop p:hover { background: #d1b67c; }
#movePageTop {
	color: #FFFFFF;
	line-height: 40px;
	text-decoration: none;
	display: block;
	cursor: pointer;
}

/* 改ページ */
.bpa { page-break-before: always; }


/* font ---------------------------------------------------*/

/* font style */
strong, .bold { font-weight: bold; }
.nbold { font-weight: normal; }
.underLine { text-decoration: underline; }
.txtDecoNone { text-decoration: none!important; }

/* font size */
.small1 { font-size: 0.9em; }
.small2 { font-size: 0.5em; }
.small3 { font-size: 0.7em; }
.big1 {
	font-size: 1.4em;
	line-height: 1.5em;
}
.big2 {
	font-size: 1.6em;
	line-height: 1.5em;
}
.big3 {
	font-size: 2em;
	line-height: 1.5em;
}

@media only screen and (max-width: 768px) {
	
	.big1 { font-size: 1.3em; }
	.big2 { font-size: 1.4em; }
	.big3 { font-size: 1.5em; }
	
}

/* text align */
.txtRight {	text-align: right; }
.txtCenter { text-align: center; }
.txtLeft { text-align: left; }

/* font color */
.fcRed { color: #FF0004; }
.fcBlue { color: #0066CC; }
.fcWhite { color: #FFFFFF; }

.phoneColor1,
.phoneColor1 a { color: #a92351; }

/* 注釈用グレーフォント */
.fontMemo1 {
	font-size: 0.8em;
	line-height: 1.4em;
	color: #999999!important;
}

/* font family */
.fontFamily1 {
	font-family: Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}


/* image -------------------------------------------------*/

/*イメージのはみ出し防止*/
img { max-width: 100%; }

/* image align */
img.imgCenter,
img.aligncenter {
	margin-left: auto;
	margin-right: auto;
	display: block;
}
img.imgLeft,
img.alignleft {
  padding: 0px 15px 10px 0px;
  float: left;
}
img.imgRight,
img.alignright {
	padding: 0px 0px 10px 15px;
	float: right;
}

/* image align 幅600以下でフロート解除 */
img.imgLeftN1 {
  padding: 0 15px 10px 0;
  float: left;
}
img.imgRightN1 {
  padding: 0 0 10px 15px;
  float: right;
}

@media only screen and (max-width: 768px) {
	
	/*画像そのものの幅にする*/
	img.imgwAuto, .imgwAuto img {
		width: auto;
	}
	img.imgLeftN1, img.imgRightN1 {
		padding: 0;
		float: none;
		display: block;
		margin: 0 auto 10px;
	}
	
}


/* link ---------------------------------------------------*/

a {
	color: #333333;
	text-decoration: underline;
}
a:hover {
}

/* 三角付きボタン */
.buttonLink1 {
	overflow: hidden;
	padding: 0;
}
.buttonLink1 a {
	display: block;
	position: relative;
	z-index: 100;
	background: #8f7024;
	color: #FFFFFF;
	text-decoration: none;
	padding: 15px 10px 15px 50px;
}
.buttonLink1 a:hover {
	background: #a5863a;
}
.buttonLink1 a:before { /* 白い丸 */ 
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 19px;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	-webkit-border-radius: 50%; /* Safari,Google Chrome用 */  
	-moz-border-radius: 50%; /* Firefox用 */ 
	border-radius: 50%; /* CSS3草案 */ 
	background: #FFFFFF;
}
.buttonLink1 a:after { /*「after要素」で三角 */ 
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 25px;
	width: 0;
	height: 0;
	margin-top: -5px;
	border: 5px solid transparent; /*top right bottom を透明化 */ 
	border-left: 5px solid #8f7024;
}
.buttonLink1 a:hover:after { /*「after要素」のマウスオーバー（カラーを合わせる） */  
	border-left: 5px solid #8f7024;
}
.buttonLink2 a {
	background: #ffcc00;
	padding: 15px;
	text-decoration: none;
	color: #000000;
	text-align: center;
}
.buttonLink2 a:hover {
	background: #ffde00;
}
.buttonLink3 a {
	padding: 15px;
	text-decoration: none;
	color: #000000;
	text-align: center;
	border: 1px solid #CCCCCC;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,f2f2f2+100 */
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 ); /* IE6-9 */
}

/* ボックス囲みリンク */
a.boxLink1 {
	overflow: hidden;
	border: 2px solid #feefce;
	display: block;
	padding: 13px;
	text-decoration: none;
}
a.boxLink1:hover {
	border: 2px solid #d1b67c;
}


/* float ----------------------------------------------*/

.floatLeft { float: left; }
.floatRight { float: right; }

/* 幅639以下でフロート解除 */
.floatLeftMw1 { float: left; }
.floatRightMw1 { float: right; }

/*左右２カラムページ構成用*/
/*インデックス等*/
.page2col1left {
	width: 360px;
	float: left;
	box-sizing: border-box;
	margin-right:10px;
}
.page2col1right {
	width: 360px;
	float: left;
	box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
	
	.floatLeftMw1, .floatRightMw1 { float: none; }
	.page2col1left, .page2col1right{
		float: none;
		width:100%;
		margin-bottom:10px;
		text-align:center;
		}
	.page2col1left img, .page2col1right img{
		margin:0 auto;
		display:block;
		}
}


/* box -----------------------------------------------*/

.box1 {
	border: 1px solid #cccccc;
	margin-bottom: 15px;
	padding: 20px;
}
.box1 h5 {
	margin-bottom: 10px;
	font-weight: bold;
}
.box2 {
	background: #FAFAFA;
	border: 1px solid #CCCCCC;
	margin-bottom: 15px;
	padding: 20px;
}
.box2 h5 {
	margin-bottom: 10px;
	font-weight: bold;
}
.box3 {
	background: #edf9e3;
	border: 1px solid #DDDDDD;
	margin-bottom: 15px;
	padding: 20px;
}
.box3 h5 {
	margin-bottom: 10px;
	font-weight: bold;
}
.box4 {
	background: #fde7c9;
	border: 1px solid #DDDDDD;
	margin-bottom: 15px;
	padding: 20px;
}
.box4 h5 {
	margin-bottom: 10px;
	font-weight: bold;
}

/* list ----------------------------------------------*/

ul.ul1,
ol.ol1,
ul.float2col1,
ul.float3col1,
ul.float4col1 {
	margin-bottom: 20px;
	overflow: hidden;
}

ul.ul1 li {
	list-style-type: disc;
	margin: 0 0 5px 20px;
}
ol.ol1 li {
	list-style-type: decimal;
	margin: 0 0 5px 25px;
}
ul.ul1 li ul li,
ol.ol1 li ul li {
	list-style-type: circle;
}

/* ポイント付きリスト */

ul.ul2 li {
	background: url(../images/contents/arrow2.png) 0px 5px no-repeat;
	background-size: 11px 11px;
	border-bottom: 1px dotted #999;
	margin: 0;
	margin-bottom: 10px;
	padding-left: 18px;
	padding-bottom: 5px;
	list-style-type: none;
}

/* pagetitle navi ----------------------------------------------*/

/* breadcrumbs ------------------------------------------------- */

#breadcrumbs {
}
ul#breadcrumbs {
	width: 980px;
	margin: 0 auto;
	padding: 5px 0;
	font-size: 0.8em;
}
ul#breadcrumbs li {
	float: left;
}
ul#breadcrumbs li a {
	text-decoration: none;
}

@media only screen and (max-width:768px) {
	
	ul#breadcrumbs {
		width: 100%;
		padding: 10px;
	}
	
}

/* midashi ----------------------------------------------*/

.page-title {
	margin-bottom: 20px;
	padding: 20px 0 0;
	line-height: 130%;
	font-size: 1.8em;
	font-weight: bold;
}
.page-title:not(:target) {
	border-bottom: 2px solid #CCCCCC\9;
}
.page-title:after {
	width: 100%;
	height: 2px;
	margin-top: 20px;
	display: block;
	content: "";
	background: -webkit-gradient(linear, left top, left top, color-stop(0.85, #cccccc), color-stop(0.15, #ff7e00));
	background: -webkit-linear-gradient(left, #cccccc 85%, #ff7e00 15%);
	background: -moz-linear-gradient(left, #cccccc 85%, #ff7e00 15%);
	background: -o-linear-gradient(left, #cccccc 85%, #ff7e00 15%);
	background: -ms-linear-gradient(left, #cccccc 85%, #ff7e00 15%);
	background: linear-gradient(to right, #cccccc 85%, #ff7e00 15%);
}
.midashi1 {
	background: #f7f7f7;
	border-left: 6px solid #ff7e00;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1.3em;
	margin-bottom: 20px;
	padding: 10px 15px;
}
.midashi2 {
	margin: 0 0 20px 0;
	padding-bottom: 10px;
	line-height: 1.3em;
	font-size: 1.3em;
	position: relative;
	font-weight: bold;
}
.midashi2::before {
	border-bottom: 4px solid #d1d1d1;
	position: absolute;
	left: -6px;
	bottom: 0;
	content: '';
	width: 30%;
	height: 50%;
}
.midashi2::after {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: 100%;
	height: 0;
	border-bottom: 1px solid #d1d1d1;
}
.midashi3 {
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.3em;
	margin: 0 0 15px 0;
	border-bottom: 1px dotted #ccc;
	padding: 0 0 5px 0;
}
.midashi4 {
	background: #02004C;
	margin-bottom: 20px;
	padding: 10px 10px 7px 10px;
	line-height: 1.3em;
	font-size: 1.1em;
	font-weight: bold;
	color: #FFFFFF;
}
.midashi5 {
	margin-bottom: 30px;
	line-height: 1.3em;
	text-align: center;
	font-size: 2.0em;
	font-weight: bold;
}

@media only screen and (max-width:768px) {
	
	h2.page-title {
		width: 100%;
		padding: 10px 0 0;
	}
	.midashi1 {
		font-size: 1.3em;
		margin-bottom: 15px;
	}
	.midashi2 {
		font-size: 1.25em;
		margin-bottom: 15px;
	}
	.midashi3 {
		font-size: 1.1em;
		margin-bottom: 15px;
	}
	.midashi5 {
		font-size: 1.1em;
	}
	
}

/* table ----------------------------------------------*/

.table1,.table1 td,
.table1 th, .td1{
	border: 1px solid #ccc;
	box-sizing: border-box;
}
table caption {
	margin-bottom: 5px;
}
.table1 {
    border-collapse: collapse;
    margin-bottom: 20px;
	width: 100%;
}
.table1 th,
.table1 td, .td1 {
	padding: 10px;
}
.table1 th {
	background-color: #f7f6f3;
	text-align: center;
}
.tdw { background: #ffffff; }
.td1 { background: #fff4d8!important; }
.td2 { background: #ffe8e8!important; }
.td3 { background: #f7f6f3!important; }
.td4 { background: #edf9e3!important; }

@media only screen and (max-width:768px) {
	
	/* 768px 以下で段組み解除 */
	.tableMw1 th, .tableMw1 td {
		display: block;
		border: none;
		width: 100%;
	}
	
	/* フォントサイズ調整 */
	table.tableS1 td {
		padding: 1px;
		font-size: 0.58em;
	}
	
}