@charset "UTF-8";
html { font-size: 62.5%;}
body {
	margin:0;
	font-size:1.4rem;
	font-family:'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
	color:#333;
	text-align:center;
	line-height:1.5;
	position: relative;
}
* {
	margin:0;
	padding:0;
}
th, td {
	vertical-align: top;
}

p { margin: 10px 0 0 0; }
form { margin: 0; }
img, a img { border: 0; vertical-align: bottom; }
sup {
	position: relative;
	top: -1ex;
	font-size: 1.0em;
	vertical-align: baseline;
}
sub { font-size: 1.0em; }
li img, dt img, dd img { vertical-align: bottom; }
li{ list-style:none;}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-size: 1.6em;
}
ul, li, dt, dd, dl {
	margin:0;
	padding:0;
}
table { font-size: 100%;}
div.tipContainer {
    position: absolute;
    display: none;
    /*border: 1px solid #000000;*/
    background: rgba(0,0,0,0.75);
    color: #fff;
    left: 0;
    top: 0;
    padding: 7px 12px 6px;
    z-index: 2000;
    font-size: 9pt;
    /* text-align: center; */
}
div.tipContainer p { margin:0;}

.sp {display: none;}
@media only screen and (max-width: 767px) {
	.sp { display: block;}
	table.sp { display: table;}
	span.sp { display: inline;}
}
a:link,
a:visited { color: #1994eb; text-decoration: underline; }
a:hover,
a:active { color: #1994eb; text-decoration: none; }


/* 共通
----------------------------------------- */

.clearfix {
	overflow: hidden;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	overflow: hidden;
}

/*\*/
* html .clearfix {
	height: 1em;
	overflow: visible;
}
/**/

.clear {
	clear: both;
}

/*\*/
* html .clearfix {
	height: 1em;
	overflow: visible;
}
/**/

.hide {
	display: none;
}

a .alpha {
	filter: alpha(opacity=100);
	-moz-opacity: 1.00;
	opacity: 1.00;
}

a:hover .alpha {
	filter: alpha(opacity=80);
	-moz-opacity: 0.80;
	opacity: 0.80;
}

@keyframes flash {
	 0% { opacity: 1; }
    10% { opacity: 0.6; }
	100% { opacity: 1; }
}
@keyframes bright {
	 0% { filter: brightness(115%); }
    10% { filter: brightness(110%); }
	100% { filter: brightness(100%); }
}
.flash:hover{ animation: flash 1s 1 ease;}
.bright:hover{ animation: bright 1s 1 ease;}

.asterisk,
.required,
.asterisk_message{ color: #F00000;}
.error_message,
.error {
    font-size: 10pt;
    color: #F00000;
}

/* 全体レイアウト
----------------------------------------- */
#container {
	text-align:left;
	max-width:950px;
	min-width: 950px; /*レスポンシプにしない*/
	width:90%;
	margin:0 auto;
	padding:0;
	word-break : break-all;
	word-wrap : break-word;
  	overflow-wrap : break-word;
}
@media only screen and (max-width: 767px) {
	#container { width: 100%;}
}


/* ヘッダイメージ部 */
#header {
	margin:10px 0 0 0;
	background:url( ../img/bg_header.gif) repeat-x;
	height:31px;
	border-radius: 5px;
}
#gnavi li {
	float:left;
	display:inline-block;
	line-height:31px;
	color:#fff600;
}
#gnavi li.current {
	padding-left:10px;
}
#gnavi li a {
	display:inline-block;
	padding:0px 30px 0px 10px;
	background:url( ../img/bg_gnavi_li.gif) no-repeat right;
	height:31px;
	color:#fff;
	text-decoration:none;
}
#gnavi li a:hover {
	text-decoration:underline;
}
@media only screen and (max-width: 767px) {
	#header { margin:0;border-radius: 0px;}
	#gnavi li { font-size: 2.5vw;}
}
@media only screen and (max-width: 480px) {
	#gnavi li { font-size: 3vw;}
}

#txtsize {
	float:right;
	width:166px;
}
#txtsize img { float:left;}
#txtsize a {
	float:left;
	display:block;
	width:31px;
	height:31px;
	text-indent:-999px;
	overflow:none;
}
#txtsize a#mojiL {
	background:url(../img/fontsize_l.gif);
}
#txtsize a#mojiM {
	background:url(../img/fontsize_m.gif);
}
#txtsize a#mojiS {
	background:url(../img/fontsize_s.gif);
}
@media only screen and (max-width: 767px) {
	/*#txtsize { display: none;}*/
}

/* 本文記事
----------------------------------------- */
#mainContents {
	position:relative;
	margin: 0 auto;
}
@media only screen and (max-width: 767px) {
	#mainContents .inner { width: 93%; margin-left:auto; margin-right: auto; }
}


h2 {
	font-size:1.6em;
	line-height:50px;
	padding-left:10px;
	height:50px;
	background:url(../img/bg_h2.jpg) no-repeat left;
	border-bottom:#5987e6 2px solid;
	color:#0e3ea5;
}

/* ページトップへ戻る
----------------------------------------- */
#gotopArea { margin:40px auto 0px;}
#gotopBox {width:240px;float:right; background-color:#FFFFFF; }
#gotop { font-size:0.8em; float:right;}
#gotop a {
	display:inline-block;
	margin-top:5px;
	margin-right:10px;
	padding:5px 10px;
	
	color:#fff;
    background: linear-gradient(0deg, #3d70d5, #5a88e6);
	/*
    background: -moz-linear-gradient(top, #5a88e6, #3d70d5);
    background: -webkit-gradient(linear, center top, center bottom, from(#5a88e6), to(#3d70d5));
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#5a88e6', endColorstr='#3d70d5');
*/
	
	border-radius: 5px 5px 0 0;

	color:#fff;
	text-decoration:none;
}
#gotop a:hover {
    background: linear-gradient(180deg, #3d70d5, #5a88e6);
}
@media only screen and (max-width: 767px) {
	#gotopArea { width: 100%;}
}

/* フッタ
----------------------------------------- */
#footer {
	font-size:0.8em;
	border:1px solid #396CD9;
	text-align:left;
	border-radius: 5px 5px 0 0;
	background-color:#E8F0F7;
	margin:0 auto;
}
#footinf {
	padding:6px;
}
#footinf .info {
	color:#666;
	margin:1em 0 1em 2em;
	float:left;
}
#footinf .inquiry { text-align:right; }
#footinf .address {
	margin-left:2em;
}

#copy {
	color:#FFF;
	background-color:#396CD9;
	text-align:center;
	padding:2px;
}

@media only screen and (max-width: 767px) {
	#footer {width: 100%;border-radius: 0;border:none;border-top:1px solid #396CD9;}
}



/*フォーム*/
input[type="email"],
input[type="text"],
input[type="password"],
textarea,
select {
	margin:1px 0px;
	padding:3px 3px;
	border-radius: 5px;
	border: 1px solid #aaa;
	line-height:1.4em;
	min-height:1.4em;
	font-size:1.2em;
	font-family:Helvetica,Arial,sans-serif;
	box-sizing: border-box;
	-webkit-appearance: none;
	background:#fff;
}
input[type="submit"],
input[type="button"],
input[type="reset"],
button {
	font-size:1.2em;
	padding:3px 10px;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-appearance:none;
	border-radius: 5px;
    color: #000;
    background: linear-gradient( #e0e0e0, #c2c2c2);
    border: none;
	text-shadow: 1px 1px 1px rgba(255,255,255,0.5), -1px -1px 1px  rgba(255,255,255,0.5);
}
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
button:hover {
	animation: flash 1s 1 ease;
}
select {
	padding-right: 20px;
	background:#fff url(../img/select_arrow.png) no-repeat right 50%;
	background-size: 20px auto;
}
select.multiple {background-image:none; padding-right: 3px;}
input[type="radio"],
input[type="checkbox"] {
	margin-right:3px;
}

input[type="button"] {
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 50%, #f2f2f2 51%, #fcfcfc 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #ffffff 0%,#ffffff 50%,#f2f2f2 51%,#fcfcfc 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #ffffff 0%,#ffffff 50%,#f2f2f2 51%,#fcfcfc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fcfcfc',GradientType=0 ); /* IE6-9 */
	border-radius: 5px;
	font-size: 0.9em;
	padding:3px 10px;
	box-shadow: none;
	border:#aaa 1px solid;
	box-sizing: border-box;
}

input:disabled,
button:disabled{
	cursor: default !important;
}
input:disabled,
button:disabled{
	animation: none !important;
}
input[type="button"]:disabled,
button:disabled {
	background: #eee;
	color: #aaa;
}


.mt10 { margin-top:10px;}
.mt20 { margin-top:20px;}
.mt30 { margin-top:30px;}
.mt40 { margin-top:40px;}

.icon_dl {
	padding-left:40px;
	background-image:url(../img/dl.png);
	background-repeat:no-repeat;
	background-position: left 50%;
	background-size:25px auto;
}

/**/
#mainContents .inner { margin-top:2em;}


/* ページャー */
.data_area {
	background:#396CD9;
	background:#062496;
	margin-top:15px;
	width:100%;
	padding:5px 20px;
	line-height: 100%;
	border-spacing:0;
}
.data_area td { vertical-align: middle;}
td.page_line_style {
	background: none !important;
	color: #FFFD00;
	text-align: right;
}
td.page_line_style a { color: #fff; font-weight: bold;}
input[type='button'].pageButton {
	border:none;
	background:none;
	padding:0;
	margin:0;
	color: #fff;
	font-weight: bold;
}
input[type='button'].pageButton:disabled { opacity: 0.5;}
input[name='frontPageButton'].pageButton {
	padding-right: 20px;
	background:url(../img/prev.png) no-repeat right 50%;
	background-size: 20px auto;
	text-shadow: none;
}
input[name='nextPageButton'].pageButton {
	padding-left: 20px;
	background:url(../img/next.png) no-repeat left 50%;
	background-size: 20px auto;
	text-shadow: none;
}

.page_line_kensu { font-size: 0.9em; font-weight: bold; color: #fff;}

/**/
#input-num-box { background: #E8F0F7; padding: 1em; margin-top:1em;}
#input-num-box p { text-align: center;}
#input-num-box table { width: auto;background:none; margin:1em auto 0;}
#input-num-box table td { vertical-align: middle; padding: 0 10px;}
#input-num-box table td input[type="text"]{ width:150px;}

/**/
.commonTable01 { margin-top:1em; background: #f0f0f0; width:100%; padding:0.5em 0;}
.commonTable01 th,
.commonTable01 td { padding:0.5em 2em; box-sizing: border-box; text-align: left; font-weight: normal;}
.commonTable01 th,
.commonTable01 td.column1 { white-space: nowrap;}
.commonTable01.validate .column1,
.commonTable01.validate th { font-weight: bold;}
.commonTable01 td[colspan='2'] { padding-bottom: 0;}
.commonTable01 td textarea { width:100%; box-sizing: border-box;}

.commonTable01.autowidth { width:auto; margin-left:auto; margin-right: auto;}

.commonTable02 { margin-top:1em; width:100%; padding:0.5em 0;}
.commonTable02 th,
.commonTable02 td { padding:0.2em 1em; box-sizing: border-box; text-align: left; font-weight: normal; vertical-align: top;}
.commonTable02 th { white-space: nowrap; font-weight: bold;}
.commonTable02 .input_area th,
.commonTable02 .input_area td { vertical-align: middle;}
.commonTable02 td.right { text-align: right;}
.commonTable02 td.buttons { white-space: nowrap;}
.commonTable02 td.buttons input[type="submit"]:not(.back) { background: linear-gradient( #f6bf68, #f2a03a);}
.commonTable02.autowidth { width:auto; margin-left:auto; margin-right: auto;}
.commonTable02.alignleft { width:auto; margin-left:0; margin-right: 0;}

#mainContents .inner.with_begie_header { margin-top:0;}

#begie_header{
	margin:0 0 0px;
	padding:0px 20px;
	background: #fff1e1;
	display:flex;
	justify-content: flex-end;
}
#begie_header.begie_header2 { justify-content: space-between;}
#begie_header ul {
	margin:0;
	padding:0;
}
#begie_header li { display: inline-block; position: relative;padding-top: 10px; padding-bottom: 10px; padding-left: 20px; background-repeat:no-repeat;
	background-position: left 50%;
	background-size:auto 16px;}
#begie_header li input[type="submit"],
#begie_header li input[type="button"],
#begie_header li a {
	border:none;
	background: none;
	padding: 0px;
	line-height: 100%;
	font-weight: bold;
	font-size: 1.0em;
	padding-right: 15px; 
	border-radius: 0;
	border-right: #000 2px dotted;
	text-decoration: none;
	display: inline-block;
	color: #000;
}
#begie_header li input[type="button"] { background: none;}
#begie_header li:last-child input[type="submit"],
#begie_header li:last-child input[type="button"],
#begie_header li:last-child a { border-right: none !important; padding-right:0;}
#begie_header li.li_close::before,
#begie_header li.li_close::after{
	width:2px;
	height: 8px;
	background:#000;
	box-sizing: border-box;
	content: "";
	position: absolute;
	transform: rotate(45deg);
	left:8px;
	top:50%;
	margin-top:-5px;
}
#begie_header li.li_close::after { transform: rotate(-45deg);}

#begie_header li.li_pencil {
	background:url(../img/pencil.png) no-repeat 0px 50%;
	background-size: 16px auto;
}

#begie_header li.li_back {
	padding-left: 30px;
	background:url(../img/back.png) no-repeat 8px 50%;
	background-size: 16px auto;
}
#begie_header li.reflect {
	padding-left: 30px;
	background:url(../img/reflect.png) no-repeat 8px 60%;
	background-size: 16px auto;
}
#begie_header li.change {
	padding-left: 30px;
	background:url(../img/change.png) no-repeat 8px 50%;
	background-size: 16px auto;
}

/*テーブルソート*/
a.orderable {
	display: inline-block;
	position: relative;
	padding-right: 15px;
	text-decoration: underline;
	color: #fff;
}
a.orderable::before,
a.orderable::after {
	position: absolute;
	right: 0px;
	top:50%;
	border:transparent 5px solid;
	content: "";
	box-sizing: border-box;
	width:10px;
	height: 10px;
	display: block;
	opacity: 0.7;
}
a.orderable::before {
	border-top:#fff 5px solid;
	margin-top:1px;
}
a.orderable::after {
	border-bottom:#fff 5px solid;
	margin-top:-11px;
}
a.orderable:hover { text-decoration: none;}
a.orderable:hover::before,
a.orderable:hover::after { opacity: 1;}

/**/
.button-box { margin-top:2em; text-align: center; display: flex; justify-content: center;}
.button-box.button-box2 { justify-content: space-between;}
.button-box input[type='button'].orangeBtn:disabled { padding:2px 29px;margin:0 5px;}
.button-box input[type='submit'],
.button-box input[type='button'].orangeBtn:not(:disabled),
.go2top a {
	padding:3px 30px;
	color: #000;
	background: linear-gradient( #f6bf68, #f2a03a);
	border: none;
	border-radius: 5px;
	font-size: 1.2em;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-appearance: none;
	margin:0 5px;
}
.button-box input[type='submit'].back {
	background: linear-gradient( #cacaca, #b2b2b2);
}
.button-box input[type='submit'].blueBtn {
	background: linear-gradient( #678ce2, #3d62c6);
	color: #fff;
	text-shadow: none;
}
.button-box input[type='button'] {
	font-size: 1.2em;
}
.button-box input[type='submit']:disabled{
	padding:2px 29px;
	margin:0 5px;
	background: #eee;
	color: #aaa;
	border:#d9d9d9 1px solid;
}

.button-box .tooltip { position: relative; display: inline-block;}
.button-box .tooltip::after { position: absolute; left:0;top:0;width:100%; height: 100%; background: rgba(0,0,0,0); content: ""; z-index: 2}
.button-box .tooltip input { position: relative; z-index: 3;}
.button-box .tooltip input:disabled { z-index: 1;}

.thanks_msg {
	margin:23% 0 0 0;
	text-align: center;
}

.thanks_msg + .thanks_msg { margin-top:15px;}
table + .thanks_msg, .thanks_msg.mt25 { margin-top:25px;}

p.thanks_msg:first-of-type::before,
div.thanks_msg p:first-child::before{
	content: "";
	display: inline-block;
	width:25px;
	height: 25px;
	background:url(../img/checked.png) no-repeat left top;
	background-size:100% auto;
	margin: 0 7px 5px 0;
	vertical-align: middle;
	line-height: 25px;
}

.register_text_link {
	display: inline-block;
	padding:2em 4em;
	margin:25px auto 0;
	border:#d9d9d9 1px solid;
	background:#f9f9f9;
}
.register_text_link::before {
	content: "";
	width:6px;
	height: 6px;
	display: inline-block;
	transform: rotate(-135deg);
	border-left:#062496 2px solid;
	border-bottom:#062496 2px solid;
	margin-right: 10px;
}
.go2top {
	margin:5em 0 0;
	padding-bottom: 5em;
	text-align: center;
}
.go2top a {
	display: inline-block;
	text-decoration: none;
}
.go2top a:hover { animation: flash 1s;}



/**/

.remodal button { text-shadow:none;}
.remodal-confirm{ margin-top:1em;}

/**/
.tableScroller { overflow-x: scroll;}
.tableScroller table { margin-bottom: 1px !important;}
.tableScroller table th,
.tableScroller table td { white-space: nowrap;}
.tableScroller::-webkit-scrollbar{height:10px;}/*バーの太さ*/
.tableScroller::-webkit-scrollbar-track{background:#f0f0f0;}/*バーの背景色*/
.tableScroller::-webkit-scrollbar-thumb{background:#bbb;}/*バーの色*/


#error_box {
	margin:50px auto;
	width:85%;
	border:#c90000 5px solid;
	text-align: center;
	padding-bottom: 15px;
}
#error_box h3 {
	background:#c90000;
	padding: 10px 0 15px;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
}
#error_message {
	margin-top:15px;
}