@charset "UTF-8";
#contents { /* period */ /* summary */ /* caution */ /* icon link */ /* sticky table */ }
#contents .column { padding: 0 120px; }
@media screen and (max-width: 1024px) { #contents .column { padding: 0 30px; } }
@media screen and (max-width: 520px) { #contents .column { padding: 0 15px; } }
#contents #pageTitle { border-bottom: 1px solid #ddd; display: flex; flex-wrap: wrap; align-items: flex-end; align-content: flex-end; margin-bottom: 60px; height: 200px; }
@media screen and (max-width: 768px) { #contents #pageTitle { height: 160px; margin-bottom: 40px; } }
#contents #pageTitle p { font-size: 0.9375rem; line-height: 1.2em; margin-bottom: 15px; letter-spacing: 1px; width: 100%; }
#contents #pageTitle h2 { font-size: 2.5rem; line-height: 1.2em; letter-spacing: 1px; padding-bottom: 30px; font-weight: bold; position: relative; width: 100%; }
#contents #pageTitle h2:after { height: 4px; width: 100px; display: block; content: ""; position: absolute; bottom: 0; left: 0; background-color: #0076cf; background: -webkit-gradient(linear, left top, right top, from(#e8340c), to(#f49e00)); background: -moz-linear-gradient(left, #e8340c, #f49e00); background: -ms-linear-gradient(left, #e8340c, #f49e00); background: linear-gradient(left, #e8340c, #f49e00); -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#e8340c', endColorstr='#f49e00', GradientType=1)"; }
@media screen and (max-width: 768px) { #contents #pageTitle h2 { font-size: 2rem; } }
#contents section { margin-bottom: 120px; }
@media screen and (max-width: 1024px) { #contents section { margin-bottom: 100px; } }
@media screen and (max-width: 768px) { #contents section { margin-bottom: 80px; } }
#contents h3 { font-size: 2rem; line-height: 1.6em; margin-bottom: 40px; letter-spacing: 1px; }
@media screen and (max-width: 768px) { #contents h3 { font-size: 1.625rem; margin-bottom: 30px; } }
#contents h4 { font-size: 1.375rem; line-height: 1.6em; margin-top: 60px; margin-bottom: 30px; border-top: 2px solid #ddd; padding-top: 35px; font-weight: bold; position: relative; }
#contents h4::after { height: 2px; width: 50px; display: block; content: ""; position: absolute; top: -2px; left: 0; background-color: #0076cf; background: -webkit-gradient(linear, left top, right top, from(#060), to(#9c0)); background: -moz-linear-gradient(left, #060, #9c0); background: -ms-linear-gradient(left, #060, #9c0); background: linear-gradient(left, #060, #9c0); -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#e8340c', endColorstr='#f49e00', GradientType=1)"; }
#contents h5 { font-size: 1.125rem; line-height: 1.6em; margin-top: 40px; margin-bottom: 20px; border-left: 3px solid #78ad74; padding-left: 10px; font-weight: bold; }
#contents .period-data dl { margin-bottom: 15px; }
#contents .period-data dt { display: inline-block; line-height: 29px; font-weight: bold; background: #942737; color: #fff; padding: 0 15px; margin-bottom: 5px; border-radius: 7px; }
#contents .period-data dd { font-size: 1.5rem; font-weight: bold; }
@media screen and (max-width: 768px) { #contents .period-data dd { font-size: 1.25rem; } }
#contents .period-data dd .week { display: inline-block; vertical-align: middle; width: 26px; line-height: 26px; background: #78ad74; color: #fff; text-align: center; font-size: 0.6em; border-radius: 15px; margin: 0 2px; }
@media screen and (max-width: 768px) { #contents .period-data dd .week { width: 22px; line-height: 22px; } }
#contents .summary li, #contents .summary dt { font-size: 1.125rem; margin-left: 1em; margin-bottom: 10px; text-indent: -1em; }
#contents .summary dt { font-weight: bold; }
#contents .summary dd { margin-left: 1.125rem; }
#contents .summary span { color: #78ad74; }
#contents .summary .txtNote { margin-top: 3px; }
#contents .caution { margin-top: 40px; display: flex; }
#contents .caution dt { width: 3em; font-weight: bold; }
#contents .caution dd { width: 100%; flex-shrink: 100; padding-left: 15px; border-left: 1px solid #23292f; }
#contents .download { margin: 20px 0; }
#contents .pdfLink, #contents .wordLink, #contents .excelLink { font-size: 1.125rem; line-height: 26px; padding-left: 32px; }
@media screen and (max-width: 768px) { #contents .pdfLink, #contents .wordLink, #contents .excelLink { font-size: 1rem; } }
#contents .pdfLink { background: url(../images/icon_pdf.png) left center no-repeat; }
#contents .wordLink { background: url(../images/icon_word.png) left center no-repeat; }
#contents .excelLink { background: url(../images/icon_excel.png) left center no-repeat; }
#contents .tableSlide { font-size: 0.6875rem; margin-bottom: 5px; display: none; margin-top: 20px; }
@media screen and (max-width: 768px) { #contents .tableSlide { display: block; } }
@media screen and (max-width: 768px) { #contents .stickyTable { overflow: scroll; }
  #contents .stickyTable table { margin-top: 0; }
  #contents .stickyTable .tableFix { position: sticky; left: 0; }
  #contents .stickyTable td { white-space: nowrap; } }

/* greeting */
#greeting p { margin-bottom: 20px; }
#greeting p#update { margin-top: 30px; }
#greeting dl { text-align: right; }
#greeting dd strong { font-size: 1.4em; }

/* psychology */
#psychology dl { display: flex; align-items: flex-start; margin-bottom: 30px; }
@media screen and (max-width: 520px) { #psychology dl { display: block; } }
#psychology dl dt { width: 36px; line-height: 36px; background: #78ad74; color: #fff; text-align: center; font-weight: bold; margin-right: 10px; border-radius: 20px; }
@media screen and (max-width: 520px) { #psychology dl dt { margin-bottom: 8px; } }
#psychology dl dd { width: 100%; flex-shrink: 10; padding-top: 4px; }
@media screen and (max-width: 520px) { #psychology dl dd { width: auto; } }
#psychology dl dd .region { margin: 5px 0; display: flex; align-items: center; }
@media screen and (max-width: 768px) { #psychology dl dd .region { margin: 15px 0; display: block; } }
#psychology dl dd .region strong { width: 4em; }
@media screen and (max-width: 768px) { #psychology dl dd .region strong { width: auto; } }
#psychology dl dd .region ul { width: 100%; flex-shrink: 10; }
@media screen and (max-width: 768px) { #psychology dl dd .region ul { width: auto; } }
#psychology dl dd .region ul li { display: inline-block; padding: 0 15px; margin: 5px; background: #e3e9ef; border-radius: 20px; line-height: 31px; }
@media screen and (max-width: 768px) { #psychology dl dd .region ul li { margin: 5px 10px 5px 0; } }
@media screen and (max-width: 520px) { #psychology dl dd .region ul li { display: block; margin: 10px 0; text-align: center; } }
#psychology .class { margin: 20px 0; }
#psychology .class ul { display: flex; }
@media screen and (max-width: 768px) { #psychology .class ul { display: block; } }
#psychology .class ul li { width: 33.3333%; padding: 20px; text-align: center; background: #f8f8f1; }
#psychology .class ul li:nth-child(1) { background: #eed; }
#psychology .class ul li:nth-child(2) { background: #f3f3e7; }
@media screen and (max-width: 768px) { #psychology .class ul li { width: auto; padding: 15px; } }
#psychology .class .class-title { line-height: 40px; font-size: 1.25rem; background: #78ad74; color: #fff; margin-bottom: 12px; }

/* method */
#method #features dl { margin-top: 20px; }
#method #features dl dt { font-size: 1.375rem; display: flex; align-items: center; margin-bottom: 10px; }
#method #features dl dt span { font-size: 0.8125rem; width: 36px; line-height: 36px; background: #78ad74; color: #fff; text-align: center; font-weight: bold; margin-right: 10px; border-radius: 20px; }

/* system */
#system th { width: 20px; line-height: 1.2em; }
#system td { text-align: center; width: 6.25%; }
#system td.valid { background: #ffc; }
#system td.number { background: #e3e9ef; }
#system td.number span { font-size: 0.8125rem; line-height: 1.35em; display: block; }
#system td.now { font-weight: bold; background: #78ad74; color: #fff; }

/* merit */
#merit figure { margin: 10px 0 30px; }
#merit figure li { display: inline-block; margin-right: 10px; }
@media screen and (max-width: 520px) { #merit figure li { display: block; margin-right: 0; } }
#merit figure a { display: inline-block; padding: 10px 15px; margin-bottom: 10px; border: 2px solid #93999f; border-radius: 10px; }
#merit figure a:hover { border-color: #78ad74; }
@media screen and (max-width: 520px) { #merit figure a { display: block; text-align: center; } }

/* history */
#history-table { margin-top: 40px; }
#history-table dl { display: flex; align-items: center; padding: 0 10px; }
#history-table dl:nth-child(odd) { background-color: #e3e9ef; }
@media screen and (max-width: 520px) { #history-table dl { display: block; } }
#history-table dt { width: 150px; margin-right: 20px; padding: 10px 0; background: url(../images/history_allow.png) 65px bottom no-repeat; }
#history-table dt span { display: block; padding: 7px 0; background: #942737; color: #fff; text-align: center; }
@media screen and (max-width: 520px) { #history-table dt { width: auto; margin-right: 0; background-position: center bottom; } }
#history-table dl:last-child dt { background: none; }
#history-table dd { width: 100%; flex-shrink: 10; padding: 10px 0; display: flex; align-items: center; }
#history-table dd .pdfLink { margin-left: 10px; }
@media screen and (max-width: 768px) { #history-table dd .pdfLink { margin-top: 5px; margin-left: 0; } }
@media screen and (max-width: 768px) { #history-table dd { display: block; } }
@media screen and (max-width: 520px) { #history-table dd { width: auto; } }

/* guide */
#guide #guide-navi ul { display: flex; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 10px 0; }
@media screen and (max-width: 768px) { #guide #guide-navi ul { display: block; } }
#guide #guide-navi ul li { width: 33.3333%; text-align: center; margin: 0 2px; }
@media screen and (max-width: 768px) { #guide #guide-navi ul li { width: auto; margin: 5px 0; } }
#guide #guide-navi ul li:first-child { margin-left: 0; }
#guide #guide-navi ul li:last-child { margin-right: 0; }
#guide #guide-navi ul li a { display: block; color: #23292f; text-decoration: none; background: #e3e9ef; line-height: 27px; padding: 5px; text-align: center; font-size: 0.8125rem; font-weight: bold; }
#guide #guide-navi ul li a:hover { background: #d3d9df; }
#guide #guide-navi p.txtNote { text-align: right; margin-top: 5px; }
#guide .guide-box { padding: 30px; margin-top: 60px; }
@media screen and (max-width: 520px) { #guide .guide-box { padding: 30px 0; border-right: none !important; border-left: none !important; } }
#guide .guide-title { margin-bottom: 30px; }
#guide .guide-title p { color: #fff; font-size: 1.375rem; line-height: 1.5em; font-weight: bold; padding: 10px 20px; }
#guide .guide-title p span { font-size: 1rem; margin-left: 10px; }
@media screen and (max-width: 520px) { #guide .guide-title p span { display: block; margin-left: 0; } }
#guide #guide1 { border: 5px solid #088; }
#guide #guide1 .guide-title p { background: #088; }
#guide #guide2 { border: 5px solid #080; }
#guide #guide2 .guide-title p { background: #080; }
#guide #guide3 { border: 5px solid #903; }
#guide #guide3 .guide-title p { background: #903; }
#guide .contact1 { color: #e70; }
#guide .contact2 { color: #609; }
#guide .box { display: flex; align-items: flex-start; margin-top: 20px; }
@media screen and (max-width: 768px) { #guide .box { display: block; padding-bottom: 60px; position: relative; } }
@media screen and (max-width: 768px) { #guide .box.last { padding-bottom: 0; } }
@media screen and (max-width: 768px) { #guide .box.last::after { display: none; } }
@media screen and (max-width: 768px) { #guide .box::after { content: ""; position: absolute; bottom: 0; left: 50%; margin-left: -20px; width: 40px; height: 40px; background: url(../images/guide_allow.png) center center no-repeat; background-size: 100%; } }
#guide .box .guide-head { width: 280px; margin-right: 30px; position: relative; padding-bottom: 60px; }
@media screen and (max-width: 768px) { #guide .box .guide-head { width: auto; padding-bottom: 0; margin-right: 0; margin-bottom: 20px; } }
#guide .box .guide-head p { text-align: center; font-size: 1.125rem; line-height: 1.5em; font-weight: bold; background: #e3e9ef; padding: 15px; border-radius: 15px; }
#guide .box .guide-head p span { display: block; line-height: 1.5em; font-size: 0.875rem; }
#guide .box .guide-head::after { content: ""; position: absolute; bottom: 0; left: 120px; width: 40px; height: 40px; background: url(../images/guide_allow.png) center center no-repeat; background-size: 100%; }
@media screen and (max-width: 768px) { #guide .box .guide-head::after { display: none; } }
#guide .box.last .guide-head { padding-bottom: 0; }
#guide .box.last .guide-head::after { display: none; }
#guide .box .guide-text { width: 100%; flex-shrink: 100; }
@media screen and (max-width: 768px) { #guide .box .guide-text { width: auto; } }
#guide .box .guide-text dl { display: flex; align-items: flex-start; }
#guide .box .guide-text dl dt { width: 36px; line-height: 36px; background: #78ad74; color: #fff; text-align: center; font-weight: bold; margin-right: 10px; border-radius: 20px; }
#guide .box .guide-text dl dd { font-size: 1.125rem; width: 100%; flex-shrink: 100; }
@media screen and (max-width: 768px) { #guide .box .guide-text dl dd { padding-top: 4px; } }
#guide .box .guide-text dl dd .txtNote { margin-top: 5px; }
#guide .guide-contact { margin-bottom: 20px; }
#guide .guide-contact p { font-size: 0.8125rem; }

/* flow */
#flow .flowchart { margin: 20px 0; background: #e3e9ef; padding: 20px; }
@media screen and (max-width: 768px) { #flow .flowchart { padding: 15px; } }
#flow .flowchart p.flowNumber { font-size: 1.125rem; padding-left: 1em; text-indent: -1em; margin: 10px 0 5px; }
@media screen and (max-width: 768px) { #flow .flowchart p.flowNumber { font-size: 1rem; padding-left: 1em; text-indent: -1em; margin: 10px 0 5px; } }
#flow .flowchart p.flowNumber:first-child { margin-top: 0; }
#flow .flowchart p.flowNumber strong { color: #78ad74; }
#flow .flowchart p.flowNumber a { font-weight: bold; }
#flow .flowchart ul.list, #flow .flowchart .bt, #flow .flowchart .txtNote { padding-left: 1.125rem; }
#flow .flowchart .bt { margin-top: 10px; }
#flow .flowchart .txtNote { margin-top: 0; }

/* reserve */
#reserve .scroll-table { overflow: scroll; }
#reserve .scroll-table table { margin-top: 10px; }
#reserve .scroll-table th, #reserve .scroll-table td { white-space: nowrap; text-align: center; }
#reserve .scroll-table th { position: sticky; left: 0; }
#reserve .scroll-table p.txtNote { margin-top: 0; }
#reserve .scroll-table tr:first-child td { background: #e3e9ef; }
#reserve .scroll-text { font-size: 0.8125rem; margin-top: 5px; }

/* terms */
#terms dl { display: flex; align-items: flex-start; }
@media screen and (max-width: 520px) { #terms dl { display: block; margin-top: 20px; } }
#terms dl dt { width: 3.5em; }
@media screen and (max-width: 520px) { #terms dl dt { width: auto; } }
#terms dl dd { width: 100%; flex-shrink: 100; }
#terms dl dd li { margin-left: 1.5em; list-style: lower-latin; }

#contents .public { display: flex; }
@media screen and (max-width: 768px) { #contents .public { display: block; } }
#contents .public .bookImage { width: 200px; flex-basis: auto; margin-right: 30px; }
@media screen and (max-width: 768px) { #contents .public .bookImage { margin: 0 0 20px; } }
#contents .public .bookImage figure { border: 1px solid #53595f; }
#contents .public .bookData { width: 100%; flex-shrink: 10; }
#contents .public .bookData .bookDetail { margin-top: 10px; }
#contents .public .bookData .bookDetail li { font-size: 0.8125rem; font-weight: bold; padding-left: 22px; margin-bottom: 5px; }
#contents .public .bookData .bookDetail li:last-child { margin-bottom: 0; }
#contents .public .bookData .bookDetail li.writer { background: url(../images/icon_writer.png) left 2px no-repeat; }
#contents .public .bookData .bookDetail li.publishing { background: url(../images/icon_book.png) left 2px no-repeat; }
#contents .public .bookData .bookLink { display: flex; margin-top: 20px; }
@media screen and (max-width: 520px) { #contents .public .bookData .bookLink { display: block; } }
#contents .public .bookData .bookLink li { width: 33.3333%; margin-right: 15px; text-align: center; }
@media screen and (max-width: 520px) { #contents .public .bookData .bookLink li { width: auto; margin-right: 0; margin-bottom: 15px; } }
#contents .public .bookData .bookLink li:last-child { margin-right: 0; }
#contents .public .bookData .bookLink li figure { border: 1px solid #ddd; padding: 10px; }
#contents .public .bookData .bookLink li p { font-size: 0.8125rem; font-weight: bold; margin-top: 5px; }

/* exercise */
#exercise h4 { display: flex; align-items: center; }
@media screen and (max-width: 520px) { #exercise h4 { display: block; } }
#exercise h4 span { line-height: 30px; margin-right: 10px; padding: 0 15px; font-size: 0.8125rem; font-weight: bold; background: #942737; color: #fff; border-radius: 7px; }
@media screen and (max-width: 520px) { #exercise h4 span { margin: 0 0 10px; display: block; line-height: 35px; width: 10em; text-align: center; } }

/* books */
#books .publicS { display: flex; flex-wrap: wrap; margin-top: 60px; }
@media screen and (max-width: 768px) { #books .publicS { margin-top: 40px; } }
@media screen and (max-width: 520px) { #books .publicS { display: block; } }
#books .publicS .bookBox { width: 47%; }
@media screen and (max-width: 520px) { #books .publicS .bookBox { width: auto; } }
#books .publicS .bookBox:nth-child(odd) { margin-right: 6%; }
@media screen and (max-width: 520px) { #books .publicS .bookBox:nth-child(odd) { margin-right: 0; } }
#books .publicS .bookBox:nth-child(-n+2) h4 { margin-top: 0; }
#books .publicS .public { align-items: center; }
#books .publicS .public .bookImage { margin-right: 20px; }
#books .publicS .bookBox .public .bookImage { width: 125px; }
@media screen and (max-width: 520px) { #books .publicS .bookBox .public .bookImage { width: 200px; } }
@media screen and (max-width: 768px) { #books .publicS .bookBox .public .bookData .bookLink { display: block; } }
#books .publicS .bookBox .public .bookData .bookLink li { width: 50%; }
@media screen and (max-width: 768px) { #books .publicS .bookBox .public .bookData .bookLink li { width: auto; } }
@media screen and (max-width: 768px) { #books .publicS .bookBox .public .bookData .bookLink li:first-child { margin-right: 0; margin-bottom: 15px; } }
#books .booksNavi { border-top: 1px solid #ddd; margin-top: 60px; }
@media screen and (max-width: 768px) { #books .booksNavi { margin-top: 40px; } }
#books .booksNavi dl { display: flex; align-items: center; padding: 10px 0; border-bottom: 1px solid #ddd; }
@media screen and (max-width: 768px) { #books .booksNavi dl { display: block; } }
#books .booksNavi dt { font-weight: bold; width: 7em; }
@media screen and (max-width: 768px) { #books .booksNavi dt { width: auto; } }
#books .booksNavi dd { width: 100%; flex-shrink: 10; }
@media screen and (max-width: 768px) { #books .booksNavi dd { width: auto; } }
#books .booksNavi dd li { display: inline-block; width: 33.3333%; vertical-align: top; }
@media screen and (max-width: 520px) { #books .booksNavi dd li { display: block; width: auto; } }
#books .booksNavi dd li a { display: block; color: #23292f; text-decoration: none; margin: 2px; background: #e3e9ef; line-height: 27px; padding: 0 10px; text-align: center; font-size: 0.8125rem; }
@media screen and (max-width: 520px) { #books .booksNavi dd li a { margin: 5px 0; } }
#books .booksNavi dd li a:hover { background: #d3d9df; }

/* keyword */
#keyword-pdf { display: flex; }
@media screen and (max-width: 768px) { #keyword-pdf { display: block; } }
#keyword-pdf dl { width: 50%; }
@media screen and (max-width: 768px) { #keyword-pdf dl { width: auto; }
  #keyword-pdf dl:last-child { margin-top: 30px; } }
#keyword-pdf dl dt { display: inline-block; background: #78ad74; line-height: 28px; border-radius: 15px; color: #fff; padding: 0 20px; margin-bottom: 15px; }
#keyword-pdf dl ul li:nth-child(n+2) { margin-top: 10px; }
#keyword #upload { display: flex; justify-content: flex-start; margin-top: 10px; }
#keyword #upload dt, #keyword #upload dd { font-size: 0.75rem; line-height: 28px; padding: 0 15px; border: 1px solid #000; }
#keyword #upload dt { background: #000; color: #fff; }
#keyword .bt { margin: 30px 0 0; }

/* experience */
#experience .box h4 { margin-bottom: 0; line-height: 1.2em; }
#experience .box h4 span { font-size: 1rem; font-weight: normal; }
#experience .box h4 span br { display: none; }
@media screen and (max-width: 520px) { #experience .box h4 span br { display: block; } }
#experience .box .message { margin-top: 20px; display: none; }
#experience .box .message p { margin-bottom: 15px; font-family: "Hiragino Mincho Pro", "HiraMinProN-W3", "ヒラギノ明朝 Pro W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; }
#experience .box .message-open { display: inline-block; margin-top: 20px; background: #e70; border-radius: 10px; color: #fff; padding: 0 20px; cursor: pointer; transition: all 0.4s ease; line-height: 40px; }
#experience .box .message-open:hover { background: #e40; }

/* account */
#account .acDate li { margin-top: 3px; }
#account .acDate li dl { display: flex; align-items: center; }
@media screen and (max-width: 768px) { #account .acDate li dl { display: block; } }
#account .acDate li dt { width: 10em; background: #78ad74; font-weight: bold; color: #fff; font-size: 0.8125rem; line-height: 24px; border-radius: 7px; margin-right: 10px; text-align: center; }
@media screen and (max-width: 768px) { #account .acDate li dt { margin-right: 0; } }
#account .acDate li dd { font-size: 1.125rem; width: 100%; flex-shrink: 10; }
@media screen and (max-width: 768px) { #account .acDate li dd { width: auto; font-size: 1rem; margin: 7px 0 15px; } }

/* application */
#application .download { background: #e3e9ef; padding: 20px; }
@media screen and (max-width: 768px) { #application .download { padding: 15px; } }
#application .download li { display: inline-block; margin-right: 2em; }
@media screen and (max-width: 768px) { #application .download li { display: block; margin-right: 0; margin-bottom: 10px; } }
@media screen and (max-width: 768px) { #application .download li:last-child { margin-bottom: 0; } }
#application #account .appFlow { margin: 40px 0; display: flex; align-items: center; }
#application #account .appFlow dt { font-size: 0.8125rem; width: 36px; line-height: 36px; background: #78ad74; color: #fff; text-align: center; font-weight: bold; margin-right: 10px; border-radius: 20px; }
#application #account .appFlow dd { font-size: 1.375rem; font-weight: bold; }
#application #account .appAddress { font-size: 1.125rem; margin-top: 15px; }
#application #applicationNavi { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 10px 0; }
#application #applicationNavi li { display: inline-block; width: 33.3333%; vertical-align: top; }
@media screen and (max-width: 768px) { #application #applicationNavi li { display: block; width: auto; margin: 5px 0; } }
#application #applicationNavi li a { display: block; color: #23292f; text-decoration: none; margin: 2px; background: #e3e9ef; line-height: 27px; padding: 0 10px; text-align: center; font-size: 0.8125rem; }
@media screen and (max-width: 768px) { #application #applicationNavi li a { margin: 0; } }
#application #applicationNavi li a:hover { background: #d3d9df; }

/* grade1st */
#application table { margin-top: 5px; }
#application table tbody th { width: 20px; line-height: 1.2em; }
#application table td { text-align: center; }
#application table td.number { background: #e3e9ef; }
#application table td.number span { font-size: 0.8125rem; line-height: 1.35em; display: block; }
#application table thead td.number { width: 11.5%; }
#application .certificate { float: right; width: 280px; margin-left: 30px; }
@media screen and (max-width: 520px) { #application .certificate { float: none; margin: 0 auto 30px; } }

#question h4 { display: flex; }
@media screen and (max-width: 520px) { #question h4 { display: block; } }
#question h4 strong { color: #78ad74; margin-right: 0.75em; }
@media screen and (max-width: 520px) { #question h4 strong { margin-right: 0; margin-bottom: 15px; display: block; } }
#question #conditions { padding: 20px; margin: 20px 0; background: #e3e9ef; }
@media screen and (max-width: 768px) { #question #conditions { padding: 15px; } }
#question #conditions dl { display: flex; align-items: flex-start; margin-top: 10px; }
@media screen and (max-width: 520px) { #question #conditions dl { display: block; } }
#question #conditions dt { background: #78ad74; color: #fff; font-weight: bold; line-height: 25px; border-radius: 20px; width: 6em; margin-right: 5px; text-align: center; }
@media screen and (max-width: 520px) { #question #conditions dt { margin-right: 0; margin-bottom: 7px; } }
#question #conditions dd { flex-shrink: 10; }
#question table { margin-top: 5px; }
#question table#lookup-table tbody th { width: 20px; line-height: 1.2em; }
#question table#lookup-table td { text-align: center; }
#question table#lookup-table td.number { background: #e3e9ef; }
#question table#lookup-table td.number span { font-size: 0.8125rem; line-height: 1.35em; display: block; }
#question table#lookup-table thead td.number { width: 11.5%; }
@media screen and (max-width: 768px) { #question table#relationship thead th:nth-child(2) { text-align: left; } }
#question table#relationship td.region { background: #e3e9ef; }
#question table#relationship td.region span { display: block; background: #78ad74; color: #fff; font-weight: bold; line-height: 21px; border-radius: 20px; width: 6em; margin-top: 2px; margin-right: 5px; text-align: center; float: left; font-size: 0.8125rem; }
@media screen and (max-width: 768px) { #question table#relationship td.region span { float: none; margin-right: 0; margin-bottom: 7px; } }
#question .download li { margin: 10px 0; }
#question #faqNavi { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 10px 0; }
#question #faqNavi li { display: inline-block; width: 33.3333%; vertical-align: top; }
@media screen and (max-width: 1024px) { #question #faqNavi li { width: 50%; } }
@media screen and (max-width: 520px) { #question #faqNavi li { display: block; width: auto; } }
#question #faqNavi li a { display: block; color: #23292f; text-decoration: none; margin: 2px; background: #e3e9ef; line-height: 27px; padding: 0 10px; text-align: center; font-size: 0.8125rem; }
@media screen and (max-width: 520px) { #question #faqNavi li a { margin: 5px 0; } }
#question #faqNavi li a:hover { background: #d3d9df; }

/* group */
#group .download li { margin: 10px 0; }

/* resume */
#resume #resumeSystem { display: flex; }
@media screen and (max-width: 520px) { #resume #resumeSystem { display: block; } }
#resume #resumeSystem figure { width: 240px; flex-basis: auto; margin-right: 40px; }
@media screen and (max-width: 520px) { #resume #resumeSystem figure { width: auto; margin-top: 20px; margin-right: 0; } }
#resume #resumeSystem .resumeBox { width: 100%; flex-shrink: 10; order: 2; }
@media screen and (max-width: 520px) { #resume #resumeSystem .resumeBox { width: auto; } }
#resume #resumeSystem .resumeBox .class { border-bottom: 3px double #d00; }

/* english */
#english tr td:first-child { background: #e3e9ef; }

/* committee */
#committee p.omitted { text-align: right; font-size: 0.8125rem; margin-top: 15px; }
#committee p.position { font-weight: bold; margin-top: 20px; margin-bottom: 20px; border-left: 3px solid #78ad74; padding-left: 10px; }
#committee ul { display: flex; flex-wrap: wrap; }
@media screen and (max-width: 520px) { #committee ul { display: block; } }
#committee ul li { width: 33.3333%; font-size: 0.8125rem; margin-top: 15px; }
@media screen and (max-width: 768px) { #committee ul li { width: 50%; } }
@media screen and (max-width: 520px) { #committee ul li { width: auto; margin-top: 15px !important; } }
#committee ul li:nth-child(-n+3) { margin-top: 0; }
@media screen and (max-width: 768px) { #committee ul li:nth-child(-n+3) { margin-top: 15px; } }
#committee ul li strong { font-family: "Hiragino Mincho Pro", "HiraMinProN-W3", "ヒラギノ明朝 Pro W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; letter-spacing: 1px; font-size: 1.25rem; display: block; font-weight: normal; }

/* regulations */
#regulations dl { margin-top: 40px; }
#regulations dl dt { font-weight: bold; }
#regulations dl dd { padding-left: 1em; }
#regulations dl dd ol li { margin-top: 15px; }
#regulations dl dd ul { padding-left: 2em; }

/* policy */
#policy dl { margin-top: 40px; }
#policy dl dt { font-size: 1.125rem; font-weight: bold; margin-bottom: 10px; }
#policy dl dt span { color: #78ad74; }
#policy dl ul { margin-top: 10px; }

#inquiry .formBase { margin-top: 20px; }
#inquiry .formBase li { padding: 20px; margin-bottom: 5px; background: #e3e9ef; }
@media screen and (max-width: 768px) { #inquiry .formBase li { padding: 15px; } }
#inquiry .formBase li dl { display: flex; align-items: center; }
@media screen and (max-width: 768px) { #inquiry .formBase li dl { display: block; } }
#inquiry .formBase li dt { font-weight: bold; width: 11em; }
@media screen and (max-width: 768px) { #inquiry .formBase li dt { width: auto; margin-bottom: 5px; } }
#inquiry .formBase li dd { width: 100%; flex-shrink: 100; display: flex; align-items: center; flex-wrap: wrap; }
@media screen and (max-width: 768px) { #inquiry .formBase li dd { width: auto; } }
#inquiry .formBase li dd p { font-size: 0.8125rem; }
@media screen and (max-width: 520px) { #inquiry .formBase li dd p { width: 100%; margin-top: 5px; } }
#inquiry .formBase li dd p.formNote { margin-left: 10px; }
@media screen and (max-width: 520px) { #inquiry .formBase li dd p.formNote { margin-left: 0; } }
#inquiry .formBase li dd p.txtNote { margin-top: 5px; width: 100%; }
#inquiry .formBase li dd p.bankName { margin-right: 7px; }
@media screen and (max-width: 520px) { #inquiry .formBase li dd p.bankName { margin-top: 0; margin-bottom: 3px; margin-right: 0; } }
#inquiry .formBase li dd p.bankName:nth-child(3), #inquiry .formBase li dd p.bankName:nth-child(5) { margin-left: 30px; }
@media screen and (max-width: 520px) { #inquiry .formBase li dd p.bankName:nth-child(3), #inquiry .formBase li dd p.bankName:nth-child(5) { margin-top: 10px; margin-left: 0; } }
#inquiry .formBase li dd .selectbox { margin-left: 20px; margin-right: 5px; overflow: hidden; }
#inquiry .formBase li dd .selectbox select { width: 100%; padding-right: 1em; cursor: pointer; text-overflow: ellipsis; border: none; outline: none; background: transparent; background-image: none; box-shadow: none; -webkit-appearance: none; appearance: none; }
#inquiry .formBase li dd .selectbox select::-ms-expand { display: none; }
#inquiry .formBase li dd .selectbox { position: relative; background: #fff; border: 1px solid #53595f; }
#inquiry .formBase li dd .selectbox::before { position: absolute; top: 11px; right: 10px; width: 0; height: 0; padding: 0; content: ''; border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 8px solid #53595f; pointer-events: none; }
#inquiry .formBase li dd .selectbox select { padding: 0 35px 0 10px; line-height: 30px; font-size: 1rem; }
#inquiry .formBase input, #inquiry .formBase textarea { line-height: 1.6em; font-size: 1rem; border: 1px solid #53595f; padding: 3px 5px; background: #fff; }
#inquiry .formBase textarea { font-size: 1.125rem; }
#inquiry #inquiryCheck.formBase li#inquiryText dl { display: block; }
#inquiry #inquiryCheck.formBase li#inquiryText dt { margin-bottom: 5px; }
#inquiry .text1 { width: 8em; margin-right: 10px; }
#inquiry .text2 { width: 100%; }
#inquiry .text3 { width: 15em; }
#inquiry .text4 { width: 4em; margin-right: 5px; }
#inquiry .text5 { width: 2em; margin-right: 5px; }

/* account */
#inquiry #account { padding-bottom: 30px; border-bottom: 2px solid #ddd; }

/* privacy */
#inquiry #privacy { border: 1px solid #53595f; padding: 20px; height: 280px; overflow: auto; margin: 20px 0; }
@media screen and (max-width: 768px) { #inquiry #privacy { padding: 15px; } }
#inquiry #privacy p, #inquiry #privacy dt, #inquiry #privacy dd { font-size: 0.8125rem; color: #53595f; }
#inquiry #privacy dl { margin: 15px 0; }
#inquiry #privacy dt { font-weight: bold; }
#inquiry #privacy dd { padding-left: 1em; }

/* agree */
#inquiry #agreeCheck { display: flex; align-items: center; background: #e3e9ef; padding: 20px; }
@media screen and (max-width: 768px) { #inquiry #agreeCheck { padding: 15px; } }
@media screen and (max-width: 520px) { #inquiry #agreeCheck { display: block; } }
#inquiry #agreeCheck input[type=checkbox] { width: 20px; height: 20px; -moz-transform: scale(1.3); -webkit-transform: scale(1.3); transform: scale(1.3); vertical-align: middle; }
#inquiry #agreeCheck p { font-size: 1.125rem; margin-left: 10px; }
@media screen and (max-width: 768px) { #inquiry #agreeCheck p { font-size: 1rem; } }
@media screen and (max-width: 520px) { #inquiry #agreeCheck p { margin-top: 10px; margin-left: 0; } }

/* error */
#inquiry #error { margin: 20px 0; }
#inquiry #error li { font-weight: bold; color: #d00; font-size: 0.8125rem; }

/* submit */
#inquiry #submit { margin-top: 40px; }
@media screen and (max-width: 520px) { #inquiry #submit { text-align: center; } }
#inquiry #submit li { display: inline-block; margin-right: 20px; width: 280px; }
@media screen and (max-width: 520px) { #inquiry #submit li { display: block; margin: 10px auto; } }
#inquiry #submit input { background: #e70; transition: all 0.4s ease; }
#inquiry #submit input:hover { background: #e40; transition: all 0.4s ease; }

/* thanks */
#inquiry #thanksMessage dl { margin-top: 20px; }
#inquiry #thanksMessage dt { font-weight: bold; }

/* information */
#information { margin-top: 60px; padding-top: 40px; border-top: 1px solid #23292f; }
#information dt { font-size: 1.375rem; font-weight: bold; margin-bottom: 10px; }
#information dd.fax, #information dd.email { font-size: 1.125rem; line-height: 24px; padding-left: 30px; margin-top: 7px; }
#information dd.fax { background: url(../images/icon_fax.png) left center no-repeat; }
#information dd.email { background: url(../images/icon_email.png) left center no-repeat; }
