@charset "utf-8";

@media screen and (min-width: 0px) {
	body{
		background: #ffffff;
	}
}

/* ----------------------------------------------------------
common_element
----------------------------------------------------------- */

a.tel{
	cursor: default;
	color: #000000;	
}

body{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 12px;
	color: #000000;
	background: #ffffff;
}

.all_wrap{
	position: relative;
	overflow: hidden;
	min-height: 100%;
}

.gecko img,.gecko input[type="image"]{
	background: rgba(255, 255, 255, 0.01);	
}

input[type="submit"]{
	cursor: pointer;	
}

.loading{
	z-index: 20000;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 200%;
	background: #ffffff;
}

.blue_link{
	color: #0099cc !important;	
}

.gray_link{
	color: #999999 !important;
}

/* ----------------------------------------------------------
header
----------------------------------------------------------- */

header{
	z-index: 9999;
	position: relative;
}

header h1{
	background: url(../img/header_bg.jpg);	
}

header nav.main_nav{
	background: url(../img/header_nav_bg.jpg);	
}

header nav.main_nav a{
	color: #ffffff;
	text-decoration: none !important;
}

header nav.main_nav li{
	letter-spacing: 0.025em;	
}

header nav.main_nav li.active .nav_title a{
	-ms-filter: "alpha(opacity=50)" !important;
	-khtml-opacity: 0.5 !important;
	filter: alpha(opacity=50) !important;
	-moz-opacity: 0.5 !important;
	opacity: 0.5 !important;	
}

header nav.main_nav ul.main_sub_nav_list li.active a{
	-ms-filter: "alpha(opacity=50)" !important;
	-khtml-opacity: 0.5 !important;
	filter: alpha(opacity=50) !important;
	-moz-opacity: 0.5 !important;
	opacity: 0.5 !important;	
}

/* ----------------------------------------------------------
footer
----------------------------------------------------------- */

footer{
	position: relative;
	overflow: hidden;	
}

.footer_content a{
	color: #ffffff;	
}

.footer_logo img{
	width: 175px;	
}

footer .pageup img{
	width: 73px;
	height: 17px;
}

/* ----------------------------------------------------------
.main .main_sub
----------------------------------------------------------- */

a.common_link01{
	display: inline-block;
	color: #999999;
	padding: 0 0 0 11px;
	background: url(../img/common_link01.jpg) no-repeat 2px center;
}

/* ----------------------------------------------------------
.main_wrap
----------------------------------------------------------- */

.main_wrap{
	position: relative;	
}

/* ----------------------------------------------------------
.common_title
----------------------------------------------------------- */

.main .main_sub .common_title01{
	border-bottom: none !important;	
}

/* ----------------------------------------------------------
input
----------------------------------------------------------- */

input[type="text"]{
	border: 1px solid #e6e6e6;	
	background: #f7f7f7;
	height: 32px;
	padding: 5px 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

textarea{
	width: 100%;
	border: 1px solid #e6e6e6;	
	background: #f7f7f7;
	padding: 5px 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;      
}

.works_common_wrap p.text{
	font-size: 109%;
    line-height: 24px;
}

.works_common_wrap p.checktext{
	font-size: 117%;
	margin: 20px 0;
	line-height: 24px;	
	color: #666666;
}

.feed_back{
	margin: 0 0 40px 0;	
}

.feed_back .common_title01:after{
	background: #cfdae6 !important;
}

.feed_back_content{
	margin: 15px 0 0 0;	
}

.feed_back_content textarea{
	background: #ffffff;
	border: 1px solid #e6e6e6;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	height: 80px;
}

.feed_back_content h3{
	font-size: 109%;
	margin: 0 0 10px 0;	
}

.feed_back_content p{
	line-height: 18px;
}

.feed_back_content a{
	color: #999999;
	text-decoration: underline;	
}

.feed_back_content a:hover{
	text-decoration: none;	
}

.bt_feed_back{
	width: 84px;
	height: 24px;
	color: #ffffff;
	background: #666666;
	-moz-box-shadow:0px 2px 0px #333333;
    -webkit-box-shadow:0px 2px 0px #333333;
    box-shadow:0px 2px 0px #333333;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	border: none;
	display: block;
	margin: 10px auto 0 auto;
}

.bt_feed_back:hover{
	background: #333333;
}

.indent01{
	display: block;
	text-indent: -1em;
	padding: 0 0 0 1em;
	line-height: inherit;
	font-size: inherit;
}

.ad_area .btn_area{
	margin-top: 0px !important;	
}

#ad_slider{
	position: fixed;
	z-index: 20000;
	left: 50%;
	top: 10%;
	width: 565px;
	height: 0;
	margin: 0 0 0 -282px;
	overflow: hidden;
}

#ad_slider.active{
	height: auto;
}

#ad_slider_in{
	position: relative;
	width: 315px;
	padding: 0 125px;
}

#ad_slider_in .bx-prev{
	cursor: pointer;
	position: absolute;
	top: 50%;
	left: 0px;
	display: block;
	width: 48px;
	height: 48px;
	margin: -24px 0 0 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: url(../img/ad_arrow01.png) no-repeat;
}

#ad_slider_in .bx-next.disabled,
#ad_slider_in .bx-prev.disabled{
	display: none !important;
}

#ad_slider_in .bx-next{
	cursor: pointer;
	position: absolute;
	top: 50%;
	right: 0px;
	display: block;
	width: 48px;
	height: 48px;
	margin: -24px 0 0 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: url(../img/ad_arrow02.png) no-repeat;
}

#popup_bg{
	display: none;
	position: fixed;
	z-index: 19999;
	top: 0;
	left: 0;
	width: 100%;
	height: 200%;
	background: url(../img/popup_bg.png);
}

#popup_close{
	display: none;
	position: fixed;
	z-index: 20000;
	top: 20px;
	right: 20px;
	width: 48px;
	height: 48px;
	cursor: pointer;
	background: url(../img/ad_close.png) no-repeat;
}

#slider_bt{
	cursor: pointer;	
}

@media screen and (min-width: 801px) {

/* ----------------------------------------------------------
.all_wrap
----------------------------------------------------------- */

.all_wrap{
	padding-top: 0px !important;	
}

/* ----------------------------------------------------------
header
----------------------------------------------------------- */

header h1{
	position: relative;
	text-align: center;
	height: 134px;	
}

header h1 img{
	position: absolute;
	top: 40px;
	left: 50%;
	margin: 0 0 0 -178px;
	width: 356px;
	height: 49px;
}

header nav.main_nav{
	letter-spacing: -4px;
	text-align: center;
	height: 46px;
}

header nav.main_nav li.main_nav_list{
	line-height: 46px;
	display: inline-block;
	margin: 0 20px;
}

header nav.main_nav li.main_nav_list .nav_title a{
	display: block;
	line-height: 46px;
}

/* ----------------------------------------------------------
.main
----------------------------------------------------------- */

.main{
	padding: 0 0 170px 0;	
}

.main_inner{
	padding: 40px 0 0 0;
	margin: 0 auto;
	width: 950px;
}

/* ----------------------------------------------------------
.main_wrap
----------------------------------------------------------- */

.main_wrap{
	position: relative;	
}

/* ----------------------------------------------------------
.main .main_content
----------------------------------------------------------- */

.main .main_content{
	float: right;
	width: 680px;	
}

/* ----------------------------------------------------------
.main_sub
----------------------------------------------------------- */

.main .main_sub{
	float: left;
	width: 210px;
}

/* .main_sub_nav */

.main .main_sub .main_sub_nav{
	margin: 0 0 75px 0;
}

.main .main_sub .main_sub_nav li{
	margin: 0 0 15px 0;	
}

.main .main_sub .main_sub_nav li a{
	text-decoration: none !important;
	display: inline-block;
	padding: 0 0 0 12px;
	background: url(../img/main_sub_nav_a01.jpg) no-repeat left center;
}

.main .main_sub .main_sub_nav li a:hover{
	color: #b3b3b3;
	background: url(../img/main_sub_nav_a02.jpg) no-repeat left center;
}

.main .main_sub .main_sub_nav li a.active{
	color: #b3b3b3;
	background: url(../img/main_sub_nav_a02.jpg) no-repeat left center;
}

/* .topics */

.main .main_sub .topics{
	
}

.main .main_sub .topics ul li{
	margin: 0 0 30px 0;	
}

.main .main_sub .topics dl dt{
	font-size: 109%;
	line-height: 18px;
	margin: 15px 0 10px 0;
}

.main .main_sub .topics dl dd{
	line-height: 18px;
	color: #666666;
}

.main .main_sub .topics p.bottom_link{
	margin: 10px 0 0 0;
}

.main .main_sub .topics ul li .bottom_text{
	font-size: 84%;
	line-height: 12px;
	margin: 20px 0 0 0;
	color: #666666;	
}

/* ----------------------------------------------------------
footer
----------------------------------------------------------- */

footer{
	color: #ffffff;	
}

footer .sns_area{
	letter-spacing: -4px;
	text-align: right;
	width: 950px;
	margin: 0 auto 20px auto;	
}

footer .sns_area li{
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 13px;
}

footer .footer_content_wrap{
	padding: 26px 0 33px 0;
	background: url(../img/footer_bg.jpg);	
}

footer .footer_content{
	position: relative;
	width: 950px;
	margin: 0 auto;	
}

footer .footer_in01{
	letter-spacing: -4px;
}

footer .footer_link_list{
	vertical-align: top;
	display: inline-block;
	letter-spacing: normal;
	margin: 0 22px 0 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

footer .footer_link_list.link_list01{
	min-width: 50px;
}

footer .footer_link_list.link_list02{
	min-width: 140px;
}

footer .footer_link_list.link_list03{
	min-width: 120px;
}

footer .footer_link_list.link_list04{
	min-width: 120px;
}

footer .footer_link_list.link_list05{
	min-width: 120px;
}

footer .footer_link_list.link_list06{
	min-width: 100px;
}

.footer_logo{
	margin: 35px 0 0 0;
	text-align: center;	
}

footer .footer_link_list .link_title{
	height: 12px;
	padding: 0 0 11px 3px;
	background: url(../img/img_border01.png) repeat-x bottom;	
}

footer .footer_link_list ul{
	padding: 10px 0 0 3px;
}

footer .footer_link_list ul li{
	line-height: 24px;	
}

footer p.copyright{
	text-align: center;
	padding: 14px 0 0 0;
	font-size: 92%;
	line-height: 18px;
	font-family: "Times New Roman", Times, serif;
}

footer .pageup{
	position: absolute;
	top: 0;
	right: 0px;
}

/* ----------------------------------------------------------
common_title
----------------------------------------------------------- */

.common_title01{
	border-bottom: 1px solid #e5e5e5;
	position: relative;
	padding: 0 0 23px 23px;
	font-size: 92%;
	font-family:"Times New Roman", Times, serif;
}

.common_title01:after{
	content: "";
	top: 4px;
	left: 0;
	position: absolute;
	width: 15px;
	height: 3px;
	background: #e6e6e6;
}

.common_title02{
	border-bottom: 1px solid #e5e5e5;
	position: relative;
	padding: 0 0 16px 23px;
	font-size: 134%;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.common_title02:after{
	content: "";
	top: 6px;
	left: 0;
	position: absolute;
	width: 15px;
	height: 3px;
	background: #e6e6e6;
}

.common_title03{
	border-bottom: 1px dotted #e5e5e5;
	position: relative;
	padding: 0 0 23px 3px;
	font-size: 92%;
	font-family:"Times New Roman", Times, serif;
}

/* ----------------------------------------------------------
.page_title
----------------------------------------------------------- */

.page_title{
	background: #f3f3f3;
	height: 80px;
}

.page_title span{
	position: relative;
	display: block;
	font-size: 167%;
	letter-spacing: 0.05em;
	line-height: 80px;
	width: 950px;
	margin: 0 auto;
}

/* ----------------------------------------------------------
ul.bread
----------------------------------------------------------- */

ul.bread{
	letter-spacing: -4px;
	text-align: right;
	position: absolute;
	width: 950px;
	left: 50%;
	top: 34px;
	margin: 0 0 0 -475px;
}

ul.bread li{
	display: inline-block;
	letter-spacing: 0.05em;
}

ul.bread li a{
	color: #999999;
}

ul.bread li.sep{
	margin: 0 4px;
	color: #999999;
}

/* ----------------------------------------------------------
.outline
----------------------------------------------------------- */

.outline{
	margin: 0 0 0 0;
}

.outline_list{
	padding: 20px 0 0 0;	
}

.outline_list h3{
	font-size: 150%;
	line-height: 28px;	
}

.outline_list ul{
	margin: 22px 0 0 0;
	width: 720px;
	letter-spacing: -4px;	
}

.outline_list ul li{
	display: inline-block;
	vertical-align: top;
	width: 204px;
	margin: 0 32px 26px 0;
}

.outline_list ul li figure{
	overflow: hidden;
	width: 202px;
	height: 134px;
	border: 1px solid #ecf0f5;
}

.outline_list ul li dl{
	
}

.outline_list ul li dl dt{
	font-size: 134%;
	line-height: 20px;
	letter-spacing: normal;
	margin: 18px 0 0 0;
}

.outline_list ul li dl dd{
	margin: 9px 0 0 0;
	color: #666666;
	font-size: 109%;
	letter-spacing: normal;
	line-height: 20px;
}

/* ----------------------------------------------------------
.works_common
----------------------------------------------------------- */

.works_common_wrap{
	padding: 35px 0;	
}

.works_common_wrap.detail{
	padding: 15px 0 35px 0;	
}

.works_common_wrap p.lead{
	font-size: 124%;
	line-height: 36px;
	color: #666666;
}

.works_common_wrap ul.work_list{
	padding: 35px 0 0 0;	
	letter-spacing: -4px;
	width: 740px;
}

.works_common_wrap ul.work_list li{
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	width: 324px;
	margin: 0 32px 32px 0;
}

.works_common_wrap ul.work_list li figure{
	height: 216px;	
}

.works_common_wrap ul.work_list li p{
	margin: 20px 0 0 0;
	font-size: 109%;
}

.works_common_wrap .work_photo_wrap{
	margin: 50px 0 0 0;
}

.works_common_wrap ul.work_photo{
	letter-spacing: -4px;
}

.works_common_wrap ul.work_photo li{
	display: inline-block;
	vertical-align: top;
	margin: 0 12px 12px 0;
}

.works_common_wrap ul.work_photo_text{
	margin: 20px 0 0 0;	
}

.works_common_wrap ul.work_photo_text li{
	font-size: 109%;
	line-height: 24px;
	color: #000000;
}

.works_common_title01{
	font-size: 117%;
	line-height: 24px;
	margin: 0 0 30px 0;
	padding: 0 0 0 4px;
}

/* ----------------------------------------------------------
.works_common_wrap .book_content
----------------------------------------------------------- */

.works_common_wrap .book_content{
	display: table;
	width: 100%;
	margin: 32px 0 32px 0;
}

.works_common_wrap .book_content .text{
	display: table-cell;
	vertical-align: top;
	padding: 0 0 0 30px;
}

.works_common_wrap .book_content .text .price{
	font-size: 117%;
	line-height: 24px;
	padding: 10px 3px;
	border-bottom: 1px dotted #e6e6e6;
}

.works_common_wrap .book_content .text .explain{
	padding: 15px 3px 0 3px;
	font-size: 117%;
	line-height: 24px;
}

.works_common_wrap .book_content .image{
	display: table-cell;
	vertical-align: top;
	width: 360px;
}

.works_common_wrap .book_content .image .bx-pager{
	margin: 20px 0 0 0;
	text-align: center;
	letter-spacing: -4px;	
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item{
	letter-spacing: normal;
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 9px;
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item a{
	display: block;
	width: 6px;
	height: 6px;
	background: url(../img/pagenation_on.jpg) no-repeat;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item a.active{
	background: url(../img/pagenation_off.jpg) no-repeat;
}

/* ----------------------------------------------------------
.works_common_wrap .book_content
----------------------------------------------------------- */

.works_common_wrap .ad_area{
	display: table;
	width: 100%;	
}

.works_common_wrap .ad_area .image{
	display: table-cell;
	vertical-align: top;
	text-align: right;
	width: 300px;
	padding: 0 0 0 35px;
}

.works_common_wrap .ad_area .text{
	display: table-cell;
	vertical-align: top;
	/*padding: 0 0 0 30px;*/
	font-size: 117%;
	line-height: 24px;
}

/* ----------------------------------------------------------
.common_gray_box
----------------------------------------------------------- */

.common_gray_box{
	padding: 28px 34px;
	border: 3px solid #f2f2f2;
	background:url(../img/common_gray_box_bg.jpg);
}

.common_gray_box p{
	font-size: 117%;
	line-height: 24px;
}

.common_gray_box dl{
	display: table;
	width: 100%;
	margin: 0 0 25px 0;
}

.common_gray_box dl.last{
	margin: 0px;
}

.common_gray_box dl dt{
	display: table-cell;
	vertical-align: top;
	width: 90px;
	padding: 0 20px 0 0;
	font-size: 136%;
	line-height: 24px;
}

.common_gray_box dl dd{
	display: table-cell;
	vertical-align: top;
	font-size: 125%;
	line-height: 24px;
	color: #666666;
}

/* ----------------------------------------------------------
.btn_area
----------------------------------------------------------- */

.btn_area{
	margin: 30px 0 0 0;
}

.btn_area .btn_wrap{
	display: inline-block;
}

.btn_area div.btn01{
	display: table;
	height: 46px;
	text-decoration: none !important;
}

.btn_area a.btn01{
	display: table;
	height: 46px;
	text-decoration: none !important;
}

.btn_area .btn01 span{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 210px;
	padding: 0 10px;
	color: #ffffff;
	background: #3380cc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
    -moz-box-shadow: 0px 2px 0px #1b5199;
    -webkit-box-shadow: 0px 2px 0px #1b5199;
    box-shadow: 0px 2px 0px #1b5199;
}

.btn_area .btn01 span:hover{
	background: #1b5199;
	-moz-box-shadow: 0px 2px 0px #1b5199;
    -webkit-box-shadow: 0px 2px 0px #1b5199;
    box-shadow: 0px 2px 0px #1b5199;	
}

.btn_area input.type01{
	text-align: center;
	color: #ffffff;
	border: none;
	width: 218px;
	height: 39px;
	background: #000000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin: 0 10px;
}

.btn_area input.type01.return{
	background: #626262;	
}

/* ----------------------------------------------------------
.common_table
----------------------------------------------------------- */

.common_table{
	display: table;
	width: 100%;
	margin: 30px 0 0 0;
	border-top: 1px solid #f1f1f1;
	border-left: 1px solid #f1f1f1;
}

.common_table .table_tr{
	display: table-row;
}

.common_table .table_th{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	width: 168px;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table .table_td{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	padding: 15px 40px 15px 74px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

input[type="text"].long01{
	width: 320px;
}

input[type="text"].long02{
	width: 90px;
}

select.select01{
	width: 120px;
}

.common_table .table_td .space{
	margin: 0 10px;
}

.common_table .table_tr.check .table_td{
	background: url(../img/contact_check.jpg) no-repeat 28px 23px;
}

.confirm .common_table .table_tr.check .table_td{
	background: url(../img/contact_check.jpg) no-repeat 28px 18px;
}

.form_block{
	margin: 0 0 10px 0;	
}

.form_block.last{
	margin: 0 0 0px 0;	
}

.table_tr.hankaku_number .form_block:after{
	content: "半角英数";
	font-size: 14px;
	color: #268fd0;
	margin: 10px 0 0 0;
}

.table_tr.hankaku_mail .form_block:after{
	content: "半角英数";
	font-size: 14px;
	color: #268fd0;
	margin: 10px 0 0 0;
}

/* ----------------------------------------------------------
.common_table02
----------------------------------------------------------- */

.common_table02{
	display: table;
	width: 100%;
	margin: 30px 0 0 0;
	border-top: 1px solid #f1f1f1;
	border-left: 1px solid #f1f1f1;
	background: #fffef2;
}

.common_table02 .table_tr{
	display: table-row;
}

.common_table02 .table_th{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	width: 168px;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table02 .table_td{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	padding: 15px 35px 15px 35px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* ----------------------------------------------------------
.common_table03
----------------------------------------------------------- */

.common_table03{
	display: table;
	width: 100%;
}

.common_table03 .table_tr{
	display: table-row;
}

.common_table03 .table_th{
	font-size: 100% !important;
	border: none !important;
	display: table-cell;
	vertical-align: middle;
	padding: 0 0 10px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table03 .table_th.cel01{
	width: 90px;
}

.common_table03 .table_th.cel02{
	
}

.common_table03 .table_th.cel03{
	width: 90px;
}

.common_table03 .table_td{
	font-size: 100% !important;
	border: none !important;
	display: table-cell;
	vertical-align: middle;
	padding: 0 10px 10px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table03 .input_table{
	width: 100%;
	display: table;	
}

.common_table03 .input_table .input_th{
	display: table-cell;
}

.common_table03 .input_table .input_td{
	display: table-cell;
	width: 2em;
	text-align: right;
}

.common_table03 .table_td input[type="text"]{
	width: 100% !important;
}

.common_table02 textarea{
	height: 200px;	
}

.order_block{
	vertical-align: middle;
	display: inline-block;
	width: 260px;
}

ul.book_order{
	display: table;
	width: 100%;	
}

ul.book_order li{
	display: table-cell;
}

ul.book_order li.title{
	width: 95px;
}

ul.book_order li.select{
	text-align: center;
	width: 115px;	
}

/* .privacy_wrap */

.privacy_wrap{
	margin: 40px 0;	
}

.privacy_wrap .privacy_wrap_in{
	margin: 20px 0;
	padding: 18px 25px;
	border: 1px solid #f1f1f1;
}

.privacy_wrap .privacy_wrap_in p{
	line-height: 18px;
}

.privacy_wrap .privacy_wrap_in li{
	line-height: 18px;
}

.privacy_wrap .privacy_wrap_in ol{
	margin: 0 0 0 20px;	
}

.privacy_wrap .privacy_wrap_in ol li{
	list-style: decimal;	
}

.privacy_wrap .privacy_wrap_in ul{
	margin: 0 0 0 -5px;
}

.privacy_wrap .privacy_wrap_in ul li{
	list-style: none;
}

.privacy_wrap .accept_wrap{
	margin: 20px 0;
	text-align: center;
}

.privacy_wrap .accept_wrap label{
	margin: 0 10px;
}

.privacy_wrap h3.common_title02{
	border: none !important;
	padding-bottom: 0 !important;	
}

}

@media screen and (min-width: 601px) and (max-width: 800px) {

/* ----------------------------------------------------------
.all_wrap
----------------------------------------------------------- */

.all_wrap{
	padding-top: 0px !important;	
}

/* ----------------------------------------------------------
header
----------------------------------------------------------- */

header h1{
	position: relative;
	text-align: center;
	height: 140px;	
}

header h1 img{
	position: absolute;
	top: 40px;
	left: 50%;
	margin: 0 0 0 -178px;
	width: 356px;
	height: 49px;
}

header nav.main_nav{
	letter-spacing: -4px;
	text-align: center;
	height: 46px;
}

header nav.main_nav li.main_nav_list{
	line-height: 46px;
	display: inline-block;
	margin: 0 9px;
}

header nav.main_nav li.main_nav_list .nav_title a{
	display: block;
	line-height: 46px;
}

/* ----------------------------------------------------------
.main
----------------------------------------------------------- */

.main{
	padding: 0 0 60px 0;	
}

.main_inner{
	padding: 45px 50px 0 50px;
}

/* ----------------------------------------------------------
.main_wrap
----------------------------------------------------------- */

.main_wrap{
	position: relative;	
}

/* ----------------------------------------------------------
.main .main_content
----------------------------------------------------------- */

.main .main_content{
	
}

/* ----------------------------------------------------------
.main_sub
----------------------------------------------------------- */

.main .main_sub{
	margin: 40px 0 0 0;
}

/* .main_sub_nav */

.main .main_sub .main_sub_nav{
	margin: 0 0 40px 0;
}

.main .main_sub .main_sub_nav ul{
	text-align: center;
	border: 1px solid #e5e5e5;	
	letter-spacing: -4px;
	padding: 26px 10px;
}

.main .main_sub .main_sub_nav li{
	margin: 0 1px;
	display: inline-block;
	vertical-align: middle;
	letter-spacing: normal;
}

.main .main_sub .main_sub_nav li a{
	text-decoration: none !important;
	padding: 8px 13px;
	height: 12px;
	line-height: 12px;
	display: inline-block;
	vertical-align: middle;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
	border-radius: 14px;
	position: relative;
	behavior: url(htc/PIE.htc);
}

.main .main_sub .main_sub_nav li a:hover{
	color: #ffffff;
	background: #0d4680;
}

.main .main_sub .main_sub_nav li a.active{
	color: #ffffff;
	background: #0d4680;
}

/* .topics */

.main .main_sub .topics{
	
}

.main .main_sub .topics ul{
	letter-spacing: -4px;
	border-top: 1px solid #e6e6e6;
	padding: 28px 0 0 0;	
}

.main .main_sub .topics ul li{
	width: 210px;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	margin: 0 28px 30px 0;	
}

.main .main_sub .topics dl dt{
	font-size: 109%;
	line-height: 18px;
	margin: 15px 0 10px 0;
}

.main .main_sub .topics dl dd{
	line-height: 18px;
	color: #666666;
}

.main .main_sub .topics p.bottom_link{
	margin: 10px 0 0 0;
}

.main .main_sub .topics ul li .bottom_text{
	font-size: 84%;
	line-height: 12px;
	margin: 20px 0 0 0;
	color: #666666;	
}

/* ----------------------------------------------------------
footer
----------------------------------------------------------- */

footer{
	color: #ffffff;	
}

footer .sns_area{
	letter-spacing: -4px;
	text-align: right;
	padding: 0 50px;
	margin: 0 auto 20px auto;	
}

footer .sns_area li{
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 13px;
}

footer .footer_content_wrap{
	padding: 26px 0px 0px 0px;
	background: url(../img/footer_bg.jpg);	
}

footer .footer_content_in{
	position: relative;
	margin: 0 auto;
	padding: 0px 50px 30px 50px;
}

footer .footer_in01{
	letter-spacing: -4px;
	width: 700px;
}

footer .footer_link_list{
	vertical-align: top;
	display: inline-block;
	letter-spacing: normal;
	margin: 0 25px 20px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

footer .footer_link_list.link_list01{
	width: 150px;
	display: block;
}

footer .footer_link_list.link_list02{
	width: 150px;
}

footer .footer_link_list.link_list03{
	width: 150px;
}

footer .footer_link_list.link_list04{
	width: 150px;
}

footer .footer_link_list.link_list05{
	width: 150px;
}

footer .footer_link_list.link_list06{
	width: 150px;
}

footer .footer_link_list .link_title{
	height: 12px;
	padding: 0 0 11px 3px;
	background: url(../img/img_border01.png) repeat-x bottom;	
}

footer .footer_link_list ul{
	padding: 10px 0 0 3px;
}

footer .footer_link_list ul li{
	line-height: 24px;	
}

.footer_logo{
	margin: 35px 0 0 0;
	text-align: center;	
}

footer p.copyright{
	text-align: center;
	padding: 18px 0 0 0;
	font-size: 92%;
	line-height: 18px;
	font-family: "Times New Roman", Times, serif;
}

footer .pageup{
	background: url(../img/pageup_bg.jpg);
}

footer .pageup a{
	text-align: center;
	padding: 20px 0;
	display: block;
}

/* ----------------------------------------------------------
common_title
----------------------------------------------------------- */

.common_title01{
	border-bottom: 1px solid #e5e5e5;
	position: relative;
	padding: 0 0 23px 23px;
	font-size: 92%;
	font-family:"Times New Roman", Times, serif;
}

.common_title01:after{
	content: "";
	top: 4px;
	left: 0;
	position: absolute;
	width: 15px;
	height: 3px;
	background: #e6e6e6;
}

.common_title02{
	border-bottom: 1px solid #e5e5e5;
	position: relative;
	padding: 0 0 16px 23px;
	font-size: 134%;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.common_title02:after{
	content: "";
	top: 6px;
	left: 0;
	position: absolute;
	width: 15px;
	height: 3px;
	background: #e6e6e6;
}

.common_title03{
	border-bottom: 1px dotted #e5e5e5;
	position: relative;
	padding: 0 0 23px 3px;
	font-size: 92%;
	font-family:"Times New Roman", Times, serif;
}

/* ----------------------------------------------------------
.page_title
----------------------------------------------------------- */

.page_title{
	background: #f3f3f3;
	height: 80px;
}

.page_title span{
	position: relative;
	display: block;
	font-size: 167%;
	letter-spacing: 0.05em;
	line-height: 80px;
	text-align: center;
}

/* ----------------------------------------------------------
.outline
----------------------------------------------------------- */

.outline{
	margin: 0 0 0 0;
}

.outline_list{
	padding: 20px 0 0 0;	
}

.outline_list h3{
	font-size: 150%;
	line-height: 28px;	
}

.outline_list ul{
	margin: 22px 0 0 0;
	width: 720px;
	letter-spacing: -4px;	
}

.outline_list ul li{
	vertical-align: top;
	display: inline-block;
	width: 204px;
	margin: 0 32px 26px 0;
}

.outline_list ul li figure{
	overflow: hidden;
	width: 202px;
	height: 134px;
	border: 1px solid #ecf0f5;
}

.outline_list ul li dl{
	
}

.outline_list ul li dl dt{
	font-size: 134%;
	line-height: 20px;
	letter-spacing: normal;
	margin: 18px 0 0 0;
}

.outline_list ul li dl dd{
	margin: 9px 0 0 0;
	color: #666666;
	font-size: 109%;
	letter-spacing: normal;
	line-height: 20px;
}

/* ----------------------------------------------------------
.works_common
----------------------------------------------------------- */

.works_common_wrap{
	padding: 35px 0;	
}

.works_common_wrap.detail{
	padding: 15px 0 35px 0;	
}

.works_common_wrap p.lead{
	font-size: 124%;
	line-height: 36px;
	color: #666666;
}

.works_common_wrap ul.work_list{
	padding: 35px 0 0 0;	
	letter-spacing: -4px;
	width: 740px;
}

.works_common_wrap ul.work_list li{
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	width: 324px;
	margin: 0 32px 32px 0;
}

.works_common_wrap ul.work_list li figure{
	height: 216px;	
}

.works_common_wrap ul.work_list li p{
	margin: 20px 0 0 0;
	font-size: 109%;
}

.works_common_wrap .work_photo_wrap{
	margin: 50px 0 0 0;
}

.works_common_wrap ul.work_photo{
	letter-spacing: -4px;
}

.works_common_wrap ul.work_photo li{
	display: inline-block;
	vertical-align: top;
	margin: 0 12px 12px 0;
}

.works_common_wrap ul.work_photo_text{
	margin: 20px 0 0 0;	
}

.works_common_wrap ul.work_photo_text li{
	font-size: 109%;
	line-height: 24px;
	color: #000000;
}

.works_common_title01{
	font-size: 117%;
	line-height: 24px;
	margin: 0 0 30px 0;
	padding: 0 0 0 4px;
}

.works_common_title01{
	font-size: 117%;
	line-height: 24px;
	margin: 0 0 30px 0;
	padding: 0 0 0 4px;
}

/* ----------------------------------------------------------
.works_common_wrap .book_content
----------------------------------------------------------- */

.works_common_wrap .book_content{
	display: table;
	width: 100%;
	margin: 32px 0 32px 0;
}

.works_common_wrap .book_content .text{
	display: table-cell;
	vertical-align: top;
	padding: 0 0 0 30px;
	min-width: 210px;
}

.works_common_wrap .book_content .text .price{
	font-size: 117%;
	line-height: 24px;
	padding: 10px 3px;
	border-bottom: 1px dotted #e6e6e6;
}

.works_common_wrap .book_content .text .explain{
	padding: 15px 3px 0 3px;
	font-size: 117%;
	line-height: 24px;
}

.works_common_wrap .book_content .image{
	display: table-cell;
	vertical-align: top;
	width: 360px;
}

.works_common_wrap .book_content .image .bx-pager{
	margin: 20px 0 0 0;
	text-align: center;
	letter-spacing: -4px;	
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item{
	letter-spacing: normal;
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 9px;
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item a{
	display: block;
	width: 6px;
	height: 6px;
	background: url(../img/pagenation_on.jpg) no-repeat;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item a.active{
	background: url(../img/pagenation_off.jpg) no-repeat;
}

/* ----------------------------------------------------------
.works_common_wrap .book_content
----------------------------------------------------------- */

.works_common_wrap .ad_area{
	display: table;
	width: 100%;	
}

.works_common_wrap .ad_area .image{
	display: table-cell;
	text-align: right;
	vertical-align: top;
	width: 300px;
	padding: 0 0 0 35px;
}

.works_common_wrap .ad_area .text{
	display: table-cell;
	vertical-align: top;
	min-width: 220px;
	padding: 0 0 0 30px;
	font-size: 117%;
	line-height: 24px;
}

/* ----------------------------------------------------------
.common_gray_box
----------------------------------------------------------- */

.common_gray_box{
	padding: 28px 34px;
	border: 3px solid #f2f2f2;
	background:url(../img/common_gray_box_bg.jpg);
}

.common_gray_box p{
	font-size: 117%;
	line-height: 24px;
}

.common_gray_box dl{
	display: table;
	width: 100%;	
	margin: 0 0 25px 0;
}

.common_gray_box dl.last{
	margin: 0px;
}

.common_gray_box dl dt{
	display: table-cell;
	vertical-align: top;
	width: 90px;
	padding: 0 20px 0 0;
	font-size: 136%;
	line-height: 24px;
}

.common_gray_box dl dd{
	display: table-cell;
	vertical-align: top;
	font-size: 125%;
	line-height: 24px;
	color: #666666;	
}

/* ----------------------------------------------------------
.btn_area
----------------------------------------------------------- */

.btn_area{
	margin: 30px 0 0 0;
}

.btn_area .btn_wrap{
	display: inline-block;
}

.btn_area div.btn01{
	display: table;
	height: 46px;
	text-decoration: none !important;
}

.btn_area a.btn01{
	display: table;
	height: 46px;
	text-decoration: none !important;
}

.btn_area .btn01 span{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 210px;
	padding: 0 10px;
	color: #ffffff;
	background: #3380cc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
    -moz-box-shadow: 0px 2px 0px #1b5199;
    -webkit-box-shadow: 0px 2px 0px #1b5199;
    box-shadow: 0px 2px 0px #1b5199;
}

.btn_area .btn01 span:hover{
	background: #1b5199;
	-moz-box-shadow: 0px 2px 0px #1b5199;
    -webkit-box-shadow: 0px 2px 0px #1b5199;
    box-shadow: 0px 2px 0px #1b5199;	
}

.btn_area input.type01{
	text-align: center;
	color: #ffffff;
	border: none;
	width: 218px;
	height: 39px;
	background: #000000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin: 0 10px;
}

.btn_area input.type01.return{
	background: #626262;	
}

/* ----------------------------------------------------------
.common_table
----------------------------------------------------------- */

.common_table{
	display: table;
	width: 100%;
	min-width: 678px;
	margin: 30px 0 0 0;
	border-top: 1px solid #f1f1f1;
	border-left: 1px solid #f1f1f1;
}

.common_table .table_tr{
	display: table-row;
}

.common_table .table_th{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	width: 168px;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table .table_td{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	padding: 15px 40px 15px 74px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

input[type="text"].long01{
	width: 220px;
}

input[type="text"].long02{
	width: 90px;
}

.common_table .table_td .space{
	margin: 0 10px;
}

.common_table .table_tr.check .table_td{
	background: url(../img/contact_check.jpg) no-repeat 28px 23px;
}

.confirm .common_table .table_tr.check .table_td{
	background: url(../img/contact_check.jpg) no-repeat 28px 18px;
}

select.select01{
	width: 120px;
}

.form_block{
	margin: 0 0 10px 0;	
}

.form_block.last{
	margin: 0 0 0px 0;	
}

.table_tr.hankaku_number .form_block:after{
	content: "半角英数";
	font-size: 14px;
	color: #268fd0;
	margin: 10px 0 0 0;
}

.table_tr.hankaku_mail .form_block:after{
	content: "半角英数";
	font-size: 14px;
	color: #268fd0;
	margin: 10px 0 0 0;
}

/* ----------------------------------------------------------
.common_table02
----------------------------------------------------------- */

.common_table02{
	display: table;
	width: 100%;
	min-width: 678px;
	margin: 30px 0 0 0;
	border-top: 1px solid #f1f1f1;
	border-left: 1px solid #f1f1f1;
	background: #fffef2;
}

.common_table02 .table_tr{
	display: table-row;
}

.common_table02 .table_th{
	font-size: 109%;
	display: table-cell;
	border-right: 1px solid #f1f1f1;
	border-bottom: 1px solid #f1f1f1;
	vertical-align: middle;
	width: 168px;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table02 .table_td{
	font-size: 109%;
	display: table-cell;
	vertical-align: middle;
	padding: 15px 35px 15px 35px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* ----------------------------------------------------------
.common_table03
----------------------------------------------------------- */

.common_table03{
	display: table;
	width: 100%;
}

.common_table03 .table_tr{
	display: table-row;
}

.common_table03 .table_th{
	font-size: 100% !important;
	border: none !important;
	display: table-cell;
	vertical-align: middle;
	padding: 0 0 10px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table03 .table_th.cel01{
	width: 90px;
}

.common_table03 .table_th.cel02{
	
}

.common_table03 .table_th.cel03{
	width: 90px;
}

.common_table03 .table_td{
	font-size: 100% !important;
	border: none !important;
	display: table-cell;
	vertical-align: middle;
	padding: 0 10px 10px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table03 .input_table{
	width: 100%;
	display: table;	
}

.common_table03 .input_table .input_th{
	display: table-cell;
}

.common_table03 .input_table .input_td{
	display: table-cell;
	width: 2em;
	text-align: right;
}

.common_table03 .table_td input[type="text"]{
	width: 100% !important;
}

.common_table02 textarea{
	height: 200px;	
}

.order_block{
	vertical-align: middle;
	display: inline-block;
	width: 260px;
}

ul.book_order{
	display: table;
	width: 100%;	
}

ul.book_order li{
	display: table-cell;
}

ul.book_order li.title{
	width: 95px;
}

ul.book_order li.select{
	text-align: center;
	width: 115px;	
}

/* .privacy_wrap */

.privacy_wrap{
	margin: 40px 0;	
}

.privacy_wrap .privacy_wrap_in{
	margin: 20px 0;
	padding: 18px 25px;
	border: 1px solid #f1f1f1;
}

.privacy_wrap .privacy_wrap_in p{
	line-height: 18px;
}

.privacy_wrap .privacy_wrap_in li{
	line-height: 18px;
}

.privacy_wrap .privacy_wrap_in ol{
	margin: 0 0 0 20px;	
}

.privacy_wrap .privacy_wrap_in ol li{
	list-style: decimal;	
}

.privacy_wrap .privacy_wrap_in ul{
	margin: 0 0 0 -5px;
}

.privacy_wrap .privacy_wrap_in ul li{
	list-style: none;
}

.privacy_wrap .accept_wrap{
	margin: 20px 0;
	text-align: center;
}

.privacy_wrap .accept_wrap label{
	margin: 0 10px;
}

.privacy_wrap h3.common_title02{
	border: none !important;
	padding-bottom: 0 !important;	
}

}

@media screen and (max-width: 600px) {

/* ----------------------------------------------------------
header
----------------------------------------------------------- */

header h1{
	position: relative;
	text-align: center;
	height: 115px;	
}

header h1 img{
	position: absolute;
	top: 48px;
	left: 50%;
	margin: 0 0 0 -130px;
	width: 260px;
	height: 35px;
}

header nav.main_nav{
	position: absolute;
	width: 100%;
	top: -406px;
	left: 0;
	letter-spacing: -4px;
	text-align: center;
}

header nav.main_nav ul.main_nav_in{
	padding: 0 0 1px 0;
	background: url(../img/img_border01.png) repeat-x bottom;
}

header nav.main_nav li.main_nav_list a{
	
}

header nav.main_nav .nav_title{
	width: 100%;
	height: 30px;
	background: url(../img/sp_nav_bg.jpg);
}

header nav.main_nav .nav_title_in{
	display: table;
	width: 100%;
	height: 30px;
	background: url(../img/img_border01.png) repeat-x top;
}

.mobile header nav.main_nav .nav_title_in{
	background: url(../img/img_border01_sp.png) repeat-x top;
}

header nav.main_nav .main_nav_list.nav01 .nav_title{
	width: 100%;
	height: 45px;
	background: none;	
}

header nav.main_nav .main_nav_list.nav01 .nav_title_in{
	display: table;
	width: 100%;
	height: 45px;
	background: none;	
}

header nav.main_nav .nav_title a{
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

header nav.main_nav ul.main_sub_nav_list{
	display: table;
	width: 100%;
	background: url(../img/img_border01.png) repeat-x top;
}

.mobile header nav.main_nav ul.main_sub_nav_list{
	background: url(../img/img_border01_sp.png) repeat-x top;
}

header nav.main_nav ul.main_sub_nav_list li{
	display: table-cell;
	width: 50%;
}

header nav.main_nav ul.main_sub_nav_list li.right{
	background: url(../img/img_border01.png) repeat-y left;	
}

.mobile header nav.main_nav ul.main_sub_nav_list li.right{
	background: url(../img/img_border01_sp.png) repeat-y left;	
}

header nav.main_nav ul.main_sub_nav_list li a{
	display: block;
	text-align: center;
	line-height: 30px;
	height: 30px;
}

.nav_switch{
	cursor: pointer;
	width: 24px;
	position: absolute;
	top: 14px;
	left: 14px;
}

.nav_switch img{
	width: 24px;
	height: 12px;
}

/* ----------------------------------------------------------
.main_wrap
----------------------------------------------------------- */

.main{
	padding: 0 0 60px 0;	
}

.main_wrap{
	position: relative;	
}

/* ----------------------------------------------------------
.main
----------------------------------------------------------- */

.main_inner{
	padding: 45px 30px 0 30px;
}

/* ----------------------------------------------------------
.main .main_content
----------------------------------------------------------- */

.main .main_content{
	
}

/* ----------------------------------------------------------
.main_sub
----------------------------------------------------------- */

.main .main_sub{
	margin: 40px 0 0 0;
}

.main .main_sub .topics{
	
}

.main .main_sub .topics ul{
	border-top: 1px solid #e6e6e6;
	padding: 28px 0 0 0;	
}

.main .main_sub .topics ul li{
	width: 210px;
	vertical-align: top;
	margin: 0 auto 25px auto;	
}

.main .main_sub .topics dl dt{
	font-size: 109%;
	line-height: 18px;
	margin: 15px 0 10px 0;
}

.main .main_sub .topics dl dd{
	line-height: 18px;
	color: #666666;
}

.main .main_sub .topics p.bottom_link{
	margin: 10px 0 0 0;
}

.main .main_sub .topics ul li .bottom_text{
	font-size: 84%;
	line-height: 12px;
	margin: 20px 0 0 0;
	color: #666666;	
}

/* ----------------------------------------------------------
footer
----------------------------------------------------------- */

footer{
	color: #ffffff;	
}

footer .sns_area{
	letter-spacing: -4px;
	text-align: center;
	margin: 0 auto 20px auto;	
}

footer .sns_area li{
	display: inline-block;
	vertical-align: top;
	margin: 0 6px;
}

footer .footer_content_wrap{
	padding: 26px 0px 0px 0px;
	background: url(../img/footer_bg.jpg);	
}

footer .footer_content_in{
	position: relative;
	margin: 0 auto;
	padding: 0px 30px 30px 30px;
}

footer .footer_in01{
	display: none;
}

.footer_logo{
	text-align: center;	
}

footer p.copyright{
	text-align: center;
	padding: 18px 0 0 0;
	font-size: 92%;
	line-height: 18px;
	font-family: "Times New Roman", Times, serif;
}

footer .pageup{
	background: url(../img/pageup_bg.jpg);
}

footer .pageup a{
	text-align: center;
	padding: 20px 0;
	display: block;
}

/* ----------------------------------------------------------
common_title
----------------------------------------------------------- */

.common_title01{
	border-bottom: 1px solid #e5e5e5;
	position: relative;
	padding: 0 0 23px 23px;
	font-size: 92%;
	font-family:"Times New Roman", Times, serif;
}

.common_title01:after{
	content: "";
	top: 4px;
	left: 0;
	position: absolute;
	width: 15px;
	height: 3px;
	background: #e6e6e6;
}

.common_title02{
	border-bottom: 1px solid #e5e5e5;
	position: relative;
	padding: 0 0 16px 23px;
	font-size: 134%;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.common_title02:after{
	content: "";
	top: 6px;
	left: 0;
	position: absolute;
	width: 15px;
	height: 3px;
	background: #e6e6e6;
}

.common_title03{
	border-bottom: 1px dotted #e5e5e5;
	position: relative;
	padding: 0 0 23px 3px;
	font-size: 92%;
	font-family:"Times New Roman", Times, serif;
}

/* ----------------------------------------------------------
.page_title
----------------------------------------------------------- */

.page_title{
	background: #f3f3f3;
	height: 55px;
}

.page_title span{
	position: relative;
	display: block;
	font-size: 134%;
	letter-spacing: 0.05em;
	line-height: 55px;
	text-align: center;
}

/* ----------------------------------------------------------
.outline
----------------------------------------------------------- */

.outline{
	margin: 0 0 0 0;
}

.outline_list{
	padding: 20px 0 0 0;	
}

.outline_list h3{
	font-size: 150%;
	line-height: 28px;	
}

.outline_list ul{
	margin: 22px auto 0 auto;
	width: 260px;
}

.outline_list ul li{
	width: 260px;
	margin: 0 32px 26px 0;
}

.outline_list ul li figure{
	overflow: hidden;
	width: 100%;
	border: 1px solid #ecf0f5;
}

.outline_list ul li figure img{
	width: 100%;	
}

.outline_list ul li dl{
	
}

.outline_list ul li dl dt{
	font-size: 134%;
	line-height: 20px;
	letter-spacing: normal;
	margin: 18px 0 0 0;
}

.outline_list ul li dl dd{
	margin: 9px 0 0 0;
	color: #666666;
	font-size: 109%;
	letter-spacing: normal;
	line-height: 20px;
}

/* ----------------------------------------------------------
.works_common
----------------------------------------------------------- */

.works_common_wrap{
	padding: 35px 0;	
}

.works_common_wrap.detail{
	padding: 15px 0 35px 0;	
}

.works_common_wrap p.lead{
	font-size: 124%;
	line-height: 36px;
	color: #666666;
}

.works_common_wrap ul.work_list{
	padding: 35px 0 0 0;	
	letter-spacing: -4px;
	width: 260px;
	margin: 0 auto;
}

.works_common_wrap ul.work_list li{
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	width: 260px;
	margin: 0 0 32px 0;
}


.works_common_wrap ul.work_list li p{
	margin: 20px 0 0 0;
	font-size: 109%;
}

.works_common_wrap .work_photo_wrap{
	width: 260px;
	margin: 50px auto 0 auto;
}

.works_common_wrap ul.work_photo{
	width: 276px;
	letter-spacing: -4px;
}

.works_common_wrap ul.work_photo li{
	display: inline-block;
	vertical-align: top;
	margin: 0 12px 12px 0;
}

.works_common_wrap ul.work_photo_text{
	margin: 20px 0 0 0;	
}

.works_common_wrap ul.work_photo_text li{
	font-size: 109%;
	line-height: 24px;
	color: #000000;
}

.works_common_title01{
	font-size: 117%;
	line-height: 24px;
	margin: 0 0 30px 0;
	padding: 0 0 0 4px;
}

/* ----------------------------------------------------------
.works_common_wrap .book_content
----------------------------------------------------------- */

.works_common_wrap .book_content{
	width: 100%;
	margin: 32px 0 32px 0;
}

.works_common_wrap .book_content .text{
}

.works_common_wrap .book_content .text .price{
	font-size: 117%;
	line-height: 24px;
	padding: 10px 3px;
	border-bottom: 1px dotted #e6e6e6;
}

.works_common_wrap .book_content .text .explain{
	padding: 15px 3px 0 3px;
	font-size: 117%;
	line-height: 24px;
}

.works_common_wrap .book_content .image{
	max-width: 300px;
	margin: 0 auto 30px auto;
}

.works_common_wrap .book_content .image .bx-pager{
	margin: 20px 0 0 0;
	text-align: center;
	letter-spacing: -4px;	
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item{
	letter-spacing: normal;
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 9px;
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item a{
	display: block;
	width: 6px;
	height: 6px;
	background: url(../img/pagenation_on.jpg) no-repeat;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}

.works_common_wrap .book_content .image .bx-pager .bx-pager-item a.active{
	background: url(../img/pagenation_off.jpg) no-repeat;
}

/* ----------------------------------------------------------
.works_common_wrap .book_content
----------------------------------------------------------- */

.works_common_wrap .ad_area .image{
	max-width: 260px;
	margin: 20px auto 0 auto;
}

.works_common_wrap .ad_area .text{
	font-size: 117%;
	line-height: 24px;
}

/* ----------------------------------------------------------
.common_gray_box
----------------------------------------------------------- */

.common_gray_box{
	padding: 14px 17px;
	border: 3px solid #f2f2f2;
	background:url(../img/common_gray_box_bg.jpg);
}

.common_gray_box p{
	font-size: 117%;
	line-height: 24px;
}

.common_gray_box dl{
	margin: 0 0 15px 0;
}

.common_gray_box dl.last{
	margin: 0px;
}


.common_gray_box dl dt{
	font-size: 136%;
	line-height: 24px;
}

.common_gray_box dl dd{
	font-size: 125%;
	line-height: 24px;
	color: #666666;	
}

/* ----------------------------------------------------------
.btn_area
----------------------------------------------------------- */

.btn_area{
	margin: 30px 0 0 0;
	text-align: center;
}

.btn_area .btn_wrap{
	display: inline-block;
}

.btn_area div.btn01{
	display: table;
	height: 46px;
	text-decoration: none !important;
}

.btn_area a.btn01{
	display: table;
	height: 46px;
	text-decoration: none !important;
}

.btn_area .btn01 span{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 210px;
	padding: 0 10px;
	color: #ffffff;
	background: #3380cc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
    -moz-box-shadow: 0px 2px 0px #1b5199;
    -webkit-box-shadow: 0px 2px 0px #1b5199;
    box-shadow: 0px 2px 0px #1b5199;
}

.btn_area .btn01 span:hover{
	background: #1b5199;
	-moz-box-shadow: 0px 2px 0px #1b5199;
    -webkit-box-shadow: 0px 2px 0px #1b5199;
    box-shadow: 0px 2px 0px #1b5199;	
}

.btn_area input.type01{
	text-align: center;
	color: #ffffff;
	border: none;
	width: 100%;
	height: 39px;
	background: #000000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin: 10px 0
}

.btn_area input.type01.return{
	background: #626262;	
}

/* ----------------------------------------------------------
.common_table
----------------------------------------------------------- */

.common_table{
	margin: 30px 0 0 0;
}

.common_table .table_tr{
}

.common_table .table_th{
	font-size: 109%;
	line-height: 16px;
	display: inline-block;
	margin: 5px 0;
	padding: 0 40px 0 0;
}

.common_table .table_td{
	font-size: 109%;
	margin: 10px 0 20px 0;
}

input[type="text"].long01{
	min-width: 200px;
	width: 100%;
}

input[type="text"].long02{
	width: 50px;
}

.common_table .table_td .space{
	margin: 0 10px;
}

.common_table .table_tr.check .table_th{
	background: url(../img/contact_check.jpg) no-repeat right;
}

select.select01{
	width: 80px;
}

.form_block{
	margin: 0 0 10px 0;	
}

.form_block.last{
	margin: 0 0 0px 0;	
}

.table_tr.hankaku_number .form_block:after{
	display: block;
	content: "半角英数";
	font-size: 13px;
	color: #268fd0;
	margin: 10px 0 0 0;
}

.table_tr.hankaku_mail .form_block:after{
	display: block;
	content: "半角英数";
	font-size: 13px;
	color: #268fd0;
	margin: 10px 0 0 0;
}

.table_tr.hankaku_mail .form_block label{
	display: block;	
}

/* ----------------------------------------------------------
.common_table02
----------------------------------------------------------- */

.common_table02{
	margin: 30px 0 0 0;
	border-top: 1px solid #f1f1f1;
	border-left: 1px solid #f1f1f1;
	border-right: 1px solid #f1f1f1;
	background: #fffef2;
}

.common_table02 .table_tr.hankaku_number .form_block:after{
	margin-left: 10px !important;
	display: inline-block !important;	
}

.common_table02 .table_tr{
	display: table;
	width: 100%;
	border-bottom: 1px solid #f1f1f1;	
}

.common_table02 .table_th{
	padding: 10px 10px 0 10px;
	font-size: 109%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table02 .table_td{
	padding: 10px;
	font-size: 109%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* ----------------------------------------------------------
.common_table03
----------------------------------------------------------- */

.common_table03{
	display: table;
	width: 100%;
}

.common_table03 .table_tr{
	display: table-row;
}

.common_table03 .table_th{
	font-size: 100% !important;
	border: none !important;
	display: table-cell;
	vertical-align: middle;
	padding: 0 0 10px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table03 .table_th.cel01{
	width: 70px;
}

.common_table03 .table_th.cel02{
	
}

.common_table03 .table_th.cel03{
	width: 80px;
}

.common_table03 .table_td{
	font-size: 100% !important;
	border: none !important;
	display: table-cell;
	vertical-align: middle;
	padding: 0 5px 5px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.common_table03 .input_table{
	width: 100%;
	display: table;	
}

.common_table03 .input_table .input_th{
	display: table-cell;
}

.common_table03 .input_table .input_td{
	display: table-cell;
	width: 2em;
	text-align: right;
}

.common_table03 .table_td input[type="text"]{
	width: 100% !important;
}

.common_table02 textarea{
	height: 200px;	
}

.order_block{
	display: inline-block;
	margin: 0 0 10px 0;
}

ul.book_order{
	display: inline-block;
}

ul.book_order li{
	display: inline-block;
}

ul.book_order li.title{
	margin: 0 10px 0 0;
}

ul.book_order li.select{
	text-align: center;
	padding: 0 10px 0 0;
}

/* .privacy_wrap */

.privacy_wrap{
	margin: 40px 0;	
}

.privacy_wrap .privacy_wrap_in{
	margin: 20px 0;
	padding: 18px 25px;
	border: 1px solid #f1f1f1;
}

.privacy_wrap .privacy_wrap_in p{
	line-height: 18px;
}

.privacy_wrap .privacy_wrap_in li{
	line-height: 18px;
}

.privacy_wrap .privacy_wrap_in ol{
	margin: 0 0 0 20px;	
}

.privacy_wrap .privacy_wrap_in ol li{
	list-style: decimal;	
}

.privacy_wrap .privacy_wrap_in ul{
	margin: 0 0 0 -5px;
}

.privacy_wrap .privacy_wrap_in ul li{
	list-style: none;
}

.privacy_wrap .accept_wrap{
	margin: 20px 0;
	text-align: center;
}

.privacy_wrap .accept_wrap label{
	margin: 0 10px;
}

.privacy_wrap h3.common_title02{
	border: none !important;
	padding-bottom: 0 !important;	
}

#ad_slider{
	width: 320px;
	margin: 0 0 0 -160px;	
}

#ad_slider_in{
	width: 200px;
	padding: 0 60px;	
}

#ad_slider_in .bx-prev{
	cursor: pointer;
	position: absolute;
	top: 50%;
	left: 10px;
	display: block;
	width: 24px;
	height: 24px;
	margin: -24px 0 0 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: url(../img/ad_arrow01.png) no-repeat;
	background-size: 24px 24px;
}

#ad_slider_in .bx-next{
	cursor: pointer;
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 24px;
	height: 24px;
	margin: -24px 0 0 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: url(../img/ad_arrow02.png) no-repeat;
	background-size: 24px 24px;
}

}
	


