@charset "UTF-8";

/* =========================================================
   Base
========================================================= */

/* elements
----------------------------------------------- */
html {
  height: 100%;
}

body {
  width: 100%;
  height: 100%;
  line-height: 1.5;
  border: 0;
  background: url("./images/bg-pattern01.gif");
  font-size: 87.5%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
}

.body p {
  margin-left: 1em;
}

body,
td,
th,
select,
option,
input,
button,
textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Source Han Sans JP", "Noto Sans JP", "Helvetica Neue", "Hiragino Kaku Gothic ProN", Verdana, Meiryo, sans-serif;
  font-weight: normal;
}

input[type="text"],
select,
textarea {
  max-width: 100%;
  padding: 2px 5px;
  border: 1px solid #bbb;
  border-radius: 4px;
  font-size: 110%;
}

.submit,
.button_to {
  text-align: center;
}

#main input[type="image"],
#main input[type="submit"],
#main button:not(.gsc-search-button),
.submit_button {
  display: inline-block;
  margin: 0 10px;
  padding: 12px 80px;
  border: 0;
  border-radius: 6px;
  background-color: #cb3c15;
  color: #fff;
  font-size: 115%;
  text-decoration: none;
  cursor: pointer;
}

.submit_button:hover,
.submit_button:focus {
  background-color: #cb3c15 !important;
  color: #fff;
  opacity: 0.9;
}

.submit input:hover,
.submit input:focus,
.button_to input:hover,
.button_to input:focus {
  opacity: 0.9;
}

blockquote {
  margin: 10px 20px;
}

h1,
h2,
h3,
h4,
h5 {
  font-size: 115%;
  font-weight: bold;
}

img {
  width: auto;
  height: auto;
  max-width: 100%;
  border: 0;
  vertical-align: bottom;
}

img.external {
  margin: 0 0.25em;
  vertical-align: middle;
}

.maps img,
#map_canvas img,
#canvas img {
  max-width: none;
}

@media only screen and (max-width: 600px) {
  .iframe-content {
    position: relative;
    height: 0;
    padding-top: 56.25%;
    overflow: hidden;
  }

  .iframe-content iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .contentGpArticleDoc img {
    width: auto !important;
    height: auto !important;
  }
}

address,
cite,
dfn,
em,
var {
  font-style: normal;
  font-weight: normal;
}

strong {
  font-weight: bold;
}

pre {
  font-family: -apple-system, BlinkMacSystemFont, "Source Han Code JP", Osaka-mono, "メイリオ", monospace;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: auto;
}

sup,
sub {
  font-size: 85%;
}

sup {
  vertical-align: super;
}

sub {
  vertical-align: sub;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}

ul {
  list-style-position: outside;
  list-style-type: none;
}

li {
  list-style-position: outside;
}

rp,
rt {
  font-size: 80%;
  text-decoration: none;
}

a {
  background-color: transparent;
  color: #000;
}

a:visited {
  background-color: transparent;
}

a:hover,
a:focus {
  background-color: transparent;
  text-decoration: none;
}

a img:hover,
a img:focus {
  opacity: 0.9;
}

/* =========================================================
   Common Classes.
========================================================= */
/* Icons.
----------------------------------------------- */
.iconFile,
.iconDefault {
  min-height: 16px;
  padding-left: 22px;
  background-image: url("/_common/images/icons/default.png");
  background-repeat: no-repeat;
}

.iconBmp {
  background-image: url("/_common/images/icons/bmp.png");
}

.iconCsv,
.iconTxt {
  background-image: url("/_common/images/icons/default.png");
}

.iconDoc,
.iconDocx {
  background-image: url("/_common/images/icons/doc.png");
}

.iconGif {
  background-image: url("/_common/images/icons/gif.png");
}

.iconJpg,
.iconJpe,
.iconJpeg {
  background-image: url("/_common/images/icons/jpg.png");
}

.iconJtd {
  background-image: url("/_common/images/icons/jtd.png");
}

.iconLzh {
  background-image: url("/_common/images/icons/lzh.png");
}

.iconPdf {
  background-image: url("/_common/images/icons/pdf.png");
}

.iconPng {
  background-image: url("/_common/images/icons/png.png");
}

.iconMp4,
.iconMpg {
  background-image: url("/_common/images/icons/mpg.png");
}

.iconPpt,
.iconPptx {
  background-image: url("/_common/images/icons/ppt.png");
}

.iconXls,
.iconXlsx {
  background-image: url("/_common/images/icons/xls.png");
}

.iconZip {
  background-image: url("/_common/images/icons/zip.png");
}

/* Common
----------------------------------------------- */
/* more
---------------------- */
.more {
  text-align: right;
}

.more span {
  padding-right: 10px;
}

.contentGpCategory .more {
  padding: 10px;
  background-color: #fff;
}

@media only screen and (max-width: 600px) {
  .more {
    text-align: center;
  }

  .more a {
    display: block;
  }
}

/* pagination
---------------------- */
.pagination {
  padding: 10px 0;
  background-color: #fff;
  text-align: center;
}

.pagination a,
.pagination em,
.pagination span {
  display: inline-block;
  padding: 0 6px;
  vertical-align: middle;
}

.pagination .current {
  font-size: 150%;
  font-weight: bold;
  padding: 0 3px;
}

/* breadCrumbs
---------------------- */
#breadCrumbs::after {
  content: "";
  clear: both;
  display: block;
}

#breadCrumbs ol,
#breadCrumbs li {
  list-style: none;
}

#breadCrumbs li {
  display: inline-block;
}

#breadCrumbs li:not(:first-child)::before {
  content: ">";
  margin: 0 5px;
}

@media only screen and (max-width: 1200px) {
  #breadCrumbs {
    margin: 0 10px;
  }
}

@media only screen and (max-width: 600px) {
  #breadCrumbs ol:not(:first-child) {
    display: none;
  }
}

/* feed
---------------------- */
.feed {
  text-align: right;
}

ul.feed li {
  display: inline-block;
  padding: 0;
}

ul.feed li:first-child {
  margin-right: 2px;
}

ul.feed li a {
  display: block;
  line-height: 18px;
  padding: 0 3px;
  border-radius: 4px;
  background-color: #c85000;
  background-position: 3px center;
  background-repeat: no-repeat;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
}

ul.feed li:first-child a {
  padding-left: 16px;
  background-image: url("./images/ic-feed.svg");
}

.fb-wrapper {
  display: inline-block;
}

#sns.piece {
  margin: 20px auto;
  padding: 0;
}

.twitter-wrapper,
.g-wrapper,
.fb-wrapper,
.mixi-wrapper,
.line-wrapper {
  display: inline-block;
  line-height: 10px;
  vertical-align: top;
}

.twitter-wrapper iframe {
  width: 90px !important;
}

.g-wrapper div {
  width: 60px !important;
}

.dir-docs #sns {
  display: none;
}

#sns .pieceBody .fb-wrapper {
  display: inline;
  vertical-align: top;
}

.dir-docs .back-btn {
  display: none;
}

.back-btn,
.surveyForm .back {
  margin: 13px 0 20px;
  text-align: center;
}

.back-btn a,
.surveyForm .back a {
  background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #ffffff 0%, #f2f2f2 100%) repeat scroll 0 0;
  border: 1px solid #ccc;
  color: #000;
  display: block;
  margin: 0 auto;
  padding: 8px 0;
  text-decoration: none;
  width: 100px;
}

.pageTop {
  margin: 5px 0 30px;
  text-align: right;
}

/*.pageTop a {
  background-image: url("./images/ic-top.gif");
  background-position: left center;
  background-repeat: no-repeat;
  padding: 0 0 0 15px;
}*/

/* required
---------------------- */
.required {
  color: #ee0000;
}

.nowrap {
  white-space: nowrap;
}

.body p,
.cke_editable p {
  margin-bottom: 1em;
}

.body table p,
.cke_editable table p {
  margin: 0;
}

/* CKEditor templates
----------------------------------------------- */
.temp1::after,
.temp2::after,
.temp3::after,
.temp4::after {
  content: "";
  clear: both;
  display: block;
}

.temp1,
.temp2,
.temp3,
.temp4 {
  margin-bottom: 20px;
}

.temp1 .thumb {
  float: left;
  margin-bottom: 10px;
  margin-right: 20px;
}

.temp1 .thumb+div {
  float: left;
}

.temp1 ul,
.temp1 ol {
  display: inline-block;
  vertical-align: top;
}

.temp2 .thumb {
  float: right;
  margin-bottom: 10px;
  margin-left: 20px;
}

.temp3,
.temp4,
.temp8 {
  text-align: center;
  letter-spacing: -0.4em;
}

.temp8 {
  text-align: left;
}

.temp3 dl,
.temp4 dl,
.temp8 dl {
  display: inline-block;
  margin: 0 1%;
  vertical-align: bottom;
  letter-spacing: normal;
}

.temp3 dl {
  max-width: 49%;
}

.temp4 dl {
  max-width: 32%;
}

.temp8 dl {
  margin-bottom: 1em;
  vertical-align: top;
}

.temp8 dl ul {
  display: inline-block;
  text-align: left;
}

.temp3 dl:first-child,
.temp4 dl:first-child {
  margin-left: 0;
}

.temp3 dl:last-child,
.temp4 dl:last-child {
  margin-right: 0;
}

.temp3 dl dt,
.temp4 dl dt,
.temp8 dl dt {
  margin-bottom: 10px;
  text-align: center;
}

.temp3 dl dd,
.temp4 dl dd,
.temp8 dl dd {
  text-align: center;
}

table.temp5 {
  width: 100%;
}

.temp7 {
  margin: 10px 0;
  padding: 10px;
  border: 1px solid #ffaaaa;
  background-color: #fff3f3;
}

.temp7 p {
  margin: 0 0 10px;
}

.body table,
.cke_editable table {
  width: auto;
  max-width: 100%;
  margin: 0 0 1em;
  border: 0;
}

.body caption,
.cke_editable caption {
  font-size: 105%;
  font-weight: 500;
  text-align: center;
}

.body th,
.body td,
.cke_editable th,
.cke_editable td {
  padding: 12px 16px;
  border: 2px solid #fff;
  vertical-align: middle;
}

.body th,
.cke_editable th {
  background-color: #e7e7e7;
  font-weight: 500;
  white-space: nowrap;
  text-align: left;
}

.body td,
.cke_editable td {
  background-color: #f2f2f2;
}

.body ul,
.cke_editable ul {
  margin-left: 1.5em;
}

.mailmagazine>.body ul {
  margin: 0;
}

.body table ul,
.cke_editable table ul {
  list-style: none;
  margin: 0;
}

.courses .body table {
  min-width: 63%;
  margin: 0;
}

.courses .body th {
  min-width: 5.5em;
}

.body table[border="0"],
.body table[border="0"] th,
.body table[border="0"] td,
.cke_editable table[border="0"],
.cke_editable table[border="0"] th,
.cke_editable table[border="0"] td {
  border: 0;
  background-color: transparent;
}

@media only screen and (max-width: 1200px) {
  .temp3 dl {
    max-width: 48.2%;
  }

  .temp4 dl {
    max-width: 31.5%;
  }
}

@media only screen and (max-width: 600px) {

  .temp1 .thumb,
  .temp1 .thumb+div,
  .temp2 .thumb {
    float: none;
    margin: 0 0 10px;
  }

  .temp3 dl,
  .temp4 dl,
  .temp3 dl:first-child,
  .temp4 dl:first-child,
  .temp3 dl:last-child,
  .temp4 dl:last-child {
    max-width: 100%;
    margin: 0 1% 2%;
  }

  .temp8 {
    text-align: center;
  }
}

/* adobeReader download
----------------------------------------------- */
.adobeReader,
.temp7 {
  clear: both;
  padding: 10px 20px 10px 196px;
  border: 1px solid #ffaaaa;
  background: #fff3f3 url("./images/adobe_bn.png") no-repeat scroll 20px center;
}

@media only screen and (max-width: 600px) {

  .adobeReader,
  .temp7 {
    padding: 10px 20px;
    background-image: none;
  }
}

/* =========================================================
   accessibility-tool
========================================================= */
.col2.toolOn #accessibilityTool {
  width: 1200px;
}

#accessibilityTool .pieceContainer {
  text-align: right;
}

#accessibilityTool .pieceBody {
  display: inline-block;
  min-height: 39px;
  padding: 5px 0 0;
}

/* block-skip
----------------------------------------------- */
#nocssread {
  float: left;
}

#nocssread a {
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
}

#nocssread a:focus,
#nocssread a.show {
  width: auto;
  height: auto;
  padding: 0 10px;
  background-color: #f2cfd8;
}

/* tools
----------------------------------------------- */
#accessibilityTool .pieceBody ul {
  float: right;
}

#accessibilityTool .pieceBody li ul {
  float: none;
}

#accessibilityTool .pieceBody ul,
#accessibilityTool .pieceBody li {
  display: inline-block;
}

#accessibilityTool .pieceBody>ul>li {
  margin-left: 5px;
  vertical-align: middle;
}

#accessibilityTool .pieceBody>ul>li:first-child {
  margin-left: 0;
  padding-left: 0;
  border-left: 0;
}

#accessibilityTool .pieceBody li.translate,
#accessibilityTool .pieceBody li.search {
  margin: 2px 0 0 5px;
}

.goog-te-gadget-simple {
  border: 0 !important;
}

#accessibilityTool .pieceBody li.search {
  margin-left: 0;
  padding-left: 5px;
  border-left: 0;
}

#accessibilityTool .pieceBody li.search input[type="text"] {
  padding: 2px;
  border: 0;
}

#accessibilityTool .pieceBody li li {
  margin-left: 0;
  padding: 0;
  border-left: 0;
}

#accessibilityTool .pieceBody a {
  color: #000;
  text-decoration: none;
}

#accessibilityTool .pieceBody li span {
  display: inline-block;
}

#accessibilityTool .pieceBody li span#navigationTalkPlayer {
  vertical-align: middle;
}

#naviTalkPlayer {
  margin-left: 5px;
}

.col2.toolOn #navigationTalkCreatingFileNotice {
  position: absolute;
  top: 5px;
  right: 10px;
}

#accessibilityTool .pieceBody li.nocssread a:focus,
#accessibilityTool .pieceBody li.nocssread a:hover,
#accessibilityTool .pieceBody li.talk a:focus,
#accessibilityTool .pieceBody li.talk a:hover,
#accessibilityTool .pieceBody li.ruby a:focus,
#accessibilityTool .pieceBody li.ruby a:hover {
  color: #0045a4;
}

#accessibilityTool .pieceBody li li a {
  display: inline-block;
  margin: 0 1px;
  padding: 0 3px;
}

#accessibilityTool .pieceBody li li a:focus,
#accessibilityTool .pieceBody li li a:hover {
  color: #000;
}

#accessibilityTool .pieceBody .fontSize a {
  background-color: #fff;
}

#accessibilityTool .pieceBody .fontSize a#fontMiddle,
#accessibilityTool .pieceBody .fontSize a:hover,
#accessibilityTool .pieceBody .fontSize a:focus {
  background-color: #010050;
  color: #fff;
}

#accessibilityTool .pieceBody .themeColor #themeBlack {
  background-color: #000;
  color: #fff;
}

#accessibilityTool .pieceBody .themeColor #themeBlue {
  background-color: #1745cc;
  color: #fff;
}

#accessibilityTool .pieceBody .themeColor #themeWhite {
  background-color: #fff;
}

#accessibilityTool .pieceBody img {
  vertical-align: middle;
}

#accessibilityTool .pieceBody img.kugiri {
  padding: 0 5px;
}

.head-tools {
  width: 100%;
  margin: 0;
  padding: 4px 0 3px;
  background-position: left top;
  text-align: right;
}

#furiganaAttention {
  padding-left: 15px;
  padding-top: 5px;
  background-color: #ececec;
  font-size: 120%;
  text-align: center;
}

.rubyOn #furiganaAttention {
  display: block;
}

.head-tools a {
  margin-right: 8px;
}

.head-tools img {
  margin-right: 3px;
  vertical-align: middle;
}

img.font {
  margin-top: 3px;
}

#navigationNotice {
  padding: 6px 10px;
  background-color: #ddd;
  font-weight: bold;
}

#accessibilityTool .pieceBody li.search {
  width: 18em;
  letter-spacing: -0.4em;
}

@media only screen and (max-width: 600px) {
  #accessibilityTool {
    border: 0;
  }

  #accessibilityTool .pieceContainer {
    width: auto;
    text-align: center;
  }

  #accessibilityTool .pieceBody {
    display: block;
    min-height: 0;
    padding: 10px 10px 5px;
  }

  #accessibilityTool .pieceBody ul {
    display: block;
    float: none;
  }

  #accessibilityTool .pieceBody li:not(.translate):not(.search) {
    display: none;
  }

  #accessibilityTool .pieceBody li.sns,
  #accessibilityTool .pieceBody li.sns li {
    display: block !important;
  }

  #accessibilityTool .pieceBody li.sns ul {
    display: flex;
    justify-content: space-around;
  }

  #accessibilityTool .pieceBody li.sns li {
    width: 60px;
  }

  #accessibilityTool .pieceBody li.sns li a,
  #accessibilityTool .pieceBody li.sns li img {
    display: block;
    width: 100%;
  }

  #accessibilityTool .pieceBody>ul>li.translate,
  #accessibilityTool .pieceBody>ul>li.search {
    display: inline-block;
    width: auto;
    margin: 0 0 5px;
    padding: 0;
    border: 0;
  }

  #accessibilityTool .pieceBody>ul>li.search {
    display: block;
  }
}

/* google custom search
----------------------------------------------- */
#___gcse_0 * {
  box-sizing: content-box;
  margin-right: 0;
}

#gsearchresult table,
#gsearchresult th,
#gsearchresult td {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

form.gsc-search-box,
table.gsc-search-box {
  margin-bottom: 0 !important;
}

#___gcse_0>.gsc-control-cse {
  background-color: transparent !important;
  border: medium none !important;
  padding: 0 !important;
}

#___gcse_0 .gsc-input-box {
  padding: 0;
  text-indent: 5px;
}

.gsc-search-box-tools .gsc-search-box .gsc-input {
  padding: 0 !important;
}

.gsib_a {
  padding: 0 3px !important;
}

.cse .gsc-search-button input.gsc-search-button-v2,
input.gsc-search-button-v2 {
  padding: 6px !important;
}

.cse .gsc-search-button input.gsc-search-button-v2,
input.gsc-search-button-v2,
input.gsc-search-button,
input.gsc-search-button:hover,
input.gsc-search-button:focus {
  margin: 0 !important;
}

.gsib_a,
.gsst_a {
  padding-top: 0 !important;
  vertical-align: baseline !important;
}

.cse .gsc-control-cse,
.gsc-control-cse {
  padding: 0 !important;
}

.gsc-results .gsc-cursor-box {
  text-align: center;
}

@media only screen and (max-width: 600px) {
  #___gcse_0 .gsc-input-box {
    height: 38px;
  }

  #accessibilityTool .pieceBody li.search input[type="text"] {
    height: 100% !important;
  }
}

/* clearfix
----------------------------------------------- */
.clearfix::after {
  content: "";
  clear: both;
  display: block;
}

.flex {
  display: flex;
}

.flex>div {
  flex: 1;
}

@media only screen and (max-width: 600px) {
  .flex {
    flex-wrap: wrap;
  }

  .flex>div {
    flex-basis: 100%;
  }
}

/* =========================================================
   category / sitemap
========================================================= */
.contentGpCategoryCategoryTypes>section,
.contentGpCategoryCategoryType>section,
.contentGpCategory>section,
.sitemap li.level1,
.contentReceptionCourse>ul>li,
.contentReceptionCourse>section {
  margin-bottom: 20px;
}

.contentGpCategoryCategoryType>section>h2,
.contentGpCategoryCategoryType>section>ul>li,
.sitemap li.level2 a,
.contentReceptionCourse li li:not(:last-child),
.contentReceptionCourse>section>ul>li {
  margin-bottom: 2px;
}

.contentGpCategory>section>h2+.docs {
  margin-top: 20px;
}

.contentGpCategoryCategoryTypes>section>h2>a,
.contentGpCategoryCategoryType>section>h2>a,
.contentGpCategory>section>h2>a,
.sitemap li.level1>a,
.body h2,
.cke_editable h2,
.contentGpArticleDoc .tags h2,
.contentGpArticleDocs .docs h2,
.contentTagTag h2,
.contentGpCategoryCategory .mailmagazine h2,
.contentReceptionCourse>ul>li>a,
.contentReceptionCourse>section>h2>a,
body[class^="dir-koza-categories-"] .contentReceptionCourse>.categoryType>h2 {
  display: block;
  padding: 8px 15px;
  background: url("./images/bg-pattern02.gif");
  color: #010050;
  text-decoration: none;
}

.contentReceptionCourse>ul>li>a,
.sitemap li.level1>a {
  font-weight: bold;
}

.contentGpCategoryCategoryTypes>section>h2>a:hover,
.contentGpCategoryCategoryTypes>section>h2>a:focus,
.contentGpCategoryCategoryType>section>h2>a:hover,
.contentGpCategoryCategoryType>section>h2>a:focus,
.contentGpCategory>section>h2>a:hover,
.contentGpCategory>section>h2>a:focus,
.sitemap li.level1>a:hover,
.sitemap li.level1>a:focus,
.contentReceptionCourse>ul>li>a:hover,
.contentReceptionCourse>ul>li>a:focus,
.contentReceptionCourse>section>ul>li>a:hover,
.contentReceptionCourse>section>ul>li>a:focus {
  opacity: 0.9;
}

.contentGpCategoryCategoryType>section>ul>li>a,
.sitemap li.level2 a,
.contentReceptionCourse li li a,
.contentReceptionCourse>section>ul>li>a {
  display: block;
  padding: 8px 15px;
  background-color: #fff;
}

.sitemap li.level3>a {
  padding-left: 30px;
}

.sitemap li.level4>a {
  padding-left: 45px;
}

.contentGpCategoryCategoryTypes .categoryTypeTakumi,
.contentGpCategoryCategoryTypes .categoryTypeKurashi,
.contentGpCategoryCategoryTypes .categoryTypeCareer,
.contentGpCategoryCategoryTypes .categoryTypeShigoto {
  display: none;
}

/* =========================================================
   contentPage / contentGpArticleDoc
========================================================= */
.contentPage,
.contentGpArticleDoc,
.contentGpArticleDocs .docs,
.contentGpCategoryCategory .mailmagazine,
.contentGpCategoryCategory .docs-list,
.contentTagTag,
.dir-tags #contentBody>ul,
#gsearchresult {
  padding: 30px;
  background-color: #fff;
}

.report .contentGpArticleDocs .docs {
  padding: 0;
  background-color: transparent;
}

.contentPage .body,
.cke_editable {
  line-height: 1.6;
}

.contentGpArticleDoc>div:not(.date):not(:last-child) {
  margin-bottom: 30px;
}

.contentGpArticleDoc .date {
  margin-bottom: 1em;
  text-align: right;
}

.contentGpArticleDocs {
  position: relative;
}

.contentGpArticleDocs .feed {
  position: absolute;
  top: -65px;
  right: 10px;
}

.body h2,
.contentGpCategoryCategory .mailmagazine h2,
.contentGpArticleDocs .docs h2,
.body h3,
.body table,
.body ul,
.contentGpCategoryCategory .docs ul,
.body ol,
.rels ul,
.contentGpArticleDoc .tags h2,
.contentGpArticleDoc .tags ul,
.contentTagTag h2,
.contentTagTag ul,
.cke_editable h2,
.cke_editable h3,
.cke_editable table,
.cke_editable ul,
.cke_editable ol {
  margin-bottom: 1em;
}

.body h2:not(:first-child),
.cke_editable h2:not(:first-child) {
  margin-top: 1em;
}

.body ol,
.cke_editable ol {
  margin-left: 3em;
}

.contentTagTag ul,
.contentGpArticleDoc .tags ul {
  padding: 0 15px;
}

.body span ul,
.cke_editable span ul {
  margin-left: 0;
}

.body h3,
.cke_editable h3 {
  margin: 1.5em 0 0.75em;
  padding-left: 10px;
  border-bottom: 1px solid #010052;
  border-left: 5px solid #010052;
  color: #010052;
}

.body p.asterisk::before,
.cke_editable p.asterisk::before {
  content: "※";
}

.body p.asterisk,
.cke_editable p.asterisk {
  padding-left: 1em;
  text-indent: -1em;
}

.contentPage .body ul li::before,
.contentGpArticleDoc .body ul li::before,
.contentGpCategoryCategory .docs li::before,
.rels li::before,
.cke_editable ul li::before,
  {
  content: "・";
}

.body li,
.cke_editable li {
  margin-bottom: 5px;
}

.contentPage .body ul li,
.contentGpArticleDoc .body ul li,
.contentGpCategoryCategory .docs li,
.rels li,
.cke_editable ul li {
  margin-bottom: 5px;
  padding-left: 1em;
  text-indent: -1em;
}

.body ul.square li::before,
.cke_editable ul.square li::before {
  content: "■";
}

.body ul.diamond li::before,
.cke_editable ul.diamond li::before {
  content: "◆";
}

.body ul.rentalRoom li::before,
.cke_editable ul.rentalRoom li::before {
  color: #7d0013;
}

.body ul.officeRoom li::before,
.cke_editable ul.officeRoom li::before {
  color: #339900;
}

.body ul.otherRoom li::before,
.cke_editable ul.otherRoom li::before {
  color: #cc9900;
}

.body ul.line,
.cke_editable ul.line {
  letter-spacing: -0.4em;
}

.body ul.line li,
.cke_editable ul.line li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
}

.body ul.line li:not(:last-child),
.cke_editable ul.line li:not(:last-child) {
  margin-right: 1em;
}

.body .table,
.cke_editable .table {
  display: inline-block;
  margin-bottom: 1em;
  padding: 12px 16px;
  background-color: #f2f2f2;
}

.body .table ul,
.cke_editable .table ul {
  margin: 0;
  padding: 0;
}

.contentGpArticleDoc .body ul.kuromaru li::before,
.cke_editable ul.kuromaru li::before {
  content: "●";
}

.contentGpArticleDoc .tags ul {
  letter-spacing: -0.4em;
}

.contentGpArticleDoc .tags li {
  display: inline-block;
  letter-spacing: normal;
}

.contentGpArticleDoc .tags li:not(:last-child)::after {
  content: "・"
}

.contentGpCategoryCategory .about,
.contentGpCategoryCategory .body {
  margin-bottom: 2em;
}

.contentGpCategoryCategory p {
  margin-bottom: 1em;
}

.mailmagazine .more {
  display: none;
}

.contentGpArticleDocs .docs li,
.contentTagTag li,
.dir-tags #contentBody>ul>li {
  margin-bottom: 5px;
  padding-left: 15px;
  background: url("./images/ic-list01.png") no-repeat left 0.35em;
}

/* =========================================================
   contentReceptionCourse
========================================================= */
.contentReceptionCourse .courses>li,
.report article,
.report .categoryType .docs li {
  margin-bottom: 25px;
  background-color: #fff;
}

.courses .body::after,
.report article>.body::after,
.report .categoryType .docs li .body::after {
  content: "";
  clear: both;
  display: block;
}

.courses .body,
.report article>.body,
.report .categoryType .docs li .body {
  display: block;
  padding: 25px 30px 30px;
}

.report article.contentGpArticleDoc>.body {
  padding: 0;
}

.contentReceptionCourse h2.title {
  padding: 8px 8px 8px 45px;
  background-image: url("./images/ic-title.png"), url("./images/bg-pattern02.gif");
  background-position: 14px center, left top;
  background-repeat: no-repeat, repeat;
  color: #010052;
}

.contentReceptionCourse h2.title a {
  color: inherit;
  text-decoration: none;
}

.contentReceptionCourse h2.title a:hover,
.contentReceptionCourse h2.title a:focus {
  text-decoration: underline;
}

@media (max-width: 600px) {
  .contentReceptionCourse h2.title a {
    display: block;
  }
}

.report article>h2,
.report .categoryType .docs li h2 {
  padding: 8px;
  background: url("./images/bg-pattern02.gif");
  color: #010052;
}

.report article>h2 a,
.report .categoryType .docs li h2 a {
  text-decoration: none;
}

.report article>h2 a:hover .title,
.report article>h2 a:focus .title,
.report .categoryType .docs li h2:hover .title,
.report .categoryType .docs li h2:focus .title {
  text-decoration: underline;
}

.report article .category span {
  display: inline-block;
  margin-right: 0.5em;
  padding: 0 4px;
  border-radius: 4px;
  background-color: #010050;
  color: #fff;
  font-weight: 500;
}

.report article .publish_date,
.report .categoryType .docs li .publish_date {
  margin-left: 1em;
}

.contentReceptionCourse>h2 {
  display: none;
}

.contentReceptionCourse h3.subtitle,
.modaal-wrapper h3 {
  margin: 0 0 1em;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #010052;
  background: none;
  color: #010052;
}

.contentReceptionCourse h3.subtitle:empty {
  display: none;
}

.courses .summary,
.modaal-wrapper p {
  margin-bottom: 1em;
}

.courses .body p {
  margin-left: 0;
}

.courses .body p:last-child {
  margin-bottom: 0;
}

.courses .body .hold_dates li {
  margin-bottom: 3px;
}

.courses .body .hold_dates li>span:first-child {
  text-decoration: underline;
}

.courses .body .hold_dates li .link {
  display: inline-block;
  margin-left: 0.5em;
}

.courses .body .hold_dates li .link span {
  background-color: #000;
}

.courses .body .hold_dates li .link span,
.courses .body .hold_dates li .link a {
  display: block;
  width: 4.5em;
  padding: 0 2px;
  border-radius: 4px;
  color: #fff;
  text-align: center;
}

.courses .body .hold_dates li .link a {
  background-color: #cb3c15;
  text-decoration: none;
}

.courses .body .link a:hover,
.courses .body .link a:focus {
  opacity: 0.9;
}

/* =========================================================
   contentReceptionCourse Form
========================================================= */
.surveyForms,
.surveyForm,
.contentReceptionApplicant {
  padding: 0 30px 30px;
  background-color: #fff;
}

.surveyForm {
  padding-top: 30px;
}

.contentReceptionApplicant .courses>li {
  margin-bottom: 0;
}

.surveyForms h2,
.surveyForm h2,
.contentReceptionApplicant h2.title,
.contentReceptionApplicant>h2,
.modaal-wrapper h2 {
  padding: 15px 15px 15px 60px;
  background-image: url("./images/ic-h1.png"), url("./images/bg-pattern03.gif");
  background-position: 18px center, left top;
  background-repeat: no-repeat, repeat;
  color: #000;
  font-size: 140%;
}

.surveyForms h2,
.surveyForm h2,
.contentReceptionApplicant>h2,
.modaal-wrapper h2 {
  margin-bottom: 1em;
}

.contentReceptionApplicant>h2+div:not(.questions) {
  padding: 25px 0;
  text-align: center;
}

.contentReceptionApplicant form.edit_item #seq_no {
  margin: 10px 0 25px;
}

.contentReceptionApplicant .courses .body {
  padding: 25px 0 30px;
}

.surveyForms .form:not(:last-child) {
  margin-bottom: 3em;
}

.surveyForms h3.subtitle,
.surveyForm h3.subtitle,
.contentReceptionApplicant h3.subtitle {
  margin: 0 0 1em;
  padding: 0;
  border: 0;
  background: none;
  color: #7c0113;
}

.surveyForms h3,
.surveyForm h3 {
  margin: 0;
  border: 0;
}

.surveyForms h3,
.surveyForm h3,
.contentReceptionApplicant>h3 {
  margin-bottom: 1em;
  padding: 6px 15px;
  border-top: 3px solid #010050;
  background: url("./images/bg-pattern05.gif");
}

.surveyForms .summary p,
.surveyForm .body p,
.contentReceptionApplicant>.body p {
  margin-bottom: 1em;
}

.surveyForms .summary p.noMargin,
.surveyForm .body p.noMargin,
.contentReceptionApplicant>.body p.noMargin {
  margin-bottom: 0;
}

.surveyForms .summary ul,
.surveyForm .body ul,
.contentReceptionApplicant>.body ul {
  list-style: none;
  margin: 0;
}

.surveyForms .summary li::before,
.surveyForm>.body li::before,
.contentReceptionApplicant>.body li::before {
  content: "・";
}

.surveyForm .questions,
.contentReceptionApplicant .questions {
  padding-top: 25px;
}

.surveyForm .question,
.contentReceptionApplicant .question {
  margin-bottom: 30px;
}

.surveyForm .question_content,
.surveyForm .answer_content,
.contentReceptionApplicant .question_content,
.contentReceptionApplicant .answer_content {
  margin-bottom: 20px;
}
/*
.surveyForm .question .answer_content label {
  display: block;
}
*/
.surveyForm .question_content,
.contentReceptionApplicant .question_content {
  padding: 5px 8px;
  background: url("./images/bg-pattern05.gif");
  font-weight: bold;
}

.surveyForm input[type="text"],
.contentReceptionApplicant input[type="text"] {
  width: 38%;
}

.surveyForm textarea,
.contentReceptionApplicant textarea {
  width: 100%;
  height: 5em;
}

.surveyForm .note,
.contentReceptionApplicant form .note {
  margin-left: 1em;
}

.surveyForm .note {
  color: #ee0000;
}

.contentReceptionApplicant form .note {
  color: #cc0000;
}

.surveyForm #errorExplanation,
.contentReceptionApplicant #errorExplanation {
  margin: 1em 0;
  padding: 10px;
  border: 1px solid #ffaaaa;
  border-radius: 7px;
  background-color: #fff3f3;
  color: #dd0000;
}

.surveyForm #errorExplanation {
  margin-bottom: 0;
}

.surveyForm #errorExplanation h2 {
  margin: 0;
  background: none;
}

.surveyForm #errorExplanation h2,
.contentReceptionApplicant #errorExplanation h2 {
  padding: 0;
  color: #dd0000;
}

.surveyForm #errorExplanation li::before,
.contentReceptionApplicant #errorExplanation li::before {
  content: "・";
}

.contentReceptionApplicant .question_content .field_with_errors {
  display: inline-block;
  padding: 0 0.25em;
  border: 1px solid #ee0000;
}

@media only screen and (max-width: 600px) {

  .surveyForm input[type="text"],
  .contentReceptionApplicant input[type="text"] {
    width: auto;
  }

  .contentReceptionApplicant input[type="submit"]:first-child {
    margin-bottom: 10px;
  }
}

/* report
----------------------------------------------- */
.body .alignright,
.cke_editable .alignright {
  float: right;
  margin: 0 0 10px 15px;
}

/* responsive table
----------------------------------------------- */
@media (max-width: 600px) {

  .body table,
  .cke_editable table {
    width: 100%;
  }

  .scroll {
    margin-bottom: 1em;
    overflow: auto;
    white-space: nowrap;
  }

  .scroll::-webkit-scrollbar {
    height: 15px;
  }

  .scroll::-webkit-scrollbar-track {
    background: url("./images/bg-pattern02.gif");
  }

  .scroll::-webkit-scrollbar-thumb {
    background: #010050;
  }
}