@charset "UTF-8";

@font-face {
  font-family: 'KakuminPro';
  src: url('../fonts/A-OTF-KakuminPro-Regular.otf') format('opentype');
}

@font-face {
  font-family: 'KakuminProB';
  src: url('../fonts/A-OTF-KakuminPro-Bold.otf') format('opentype');
}

/*#########################################################
WordPress必須クラス
#########################################################*/
.wp-caption {
}

.wp-caption-text {
}

.sticky {
}

.gallery-caption {
}

.bypostauthor {
}

.alignright {
}

.alignleft {
}

.aligncenter {
}

.screen-reader-text {
}

.clearfix:after {  
  content: ".";   
  display: block;   
  height: 0;   
  clear: both;   
  visibility: hidden;  
} 
.clearfix { display: inline-table; }
* html .clearfix { height: 1%; }
.clearfix { display: block; }


#wrapper {overflow: hidden;}

/* orgin */
.pc {display: inherit;}
.sp {display:none;}


body {
	margin: 0;
	padding: 0;
	background: url(../img/bg.jpg);
	font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333333;
	font-size: 100%;
}

h1,h2,h3,h4,h5,p,ul,li,dl,dt,dd,figure {
	margin: 0;
	padding: 0;
	font-weight: normal;
}

ul,li {
	list-style: none;
}

a {
	transition: 1.0s;
	text-decoration: none;
}

a:hover {
	opacity: 0.5;
}

i {margin: 0 5px 0 0;}

.contents {
	width: 1040px;
	margin: 0 auto;
	text-align: left;
}

header {
	padding: 40px 0;
}

h1 a {
	display: block;
	width: 320px;
	height: 60px;
	background: url(../img/header_logo.png) no-repeat;
	float: left;
}

h1 a span {
	display: none;
}

header ul {
	width: 700px;
	border-right: 1px solid #cccccc;
	float: right;
	text-align: right;
}

header li {
    display: inline-block;
}

header li a {
	display: block;
	padding: 20px 40px 10px 40px;
	border-left: 1px solid #cccccc;
	font-size: 105%;
	font-weight: bold;
	text-align: center;
	color: #333333;
}

header li a span {
	display: block;
	font-size: 80%;
	font-weight:normal;
	color: #cccccc;
}

header li:last-child a {
	padding: 20px 20px 10px 20px;
}

.container {
	padding: 60px 0;
}

main {
	padding: 50px 0;
	border-top: 8px solid #b00000;
	border-bottom: 8px solid #b00000;
	background: url(../img/main_bg.jpg) no-repeat;
	background-size: cover;
}

main h2 {
	color: #ffffff;
	font-size: 180%;
	font-weight: bold;
	text-shadow: 2px 2px 2px rgba(0,0,0,0.4);
}

footer {
	padding: 40px 0;
	background: #b00000;
	font-size: 80%;
	color: #ffffff;
	line-height: 140%;
}

footer a {
	color: #ffffff;
}

.footer_l {
	width: 580px;
	float: left;
}

.footer_r {
	width: 460px;
	text-align: right;
	float: right;
}

.footer_l h3 a {
	display: block;
	width: 140px;
	height: 90px;
	margin: 10px 20px 0 0;
	background: url(../img/footer_logo.png) no-repeat;
	float: left;
}

.footer_l h3 a span {
	display: none;
}

.footer_l dl {
	display: block;
	width: 420px;
	padding: 10px 0 0 0;
	float: left;
}

.footer_l dt {
	display: block !important;
	width: 20%;
	float: left;
}

.footer_l dd {
	display: block !important;
	width: 78%;
	float: right;
}

.footer_l i.access {
	margin: 0 8px 0 3px;
}

.footer_r ul {
	padding: 20px 0 10px 0;
}

.footer_r li {
	margin: 0 0 0 15px;
    display: inline-block;
}

.footer_r li:first-child {
	margin: 0;
}

.footer_r li a:before {
	content: "\f0a9";
	font-family: FontAwesome;
	margin: 0 5px 0 0;
}

.footer_r p {
	text-align: right;
}



/* copntainer */

.container h3 {
	padding: 1% 2%;
	background: url(../img/container_h3_bg.png) no-repeat left;
	font-size: 180%;
	letter-spacing: 2px;
	text-shadow: 0px 0px 1px #fff,
	             0px 0px 2px #fff,
	             0px 0px 3px #fff,
	             0px 0px 4px #fff,
	             0px 0px 5px #fff,
	             0px 0px 6px #fff;
	font-family: 'KakuminProB';
}

.container table {
	width: 100%;
	margin: 20px 0;
}

.container th,
.container td {
	padding: 2%;
}

.container th {
	width: 18%;
	vertical-align: top;
}

.container th:after {
	content: "\f105";
	font-family: FontAwesome;
	color: #b00000;
	float: right;
}

.container td {
	width: 74%;
}

.container tr {
	background: url(../img/bg_line.gif) repeat-x bottom;
}


@media screen and (max-width: 960px) {

.pc {display: none;}
.sp {display:inherit;}

.contents {
	width: 96%;
	margin: 0 auto;
	padding: 0 2%;
	text-align: left;
}

header {
	padding: 20px 0;
}

h1 a {
	display: block;
	width: 50%;
	height: 40px;
	margin: 0 auto;
	background-size: contain;
	float: none;
}

header ul {
	display: none;
}

.container {
	padding: 40px 0;
}

main {
	padding: 50px 0;
	border-top: 8px solid #b00000;
	border-bottom: 8px solid #b00000;
}

main h2 {
	font-size: 180%;
}

footer {
	padding: 40px 0;
	background: #b00000;
	font-size: 90%;
	color: #ffffff;
	line-height: 140%;
}

.footer_l {
	width: 100%;
	float: none;
}

.footer_r {
	width: 100%;
	float: none;
	text-align: inherit;
}

.footer_l h3 a {
	display: block;
	width: 140px;
	height: 90px;
	margin: 10px auto;
	float: none;
	background-size: cover;
}

.footer_l dl {
	width: 100%;
	float: none;
}

.footer_l dt {
	width: 100%;
	float: none;
}

.footer_l dd {
	width: 100%;
	float: none;
}

.footer_l p {
	padding: 10px 0;
}

.footer_l p span {
	display: block;
	padding: 1% 0 4% 0;
}

.footer_l i.access {
	margin: 0 8px 0 3px;
}

.footer_r ul {
	padding: 10px 0;
}

.footer_r li {
	margin: 5px 0;
    display: inherit;
}

.footer_r li:first-child {
	margin: 5px 0;
}

.footer_r p {
	text-align: center;
}



/* copntainer */

.container h3 {
	padding: 1% 2%;
	background: url(../img/container_h3_bg.png) no-repeat left;
	font-size: 180%;
	letter-spacing: 2px;
	text-shadow: 0px 0px 1px #fff,
	             0px 0px 2px #fff,
	             0px 0px 3px #fff,
	             0px 0px 4px #fff,
	             0px 0px 5px #fff,
	             0px 0px 6px #fff;
	font-family: 'KakuminProB';
}

.container table {
	width: 100%;
	margin: 20px 0;
}

.container th,
.container td {
	display: block;
	width: 96%;
}

.container th {
	vertical-align: inherit;
	padding: 2% 2% 0 2%;
}

.container th:after {
	display: none;
}

.container th:before {
	content: "\f107";
	font-family: FontAwesome;
	margin: 0 5px 0 0;
	color: #b00000;
}

.container td {
	padding: 0 2% 2% 2%;
}

.container tr {
	background: url(../img/bg_line.gif) repeat-x bottom;
}

} /* end break */


.pure-drawer ul {
	display: block;
	width: 100%;
	padding: 25% 15%;
	margin: 0;
}

.pure-drawer li a {
	display: block;
	width: calc(100% - 2px);
	margin: 3% auto;
	padding: 3% 0;
	border: 1px solid #d34643;
	background: #d34643;
	color: #ffffff;
	text-align: center;
}

