@CHARSET "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c);

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  color:#000000;
  background:linear-gradient(#FFCCDD, #D6E9C4);
  font-family: "Noto Sans Japanese";
  font-size:1em;
  line-height:1.8rem;
}

#loadingbox{
  position:fixed;
  top:0px;
  left:0px;

  width:100%;
  height:100%;

  background-color:#ffffff;
  z-index:10;
  padding-top:20%;
  text-align:center;
  
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}

a{
  color:#C8161D;
}

.sidemenubutton{
  display:none;
}

#sidelinkbuttonbox{
  position:fixed;
  left:calc(50% + 512px);
  top:36px;
}

.sidelinkbutton{
  display:block;
  padding:4px 8px;
  background-color:#C8161D;
  border-radius:16px;
  text-decoration: none;
  text-align: center;
  color:#ffffff;
  margin-top:4px;
}

.sidelinkbutton:hover{
  background-color:#FF8600;
}

#allbox{
  width:1024px;
  margin:auto;
  padding-bottom: 16px;
  background-color:#ffffff;
  background-attachment: fixed;
  
}

.cautionbox{
  padding: 16px;
  border:8px solid #ff0000;
  font-weight: bold;
  margin: auto 32px;
  margin-bottom:8px;
}

.message,.contact{
  min-height: 600px;
}

#headbox{
  width:100%;
}

#headtitle{
  width:100%;
  height:410px;
}

.titlepic{
  width:100%;
  height:100%;
  background-image:url(pic/title.jpg);
  background-position:center center;
  background-size:contain;
  background-repeat:no-repeat;
}

.contentpic{
  display:block;
  margin:16px auto;
  width:80%;
}

.copybox{
  border:6px solid #EA5AA6;
  border-radius: 8px;
  color:#000000;
  padding:16px;
  margin:8px;
  margin-bottom:16px;
}

.bigfont{
  font-size:2rem;
  text-align:center;
  font-family: "M PLUS Rounded 1c";
  margin-top:8px;
}

.smallfont{
  font-size:1rem;
  text-align:right;
  padding-right:16px;
}

.newsbox{
  border:1px solid #999999;
  padding:16px;
  background-color:#eeeeee;
  font-size:0.9rem;
  margin:8px auto;
  width:800px;
}

.newscontentbox{
  
}

.infobox{
  margin:8px 32px 32px 64px;
}

.infotitlebox{
  display:table;
  font-weight:bold;
  font-size:1.4rem;
  border-bottom:2px solid #B0463B;
  margin-left:32px;
  margin-top:32px;
  padding:2px 8px;
}

.infosubtitle{
  display:table;
  font-weight:bold;
  font-size:1.2rem;
  border-left:16px solid #B0463B;
  border-bottom:1px solid #B0463B;
  padding-left:8px;
  margin-top:16px;
}

.infodetailbox{
  border-radius:8px;
  background-color:#ECC76E;
  padding:8px 16px;
  font-size:0.9rem;
  margin-top:16px;
  margin-right:32px;
}

.chapterbox{
  display:table;
  font-size:1rem;
  font-weight:bold;
  margin-bottom:8px;
  margin-left:-16px;
  margin-top:16px;
}

.infosubbox{
  margin:8px 32px 32px 32px;
}

.pricebox{
  border-radius:8px;
  background-color:#D9B2B3;
  padding:8px;
  font-size:0.9rem;
  margin-top:16px;
}

.bottombox{
  background-color:#F13CD6;
  padding:2px 8px;
  font-size:0.9rem;
}

.linkbutton{
  display:inline-block;
  text-decoration:none;
  background-color:#D1171A;
  color:#ffdddd;
  text-align:center;
  padding:4px 16px;
  border-radius:16px;
}

.linkbutton:hover{
  background-color:#FD9520;
  color:#ffffff;
}

.explainbox{
  display:flex;
  margin-left:32px;
}

.explaintextbox{
  padding:8px;
}

.explainpicbox{
  
}

.gmap{
  width:380px;
  height:300px;
}

.explainpic{
  width:80px
}

.line{
  border-top: 1px dashed #8c8b8b;
  margin:16px 0;
}

.bar{
	background-color:#fff;
	border-top: 10px dotted #D9B2B3;
  margin:16px;
}

.short{
    border: 0;
    height: 1px;
    background: #333;
    background-image: -webkit-linear-gradient(left, #ccc, #333, #ccc);
    background-image:    -moz-linear-gradient(left, #ccc, #333, #ccc);
    background-image:     -ms-linear-gradient(left, #ccc, #333, #ccc);
    background-image:      -o-linear-gradient(left, #ccc, #333, #ccc);
  width:80%;
  margin:16px auto;
}

.centerbox{
  text-align:center;
}

.creditbox{
  text-align:center;
  background-color:#F855A3;
  font-size:0.8rem;
  color:#ffffff;
}

.boldfont{
  font-weight:bold;
  color:#ff0000;
}

.switch{
  display:block;
  position:fixed;
  right:0;
  top:20px;
  border:2px solid #ffffff;
  color:#ffffff;
  font-weight:bold;
  font-size:0.7rem;
  z-index:50;
}

.scheduletable td{
  padding-right:16px;
}

.bold{
  font-size:1.2em;
  font-weight:800;
  color:#C8161D;
}

.productpic{
  width:22%;
  border:1px solid #D49494;
}

.newstitle{
  font-weight:bold;
}

.rootbutton{
  display:block;
  padding:8px;
  text-align: center;
  text-decoration: none;
  background-color: #FF8500;
  color: #ffffff;
  width:80%;
  margin:4px auto;
  border-radius: 16px;
  font-size: 1.4em;
}

.accessrootbox{
  margin:4px;
}