@charset "UTF-8";
/* ===================================
	File Name   : visit.css
	Description : Visitor's Layout CSS
	Editor      : -
	Last Editor : Bface Saeki
	Update Description :
	[2016/01/10] ページ追加
	[2016/12/19] 新規作成
	[2016/12/15] 新規作成
====================================== */
/*========== Style Contents ==========
	1. Share Setting
	2. Page "Index"
		- Media Queries [index]
	3. Page "Target"
		- Media Queries [Target]
	4. Page "FAQ"
		- Media Queries [FAQ]
	5. Page "Config"
		- Media Queries [Config]
	6. Page "Support"
		- Media Queries [Support]
	7. Page "Accommodation"
		- Media Queries [Accommodation]
====================================== */
/*===== ■1. Share Setting  =====*/
article h1 { background: url(../images/bg-title-y.png);}
article h1 span { border-bottom: 4px solid #E67C00;}
article section h2 span:before,
article section h2 span:after { background: rgba(230,124,0,0.2);}
/*===== ■2. Page "Index"  =====*/
.bg_gray { background: #E9EBEA;}
#visitor_index {
	padding-top: 20px;
	text-align: center;
}
#visitor_index li {
	display: inline-block;
	position: relative;
	max-width: 320px;
	margin: 20px;
	background: #FFFFFF;
	line-height: 180%;
	vertical-align: top;
}
#visitor_index li span {
	display: block;
	font-weight: bold;
	font-size: 2.4rem;
	margin: 20px 10px 10px;
}
#visitor_index li p {
	display: block;
	font-size: 1.6rem;
	margin: 0 20px 40px;
	text-align: left;
}
#visitor_index li a {
	display: block;
	width: 100%;
	padding-bottom: 50px;
	color: #192A39;
	text-decoration: none;
}
#visitor_index li a:hover { opacity: 0.7;}
#visitor_index li a:before,
#visitor_index li a:after {
	position: absolute;
	bottom: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 50%;
	margin-right: -25px;
	content: "";
}
#visitor_index li a:before {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #E80000;
}
#visitor_index li a:after {
	width: 12px;
	height: 12px;
	bottom: 43px;
	margin-right: -4px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#visitor_index li a:hover:before { opacity: 0.6;}
#visitor_index li.soon {
	padding-bottom: 35px;
	color: #8B968C;
}
#visitor_index li.soon p { margin-bottom: 30px;}
#visitor_index li.soon em {
	padding: 8px 40px;
	background: #8B968C;
	border-radius: 20px;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 1.8rem;
}
#visitor_index ul + a {
	display: inline-block;
	position: relative;
	margin-top: 20px;
	padding: 20px 65px 20px 30px;
	border-radius: 60px;
	background: #009A73;
	color: #fff;
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 1;
	text-decoration: none;
}
#visitor_index ul + a:hover { opacity: 0.6;}
#visitor_index ul + a:after {
	position: absolute;
	right: 0;
	top: 50%;
	width: 12px;
	height: 12px;
	margin: -6px 20px 0 0;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: '';
}
#visitor_index ul + a+a { margin-left: 60px;}
/* Media Queries [index] */
@media screen and (max-width:1080px) {
	#visitor_index { padding-top: 0;}
	#visitor_index li span {
		font-size: 1.4rem;
		margin: 10px 10px 5px;
		text-align: left;
	}
	#visitor_index li p {
		font-size: 1.1rem;
		margin: 0 10px 20px;
	}
	#visitor_index li a { padding-bottom: 30px;}
	#visitor_index li a:before,
	#visitor_index li a:after {
		right: 50%;
		margin-right: -15px;
	}
	#visitor_index li a:before {
		width: 30px;
		height: 30px;
	}
	#visitor_index li a:after {
		width: 8px;
		height: 8px;
		bottom: 25px;
		margin-right: -3px;
	}
	#visitor_index li.soon { padding-bottom: 15px;}
	#visitor_index li.soon p { margin-bottom: 15px;}
	#visitor_index li.soon em {
		padding: 5px 20px;
		font-size: 1.2rem;
	}
	#visitor_index ul + a {
		display: block;
		margin: 15px 15px 0;
		padding: 15px;
		font-size: 1.4rem;
	}
	#visitor_index ul + a:hover { opacity: 0.6;}
	#visitor_index ul + a:after {
		position: absolute;
		right: 0;
		top: 50%;
		width: 12px;
		height: 12px;
		margin: -6px 20px 0 0;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		content: '';
	}
	#visitor_index ul + a+a { margin: 15px 15px 0;}
}
/*===== ■3. Page "Target"  =====*/
#target_inquiry{
    box-sizing: border-box;
    margin: 40px auto 0px;
    max-width: 1080px;
	text-align: center;
}
#target_inquiry h2 {
	font-size: 1.8rem;
	font-weight: bold;
	margin: 0 0 15px;
}
#target_inquiry p,
#target_inquiry ul {
	font-size: 1.6rem;
    line-height: 180%;
    margin: 0 auto 10px;
}
#target_inquiry p span {
	display: block;
}
#target_inquiry li {
	display: inline-block;
	margin-right: 20px;
}
#target_inquiry li:last-child { margin: 0;}
#target_inquiry li b {
	display: inline-block;
	margin-right: 5px;
	padding: 4px 5px 3px 4px;
	border-radius: 3px;
	background: #8B968D;
	color: #fff;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 100%;
}
#target_inquiry li span { display: inline;}
#target_inquiry dd > a:not(.no_icon)[target="_blank"] {
	display: inline-block;
	margin-top: 15px;
	padding: 7px 25px 7px 10px;
	border-radius: 30px;
	background-color: #E37C06;
	background-position: right 5px center;
	color: #fff;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 0.05em;
	text-decoration: none;
}
#target_inquiry dd > a:not(.no_icon)[target="_blank"]:hover { background-color: #FA9723;}
#target01 > p {
    font-size: 1.8rem;
    line-height: 180%;
    margin: 0 auto 30px;
    max-width: 1080px;
}
#target01 dl {
	max-width: 1080px;
	margin: 0 auto 30px;
}
#target01 dt {
	padding: 12px 0 10px;
	background: #fecbad;
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 100%;
	text-align: center;
	border-bottom: 1px dotted #8b968d;
}
#target01 dt span {
}
#target01 dd {
	display: table;
	table-layout: fixed;
	border-bottom: 1px dotted #8b968d;
	padding: 0 15px 15px;
}
#target01 dd ul {
	display: table-cell;
	width: 50%;
	padding-top: 15px;
}
#target01 dd li {
	margin-bottom: 12px;
}
#target01 dd li:before {
    background: #8b968d none repeat scroll 0 0;
    content: "";
    height: 8px;
    left: 0;
    position: absolute;
    top: 7px;
    transform: rotate(45deg);
    width: 8px;
}
#target01 dd li {
	padding-left: 16px;
	position: relative;
}
#target01 dd li span {
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
}
#target01 > ul {
	font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.4;
    margin: 0 auto 10px;
    max-width: 1070px;
    padding-left: 1em;
    text-indent: -1em;
}
#target01 > ul li:first-child {
	font-size: 1.6rem;
	color: #ff0000;
}
#target01 > ul li {
	line-height: 180%;
}
#target02 > em {
	max-width: 1080px;
	margin: 0 auto 20px;
	display: block;
	text-align: center;
	padding: 0px 0 12px;
}
#target02 > em > img {
	max-width: 660px;
	height: auto;
}
#target02 > strong {
	max-width: 1080px;
	margin: 0 auto 20px;
	font-size: 2.0rem;
	font-weight: bold;
	display: block;
}
#target02 > p {
	font-size: 1.6rem;
    line-height: 180%;
    margin: 0 auto 10px;
    max-width: 1080px;
}
#target02 > ul {
	font-size: 1.4rem;
    font-weight: bold;
    line-height: 180%;
    margin: 0 auto 50px;
    max-width: 1080px;
    padding-left: 0;
    text-indent: 0;
}
#target02 #visitors_badge {
	margin: 0 auto 30px;
    max-width: 1080px;
}
#target02 #visitors_badge:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
#target02 #visitors_badge > strong {
	font-size: 2.0rem;
	font-weight: bold;
	color: #c20000;
	display: block;
	margin: 0 0 20px;
}
#target02 #visitors_badge p span {
	float: right;
	margin-left: 25px;
	max-width: 400px;
}
#target02 #visitors_badge p {
	font-size: 1.6rem;
	line-height: 180%;
}
#target02 #visit_notes dt {
	padding: 8px 12px 6px;
	background: #c20000;
	color: #fff;
	font-size: 2.0rem;
	font-weight: bold;
	margin: 0 0 20px;
}
#target02 #visit_notes {
	clear: both;
	margin: 0 auto 10px;
	max-width: 1080px;
}
#target02 #visit_notes ul {
	font-size: 1.6rem;
}
#target02 #visit_notes li:before {
	background: #8b968d none repeat scroll 0 0;
	content: "";
	height: 8px;
	left: 0;
	position: absolute;
	top: 7px;
	transform: rotate(45deg);
	width: 8px;
}
#target02 #visit_notes li {
	padding-left: 16px;
	position: relative;
	margin: 0 0 14px;
}
/* Media Queries [target] */
@media screen and (max-width:1080px) {
	#target_inquiry,
	#target01 {
		padding-left: 15px;
		padding-right: 15px;
	}
	#target02 {
		padding-left: 15px;
		padding-right: 15px;
	}
	#target_inquiry h2 {
		font-size: 1.2rem;
	}
	#target_inquiry p,
	#target_inquiry ul {
		font-size: 1.2rem;
	}
	#target01 > p { font-size: 1.2rem;}
	#target01 dt,
	#target01 dd li span {
   	 font-size: 1.2rem;
	}
	#target01 > ul li {
    	font-size: 1.2rem;
	}
	#target01 > ul li:first-child {
    	font-size: 1.4rem;
	}
	#target02 > em {
		max-width: 92%;
		padding: 10px 0px 6px;
	}
	#target02 > strong {
    font-size: 1.6rem;
	}
	#target02 > p,
	#target02 > ul {
		font-size: 1.2rem;
	}
	#target02 #visitors_badge > strong {
    font-size: 1.6rem;
	}
	#target02 #visitors_badge p {
    font-size: 1.2rem;
	}
	#target02 #visitors_badge p span {
    float:none;
	display: block;
	text-align: center;
    margin-left: auto;
	margin-right: auto;
	}
	#target02 #visitors_badge p span img{
	max-width: 200px;
	height: auto;
	width: auto;
	}
	#target02 #visit_notes dt {
		font-size: 1.6rem;
	}
	#target02 #visit_notes ul {
    font-size: 1.2rem;
	}
}
/*===== ■4. Page "FAQ"  =====*/
.faq dl {
	max-width: 1040px;
	margin: 0 auto 25px;
	padding: 0 20px 25px;
	border-bottom: 1px solid #ccc;
}
.faq dt {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	margin-bottom: 10px;
}
.faq i {
	display: block;
	width: 60px;
	height: 60px;
	box-sizing: border-box;
	padding: 15px 0;
	border-radius: 30px;
	color: #fff;
	font-weight: bold;
	font-size: 3.0rem;
	font-family: Arial, Helvetica," sans-serif";
	line-height: 1;
	text-align: center;
	vertical-align: middle;
}
.faq dt i { background: #009C74;}
.faq dd i { background: #eb0000;}
.faq dt span {
	-webkit-flex: 1;
	flex: 1;
	display: block;
	margin-left: 10px;
	font-weight: bold;
	font-size: 1.8rem;
}
.faq dd {
	display: -webkit-flex;
	display: flex;
}
.faq dd div {
	-webkit-flex: 1;
	flex: 1;
	margin: 15px 0 0 10px;
	font-size: 1.6rem;
}
.faq dd div b { font-weight: bold;}
.faq dd ul {
	margin-top: 15px;
	font-size: 1.4rem;
}
/* Media Queries [target] */
@media screen and (max-width:1080px) {
	.faq dt i { display: none;}
	.faq dt {
		display: block;
		margin-bottom: 10px;
		padding: 10px;
		background: #009C74;
	}
	.faq dt span {
		display: inline-block;
		position: relative;
		margin: 0;
		padding-left: 1.3em;
		color: #fff;
		font-weight: bold;
		font-size: 1.4rem;
	}
	.faq dt span:before {
		position: absolute;
		left: 0;
		color: #fff;
		font-weight:  bold;
		font-size: 1.4rem;
		content:'Q.';
	}
	.faq dd i {
		width: 30px;
		height: 30px;
		padding: 8px 0;
		border-radius: 15px;
		font-size: 1.6rem;
	}
	.faq dd div {
		margin: 5px 0 0 10px;
		font-size: 1.2rem;
	}
	.faq dd ul {
		margin-top: 10px;
		font-size: 1.0rem;
	}
}
/*===== ■5. Page "Config"  =====*/
#config {
	max-width: 1220px;
	margin: 40px auto 80px;
}
#config p {
	margin-bottom: 40px;
	text-align: center;
}
#config p strong {
	display: block;
	font-weight: bold;
	font-size: 2.0rem;
}
/* Media Queries [Config] */
@media screen and (max-width:1080px) {
	#config {
		margin: 40px auto;
		padding: 0 20px;
	}
	#config p strong {
	font-size: 1.6rem;
	}
}
/*===== ■6. Page "Support"  =====*/
.support {
	text-align: center;
}
#page_anchor+p {
	margin-top: 60px;
	font-size: 1.8rem;
	text-align: center;
}
.support h2 span b {
	display: block;
	margin-bottom: 10px;
	font-size: 2.0rem;
}
.support mark {
	display: inline-block;
	width: 80px;
	height: 80px;
	margin: 0 5px 20px 0;
	padding: 15px 0;
	background: #eb0000;
	border-radius: 50%;
	color: #fff;
	font-weight: bold;
	font-size: 1.4rem;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
}
.support mark b {
	display: block;
	margin-left: -0.2em;
	font-size: 3.2rem;
	line-height: 1;
	letter-spacing: -0.2em;
}
.support p {
	font-size: 1.6rem;
	line-height: 1.8;
}
.support p.intro { margin-bottom: 20px;}
.support>strong {
	font-weight: bold;
	font-size: 1.8rem;
}
.support>strong+p { margin-top: 10px;}
.support>div {
	max-width: 1080px;
	margin: 40px auto 0;
}
.support>div+a,
.support>div+.soon {
	display: block;
	position: relative;
	max-width: 600px;
	width: 60%;
	margin: 30px auto;
	padding: 15px 30px 12px;
	border-radius: 50px;
	background: #E80000;
	color: #fff;
	font-weight: bold;
	font-size: 2.0rem;
	text-align: center;
	text-decoration: none;
}
.support>div+a:hover { opacity: 0.6;}
.support>div+a:after,
.support>div+.soon:after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 12px;
	height: 12px;
	margin: -6px 30px 0 0;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: '';
}
.support>div+.soon {
	background: #8B968D;
}
.support>div+a span,
.support>div+.soon span {
	display: inline-block;
	font-size: 1.6rem;
}
.support .left,
.support .right {
	display: table-cell;
	width: 65%;
	padding-right: 100px;
	text-align: left;
	vertical-align: top;
	box-sizing: border-box;
}
.support .right { width: 35%; padding-right: 0;}
.support dl {
	padding: 20px;
	background: #E9EBEA;
}
.support dt {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 1.6rem;
	text-align: center;
}
.support li {
	position: relative;
	padding-left: 15px;
}
.support li+li { margin-top: 10px;}
.support li:before {
	position: absolute;
	top: 6px;
	left: 0;
	width: 7px;
	height: 7px;
	background: #8B968D;
	-webkit-transform: rotate(45deg);
	transfrom: rotate(45deg);
	content: '';
}
#supporter .left li:first-child { padding-left: 0;}
#supporter .left li:first-child:before { content: none;}
#support_sheet .left,
#support_sheet .right { width: 50%;}
#support_sheet li {
	display: inline-block;
	width: 45%;
}
#support_sheet span.right {
	padding: 20px;
	background: #FFF;
	border-radius: 10px;
}
#support_trade>p { margin-top: 10px;}
#support_trade .left dl {
	display: table-cell;
	width: 50%;
}
#support_trade .left dl+dl { border-left: 1px dotted #666;}
/* Media Queries [Config] */
@media screen and (max-width:1080px) {
	#page_anchor+p {
		margin-top: 30px;
		font-size: 1.4rem;
	}
	.support h2 span b {
		margin-bottom: 5px;
		font-size: 1.4rem;
	}
	.support mark {
		width: 50px;
		height: 50px;
		margin-bottom: 5px;
		padding: 8px 0;
		font-size: 1.1rem;
	}
	.support mark b {
		font-size: 1.8rem;
	}
	.support p {
		padding: 0 15px;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	.support>strong {
		font-size: 1.4rem;
	}
	.support>strong+p { margin-top: 10px;}
	.support>div {
		margin-top: 20px;
		padding: 0 15px;
	}
	.support>div+a,
	.support>div+.soon {
		width: auto;
		margin: 15px;
		padding: 10px 15px;
		font-size: 1.4rem;
	}
	.support>div+a span,
	.support>div+.soon span {
		font-size: 1.2rem;
	}
	.support .left,
	.support .right {
		display: block;
		width: auto;
		padding-right: 0;
	}
	.support .left { margin-bottom: 20px;}
	.support dl.right {
		width: 70%;
		margin: 0 auto;
		padding: 15px;
	}
	.support dt {
		margin-bottom: 10px;
		font-size: 1.2rem;
	}
	#support_sheet .left,
	#support_sheet .right { width: 100%;}
	#support_sheet span.right {
		padding: 20px;
		background: #FFF;
		border-radius: 10px;
	}
	#support_trade>p { margin-top: 10px;}
	#support_trade .left dl {
		display: table-cell;
		width: 50%;
	}
	#support_trade .left dl+dl { border-left: 1px dotted #666;}
}
/*===== ■6. Page "Accommodation"  =====*/
#accommodation {
	max-width: 910px;
}
#accommodation p {
	margin-bottom: 20px;
	font-size: 1.6rem;
	line-height: 1.8;
}
#accommodation dt {
	border-bottom: 1px dotted #8b968d;
	font-weight: bold;
	font-size: 1.6rem;
}
#accommodation dd p {
	font-size: 1.4rem;
	line-height: 180%;
}
#accommodation>a {
	display: block;
	position: relative;
	width: 330px;
	margin: 40px auto 0;
	padding: 15px 50px 15px 30px;
	box-sizing: border-box;
	border-radius: 45px;
	background: #E80000;
	color: #fff;
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}
#accommodation>a:after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 12px;
	height: 12px;
	margin: -6px 20px 0 0;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: '';
}
#accommodation>a:hover { background: #FA9723;}
/* Media Queries [Config] */
@media screen and (max-width:1080px) {
	#accommodation {
		padding: 40px 15px;
	}
	#accommodation p {
		margin-bottom: 10px;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	#accommodation dt {
		font-size: 1.2rem;
	}
	#accommodation dd p {
		font-size: 1.2rem;
		line-height: 1.5;
	}
	#accommodation>a {
    font-size: 1.2rem;
    width: 240px;
		margin-top: 0;
	}
}
