@charset 'utf-8';

/* ===============================
	base
 =============================== */
body{	
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
	margin:0;background:#f7f7f8;color:#111;

	line-height: 1.6em;}
a {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* スマホのハイライトデザインを無効にする */
}
a:focus {
	outline: none;
}
img { vertical-align: bottom;}
.mo a img {
	background-color: rgba(255, 255, 255, .01); /* マウスオーバー要素のバグ対応 */
}

/* ===============================
	utility
 =============================== */

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

.small {
	font-size: 80%;
}


ul.horizon:after { /* 水平並びリスト */
	content: ".";
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	font-size: 0px;
}

ul.horizon {
	list-style: none;
	min-height: 1px;
	zoom: 1;
}

ul.horizon li {
	float: left;
}

ul.dot { /* リスト（・） */
	list-style: disc;
	padding-left: 1.5em;
}

ul.star { /* リスト（※） */
	list-style: none;
	padding-left: 1.5em;
}

ul.star li {
	text-indent: -1.5em;
}

ul.star li:BEFORE {
	content: "\203b";
	margin-right: 0.5em;
}

ul.disc { /* リスト（●） */
	list-style: none;
	padding-left: 1.5em;
}

ul.disc li {
	text-indent: -1.5em;
}

ul.disc li:BEFORE {
	content: "\25cf";
	margin-right: 0.5em;
}

ul.square { /* リスト（■） */
	list-style: none;
	padding-left: 1.5em;
}

ul.square li {
	text-indent: -1.5em;
}

ul.square li:BEFORE {
	content: "\25a0";
	margin-right: 0.5em;
}

.caption { /* テキストサイズ注釈 */
	font-size: 0.88em;
	line-height: 1.4em;
}

.fxs {
	font-size: 0.88em; /* テキストサイズ小 */
	line-height: 1.6em;
}

.fxl {
	font-size: 1.14em; /* テキストサイズ大 */
	line-height: 1.6em;
}

.mt05em { /* margin top 0.5行 */
	margin-top: 0.5em !important;
}

.mt1em { /* margin top 1行 */
	margin-top: 1em !important;
}

.mt2em { /* margin top 2行 */
	margin-top: 2em !important;
}

.rdus { /* 角丸 */
	border-radius: 4px;
}





.wrap{max-width:720px;margin:40px auto 0 auto;padding:0 16px}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 16px rgba(0,0,0,.04);padding:24px}
h1{font-size:20px;margin:0 0 12px}
.row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.badge{background:#f1f5f9;border-radius:999px;padding:2px 10px;font-size:12px;color:#334155}
.btn{display:inline-block;padding:12px 20px;border-radius:999px;border:1px solid #0ea5e9;background:#0ea5e9;color:#fff;text-decoration:none;font-weight:600}
.btn:hover{filter:brightness(1.05)}
.meta{font-size:14px;color:#475569;margin-top:8px}
.note{margin-top:16px;color:#475569;font-size:14px}
.note ul{margin:8px 0 0 20px}


.up_box .row{display:flex;gap:16px;flex-wrap:wrap}
.up_box .col{flex:1 1 280px}

.drop{border:2px dashed #bbb;border-radius:12px;padding:24px;text-align:center}
.drop.drag{background:#f8fbff;border-color:#5a8dee}
ul{padding-left:1em}
li{margin:4px 0}
input[type=date], select{padding:8px;border:1px solid #ddd;border-radius:8px}
button{padding:10px 16px;border-radius:8px;border:1px solid #ddd;background:#fafafa;cursor:pointer}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;background:#eef;border:1px solid #dde}
.link{font-family:monospace}
small.mono{font-family:monospace;color:#666}

input[type=password]{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px}
button{padding:10px 16px;border-radius:8px;border:1px solid #ddd;background:#fafafa}
.err{color:#c00}


header {
    margin: 0 0 5em 0;
    overflow: hidden;
    background: linear-gradient(0deg, #324c21, #4f663f);
    border-top: 6px solid #abd98e;
}

header h1 {
    margin: 50px 0;
    padding: 0;
    color: #fff;
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 3px;
}

.ad_foot {
	list-style: none;
	display: table;
	table-layout: fixed;
	margin: 5em auto 0 auto;
	padding: 0;
	width: 720px;
}

.ad_foot li {
	display: table-cell;
	margin: 0;
	padding: 0;
	width: 50%;
	text-align: center;
}

footer {
	margin: 4em 0 0 0;
	padding: 2em 0;
	text-align: center;
	border-top: 1px solid #e4e4e4;
	border-bottom: 6px solid #abd98e;
	background: #f9f9f9;
}

footer .copy {
	color: #c6c6c6;
	font-size: 10px;
	letter-spacing: 1px;
}


