﻿@charset "UTF-8";

/*---------------------------------------

[reset]

[base]
	font
	anchor
	add class

.body_common set-up]
	h
	pagetop link

[lower.body_common]

[each page]

.body_common contents]
	container
	header
	main contents
	footer
	print

[clearfix]

[cms setting]

---------------------------------------*/

/* CSS Document */
/*===============================================
●style.css
===============================================*/
* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
	width /***/: auto;
}

.container {
	width: 100%;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote {
	margin: 0;
	padding: 0;
}

header,nav,section,aside,footer {
	display: block;
}

table {
	border-spacing: 0;
}

fieldset,img,a img,abbr,acronym {
	border: 0;
}

li img,dt img {
	vertical-align: top;
}

address,caption,cite,code,dfn,th,var {
	font-style: normal;
	font-weight: normal;
}

caption,th {
	text-align: left;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: normal;
}

hr{
	height: 1px;
	border:1px solid #999999;
}

q:before,q:after {
	content: '';
}

a {
	outline: none;
}

button, fieldset, form, input, label, legend, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: base */

/*--------------------------------------- font */
html {
	font-size: 62.5%;
/* 1em=10px化 */
	;
}

body {
	font-family: "メイリオ",Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	line-height: 1.5;
	color: #1d2129;
	-webkit-text-size-adjust: 100%;
	font-size: 1.4em;
/* 基準フォントサイズ1.4em=14px */
	;
}

/*----------------------- color */
/* red */
.red {
	color: #FF0000;
}

/* white */
.white {
	color: #FFFFFF;
}

/* aqua */
.aqua {
	color: #2b71b7;
}

/* blue */
.blue {
	color: #334f99;
}

/* black */
.black {
	color: #0b0b0b;
}
/*----------------------- size */
/* size10px */
.size10 {
	font-size: 0.71em;
}

/* size12px */
#input-table table th .input_required,
.pure-drawer span,
nav#side ul li,
.productsList li a span.txt,
footer nav li ul,
footer .copy {
	font-size: 0.85em;
}

/* size14px */
#header_logo,
.size14 {
	font-size: 1.0em;
}

/* size18px */
.size18 {
	font-size: 1.28em;
}

/* size22px */
.size22 {
	font-size: 1.57em;
}

/* size24px */
h2 {
	font-size: 1.71em;
}


/*--------------------------------------- anchor */

a {
	color: #22663F;
}

a:hover {
	color: #22663F;
	text-decoration: underline;
}

/* btn */
.btn {
	display: block;
	margin: 10px 0;
}

.btn a {
	font-weight: bold;
	border-radius: 3px;
	padding: 8px 35px 8px 20px;
	background-color: #22663F;
	background-image: url(img/icon_white_arrow.png);
	background-position: center right 13px;
	background-repeat: no-repeat;
	color: #FFF;
	text-decoration: none;
	display: inline-block;
	transition: linear 0.1s;
}

.btn a:hover {
	background-position: center right 10px;
}

/*--------------------------------------- add class */

.floatL {
	float: left;
}

.floatR {
	float: right;
}

.clearB {
	clear: both;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.bold {
	font-weight: bold;
}

br.forTab {
	display: none;
}

br.forSp {
	display: none;
}

.mb1em {
	margin-bottom: 1em;
}

.mt5p{margin-top:5px;}
.mb5p{margin-bottom:5px;}
.mt10p{margin-top:10px;}
.mb10p{margin-bottom:10px;}
.mt20p{margin-top:20px;}
.mb20p{margin-bottom:20px;}
.mt30p{margin-top:30px;}
.mb30p{margin-bottom:30px;}
.mt40p{margin-top:40px;}
.mb40p{margin-bottom:40px;}
.mt50p{margin-top:50px;}
.mb50p{margin-bottom:50px;}
.mt60p{margin-top:60px;}
.mb60p{margin-bottom:60px;}
.mt70p{margin-top:70px;}
.mb70p{margin-bottom:70px;}
.mt80p{margin-top:80px;}
.mb80p{margin-bottom:80px;}
.mt90p{margin-top:90px;}
.mb90p{margin-bottom:90px;}
.mt100p{margin-top:100px;}
.mb100p{margin-bottom:100px;}
.mt110p{margin-top:110px;}
.mb110p{margin-bottom:110px;}
.mt120p{margin-top:120px;}
.mb120p{margin-bottom:120px;}
.mt130p{margin-top:130px;}
.mb130p{margin-bottom:130px;}
.mt140p{margin-top:140px;}
.mb140p{margin-bottom:140px;}
.mt150p{margin-top:150px;}
.mb150p{margin-bottom:150px;}

.pt5p{padding-top:5px;}
.pb5p{padding-bottom:5px;}
.pt10p{padding-top:10px;}
.pb10p{padding-bottom:10px;}
.pt20p{padding-top:20px;}
.pb20p{padding-bottom:20px;}
.pt30p{padding-top:30px;}
.pb30p{padding-bottom:30px;}
.pt40p{padding-top:40px;}
.pb40p{padding-bottom:40px;}
.pt50p{padding-top:50px;}
.pb50p{padding-bottom:50px;}
.pt60p{padding-top:60px;}
.pb60p{padding-bottom:60px;}
.pt70p{padding-top:70px;}
.pb70p{padding-bottom:70px;}
.pt80p{padding-top:80px;}
.pb80p{padding-bottom:80px;}
.pt90p{padding-top:90px;}
.pb90p{padding-bottom:90px;}
.pt100p{padding-top:100px;}
.pb100p{padding-bottom:100px;}
.pt110p{padding-top:110px;}
.pb110p{padding-bottom:110px;}
.pt120p{padding-top:120px;}
.pb120p{padding-bottom:120px;}
.pt130p{padding-top:130px;}
.pb130p{padding-bottom:130px;}
.pt140p{padding-top:140px;}
.pb140p{padding-bottom:140px;}
.pt150p{padding-top:150px;}
.pb150p{padding-bottom:150px;}

.letter_spacing0{letter-spacing:0em;}
.letter_spacing1{letter-spacing:0.1em;}
.letter_spacing2{letter-spacing:0.2em;}

.line_height10{line-height:1.0;}
.line_height11{line-height:1.1;}
.line_height12{line-height:1.2;}
.line_height13{line-height:1.3;}
.line_height15{line-height:1.5;}
.line_height20{line-height:2.0;}
.line_height25{line-height:2.5;}
.line_height30{line-height:3.0;}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.body_common set-up */
.lower h1{
	font-size: 1.7em;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	font-weight: bold;
/*	text-shadow: 0 0;*/
	clear: both;
	padding: 10px 10px 5px;
	border-bottom: 1px solid #484a25;
	color: #236641;
	margin: 10px 0;
}
.body_common h2 {
	font-size: 1.15em;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	font-weight: bold;
/*	text-shadow: 0 0;*/
	clear: both;
	padding: 10px 10px 5px;
	border-bottom: 1px solid #484a25;
	color: #236641;
}
.lower .sideLeft h2{
	font-size: 1.15em;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	font-weight: bold;
/*	text-shadow: 0 0;*/
	clear: both;
	padding: 10px 10px 5px 45px;
}
.lower .contents h2{
	font-size: 1.4em;
	font-weight: bold;
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
	color: #777;
	border-left: 5px solid #23653f;
	padding: 0 10px 0 14px;
	margin: 10px 0 10px 5px;
}

/* h:変更した場合はstyle_editor.cssにも反映すること */
h3 {
	clear: both;
	margin: 0 0 15px;
	padding: 5px 10px 5px 15px;
	color: #fff;
	font-size: 1.3em;
	font-weight: 600;
	background-color: #23653f;
}
h4 {
	clear: both;
	margin: 10px 0 15px;
	padding: 6px 10px 4px 15px;
	font-size: 1.2em;
	font-weight: bold;
	color: #46736C;
	border: solid 1px #ccc;
}
h5 {
	clear: both;
	margin: 0 0 10px;
	padding: 4px 10px 4px 11px;
	font-size: 1.1em;
	font-weight: bold;
	color: #233052;
	border-bottom: 3px solid #3cb371;
}
h6 {
	clear: both;
	margin: 0 0 10px;
	padding: 4px 10px 6px 16px;
	font-size: 1.1em;
	font-weight: bold;
	color: #444;
	background-color: #fafafa;
	border-bottom: 1px dotted #ccc;
}

/* table */
table {
	border-collapse: collapse;
}

table {
	border-color:#CCCCCC;
}
table th,
table td {
	border-color:#CCCCCC;
}

table th {
	background-color: #eeeeee;
}

/* contact form */
.contact form {
	text-align: center;
}

#input-table table {
	margin: 20px auto;
}
#input-table table li {
	margin-left:0;
}

#input-table table th {
	width: 35%;
	padding: 20px 60px 20px 12px;
	background: rgba(0, 0, 0, 0);
	text-align: left;
	border: none;
	font-weight: 700;
	position: relative;
	vertical-align: top;
}
#input-table table td {
	padding-left: 10px;
	font-weight: normal;
}
#input-table table tr {
	transition: linear 0.2s;
	border-top: 1px solid #ccc;
}
#input-table table tr:hover {
	background-color: #fbfcff;
}
#input-table table tr:first-child {
	border-top: 5px solid #f0f0f0;
}
#input-table table tr:last-child {
	border-top: 2px solid #f0f0f0;
}
.input_required {
	font-size: 0.75em;
}
.input_required,
.input_not_required:before {
	padding: 2px 6px;
	display: inline-block;
	background-color: #23653f;
	color: #fff;
	position: absolute;
	right: 10px;
	top: 20px;
}
.input_not_required:before {
	content:"任意";
	font-size: 0.85em;
	background-color: #adadad;
}
#input-table table td {
	padding: 20px 12px;
	border: none;
	text-align: left;
}

#input-table table tr:last-child td {
	text-align: center;
}

#input-table div.formcomment {
	clear: both;
	margin-left: 7px;
	margin-top: 3px;
}

#input-table table td ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

input[type="text"] {
	border: 0;
	padding: 4px;
	border: solid 1px #ccc;
	max-width: 100% !important;
	resize: none;
	border-radius: 5px;
}

.body_textbook_form input[type="text"] {
	margin-bottom: 10px;
}
#input-table table .form_input_addnumber {
	width: 40% !important;
}

#input-table table .form_input_add,
#input-table table .form_input_usermail {
	width: 80% !important;
}

#input-table table textarea {
	width: 96% !important;
	font-size: 110%;
	border: solid 1px #ccc;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: inset 0 0 4px rgba(0,0,0,0.1);
	-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.1);
	box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.1);
}

input:focus,
input:textarea {
	border: solid 1px #3ba5eb;
}

.input_button {
	font-weight: bold;
	-webkit-appearance: none;
	padding: 4px 10px;
	background-color: #22663F;
	color: #fff;
	border: none;
	border-radius: 5px;
	cursor: pointer;
}

#input-table .input_button {
	padding: 15px 50px 15px 45px;
	background-image: url(img/icon_white_arrow.png);
	background-position: center right 12px;
	background-repeat: no-repeat;

}
#input-table .submit_button {
	text-align: center;
	padding-top: 20px;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: main.body_common */
article,
.contents_wrapper,
.con {
	margin-bottom: 30px;
}

.con {
	padding-bottom: 30px;
	border-bottom: dotted 1px #CCCCCC;
}

.entry {
	padding-bottom: 10px;
}

.entry li {
	margin-left: 2em;
}

.contents_wrapper {
	display: table;
}

.sideLeft,
.sideRight {
	width: 28.8%;
}

.sideLeft,
.main,
.sideRight {
	display: table-cell;
	vertical-align: top;
}

.sideLeft {
	padding-right: 30px;
}

.sideRight {
	padding-left: 30px;
}

.sideLeft h2,
.sideRight h2 {
	border: 1px solid #DAD5D1;
	border-radius: 5px 5px 0 0;
	color: #333;
	background-color: #F9F8F6;
}

.sideNavi {
	border: 1px solid #dad5d1;
	border-top: none;
	border-radius: 0 0 5px 5px;
}

.sideNavi li {
	display: block;
	border-top: 1px dotted #999;
}

.sideNavi li:first-child {
	border-top: none;
}

.sideNavi li a:last-child {
	border-radius: 0 0 5px 5px;
}

.sideNavi li a {
	display: block;
	color: #333;
	font-size: 1.15em;
	padding: 8px 10px 8px 35px;
	text-decoration: none;
	font-weight: bold;
	position: relative;
	background-color: #fff;
	background-image: url(img/icon_arrow_dot.png);
	background-repeat: no-repeat;
	background-position: center left 18px;
	transition: 0.1s;
}

.sideNavi li a:hover {
	background-color: #fafafa;
	background-position: center left 20px;
}
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: lower.body_common */
/* breadCrumb */
.breadCrumb {
	padding: 9px 10px 5px;
	background-color: #FEFEFE;
	border-radius: 4px;
}

.breadCrumb li {
	display: inline;
}

.breadCrumb li a,
.breadCrumb li.ic {
	background: transparent url(img/breadcrumb.png) no-repeat scroll right center;
	margin-right: 2px;
	min-height: 7px;
	padding-right: 16px;
}

.breadCrumb li.none a {
	background: none;
	padding: 0;
}
.icon,
h2.icon {
	padding-left: 45px;
	background-position: left 15px center;
	background-repeat: no-repeat;
}
.icon_menu {
	background-image: url(img/icon_green_menu.png) ;
}
.icon_book {
	background-image: url(img/icon_green_book.png) ;
}
.icon_arrow {
	background-image: url(img/icon_green_arrow.png) ;
}
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: main */


/*--------------------------------------- index.html */
#section_main_img {
	background: rgba(0, 0, 0, 0) url(img/recomend_bg.jpg) repeat-y scroll center top;
	position: relative;
	min-width:978px;
}

.recomendArea {
	border-bottom: 1px solid #e9ebeb;
	padding: 0;
	height:271px;
	overflow:hidden;
}

.fade {
	padding: 10px 20px;
}

.recomendArea li {
	list-style: none;
	display:inline-block;
	text-align: center;
	position: relative;
	padding-bottom: 30px ;
}

.recomendArea li div {
	margin: 0 auto;
	max-height:100%;
	max-width: 100%!important;
}
.slider li .book_img{
	height: 220px;
	position:relative;
	margin: 0 24px;
}

.slider li .book_img:before{
	content:"";
	left: 0;
	right: 0;
	bottom:0;
	height: 30px;
	margin: 0 auto -29px;
	position: absolute;
	background-repeat:no-repeat;
	background-size: cover;
	background-position: bottom center;
	transform: scale( 1, -1);
	-o-transform: rotate(180deg) scale(-1);
	-ms-transform: scale( 1, -1);
	-moz-transform:	scale( 1, -1);
	-webkit-transform: scale( 1, -1);
	filter: flipv();
	-ms-filter: flipv();
}
.slider li .book_img:after{
	content:"";
	left: -1px;
	right: -1px;
	bottom:0;
	height: 31px;
	margin: 0 auto -30px;
	position: absolute;
	background: -moz-linear-gradient(top,  rgba(91,190,135,0.6) 0%, rgba(91,190,135,0.6) 1%, rgba(81,186,127,1) 90%, rgba(80,185,126,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(91,190,135,0.6) 0%,rgba(91,190,135,0.6) 1%,rgba(81,186,127,1) 90%,rgba(80,185,126,1) 100%);
	background: linear-gradient(to bottom,  rgba(91,190,135,0.6) 0%,rgba(91,190,135,0.6) 1%,rgba(81,186,127,1) 90%,rgba(80,185,126,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#995bbe87', endColorstr='#50b97e',GradientType=0 );

}
.slick-slide img{
	position: absolute;
	left:0;
	bottom:0;
	max-height: 244px;
	margin: 0 auto;
/*	-webkit-box-reflect: below -3px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 85%,rgba(0,0,0,0.5));*/
}
.slick-prev, .slick-next{
	width: 45px;
	height: 45px;
}
.slick-prev:before, .slick-next:before {
	font-family: serif;
	color: #23653f;
	font-weight: bold;
}
.slick-prev:before {
	content: '<';
}
.slick-next:before {
	content: '>';
}
.recomendArea li span {
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	position: absolute;
	bottom: 40px;
	right: 10px;
	color: #fff;
	background-color: #044c7e;
	padding: 5px;
	border-radius: 4px;
}

.recomendArea li span.new {
	background-color: #6d1501;
}

.fade {
	width: 978px;
	margin: 0 auto;
	text-align: center;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	min-width: 978px;
}
/* */
ul#dropdown {
	margin: 30px 0;
}

ul#dropdown li {
	list-style-type: none;
	margin: 0;
	padding: 0;
	float: left;
	position: relative;
	margin: 0;
	padding: 5px 10px;
	width: 100%;
	background-color: #fbfbfb;
	display: block;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

ul#dropdown .menu {
	background: #fff;
	border-radius: 3px;
	font-weight: bold;
	padding: 10px;
	cursor: pointer;
}

ul.child {
	z-index: 1;
	font-weight: normal;
	display: none;
	position: absolute;
	left: 0;
	margin-bottom: -10px;
	padding: 0;
	/*max-width: 330px;*/
	width:330px;
	border: solid 1px #CCC;
}

ul.child li a {
	padding: 5px 10px 5px 25px;
	margin-right: -5px;
	margin-bottom: -5px;
	display: block;
	background: url(img/icon_arrow_dot.png) 10px center no-repeat;
}

ul.child li:last-child a {
	margin-bottom: 30px;
}

ul#dropdown a:hover {
	background: url(img/icon_arrow_dot.png) 10px center no-repeat #f2f2f2;
}
.list_pickup {
	background: #fff;
	margin-top: 20px;
	padding-top: 20px;
	border-radius: 5px;
	box-shadow: 0 0 5px rgba(0,0,0,0.3);
}
.list_pickup li{
	width: 49%;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	padding: 10px 20px 10px;
}
.list_pickup li .img{
	max-width: 130px;
	margin: 0 auto;
	border:1px solid #666666;
}
.list_pickup li .text{
	font-weight:bold;
	text-align: left;
	padding: 10px 0;
}
.list_pickup li a:hover{
	color: #000;
	text-decoration: none;
}


/*--------------------------------------- news/index.html */
.newsList .new {
	position: absolute;
	top: 10px;
	right: 10px;
	background-color: #2b71b7;
	padding: 0 10px;
}
.newsList {
	border: 1px solid #dad5d1;
	border-top: none;
	border-radius: 0 0 5px 5px;
	background-color: #fff;
}

.newsList li {
	display: block;
	border-top: 1px dotted #999;
}

.newsList li:hover {
	background-color: #fafafa;
}

.newsList li:first-child {
	border-top: none;
}

.newsList li a:last-child {
	border-radius: 0 0 5px 5px;
}
.newsList .date{
	padding: 10px 10px 0 10px;
}
.category{
	color: #fff;
	background: #3cb371;
	padding: 2px 8px;
	display: inline-block;
	margin-left: 10px;
	border-radius: 3px;
	font-size: 0.9em;
}
.newsList li a {
	display: block;
	padding: 8px 25px 8px 8px;
	font-size: 0.97em;
	position: relative;
	background-image: url(img/icon_arrow_2.png);
	background-repeat: no-repeat;
	background-position: center right 5px;
	transition: .1s;
}
.newsList li .date a {
	display:inline-block;
	padding:0;
	position:static;
	background:none;
}

.newsList li p {/* 詳細ページリンク無し */
	padding: 8px 4px 8px 8px;
	font-size: 0.97em;
}
.newsList li a:hover {
	background-position: center right 8px;
}
.newsIndex li{
	margin: 0;
	padding: 10px 10px 30px;
	display: block;
	border-top: 1px dotted #ccc;
}
.newsIndex li:first-child{
	border-top: none;
}
.newsIndex li .date{
	text-align: right;
	padding-bottom: 10px;
}

.newsIndex li .text{
	font-size: 0.95em;
}
.column_2 {
	display: inline-block;
	vertical-align: top;
}
.img.column_2 {
	width:30%;
}
.newsIndex li .img {
	padding-right: 30px;
	max-width: 100%;
}
.text.column_2 {
	width:69%;
}
.categoryList {
	list-style:none;
	width:100%;
	margin:20px 0 30px;
}
.categoryList li {
	display:inline-block;
}

/*--------------------------------------- products/index.html */
div#gMap {
	width: 80%;
	height: 300px;
	margin: 0 auto 40px;
}

/*--------------------------------------- products/index.html */
.productsList {
	list-style: none;
	padding-left: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 600px !important;
	margin: 0 auto;
}

.productsList li {
	float: left;
	width: 250px;
	margin-bottom: 10px;
	margin-right: 10px;
}

.productsList li:nth-child(2n) {
	margin-right: 0;
}

.productsList li a {
	display: block;
	height: 100%;
	border-radius: 5px;
	text-align: center;
}
.productsList li a:link,
.productsList li a:visited{
	text-decoration: none;
}
.productsList li a:hover {
	background: #f9f8f4;
	text-decoration: none;
}

.productsList li a span {
	display: block;
	padding: 8px 10px 0;
	text-align: left;
}

.productsList li a span.txt {
	padding-bottom: 10px;
}

.productsList li a span.txt ul {
	border-top: dotted 1px #CCC;
	padding: 10px 0 0 15px;
}

.productsList li a span.txt li {
	float: none;
	margin-bottom: 5px;
	margin-right: 0;
	width: 100%;
}

.productsList li a img {
	margin-top: 10px;
	border: solid 1px #FFF;
	width: 80%;
}

#sideImage {
	width: 200px;
	float: left;
	padding-left: 1%;
}

/*--------------------------------------- contact/index.html */
.contact p {
	margin-bottom: 2em;
}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.body_common contents */

/*--------------------------------------- container */

html {
	height: 100%;
	margin: 0;
	padding: 0;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
}

header #header_inner,
.gNavi,
.layout02,
.breadCrumb ul,
.copy div,
.contents_wrapper {
	width: 978px;
	margin: 0 auto;
}
.container:after{
	clear:both;
	content:"";
	display:block;
}
.contents{
	display:table;
	font-size:1.1em;
	font-family: "游ゴシック体","游ゴシック",YuGothic,"メイリオ",Meiryo,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",Verdana,Roboto,"Droid Sans",sans-serif;	float:right;
	width:670px;
	background:#FFFFFF;
	border:1px solid #EEEEEE;
	padding:20px;
	border-radius: 5px;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
}

/*--------------------------------------- header */
header {
	min-width:978px;
	position: relative;
	background-color: #fff;
	box-shadow: inset 0 -1px #027a41, inset 0 -3px #fff, inset 0 -4px #484a25;
}

header a {
	color: #333;
}

nav.gNavi ul {
	display: table;
	width: 100%;
	padding: 0 0 15px;
}

nav.gNavi li {
	display: table-cell;
	vertical-align: middle;
}

header div {
	position: relative;
}

header img {
	max-width: 136px;
}
#header_inner{
	display:table;
}
#header_logo,
.sub_btn{
	display:table-cell;
	vertical-align:top;
}
#header_logo a {
	display: block;
	margin: 18px 16px 16px 16px;
}
.sub_btn{
	text-align: right;
	padding-right: 25px;
	font-size: 1.02em;
}
.searchArea,
.contactBtn{
	display: inline-block;
	vertical-align: top;
}
.searchArea {
	padding: 10px 20px;
	margin-right: 5px;
	background: #F2F2F2;
	border-radius: 0 0 5px 5px;
}
.searchArea input {
	width: 200px;
}
.searchArea input.input_button {
	background-color: #23653F;
	color: #fff;
	border: none;
	padding: 5px 17px;
	border-radius: 5px;
	margin-left: 2px;
	cursor: pointer;
	width: auto;
}
.contactBtn {
	background-color: #23653F;
	background-image: url(img/icon_white_mail.png);
	background-position:center left 18px;
	background-repeat: no-repeat;
	border-radius: 0 0 5px 5px;
}
.contactBtn a{
	color: #fff;
	display: block;
	text-decoration: none;
	padding: 14px 32px 14px 40px;
	background-image: url(img/icon_white_arrow.png);
	background-position:center right 12px;
	background-repeat: no-repeat;
}
nav.gNavi li a {
	color: #000;
/*	text-shadow: 0 0;*/
	display: block;
	padding: 0 30px;
	border-left: 1px solid #b2b2b2;
	text-align: center;
	text-decoration: none;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	font-weight: bold;
	transition: .2s;
}
nav.gNavi li:last-child a {
	border-right: 1px solid #b2b2b2;
}
nav.gNavi li a:hover {
	background-color: rgba(35, 101, 63, 0.1);
}
nav.gNavi li.current a span{
	position: relative;
	transition: linear 0.2s;
}
nav.gNavi li.current a span {
	top: -2px;
}
nav.gNavi li.current a span:after{
	display:block;
	content:"";
	width: 6px;
	height: 6px;
	border-bottom: 1px solid #23653F;
	border-right: 1px solid #23653F;
	position: absolute;
	left: 0;
	right: 0;
	margin:0 auto -6px;
	bottom: 0;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

nav.gNavi li.current a:hover{
	color: #000;
	background-color: #fff;
}
/*--------------------------------------- kayFrame */

/*--------------------------------------- mainContaints */
.container {
	padding: 30px 0 80px;
}

.bgf8f6f3 {
	background-color: #f8f6f3;
}

.bg_beige {
	background-image: url(img/bg_1.png);
	min-width:978px;
}

.container article,
.container .contents_wrapper {
	padding: 0 1%;
}

.layout02 article {
	width: 76%;
	float: left;
}


/*--------------------------------------- sideContaints */
#side {
	width: 20%;
	float: right;
	padding-right: 2%;
}

nav#side .menu_title {
	border-radius: 5px 5px 0 0;
	box-sizing: border-box;
	color: #fff;
	font-size: 1.286em;
	margin: 0;
	padding: 0.5em 1em;
	text-align: center;
	background: #2b71b7;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

nav#side ul {
	border-bottom: 3px solid #dddddd;
	border-left: 3px solid #dddddd;
	border-radius: 0 0 5px 5px;
	border-right: 3px solid #dddddd;
	box-sizing: border-box;
	margin-bottom: 20px;
}

nav#side ul li {
	border-top: 1px solid #dddddd;
	position: relative;
}

nav#side li a {
	box-sizing: border-box;
	display: block;
	height: 100%;
	opacity: 1;
	padding: 17px 0 17px 32px;
	transition: background 0.4s ease 0s;
	width: 100%;
}

nav#side li.current a {
	background-color: #dff0ff;
}

nav#side li a:before {
	content: "";
	width: 6px;
	height: 6px;
	border-bottom: 2px solid #2b71b7;
	border-right: 2px solid #2b71b7;
	position: absolute;
	left: 10px;
	top: 22px;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	transition: linear 0.1s;
}
/*--------------------------------------- pagetop link */
#pgtp {
	border-bottom: solid 1px #b5c3df;
}

#pgtp p {
	text-align: right;
	padding: 20px 0 16px;
}
/*--------------------------------------- pageprev/next link */
.page_link {
	clear: both;
	width: 100%;
	margin: 0;
	padding: 35px 0 20px;
	text-align: center;
}
.page_link a.page_link_right,
.page_link a.page_link_left {
	border: 1px solid #ccc;
	background-color: #fafafa;
	background-repeat: no-repeat;
	transition: 0.1s;
	text-decoration: none;
}
.page_link a.page_link_right {
	margin-left: 10px;
	padding: 3px 25px 3px 20px;
	background-image: url(img/icon_arrow_dot.png);
	background-position: center right 10px;
}
.page_link a.page_link_left {
	margin-right: 10px;
	padding: 3px 20px 3px 25px;
	background-image: url(img/icon_arrow_dot_l.png);
	background-position: center left 10px;
}
.page_link a.page_link_right:hover,
.page_link a.page_link_left:hover {
	background-color: #23653f;
	color: #fff;
	border: 1px solid #23653f;
}
.page_link a.page_link_right:hover{
	background-image: url(img/icon_arrow_dot_w.png);
}
.page_link a.page_link_left:hover{
	background-image: url(img/icon_arrow_dot_lw.png);
}
/*--------------------------------------- footer */
footer {
	background-color: #fff;
	border-top: 1px solid #e9e7e7;
	min-width:978px;
}

footer a,
footer a:hover {
	color: #333;
}

footer .contents_wrapper {
	display: table;
	width: 978px;
	padding: 30px 0;
}
.footer_logo_mark {
	margin: 0 auto;
	max-width: 1300px;
	padding-bottom: 40px;
}
footer .footer_logo_mark .contents_wrapper{
	background-image: url(img/logo_mark.png);
	background-position: right 80px bottom;
	background-repeat: no-repeat;
}
.fLogo,
footer nav,
footer nav ul {
	display: table-cell;
	vertical-align: top;
}
.fLogo {
	width: 150px;
}
.fLogo img {
	max-width: 110px;
}
.footerNavi_inner{
	display:table;
	width: 100%;
	table-layout:fixed;
}
footer nav ul {
	padding-left: 50px;
}
footer nav li {
	list-style: none;
	clear: both;
	margin-bottom: 5px;
	position: relative;
}
footer nav li a {
	display: block;
	color: #333;
	padding: 0 10px 0 45px;
	font-size: 0.97em;
	text-decoration: none;
	font-weight: bold;
	background-image: url(img/icon_arrow_dot.png);
	background-repeat: no-repeat;
	background-position: center left 28px;
}

footer nav li.menugenre{
	margin-top:10px;
	background-image: url(img/icon_green_menu.png);
	background-repeat: no-repeat;
	background-position: center left 18px;
	background-size:16px 16px;
	padding: 0 10px 0 45px;
	font-weight:bold;
}
footer nav li.menugenre a{
	background-image: none;
}
footer nav li.menulevel2 {
	margin-left: 10px;
}
footer .copy {
	background-color:  #fff;
	color: #828282;
	border-top: 1px solid #e9e7e7;
	padding: 20px 0;
	text-align: center;
}

/*--------------------------------------- /books list */
.sidebar{
	float:left;
	width:250px;
	height:600px;
	background:#EEEEEE;
	border-radius:5px;
}

.pageNavi {
	padding-bottom: 20px;
}
.pageNavi li{
	display: block;
	padding: 2px;
}
.pageNavi li a {
	font-weight: bold;
	text-decoration: none;
	display: block;
	padding: 5px 10px 5px 30px;
	background-image: url(img/icon_arrow_2b.png);
	background-repeat: no-repeat;
	background-position: center left 5px;
	transition: linear 0.1s;
	position:relative;
}
.pageNavi li a:hover {
	background-position: bottom 6px left 5px;
}
.book_list{
	width:100%;
	list-style:none;
}
.book_list_wrapper{
	padding-top:10px;
	margin-bottom:10px;
}
.book_list_color0{
	background:none;
}
.book_list_color1{
	background:#FAFAFA;
}
.book_list li{
	clear:both;
	width:100%;
	padding:15px 0;
	border-bottom:1px dashed #888888;
}
.book_list li:after{
	clear:both;
	display:block;
	content:"";
}
.book_list .book_list_box1{
	float:left;
	width:200px;
	padding-bottom:20px;
	text-align:center;
}
.book_list .book_list_box1_2{
	padding-top:20px;
	display:inline-block;
	text-align:left;
	font-size:0.7em;
}
.book_list .book_list_box2{
	float:right;
	width:420px;
	padding-top:15px;
}
.book_list .book_list_box3{
	float:right;
	width:420px;
	padding-bottom:20px;
}

.book_list li div.book_image{
	margin-top:15px;
	text-align:center;
}
.book_list li div.book_image img{
	min-width:90px;
	height:150px;
	background:#EEEEEE;
	border:1px solid #666666;
}

.book_list li div.book_series{
	font-size:0.9em;
	width:100%;
	margin-bottom:15px;
}
.book_list li div.book_title{
	font-size:1.2em;
	width:100%;
}
.book_list li div.book_subtitle{
	font-size:0.9em;
	width:100%;
}
.book_list li div.book_credit{
	font-size:0.9em;
	padding-right:10px;
	margin-top:15px;
	margin-bottom:20px;
}
.book_list li div.book_credit span{
	display:inline-block;
}
.book_list li div.book_summary{
	float:right;
	padding-right:10px;
}
/*--------------------------------------- /books detail */

.book_detail{
	padding-top:30px;

}
.book_detail div.book_detail_series{
	font-size:1.4em;
	margin-bottom:10px;
}
.book_detail div.book_detail_title{
	font-size:2.0em;
}
.book_detail div.book_detail_subtitle{
	font-size:1.4em;
	line-height:1.0;
}
.book_detail div.book_detail_credit{
	margin-top:12px;
	margin-bottom:20px;
}
.book_detail div.book_detail_credit span{
	display:inline-block;
}
.book_detail .book_detail_publish_date,
.book_detail .book_detail_isbn,
.book_detail .book_detail_edition,
.book_detail .book_detail_format,
.book_detail .book_detail_pages,
.book_detail .book_detail_price{
	font-size:0.95em;
}

.book_detail div.book_detail_box1{
	width:300px;
	float:left;
}
.book_detail div.book_detail_image{
	text-align:center;
	margin-top:20px;
	margin-bottom:20px;
}
.book_detail div.book_detail_zaiko{
	text-align:center;
}
.book_detail div.book_detail_pdf{
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
}
.book_detail div.book_detail_pdf a{
	display:inline-block;
	padding: 5px 20px;
/*	padding: 5px 20px 5px 40px;*/
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	border-radius: 3px;
	font-weight: bold;
	text-shadow: 0 0;
	text-decoration: none;
	border: 1px solid #DAD5D1;
	color: #333;
/*	background-image: url(img/icon_pdf.png);
	background-position: left 15px center;
	background-repeat: no-repeat;*/
	background-color: #F9F8F6;
}
.book_detail div.book_detail_sns{
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
}
.book_detail div.book_detail_sns img{
	width:40px;
	height:40px;
}
.book_detail div.book_detail_image img{
	min-width:90px;
	max-width:80%;
	min-height:150px;
	background:#EEEEEE;
	border:1px solid #666666;
}
.book_detail div.book_detail_box2{
	float:right;
	width:320px;
	margin-top:20px;
	margin-bottom:30px;
}
.book_detail .book_detail_summary{
	margin-bottom:20px;
}
.book_detail .book_detail_info{
	width:100%;
	margin-top:20px;
	margin-bottom:20px;
}


/*--------------------------------------- /textbook */
.search_box{
	background: #f2f2f2;
	margin-bottom: 30px;
}
.search_box h3{
	margin:0;
}
.search_box input[type="text"]{
	width:250px;
}
.search_box h4{
	margin: 0px 17px;
	padding-left: 45px;
	background-color: #fff;
	background-image: url(img/icon_green_menu.png);
	background-position: left 15px center;
	background-repeat: no-repeat;
}
.search_box form {
	padding: 30px 17px 25px;
}
.text_genre_list {
	padding: 13px 13px 25px;
	background: #f2f2f2;
}
.text_genre_list li{
	display: inline-block;
	width: 33.333%;
	margin:0;
	padding: 2px 4px;
}
.text_genre_list li a{
	display: block;
	text-decoration: none;
	color: #333;
	padding: 5px 10px 5px 35px;
	text-decoration: none;
	font-weight: bold;
	position: relative;
	border: 1px solid #ccc;
	background-color: #fff;
	background-image: url(img/icon_arrow_dot.png);
	background-repeat: no-repeat;
	background-position: center left 18px;
	transition: 0.1s;
}
.text_genre_list li a:hover {
	background-color: #fafafa;
	background-position: center left 20px;
}
/* dropdown */
ul#dropdown.textpage_list{
	width:150px;
	float:right;
	margin: 0;
	background:#FFFFFF;
	border:1px solid #CCCCCC;
}
ul#dropdown.textpage_list li.menu{
	background:#FFFFFF;
	color:#333333;
}
ul#dropdown.textpage_list ul.child{
	color:#1d2129;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: clear */
.entry:after,
article:after,
.contents_wrapper:after,
ul:after,
section:after,
header:after,
header div:after,
footer:after,
.clearFix:after {
	content: "";
	display: block;
	clear: both;
}



/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: cms setting */
/* tooltip */
.invisible {
	display: none;
}

a.tooltiplink {
	display: inline-block;
	margin: 1px 3px 0;
	padding: 1px 3px 0;
	border: 2px solid #C7C7C7;
	background-color: #075698;
	border-radius: 5px;
	-moz-border-radius: 5px;
	text-decoration: none;
	color: #FFFFFF;
	font-size: 1.0em;
	font-weight: bold;
}

#content #input-table a.tooltiplink:link,
#content #input-table a.tooltiplink:visited {
	font-weight: bold;
	color: #FFFFFF;
	text-decoration: none;
}

#content #input-table a.tooltiplink:hover,
#content #input-table a.tooltiplink:active {
	font-weight: bold;
	color: #DDDDDD;
	text-decoration: none;
}

#content a.tooltiplink:link,
#content a.tooltiplink:visited {
	font-weight: bold;
	color: #FFFFFF;
	text-decoration: none;
}

#content a.tooltiplink:hover,
#content a.tooltiplink:active {
	font-weight: bold;
	color: #DDDDDD;
	text-decoration: none;
}

#content p.tooltipbox {
	position: absolute;
	top: 100px;
	left: 20px;
	font-size: 1.0em;
	margin: 0;
	padding: 10px;
	min-width: 100px;
	min-height: 30px;
	color: #FFFFFF;
	background: #075698;
	border: 2px solid #075698;
	border-radius: 5px;
	-moz-border-radius: 5px;
}

#content #input-table p.tooltipbox a:link,
#content #input-table p.tooltipbox a:visited {
	font-weight: bold;
	color: #FFFFFF;
	text-decoration: underline;
}

#content #input-table p.tooltipbox a:hover,
#content #input-table p.tooltipbox a:active {
	font-weight: bold;
	color: #DDDDDD;
	text-decoration: underline;
}

#content p.tooltipbox a:link,
#content p.tooltipbox a:visited {
	font-weight: bold;
	color: #FFFFFF;
	text-decoration: underline;
}

#content p.tooltipbox a:hover,
#content p.tooltipbox a:active {
	font-weight: bold;
	color: #DDDDDD;
	text-decoration: underline;
}

/* comment form */
.comment_box {
	width: 100%;
	margin: 0 0 15px;
	padding: 0;
	border-collapse: collapse;
	border: solid 1px #cccccc;
	background: #eeeeee;
}

.comment_box th,
.comment_box td {
	padding: 10px;
}

.comment_id {
	width: 10%;
	text-align: left;
	white-space: nowrap;
}

.comment_name {
	width: 70%;
	text-align: left;
}

.comment_regist {
	width: 20%;
	text-align: right;
	vertical-align: bottom;
	white-space: nowrap;
	font-size: 0.8em;
	color: #aaaaaa;
}

.comment_box td {
	padding-top: 0;
}

.comment_text {
	padding: 15px;
	background: #ffffff;
}

.icon_comment {
	text-align: right;
}

.icon_comment a {
	padding-left: 30px;
	background: url(./icon_comment.gif) no-repeat left center;
}

/* twitter widget */
#twtr-hd h3,
#twtr-hd h4,
.twtr-widget h3,
.twtr-widget h4,
.twtr-widget p,
.twtr-widget-profile h3,
.twtr-widget-profile h4 {
	clear: none;
	margin: auto;
	padding: auto;
	font-size: auto;
	color: auto;
	border: none;
	background-image: none;
}
/* twitter tweet button */
iframe.twitter-share-button {
	width: 115px!important;
}

/* エディター：スタイル */
.editor-style-btn1 {
	display: inline-block;
	padding: 1em 1em;
	color: #FFFFFF;
	border-radius: 5px;
	background-color: #3ba5eb;
}

.editor-style-btn1:hover {
	background-color: #1d86ed;
}

.editor-style-btn1 a:link,
.editor-style-btn1 a:visited,
.editor-style-btn1 a:active,
.editor-style-btn1 a:hover {
	color: #FFFFFF;
	text-decoration: none;
}

.editor-style-text1 {
	color: #ffffff;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3),-1px -1px 5px rgba(0, 0, 0, 0.3);
}