@charset "utf-8";

@import url('components.css');
#_log_stash { display: none; }
#_log_stash { display: none; }

body { background: #F5F8F8; font-size:13px; color:#333333; font-family: meiryo, helvetica, arial, 'hiragino kaku gothic pro', 'ms pgothic', sans-serif;  }
a { text-decoration:none; color:#333333; }
a:hover { color:#4DAF61; opacity: 0.85; transition: all 0.25s ease; }
.indent { text-indent: -1em; padding-left: 1em; }
.tips { background: rgba(17, 128, 138, .1); padding: 1rem; margin: 1rem auto; }
.container { margin: 0 auto; }
.indent { text-indent: -1em; padding-left: 1em; }
.tips { background: rgba(17, 128, 138, .1); padding: 1rem; margin: 1rem auto; }

header { height: 100px; background: #fff; }
.header { width: 1000px; margin: 0 auto; }
.logo { float: left; padding: 28px 0 25px; }
.mpBtn { float: right; padding: 25px 0; }

.mainContents { width: 1000px; margin: 0 auto; padding: 20px 0 50px; }
nav { float: left; width: 230px; margin: 0 30px 0 0; }
.content { float: right; width: 740px; background: #fff; padding: 10px 20px 20px 20px; }
.contTit { border-bottom: 2px dotted #4DAF61; font-size: 20px; color: #4DAF61; line-height: 45px; font-weight: normal; padding: 5px 0 0 50px; margin-bottom: 10px; }

footer { background: #4DAF61; }
.copyRight { text-align: center; color: #fff; padding: 10px 0; }
.mb10  { margin-bottom:10px; }
.mb20  { margin-bottom:20px; }
.mb25  { margin-bottom:25px !important; }
.ml10 { margin-left: 10px; }


/*menu*/
.bnrlist{ background: #fff; width: 230px; border-top: 5px solid #4DAF61; }
.blTit { padding: 15px 20px; font-size: 14px; }
.bnrlist ul { margin: 0 10px; }
.bnrlist li { padding: 10px; }
.bnrlist li a { display: block; padding: 0 15px 0 0; background: url(/h-support/static/images/common/icon_arrow.png) no-repeat 175px center; }
.member h3 { background: url(/h-support/static/images/common/icon_company.png) no-repeat 180px center; border-bottom: 1px solid #E4E4E4;  }
.all h3 { background: url(/h-support/static/images/common/icon_all.png) no-repeat 180px center; border-bottom: 1px solid #E4E4E4;  }
.news h3 { background: url(/h-support/static/images/common/icon_news.png) no-repeat 180px center; border-bottom: 1px solid #E4E4E4;  }

/*TOP*/
.mainCatch { width: 700px; height: 450px; background: url(/h-support/static/images/top/maincatch_bg.png) no-repeat; text-align:center; margin: 10px 0 20px 0; }
.mainCatch h1 { padding: 40px 0 20px 0; }
.mainCatch p.attention { font-size: 24px; color: #fff; text-shadow: 1px 1px 3px rgba(0,0,0,0.1),-1px -1px 3px rgba(0,0,0,0.1); font-weight: bold; text-shadow:0 0 10px #000; letter-spacing: 1px; }
.mainCatch p.date { font-size: 16px; color: #fff; font-weight: bold; text-shadow:0 0 10px #000; letter-spacing: 1px; }
.formBtn { padding: 35px 0; }
.formBtn img:hover { opacity: 1; background: rgba(0,0,0,0.4); transition: all 0.25s ease; }
.info h2 { background: url(/h-support/static/images/top/icon_info.png) no-repeat 0 center; }
.info dl { padding: 15px 0; border-bottom: 1px solid #EFF1EF; }
.info dl.new { background: url(/h-support/static/images/top/icon_new.png) no-repeat 130px 15px; }
.info dl:last-child { border-bottom: none }
.info dl:after { content:''; display:block; clear:both; }
.info dt { float: left; line-height: 20px; padding: 0 20px; color:#48AC5E; border-right: 1px dotted #CFD3CF; width: 9em; }
.info dd { overflow: hidden; padding: 0 10px 0 70px; }

/*form*/
.form { width: 700px; }
.form h2 { background: url(/h-support/static/images/icon_form.png) no-repeat 0 center; }
.ts01 { border-collapse: collapse; margin-bottom: 30px; }
.ts01 th { position: relative; vertical-align: middle; background: #F2F4F3; border-bottom: 1px solid #fff; line-height: 14px; padding: 18px 50px 18px 7px; width: 190px; text-align: left; font-weight: normal; }
.ts01 tr:first-child th { border-top: 1px solid #fff; }
.ts01 th.regBtn { background: #F2F4F3 url(/h-support/static/images/icon_required.png) no-repeat 170px center; }
.ts01 th .addTit { position: absolute; /* top: 18px; left: 75px; */ top: calc(50% - 7px); left: 7em; line-height: 14px; }
.ts01 td { width: 510px; border-bottom: 1px solid #EAECEA; border-right: 1px solid #EAECEA; padding: 12px 10px; line-height: 26px; }
.ts01 tr:first-child td { border-top: 1px solid #EAECEA; }
.ts01 span { line-height:26px; }
/* .ts01 th span { font-size:12px; } */
.ts01 .select { min-width: 100px; padding: 0 5px; }
.formTextSS { width: 40px; height: 26px; }
.formTextS { width: 60px; height: 26px; }
.formTextSM { width: 160px; height: 26px; }
.formTextM { width: 200px; height: 26px; }
.formTextML { width: 250px; height: 26px; }
.formTextL { width: 300px; height: 26px; }
.formTextLL { width: 400px; height: 26px; }
input[type=text] { font-size: 13px; }
input[type=password] { -moz-appearance: none; -webkit-appearance: none; appearance: none; border-radius: 3px; border: 1px solid #bbb; margin: 0; padding: 0; vertical-align: middle; font-size: inherit; color: inherit; box-sizing: content-box; height: 26px; color: #333; }
input[type=radio] { width: 14px; height: 14px; margin: 6px 5px; }
input[type=checkbox] { width: 14px; height: 14px; margin: 6px 5px; }
label { line-height: 26px; }
label:hover { cursor: pointer; }
select { -moz-appearance: none; -webkit-appearance: none; appearance: none; border-radius: 3px; border: 1px solid #bbb; margin: 0; padding: 0; background: #fff url(/h-support/static/images/icon_select.png) no-repeat top right; vertical-align: middle; font-size: inherit; color: inherit; box-sizing: content-box; height: 26px; color: #333; }
select::-ms-expand { display: none; }
select { text-indent: 2px; padding-right: 15px; }
.hist { padding: 10px 5px; }
.hist span { line-height: 26px; padding-right: 5px; }
.hist dl { border: 1px solid #CCC; background: #E0E9E9; margin-bottom: 10px; }
.hist dt { float: left; width: 25px; text-align: center; padding:10px 3px; display: block; line-height: 1; }
.hist dd { background: #F5F8F8; line-height: 26px; padding: 5px; margin-left: 25px; }
.ts01 th.bbno,.ts01 td.bbno {/* border-bottom: none; */ }
.addBtn a { float: left; display: inline-block; line-height: 16px; padding: 7px 25px 7px 10px; background: #4DAF61 url(/h-support/static/images/icon_plas.png) no-repeat 115px center; color: #fff; }
.total { float: right; background: #F5F8F8; border: 1px solid #CCC; padding: 7px 10px; line-height: 16px; }
.confBtn { text-align: center; margin-bottom: 10px; display: flex; align-items: center; justify-content: center; gap: 1rem; }
.confBtn a { display: inline-block; font-size: 16px; color: #fff; padding: 12px; width: 200px; background: #4197DE; border-radius: 2px; }
.confBtn a:hover { background: #2585FA; opacity: 1; }
.confBtn a.prev { background: #ddd; color: #fff; }
.confBtn a.prev:hover { background: #aaa; }

/*list*/
.list { width: 700px; }
.list h2 { background: url(/h-support/static/images/icon_list.png) no-repeat 0 center; position: relative; }
.list dl { float: left; width: 700px; line-height: 26px; }
/*.list dl:nth-child(2n) { margin-left: 4px; }*/
.list dl:after { content:''; display:block; clear:both; }
.list dt { padding: 5px 15px; float: left; width: 220px; background: #F2F4F3; border-bottom: 1px solid #fff; line-height: 26px; }
.list dd { padding: 5px 15px; float: left; width: 240px; border-bottom: 1px solid #EAECEA; border-right: 1px solid #EAECEA; line-height: 26px; }
.list dl:first-child dt { border-top: 1px solid #fff; }
.list dl:first-child dd { border-top: 1px solid #EAECEA; }
.listBox { margin-bottom: 30px; }

.search_target_caption { display:inline-block; margin-top:5px; }
.flex-list dl { float: none; width: 700px; line-height: 26px; display:flex; flex-wrap: wrap; }
.flex-list dt { padding: 5px 45px 5px 15px; float: none; width: 220px; background: #F2F4F3; border-bottom: 1px solid #fff; line-height: 26px; display:flex; position: relative; }
.flex-list dd { padding: 5px 15px; float: none; width: 240px; border-bottom: 1px solid #EAECEA; border-right: 1px solid #EAECEA; line-height: 26px; display:flex; }
.flex-list .label { position: absolute; right: 5px; top:calc(50% - 12px); display:inline-block; font-size:12px; line-height:22px; padding:0 4px 0 4px; font-weight:normal; vertical-align:middle; background:transparent; border:1px solid #999999; border-radius:2px; color:#999999; width:36px; text-align:center; height:24px; margin-left:4px; }
.flex-list .label.green { border-color:#078d34; color:#078d34; }
.flex-list .label.gray { border-color:#999999; color:#999999; }

/*login*/
.mypage { width: 700px; }
.mypage h2 { background: url(/h-support/static/images/icon_mypage.png) no-repeat 0 center; }
.login h2 { background: url(/h-support/static/images/icon_key.png) no-repeat 0 center; }
.hs01 { margin: 0 auto; padding: 10px 0 20px; text-align: center; font-size: 16px }
.hs02 { margin: 0 auto; padding: 10px 0 20px; text-align: center; font-size: 20px }
.hs03 { margin: 0 auto 30px; padding: 10px 0 20px; text-align: center; font-size: 16px }
.bgbox { background: #F2F4F3; padding: 30px; width: 600px; margin: 0 auto 20px; }
.ts02 { margin: 0 auto 30px; }
.ts02 th { text-align: right; width: 100px; padding: 5px 10px; line-height: 26px; }
.ts02 td { padding: 5px 0; }
.desc01 { padding: 10px 10px 0 10px; display: block; }
.desc02 { display: block; width: 500px; margin: 0 auto; font-size: 13px }
.desc03 { font-weight: bold; margin-bottom:10px; }
.loginBtn { text-align: center; margin-bottom: 10px; }
.loginBtn a { display: inline-block; font-size: 16px; color: #fff; padding: 12px; width: 200px; background: #4DAF61; border-radius: 2px; }
.loginBtn a:hover { background: #009933; opacity: 1; }
.backBtn { text-align: center; margin-bottom: 10px; }
.backBtn a { display: inline-block; font-size: 16px; color: #666; padding: 12px; width: 200px; background: #eee; border-radius: 2px; }
.backBtn a:hover { background: #e5e5e5; opacity: 1; }
.attention { text-align: center; }
.attention a { text-decoration: underline; }
.attention a:hover { text-decoration: none; }

.pointWrap { background: #e27190; vertical-align: middle; line-height: 1.5; letter-spacing: .05em; padding: 1rem; margin: 1rem 0; border:1px solid rgba(0, 0, 0, .1); color: #fff; font-weight: 600; border-radius: 2px; }
/*
.ts03 { border-collapse: collapse; margin-bottom: 20px; }
.ts03 th { position: relative; background: #F2F4F3; border: 1px solid #fff; line-height: 14px; padding: 18px 40px 18px 7px; width: 700px; text-align: left; font-weight: normal; }
.ts03 th.regBtn { background: #F2F4F3 url(/h-support/static/images/icon_required.png) no-repeat 650px 18px; }
.ts03 th .addTit { position: absolute; top: 18px; left: 75px; line-height: 14px; }
.ts03 td { width: 700px; border: 1px solid #EAECEA; padding: 12px 10px; line-height: 26px; }
.ts03 td select,
.ts03 td input { box-sizing: border-box; max-width: 500px; }
*/
.ts03 { border-collapse: collapse; margin-bottom: 20px; }
.ts03 th { position: relative; background: #F2F4F3; border: 1px solid #fff; line-height: 14px; padding: 18px 40px 18px 7px; width: 700px; text-align: left; font-weight: normal; }
.ts03 th.regBtn { background: #F2F4F3 url(/h-support/static/images/icon_required.png) no-repeat 650px 18px; }
.ts03 th .addTit { position: absolute; top: 18px; left: 75px; line-height: 14px; }
.ts03 td { width: 700px; border: 1px solid #EAECEA; padding: 1rem; line-height: 26px; }
.ts03 td select,
.ts03 td input { box-sizing: border-box; max-width: 500px; }
.ts03 td.datetitle { font-size: 1rem; font-weight: 600; }
.ts03 td > h3 { font-weight: 600; color: #4DAF61; font-size: .9rem; }
.ts03 td > dl { display: flex; margin: 1rem 0 auto; }
.ts03 td > dl dt { width: 6rem; display: flex; align-items: center; font-weight: 600; color: #51adb0; }
.ts03 td > dl dd { width: calc(100% - 6rem); padding: 0 0 0 1rem; border-left: 1px solid rgba(0, 0, 0, .3); line-height: 2; }
.ts03 td > dl dd em { font-weight: 600; display: inline-block; width: 4em; vertical-align: baseline; }

.policy { width: 700px; margin-bottom: 30px; }
.policy div { border:1px solid #EAECEA; padding: 20px; width: 700px; height:200px; overflow: auto; }
.policy dl { padding: 5px 0; }
.policy dt { font-size: 14px; font-weight: bold; line-height: 1.75; }
.policy dd { font-size: 13px; line-height: 1.75; padding: 0 5px; }
.policy dd ul li { padding-left: 15px; background:url(/h-support/static/images/icon_dot.png) no-repeat 0 0; }
.policy h4 { padding: 5px 0; font-size: 14px; }
.policy p { padding: 10px 0; font-size: 13px; }
.poliTit { margin-bottom: 10px; }
.error { border: 1px solid #FDD9E3; background-color: #FFEAEC; padding: 10px; margin-bottom: 30px; }
.error p { color: #FF2626; line-height: 20px; padding: 2px 0; }
.message { border: 1px solid #c9e7cf; background-color: #e9f5eb; padding: 10px; margin-bottom: 10px; }
.message p { color: #4DAF61; line-height: 20px; padding: 2px 0; }
.second { padding: 11px 40px 11px 7px !important; }
ol { margin-bottom: 30px }
ol li { list-style-type: disc; margin-left: 20px }
.red { color: #FF2626; font-weight: bold; }
.redNor { color: #FF2626; }
.consent {  text-align: center; font-size: 13px; margin-bottom: 30px; }
.fs12 { font-size: 12px; }
.fs16 { font-size: 16px; }
.w200 { width: 200px; }
.ws { white-space: nowrap; }
.closeBtn { text-align: center; margin-bottom: 10px; }
.closeBtn a { display: inline-block; font-size: 16px; color: #fff; padding: 12px; width: 200px; background: #bbb; border-radius: 2px; }
.closeBtn a:hover { background: #aaa; opacity: 1; }
dl dd.chartImg { padding: 10px; text-align: center; }
.npass { width: 600px; }
.hs03 label {padding-right: 0;}
.blue { color: #2585FA; }
.mypage { position: relative; }
.outBtn { position: absolute; top: 10px; right: 0; text-align: center; margin-bottom: 10px; }
.outBtn a { display: inline-block; font-size: 14px; color: #fff; padding: 6px; width: 150px; background: #bbb; border-radius: 2px; }
.outBtn a:hover { background: #aaa; opacity: 1; }

.infowrap { height: 603px; overflow: auto; }

.search { background: #fafafa; border:1px solid #e3e3e3; padding: 2em; margin: 20px 0; }
.search h3 { font-size: 125%; font-weight: normal; margin: 0 0 2em; }
.search th { padding: 0 0 1em; vertical-align: middle; width: 6em; text-align: left; color: #3d9f51; }
.search td { padding: 0 0 1em; vertical-align: middle; }
.search td input[type="text"] { padding:0.3em; }
.search td select { padding:0.13em 5em 0.13em 0.3em; text-indent: 0; }
.search ul { text-align: center; }
.search li { display: inline-block; padding: 0 5px; }
.search button { cursor: pointer; border:none; outline: none; padding:0.75em 5em; margin: 0 auto; background: #F78540; color:#fff; border-radius: 2px; font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif; transition: all 0.25s ease; }
.search button:hover { background: #d76520; }
.contTit span { position: absolute; top:14px; right: 0; }
.contTit span {
    font-size: 14px;
    text-align: right;
    display: inline-block;
    vertical-align: -4px;
}
.movearea { padding: 2em 0 0; margin: -10px 0 0; font-size: 115%; }
.movearea p { margin: 0 0 2em; }
.movearea ol { list-style-type: decimal; padding: 0 0 1em; margin: 0; }
.movearea ol li { list-style-type: decimal; padding: 0 0 1em 1em; }
.movearea h3 { border-top:5px solid #4DAF61; border-bottom: 1px solid #ddd; padding: 15px 0; margin: 0 0 2em; }
.movearea h4 { margin: 0 0 2em; color:#3D9F51; }
.movearea ul { padding: 0 0 2em; }
.movearea li a.btn { display: inline-block; width: 340px; text-align: center; background: #43bf72; color:#fff; border-radius: 2px; padding: 9px 15px; font-size: 14px; margin: 0 5px 5px; text-decoration: none; }
.movearea a { color: #43bf72; }
.movearea a:hover { text-decoration: underline; }
.movearea  .orange { color: #F78540; }

#instructor .mainCatch { height: auto; padding: 100px 0; background: url(/h-support/static/images/instructor/maincatch_bg.jpg) center bottom no-repeat; background-size: cover; }
#instructor .infowrap { height: auto; max-height: 603px; }
#instructor .content.page h1 { padding: 15px 0 21px; border-bottom: 5px solid #4DAF61; margin: 0 0 30px; font-size: 1.8rem; color:#0D6F21; letter-spacing: 2px; line-height: 1.25; }
#instructor .content.page h2 { color:#fff; background: url(/img/e-phr/h_bg_green.jpg) 0 0 no-repeat!important; height:36px; line-height: 20px; margin:0 auto 20px auto; padding:9px 0 7px 35px; border:none; font-weight:normal; font-size: 1rem; }
#instructor .businessNewsList { border-top:1px dotted #aaa; }
#instructor .businessNewsList li { border-bottom:1px dotted #aaa; line-height: 1.45; }
#instructor .businessNewsList li em { font-weight:900; font-style:normal;}
#instructor .businessNewsList li .iconNew { margin:0 0 0 10px; color:#F92506; font-weight:900; font-size:11px;}
#instructor .businessNewsList li a { text-align: left; color:#666; text-decoration:none; display:block; padding:10px 20px; background:#fff url(/img/e-phr/ico_list.gif) 7px 17px no-repeat;}
#instructor .businessNewsList li b { text-align: left; color:#666; text-decoration:none; display:block; padding:10px 20px; background:#fff url(/img/e-phr/ico_list.gif) 7px 17px no-repeat; font-weight: 100;}
#instructor .businessNewsList li a:hover { color:#244D9F; background:#f6f6f6 url(/img/e-phr/ico_list.gif) 7px 17px no-repeat;}
#instructor .btnBack { display: block; padding: 10px; background: #777; color:#fff; font-size: 0.8rem; letter-spacing: 1px; position: relative; text-align: center; border-radius: 1px; text-indent: -5px; }
#instructor .btnBack:after { content: ""; display: block; position: absolute; right: 10px; top:50%; margin:-5px 0 0; width: 8px; height: 8px; border: 1px solid; border-color: #fff #fff transparent transparent; transform: rotate(45deg); transition: all .25s ease; }
#instructor .btnBack:hover:after { right: 7px; }
#instructor .careerContents ul li { width: 33.3%; float: left; box-sizing: border-box; padding:0 10px 20px; }
#instructor .careerContents ul li a { display: block; padding: 15px 0; font-size: 1.1rem; font-weight: bold; color:#244D9F; text-align: center; border:1px solid #ccc; border-radius: 5px; background:#fafafa; box-shadow: inset 0 1px 10px #fff; transition: all .25s ease; }
#instructor .careerContents ul li a:hover { color:#fff; text-align: center; border:1px solid #244D9F; background: #244D9F; box-shadow: none; }

.taskEntry { margin: 20px auto; }
.taskEntry h3 { background: #5B8DB3; padding: 15px; line-height: 1.25; text-align: center; color: #FCFFA4; font-size: 17px; font-weight: bold; }
.taskEntry h3 small { display: inline-block; line-height: 1.25; text-align: center; color: #fff; font-size: 13px; font-weight: bold; }
.taskEntry h3 strong { display: inline-block; line-height: 1.25; text-align: center; color: #fff; background: #f00; margin: 0 auto 10px; padding: 5px; font-weight: bold; }
.taskEntry .inr { background: #9CBFCB; padding: 30px; }
.taskEntry .inr ul { display: flex; align-items: center; justify-content: center; }
.taskEntry .inr ul li { margin: 0 10px; }
.taskEntry .inr ul li a { display: block; width: 260px; background: #fff; box-shadow: 0 3px 6px rgba(0,0,0,.16); position: relative; padding: 0 0 0 80px; line-height: 60px; text-align: center; font-size: 15px; font-weight: bold; color: #222; letter-spacing: .05em; }
.taskEntry .inr ul li a::after { content: ""; display: block; width: 80px; height: 60px; position: absolute; left: 0; top:0; border-right: 1px solid rgba(0,0,0,.1); }
.taskEntry .inr ul li.btnTask a::after { background: url(/h-support/static/images/ico_task.svg) center center no-repeat; }
.taskEntry .inr ul li.btnSurvey a::after { background: url(/h-support/static/images/ico_survey.svg) center center no-repeat; }

.updateEntry { margin: 30px auto; }
.updateEntry h3 { background: #D57878; padding: 15px; line-height: 1.25; text-align: center; color: #FCFFA4; font-size: 17px; font-weight: bold; }
.updateEntry h3 small { display: inline-block; line-height: 1.25; text-align: center; color: #fff; font-size: 13px; font-weight: bold; }
.updateEntry h3 strong { display: inline-block; line-height: 1.25; text-align: center; color: #fff; background: #f00; margin: 0 auto 10px; padding: 5px; font-weight: bold; }
.updateEntry .inr { background: #EBC3C3; padding: 30px; }
.updateEntry .inr .experienceError a { font-size: 15px; font-weight: bold; display: block; padding: 10px; line-height: 1.4; margin: 0; background: #fff; box-shadow: 0 3px 6px rgba(0,0,0,.16); }
.updateEntry .inr ul { display: flex; align-items: center; justify-content: center; }
.updateEntry .inr ul li { margin: 0 10px; }
.updateEntry .inr ul li a { display: block; width: 260px; background: #fff; box-shadow: 0 3px 6px rgba(0,0,0,.16); position: relative; padding: 0 0 0 80px; line-height: 60px; text-align: center; font-size: 15px; font-weight: bold; color: #222; letter-spacing: .05em; }
.updateEntry .inr ul li a::after { content: ""; display: block; width: 80px; height: 60px; position: absolute; left: 0; top:0; border-right: 1px solid rgba(0,0,0,.1); }
.updateEntry .inr ul li.btnTask a::after { background: url(/h-support/static/images/ico_task.svg) center center no-repeat; }
.updateEntry .inr ul li.btnUpdate a::after { background: url(/h-support/static/images/ico_update.svg) center center no-repeat; }
.updateEntry .inr ul li.btnLimit a::after { background: url(/h-support/static/images/ico_limit.svg) center center no-repeat; }

.updateEntry .inr ul li.btnTask.off a,
.updateEntry .inr ul li.btnUpdate.off a,
.updateEntry .inr ul li.btnLimit.off a { opacity: .5; box-shadow: none; }

ul.selectbtnwrap { margin: 60px auto; text-align: center; }
ul.selectbtnwrap li { margin: 0 auto 10px; text-align: center; }
ul.selectbtnwrap li a { display: block; width: 260px; padding: 15px; border-radius: 3px; background: #eee; margin: 0 auto; text-align: center; transition: .3s; box-shadow: inset -1px -1px 1px rgba(0,0,0,.05), 0 3px 6px rgba(0,0,0,.02); }
ul.selectbtnwrap li a:hover { background: #ddd; color: #111; }

table.taskupload { width: 100%; border-spacing: 0; border-collapse: collapse; border-top: 1px solid #ccc; margin: 30px auto; }
table.taskupload th { width:30%; border-bottom: 1px solid #ccc; background: #F2F4F3; padding: 15px; vertical-align: middle; text-align: left; }
table.taskupload td { border-bottom: 1px solid #ccc; background: #fff; padding: 15px; vertical-align: middle; }

.surveyform { margin: 0 0 30px; }
.surveyform > p { border-bottom:1px solid rgba(0,0,0,.15); padding: 30px 0; }
.surveyform dl { border-bottom:1px solid rgba(0,0,0,.15); padding: 30px 0; }
.surveyform dl dt { line-height: 1; font-size: 13px; font-weight: bold; margin: 0 0 10px; }
.surveyform dl dd { display: flex; align-items: center; }
.surveyform dl dd select { text-indent: 0; padding: 5px 25px 5px 5px; background-position: calc(100% - 8px) center; max-width: 520px; }
.surveyform dl dd textarea { width: 520px; }

.confirmno { display: inline-block; margin:0 10px; }
.confirmno a { display: inline-block; background: #4DAFAF; color: #fff; text-align: center; border-radius: 3px; line-height: 1; padding:13px 1.5em 12px; font-size: 13px; }
.supporthr { margin:0; border:none; outline: none; height: 0; width:100%; border-top:1px solid rgba(0,0,0,.15); }

input[type="text"].plain { height: 38px; }

.taskSubmission .inr { margin: 20px auto; }
.taskSubmission .inr dl { border:2px solid rgba(77,175,97,.8); border-radius: 2px; background:rgba(77,175,97,.1); padding: 0; margin: 0 0 10px; line-height: 1; align-content: center; display: flex;  position: relative; }
.taskSubmission .inr dl:nth-last-of-type(1) { margin: 0; }
.taskSubmission .inr dl::before { content: url("/h-support/static/images/ico_tasksubmission.svg"); position: absolute; left: 15px; top:calc(50% - 14px); }
.taskSubmission .inr dl dt { font-size: .9rem; width: 20rem; font-weight: bold; padding: 15px 0 15px 60px; color: #38AE51; }
.taskSubmission .inr dl dd { font-size: .9rem; width: calc(100% - 20rem); padding: 15px 15px 15px 0; }

.dl_receipt { border:3px solid #4DAF61; margin: 20px auto; padding: 20px; background: rgba(0,0,0,.03); }
.dl_receipt h2 { line-height: 1; text-align: center; font-size: 1rem; padding: 0 20px 20px; margin: 0 auto 20px; border-bottom: 1px solid rgba(0,0,0,.1); background: none; }
.dl_receipt p { margin: 0 0 20px; }
.dl_receipt ul { display: flex; text-align: center; justify-content: center; }
.dl_receipt ul li { margin: 0 10px; }
.dl_receipt ul li a { display: block; line-height: 1; padding: 1em 2em; box-shadow: 0 3px 6px rgba(0,0,0,.1); background: #4DAF61; color: #fff; border-radius: 2px; transition: .3s; }
.dl_receipt ul li a:hover { background: #36B0BA; opacity: 1; }
.dl_receipt ul li a strong { color:#fff; line-height: 1; display: inline-block; padding: 4px 0 0; }
.dl_receipt ul li a.updatebtn { background: #3FA9C9; }
.dl_receipt ul li a.updatebtn:hover { background: #36B0BA; }

.dl_diploma { background: #EA9034; padding: 15px; margin: 20px auto; }
.dl_diploma ul { display: flex; align-items: center; justify-content: center; }
.dl_diploma ul li { margin: 0 10px; }
.dl_diploma ul li a { display: flex; align-items: center; justify-content: center; padding:15px; min-width: 300px; line-height: 1; background: rgba(0,0,0,.3); color: rgba(255,255,255,1); font-weight: bold; box-shadow: 3px 3px 6px rgba(0,0,0,.1); text-align: center; border-radius: 3px; font-size: .9rem; }
.dl_diploma ul li a::before { content: url(/h-support/static/images/ico_diploma.svg); margin: 0 10px 0 0; }


.companySelect p { margin: 0 0 10px; }
.companySelect p a { display: inline-block; background: #4daf61; color:#fff; padding: 10px 30px 10px 35px; line-height: 1; border-radius: 1px; font-size: .8rem; position: relative; }
.companySelect p a:after { content: ""; display: block; position: absolute; top:calc(50% - 5px); left: 10px; width: 0; height: 0; border-style: solid; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #ffffff; }
.companySelect h3 { border:2px dashed #aaa; padding: 10px 100px 10px 10px; margin: 0 0 10px; font-size: 1rem; font-weight: normal; line-height: 1.4; position: relative; }
.companySelect h3 small { font-size: .8rem; font-weight: bold; line-height: 1.4; color: rgba(0,0,0,.4); }
.companySelect h3 span.txtClear { display: inline-block; width:80px; height: 30px; line-height: 30px; text-align: center; background: #eee; color:#333; cursor: pointer; position: absolute; top:calc(50% - 15px); right: 10px; font-size: 13px; }
.companySelect h3 span.txtClear:hover { background: #ddd; }
.companySelect h4 { border-bottom:1px solid #ddd; padding: 0 0 10px; margin: 30px 0 10px; line-height: 1; font-size: .8rem; font-weight: normal; }
.popupCompanySelect { width: 100%; height: 100vh; overflow: hidden; position: fixed; top:0; left: 0; display: flex; align-items: center; justify-content: center; }
.popupCompanySelect * { box-sizing: border-box; }
.popupCompanySelect .bg { width: 100%; height: 100vh; overflow: hidden; position: fixed; top:0; left: 0; background: rgba(0,0,0,.75); z-index: 10; }
.popupCompanySelect .cont { width: 800px; background: #fff; position: relative; z-index: 11; }
.popupCompanySelect .cont h2 { background: #4daf61; color: #fff; font-weight: normal; font-size: 1.2rem; padding: 20px; line-height: 1.2; }
.popupCompanySelect .cont .close { position: absolute; top:12px; right: 12px; color:#fff; width: 30px; height: 30px; cursor: pointer; }
.popupCompanySelect .cont .close:before { content: "✕"; color: #fff; font-size: 23px; }
.popupCompanySelect .cont .inr { height: 60vh; overflow: auto; padding: 20px; }
.popupCompanySelect .cont .inr p.caption { margin: 0 0 20px; }
.popupCompanySelect .cont .inr .tab ul { display: flex; margin: 0 0 20px; }
.popupCompanySelect .cont .inr .tab ul li { width: 100%; }
.popupCompanySelect .cont .inr .tab ul li a { display: block; background: #eee; color:#333; text-align: center; padding: 15px 5px; line-height: 1.2; color:#222; font-size: .8rem; position: relative; }
.popupCompanySelect .cont .inr .tab ul li a::after { content: ""; display: block; width: 0; height: 20px; position: absolute; top:calc(50% - 10px); right: 0; border-right: 1px solid rgba(0,0,0,.2); }
.popupCompanySelect .cont .inr .tab ul li:last-child a::after { display: none; }
.popupCompanySelect .cont .inr .tab ul li a:hover { background: #777; color:#fff; }
.popupCompanySelect .cont .inr .list { width: auto; }
.popupCompanySelect .cont .inr .list .group { padding: 10px 0 30px; }
.popupCompanySelect .cont .inr .list h3 { border-top: 1px solid #4daf61; background: #fafafa; color: #222; padding:10px; margin:0 0 10px; font-size: .9rem; font-weight: bold; }
.popupCompanySelect .cont .inr .list ul { margin: 30px 0 0; display: flex; flex-wrap: wrap; }
.popupCompanySelect .cont .inr .list ul li { width: calc((100% - 20px) / 3); margin: 0 10px 10px 0; }
.popupCompanySelect .cont .inr .list ul li:nth-of-type(3n) { margin: 0 0 10px 0; }
.popupCompanySelect .cont .inr .list ul li a { display: block; padding: 10px 10px 10px 27px; line-height:1.2; border:1px solid #e5e5e5; position: relative; }
.popupCompanySelect .cont .inr .list ul li a:after { content: ""; display: block; width: 6px; height: 6px; overflow: hidden; border-radius: 100px; background: #e5e5e5; position: absolute; top:calc(50% - 3px); left: 10px; }

.tyh01 span { cursor: pointer; width: 397px; display: block; line-height: 1; padding: 1em 2em; box-shadow: 0 3px 6px rgba(0,0,0,.1); background: #4DAF61; color: #fff; border-radius: 2px; transition: .3s; }
.tyh01 span:hover { background: #36B0BA; opacity: 1; }
.tyh02 { display: none;}




::-moz-selection { background-color: #3FA9C9; color: #fff; }
::selection { background-color: #3FA9C9; color: #fff; }

.link { text-decoration: underline; color:#3FA9C9; }

.receiptName { width: 612px; margin: 0 auto; }
.receiptName dl { display: flex; align-items: center; justify-content: center; width: 100% ; margin: 1rem auto 2rem; padding: 1rem 0; text-align: center; background: rgba(0, 0, 0, .05); position: relative; }
.receiptName dl::before { content: ""; display: block; position: absolute; left: calc(50% - 10px); bottom: -10px; width: 0; height: 0; border-style: solid; border-width: 10px 10px 0 10px; border-color: rgba(0, 0, 0, .05) transparent transparent transparent; }
.receiptName dl dt { padding: 0 2rem 0 0; font-weight: 600; font-size: 1rem; color: rgba(0, 0, 0, .5); }
.receiptName dl dd textarea { width: calc(25.5em + 2px); height: calc(3em + 2px); line-height: 1.25; max-width: 100%; margin: 0; padding:.25em; outline: none; border:1px solid rgba(0, 0, 0, .1); font-size: 1rem; resize: none; overflow: hidden; vertical-align: top; }
.receiptName dl dd input { height: 42px; width: 24rem; max-width: 100%; margin: 0; padding: 0 .5em; font-size: 1rem; }

.tooltip { position: relative;}
.tooltip:after { content: "！"; font-size: 1rem; font-weight: 600; position: absolute; top:1rem; right: 1rem; color: #fff; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; background: #00f; border-radius: 100px; }
.tooltipDown { position: relative;}
.tooltipDown:after { content: "！"; font-size: 1rem; font-weight: 600; position: absolute; top:1rem; right: 1rem; color: #fff; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; background: #00f; border-radius: 100px; }

.ts01 th,
.ts01 th.second { width: 15rem; vertical-align: middle; padding: 1rem  50px 1rem 1rem !important;}
.ts01 td { vertical-align: middle; padding: 1rem; }

.mypage h2.h02 { background: none; font-size: 1rem; font-weight: 500; margin: 0 auto 1rem; line-height: 1.5; }
.mypage h1 { min-height: 4rem; display: flex; align-items: center; border-bottom: 2px dotted #4DAF61; font-size: 20px; color: #4DAF61; font-weight: normal; padding: 0; margin-bottom: 1rem; line-height: 1.1; }

.myStatus { border:3px solid #4DAF61; padding: 1rem; margin: 2rem auto; }
.myStatus h3 { font-size: 1rem; line-height: 1; margin: 0 auto .5rem; font-weight: 500; }
.myStatus h3:before { content: url(/h-support/static/images/ico_user.svg); line-height: 1; vertical-align: middle; margin: 0 5px 0 0; }
.myStatus ul { margin: 0; padding: 0; }
.myStatus ul li { margin: 2px auto; padding: 0 0 0 15px; position: relative; font-weight: 600; }
.myStatus ul li:before { content: ""; display: block; width: 6px; height: 6px; border-radius: 100px; overflow: hidden; font-size: 1px; line-height: 1px; background: #95ab9a; position: absolute; left: 2px; top:6px;  }

.mypageNav { margin: 0 0 3.4rem; }
.mypageNav ul { display: flex; flex-wrap: wrap; }
.mypageNav ul li { display: flex; width: calc((100% - 1.2rem) / 3); margin: 0 .6rem .6rem 0; line-height: 1.4; }
.mypageNav ul li:nth-of-type(3n) { margin: 0 0 .6rem; }
.mypageNav ul li a { display: block; width: 100%; position: relative; text-align: center; padding: 85px 1rem 1rem; background: #f3f3f3; color: rgba(0, 0, 0, .8); font-weight: 600; letter-spacing: .04em; transition: .4s; }
.mypageNav ul li.kakuninsyo a { background: #f3f3f3 url(/h-support/static/images/ico_kakuninsyo.svg) center 27px no-repeat; }
.mypageNav ul li.syuryosho a { background: #f3f3f3 url(/h-support/static/images/ico_syuryosho.svg) center 27px no-repeat; }
.mypageNav ul li.koshinsyuryosho a { background: #f3f3f3 url(/h-support/static/images/ico_koshinsyuryosho.svg) center 27px no-repeat; }
.mypageNav ul li.koshin a { background: #f3f3f3 url(/h-support/static/images/ico_koshin.svg) center 27px no-repeat; }
.mypageNav ul li.koshin_work a { background: #f3f3f3 url(/h-support/static/images/ico_koshin_work.svg) center 27px no-repeat; }
.mypageNav ul li.enq a { background: #f3f3f3 url(/h-support/static/images/ico_enq.svg) center 27px no-repeat; }
.mypageNav ul li.work a { background: #f3f3f3 url(/h-support/static/images/ico_work.svg) center 27px no-repeat; }
.mypageNav ul li.town a { background: #f3f3f3 url(/h-support/static/images/ico_town.svg) center 27px no-repeat; }
.mypageNav ul li.town_work a { background: #f3f3f3 url(/h-support/static/images/ico_town_work.svg) center 27px no-repeat; }
.mypageNav ul li.useredit a { background: #f3f3f3 url(/h-support/static/images/ico_useredit.svg) center 27px no-repeat; }
.mypageNav ul li.receipt a { background: #f3f3f3 url(/h-support/static/images/ico_receipt.svg) center 27px no-repeat; }
.mypageNav ul li a:hover { background-color: #e1e7d5; }

/* .mypageNav ul li.koshin a:before,
.mypageNav ul li.koshin_work a:before,
.mypageNav ul li.enq a:before,
.mypageNav ul li.work a:before,
.mypageNav ul li.town_work a:before { content: url(/h-support/static/images/ico_point.svg); position: absolute; top:10px; right: 10px; } */

.dl_receipt.v2 { border:none; margin: 1.2rem auto; padding: 0; background: none; }

.receipt_btn a { display: block; border: .2rem solid #4DAF61; margin: 2rem auto; padding: 1rem; background: rgba(0,0,0,.03); text-align: center; font-size: .9rem; font-weight: 600; position: relative; }
.receipt_btn a:before { content: ""; display: block; position: absolute; right: 1rem; top:calc(50% - 7px); width: 0; height: 0; border-style: solid; border-width: 7px 0 7px 7px; border-color: transparent transparent transparent #4DAF61; transition: right .4s; }
.receipt_btn a:hover:before { right: .75rem; }

.pagerMenu ul { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; margin: 3rem auto 0; padding: 1rem 0; border-top:1px solid rgba(0, 0, 0, .05); border-bottom:1px solid rgba(0, 0, 0, .05);  }
.btn { display: inline-block; min-width: 160px; text-align: center; padding: .75rem; border-radius: 3px; background: #e5e5e5; line-height: 1.25; color: initial; transition: .4s; }
.btn:hover { background: #d7d7d7; color: initial; }
.btn.back:before { content: ""; display: inline-block; vertical-align: middle; margin: 0 .3rem 0 0; font-size: 1px; line-height: 1px; width: 0; height: 0; border-style: solid; border-width: 5px 6px 5px 0; border-color: transparent #000000 transparent transparent; opacity: .75; position: relative; top:-2px; }

.formWrap { margin: 1rem auto; border-bottom: 1px solid rgba(0, 0, 0, .05); }
.formWrap dl { border-top: 1px solid rgba(0, 0, 0, .05); padding: 2rem .5rem; }
.formWrap dl.delete_area { overflow: hidden; max-height: 0; transition: .6s; padding:0 .5rem; border-top: 1px solid rgba(0, 0, 0, 0);}
.formWrap dl.delete_area.active { max-height: 20rem; padding: 2rem .5rem; border-top-color: rgba(0, 0, 0, .05);}
.formWrap dl dt { font-size: 1.1rem; margin: 0 auto .5rem; font-weight: 500; color: rgba(0, 0, 0, .9); }
.formWrap dl dd p { line-height: 1.8; margin: 0 0 1rem; }
.formWrap dl.errors { background: rgba(255, 0, 0, .05); }
.formWrap dl.errors dt { color:#f00; }
.formWrap dl.errors dd p { color:#f00; }
.formWrap table { width: 100%; box-sizing: border-box; border-collapse: collapse; margin: 0 auto 1rem; }
.formWrap table th { background: #f6f6f6; padding: 1rem; border: 1px solid rgba(0, 0, 0, .1); vertical-align: middle; width: 10rem; text-align: left; }
.formWrap table td { background: #ffffff; padding: 1rem; border: 1px solid rgba(0, 0, 0, .1); vertical-align: middle; }
.formWrap .delete_area_open { display: none; background: rgba(0,0,0, .05); padding: 1rem; margin: 0 auto 1rem; text-align: center; line-height: 1.25; cursor: pointer; color: rgba(0, 0, 0, .8); }
.formWrap .delete_area_open.active { display: block; color: #222; font-weight: 600; }
.formWrap .delete_area_open:hover { background: rgba(0,0,0, .1); }

.formSelect { display: inline-block; border:1px solid rgba(0, 0, 0, .3); border-radius: 2px; margin: 1rem auto; position: relative; transition: .4s; }
.formSelect:after { content: ""; display: inline-block; vertical-align: middle; margin: 0 .3rem 0 0; font-size: 1px; line-height: 1px; width: 0; height: 0; border-style: solid; border-width: 5px 6px 5px 0; border-color: transparent #000000 transparent transparent; opacity: .75; position: absolute; top:calc(50% - 5px); right: 10px; transform: rotate(270deg); }
.formSelect select { -moz-appearance: none; -webkit-appearance: none; appearance: none; border-radius: 0; border: 0; margin: 0; padding: 0; background: none transparent; vertical-align: middle; color: inherit; box-sizing: content-box; border: none; font-size: .9rem; /* font-weight: 600; */ height: 46px; padding: 0 35px 0 1em; outline: none; box-sizing: border-box; background: transparent; text-indent: 0; max-width:600px; }
.formSelect select option { font-size: .9rem; }
.formSelect:hover { background: rgba(0, 0, 0, .05); }

.labelWrap ul { display: flex; flex-wrap: wrap; }
.labelWrap ul > li { display: flex; align-items: center; line-height: 1; min-width: 20%; }
.labelWrap ul > li:hover { color: #4DAF61; }
.labelWrap ul > li input[type="checkbox"] { display: none; }
.labelWrap ul > li input[type="checkbox"] + label { display: block; position: relative; padding-left: 32px; margin-bottom: 20px; font: 14px/20px 'Open Sans', Arial, sans-serif; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; }
.labelWrap ul > li input[type="checkbox"] + label:last-child { margin-bottom: 0; }
.labelWrap ul > li input[type="checkbox"] + label:before { content: ''; display: block; width: 20px; height: 20px; border: 1px solid #eee; background-color: #eee; position: absolute; left: 0; top: -1px; transition: all .1s; }
.labelWrap ul > li input[type="checkbox"]:checked + label { font-weight: 600; color: #4DAF61; }
.labelWrap ul > li input[type="checkbox"]:checked + label:before { width: 7px; height: 12px; top: -3px; left: 5px; border-radius: 0; opacity: 1; border: 2px solid #4DAF61; border-top-color: transparent; border-left-color: transparent; background: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.formBtn ul { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; }
.formBtn ul li { margin: .5rem; }
.formBtn ul li button { cursor: pointer; border: none; outline: none; display: inline-block; min-width: 160px; text-align: center; padding: .75rem; border-radius: 3px; background: #4DAF61; line-height: 1.25; color: #fff; transition: .4s; }
.formBtn ul li button:hover { background: #4dacaf; color: #fff; }
.formBtn ul li a { cursor: pointer; border: none; outline: none; display: inline-block; min-width: 80px; text-align: center; padding: .75rem; border-radius: 3px; background: #e5e5e5; line-height: 1.25; color: rgba(0, 0, 0, .5); transition: .4s; }
.formBtn ul li a:hover { background: #95ab9a; color: #fff; }

.payPrice dl { border: 1px solid #ddd; margin: 1rem auto; }
.payPrice dl dt { background: #F2F4F3; padding: .75rem; text-align: center; line-height: 1; color: rgba(0, 0, 0, .9); font-weight: 600; }
.payPrice dl dd { padding: 1rem; text-align: center; font-size: 1.3rem; vertical-align: bottom; line-height: 1; }
.payPrice dl dd small { font-size: .8rem; vertical-align: bottom; line-height: 1; }

.mypagetopList { margin: 0 auto 3rem; }
.mypagetopList * { box-sizing: border-box; }
.mypagetopList dl { display: flex; border: 1px solid #e3e3e3; margin: 0 0 -1px; }
.mypagetopList dl dt { width: 25em; padding: 1rem; background: rgba(0, 0, 0, .05); }
.mypagetopList dl dd { width: calc(100% - 25em); padding: 1rem; }
.mypagetopList .detail { display: none; }
.mypagetopList .moreread { margin: 1px auto 0; background: #edf2ef; padding: .5rem; cursor: pointer; text-align: center; color: rgba(0, 0, 0, .7); transition: .4s; }
.mypagetopList .moreread:hover { background: #d6e3d9; color: rgba(0, 0, 0, .8); }
.mypagetopList .moreread:before { content: "▼ 詳細を見る";}
.mypagetopList.open .moreread:before { content: "▲ 閉じる";}

.validationlink { margin: 1rem auto; background: url(/h-support/static/images/validationlink_bg.png) center/cover no-repeat; transition: .4s; border-radius: 2px; }
.validationlink a { display: flex; align-items: center; justify-content: center; background: rgba(223, 82, 31, .9); padding: 1.5rem; position: relative; transition: .4s; border-radius: 2px; }
.validationlink a::before { content: "詳細はこちら"; display: inline-block; line-height: 1; padding: .3rem .4rem; text-align: center; background: rgba(0, 0, 0, .75); color: #fff; position: absolute; right: 0; bottom: 0; font-size: .7rem; }
.validationlink a dl { padding: 0 0 0 50px; background: url(/h-support/static/images/ico_validationlink.svg) left center no-repeat; }
.validationlink a dt { color: #fff; font-weight: 600; line-height: 1; font-size: 1.2rem; margin: 0 auto .5rem; }
.validationlink a dd { color: #fff; font-weight: 600; line-height: 1; font-size: .8rem; }

.validationlink:hover {  }
.validationlink a:hover { opacity: 1;  background-color: rgba(223, 82, 31, .8); }

.radio { margin: 0.5rem; display: flex; align-items: center; position: relative; line-height: 1; font-size: 1rem; font-weight: 600; }
.radio input[type=radio] { position: absolute; opacity: 0; }
.radio input[type=radio] + .radio-label:before { content: ""; background: #f4f4f4; border-radius: 100%; border: 1px solid #b4b4b4; display: inline-block; width: 1.4em; height: 1.4em; position: relative; top: 0; margin-right: 1em; vertical-align: top; cursor: pointer; text-align: center; transition: all 250ms ease; }
.radio input[type=radio]:checked + .radio-label:before { background-color: #3197EE; box-shadow: inset 0 0 0 4px #f4f4f4; }
.radio input[type=radio]:focus + .radio-label:before { outline: none; border-color: #3197EE; }
.radio input[type=radio]:disabled + .radio-label:before { box-shadow: inset 0 0 0 4px #f4f4f4; border-color: #b4b4b4; background: #b4b4b4; }
.radio input[type=radio] + .radio-label:empty:before { margin-right: 0; }

.formWrap dl dt em { font-weight: 600; color: #3197EE; font-size: 1.75rem; line-height: 1; margin: 0 auto .5rem; display: flex; align-items: center; }
.formWrap dl dt em span { font-weight: 600; font-size: 1.75rem; line-height: 1; display: flex; align-items: center; margin: 0 0 0 1rem; }
.formWrap dl dt em span.ok { color: #ee6a31; }
.formWrap dl dt em span.ng { color: #33bf9c; }

.validationFlow ul { display: flex; margin: 2rem auto; align-items: center; justify-content: center; }
.validationFlow ul li { margin: 0 1rem; background: #f3f3f3; border-radius: 1000px; width: 100px; height: 100px; display: flex; align-items: center; justify-content: center; line-height: 1; position: relative; }
.validationFlow ul li::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 15px 0 15px 15px; border-color: transparent transparent transparent #ccc; position: absolute; right: -25px; top:calc(50% - 15px); }
.validationFlow ul li:nth-last-of-type(1):before { display: none; }
.validationFlow ul li span { font-size: 1rem; text-align: center; line-height: 1; font-weight: 600; letter-spacing: .05em; }
.validationFlow ul li em { font-size: .8rem; color: #3197EE; display: block; text-align: center; line-height: 1;margin: 0 auto 7px; font-weight: 600; }
.validationFlow ul li small { font-size: .7rem; display: block; text-align: center; line-height: 1; margin: 7px auto 0; font-weight: 500; letter-spacing: 0; color: #888; }

.validationFlow ul li.active { background: #3197EE; }
.validationFlow ul li.active span,
.validationFlow ul li.active em,
.validationFlow ul li.active small { color:#fff; }
.validationFlow ul li.active::before { border-color: transparent transparent transparent #007bff; }

.answer { font-size: 1rem; color: rgba(0, 0, 0, .4); font-weight: 600; }
.formWrap dl dd aside { background: #f3f3f3; padding:2.5rem 1rem 1rem; margin: 1rem auto 0; border-radius: 3px; position: relative; font-size: .9rem; }
.formWrap dl dd aside::before { content: "解説"; font-weight: 600; position: absolute; top:1rem; left: 1rem; }

.totalscore { text-align: center; border:4px solid #ddd; padding: 2rem; }
.totalscore h3 { font-size: 1rem; text-align: center; vertical-align: baseline; line-height: 1; margin: 0 auto .5rem; }
.totalscore h3 em { font-size: 3rem; vertical-align: baseline; line-height: 1; color: #4DAF61; }
.totalscore p { font-size: 1rem; text-align: center; }

.formBtn { margin: 2rem auto; padding: 0;}
.updatetips { margin:1rem 0; border:2px solid red; padding:1rem; font-size: .8rem; color: red; font-weight:bold; background-color: rgba(255, 0, 0, .05); }
.updateinfo { margin:1rem 0; border:2px solid red; padding:1rem;  }

.selectTable { border-collapse: collapse; margin-bottom: 20px; width: 100%; box-sizing: border-box; }
.selectTable * { box-sizing: border-box; }
.selectTable th { font-size: .9rem; position: relative; background: #F2F4F3; border: 1px solid #eaeaea; border-bottom: none; line-height: 1; padding: 18px 40px 18px 7px; text-align: left; font-weight: normal; background: #F2F4F3; color: rgba(0, 0, 0, .9); }
.selectTable th em { font-size: 1.2rem; vertical-align: -0.1em; line-height: 1; margin: 0 .25em 0 0; color: rgba(223, 82, 31, .9); }
.selectTable td { border: 1px solid #EAECEA; border-top:none; padding: 1rem; line-height: 26px; }
.selectTable td h6 { margin: 0 auto; text-align: left; }
.selectTable td p { margin: 0 auto; text-align: left; }
.mb1rem { margin-bottom: 1rem !important;}

.entryFlow { margin: 3rem auto; }
.entryFlow ul { display: flex; align-items: center; justify-content: center; gap: 2rem; }
.entryFlow ul li { display: flex; align-items: center; justify-content: center; width: 100px; height: 100px; border-radius: 100px; background-color: #ddd; position: relative; }
.entryFlow ul li::before { content: ""; display: block; position: absolute; right: -25px; top:calc(50% - 15px); width: 0; height: 0; border-style: solid; border-top: 15px solid transparent; border-bottom: 15px solid transparent; border-left: 15px solid #ddd; border-right: 0; }
.entryFlow ul li:nth-last-of-type(1):before { display: none; }
.entryFlow ul li span { color: #fff; font-weight: 500; font-size: 1rem; letter-spacing: .04rem; text-align: center; line-height: 1.25; padding: .5rem 0 0; }
.entryFlow ul li span small { color: #fff; font-weight: 600; font-size: .7rem; letter-spacing: .04rem; line-height: 1.25;  }
.entryFlow ul li.done { background-color: #4DAFAF; }
.entryFlow ul li.done::before { border-left-color: #4DAFAF; }
.entryFlow ul li.done::after { content: "✔"; position: absolute; left: calc(50% - .5em); top:0; color: #fff; font-weight: 500; font-size: 1.5rem; }
.entryFlow ul li.active { background-color: rgba(223, 82, 31, .9); }

.helpBalloon { display: inline-block; position: relative; vertical-align: middle; margin: 0 .5em; transition: .4s; top:-.15em; }
.helpBalloon em { display: flex; align-items: center; justify-content: center; width: 1.3em; height: 1.3em; line-height: 1; cursor:default; font-size: inherit; background:#eee; border:1px solid #aaa; border-radius: 3px; text-align: center; font-weight: 500; }
.helpBalloon .txt { display: inline-block; font-weight: 500; width: 400px; padding: 1rem; background: #fff; border:2px solid rgb(75, 162, 154); position: absolute; top: 1.5em; left: 0; opacity: 0; visibility: hidden; box-shadow: 1rem 1rem 2rem rgba(0,0,0,.1); transition: .4s; }
.helpBalloon:hover .txt { opacity: 1; visibility: visible;  }

.mypage_filedl { padding: 2rem 0; margin: 0 auto 1rem; background: #51adb0; }
.mypage_filedl ul { display: flex; align-items: center; justify-content: center; gap: 2rem; }
.mypage_filedl ul li a { display: inline-block; padding: 1.25rem 3rem; line-height: 1; background: rgba(255, 255, 255, .15); box-shadow: .25rem .25rem .5rem rgba(0, 0, 0, .02); border-radius: 5px; font-size: .9rem; font-weight: 600; color: #fff; letter-spacing: .05em; transition: .4s; position: relative; text-indent: 13px; }
.mypage_filedl ul li a:hover { background: rgba(0, 0, 0, .15); }
.mypage_filedl ul li a::before { content: ""; display: inline-block; vertical-align: middle; color: #fff; line-height: 1; position: absolute; top:calc(50% - 10px); left: 15px; width: 20px; height: 20px; background: #fff; border-radius: 50%; box-sizing: border-box; }
.mypage_filedl ul li a::after { content: ''; display: inline-block; position: absolute; top: calc(50% - 6px); left: 23px; width: 0; height: 0; border-style: solid; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 6px solid #51adb0; border-right: 0; }

.download_document section { margin: 0 auto 1rem; }
.download_document > h2 { margin: 0 auto 2rem; }
.download_document > p { margin: 0 auto 3rem; font-size: .9rem; }
.download_document h3 { margin: 0 auto 3rem; line-height: 1.25; font-size: 1.4rem; font-weight: 500; letter-spacing: .04em; position: relative; padding: 0 0 0 1rem; }
.download_document h3::before { content: ""; display: block; width: 4px; height: 100%; position: absolute; left: 0; top:0; background: linear-gradient(to bottom,  #51adb0 0%,#4DAF61 100%); }
.download_document h3 em {line-height: inherit; font-size: inherit; color: #4DAF61; }
.download_document h4 { background: #4DAF61; color: #fff; padding: 1em; line-height: 1.2; font-size: 1rem; font-weight: 500; letter-spacing: .04em; vertical-align: middle; }
.download_document h4 small { font-size: .8rem; color: inherit; margin: 0 .5rem; }
.download_document h5 { background: linear-gradient(to bottom,  rgba(0,0,0,.025) 0%,rgba(0,0,0,.05) 100%); padding: 1em 1em; margin: 0 auto; line-height: 1.2; font-size: .9rem; font-weight: 500; border-top: 1px solid #4DAF61; border-bottom: 1px solid rgba(0, 0, 0, .05); letter-spacing: .04em; }
.download_document section > ul { margin: 0 auto; }
.download_document section > ul > li { margin: 0; font-size: .9rem; position: relative; padding: 1rem 0 1rem 14px; color: rgba(0, 0, 0, .4); border-bottom: 1px solid rgba(0, 0, 0, .1); }
.download_document section > ul > li::before { content: ''; width: 4px; height: 4px; border: 0; border-top: solid 2px #777; border-right: solid 2px #777; transform: rotate(45deg); position: absolute; top: 25px; left: 0; margin: auto; }
.download_document section > ul > li:nth-last-of-type(1) { border: none; }
.download_document section > ul > li > a { color: initial; }
.download_document section > ul > li > a::after { content: "ダウンロード"; display: inline-block; font-size: 12px; background: linear-gradient(to bottom,  #fff 0%,#e5e5e5 100%); color: #333; line-height: 1; padding: .5em; position: absolute; top:calc(1rem - 2px); right: 0; border-radius: 3px; border:1px solid rgba(0, 0, 0, .3); }
.download_document section > ul > li > a:hover {color: #4DAF61; }
.download_document section > ul > li > a:hover::after {color: #4DAF61; }
.download_document section > ul > li aside { background: #f8f8f8; padding: 1rem; margin: 1rem auto 0; font-size: .9rem; line-height: 1.5; }
.download_document section > ul > li aside li { font-size: 12px; line-height: 1.5; padding: 0 0 0 10px; position: relative; }
.download_document section > ul > li aside li::before { content: ""; display: block; width: 8px; height: 0; border-top:2px solid #ddd; position: absolute; left: 0; top:calc(50% - 1px); }
.download_document section > ul > li aside h6 { font-size: 12px; line-height: 1.5; flex-wrap: 600; margin: 0 auto .5em; color: #4DAF61; }
.dlall { padding: 1rem 0; margin: 0 auto 1rem; background: #e88311; }
.dlall ul { display: flex; align-items: center; justify-content: center; gap: 2rem; }
.dlall ul li a { display: inline-block; padding: 1.25rem 3rem; line-height: 1; background: rgba(255, 255, 255, .15); box-shadow: .25rem .25rem .5rem rgba(0, 0, 0, .02); border-radius: 5px; font-size: .9rem; font-weight: 600; color: #fff; letter-spacing: .05em; transition: .4s; position: relative; text-indent: 13px; }
.dlall ul li a:hover { background: rgba(0, 0, 0, .15); }
.dlall ul li a::before { content: ""; display: inline-block; vertical-align: middle; color: #fff; line-height: 1; position: absolute; top:calc(50% - 10px); left: 15px; width: 20px; height: 20px; background: #fff; border-radius: 50%; box-sizing: border-box; }
.dlall ul li a::after { content: ''; display: inline-block; position: absolute; top: calc(50% - 6px); left: 23px; width: 0; height: 0; border-style: solid; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 6px solid #e88311; border-right: 0; }

/* ───────────────────────────────────────────────────────────────────────────
 960px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:960px){
}

/* ───────────────────────────────────────────────────────────────────────────
 800px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:800px){

}
