@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Cabin);
@font-face { font-family: 'HanSerifBold'; src: url(font/SourceHanSerifJP-Bold.otf); }
@font-face { font-family: 'HanSerifMedium'; src: url(font/SourceHanSerifJP-Medium.otf); }
@font-face { font-family: 'HanSerifRegular'; src: url(font/SourceHanSerifJP-Regular.otf); }

/* layout */
/*=================================
	initialization of style
===================================*/
body {
	margin: 0;
	padding: 0;
	background:#ffffff;
	color: #000;
	font-family: 'Noto Sans Japanese', serif;
	font-size: 16px;
	line-height: 150%;
	text-align: center;
	width: 100%;
	height: 100%;
}

a:link,
a:visited {
	text-decoration: none;
	color: #222;
}
a:hover,
a:active {
	text-decoration: none;
	color: #222;
	opacity: 0.7;
}

figure,figcaption,div,h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ul,ol,li,form {
	margin: 0;
	padding: 0;
}
img, a img {
	border:none;
	vertical-align: bottom;
}

a img:hover {
 filter: alpha(opacity=75);
 -moz-opacity:0.75;
 opacity:0.75;
}


/* List_group */
ul,ol,li { list-style: none;}

/* inline-style */
address {
	font-style: normal;
	font-size: 12px;
	color: #020202;
}
	address a,
	address a:link,
	address a:visited {
		text-decoration: none;
		color: #020202;
	}
	address a:hover,
	address a:active {
		text-decoration: underline;
		color: #020202;
	}

/* table */
table { width:100%;}
tr,th,td {}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
            outline:none;
}

.tsn,a{
	-webkit-transition: 0.4s;
       -moz-transition: 0.4s;
         -o-transition: 0.4s;
        -ms-transition: 0.4s;
            transition: 0.4s;
}
.clear{ clear: both; display: block; width: 100%; height: 0; }

/*=============================
	common setting
===============================*/

/* header
-------------------------*/
header .head_bar{ background: #fff; }
.subpage header .head_bar{
	border-bottom: 1px solid #000f7d;
	box-shadow: 0 2px 3px #ddd;
}
header .head_bar .logo_area{
	float: left;
    max-width: 286px;
    width: 30%;
    padding: 23px 0 0 30px;
}
header .head_bar .logo_area a,
header .head_bar .logo_area img{display: block; width: 100%;}

.page_ttl{
	width: 100%;
	padding: 0 10px;
	background: #f0f3f8;
	text-align: center;
}
.page_ttl h2{
	font-size: 15px;
	padding: 50px 0;
	line-height: 35px;
    letter-spacing: 5px;
}
.page_ttl h2 span{
	font-size: 41px;
	display: block;
	color: #001365;
    letter-spacing: 10px;
}
header .right_clmn{
	float: right;
	width: 70%;
	text-align: right;
}
header .right_clmn nav > ul > li{
	display:inline-block;
	text-align: center;
}
header .right_clmn nav > ul > li a{display: block; padding: 28px; position: relative; cursor: pointer;}
header .right_clmn nav > ul > li:hover > a::after{
	content: "";
	position: absolute;
	bottom: -2px;
	left: 50%;
 	margin-left: -15px;
	border: 12px solid transparent;
	border-bottom: 12px solid #FFF;
	z-index: 1000;
}
header .right_clmn nav > ul > li:last-child:hover > a::after,
header .right_clmn nav > ul > li:nth-child(4):hover > a::after{display: none;}
header .right_clmn nav > ul > li:hover > a{
	color: #fff;
	background: #000f7d;
	text-decoration: none;
	opacity: 1;
}
header .right_clmn nav > ul > li:last-child a{
	width: 80px;
	height: 80px;
	background: url(../images/common/icon_search.png) no-repeat center, #000;
}
header #srch_area,
header .hid_area,
header .hid_area_in{display: none; position: absolute;z-index: 100000;}
/*header .hover_btn{position: relative;}*/
header .hid_area {
	position: absolute;
	right: 0;
	background: #fff;
	width: 100%;
	min-height: 180px;
	border-top: 2px solid #000f7d;
	padding: 20px 10px 0 10px;
	z-index: 1;
}
header .hid_area_in {
	position: absolute;
	right: 0;
	background:linear-gradient(#fff 0%,#fff 25%,#f0f3f8 25%,#f0f3f8 100%);
	width: 100%;
	padding: 40px 0 20px 0;
}
header .hid_area_in > li,
header .hid_area > li{ display: inline-block; }

header .right_clmn nav .hid_area > li:hover > a{
	color: #fff;
	background: #000f7d;
}
header .right_clmn nav .hid_area > li > a{
	border: 1px solid #ccc;
	padding: 15px 20px;
}

header .right_clmn nav ul.hid_area_in > li > a{
	display: block;
	position: relative;
	padding: 0 15px;
	font-weight: bold;
	font-size: 18px;
	border-right: 1px dotted #7b7b7b;
}
header .right_clmn nav ul.hid_area_in > li:last-child > a{border-right: none;}
header .right_clmn nav ul.hid_area_in > li:hover > a{ color: #000f7d; opacity: 1; text-decoration: underline;}
header #srch_area{
    position: absolute;
    right: 0;
    margin-top: 2px;
}
header #srch_area.actv{display: block;}

header #srch_area input[type='text'] {
	-webkit-appearance: none;
    float: left;
    width: 230px;
    border-radius: 5px 0 0 5px;
    height: 60px;
    border: none;
    font-size: 17px;
    padding-left: 60px;
    border: 1px solid #ddd;
    border-right: none;
    background: url(../images/common/icon_search02.png) no-repeat left 20px center #fff;
}
header #srch_area input[type='submit'] {
	-webkit-appearance: none;
    float: right;
    width: 80px;
    border-radius: 0 5px 5px 0;
    height: 60px;
    border: none;
    background: #000f7d;
    color: #fff;
    font-size: 17px;
    cursor: pointer;
	-webkit-transition: 0.4s;
       -moz-transition: 0.4s;
         -o-transition: 0.4s;
        -ms-transition: 0.4s;
            transition: 0.4s;
}
header #srch_area input[type='submit']:hover{
	background: #000;
}
.clear_btn,
.sp_nav,
header #sp_btn{display: none;}

/* footer
-------------------------*/
footer .inner1000{ max-width: 1120px; padding: 0 10px 10px 10px;  }
footer .ft_logo {
	text-align: left;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 15px 0;
    margin-bottom: 20px;
}
footer .ft_logo .inner1000{ padding-bottom: 0; }
footer .ft_logo a{
	display: block;
	max-width: 250px;
	margin: 0 auto;
}
footer .ft_logo a img{ display: block; width: 100%; }
footer .list_area{
	display: inline-block;
	width: 29%;
	padding: 0 10px;
	vertical-align: top;
	text-align: left;
	overflow: hidden;
}
footer .list_area01{ width: 41%; padding-left: 0;}
footer .list_area > li{ overflow: hidden; }
footer .list_area > li > a{
	display: block;
	font-size: 15px;
	font-weight: bold;
	position: relative;
	padding-left: 20px;
	width: 50%;
    border-bottom: 1px solid #cccccc;
    line-height: 30px;
    margin-bottom: 15px;
}
footer .list_area > li > a::after{
	position: absolute;
	content: " ";
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	display: block;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
}
footer .list_area_in > li > a{
	font-weight: bold;
	font-size: 14px;
	padding-left: 20px;
	display: block;
}
footer .list_area_in > li > a.pn{ display: none; }
footer .list_area_in02 > li > a{
	font-size: 13px;
	padding-left: 35px;
	display: block;
}
footer .list_area > li > a:hover{opacity: 1;}
footer .list_area01 .list_area_in{
}
footer .list_area01 .list_area_in > li{
	float: left;
	width: 49%;
}
footer .list_area01 .list_area_in > li:nth-child(3),
footer .list_area01 .list_area_in > li:nth-child(4),
footer .list_area01 .list_area_in > li:nth-child(5){display: none;}

footer .list_area03.list_area > li > a{
	width: 100%;
	border-bottom: none;
}
footer .list_area03.list_area > li > a::after{ display: none; }
footer .list_area03.list_area > li:nth-child(1) > a,
footer .list_area03.list_area > li:nth-child(2) > a,
footer .list_area03.list_area > li:nth-child(3) > a{
	border-bottom: 1px solid #ccc;
}
footer .list_area03.list_area > li:nth-child(1) > a::after,
footer .list_area03.list_area > li:nth-child(2) > a::after,
footer .list_area03.list_area > li:nth-child(3) > a::after{display: block;}

footer .list_area03.list_area > li:nth-child(3){ margin-bottom: 15px; }

footer .list_area03.list_area > li:nth-child(4) > a,
footer .list_area03.list_area > li:nth-child(5) > a,
footer .list_area03.list_area > li:nth-child(6) > a{
	font-weight: 400;
	font-size: 13px;
	line-height: 20px;
	margin-bottom: 5px;
	padding-left: 0;
}

footer .list_area03.list_area > li:nth-child(7){
	position: relative;
	padding-top: 30px;
    margin-top: 30px;
}
footer .list_area03.list_area > li:nth-child(7)::after{
	position: absolute;
	content: " ";
	top: 0;
	left: 0;
	width: 60px;
	height: 2px;
	background: #000;
}
footer .list_area03.list_area > li:nth-child(7) > a{
	display: inline-block;
	background: url(../images/common/icon_tw02.png) no-repeat center;
	width: 30px;
	height: 30px;
	padding: 20px;
}
footer .list_area03.list_area > li:nth-child(7) > a:nth-child(2){
	background: url(../images/common/icon_fb02.png) no-repeat center;
}
footer .list_area03.list_area > li:nth-child(7) > a:nth-child(3){
	background: url(../images/common/icon_yt02.png) no-repeat center;
}
footer .copyright{ font-size: 11px; border-top: 1px solid #000; padding: 5px;  }


/* comp
-------------------------*/
.pn{display: none;}
.inner1000{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	display: block;
}
.inner1020{
	max-width: 1020px;
	width: 100%;
	padding: 10px;
	margin: 0 auto;
	display: block;
}
.min{font-family: "HanSerifRegular", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
.en{font-family: 'Cabin', sans-serif;}
.ja{font-family: 'Noto Sans Japanese', serif;}
.pumpkin{ font-style: italic; letter-spacing: 2px; }
/*見出し*/
.ttl01{
	font-size: 25px;
	line-height: 30px;
    text-align: left;
    background: #000f7d;
    color: #fff;
    padding: 15px;
    position: relative;
    font-weight: 400;
}
.ttl01::after{
	position: absolute;
    content: " ";
    top: -10px;
    left: 0;
    width: 100%;
    height: 3px;
    background: #000f7d;
}
header .ttl01{ margin-top: 30px; }
.ttl01.ttl01_detail{ margin-top: 30px; }
.ttl02{
	color: #000f7d;
	font-size: 22px;
	text-align: left;
	line-height: 30px;
	padding-bottom: 5px;
	position: relative;
	padding-left: 30px;
	border-bottom: 3px double #9e9faa;
}
.ttl02::after{
	position: absolute;
	content: " ";
	top: 6px;
	left: 0;
	width: 20px;
    height: 20px;
	background: #000f7d;
}
.ttl03{
    font-size: 22px;
	line-height: 30px;
    font-weight: bold;
    color: #000f7d;
    text-align: left;
}
.ttl04{
	font-size: 18px;
	text-align: left;
	line-height: 25px;
	position: relative;
	padding-left: 25px;
}
.ttl04::after{
	position: absolute;
	content: " ";
	top: 5px;
	left: 0;
	width: 15px;
    height: 15px;
	background: #000f7d;
}
.ttl05{
	font-weight: bold;
	letter-spacing: 5px;
	font-size: 14px;
	line-height: 40px;
}
.ttl05 span{
	display: block;
	color: #000f7d;
	font-size: 43px;
}

.ttl06{ text-align: left; border-bottom: 1px solid #ccc; padding-bottom: 15px;  }
.ttl06 span{
	border-left: 4px solid #000f7d;
	font-size: 28px;
	line-height: 30px;
    padding-left: 13px;
}

/*	WPページャー
--------------------------------*/
.wp-pagenavi { clear: both; text-align:center; }
.wp-pagenavi a, .wp-pagenavi span {
	color: #000f7d;
	background-color: #fff;
	border: solid 1px #000f7d;
	padding: 8px 11px;
	margin: 0 2px;
	white-space: nowrap;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration:none;
}
.wp-pagenavi .extend,
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {border: none; background: none; }
.wp-pagenavi span.current{
	color: #FFF;
	background-color: #000f7d;
	border-color: #000f7d;
	font-weight: bold;
    }
.wp-pagenavi a:hover{
    color:#FFF; 
    background-color:#999; 
    border-color:#999;
    }



/*テキストと画像のレイアウト*/
.w_clmn01{
	text-align: left;
	overflow: hidden;
}
.w_clmn01 li{
	float: left;
	width: 36%;
}
.w_clmn01 li img{display: block; width: 100%;}
.w_clmn01 li:last-child{
    font-size: 14px;
    line-height: 25px;
    width: 60%;
    float: right;
}

.w_clmn02{
	text-align: left;
	overflow: hidden;
}
.w_clmn02 li{
	float: left;
	width: 60%;
	font-size: 14px;
    line-height: 25px;
}
.w_clmn02 li img{display: block; width: 100%;}
.w_clmn02 li:last-child{
    width: 36%;
    float: right;
}

.w_clmn03{
	text-align: left;
	overflow: hidden;
}
.w_clmn03 li{
	float: left;
	width: 48%;
	font-size: 14px;
    line-height: 25px;
}
.w_clmn03 li img{display: block; width: 100%;}
.w_clmn03 li:last-child{ float: right; }
.w_clmn03 li figcaption { margin-top: 10px; }


.w_clmn04{
	text-align: left;
	overflow: hidden;
}
.w_clmn04 li{
	float: left;
	width: 32%;
	margin-right: 2%;
	font-size: 14px;
    line-height: 25px;
}
.w_clmn04 li img{display: block; width: 100%;}
.w_clmn04 li:last-child{ margin-right: 0; }
.w_clmn04 li figcaption { margin-top: 10px; }

.sin_clmn{ text-align: left; }
.sin_clmn img{display: block; margin: 0 auto; max-width: 100%;}
.sin_clmn p{font-size: 14px; line-height: 25px; margin-top: 10px; }

/*ボタンのパターン*/
.btn01{
	max-width: 300px;
	width: 100%;
}
.btn01 a{
	display: block;
	background: #001365;
	color: #fff;
	font-size: 14px;
	padding: 18px 10px;
	border: 1px solid #001365;
	font-weight: bold;
	text-align: center;
}
.btn01 a span{ position: relative; padding-right: 25px; }
.btn01 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }
 .btn01 a:hover{
	background: #fff;
	opacity: 1;
 }
 .btn01 a:hover span{
	color: #001365;
 }
 .btn01 a:hover span::after{
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
 }


.btn02{
	max-width: 300px;
	width: 100%;
}
.btn02 a{
	display: block;
	background: #fff;
	color: #001365;
	font-size: 14px;
	padding: 18px 10px;
	border: 1px solid #001365;
	font-weight: bold;
	text-align: center;
}
.btn02 a span{ position: relative; padding-right: 25px; }
.btn02 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
 }
 .btn02 a:hover{
	background: #001365;
	opacity: 1;
 }
 .btn02 a:hover span{
	color: #fff;
 }
 .btn02 a:hover span::after{
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }

.btn03{
	max-width: 300px;
	width: 100%;
}
.btn03 a{
	display: block;
	background: #001365;
	color: #fff;
	font-size: 14px;
	padding: 18px 10px;
	border: 1px solid #001365;
	font-weight: bold;
	text-align: center;
}
.btn03 a span{ position: relative; padding-left: 25px; }
.btn03 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(225deg);
    -moz-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }
 .btn03 a:hover{
	background: #fff;
	opacity: 1;
 }
 .btn03 a:hover span{
	color: #001365;
 }
 .btn03 a:hover span::after{
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
 }

.btn04{
	max-width: 300px;
	width: 100%;
}
.btn04 a{
	display: block;
	background: #fff;
	color: #001365;
	font-size: 14px;
	padding: 18px 10px;
	border: 1px solid #001365;
	font-weight: bold;
	text-align: center;
}
.btn04 a span{ position: relative; padding-left: 25px; }
.btn04 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(225deg);
    -moz-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg);
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
 }
 .btn04 a:hover{
	background: #001365;
	opacity: 1;
 }
 .btn04 a:hover span{
	color: #fff;
 }
 .btn04 a:hover span::after{
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }

.btn05{
	max-width: 400px;
	width: 100%;
}
.btn05 a{
	border-radius: 5px;
	display: block;
	background: #ff7200;
	color: #fff;
	font-size: 18px;
	padding: 22px 10px;
	border: 1px solid #ff7200;
	font-weight: bold;
	text-align: center;
}
.btn05 a span{ position: relative; padding-right: 25px; }
.btn05 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }
 .btn05 a:hover{
	background: #fff;
	opacity: 1;
 }
 .btn05 a:hover span{
	color: #ff7200;
 }
 .btn05 a:hover span::after{
    border-top: 2px solid #ff7200;
    border-right: 2px solid #ff7200;
 }
.btn06{
	display: inline-block;
}
.btn06 a{
	text-align: left;
	display: block;
	background: #001365;
	color: #fff;
	font-size: 14px;
	padding: 18px 50px;
	border: 1px solid #001365;
	font-weight: bold;
	text-align: center;
}
.btn06 a span{ position: relative; padding-right: 25px; display: block; }
.btn06 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }
 .btn06 a:hover{
	background: #fff;
	opacity: 1;
 }
 .btn06 a:hover span{
	color: #001365;
 }
 .btn06 a:hover span::after{
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
 }
.btn07{
	display: inline-block;
 }
.btn07 a{
	display: block;
	background: #fff;
	color: #001365;
	font-size: 14px;
	padding: 18px 50px;
	border: 1px solid #001365;
	font-weight: bold;
	text-align: left;
	text-align: center;
}
.btn07 a span{ position: relative; padding-right: 25px; display: block; }
.btn07 a span::after{
	position: absolute;
	content: " ";
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #001365;
    border-right: 2px solid #001365;
 }
 .btn07 a:hover{
	background: #001365;
	opacity: 1;
 }
 .btn07 a:hover span{
	color: #fff;
 }
 .btn07 a:hover span::after{
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
 }
 .btn08{ max-width:265px; display: block; text-align: center; }
 .btn08 a{
 	display: block;
 	background: #7683ba;
 	border-radius: 5px;
 	padding: 10px;
 	font-size: 18px;
 	color: #fff;
 	font-weight: bold;
	text-align: center;
 }
 .btn08 span{
 	letter-spacing: 3px;
 	vertical-align: middle;
 	padding: 5px 25px 5px 35px;
 	background: url(../images/common/icon_book.png) no-repeat left center, url(../images/common/icon_w.png) no-repeat center right;
 }

.inner1020 .btn01,
.inner1020 .btn02,
.inner1020 .btn03,
.inner1020 .btn04,
.inner1020 .btn05,
.inner1020 .btn06,
.inner1020 .btn07,
.inner1020 .btn08{ margin: 0 auto; }



.table01{border-collapse: collapse; border-top: 1px solid #ccc;}
.table01 caption{ margin-bottom: 20px; font-size: 16px;}
.table01 tr{border-bottom: 1px solid #ccc;}
.table01 td:nth-child(1){
	width: 200px;
	padding: 10px 0;
	font-size: 14px;
}
.table01 td:nth-child(2){
	width: calc(100% - 210px);
	padding: 15px 0;
}
.table01 input[type="text"],
.table01 input[type="email"]{
	height: 35px;
	max-width: 500px;
	width: 100%;
	font-size: 16px;
	padding: 5px;
}
.table01 textarea{ width: 100%; height: 90px; font-size: 16px; padding: 5px;}
.table01 .opinion textarea { width: 100%; height: 130px; }
.table01 select {
    height: 35px;
    width: 200px;
    font-size: 14px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    text-align: left;
    padding: 7px 5px 7px 10px;
    background: url(../images/common/icon_select02.png) no-repeat right 7px center #fff;
    background-size: 10px;
    width: 140px;
    cursor: pointer;
}
.table01 .align_top{ vertical-align: top; }
.table01 .sex label:first-child{ margin: 0; }

.submit_btn{
    max-width: 250px;
    width: 100%;
    display: block;
    margin: 0 auto;
    position: relative;
}
input[type="submit"]{
	display: block;
	width: 100%;
	padding: 15px 20px;
    -webkit-appearance: none;
    border-radius: 0;
    box-shadow: none;
    border: 1px solid #000;
    background: #fff;
    font-size: 15px;
    cursor: pointer;
    transition: 0.4s;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -ms-transition: 0.4s;
}
input[type="submit"]:hover{
	background: #000;
	color: #fff;
}
input[type="reset"]:hover{
	background: #001365;
	color: #fff;
}
.submit_btn::before{
	position: absolute;
	content: " ";
	top: 0;
	right: 20px;
	bottom: 0;
	margin: auto;
	display: block;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transition: 0.4s;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -ms-transition: 0.4s;
}
.submit_btn:hover::before{ border-top: 1px solid #fff; border-right: 1px solid #fff; }

.table01 input[type="radio"]{
    display: none;
}
.table01 label{
    display: inline-block;
    position: relative;
    cursor: pointer;
    margin-left: 20px;
    padding: 10px 20px;
    border-radius: 2px;
    font-size: 14px;
    text-align: center;
    line-height: 1;
}
.table01 label:before{
    position: absolute;
    content: "";
    top: 50%;
    left: -10px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: #fff;
    border-radius: 50%;
    border: 1px solid #001365;
}
.table01 input[type="radio"]:checked + span:after {
    position: absolute;
    content: "";
    top: 50%;
    left: -6px;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    border-radius: 50%;
    background: #001365;
}


/*ファイルのリスト*/
 .pdf_link a{
 	text-align: left;
 	display: block;
 	color: #cd4040;
 	font-size: 14px;
 	line-height: 25px;
 	padding-left: 25px;
 	background: url(../images/common/icon_pdf.png) no-repeat left top;
 }
 .exls_link a{
 	text-align: left;
 	display: block;
 	color: #3b8768;
 	font-size: 14px;
 	line-height: 25px;
 	padding-left: 25px;
 	background: url(../images/common/icon_exls.png) no-repeat left top;
 }
 .word_link a{
 	text-align: left;
 	display: block;
 	color: #2d6ad0;
 	font-size: 14px;
 	line-height: 25px;
 	padding-left: 25px;
 	background: url(../images/common/icon_word.png) no-repeat left top;
 }

/*書籍リンク*/
.book_list { overflow: hidden; }
.book_list li {
	float: left;
	width: 24%;
    margin: 0 1.3% 2% 0;
    text-align: left;
}
.book_list li a{display: block;}
.book_list li:nth-child(4n){ margin-right: 0; }
.book_list .book_fr {
    padding: 15px;
    border: 1px solid #ccc;
    height: 250px;
    margin-bottom: 5px;
    overflow: hidden;
    text-align: center;
	background-color: #fff;
}
.book_list .book_fr img{
    display: inline-block;
    height: 100%;
    max-width: 100%;
    box-shadow: 0 0 7px #333;
}
.book_list .book_cap {
    height: 100%;
    width: 100%;
}
.book_list .book_ttl{
	font-weight: bold;
	font-size: 16px;
	line-height: 25px;
}
.book_list .book_author{
	font-size: 13px;
	line-height: 20px;
	position: relative;
	padding-left: 30px;
}
.book_list .book_author::after{
	content: "著／";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 13px;
	color: #919191;
}
.book_list .book_author.book_size::after {
    content: "判／";
    position: absolute;
    top: 0;
    left: 0;
}
.book_list .book_author.book_price{ padding-left: 45px; }
.book_list .book_author.book_price::after {
    content: "価格／";
    position: absolute;
    top: 0;
    left: 0;
}

/*QA*/
.qa_area li{ margin-bottom: 30px; }
.qa_area li:last-child{ margin-bottom: 0; }
.qa_area .question{
	text-align: left;
	display: block;
	padding: 15px 50px 15px 75px;
	position: relative;
	font-size: 16px;
	font-weight: bold;
	background: url(../images/common/icon_plus.png) no-repeat right 20px center #f0f3f8;
    cursor: pointer;
}
.qa_area .question.actv{ background: url(../images/common/icon_minus.png) no-repeat right 20px center #f0f3f8; }
.qa_area .question::before{
    content: "";
    background: #000f7d;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 54px;
    z-index: 100;
}
.qa_area .question::after{
	font-family: Calibri;
    content: "Q.";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    color: #fff;
    font-size: 35px;
    font-weight: 400;
    z-index: 100;
    font-weight: bold;
    height: 29px;
    width: 54px;
    text-align: center;
}
.qa_area .answer{
	text-align: left;
	display: none;
	padding: 15px 50px 15px 75px;
	position: relative;
	font-size: 16px;
	font-weight: bold;
	margin-top: 10px;
}
.qa_area .answer::before{
	font-family: Calibri;
    content: "A.";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 54px;
    color: #000f7d;
    font-size: 35px;
    padding: 13px 0;
    font-weight: 400;
    z-index: 100;
    font-weight: bold;
    text-align: center;
}
.qa_area .question:hover::before{ opacity: 1; }





@font-face { font-family: 'HanSerifBold'; src: url(/comictom/css/font/SourceHanSerifJP-Bold.otf); }
@font-face { font-family: 'HanSerifMedium'; src: url(/comictom/css/font/SourceHanSerifJP-Medium.otf); }
@font-face { font-family: 'HanSerifRegular'; src: url(/comictom/css/font/SourceHanSerifJP-Regular.otf); }
@font-face { font-family: 'FuturaBook'; src: url(/comictom/css/font/FuturaBookfont.ttf); }
@font-face { font-family: 'FuturaMediumBt'; src: url(/comictom/css/font/futuramediumbt.ttf); }

/* TOM-comp
-------------------------*/
.min{font-family: "HanSerifRegular", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
.en{font-family: 'Cabin', sans-serif;}
.futura{font-family: 'FuturaBook', sans-serif; }
.futuraBD{font-family: 'FuturaMediumBt', sans-serif; }

.tom_ttl01{
	font-size: 50px;
	letter-spacing: 10px;
	line-height: 35px;
}
.tom_ttl01 span{
	font-size: 18px;
	letter-spacing: 3px;
	font-weight: bold;
	position: relative;
}
.tom_ttl01 span::after{
	content: " ";
	position: absolute;
	top: 0;
	left: -120px;
	bottom: 0;
	margin: auto;
	display: block;
	width: 81px;
	height: 14px;
	background: url(/comic_tom/images/common/icon_ttl01_a.png) no-repeat center;
	background-size: cover;
}
.tom_ttl01 span::before{
	content: " ";
	position: absolute;
	top: 0;
	right: -120px;
	bottom: 0;
	margin: auto;
	display: block;
	width: 81px;
	height: 14px;
	background: url(/comic_tom/images/common/icon_ttl01_b.png) no-repeat center;
	background-size: cover;
}
.tom_ttl02{ font-size: 14px; line-height: 30px; letter-spacing: 1px; font-weight: 500;}
.tom_ttl02 span{ font-size: 28px; }
.tom_ttl03{
	font-size: 35px;
	padding-bottom: 5px;
	border-bottom: 7px double #02acab;
	display: inline-block;
	position: relative;
	z-index: 1;
}
.tom_ttl03 span{
	font-size: 22px;
	padding-right: 10px;
}
.tom_ttl03::before{
	content: " ";
	position: absolute;
	top: 0;
	left: -45px;
    bottom: 10px;
	margin: auto;
	display: block;
	background-color: #02acab;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #fff), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #fff),color-stop(.75, #fff), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 12px 12px;
	width: 65px;
    height: 65px;
	border-radius: 100%;
	opacity: 0.8;
	z-index: -1;
}
.tom_ttl03::after{
	content: "Pick Ups!";
	position: absolute;
	top: -25px;
	left: -30px;
	font-family: 'FuturaBook', sans-serif;
	font-size: 14px;
	transform: rotate(-10deg);
	-webkit-transform: rotate(-10deg);
	-moz-transform: rotate(-10deg);
	-ms-transform: rotate(-10deg);
}
.tom_ttl04{
	border-left: 10px solid #fedc3d;
	background: #fffae3;
	font-size: 24px;
	font-weight: bold;
	padding: 15px 10px;
	line-height: 30px;
}
.tom_ttl05{
	background: #02acab;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	padding: 10px;
}
.tom_ttl06{
    width: 100%;
    display: block;
    font-weight: bold;
    font-size: 20px;
    position: relative;
    padding-left: 15px;
}
.tom_ttl06::after {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    height: 90%;
    width: 10px;
    background: #02acab;
    border-radius: 5px;
}
.tom_ttl07{
	font-size: 18px;
	font-weight: bold;
	color: #58b7b6;
}

.tom_btn01{ max-width: 315px; width: 100%; margin: 0 auto; }
.tom_btn01 a{
    display: block;
    background: #02acab;
    color: #fff;
    font-size: 16px;
    text-align: center;
    font-weight: bold;
    position: relative;
    padding: 16px 40px;
    letter-spacing: 3px;
}
.tom_btn01 a::after{
	content: " ";
	position: absolute;
	top: 12px;
    right: -30px;
	background: url(/comic_tom/images/common/icon_arrow.png) no-repeat center;
	background-size: cover;
	width: 67px;
	height: 17px;
	transition: 0.4s;
	-moz-transition: 0.4s;
	-webkit-transition: 0.4s;
	-ms-transition: 0.4s;
}
.tom_btn01 a:hover{ opacity: 1; }
.tom_btn01 a:hover::after{ right: -45px; }
.tom_btn02{
	max-width: 180px;
    margin: 0 auto;
    width: 100%;
    background: #fedc3d;
    border-radius: 6px;
    border-bottom: 4px solid #ffb517;
    text-align: center;
    margin-left: 0;
    margin-top: 20px;
}
.tom_btn02 span{
	background: url(/comic_tom/images/common/icon_book.png) no-repeat left top 8px;
	background-size: 15px;
	text-align: center;
	font-size: 12px;
	line-height: 30px;
	font-weight: bold;
	padding: 5px 5px 5px 20px;
}
.tom_btn03 {
    display: block;
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.tom_btn03 a{
    display: block;
    font-size: 16px;
    font-weight: bold;
    background: #fff;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    padding: 14px 5px;
    letter-spacing: 2px;
}
.tom_btn03 a:hover{ background: #fedc3d; opacity: 1; }
.tom_btn03 a span {
    padding: 5px 32px 5px 32px;
    position: relative;
}
.tom_btn03 a .left_arw::before,
.tom_btn03 a .left_arw::after{
    position: absolute;
    content: " ";
    top: 0;
    left: 12px;
    bottom: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
}
.tom_btn03 a .left_arw::before{ left: 6px; }
.tom_btn04{ max-width: 300px; width: 100%; }
.tom_btn04 a{
    display: block;
    font-weight: bold;
    font-size: 14px;
    background: #fff;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    line-height: 30px;
    padding: 10px;
    text-align: center;
}
.tom_btn04 a:hover{ background: #fedc3d; opacity: 1; }
.tom_btn04 a span{ padding: 0 30px; position: relative; display: inline-block; }
.tom_btn04 a span::before,
.tom_btn04 a span::after{
	content: " ";
	position: absolute;
	top: 0;
    left: 12px;
    bottom: 0;
	margin: auto;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
}
.tom_btn04 a span::before { left: 6px; }

.tom_btn05{ max-width: 300px; width: 100%; }
.tom_btn05 a{
    display: block;
    font-weight: bold;
    font-size: 14px;
    background: #fff;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    line-height: 30px;
    padding: 10px;
    text-align: center;
}
.tom_btn05 a:hover{ background: #fedc3d; opacity: 1; }
.tom_btn05 a span{ padding: 0 30px; position: relative; display: inline-block; }
.tom_btn05 a span::before,
.tom_btn05 a span::after{
	content: " ";
	position: absolute;
	top: 0;
    right: 12px;
    bottom: 0;
	margin: auto;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.tom_btn05 a span::before { right: 6px; }

.tom_btn06{ max-width: 300px; width: 100%; }
.tom_btn06 a{
    display: block;
    font-weight: bold;
    font-size: 14px;
    background: #fedc3d;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    line-height: 30px;
    padding: 10px;
    text-align: center;
}
.tom_btn06 a:hover{ background: #fff; opacity: 1; }
.tom_btn06 a span{ padding: 0 30px; position: relative; display: inline-block; }
.tom_btn06 a span::before,
.tom_btn06 a span::after{
	content: " ";
	position: absolute;
	top: 0;
    left: 12px;
    bottom: 0;
	margin: auto;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
}
.tom_btn06 a span::before { left: 6px; }

.tom_btn07{ max-width: 300px; width: 100%; }
.tom_btn07 a{
    display: block;
    font-weight: bold;
    font-size: 14px;
    background: #fedc3d;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    line-height: 30px;
    padding: 10px;
    text-align: center;
}
.tom_btn07 a:hover{ background: #fff; opacity: 1; }
.tom_btn07 a span{ padding: 0 30px; position: relative; display: inline-block; }
.tom_btn07 a span::before,
.tom_btn07 a span::after{
	content: " ";
	position: absolute;
	top: 0;
    right: 12px;
    bottom: 0;
	margin: auto;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.tom_btn07 a span::before { right: 6px; }

.tom_btn08{ display: inline-block; }
.tom_btn08 a{
    display: block;
    font-weight: bold;
    font-size: 14px;
    background: #fff;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    line-height: 30px;
    padding: 10px 20px;
    text-align: center;
}
.tom_btn08 a:hover{ background: #fedc3d; opacity: 1; }
.tom_btn08 a span{ padding: 0 30px 0 0; position: relative; display: inline-block; }
.tom_btn08 a span::before,
.tom_btn08 a span::after{
	content: " ";
	position: absolute;
	top: 0;
    right: 12px;
    bottom: 0;
	margin: auto;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.tom_btn08 a span::before { right: 6px; }

.tom_btn09{ display: inline-block; }
.tom_btn09 a{
    display: block;
    font-weight: bold;
    font-size: 14px;
    background: #fff;
    border: 1px solid #000;
    border-bottom: 4px solid #000;
    line-height: 30px;
    padding: 10px 20px;
    text-align: center;
}
.tom_btn09 a:hover{ background: #fedc3d; opacity: 1; }
.tom_btn09 a span{ padding: 0 0 0 30px; position: relative; display: inline-block; }
.tom_btn09 a span::before,
.tom_btn09 a span::after{
	content: " ";
	position: absolute;
	top: 0;
    left: 12px;
    bottom: 0;
	margin: auto;
	width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
}
.tom_btn09 a span::before { left: 6px; }











/*	パンくずリスト
--------------------*/
.bread{ border-bottom: 1px solid #000f7d; padding: 0 10px; }
.bread .bread_crumb{
	max-width: 1000px;
	margin: 0 auto;
	padding: 5px 0;
	display: block;
	text-align: left;
}
.bread .bread_crumb li{
	display: inline-block;
	font-size: 12px;
}
.bread .bread_crumb li a{
	display: inline-block;
	position: relative;
	font-size: 12px;
	padding-right: 15px;
}
.bread .bread_crumb li a::after{
	position: absolute;
    content: "・";
    top: 0;
    right: 2px;
    bottom: 0
    margin: auto;
}
.bread .bread_crumb li a:last-child{
	display: inline-block;
	position: relative;
	font-size: 12px;
	padding-right: 30px;
}
.bread .bread_crumb li a:last-child::after{
	position: absolute;
    content: " ";
    top: 0;
    right: 12px;
    bottom: 0;
    margin: auto;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid #000;
    border-right: 1px solid #000;
}


/*=============================
	TOP-pade setting
===============================*/

/*	header
-------------------------------*/
header .slider-top-sp.pn{display: none;}
header .slide_area { position: relative; }
header .slider-top .slick-slide{text-align: center;}
header .slider-top .slick-slide img{
	width: 100%;
	display: block;
	margin: 0 auto;
}
header .slider-top .slick-arrow {
    position: absolute;
    text-indent: -9999px;
    overflow: hidden;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-top: -10px !important;
    border: none;
    width: 20px;
    height: 20px;
    top: 50%;
    box-sizing: border-box;
    background-color: transparent;
    z-index: 3;
    transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
}
header .slider-top{position: relative;}
header #slider-nav .slick-track{ transform: inherit!important; }
header #slider-nav li img{ cursor: pointer; }
header #slider-nav li img:hover{ opacity: 0.6; }
header .slider-top .slick-arrow.slick-prev {
	position: absolute;
	top: 0;
    left: 0;
    right: 1260px;
    bottom: 0;
    margin: auto!important;
    z-index: 100000;
    border-left: 4px solid #fff;
    border-bottom: 4px solid #fff;
    width: 60px;
    height: 60px;
}
header .slider-top .slick-arrow.slick-next {
	position: absolute;
	top: 0;
    left: 1260px;
    right: 0;
    bottom: 0;
    margin: auto!important;
    border-right: 4px solid #fff;
    border-top: 4px solid #fff;
    width: 60px;
    height: 60px;
}
header .slider-top a.slide.slick-slide{
  position: relative;
  z-index: 0;
  overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
}
header .slider-top a.slide.slick-slide:before{
  content: '';
  background: inherit;/*.bgImageで設定した背景画像を継承する*/
  -webkit-filter: blur(3px);
  -moz-filter: blur(3px);
  -o-filter: blur(3px);
  -ms-filter: blur(3px);
  filter: blur(3px);
  position: absolute;
  /*ブラー効果で画像の端がボヤけた分だけ位置を調整*/
  top: -3px;
  left: -3px;
  right: -3px;
  bottom: -3px;
  z-index: -1;/*重なり順序を一番下にしておく*/
}
header .slider-top a.slide.slick-slide.slick-current.slick-active.slick-center:before{display: none;}
header .search_area {
    display: block;
    max-width: 750px;
    width: 100%;
    height: 100px;
    background: rgba(255,255,255,0.6);
    padding: 15px 20px;
    border-radius: 4px;
    position: absolute;
    bottom: 0%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
header .search_area input[type='text'] {
	-webkit-appearance: none;
    float: left;
    width: 83%;
    border-radius: 5px 0 0 5px;
    height: 70px;
    border: none;
    font-size: 17px;
    padding-left: 60px;
    border: 1px solid #ddd;
    padding-top: 10px;
    border-right: none;
    background: url(../images/common/icon_search02.png) no-repeat left 20px center #fff;
}
header .search_area input[type='submit'] {
	-webkit-appearance: none;
	float: right;
    width: 17%;
    border-radius: 3px;
    height: 70px;
    border: none;
    background: #000f7d;
    color: #fff;
    font-size: 17px;
    cursor: pointer;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -ms-transition: 0.4s;
    transition: 0.4s;
}
header .search_area input[type='submit']:hover{ background: #000; }
header .search_area input::placeholder{
    font-weight: normal;
    font-size: 22px;
    color: #ccc;
    line-height: 30px;
    font-family: 'Noto Sans Japanese', serif;
}

@-moz-document url-prefix() {
	header .search_area input[type="text"] { padding-top: 17px; }
}
header .search_area input[type="text"]{
  padding-top: 0px\9; /* IE10以下 */
}

@media all and (-ms-high-contrast: none){
  header .search_area input[type="text"]{
    padding-top: 0px; /* IE10以上 */
  }
}


header .top_bnr_area{ background: #f2f3f8; padding: 0 10px; }
header .top_bnr_area .inner1000{ overflow: hidden; padding: 15px 0; }
header .top_bnr_area .inner1000 li{
	float: left;
	width: 19%;
	margin-right: 1.2%;
}
header .top_bnr_area .inner1000 li:last-child{ margin-right: 0; }
header .top_bnr_area .inner1000 li a,
header .top_bnr_area .inner1000 li img{ display: block; width: 100%; }


/*.top_conts01
------------------------*/
.top_conts01{
	margin-top: 50px;
  margin-bottom: 90px;
  padding-bottom: 150px;
  background: url(../images/top/bt_wv.png) no-repeat bottom center;
}
.top_conts01 .topics_btn ul{
	overflow: hidden;
}
.top_conts01 .topics_btn ul li{
    float: left;
    width: 16.6%;
    display: block;
    text-align: center;
}
.top_conts01 .topics_btn ul li a{
	display: block;
    color: #333;
    font-size: 14px;
    font-weight: bold;
    background: #fff;
    padding: 15px 0;
    border: 1px solid #ccc;
    border-bottom: 3px solid #000f7d;
    border-right: none;
    cursor: pointer;
}
.top_conts01 .topics_btn ul li:last-child{margin-right: 0; width: 17%; }

.top_conts01 .topics_btn ul li:last-child a{ border-right: 1px solid #ccc; }
.top_conts01 .topics_btn ul li a:hover{
  color: #fff;
  background: #3a3a3a;
}
.top_conts01 .topics_btn ul .fade_btn.active01{
    color: #fff;
    background: #000f7d;
  }
.top_conts01 .fade_area{
    display: none;
    opacity: 0;
    transition: 1s;
    background: #f0f3f8;
    min-height: 200px;
    padding: 70px 35px;
  }
.top_conts01 .fade_area.active_area{display: block;opacity: 1;}

.top_conts01 .topic_list {overflow: hidden; padding: 5px;}
.top_conts01 .topic_list li{
	float: left;
	width: 24%;
    margin-right: 1.3%;
    margin-bottom: 30px;
    text-align: left;
}
.top_conts01 .topic_list li.table_title {
    text-align: center;
    width: 100%;
    float: none;
    margin: 0;
    font-weight: bold;
}
.top_conts01 .topic_list li:nth-child(4),
.top_conts01 .topic_list li:nth-child(5n + 9){margin-right: 0;}
.top_conts01 .topic_list li a,
.top_conts01 .topic_list li img{ width: 100%; display: block; }
.top_conts01 .topic_list .img_bg {
    margin-bottom: 10px;
    box-shadow: 0 0 10px #cdcdcd;
}
.top_conts01 .topic_list li .date{
	display: block;
	color: #6f6f6f;
	font-size: 12px;
}
.top_conts01 .topic_list li.new .date{ position: relative; padding-left: 45px; }
.top_conts01 .topic_list li.new .date::after{
	position: absolute;
    content: "NEW";
    color: #fff;
    font-size: 11px;
    padding: 1px 7px;
    top: 2px;
    left: 0;
    background: #f83b3b;
    border-radius: 3px;
    line-height: 15px;
}

.top_conts01 .topic_list li .ttl{
	display: block;
	font-size: 14px;
	font-weight: bold;
	line-height: 25px;
}
.top_conts01 .fade_area .btn01 {
    margin: 0 auto;
}
.top_conts01 .ttl05{
	padding-top: 55px;
	background: url(../images/common/icon_wv.png) no-repeat center top;
	margin-bottom: 40px;
}

/*.top_conts02
------------------------*/
.top_conts02 {
	background: #f2f3f8;
	position: relative;
	padding: 140px 0 100px 0;
}
.top_conts02 .ttl05{
	line-height: 35px;
	position: absolute;
	width: 100%;
	text-align: center;
	top: -18px;
	left: 0;
}
.top_conts02 .new_magaz{
	border-bottom: 4px double #000f7d;
	border-top: 4px double #000f7d;
	max-width: 700px;
    margin: 0 auto 65px auto;
    padding-bottom: 30px;
}
.top_conts02 .new_magaz h4{
	display: block;
	text-align: left;
	margin-top: -30px;
	margin-bottom: 25px;
}
.top_conts02 .new_magaz h4 b{
	background: #f2f3f8;
}
.top_conts02 .new_magaz h4 span{
	background: #000f7d;
    color: #fff;
    font-size: 30px;
    display: inline-block;
    padding: 10px;
    margin-right: 9px;
    font-weight: 400;
}
.top_conts02 .new_magaz .left{
	float: left;
	width: 48%;
}
.top_conts02 .new_magaz .right{
	float: right;
	width: 48%;
}
.top_conts02 .new_magaz .w_clmn{
	overflow: hidden;
	text-align: left;
}
.top_conts02 .new_magaz .w_clmn img{display: block; width: 100%;}
.top_conts02 .new_magaz .w_clmn .img_clmn{
	float: left;
	width: 49%;
	box-shadow: 0 0 10px #cdcdcd;
}
.top_conts02 .new_magaz .w_clmn .txt_list{
	float: right;
	width: 48%;
}
.top_conts02 .new_magaz .w_clmn .ttl{
	color: #000f7d;
	font-size: 28px;
	line-height: 35px;
	font-weight: bold;
	margin-bottom: 10px;
}
.top_conts02 .new_magaz .w_clmn .ttl.pump{ font-size: 24px; }
.top_conts02 .new_magaz .w_clmn .ttl a{
	display: inline-block;
    width: 67px;
    background: url(../images/common/tab_btn.png) no-repeat center;
    background-size: contain;
    height: 25px;
    vertical-align: sub;
}
.top_conts02 .new_magaz .w_clmn .about{
	color: #000f7d;
	font-size: 14px;
	line-height: 25px;
	margin-bottom: 10px;
	font-weight: bold;
}
.top_conts02 .new_magaz .w_clmn .price{
	font-weight: bold;
	font-size: 18px;
	color: #000f7d;
	margin-bottom: 10px;
}
.top_conts02 .new_magaz .w_clmn .detail{ margin-bottom: 10px; }
.top_conts02 .new_magaz .w_clmn .detail a{
	display: block;
	color: #fff;
	font-size: 14px;
	text-align: center;
	border-radius: 3px;
	width: 130px;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1acbc5+0,32b4b9+50,39aeb5+100 */
background: #1acbc5; /* Old browsers */
background: -moz-linear-gradient(top, #1acbc5 0%, #32b4b9 50%, #39aeb5 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #1acbc5 0%,#32b4b9 50%,#39aeb5 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #1acbc5 0%,#32b4b9 50%,#39aeb5 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1acbc5', endColorstr='#39aeb5',GradientType=0 ); /* IE6-9 */
}
.top_conts02 .new_magaz .w_clmn .subscribe a{
	display: block;
	color: #fff;
	font-size: 14px;
	text-align: center;
	border-radius: 3px;
	width: 130px;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ff9e00+0,ff7300+50,ff7200+100 */
background: #ff9e00; /* Old browsers */
background: -moz-linear-gradient(top, #ff9e00 0%, #ff7300 50%, #ff7200 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #ff9e00 0%,#ff7300 50%,#ff7200 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #ff9e00 0%,#ff7300 50%,#ff7200 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9e00', endColorstr='#ff7200',GradientType=0 ); /* IE6-9 */
}
.top_conts02 .book_sch h4{
	padding: 0 55px;
	font-size: 19px;
	letter-spacing: 4px;
	margin-bottom: 35px;
	display: inline-block;
	background: url(../images/common/icon_thr.png) no-repeat left center,
	url(../images/common/icon_thr.png) no-repeat right center;
}
.top_conts02 .book_sch h4 b{
	color: #000f7d;
	font-size: 50px;
}
.top_conts02 .book_sch .topics_btn ul{
	overflow: hidden;
}
.top_conts02 .book_sch .topics_btn ul li{
    float: left;
    width: 14.2%;
    display: block;
    text-align: center;
}
.top_conts02 .book_sch .topics_btn ul li a{
	display: block;
    color: #333;
    font-size: 14px;
    font-weight: bold;
    background: #fff;
    padding: 15px 0;
    border: 1px solid #ccc;
    border-bottom: 3px solid #000f7d;
    border-right: none;
    cursor: pointer;
}
.top_conts02 .book_sch .topics_btn ul li:last-child{margin-right: 0; width: 14.6%; }

.top_conts02 .book_sch .topics_btn ul li:last-child a{ border-right: 1px solid #ccc; }
.top_conts02 .book_sch .topics_btn ul li a:hover{
  color: #fff;
  background: #3a3a3a;
}
.top_conts02 .book_sch .topics_btn ul .fade_btn02.active01{
    color: #fff;
    background: #000f7d;
  }
.top_conts02 .book_sch .fade_area02{
    display: none;
    opacity: 0;
    transition: 1s;
    background: #fff;
    min-height: 200px;
    padding: 30px;
  }
.top_conts02 .book_sch .fade_area02.active_area{display: block;opacity: 1;}

.top_conts02 .book_sch .topic_list {overflow: hidden; padding: 5px;}
.top_conts02 .book_sch .topic_list li{
	float: left;
	width: 11%;
    margin-right: 1.7%;
    margin-bottom: 20px;
    text-align: left;
}
.top_conts02 .book_sch #fade_area05_a .topic_list li{
	float: none;
    width: 18%;
    margin: 0 3px 6px 3px;
    display: inline-block;
}
.top_conts02 .book_sch #fade_area07_a .topic_list li {
    display: inline-block;
    float: none;
    width: 20%;
    margin: 1%;
    vertical-align: middle;
}
.top_conts02 .book_sch #fade_area07_a .topic_list{ overflow: inherit;}
.top_conts02 .book_sch #fade_area07_a .topic_list li a{position: relative;}
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(1) a::after {
	content: "1";
    font-family: 'Cabin', sans-serif;
    color: #fff;
    font-size: 30px;
    font-style: italic;
    position: absolute;
    top: -21px;
    left: -37px;
    background: url(../images/common/icon_crown.png) no-repeat center;
    width: 71px;
    height: 45px;
    font-weight: bold;
    line-height: 58px;
    text-align: center;
    padding-right: 10px;
    background-size: cover;
}
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(3) a::after,
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(2) a::after{
    position: absolute;
    top: 0;
    left: 0;
    content: "2";
    font-style: italic;
    padding: 8px 5px 0 0;
    color: #fff;
    width: 38px;
    height: 58px;
    font-size: 24px;
    text-align: center;
    font-weight: bold;
    background: url(../images/common/icon_crown02.png) no-repeat center;
    transition: inherit;
}
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(3) a::after{
	content: "3";
    background: url(../images/common/icon_crown03.png) no-repeat center;
}



.top_conts02 .book_sch .topic_list li:nth-child(8n){margin-right: 0;}
.top_conts02 .book_sch .topic_list li a,
.top_conts02 .book_sch .topic_list li img{ width: 100%; display: block; }
.top_conts02 .book_sch .topic_list .img_bg {
    margin-bottom: 10px;
    box-shadow: 0 0 10px #cdcdcd;
}
.top_conts02 .book_sch .topic_list li .date{
	display: block;
	color: #6f6f6f;
	font-size: 12px;
}
.top_conts02 .book_sch .topic_list li .date.new{ position: relative; padding-left: 45px; }
.top_conts02 .book_sch .topic_list li .date.new::after{
	position: absolute;
    content: "NEW";
    color: #fff;
    font-size: 11px;
    padding: 1px 7px;
    top: 2px;
    left: 0;
    background: #f83b3b;
    border-radius: 3px;
    line-height: 15px;
}

.top_conts02 .book_sch .topic_list li .ttl{
	display: block;
	font-size: 14px;
	font-weight: bold;
	line-height: 25px;
}
.top_conts02 .book_sch .fade_area02 .btn01 {
    margin: 0 auto;
}

/*	top_conts03
--------------------------*/
.top_conts03 {
    padding: 120px 10px 100px 10px;
    background: url(../images/common/icon_wv.png) no-repeat center top 50px;
}
.top_conts03 .inner1000{
	max-width: 700px;
	margin: 0 auto;
}
.top_bnr_list{
	overflow: hidden;
}
.top_bnr_list li{
	display: block;
	float: left;
	width: 32%;
	margin: 0 2% 2% 0;
}
.top_bnr_list li:nth-child(1),
.top_bnr_list li:nth-child(2){
	width: 49%;
}
.top_bnr_list li:nth-child(2),
.top_bnr_list li:nth-child(3n+5){
	margin-right: 0;
}
.top_bnr_list li img,
.top_bnr_list li a{display: block; width: 100%;}

/*	top_conts04
--------------------------*/
.top_conts04 {
    background: #f2f3f8;
    padding: 50px 0 110px 0;
}
.top_conts04 .ttl05{
	line-height: 30px;
	margin-bottom: 25px;
}
.top_conts04 .ttl05 span{
	font-size: 30px;
}
.top_conts04 .inner1000{
	max-width: 700px;
	margin: 0 auto;
}
.top_conts04 .timeline{ overflow: hidden; margin-bottom: 50px;}
.top_conts04 .timeline li{
	float: left;
	width: 49%;
}
.top_conts04 .timeline li a{ display: block;  }
.top_conts04 .timeline li:last-child{ float: right; }
.top_conts04 .timeline li img{ display: block; width: 100%; }

.top_conts04 .sns_btn{
	text-align: center;
}
.top_conts04 .sns_btn li{
	display: inline-block;
	width: 190px;
	margin: 0 15px;
}
.top_conts04 .sns_btn li a{
	display: block;
	font-size: 20px;
	font-weight: 400;
	color: #fff;
	padding: 5px 10px;
}
.top_conts04 .sns_btn li:nth-child(1) a{ background: #1b95e0; }
.top_conts04 .sns_btn li:nth-child(1) a span{ background: url(../images/common/icon_tw01.png) no-repeat left center; padding-left: 35px; }
.top_conts04 .sns_btn li:nth-child(2) a{ background: #4267b2; }
.top_conts04 .sns_btn li:nth-child(2) a span{ background: url(../images/common/icon_fb01.png) no-repeat left center; padding-left: 35px; }
.top_conts04 .sns_btn li:nth-child(3) a{ background: #cd201f; }
.top_conts04 .sns_btn li:nth-child(3) a span{ background: url(../images/common/icon_yt01.png) no-repeat left center; padding-left: 35px; }


/*=============================
	detail_book-pade setting
===============================*/
.detail_book01{overflow: hidden; margin: 30px 0 70px 0; padding: 0 10px; }
.detail_book01 .inner1000{ overflow: hidden; }
.detail_book01 .left{
	float: left;
	width: 65%;
	overflow: hidden;
}
.detail_book01 .left .thum{
	float: left;
	width: 38%;
}
.detail_book01 .left img{ display: block; width: 100%; }
.detail_book01 .left .details{
	float: right;
	width: 57%;
	text-align: left;
}
.detail_book01 .left .details dl{
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 1px dotted #ccc;
}
.detail_book01 .left .details dl dt{
	display: inline-block;
	vertical-align: middle;
	font-size: 13px;
	font-weight: bold;
	background: #f0f3f8;
	text-align: center;
	width: 100px;
	margin-right: 15px;
}
.detail_book01 .left .details dl dd{
	display: inline-block;
	vertical-align: middle;
	width:  calc(100% - 115px);
	font-size: 14px;
}
.detail_book01 .left .details dl.cate_name dd span{
	position: relative;
	padding-right: 14px;
}
.detail_book01 .left .details dl.cate_name dd span::after{
	content: "・";
    position: absolute;
    top: 0;
    right: 0px;
    bottom: 0;
    margin: auto;
    font-size: 14px;
    line-height: 20px;
    display: block;
}
.detail_book01 .left .details dl.cate_name dd span:last-child{padding-right: 0;}
.detail_book01 .left .details dl.cate_name dd span:last-child::after{ display: none; }
.detail_book01 .left .details .price{ font-weight: bold; color: #f3632a; }
.detail_book01 .left .details .price b{ font-size: 30px; }
.detail_book01 .right{
	float: right;
	width: 32%;
	background: #f0f3f8;
	padding: 25px;
}
.detail_book01 .right .huki {
  position: relative;
  padding: 7px 10px;
  font-size: 20px;
  font-weight: bold;
  background: #FFF;
  border: solid 2px #f3632a;
  color: #f3632a;
  width: 100%;
  border-radius: 5px;
  margin-bottom: 15px;
}
.detail_book01 .right .huki:before{
    content: "";
    position: absolute;
    bottom: -17px;
    left: 50%;
    margin-left: -8px;
    border: 7px solid transparent;
    border-top: 10px solid #FFF;
    z-index: 2;
}
.detail_book01 .right .huki:after{
	content: "";
    position: absolute;
    bottom: -22px;
    left: 50%;
    margin-left: -10px;
    border: 9px solid transparent;
    border-top: 12px solid #f3632a;
    z-index: 0;
}
.detail_book01 .right ul{overflow: hidden;}
.detail_book01 .right ul li{
	float: left;
	width: 48%;
	margin: 0 4% 4% 0;
}
.detail_book01 .right ul li:nth-child(2n){ margin-right: 0; }
.detail_book01 .right ul li a,
.detail_book01 .right ul li img { display: block; width: 100%;}
.detail_book01 .right.right_wt{
	background: none;
	border: 1px solid #000f7d;
	text-align: center;
	padding: 15px;
}
.detail_book01 .right.right_wt a{ display: block; }
.detail_book01 .right.right_wt a:hover img{ opacity: 1; }
.detail_book01 .right.right_wt .right_ttl{
	color: #000f7d;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 10px;
}
.detail_book01 .right.right_wt img{
	display: block;
	width: 100%;
	margin: 0 auto 10px auto;
}
.detail_book01 .right.right_wt .bt_txt{
	font-size: 12px;
	display: block;
	text-align: right;
}
.detail_book01 .right.right_wt .bt_txt span{
	display: inline-block;
	text-align: center;
	padding: 1px 10px 1px 25px;
	color: #000f7d;
	border: 1px solid #000f7d;
	border-radius: 3px;
	background: url(../images/common/icon_foucs.png) no-repeat left 5px center;
}
.detail_book02{ margin-bottom: 40px; }
.detail_book02 .tab_area{
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	padding: 10px;
	text-align: left;
	margin-bottom: 60px;
}
.detail_book02 .tab_area ul li{ display: inline-block; vertical-align: middle; border-left: 1px solid #ccc; }
.detail_book02 .tab_area ul li:last-child{ border-right: 1px solid #ccc; }
.detail_book02 .tab_area ul li a{
	position: relative;
	display: block;
	font-size: 15px;
	padding: 0 32px 10px 35px;
}
.detail_book02 .tab_area ul li a::after{
	position: absolute;
	content: " ";
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 5px;
    height: 5px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -ms-transition: 0.4s;
    transition: 0.4s;
}
.detail_book02 .blue_bg{ background: #f0f3f8; padding: 40px; }
.detail_book02 .white_bg{
	background: #fff;
	padding: 30px 40px;
	margin-bottom: 40px;
	width: 100%;
	text-align: left;
	overflow: hidden;
}
.detail_book02 .white_bg img{display: block; max-width: 100%; }
.detail_book02 .ttl02{margin-bottom: 30px; letter-spacing: 3px; }
.detail_book02 p{ font-size: 14px; }
.detail_book02 .submit_btn::before{ top: 23px; right: 20px; margin: 0; }
.detail_book02 #tab02 .left{ float: left; width: 50%; font-size: 14px;}
.detail_book02 #tab02 .right{ width: 30%; float: left; }
.detail_book02 #tab02 .right img{ display: block; width: 100%; }
.detail_book02 #tab03 .left{ float: left; width: 76%; font-size: 14px;}
.detail_book02 #tab03 .right{ width: 20%; float: right; }
.detail_book02 #tab03 .right img{ display: block; width: 100%; }
.detail_book02 #tab03 .name{ font-size: 17px; display: block; margin-bottom: 10px;}
.detail_book02 #tab04 .underline a{ text-decoration:underline; }
.detail_book02 #tab_b,
.detail_book02 #tab_b .ttl03{ text-align: center; margin-bottom: 20px; }
.detail_book02 #tab_b .about_txt { font-weight: bold; font-size: 16px; }
.detail_book02 #tab_b .btn05 { margin: 30px auto 0 auto; }
.detail_book02 #tab_a .btn01 { margin: 15px auto 0 auto; text-align: center; }
.detail_book02 #tab_b table{ text-align: left;}


.detail_book02 .in_table{padding: 0 20px;}
.detail_book02 table caption { text-align: left; }
.detail_book02 .policy{ font-size: 13px; line-height: 25px; margin-bottom: 30px; }
.detail_book02 .in_table .policy_txt{ padding: 20px 0; text-align: left; }
.detail_book03 { background: #f0f3f8; padding: 25px 10px 50px 10px; text-align: left;}
.detail_book03 .ttl04{ color: #000f7d; margin-bottom: 20px; }
.detail_book03 .genre { margin-bottom: 30px; }
.detail_book03 .genre dl{
	padding-bottom: 8px;
	margin-bottom: 8px;
}
.detail_book03 .genre dl dt{
	display: inline-block;
	vertical-align: middle;
	font-size: 13px;
	font-weight: bold;
	background: #fff;
	text-align: center;
	width: 100px;
	margin-right: 15px;
}
.detail_book03 .genre dl dd{
	display: inline-block;
	vertical-align: middle;
	width:  calc(100% - 115px);
	font-size: 14px;
}
.detail_book01 .left .details .gekkan_ttl{
	font-size: 40px;
	font-weight: bold;
	line-height: 35px;
	margin-bottom: 10px;
}
.detail_book01 .left .details .gekkan_ttl .pumpkin{
	font-size: 35px;
    line-height: 40px;
}
.detail_book01 .left .details .gekkan_ttl span{
	display: block;
	font-size: 15px;
}
.detail_book01 .left .details .gekkan_ttl img.sio{
	max-width: 77px;
	display: block;
	width: 100%;
}
.detail_book01 .left .details .btn_w{
	overflow: hidden;
	max-width: 265px;
	text-align: center;
	margin-top: 25px;
}
.detail_book01 .details .btn_den{
	display: block;
	float: left;
	width: 49%
}
.detail_book01 .details .btn_den a{
	display: block;
	border: 1px solid #000f7d;
	border-radius: 5px;
    padding: 12px 10px;
	color: #000f7d;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 3px;
}
.detail_book01 .details .btn_den span{
	background: url(../images/common/icon_tuch.png) no-repeat left center;
    padding: 10px 10px 10px 33px;
    background-size: 26px;
    color: #000f7d;
}
.detail_book01 .details .btn_tei{
	display: block;
	float: right;
	width: 49%
}
.detail_book01 .details .btn_tei a{
	border: 1px solid #ff7200;
	border-radius: 5px;
    padding: 12px 10px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	display: block;
	background: #ff7200;
	letter-spacing: 3px;
}
.detail_book01 .left .details .btn08 { clear: both; margin-top: 10px; max-width: 100%; width: 100%; margin-bottom: 0;  }



/*=============================
	authors-pade setting
===============================*/
	.authors{
		background: #f0f3f8;
		padding: 70px 10px;
	}
	.authors .ttl05{ text-align: center; margin-bottom: 25px; }
	.authors .white_bg{
		background: #fff;
		padding: 50px 70px;
		text-align: left;
	}
	.authors .initial_list{
		text-align: center;
		border: 1px solid #000;
		padding: 10px;
		width: 100%;
		display: block;
		margin-bottom: 40px;
	}
	.authors .initial_list li{ display: inline-block; }
	.authors .initial_list li a{
		display: block;
		color: #000f7d;
		font-size: 18px;
		line-height: 25px;
		padding: 0 20px 0 17px;
		border-right: 1px solid #ccc;
	}
	.authors .initial_list li:last-child a{border-right: none;}
	.authors .initials{
		width: 23%;
		margin-right: 2%;
		vertical-align: top;
		display: inline-block;
		margin-bottom: 50px;
	}
	.authors .authors_in .initials:nth-child(4n){margin-right: 0; }
	.authors .initials h3{ font-size: 22px; margin-bottom: 20px; }
	.authors .initials ul { padding-left: 15px; }
	.authors .initials ul li{ margin-bottom: 5px; font-size: 10px; list-style-type: disc;}
	.authors .initials ul li a{
		color: #001365;
		display: block;
		font-size: 14px;
		line-height: 25px;
	}

/*=============================
	detail_author-pade setting
===============================*/
.detail_author{ background: #f0f3f8; padding: 70px 10px; }
.detail_author .ttl01{ margin-bottom: 30px; }
.detail_author .ttl01 span{ font-size: 16px; }
.detail_author .white_bg{ background: #fff; padding: 50px 40px 60px 40px; text-align: left; }
.detail_author .prof_pic{ float: left; margin: 0 20px 15px 0; max-width: 200px; width: 50%; }
.detail_author .detail_txt { font-size: 14px; line-height: 25px; overflow: hidden; }
.detail_author02 { margin-top: 50px; }
.detail_author02 .ttl04 { margin-bottom: 20px; }
.detail_author02 .book_list { margin-bottom: 40px; }
.detail_author .btn01{ text-align: center; margin: 0 auto; max-width: 220px; }

/*=============================
	company-pade setting
===============================*/
	.company01{ padding: 0 10px 100px 10px; margin-top: 50px; }
	.company01 .index_list{ overflow: hidden; }
	.company01 .index_list li{
		float: left;
		width: 31%;
		margin: 0 3.5% 3.5% 0;
		display: block;
		border: 1px solid #ccc;
		border-top: 3px solid #001365;
		text-align: left;
	}
	.company01 .index_list li:nth-child(3n){margin-right: 0; }
	.company01 .index_list li a{
		display: block;
		position: relative;
		padding: 15px 15px 40px 15px;
	}
	.company01 .index_list li a:hover{background: #f1f3f5; opacity: 1;}
	.company01 .index_list li .cap{
		color: #001365;
		font-size: 20px;
		border-bottom: 2px solid #ccc;
		font-weight: bold;
		line-height: 30px;
		padding-bottom: 10px;
    	margin-bottom: 10px;
	}
	.company01 .index_list li .subtxt{ font-size: 14px; line-height: 25px;}
	.company01 .index_list li .bt_cap{
		position: absolute;
		bottom: 15px;
		right: 15px;
		color: #001365;
		font-size: 14px;
		font-weight: bold;
		padding-right: 10px;
		line-height: 25px;
	}
	.company01 .index_list li .bt_cap::after{
		position: absolute;
		content: " ";
		top: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		display: block;
		width: 7px;
		height: 7px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		border-top: 1px solid #000;
		border-right: 1px solid #000;
	}
	
/*=============================
	topics-pade setting
===============================*/
.topics_arcv{margin-top: 50px; }
.topics_arcv .topics_btn {
    background: #f0f3f8;
    padding: 25px 10px;
    margin-bottom: 70px;
    margin-top: -23px;
}
.topics_arcv .en_ttl{
    color: #001365;
    font-size: 21px;
    font-weight: bold;
    display: block;
    margin-bottom: 11px;
    letter-spacing: 3px;
}
.topics_arcv .topics_btn ul{ overflow: hidden; }
.topics_arcv .topics_btn ul li{
    float: none;
    width: 15.5%;
    display: inline-block;
    text-align: center;
    margin: 0 3px;
}
.topics_arcv .topics_btn ul li a{
	display: block;
    color: #333;
    font-size: 14px;
    font-weight: bold;
    background: #fff;
    padding: 10px 0;
    border: 1px solid #000f7d;
    cursor: pointer;
}

.topics_arcv .topics_btn ul li a:hover{ color: #fff; background: #3a3a3a; }
.topics_arcv .topics_btn ul .fade_btn.active01{ color: #fff; background: #000f7d; }
.topics_arcv .fade_area{
    display: none;
    opacity: 0;
    transition: 1s;
    -webkit-transition: 1s;
    -ms-transition: 1s;
    -moz-transition: 1s;
    min-height: 200px;
    padding: 70px 35px;
  }
.topics_arcv .fade_area.active_area{ display: block;opacity: 1; }

.topics_arcv  .topic_list { margin-bottom: 60px; }
.topics_arcv .topic_list li a,
.topics_arcv .topic_list li img{ width: 100%; display: block; }
.topics_arcv .topic_list li .date{margin-right: 10px; vertical-align: middle; font-size: 14px; color: #6f6f6f; }
.topics_arcv .topic_list li.new .date{ position: relative; padding-left: 60px; }
.topics_arcv .topic_list li.new .date::after{
	position: absolute;
    content: "NEW";
    color: #fff;
    font-size: 11px;
    padding: 1px 13px;
    top: 1px;
    left: 0;
    background: #f83b3b;
    border-radius: 3px;
    line-height: 15px;
}
.topics_arcv .topic_list li .cate{
    background: #000f7d;
    color: #fff;
    padding: 0px 2px;
    line-height: 21px;
    text-align: center;
    font-size: 12px;
    min-width: 90px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
.topics_arcv .topic_list li .ttl{
	display: block;
    font-size: 20px;
    font-weight: bold;
    line-height: 35px;
    margin: 10px 0;
}
.topics_arcv .topic_list li .detail_txt { font-size: 14px; line-height: 25px; }
.topics_arcv .fade_area .btn01 { margin: 0 auto 50px auto; }
.topics_arcv .ttl05{
	padding-top: 55px;
	background: url(../images/common/icon_wv.png) no-repeat center top;
	margin-bottom: 40px;
}

.topics_arcv .fade_area { min-height: 100px; padding: 15px 10px 65px 10px; background: #fff; }
.topics_arcv .topic_list li {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 25px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 25px;
    text-align: left;
}
.topics_arcv .topic_list li a{overflow: hidden; position: relative; padding: 5px 40px 5px 20px;}
.topics_arcv .topic_list li a::after{
	position: absolute;
	content: " ";
	top: 0;
	right: 10px;
	bottom: 0;
	margin: auto;
	display: block;
    width: 11px;
    height: 11px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.topics_arcv .topic_list .img_bg {
    margin-bottom: 0;
    box-shadow: 0 0 10px #cdcdcd;
    float: left;
    width: 190px;
}
.topics_arcv .topic_list .right{
    float: right;
    width: calc(100% - 230px);
}

/*=============================
	detail_topics-pade setting
===============================*/
	.detail_topics{ text-align: left; padding: 0 10px; margin-top: 50px;  }
	.detail_topics .d_conts { margin-bottom: 60px; }
	.detail_topics .d_conts img{ max-width: 100%; }
	.detail_topics .date{
		font-size: 13px;
		font-weight: bold;
		margin-right: 15px;
		vertical-align: middle;
	}
	.detail_topics .d_conts p{ font-size:16px; line-height: 25px; }
	.detail_topics .cate {
    background: #000f7d;
    color: #fff;
    padding: 0px 2px;
    line-height: 20px;
    text-align: center;
    font-size: 13px;
    min-width: 90px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
	}
	.detail_topics .d_ttl{
		font-size: 30px;
		line-height: 35px;
		color: #001365;
		padding: 10px 0;
		margin-bottom: 30px;
		border-bottom: 1px solid #ccc;
	}
	.detail_topics .btn03{ text-align: center; margin: 0 auto 70px auto; }

	.detail_topics02{ background: #f0f3f8; padding: 40px 10px; }
	.detail_topics02 .ttl04{ color: #000f7d; margin-bottom: 20px;  }
	.detail_topics02 .topic_list {overflow: hidden; padding: 5px;}
	.detail_topics02 .topic_list li{
	float: left;
	width: 22%;
    margin-right: 4%;
    margin-bottom: 30px;
    text-align: left;
}
	.detail_topics02 .topic_list li:nth-child(4n){margin-right: 0;}
	.detail_topics02 .topic_list li a,
	.detail_topics02 .topic_list li img{ width: 100%; display: block; }
	.detail_topics02 .topic_list .img_bg {
    margin-bottom: 10px;
    box-shadow: 0 0 10px #cdcdcd;
}
	.detail_topics02 .topic_list li .date{
	display: block;
	color: #6f6f6f;
	font-size: 12px;
}
	.detail_topics02 .topic_list li.new .date{ position: relative; padding-left: 45px; }
	.detail_topics02 .topic_list li.new .date::after{
	position: absolute;
    content: "NEW";
    color: #fff;
    font-size: 11px;
    padding: 1px 7px;
    top: 2px;
    left: 0;
    background: #f83b3b;
    border-radius: 3px;
    line-height: 15px;
}

	.detail_topics02 .topic_list li .ttl{
	display: block;
	font-size: 14px;
	font-weight: bold;
	line-height: 25px;
}

/*=============================
	search-pade setting
===============================*/
.search01{
	background: #f0f3f8;
    padding: 70px 10px;
}
	.search01 .white_bg{
		background: #fff;
		padding: 30px 40px 80px 40px;
		text-align: left;
	}

	.search01 .serch{
	overflow: hidden;
    max-width: 400px;
    float: right;
    margin-bottom: 25px;
	}

.search01 .serch p {
    display: inline-block;
    border-bottom: 1px solid #000;
    font-size: 12px;
    margin-bottom: 5px;
}
.search01 .serch input[type='text'] {
	-webkit-appearance: none;
    float: left;
    width: calc(100% - 80px);
    border-radius: 5px 0 0 5px;
    height: 40px;
    border: none;
    font-size: 17px;
    padding-left: 40px;
    border: 1px solid #ddd;
    border-right: none;
    background: url(../images/common/icon_search02.png) no-repeat left 10px center #fff;
    background-size: 20px;
}
.search01 .serch input[type='submit'] {
	-webkit-appearance: none;
    float: right;
    width: 80px;
    border-radius: 0 5px 5px 0;
    height: 40px;
    border: none;
    background: #000f7d;
    color: #fff;
    font-size: 14px;
    line-height: 12px;
    cursor: pointer;
	-webkit-transition: 0.4s;
       -moz-transition: 0.4s;
         -o-transition: 0.4s;
        -ms-transition: 0.4s;
            transition: 0.4s;
}
.search01 .serch input[type='submit']:hover{
	background: #000;
}
.search01 .serch input[type='text']::placeholder{
    font-weight: normal;
    font-size: 15px;
    color: #ccc;
    line-height: 30px;
    font-family: 'Noto Sans Japanese', serif;
}
.search01 .count {
    font-size: 14px;
    margin: 5px 0 0 0;
}
.search01 .book_list { margin: 30px 0 50px 0; }
.search01 .book_list li {
    float: left;
    width: 22%;
    margin: 0 4% 4% 0;
    text-align: left;
}
.search01 .book_list li:nth-child(4),
.search01 .book_list li:nth-child(5n + 9) {
    margin-right: 0;
}



/*=============================
	order-pade setting
===============================*/
.order01 { margin: 50px 0 100px 0; padding: 0 10px; }
.order .ttl01{ margin-bottom: 30px; }
.order .ttl01::after{ display: none; }
.order01 .ttl04{ font-weight: 400; font-size: 14px; line-height: 30px; }
.order01 .ttl04 span{ color: #ff7200; font-weight: bold; }
.order01 .ttl04::after { top: 8px; }
.order02 .table_caption{ font-size: 14px; line-height: 25px; margin-bottom: 50px; }
.order02 .table_caption .red{
	color: #fff;
    background: #dd1414;
    border-radius: 3px;
    font-size: 13px;
    padding: 1px 9px;
    text-align: center;
}
.order01 .od_price{ overflow: hidden; margin: 30px 0;}
.order01 .od_price li {
	float: left;
	width: 48%;
	border: 1px solid #000f7d;
	padding: 25px;
	text-align: left;
}
.order01 .od_price li:last-child{ float: right; }
.order01 .od_price li p:nth-child(1){
	background: #f0f3f8;
	padding: 10px;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 10px;
}
.order01 .od_price li p:nth-child(1) span{
	font-size: 25px;
	color: #000f7d;
	margin-right: 10px;
}
.order01 .od_price li p:nth-child(2){ margin-bottom: 10px; }
.order01 .od_price li p:nth-child(3),
.order01 .od_price li p:nth-child(2){
	font-size: 14px;
	line-height: 25px;
}
.order01 .od_price li p:nth-child(3) span,
.order01 .od_price li p:nth-child(2) span{
	font-size: 23px;
	font-weight: bold;
	color: #d41111;
	background: linear-gradient(#fff 50%, #ffe721 50%);
	margin-left: 10px;
}
.order01_in{ margin: 50px 0 0 0; }
.order01_in .od_list{
	text-align: center;
	border: 20px solid #f0f3f8;
	padding: 20px;
    margin: 10px 0;
}
.order01_in .od_list li{
	display: inline-block;
	width: 32.5%;
	vertical-align: top;
}
.order01_in .od_list li p:nth-child(1){
	background: #c7d6f0;
	color: #000f7d;
	font-size: 32px;
	font-weight: bold;
	font-style: italic;
	line-height: 35px;
	padding: 5px;
	margin-bottom: 20px;
	position: relative;
}
.order01_in .od_list li p:nth-child(1)::after{
	content: " ";
    position: absolute;
    top: 0;
    right: -20px;
    bottom: 0;
    margin: auto;
    display: block;
    width: 34px;
    height: 34px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    background: #c7d6f0;
    z-index: 1;
}
.order01_in .od_list li p:nth-child(2){
	font-size: 13px;
	font-weight: bold;
	text-align: left;
	background: url(../images/order/step01.jpg) no-repeat center top;
	padding: 90px 20px 0 20px;
}
.order01_in .od_list li:nth-child(2) p:nth-child(2){ background: url(../images/order/step02.jpg) no-repeat center top; }
.order01_in .od_list li:nth-child(3) p:nth-child(2){ background: url(../images/order/step03.jpg) no-repeat center top; background-size: 210px; }
.order01_in .od_list li:nth-child(3) p:nth-child(1)::after{ display: none; }
.order01_in .about_txt {
    font-size: 13px;
    text-align: left;
}
.order02 { margin-bottom: 100px; padding: 0 10px; }

/*=============================
	contact-pade setting
===============================*/
.contact01{ margin: 50px 0; padding: 0 10px; }
.contact01 .inner1000{ background: #f0f3f8; padding: 20px; }
.contact01 .white_bg{ background: #fff; padding: 15px; }
.contact01 h3{
	background: #001365;
	color: #fff;
	font-size: 18px;
    font-weight: 600;
    padding: 15px 5px;
    letter-spacing: 2px;
    margin-bottom: 20px;
}
.contact01 .tell{ display: inline-block; margin-bottom: 10px; }
.contact01 .tell a{
	display: block;
	padding: 10px 0 10px 45px;
	background: url(../images/common/icon_tel.png) no-repeat center left;
	font-size: 40px;
	font-weight: bold;
	color: #000;
}
.contact01 .about{ font-size: 14px; line-height: 21px; }

.contact02{ padding: 0 10px; margin-bottom: 100px; }
.contact02 .table_caption{ font-size: 14px; line-height: 25px; margin-bottom: 50px; }
.contact02 .table_caption .red{
	color: #fff;
    background: #dd1414;
    border-radius: 3px;
    font-size: 13px;
    padding: 1px 9px;
    text-align: center;
}
.contact_table{ text-align: left; border-collapse: collapse; margin-bottom: 50px; }
.contact_table tr{ border-bottom: 1px solid #eceaec; }
.contact_table tr:last-child{ border-bottom: none; }
.contact_table td{ padding: 25px 0;}
.contact_table td:first-child{ font-size: 14px; width: 280px; }
.contact_table td:last-child{ font-size: 14px; }
.contact_table input[type="tel"],
.contact_table input[type="email"],
.contact_table input[type="text"]{
	height: 40px;
	padding: 10px;
	font-size: 16px;
	/*border: 1px solid #eceaec;*/
	border: 1px solid #ccc;
	width: 100%;
}
.contact_table textarea{
	width: 100%;
	padding: 10px;
	font-size: 16px;
	border: 1px solid #ccc;
	margin-top: 5px;
	height: 175px;
}
.contact_table .align_top{ vertical-align: top; }
.contact_table .zp02,
.contact_table .zp01,
.contact_table .zp03,
.contact_table .zp04{
	position: relative;
	padding-left: 80px;
}
.contact_table .zp01,.contact_table .zp03,.contact_table .zp04{ margin-bottom: 20px;  }

.contact_table .zp01::after{
	content: "郵便番号";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	display: block;
	font-size: 14px;
	height: 26px;
}
.contact_table .zp02::after{
	content: "住所";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	display: block;
	font-size: 14px;
	height: 26px;
}
.contact_table .zp03::after{
	content: "お名前";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	display: block;
	font-size: 14px;
	height: 26px;
}
.contact_table .zp04::after{
	content: "フリガナ";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	display: block;
	font-size: 14px;
	height: 26px;
}
.contact_table .zp01 input[type="text"]{ max-width: 250px;}
.contact_table .requ{
	position: relative;
	padding-right: 40px;
}
.contact_table .zp03 input[type="text"]{ max-width: 250px;}
.contact_table .requ{
	position: relative;
	padding-right: 40px;
}

.contact_table .zp04 input[type="text"]{ max-width: 250px;}
.contact_table .requ{
	position: relative;
	padding-right: 40px;
}
.contact_table .requ::after{
	content: "必須";
    position: absolute;
    top: 0;
    right: 55px;
    bottom: 0;
    margin: auto;
    display: block;
    color: #fff;
    background: #dd1414;
    border-radius: 3px;
    width: 46px;
    height: 25px;
    font-size: 13px;
    text-align: center;
}
.contact_table .requ.align_top::after{
	top: 25px;
	bottom: inherit;
}
.reset{
    max-width: 300px;
    width: 100%;
    margin: 0 5px;
	display: inline-block;
}
.reset a{
	display: block;
    background: #fff;
    color: #001365;
    font-size: 16px;
    padding: 18px 10px;
    border: 1px solid #001365;
    font-weight: bold;
    font-family: 'Noto Sans Japanese', serif;
    cursor: pointer;
    transition: 0.4s;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -ms-transition: 0.4s;
}
.reset a:hover{
	background: #001365;
	color: #fff;
	opacity: 1;
}
.custom-wpcf7c-confirmed .reset{ display: none!important; }
input.submit{
	display: inline-block;
    background: #001365;
    color: #fff;
    font-size: 16px;
    padding: 18px 10px;
    border: 1px solid #001365;
    font-weight: bold;
    letter-spacing: 3px;
    max-width: 300px;
    width: 100%;
    cursor: pointer;
    margin: 0 5px;
    font-family: 'Noto Sans Japanese', serif;
}
input.submit.wpcf7c-btn-back{ background: #fff; color: #001365; transition: 0.4s; -webkit-transition: 0.4s; -ms-transition: 0.4s; -moz-transition: 0.4s; }
input.submit.wpcf7c-btn-back:hover { background: #001365; color: #fff; }


input.submit:hover{ background: #000; }
.contact_table select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #000f7d;
	padding: 10px;
    font-size: 14px;
    text-align: left;
    padding: 7px 5px 7px 15px;
    font-weight: bold;
    background: url(../images/common/icon_select.png) no-repeat right 7px center #fff;
    background-size: 10px;
    width: 140px;
    cursor: pointer;
    width: 200px;
    color: #000f7d;
}
/* .contact_table input[type="radio"]{
    display: none;
} */
.contact_table label{
    display: inline-block;
    position: relative;
    /* cursor: pointer; */
    padding: 10px 20px 10px 0;
    border-radius: 2px;
    font-size: 14px;
    text-align: center;
    line-height: 1;
}
.contact_table label:before{
display: none;
}

/* .contact_table input[type="radio"]:checked + span:after {
    position: absolute;
    content: "";
    top: 50%;
    left: -6px;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    border-radius: 50%;
    background: #001365;
} */
.btns p{
display: inline-block;
width: 290px;
}
.contact_table .company{ padding: 0; }
/* .custom-wpcf7c-confirmed input[type="radio"]:checked{
outline: inset 6px #ffff00;
} */
/*=============================
	ranking-pade setting
===============================*/
.ranking01{
    background: #f0f3f8;
    padding: 70px 10px;
}
.ranking01 .white_bg{
	background: #fff;
    padding: 50px 70px 70px 70px;
}
.ranking01 .rank01{
	text-align: left;
    padding: 45px 40px;
    background: linear-gradient(#fff 62%, #f0f3f8 38%);
    border-bottom: 5px solid #000f7d;
    margin: 0 auto 50px auto;
    max-width: 80%;
}
.ranking01 .rank01 .left{
	float: left;
	width: 45%;
	border: 1px solid #ccc;
    max-width: 270px;
	padding: 35px;
	background: #fff;
	position: relative;
}
.ranking01 .rank01 a{ display: block; }
.ranking01 .rank01 a .left::after{
    content: "1";
    font-family: 'Cabin', sans-serif;
    color: #fff;
    font-size: 39px;
    font-style: italic;
    position: absolute;
    top: -30px;
    left: -41px;
    background: url(../images/common/icon_crown.png) no-repeat center;
    width: 88px;
    height: 59px;
    font-weight: bold;
    line-height: 83px;
    text-align: center;
    padding-right: 14px;
}
.ranking01 .rank01 .left img{ display: block; width: 100%; }
.ranking01 .rank01 .right{
	float: right;
	width: 50%;
}
.ranking01 .rank01 .right a{display: block;}
.ranking01 .rank01 .right .book_ttl{
	color: #001365;
	font-size: 24px;
	margin-bottom: 10px;
	line-height: 30px;
	font-weight: bold;
}
.ranking01 .rank01 .right .book_author{
	font-size: 14px;
	line-height: 25px;
	position: relative;
	padding-left: 30px;
}
.ranking01 .rank01 .right .book_author::after{
	content: "著／";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 14px;
}
.ranking01 .rank01 .right .book_size::after {
    content: "判／";
    position: absolute;
    top: 0;
    left: 0;
}
.ranking01 .rank01 .right .book_price{ padding-left: 45px; }
.ranking01 .rank01 .right .book_price::after {
    content: "定価／";
    position: absolute;
    top: 0;
    left: 0;
}
.ranking01 .rank01 .right .book_cete {
	color: #fff;
    font-size: 13px;
    padding: 0;
    display: inline-block;
    margin: 15px 0;
    line-height: 20px;
}
.ranking01 .rank01 .right .book_cete span {
    background: #001365;
    margin-right: 10px;
    margin-bottom: 5px;
    padding: 0 6px;
    display: inline-block;
}
.ranking01 .rank01 .right .book_cete span:last-child{ margin-right: 0; }
.ranking01 .rank01 .right .book_about {
    color: #001365;
    font-size: 15px;
    line-height: 26px;
}
.ranking01 .rank02{
	background: linear-gradient(#fff 62%, #f0f3f8 38%);
    border-bottom: 5px solid #000f7d;
    margin-bottom: 60px;
}
.ranking01 .rank02 .book_list{
	padding: 45px 40px 20px 40px;
    width: 80%;
    margin: 0 auto;
}
.ranking01 .rank02 .book_list li {
    width: 48%;
    text-align: left;
    max-width: 270px;
}
.ranking01 .rank02 .book_list li:last-child{
	float: right;
}
.ranking01 .rank02 .book_list li a{ position: relative; }
.ranking01 .rank02 .book_list li a::before{
	position: absolute;
    top: 0;
    left: 0;
    content: "2";
    font-style: italic;
    padding: 8px 5px 0 0;
    color: #fff;
    width: 38px;
    height: 58px;
    font-size: 24px;
    text-align: center;
    font-weight: bold;
    background: url(../images/common/icon_crown02.png) no-repeat center;
    transition: inherit;
}
.ranking01 .rank02 .book_list li:last-child a::before{
	content: "3";
	background: url(../images/common/icon_crown03.png) no-repeat center;
}
.ranking01 .rank02 .book_list .book_ttl{
    color: #001365;
    font-size: 18px;
    margin-bottom: 5px;
    line-height: 25px;
    font-weight: bold;
}
.ranking01 .rank02 .book_author{
	font-size: 13px;
	line-height: 20px;
	position: relative;
	padding-left: 30px;
	color: #000;
}
.ranking01 .rank02 .book_author::after{
	content: "著／";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 13px;
	color: #000;
}
.ranking01 .rank02 .book_size::after {
    content: "判／";
    position: absolute;
    top: 0;
    left: 0;
}
.ranking01 .rank02 .book_price{ padding-left: 45px; }
.ranking01 .rank02 .book_price::after {
    content: "定価／";
    position: absolute;
    top: 0;
    left: 0;
}
.ranking01 .rank02 .book_cete {
    color: #fff;
    font-size: 13px;
    padding: 0;
    display: inline-block;
    margin: 15px 0;
    line-height: 20px;
}
.ranking01 .rank02 .book_cete span {
    background: #001365;
    margin-right: 10px;
    margin-bottom: 5px;
    padding: 0 6px;
    display: inline-block;
}
.ranking01 .rank02 .book_cete span:last-child{ margin-right: 0; }



.ranking01 .rank02 .book_list .book_fr {
    padding: 35px;
    height: auto;
}
.ranking01 .rank02 .book_list li img{ display: block; width: 100%; box-shadow: none; }
.ranking01 .rank03 { margin-bottom: 10px; }
.ranking01 .rank03 .book_list{ overflow: inherit; padding-top: 15px; }
.ranking01 .rank03 .book_list li {
    float: left;
    width: 22%;
    margin: 0 4% 7% 0;
    text-align: left;
}
.ranking01 .rank03 .book_list li a{ position: relative; }
.ranking01 .rank03 .book_list li a::after{
	content: "4";
    position: absolute;
    top: -11px;
    left: 3px;
    color: #001365;
    font-size: 31px;
    font-family: 'Cabin', sans-serif;
    font-style: italic;
    font-weight: bold;
}
.ranking01 .rank03 .book_list li:nth-child(2) a::after{ content: "5"; }
.ranking01 .rank03 .book_list li:nth-child(3) a::after{ content: "6"; }
.ranking01 .rank03 .book_list li:nth-child(4) a::after{ content: "7"; }
.ranking01 .rank03 .book_list li:nth-child(6) a::after{ content: "8"; }
.ranking01 .rank03 .book_list li:nth-child(7) a::after{ content: "9"; }
.ranking01 .rank03 .book_list li:nth-child(8) a::after{ content: "10"; }
.ranking01 .rank03 .book_list li:nth-child(4n){ margin-right: 0; }
.ranking01 .rank03 .book_list .book_ttl { color: #001365; margin-bottom: 10px;  }
.ranking01 .rank03 .book_list .book_author { font-size: 13px; color: #000; }
.book_list .book_author::after { color: #000; }
.book_list .book_author.book_price::after { content: "定価／"; }
.ranking01 .rank03 .book_cete {
    color: #fff;
    font-size: 13px;
    padding: 0;
    display: inline-block;
    margin: 15px 0;
    line-height: 20px;
}
.ranking01 .rank03 .book_cete span {
    background: #001365;
    margin-right: 10px;
    margin-bottom: 5px;
    padding: 0 6px;
    display: inline-block;
}
.ranking01 .rank03 .book_cete span:last-child{ margin-right: 0; }





.ranking01 .btn01{ margin: 0 auto; }

/*=============================
	sitemap-pade setting
===============================*/
.sitemap { overflow: hidden; padding: 50px 10px 100px 10px; }
.sitemap .sitemap_clmn{
	float: left;
	width: 31%;
	margin: 0 3.5% 50px 0;
	text-align: left;
}
.sitemap .sitemap_clmn:nth-child(3n){ margin-right: 0; }
.sitemap .sitemap_clmn .ttl04 {
    margin-bottom: 15px;
    text-align: center;
    padding: 3px 2px;
    border-top: 1px solid #001365;
    border-bottom: 1px solid #001365;
}
.sitemap .sitemap_clmn .ttl04::after{ display: none; }
.sitemap .sitemap_clmn .site_map_list li{ margin-bottom: 5px; }
.sitemap .sitemap_clmn .site_map_list li:last-child{ margin-bottom: 0; }
.sitemap .sitemap_clmn .site_map_list a{
	display: block;
	font-size: 14px;
	position: relative;
	padding-left: 15px;
}
.sitemap .sitemap_clmn .site_map_list a::after{
	content: " ";
	position: absolute;
	top: 0;
	left: 2px;
	bottom: 0;
	margin: auto;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3.5px 0 3.5px 7px;
	border-color: transparent transparent transparent #ccc;
}
.sitemap .sitemap_clmn .site_map_list li.sub a::after{ display: none; }
.sitemap .sitemap_clmn .site_map_list li.sub a{ padding-left: 25px; font-size: 13px; }
.sitemap .sitemap_clmn .site_map_list li.sub a::before{
	content: " ";
	position: absolute;
	top: 0;
	left: 15px;
	bottom: 0;
	margin: auto;
	display: block;
	width: 7px;
	height: 10px;
	border-bottom: 2px solid #ccc;
	border-left: 2px solid #ccc;
}

/*=============================
	policy-pade setting
===============================*/
.policy{ padding: 50px 10px 100px 10px; text-align: left; }
.policy .ttl01{ margin-bottom: 30px; }
.policy .ttl03{ margin-bottom: 15px; }
.policy .policy_txt{
	margin-bottom: 45px;
}
.policy .policy_txt p{ font-size: 14px; line-height: 25px; margin-bottom: 10px; }
.policy p.about_txt{
	font-size: 15px;
	margin-bottom: 20px;
}
.policy p.about_txt span{ font-weight: bold; font-size: 14px;}
.policy .policy_txt .pdf_link{
	color: #001365;
	text-decoration: underline;
}

/*=============================
	channel-pade setting
===============================*/
.channel { padding: 50px 10px 50px 10px; text-align: left; }
.channel02 { padding: 0px 10px 100px 10px; text-align: left; }
.channel .ttl02 { margin-bottom: 30px; }
.channel .ttl03 { margin-bottom: 10px; }
.channel .w_clmn01 iframe{ width: 100%; display: block; height: 250px; }
.channel .w_clmn01 li span{
	font-weight: bold;
	font-size: 14px;
}
.channel.channel02 .w_clmn01{
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 1px dashed #ccc;
 }
 .channel.channel02 .w_clmn01:last-child{ border-bottom: none; }
.channel .w_clmn01 .mb10{ margin-bottom: 10px; }
.channel .w_clmn01 li a{ color: #001365; }

/*=============================
	goods-pade setting
===============================*/
.goods { padding: 50px 10px 0 10px; text-align: left; }
.goods .ttl01{ margin-bottom: 50px; }
.goods .ttl02{ margin-bottom: 20px; }
.goods .sub_ttl02{
	font-weight: bold;
	display: block;
	font-size: 18px;
	margin-bottom: 20px;
}
.goods .sub_ttl03{
	font-weight: bold;
	display: block;
	font-size: 24px;
	margin-top: 20px;
}
.goods .mb10{ margin-bottom: 10px; }
.goods .btn05{ margin-top: 20px; }
.goods .btn05 a { padding: 15px 10px; }
.goods .slide_area{ margin-bottom: 50px; }
.goods .slider-goods a,
.goods .slider-goods img{ display: block; width: 100%; }
.goods .w_clmn01 li { width: 25%; text-align: center; }
.goods .w_clmn01 li:last-child { width: 70%; text-align: left; }
.goods .mv_section{ margin-bottom: 40px; display: block; width: 100%; }
.goods01 .w_clmn01 { margin-bottom: 45px; padding-bottom: 45px; border-bottom: 1px dashed #ccc; }
.goods01 .w_clmn01:last-child{ border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.goods03 { margin-bottom: 70px; }

/*=============================
	bookshop-pade setting
===============================*/
.bookshop { text-align: left; padding: 50px 10px 50px 10px; }
.bookshop .ttl01{ margin-bottom: 30px; }
.bookshop .ttl02{ margin-bottom: 30px; }
.bookshop .sub_txt{ font-size: 14px; line-height: 25px; }
.bookshop .book_in { margin-top: 40px; }
.bookshop .book_in .book_in_list{ text-align: center; }
.bookshop .book_in .book_in_list li{
	display: inline-block;
	width: 30%;
	margin: 0 1%;
	vertical-align: top;
}
.bookshop .book_in .book_in_list li img{ display: block; width: 100%; margin-bottom: 10px  }
.bookshop .book_in .book_in_list li a{
	display: block;
	font-size: 14px;
	font-weight: bold;
}
.bookshop .book_in .book_in_list li a span{ display: block; color: #ccc; font-size: 13px; }

/*=============================
	advertising-pade setting
===============================*/
.advertising{ text-align: left; padding: 50px 10px 50px 10px; }
.advertising .ttl01{ margin-bottom: 30px; }
.advertising .ttl04{ margin-bottom: 15px; }
.advertising p{ font-size: 14px; line-height: 25px; }
.advertising p.sub_txt{ margin-bottom: 20px }
.advertising .advertising_in{ margin-top: 40px; padding-bottom: 40px; border-bottom: 1px solid #ccc; }
.advertising .advertising_in:last-child{ border-bottom: none;  }
.advertising .advertising_in .w_clmn01 li:first-child{ width: 20%; }
.advertising .advertising_in .w_clmn01 li:last-child{ width: 75%; }
.advertising .advertising_in .sin_clmn{ text-align: center; }
.advertising .advertising_in .sin_clmn img{
	display: block;
	width: 100%;
	border: 1px solid #ccc;
 }
.advertising .w_clmn04{ overflow: hidden; }
.advertising .w_clmn04 li{
	float: left;
	width: 22%;
	margin-right: 4%;
}
.advertising .w_clmn01 li img { border: 1px solid #ccc; }
.advertising .w_clmn04 li:nth-child(4){ margin-right: 0; }
.advertising .w_clmn04 li a,
.advertising .w_clmn04 li img{ display: block; width: 100%; }
.advertising .w_clmn01,
.advertising .w_clmn03{ margin-bottom: 30px; }
.advertising .btn_area{ text-align: center; margin-top: 40px; }
.advertising .btn_area .btn02{ margin: 0 auto 10px auto; }
.advertising .advertising_in03 .sin_clmn {
	max-width: 500px;
	margin: 0 auto;
}

/*=============================
	buy-pade setting
===============================*/
.buy{ padding: 50px 10px 50px 10px; text-align: left; }
.buy .ttl01{ margin-bottom: 30px; }
.buy .ttl03{ margin-bottom: 15px; }
.buy .tel_btn{ margin: 20px 0; }
.buy p{ font-size: 14px; line-height: 25px; }
.buy .w_clmn02 { margin: 25px 0; }
.buy .w_clmn02 li:last-child { width: 20%; }
.buy .steps .ttl04{ margin-bottom: 0px; }
.buy .steps p{ margin-bottom: 20px; }
.buy .steps p.bt_txt{ color: #ff0000; font-size: 12px; line-height: 20px; }

/*=============================
	access-pade setting
===============================*/
.access{ padding: 50px 10px 50px 10px; text-align: left; }
.access .ttl01{ margin-bottom: 30px; }
.access .w_clmn01 .ttl04{ margin: 0 0 5px 0; }
.access .w_clmn01{ margin-bottom: 30px; }
.access .w_clmn01 iframe{
	border: none;
	width: 100%;
	display: block;
	height: 250px;
}
.access .w_clmn01 li p{ font-size: 14px; line-height: 25px; }
.access .w_clmn01 li p.mb10{ margin-bottom: 10px; }

/*=============================
	company-pade setting
===============================*/
.company{ padding: 50px 10px 50px 10px; text-align: left; }
.company .ttl01{ margin-bottom: 30px; }
.company_table{border-collapse: collapse; border: 1px solid #ccc;}
.company_table tr{ border-bottom: 1px solid #ccc; }
.company_table td:nth-child(1){
	vertical-align: top;
	font-size: 15px;
	font-weight: bold;
	background: #f0f3f8;
	text-align: center;
	padding: 15px 5px;
	width: 135px;
}
.company_table td:nth-child(2){
	padding: 15px 5px 15px 20px;
	font-size: 14px;
	line-height: 25px;
}
.company_table td span{ font-weight: bold; }

/*=============================
	faq-pade setting
===============================*/
.faq{ padding: 50px 10px 50px 10px; text-align: left; }
.faq .ttl02{ margin-bottom: 30px; }

/*=============================
	404-pade setting
===============================*/
.not_found{
    padding: 50px 0;
    text-align: left;
}
.not_found .white_bg{
	background: #fff;
    padding: 50px;
    border: 1px solid #ccc;
    border-top: 3px solid #001365;
    text-align: left;
}
.not_found h3.ttl02{margin-bottom: 30px;}
.not_found p{ font-size: 14px; line-height: 25px;}