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




html{
	font-size: 62.5%; /* sets the base font to 10px for easier math */
}


.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

/****************************************

          Layout

*****************************************/
table{
	border-collapse: collapse;
	border-spacing: 0;
	font-size: inherit;
}
a {
	color: #ffffff;
	text-decoration: none;
}
a:visited {
	color: #ffffff;
}
a:hover {
	color: #ffffff;
	text-decoration: underline;
}
a:active {
	margin: 0 auto;
	color: #ffffff;
}

a img {
	border-style:none;
}

.more_btn{
	text-align: center;
}
.more_btn a {
	display: inline-block;
	position: relative;
	text-decoration: none;
	border: 2px solid;
	transition: all .3s;
	padding: 10px 5px;
	box-sizing: border-box;
	line-height: 1;
	text-align: center;
	min-width: 100%;
	font-size: 20px;
}
@media (min-width:769px){
	.more_btn a {
		min-width: 325px;
		padding: 20px 5px;
	}
}
.main_clr a {
	text-decoration: none;
	color: #362e2b;
	background-color: #f3f3f3;
	border-width: 2px;
	border-style: solid;
	border-color: #f3f3f3;
}
.accent_clr a {
	text-decoration: none;
	color: #ffffff;
	background-color: #764f38;
	border-width: 2px;
	border-style: solid;
	border-color: #764f38;
}
br {
	clear: both;
	float: none;
}
.br-pc { display:block; }
.br-sp { display:none; }

.txt_center{
	 display: block;
	 margin-left: auto;
	 margin-right: auto;
}

.txt_red{
	font-weight: bold;
	color: #f00;
}
.txt_right{
	text-align: right;	
}

.indent_list{
	text-indent: -1em;
	padding-left: 1em;
}

html,body{
}
body {
	font-size: 1.8rem;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	color: #fff;
	background-color: #000;
}


h1 {
	display: none;
}

.font_en{
	font-size: 3.0rem;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-style: italic;
	line-height: 1.2;
	padding-bottom: 10px;
}

.top_title1{
	font-size: 2.8rem;
	line-height: 1.2;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	padding-bottom: 20px;
		padding-left: 20px;
}
.top_title2{
	font-size: 2.4rem;
	line-height: 1.2;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-weight: 600;
}
.top_title3{
	font-size: 2.2rem;
	line-height: 1.2;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-weight: 600;
}
.top_title4{
	font-size: 1.8rem;
	line-height: 1.2;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-weight: 600;
}
.top_text1{
	font-size: 1.6rem;
	padding-left: 20px;
}
h2{
	font-size: 3.0rem;
}
h3{
	font-size: 1.8rem;
}

@media (min-width:769px){
	h1 {
		display: block;
		margin: 0 auto;
		text-align: center;
		font-size: 2.4rem;
		color: #fff;
		font-family: "Varela Round", serif;
		padding-top: 20px;
		line-height: 1.0;
		height: 80px;
	}
	h2{
		font-size: 3.8rem;
	}
	h3{
		font-size: 2.0rem;
	}
	.font_en{
		font-size: 3.6rem;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		font-style: italic;
		line-height: 1.2;
		padding-bottom: 20px;
	}

	.top_title1{
		font-size: 5.6rem;
		line-height: 1.2;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		padding-left: 20px;
	}
	.top_title2{
		font-size: 4.6rem;
		line-height: 1.2;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		font-weight: 600;
	}
	.top_title3{
		font-size: 2.6rem;
		line-height: 1.2;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		font-weight: 600;
		padding: 30px 0;
	}
	.top_title4{
		font-size: 1.2rem;
		line-height: 1.2;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		font-weight: 600;
		padding: 30px 0;
	}
	.top_text1{
		font-size: 2.8rem;
		padding-left: 20px;
	}
}



.outline {
	color : #ffffff;            /* 文字の色 */
	font-size : 36pt;               /* 文字のサイズ */
	letter-spacing : 4px;                /* 文字間 */
	text-shadow : 
		1px  1px 0px #000000,
		-1px  1px 0px #000000,
		1px -1px 0px #000000,
		-1px -1px 0px #000000,
		1px  0px 0px #000000,
		0px  1px 0px #000000,
		-1px  0px 0px #000000,
		0px -1px 0px #000000;        /* 文字の影 */
}


/* ------------------------------------------
wrapper
------------------------------------------ */
#wrapper {
	width: 100%;
}

.contents {
	margin: 0 auto;
	width: 1080px;
}

#page_title{
	width: 960px;
	height: 90px;
	margin: 0 auto;
	padding-top:20px;
}
.flame_wrapper{
	width: 100%;
	margin: 0 auto;
	padding: 20px 10px;
}
.textArea{
	margin: 20px auto;
}

@media (min-width:769px){
	.flame_wrapper{
		width: 1200px;
		margin: 0 auto;
		padding: 60px 0;
	}
	.textArea{
		margin: 30px auto;
	}
}

.common_ttl{
	margin: 0 auto;
	text-align: center;
	padding-bottom: 20px;
}
@media (min-width:769px){
.common_ttl{
	padding-bottom: 10px;
}
}
.top_text_in{
	margin-left: 10%;
	width: 90%;
	padding: 0 20px;
	display: table;
}

@media (min-width:769px){
	.top_text_in{
		margin-left: 50%;
		width: 50%;
		padding-left: 20px;
	}
}
.ttl_left{
	color:#fff;
	width: 10px;
	border: solid 1px #000;
	background-color: #fff;
	display: table-cell;
}


/*----------------------------------------
	header
----------------------------------------*/
.nav_header{
	position: relative;
}
.top-slider{
	position: absolute;
}

.top-slider{
	width: 100%;
}
.header_wrapper{
	z-index: 9999;
	width: 100%;
	height: 78px;
	position: fixed;
}

#logo{
	text-align: left;
	padding: 10px;
	transition: .5s; /* スクロール時に一瞬で消えると物足りないので.hideの処理を0.5秒で行う */
	z-index: 100; /* 前面に表示されるようにする */
}
@media (min-width:769px){
	
}
#logo.hide{
	transform: translateY(-100%);
}
.nav_wrapper {
	position: absolute;
	width: 100%;
	heigh: 100%;
	text-align: center;
	top: 40%;
	left: 0;
	margin: 0 auto;
	font-family: "Varela Round", sans-serif;
}
.nav_wrapper p {
	font-size: 2.0rem;
}
.nav_wrapper a {
	display: inline-block;
	position: relative;
	text-align: center;
	text-decoration: none;
	font-size: 2.0rem;
	overflow: hidden;
}
.nav_wrapper a:after {
	content: "";
	position: absolute;
	width: 0%;
	transform: translateX(-50%);
	left: 50%;
	bottom: 0;
	transition: 0.35s ease;
}
.nav_wrapper a:hover:after, .nav_wrapper a:focus:after, .nav_wrapper a:active:after {
	width: 100%;
}









main{
	padding-top: 0;
}



/*----------------------------------------
	footer
----------------------------------------*/
#footer {
	min-width: auto;
	margin: 0 auto;
	background: url("../images/background_footer.jpg") no-repeat;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	z-index: 100;
	color: #fff;
}

.footer_wrapper{
	width: 100%;
	padding: 10px;
}
@media (min-width:769px){
	.footer_wrapper{
		width: 780px;
		margin: 0 auto;
		padding: 30px 0;
	}
}
.ft_top {
	padding: 10px 0 20px;
	text-align: center;
}
.ft_top img{
	margin: 0 auto;
}
	@media (min-width:769px){
	.ft_top {
		padding: 30px 0 40px;
	}
}
.ft_mdl {
	padding-bottom: 20px;
}
.ft_mdl a{
	color: #fff;
	font-size: 1.6rem;
}
.ft_mdl ul {
	display: none;
}
.ft_mdl ul > li:first-child, .ft_btm ul > li:first-child {
	margin-left: 0px;
}
.ft_mdl ul > li, .ft_btm ul > li {
	margin-left: 30px;
}
@media (min-width:769px){
	.ft_mdl {
		padding-bottom: 20px;
	}
	.ft_mdl a{
		color: #fff;
		font-size: 1.6rem;
	}
	.ft_mdl ul {
		display: flex;
		align-items: center;
		justify-content: center;
		padding-bottom: 35px;
	}
	.ft_mdl ul > li:first-child, .ft_btm ul > li:first-child {
		margin-left: 0px;
	}
	.ft_mdl ul > li, .ft_btm ul > li {
		margin-left: 30px;
	}
}
.footer_text {
	padding-bottom: 25px;
}
.ft_mdl .footer_contact a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px 0px 14px;
	text-decoration: none;
	text-align: center;
	width: 100%;
	margin: 0 auto;
	font-size: 1.8rem;
	border-width: 1px;
	border-style: solid;
	border-color: #764f38;
	color: #ffffff;
	background-color: #764f38;
}
@media (min-width:769px){
	.ft_mdl .footer_contact a {
		width: 370px;
	}
}
.ft_btm {
	background-color: rgba(0,0,0,0.4);
}
.ft_btm:before {
	content: "";
	width: 100%;
	min-height: inherit;
	display: block;
	position: absolute;
	z-index: -1;
}
.ft_btm a{
	color: #fff;
}
.ft_btm ul {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 5px;
}
.ft_mdl ul > li:first-child, .ft_btm ul > li:first-child {
	margin-left: 0px;
}
.ft_mdl ul > li, .ft_btm ul > li {
	margin-left: 30px;
	font-size: 1.4rem;
}
.ft_btm #copyright {
	padding: 5px 0;
	text-align: center;
	color: #fff;
	font-size: 1.2rem;
}

@media (min-width:769px){
	.ft_btm {
		min-height: 125px;
	}
	.ft_btm ul {
		padding-top: 25px;
	}
	.ft_btm #copyright {
		padding: 20px 0;
	}
}



