@charset "UTF-8";
/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. フォント
　03. ヘッダー/フッター
　02. ベース
　03. インナー
　04. 背景
　05. レイアウト
　06. タイトル
　07. リンク
　08. ボタン
　09. ボタンラッパー
　10. 注釈
　11. カード
　12. 検索
　13. ダウンロード説明
　14. 詳細ページパーツ

******************************************************************************* */
/* ==

　01. フォント

=============================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Zalando+Sans+Expanded:wght@200;500;600&display=swap");
/* ==

　02. ベース

=============================================================================== */
/* ヘッダー
------------------------------------------------------------------------------- */
/* 既存サイトと同様、追従時はTKCナビのみを表示する。 */
.r3Header .r3Header_second-fix {
  display: none;
}

.tHeader01 {
  position: relative;
  min-width: 950px;
  background-color: #2641a6;
  color: #ffffff;
}
.tHeader01.is-fixed {
  z-index: 1101;
  position: fixed;
  top: 0;
}
.tHeader01_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1240px;
  height: 64px;
  margin: 0 auto;
  padding: 0 1.25em;
}
.tHeader01_logo {
  display: block;
  flex-shrink: 0;
  width: 16.5em;
}
.tHeader01_logo img {
  width: 100%;
  height: auto;
}
.tHeader01_btn {
  display: none;
}
.tHeader01_nav {
  margin-left: 2em;
}
.tHeader01_list {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.tHeader01_item + .tHeader01_item {
  margin-left: 1.333em;
  padding-left: 1.333em;
  border-left: 1px solid rgba(255, 255, 255, 0.4);
}
.tHeader01_link {
  display: block;
  color: inherit;
  font-weight: 700;
  font-size: 125%;
  line-height: 1.06;
  text-decoration: none;
  white-space: nowrap;
}
.tHeader01_logo:focus, .tHeader01_btn:focus, .tHeader01_link:focus {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}
.tHeader01_logo:focus:not(:focus-visible), .tHeader01_btn:focus:not(:focus-visible), .tHeader01_link:focus:not(:focus-visible) {
  outline: none;
}

/* トピックスパス
------------------------------------------------------------------------------- */
.r3Breadcrumbs {
  background-color: transparent;
}

/* メイン
------------------------------------------------------------------------------- */
#main {
  width: 100%;
}

.tkcMain01 {
  min-width: 950px;
  font-size: clamp(10px, 6.122px + 0.408vw, 12px);
}

/* フッター
------------------------------------------------------------------------------- */
.tFooter01 {
  box-sizing: border-box;
  min-width: 950px;
  padding: 5em 1.666em;
  background-color: #444a61;
  color: #ffffff;
}
.tFooter01 * {
  box-sizing: border-box;
}
.tFooter01_inner {
  display: flex;
  align-items: flex-start;
  max-width: 1040px;
  margin: 0 auto;
}
.tFooter01_tit {
  flex-shrink: 0;
  width: 24.5%;
  margin: 0;
  padding-left: 0.312em;
  font-weight: 400;
  font-size: 134%;
  line-height: 1.37;
}
.tFooter01_list {
  display: flex;
  flex-wrap: wrap;
  width: 75.5%;
  margin: -1.334em 0 0;
  padding: 0;
  list-style: none;
}
.tFooter01_item {
  max-width: 100%;
  margin: 1.333em 4em 0 0;
}
.tFooter01_link {
  display: block;
  font-weight: 400;
  font-size: 117%;
  line-height: 1.57;
}
.tFooter01_tit a, .tFooter01_link {
  color: inherit;
  text-decoration: none;
}
.d_hover .tFooter01_tit a:hover, .d_hover .tFooter01_link:hover {
  text-decoration: underline;
}
.tFooter01_tit a:focus, .tFooter01_link:focus {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}
.tFooter01_tit a:focus:not(:focus-visible), .tFooter01_link:focus:not(:focus-visible) {
  outline: none;
}

/* ==

　03. インナー

=============================================================================== */
/* コンテンツインナー
------------------------------------------------------------------------------- */
.tInner01 {
  box-sizing: border-box;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.666em;
}

/* ==

　04. 背景

=============================================================================== */
/* 上部グリッド背景（余白は使用先で指定）
------------------------------------------------------------------------------- */
.tBg01 {
  position: relative;
  background-color: #f0f5ff;
}
.tBg01::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 21.666em;
  background: url("/tkc/common/images/rn/bg_grid01.png") left top/10px 10px repeat;
  background-image: -webkit-image-set(url("/tkc/common/images/rn/bg_grid01.webp") type("image/webp"), url("/tkc/common/images/rn/bg_grid01.png") type("image/png"));
  background-image: image-set(url("/tkc/common/images/rn/bg_grid01.webp") type("image/webp"), url("/tkc/common/images/rn/bg_grid01.png") type("image/png"));
  content: "";
  pointer-events: none;
}
.tBg01 > .tInner01 {
  position: relative;
}

/* ==

　05. レイアウト

=============================================================================== */
/* 3列カードレイアウト
------------------------------------------------------------------------------- */
.tGrid01 {
  display: flex;
  flex-wrap: wrap;
  margin: -2.667em 0 0;
  padding: 0;
  list-style: none;
}
.tGrid01_item {
  display: flex;
  width: 31.6%;
  margin-top: 2.666em;
  margin-right: 2.6%;
}
.tGrid01_item:nth-child(3n) {
  margin-right: 0;
}
.tGrid01_item[hidden] {
  display: none;
}

/* ==

　06. タイトル

=============================================================================== */
/* 下層ページタイトル
------------------------------------------------------------------------------- */
.tTitle01 {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 3.333em 0 3em;
}
.tTitle01_tit {
  display: flex;
  z-index: 1;
  position: relative;
  align-items: center;
  margin: 0;
  color: #1e1e1e;
  font-weight: 700;
  font-size: 167%;
  line-height: 1.4;
}
.tTitle01_tit::before {
  flex-shrink: 0;
  width: 64px;
  height: 2px;
  margin-right: 1.2em;
  background-color: #5579e5;
  content: "";
}
.tTitle01_en {
  position: absolute;
  top: 0;
  right: 0;
  color: #a9c3ff;
  font-weight: 200;
  font-size: 1200%;
  line-height: 1;
  font-family: "Zalando Sans Expanded", sans-serif;
  white-space: nowrap;
  pointer-events: none;
}

/* 関連記事タイトル
------------------------------------------------------------------------------- */
.tTitle02 {
  margin: 0;
  color: #2641a6;
  font-size: 100%;
  text-align: center;
}
.tTitle02_en {
  display: block;
  font-weight: 600;
  font-size: 200%;
  line-height: 1.33;
  font-family: "Zalando Sans Expanded", sans-serif;
}
.tTitle02_sub {
  display: block;
  margin-top: 0.571em;
  font-weight: 700;
  font-size: 117%;
  line-height: 1.42;
}

/* ==

　08. ボタン

=============================================================================== */
/* 基本ボタン
------------------------------------------------------------------------------- */
.tButton01 {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3em;
  padding: 0.625em 1.5em;
  border: 1px solid #5579e5;
  border-radius: 4px;
  background-color: transparent;
  color: #2641A6;
  font-weight: 700;
  font-size: 134%;
  line-height: 1.5;
  font-family: inherit;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
.tButton01-search {
  width: 16.625em;
  background-color: #5579e5;
  color: #ffffff;
}
.tButton01-search::before {
  width: 16px;
  height: 16px;
  margin-right: 0.625em;
  background: url("/tkc/common/images/rn/ico_search01.svg") center/contain no-repeat;
  content: "";
}
.tButton01-more {
  min-width: 11.25em;
  min-height: 3.25em;
  background-color: transparent;
}
.tButton01-more::after {
  width: 14px;
  height: 14px;
  margin-left: 0.625em;
  background: url("/tkc/common/images/rn/ico_more01.png") center/contain no-repeat;
  content: "";
}
.tButton01-all {
  max-width: 100%;
  padding-right: 3em;
  padding-left: 3em;
}
.tButton01-download {
  max-width: 100%;
  padding-right: 3em;
  padding-left: 3em;
  background-color: #5579E5;
  color: #ffffff;
}
.tButton01-download::before {
  width: 18px;
  height: 18px;
  margin-right: 0.625em;
  background: url("/tkc/common/images/rn/ico_download02.svg") center/contain no-repeat;
  content: "";
}
.tButton01-reset {
  min-height: 1.5em;
  padding: 0;
  border: 0;
  background-color: transparent;
  color: #2641A6;
}
.tButton01-reset::before {
  flex-shrink: 0;
  width: 22px;
  height: 16px;
  margin-right: 0.75em;
  background: url("/tkc/common/images/rn/ico_retuen01.svg") center/contain no-repeat;
  content: "";
}
.tButton01:focus {
  outline: 2px solid #2641a6;
  outline-offset: 3px;
}
.tButton01:focus:not(:focus-visible) {
  outline: none;
}

/* 一覧下部の操作ボタン
------------------------------------------------------------------------------- */
.tButtonArea01 {
  position: relative;
  margin-top: 4em;
  text-align: center;
}
.tButtonArea01_sub {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

/* 詳細下部の操作ボタン
------------------------------------------------------------------------------- */
.tButtonArea02 {
  margin-top: 6.666em;
  text-align: center;
}

/* ==

　11. カード

=============================================================================== */
/* 記事カード
------------------------------------------------------------------------------- */
.tCard01 {
  width: 100%;
  border-radius: 8px;
  background-color: #ffffff;
  color: #1e1e1e;
}
.tCard01_link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.tCard01_link:focus {
  outline: 2px solid #2641a6;
  outline-offset: 2px;
}
.tCard01_link:focus:not(:focus-visible) {
  outline: none;
}
.tCard01_img {
  position: relative;
  overflow: hidden;
  border-radius: 8px 8px 0 0;
}
.tCard01_img picture,
.tCard01_img img {
  display: block;
  width: 100%;
}
.tCard01_img img {
  height: auto;
}
.tCard01_new {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.5em 0.7em;
  background-color: #DF3B85;
  color: #ffffff;
  font-weight: 600;
  font-size: 150%;
  line-height: 1.3;
  font-family: "Zalando Sans Expanded", sans-serif;
}
.tCard01_body {
  padding: 1.666em 2.666em 2em;
}
.tCard01_tit {
  margin: 0;
  font-weight: 700;
  font-size: 167%;
  line-height: 1.4;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}
.tCard01_txt {
  margin: 1em 0 0;
  color: #666666;
  font-size: 100%;
  line-height: 1.41;
  word-break: normal;
}
.tCard01_tags {
  display: flex;
  flex-wrap: wrap;
  margin: 1.333em 0 0;
  padding: 0;
  list-style: none;
}
.tCard01_tagItem {
  display: flex;
}
.tCard01_tag {
  margin: 0.727em 0.545em 0 0;
  padding: 0.272em 0.727em;
  border-radius: 4px;
  background-color: #f0f5ff;
  color: #2641a6;
  font-size: 92%;
  line-height: 1.63;
  white-space: nowrap;
}
.tCard01_tag-category {
  background-color: #c6d8ff;
  font-weight: 700;
}

/* 最近の記事カード
------------------------------------------------------------------------------- */
.tCard01-small .tCard01_body {
  padding: 1.333em 2em 1.666em;
}
.tCard01-small .tCard01_tit {
  font-size: 134%;
  line-height: 1.37;
}

/* 最近の記事カード一覧
------------------------------------------------------------------------------- */
.tCardList01 {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}
.tCardList01_item {
  display: flex;
  width: calc((100% - 8em) / 4);
  margin-top: 2.666em;
  margin-right: 2.666em;
}
.tCardList01_item:nth-child(4n) {
  margin-right: 0;
}
.tCardList01_item:nth-child(n+9) {
  display: none;
}

/* ==

　12. 検索

=============================================================================== */
/* カテゴリー・タグ検索
------------------------------------------------------------------------------- */
.tSearch01 {
  display: flex;
  position: relative;
  align-items: flex-start;
  padding: 2.666em 0;
  color: #2641a6;
}
.tSearch01::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 12.9%;
  border-radius: 8px;
  background-color: #ffffff;
  content: "";
}
.tSearch01_head {
  position: relative;
  flex-shrink: 0;
  width: 29%;
  margin: 0.666em 0 0;
  font-size: 100%;
}
.tSearch01_toggle {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
}
.tSearch01_toggle:disabled {
  -webkit-text-fill-color: currentColor;
  color: inherit;
  opacity: 1;
}
.tSearch01_toggle:focus {
  outline: 2px solid #2641a6;
  outline-offset: 3px;
}
.tSearch01_toggle:focus:not(:focus-visible) {
  outline: none;
}
.tSearch01_tit {
  display: block;
  font-weight: 600;
  font-size: 533%;
  line-height: 1.12;
  font-family: "Zalando Sans Expanded", sans-serif;
}
.tSearch01_sub {
  display: block;
  margin-top: 0.571em;
  color: #1e1e1e;
  font-weight: 700;
  font-size: 117%;
  line-height: 1.42;
}
.tSearch01_body {
  box-sizing: border-box;
  position: relative;
  width: 71%;
  padding-right: 2.666em;
}
.tSearch01_row {
  display: flex;
  align-items: flex-start;
  margin: 0;
  padding: 0;
  border: 0;
}
.tSearch01_row + .tSearch01_row {
  margin-top: 1.666em;
}
.tSearch01_label {
  flex-shrink: 0;
  width: 11.1%;
  margin: 0.642em 0 0;
  font-weight: 700;
  font-size: 117%;
  line-height: 1.42;
}
.tSearch01_label-category {
  align-self: center;
  margin-top: 0;
}
.tSearch01_options {
  display: flex;
  flex-wrap: wrap;
  width: 88.9%;
  margin: -0.667em 0 0;
  padding: 0;
  list-style: none;
}
.tSearch01_tags {
  width: 88.9%;
}
.tSearch01_tags .tSearch01_options {
  width: auto;
  margin-left: -0.667em;
}
.tSearch01_tags .tSearch01_options + .tSearch01_options {
  margin-top: 0;
}
.tSearch01_tags .tSearch01_item {
  margin-right: 0;
  margin-left: 0.666em;
}
.tSearch01_item {
  margin: 0.666em 0.666em 0 0;
}
.tSearch01_item-category {
  width: 21.2%;
}
.tSearch01_option {
  display: block;
  position: relative;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
.tSearch01_option[aria-disabled=true] {
  cursor: default;
}
.tSearch01_option:focus {
  outline: 2px solid #2641a6;
  outline-offset: 2px;
}
.tSearch01_option:focus:not(:focus-visible) {
  outline: none;
}
.tSearch01_input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.tSearch01_choice {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 3px;
  background-color: #f0f5ff;
}
.tSearch01_input:checked + .tSearch01_choice, .tSearch01_option[aria-current=page] .tSearch01_choice {
  background-color: #ffffff;
}
.tSearch01_input:checked + .tSearch01_choice::after, .tSearch01_option[aria-current=page] .tSearch01_choice::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid #00ACA6;
  border-radius: inherit;
  content: "";
  pointer-events: none;
}
.tSearch01_input:focus + .tSearch01_choice {
  outline: 2px solid #2641a6;
  outline-offset: 2px;
}
.tSearch01_input:focus:not(:focus-visible) + .tSearch01_choice {
  outline: none;
}
.tSearch01_img {
  display: block;
}
.tSearch01_img img {
  display: block;
  width: 100%;
  height: auto;
}
.tSearch01_name {
  display: block;
  padding: 0.642em 1.142em;
  font-size: 117%;
  line-height: 1.42;
  white-space: nowrap;
}
.tSearch01_item-category .tSearch01_choice {
  background-color: #c6d8ff;
}
.tSearch01_item-category .tSearch01_input:checked + .tSearch01_choice, .tSearch01_item-category .tSearch01_option[aria-current=page] .tSearch01_choice {
  background-color: #ffffff;
}
.tSearch01_item-category .tSearch01_name {
  padding: 0.642em 0.285em;
  font-weight: 700;
  text-align: center;
}
.tSearch01_submit {
  margin-top: 2em;
  padding-left: 11.1%;
}
.tSearch01-compact {
  padding: 2em 0;
}
.tSearch01-compact::before {
  left: 9.7%;
}
.tSearch01-compact .tSearch01_head {
  width: 22.6%;
  margin-top: 1em;
}
.tSearch01-compact .tSearch01_tit {
  font-size: 317%;
  line-height: 1.26;
}
.tSearch01-compact .tSearch01_sub {
  margin-top: 0.4em;
  font-size: 84%;
  line-height: 1.6;
}
.tSearch01-compact .tSearch01_body {
  width: 77.4%;
}
.tSearch01-compact .tSearch01_row + .tSearch01_row {
  margin-top: 1.666em;
}
.tSearch01-compact .tSearch01_item-category {
  width: auto;
}
.tSearch01-compact .tSearch01_img {
  display: none;
}
.tSearch01-compact .tSearch01_name {
  padding: 0.214em 1.142em;
  font-size: 117%;
  line-height: 1.42;
}
.tSearch01-compact .tSearch01_row > .tSearch01_options, .tSearch01-compact .tSearch01_tags {
  width: 89.9%;
}
.tSearch01-compact .tSearch01_tags {
  min-height: 2.166em;
}
.tSearch01-compact .tSearch01_label {
  width: 10.1%;
  margin-top: 0.214em;
}
.tSearch01-compact .tSearch01_submit {
  margin-top: 1.666em;
  padding-left: 10.1%;
}
.tSearch01-compact .tSearch01_submit .tButton01 {
  min-height: 2em;
  padding-top: 0.187em;
  padding-bottom: 0.187em;
}

/* 検索・おすすめ一覧の余白
------------------------------------------------------------------------------- */
.tSearchArea01 {
  padding: 4.666em 0 6.666em;
}
.tSearchArea01-sub {
  padding-top: 0;
  background-color: #edf3ff;
}
.tSearchArea01_results {
  margin-top: 4.666em;
}
.tSearchArea01_conditions {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1.666em -2em;
  padding: 0;
  list-style: none;
}
.tSearchArea01_conditions-category {
  min-height: calc(24px + 1em);
}
.tSearchArea01_condition {
  display: flex;
  align-items: center;
  min-width: 0;
  margin: 0 0 0.666em 1.333em;
  color: #1e1e1e;
  font-weight: 700;
  font-size: 150%;
  line-height: 1.33;
}
.tSearchArea01_condition::before {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-right: 0.666em;
  background: url("/tkc/common/images/rn/ico_check01.svg") center/contain no-repeat;
  content: "";
}
.tSearchArea01_more {
  margin-top: 4em;
  text-align: center;
}
.tSearchArea01_more[hidden] {
  display: none;
}

/* ==

　13. ダウンロード説明

=============================================================================== */
/* 資料ダウンロードの案内
------------------------------------------------------------------------------- */
.tDownload01 {
  position: relative;
  margin-top: 4.666em;
  color: #1e1e1e;
}
.tDownload01_head {
  padding-left: 12em;
}
.tDownload01_img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 9.333em;
  height: auto;
}
.tDownload01_tit {
  margin: 0;
  font-weight: 700;
  font-size: 200%;
  line-height: 1.41;
  letter-spacing: -0.02em;
}
.tDownload01_body {
  margin: 1.333em 0 0 12em;
}
.tDownload01_txt {
  margin: 0;
  font-size: 134%;
  line-height: 1.87;
}

/* ==

　14. 詳細ページパーツ

=============================================================================== */
/* 詳細記事
------------------------------------------------------------------------------- */
.tDetail01 {
  padding: 4em 0 6.666em;
  border-radius: 8px;
  background-color: #ffffff;
  color: #1e1e1e;
}
.tDetail01_mainImg {
  width: 71%;
  max-width: 880px;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 4px;
}
.tDetail01_img {
  display: block;
}
.tDetail01_img img {
  display: block;
  width: 100%;
  height: auto;
}
.tDetail01_movie {
  position: relative;
  width: 82.6%;
  max-width: 1024px;
  margin: 0 auto;
}
.tDetail01_movie-jstream::before {
  display: block;
  padding-top: 56.25%;
  content: "";
}
.tDetail01_movie-jstream iframe,
.tDetail01_movie-jstream video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.tDetail01_inner {
  width: 58.1%;
  max-width: 720px;
  margin: 4em auto 0;
}
.tDetail01_tit {
  margin: 0;
  font-weight: 700;
  font-size: 267%;
  line-height: 1.37;
  line-break: strict;
  overflow-wrap: break-word;
}
.tDetail01_tit-message {
  line-height: 1.4;
  letter-spacing: -0.02em;
}
.tDetail01_label {
  margin: 0 0 0.5em;
  color: #2641a6;
  font-weight: 700;
  font-size: 134%;
  line-height: 1.5;
}
.tDetail01_tags {
  display: flex;
  flex-wrap: wrap;
  margin: 0.666em 0 0;
  padding: 0;
  list-style: none;
}
.tDetail01_tagItem {
  display: flex;
}
.tDetail01_tag {
  margin: 0.666em 0.666em 0 0;
  padding: 0.333em 1.333em;
  border-radius: 4px;
  background-color: #f0f5ff;
  color: #2641a6;
  font-size: 100%;
  line-height: 1.5;
  white-space: nowrap;
}
.tDetail01_tag-category {
  background-color: #c6d8ff;
  font-weight: 700;
}
.tDetail01_author {
  display: flex;
  align-items: center;
  margin-top: 3.333em;
}
.tDetail01_authorImg {
  display: block;
  flex-shrink: 0;
  width: 3.5em;
  height: auto;
  margin-right: 1.333em;
}
.tDetail01_authorBody {
  min-width: 0;
}
.tDetail01_authorInfo {
  margin: 0;
  font-size: 100%;
  line-height: 1.5;
}
.tDetail01_authorName {
  margin: 0;
  font-size: 134%;
  line-height: 1.5;
}
.tDetail01_body {
  margin-top: 3.333em;
  padding: 5.333em 0;
  border-top: 1px solid #89abff;
  border-bottom: 1px solid #89abff;
}
.tDetail01_columns {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-top: -1.667em;
}
.tDetail01_column {
  width: calc((100% - 1.666em) / 2);
  margin-top: 1.666em;
  margin-right: 1.666em;
}
.tDetail01_column:nth-child(2n) {
  margin-right: 0;
}
.tDetail01_section {
  margin-top: 5.333em;
}
.tDetail01_section:first-child {
  margin-top: 0;
}
.tDetail01_stit {
  margin: 0;
  color: #2641a6;
  font-weight: 600;
  font-size: 234%;
  line-height: 1.28;
  font-family: "Zalando Sans Expanded", sans-serif;
}
.tDetail01_stit-text {
  color: inherit;
  font-weight: 700;
  font-size: 217%;
  line-height: 1.4;
  font-family: inherit;
  letter-spacing: -0.02em;
}
.tDetail01_list {
  margin: 2.666em 0 0;
  padding: 0;
  list-style: none;
  counter-reset: detailPoint;
}
.tDetail01_listItem {
  position: relative;
  min-height: 2em;
  padding-left: 3em;
  font-size: 134%;
  line-height: 1.87;
  counter-increment: detailPoint;
}
.tDetail01_listItem + .tDetail01_listItem {
  margin-top: 1.5em;
}
.tDetail01_listItem::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background-color: #5579e5;
  content: counter(detailPoint);
  color: #ffffff;
  font-weight: 600;
  line-height: 2;
  font-family: "Zalando Sans Expanded", sans-serif;
  text-align: center;
}
.tDetail01_lead {
  margin-top: 3.333em;
}
.tDetail01_txt {
  margin: 0;
  font-size: 134%;
  line-height: 1.9;
}
.tDetail01_txt + .tDetail01_txt {
  margin-top: 1em;
}
.tDetail01_note {
  margin: 0.666em 0 0;
  color: #666666;
  font-size: 100%;
  line-height: 1.7;
}
.tDetail01_qa {
  margin-top: 2.666em;
}
.tDetail01_question {
  margin: 0;
  font-weight: 700;
  font-size: 134%;
  line-height: 1.9;
}
.tDetail01_answer {
  margin-top: 2.666em;
}
.tDetail01_speaker {
  color: #2641a6;
  font-weight: 700;
}
.tDetail01_content {
  margin-top: 2.666em;
}
.tDetail01_content:first-child {
  margin-top: 0;
}
.tDetail01_subtit {
  margin: 0;
  font-weight: 700;
  font-size: 150%;
  line-height: 1.4;
  letter-spacing: -0.02em;
}
.tDetail01_subtit + .tDetail01_txt {
  margin-top: 1em;
}
.tDetail01_downloadIcon {
  display: block;
  flex-shrink: 0;
  width: 12px;
  height: auto;
  margin-left: 0.625em;
}

/* 詳細記事の図版
------------------------------------------------------------------------------- */
.tDetailFigure01 {
  margin: 2.666em 0 0;
}
.tDetail01_subtit + .tDetailFigure01 {
  margin-top: 1.333em;
}
.tDetailFigure01_img-border {
  border: 1px solid #dbdbdb;
}
.tDetailFigure01_img img {
  display: block;
  width: 100%;
  height: auto;
}
.tDetailFigure01_img-natural img {
  width: auto;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.tDetailFigure01_img-logo {
  max-width: 347px;
  margin-right: auto;
  margin-left: auto;
}
.tDetailFigure01_caption {
  margin-top: 1.333em;
}

/* 詳細記事の囲み枠
------------------------------------------------------------------------------- */
.tDetailBox01 {
  margin-top: 2.666em;
  padding: 1em;
  border: 1px solid #dbdbdb;
}
.tDetailBox01_tit {
  margin: 0 0 0.5em;
  font-weight: 700;
  font-size: 134%;
  line-height: 1.4;
}
.tDetailBox01_txt {
  margin: 0;
  font-size: 117%;
  line-height: 1.9;
}
.tDetailBox01_list {
  margin: 0;
  padding-left: 1.5em;
  font-size: 117%;
  line-height: 1.9;
  list-style-type: disc;
}
.tDetailBox01_list-ordered {
  list-style-type: decimal;
}
.tDetailBox01_list-plain {
  padding-left: 0;
  list-style: none;
}

/* 詳細記事の表
------------------------------------------------------------------------------- */
.tDetailTable01 {
  margin-top: 2.666em;
}
.tDetailTable01 table {
  width: 100%;
  border-collapse: collapse;
}
.tDetailTable01_caption {
  margin-bottom: 0.857em;
  font-weight: 700;
  text-align: left;
}
.tDetailTable01 th,
.tDetailTable01 td {
  padding: 0.857em;
  border: 1px solid #dbdbdb;
  font-size: 117%;
  line-height: 1.4;
  text-align: left;
  vertical-align: middle;
}
.tDetailTable01 th {
  width: 19.4%;
  background-color: #f5f5f5;
  font-weight: 400;
}
.tDetailTable01_cell-center {
  text-align: center;
}
.tDetailTable01_cell-right {
  text-align: right;
}
.tDetailTable01_cell-nowrap {
  white-space: nowrap;
}
.tDetailTable01 .tDetailTable01_cell-dividerBottom {
  border-bottom: 3px double #dbdbdb;
}
.tDetailTable01 .tDetailTable01_cell-dividerRight {
  border-right: 3px double #dbdbdb;
}
.tDetailTable01-wide th {
  width: auto;
}

/* 詳細記事の画像と文章
------------------------------------------------------------------------------- */
.tDetailMedia01 {
  display: flex;
  align-items: center;
  margin: 2.666em 0 0;
  padding: 2em;
  background-color: #f0f5ff;
}
.tDetailMedia01_img {
  display: block;
  flex-shrink: 0;
  width: 35.7%;
  height: auto;
}
.tDetailMedia01_img img {
  display: block;
  width: 100%;
  height: auto;
}
.tDetailMedia01_body {
  width: calc(64.3% - 2em);
  margin-left: 2em;
}
.tDetailMedia01_txt {
  margin: 0;
  font-size: 117%;
  line-height: 1.9;
}

/* プロフィール
------------------------------------------------------------------------------- */
.tProfile01 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-top: 4em;
}
.tProfile01_tit {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0 0 2.666em;
  color: #2641a6;
  font-size: 100%;
}
.tProfile01_en {
  font-weight: 600;
  font-size: 167%;
  line-height: 1;
  font-family: "Zalando Sans Expanded", sans-serif;
}
.tProfile01_sub {
  margin-left: 1.333em;
  font-weight: 700;
  font-size: 100%;
  line-height: 1.7;
}
.tProfile01_img {
  display: block;
  width: 25%;
  overflow: hidden;
  border-radius: 50%;
}
.tProfile01_img img {
  display: block;
  width: 100%;
  height: auto;
}
.tProfile01_body {
  width: calc(75% - 3.333em);
  margin-left: 3.333em;
}
.tProfile01_name {
  position: relative;
  margin: 0;
  padding-left: 1.5em;
  font-weight: 700;
  font-size: 134%;
  line-height: 1.5;
}
.tProfile01_name::before {
  position: absolute;
  top: 0.375em;
  left: 0;
  width: 0.75em;
  height: 0.75em;
  border-radius: 50%;
  background-color: #2641a6;
  content: "";
}
.tProfile01_txt {
  margin: 1.142em 0 0;
  font-size: 117%;
  line-height: 1.7;
}

/* 関連記事
------------------------------------------------------------------------------- */
.tRelated01 {
  margin-top: 6.666em;
}
