@charset "utf-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&amp;subset=japanese");
@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:wght@500&display=swap");

/*===============================

    common

================================*/
body {
  background-color: #fff;
  color: #333;
  font-family: "Helvetica Neue","Noto Sans JP","Yu Gothic",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",Arial,メイリオ,Meiryo,sans-serif;
  font-size: 16px;
  font-weight: 400;
  height: 100%;
  line-height: 1.6;
  text-align: left;
  width: 100%;
}

/*====== トップ画 ======*/
.keyvisual { margin-bottom: 30px; }
.keyvisual > img { vertical-align: bottom; }


/*
    大きいブロック
================================*/
.container { width: 100%; }
.container + .container { margin-top: 60px; }
.container > *:last-child { margin-bottom: 0; }

.sectionBox {}
.sectionBox { margin-bottom: 60px; }
.sectionBox > *:last-child { margin-bottom: 0; }

.sectionBox__inner { margin-bottom: 30px; }
.sectionBox__item { margin-bottom: 20px; }
.sectionBox__inner > *:last-child { margin-bottom: 0; }


/*
    見出し
================================*/
.headingPrimary {
  background-color: #164a84;/* default 青 */
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
  padding: 10px;
}

.headingPrimary--theme_orange { background-color: #F13F0F; }
.headingPrimary--theme_green { background-color: #027E06; }
.headingPrimary--theme_red { background-color: #f10f0f; }
.headingPrimary--theme_blue { background-color: #164a84; }

.headingSecondary {
  border-bottom: 2px solid #164a84;/* default 青 */
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

.headingSecondary--theme_orange { border-bottom-color: #F13F0F; }
.headingSecondary--theme_green { border-bottom-color: #027E06; }
.headingSecondary--theme_red { border-bottom-color: #f10f0f; }
.headingSecondary--theme_blue { border-bottom-color: #164a84; }


/*
    リンク
================================*/
/*====== リンクのラッパー ======*/
.linkBox {
  display: flex;
  margin: 20px 0;
}

.linkBox--align_right { justify-content: flex-end; }
.linkBox--align_center { justify-content: center; }

/*====== テキストリンク ======*/
.textLink {
  color: #052674;
  text-decoration: none;
}

.textLink:hover {
  color: #005580;
  text-decoration: underline;
}

/*====== アイコン付きリンク ======*/
.beforeHasIconlink {
  color: currentColor;
  display: flex;
  line-height: 1;
}

.beforeHasIconlink:hover { opacity: .6; }
.beforeHasIconlink--chevronRight { align-items: center; }

.beforeHasIconlink--chevronRight::before {
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  content: "";
  display: block;
  flex: 0 0 auto;
  height: .5em;
  line-height: 1;
  margin-right: .5em;
  transform: rotate(45deg);
  width: .5em;
}

/*
    テーブル
================================*/
/*====== カリキュラムのやつ ======*/
.curriculmTable {
  border-top: 1px solid #ffa500;
  border-right: 1px solid #ffa500;
  border-collapse: collapse;
  font-size: 15px;
  margin: 30px 0;
  table-layout: fixed;
  width: 100%;
}

.curriculmTable--theme_orange { border-color: #ffa500; }
.curriculmTable--theme_green { border-color: #90ee90; }
.curriculmTable--theme_red { border-color: #ffb6c1; }
.curriculmTable--theme_blue { border-color: #87cefa; }

.curriculmTable thead { background-color: #ffa500; }

.curriculmTable--theme_orange thead { background-color: #ffa500; }
.curriculmTable--theme_green thead { background-color: #90ee90; }
.curriculmTable--theme_red thead { background-color: #ffb6c1; }
.curriculmTable--theme_blue thead { background-color: #87cefa; }

.curriculmTable th {
  border-bottom: 1px solid #ffa500;
  border-left: 1px solid #ffa500;
  padding: 3px;
  text-align: center;
}

.curriculmTable--theme_orange th { border-color: #ffa500; }
.curriculmTable--theme_green th { border-color: #90ee90; }
.curriculmTable--theme_red th { border-color: #ffb6c1; }
.curriculmTable--theme_blue th { border-color: #87cefa; }

.curriculmTable th + th { border-left: 1px solid #fff; }

.curriculmTable .th_time { width: 10%; }
.curriculmTable .th_method { width: 15%; }

.curriculmTable td {
  border-bottom: 1px solid #ffa500;
  border-left: 1px solid #ffa500;
  padding: 5px;
}

.curriculmTable--theme_orange td { border-color: #ffa500; }
.curriculmTable--theme_green td { border-color: #90ee90; }
.curriculmTable--theme_red td { border-color: #ffb6c1; }
.curriculmTable--theme_blue td { border-color: #87cefa; }

.curriculmTable .td_time {
  text-align: center;
  vertical-align: middle;
}
.curriculmTable .td_method {
  vertical-align: middle;
}

