@charset "utf-8";

/* basic setting */
html, body{ position:relative; width:100%; height:100%; }
body{ -webkit-text-size-adjust: none; }
body{
  margin:0;
  padding:0;
  font-size:14px;
  font-family: "メイリオ", Meiryo, Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height:1.5;
  vertical-align:bottom;
  color:#000;
  background:#eee;
}
h1,h2,h3,h4,h5,h6,p,em,pre,th,td{
  margin:0;
  padding:0;
  font-size:100%;
}
img,table{ border:0; vertical-align:bottom; }
form,ul,dl,ol{ margin:0; padding:0; }
li{ list-style:none; }
a{ outline:none; }
.clr{ clear:both; width:1px; height:0px; overflow:hidden; }
.cf{ *zoom:1; }
.cf:after{
  display:block;
  content:" ";
  clear:both;
  height:0px;
  overflow:hidden;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
input, button{font-family: "メイリオ", Meiryo, Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif}

a, button, input[type="submit"], input[type="reset"], input[type="button"]{transition:0.2s; cursor: pointer;}
a:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover{opacity:0.7}

/* header */
header{
  width:100%;
  background:#000;
}
header .inner{
  position:relative;
  width:1000px;
  margin:0 auto;
  padding:7px 0;
}
header .inner .before_login, header .inner .after_login{
  position:absolute;
  top:10px;
  right:0;
  padding:11px 10px;
  background:#333;
}
header .inner .before_login li, header .inner .after_login li{
  float:left;
}
header .inner .before_login li{
  margin-right:5px;
  font-size:14px;
  color:#fff;
}
header .inner .after_login li{
  margin-right:8px;
  background:#fff;
}
header .inner .before_login li:last-child, header .inner .after_login li:last-child{
  margin-right:0px;
  background:#fff;
}
.before_login input[type="text"], .before_login input[type="password"]{
  width:104px;
  height:26px;
  margin-left:6px;
  padding:0 3px;
  font-size:14px;
  border:0;
}
.before_login input[type="submit"]{
  height:26px;
  padding:0 7px;
  font-size:15px;
  font-weight:bold;
  background:#fcc800;
  border:0;
}
.after_login a.link, .after_login a.button{
  display:inline-block;
  height:23px;
  padding:3px 10px 0;
  font-size:15px;
  font-weight:bold;
  background:#ff6;
  text-decoration:none;
  color:#000;
}
.after_login input.link,
.after_login input.button{
  display:inline-block;
  height:23px;
  padding:3px 10px 0;
  font-size:15px;
  font-weight:bold;
  background:#ff6;
  text-decoration:none;
  color:#000;
  box-sizing: content-box;
  border: none;
}
.after_login a.button{background:#fcc800}
.after_login input.button{background:#fcc800}

/* footer */
footer{
  width:100%;
  padding:12px 0 18px;
  background:#000;
}
footer p{
  font-size:12px;
  color:#fff;
  text-align:center;
}

.gotop{
  position:fixed;
  bottom:70px;
  right:70px;
  display:none;
  opacity:0;
}
.gotop a{
  display:block;
  width:50px;
  height:50px;
  text-indent:-9999px;
  background:url(../img/gotop.png) no-repeat;
  background-size:100%;
}

/* article */
article{
  width:960px;
  margin:0 auto;
  padding:15px 20px 50px;
  background:#fff;
  min-height: 600px;
}
article h2{
  padding:10px 13px;
  margin-bottom:18px;
  color:#fff;
  font-size:18px;
  line-height:1;
  background:#000;
}

/* top page */
.visual{margin-bottom:20px}
.monthly_nav{
  margin-bottom:10px;
  padding-left:11px;
}
.monthly_nav ul{border-left:solid 1px #919191}
.monthly_nav li{
  float:left;
  border-right:solid 1px #919191;
}
.monthly_nav li a{
  display:block;
  width:116px;
  /*width:116px;　20210329　3、4月非表示*/
  /*width:155px;　20210329　7〜10月非表示*/
  /*width:470px;　20220112*/
  height:30px;
  padding-top:10px;
  border-top:solid 5px #fcc800;
  background:#000;
  color:#fff;
  font-weight:bold;
  font-size:16px;
  text-align:center;
  text-decoration:none;
}
.monthly_nav li a:hover{
  color:#000;
  background:#ffe360;
  opacity:1;
}
.monthly_nav li a.on{
  color:#000;
  background:#fcc800;
}
.calendar{
  width:932px;
  margin:0 auto;
}
.calendar .ttl{
  position:relative;
  padding:7px 10px 6px;
  font-size:24px;
  font-weight:bold;
  border-top:solid 1px #999;
  border-right:solid 1px #999;
  border-left:solid 1px #999;
}
.calendar .ttl .hayawari{
  position:absolute;
  top:7px;
  left:80px;
  display:inline-block;
  padding:5px 6px 0;
  color:#f00;
  font-size:15px;
  font-weight:normal;
  border:solid 2px #ff5959;
  background:#ffeef0;
}
.calendar .ttl .hayawari *{vertical-align:middle}

.calendar .ttl .hayawari .waku{
  padding:0 5px;
  color:#fff;
  font-size:12px;
  background:#f00018;
  border-radius:5px;
  vertical-align:2px;
}
.calendar .ttl .hayawari .small{
  font-size:12px;
  vertical-align:2px;
}
.calendar table{
  border-collapse:collapse;
}
.calendar th{
  width:132px;
  padding:2px 0;
  text-align:center;
  border:solid 1px #999;
  background:#e3e3e3;
}
.calendar th.sat{
  color:#fff;
  background:#3092C0;
}
.calendar th.sun{
  color:#fff;
  background:#F00018;
}
.calendar td{
  position:relative;
  padding:0 2px;
  font-weight:bold;
  border:solid 1px #999;
  vertical-align:top;
}
.calendar tr td:first-child:before{
  display:block;
  content:"";
  height:139px;
  float:left;
}
.calendar td a{
  display:block;
  text-decoration:none;
  color:#000;
}
.calendar td.sat, .calendar td.sat a{color:#3092C0}
.calendar td.hol, .calendar td.hol a{color:#f00018}

.calendar td .tnm, .calendar td .time, .calendar td .cation, .calendar td .end,
.calendar td .plan_s, .calendar td .plan_a, .calendar td .plan_b, .calendar td .plan_c, .calendar td .plan_d,
.calendar td .plan_e, .calendar td .plan_ss, .calendar td .plan_nm .plan_spm{
  display:block;
  color:#000;
}
.calendar td .tnm{
  padding:4px 0 10px;
  text-align:center;
}
.calendar td .time{
  padding:0 0 4px;
  font-weight:normal;
  text-align:center;
}
.calendar td .cation{
  font-size:12px;
  font-weight:normal;
  text-align:center;
}
.calendar td .plan_s, .calendar td .plan_a, .calendar td .plan_b, .calendar td .plan_c, .calendar td .plan_d,
.calendar td .plan_e, .calendar td .plan_ss, .calendar td .plan_nm, .calendar td .plan_kitakyu .calendar td .plan_spm{
  padding:2px;
  font-size:12px;
  margin-bottom:5px;
}
.calendar td .plan_s, .calendar td .plan_a, .calendar td .plan_b, .calendar td .plan_ss .plan_spm{background:#FFE488}
.calendar td .plan_c, .calendar td .plan_d, .calendar td .plan_e{background:#DCE3DB}
.calendar td .plan_nm{background:#d5d5d5}
.calendar td .plan_kitakyu{background-color:#ff9}
.calendar td .plan_s img, .calendar td .plan_a img, .calendar td .plan_b img, .calendar td .plan_c img,
.calendar td .plan_d img, .calendar td .plan_e img, .calendar td .plan_ss img, .calendar td .plan_nm img,
.calendar td .plan_kitakyu .calendar td .plan_spm img{
  vertical-align:middle;
  margin-right:5px;
}

.calendar td .end{
  position:absolute;
  width:133px;
  height:calc(100% + 1px);
  top:0;
  left:0;
  margin:-1px 0 0 -1px;
  background:rgba(0,0,0,0.5);
}
.calendar td .end span{
  position:absolute;
  top:50%;
  left:21px;
  display:block;
  width:90px;
  height:28px;
  padding:6px 0 0 0;
  margin-top:-17px;
  text-align:center;
  color:#fff;
  font-size:16px;
  background:#f00018;
  border-radius:6px;
}
.bnr{margin-top:30px}
.bnr ul{text-align:center}
.bnr ul li{
  display:inline;
  margin:0 4px;
}
.bnr ul li img {
    width: 220px;
    height: auto;
}

/* other page */
article h3{
  font-size:16px;
  border-bottom:solid 1px #666;
  margin-bottom:10px;
}
.tbl_shiai, .tbl_sekishu{
  width:100%;
  border-collapse:collapse;
  margin-bottom:40px;
}
.tbl_shiai th, .tbl_shiai td, .tbl_sekishu th, .tbl_sekishu td{
  padding:5px 8px;
  text-align:left;
  border:solid 1px #ccc;
}
.tbl_shiai th{
  width:12%;
  background:#ff9;
}
.tbl_shiai td{width:21%}
.tbl_sekishu th{background:#ff9}
.tbl_sekishu input{
  width:60px;
  padding:1px 3px;
  font-size:14px;
  text-align:right;
  margin-right:3px;
}
.tbl_sekishu .alerttext{
  display:inline-block;
  margin-left:15px;
  font-size:11px;
  line-height:1.1;
  color:#f00018;
  vertical-align:top;
  width: 120px;
}
.tbl_sekishu .special{
  color:#fff;
  font-size:12px;
  padding:0 4px;
  background:#f00018;
  border-radius:6px;
  vertical-align:1px;
}
.tbl_sekishu tr th:nth-child(1){width:7%}
.tbl_sekishu tr th:nth-child(2){width:59%}
.tbl_sekishu tr th:nth-child(3){width:8%}
.tbl_sekishu tr th:nth-child(4){width:27%}
.tbl_sekishu tr td:nth-child(1){text-align:center}
.tbl_sekishu tr td:nth-child(3){text-align:right}
.frmReq {
margin-bottom: 40px;
}
.frmReq textarea {
width: 100%;
padding: 7px;
border-color: #ccc;
box-sizing: border-box;
}
.frmbtn{text-align:center}
.frmbtn input, .registcheck input[type="submit"]{
  min-width:100px;
  height:40px;
  margin:0 10px;
  padding:0 15px;
  font-size:16px;
  font-weight:bold;
  border:solid 1px #ccc;
  background:#fcc800;
}
.frmbtn input.noagree{/*20240402追加*/
  background:#eee;
	color: #aaa;
	pointer-events: none;
}

.frmbtn p{margin-bottom:20px}
.frmbtn a{
  display:inline-block;
  min-width:70px;
  margin:0 10px;
  padding:11px 15px;
  font-size:16px;
  font-weight:bold;
  color:#000;
  line-height:1;
  text-decoration:none;
  border:solid 1px #ccc;
  background:#fcc800;
}
.frmbtn .btns li {
display: inline-block;
}
.registcheck{
  display:flex;
  width:800px;
  text-align:center;
  margin:0 auto 25px;
}
.registcheck .in_box, .registcheck .in_box_r{
  width:380px;
  margin:15px 10px;
  border:solid 1px #999;
}
.registcheck .in_box_r{
  color:#fff;
  background:#454545;
}
.registcheck .in_box a{
  display:block;
  height:100%;
  text-decoration:none;
  color:#000;
  background:#fcc800;
  border:solid 5px #999;
  box-sizing:border-box;
}
.registcheck .in_box form{
}
.registcheck .in_box button{
  height:160px;
  background:#fcc800;
  border:solid 5px #999;
  box-sizing:border-box;
  width: 100%;
  cursor: pointer;
}
.registcheck .in_box p, .registcheck .in_box_r p{margin:10px 0}
.registcheck .in_box .flarge{margin-top:25px}
.registcheck input[type="text"], .registcheck input[type="password"]{
  width:110px;
  padding:2px 3px;
  margin:0 3px;
  border:0;
}
.registcheck p span{
  display:inline-block;
  background:#fff;
}
.registcheck input[type="submit"]{margin:0}

.flarge{font-size:28px}
.fmiddle{font-size:20px}
.fbold{font-weight:bold}
.fred{color:#f00018}
.tcenter{text-align:center}

.tbl_kaiin{
  width:900px;
  border-collapse:collapse;
  margin:0 auto 40px;
}
.tbl_kaiin th, .tbl_kaiin td{
  padding:5px 10px;
  text-align:left;
  border:solid 1px #ccc;
}
.tbl_kaiin th{
  width:25%;
  background:#ff9;
}
.tbl_kaiin th .nes{
  float:right;
  color:#f00;
  font-weight:normal;
  font-size:12px;
}
.tbl_kaiin input[type="text"], .tbl_kaiin input[type="password"]{
  margin:4px 0;
  padding:3px 4px;
}
.tbl_kaiin .frmip_01{width:240px}
.tbl_kaiin .frmip_02{width:60px}
.tbl_kaiin .frmip_03{width:500px}
.tbl_kaiin .frmip_04{width:120px}
.tbl_kaiin .frmip_05{width:55px}
.tbl_kaiin .hk{ime-mode:disabled}

.cmplt{
  margin-bottom:40px;
  padding:45px 0 35px;
}
.cmplt p{margin-bottom:18px}
.cmplt .frmbtn{margin-top:50px}

.tbl_ichiran{
  width:100%;
  margin-bottom:30px;
  border-collapse:collapse;
}
.tbl_ichiran th, .tbl_ichiran td{
  padding:5px 8px;
  border:solid 1px #ccc;
}
.tbl_ichiran th{
  text-align:left;
  background:#ff9;
}
.tbl_ichiran tr.even td {
background-color: #fafafa;
}
.tbl_ichiran td .btns li {
  float: left;
}
.tbl_ichiran td a,
.tbl_ichiran td span,
.tbl_ichiran td input{
  display:inline-block;
  margin-right:5px;
  padding:5px 10px;
  color:#000;
  line-height:1;
  text-decoration:none;
  font-size:14px;
  border:solid 1px #ccc;
  background:#fcc800;
}
.tbl_ichiran td span,
.tbl_ichiran td input[disabled]{
  color:#999;
  background:#e0e0e0;
}
.tbl_ichiran td input[disabled]:hover {
	cursor: default;
	opacity: 1;
}
.paging{margin-bottom:40px}
.paging ul{text-align:center}
.paging li{
  display:inline;
  margin:0 3px;
}
.paging li a{
  display:inline-block;
  padding:2px 10px;
  color:#000;
  text-decoration:none;
  font-size:14px;
  border:solid 1px #aaa;
  background:#ff6;
}
.paging li span{
  display:inline-block;
  padding:2px 10px;
  font-size:14px;
  border:solid 1px #aaa;
}

.skip{margin-bottom:10px}
.skip a{
  display:block;
  float:right;
  padding:5px 45px 5px 10px;
  border:solid 1px #666;
  color:#000;
  text-decoration:none;
  background:url(../img/arrow2.png) no-repeat 96% 50%;
}
.fsmall{font-size:12px !important}
.fsmall2{font-size:14px !important}
.guide_segment01{
  margin-bottom:5px;
  padding:30px 20px 30px 220px;
  color:#f00018;
  font-size:18px;
  font-weight:bold;
  background:#DEE7B7 url(../img/pict_pcsp.png) no-repeat 20px 50%;
}
.guide_segment01 .fsmall{
  color:#000;
  font-weight:normal;
}
.guide_segment02{
  padding:5px 0;
  margin-bottom:30px;
  background:#EE6D2E;
}
.guide_segment02 p{
  font-size:18px;
  font-weight:bold;
  color:#fff;
  text-align:center;
}
.lst_01{margin-bottom:40px}
.lst_01 li{
  padding-left:1em;
  text-indent:-1em;
}
.guide_flow1{margin-bottom:40px}
.guide_flow1 dt{
  float:left;
  position:relative;
  width:10em;
  padding:5px 0;
  text-align:center;
  color:#fff;
  font-size:16px;
  font-weight:bold;
  background:#5AAC3E;
}
.guide_flow1 dt:after{
  display:block;
  content:" ";
  position:absolute;
  top:7px;
  right:-22px;
  width:14px;
  height:20px;
  background:url(../img/arrow.png) no-repeat;
}
.guide_flow1 dd{
  margin:0 0 4px calc(10em + 50px);
  padding:0;
  background:url(../img/arrow3.png) no-repeat 23% 100%;
}
.guide_flow1 dd .inner{
  padding:0 0 18px;
  background:url(../img/arrow3.png) no-repeat 76% 100%;
}
.guide_flow1 dd:last-child, .guide_flow1 dd:last-child .inner{background:none}
.guide_flow1 dl dd:last-child .inner{padding:0}
.guide_flow1 dd p{
  padding:4px 0;
  font-size:16px;
  font-weight:bold;
  text-align:center;
  border:solid 1px #5AAC3E;
  background:#DFE9B7;
}
.guide_flow1 dd .flx{display:flex}
.guide_flow1 dd .flx p{
  width:48%;
  margin-right:4%;
}
.guide_flow1 dd .flx p:last-child{margin-right:0}
.guide_flow1 dd .fsmall{
  font-weight:normal;
  text-align:left;
  background:none;
  border:0;
}
.guide_flow2{margin:20px 0 40px}
.guide_flow2 dt{
  float:left;
  width:10em;
  padding:5px 0;
  font-size:16px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  background:#000;
}
.guide_flow2 dd{
  margin:0 0 12px 10em;
  padding:4px 10px;
  font-size:16px;
  font-weight:bold;
  border:solid 1px #666;
}
.guide_flow2 dd .fsmall{font-weight:normal}
.guide_flow2 dd.cation{
  padding:3px 9px;
  border:solid 2px #f00018;
  background:#ffe0e0;
}
.guide_segment03{margin-bottom:40px}
.guide_segment03 > p{
  font-size:16px;
  font-weight:bold;
  text-align:center;
  border-bottom:solid 1px #666;
}
.guide_segment03 .telbox{
  text-align:center;
  padding-top:10px;
}
.guide_segment03 .telbox .name{
  display:inline-block;
  padding-right:8px;
  font-size:16px;
  line-height:1;
  text-align:left;
  vertical-align:top;
}
.guide_segment03 .telbox .name span{
  font-size:10px;
}
.guide_segment03 .telbox .tel{
  display:inline-block;
  font-size:24px;
  font-weight:bold;
  line-height:1;
  vertical-align:top;
}
.guide_segment04{text-align:center}
.guide_segment04 a{
  display:inline-block;
  width:25em;
  padding:9px 40px 8px 37px;
  border:solid 1px #666;
  color:#000;
  font-size:16px;
  text-align:center;
  text-decoration:none;
  background:url(../img/arrow.png) no-repeat 94% 50%;
}
.guide_segment05{text-align:center}
.guide_segment05 a{
  display:inline-block;
  width:25em;
  padding:9px 40px 8px 37px;
  border:solid 1px #666;
  color:#000;
  font-size:16px;
  text-align:center;
  text-decoration:none;
  background:url(../img/arrow.png) no-repeat 94% 50%;
}

/* 20170411追加 */
.calCaution {
font-size: 13px;
font-weight: bold;
line-height: 1.4;
/*margin-top: 5px;*/
    margin-top: 25px;
margin-left: 80px;
}
.calCaution strong {
color: #f00;
}

.ordCaution {
margin-bottom: 5px;
}
.ordCaution strong {
color: #f00;
}

/* 20240402追加 */
.privacypolicyAgree {
	width: 900px;
    margin: 0 auto 50px;
}
.ppATit {
    background: #ff9;
	border-bottom: 1px solid #ccc;
	padding: 5px 10px;
	font-weight: bold;
    margin-bottom: 15px;
}
.ppaTxtArea {
	width: 100%;
  height: 150px;
  border: 1px solid #ccc;
  overflow-y: scroll; 
	padding: 20px;
	max-width: 900px;
    box-sizing: border-box;
	margin-bottom: 20px;
}
.ppaTxtDtl,.ppaTxtDtl li {
	list-style-type:decimal;
}
.ppaTxtDtl li {
	text-indent: -1em;
	padding-left: 1em;
	list-style-position: inside;
	margin-bottom: 8px;
}
.ppaAgreeBox {
	text-align: center;
}