
@charset "utf-8";

@font-face {
	font-family: はんなり明朝;
	src: url('https://cdn.leafscape.be/hannari/hannari_web.woff2') format("woff2");
}


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

	0.General

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

html {
	/* 最小フォントサイズ : 15px */
	font-size: 62.5%;
	margin: 0;
	padding: 0;
//	overflow-y: scroll;
}


body {
	margin: 0;
	padding: 0;
	color: #000;
	font-size: 1.5rem;/* 15px */
	font-family:  "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-weight: 500;
	line-height: 140%;
	word-break : break-all;
//	position: relative;
	 -webkit-text-size-adjust: 100%;
}


a {
	color: #666666;
	text-decoration: underline;
}

	a:link {
		color: #666666;
		text-decoration: underline;
	}

	a:visited {
		color: #666666;
		text-decoration: underline;
	}

	a:hover {
		color: #666666;
		text-decoration: none;
	}


img {
	border: none;
	line-height: 0;
	vertical-align: bottom;
}


/* Selected Text
------------------------*/
::selection {
	color: #FFF;
	background-color: rgba(0,0,0,0.4);
}
::-moz-selection {
	color: #FFF;
	background-color: rgba(0,0,0,0.4);
}




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

	1.Header

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

header{
	width: 100%;
	margin: 0 auto;
	position: relative;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		header {
			margin: 0 auto 0 auto;
			height: 60px;
		//	background-color: #BC944B;
			border-top: 2px solid #BC944B;
			overflow: hidden;
		}
		header::before {
			position: absolute;
			top: 15px;
			right: 0;
			left: 0;
			width: 120px;
			height: 26px;
			margin: auto;
			content: "";
			background-size: cover;
			background-position: center top;
			background-repeat: no-repeat;
			background-image: url('../img/title.svg');
		}
	}

header a.title {
	float: left;
	display: block;
	width: 134px;
	height: 38px;
	padding-bottom: 8px;
	text-indent: -9999px;
//	background-size: 100%;
//	background-position: center top;
//	background-repeat: no-repeat;
//	background-image: url('../img/logo.svg');
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		header > a {
			float: none;
			margin: 20px auto 20px auto;
			max-width: 100%;
		}
	}

header > a.title:hover {
	cursor: pointer;
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}




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

	2.Main

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

main {
	width: 100%;
	margin: 0 auto 100px auto;
	padding-top: 140px;
	font-family: "Noto Sans Japanese";
	font-weight: 400;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		main  {
			padding-top: 0;
		}
	}


main > section {
}


#content {
	margin: 0 auto;
	padding-bottom: 100px;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		#content {
			padding-bottom: 0;
		}
	}


hr{
	border-width: 1px 0 0 0; /* 太さ */
	border-style: solid; /* 種類 */
	border-color: silver; /* 色 */
}


#sticky {
	display: block;
}

#sticky.sticky {
	display: block;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		#sticky.sticky {
			display: none;
		}
	}

.sticky {
//	position: -webkit-sticky;
//	position: sticky;
	position: fixed;
	top: 4%;
	right: 4%;
	z-index: 5;
	width: 87px;
	height: 87px;
	float: right;
	transition: 0.3s;
}

.sticky a.cart {
	display: block;
	width: 87px;
	height: 87px;
	text-decoration: none;
	text-indent: -9999px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	background-color: #CF543F;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url('../img/cart.svg');
	border-radius: 50%;
	box-sizing: border-box;
	transition: 0.3s;
}

.sticky a.cart:hover {
	background-color: #BC944B;
}



/*
 	2.1 Button
==================================== */

.bt {
	margin: 0 auto;
	width: 360px;
	height: 54px;
	padding-top: 7px;
	border: 1px solid #00518F;
	box-sizing: border-box;
	transition: 0.3s;
}

.bt a{
	display: block;
	margin: 0 auto;
	width: 346px;
	height: 40px;
	color: #FFF;
	font-size: 2.2rem;
	font-weight: 400;
	font-family: "はんなり明朝", "Sawarabi Mincho", Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-align: center;
	text-decoration: none;
	line-height: 32px;
	letter-spacing: 0.2em;
	background-color: #00518F;
	box-sizing: border-box;
}

.bt a:hover {
	background-color: #999;
}



/*
 	2.2 Title
==================================== */

h1 {
	width: 100%;
	height: 320px;
	margin: 0 auto 100px auto;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 5.4rem;
	text-align: center;
	letter-spacing: 0.12em;
	line-height: 1.4em;
	color: #000;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h1 {
			width: 100%;
			height: 100px;
			margin: 0 auto 50px auto;
			font-size: 2.8rem;
			line-height: 100px;
			text-align: left;
			text-indent: 0;
			overflow: hidden;
			background-size: auto 150px;
			background-image: url(../img/bg_title.png);
			background-repeat: no-repeat;
			background-position: center center;
		}
	}

h1.law {
	margin: 0 auto 80px auto;
	height: 540px;
	font-size: 5.2rem;
	line-height: 2.0em;
}

h1::after {
	position: absolute;
	top: 160px;
	right: 0;
	display: block;
	width: 70%;
	height: 300px;
	content: "";
	background-image: url(../img/bg_title.png);
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h1::after {
			display: none;
		}
	}

h1 p {
	display: inline-block;
//	width: 1280px;
	width: 66.6%;
	margin: 0 auto;
	position: relative;
	left: 0;
	z-index: 2;
	text-align: left;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h1 p {
			position: static;
			display: block;
			width: 100%;
			text-align: center;
			-webkit-writing-mode: horizontal-tb;
			-ms-writing-mode: lr-tb;
			writing-mode: horizontal-tb;
		}
		h1 p br {
			display: none;
		}
	}



/*
 	2.3 Text
==================================== */

br.pc_none {
	display: none;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		br.pc_none {
			display: block;
		}
	}

section em{
	font-style: italic;
}

section strong {
	font-weight: bold;
}


section .text {
	margin: 0 auto;
	font-size: 1.6rem;
	letter-spacing: 0.15em;
	line-height: 2.4rem;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 480px) {
		section .text {
			margin: 0 auto;
			font-size: 1.4rem;
		}
	}


ul.list li {
	position: relative;
	margin: 0 0 5px 16px;
	padding-left: 8px;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 0.15em;
	line-height: 1.5em;
	color: #000;
}

ul.list li::after {
	display: block;
	content: '';
	position: absolute;
	top: .7em;
	left: -1em;
	width: 10px;
	height: 2px;
	background-color: #594534;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 480px) {
		ul.list li {
			font-size: 1.4rem;
		}
	}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 1024px) {
		.img img {
			max-width: 100%;
		}
	}



/*
 	2.4 Page_link
==================================== */

#page_link{
	max-width: 100%;
	margin: 60px auto 80px auto;
}


#all_news{
	margin:0 0 8px 5px;
	letter-spacing: 0.1em;
	color: #594534;
}

#next_prev{
	margin: 0;
	overflow: hidden;
	clear: both;
}

#next_prev #num_top{
	float: left;
	width: 18px;
	height: 18px;
	margin: 0 5px;
	padding: 8px 5px 3px 5px;
	display: block;
	line-height: 100%;
	text-decoration: none;
	text-align: center;
	border: 1px solid #594534;
}


#next_prev a{
	float: left;
	width: 20px;
	height: 20px;
	margin: 0 5px;
	padding: 7px 5px 3px 5px;
	display: block;
	line-height: 100%;
	color: #FFF;
	text-decoration: none;
	text-align: center;
	background-color: #594534;
	border: 1px solid #594534;
}

#next_prev a:hover {
	background-color: #ACA79D;
	border: 1px solid #ACA79D;
}




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

	3.Footer

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

footer {
	width: 100%;
	margin: 0 auto;
	font-family: "Noto Sans Japanese";
	font-size: 1.6rem;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.16em;
	box-sizing: border-box;
	position: relative;
	color: rgba(89,69,52,1.0);
	background-color: #FFF;
	background-image:url(../img/bg_footer.png);
	background-repeat: repeat-x;
	background-position: center bottom;
}

footer::after {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 36px;
	width: 1394px;
	height: 420px;
	margin: auto;
	content: "";
	background-image:url(../img/bg_line2.svg);
	background-repeat: no-repeat;
	background-position: center bottom;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		footer {
			width: 100%;
		}
		footer::after {
			display: none;
		}
	}

#footer_box {
	width: 1040px;
	margin: 0 auto 30px auto;
	text-align: left;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		#footer_box {
			width: calc(100% - 40px);
s			padding-bottom: 30px;
		}
	}

.footer_data {
	display: inline-block;
	width: 460px;
	vertical-align: top;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.footer_data {
			width: 100%;
			margin: 0 auto;
		}
	}

.footer_data p:nth-child(1) {
	width: 178px;
	height: 40px;
	margin-bottom: 30px;
	text-indent: -9999px;
	background-size: 100% auto;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url('../img/title.svg');
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 420px) {
		.footer_data p:nth-child(1) {
			width: 140px;
			margin-bottom: 20px;
			background-size: 100% auto;
		}
	}

.footer_data p:nth-child(2) {
	margin-bottom: 20px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 600;
	font-size: 1.6rem;
	letter-spacing: 0.18em;
	line-height: 1.6em;
	color: #072943;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 420px) {
		.footer_data p:nth-child(2) {
			font-size: 1.4rem;
		}
	}

.footer_data li {
	display: inline-block;
	margin-right: 10px;
	box-sizing: border-box;
}

.footer_data li a {
	display: block;
	padding: 7px 20px 5px 20px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 600;
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	text-indent: 0.12em;
	text-decoration: none;
	color: #BC944B;
	border: 1px solid #BC944B;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.footer_data li {
			display: block;
			margin-bottom: 15px;
		}
		.footer_data li a {
			width: 100%;
			text-align: center;
			box-sizing: border-box;
		}
	}

.footer_data li a:hover {
	color: #FFF;
	background-color: #BC944B;
}

.footer_data br.pc_none {
	display: none;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.footer_data span.sp_none {
			display: none;
		}
		.footer_data br.pc_none {
			display: block;
		}
	}

.footer_link {
	display: inline-block;
	width: calc(100% - 480px);
	padding-bottom: 10px;
	vertical-align: bottom;
	text-align: right;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 1400px) {
		.footer_link {
			padding-right: 40px;
		}
	}
	@media (max-width: 642px) {
		.footer_link {
			display: none;
		}
	}

.footer_link ul {
	display: inline-block;
	width: 380px;
	padding-bottom: 20px;
	vertical-align: top;
	text-align: left;
	letter-spacing: -.4em;
	overflow: hidden;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 1400px) {
		.footer_link ul {
			width: 100%;
		}
	}

.footer_link li {
	display: inline-block;
	float: right;
	margin-left: 30px;
	padding-right: 10px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	position: relative;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	transition: 0.3s;
}

.footer_link li::after {
	position: absolute;
	top: 0;
	right: 0;
	content: "";
	width: 1px;
	height: 96%;
	border-right: 1px dashed #BC944B;
	transition: 0.3s;
}

.footer_link li:hover::after {
//	padding-bottom: 20px;
}


	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.footer_link li {
			font-size: 1.5rem;
		}
	}

.footer_link li:last-child {
	margin-bottom: 0;
}

.footer_link li a,
.footer_link li a:link,
.footer_link li a:visited {
	text-decoration: none;
	line-height: 20px;
	color: #072943;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	box-sizing: border-box;
}

.footer_link li a:hover {
	color: #BC944B;
}



.copyright{
	display: inline-block;
	width: 1000px;
	margin: 320px 0 60px 0;
	text-align: right;
	font-size: 1.4rem;
	font-weight: 600;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	letter-spacing: 0.1em;
	color: #072943;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.copyright{
			width: 100%;
			margin-top: 20px;
			font-size: 1.3rem;
			letter-spacing: 0.12em;
			text-align: center;
		}
	}


/*
 	3.1 To top
==================================== */

.to_top {
	position: absolute;
	z-index: 100;
	right: 4%;
	margin-bottom: 20px;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.to_top {
			top: -40px;
		}
	}

.to_top a {
	display: block;
	width: 94px;
	height: 94px;
	color: #FFF;
	text-indent: -9999px;
	background-size: 100% auto;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url('../img/page_top.svg');
}


	/* === ▽ Responsive ▽ === */
	@media (max-width: 420px) {
		.to_top a {
			width: 64px;
			height: 64px;
		}
	}


.to_top a:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

