@charset "UTF-8";
:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

/* ==================================================
	basic settings
================================================== */
h1, h2, h3, h4, h5, h6, p, li, pre, td, th, dt, dd { line-height: 1.8; }

/* basic line-height */
a { color: #000000; }

a:link { text-decoration: underline; }

a:hover { text-decoration: none; }

a:hover img { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70)"; }

/* code set
-------------------------------------------------- */
pre, code, kbd, samp, var, .font_mono { font-size: 1.3rem; line-height: 1.5; }

pre { box-sizing: border-box; width: 100%; padding: 10px; border: 1px solid #ddd; background-color: #f4f4f4; overflow-x: auto; }

/* ==================================================
	RWD layout settings
================================================== */
.show_sp, .show_pc { display: none !important; }

/* SP
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .show_sp { display: block !important; } }

/* ========== end △ */
/* PC
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .show_pc { display: block !important; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .pc_none, .sp { display: none !important; } }

/* ========== end △ */
/* SPのみ非表示
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sp_none, .pc { display: none !important; } }

/* ========== end △ */
/* 印刷時のみ非表示
-------------------------------------------------- */
/* ▽ PRINT layout ========== */
@media print { .print_none { display: none !important; } }

/* ========== end △ */
/* ==================================================
	layout
================================================== */
/* clearfix
-------------------------------------------------- */
.clearfix::after { content: ""; display: block; clear: both; }

/* float
-------------------------------------------------- */
.flr { float: right; }

.fll { float: left; }

/* overflow
-------------------------------------------------- */
.ofh { overflow: hidden; }

/* ==================================================
	width
================================================== */
.w10p { width: 10% !important; }

.w20p { width: 20% !important; }

.w25p { width: 25% !important; }

.w30p { width: 30% !important; }

.w40p { width: 40% !important; }

.w50p { width: 50% !important; }

.w60p { width: 60% !important; }

.w70p { width: 70% !important; }

.w80p { width: 80% !important; }

.w90p { width: 90% !important; }

.w100p { width: 100% !important; }

/* ==================================================
	margin
================================================== */
/* margin-top
-------------------------------------------------- */
.mt05 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt20 { margin-top: 20px !important; }

.mt30 { margin-top: 30px !important; }

/* margin-bottom
-------------------------------------------------- */
.mb05 { margin-bottom: 5px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb30_15 { margin-bottom: 15px !important; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .mb30_15 { margin-bottom: 30px !important; } }

/* ========== end △ */
.mb50_30 { margin-bottom: 30px !important; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .mb50_30 { margin-bottom: 50px !important; } }

/* ========== end △ */
/* margin-right
-------------------------------------------------- */
.mr05 { margin-right: 5px !important; }

.mr10 { margin-right: 10px !important; }

.mr20 { margin-right: 20px !important; }

.mr30 { margin-right: 30px !important; }

/* margin-left
-------------------------------------------------- */
.ml05 { margin-left: 5px !important; }

.ml10 { margin-left: 10px !important; }

.ml20 { margin-left: 20px !important; }

.ml30 { margin-left: 30px !important; }

/* ==================================================
	text
================================================== */
/* color
-------------------------------------------------- */
.color_red { color: #be0008 !important; }

.color_green { color: #21a937 !important; }

.color_blue { color: #1d4394 !important; }

/* font-family
-------------------------------------------------- */
.font_basic { font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Std W8", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic StdN W8", "Hiragino Kaku Gothic ProN W6", Osaka, "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif; }

/* font-size
-------------------------------------------------- */
.fs12 { font-size: 1.2rem; }

.fs13 { font-size: 1.3rem; }

.fs14 { font-size: 1.4rem; }

.fs16 { font-size: 1.6rem; }

.fs18 { font-size: 1.8rem; }

.fs20 { font-size: 2.0rem; }

.fs24 { font-size: 2.4rem; }

/* font-weight
-------------------------------------------------- */
.bold { font-weight: bold !important; }

/* text-align
-------------------------------------------------- */
.tac { text-align: center !important; }

.tar { text-align: right !important; }

.tal { text-align: left !important; }

/* text-decoration
-------------------------------------------------- */
a.tdn { text-decoration: none; }

a.tdn:hover { text-decoration: underline; }

/* vertical-align
-------------------------------------------------- */
.vat { vertical-align: top !important; }

.vam { vertical-align: middle !important; }

.vab { vertical-align: bottom !important; }

/* text-indent
-------------------------------------------------- */
.indent { display: block; padding-left: 1em !important; text-indent: -1em !important; }

/* scroll table text
-------------------------------------------------- */
.txt_scroll_x { margin: 15px 10px 5px 0; font-size: 1.4rem; font-weight: bold; text-align: center; }

.txt_scroll_x .fa { margin-right: 5px; color: #be0008; font-size: 2.4rem; vertical-align: middle; }

/* txt_mb_area
-------------------------------------------------- */
.txt_mb_area > * { margin-top: 20px; }

.txt_mb_area > *:first-child { margin-top: 0; }

/* ==================================================
	image
================================================== */
/* pic
-------------------------------------------------- */
.pic img { max-width: 100%; height: auto; }

/* hover fade
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { /* ▽ PC-TAB layout ========== */ }

@media print, screen and (min-width: 768px) and (min-width: 768px) { .fadeout { transition: all 0.3s ease; }
  .fadeout:hover { opacity: 0.6; } }

@media print, screen and (min-width: 768px) { /* ========== end △ */ }

/* ========== end △ */
/* icon zoom
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .ico_zoom a { display: block; position: relative; }
  .ico_zoom a:before { box-sizing: border-box; content: "\f00e"; position: absolute; right: 10px; bottom: 10px; width: 30px; height: 30px; padding-top: 5px; background-color: #000000; border-radius: 15px; color: #fff; font-size: 1.6rem; font-family: FontAwesome; text-align: center; } }

/* ========== end △ */
/* ==================================================
	list
================================================== */
/* indent
-------------------------------------------------- */
.list_indent li { padding-left: 1em; text-indent: -1em; }

/* list mark
-------------------------------------------------- */
.list_mark_disc > li { position: relative; margin-top: 10px; padding-left: 1em; }

.list_mark_disc > li:first-child { margin-top: 0; }

.list_mark_disc > li::before { content: "・"; position: absolute; top: 0; left: 0; }

/* ==================================================
	dl
================================================== */
/* basic
-------------------------------------------------- */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .dl_style > dd { margin-left: 1em; } }

/* ========== end △ */
/* inline
-------------------------------------------------- */
.dl_inline dt, .dl_inline dd { display: inline-block; vertical-align: middle; }

/* table
-------------------------------------------------- */
.dl_table_style { border-top: 1px solid #aeaeae; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .dl_table_style { display: table; width: 100%; border-spacing: 0; word-wrap: break-word; word-break: break-all; }
  .dl_table_style > dl { display: table-row; }
  .dl_table_style > dl > dt, .dl_table_style > dl > dd { display: table-cell; vertical-align: top; } }

/* ========== end △ */
.dl_table_style > dl > dt, .dl_table_style > dl > dd { box-sizing: border-box; margin: 0; padding: 28px 0; border-bottom: 1px solid #aeaeae; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style > dl > dt, .dl_table_style > dl > dd { border-top: none; padding: 15px 0; } }

/* ========== end △ */
.dl_table_style > dl > dt { padding: 33px 0; font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 500; width: 38%; min-width: 120px; background-color: none; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style > dl > dt { padding: 15px 0; font-size: 16px; line-height: 1.5; width: 100%; } }

/* ========== end △ */
.dl_table_style > dl > dd { font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 400; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style > dl > dd { font-size: 16px; line-height: 1.5; } }

/* ========== end △ */
.dl_table_style .btn_list li { display: inline-block; margin: 2px 50px 2px 0; vertical-align: top; }

.dl_table_style.dl_vam > dl > dt, .dl_table_style.dl_vam > dl > dd { vertical-align: middle; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .dl_table_style01 { display: table; width: 100%; border-spacing: 0; word-wrap: break-word; word-break: break-all; }
  .dl_table_style01 > dl { display: table-row; }
  .dl_table_style01 > dl > dt, .dl_table_style01 > dl > dd { display: table-cell; vertical-align: top; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style01 { border-top: 1px solid #ddd; } }

/* ========== end △ */
.dl_table_style01 > dl > dt, .dl_table_style01 > dl > dd { box-sizing: border-box; margin: 0; padding: 28px 20px; border: 1px solid #ddd; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style01 > dl > dt, .dl_table_style01 > dl > dd { border-top: none; padding: 15px 10px; } }

/* ========== end △ */
.dl_table_style01 > dl > dt { padding: 33px 20px; font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 500; width: 38%; min-width: 120px; background: #f4f4f4; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style01 > dl > dt { padding: 15px 10px; font-size: 16px; line-height: 1.5; width: 100%; } }

/* ========== end △ */
.dl_table_style01 > dl > dd { font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 400; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .dl_table_style01 > dl > dd { font-size: 16px; line-height: 1.5; } }

/* ========== end △ */
.dl_table_style01 .btn_list li { display: inline-block; margin: 2px 50px 2px 0; vertical-align: top; }

.dl_table_style01.dl_vam > dl > dt, .dl_table_style01.dl_vam > dl > dd { vertical-align: middle; }

/* example
-------------------------------------------------- */
.dl_example { padding: 15px 0; border-top: 4px solid #1d4394; border-bottom: 1px solid #1d4394; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .dl_example { padding-left: 30px; border-top: none; border-bottom: none; border-left: 4px solid #1d4394; } }

/* ========== end △ */
.dl_example > dt { font-size: 1.6rem; font-weight: bold; }

.dl_example > dd { padding-left: 10px; }

/* ==================================================
	table
================================================== */
/* default
-------------------------------------------------- */
.table_style #deleteform input, .table_style #deleteform select, .table_style #deleteform optgroup, .table_style #deleteform option, .table_style #deleteform textarea { padding: 0; }

.table_style caption { padding: 10px 8px; text-align: center; background-color: #000; color: #fff; font-size: 22px; line-height: 1.45455; letter-spacing: 0.025em; font-weight: 600; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .table_style caption { padding: 6px 8px; font-size: 17px; line-height: 1.47059; } }

/* ========== end △ */
.table_style table { width: 100%; }

.table_style th, .table_style td { padding: 5px 5px; border: 1px solid #ddd; font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; text-align: center; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .table_style th, .table_style td { font-size: 15px; line-height: 1.66667; } }

/* ========== end △ */
.table_style th { background-color: #f4f4f4; font-weight: bold; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .table_style th { min-width: 110px; } }

/* ========== end △ */
.table_style td { padding: 10px; font-size: 16px; line-height: 1.875; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .table_style td { font-size: 15px; line-height: 1.66667; } }

/* ========== end △ */
.table_style thead th { font-weight: bold; text-align: center; }

/* SP scroll table
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .rwd_table_wrap { width: 100%; height: auto; overflow-x: auto; -webkit-overflow-scrolling: touch; } }

/* ========== end △ */
/* ==================================================
	box
================================================== */
.tips_box, .caution_box { padding: 15px; border-top: 5px solid; font-size: 1.3rem; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .tips_box, .caution_box { border-top: none; border-left: 5px solid; } }

/* ========== end △ */
.tips_box .ttl, .caution_box .ttl { margin-bottom: 10px; font-size: 1.6rem; font-weight: bold; }

/* tips
-------------------------------------------------- */
.tips_box { border-color: #ddd; background-color: #f4f4f4; }

/* caution
-------------------------------------------------- */
.caution_box { border-color: #ffd1d1; background-color: #fff1f1; }

/* quote
-------------------------------------------------- */
.quote_box blockquote { position: relative; margin-bottom: 10px; padding: 30px 5% 30px; background-color: #f4f4f4; line-height: 1.5; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .quote_box blockquote { padding: 20px 40px 20px; } }

/* ========== end △ */
.quote_box blockquote::before, .quote_box blockquote::after { position: absolute; color: #ccc; font-family: FontAwesome; font-size: 1.6rem; line-height: 1.0; }

.quote_box blockquote::before { content: "\f10d "; top: 10px; left: 10px; }

.quote_box blockquote::after { content: "\f10e "; right: 10px; bottom: 8px; }

.quote_box .source { font-size: 1.3rem; text-align: right; }

/* definition
-------------------------------------------------- */
.definition_box { padding: 10px 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .definition_box { padding-left: 30px; border-left: 4px solid #21a937; } }

/* ========== end △ */
.definition_box .tit { margin-bottom: 10px; font-size: 1.6rem; font-weight: bold; }

/* comment
-------------------------------------------------- */
.comment_gon { display: block; padding: 8px 15px; border: 3px solid #ffe070; border-radius: 5px; background-color: #fff4cc; }

.comment_gon dt { font-weight: bold; }

/* ==================================================
	button
================================================== */
/* default
-------------------------------------------------- */
.btn_style { width: 60%; margin-right: auto; margin-left: auto; }

.btn_style a { display: block; padding: 15px 0; border-radius: 5px; background-color: #2a2a2a; color: #fff; font-size: 1.8rem; font-weight: bold; text-decoration: none; text-align: center; transition: all 0.2s ease; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .btn_style a:hover { background-color: #f68787; } }

/* ========== end △ */
/* accordion
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .ac_btn_sp { position: relative; padding-right: 1em; }
  .ac_btn_sp::before { content: "\f0fe"; display: block; position: absolute; top: 50%; right: 0px; margin-top: -0.5em; font-family: FontAwesome; }
  .ac_btn_sp.open::before { content: "\f146"; } }

/* ========== end △ */
.ac_body_sp { display: none; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .ac_body_sp { display: block !important; } }

/* ========== end △ */
.ac_body_sp.open { display: block; }

/*-----------------------------------------------------------
COMMON img-object
------------------------------------------------------------*/
.c-img { display: block; position: relative; }

.c-img img { display: block; object-fit: cover; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }

.c-img--contain img { object-fit: contain; }

.c-img--top img { object-position: top; }

.c-fw { width: 100%; }

.float-l { float: left; }

.float-r { float: right; }

.c-bdr01 { border-radius: 5px; }

.c-lazybg { background-size: cover; background-position: center; background-repeat: no-repeat; }

.c-lazybg--top { background-position: center top; }

.c-lazybg--contain { background-size: contain; }

.img-object { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; backface-visibility: hidden; }

.img-object.is-noimg { background-color: #ebe7e4; object-fit: contain; object-position: center; }

.c-btn01-center { text-align: center; }

.c-btn01-center .c-btn01 { margin: 0 auto; }

.c-btn01 { display: inline-block; width: 100%; padding: 14px 10px 14px 10px; border-radius: 0; text-decoration: none !important; overflow: hidden; text-align: center; width: 100%; max-width: 185px; background: #5341A0; background: linear-gradient(90deg, #5341a0 0%, #6c4ea0 100%); position: relative; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.c-btn01 .txt { z-index: 22; position: relative; font-size: 16px; line-height: 1.875; letter-spacing: 0.1em; font-weight: 400; color: #fff; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.c-btn01.is-wh { background: #573FBF; border: 1px solid #573FBF; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .c-btn01 { padding: 10px 10px 10px 10px; max-width: 165px; }
  .c-btn01 .txt { font-size: 14px; line-height: 1.64286; } }

/* ========== end △ */
.btn-anchor { border: 1px solid #573FBF; display: inline-block; width: 100%; padding: 20px 10px 20px; border-radius: 5px 5px 0 0; text-decoration: none !important; overflow: hidden; text-align: center; width: 100%; max-width: 382px; position: relative; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; background: #fff; }

.btn-anchor .txt { z-index: 22; position: relative; font-size: 16px; line-height: 1.875; letter-spacing: 0.1em; font-weight: 400; color: #573FBF; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.btn-anchor.is-active { background: #573FBF; }

.btn-anchor.is-active .txt { color: #fff; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .btn-anchor:hover { opacity: 1; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .btn-anchor { padding: 10px 10px 10px 10px; max-width: 165px; }
  .btn-anchor .txt { font-size: 14px; line-height: 1.64286; } }

/* ========== end △ */
.c-txt01 { font-size: 16px; line-height: 1.875; letter-spacing: 0.02em; font-weight: 400; }

.c-txt01 .cl-red01 { color: #be0008; }

.c-txt01 .blue { color: #1d4394; }

.c-txt01 .green01 { color: #26bdc7; }

.c-txt01 .is-bold, .c-txt01.is-bold { font-weight: bold; }

.c-txt01 p { font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; font-weight: 400; margin-bottom: 18px; }

.c-txt01 p .is-bold, .c-txt01 p.is-bold { font-weight: bold; }

.c-txt01 p:last-child { margin-bottom: 0; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .c-txt01 { font-size: 14px; line-height: 1.64286; }
  .c-txt01 p { font-size: 14px; line-height: 1.64286; margin-bottom: 20px; }
  .c-txt01 p:last-child { margin-bottom: 0; } }

/* ========== end △ */
/*-----------------------------------------------------------
COMMON ZOOM
------------------------------------------------------------*/
@keyframes menu-bar01 { 0% { transform: translateY(5px) rotate(45deg); }
  50% { transform: translateY(5px) rotate(0); }
  100% { transform: translateY(0) rotate(0); } }

@keyframes menu-bar02 { 0% { transform: translateY(-5px) rotate(-45deg); }
  50% { transform: translateY(-5px) rotate(0); }
  100% { transform: translateY(0) rotate(0); } }

@keyframes active-menu-bar01 { 0% { transform: translateY(0) rotate(0); }
  50% { transform: translateY(9px) rotate(0); }
  100% { transform: translateY(9px) rotate(45deg); } }

@keyframes active-menu-bar03 { 0% { transform: translateY(0) rotate(0); }
  50% { transform: translateY(-9px) rotate(0); }
  100% { transform: translateY(-9px) rotate(-45deg); } }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { @keyframes active-menu-bar01 { 0% { transform: translateY(0) rotate(0); }
    50% { transform: translateY(7px) rotate(0); }
    100% { transform: translateY(7px) rotate(45deg); } }
  @keyframes active-menu-bar03 { 0% { transform: translateY(0) rotate(0); }
    50% { transform: translateY(-7px) rotate(0); }
    100% { transform: translateY(-7px) rotate(-45deg); } } }

/* ========== end △ */
.c-hover { position: relative; display: block; }

.c-hover .c-img { overflow: hidden; }

.c-hover .zoom-over { overflow: hidden; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .c-hover .img-zoom { -webkit-transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .c-hover .item-hover { transition: opacity 0.3s; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .c-hover:hover { opacity: 1; }
  .c-hover:hover .img-zoom { -webkit-transform: scale(1.15); transform: scale(1.15); }
  .c-hover:hover .c-view:after { transform: scale(1, 1); }
  .c-hover:hover .item-hover { opacity: 0.6; } }

/* ========== end △ */
.c-hover.item-link { height: 100%; }

.c-hover.item-link .c-view { position: absolute; left: 0; bottom: 0; width: 100%; }

.c-hover.item-link .badge-new { pointer-events: none; }

.img-bdr { border-radius: 10px; }

.img-bdr02 { border-radius: 5px; }

/*-----------------------------------------------------------
COMMON Title
------------------------------------------------------------*/
.c-ttl01 { position: relative; color: #fff; font-size: 36px; line-height: 1.38889; letter-spacing: 0em; font-weight: 600; background: #5341A0; background: linear-gradient(90deg, #5341a0 0%, #6c4ea0 100%); padding: 18px 50px 17px; border-radius: 5px; margin-bottom: 65px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .c-ttl01 { border-radius: 3px; font-size: 22px; line-height: 1.45455; padding: 14px 15px 14px; margin-bottom: 35px; } }

/* ========== end △ */
.c-ttl02 { font-size: 32px; line-height: 1.40625; letter-spacing: 0em; font-weight: 600; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .c-ttl02 { font-size: 26px; line-height: 1.34615; } }

/* ========== end △ */
.c-lst-topic .item__thumb { position: relative; background: #fff; }

.c-lst-topic .item__thumb .c-img { position: relative; }

.c-lst-topic .item__thumb .c-img:before { display: block; content: " "; width: 100%; padding-top: 71.05263%; }

.c-lst-topic .item__thumb .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.c-lst-topic .item__thumb .c-img img { object-fit: contain; }

.c-lst-topic .item__thumb .c-img iframe, .c-lst-topic .item__thumb .c-img video { display: block; object-fit: cover; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }

.c-lst-topic .item__thumb.pdf .c-img { position: relative; }

.c-lst-topic .item__thumb.pdf .c-img:before { display: block; content: " "; width: 100%; padding-top: 141.3%; }

.c-lst-topic .item__thumb.pdf .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.c-lst-topic .item__thumb.pdf.no-img:after { position: absolute; content: ""; left: 50%; top: 50%; transform: translate(-50%, -50%); background: url(../common_img/icon_pdf.png) no-repeat center center; background-size: 100% auto; width: 72px; height: 72px; }

.c-lst-topic .item__date { color: #A8A8A8; font-size: 16px; line-height: 1.875; letter-spacing: 0.1em; font-weight: 400; }

.c-lst-topic .item__ttl { color: #000000; font-size: 16px; line-height: 1.625; letter-spacing: 0.1em; font-weight: 400; margin: 10px 0 0; }

.c-lst-topic .item__info { padding: 20px 15px 0; margin-bottom: 49px; }

.c-lst-topic .item .item__btn .c-btn01 { max-width: 100%; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .c-lst-topic { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .c-lst-topic .item { width: 31.67%; margin: 0 2.46% 0 0; }
  .c-lst-topic .item:last-child, .c-lst-topic .item:nth-child(3n) { margin-right: 0; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .c-lst-topic .item { margin-bottom: 30px; }
  .c-lst-topic .item__thumb { text-align: center; }
  .c-lst-topic .item__thumb.pdf:after { width: 72px; height: 72px; }
  .c-lst-topic .item__date { font-size: 15px; line-height: 1.53333; }
  .c-lst-topic .item__ttl { font-size: 15px; line-height: 1.53333; margin: 7px 0 0; }
  .c-lst-topic .item__info { padding: 10px 10px 0; margin-bottom: 25px; } }

/* ========== end △ */

/*# sourceMappingURL=maps/utility.css.map */
