@charset "utf-8";

/* ========================================================
	template.css => テンプレート用CSS
======================================================== */
html,body{
    width: 100%;
    overflow-x: hidden;
}
html {
	font-size: 62.5%;
}
body {
	background-color: #fff;
	font-size: 10px;
	line-height: 1.7;
	color: #000000;
	font-family:  "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN","メイリオ", "Meiryo", Verdana,Arial, Helvetica, sans-serif;
	-webkit-text-size-adjust: 100%;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 1.7;
}
a {
	outline: none;
	text-decoration: none;
	-webkit-transition: color 0.15s, background-color 0.15s, background-image 0.15s, border 0.15s, opacity 0.15s;
	-o-transition: color 0.15s, background-color 0.15s, background-image 0.15s, border 0.15s, opacity 0.15s;
	transition: color 0.15s, background-color 0.15s, background-image 0.15s, border 0.15s, opacity 0.15s;
	color: #0d3386;
}
a:focus{
outline: none;
}
a:hover {
	text-decoration:underline;
}

a img:hover { 
  opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}



@media screen and (max-width: 680px) {
	img {
		max-width: 100%;
		height: auto;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
}



/* pc / sp
============================================================================================================ */
.sp,
.sps {
	display: none !important;
}
@media screen and (max-width: 680px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	img.sp, span.sp, br.sp, em.sp, strong.sp {
		display: inline !important;
	}
}
@media screen and (max-width: 370px) {
	.sps {
		display: block !important;
	}
	img.sps, spsan.sps, br.sps, em.sps, strong.sps {
		display: inline !important;
	}
}


/* sp
============================================================================================================ */
@media screen and (max-width: 680px) {
	*[data-label] img {
		display: none;
	}
	*[data-label]:before {
		content: attr(data-label);
	}
	*[data-label-r]:after {
		content: attr(data-label-r);
	}

	.sp_mincho {
		font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	}
}

/* font-size
============================================================================================================ */
.fz_s {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
}
.fz_m {
	font-size: 16px;
	font-size: 1.6rem;
}
.fz_l {
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.6;
}
.fz_ll {
}
@media screen and (max-width: 680px) {
	.fz_s {
		font-size: 1.1rem;
	}
	.fz_l {
		font-size: 1.8rem;
	}
}

/* color
============================================================================================================ */
.c_black {
	color: #000 !important;
}
.c_green {
	color: #7ea200 !important;
}
.c_gold {
	color: #a58e3d !important;
}




/* w
============================================================================================================ */
.w {
	position: relative; clear:both;
	display: block;
	width: 975px;
	margin: 0 auto;
}
.w:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
@media screen and (max-width: 680px) {
	.w {
		width: auto;
		padding: 0 10px;
	}
}



/* w
============================================================================================================ */
.w80 {
	position: relative; clear:both;
	display: block;
	width: 675px;
	margin: 0 auto;
}
.w80:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
@media screen and (max-width: 680px) {
	.w80 {
		width: auto;
		padding: 0 10px;
	}
}



/* ヘッダー
============================================================================================================ */
#header {
	padding: 0px; margin:0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
#header hr {
	height:5px; border:0;
	background: #8866cf; /* Old browsers */
	background: -moz-linear-gradient(left, #8866cf 0%, #e2b9e4 34%, #8866cf 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #8866cf 0%,#e2b9e4 34%,#8866cf 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #8866cf 0%,#e2b9e4 34%,#8866cf 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8866cf', endColorstr='#8866cf',GradientType=1 ); /* IE6-9 */
	margin:0;
	}
@media screen and (max-width: 680px) {
	#header {
		background:#FFFFFF;
		position: fixed;
		width: 100%;
		z-index: 100;
		display: block;
		height: 60px;
		padding: 0px;
		box-shadow:none; 
	}
	#header hr {
		margin-top:13px;
	}
}

.logo{
	margin:20px auto 0px auto;
	width:266px;
	float:left;
}
.logo img{
	width:100%; height:auto;
	}
.logo:hover{ opacity:0.8; }

@media screen and (max-width: 680px) {
	.logo{
		margin-top:20px;
		text-align:left;
		width:150px;
	}
}
@media screen and (max-width: 320px) {
	.logo{
		width:120px;
	}
}

.tel { float:right; padding-top:20px;}
.tel a {
	font-size:14px;
	padding:0px 10px;
	color:#FFFFFF;
	display:inline-block;
	border-radius:25px; -webkit-border-radius:25px; -moz-border-radius:25px;
	border:3px solid #AC8CD9;
	color:#000000;

	background: #FFFFFF; /* Old browsers */

	}
.tel a span { font-size:20px;  margin-right:10px;}
.tel a:hover { text-decoration:none;}	


@media screen and (max-width: 680px) {
	.tel { 
		float:right; padding-top:20px;
		margin-right:50px;}
	.tel a {
		font-size:12px;
		}
.tel a span { display:none;}

}
/* nav
------------------------------------------------------------- */
#header nav {
	margin: auto;
	display: inline-block;
	vertical-align: middle;
	padding: 0px 0 px ;
	margin-top:20px;
}
#header nav > div {
	position: relative;
}
#header nav > div:after{
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
#header nav .global {
	position: relative;
}
#header nav .global > li {
	position: relative;
	display: inline-block;
	z-index: 2;
	font-size: 16px;
	border-right: 1px solid #E6E6E6;
}
#header nav .global > li:last-child {
	border-right:none;
	}

#header nav li span{
	display:block;
	position:relative;
}
#header nav .global > li > a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px 10px 17px;
	color: #0d3386;/*青*/
	text-align: center;
	text-decoration: none;
	line-height: 1.5;
	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/**//**//**//**//**//**//**//**//**//*

#header nav .global > li > a::after {
	  position: absolute;
	  bottom: 0px;
	  left: 0;
	  content: '';
	  z-index:10;
	  width: 100%;
	  height: 3px;
	  background: #8866cf;
	  transform: scale(0, 1);
	  transform-origin: center top;
	  transition: transform .3s;
}
#header nav .global > li > a:hover::after {
	  transform: scale(1, 1);
}*/

/**//**//**//**//**//**//**//**//**//**/


#header nav .global > li > a:hover,
#header nav .global > li.current > a {
	color: #ad8dda;
}


@media screen and (max-width: 681px) {
	#header nav {
		padding: 0 0;
		margin:0;
	}
	#header nav .global > li {
		display: block;
		border-right: none;
		border-bottom: 1px solid #b5b5b5;
	}
	#header nav .global > li > a {
		position: relative;
		display: block;
		width: auto;
		padding: 10px 10px 10px 30px !important;
		text-align: left;
		text-decoration: none;
		line-height: 1.5;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		background: url(../images/icon01.png) 5px 15px no-repeat;
		background-size:11px;
	}
	#header nav .global > li > a:hover,
	#header nav .global > li.current a {
		color: #535353;
	}
}

#header nav .global ul {
	position: absolute;
	left: 0;
	top: 44px;
	height: 0;
	overflow: hidden;
	z-index: 10;
	background-color: #fff;
}
#header nav .global ul li {
	padding-left: 0;
}
#header nav .global ul li a {
	min-width: 158px;
	display: block;
	padding: 10px 20px 10px 20px;
	border-bottom: 1px solid #d2d2d2;
	border-left: 1px solid #d2d2d2;
	border-right: 1px solid #d2d2d2;
	font-size: 12px;
	text-align: left;
	white-space: nowrap;
	text-decoration: none;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

	-webkit-transform-origin: 0 0;
	-moz-transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	-o-transform-origin: 0 0;
	transform-origin: 0 0;
	-webkit-transition: all 0.15s;
	-o-transition: all 0.15s;
	transition: all 0.15s;
	-webkit-transform: scale(1, 0);
	-ms-transform: scale(1, 0);
	transform: scale(1, 0);
	opacity: 0;
}
#header nav .global ul li:last-child a {}
#header nav .global ul li a:hover,
#header nav .global ul li.current a {
	background-color: #fef3ff;
	color: #ad8dda;
}

#header nav .global .has_snav.showed ul {
	overflow: visible;
	height: auto;
}
#header nav .global .has_snav.open li a {
	-webkit-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	transform: scale(1, 1);
	opacity: 1;
}
#header nav .hover,
#header nav .global > .current > a:before {
	position: absolute;
	bottom: 0px;
	height: 3px;
	background-color: #8866cf;
}
#header nav .global > .current > a:before {
	content: "";
	left: 5px;
	right: 5px;
}
#header nav .hover {
	-webkit-transition: height 0.1s ease;
	-o-transition: height 0.1s ease;
	transition: height 0.1s ease;
	height: 0;
}
#header nav .hover.mov {
	-webkit-transition: all 0.3s ease, height 0.15s ease;
	-o-transition: all 0.3s ease, height 0.15s ease;
	transition: all 0.3s ease, height 0.15s ease;
	height: 3px;
	z-index: 10;
}

#header nav .global ul li a.linknone{
	color: #ccc;
	cursor: default;
}

#header nav .global ul li a.linknone:hover{
	background-color: #fff;
}

#header nav .global > li > a.linknone{
	color: #ccc;
	cursor: default;
}

@media screen and (max-width: 680px) {
	#header .nav_btn {
		position: absolute;
		right: 0;
		top: -2px;
		z-index: 10;
	}
	#header .nav_btn a {
		position: relative;
		display: block;
		width: 50px;
		height: 55px;
		z-index: 2;
	}
	#header .nav_btn:before,
	#header .nav_btn a:before,
	#header .nav_btn a:after {
		content: "";
		position: absolute;
		left: 12px;
		right: 12px;
		top: 60%;
		height: 3px;
		margin-top: -1px;
		background-color: #8866cf;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header .nav_btn a:before {
		-webkit-transform: translateY(-9px);
		-ms-transform: translateY(-9px);
		-o-transform: translateY(-9px);
		transform: translateY(-9px);
	}
	#header .nav_btn a:after {
		-webkit-transform: translateY(9px);
		-ms-transform: translateY(9px);
		-o-transform: translateY(9px);
		transform: translateY(9px);
	}

	/* 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 nav {
		position: fixed;
		top: 60px;
		left: 0;
		right: 0;
		height: 0;
		opacity: 0;
		overflow: hidden;
		margin-top:0px;
		background: #fff;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: height 0.3s, opacity 0.3s;
		-o-transition: height 0.3s, opacity 0.3s;
		transition: height 0.3s, opacity 0.3s;
	}
	#header nav .hover,
	#header nav .global .current a:before {
		display: none;
	}
	#header nav div {
		height: 100%;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}
	#header nav > div > div {
		height: 100%;
		overflow-y: auto;
	}

	#header nav div > ul,
	#header nav div > ul li {
		float: none !important;
	}
	#header nav div > ul.global > li {
		border-bottom: 1px dashed #231815;
	}
	#header nav div > ul.global a {
		position: relative;
		height: auto !important;
		display: block;
		padding: 10px 10px  10px 20px !important;
		text-align: left !important;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		text-decoration: none;
		color: #231815;
	}


	/* open */
	#header.open nav {
		height: 100%;
		opacity: 1;
	}
	#header nav .global ul {
		position: static;
		height: 0;
		overflow: hidden !important;
		-webkit-transition: height 0.3s;
		-o-transition: height 0.3s;
		transition: height 0.3s;
	}
	#header nav .global ul li {
		border-bottom: 0;
	}
	#header nav .global ul li a {
		padding: 10px 30px ;
		background-size:6px;
		border-bottom: 0;
		white-space: normal;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		color: #000;
	}

	#header nav .global .showed ul {
		overflow: visible;
		height: auto;
	}

	#header nav .global .has_snav > a:before{
		content: "";
		display: block;
		position: absolute;
		left: auto;
		bottom: auto;
		right: 20px;
		top: 50%;
		width: 13px;
		height: 3px;
		margin-top: -1px;
		background-color: #8866cf;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header nav .global .has_snav > a:after {
		content: "";
		display: block;
		position: absolute;
		left: auto;
		bottom: auto;
		right: 25px;
		top: 50%;
		width: 3px;
		height: 13px;
		margin-top: -3px;
		background-color: #8866cf;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header nav .has_snav > a:before {
		-webkit-transform: translateY(3px);
		-ms-transform: translateY(3px);
		-o-transform: translateY(3px);
		transform: translateY(3px);
	}
	#header nav .has_snav > a.open:before {
		-webkit-transform: translateY(0) rotate(180deg);
		-ms-transform: translateY(0) rotate(180deg);
		transform: translateY(0) rotate(180deg);
	}
	#header nav .has_snav > a.open:after {
		display:none;
	}
}

@media screen and (min-width: 681px) {
	#header nav .global .has_snav ul {
		height: 0 !important;
	}
	#header nav .global .has_snav.showed ul {
		height: auto !important;
	}
}




/* sub_nav
============================================================================================================ */

@media screen and (max-width: 680px) {
	.sub_nav{
		padding: 0;
		text-align: center;
		margin-top: 0px;
	}
	.sub_nav li{
		font-size: 14px;
		border: none;
		padding: 0;
		float:left;
		display:block;
		width:50%;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
		}
	.sub_nav li:last-child {
			border-left:1px solid #FFF;
	}
	.sub_nav li a{
		display: inline-block;
		background: #37976F;
		padding: 10px;
		color:#FFF;
		width:100%;
	}
}



/* コンテナ
============================================================================================================ */
#container {
	position: relative;
	font-size: 16px;
	padding-bottom:40px;
}
@media screen and (max-width: 680px) {
	#container {
		font-size: 14px;
		padding-bottom:10px;
	}
	#container.sub {
		margin-top: 50px;
		padding: 0;
	}
}








/* ===================================================================================================================

	コンテンツ

=================================================================================================================== */
.section p { }
.read {
	font-size:16px;
	}

.section .rbox {
	width: 300px;
	margin-left: auto;
	margin-top: 15px;
	line-height: 1.3em;
}
@media screen and (max-width: 680px) {
	.read {
		font-size:14px;
		}
	section .rbox {
		width: auto;
		margin-left: auto;
	}
}


/* footer
============================================================================================================ */
footer{
	clear:both;
	background: url(../images/line.gif) repeat-x center 0 #F2F2F2;
	background-size:100% 5px;
	font-size: 14px;
	margin-top:0px;
	padding: 40px 0 0;
	line-height: 1.8;
}
footer .w{ position:relative; height:140px;}

@media screen and (max-width: 680px) {
	footer{
		margin-top: 0;
		padding-top: 10px;
		line-height: 1.8;
	}
	footer .w{ height: auto; padding-bottom:20px;}
}

footer .f_left {
	position:absolute;
	top:0; left:0;
	width:310px;
	}
footer .f_kitasato {
	position:absolute;
	top:20px; left:320px;
	width:175px;
	}
	
footer .f_right {
	position:absolute;
	top:0; left:530px;
	width:506px;
	}
@media screen and (max-width: 680px) {
	footer .f_left {
		position: static;
		float:left;
		width:50%;
		}
	footer .f_kitasato {
		position: static;
		float:right;
		width:40%;
		}
	footer .f_right {
		position: static;
		width:100%;
		}
}


footer .adress {
	margin-top:10px; 
	width:310px;
	font-size:16px;
	}
@media screen and (max-width: 680px) {
	footer .adress {
		margin-top:10px; 
		width: auto;
		font-size:12px;
		}
	}

footer .f_kitasato ul {}
footer .f_kitasato li {
	margin-bottom:10px;
	}
footer .f_kitasato li a {
	padding:7px 0 0 25px ;
	height:43px;
	color:#000000;
	display:inline-block;
	border:3px solid #AC8CD9;
	width:100%;
	background: #FFFFFF; /* Old browsers */
	border-radius:43px; -webkit-border-radius:43px; -moz-border-radius:43px;
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	}
footer .f_kitasato li a:hover { text-decoration:none;}
@media screen and (max-width: 680px) {
	footer .f_kitasato li a {
		padding:10px 0 0 10px ;
		font-size:11px;
		}
	}



footer .f_right ul {
	}
footer .f_right li {
	float:left;
	width:50%;
	margin-bottom:10px;
	}
footer .f_right li a {
	font-size:16px;
	display:inline-block;
	background:url(../images/icon01.png) no-repeat 0 5px;
	background-size:15px;
	padding:0 0 0 20px;
	}
footer .f_right li a.linknone{
	color: #ccc;
    cursor: default;
}
@media screen and (max-width: 680px) {
	footer .f_right ul {
		width:96%;
		margin:10px  auto;
		}
	footer .f_right li a {
		font-size:14px;
		display:inline-block;
		background:url(../images/icon01.png) no-repeat 0 5px;
		background-size:15px;
		padding:0 0 0 15px;
	}
}

/* copyright
------------------------------------------------------------- */
.copyright {
	clear:both;
	display: block;
	margin-top: 40px;
	font-size: 12px;
	text-align: center;
	color: #fff;
	padding: 10px 0;


	background: #8866cf; /* Old browsers */
	background: -moz-linear-gradient(left, #8866cf 0%, #e2b9e4 34%, #8866cf 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #8866cf 0%,#e2b9e4 34%,#8866cf 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #8866cf 0%,#e2b9e4 34%,#8866cf 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8866cf', endColorstr='#8866cf',GradientType=1 ); /* IE6-9 */
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
}

@media screen and (max-width: 680px) {
	.copyright {
		display: block;
		margin-top: 0px;
		font-size: 11px;
		text-align: center;
	padding: 25px 0 15px 0;
	}
}



/* ===================================================================================================================

	モジュール

=================================================================================================================== */



/* btn
============================================================================================================ */

.btn01{
	background-color: #fff;
	border: 2px solid #231815;
	width: 140px;
	padding: 8px;
	border-radius: 5px;
	-webkit-box-shadow: 3px 3px 0px 0px rgba(35,24,21,1);
	-moz-box-shadow: 3px 3px 0px 0px rgba(35,24,21,1);
	box-shadow: 3px 3px 0px 0px rgba(35,24,21,1);
	display: block;
	text-align: center;
	text-decoration: none;
	-webkit-transition: background 0.15s;
	-o-transition: background 0.15s;
	transition: background 0.15s;
}
.btn01 a{
	display: block;
}

.btn01.btn_l{
	width: 300px;
	-webkit-box-shadow: 2px 2px 0px 0px rgba(35,24,21,1);
	-moz-box-shadow: 2px 2px 0px 0px rgba(35,24,21,1);
	box-shadow: 2px 2px 0px 0px rgba(35,24,21,1);
}
.btn01.btn_s{
	width: 52px;
	-webkit-box-shadow: 2px 2px 0px 0px rgba(35,24,21,1);
	-moz-box-shadow: 2px 2px 0px 0px rgba(35,24,21,1);
	box-shadow: 2px 2px 0px 0px rgba(35,24,21,1);
	padding: 3px;
	border: 1px solid #231815;
	font-size: 12px;
	font-size: 1.2rem;
	border-radius: 4px;
}
.btn01:hover{
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

@media screen and (max-width: 680px) {
	.btn01.btn_l{
		width: auto;
	}
	.btn01.btn_s{
		width: 80%;
	}
}





/* table
============================================================================================================ */
table.basic {
	width: 100%;
	border: 1px solid #d9d9d9;
	line-height: 1.6;
	font-size:16px;
	/*table-layout: fixed;*/
}
table.basic th,
table.basic td {
	padding: 0.6em 1em;
	border: 1px solid #d9d9d9;
	word-wrap:break-word;
}
table.basic th {
	background:#b4bbff;
}
@media screen and (max-width: 680px) {
	table.basic {
		font-size: 1.2rem;
		line-height: 1.5;
	}
	table.basic th,
	table.basic td {
		padding: 0.5em;
	}
	table.basic th {
		display:block;
		width: 100%;
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	}
	table.basic td {
		display:block;
		width: 100%;
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	}

}


table.tablelist {
	width: 100%;
	border: 1px solid #d9d9d9;
	line-height: 1.6;
	/*table-layout: fixed;*/
}
table.tablelist th,
table.tablelist td {
	padding: 0.6em 1em;
	border: 1px solid #d9d9d9;
	word-wrap:break-word;
}
table.tablelist th {
	background:#b4bbff;
}
@media screen and (max-width: 680px) {
	table.tablelist {
		font-size: 1.4rem;
		line-height: 1.5;
	}
	table.tablelist th,
	table.tablelist td {
		padding: 0.5em;
	}
	table.tablelist th {
	}
	table.tablelist td {
	}

}





/* #pagetop
============================================================================================================ */
.page_top{
	clear: both;
	width: 70px;
	height: 70px;
	margin: auto;
	position: fixed;
	bottom: 32px;
	right: 5%;
	z-index: 2;
	display: none;
}
.page_top img{ width:100%; height:auto; }

@media screen and (max-width: 680px) {
	.page_top{
		clear: both;
		width: 45px;
		height: 45px;
		margin: auto;
		position: fixed;
		bottom: 20px;
		right: 5%;
		z-index: 2;
		display: none;
	}

}



.bg_g{
	background: #EFEFEF;
	padding:20px;
}
.bg_lg{
	background: #F7F5F2;
}
.bg_pink{
	background:#FEF3FF;
}
.bg_brown{
	background:#FFFCEB;
}
.d_ib{
	display: inline-block;
}
.strike{
	text-decoration: line-through;
}

.red{
	color: #FF0000;
}
.purple { color:#7e4ccc;}
.blue { color:#0044FF;}

.icon-pdf{
	position: relative;
}
.icon-pdf::before{
	content: "";
	width: 16px;
	height: 16px;
	background-image: url(../images/pdf.png);
	background-size: 100% auto;
	position: absolute;
	right: -20px;
	top: calc(50% - 8px);
}

.icon-wrd{
	position: relative;
}
.icon-wrd::before{
	content: "";
	width: 16px;
	height: 16px;
	background-image: url(../images/wrd.png);
	background-size: 100% auto;
	position: absolute;
	right: -20px;
	top: calc(50% - 8px);
}
.icon-blank{
	position: relative;
}
.icon-blank::before{
	content: "";
	width: 16px;
	height: 16px;
	background-image: url(../images/icon02.png);
	background-size: 100% auto;
	position: absolute;
	right: -20px;
	top: calc(50% - 8px);
}


.read_nav:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;}
.read_nav .w {
	background:#EFEFEF;
	margin-bottom:20px;
	}
.read_nav ul {
	padding:10px;
	}
.read_nav ul li {
	float:left;
	margin-right:20px;
	}
.read_nav ul li a {
	display:inline-block;
	background:url(../images/icon04.png) 10px 9px no-repeat;
	background-size:10px;
	padding:5px 15px 5px 32px;
	}
.read_nav ul li a.linknone{
	color: #ccc;
    cursor: default;
}
.read_nav ul li.current a,
.read_nav ul li a:hover {
	display:inline-block;
	background:#FFFFFF url(../images/icon04.png) 10px 9px no-repeat;
	background-size:10px;
	padding:5px 15px 5px 32px;
	text-decoration:none;
	border-radius:15px; -webkit-border-radius:15px; -moz-border-radius:15px;
	}


@media screen and (max-width: 680px) {
}

/* li　リスト
============================================================================================================ */
/* square
------------------------------------------------------------- */
ul.square li {
	position: relative;
	padding-left: 1em;
}
ul.square li:before {
	content: "■";
	position: absolute;
	left: 0;
}
/* disc
------------------------------------------------------------- */
ul.disc > li {
	position: relative;
	padding-left: 1em;
}
ul.disc > li:before {
	content: "・";
	position: absolute;
	left: 0;
}
/* notes
------------------------------------------------------------- */
ul.notes li {
	position: relative;
	padding-left: 1em;
}
ul.notes li:before {
	content: "※";
	position: absolute;
	left: 0;
}
/* decimal
------------------------------------------------------------- */
ol.decimal {
	list-style-type: decimal;
}
ol.decimal li {
	margin-left: 2em;
}
ol.decimal.indent02 {
	text-indent: -0.5em;
	padding-left: 0.5em;
}
/* parentheses
------------------------------------------------------------- */
ol.parentheses li {
	position: relative;
	padding-left: 2em;
}
ol.parentheses li .num {
	position: absolute;
	left: 0;
}
/* icon_list
------------------------------------------------------------- */
.icon_list > li:before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 13px;
	margin: 0px 5px 0 0;
	background: url(../images/arrow_g.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
	padding-right: 5px;
}
/* icon_list yellow
------------------------------------------------------------- */
.icon_list_y > li:before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 15px;
	margin: 0px 3px 0 0;
	background: url(../images/arrow_y.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
	padding-right: 0px;
}
.icon_list_y.indent02 {
	text-indent: -1.0em;
	padding-left: 1.0em;
}
/* maru_list
------------------------------------------------------------- */
.maru_list > li:before {
	content: "●";
	color: #FF9BAC;
	display: inline-block;
	font-size: 12px;
	margin: 0px 5px 0 0;
	vertical-align: middle;
	padding-left: 10px;
}
.maru_list > li {
	text-indent: -0.8em;
	padding-left: 0.8em;
}

@media screen and (max-width: 680px) {
.maru_list > li:before {
	content: "●";
	color: #FF9BAC;
	display: inline-block;
	font-size: 12px;
	margin: 0px 2px 0 0;
	vertical-align: middle;
	padding-left: 10px;
}
}
/* circle_y
------------------------------------------------------------- */
ol.circle_y {
	counter-reset: maru-counter;
	list-style: none;
	padding: 0;
}
ol.circle_y li {
	margin-bottom: 2em;
	padding-left: 30px;
	position: relative;
}
.circle_y li:last-child {
	margin-bottom: 0em;
}
ol.circle_y li:before {
	content: counter(maru-counter);
	counter-increment: maru-counter;
	background-color: #e5d873;
	color: #fff;
	font-weight: bold;
	display: block;
	float: left;
	line-height: 25px;
	margin-left: -30px;
	text-align: center;
	height: 25px;
	width: 25px;
	border-radius: 50%;
}

@media screen and (max-width: 680px) {
.circle_y {
	margin: 0 10px;
}
.circle_y li {
	font-size: 1.3rem;
}
ol.circle_y li:before {
	content: counter(maru-counter);
	counter-increment: maru-counter;
	background-color: #e5d873;
	color: #fff;
	font-weight: bold;
	display: block;
	float: left;
	line-height: 22px;
	margin-left: -30px;
	text-align: center;
	height: 22px;
	width: 22px;
	border-radius: 50%;
}
}

	