@charset "utf-8";
/* ========================================================
	template.css => テンプレート用CSS
======================================================== */
html {
	font-size: 62.5%;
}
body {
	background-color: #f1f0ee;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.8;
	color: #282524;
	word-wrap: break-word;
	overflow-wrap: break-word;



	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 1.8;
}
a[href] {
	color: #282524;
	text-decoration: underline;
	outline: none;
}
a[href]:hover {
	text-decoration: none;
}
a[href].a_reverse,
.a_reverse a[href] {
	text-decoration: none;
}
a[href].a_reverse:hover,
.a_reverse a[href]:hover {
	text-decoration: underline;
}
a[href^="http"],
a[href^="mailto:"] {
	word-break: break-all;
}

label {
	cursor: pointer;
}
input, select, textarea, button {
	max-width: 100%;
	margin: 0;
	vertical-align: middle;
	font-family: inherit;
	outline: none;
	font-size: 100%;
}

button {
	cursor: pointer;
}
iframe {
	max-width: 100%;
	vertical-align: middle;
}

.hidden {
	display: none;
}
.slick-slider * {
	outline: none;
}
@media screen and (max-width: 768px) {
	body {
	}
	img {
		max-width: 100%;
		height: auto;
	}
}


/* pc / sp
============================================================================================================ */
.sp,
.sps {
	display: none !important;
}
@media screen and (min-width: 769px), print {
	.pc_break {
		position: relative;
		display: block;
		height: 0;
		overflow: hidden;
	}
}
@media screen and (max-width: 768px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	img.sp, span.sp, br.sp, em.sp, strong.sp {
		display: inline !important;
	}
	td.sp, th.sp {
		display: table-cell !important;
	}
	.sp_break {
		position: relative;
		display: block;
		height: 0;
		overflow: hidden;
	}
}
@media screen and (max-width: 370px) {
	.sps {
		display: block !important;
	}
	img.sps, spsan.sps, br.sps, em.sps, strong.sps {
		display: inline !important;
	}
	.sps_non {
		display: none !important;
	}
}

/* sp
============================================================================================================ */
@media screen and (max-width: 768px) {
	*[data-label] img {
		display: none !important;
	}
	*[data-label]:before {
		content: attr(data-label);
	}
	*[data-label-r]:after {
		display: block;
		content: attr(data-label-r);
	}
}
@media screen and (min-width: 371px) {
	*[data-label-r].spl_r_inline:after {
		display: inline;
	}
}

/* spパディング
============================================================================================================ */
@media screen and (max-width: 768px) {
	.sp_pd {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.sp_pdtb {
		padding-top: 15px !important;
		padding-bottom: 15px !important;
	}
	.sp_full {
		margin-left: -15px !important;
		margin-right: -15px !important;
	}
	.spcenter p,
	.spcenter{
	text-align: center;
	}
}
@media screen and (max-width: 370px) {
	.sp_pd {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
	.sp_pdtb {
		padding-top: 10px !important;
		padding-bottom: 10px !important;
	}
	.sp_full {
		margin-left: -10px !important;
		margin-right: -10px !important;
	}
}


/* pc_hidden
============================================================================================================ */
@media screen and (min-width: 769px), print {
	.pc_hidden {
		position: relative;
		overflow: hidden;
		display: block;
		height: 0;
	}
}

/* color
============================================================================================================ */
.c_theme,
a.c_theme {
	color: #;
}
.c_black,
a.c_black {
	color: #000;
}
.c_white,
a.c_white {
	color: #fff;
}
.c_pink,
a.c_pink {
	color: #dc6b7f;
}

.bg_white {
	background-color: #fff;
}

/* transition
============================================================================================================ */
@media screen and (min-width: 769px) {
	a[href],
	a[href]:before,
	a[href]:after,
	button,
	.basic_trs,
	.basic_trs:before,
	.basic_trs:after,
	.basic_trs *,
	.basic_trs *:before,
	.basic_trs *:after {
		-webkit-transition: color 0.2s, background 0.2s, border 0.2s, opacity 0.2s;
		-o-transition: color 0.2s, background 0.2s, border 0.2s, opacity 0.2s;
		transition: color 0.2s, background 0.2s, border 0.2s, opacity 0.2s;
	}
}


/* font family
============================================================================================================ */
.ff_min {
	/*font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "HiraMinProN-W3", "HGS明朝E", "HG明朝E", "メイリオ", Meiryo, serif;
	*/
}


@media screen and (max-width: 768px) {
	.ff_min {
	}
}

.ff_en {

	font-family: 'Archivo', sans-serif;
	font-family: 'Montserrat', sans-serif;
	padding-left: .6em;
	letter-spacing: .6em;
	font-weight: normal;
/*
font-family: "游ゴシック", "Yu Gothic", Yu Gothic, "游ゴシック体", "YuGothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;

*/
}
.ff_ga {
	/*font-family: 'EB Garamond', serif;*/

	letter-spacing: .15em;
	font-weight: normal;font-style: italic;
}
@media screen and (max-width: 768px) {
	.ff_ga {
		font-family: 'EB Garamond', serif;
	}
}
/* font
============================================================================================================ */
.fwb {
	font-weight: bold;
}


/* display
============================================================================================================ */
.db {
	display: block;
}
.dib {
	display: inline-block;
}

/* w
============================================================================================================ */
.w {
	position: relative;
	width: 980px;
	margin: 0 auto;
}
.w:after {
	content: ""; display: table; clear: both;
}
.wt:after {
	content: none;
}
.mw {
	min-width: 1040px;
}
@media screen and (max-width: 768px) {
	.w {
		width: auto !important;
		max-width: none !important;
	}
	.mw {
		min-width: 0;
	}
	.sp_hv_op {
		position: fixed;
		top: 3px;
		right: 15px;
			}
}


/* hover
============================================================================================================ */
@media screen and (min-width: 769px), print {
	a.hv_wh,
	button.hv_wh,
	a .hv_wh,
	.hv_wh a {
		position: relative;
		display: block;
		vertical-align: middle;
		overflow: hidden;
	}
	a.hv_wh:after,
	button.hv_wh:after,
	a .hv_wh:after,
	.hv_wh a:after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background-color: rgba(255,255,255,0);
		-webkit-transition: background 0.2s;
		-o-transition: background 0.2s;
		transition: background 0.2s;
		z-index: 3;
	}
	a[href].hv_wh:hover:after,
	button.hv_wh:hover:after,
	a[href]:hover .hv_wh:after,
	.hv_wh a[href]:hover:after {
		background-color: rgba(255,255,255,0.5);
	}
	a[href].hv_wh.a20:hover:after,
	button.hv_wh.a20:hover:after,
	a[href]:hover .hv_wh.a20:after,
	.hv_wh.a20 a[href]:hover:after {
		background-color: rgba(255,255,255,0.2);
	}
	a[href].hv_wh.a10:hover:after,
	button.hv_wh.a10:hover:after,
	a[href]:hover .hv_wh.a10:after,
	.hv_wh.a10 a[href]:hover:after {
		background-color: rgba(255,255,255,0.1);
	}

	a[href] .hv_op {
		-webkit-transition: opacity 0.2s;
		-o-transition: opacity 0.2s;
		transition: opacity 0.2s;
	}
	a[href].hv_op:hover,
	a[href]:hover .hv_op,
	 .hv_op a[href]:hover {
		opacity: 0.5;
	}
	a[href].hv_op.a20:hover,
	a[href]:hover .hv_op.a20,
	.hv_op.a20 a[href]:hover {
		opacity: 0.8;
	}
	a[href].hv_op.a10:hover,
	a[href]:hover .hv_op.a10,
	.hv_op.a10 a[href]:hover {
		opacity: 0.9;
	}
}



/* target
============================================================================================================ */
.target {
	display: block;
	position: relative;
	width: 1px;
	top: -70px;
}
.target.pt {
	top: -90px;
}
@media screen and (max-width: 768px) {
	.target {
		top: -54px;
	}
	.target.pt {
		top: -74px;
	}
}


/* header
============================================================================================================ */
#header {
	position: relative;
}
@media screen and (min-width: 769px), print {
	#header h1 {
		padding: 15px 0 15px;
		text-align: center;
	}
}
@media screen and (max-width: 768px) {
	#header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		height: 54px;
		background-color: #f1f0ee;
		-webkit-box-shadow: 0 0 5px rgba(0,0,0,.1);
		box-shadow: 0 0 5px rgba(0,0,0,.1);
		z-index: 9999;
	}
	#header h1 {
		padding: 0;
	}
	#header h1 a {
		display: block;
		width: 90px;
		height: 54px;
		background: url(../images/head/logo_sp.png) no-repeat 50%;
		-webkit-background-size: 90px;
		background-size: 90px;
	}
	#header h1 img {
		display: none;
	}
}


/* snav
------------------------------------------------------------- */
#header .tel a {
	display: block;
	position: relative;
	padding: 4px 15px 0 26px;
	font-size: 1.6rem;
	letter-spacing: 1.2px;
	background: url(../images/head/ico_tel.png) no-repeat 0;
	-webkit-background-size: 15px;
	background-size: 15px;
	text-decoration: none;
	color: #282524;
	line-height: 1.3;
	/*font-weight: bold;*/

}
#header .tel a span {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
	letter-spacing: 0;

}
@media screen and (min-width: 769px), print {
	#header .snav {
		position: absolute;
		top: 30px;
		right: 20px;
	}
	#header .snav .tel,
	#header .snav ul,
	#header .snav li {
		float: left;
	}
	#header .snav a {
		display: block;
		position: relative;
		height: 40px;
		text-decoration: none;
		color: #282524;
		line-height: 1.3;
		font-weight: bold;
	}

	#header .snav ul {
		border-left: 1px solid #d0d0d0;
	}
	#header .snav li {
		border-right: 1px solid #d0d0d0;
	}
	#header .snav li a {
		width: 50px;
		text-align: center;
		white-space: nowrap;
		background-position: 50% 0;
		background-repeat: no-repeat;
		-webkit-background-size: 28px;
		background-size: 28px;
	}
	#header .snav li a.access {
		background-image: url(../images/head/ico_access.png);
	}
	#header .snav li a.faq {
		background-image: url(../images/head/ico_faq.png);
	}

	#header .snav li a span {
		position: absolute;
		bottom: 0;
		right: 0;
		left: 0;
		-webkit-transform-origin: 50% 100%;
		-moz-transform-origin: 50% 100%;
		-ms-transform-origin: 50% 100%;
		-o-transform-origin: 50% 100%;
		transform-origin: 50% 100%;
		-webkit-transform: scale(.9);
		-ms-transform: scale(.9);
		-o-transform: scale(.9);
		transform: scale(.9);
	}
}
@media screen and (max-width: 768px) {
	#header .tel a {
		position: absolute;
		overflow: hidden;
		width: 240px;
		left: 100px;
		top: 4px;
		height: 46px;
		padding-top: 10px;
		font-size: 1.1rem;
	}
	#header .tel a span {
		-webkit-transform-origin: 0;
		-moz-transform-origin: 0;
		-ms-transform-origin: 0;
		-o-transform-origin: 0;
		transform-origin: 0;
		white-space: nowrap;
		-webkit-transform: scale(.9);
		-ms-transform: scale(.9);
		-o-transform: scale(.9);
		transform: scale(.9);
		font-weight: normal;
	}
		#header .snav li a.access {
		background-image: url(../images/head/ico_access.png);
	}
	#header .snav li {
		background-image: url(../images/head/ico_home.png);
		background-size: 100%;
		background-repeat: no-repeat;
		padding: 30px 0 0 0;
	}
	#header .snav li a.faq {

	}

}



/* nav_btn
------------------------------------------------------------- */
@media screen and (max-width: 768px) {
	#header .nav_btn {
		position: absolute;
		right: 0;
		top: 0;
		background-color: #282524;
		width: 54px;
		height: 54px;
		z-index: 20;
	}
	#header .nav_btn a {
		position: relative;
		display: block;
		height: 54px;
	}
	#header .nav_btn:before,
	#header .nav_btn a:before,
	#header .nav_btn a:after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: 26px;
		margin-top: -1px;
		margin-left: -13px;
		border-top: 2px solid #fff;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header .nav_btn a:before {
		-webkit-transform: translateY(-7px);
		-ms-transform: translateY(-7px);
		-o-transform: translateY(-7px);
		transform: translateY(-7px);
	}
	#header .nav_btn a:after {
		-webkit-transform: translateY(7px);
		-ms-transform: translateY(7px);
		-o-transform: translateY(7px);
		transform: translateY(7px);
	}
	#header .nav_close a {
		position: fixed;
		top: 54px;
		right: 0;
		left: 0;
		background-color: rgba(0,0,0,.3);
		opacity: 0;
		pointer-events: none;
		z-index: 4;
	}


	/* open */
	#header.open .nav_btn:before {
		opacity: 0;
	}
	#header.open .nav_btn a:before {
		-webkit-transform: translateY(0) rotate(45deg);
		-ms-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	#header.open .nav_btn a:after {
		-webkit-transform: translateY(0) rotate(-45deg);
		-ms-transform: translateY(0) rotate(-45deg);
		transform: translateY(0) rotate(-45deg);
	}
	#header.open .nav_close a {
		opacity: 1;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		pointer-events: auto;
	}

	/* showed */
	#header.showed .nav_close a {
		bottom: 0;
		-webkit-transition: opacity .3s;
		-o-transition: opacity .3s;
		transition: opacity .3s;
	}
}


/* nav
------------------------------------------------------------- */
@media screen and (min-width: 769px), print {
	#header nav {
		position: relative;
		height: 70px;
	}
	#header nav > * {
		position: absolute;
		right: 0;
		left: 0;
		top: 0;
		height: 70px;
		background-color: #ffffff;
		-webkit-transition: -webkit-box-shadow .5s;
		-o-transition: box-shadow .5s;
		transition: box-shadow .5s;
		z-index: 9999;
	}

	#header nav a {
		position: relative;
		display: block;
		height: 70px;
		padding: 18px 10px 0;
		text-decoration: none;
		color: #1a1a1a;
		font-size: 1rem;
		line-height: 1.6;
		text-align: center;
		/*font-weight: bold;*/
	}
	#header nav a .ff_min {
		display: block;
		font-size: 1.3rem;
		font-weight: normal;
		
	}

	#header .gnav {
		display: table;
		position: absolute;
		top: 0;
		right: 200px;
/*font-family: "游ゴシック", "Yu Gothic", Yu Gothic, "游ゴシック体", "YuGothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
*/
		font-weight: 900;
	}
	#header .gnav > * {
		display: table-cell;
		vertical-align: middle;
	}
	#header .gnav a:after {
		content: "";
		position: absolute;
		bottom: 10px;
		right: 8px;
		left: 8px;
		border-top: 1px solid #7b5b42;
		opacity: 0;
		-webkit-transform: translateY(-3px);
		-ms-transform: translateY(-3px);
		-o-transform: translateY(-3px);
		transform: translateY(-3px);
		-webkit-transition: all .2s;
		-o-transition: all .2s;
		transition: all .2s;
	}
	#header .gnav li.kinglogo a:after {
		border-top: none !important;
	}

	#header .gnav li a.current,
	#header .gnav li a:hover {
		color: #7b5b42;
	}
	#header .gnav li a.current:after,
	#header .gnav li a:hover:after {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}

	#header .reservation {
		position: absolute;
		right: 0;
		top: 0;
		width: 184px;
	}
	#header .reservation a {
		background-color: #dd968b;
		color: #fff;
		letter-spacing: 0.1em;
		
	}
	#header .reservation a .ff_min{
	font-size: 1.4rem;
	letter-spacing: 0.1em !important;
	font-weight: normal !important;
	}


	#header .sp_snav {
		display: none;
	}
}
@media screen and (min-width: 1250px) {
	#header .gnav {
		position: static;
		margin: auto;
	}
}
@media screen and (max-width: 1097px) {
	#header .kinglogo.pc {
		display: none;
	}
}
@media screen and (min-width: 769px) {
	#header nav.fixed > * {
		position: fixed;
		background-color: #fff;
		-webkit-box-shadow: 0 0 5px rgba(0,0,0,.1);
		box-shadow: 0 0 5px rgba(0,0,0,.1);
		-webkit-transform: translate3d(tx, ty, tz);
		-ms-transform: translate3d(tx, ty, tz);
		-o-transform: translate3d(tx, ty, tz);
		transform: translate3d(0, 0, 0);
	}
	
	#header nav li.kinglogo img {
	display: none;
	}
	#header nav.fixed li.kinglogo img {
	display: block;
	}

	#header nav li.kinglogo {
	display: block;text-align: left;width: 70px;
	}
	
	
}

@media screen and (max-width: 768px) {
	#header nav {
	}
	#header nav > div {
		position: fixed;
		right: 0;
		bottom: 0;
		width: 240px;
		top: 54px;
		background-color: #fff;
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		-o-transform: translateX(100%);
		transform: translateX(100%);
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		z-index: 5;
	}
	#header nav > div > div {
		height: 100%;
		overflow-y: auto;
		padding-bottom: 20px;
	}

	/* open */
	#header.open nav > div {
		-webkit-transform: translateX(0%);
		-ms-transform: translateX(0%);
		-o-transform: translateX(0%);
		transform: translateX(0%);
	}
	/* showed */
	#header.showed nav > div {
		-webkit-transition: -webkit-transform 0.3s;
		-o-transition: -o-transform 0.3s;
		transition: transform 0.3s;
	}

	#header nav a {
		position: relative;
		display: block;
		padding: 7px 15px;
		text-decoration: none;
		color: #1a1a1a;
		font-size: 1rem;
		line-height: 1.5;
		font-weight: 900;

	}
	#header nav a .ff_min {
		display: block;
		font-size: 1.4rem;
		font-weight: normal;
	}
	#header nav a:after {
		content: "";
		position: absolute;
		top: 50%;
		right: 15px;
		width: 8px;
		height: 8px;
		margin-top: -6px;
		border-top: 1px solid #ccc;
		border-right: 1px solid #ccc;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#header nav li {
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	#header .reservation a {
		background-color: #dd968b;
		color: #fff;
	}
	#header .reservation a:after {
		border-color: #fff;
	}

	#header .sp_snav {
		margin-top: 10px;
	}
	#header .sp_snav li {
		border: 0;
	}
	#header .sp_snav a {
		padding: 7px 15px 7px 40px;
		background-position: 15px;
		background-repeat: no-repeat;
		-webkit-background-size: 20px;
		background-size: 20px;
	}
	#header .sp_snav a.access {
		background-image: url(../images/head/ico_access.png);
	}
	#header .sp_snav a.faq {
		background-image: url(../images/head/ico_faq.png);
	}
	#header .sp_snav a.home {
		background-image: url(../images/head/ico_home.png);
	}
	
	#header .sp_snav a:after {
		content: none;
	}
}
@media screen and (max-width: 370px) {
	#header nav a {
		padding: 6px 15px;
	}
	#header nav a .ff_min {
		font-size: 1.3rem;
	}
}


/* footer
============================================================================================================ */

/* ホテルサイトで設定 */




/* container
============================================================================================================ */
#container {
	position: relative;
	/*margin-bottom: 60px;*/
	font-size: 1.2rem;
	line-height: 1.9;
	letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
	#container {
		margin-bottom: 30px;
		padding-top: 54px;
		font-size: 1.1rem;
		letter-spacing: 0;
	}
}



/* bnr
============================================================================================================ */
#bnr {
	margin-top: 40px;
	padding: 110px 0 140px;
}
#bnr li + li {
	margin-top: 50px;
}
#bnr a {
	position: relative;
	overflow: hidden;
	display: block;
	text-align: center;
	text-decoration: none;
}
#bnr a span {
	display: block;
}
#bnr a .img {
	background-position: 50% 0;
	-webkit-background-size: cover;
	background-size: cover;
}
#bnr a .contents {
	position: relative;
	font-size: 1.2rem;
	z-index: 3;
}
#bnr a .contents .title ~ span {
	margin-top: 8px;
}

#bnr a.fair {
	background-color: #fff;
	color: #a7a373;
}
#bnr a.fair .img {
	background-image: url(../images/parts/bnr_fair_ph.jpg);
}
#bnr a.fair .contents {
	border-top: 2px solid #bdbb96;
	border-bottom: 2px solid #bdbb96;
}
#bnr a.fair .contents:before,
#bnr a.fair .contents:after {
	content: "";
	position: absolute;
	right: 0;
	left: 0;
	border-top: 2px solid #bdbb96;
}
#bnr a.fair .contents:before {
	top: 2px;
}
#bnr a.fair .contents:after {
	bottom: 2px;
}
#bnr a.fair .plus_ico {
	left: 10px;
	bottom: 10px;
}

#bnr a.propose_plan {
	background-color: #182734;
	color: #fff;
}
#bnr a.propose_plan .img {
	background-image: url(../images/parts/bnr_propose_plan_ph.jpg);
}
#bnr a.propose_plan .contents {
	background-image: url(../images/parts/bnr_propose_plan_line01.png), url(../images/parts/bnr_propose_plan_line02.png);
	background-repeat: no-repeat;
	background-position: 0 0, 0 100%;
}
#bnr a.propose_plan .plus_ico {
	right: 10px;
	bottom: 10px;
}

#bnr a.faq {
	padding: 25px 0;
	background: url(../images/parts/bnr_faq_ph.jpg) no-repeat 50%;
	-webkit-background-size: cover;
	background-size: cover;
}
#bnr a.faq:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

@media screen and (min-width: 769px), print {
	#bnr a .img {
		position: absolute;
		top: 0;
		bottom: 0;
	}

	#bnr a.fair {
		height: 250px;
	}
	#bnr a.fair .img {
		left: 0;
		width: 530px;
	}
	#bnr a.fair .contents {
		height: 200px;
		margin: 25px 25px 25px 555px;
		padding-top: 15px;
	}

	#bnr a.propose_plan {
		height: 250px;
	}
	#bnr a.propose_plan .img {
		right: 0;
		width: 560px;
	}
	#bnr a.propose_plan .img:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		width: 200px;
		background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzE4MjczNCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMxODI3MzQiIHN0b3Atb3BhY2l0eT0iMCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
		background: -moz-linear-gradient(left, rgba(24,39,52,1) 0%, rgba(24,39,52,0) 100%);
		background: -webkit-linear-gradient(left, rgba(24,39,52,1) 0%,rgba(24,39,52,0) 100%);
		background: linear-gradient(to right, rgba(24,39,52,1) 0%,rgba(24,39,52,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#182734', endColorstr='#00182734',GradientType=1 );
	}
	#bnr a.propose_plan .contents {
		width: 420px;
		height: 210px;
		margin: 20px 0 20px 30px;
		padding-top: 20px;
	}

	#bnr a.faq:before {
		background: url(../images/parts/bnr_faq_line.png) no-repeat 50%;
	}
}
@media screen and (max-width: 768px) {
	#bnr {
		margin-top: 50px;
		padding: 40px 0 40px;
	}
	#bnr li + li {
		margin-top: 20px;
	}
	#bnr a .img {
		padding-top: 40%;
	}
	#bnr a .contents {
		margin: 5px;
		padding: 10px 0;
		font-size: 1rem;
		line-height: 1.6;
	}
	#bnr a .contents .title img {
		width: 170px;
	}

	#bnr a.fair .contents {
		padding: 9px 0;
		border-top-width: 1px;
		border-bottom-width: 1px;
	}
	#bnr a.fair .contents:before,
	#bnr a.fair .contents:after {
		border-top-width: 1px;
	}
	#bnr a.fair .contents:before {
		top: 1px;
	}
	#bnr a.fair .contents:after {
		bottom: 1px;
	}

	#bnr a.propose_plan .contents {
		-webkit-background-size: 100% 3px;
		background-size: 100% 3px;
	}

	#bnr a.faq {
		padding: 40px 0;
	}
	#bnr a.faq img {
		width: 220px;
	}
	#bnr a.faq:before {
		border-style: solid;
		border-width: 40px;
		border-image: url(../images/parts/bnr_faq_line.png) 40 stretch;
		border-image-width: 20px;
	}

	#bnr a.fair .plus_ico,
	#bnr a.propose_plan .plus_ico {
		display: none;
	}
}




/* contentsnav
============================================================================================================ */
#contentsnav li {
	float: left;
	width: 25%;
}
#contentsnav li.wide {
	width: 100%;
}
#contentsnav li a {
	overflow: hidden;
	position: relative;
	display: block;
	padding-top: 260px;
	background-position: 50%;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	text-decoration: none;
	color: #fff;
	text-align: center;
	/*font-weight: bold;*/
}
#contentsnav li a.fair {
	background-image: url(../images/parts/contentsnav_bg_fair.jpg);
}
#contentsnav li a.concept {
	background-position: 50% 60%;
	background-image: url(../images/parts/contentsnav_bg_concept.jpg);
}
#contentsnav li a.ceremony {
	background-image: url(../images/parts/contentsnav_bg_ceremony.jpg);
}
#contentsnav li a.room {
	background-position: 50% 100%;
	background-image: url(../images/parts/contentsnav_bg_room.jpg);
}
#contentsnav li a.cuisine {
	background-image: url(../images/parts/contentsnav_bg_cuisine.jpg);
}
#contentsnav li a.item {
	background-position: 50% 80%;
	background-image: url(../images/parts/contentsnav_bg_item.jpg);
}
#contentsnav li a.plan {
	background-image: url(../images/parts/contentsnav_bg_plan.jpg);
}
#contentsnav li a.reports {
	background-position: 50% 20%;
	background-image: url(../images/parts/contentsnav_bg_reports.jpg);
}
#contentsnav li a.engagement {
	background-position: 50% 30%;
	background-image: url(../images/parts/contentsnav_bg_engagement.jpg);
}
#contentsnav li a > span {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	z-index: 3;
}
#contentsnav li a .title {
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 1.5rem;
}
#contentsnav li a .title .ff_en {
	display: block;
				font-weight: 900;

}
#contentsnav li a .title .ff_min {
}
#contentsnav li a .bg {
	height: 76px;
	background-color: rgba(40,37,36,.4);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 1;
}
@media screen and (min-width: 769px), print {
	#contentsnav li a {
		-webkit-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	#contentsnav li a .summary {
		margin-top: 40px;
		opacity: 0;
		-webkit-transition: opacity .3s;
		-o-transition: opacity .3s;
		transition: opacity .3s;
		font-weight: 900;
	}
	#contentsnav li a .bg {
		-webkit-transition: all .3s;
		-o-transition: all .3s;
		transition: all .3s;
	}
	#contentsnav li a:hover {
		color: #282524;
	}
	#contentsnav li a:hover .summary {
		opacity: 1;
	}
	#contentsnav li a:hover .bg {
		height: 270px;
		background-color: rgba(255,255,255,.85);
	}
}
@media screen and (max-width: 768px) {
	#contentsnav ul {
		margin-left: -1px;
	}
	#contentsnav li {
		width: 50%;
	}
	#contentsnav li a {
		padding-top: 90%;
		border-left: 1px solid #f1f0ee;
		border-bottom: 1px solid #f1f0ee;
	}
	#contentsnav li a.fair {
		padding-top: 45%;
	}
	#contentsnav li a .title {
		font-size: 1.3rem;
	}
	#contentsnav li a .title .ff_en {
		padding-left: 0.3em;
		letter-spacing: 0.3em;


	}
	#contentsnav li a .summary {
		display: none;
	}
	#contentsnav li a .bg {
		background-color: rgba(40,37,36,.6);
	}
}
@media screen and (max-width: 370px) {
	#contentsnav li a .title .ff_en {
		padding-left: 0.15em;
		letter-spacing: 0.15em;
	}
}





/* contactus
============================================================================================================ */
#contactus {
	height: 400px;
	margin-top: 145px;
	padding-top: 90px;
	background: url(/wedding/common/images/parts/contact_bg.jpg) no-repeat 50% 40%;
	-webkit-background-size: cover;
	background-size: cover;
	color: #fff;
	text-align: center;
}
#contactus h1 {
	padding-bottom: 20px;
	border-bottom: 1px solid #fff;
	font-size: 1.3rem;
	letter-spacing: 3px;
	line-height: 1.4;
	font-weight: normal;
}
#contactus h1 .ff_en {
	display: block;
	margin-bottom: 8px;
	font-size: 2rem;
	font-weight: normal;
}
#contactus p {
	font-size: 2.5rem;
	line-height: 1.4;
	font-weight: normal;
}
#contactus p a {
	color: #fff;
	text-decoration: none;
}
#contactus p span {
	display: block;
	margin-top: 2px;
	font-size: 1.2rem;
	font-weight: normal;
}
@media screen and (min-width: 769px), print {
	#contactus h1 {
		width: 620px;
		margin: 0 auto 20px;
	}
	#contactus ul {
		width: 620px;
		margin: 30px auto 0;
	}
	#contactus ul li {
		/*float: left;*/
		width: 50%;
		padding: 0 10px;
		font-weight: normal;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}




	
		#contactus ul li a{
display: inline-block;
z-index: 2;
	width: 300px;
	max-width: 100%;
	padding: 12px 0;
	border: 1px solid #ffffff;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1.3rem;
overflow: hidden;
	position: relative;

		}

		#contactus ul li a:link{text-decoration: none;}
#contactus ul li a span:before,
#contactus ul li a span:after{
	content: "";
	position: absolute;
	top: 50%;
	right: 25px;
	width: 15px;
	border-top: 1px solid;
}

#contactus ul li a span:after{
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}



		#contactus ul li a:before ,
		#contactus ul li a:after {
		  position: absolute;
		  z-index: -1;
		  display: block;
		  content: '';

		}
		#contactus ul li a,
		#contactus ul li a:before,
		#contactus ul li a:after {
		  -webkit-box-sizing: border-box;
		  -moz-box-sizing: border-box;
		  box-sizing: border-box;
		  -webkit-transition: all .5s;
		  transition: all .5s;
		}
		#contactus ul li a:hover {
		  color: #4d4d4d;
		}

		#contactus ul li a:after{
		  top: 0%;
		  left: -100%;
		  width: 100%;
		  height: 100%;
		}
		#contactus ul li a:hover:after{
		  top: 0;
		  left: 0;
		background-color: #ffffff;
		  color: #4d4d4d;
		}

	
}
@media screen and (max-width: 768px) {
	#contactus {
		height: auto;
		margin-top: 50px;
		padding: 40px 0;
	}
	#contactus h1 {
		padding-bottom: 15px;
		font-size: 1.1rem;
	}
	#contactus h1 .ff_en {
		margin-bottom: 5px;
		font-size: 1.7rem;
	}
	#contactus p {
		margin-top: 15px;
		margin-bottom: 20px;
		font-size: 2rem;
		letter-spacing: 2px;
	}
	#contactus p span {
		font-size: 1.1rem;
		letter-spacing: 0;
	}
	#contactus ul li {
		margin-top: 15px;
	}



		#contactus ul li a{
	display: block;
	width: 100%;
	padding: 12px 0;
	border: 1px solid #ffffff;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1.3rem;
	position: relative;

		}

		#contactus ul li a:link{text-decoration: none;}
#contactus ul li a span:before,
#contactus ul li a span:after{
	content: "";
	position: absolute;
	top: 50%;
	right: 25px;
	width: 15px;
	border-top: 1px solid;
}

#contactus ul li a span:after{
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}



		#contactus ul li a:before ,
		#contactus ul li a:after {
		  position: absolute;
		  z-index: -1;
		  display: block;
		  content: '';

		}





}


/* ===================================================================================================================

	パーツ

=================================================================================================================== */

/* page_title
============================================================================================================ */
.page_title {
	position: relative;
	display: table;
	width: 100%;
	height: 435px;
	background-position: 50% 0;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	font-size: 1.6rem;
	text-align: center;
	/*font-weight: bold;*/
	letter-spacing: 2px;
	color: #fff;
}
.concept .page_title {
	background-image: url(/wedding/concept/images/main_bg.jpg);
}
.fair .page_title {
	background-position: 50%;
	background-image: url(/wedding/fair/images/main_bg.jpg);
}
.ceremony .page_title {
	background-image: url(/wedding/ceremony/images/main_bg.jpg);
}
.room .page_title {
	background-image: url(/wedding/room/images/main_bg.jpg);
}
.cuisine .page_title {
	background-position: 50%;
	background-image: url(/wedding/cuisine/images/main_bg.jpg);
}
.item .page_title {
	background-position: 50%;
	background-image: url(/wedding/item/images/main_bg.jpg);
}
.plan .page_title {
	background-image: url(/wedding/plan/images/main_bg.jpg);
}
.reports .page_title {
	background-image: url(/wedding/reports/images/main_bg.jpg);
}
.propose-plan .page_title {
	background-position: 50%;
	background-image: url(/wedding/propose-plan/images/main_bg.jpg);
}
.page_title > * {
	display: table-cell;
	vertical-align: middle;
}
.page_title h1 {
	font-size: 4rem;
	line-height: 1.5;
	text-shadow: 1px 1px 4px #8f8f8f, 1px 1px 4px #8f8f8f, 1px 1px 4px #8f8f8f, 2px 2px 4px #8f8f8f;

}
.page_title p.ff_min{
	text-shadow: 2px 2px 8px #8f8f8f, 2px 2px 8px #8f8f8f, 2px 2px 8px #8f8f8f, 1px 1px 10px #8f8f8f;
}

.page_title .lead {
	position: absolute;
	right: 0;
	left: 0;
	top: 320px;
	text-shadow: 2px 2px 8px #8f8f8f, 2px 2px 8px #8f8f8f, 2px 2px 8px #8f8f8f, 1px 1px 10px #8f8f8f;

}

.page_title.s {
	background: none;
	height: 240px;
	color: #282524;
}
.page_title.s h1,
.page_title.s p.ff_min {
	text-shadow: none !important;

}


.page_title.break_line .ff_ga:after {
	content: "";
	display: block;
	width: 44px;
	margin: 10px auto 15px;
	border-bottom: 1px solid #e6adb6;
}
@media screen and (min-width: 1300px) {
	.page_title {
		height: 500px;
}
}
@media screen and (min-width: 2000px) {
	.page_title {
		height: 640px;
}
}
@media screen and (min-width: 2048px) {
#header{width: 2048px;margin-left: auto;margin-right: auto;}
				#container{width: 2048px;margin-left: auto;margin-right: auto;}
				#header nav.fixed > div {width: 2048px;margin-left: auto;margin-right: auto;}
}
@media screen and (max-width: 1128px) {

}

@media screen and (max-width: 768px) {
	.fair .page_title {
		background-position: 37%;
		background-image: url(/wedding/fair/images/main_bg.jpg);
	}
	.concept .page_title {
		background-size:cover;
		background-position: 37% ;
		background-image: url(/wedding/concept/images/main_bg.jpg);
	}
	.page_title {
		/*height: 210px;*/
		font-size: 1.2rem;
		height: 380px;

	}
	.page_title h1 {
		font-size: 3rem;
		line-height: 1.3;
	}
	.page_title .lead {
		top: auto;
		bottom: 10px;
	}

	.page_title.s {
		height: 120px;
	}
	.page_title.break_line .ff_ga:after {
		margin: 6px auto 8px;
}
}


/* title
============================================================================================================ */
/* line_title */
.line_title {
	overflow: hidden;
	margin-bottom: 40px;
	text-align: center;
	font-size: 1.4rem;
}
.line_title span {
	display: block;
}
.line_title > span:first-child {
	position: relative;
	display: inline-block;
	margin-bottom: 10px;
	font-size: 2.1rem;
	line-height: 1.6;
}
.line_title > span:first-child:before,
.line_title > span:first-child:after {
	content: "";
	position: absolute;
	top: 50%;
	width: 4000px;
	border-top: 1px solid #d6d6d6;
}
.line_title > span:first-child:before {
	right: 100%;
	margin-right: 40px;
}
.line_title > span:first-child:after {
	left: 100%;
	margin-left: 40px;
}

.line_title.mbl {
	margin-bottom: 70px;
}
.line_title.line_non .ff_ga:before,
.line_title.line_non .ff_ga:after {
	content: none;
}
@media screen and (max-width: 768px) {
	.line_title {
		margin-bottom: 20px;
		font-size: 1.2rem;
	}
	.line_title > span:first-child {
		margin-bottom: 2px;
		font-size: 2.2rem;
	}
	.line_title > span:first-child:before {
		margin-right: 20px;
	}
	.line_title > span:first-child:after {
		margin-left: 20px;
	}

	.line_title.mbl {
		margin-bottom: 40px;
	}
}

/* fix_bdb_title */
.fix_bdb_title {
	margin-bottom: 30px;
	font-size: 1.4rem;
	font-weight: bold;
}
.fix_bdb_title h1,
h1.fix_bdb_title {
	position: relative;
	margin-bottom: 15px;
	font-size: 1.2rem;
	padding-left: 0;
	border-bottom: 1px solid #dcdcdc;
}

.fix_bdb_title h1.ff_en{
font-weight: 900;
font-size: 1.3rem;
}
.fix_bdb_title p.ff_min{
font-weight: normal;
font-size: 1.6rem;
}

.fix_bdb_title h1 > span,
h1.fix_bdb_title > span {
	position: relative;
	display: inline-block;
	padding-bottom: 5px;
}
.fix_bdb_title h1 > span:after,
h1.fix_bdb_title > span:after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	right: 0.5em;
	border-bottom: 1px solid #282524;
}
@media screen and (max-width: 768px) {
	.fix_bdb_title {
		margin-bottom: 20px;
		font-size: 1.3rem;
	}
	.fix_bdb_title h1,
	h1.fix_bdb_title {
		margin-bottom: 8px;
	}
}


/* lead_txt
============================================================================================================ */
.lead_txt {
	margin-bottom: 100px;
	padding: 50px 0;
	font-size: 1.4rem;
	line-height: 2.1;
	text-align: center;
}
.lead_txt.mbs {
	margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
	.lead_txt {
		margin-bottom: 40px !important;
		padding: 20px 10px !important;
		font-size: 1.2rem;
		text-align: left;
	}
}


/* sec_lead_center
============================================================================================================ */
.sec_lead_center {
	text-align: center;
}
.sec_lead_center > * {
	margin-bottom: 1.8em;
}

.sec_lead_center p{
	font-size: 1.4rem;
}


@media screen and (max-width: 768px) {
	.sec_lead_center {
		text-align: left;
	}
	.sec_lead_center p{
		font-size: 1.2rem;

	}
	
}


/* .mt_sec
============================================================================================================ */
.mt {
	margin-top: 1.5em;
}
.mt_sec {
	margin-top: 150px;
}
.mt_sec_lm {
	margin-top: 130px;
}
.mt_sec_m {
	margin-top: 100px;
}
@media screen and (max-width: 768px) {
	.mt_sec {
		margin-top: 75px;
	}
	.mt_sec_lm {
		margin-top: 70px;
	}
	.mt_sec_m {
		margin-top: 50px;
	}
}


/* .pt_sec
============================================================================================================ */
.pt_sec {
	position: relative;
	padding-top: 110px;
}
@media screen and (max-width: 768px) {
	.pt_sec {
		padding-top: 40px;
	}
}


/* .white_box_sec
============================================================================================================ */
.white_box_sec {
	position: relative;
	padding-top: 80px;
	padding-bottom: 130px;
}
.white_box_sec.ptl {
	padding-top: 110px;
}
@media screen and (max-width: 768px) {
	.white_box_sec {
		padding-top: 40px;
		padding-bottom: 70px;
	}
	.white_box_sec.ptl {
		padding-top: 50px;
	}
}


/* box_btn
============================================================================================================ */
a.box_btn,
a .box_btn {
display: inline-block;
z-index: 2;
/*	display: block;*/
	width: 300px;
	max-width: 100%;
	padding: 12px 0 8px 0;
	border: 1px solid #282524;
	color: #282524;
	text-align: center;
	text-decoration: none;
	font-size: 1.3rem;
	/*font-weight: bold;*/
overflow: hidden;
	position: relative;
}
a.box_btn span:before,
a .box_btn span:before,
a.box_btn span:after,
a .box_btn span:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 25px;
	width: 15px;
	border-top: 1px solid;
}
a.box_btn span:after,
a .box_btn span:after {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}
.box_btn.white {
	border-color: #fff;
	color: #fff;
}
.box_btn.full {
	width: auto;
}
.box_btn.center {
	margin: auto;
}





a.box_btn:before,
a.box_btn:after {
position: absolute;
z-index: -1;
display: block;
content: '';
}
a.box_btn,
a.box_btn:before,
a.box_btn:after {
-webkit-box-sizing: border-box !important;
-moz-box-sizing: border-box !important;
box-sizing: border-box !important;
-webkit-transition: all .5s !important;
transition: all .5s !important;
}
a.box_btn:hover {
color: #fff;
}
a.box_btn:after {
top: 0%;
left: -100%;
width: 100%;
height: 100%;
}
a.box_btn:hover:after {
top: 0;
left: 0;
background-color: #e1e1e1;
color: #fff;
}









@media screen and (min-width: 769px), print {
	a.box_btn span:before,
	a .box_btn span:before,
	a.box_btn span:after,
	a .box_btn span:after {
		-webkit-transition: border .2s;
		-o-transition: border .2s;
		transition: border .2s;
	}
	a.box_btn span:hover,
	a:hover .box_btn {
		/*background-color: #282524;
		color: #fff;
		*/
	}
	.box_btn.white:hover {
		background-color: #fff;
		color: #282524;
	}
}
@media screen and (max-width: 768px) {
	a.box_btn,
	a .box_btn {
		/*width: auto;*/
		width: 100%;
		font-size: 1.2rem;
	}
	.box_btn.s {
		font-size: 1.2rem;
	}
	.box_btn.sp_center {
		margin: auto;
	}
}

/* box_btn_round
============================================================================================================ */
a.box_btn_round,
a .box_btn_round {
	position: relative;
	display: block;
	width: 470px;
	max-width: 100%;
	padding: 22px 0;
	background-color: #f7e9e5;
	border: 1px solid #d0536c;
	border-radius: 100px;
	color: #d0536c;
	text-align: center;
	text-decoration: none;
	font-size: 1.6rem;
	font-weight: bold;
}
.box_btn_round.back:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background: url(../images/parts/ico_back.png) no-repeat;
	-webkit-background-size: 100%;
	background-size: 100%;
}
.box_btn_round.white {
	background-color: #fff;
}
.box_btn_round.center {
	width: 420px;
	margin: auto;
}
@media screen and (min-width: 769px), print {
	a.box_btn_round:hover,
	a .box_btn_round:hover {
		background-color: #efd5ce;
	}
	.box_btn_round.white:hover {
		background-color: #f7e9e5;
	}
}
@media screen and (max-width: 768px) {
	a.box_btn_round,
	a .box_btn_round {
		width: auto !important;
		padding: 16px 0;
		font-size: 1.2rem;
	}
	.box_btn_round.back:before {
		right: 15px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
	}
}

.box_btn_round_group {
}
@media screen and (min-width: 769px), print {
	.box_btn_round_group li {
		float: left;
	}
	.box_btn_round_group li + li {
		float: right;
	}
}
@media screen and (max-width: 768px) {
	.box_btn_round_group li + li {
		margin-top: 15px;
	}
}


/* arrow_link
============================================================================================================ */
a.arrow_link,
a .arrow_link {
	position: relative;
	display: inline-block;
	padding-right: 20px;
	color: #1e1c1b;
	text-decoration: none;
}
a.arrow_link:before,
a .arrow_link:before {
	content: "";
	position: absolute;
	top: 6px;
	right: 0;
	width: 9px;
	height: 9px;
	border-top: 1px solid #2a2827;
	border-right: 1px solid #2a2827;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
@media screen and (min-width: 769px), print {
	a.arrow_link:hover,
	a .arrow_link:hover {
		text-decoration: underline;
	}
}



/* plus_ico
============================================================================================================ */
.plus_ico {
	position: absolute;
	width: 25px;
	height: 25px;
	background-color: rgba(255,255,255,.8);
}
.plus_ico:before,
.plus_ico:after {
	content: "";
	position: absolute;
	top: 12px;
	left: 7px;
	width: 11px;
	border-top: 1px solid #5e605e;
}
.plus_ico:after {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}





/* tab_nav
============================================================================================================ */
.tab_nav {
	margin-bottom: 80px;
}
.tab_nav li {
	float: left;
	width: 470px;
}
.tab_nav li + li {
	float: right;
}
.tab_nav li a {
	position: relative;
	display: block;
	padding: 10px;
	border: 1px solid #dc6b7f;
	font-size: 1.3rem;
	line-height: 1.5;
	color: #dc6b7f;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
}
.tab_nav li a .arrow {
	position: absolute;
	overflow: hidden;
	left: 0;
	right: 0;
	bottom: -13px;
	height: 13px;
}
.tab_nav li a .arrow:after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 13px;
	width: 20px;
	height: 20px;
	border: 1px solid #dc6b7f;
	-webkit-transform-origin: 0 100%;
	-moz-transform-origin: 0 100%;
	-ms-transform-origin: 0 100%;
	-o-transform-origin: 0 100%;
	transform-origin: 0 100%;
	-webkit-transform: scaleX(.8) rotate(-45deg);
	-ms-transform: scaleX(.8) rotate(-45deg);
	-o-transform: scaleX(.8) rotate(-45deg);
	transform: scaleX(.8) rotate(-45deg);
}

.tab_nav.white li a,
.tab_nav.white li a .arrow:after {
	background-color: #fff;
}

.tab_nav li a.current,
.tab_nav li a.current .arrow:after {
	background-color: #faeeeb !important;
}
.tab_nav li a.current .arrow:after {
	bottom: 0;
}
@media screen and (min-width: 769px), print {
	.tab_nav li a:hover {
		background-color: #faeeeb !important;
	}
	.tab_nav li a .arrow:after {
		-webkit-transition: background .2s, bottom .2s;
		-o-transition: background .2s, bottom .2s;
		transition: background .2s, bottom .2s;
	}
	.tab_nav li a:hover .arrow:after {
		bottom: 0;
		background-color: #faeeeb !important;
	}
}
@media screen and (max-width: 768px) {
	.tab_nav {
		margin-bottom: 40px;
	}
	.tab_nav ul {
		margin: 0 -3px;
	}
	.tab_nav li {
		width: 50%;
		padding: 0 3px;
	}
	.tab_nav li a {
		font-size: 1.2rem;
	}
}


/* local_nav
============================================================================================================ */
.local_nav {
}
.local_nav a {
	display: table;
	width: 100%;
	height: 40px;
	text-align: center;
	text-decoration: none;
	color: #dc6b7f;
	font-size: 1.3rem;
	line-height: 1.2;
}
.local_nav a > * {
	display: table-cell;
	vertical-align: middle;
}
@media screen and (min-width: 769px), print {
	.local_nav ul {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-collapse: collapse;
	}
	.local_nav ul > * {
		display: table-cell;
		vertical-align: middle;
		border: 1px solid #dc6b7f;
	}
	.local_nav a:hover {
		background-color: #faeeeb;
	}
}
@media screen and (max-width: 768px) {
	.local_nav a {
		height: 35px;
		font-size: 1.1rem;
	}

	.local_nav ul {
		border-left: 1px solid #dc6b7f;
		border-top: 1px solid #dc6b7f;
	}
	.local_nav ul:after {
		content: ""; display: table; clear: both;
	}
	.local_nav ul > * {
		float: left;
		width: 50%;
		border-right: 1px solid #dc6b7f;
		border-bottom: 1px solid #dc6b7f;
	}

}



/* slide_ph_block
============================================================================================================ */
.slide_ph_block {
	position: relative;
	margin-top: 70px;
}
.slide_ph_block img {
	max-width: 100%;
	height: auto;
}
.slide_ph_block .thumbs span {
	position: relative;
	display: block;
	background-position: 50%;
	-webkit-background-size: cover;
	background-size: cover;
}
.slide_ph_block .thumbs span:after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	left: 0;
	bottom: 0;
	background-color: rgba(20,20,20,.6);
	opacity: 1;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
	transition: opacity .2s;
}
.slide_ph_block .thumbs span.current:after {
	opacity: 0;
}
.slide_ph_block .arrow {
	position: absolute;
	background-color: rgba(20,20,20,.8);
}
.slide_ph_block .arrow:before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -6px;
	margin-top: -3px;
	border-style: solid;
	border-width: 0 6px 6px 6px;
	border-color: transparent transparent #fff transparent;
}
.slide_ph_block .arrow.slick-disabled {
	opacity: 0;
	pointer-events: none;
}
@media screen and (min-width: 769px), print {
	.slide_ph_block .main {
		float: left;
		width: 829px;
	}
	.slide_ph_block .thumbs {
		position: relative;
		float: right;
		width: 140px;
		height: 500px;
		overflow: hidden;
	}
	.slide_ph_block .thumbs ul {
	}
	.slide_ph_block .thumbs li {
		margin-bottom: 10px;
		border: 0;
	}
	.slide_ph_block .thumbs span {
		height: 92px;
		cursor: pointer;
	}
	.slide_ph_block .thumbs span.current {
		cursor: default;
	}
	.slide_ph_block .thumbs span:hover:after {
		opacity: 0;
	}
	.slide_ph_block .thumbs .arrow {
		right: 0;
		left: 0;
		height: 16px;
		-webkit-transition: background .2s;
		-o-transition: background .2s;
		transition: background .2s;
		cursor: pointer;
	}
	.slide_ph_block .thumbs .arrow.l {
		top: 0;
	}
	.slide_ph_block .thumbs .arrow.r {
		bottom: 0;
	}
	.slide_ph_block .thumbs .arrow.r:before {
		-webkit-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		transform: rotate(180deg);
	}
	.slide_ph_block .thumbs .arrow:hover {
		background-color: #555;
	}
}
@media screen and (max-width: 768px) {
	.slide_ph_block {
		margin-top: 35px;
	}
	.slide_ph_block .thumbs {
		margin-top: 10px;
		position: relative;
	}
	.slide_ph_block .thumbs li {
		float: left;
		width: 25%;
		margin-right: 4px;
	}
	.slide_ph_block .thumbs span {
		padding-top: 70%;
	}
	.slide_ph_block .thumbs .arrow {
		top: 0;
		bottom: 0;
		width: 16px;
	}
	.slide_ph_block .thumbs .arrow.l {
		left: 0;
	}
	.slide_ph_block .thumbs .arrow.l:before {
		-webkit-transform: rotate(-90deg);
		-ms-transform: rotate(-90deg);
		-o-transform: rotate(-90deg);
		transform: rotate(-90deg);
	}
	.slide_ph_block .thumbs .arrow.r {
		right: 0;
	}
	.slide_ph_block .thumbs .arrow.r:before {
		-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		-o-transform: rotate(90deg);
		transform: rotate(90deg);
	}
}


/* slide_ph_txt_block
============================================================================================================ */
.slide_ph_txt_block {
	position: relative;
}
.slide_ph_txt_block .thumbs span {
	position: relative;
	display: block;
	background-position: 50%;
	-webkit-background-size: cover;
	background-size: cover;
	opacity: .5;
}
.slide_ph_txt_block .thumbs span.current {
	opacity: 1;
}
.slide_ph_txt_block .thumbs .slick-dots {
	margin-top: 25px;
	text-align: center;
	font-size: 0;
}
.slide_ph_txt_block .thumbs .slick-dots li {
	float: none;
	width: auto;
	display: inline-block;
	margin: 0;
}
.slide_ph_txt_block .thumbs .slick-dots button {
	position: relative;
	overflow: hidden;
	width: 10px;
	height: 0;
	margin: 0 5px;
	padding: 10px 0 0;
	background: none;
	border: 0;
}
.slide_ph_txt_block .thumbs .slick-dots button:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #d6d6d6;
	border-radius: 100%;
	-webkit-transition: background .2s;
	-o-transition: background .2s;
	transition: background .2s;
}
.slide_ph_txt_block .thumbs .slick-dots .slick-active button:after {
	background-color: #282524;
}
@media screen and (min-width: 769px), print {
	.slide_ph_txt_block .contents {
		width: 330px;
		min-height: 400px;
		padding-bottom: 150px;
	}
	.slide_ph_txt_block.ph_l .contents {
		margin-left: auto;
	}
	.slide_ph_txt_block.ph_r .contents {
		margin-right: auto;
	}

	.slide_ph_txt_block .main {
		position: absolute;
		top: 0;
		width: 600px;
	}
	.slide_ph_txt_block.ph_l .main {
		left: 0;
	}
	.slide_ph_txt_block.ph_r .main {
		right: 0;
	}

	.slide_ph_txt_block .thumbs {
		position: absolute;
		bottom: 0;
		width: 330px;
	}
	.slide_ph_txt_block.ph_l .thumbs {
		right: 0;
	}
	.slide_ph_txt_block.ph_r .thumbs {
		left: 0;
	}

	.slide_ph_txt_block .thumbs li {
		float: left;
		width: 106px;
		margin-right: 6px;
	}
	.slide_ph_txt_block .thumbs span {
		height: 80px;
		cursor: pointer;
		-webkit-transition: opacity .2s;
		-o-transition: opacity .2s;
		transition: opacity .2s;
	}
	.slide_ph_txt_block .thumbs span.current {
		cursor: default;
	}
	.slide_ph_txt_block .thumbs span:hover {
		opacity: 1;
	}

	.slide_ph_txt_block .thumbs .slick-dots button:hover:after {
		background-color: #282524;
	}
}
@media screen and (max-width: 768px) {
	.slide_ph_txt_block .contents {
		margin-bottom: 15px;
	}
	.slide_ph_txt_block .thumbs {
		margin-top: 10px;
		position: relative;
	}
	.slide_ph_txt_block .thumbs li {
		float: left;
		width: 25%;
		margin-right: 4px;
	}
	.slide_ph_txt_block .thumbs span {
		padding-top: 70%;
	}
	.slide_ph_txt_block .thumbs .slick-dots {
		margin-top: 15px;
	}

}




/* float_txt_block
============================================================================================================ */
.float_txt_block {
	position: relative;
}
.float_txt_block + .float_txt_block {
	margin-top: 100px;
}
.float_txt_block .box {
	position: relative;
	border: 1px solid #c7b6a1;
	z-index: 2;
}
.float_txt_block .box h1 {
	margin-bottom: 20px;
	font-size: 1.9rem;
	line-height: 1.7;
}
.float_txt_block .box p {
	line-height: 2.2;
}
@media screen and (min-width: 769px), print {
	.float_txt_block + .float_txt_block.mt_l {
		margin-top: 130px;
	}
	.float_txt_block + .float_txt_block.mt_m {
		margin-top: 80px;
	}
	.float_txt_block + .float_txt_block.mt_s {
		margin-top: 60px;
	}

	.float_txt_block.ph_l .ph {
		text-align: left;
	}
	.float_txt_block.ph_r .ph {
		text-align: right;
	}

	.float_txt_block .box {
		position: absolute;
		width: 380px;
		padding: 45px 60px;
	}
	.float_txt_block.ph_l .box {
		right: 0;
		padding-left: 90px;
	}
	.float_txt_block.ph_r .box {
		left: 0;
		padding-right: 90px;
	}

	.float_txt_block .box.t-20 {
		top: -20px;
	}
	.float_txt_block .box.t-25 {
		top: -25px;
	}
	.float_txt_block .box.t-50 {
		top: -50px;
	}
	.float_txt_block .box.t30 {
		top: 30px;
	}
	.float_txt_block .box.t40 {
		top: 40px;
	}
	.float_txt_block .box.t70 {
		top: 70px;
	}
	.float_txt_block .box.t80 {
		top: 80px;
	}
}
@media screen and (max-width: 768px) {
	.float_txt_block + .float_txt_block {
		margin-top: 40px;
	}
	.float_txt_block .box {
		margin: 5px 0 0;
		padding: 15px 20px;
	}
	.float_txt_block .box h1 {
		margin-bottom: 10px;
		font-size: 1.4rem;
	}
	.float_txt_block .box p {
		line-height: 2;
	}
}


/* ph_full_block
============================================================================================================ */
.ph_full_block {
	position: relative;
}
.ph_full_block + .ph_full_block {
	margin-top: 30px;
}
.ph_full_block:before {
	content: "";
	background-position: 50%;
	-webkit-background-size: cover;
	background-size: cover;
}
@media screen and (min-width: 769px), print {
	.ph_full_block {
		position: relative;
	}
	.ph_full_block .txt {
		position: relative;
		width: 260px;
		height: 380px;
		display: table;
		z-index: 2;
		font-size: 1.4rem;
	}
	.ph_full_block .txt > * {
		display: table-cell;
		vertical-align: middle;
	}

	.ph_full_block:before {
		position: absolute;
		top: 0;
		bottom: 0;
	}
	.ph_full_block.ph_r:before {
		right: 0;
		left: 50%;
		margin-left: -160px;
	}
	.ph_full_block.ph_l:before {
		left: 0;
		right: 50%;
		margin-right: -160px;
	}

	.ph_full_block:after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		border-top: 1px solid #5a5756;
		border-bottom: 1px solid #5a5756;
	}
	.ph_full_block.ph_r:after {
		left: 0;
		right: 50%;
		margin-right: 180px;
		border-right: 1px solid #5a5756;
	}
	.ph_full_block.ph_l:after {
		right: 0;
		left: 50%;
		margin-left: 180px;
		border-left: 1px solid #5a5756;
	}

	.ph_full_block.ph_r .txt {
		margin-right: auto;
	}
	.ph_full_block.ph_l .txt {
		margin-left: auto;
	}
}
@media screen and (max-width: 768px) {
	.ph_full_block .txt {
		margin-top: 5px;
		padding: 15px 20px;
		border: 1px solid #888;
	}

	.ph_full_block:before {
		display: block;
		padding-top: 50%;
	}
}



/* news_list
============================================================================================================ */
.news_list {
	margin-bottom: 25px;
	border-top: 1px solid #d6d6d6;
}
.news_list li {
	border-bottom: 1px solid #d6d6d6;
}
.news_list a {
	position: relative;
	display: block;
	padding: 20px 0;
	text-decoration: none;
	font-size: 1.3rem;
	color: #000000;
}
.news_list a:after {
	content: ""; display: table; clear: both;
}
.news_list a span {
	display: block;
	float: left;
	padding: 3px 0;
}
.news_list a .date {
	width: 128px;
	padding-left: 10px;
	font-weight: bold;
}
.news_list a .cat,
.news_list a .new {
	margin-right: 10px;
	padding: 2px 0;
	border: 1px solid #d6d6d6;
	width: 100px;
	text-align: center;
	font-weight: bold;
}
.news_list a .title {
	position: relative;
	float: none;
}

@media screen and (min-width: 769px), print {
	.news_list a .title {
		margin-left: 380px;
	}
	.news_list a:hover .title {
		text-decoration: underline;
	}
	.news_list a .title {
		padding-left: 25px;
	}
	.news_list a .title:before {
		content: "";
		position: absolute;
		top: 10px;
		left: 0;
		width: 8px;
		height: 8px;
		border-top: 1px solid #c7c7c6;
		border-right: 1px solid #c7c7c6;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}
@media screen and (max-width: 768px) {
	.news_list a {
		padding: 15px 15px 15px 0;
		font-size: 1.1rem;
	}
	.news_list a:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		width: 8px;
		height: 8px;
		margin-top: -4px;
		border-top: 1px solid #c7c7c6;
		border-right: 1px solid #c7c7c6;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.news_list a span {
		padding: 1px 0;
	}
	.news_list a .date {
		width: auto;
		padding-right: 10px;
		padding-left: 0;
	}
	.news_list a .cat,
	.news_list a .new {
		margin-right: 5px;
		padding: 0;
		width: 95px;
	}
	.news_list a .title {
		clear: both;
		padding-top: 5px;
		font-size: 1.2rem;
	}
}




/* para_section (paragraph section)
============================================================================================================ */
.para_section > * + * {
	margin-top: 1.8em;
}
@media screen and (max-width: 768px) {
}




/* ul / ol
============================================================================================================ */
.point_li li,
li.point_li {
	position: relative;
	padding-left: 1.2em;
}
.point_li li > span:first-child,
li.point_li > span:first-child {
	position: absolute;
	top: 0;
	left: 0;
}
.point_li.inline li {
	display: inline-block;
	padding-right: .5em;
}


.dot_li li {
	position: relative;
	padding-left: 1em;.
}
.dot_li li:before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}

.parentheses_li li {
	position: relative;
	padding-left: 2.2em;
}
.parentheses_li li > span:first-child {
	position: absolute;
	top: 0;
	left: 0;
}

.num_li {
	margin-left: 1.8em;
	list-style: decimal;
}

.mt_li li + li {
	margin-top: .5em;
}




/* .dl_table
============================================================================================================ */
.dl_table {
	display: table;
}
.dl_table > * {
	display: table-row;
}
.dl_table > * > * {
	display: table-cell;
	vertical-align: top;
}
.dl_table dt {
	white-space: nowrap;
}
@media screen and (max-width: 768px) {
	.dtl_dl dt {
	}
	.dtl_dl dd {
		padding-left: 100px;
	}
}



/* .basic_table
============================================================================================================ */
.basic_table {
	width: 100%;
	font-size: 1.5rem;
	line-height: 1.8;
}
.basic_table.fixed {
	table-layout: fixed;
}
.basic_table th,
.basic_table td {
	padding: 1.5em 2em;
	border-top: 1px solid #e6effc;
	border-bottom: 1px solid #e6effc;
}
.basic_table th {
	font-weight: bold;
	text-align: center;
	background-color: #f7f9fc;
}
.basic_table .w20 { width: 20%;}
.basic_table .w25 { width: 25%;}
.basic_table .w30 { width: 30%;}
.basic_table .w35 { width: 35%;}
.basic_table .w40 { width: 40%;}
.basic_table .w45 { width: 45%;}
.basic_table .w50 { width: 50%;}
.basic_table .w55 { width: 55%;}
.basic_table .w60 { width: 60%;}
.basic_table .w65 { width: 65%;}
.basic_table .w70 { width: 70%;}

.basic_table.center th,
.basic_table.center td {
	text-align: center;
}
.basic_table.td_center td {
	text-align: center;
}
.basic_table.vtop th,
.basic_table.vtop td {
	vertical-align: top;
}
.basic_table.th_vtop th {
	vertical-align: top;
}
.basic_table.td_vtop td {
	vertical-align: top;
}

@media screen and (max-width: 768px) {
	.basic_table {
		font-size: 1.2rem;
	}
	.basic_table th,
	.basic_table td {
		padding: 1em;
	}
	.basic_table td {
		padding-right: 0;
	}
	.basic_table .sp_w20 { width: 20%;}
	.basic_table .sp_w25 { width: 25%;}
	.basic_table .sp_w30 { width: 30%;}
	.basic_table .sp_w35 { width: 35%;}
	.basic_table .sp_w40 { width: 40%;}
	.basic_table .sp_w45 { width: 45%;}
	.basic_table .sp_w50 { width: 50%;}
	.basic_table .sp_w55 { width: 55%;}
	.basic_table .sp_w60 { width: 60%;}
	.basic_table .sp_w65 { width: 65%;}
	.basic_table .sp_w70 { width: 70%;}
}

.table_notes {
	margin-top: 25px;
	text-align: right;
	font-size: 1.3rem;
}
@media screen and (max-width: 768px) {
	.table_notes {
		margin-top: 15px;
		font-size: 1.1rem;
	}
}




/* footer
============================================================================================================ */
#footer {
	position: relative;
	text-align: center;
	font-size: 1.2rem;
	letter-spacing: 0.15em;
	background-color: #ffffff;
	padding-top: 60px;
}

#footer small {
	display: block;
	padding: 20px 0;
	font-size: 1.0rem;
	font-weight: bold;
letter-spacing: 0.23em;

}
#footer .foot_underblack{
	background-color: #282524;
	color: #fff;
	padding: 35px 0;
	margin-top: 60px;
	font-size: 1.1rem;
	letter-spacing: 0.17em;
}
#footer .foot_social a{
	margin-left: 8px;
	margin-right: 8px;
}
#footer .footaddbox{
	margin-bottom: 40px;
	margin-top: 40px;
	line-height: 2.0;
	letter-spacing: 0.2em;
}

#footer .foot_underblack .foot_black_navlinkbox{
	margin-bottom: 40px;
}
#footer .foot_underblack .foot_black_navlinkbox a{
	margin-left: 10px;
	margin-right: 10px;
}
#footer .foot_underblack .foot_black_navlinkbox a:link{
	color: #fff;
	text-decoration: none;
}
#footer .foot_underblack .foot_black_navlinkbox a:visited{
	color: #fff;
}
#footer .foot_underblack .foot_black_navlinkbox a:hover,
#footer .foot_underblack .foot_black_navlinkbox a:active{
	color: #8e8d8c;
}


#footer #footer_open_nav{
background-color: #f4f4f4;
padding: 20px 0;
font-size: 1.3rem;
}
#footer #footer_open_nav a{
text-decoration: none;
color: #4d4d4d;
}
#footer #footer_open_nav a:link{
text-decoration: none;
}
#footer #footer_open_nav a:hover{
text-decoration: none;
color: #8e8c8c;
}

#footer #footer_open_nav .close_btn a{
background-color: #fff;
}
#footer_open_nav .footer_open_nav_uppbox,
#footer_open_nav .more{
width: 980px;
margin: 0 auto;
}



#footer_open_nav .footer_open_nav_uppbox .fboxfff_10,
#footer_open_nav .more .fboxfff_10{
float: left;
width: 15%;
margin-left: 1%;
text-align: center;
}
#footer_open_nav .more .fboxfff_10 a{
display: block;
text-align: left;
font-size: 0.01rem;
letter-spacing: 0.01em;
margin-bottom: 5px;
}
#footer_open_nav .more,
#footer_open_nav .close_btn a
 {
	display: none;
}

#footer_open_nav .more .in159{line-height: 1.3;text-indent: -1em;margin-left: 1em;}
#footer_open_nav .more .in1{}

@media print {
	#pagetop {
		display: none;
	}
}

#pagetop a {
	display: block;
	height: 115px;
	padding-top: 70px;
	text-align: center;
	font-size: 1.1rem;
	text-decoration: none;
	color: #ffffff;
text-shadow: 1px 1px 0 #000
}
#pagetop a .arrow {
	position: absolute;
	overflow: hidden;
	top: 0px;
	left: 0;
	right: 0;
	height: 50px;
}
#pagetop a .arrow:before {
	content: "";
	position: absolute;
	top: 0;
	height: 50px;
	left: 50%;
	border-left: 1px solid #bcbcbc;
}
#pagetop a .arrow:after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -5px;
	border-style: solid;
	border-width: 0 5px 7px 5px;
	border-color: transparent transparent #bcbcbc transparent;
}



@-moz-keyframes pagetop {
	0% {top: 0;}
	37% {top: -50px;left: 50%;}
	38% {top: -50px;left: -1000px;}
	39% {top: 100px;left: -1000px;}
	40% {top: 100px;left: 50%;}
	100% {top: 0;}
}
@-webkit-keyframes pagetop {
	0% {top: 0;}
	37% {top: -50px;left: 50%;}
	38% {top: -50px;left: -1000px;}
	39% {top: 100px;left: -1000px;}
	40% {top: 100px;left: 50%;}
	100% {top: 0;}
}
@-o-keyframes pagetop {
	0% {top: 0;}
	37% {top: -50px;left: 50%;}
	38% {top: -50px;left: -1000px;}
	39% {top: 100px;left: -1000px;}
	40% {top: 100px;left: 50%;}
	100% {top: 0;}
}
@-ms-keyframes pagetop {
	0% {top: 0;}
	37% {top: -50px;left: 50%;}
	38% {top: -50px;left: -1000px;}
	39% {top: 100px;left: -1000px;}
	40% {top: 100px;left: 50%;}
	100% {top: 0;}
}
@keyframes pagetop {
	0% {top: 0;}
	37% {top: -50px;left: 50%;}
	38% {top: -50px;left: -1000px;}
	39% {top: 100px;left: -1000px;}
	40% {top: 100px;left: 50%;}
	100% {top: 0;}
}

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




@media (min-width: 769px), print {
	#pagetop {
		position: fixed;
		overflow: hidden;
		bottom: 0;
		right: 0;
		width: 120px;
		height: 100px;
		z-index: 100;
	}
	#pagetop.abs {
		position: absolute;
		bottom: 0;
	}
	#pagetop a {
		width: 120px;
		-webkit-transform: translateY(120px);
		-ms-transform: translateY(120px);
		-o-transform: translateY(120px);
		transform: translateY(120px);
		-webkit-transition: -webkit-transform 0.5s;
		-o-transition: -o-transform 0.5s;
		transition: transform 0.5s;
	}
	#pagetop.show a {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
	}
	#pagetop a:hover .arrow:before,
	#pagetop a:hover .arrow:after {
		-moz-animation: pagetop 0.6s ease-in-out 0s;
		-webkit-animation: pagetop 0.6s ease-in-out 0s;
		-o-animation: pagetop 0.6s ease-in-out 0s;
		-ms-animation: pagetop 0.6s ease-in-out 0s;
		animation: pagetop 0.6s ease-in-out 0s;
	}
}

/*
@media screen and (max-width: 768px) {
	#pagetop a {
		height: 70px;
		padding-top: 40px;
		font-size: 1rem;
	}
	#pagetop a .arrow {
		top: 0;
		height: 35px;
	}
	
	#footer_open_nav .footer_open_nav_uppbox,
#footer_open_nav .more{
width: 100%;
margin: 0 auto;
}
}
			*/
			
			
			@media screen and (max-width: 768px) {
			#pagetop{display: none;}

			#footer .foot_underblack .foot_black_navlinkbox{
			text-align: left;
			padding: 0 10px;
			}
			#footer .foot_underblack .foot_black_navlinkbox a{
			display: block;
			float: left;
			width: 44%;
			margin-right: 1%;
			margin-bottom: 5px;
			font-size: 0.9rem;
			}
			#footer .foot_black_navlinkbox{
				zoom: 1;
			}
			#footer .foot_black_navlinkbox:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
			}
			
			#footer_open_nav{
			display: none;
			}

			}






.pt_sec h1.ff_min{
font-weight: normal;
}
h1.line_title .ff_min{
font-weight: normal;
}