@charset "utf-8";

*{ font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }
*{ box-sizing: border-box; }

p,div,td,dd,li,h1,h2,h3{ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQIW2NkAAIAAAoAAggA9GkAAAAASUVORK5CYII=); }

body,html{ height: 100%; }

html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

html{ height: 100%; }
body{ margin: 0px; padding: 0px; position: relative; }
body,th,td{ color: #333; }
body,h1,h2,h3,h4,dl,dt,dd,ul,li,p,hr,big,span,form {  }
pre{ padding: 0px; }
form{ display: inline; }

*::-webkit-input-placeholder{ color: #BBB; }
*::-moz-placeholder{ color: #BBB; }
*:-ms-input-placeholder{ color: #BBB; }

img{ vertical-align: middle; border: none; max-width: 100%; }

input[type="text"]{ -webkit-appearance: none; appearance: none; border-radius: 0; margin: 0; outline: none; }
input[type="tel"]{ -webkit-appearance: none; appearance: none; border-radius: 0; margin: 0; outline: none; }
input[type="password"]{ -webkit-appearance: none; appearance: none; border-radius: 0; margin: 0; outline: none; }
input[type="submit"]{ -webkit-appearance: none; appearance: none; border-radius: 0; margin: 0; outline: none; }
button{ -webkit-appearance: none; appearance: none; border-radius: 0; margin: 0; outline: none; }
select{ -webkit-appearance: none; appearance: none; border-radius: 0; margin: 0; outline: none; position: relative; }
select::-ms-expand{ display: none; }
textarea{ resize: vertical; }
a{ text-decoration: underline; color: #000; }
a:hover{ color: #85CC33; text-decoration: none; }
a:hover img{ filter:alpha(opacity=50); -moz-opacity:0.5; opacity:0.5; }

hr{ border: none; border-bottom: 1px dashed #CCC; margin: 30px 0px 40px; }

optgroup{ background: #F5F5DC; }
option{ background: #FFF; }

input[type="text"],
input[type="tel"],
input[type="email"]{ border: 1px solid #CCC; box-shadow: 0 0 1px 0 rgba(200,200,200,0.5); padding: 7px 10px; font-size: 15px; border-radius: 2px; }
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus{ border: 1px solid #1A780C; box-shadow: 0 0 2px 0 rgba(19,90,140,1); }
input[type="text"]:disabled,
input[type="tel"]:disabled,
input[type="email"]:disabled{ background: #DDD; }
input[type="password"]{ border: 1px solid #CCC; padding: 7px 10px; font-size: 15px; box-shadow: 0 0 1px 0 rgba(200,200,200,0.5); }
input[type="password"]:focus{ border: 1px solid #1A780C; box-shadow: 0 0 2px 0 rgba(19,90,140,1); }
input[type="text"].center,
input[type="tel"].center{ text-align: center; }
input[type="text"].right,
input[type="tel"].right{ text-align: right; }
input[type="text"].date{ padding: 7px 5px; }
input[type="checkbox"]{ cursor: pointer; }
input[type="radio"]{ cursor: pointer; }
textarea{ border: 1px solid #CCC; padding: 7px 10px; font-size: 15px; box-shadow: 0 0 1px 0 rgba(200,200,200,0.5); }
textarea:focus{ border: 1px solid #1A780C; box-shadow: 0 0 2px 0 rgba(19,90,140,1); }
select{ padding: 7px 60px 7px 8px; border: 1px solid #CCC; border-radius: 2px; box-shadow: 0 0 1px 0 rgba(200,200,200,0.5); font-size: 15px; cursor: pointer; }
select:focus{ box-shadow: 0 0 2px 0 rgba(19,90,140,1); }
select {
  background-image:
    linear-gradient(45deg, transparent 50%, gray 50%),
    linear-gradient(135deg, gray 50%, transparent 50%),
    linear-gradient(to right, #ccc, #ccc);
  background-position:
    calc(100% - 20px) calc(16px + 0px),
    calc(100% - 15px) calc(16px + 0px),
    calc(100% - 39px) 8px;
  background-size:
    5px 5px,
    5px 5px,
    1px 24px;
  background-repeat: no-repeat;
}

select:focus {
	background-image:
		linear-gradient(45deg, #1A780C 50%, transparent 50%),
		linear-gradient(135deg, transparent 50%, #1A780C 50%),
		linear-gradient(to right, #ccc, #ccc);
	background-position:
		calc(100% - 15px) 16px,
		calc(100% - 20px) 16px,
		calc(100% - 39px) 8px;
	background-size:
		5px 5px,
		5px 5px,
		1px 24px;
	background-repeat: no-repeat;
	border-color: #1A780C;
	outline: 0;
}

select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #000;
}

label{ cursor: pointer; }
label input[type="checkbox"]{ vertical-align: middle; }
label input[type="radio"]{ vertical-align: middle; }

a.btnStd,
input.btnStd,
button.btnStd { vertical-align: middle; padding: 7px 20px; background: #0C1A78; color: #FFF; border: none; cursor: pointer; font-size: 16px; display: inline-block; text-decoration: none; text-align: center; border-radius: 2px; user-select: none; white-space: nowrap; }
a.btnStd:hover,
input.btnStd:hover,
button.btnStd:hover{ background: #555FA0; }

a.btnDisabled,
input.btnDisabled,
button.btnDisabled,
button:disabled{ background: #DDD; cursor: default; }
a.btnDisabled:hover,
input.btnDisabled:hover,
button.btnDisabled:hover,
button:disabled:hover{ background: #DDD; }

button.btnStd i{ vertical-align: middle; }

.btnStd.btnSmall,
div.page div.list .btnStd{ padding: 5px 10px; }

.btnStd.btn200{ width: 200px; }

.btnStd.btnFull{ width: 100%; }

div.btn2col{ display: flex; justify-content: space-between; }
.btnStd.btnHalf{ width: 48%; }

.fs13{ font-size: 13px; }
.fs14{ font-size: 14px; }

.mb0{ margin-bottom: 0px !important; }
.mb3{ margin-bottom: 3px !important; }
.mb5{ margin-bottom: 5px !important; }
.mb10{ margin-bottom: 10px !important; }
.mb12{ margin-bottom: 12px !important; }
.mb15{ margin-bottom: 15px !important; }
.mb20{ margin-bottom: 20px !important; }
.mb30{ margin-bottom: 30px !important; }
.mb40{ margin-bottom: 40px !important; }
.mb50{ margin-bottom: 50px !important; }
.mb70{ margin-bottom: 70px !important; }

.pr0{ padding-right: 0px !important; }

.col2flexSb{ display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; }
.col2flexSb p{ margin: 0; }

ol.col1check{ margin-bottom: -5px; margin-top: 0; }
ol.col1check li{ margin-bottom: 5px; border-bottom: 1px dotted #CCC; }
ol.col1check li:last-child{ border-bottom: none; }
ol.col1check li label{ padding: 10px; display: block; }

ul.col2check{ list-style: none; padding: 0px; margin-bottom: -5px; margin-top: 0; display: flex; justify-content: space-between; flex-wrap: wrap; }
ul.col2check li{ margin-bottom: 5px; border-bottom: 1px dotted #CCC; width: 48%; }
ul.col2check li:last-child{ border-bottom: none; }
ul.col2check li label{ padding: 5px 10px; display: block; }

ul.col3check{ list-style: none; padding: 0px; margin-bottom: -5px; margin-top: 0; display: flex; justify-content: space-between; flex-wrap: wrap; }
ul.col3check:after{ content: ''; width: 32%; height: 0; }
ul.col3check li{ margin-bottom: 5px; border-bottom: 1px dotted #CCC; width: 32%; }
ul.col3check li label{ padding: 4px 5px; display: block; }
ul.col3check li.off{ color: #CCC; }

ul.row1check{ list-style: none; padding: 0px; margin: 0; display: flex; }
ul.row1check li{ margin-right: 18px; }

div.page div.detail{ margin-bottom: 60px; }
div.page div.detail > table{ border-collapse: collapse; width: 100%; }
div.page div.detail > table > tbody > tr > th{ padding: 7px 10px 7px 0px; border-bottom: 1px solid #DDD; font-size: 15px; line-height: 23px; font-weight: normal; text-align: right; border-left: 1px dotted #DDD; }
div.page div.detail > table > tbody > tr > th.thw{ width: 180px; }
div.page div.detail > table > tbody > tr > th:first-child{ border-left: none; }
div.page div.detail > table > tbody > tr > td{ padding: 7px 8px; border-bottom: 1px solid #DDD; font-size: 15px; line-height: 23px; word-break: break-all; }
div.page div.detail > table > tbody > tr > td.tdw{ width: 470px; }

div.page div.input{ margin-bottom: 60px; }
div.page div.input > table{ border-collapse: collapse; width: 100%; }
div.page div.input > table > tbody > tr > th{ padding: 6px 10px 6px 0px; border-bottom: 1px solid #DDD; font-size: 15px; line-height: 23px; font-weight: normal; text-align: right; border-left: 1px dotted #DDD; }
div.page div.input > table > tbody > tr > th.thw{ width: 180px; }
div.page div.input > table > tbody > tr > th:first-child{ border-left: none; }
div.page div.input > table > tbody > tr > td{ padding: 6px 8px; border-bottom: 1px solid #DDD; font-size: 15px; line-height: 23px; word-break: break-all; }
div.page div.input > table > tbody > tr > td.tdw1{ width: 50px; padding: 6px 0px; background: #F6F6F6; }
div.page div.input > table > tbody > tr > td.tdw1.required{ background: #FCF0F0; }
div.page div.input > table > tbody > tr > td.tdw1.required span{ display: block; background: #C22; color: #FFF; font-size: 12px; line-height: 14px; width: 36px; height: 17px; padding: 1px 0px; border-radius: 3px; margin: auto; text-align: center; }
div.page div.input > table > tbody > tr > td.tdw1.requiredOne{ background: #F0FCF0; }
div.page div.input > table > tbody > tr > td.tdw1.requiredOne span{ display: block; background: #358E17; color: #FFF; font-size: 12px; line-height: 14px; width: 36px; height: 17px; padding: 1px 0px; border-radius: 3px; margin: auto; text-align: center; }
div.page div.input > table > tbody > tr > td.tdw1.need{ background: #F0F9FC; }
div.page div.input > table > tbody > tr > td.tdw1.need span{ display: block; background: #216FCC; color: #FFF; font-size: 12px; line-height: 14px; width: 36px; height: 17px; padding: 1px 0px; border-radius: 3px; margin: auto; text-align: center; }
div.page div.input > table > tbody > tr > td.tdw1h{ width: 25px; padding: 6px 0px; background: #F6F6F6; }
div.page div.input > table > tbody > tr > td.tdw2{ width: 420px; }
div.page div.input > table > tbody > tr > td span.desc{ font-size: 14px; }
div.page div.input > table > tbody > tr > td.tel input{ width: 80px; text-align: center; }
div.page div.input > table > tbody > tr > td.checkbox{ padding-bottom: 0px; }
div.page div.input > table > tbody > tr > td.checkbox label{ margin-bottom: 6px; padding: 13px 10px 12px 38px; position: relative; display: inline-block; width: 200px; background: #EEE; font-size: 15px; line-height: 15px; cursor: pointer; }
div.page div.input > table > tbody > tr > td.checkbox label input[type="radio"],
div.page div.input > table > tbody > tr > td.checkbox label input[type="checkbox"]{ -moz-transform: scale(1.3); -webkit-transform: scale(1.3); transform: scale(1.3); margin-right: 5px; position: absolute; top: 10px; left: 10px; }
div.page div.input > table > tbody > tr > td.radio{ padding-bottom: 0px; }
div.page div.input > table > tbody > tr > td.radio label{ margin-bottom: 6px; padding: 13px 10px 12px 38px; position: relative; display: inline-block; width: 200px; background: #EEE; font-size: 15px; line-height: 15px; cursor: pointer; }
div.page div.input > table > tbody > tr > td.radio label input[type="radio"]{ -moz-transform: scale(1.3); -webkit-transform: scale(1.3); transform: scale(1.3); margin-right: 5px; position: absolute; top: 10px; left: 10px; }
div.page div.input > table > tbody > tr > td input.full{ width: 100%; }
div.page div.input > table > tbody > tr > td table{ border-collapse: collapse; }
div.page div.input > table > tbody > tr > td table th{ padding: 0; }
div.page div.input > table > tbody > tr > td table td{ padding: 0; }

div.page div.list{ margin-bottom: 60px; }
div.page div.list > table{ border-collapse: collapse; width: 100%; }
div.page div.list > table th{ padding: 5px 8px; border-bottom: 2px solid #DDD; border-right: 1px solid #EEE; font-size: 15px; line-height: 20px; font-weight: normal; }
div.page div.list > table td{ padding: 5px 5px; border-bottom: 1px solid #DDD; border-right: 1px solid #EEE; font-size: 15px; line-height: 23px; word-break: break-all; }
div.page div.list > table th:last-child{ border-right: none; }
div.page div.list > table td:last-child{ border-right: none; }
div.page div.list > table tr.sep td{ font-size: 1px; padding: 0px; height: 15px; }
div.page div.list > table tr:not(.sep):nth-child(odd) td{ background: #FAFAFA; }
div.page div.list > table tr:not(.sep):nth-child(even) td{}
div.page div.list > table tr.even td{ background: #FFF !important; }
div.page div.list > table tr.odd td{ background: #FAFAFA !important; }


.crGold{ background: #EF9C00; color: #FFF; font-size: 13px; line-height: 13px; padding: 3px 10px; vertical-align: middle; border-radius: 2px; }
.crRegular{ background: #6A8F23; color: #FFF; font-size: 13px; line-height: 13px; padding: 3px 10px; vertical-align: middle; border-radius: 2px; }

