@charset "utf-8";
/*___________ レイアウト追加設計 ___________ */
/*___________ 【CONTENTS】チェックマーク ___________ */
/*.check {
	font-size: 14px;
	line-height: 140%;
	padding: 0 10px 0 10px;
}
.check li {
	background: url(../../../shop/img-layout/ico_check01.gif) no-repeat left 6px;
	padding: 4px 0 4px 22px;
}*/
/*___________ 【CONTENTS】プロフィール ___________ */
.profile {
	padding: 10px 0 10px 0;
}
.profile-l {
	width:160px;
	float:left;
}
.profile-r {
	width: 375px;
	float:right;
	background-color: #FCFCFC;
	border: 1px solid #999999;
}
/*___________ 【CONTENTS】サイトマップ ___________ */
/*.sitemap ul{
	margin: 0 0 20px 20px;
}
.sitemap li{
	font-size: 12px;
	;
	line-height: 170%;
	background-image: url(../../../shop/img-layout/li_arrow02.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 25px;
}*/
/*___________ 【CONTENTS】メルマガフォーム ___________ */
/*#MAG2 {
	border: 1px solid #999999;
	background: url(../../../shop/img/bg_mag2.jpg) no-repeat center top;
	padding-top: 120px;
	margin: 10px 5px 5px 5px;
}
#MAG2 form {
	margin: 10px;
	font-size: 12px;
}*/
/*___________ 【CONTENTS】ページ送り ___________ */
.bute {
	font-size: 12px;
	line-height: 120%;
	text-align: center;
}
.bute a {
	color: #0066CC;
	text-decoration: none;
	border: 1px solid #CCCCCC;
	padding: 5px;
}
.bute a:hover,
.bute a:active, 		/* for IE (Keyboard) */
.bute a:focus {		/* for Netscape (Keyboard) */
	color: #FFFFFF;
	background-color: #0066CC;
	border: 1px solid #CCCCCC;
}
/*___________ 【CONTENTS】２列レイアウト ___________ */
.double {
	padding: 10px;
	margin-top: 10px;
}
.double-l {
	width:250px;
	float:left;
	background-color: #F9F9F9;
	margin-bottom: 10px;
}
.double-r {
	width: 250px;
	float:right;
	background-color: #F9F9F9;
	margin-bottom: 10px;
}
/*___________ 【CONTENTS】AdSense風レイアウト ___________ */
/*.ads {
	margin: 0 30px 0 30px;
	background: url(../../../shop/img-layout/bg_ads.gif) no-repeat center bottom;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #336699;
}
.ads-l {
	width:234px;
	float:left;
}
.ads-r {
	width: 234px;
	float:right;
}
.ads p {
	line-height: 120%;
	margin: 2px 5px 2px 5px;
	padding: 1px;
}*/
/*___________ 【CONTENTS】表設計 ___________ */
.main-table table {
	font-size: 12px;
	background-color: #CCCCCC;
	margin: 10px auto 10px auto;
	padding: 0;
	line-height: 150%;
}
.main-table tr,.main-table th,.main-table td {
	padding: 5px;
}
.main-table th {
	color: #FFFFFF;
	background-color: #999999;
	font-weight: bold;
}
.main-table td {
	background-color: #FFFFFF;
	text-align: left;
}
/*___________ 【CONTENTS】rel="lightbox" ___________ */
#lightbox{
	position: absolute;
	top: 40px;
	left: 0;
	width: 100%;
	z-index: 100;
	text-align: center;
	line-height: 0;
}
#lightbox img{
	width: auto;
	height: auto;
}
#outerImageContainer{
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
}
#imageContainer{
	padding: 10px;
}
#loading{
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
}
#imageDataContainer{
	font-size: 12px;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
}
#imageData{
	padding:0 10px;
}
#imageData #imageDetails{
	width: 70%;
	float: left;
	text-align: left;
}	
#imageData #numberDisplay{
	display: block;
	clear: left;
	padding-bottom: 1.0em;
}
#imageData #bottomNavClose{
	width: 66px;
	float: right;
	padding-bottom: 0.7em;
}
#overlay{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 500px;
	background-color: #000;
}
.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}
* html>body .clearfix {
	display: inline-block; 
	width: 100%;
}
* html .clearfix {
	/* Hides from IE-mac \*/
	height: 1%;
	/* End hide from IE-mac */
}
/*___________ 【CONTENTS】rel="vidbox" ___________ */
/*#lbOverlay {
	position: absolute;
	left: 0;
	width: 100%;
	background-color: #000;
	cursor: pointer;
}
#lbCenter, #lbBottomContainer {
	position: absolute;
	left: 50%;
	overflow: hidden;
	background-color: #fff; text-align: center; padding: 5px;
}
.lbLoading {
	background: #fff url(../../../shop/img-layout/loading.gif) no-repeat center;
}
#lbImage {
	border: 10px solid #fff;
}
#lbBottom {
	font-size: 12px;
	color: #666;
	line-height: 1.4em;
	text-align: left;
	border: 5px solid #fff;
	border-top-style: none;
}
#lbCloseLink {
	display: block;
	float: right;
	width: 66px;
	height: 22px;
	background: transparent url(../../../shop/img-layout/closelabel.gif) no-repeat center;
	margin: 5px 0;
}*/
/*___________ 【SIDE】カレンダー設計 ___________ */
/*.calendar1 {
	width: 180px;
	height: auto;
	margin: 0;
	padding: 0 0 10px 0;
	background: url(../../../shop/img-layout/side-f.jpg) no-repeat center top;
	position: relative;
}
.calendar2 {
	width: 180px;
	height: auto;
	margin: 0 0 10px 0;
	padding: 0;
	background: url(../../../shop/img-layout/side-f.jpg) no-repeat center bottom;
	position: relative;
}
.calendar1 p {
	font-size: 11px;
}
.calendar2 p {
	font-size: 11px;
}
.cal_wrapper {
	padding: 0;
	margin: 0 6px 0 6px;
}
.cal_ui {
	width: 90px;
	position: absolute;
	left: 84px;
	top: 4px;
}
.cal_ui li {
	float: left;
	width: 45px;
	height: 18px;
	list-style: none;
}
.cal_prev {
	background-image: url(../../../shop/calendar/cal-prev.gif);
}
.cal_next {
	background-image: url(../../../shop/calendar/cal-next.gif);
}
.cal_base p {
	font-size: 12px;
	font-weight: bold;
	padding: 5px;
	margin: 0;
	border-bottom: solid 1px #CCCCCC;
}
.cal_main {
	padding: 0;
	margin: 0;
}
.cal_main li {
	font-size: 12px;
	line-height: 160%;
	width: 24px;
	text-align: center;
	list-style: none;
	float: left;
	border-bottom: solid 1px #CCCCCC;
}
.Today {
	background-color: #FFFFFF;
}
.holyday {
	color: #FFFFFF;
	font-weight: bolder;
	background-color: #FF0000;
}
.Sun {
	color: #FF0000;
}
.Sat {
	color: #0000FF;
}*/
/*___________ 【TAB】 ___________ */
/*___________ bodyマージンを[margin: 20px 0 0 0;]にして使用。 ___________ */
/*___________ 使用しない場合はbodyマージンを[margin: 0;]に。 ___________ */
#TAB {
	background-color: #FFFFFF;
	position: absolute;
	width: 100%;
	left: 0px;
	top: 0px;
	border-bottom: 1px solid #CCCCCC;
}
#TAB p {
	font-size: 12px;
	line-height: 20px;
	margin: 0;
	padding: 0 0 0 20px;
}
.main-table2 table {
	font-size: 13px;
	background-color: #CCCCCC;
	margin: 10px auto 10px auto;
	padding: 0;
	line-height: 150%;
}
.main-table2 tr, .main-table2 th, .main-table2 td {
	padding: 5px;
}
.main-table2 th {
	color: #FFFFFF;
	background-color: #999999;
	font-weight: bold;
}
.main-table2 td {

}
.books {
	float: right;
	margin-right: 40px;
}
.main-table3 table {
	font-size: 13px;
	background-color: #CCCCCC;
	padding: 0;
	line-height: 150%;
	margin: 20px;
}
.main-table3 tr, .main-table3 th, .main-table3 td {
	padding: 5px;
}
.main-table3 th {
	color: #333333;
	background-color: #EEEEEE;
	font-weight: bold;
}
.main-table3 td {

}
.main-table4 table {
	font-size: 12px;
	background-color: #CCCCCC;
	padding: 0;
	line-height: 150%;
	margin: 20px;
}
.main-table4 tr, .main-table4 th, .main-table4 td {
	padding: 5px;
}
.main-table4 th {
	color: #333333;
	background-color: #EEEEEE;
	font-weight: bold;
}
.main-table4 td {

}
.table-green {
	background-color: #EAFFE1;
	text-align: center;
}
.table-yellow {
	background-color: #FFFFCC;
	text-align: center;
}
.table-wht {
	background-color: #FFFFFF;
}

.table-orange {
	background-color: #FFCC99;
	text-align: center;
}
.table-white {
	background-color: #FFFFFF;
	text-align: center;
}
.main-table5 table {
	font-size: 13px;
	background-color: #CCCCCC;
	padding: 0;
	line-height: 150%;
	margin: 20px;
}
.main-table5 tr, .main-table5 th, .main-table5 td {
	padding: 5px;
}
.main-table5 th {
	color: #333333;
	background-color: #EEEEEE;
	font-weight: bold;
}
.main-table5 td {

}
.seminar-table table {
	font-size: 13px;
	background-color: #CCCCCC;
	padding: 0;
	line-height: 150%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}
.seminar-table tr, .seminar-table th, .seminar-table td {
	padding: 5px;
}
.seminar-table th {
	color: #333333;
	background-color: #F5F5F5;
	font-weight: normal;
	width: 70px;
}
.seminar-table td {
	background-color: #FFFFFF;
}
.main-table-zaitaku18 table {
	font-size: 11px;
	background-color: #CCCCCC;
	padding: 0;
	line-height: 140%;
	margin: 20px;
}
.main-table-zaitaku18 tr, .main-table-zaitaku18 th, .main-table-zaitaku18 td {
	padding: 5px;
}
.main-table-zaitaku18 th {
	color: #333333;
	background-color: #EEEEEE;
	font-weight: bold;
}
.main-table-zaitaku18 td {
}



.book_ttl1 {
	font-size: 15px;
	color: #FFFFFF;
	background-color: #990000;
	margin: 5px;
	padding-top: 3px;
	padding-left: 20px;
	font-weight: bold;
}


.book_ttl2 {
	font-size: 18px;
	color: #FFFFFF;
	background-color: #001257;
	margin: 5px;
	padding-top: 3px;
	padding-left: 20px;
	font-weight: bold;
}

.book_ttl3 {
	font-size: 18px;
	color: #FFFFFF;
	background-color: #B1811D;
	margin: 5px;
	padding-top: 3px;
	padding-left: 20px;
	font-weight: bold;
}

/*.bookmark-div {
	text-align: right;
	padding-right: 10px;
	background-image: url(/images/bookmark_bg.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	margin-left: 20px;
	margin-top: 5px;
	margin-right: 20px;
}*/
/* -------------------------------------- オンラインのみの商品です .otodoke.ol-info */
.otodoke.ol-info h2 {
  background-image: url("/img/otdk/info-ol_ttl.jpg");
}
.otodoke.ol-info h2 + p {
  font-size: 22px;
}
.otodoke.ol-info .flo-l,
.otodoke.ol-info .flo-r {
  margin: 0 0 1em;
  padding: 0 5% 0 3%;
  width: 50%;
  text-align: left;
  box-sizing: border-box;
}
.otodoke.ol-info .flo-l img,
.otodoke.ol-info .flo-r img {
  width: 100%;
  height: auto;
}
.otodoke.ol-info .flo-l {
  padding: 0 3% 0 5%;
}
.otodoke.ol-info p.clear {
  padding-top: 1em;
}
/*.otodoke.ol-info img {
  display: inline;
  margin: 0;
  width: auto;
}*/
.otodoke.ol-info .flo-r img {
  padding-top: 4em;
}
.otodoke.ol-info .clear img {
  width: 90%;
  height: auto;
}
/* -------------------------------------- e-shopsカート .ord_eshops */
.ord_eshops, .ord_eshops * {
  margin: 0;
  padding: 0;
  text-align: center;
}
input[type="submit"].buybtn {
  display: block;
  width: 800px;
  height: 0;
  margin: 0 auto;
  padding: 110px 0 0 0;
  background-image: url("../img/btob_32.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 800px auto;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  appearance: none;
  transition: .5s;
}
.ord_eshops .buybtn:hover,
.ord_eshops .buybtn:active {
  opacity: .8;
}
.pay-div img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100px;
}
/* -------------------------------------- ショップインフォ .shopinfo */
#shopinfo {
  margin-left: auto;
  margin-right: auto;
  padding: 4em 3em;
  font-size: 14px;
  line-height: 1.4;
}
#shopinfo .asp_info {
  padding: 0 20px;
  background-image: url("/img/pay/infotop.jpg");
  background-repeat: no-repeat;
  background-position: right 40px top;
  background-size: 326px 113px;
}
#shopinfo .asp_info ol li {
  text-indent: -1em;
  padding-left: 1em;
  font-size: .9em;
}
#shopinfo address {
  font-style: normal;
}
#shopinfo img {
  width: auto;
  max-width: 100%;
  height: auto;
}
#shopinfo p {
  margin: 0 0 .5em;
  padding: 0;
  font-size: 14px;
}
#shopinfo p:has(img) {
  margin: 0;
}
#shopinfo .flexbox {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
#shopinfo .shopinfo_l {
  width: 430px;
  padding-right: 19px;
  border-right: 1px dotted #CCCCCC;
}
#shopinfo .shopinfo_r {
  width: 430px;
  padding-left: 20px;
}
#shopinfo h2, #shopinfo h3 {
  margin: .5em 0;
  padding: 0 0 0 20px;
  height: 36px;
  position: relative;
  color: #FFFFFF;
  font-size: 16px;
  font-weight: normal;
  text-align: left;
  line-height: 36px;
  background-color: #000;
  background-image: url("/img/pay/shop_ttl_bg_bl.gif")
}
#shopinfo h2::before, #shopinfo h3::before {
  content: "";
  display: block;
  width: 3px;
  height: 1em;
  background-color: #FFFFFF;
  position: absolute;
  top: 10px;
  left: 10px;
}
#shopinfo h4 {
  margin: 1em 0 .5em;
  font-size: 16px;
  font-weight: bold;
  border-bottom:1px solid #000;
}
#shopinfo ul {
  letter-spacing: -1px;
  padding-left: 0;
  list-style-type: none;
}
#shopinfo .maxw60 {
  width: 60%;
  max-width: 280px;
}
#shopinfo .maxh60 {
  max-height: 60px;
}
#shopinfo .caution {
  background-color: #FFFFF4;
  border: 1px solid #CCCC00;
  padding: 1em;
}
#shopinfo .conv-ex {
  padding: .5em;
  background-color: #F0F0F0;
}
#shopinfo .conv-ex ol {
  margin-bottom: 0;
}
#shopinfo .conv-ex ol li {
  padding-left: 2.5em;
  font-size: .9em;
  text-indent: -3em;
}
/* -------------------------------------- パンくずリスト .path */
nav.path {
  padding: 1em 0 0;
  width: 850px;
  margin: 0 auto;
}
nav.path ul {
  display: inline-flex;
  flex-wrap: wrap;
  margin: 0 2vw;
}
nav.path li {
  font-size: .8em;
  white-space: nowrap;
}
nav.path li::after {
  content: "\03e";
  padding: 0 .5em;
}
nav.path li:last-child::after {
  content: "";
}
/* -------------------------------------- サブページコンテンツ .contents */
.contents {
  width: 750px;
  font-size: 16px;
  margin: 0 auto;
}
.contents p {
  font-size: 16px;
}
.contents h2 {
  margin: 40px 0;
}
.contents .minbox {
  width: 650px;
  margin: 0 auto;
}
.contents ul {
  margin: 0;
}
.contents ol {
  margin: 0 0 0 20px;
}
.contents ol li {
  list-style-type: decimal;
}
.contents table {
  width: 100%;
  border-collapse: collapse;
}
.contents th {
  display: table-cell;
  width: 30%;
  padding: 1em 0;
  text-align: center;
  white-space: nowrap;
  border-bottom: 1px solid #3D232B;
}
.contents td {
  display: table-cell;
  width: 70%;
  padding: .5em 0;
  border-bottom: 1px solid #3D232B;

}
.contents tr:last-child th,
.contents tr:last-child td {
  border-bottom: none;
}
/* -------------------------------------- プライバシーポリシー #privacy */
#privacy ol {
  list-style-type: decimal;
  padding-left: 1em;
}
#privacy h3 {
  font-weight: bold;
  border-bottom: 1px solid #3D232B;
}
#privacy h4 {
  color: #252525;
  font-size: 1em;
}
/* -------------------------------------- お問い合わせ .contact */
#contact iframe {
  width: 100%;
  height: 1200px;
}
.telno {
  width: 500px;
  margin: 3em auto 1em;
  padding: 1em;
  border: 1px solid #3D232B;
  position: relative;
}
.telno p {
  margin: 0;
}
.telno p:first-child {
  display: inline-block;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  background-color: #FFFFFF;
  position: absolute;
  top: -.8em;
  left: 1em;
}
.telno p:last-child {
  text-align: center;
}
.telno.lg {
  width: 520px;
}
.telno.lg p:last-child img {
  width: 500px;
  height: auto;
}