@charset "utf-8";


/* Smartphone Landscape and Portrait------------------------------------------------*/
@media screen and (max-width:667px) {
body{
  min-width:100%;
}

/* ====================================================================================================
* STRUCTURE
==================================================================================================== */
/* --------------------------------------------------
* mainContents
-------------------------------------------------- */
#mainContents {
  position:relative;
  top:54px;
  min-width:100%;
  padding:0 0 77px;
}
#mainContents a:hover {
  text-decoration: underline;
}
#mainContents input[type=image] {
  vertical-align: bottom;
  line-height: 1;
  margin: 0;
  padding: 0;
}
#mainContents h2.heading {
  font-size: 170%;
}
#mainContents h2.heading img {
  margin-top: 0px;
}
#mainContents h2.heading img.pt-a {
  margin-top: 3px;
}


/* ====================================================================================================
* PARTS
==================================================================================================== */
#mainContents h1.mainVisual {
  position:relative;
  min-height:auto !important;
  height:220px;
  margin:0 0 40px;
  background-color:#f1f1f1;
}
#mainContents h1.mainVisual > span {
  position:relative;
  display:inline-block;
  width:100%;
  height:60px;
  margin:0 auto;
  padding:18px 0 0 20px;
  box-sizing:border-box;
}
#mainContents h1.mainVisual > span img {
  vertical-align:top;
  margin-left:0;
}

.breadth1100 {
  position:relative;
  width:90%;
  margin:0 auto;
}

.breadth960 {
  position:relative;
  width:90%;
  margin:0 auto;
}

.pc{
  display:none !important;
}

.sp{
  display:block;
}

/* --------------------------------------------------
* header
-------------------------------------------------- */
header {
position:fixed;
  min-width:100%;
  height:54px;
  z-index:10000;
  background:#fff;
}
header #headerInner {
  * zoom: 1;
  width:100%;
  margin:0 auto;
  padding:19px 14px 0;
  box-sizing:border-box;
}
header #headerInner h1 {
  width:150px;
  float:left;
  margin:1px 0 0 0;
}
header #headerInner h1 img{
  width:100%;
  margin:0;
}
header #headerInner #headNavi {
  position:fixed;
  float:none;
  z-index:8000;
}
header #headerInner #headNavi ul {
  padding:50px 0 0 0;
  text-align:center;
}
header #headerInner #headNavi ul li {
  width:auto;
  max-width: 100%;
  display:block;
  padding:12px 0;
  margin:0 auto;
  text-align:center !important;
  box-sizing:border-box;
}
header #headerInner #headNavi ul li:fisrt-child {
  padding:10px 0;
}
header #headerInner #headNavi ul li a{
  color:#00a1e3;
}
header #headerInner #headNavi ul li:last-child a:after{
  color:#00a1e3;
}
header #headerInner #headSns{
  position:absolute;
  top:18px;
  right:52px !important;
  width:78px;
  margin-left:0;
  float:none !important;
  display:block;
}
header #headerInner #headSns ul {
  margin:0;
  padding:0;
}
header #headerInner #headSns ul li {
  width:22px;
  margin:0;
  padding:0 2px 0 0;
}
header #headerInner #headSns ul li:last-child {
  padding: 0;
}
header #headerInner #headSns ul li a{
  width:22px;
  height:22px;
  background:#421300;
   -webkit-border-radius:100%;
  -moz-border-radius:100%;
  border-radius:100%;
  display:block;
}
header #headerInner #headSns ul li a:after{
  content:"\f106";
  width:22px;
  margin:1px auto 0 !important;
  padding:0;
  line-height:1;
  font-size:100%;
  font-style:normal;
  font-family:'FontAwesome';
  color:#fff;
  display:inline-block;
  text-align:center;
  vertical-align:middle;
}
header #headerInner #headSns ul li.snsinsta a:after{
  content:"\f16d";
  margin:2px auto 0;
}
header div.headBnr img,
header div.headBnr a.bnr_login {
  display:none;
}

/* --------------------------------------------------
* nav
-------------------------------------------------- */
header nav#headNavi{
  position:fixed;
  z-index:4000;
  width:100%;
  height:0;
  top:0;
  left:0;
  transition-duration: 0.5s;
  transition-timing-function: ease-in-out;
}

header nav#headNavi .gnav .nav{
  position:fixed;
  z-index: 2000;
  width:100%;
  height:0;
  top:0;
  left:0;
  overflow:hidden;
  transition-property:all;
  transition-duration:0.5s;
  transition-timing-function:ease-in-out;
}
header nav#headNavi .gnav .nav .nav_body{
  background-color:rgba(255,255,255,1);
  position:relative;
  width:100%;
  height:400px;
}
header nav#headNavi .gnav .nav .menubody{
  position:relative;
  margin:0 auto;
  overflow: auto;
}
header nav#headNavi .gnav .nav.active{
  width:100%;
  height:400px;
  transition-property:all;
  transition-duration:0.5s;
  transition-timing-function: ease-in-out;
}
header nav#headNavi .open_tab {
  position:fixed;
  top:16px;
  right:14px;
  width:30px;
  height:30px;
  z-index:30000;
  opacity:1;
}
header nav#headNavi .open_tab:hover{opacity:1;}
header nav#headNavi .gnav .nav.active .open_tab { right: -55px;}
header #headerInner #headNavi ul li.navilogin {display: block;}

header .menu-trigger,
header .menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
header .menu-trigger {
  position:relative;
  width:30px;
  height:24px;
}
header .menu-trigger:hover{
  text-decortaion:none !important;
}
header .menu-trigger span {
  position: absolute;
  left:0;
  width:100%;
  height:2px;
  background-color:#000;
  border-radius:2px;
}
header .menu-trigger span:nth-of-type(1) {
  top:0;
}
header .menu-trigger span:nth-of-type(2) {
  top:11px;
}
header .menu-trigger span:nth-of-type(3) {
  bottom:0;
}
header .menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(11px) rotate(-45deg);
  transform: translateY(11px) rotate(-45deg);
}
header .menu-trigger.active span:nth-of-type(2) {
  opacity:0;
}
header .menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-11px) rotate(45deg);
  transform: translateY(-11px) rotate(45deg);
}
header .menu-trigger:hover{
  text-decoration:none !important;
}

/* --------------------------------------------------
* footer
-------------------------------------------------- */
footer {
  position:relative;
  min-width:100%;
}
footer #btnGotop {
  position:absolute;
  right:29px;
  top:-70px;
  width:37px;
  height:51px;
}
footer #footerInner {
  width:100%;
  margin:0 auto;
  padding:30px 10px;
  box-sizing:border-box;
}
footer #footerInner #footNavi {
  margin:0 0 20px 0;
  text-align:center;
  float:none;
}
footer #footerInner #footNavi ul {
  flex-direction: column;
}
footer #footerInner #footNavi ul li {
  margin:0 0 10px 0;
  padding:0;
  display:block;
}
footer #footerInner #footNavi ul li:fisrt-child {
  padding:0;
}
footer #footerInner small {
  margin: 30px auto 0;
  color: #fff;
  font-size: 12px;
  text-align: center;
}
#mainContents .btnmore02:after{
  position:absolute;
  top:9px;
  margin:0;
  padding:0 0 0 2px;
  font-size:110%;
  line-height:1;
}
#mainContents .btnmore04{
  position:relative;
  font-size:90%;
  padding:7px 10px;
  width:100%;
}
#mainContents .btnmore04:after{
  padding:0 0 0 2px;
}
#mainContents .btnmore05{
  position:relative;
  width:90%;
  height:50px;
  margin:0 auto;
  padding:12px 14px 0;
  color:#fff;
  font-size:140%;
  font-weight:bold;
  background:#421300;
  -webkit-border-radius:6px;
  -moz-border-radius:6px;
  border-radius:6px;
  display:block;
  box-sizing:border-box;
  text-decoration:none;
  text-align:center;
}
#mainContents .btnmore05:after{
  content:"\f0da";
  position:absolute;
  top:12px;
  right:16px;
  width:27px;
  height:27px;
  margin:0;
  padding:4px 0 0 2px;
  line-height:1;
  font-size:120%;
  font-style:normal;
  font-family:'FontAwesome';
  color:#421300;
  background:#fff;
  -webkit-border-radius:100px;
  -moz-border-radius:100px;
  border-radius:100px;
  display:inline-block;
  text-align:center;
  vertical-align:middle;
  box-sizing:border-box;
}
#mainContents .btnmore06:after{
  padding:-1px 0 0 2px;
}
#mainContents .btnmore07{
  position:relative;
  width:90%;
  height:50px;
  padding:14px 14px 0;
  color:#00a2e4;
  font-size:130%;
}
#mainContents .btnmore07:after{
  content:"\f0da";
  position:absolute;
  top:15px;
  right:16px;
  width:22px;
  height:22px;
  margin:0;
  padding:4px 0 0 2px;
  font-size:90%;
}


/* ====================================================================================================
* home
==================================================================================================== */
#home #mainContents, #mainContents.page-home {
  padding:0;
}

#home #mainContents .btn_type01, #mainContents.page-home .btn_type01 {
  padding:0;
  text-align: right;
}
#home #mainContents .btn_type01 li, #mainContents.page-home .btn_type01 li {
  display: inline-block;
  margin:0 0 0 10px;
}
#home #mainContents #viewSec, #mainContents.page-home #viewSec {
  min-height:100%;
  width:100%;
  background-size:100% auto;
}

#home #mainContents #viewSec .btn_type01, #home #mainContents #viewSec .btn_type02, #home #mainContents #viewSec .btn_type03, #home #mainContents #viewSec .btn_type04, #home #mainContents #viewSec .btn_type05, #home #mainContents #viewSec .btn_type06, #home #mainContents #viewSec .btn_type07, #home #mainContents #viewSec .btn_type08, #home #mainContents #viewSec .btn_type09, #home #mainContents #viewSec .btn_type10{
  display:none;
}

#home #mainContents #viewSec a.sp {
  pointer-events: initial;
  cursor: pointer;
}

#home #mainContents #viewSec #viewImg, #mainContents.page-home #viewSec #viewImg {
  position: relative;
  /* Control Nav */
}
#home #mainContents #viewSec #viewImg ul.slides, #mainContents.page-home #viewSec #viewImg ul.slides {
  *zoom: 1;
}
#home #mainContents #viewSec #viewImg ul.slides:after, #mainContents.page-home #viewSec #viewImg ul.slides:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  font-size: 0;
  visibility: hidden;
}
#home #mainContents #viewSec #viewImg ul.slides li, #mainContents.page-home #viewSec #viewImg ul.slides li {
  height:100%;
  overflow: hidden;
}
#home #mainContents #viewSec #viewImg ul.slides li .viewLogo, #mainContents.page-home #viewSec #viewImg ul.slides li .viewLogo {
  position: relative;
  display: block;
  width:100%;
  margin: 0 auto;
}
#home #mainContents #viewSec #viewImg ul.slides li .viewImages, #mainContents.page-home #viewSec #viewImg ul.slides li .viewImages {
  width: 100%;
  height: auto;
}
#home #mainContents #viewSec #viewImg ul.slides li:nth-child(3) .viewLogo img, #mainContents.page-home #viewSec #viewImg ul.slides li:nth-child(3) .viewLogo img {
  position: absolute;
  width:24%;
  height:auto;
  right:40px;
  top:40px;
}
#home #mainContents #viewSec #viewImg ul.slides .viewLogo.wl-logo img, #mainContents.page-home #viewSec #viewImg ul.slides .viewLogo.wl-logo img {
  top: 30px;
  left: inherit;
  right: 50px;
  width: 86px;
  height: 146px;
}
#home #mainContents #viewSec #viewImg .flex-control-nav, #mainContents.page-home #viewSec #viewImg .flex-control-nav {
  position: relative;
  z-index:5000;
  width: 100%;
  /*margin-top: -30px;*/
  text-align: center;
}
#home #mainContents #viewSec #viewImg .flex-control-nav li, #mainContents.page-home #viewSec #viewImg .flex-control-nav li {
  margin: 10px 0 0 10px;
  display: inline-block;
  zoom: 1;
  *display: inline;
}
#home #mainContents #viewSec #viewImg .flex-control-nav li:first-child, #mainContents.page-home #viewSec #viewImg .flex-control-nav li:first-child {
  margin: 0;
}
#home #mainContents #viewSec #viewImg .flex-control-nav li a, #mainContents.page-home #viewSec #viewImg .flex-control-nav li a {
  width: 10px;
  height: 10px;
  display: block;
  background: url(../images/home/bg_control_nav.png) no-repeat 0 0;
  background-size: 100% auto;
  cursor: pointer;
  text-indent: -9999px;
}
#home #mainContents #viewSec #viewImg .flex-control-nav li a:hover, #mainContents.page-home #viewSec #viewImg .flex-control-nav li a:hover {
  background-position: 0 -10px;
}
#home #mainContents #viewSec #viewImg .flex-control-nav li a.flex-active, #mainContents.page-home #viewSec #viewImg .flex-control-nav li a.flex-active {
  background-position: 0 -10px;
  cursor: default;
}
#home #mainContents #infoSec #infoList, #mainContents.page-home #infoSec #infoList {
  padding:15px 0 0;
}
#home #mainContents #infoSec #infoList > li, #mainContents.page-home #infoSec #infoList > li {
  *zoom: 1;
  width:100% !important;
  min-height:2em;
  background:none;
  padding:0 0 5px 0;
  box-sizing:border-box;
}
#home #mainContents #infoSec #infoList > li:after, #mainContents.page-home #infoSec #infoList > li:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  font-size: 0;
  visibility: hidden;
}
#home #mainContents #infoSec #infoList > li .date, #mainContents.page-home #infoSec #infoList > li .date {
  float:left;
  width:20%;
  margin:0 4% 0 0;
  display:block;
}
#home #mainContents #infoSec #infoList > li .infoTxt, #mainContents.page-home #infoSec #infoList > li .infoTxt {
  display: block;
  float:left;
  width:76%;
}
#home #mainContents #infoSec #infoList > li a, #mainContents.page-home #infoSec #infoList > li a, #home #mainContents #infoSec #infoListMore > li a, #mainContents.page-home #infoSec #infoListMore > li a {
  color: #00a1e3;
}
#home #mainContents #infoSec #infoListMore, #mainContents.page-home #infoSec #infoListMore {
  padding:0;
}
#home #mainContents #infoSec #infoListMore > li, #mainContents.page-home #infoSec #infoListMore > li {
  *zoom: 1;
  width:100% !important;
  min-height: 2em;
  background:none;
  padding:0 0 5px 0;
}
#home #mainContents #infoSec #infoListMore > li:after, #mainContents.page-home #infoSec #infoListMore > li:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  font-size: 0;
  visibility: hidden;
}
#home #mainContents #infoSec #infoListMore > li .date, #mainContents.page-home #infoSec #infoListMore > li .date {
  float:left;
  width:20%;
  margin:0 4% 0 0;
  display:block;
}
#home #mainContents #infoSec #infoListMore > li .infoTxt, #mainContents.page-home #infoSec #infoListMore > li .infoTxt {
  float:left;
  width:76%;
  display:block;
}
#home #mainContents #infoSec #infoMore, #mainContents.page-home #infoSec #infoMore {
  position:relative;
  right:10px;
  margin:0 0 30px 0;
  font-size:110%;
  font-weight:bold;
  text-align:right;
}
#home #mainContents #rentalSec{
  position:relative;
  display:block;
  min-height:auto;
  background:none;
  padding:0 0 30px 0;
  /*background:url(../images/home/img_rental.jpg) no-repeat right top;
  background-size:cover;*/
}
#home #mainContents #rentalSec .main{
  height:240px;
  background:url(../images/home/img_rental.jpg) no-repeat 70% 46%;
  background-size:146%;
}
#home #mainContents #rentalSec h1, #mainContents.page-home #rentalSec h1{
  position:absolute;
  top:-8px;
  left:-74px;
  margin:0;
  text-align:left;
  font-size:170%;
}
#home #mainContents #rentalSec h1 img{
  width:34px;
  height:auto;
}
#home #mainContents #rentalSec h1 span{
  margin:0 0 0 6px;
  font-weight:400;
}
#home #mainContents #rentalSec h2{
  margin:20px 0;
  font-size:160%;
  font-weight:bold;
  color:#421300;
}
#home #mainContents #rentalSec .lead, #mainContents.page-home #rentalSec .lead {
  padding: 0 0 20px 22px;
}
#home #mainContents #rentalSec .btn_type01, #mainContents.page-home #rentalSec .btn_type01 {
  position:absolute;
  padding:0;
  left:0;
  top:0;
  background:#ff0000;
}
#home #mainContents .btnright{
  float:right;
}
#home #mainContents #librarySec, #mainContents.page-home #librarySec {
  background:#421300;
  background-size:50% auto;
  padding:0 0 30px 0;
  color: #fff;
  font-weight: normal;
}
#home #mainContents #librarySec h1, #mainContents.page-home #librarySec h1 {
  padding:20px 0;
  font-size:170%;
}
#home #mainContents #librarySec h1 img, #mainContents.page-home #librarySec h1 img{
  width:30px;
  height:auto;
}
#home #mainContents #librarySec h1 span{
  margin:0 0 0 6px;
  font-weight:400;
}
#home #mainContents #librarySec #libraryList, #mainContents.page-home #librarySec #libraryList {
  margin:0 0 12px;
  padding:0 10px;
}
#home #mainContents #librarySec #libraryList > li, #mainContents.page-home #librarySec #libraryList > li {
  display: inline-block;
  margin:0 2% 20px;
  padding:0;
  width:46%;
  text-align: center;
  vertical-align: top;
}
#home #mainContents #librarySec #libraryList > li a, #mainContents.page-home #librarySec #libraryList > li a {
  color:#fff;
  display: block;
}
#home #mainContents #librarySec #libraryList > li span.book, #mainContents.page-home #librarySec #libraryList > li span.book {
  display: block;
  position: relative;
  margin: 0 auto 16px;
}
#home #mainContents #librarySec #libraryList > li span.book img, #mainContents.page-home #librarySec #libraryList > li span.book img {
  vertical-align:top;
}
#home #mainContents #librarySec #libraryList > li span.bName, #mainContents.page-home #librarySec #libraryList > li span.bName {
  display:inline-block;
  text-indent:0;
  margin: 0;
  padding: 0 5px;
  text-align:left !important;
  font-size:12px;
}
#home #mainContents #librarySec #libraryList > li span.bName .icon, #mainContents.page-home #librarySec #libraryList > li span.bName .icon {
  max-width: 24px;
  max-height: 16px;
  padding: 0 5px 0 0;
  vertical-align: middle;
  display:none;
}
#home #mainContents #librarySec .btn_type01{
  margin:0;
  padding:0;
}
#home #mainContents #librarySec .btn_type01 li{
  width:47%;
    margin:0 1.5%;
    padding:0;
  display:inline-block;
  float:left;
}
#home #mainContents #librarySec .btn_type01 li img{
  width:100%;
  height:auto;
}

#home #mainContents #shopSec, #mainContents.page-home #shopSec {
  padding:0 0 30px 0;
  min-height:auto;
  background:none;
}
#home #mainContents #shopSec .btn_type01, #mainContents.page-home #shopSec .btn_type01 {
  padding: 0;
  position: absolute;
  left: 844px;
  top: 480px;
}
#home #mainContents #shopSec .main{
  height:240px;
  background:url(../images/home/img_shop.jpg) no-repeat 100% 0;
  background-size:146%;
}
#home #mainContents #shopSec h1, #mainContents.page-home #shopSec h1{
  position:absolute;
  top:0;
  left:-72px;
  margin:0;
  text-align:left;
  font-size:170%;
}
#home #mainContents #shopSec h1 img{
  width:34px;
  height:auto;
}
#home #mainContents #shopSec h1 span{
  margin:0 0 0 6px;
  font-weight:400;
}
#home #mainContents #shopSec h2{
  margin:20px 0;
  font-size:160%;
  font-weight:bold;
  letter-spacing:0;
  color:#421300;
}
#home #mainContents #eventSec, #mainContents.page-home #eventSec {
  padding:0 0 30px 0;
  min-height:auto;
  background:#fff;
  /*background: url(../images/home/img_event.jpg) no-repeat right top #00a1e2;
  background-size: 100% auto;*/
}
#home #mainContents #eventSec .lead, #home #mainContents #shopSec .lead, #mainContents.page-home #eventSec .lead {
  padding: 0 0 20px 72px;
}
#home #mainContents #eventSec .btn_type01, #mainContents.page-home #eventSec .btn_type01 {
  padding:0;
  position: absolute;
  left: 844px;
  top: 480px;
}
#home #mainContents #eventSec .main{
  height:240px;
  background:url(../images/home/img_event.jpg) no-repeat right top;
  background-size:146%;
}
#home #mainContents #eventSec h1, #mainContents.page-home #eventSec h1{
  position:absolute;
  top:0;
  left:-72px;
  margin:0;
  padding-top:30px;
  text-align:left;
  font-size:170%;
}
#home #mainContents #eventSec h1 img{
  width:26px;
  height:auto;
}
#home #mainContents #eventSec h1 span{
  margin:0 0 0 6px;
  padding:2px 0 0 0;
  font-weight:400;
  display:inline-block;
}
#home #mainContents #eventSec h2{
  margin:20px 0;
  font-size:160%;
  font-weight:bold;
}

#home #mainContents #newsSec{
  display:none;
}

#home #mainContents #newsSec h1, #mainContents.page-home #newsSec h1 {
  padding: 38px 70px 34px 74px;
}
#home #mainContents #newsSec .newsList, #mainContents.page-home #newsSec .newsList {
  padding: 0 70px 40px;
}
#home #mainContents #newsSec .newsList > li, #mainContents.page-home #newsSec .newsList > li {
  display: inline-block;
  vertical-align: top;
  margin: 0 0 0 29px;
}
#home #mainContents #newsSec .newsList > li:first-child, #mainContents.page-home #newsSec .newsList > li:first-child {
  margin: 0;
}
#home #mainContents #newsSec .newsList > li .newsTitle, #mainContents.page-home #newsSec .newsList > li .newsTitle {
  padding: 16px 0 0;
  font-size: 15px;
  font-weight: bold;
}
#home #mainContents #newsSec .newsList > li .newsTxt, #mainContents.page-home #newsSec .newsList > li .newsTxt {
  padding: 7px 0 0;
  font-size: 12px;
}
#home #mainContents #contactSec, #mainContents.page-home #contactSec {
  background-color: #f1f1f1;
  padding:0 0 140px 0;
  margin:0;
}
#home #mainContents #contactSec h1, #mainContents.page-home #contactSec h1 {
  width:50%;
  padding:30px 0 16px 0;
  font-size:170%;
  font-weight:400;
}
#home #mainContents #contactSec h1 img{
  width:40px;
  height:auto;
}
#home #mainContents #contactSec h1 span{
  margin:0 0 0 6px;
  padding:2px 0 0 0;
  font-weight:400;
  display:inline-block;
}

#home #mainContents #contactSec .lead, #mainContents.page-home #contactSec .lead {
  display:none;
}
#home #mainContents #contactSec .splead{
  margin:0 0 14px 0;
  font-size:120%;
  font-weight:bold;
  color:#421300;
}
#home #mainContents #contactSec .btn_contact, #mainContents.page-home #contactSec .btn_contact {
  padding: 15px 0 0;
  text-align: center;
}
#home #mainContents #contactSec .btn_contact img, #mainContents.page-home #contactSec .btn_contact img{
  width:90%;
  height:auto;
}
#home #mainContents #contactSec dl {
  padding: 0px;
  font-weight: bold;
}
#home #mainContents #contactSec dd {
  margin-bottom: 20px;
}


/* ====================================================================================================
* about
==================================================================================================== */
#about #mainContents, #mainContents.page-about {
  padding-bottom:160px;
}

#about #mainContents h1.mainVisual, #mainContents.page-about h1.mainVisual {
  position:relative;
  width:100% !important;
  padding:0;
  margin-bottom:14px !important;
  background:url(../images/about/bkg_01.jpg) no-repeat left top;
  /*background: url(../images/library/bkg_01.jpg) no-repeat 50% 60px;*/
  background-size:100%;
}
/*#about #mainContents h1.mainVisual, #mainContents.page-about h1.mainVisual {
  background: url(../images/about/bkg_01.jpg) no-repeat right top #421300;
  background-size: 50% auto;
}*/
#about #mainContents h1.mainVisual span img, #mainContents.page-about h1.mainVisual span img {
  position:absolute;
  top:0;
  bottom:0;
  right:20px;
  width:36%;
  height:auto;
  margin-left:0;
}

#about #mainContents .comment, #mainContents.page-about .comment{
  width:90%;
  margin:0 auto;
  padding:0;
  font-size:120%;
  font-weight:bold;
  padding-bottom:60px;
  margin-bottom:60px;
  text-align:left;
  border-bottom:1px solid #421300;
}

#about #mainContents .comment p.txtC, #mainContents.page-about .comment p.txtC {
  text-align: left;
  line-height: 1.6;
  font-size: 1rem;
}

#about #mainContents .comment p.smalltxt{
  font-size: 0.9rem;
  margin-top: 30px;
}

#about #mainContents .comment.last, #mainContents.page-about .comment.last {
  border: none;
  margin-bottom: 0px;
  padding-bottom: 0px;
}

/* ====================================================================================================
* service
==================================================================================================== */
#service #mainContents, #mainContents.page-service {
  padding-bottom:0px;
}

#service #mainContents h1.mainVisual, #mainContents.page-service h1.mainVisual {
  position:relative;
  width:100% !important;
  padding:0;
  background:url(../images/service/bkg_01.jpg) no-repeat 50% 60px;
  background-size:100%;
}
#service #mainContents h1.mainVisual span{
  background-color:#3c240e;
  display:block !important;
}
#service #mainContents h1.mainVisual span img, #mainContents.page-service h1.mainVisual span img {
  position:relative;
  top:-2px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#service #mainContents h1.mainVisual span em, #mainContents.page-service h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:12px 0 0 0;
  font-size:160%;
  display:inline-block;
  line-height:0;
  float:left;
}

#service #mainContents .breadth960 .sort{
  margin:0 0 60px 0;
}

#service #mainContents .breadth960 .sort article{
  width:100%;
  height:456px;
  margin:0 0 30px 0;
  font-size:110%;
  letter-spacing:1px;
  text-align:center;
  color:#fff;
  -webkit-border-radius:20px;
  -moz-border-radius:20px;
  border-radius:20px;
  background:#411302;
  float:none;
}

#service #mainContents .breadth960 .sort article:nth-child(2){
  color:#411303;
  background:#f8de31;
}

#service #mainContents .breadth960 .sort article:last-child{
  margin:0;
  background:#1ba0e1;
}

#service #mainContents .breadth960 .sort article h2{
  padding:22px 0 14px;
  font-size:130%;
  font-weight:bold;
  line-height:100%;
}

#service #mainContents .breadth960 .sort article .imgcol{
  margin:0 0 14px 0;
  height:180px;
  background: url(../images/service/photo01.jpg) no-repeat 50% 50%;
  background-size:100%;
}

#service #mainContents .breadth960 .sort article h3{
  position:relative;
  width:100%;
  height:60px;
  background:url(../images/service/logo01.png) no-repeat 50% 50%;
}

#service #mainContents .breadth960 .sort article:nth-child(2) h3{
  background:url(../images/service/logo02.png) no-repeat 50% 50%;
}

#service #mainContents .breadth960 .sort article:last-child h3{
  background:url(../images/service/logo03.png) no-repeat 50% 50%;
}

#service #mainContents .breadth960 .sort article .txt{
  margin:14px 0;
}

#service #mainContents .breadth960 .sort article .txsmall{
  margin:4px 0 0 0;
  font-size:80%;
}

#service #mainContents .breadth960 .sort article .price{
  font-size:110%;
  font-weight:bold;
}

#service #mainContents .breadth960 .sort article .price em{
  margin:0 4px 0 0;
  font-size:110%;
  font-style:normal;
}

#service #mainContents .breadth960 .sort article .price span{
  font-size:180%;
}

#service #mainContents.page-service h2.lineup {
  font-size:100%;
  width:90%;
  margin: 0 auto 14px;
  font-weight:bold;
}

#service #mainContents .breadth1100 {
  padding:0 0 60px 0;
}
#service .mobile_carousel .flex-viewport {
  min-height: 0;
}
#service .mobile_carousel #libraryList.slides {
  overflow: hidden;
}
#service .mobile_carousel #libraryList.slides > li {
    display: block;
    padding-bottom: 0;
}
#service .mobile_carousel .flex-direction-nav a {
  color: #fff;
}
#service .mobile_carousel ul.flex-direction-nav a {
    position: absolute;
    top: 38%;
    font-size: 36px
}
#service .mobile_carousel ul.flex-direction-nav .flex-prev {
    left: -10px;
}
#service .mobile_carousel ul.flex-direction-nav .flex-next {
    left: initial;
    right: -10px;
}

/* ====================================================================================================
* rental
==================================================================================================== */
#rental #mainContents, #mainContents.page-rental {
  padding-bottom:140px;
}
#rental #mainContents .breadth1100, #mainContents.page-rental .breadth1100 {
  *zoom: 1;
  width:90%;
  margin:0 auto;
  padding:0 0 60px 0;
}
#rental #mainContents h1.mainVisual, #mainContents.page-rental h1.mainVisual {
  position:relative;
  width:100% !important;
  margin:0 0 30px 0;
  padding:0;
  background: url(../images/rental/bkg_01.jpg) no-repeat 50% 30px #f8e000;
  background-size:cover;
}
#rental #mainContents h1.mainVisual span{
  background-color:#1ea5e1;
  display:block !important;
}
#rental #mainContents h1.mainVisual span img, #mainContents.page-rental h1.mainVisual span img {
  position:relative;
  top:-8px;
  width:245px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#rental #mainContents h1.mainVisual span em, #mainContents.page-rental h1.mainVisual span em{
  margin:0 0 0 5px;
  padding:12px 0 0 0;
  font-size:160%;
  font-weight:400;
  display:inline-block;
  line-height:0;
  float:left;
}
#rental #mainContents .btnlogin{
  position:absolute;
  top:140px;
  width:90px;
  height:98px;
}
#rental #mainContents .sec01, #mainContents.page-rental .sec01,
#rental #mainContents .sec03, #mainContents.page-rental .sec03,
#rental #mainContents .sec05, #mainContents.page-rental .sec05,
#rental #mainContents .sec07, #mainContents.page-rental .sec07,
#rental #mainContents .sec08, #mainContents.page-rental .sec08,
#rental #mainContents .sec10, #mainContents.page-rental .sec10 {
  width:90%;
  margin:0 auto;
  padding:30px 0;
}
#rental #mainContents .sec02 .inner, #mainContents.page-rental .sec02 .inner,
#rental #mainContents .sec04 .inner, #mainContents.page-rental .sec04 .inner,
#rental #mainContents .sec06 .inner, #mainContents.page-rental .sec06 .inner,
#rental #mainContents .sec09 .inner, #mainContents.page-rental .sec09 .inner {
  width:90%;
  margin:0 auto;
  padding:30px 0;
}
#rental #mainContents .border_ttl, #mainContents.page-rental .border_ttl {
  font-size: 133.333%;
  padding: 4px 10px;
}
#rental #mainContents .inner .cta_btn a, #mainContents.page-rental .inner .cta_btn a, #rental #mainContents .inner .btn_rental a, #mainContents.page-rental .inner .btn_rental a {
  width: auto;
  padding: 10px 10px;
  font-size: 150%;  
}
#rental #mainContents .bnr_birthday, #mainContents.page-rental .bnr_birthday {
  margin-top:65px;
}
#rental #mainContents .bnr_birthday img, #mainContents.page-rental .bnr_birthday img {
  width: 100%;
  height: auto;
}
#rental #mainContents .sec01, #mainContents.page-rental .sec01 {
  padding: 0 0 30px;
}
#rental #mainContents .sec01 .note, #mainContents.page-rental .sec01 .note {
  margin-bottom: 30px;
}
#rental #mainContents .sec01 h2, #mainContents.page-rental .sec01 h2 {
  margin-bottom:40px;
}
#rental #mainContents .sec02 .inner, #mainContents.page-rental .sec02 .inner {
  padding: 50px 0 5px;
}
#rental #mainContents .sec02 h2, #mainContents.page-rental .sec02 h2{
  margin-bottom: 20px;
}
#rental #mainContents .sec02 .inner ul li, #mainContents.page-rental .sec02 .inner ul li {
  flex-basis: auto;
}
#rental #mainContents .sec03 img,#mainContents.page-rental .sec03 img{
  max-width:100%;
  height: auto;
}
#rental #mainContents .sec04 .inner .lead, #mainContents.page-rental .sec04 .inner .lead {
  margin-bottom:30px;
}
#rental #mainContents .sec04 .inner #btnArea, #mainContents.page-rental .sec04 .inner #btnArea {
  position:relative;
  height:auto;
  width:100%;
  margin: 0 auto;
}
#rental #mainContents .sec04 .inner ul, #mainContents.page-rental .sec04 .inner ul {
  flex-wrap: wrap;
  row-gap: 30px;
}
#rental #mainContents .sec05 ul, #mainContents.page-rental .sec05 ul {
  flex-wrap: wrap;
  row-gap: 30px;
  column-gap: initial;
}
#rental #mainContents .sec05 ul li img, #mainContents.page-rental .sec05 ul li img {
  margin-bottom: 10px;
}
#rental #mainContents .sec05 .sec05_01, #mainContents.page-rental .sec05 .sec05_01 {
  flex-wrap: wrap;
  row-gap: 20px;
  margin-top: 20px;
}
#rental #mainContents .sec05 .sec05_01 p, #mainContents.page-rental .sec05 .sec05_01 p {
  flex-basis: auto;
}
#rental #mainContents .sec05 .sec05_01 div, #mainContents.page-rental .sec05 .sec05_01 div {
  flex-basis: auto;
}
#rental #mainContents .sec05 .sec05_01 img, #mainContents.page-rental .sec05 .sec05_01 img {
  max-width: 100%;
  height: auto;
}
#rental #mainContents .sec06 .sec06_01, #mainContents.page-rental .sec06 .sec06_01 {
  flex-wrap: wrap;
}
#rental #mainContents .sec06 .sec06_01 img, #mainContents.page-rental .sec06 .sec06_01 img {
  max-width: 100%;
  height: auto;
}
#rental #mainContents .sec06 .sec06_01 p, #mainContents.page-rental .sec06 .sec06_01 p {
  flex-basis: auto;
  margin-top: 20px;
}
#rental #mainContents .sec06 .sec06_02, #mainContents.page-rental .sec06 .sec06_02 {
  width: 100%;
  margin-bottom: 40px;
}
#rental #mainContents .sec06 .sec06_02 dd img, #mainContents.page-rental .sec06 .sec06_02 dd img {
  max-width: 100%;
  height: auto;
}
#rental #mainContents .sec06 ul, #mainContents.page-rental .sec06 ul {
  flex-wrap: wrap;
  row-gap: 25px;
}
#rental #mainContents .sec06 ul li, #mainContents.page-rental .sec06 ul li {
  align-items: start;
}
#rental #mainContents .sec06 ul li img, #mainContents.page-rental .sec06 ul li img {
  width: 150px;
  height: auto;
}
#rental #mainContents .sec07 .flow-title, #mainContents.page-rental .sec07 .flow-title {
  margin-left: 0;
}
#rental #mainContents .sec07 .flow-image, #mainContents.page-rental .sec07 .flow-image {
  margin-top: 30px;
}
#rental #mainContents .sec07 img, #mainContents.page-rental .sec07 img {
  max-width: 100%;
  height: auto;
}
#rental #mainContents .sec08 .inner, #mainContents.page-rental .sec08 .inner {
  width: 100%;
  padding: 0;
}

/* ====================================================================================================
* library
==================================================================================================== */
#library #mainContents, #mainContents.page-library {
  padding-bottom:0;
}
#library #mainContents .breadth1100, #mainContents.page-library .breadth1100 {
  *zoom: 1;
  width:90%;
  margin:0 auto;
  padding:0 0 60px 0;
}
#library #mainContents h1.mainVisual, #mainContents.page-library h1.mainVisual {
  position:relative;
  width:100% !important;
  padding:0;
  background: url(../images/library/bkg_01.jpg) no-repeat 50% 60px;
  background-size:100%;
}
#library #mainContents h1.mainVisual span{
  background-color:#421300;
  display:block !important;
}
#library #mainContents h1.mainVisual span img, #mainContents.page-library h1.mainVisual span img {
  position:relative;
  top:-2px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#library #mainContents h1.mainVisual span em, #mainContents.page-library h1.mainVisual span em{
  margin:0 0 0 10px;
  padding:12px 0 0 0;
  font-size:160%;
  font-weight:400;
  display:inline-block;
  line-height:0;
  float:left;
}

#library #mainContents #closeUp, #mainContents.page-library #closeUp {
  padding:0 0 35px;
  color:#421300;
  /* Hide the slides before the JS is loaded. Avoids image jumping */
  /* Direction Nav */
  /* Control Nav */
}
#library #mainContents #closeUp h2, #mainContents.page-library #closeUp h2 {
  margin:0 0 50px;
  padding:0;
}
#library #mainContents #closeUp h2 img, #mainContents.page-library #closeUp h2 img{
  width:30px;
}
#library #mainContents #closeUp h2 em, #mainContents.page-library #closeUp h2 em{
  padding:0;
  font-size:160%;
  font-weight:bold;
  display:inline-block;
}
#library #mainContents #closeUp .flexslider, #mainContents.page-library #closeUp .flexslider {
  width:94%;
  margin:0 auto;
  text-align:center;
  display:block;
}
#library #mainContents #closeUp .flexslider li, #mainContents.page-library #closeUp .flexslider li {
  display:block;
  text-align:center;
}
#library #mainContents #closeUp .flexslider li .bookImg p{
  margin:0 auto;
  text-align:center;
}

#library #mainContents #closeUp .flexslider li .bookImg > div ul,
#mainContents.page-library #closeUp .flexslider li .bookImg > div ul {
  width:260px;
  display: inline-table;
  table-layout:fixed;
}

#library #mainContents #closeUp .flexslider li .bookImg > div ul li,
#mainContents.page-library #closeUp .flexslider li .bookImg > div ul li {
  width:80px;
  display: inline-block;
  text-align: center;
}

#library #mainContents #closeUp .flexslider li .bookImg > div ul li a img, #mainContents.page-library #closeUp .flexslider li .bookImg > div ul li a img {
    max-width:100%;
    max-height:auto;
    border: none;
}

#library #mainContents #closeUp .flexslider li .bookImg, #mainContents.page-library #closeUp .flexslider li .bookImg {
  display:block;
  width:100%;
  vertical-align: middle;
  text-align:center;
  margin:0 auto 30px;
}
#library #mainContents #closeUp .flexslider li .bookImg img, #mainContents.page-library #closeUp .flexslider li .bookImg img {
  width:100%;
  border:1px solid #dfdfdf;
  text-align:center;
  box-sizing:border-box;
}
#library #mainContents #closeUp .flexslider li .bookTxt, #mainContents.page-library #closeUp .flexslider li .bookTxt {
  display:block;
  padding:0;
  width:100%;
  vertical-align: middle;
  font-weight: bold;
}
#library #mainContents #closeUp .flexslider li .bookTxt .title, #mainContents.page-library #closeUp .flexslider li .bookTxt .title {
  padding:0;
}
#library #mainContents #closeUp .flexslider li .bookTxt .title .icon, #mainContents.page-library #closeUp .flexslider li .bookTxt .title .icon {
  display:block;
  max-width:51px;
  max-height:34px;
  margin:0 0 14px 0;
  padding:0;
  vertical-align: middle;
}
#library #mainContents #closeUp .flexslider li .bookTxt .title h3, #mainContents.page-library #closeUp .flexslider li .bookTxt .title h3 {
  display: inline-block;
  width:100%;
  padding:0;
  font-size:25.76px;
  line-height:1.4;
  vertical-align: middle;
  text-align:left;
  word-break: break-all;
}
#library #mainContents #closeUp .flexslider li .bookTxt .title h3 span, #mainContents.page-library #closeUp .flexslider li .bookTxt .title h3 span {
  display: block;
  font-size: 15px;
}
#library #mainContents #closeUp .flexslider li .bookTxt .catchCopy, #mainContents.page-library #closeUp .flexslider li .bookTxt .catchCopy {
  font-size:20px;
  padding:0 0 8px 0;
}
#library #mainContents #closeUp .flexslider li .bookTxt .txt, #mainContents.page-library #closeUp .flexslider li .bookTxt .txt {
  padding:0 0 30px;
  font-size: 12px;
  line-height: 2;
  text-align:left;
}
#library #mainContents #closeUp .flexslider .slides > li, #mainContents.page-library #closeUp .flexslider .slides > li {
  display: none;
}
#library #mainContents #closeUp .flex-pauseplay span, #mainContents.page-library #closeUp .flex-pauseplay span {
  text-transform: capitalize;
}
#library #mainContents #closeUp .flexslider, #mainContents.page-library #closeUp .flexslider {
  position: relative;
  zoom: 1;
}
#library #mainContents #closeUp .flexslider .slides, #mainContents.page-library #closeUp .flexslider .slides {
  zoom: 1;
}
#library #mainContents #closeUp .flexslider .slides > li, #mainContents.page-library #closeUp .flexslider .slides > li {
  position:relative;
}
#library #mainContents #closeUp .flex-direction-nav li a, #mainContents.page-library #closeUp .flex-direction-nav li a {
  width: 29px;
  height: 53px;
  margin: -43px 0 0 0;
  display: block;
  position: absolute;
  top: 50%;
  cursor: pointer;
  text-indent: -9999px;
  z-index: 10;
  display:none;
}
#library #mainContents #closeUp .flex-direction-nav li .flex-next, #mainContents.page-library #closeUp .flex-direction-nav li .flex-next {
  background: url(../images/library/btn_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -29px;
  display:none !important;
}
#library #mainContents #closeUp .flex-direction-nav li .flex-prev, #mainContents.page-library #closeUp .flex-direction-nav li .flex-prev {
  background: url(../images/library/btn_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -29px;
  display:none;
}
#library #mainContents #closeUp .flex-direction-nav .flex-disabled, #mainContents.page-library #closeUp .flex-direction-nav .flex-disabled {
  height: 0;
  opacity: 0!important;
  filter: alpha(opacity=0);
  cursor: default;
}
#library #mainContents #closeUp .flex-control-nav, #mainContents.page-library #closeUp .flex-control-nav {
  width: 100%;
  margin-top: 40px;
  text-align: center;
  display:none;
}
#library #mainContents #closeUp .flex-control-nav li, #mainContents.page-library #closeUp .flex-control-nav li {
  margin: 10px 0 0 10px;
  display: inline-block;
  zoom: 1;
  *display: inline;
}
#library #mainContents #closeUp .flex-control-nav li:first-child, #mainContents.page-library #closeUp .flex-control-nav li:first-child {
  margin: 0;
}
#library #mainContents #closeUp .flex-control-nav li a, #mainContents.page-library #closeUp .flex-control-nav li a {
  width: 10px;
  height: 11px;
  display: block;
  background: url(../images/library/bg_control_nav.png) no-repeat 0 0;
  background-size: 100% auto;
  cursor: pointer;
  text-indent: -9999px;
}
#library #mainContents #closeUp .flex-control-nav li a:hover, #mainContents.page-library #closeUp .flex-control-nav li a:hover {
  background-position: 0 -11px;
}
#library #mainContents #closeUp .flex-control-nav li a.flex-active, #mainContents.page-library #closeUp .flex-control-nav li a.flex-active {
  background-position: 0 -11px;
  cursor: default;
}
#library #mainContents #bookList, #mainContents.page-library #bookList, #mainContents.page-service #bookList {
  position: relative;
  padding:10px 0 77px;
  background: #421300;
  background-size:50% auto;
  color: #fff;
  font-weight: normal;
}
#library #mainContents #bookList .libraryListBtn, #mainContents.page-library #bookList .libraryListBtn, #mainContents.page-service #bookList .libraryListBtn{
  padding:0;
  text-align: right;
  font-size: 12px;
  display:none;
}
#library #mainContents #bookList .libraryListBtn li, #mainContents.page-library #bookList .libraryListBtn li, #mainContents.page-service #bookList .libraryListBtn li {
  display: inline-block;
  margin: 0 0 0 -1px;
  padding: 0 6px;
  line-height: 1.3;
  border-left: 1px solid #00a1e3;
  border-right: 1px solid #00a1e3;
}
#library #mainContents #bookList .libraryListBtn li a, #mainContents.page-library #bookList .libraryListBtn li a, #mainContents.page-service #bookList .libraryListBtn li a {
  color: #00a1e3;
}
#library #mainContents #bookList .libraryListBtn li a .icon, #mainContents.page-library #bookList .libraryListBtn li a .icon, #mainContents.page-service #bookList .libraryListBtn li a .icon {
  width: auto;
  max-height: 12px;
  padding: 0 5px 0 0;
  vertical-align: middle;
}
#library #mainContents #bookList #libraryList, #mainContents.page-library #bookList #libraryList, #mainContents.page-service #bookList #libraryList {
  margin:36px 0 12px;
  padding:0;
}
#library #mainContents #bookList #libraryList > li, #mainContents.page-library #bookList #libraryList > li, #mainContents.page-service #bookList #libraryList > li {
  display:inline-block;
  padding:0 0 28px;
  width:50%;
  text-align: center;
  vertical-align: top;
}
#library #mainContents #bookList #libraryList > li a, #mainContents.page-library #bookList #libraryList > li a, #mainContents.page-service #bookList #libraryList > li a {
  color: #fff;
  display: block;
}
#library #mainContents #bookList #libraryList > li span.book, #mainContents.page-library #bookList #libraryList > li span.book, #mainContents.page-service #bookList #libraryList > li span.book {
  display: block;
  position: relative;
  margin: 0 auto 16px;
}
#library #mainContents #bookList #libraryList > li span.book img, #mainContents.page-library #bookList #libraryList > li span.book img, #mainContents.page-service #bookList #libraryList > li span.book img {
  vertical-align:top;
}
#library #mainContents #bookList #libraryList > li span.bName, #mainContents.page-library #bookList #libraryList > li span.bName, #mainContents.page-service #bookList #libraryList > li span.bName {
  display: inline-block;
  text-indent:0;
  padding: 0 15px 0;
  text-align: left;
  font-size: 12px;
}
#library #mainContents #bookList #libraryList > li span.bName .icon, #mainContents.page-library #bookList #libraryList > li span.bName .icon, #mainContents.page-service #bookList #libraryList > li span.bName .icon {
  max-width: 24px;
  max-height: 16px;
  padding: 0 5px 0 0;
  vertical-align: middle;
  display:none;
}
#library #mainContents #bookList .btn, #mainContents.page-library #bookList .btn, #mainContents.page-service #bookList .btn {
  padding:0;
  text-align:center;
}
#library #mainContents #bookList .btn li, #mainContents.page-library #bookList .btn li, #mainContents.page-service #bookList .btn li {
  width:48%;
  display:block;
  margin:0 1% 10px;
  float:left;
}
#library #mainContents #bookList .btn li:first-child, #mainContents.page-library #bookList .btn li:first-child, #mainContents.page-service #bookList .btn li:first-child {
  padding: 0;
}
#library #mainContents #bookDetail, #mainContents.page-library #bookDetail, #mainContents.page-service #bookDetail {
  padding: 10px 0 60px;
  color: #421300;
  margin-top: 50px;
}
#library #mainContents .naviCol{
  margin:0 0 50px 0;
  padding:20px 0;
  background:#f1f1f1;
}
#library #mainContents .naviCol .index{
  margin:0 0 12px 0;
  float:left;
}
#library #mainContents .naviCol ul{
  margin: 0 0px 0 0;
  padding:0;
  list-style-type:none;
  float:right;
}
#library #mainContents .naviCol ul li{
  position:relative;
  width:46px;
  height:34px;
  margin:0 2px;
  padding:0;
  float:left;
  background-size:contain !important;
}
#library #mainContents .naviCol ul li a{
  position:absolute;
  width:100%;
  height:100%;
}
#library #mainContents .naviCol ul li:first-child{width:60px;margin-left:0; display:block;}
#library #mainContents .naviCol ul li.btn_eng, #library #mainContents .naviCol ul li.btn_shikake{width: 177px;margin-left:0; margin-top: 14px; display:block; float:left;}

#library #mainContents #bookDetail .bookImg, #mainContents.page-library #bookDetail .bookImg {
  display:block;
  width:100%;
  padding:0 0 30px;
  vertical-align: top;
  text-align:center;
}
#library #mainContents #bookDetail .bookImg p{
  margin:0 auto;
  text-align:center;
}
#library #mainContents #bookDetail .bookImg img, #mainContents.page-library #bookDetail .bookImg img {
  border: 1px solid #dfdfdf;
}
#library #mainContents #bookDetail .bookTxt, #mainContents.page-library #bookDetail .bookTxt {
  display:block;
  padding:0;
  width:100%;
  vertical-align: top;
  font-weight: bold;
  line-height: 1.8;
}
#library #mainContents #bookDetail .bookTxt .title, #mainContents.page-library #bookDetail .bookTxt .title {
  padding:0 0 20px 0px;
}
#library #mainContents #bookDetail .bookTxt .title .icon, #mainContents.page-library #bookDetail .bookTxt .title .icon {
  display: inline-block;
  max-width: 51px;
  max-height: 34px;
  padding:0 5px 0 0;
  vertical-align: middle;
}
#library #mainContents #bookDetail .bookTxt .title h2, #mainContents.page-library #bookDetail .bookTxt .title h2 {
  display: inline-block;
  width:100%;
  padding: 0px;
  font-size: 25.76px;
  line-height: 1.2;
  vertical-align: middle;
  word-break: break-all;
}
#library #mainContents #bookDetail .bookTxt .title h2 span, #mainContents.page-library #bookDetail .bookTxt .title h2 span {
  display: block;
  padding: 5px 0 0;
  font-size: 15px;
}
#library #mainContents #bookDetail .bookTxt .catchCopy, #mainContents.page-library #bookDetail .bookTxt .catchCopy {
  font-size: 20px;
  padding: 0 0 8px 0;
}
#library #mainContents #bookDetail .bookTxt .txt, #mainContents.page-library #bookDetail .bookTxt .txt {
  padding:0px 0 30px;
  font-size: 12px;
  line-height: 2;
}
#library #mainContents #bookDetail .bookTxt .authorInfo, #mainContents.page-library #bookDetail .bookTxt .authorInfo {
  padding: 20px 0  0 0;
  font-size: 10px;
}
#library #mainContents #bookDetail .bookTxt .authorInfo h3, #mainContents.page-library #bookDetail .bookTxt .authorInfo h3 {
  font-size: 12px;
}
#library #mainContents #bookDetail .bookTxt .authorInfo .authorName, #mainContents.page-library #bookDetail .bookTxt .authorInfo .authorName {
  border-top: 1px dotted #421300;
  margin-top: 4px;
  padding-top: 10px;
  font-size: 11px;
  padding-bottom: 10px;
}
#library #mainContents #bookDetail .bookTxt .authorInfo .authorLink, #mainContents.page-library #bookDetail .bookTxt .authorInfo .authorLink {
  padding-bottom: 1em;
}
#library #mainContents #bookDetail .bookTxt .authorInfo .authorLink a, #mainContents.page-library #bookDetail .bookTxt .authorInfo .authorLink a {
  color: #00a1e3;
}
#library #mainContents #bookDetail .bookTxt .authorInfo .authorTxt, #mainContents.page-library #bookDetail .bookTxt .authorInfo .authorTxt {
  padding-bottom: 1em;
}
#library #mainContents #bookDetail .btns, #mainContents.page-library #bookDetail .btns {
  margin:0;
  padding:10px 0 30px;
  width:186px;
  margin:0 auto 30px;
  text-align:center;
}
#library #mainContents #bookDetail .btns li, #mainContents.page-library #bookDetail .btns li {
  display:block;
  margin:0 auto 10px;
  text-align:center;
  float:left;
}
#library #mainContents #bookDetail .btns li:first-child, #mainContents.page-library #bookDetail .btns li:first-child {
  padding:0;
}
#library #mainContents #bookDetail .btnBack, #mainContents.page-library #bookDetail .btnBack {
  position:relative;
  left:0;
  bottom:0;
}

#library .mobile_carousel .flex-viewport {
  min-height: 0;
}
#library .mobile_carousel #libraryList.slides {
  overflow: hidden;
}
#library .mobile_carousel #libraryList.slides > li {
    display: block;
    padding-bottom: 0;
}
#library .mobile_carousel .flex-direction-nav a {
  color: #fff;
}
#library .mobile_carousel ul.flex-direction-nav a {
    position: absolute;
    top: 38%;
    font-size: 36px
}
#library .mobile_carousel ul.flex-direction-nav .flex-prev {
    left: -10px;
}
#library .mobile_carousel ul.flex-direction-nav .flex-next {
    left: initial;
    right: -10px;
}

#libraryage #mainContents{
  padding:0 0 140px 0 !important;
}

#libraryage #mainContents h1.mainVisual{
  margin:0 !important;
  height:136px !important;
  min-height:136px !important;
  background:#421301 !important;
}

#libraryage #mainContents .ttcol .left{
  width:100% !important;
  padding:20px 0 0 0;
  height:60px !important;
  min-height:60px !important;
  box-sizing:border-box;
  float:none;
}
#libraryage #mainContents .ttcol .left img{
  width:40px;
  display:block;
  float:left;
}
#libraryage #mainContents .ttcol .left em{
  margin:0 0 0 14px;
  padding:4px 0 0 0;
  font-weight:400;
  font-size:160%;
  display:block;
  float:left;
}
#libraryage #mainContents .ttcol .right{
  width:100% !important;
  padding:4px 0 0 0;
  font-size:180%;
  line-height:100%;
  color:#fff;
  box-sizing:border-box;
  text-align:right;
  float:none;
}

#libraryage #mainContents .ttcol .right span{
  font-size:160%;
  color:#fff;
}

#libraryage #mainContents .title{
  margin:0;
  padding:24px 0;
  font-size:100%;
  font-weight:bold;
  letter-spacing:2px;
  color:#421301;
}

#libraryage #mainContents .title .breadth960{
  margin:0 auto;
}

#libraryage #mainContents .title span{
  margin:0 0 14px 0;
  font-size:180%;
  display:block;
}

#libraryage #mainContents .listarea{
  margin:0;
  padding:24px 0 40px;
  background:#f1f1f1;
}

#libraryage #mainContents .listarea .listareaCol{
  width:94%;
  margin:0 auto;
}

#libraryage #mainContents .listarea .block{
  margin:0 0 30px 0;
}

#libraryage #mainContents .listarea h2{
  margin:0 0 20px 0;
  font-size:160%;
  font-weight:bold;
}

#libraryage #mainContents .listarea .col{
  width:100%;
  margin-bottom:30px;
}

#libraryage #mainContents .listarea .col .left{
  width:30%;
}

#libraryage #mainContents .listarea .col .right{
  width:64%;
  margin-left: 6%;
}

#libraryage #mainContents .listarea .col .left .imgcol{
  position:relative;
  width:100%;
  height:130px;
  background:#999;
  margin:0 auto 6px;
}

#libraryage #mainContents .listarea .col .left .imgcol a{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

#libraryage #mainContents .listarea .col .left .imgcol img{
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  max-width:100%;
  max-height:100%;
}

#libraryage #mainContents .listarea .col .left .icon{
  display:none;
}

#libraryage #mainContents .listarea .col .left .icon img{
  width:100%;
}

#libraryage #mainContents .listarea .col .left a{
  color:#01a3e4;
}

#libraryage #mainContents .listarea .col .txt{
  margin:0 0 14px 0;
  line-height:180%;
}

#libraryage #mainContents .listarea .col .btn{
  text-align:right;
}

#libraryage #mainContents .listarea .naviCol2{
  font-size:120%;
  text-align:right;
}

#libraryage #mainContents .pagetop{
  width:1100px;
  margin:0 auto;
  text-align:right !important;
}

/* ====================================================================================================
* event
==================================================================================================== */
#event #mainContents .breadth1100, #mainContents.page-event .breadth1100 {
  *zoom: 1;
  width:90%;
  margin:0 auto;
  padding:0 0 90px 0;
}
#event #mainContents .breadth1100:after, #mainContents.page-event .breadth1100:after {
  width:100% !important;
  content: ".";
  display:block;
  clear: both;
  height: 0;
  font-size: 0;
  visibility:hidden;
}
#event #mainContents h1.mainVisual, #mainContents.page-event h1.mainVisual {
  position:relative;
  width:100% !important;
  height:220px !important;
  padding:0;
  background:url(../images/event/bkg_01.jpg) no-repeat 50% 60px;
  background-size:100%;
}
#event #mainContents h1.mainVisual span{
  background-color:#00a1e2;
  display:block !important;
}
#event #mainContents h1.mainVisual span img, #mainContents.page-event h1.mainVisual span img {
  position:relative;
  top:-2px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#event #mainContents h1.mainVisual span em, #mainContents.page-event h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:14px 0 0 0;
  font-size:180%;
  display:inline-block;
  line-height:0;
  float:left;
}

#event #mainContents .newsListBtn, #mainContents.page-event .newsListBtn {
  padding:0;
  text-align:right;
  font-size:12px;
}
#event #mainContents .newsListBtn li a, #mainContents.page-event .newsListBtn li a {
  color: #00a1e3;
}
#event #mainContents .newsList, #mainContents.page-event .newsList {
  margin:0;
  padding:0;
}
#event #mainContents .newsList > li, #mainContents.page-event .newsList > li {
  display: inline-block;
  vertical-align: top;
  width:100%;
  margin:0;
  padding:40px 0 0;
}
#event #mainContents .newsList > li img, #mainContents.page-event .newsList > li img {
  width:100%;
  height:auto;
  border-radius: 3px;
}
#event #mainContents .newsList > li .newsTitle, #mainContents.page-event .newsList > li .newsTitle {
  padding: 16px 0 0;
  font-size: 15px;
  font-weight: bold;
}
#event #mainContents .newsList > li .newsTxt, #mainContents.page-event .newsList > li .newsTxt {
  padding: 7px 0 0;
  font-size: 12px;
}
#event #mainContents #leftContent, #mainContents.page-event #leftContent {
  float:none;
  width:100%;
  margin:0;
}
#event #mainContents #leftContent h2, #mainContents.page-event #leftContent h2 {
  margin: 0 0 10px;
  font-weight: bold;
  border-bottom: 1px solid #421300;
}
#event #mainContents #rightContent, #mainContents.page-event #rightContent {
  float:none;
  width:100%;
  margin:0 0 30px 0;
}
#event #mainContents #rightContent > article > div + div, #mainContents.page-event #rightContent > article > div + div {
  padding:30px 0 0;
}
#event #mainContents #rightContent h2, #mainContents.page-event #rightContent h2 {
  margin:0;
  font-weight: bold;
  font-size:24px;
  line-height: 1.4;
}
#event #mainContents #rightContent h2 .date, #mainContents.page-event #rightContent h2 .date {
  display: block;
  font-size:14px;
  padding-bottom:14px;
}
#event #mainContents #rightContent h2 + article, #mainContents.page-event #rightContent h2 + article {
  padding:16px 0 0;
  line-height: 1.7;
}

#event .newsListArea li{
  margin-bottom:1em;
}


/* ====================================================================================================
* personal
==================================================================================================== */
#mainContents.page-personal{
  position:relative;
  padding-bottom:100px;
}
#personal #mainContents h1.mainVisual{
  position:relative;
  width:100% !important;
  padding:0;
  background: url(../images/personal/bkg_01.jpg) no-repeat right 50px;
  background-size:cover;
}
#personal #mainContents h1.mainVisual span{
  background-color:#4fa4dc;
  text-align:center;
  display:block !important;
}
#personal #mainContents h1.mainVisual span img, #mainContents.page-personal h1.mainVisual span img {
  position:relative;
  top:3px;
  width:267px !important;
  margin:0 auto;
  display:inline-block;
  text-align:center;
}
#mainContents.page-personal .contentscol{
  position:relative;
  width:100%;
  margin:0 auto;
  padding:0;
  color:#411303 !important;
}
#mainContents.page-personal .contentscol .inner{
  width:94%;
  margin:0 auto;
}
#mainContents.page-personal h2{
  font-weight:bold;
  font-size:160%;
}
#mainContents.page-personal h2 em{
  margin:0 0 0 8px;
  padding:6px 0 0 0;
  display:inline-block;
}

#mainContents.page-personal .btnlogin{
  position:absolute;
  top:140px;
  left:-8px;
  right:0;
  width:90px;
  height:90px;
  background:url(../images/personal/btn_login_sp.png) no-repeat 0 0;
  background-size: contain;
  display:block;
  z-index:800;
}

#mainContents.page-personal section.notice{
  width:94%;
  position:relative;
  font-weight:bold;
  text-align:center;
  line-height:100%;
  margin:20px auto 30px;
  padding:0;
  box-sizing:border-box;
}
#mainContents.page-personal section.notice article{
  width:100%;
  font-size:90%;
  padding:20px 0 0 0 !important;
  background-size:80px;
}
#mainContents.page-personal section.notice article .title{
  padding:0 0 10px 80px !important;
}
#mainContents.page-personal section.notice article ul{
  position:relative;
  width:90%;
  margin:0 auto;
  padding:0;
}
#mainContents.page-personal section.notice article ul li{
  margin:12px 0;
  padding:2px 0 0 24px;
  font-size:120%;
  background-size:14px;
}
#mainContents.page-personal section.notice h2{
  margin:10px auto 14px !important;
  font-size:150%;
  letter-spacing:1.5px;
  line-height:120%;
}
#mainContents.page-personal section.notice h2 span{
  font-size:60%;
}
#mainContents.page-personal .btnapplication{
  width:94%;
  position:relative;
  font-size:140%;
  font-weight:bold;
  text-align:left;
  line-height:130%;
  letter-spacing:1px;
  color:#fff;
  margin:30px auto 20px;
  padding:16px 60px 16px 14px;
  background:#eb6d1c url(../images/personal/icon_btn1.png) no-repeat 96% 50%;
  -webkit-border-radius:12px;
  -moz-border-radius:12px;
  border-radius:12px;
  box-sizing:border-box;
  display:block;
  text-decoration:none;
}
#mainContents.page-personal .contentscol img{
  max-width: 100%;
}
#mainContents.page-personal .contentscol h3{
  position:relative;
  margin:0 0 12px 0;
  padding:2px 0 4px 20px;
  letter-spacing:2px;
  font-size:160%;
  font-weight:bold;
  line-height:150%;
  box-sizing:border-box;
}
#mainContents.page-personal .contentscol h3 span{
  font-size:80%;
}
#mainContents.page-personal .contentscol h3:before{
    content:"";
    position:absolute;
    background:#1aa2dc;
    top:0;
    left:0;
    height:100%;
    width:8px;
}
#mainContents.page-personal .lineup .contentscol h3{
  padding:2px 0 4px 20px;
  line-height:150%;
}
#mainContents.page-personal .contentscol h4{
  margin:0 0 12px 0;
  padding:0;
  font-size:160%;
  font-weight:bold;
  box-sizing:border-box;
}
#mainContents.page-personal .contentscol article{
  width:100%;
  padding:20px 0 5px;
}
#mainContents.page-personal .contentscol article .txt{
  width:94%;
  margin:0 auto;
  padding:16px 0;
  float:none;
}
#mainContents.page-personal .contentscol article .photo{
  width:100%;
  float:none;
}
#mainContents.page-personal .contentscol article .photo img{
  width:100%;
}
#mainContents.page-personal .contentscol article .comment{
  margin:0 auto;
  line-height:180%;
}
#mainContents.page-personal .contentscol article .txt2{
  width:94%;
  margin:0 auto;
  padding:16px 0;
}
#mainContents.page-personal .contentscol .tablecol{
  position:relative;
  width:100%;
  margin:30px auto 20px;
}
#mainContents.page-personal .contentscol .tablecol .iconnew{
  position:absolute;
  top:30px;
  left:20px !important;
}
#mainContents.page-personal .contentscol .tablecol .iconnew img{
  width:26px;
}
#mainContents.page-personal .contentscol .tablecol h5{
  margin:0 0 8px 0;
  padding:0;
  font-size:120%;
  font-weight:bold;
  box-sizing:border-box;
}
#mainContents.page-personal .contentscol .tablecol .balloon {
  left: 0;
}
#mainContents.page-personal .tablecol table {
  font-size: 116.6667%;
}
#mainContents.page-personal .tablecol table tr td:first-child {
  white-space: nowrap;
  padding: 0px 10px;
}
#mainContents.page-personal .tablecol table td {
  padding: 16px 5px;
}
#mainContents.page-personal .tablecol table span.sp{
  display: inline;
}

#mainContents.page-personal .lineup .contentscol{
  padding:0 0 20px 0;
}
#mainContents.page-personal .lineup .contentscol .comment{
  padding-left:20px;
}
#mainContents.page-personal .lineup .contentscol h2{
  margin:0 0 30px 0 !important;
  padding:0;
}
#mainContents.page-personal .lineup .contentscol h2 img{
  width:46px;
}
#mainContents.page-personal .lineup .contentscol h2 em{
  margin:0 0 0 12px;
  padding:8px 0 0 0;
  font-size:100%;
  font-weight:bold;
  display:inline-block;
}
#mainContents.page-personal .lineup .contentscol h3:before{
    content:"";
    position:absolute;
    background:#f8de31;
    top:0;
    left:0;
    height:100%;
    width:8px;
}
#mainContents.page-personal .lineup .contentscol .detail{
  width:784px;
  margin:10px auto 0;
  padding:30px;
  text-align:center;
  background:#f1f1f1;
  box-sizing:border-box;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  border-radius:10px;
}
#mainContents.page-personal .lineup .contentscol .detail h4{
  margin:0 0 14px 0;
  font-weight:bold;
  font-size:180%;
}
#mainContents.page-personal .lineup .contentscol .detail h5{
  margin:0 0 4px 0;
  font-weight:bold;
  font-size:160%;
}
#mainContents.page-personal .lineup .contentscol .lineuplist{
  width:94%;
  margin:20px auto 4px;
  text-align:center;
  border:1px solid #411303;
  box-sizing:border-box;
}
#mainContents.page-personal .lineup .contentscol .lineuplist h4{
  padding:14px 0;
  text-align:center;
  color:#fff;
  font-size:140%;
  font-weight:bold;
  letter-spacing:2px;
  line-height:100%;
  background:#411303;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt{
  width:100%;
  text-align:center;
  padding:14px;
  box-sizing:border-box;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt ul{
  width:100%;
  margin:0 auto;
  padding:0;
  list-style-type:none;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt ul li{
  width:21%;
  margin:2%;
  float:left;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt ul li:last-child{
  margin:2%;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt ul li a{
  margin:0;
  padding:16px 0 10px;
  font-size:160%;
  color:#fff;
  line-height:100%;
  background:#411303;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  border-radius:10px;
  text-decoration:none;
  display:block;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt ul li a span{
  margin:0 2px 0 0;
  font-family: 'Montserrat', sans-serif;
  font-weight:700;
  font-size:140%;
}
#mainContents.page-personal .lineup .contentscol .lineuplist .txt ul li a:hover{
  background:#28a1de;
}
#mainContents.page-personal .btnapplication2{
  width:94%;
  position:relative;
  font-size:140%;
  font-weight:bold;
  text-align:center;
  line-height:130%;
  letter-spacing:1px;
  color:#fff;
  margin:20px auto 0;
  padding:16px 60px 16px 14px;
  background:#eb6d1c url(../images/personal/icon_btn1.png) no-repeat 96% 50%;
  -webkit-border-radius:12px;
  -moz-border-radius:12px;
  border-radius:12px;
  box-sizing:border-box;
  display:block;
  text-decoration:none;
}
#mainContents.page-personal p.info_15th {
  font-size: 125%;
}
#mainContents.page-personal .voice_bnr {
  margin-bottom: 40px;
}
#mainContents.page-personal .voice_bnr img {
  max-width: 94%;
}
#mainContents.page-personal .gooddesign{
  margin-bottom: 40px;
}
#mainContents.page-personal section.delivery{
  position:relative;
  width:100%;
  margin:0 auto 40px;
  padding:30px 0 20px;
  background:#f1f1f1 !important;
}
#mainContents.page-personal section.delivery h2{
  margin:0 0 40px 0 !important;
  padding:0 !important;
}
#mainContents.page-personal section.delivery article{
  width:94%;
  margin:0 auto !important;
  padding:0 !important;
}
#mainContents.page-personal section.delivery article .chart{
  text-align:center;
}
#mainContents.page-personal section.delivery article .chart img{
  width:100%;
}

#mainContents.page-personal section.qa{
  position:relative;
  width:94%;
  margin:0 auto;
  padding:0;
}
#mainContents.page-personal section.qa h2{
  margin:0;
  padding:0;
}
#mainContents.page-personal section.qa h2 img{
  width:34px !important;
}
/* レンタルページと同様のレイアウト */
#mainContents.page-personal section.qa .qacol, #rental #mainContents .sec08 .qacol{
  width:100%;
  margin:0 auto 40px;
  padding:0;
  border-bottom:1px solid #3d2410;
}
#mainContents.page-personal section.qa .qatitle, #rental #mainContents .sec08 .qatitle{
  position:relative !important;
}
#mainContents.page-personal section.qa h3, #rental #mainContents .sec08 h3{
  margin:0 0 20px 0;
  padding:22px 0 0 0 !important;
  font-size:140%;
  line-height:130% !important;
  height:100%;
  border-top:1px solid #3d2410;
}
#mainContents.page-personal section.qa h3:before, #rental #mainContents .sec08 h3:before{
  display:none;
}
#mainContents.page-personal section.qa .btnswitch, #rental #mainContents .sec08 .btnswitch{
  position:absolute !important;
  top:18px;
  right:0;
  width:26px;
  height:26px;
  border:1px solid #411303;
  -webkit-border-radius:100%;
  -moz-border-radius:100%;
  border-radius:100%;
}
#mainContents.page-personal section.qa .qatitle.active .btnswitch:before, #rental #mainContents .sec08 .qatitle.active .btnswitch:before{
  position:absolute;
  left:6.5px;
  top:-3px;
  content:"-";
  font-size:240%;
  font-style:normal;
  line-height:100%;
  display:block;
  color:#411303;
}
#mainContents.page-personal section.qa .qatitle .btnswitch:before, #rental #mainContents .sec08 .qatitle .btnswitch:before{
  position:absolute;
  left:5.5px;
  top:1px;
  content:"+";
  font-size:190%;
  font-style:normal;
  line-height:100%;
  display:block;
  color:#411303;
}
#mainContents.page-personal section.qa article, #rental #mainContents .sec08 article{
  margin:0;
  padding:0 0 20px 0;
  display:none;
  float:none;
}
#mainContents.page-personal section.qa article h4, #rental #mainContents .sec08 article h4{
  position:relative;
  margin:0;
  padding:0 0 0 12px;
  font-size:120%;
  line-height:130%;
  height:100%;
}
#mainContents.page-personal section.qa article h4:before, #rental #mainContents .sec08 article h4:before{
    content:"";
    position:absolute;
    background:#1aa2dc;
    top:3px;
    left:0;
    height:8px;
    width:8px;
}
#mainContents.page-personal section.qa article .col, #rental #mainContents .sec08 article .col{
  margin:0 0 20px 0;
  padding:0;
}
#mainContents.page-personal section.qa article .col:last-child, #rental #mainContents .sec08 article .col:last-child{
  margin:0;
  padding:0;
}
#mainContents.page-personal section.qa article a, #rental #mainContents .sec08 article a{
  color:#28a1de;
}
#mainContents.page-personal section.qa article ul li:first-child, #rental #mainContents .sec08 article ul li:first-child{
  font-weight:bold;
}


#mainContents.page-personal.agecont{
  margin-bottom:40px;
}

#mainContents.page-personal.agecont h1.mainVisual{
  min-height:60px !important;
  height:60px !important;
  margin:0 0 30px 0;
  padding:0;
  box-sizing:border-box;
}
#mainContents.page-personal.agecont h1.mainVisual > span {
    line-height:100% !important;
    margin:0;
    padding:16px 0 0 0;
    text-align:center;
}
#mainContents.page-personal.agecont h1.mainVisual span img, #mainContents.page-personal.detail h1.mainVisual span img {
  margin:0 auto;
  width:268px;
}
#mainContents.page-personal.agecont .contentscol{
  width:94%;
  margin:0 auto;
  color:#421300;
}
#mainContents.page-personal.agecont h2{
  margin:0 0 20px 0;
  padding:0;
  font-size:200%;
  line-height:100%;
  font-weight:bold;
}
#mainContents.page-personal.agecont h3{
  margin:0 0 30px 0;
  padding:0;
  font-size:110%;
  font-weight:bold;
}
#mainContents.page-personal.agecont h3:before{
  display:none;
}
#mainContents.page-personal.agecont article{
  width:100%;
  margin:0 0 30px 0;
  padding:0;
  color:#421300;
  border:1px solid #411303;
  box-sizing:border-box;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  border-radius:10px;
  float:none;
}
#mainContents.page-personal.agecont article:nth-child(even){
  margin:0 0 30px 0;
  float:none;
}
#mainContents.page-personal.agecont article h3{
  margin:0;
  padding:12px 20px 10px;
  font-size:140%;
  line-height:100%;
  color:#fff;
  background:#421300;
  -webkit-border-radius:8px 8px 0 0;
  -moz-border-radius:8px 8px 0 0;
  border-radius:8px 8px 0 0;
  box-sizing:border-box;
}
#mainContents.page-personal.agecont article .col{
  padding:18px;
}
#mainContents.page-personal.agecont article h4{
  width:84%;
  margin:0 0 8px 0;
  padding:0;
  font-size:180%;
  line-height:130%;
  box-sizing:border-box;
  float:left;
}
#mainContents.page-personal.agecont article .booktt .icon{
  width:24px;
  margin:0 8px 0 0;
  padding:4px 0 0 0;
  float:left;
}
#mainContents.page-personal.agecont article .booktt .icon img{
  width:24px;
}
#mainContents.page-personal.agecont article .bookh{
  position:relative;
  width:36%;
  height:180px;
  background:#d9d9d9;
  float:left;
}
#mainContents.page-personal.agecont article .bookh img{
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  margin:auto;
  max-width:100%;
  max-height:180px;
}
#mainContents.page-personal.agecont article .txt{
  margin:0;
  padding:0;
  width:58%;
  float:right;
}
#mainContents.page-personal.agecont article .txt .genre{
  margin:10px 0;
  line-height:100%;
  font-weight:bold;
}
#mainContents.page-personal.agecont article .price{
  margin:30px 0 0;
  padding:0;
  color:#421300;
  background:url(../images/personal/ico_arrow01.png) no-repeat 45% 50%;
}
#mainContents.page-personal.agecont article .price .col1{
  font-size:170%;
  font-weight:bold;
  line-height:110%;
  float:left;
}
#mainContents.page-personal.agecont article .price .col1 span{
  margin:0;
  font-size:70%;
}
#mainContents.page-personal.agecont article .price .col2{
  font-size:200%;
  font-weight:bold;
  line-height:110%;
  color:#ff0000;
  float:right;
}
#mainContents.page-personal.agecont article .price .col2 span{
  margin:0;
  font-size:70%;
}
#mainContents.page-personal.agecont .att{
  text-align:center;
  margin:0 0 30px 0;
}

#mainContents.page-personal.agecont .copare{
  margin:0 0 40px 0;
  border:1px solid #421300;
  text-align:center;
  box-sizing:border-box;
}

#mainContents.page-personal.agecont .copare h3{
  margin:0;
  padding:10px 0;
  font-size:100%;
  color:#fff;
  line-height:100%;
  background:#421300;
}

#mainContents.page-personal.agecont .copare .col{
  margin:0;
  padding:20px;
}

#mainContents.page-personal.agecont .copare .col .txt1{
  padding:0 0 56px 0;
  font-size:160%;
  font-weight:bold;
  letter-spacing:0;
  background:url(../images/personal/ico_arrow02.png) no-repeat 50% 80%;
}

#mainContents.page-personal.agecont .copare .col .txt1 span{
  font-size:70%;
}

#mainContents.page-personal.agecont .copare .col .txt1 em{
  font-size:56%;
  font-style:normal;
}

#mainContents.page-personal.agecont .copare .col .txt2{
  padding:0 4px 2px;
  font-size:160%;
  font-weight:bold;
  letter-spacing:0;
  line-height:100%;
  color:#ff0000;
  border-bottom:4px solid #ffe100;
  display:inline-block;
}

#mainContents.page-personal.agecont .lineup{
  margin:50px 0 0 0;
  padding:30px 0 0 0;
  background:#f1f1f1;
}
#mainContents.page-personal.agecont .lineup .lineuplist{
  text-align:center;
  border:none;
  box-sizing:border-box;
}
#mainContents.page-personal.agecont .lineup .contentscol .lineuplist h4{
  padding:0;
  text-align:center;
  color:#411303;
  font-size:200%;
  font-weight:bold;
  letter-spacing:2px;
  line-height:100%;
  background:none;
}
#mainContents.page-personal.agecont .lineup .contentscol .lineuplist h5{
  padding:14px 0;
  text-align:center;
  color:#411303;
  font-size:120%;
  font-weight:normal;
  letter-spacing:2px;
  line-height:100%;
  background:none;
}
#mainContents.page-personal .special {
  width: auto;
  padding: 10px 10px 20px;
  margin: 50px 10px 0;
  background-size: 100%;
}
#mainContents.page-personal .special h2 {
  margin-left: -10px;
  margin-right: -10px;
}
#mainContents.page-personal div.ttl-birthday {
  font-size: 150%;
  top: 0;
  margin: 
}
#mainContents.page-personal .special p {
  font-size: 100%;
}
#mainContents.page-personal .special img {
  max-width: 100%;
}
#mainContents.page-personal .special p.main-message {
  font-size: 100%;
  width: auto;
  margin-left: 0;
}
#mainContents.page-personal .special .special-main {
  margin-bottom: 10px;
  margin-top: 0;
  max-width: 100%;
}

#mainContents.page-personal .special button {
  padding: 10px;
}
#mainContents.page-personal .special .comment-wrap .comment {
  padding: 20px;
}
#mainContents.page-personal .special .comment-wrap .comment .pict {
    margin: 0 auto 30px;;
    float: none;
}
#mainContents.page-personal .special .comment-wrap .comment .comment-detail dt {
  font-size: 160%;
}
#mainContents.page-personal .special .comment-wrap .comment .information {
  padding: 10px;
  font-size: 16px;
}
#mainContents.page-personal .special .comment-wrap .comment .comment-detail.book-area {
  width: auto;
  float: none;
}
#mainContents.page-personal .special .comment-wrap .comment .book-area-pict {
  float: none;
  margin: 0 auto 40px;
  display: block;
}
#mainContents.page-personal .special .comment-wrap ul {
  padding: 0;
}
#mainContents.page-personal .special-offer {
  margin-top: 15px;
}
#mainContents.page-personal .special-offer h2 {
  font-size: 166.6667%;
  padding-right: 30px;
  padding-left: 30px;
  background-size: 40px;
  background-position: 2px 0px;
  letter-spacing: 0;
}
#mainContents.page-personal .special-offer h2::before,
#mainContents.page-personal .special-offer h2::after {
  top: 75%;
}
#mainContents.page-personal .special-offer h2::before {
  transform: translateY(-50%) rotate(70deg);
}
#mainContents.page-personal .special-offer h2::after {
  transform: translateY(-50%) rotate(-70deg);
}
#mainContents.page-personal .special-offer ul {
  flex-direction: column;
  align-items: center;
  margin-top: 10px;
}
#mainContents.page-personal .special-offer li {
  margin: 10px 0;
}
#mainContents.page-personal .key-points {
  margin-top: 30px;
}
#mainContents.page-personal .lineup-wrap article {
  width: 94%;
  margin: 0 auto;
}
#mainContents.page-personal .lineup-wrap .book-list li {
  flex-basis: 48%;
  margin: 5px 1%;
  padding: 0;
}
#mainContents.page-personal .lineup-wrap .book-list li.lineup-break {
  display: none;
}
#mainContents.page-personal .contentscol.campaign article {
  padding: 50px 0;
}
#mainContents.page-personal .contentscol.price {
  margin-top: 50px;
}
#mainContents.page-personal .contactwrap .btn-contanct {
  padding: 14px 0;
  min-width: 94%;
  display: inline-block;
  font-size: 140%;
}

/* ====================================================================================================
* news
==================================================================================================== */
#news #mainContents .breadth1100, #mainContents.page-news .breadth1100 {
  *zoom: 1;
  width:90%;
  margin:0 auto;
  padding:0 0 90px 0;
}
#news #mainContents .breadth1100:after, #mainContents.page-news .breadth1100:after {
  content:".";
  display:block;
  clear:both;
  height:0;
  font-size:0;
  visibility:hidden;
}
#news #mainContents h1.mainVisual, #mainContents.page-news h1.mainVisual {
  position: relative;
  width: 100% !important;
  padding: 0;
  background: url(../images/news/bkg_01.jpg) no-repeat 50% 60px;
  background-size: 100%;
}
#news #mainContents h1.mainVisual span{
  background-color: #421300;
  display:block !important;
}
#news #mainContents h1.mainVisual span img, #mainContents.page-news h1.mainVisual span img {
  position: relative;
  top: -2px;
  width: 31px !important;
  margin: 0;
  display: inline-block;
  float: left;
}
#news #mainContents h1.mainVisual span em, #mainContents.page-news h1.mainVisual span em{
  margin:0 0 0 10px;
  padding:12px 0 0 0;
  font-size:160%;
  font-weight:400;
  display:inline-block;
  line-height:0;
  float:left;
}
#news #mainContents .newsListBtn, #mainContents.page-news .newsListBtn {
  padding:0;
  text-align: right;
  font-size: 12px;
}
#news #mainContents .newsListBtn li, #mainContents.page-news .newsListBtn li {
  display: inline-block;
  margin:0 0 30px -1px;
  padding: 0 6px;
  line-height: 1.3;
  border-left: 1px solid #00a1e3;
  border-right: 1px solid #00a1e3;
}
#news #mainContents .newsListBtn li a, #mainContents.page-news .newsListBtn li a {
  color: #00a1e3;
}
#news #mainContents .newsList, #mainContents.page-news .newsList {
  margin:0;
  padding:0;
}
#news #mainContents .newsList > li, #mainContents.page-news .newsList > li {
  display: inline-block;
  vertical-align: top;
  width:100%;
  margin:0 0 30px 0;
  padding:0;
}
#news #mainContents .newsList > li img, #mainContents.page-news .newsList > li img {
  width:100%;
  height:auto;
  border-radius: 3px;
}
#news #mainContents .newsList > li .newsTitle, #mainContents.page-news .newsList > li .newsTitle {
  padding:16px 0 0;
  font-size: 15px;
  font-weight: bold;
}
#news #mainContents .newsList > li .newsTxt, #mainContents.page-news .newsList > li .newsTxt {
  padding: 7px 0 0;
  font-size: 12px;
}
#news #mainContents #leftContent, #mainContents.page-news #leftContent {
  float:none;
  width:100%;
  margin:0;
}
#news #mainContents #leftContent h2, #mainContents.page-news #leftContent h2 {
  margin:0 0 10px;
  font-weight:bold;
  border-bottom: 1px solid #421300;
}
#news #mainContents #rightContent, #mainContents.page-news #rightContent {
  float:none;
  width:100%;
  margin:0 0 30px 0;
}
#news #mainContents #rightContent > article > div + div, #mainContents.page-news #rightContent > article > div + div {
  padding:30px 0 0;
}
#news #mainContents #rightContent h2, #mainContents.page-news #rightContent h2 {
  margin: 0;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.4;
}
#news #mainContents #rightContent h2 .date, #mainContents.page-news #rightContent h2 .date {
  display: block;
  font-size:14px;
  padding-bottom:14px;
}
#news #mainContents #rightContent h2 + article, #mainContents.page-news #rightContent h2 + article {
  padding: 16px 0 0;
  line-height: 1.7;
}

#news .newsListArea li{
  margin-bottom:1em;
}


/* ====================================================================================================
* contact
==================================================================================================== */
#contact #mainContents{
  padding:0 0 90px 0;
}
#contact #mainContents h1.mainVisual, #mainContents.page-contact h1.mainVisual {
  position:relative;
  width:100% !important;
  height:80px !important;
  padding:0;
  background-size:100%;
}
#contact #mainContents h1.mainVisual span{
  display:block !important;
}
#contact #mainContents h1.mainVisual span img, #mainContents.page-contact h1.mainVisual span img {
  position:relative;
  top:10px;
  width:34px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#contact #mainContents h1.mainVisual span em, #mainContents.page-contact h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:24px 0 0 0;
  font-size:160%;
  display:inline-block;
  line-height:0;
  float:left;
}

#contact #btnArea {
  position:relative;
  height:auto;
  width:100%;
  margin: 0 auto;
}
#contact .rentalBtnOn input,#contact .rentalBtnOn img{
  width:70%;
  margin:0 auto;
  height:auto;
}
#contact #btnArea .btnL {
  float:none;
  width:100%;
  margin:0 0 -20px 0;
  text-align: center;
  position: relative;
}
#contact #btnArea .btnL img{
  width:300px;
}
#contact #btnArea .btnL p {
  position:relative;
  top:-50px;
  left:0;
  height:auto;
}
#contact #btnArea .btnL p img{
  margin:0 auto;
  width:70%;
  height:auto;
}
#contact #btnArea .btnR {
  float:none;
  margin:0 0 -40px 0;
  width:100%;
  text-align: center;
  position: relative;
}
#contact #btnArea .btnR img{
  width:300px;
}
#contact #btnArea .btnR p {
  position:relative;
  top:-50px;
  left:0;
}
#contact #btnArea .btnR p img{
  margin:0 auto;
  width:70%;
  height:auto;
}

#contact #mainContents .sptel{
  margin:0 0 0 24px;
  font-size:240%;
  font-weight:bold;
  color:#421300;
  text-align:center;
}
#contact #mainContents .sptel:before{
  content:"";
  position:absolute;
  width:24px;
  height:28px;
  margin:8px 0 0 -30px;
  background:url(../images/sp/icotel.png) no-repeat 0 0;
  background-size:24px;
}
#contact #mainContents .spdate{
  margin:0 0 14px 0;
  font-size:200%;
  font-weight:bold;
  color:#421300;
  text-align:center;
}
#contact #mainContents .spdate span{
  margin:0 8px 0 0;
  font-size:60%;
  font-weight:normal;
}

#contact .btn_rental {
  margin-top: 20px;
  text-align: center;
}
#contact textarea,
#contact input[type=text],
#contact input[type=email] {
  border: 1px solid #421300;
}
#contact td ul li {
  float: left !important;
}
#contact .formType01 {
  margin:30px 0 0 0;
}
#contact .formType01 textarea,
#contact .formType01 input[type=text],
#contact .formType01 input[type=email] {
  width:100%;
  font-size: 16px;
  padding: 5px;
  font-family: 'メイリオ', Meiryo,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN',sans-serif;
  box-sizing:border-box;
}
#contact .formType01 th,
#contact .formType01 td {
  font-size:12px;
  padding:0 3px 20px;
  vertical-align: top;
  line-height: 2.2;
  box-sizing:border-box;
}
#contact .formType01 th ul li,
#contact .formType01 td ul li {
  display: inline-block;
  margin: 0 15px 10px 0;
}
#contact .formErrer {
  display: block;
  color: #cc0000;
}
#contact .btnBack {
  margin:20px 0 0 57px;
  padding:0 0 10px;
}
#contact .btnForm {
  text-align:center;
  padding:20px 0 60px;
}
#contact .btnForm input{
  width:100%;
}
#contact .txtFin {
  margin:20px 0 0 57px;
}
#contact #rentalAgrry {
  text-align: center;
  margin-bottom:25px;
}
#contact .btnNote {
  text-align:center;
  padding-top:10px;
}
#mainContents.page-contact .breadth960 h1 img {
  max-width: 100%;
}
.page-contact a.btn {
  width:auto;
}
.page-contact h2.title {
  font-size: 14px;
}
.page-contact .qacol{
  width:100%;
  margin:0 auto 40px;
  padding:0;
  border-bottom:1px solid #3d2410;
}
.page-contact .qatitle{
  position:relative;
}
.page-contact h3{
  padding:22px 0 20px 0;
  font-size:140%;
  line-height:130%;
  height:100%;
  border-top:1px solid #3d2410;
}
.page-contact h3:before{
  display:none;
}
.page-contact .btnswitch{
  position:absolute;
  top:18px;
  right:0;
  width:26px;
  height:26px;
  border:1px solid #411303;
  -webkit-border-radius:100%;
  -moz-border-radius:100%;
  border-radius:100%;
}
.page-contact .qatitle.active .btnswitch:before{
  position:absolute;
  left:6.5px;
  top:-3px;
  content:"-";
  font-size:240%;
  font-style:normal;
  line-height:100%;
  display:block;
  color:#411303;
}
.page-contact .qatitle .btnswitch:before{
  position:absolute;
  left:5.5px;
  top:1px;
  content:"+";
  font-size:190%;
  font-style:normal;
  line-height:100%;
  display:block;
  color:#411303;
}
.page-contact article{
  margin:0;
  padding:0 0 20px 0;
  display:none;
  float:none;
}
.page-contact article .col{
  margin:0 0 20px 0;
  padding:0;
}
.page-contact article .col:last-child{
  margin:0;
  padding:0;
}
.page-contact article a{
  color:#28a1de;
}


/* ====================================================================================================
* company
==================================================================================================== */
#company #mainContents, #mainContents.page-company {
  padding-bottom:120px;
}
#company #mainContents h1.mainVisual, #mainContents.page-company h1.mainVisual {
  position:relative;
  width:100% !important;
  height:80px !important;
  padding:0;
  background-size:100%;
}
#company #mainContents h1.mainVisual span{
  display:block !important;
}
#company #mainContents h1.mainVisual span img, #mainContents.page-company h1.mainVisual span img {
  position:relative;
  top:5px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#company #mainContents h1.mainVisual span em, #mainContents.page-company h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:24px 0 0 0;
  font-size:160%;
  font-weight:bold;
  display:inline-block;
  line-height:0;
  float:left;
}

/* ====================================================================================================
* bookstore
==================================================================================================== */
#bookstore #mainContents, #mainContents.page-bookstore {
  padding-bottom:140px;
}
#bookstore #mainContents h1.mainVisual, #mainContents.page-bookstore h1.mainVisual {
  position:relative;
  width:100% !important;
  height:80px !important;
  padding:0;
  background-size:100%;
}
#bookstore #mainContents h1.mainVisual span{
  display:block !important;
}
#bookstore #mainContents h1.mainVisual span img, #mainContents.page-bookstore h1.mainVisual span img {
  position:relative;
  top:5px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#bookstore #mainContents h1.mainVisual span em, #mainContents.page-bookstore h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:24px 0 0 0;
  font-size:160%;
  font-weight:bold;
  display:inline-block;
  line-height:0;
  float:left;
}
.page-bookstore .btnArea {
  position:relative;
  height:auto;
  width:100%;
  margin: 0 auto;
}
.page-bookstore .btnArea a {
  width: auto;
}
.page-bookstore .btnArea .btnL {
  float:none;
  width:100%;
  margin-bottom: 10px;
  text-align: center;
  position: relative;
}
.page-bookstore .btnArea .btnR {
  float:none;
  width:100%;
  text-align: center;
  position: relative;
}


/* ====================================================================================================
* policy
==================================================================================================== */
#policy #mainContents, #mainContents.page-policy{
  padding-bottom:120px;
}
#policy #mainContents h1.mainVisual, #mainContents.page-policy h1.mainVisual {
  position:relative;
  width:100% !important;
  height:80px !important;
  padding:0;
  background-size:100%;
}
#policy #mainContents h1.mainVisual span{
  display:block !important;
}
#policy #mainContents h1.mainVisual span img, #mainContents.page-policy h1.mainVisual span img {
  position:relative;
  top:2px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#policy #mainContents h1.mainVisual span em, #mainContents.page-policy h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:24px 0 0 0;
  font-size:160%;
  font-weight:bold;
  display:inline-block;
  line-height:0;
  float:left;
}

/* ====================================================================================================
* usepolicy
==================================================================================================== */
#usepolicy #mainContents, #mainContents.page-usepolicy{
  padding-bottom:120px;
}
#usepolicy #mainContents h1.mainVisual, #mainContents.page-usepolicy h1.mainVisual {
  position:relative;
  width:100% !important;
  height:80px !important;
  padding:0;
  background-size:100%;
}
#usepolicy #mainContents h1.mainVisual span{
  display:block !important;
}
#usepolicy #mainContents h1.mainVisual span img, #mainContents.page-usepolicy h1.mainVisual span img {
  position:relative;
  top:5px;
  width:30px !important;
  margin:0;
  display:inline-block;
  float:left;
}
#usepolicy #mainContents h1.mainVisual span em, #mainContents.page-usepolicy h1.mainVisual span em{
  margin:0 0 0 14px;
  padding:24px 0 0 0;
  font-size:160%;
  font-weight:bold;
  display:inline-block;
  line-height:0;
  float:left;
}

/* ====================================================================================================
* shikake2016
==================================================================================================== */

#shikake2016 #mainContents {
  padding-bottom: 140px;
}
#shikake2016 #mainContents .lead-message,
#shikake2016 #mainContents section, #shikake2016 #mainContents section .inner {
  width: auto;
}

#shikake2016 #mainContents h1.mainVisual {
  background-size: 100%;
  background-color: transparent;
}

#shikake2016 #mainContents h1.mainVisual span {
  line-height: normal;
  height: auto;
  padding: 40px 0 0 20px;
}
#shikake2016 #mainContents h1.mainVisual span em{
  margin-left: 0px;
  text-shadow: -1px -1px 2px rgba(217, 217, 205, 1), 1px -1px 2px rgba(217, 217, 205, 1), -1px 1px 2px rgba(217, 217, 205, 1), 1px 1px 2px rgba(217, 217, 205, 1);
}
#shikake2016 #mainContents .lead-message {
  top: -120px;
  text-shadow: -1px -1px 2px rgba(217, 217, 205, 1), 1px -1px 2px rgba(217, 217, 205, 1), -1px 1px 2px rgba(217, 217, 205, 1), 1px 1px 2px rgba(217, 217, 205, 1);
}
#shikake2016 #mainContents .lead-message span {
  margin-left: 25px;
}
#shikake2016 #mainContents section {
  width: 90%;
}
#shikake2016 #mainContents .btn-area {
  flex-direction: column;
  gap: 0;
  align-items: flex-start;
}
#shikake2016 .book-introduction {
  flex-direction: column;
}
#shikake2016 .book-details {
  margin-left: 0;
  margin-top: 20px;
}
#shikake2016 .videos {
  display: block;
}
#shikake2016 .videos .youtube{
  margin-top: 20px;
}
#shikake2016 .videos .youtube:first-child{
  margin-top: 0;
}
#shikake2016 .books {
  gap: unset;
  flex-wrap: wrap;
}
#shikake2016 .book {
  flex-basis: calc(50% - 10px);
  margin: 10px 0;
}
#shikake2016 .book img {
  max-width: 100%;
}
#shikake2016 .book .btn-wrap {
  flex-direction: column;
}
#shikake2016 .book .btn-wrap a {
  width: 100%;
}

/* ====================================================================================================
* loginform
==================================================================================================== */
#bc_signup #mainContents,#bc_leave #mainContents{
    margin-bottom:60px;
}

.signup_progressbar{
  display:none;
}


#loginform label {
  width:100%;
  display: inline-block;
  vertical-align: top;
  text-align:left;
  margin-right: 1em;
  margin-bottom:4px;
}

#loginform .login-remember label {
  width: 100%;
  text-align: left;
}

#bc_data form,#bc_mypage form{
  margin:20px 0 0 0 !important;
}

#bc_data #loginform input,#bc_mypage #loginform input{
  margin:0 0 20px 0 !important;
}

#loginform .login-submit #wp-submit {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  cursor: pointer;
  display: inline-block;
  border: none;
  height: 48px;
  line-height: 48px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  padding-left: 16px;
  padding-right: 52px;
  background-color: #ffe100;
  color: #411303;
  background-image: url("../images/button_next.png");
  background-position: right 16px top 50%;
  background-repeat: no-repeat;
  background-size: 21px 21px;
}

.page-bc_signup, .page-bc_mypage, .page-bc_data, .page-bc_leave {
  padding-top: 50px !important;
  font-size:14px;
  color: #421300;
  font-family: Meiryo;
}

.page-bc_signup h3, .page-bc_mypage h3, .page-bc_data h3, .page-bc_leave h3 {
  font-size:140%;
  font-weight: 700;
  margin-bottom: 20px;
}

.page-bc_signup h3:not(:first-of-type), .page-bc_mypage h3:not(:first-of-type), .page-bc_data h3:not(:first-of-type), .page-bc_leave h3:not(:first-of-type) {
  margin-top: 50px;
}

.page-bc_signup h3 small, .page-bc_mypage h3 small, .page-bc_data h3 small, .page-bc_leave h3 small {
  display: block;
  margin-top: 5px;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.6;
}

.page-bc_signup .form_items:not(:last-of-type), .page-bc_mypage .form_items:not(:last-of-type), .page-bc_data .form_items:not(:last-of-type), .page-bc_leave .form_items:not(:last-of-type) {
  margin-bottom: 30px;
}

.page-bc_signup .form_items a, .page-bc_mypage .form_items a, .page-bc_data .form_items a, .page-bc_leave .form_items a {
  color: #00a2e4;
}

.page-bc_signup .form_buttons a.button, .page-bc_signup .form_buttons button, .page-bc_mypage .form_buttons a.button, .page-bc_mypage .form_buttons button, .page-bc_data .form_buttons a.button, .page-bc_data .form_buttons button, .page-bc_leave .form_buttons a.button, .page-bc_leave .form_buttons button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  cursor: pointer;
  display: inline-block;
  border: none;
  height: 48px;
  line-height: 48px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
}

.page-bc_signup .form_buttons a.button.back, .page-bc_signup .form_buttons button.back, .page-bc_mypage .form_buttons a.button.back, .page-bc_mypage .form_buttons button.back, .page-bc_data .form_buttons a.button.back, .page-bc_data .form_buttons button.back, .page-bc_leave .form_buttons a.button.back, .page-bc_leave .form_buttons button.back {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  cursor: pointer;
  display: inline-block;
  border: none;
  height: 48px;
  line-height: 48px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  padding-left: 52px;
  padding-right: 16px;
  margin-right: 15px;
  background-color: #411303;
  color: #FFF;
  background-image: url("../images/button_back.png");
  background-position: 16px 50%;
  background-repeat: no-repeat;
  background-size: 21px 21px;
}

.page-bc_signup .form_buttons a.button.next, .page-bc_signup .form_buttons button.next, .page-bc_mypage .form_buttons a.button.next, .page-bc_mypage .form_buttons button.next, .page-bc_data .form_buttons a.button.next, .page-bc_data .form_buttons button.next, .page-bc_leave .form_buttons a.button.next, .page-bc_leave .form_buttons button.next {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  cursor: pointer;
  display: inline-block;
  border: none;
  height: 48px;
  line-height: 48px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  padding-left: 16px;
  padding-right: 52px;
  background-color: #ffe100;
  color: #411303;
  background-image: url("../images/button_next.png");
  background-position: right 16px top 50%;
  background-repeat: no-repeat;
  background-size: 21px 21px;
}

.page-bc_signup .form_buttons a.button.large, .page-bc_signup .form_buttons button.large, .page-bc_mypage .form_buttons a.button.large, .page-bc_mypage .form_buttons button.large, .page-bc_data .form_buttons a.button.large, .page-bc_data .form_buttons button.large, .page-bc_leave .form_buttons a.button.large, .page-bc_leave .form_buttons button.large {
  padding-left: 50px;
  padding-right: 60px;
}

.page-bc_signup .form_buttons a.button.center, .page-bc_signup .form_buttons button.center, .page-bc_mypage .form_buttons a.button.center, .page-bc_mypage .form_buttons button.center, .page-bc_data .form_buttons a.button.center, .page-bc_data .form_buttons button.center, .page-bc_leave .form_buttons a.button.center, .page-bc_leave .form_buttons button.center {
  display: table;
  margin: 0 auto;
}

.page-bc_signup .form_buttons a.button:hover, .page-bc_signup .form_buttons button:hover, .page-bc_mypage .form_buttons a.button:hover, .page-bc_mypage .form_buttons button:hover, .page-bc_data .form_buttons a.button:hover, .page-bc_data .form_buttons button:hover, .page-bc_leave .form_buttons a.button:hover, .page-bc_leave .form_buttons button:hover {
  text-decoration: none !important;
  opacity: 0.5;
}

#bc_leave .form_buttons a{
  margin-bottom:12px !important;
}

.page-bc_signup table, .page-bc_mypage table, .page-bc_data table, .page-bc_leave table {
  width:100%;
}

.page-bc_signup table th, .page-bc_signup table td, .page-bc_mypage table th, .page-bc_mypage table td, .page-bc_data table th, .page-bc_data table td, .page-bc_leave table th, .page-bc_leave table td {
  vertical-align: top;
  padding-top: 10px;
  padding-bottom: 10px;
}

.page-bc_signup table th, .page-bc_mypage table th, .page-bc_data table th, .page-bc_leave table th {
  width:100px !important;
  padding-right: 25px;
  white-space:normal;
  text-align: right;
  font-weight: bold;
  box-sizing:border-box;
}

.page-bc_signup input[type="text"], .page-bc_signup input[type="email"],
.page-bc_signup input[type="password"], .page-bc_signup textarea, .page-bc_mypage input[type="text"], .page-bc_mypage input[type="email"],
.page-bc_mypage input[type="password"], .page-bc_mypage textarea, .page-bc_data input[type="text"], .page-bc_data input[type="email"],
.page-bc_data input[type="password"], .page-bc_data textarea, .page-bc_leave input[type="text"], .page-bc_leave input[type="email"],
.page-bc_leave input[type="password"], .page-bc_leave textarea {
  border: 1px solid #686868;
  padding:5px;
  font-size:16px;
  box-sizing:border-box;
  margin:0 0 8px 0;
}

.page-bc_signup input[type="text"], .page-bc_signup input[type="email"], .page-bc_signup input[type="password"], .page-bc_mypage input[type="text"], .page-bc_mypage input[type="email"], .page-bc_mypage input[type="password"], .page-bc_data input[type="text"], .page-bc_data input[type="email"], .page-bc_data input[type="password"], .page-bc_leave input[type="text"], .page-bc_leave input[type="email"], .page-bc_leave input[type="password"] {
  width:100%;
  box-sizing:border-box;
}

.page-bc_signup input[type="text"]:not(:first-of-type), .page-bc_signup input[type="email"]:not(:first-of-type), .page-bc_signup input[type="password"]:not(:first-of-type), .page-bc_mypage input[type="text"]:not(:first-of-type), .page-bc_mypage input[type="email"]:not(:first-of-type), .page-bc_mypage input[type="password"]:not(:first-of-type), .page-bc_data input[type="text"]:not(:first-of-type), .page-bc_data input[type="email"]:not(:first-of-type), .page-bc_data input[type="password"]:not(:first-of-type), .page-bc_leave input[type="text"]:not(:first-of-type), .page-bc_leave input[type="email"]:not(:first-of-type), .page-bc_leave input[type="password"]:not(:first-of-type) {
  margin-left:0;
}

.page-bc_signup select:not(:first-of-type), .page-bc_mypage select:not(:first-of-type), .page-bc_data select:not(:first-of-type), .page-bc_leave select:not(:first-of-type) {
  margin-left:10px;
}

.page-bc_signup .note, .page-bc_mypage .note, .page-bc_data .note, .page-bc_leave .note {
  font-size: 12px;
  line-height: 1.67;
}

.page-bc_signup p.note, .page-bc_mypage p.note, .page-bc_data p.note, .page-bc_leave p.note {
  margin-top: 10px;
}

.page-bc_signup span.note, .page-bc_mypage span.note, .page-bc_data span.note, .page-bc_leave span.note {
  margin-left:0;
}

.page-bc_signup strong, .page-bc_mypage strong, .page-bc_data strong, .page-bc_leave strong {
  font-weight: bold;
}

.page-bc_signup .error, .page-bc_mypage .error, .page-bc_data .error, .page-bc_leave .error {
  margin-left: 10px;
  color: #F00;
}

.page-bc_signup .loading, .page-bc_mypage .loading, .page-bc_data .loading, .page-bc_leave .loading {
  margin-left: 10px;
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  border: 4px solid #54C6CE;
  border-right-color: transparent;
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
}

.page-bc_signup .delivery_current_month_text, .page-bc_signup .delivery_start_month_text, .page-bc_mypage .delivery_current_month_text, .page-bc_mypage .delivery_start_month_text, .page-bc_data .delivery_current_month_text, .page-bc_data .delivery_start_month_text, .page-bc_leave .delivery_current_month_text, .page-bc_leave .delivery_start_month_text {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.1em;
}

.page-bc_signup .questions label:not(:last-of-type), .page-bc_mypage .questions label:not(:last-of-type), .page-bc_data .questions label:not(:last-of-type), .page-bc_leave .questions label:not(:last-of-type) {
  margin-right: 1.5em;
}

.page-bc_signup .signup_progressbar {
  width: 100%;
  max-width:100% !important;
  margin: 0 auto 60px;
}

.page-bc_signup .signup_progressbar ul {
  display:block;
  table-layout: fixed;
  width: 100%;
  -webkit-transform: translateX(-1em);
  transform: translateX(-1em);
}

.page-bc_signup .signup_progressbar li {
  position: relative;
  display:block;
  height: 40px;
  white-space: nowrap;
  text-align: right;
  vertical-align: bottom;
}

.page-bc_signup .signup_progressbar li:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 7px;
  left: 0;
  top: 0;
  background-color: #421300;
}

.page-bc_signup .signup_progressbar li:after {
  content: '';
  display: block;
  position: absolute;
  z-index: 2;
  width: 14px;
  height: 14px;
  right: -7px;
  top: -3.5px;
  background-color: #421300;
  border-radius: 50%;
}

.page-bc_signup .signup_progressbar li span {
  line-height: 1;
  font-weight: bold;
  display: inline-block;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}

.page-bc_signup .signup_progressbar li.current ~ li:before {
  background-color: #d0d0d0;
}

.page-bc_signup .signup_progressbar li.current ~ li:after {
  display: none;
}

.page-bc_signup.page-bc_signup_pay_done .form_buttons {
  margin-top: 80px;
}

.page-bc_mypage.page-bc_mypage_login h3 {
  margin-bottom: 50px;
}

.page-bc_leave .form_buttons {
  margin-top: 50px;
}
.page-bc_leave div.enquete-wrap .wpcf7-list-item {
  display: block;
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.delivery_hidden {
  height: 0;
  overflow-y: hidden;
  margin-bottom: 0 !important;
}

.delivery_hidden.show {
  height: auto;
  margin-bottom: 30px !important;
}

.ng_books {
  padding: 10px;
  margin-bottom: 50px;
  height: 10em;
  border: 1px solid #686868;
  overflow-x: hidden;
  overflow-y: scroll;
}

/*# sourceMappingURL=bookclub.css.map */





/* ====================================================================================================
* UTILITY
==================================================================================================== */
.layoutTypeA {
  *zoom: 1;
}
.layoutTypeA:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  font-size: 0;
  visibility: hidden;
}
.layoutTypeA .layout-l {
  float: left;
  width: 100%;
}
.layoutTypeA .layout-r {
  float: right;
  width: 100%;
}
.layoutTypeA img {
  margin:0 auto;
  border-radius: 3px;
  margin-bottom: 20px;
  width:auto !important;
  max-width:100%;
  height:auto;
}

.layoutTypeB .layout-u {
  margin-bottom: 25px;
}
.layoutTypeB img {
  border-radius: 3px;
  float: left;
  margin-right: 15px;
}

div.youtube {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-top: 56.25%
}
div.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%
}


}
