@charset "UTF-8";
/*! http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
* { box-sizing: border-box; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, main, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

/* ============================================= Module - Button ============================================= */
.button__default { -webkit-transition: background-color 0.3s; -o-transition: background-color 0.3s; transition: background-color 0.3s; text-decoration: none; border-radius: 5px; font-size: 1.6rem; padding: 10px 20px; display: inline-block; }

.button__default:hover { cursor: pointer; }

.__large.button__default { font-size: 1.7rem; padding: 12px 25px; }

/* ---- OK系のボタン ---- */
.button__default { background-color: #18448e; color: #fff; }

.button__default:hover { background-color: #1f59ba; }

/* ============================================= Module - Card ============================================= */
.card__default { display: block; position: relative; -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25); box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25); -webkit-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; border-left: solid 4px #18448e; background-color: #fff; }

.card__default:hover { -webkit-box-shadow: 0 3px 12px rgba(0, 0, 0, 0.6); box-shadow: 0 3px 12px rgba(0, 0, 0, 0.6); }

.card__default:link { text-decoration: none; }

.card__default:link::before { content: ''; display: block; position: absolute; background-color: transparent; left: -4px; top: 50%; width: 4px; height: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); -webkit-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }

.card__default:link:hover { cursor: pointer; }

.card__default:link:hover::before { background-color: #fb6e7b; height: 100%; }

.__primary.card__default { border-left-color: #ea4858; }

.__primary.card__default:hover::before { background-color: #fb6e7b; }

/* ---- default ---- */
.card__default { padding: 30px; }

@media all and (max-width: 767.9px) { .card__default { padding: 15px; } }

/* ============================================= Module - Form ============================================= */
/* ============================================= heading ============================================= */
/* ============================================= Module - Icon ============================================= */
/* ============================================= Module - List ============================================= */
/* ============================================= Module - Table ============================================= */
table:not([class*='table__']), .table__default { width: 100%; }

table:not([class*='table__']) tr, .table__default tr { border-bottom: 1px solid #111; }

table:not([class*='table__']) th, .table__default th, table:not([class*='table__']) td, .table__default td { padding: 20px; }

/* ---- 指定なし ---- */
/* ---- デフォルト ---- */
/* ============================================= Utilities ============================================= */
@media all and (min-width: 768px) { .v-sp, .h-pc { display: none !important; } }

@media all and (max-width: 767.9px) { .v-pc, .h-sp { display: none !important; } }

/* ---- display ---- */
html body .db { display: block; }

html body .dib { display: inline-block; }

html body .dn { display: none; }

/* ---- テキスト位置揃え ---- */
html body .tac { text-align: center; }

html body .tal { text-align: left; }

html body .tar { text-align: right; }

html body .fwb { font-weight: bold; }

html body .fwn { font-weight: normal; }

/* ---- テキスト装飾 ---- */
html body .tdn { text-decoration: none; }

html body .tdu { text-decoration: underline; }

/* ---- テキストサイズ ---- */
html body .fs10 { font-size: 1.0rem; }

html body .fs11 { font-size: 1.1rem; }

html body .fs12 { font-size: 1.2rem; }

html body .fs13 { font-size: 1.3rem; }

html body .fs14 { font-size: 1.4rem; }

html body .fs15 { font-size: 1.5rem; }

html body .fs16 { font-size: 1.6rem; }

html body .fs17 { font-size: 1.7rem; }

html body .fs18 { font-size: 1.8rem; }

html body .fs19 { font-size: 1.9rem; }

html body .fs20 { font-size: 2.0rem; }

html body .fs21 { font-size: 2.1rem; }

html body .fs22 { font-size: 2.2rem; }

html body .fs23 { font-size: 2.3rem; }

html body .fs24 { font-size: 2.4rem; }

html body .fs25 { font-size: 2.5rem; }

html body .fs26 { font-size: 2.6rem; }

html body .fs27 { font-size: 2.7rem; }

html body .fs28 { font-size: 2.8rem; }

html body .fs29 { font-size: 2.9rem; }

html body .fs30 { font-size: 3.0rem; }

html body .fs31 { font-size: 3.1rem; }

html body .fs32 { font-size: 3.2rem; }

html body .fs33 { font-size: 3.3rem; }

html body .fs34 { font-size: 3.4rem; }

html body .fs35 { font-size: 3.5rem; }

html body .fs36 { font-size: 3.6rem; }

html body .fs37 { font-size: 3.7rem; }

html body .fs38 { font-size: 3.8rem; }

html body .fs39 { font-size: 3.9rem; }

html body .fs40 { font-size: 4.0rem; }

html body .fs41 { font-size: 4.1rem; }

html body .fs42 { font-size: 4.2rem; }

html body .fs43 { font-size: 4.3rem; }

html body .fs44 { font-size: 4.4rem; }

html body .fs45 { font-size: 4.5rem; }

html body .fs46 { font-size: 4.6rem; }

html body .fs55 { font-size: 5.5rem; }

@media all and (min-width: 768px) { html body .pcfs10 { font-size: 1.0rem; }
  html body .pcfs11 { font-size: 1.1rem; }
  html body .pcfs12 { font-size: 1.2rem; }
  html body .pcfs13 { font-size: 1.3rem; }
  html body .pcfs14 { font-size: 1.4rem; }
  html body .pcfs15 { font-size: 1.5rem; }
  html body .pcfs16 { font-size: 1.6rem; }
  html body .pcfs17 { font-size: 1.7rem; }
  html body .pcfs18 { font-size: 1.8rem; }
  html body .pcfs19 { font-size: 1.9rem; }
  html body .pcfs20 { font-size: 2.0rem; }
  html body .pcfs21 { font-size: 2.1rem; }
  html body .pcfs22 { font-size: 2.2rem; }
  html body .pcfs23 { font-size: 2.3rem; }
  html body .pcfs24 { font-size: 2.4rem; }
  html body .pcfs25 { font-size: 2.5rem; }
  html body .pcfs26 { font-size: 2.6rem; }
  html body .pcfs27 { font-size: 2.7rem; }
  html body .pcfs28 { font-size: 2.8rem; }
  html body .pcfs29 { font-size: 2.9rem; }
  html body .pcfs30 { font-size: 3.0rem; }
  html body .pcfs31 { font-size: 3.1rem; }
  html body .pcfs32 { font-size: 3.2rem; }
  html body .pcfs33 { font-size: 3.3rem; }
  html body .pcfs34 { font-size: 3.4rem; }
  html body .pcfs35 { font-size: 3.5rem; }
  html body .pcfs36 { font-size: 3.6rem; }
  html body .pcfs37 { font-size: 3.7rem; }
  html body .pcfs38 { font-size: 3.8rem; }
  html body .pcfs39 { font-size: 3.9rem; }
  html body .pcfs40 { font-size: 4.0rem; }
  html body .pcfs41 { font-size: 4.1rem; }
  html body .pcfs42 { font-size: 4.2rem; }
  html body .pcfs43 { font-size: 4.3rem; }
  html body .pcfs44 { font-size: 4.4rem; }
  html body .pcfs45 { font-size: 4.5rem; }
  html body .pcfs46 { font-size: 4.6rem; } }

@media all and (max-width: 767.9px) { html body .spfs10 { font-size: 1.0rem; }
  html body .spfs11 { font-size: 1.1rem; }
  html body .spfs12 { font-size: 1.2rem; }
  html body .spfs13 { font-size: 1.3rem; }
  html body .spfs14 { font-size: 1.4rem; }
  html body .spfs15 { font-size: 1.5rem; }
  html body .spfs16 { font-size: 1.6rem; }
  html body .spfs17 { font-size: 1.7rem; }
  html body .spfs18 { font-size: 1.8rem; }
  html body .spfs19 { font-size: 1.9rem; }
  html body .spfs20 { font-size: 2.0rem; }
  html body .spfs21 { font-size: 2.1rem; }
  html body .spfs22 { font-size: 2.2rem; }
  html body .spfs23 { font-size: 2.3rem; }
  html body .spfs24 { font-size: 2.4rem; }
  html body .spfs25 { font-size: 2.5rem; }
  html body .spfs26 { font-size: 2.6rem; }
  html body .spfs27 { font-size: 2.7rem; }
  html body .spfs28 { font-size: 2.8rem; }
  html body .spfs29 { font-size: 2.9rem; }
  html body .spfs30 { font-size: 3.0rem; }
  html body .spfs31 { font-size: 3.1rem; }
  html body .spfs32 { font-size: 3.2rem; }
  html body .spfs33 { font-size: 3.3rem; }
  html body .spfs34 { font-size: 3.4rem; }
  html body .spfs35 { font-size: 3.5rem; }
  html body .spfs36 { font-size: 3.6rem; }
  html body .spfs37 { font-size: 3.7rem; }
  html body .spfs38 { font-size: 3.8rem; }
  html body .spfs39 { font-size: 3.9rem; }
  html body .spfs40 { font-size: 4.0rem; }
  html body .spfs41 { font-size: 4.1rem; }
  html body .spfs42 { font-size: 4.2rem; }
  html body .spfs43 { font-size: 4.3rem; }
  html body .spfs44 { font-size: 4.4rem; }
  html body .spfs45 { font-size: 4.5rem; }
  html body .spfs46 { font-size: 4.6rem; } }

html body .mt0 { margin-top: 0; }

html body .mb0 { margin-bottom: 0; }

html body .ml0 { margin-left: 0; }

html body .mr0 { margin-right: 0; }

html body .pt0 { padding-top: 0; }

html body .pb0 { padding-bottom: 0; }

html body .pl0 { padding-left: 0; }

html body .pr0 { padding-right: 0; }

html body .mt5 { margin-top: 5px; }

html body .mb5 { margin-bottom: 5px; }

html body .ml5 { margin-left: 5px; }

html body .mr5 { margin-right: 5px; }

html body .pt5 { padding-top: 5px; }

html body .pb5 { padding-bottom: 5px; }

html body .pl5 { padding-left: 5px; }

html body .pr5 { padding-right: 5px; }

html body .mt10 { margin-top: 10px; }

html body .mb10 { margin-bottom: 10px; }

html body .ml10 { margin-left: 10px; }

html body .mr10 { margin-right: 10px; }

html body .pt10 { padding-top: 10px; }

html body .pb10 { padding-bottom: 10px; }

html body .pl10 { padding-left: 10px; }

html body .pr10 { padding-right: 10px; }

html body .mt15 { margin-top: 15px; }

html body .mb15 { margin-bottom: 15px; }

html body .ml15 { margin-left: 15px; }

html body .mr15 { margin-right: 15px; }

html body .pt15 { padding-top: 15px; }

html body .pb15 { padding-bottom: 15px; }

html body .pl15 { padding-left: 15px; }

html body .pr15 { padding-right: 15px; }

html body .mt20 { margin-top: 20px; }

html body .mb20 { margin-bottom: 20px; }

html body .ml20 { margin-left: 20px; }

html body .mr20 { margin-right: 20px; }

html body .pt20 { padding-top: 20px; }

html body .pb20 { padding-bottom: 20px; }

html body .pl20 { padding-left: 20px; }

html body .pr20 { padding-right: 20px; }

html body .mt25 { margin-top: 25px; }

html body .mb25 { margin-bottom: 25px; }

html body .ml25 { margin-left: 25px; }

html body .mr25 { margin-right: 25px; }

html body .pt25 { padding-top: 25px; }

html body .pb25 { padding-bottom: 25px; }

html body .pl25 { padding-left: 25px; }

html body .pr25 { padding-right: 25px; }

html body .mt30 { margin-top: 30px; }

html body .mb30 { margin-bottom: 30px; }

html body .ml30 { margin-left: 30px; }

html body .mr30 { margin-right: 30px; }

html body .pt30 { padding-top: 30px; }

html body .pb30 { padding-bottom: 30px; }

html body .pl30 { padding-left: 30px; }

html body .pr30 { padding-right: 30px; }

html body .mt35 { margin-top: 35px; }

html body .mb35 { margin-bottom: 35px; }

html body .ml35 { margin-left: 35px; }

html body .mr35 { margin-right: 35px; }

html body .pt35 { padding-top: 35px; }

html body .pb35 { padding-bottom: 35px; }

html body .pl35 { padding-left: 35px; }

html body .pr35 { padding-right: 35px; }

html body .mt40 { margin-top: 40px; }

html body .mb40 { margin-bottom: 40px; }

html body .ml40 { margin-left: 40px; }

html body .mr40 { margin-right: 40px; }

html body .pt40 { padding-top: 40px; }

html body .pb40 { padding-bottom: 40px; }

html body .pl40 { padding-left: 40px; }

html body .pr40 { padding-right: 40px; }

html body .mt45 { margin-top: 45px; }

html body .mb45 { margin-bottom: 45px; }

html body .ml45 { margin-left: 45px; }

html body .mr45 { margin-right: 45px; }

html body .pt45 { padding-top: 45px; }

html body .pb45 { padding-bottom: 45px; }

html body .pl45 { padding-left: 45px; }

html body .pr45 { padding-right: 45px; }

html body .mt50 { margin-top: 50px; }

html body .mb50 { margin-bottom: 50px; }

html body .ml50 { margin-left: 50px; }

html body .mr50 { margin-right: 50px; }

html body .pt50 { padding-top: 50px; }

html body .pb50 { padding-bottom: 50px; }

html body .pl50 { padding-left: 50px; }

html body .pr50 { padding-right: 50px; }

html body .mt55 { margin-top: 55px; }

html body .mb55 { margin-bottom: 55px; }

html body .ml55 { margin-left: 55px; }

html body .mr55 { margin-right: 55px; }

html body .pt55 { padding-top: 55px; }

html body .pb55 { padding-bottom: 55px; }

html body .pl55 { padding-left: 55px; }

html body .pr55 { padding-right: 55px; }

html body .mt60 { margin-top: 60px; }

html body .mb60 { margin-bottom: 60px; }

html body .ml60 { margin-left: 60px; }

html body .mr60 { margin-right: 60px; }

html body .pt60 { padding-top: 60px; }

html body .pb60 { padding-bottom: 60px; }

html body .pl60 { padding-left: 60px; }

html body .pr60 { padding-right: 60px; }

html body .mt65 { margin-top: 65px; }

html body .mb65 { margin-bottom: 65px; }

html body .ml65 { margin-left: 65px; }

html body .mr65 { margin-right: 65px; }

html body .pt65 { padding-top: 65px; }

html body .pb65 { padding-bottom: 65px; }

html body .pl65 { padding-left: 65px; }

html body .pr65 { padding-right: 65px; }

html body .mt70 { margin-top: 70px; }

html body .mb70 { margin-bottom: 70px; }

html body .ml70 { margin-left: 70px; }

html body .mr70 { margin-right: 70px; }

html body .pt70 { padding-top: 70px; }

html body .pb70 { padding-bottom: 70px; }

html body .pl70 { padding-left: 70px; }

html body .pr70 { padding-right: 70px; }

html body .mt75 { margin-top: 75px; }

html body .mb75 { margin-bottom: 75px; }

html body .ml75 { margin-left: 75px; }

html body .mr75 { margin-right: 75px; }

html body .pt75 { padding-top: 75px; }

html body .pb75 { padding-bottom: 75px; }

html body .pl75 { padding-left: 75px; }

html body .pr75 { padding-right: 75px; }

html body .mt80 { margin-top: 80px; }

html body .mb80 { margin-bottom: 80px; }

html body .ml80 { margin-left: 80px; }

html body .mr80 { margin-right: 80px; }

html body .pt80 { padding-top: 80px; }

html body .pb80 { padding-bottom: 80px; }

html body .pl80 { padding-left: 80px; }

html body .pr80 { padding-right: 80px; }

html body .mt85 { margin-top: 85px; }

html body .mb85 { margin-bottom: 85px; }

html body .ml85 { margin-left: 85px; }

html body .mr85 { margin-right: 85px; }

html body .pt85 { padding-top: 85px; }

html body .pb85 { padding-bottom: 85px; }

html body .pl85 { padding-left: 85px; }

html body .pr85 { padding-right: 85px; }

html body .mt90 { margin-top: 90px; }

html body .mb90 { margin-bottom: 90px; }

html body .ml90 { margin-left: 90px; }

html body .mr90 { margin-right: 90px; }

html body .pt90 { padding-top: 90px; }

html body .pb90 { padding-bottom: 90px; }

html body .pl90 { padding-left: 90px; }

html body .pr90 { padding-right: 90px; }

html body .mt95 { margin-top: 95px; }

html body .mb95 { margin-bottom: 95px; }

html body .ml95 { margin-left: 95px; }

html body .mr95 { margin-right: 95px; }

html body .pt95 { padding-top: 95px; }

html body .pb95 { padding-bottom: 95px; }

html body .pl95 { padding-left: 95px; }

html body .pr95 { padding-right: 95px; }

html body .mt100 { margin-top: 100px; }

html body .mb100 { margin-bottom: 100px; }

html body .ml100 { margin-left: 100px; }

html body .mr100 { margin-right: 100px; }

html body .pt100 { padding-top: 100px; }

html body .pb100 { padding-bottom: 100px; }

html body .pl100 { padding-left: 100px; }

html body .pr100 { padding-right: 100px; }

@media all and (min-width: 768px) { html body .pcmt0 { margin-top: 0; }
  html body .pcmb0 { margin-bottom: 0; }
  html body .pcml0 { margin-left: 0; }
  html body .pcmr0 { margin-right: 0; }
  html body .pcpt0 { padding-top: 0; }
  html body .pcpb0 { padding-bottom: 0; }
  html body .pcpl0 { padding-left: 0; }
  html body .pcpr0 { padding-right: 0; }
  html body .pcmt5 { margin-top: 5px; }
  html body .pcmb5 { margin-bottom: 5px; }
  html body .pcml5 { margin-left: 5px; }
  html body .pcmr5 { margin-right: 5px; }
  html body .pcpt5 { padding-top: 5px; }
  html body .pcpb5 { padding-bottom: 5px; }
  html body .pcpl5 { padding-left: 5px; }
  html body .pcpr5 { padding-right: 5px; }
  html body .pcmt10 { margin-top: 10px; }
  html body .pcmb10 { margin-bottom: 10px; }
  html body .pcml10 { margin-left: 10px; }
  html body .pcmr10 { margin-right: 10px; }
  html body .pcpt10 { padding-top: 10px; }
  html body .pcpb10 { padding-bottom: 10px; }
  html body .pcpl10 { padding-left: 10px; }
  html body .pcpr10 { padding-right: 10px; }
  html body .pcmt15 { margin-top: 15px; }
  html body .pcmb15 { margin-bottom: 15px; }
  html body .pcml15 { margin-left: 15px; }
  html body .pcmr15 { margin-right: 15px; }
  html body .pcpt15 { padding-top: 15px; }
  html body .pcpb15 { padding-bottom: 15px; }
  html body .pcpl15 { padding-left: 15px; }
  html body .pcpr15 { padding-right: 15px; }
  html body .pcmt20 { margin-top: 20px; }
  html body .pcmb20 { margin-bottom: 20px; }
  html body .pcml20 { margin-left: 20px; }
  html body .pcmr20 { margin-right: 20px; }
  html body .pcpt20 { padding-top: 20px; }
  html body .pcpb20 { padding-bottom: 20px; }
  html body .pcpl20 { padding-left: 20px; }
  html body .pcpr20 { padding-right: 20px; }
  html body .pcmt25 { margin-top: 25px; }
  html body .pcmb25 { margin-bottom: 25px; }
  html body .pcml25 { margin-left: 25px; }
  html body .pcmr25 { margin-right: 25px; }
  html body .pcpt25 { padding-top: 25px; }
  html body .pcpb25 { padding-bottom: 25px; }
  html body .pcpl25 { padding-left: 25px; }
  html body .pcpr25 { padding-right: 25px; }
  html body .pcmt30 { margin-top: 30px; }
  html body .pcmb30 { margin-bottom: 30px; }
  html body .pcml30 { margin-left: 30px; }
  html body .pcmr30 { margin-right: 30px; }
  html body .pcpt30 { padding-top: 30px; }
  html body .pcpb30 { padding-bottom: 30px; }
  html body .pcpl30 { padding-left: 30px; }
  html body .pcpr30 { padding-right: 30px; }
  html body .pcmt35 { margin-top: 35px; }
  html body .pcmb35 { margin-bottom: 35px; }
  html body .pcml35 { margin-left: 35px; }
  html body .pcmr35 { margin-right: 35px; }
  html body .pcpt35 { padding-top: 35px; }
  html body .pcpb35 { padding-bottom: 35px; }
  html body .pcpl35 { padding-left: 35px; }
  html body .pcpr35 { padding-right: 35px; }
  html body .pcmt40 { margin-top: 40px; }
  html body .pcmb40 { margin-bottom: 40px; }
  html body .pcml40 { margin-left: 40px; }
  html body .pcmr40 { margin-right: 40px; }
  html body .pcpt40 { padding-top: 40px; }
  html body .pcpb40 { padding-bottom: 40px; }
  html body .pcpl40 { padding-left: 40px; }
  html body .pcpr40 { padding-right: 40px; }
  html body .pcmt45 { margin-top: 45px; }
  html body .pcmb45 { margin-bottom: 45px; }
  html body .pcml45 { margin-left: 45px; }
  html body .pcmr45 { margin-right: 45px; }
  html body .pcpt45 { padding-top: 45px; }
  html body .pcpb45 { padding-bottom: 45px; }
  html body .pcpl45 { padding-left: 45px; }
  html body .pcpr45 { padding-right: 45px; }
  html body .pcmt50 { margin-top: 50px; }
  html body .pcmb50 { margin-bottom: 50px; }
  html body .pcml50 { margin-left: 50px; }
  html body .pcmr50 { margin-right: 50px; }
  html body .pcpt50 { padding-top: 50px; }
  html body .pcpb50 { padding-bottom: 50px; }
  html body .pcpl50 { padding-left: 50px; }
  html body .pcpr50 { padding-right: 50px; }
  html body .pcmt55 { margin-top: 55px; }
  html body .pcmb55 { margin-bottom: 55px; }
  html body .pcml55 { margin-left: 55px; }
  html body .pcmr55 { margin-right: 55px; }
  html body .pcpt55 { padding-top: 55px; }
  html body .pcpb55 { padding-bottom: 55px; }
  html body .pcpl55 { padding-left: 55px; }
  html body .pcpr55 { padding-right: 55px; }
  html body .pcmt60 { margin-top: 60px; }
  html body .pcmb60 { margin-bottom: 60px; }
  html body .pcml60 { margin-left: 60px; }
  html body .pcmr60 { margin-right: 60px; }
  html body .pcpt60 { padding-top: 60px; }
  html body .pcpb60 { padding-bottom: 60px; }
  html body .pcpl60 { padding-left: 60px; }
  html body .pcpr60 { padding-right: 60px; }
  html body .pcmt65 { margin-top: 65px; }
  html body .pcmb65 { margin-bottom: 65px; }
  html body .pcml65 { margin-left: 65px; }
  html body .pcmr65 { margin-right: 65px; }
  html body .pcpt65 { padding-top: 65px; }
  html body .pcpb65 { padding-bottom: 65px; }
  html body .pcpl65 { padding-left: 65px; }
  html body .pcpr65 { padding-right: 65px; }
  html body .pcmt70 { margin-top: 70px; }
  html body .pcmb70 { margin-bottom: 70px; }
  html body .pcml70 { margin-left: 70px; }
  html body .pcmr70 { margin-right: 70px; }
  html body .pcpt70 { padding-top: 70px; }
  html body .pcpb70 { padding-bottom: 70px; }
  html body .pcpl70 { padding-left: 70px; }
  html body .pcpr70 { padding-right: 70px; }
  html body .pcmt75 { margin-top: 75px; }
  html body .pcmb75 { margin-bottom: 75px; }
  html body .pcml75 { margin-left: 75px; }
  html body .pcmr75 { margin-right: 75px; }
  html body .pcpt75 { padding-top: 75px; }
  html body .pcpb75 { padding-bottom: 75px; }
  html body .pcpl75 { padding-left: 75px; }
  html body .pcpr75 { padding-right: 75px; }
  html body .pcmt80 { margin-top: 80px; }
  html body .pcmb80 { margin-bottom: 80px; }
  html body .pcml80 { margin-left: 80px; }
  html body .pcmr80 { margin-right: 80px; }
  html body .pcpt80 { padding-top: 80px; }
  html body .pcpb80 { padding-bottom: 80px; }
  html body .pcpl80 { padding-left: 80px; }
  html body .pcpr80 { padding-right: 80px; }
  html body .pcmt85 { margin-top: 85px; }
  html body .pcmb85 { margin-bottom: 85px; }
  html body .pcml85 { margin-left: 85px; }
  html body .pcmr85 { margin-right: 85px; }
  html body .pcpt85 { padding-top: 85px; }
  html body .pcpb85 { padding-bottom: 85px; }
  html body .pcpl85 { padding-left: 85px; }
  html body .pcpr85 { padding-right: 85px; }
  html body .pcmt90 { margin-top: 90px; }
  html body .pcmb90 { margin-bottom: 90px; }
  html body .pcml90 { margin-left: 90px; }
  html body .pcmr90 { margin-right: 90px; }
  html body .pcpt90 { padding-top: 90px; }
  html body .pcpb90 { padding-bottom: 90px; }
  html body .pcpl90 { padding-left: 90px; }
  html body .pcpr90 { padding-right: 90px; }
  html body .pcmt95 { margin-top: 95px; }
  html body .pcmb95 { margin-bottom: 95px; }
  html body .pcml95 { margin-left: 95px; }
  html body .pcmr95 { margin-right: 95px; }
  html body .pcpt95 { padding-top: 95px; }
  html body .pcpb95 { padding-bottom: 95px; }
  html body .pcpl95 { padding-left: 95px; }
  html body .pcpr95 { padding-right: 95px; }
  html body .pcmt100 { margin-top: 100px; }
  html body .pcmb100 { margin-bottom: 100px; }
  html body .pcml100 { margin-left: 100px; }
  html body .pcmr100 { margin-right: 100px; }
  html body .pcpt100 { padding-top: 100px; }
  html body .pcpb100 { padding-bottom: 100px; }
  html body .pcpl100 { padding-left: 100px; }
  html body .pcpr100 { padding-right: 100px; } }

@media all and (max-width: 767.9px) { html body .spmt0 { margin-top: 0; }
  html body .spmb0 { margin-bottom: 0; }
  html body .spml0 { margin-left: 0; }
  html body .spmr0 { margin-right: 0; }
  html body .sppt0 { padding-top: 0; }
  html body .sppb0 { padding-bottom: 0; }
  html body .sppl0 { padding-left: 0; }
  html body .sppr0 { padding-right: 0; }
  html body .spmt5 { margin-top: 5px; }
  html body .spmb5 { margin-bottom: 5px; }
  html body .spml5 { margin-left: 5px; }
  html body .spmr5 { margin-right: 5px; }
  html body .sppt5 { padding-top: 5px; }
  html body .sppb5 { padding-bottom: 5px; }
  html body .sppl5 { padding-left: 5px; }
  html body .sppr5 { padding-right: 5px; }
  html body .spmt10 { margin-top: 10px; }
  html body .spmb10 { margin-bottom: 10px; }
  html body .spml10 { margin-left: 10px; }
  html body .spmr10 { margin-right: 10px; }
  html body .sppt10 { padding-top: 10px; }
  html body .sppb10 { padding-bottom: 10px; }
  html body .sppl10 { padding-left: 10px; }
  html body .sppr10 { padding-right: 10px; }
  html body .spmt15 { margin-top: 15px; }
  html body .spmb15 { margin-bottom: 15px; }
  html body .spml15 { margin-left: 15px; }
  html body .spmr15 { margin-right: 15px; }
  html body .sppt15 { padding-top: 15px; }
  html body .sppb15 { padding-bottom: 15px; }
  html body .sppl15 { padding-left: 15px; }
  html body .sppr15 { padding-right: 15px; }
  html body .spmt20 { margin-top: 20px; }
  html body .spmb20 { margin-bottom: 20px; }
  html body .spml20 { margin-left: 20px; }
  html body .spmr20 { margin-right: 20px; }
  html body .sppt20 { padding-top: 20px; }
  html body .sppb20 { padding-bottom: 20px; }
  html body .sppl20 { padding-left: 20px; }
  html body .sppr20 { padding-right: 20px; }
  html body .spmt25 { margin-top: 25px; }
  html body .spmb25 { margin-bottom: 25px; }
  html body .spml25 { margin-left: 25px; }
  html body .spmr25 { margin-right: 25px; }
  html body .sppt25 { padding-top: 25px; }
  html body .sppb25 { padding-bottom: 25px; }
  html body .sppl25 { padding-left: 25px; }
  html body .sppr25 { padding-right: 25px; }
  html body .spmt30 { margin-top: 30px; }
  html body .spmb30 { margin-bottom: 30px; }
  html body .spml30 { margin-left: 30px; }
  html body .spmr30 { margin-right: 30px; }
  html body .sppt30 { padding-top: 30px; }
  html body .sppb30 { padding-bottom: 30px; }
  html body .sppl30 { padding-left: 30px; }
  html body .sppr30 { padding-right: 30px; }
  html body .spmt35 { margin-top: 35px; }
  html body .spmb35 { margin-bottom: 35px; }
  html body .spml35 { margin-left: 35px; }
  html body .spmr35 { margin-right: 35px; }
  html body .sppt35 { padding-top: 35px; }
  html body .sppb35 { padding-bottom: 35px; }
  html body .sppl35 { padding-left: 35px; }
  html body .sppr35 { padding-right: 35px; }
  html body .spmt40 { margin-top: 40px; }
  html body .spmb40 { margin-bottom: 40px; }
  html body .spml40 { margin-left: 40px; }
  html body .spmr40 { margin-right: 40px; }
  html body .sppt40 { padding-top: 40px; }
  html body .sppb40 { padding-bottom: 40px; }
  html body .sppl40 { padding-left: 40px; }
  html body .sppr40 { padding-right: 40px; }
  html body .spmt45 { margin-top: 45px; }
  html body .spmb45 { margin-bottom: 45px; }
  html body .spml45 { margin-left: 45px; }
  html body .spmr45 { margin-right: 45px; }
  html body .sppt45 { padding-top: 45px; }
  html body .sppb45 { padding-bottom: 45px; }
  html body .sppl45 { padding-left: 45px; }
  html body .sppr45 { padding-right: 45px; }
  html body .spmt50 { margin-top: 50px; }
  html body .spmb50 { margin-bottom: 50px; }
  html body .spml50 { margin-left: 50px; }
  html body .spmr50 { margin-right: 50px; }
  html body .sppt50 { padding-top: 50px; }
  html body .sppb50 { padding-bottom: 50px; }
  html body .sppl50 { padding-left: 50px; }
  html body .sppr50 { padding-right: 50px; }
  html body .spmt55 { margin-top: 55px; }
  html body .spmb55 { margin-bottom: 55px; }
  html body .spml55 { margin-left: 55px; }
  html body .spmr55 { margin-right: 55px; }
  html body .sppt55 { padding-top: 55px; }
  html body .sppb55 { padding-bottom: 55px; }
  html body .sppl55 { padding-left: 55px; }
  html body .sppr55 { padding-right: 55px; }
  html body .spmt60 { margin-top: 60px; }
  html body .spmb60 { margin-bottom: 60px; }
  html body .spml60 { margin-left: 60px; }
  html body .spmr60 { margin-right: 60px; }
  html body .sppt60 { padding-top: 60px; }
  html body .sppb60 { padding-bottom: 60px; }
  html body .sppl60 { padding-left: 60px; }
  html body .sppr60 { padding-right: 60px; }
  html body .spmt65 { margin-top: 65px; }
  html body .spmb65 { margin-bottom: 65px; }
  html body .spml65 { margin-left: 65px; }
  html body .spmr65 { margin-right: 65px; }
  html body .sppt65 { padding-top: 65px; }
  html body .sppb65 { padding-bottom: 65px; }
  html body .sppl65 { padding-left: 65px; }
  html body .sppr65 { padding-right: 65px; }
  html body .spmt70 { margin-top: 70px; }
  html body .spmb70 { margin-bottom: 70px; }
  html body .spml70 { margin-left: 70px; }
  html body .spmr70 { margin-right: 70px; }
  html body .sppt70 { padding-top: 70px; }
  html body .sppb70 { padding-bottom: 70px; }
  html body .sppl70 { padding-left: 70px; }
  html body .sppr70 { padding-right: 70px; }
  html body .spmt75 { margin-top: 75px; }
  html body .spmb75 { margin-bottom: 75px; }
  html body .spml75 { margin-left: 75px; }
  html body .spmr75 { margin-right: 75px; }
  html body .sppt75 { padding-top: 75px; }
  html body .sppb75 { padding-bottom: 75px; }
  html body .sppl75 { padding-left: 75px; }
  html body .sppr75 { padding-right: 75px; }
  html body .spmt80 { margin-top: 80px; }
  html body .spmb80 { margin-bottom: 80px; }
  html body .spml80 { margin-left: 80px; }
  html body .spmr80 { margin-right: 80px; }
  html body .sppt80 { padding-top: 80px; }
  html body .sppb80 { padding-bottom: 80px; }
  html body .sppl80 { padding-left: 80px; }
  html body .sppr80 { padding-right: 80px; }
  html body .spmt85 { margin-top: 85px; }
  html body .spmb85 { margin-bottom: 85px; }
  html body .spml85 { margin-left: 85px; }
  html body .spmr85 { margin-right: 85px; }
  html body .sppt85 { padding-top: 85px; }
  html body .sppb85 { padding-bottom: 85px; }
  html body .sppl85 { padding-left: 85px; }
  html body .sppr85 { padding-right: 85px; }
  html body .spmt90 { margin-top: 90px; }
  html body .spmb90 { margin-bottom: 90px; }
  html body .spml90 { margin-left: 90px; }
  html body .spmr90 { margin-right: 90px; }
  html body .sppt90 { padding-top: 90px; }
  html body .sppb90 { padding-bottom: 90px; }
  html body .sppl90 { padding-left: 90px; }
  html body .sppr90 { padding-right: 90px; }
  html body .spmt95 { margin-top: 95px; }
  html body .spmb95 { margin-bottom: 95px; }
  html body .spml95 { margin-left: 95px; }
  html body .spmr95 { margin-right: 95px; }
  html body .sppt95 { padding-top: 95px; }
  html body .sppb95 { padding-bottom: 95px; }
  html body .sppl95 { padding-left: 95px; }
  html body .sppr95 { padding-right: 95px; }
  html body .spmt100 { margin-top: 100px; }
  html body .spmb100 { margin-bottom: 100px; }
  html body .spml100 { margin-left: 100px; }
  html body .spmr100 { margin-right: 100px; }
  html body .sppt100 { padding-top: 100px; }
  html body .sppb100 { padding-bottom: 100px; }
  html body .sppl100 { padding-left: 100px; }
  html body .sppr100 { padding-right: 100px; } }

/* ---- テキストカラー ---- */
.fc-red { color: #FF0000; }

/* ---- 画像リサイズ ---- */
.resize { width: 100%; }

@media all and (max-width: 767.9px) { .resize-sp { width: 100%; } }

.__por { position: relative; }

/* ============================================= Base ============================================= */
html { font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 62.5%; -webkit-text-size-adjust: 100%; }

body { font-size: 1.6rem; line-height: 2; min-width: 320px; }

a { color: #18448e; text-decoration: underline; -webkit-transition: opacity 0.35s; -o-transition: opacity 0.35s; transition: opacity 0.35s; -ms-touch-action: manipulation; touch-action: manipulation; }

a img { border: none; }

/* ============================================= Common ============================================= */
.inner { width: 100%; max-width: 1040px; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }

/* ============================================= Header ============================================= */
.header { position: fixed; top: 0; z-index: 100; width: 100%; }

.header_inner { width: 100%; height: 54px; background: #fff; display: flex; justify-content: flex-start; align-items: center; }

.header_logo { position: relative; display: flex; justify-content: flex-start; align-items: center; width: 78%; margin-left: 10px; padding-left: 45px; text-decoration: none; }

.header_logo:hover { opacity: 0.65; }

.header_logo::before { content: ""; background: url(../images/name_icon.png) no-repeat center left; background-size: 30px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 37px; height: 54px; box-shadow: 3px 0 2px 0 #ddd; }

.header_logo_name01 { width: auto; max-width: 30%; max-height: 50px; }

.header_logo_name02 { width: auto; max-width: 65%; max-height: 50px; margin-left: 5%; }

.nav_list .nav_link { font-size: 2.4rem; color: #fff; font-weight: bold; text-decoration: none; position: relative; padding-left: 50px; }

.nav_list .nav_link::after { content: ""; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }

.nav_list .nav_link.__01::after { width: 32px; height: 27px; background: url(../images/ic_header_01.png) no-repeat center; background-size: contain; }

.nav_list .nav_link.__02::after { width: 38px; height: 27px; background: url(../images/ic_header_02.png) no-repeat center; background-size: contain; }

.nav_list .nav_link.__03::after { width: 38px; height: 27px; background: url(../images/ic_header_03.png) no-repeat center; background-size: contain; }

.nav_list_sub { margin-top: 24px; }

.nav_list_sub .nav_link { font-size: 2.0rem; color: #fff; text-decoration: none; }

/* ============================================= Footer ============================================= */
.footer { padding-top: 25px; padding-bottom: 30px; }

@media all and (max-width: 767.9px) { .footer { padding-top: 15px; padding-bottom: 20px; } }

.footer .c-col { align-items: center; }

.footer_logo { width: 22.8%; }

@media all and (max-width: 767.9px) { .footer_logo { width: 48%; order: 1; }
  .footer_logo img { width: 100%; } }

.footer_logo img { width: 100%; }

.footer_copyright { font-size: 1.5rem; line-height: 1.75; width: 35%; }

@media all and (max-width: 767.9px) { .footer_copyright { width: 100%; order: 3; font-size: 1.2rem; text-align: center; } }

.footer_contact { width: 30.8%; }

@media all and (max-width: 767.9px) { .footer_contact { width: 48%; order: 2; } }

.footer_contact a { display: block; width: 100%; transition: 0.3s ease-in; }

.footer_contact a img { width: 100%; }

.footer_contact a:hover { transform: scale(0.9); opacity: 0.8; }

@media all and (max-width: 767.9px) { .main { margin-top: 54px; } }

@media all and (max-width: 767.9px) { #study, #meet, #use, #movie, #apply, #access { margin-top: -54px; padding-top: 54px; } }

.c-col { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }

.c-paragraph { font-size: 1.5rem; }

/*kv*/
.main_visual { width: 100%; }

.main_visual img { width: 100%; vertical-align: bottom; }

.sec_top { background: #ebe9e2; padding-top: 20px; padding-bottom: 100px; }

@media all and (max-width: 767.9px) { .sec_top { padding-bottom: 50px; } }

.sec_top_bg { background: url(../images/top_lead_bg.png) no-repeat top center; background-size: cover; padding-top: 70px; padding-bottom: 40px; }

@media all and (max-width: 767.9px) { .sec_top_bg { background-size: contain; } }

.sec_top_anchor { width: 92%; margin-left: auto; margin-right: auto; margin-top: 4.6%; }

@media all and (max-width: 767.9px) { .sec_top_anchor { width: 100%; justify-content: center; margin-left: -5px; } }

.sec_top_anchor_item { width: 30.2%; }

@media all and (max-width: 767.9px) { .sec_top_anchor_item { width: 49%; } }

.sec_top_anchor_link { display: block; width: 100%; transition: 0.3s ease-in; }

.sec_top_anchor_link img { width: 100%; }

.sec_top_anchor_link:hover { transform: scale(0.9); }

.sec_top .c-sec-ttl2 { text-align: center; font-size: 4rem; font-weight: bold; }

@media all and (max-width: 767.9px) { .sec_top .c-sec-ttl2 { line-height: 1.75; font-size: 8.4375vw; } }

.sec_top .c-paragraph { font-size: 1.7rem; width: 78.5%; margin-left: auto; margin-right: auto; }

@media all and (max-width: 767.9px) { .sec_top .c-paragraph { width: 100%; } }

.content { padding-top: 60px; padding-bottom: 90px; }

@media all and (max-width: 767.9px) { .content { padding-top: 30px; padding-bottom: 45px; } }

.content_top { margin-bottom: 40px; }

@media all and (max-width: 767.9px) { .content_top { margin-bottom: 20px; margin-top: 20px; } }

@media all and (max-width: 767.9px) { .content_top_icon { width: 100%; } }

.content_top_icon img { width: 100%; }

@media all and (max-width: 767.9px) { .content_top_ttl3 { width: 100%; } }

.content_top_ttl3 img { width: 100%; }

.content_top .c-paragraph { width: 87%; margin-top: 5px; }

@media all and (max-width: 767.9px) { .content_top .c-paragraph { width: 100%; } }

.content_detail { width: 50%; }

@media all and (max-width: 767.9px) { .content_detail { width: 100%; order: 2; } }

.content_image { width: 50%; position: relative; }

@media all and (max-width: 767.9px) { .content_image { width: 100%; margin-top: 20px; } }

.content_image_main { width: 100%; }

.content_image_sub { position: absolute; top: -8.5%; width: 80%; left: -44%; }

@media all and (max-width: 767.9px) { .content_image_sub { top: -5%; left: -2%; } }

.content_image_sub img { width: 100%; }

@media all and (max-width: 767.9px) { .content_image_sub img { width: 50%; } }

.content_study .content_top_icon { width: 37.4%; }

.content_study .content_top_ttl3 { margin-top: 20px; width: 86.4%; }

.content_study .content_panel.__01 { padding-bottom: 70px; }

@media all and (max-width: 767.9px) { .content_study .content_panel.__01 { padding-bottom: 40px; } }

.content_study .content_panel_img { width: 65%; margin-left: 20px; margin-top: 45px; }

@media all and (max-width: 767.9px) { .content_study .content_panel_img { width: 100%; margin-left: 0; margin-top: 20px; } }

.content_study .content_panel_img img { width: 100%; }

.content_study .content_panel_img.__panel02 { margin-top: -15px; }

.content_study .c-paragraph.__panel02 { width: 26%; margin-top: 60px; }

@media all and (max-width: 767.9px) { .content_study .c-paragraph.__panel02 { width: 100%; margin-top: 30px; } }

.content_study .c-paragraph.__panel03 { width: 26%; margin-top: 20px; }

@media all and (max-width: 767.9px) { .content_study .c-paragraph.__panel03 { width: 100%; margin-top: 10px; } }

.content_meet { margin-top: 130px; }

@media all and (max-width: 767.9px) { .content_meet { margin-top: 70px; } }

.content_meet .content_top_icon { width: 37.4%; }

.content_meet .content_top_ttl3 { margin-top: 20px; width: 86.4%; }

.content_meet .content_image_sub { top: -7.1%; left: -35.6%; }

@media all and (max-width: 767.9px) { .content_meet .content_image_sub { top: -5%; left: -2%; } }

.content_meet .content_panel_img { width: 21.5%; margin-top: 45px; }

@media all and (max-width: 767.9px) { .content_meet .content_panel_img { width: 100%; } }

.content_meet .content_panel_img img { width: 100%; }

.content_meet .content_panel_img.__panel06 { width: 54.3%; }

@media all and (max-width: 767.9px) { .content_meet .content_panel_img.__panel06 { width: 100%; } }

.content_meet_list { width: 69.3%; align-items: center; }

@media all and (max-width: 767.9px) { .content_meet_list { width: 100%; align-items: stretch; } }

.content_meet_list_item { width: 30%; border-bottom: 1px solid #999999; font-size: 2.3rem; line-height: 1.2; padding-bottom: 10px; margin-bottom: 10px; }

@media all and (max-width: 767.9px) { .content_meet_list_item { font-size: 1.6rem; } }

.content_meet_list.__panel05 { margin: 60px 0; }

@media all and (max-width: 767.9px) { .content_meet_list.__panel05 { margin: 30px 0 0; } }

.content_meet .c-paragraph.__panel04 { margin-top: 60px; }

@media all and (max-width: 767.9px) { .content_meet .c-paragraph.__panel04 { margin-top: 30px; } }

.content_meet .c-paragraph.__panel06 { width: 39.3%; margin-top: 45px; }

@media all and (max-width: 767.9px) { .content_meet .c-paragraph.__panel06 { width: 100%; margin-top: 20px; } }

.content_meet .c-comment.__panel04 { font-size: 1.2rem; margin-top: 10px; }

.content_meet .c-comment.__panel06 { font-size: 1.2rem; display: block; margin-left: 5px; }

.content_use { margin-top: 130px; }

@media all and (max-width: 767.9px) { .content_use { margin-top: 70px; } }

.content_use .content_top_icon { width: 37.4%; }

.content_use .content_top_ttl3 { margin-top: 20px; width: 86.4%; }

.content_use .content_image_sub { top: -5.7%; left: -31.2%; }

@media all and (max-width: 767.9px) { .content_use .content_image_sub { top: -5%; left: -2%; } }

.content_use .content_panel_img { width: 48%; margin-top: 30px; }

@media all and (max-width: 767.9px) { .content_use .content_panel_img { width: 100%; } }

.content_use .content_panel_img img { width: 100%; }

.content_use .c-paragraph.__panel07 { margin-left: 5px; }

.content_use .c-paragraph.__panel08 { font-size: 1.8rem; margin-top: 30px; }

@media all and (max-width: 767.9px) { .content_use .c-paragraph.__panel08 { font-size: 1.6rem; margin-top: 15px; } }

/*アコーディオン*/
.content_acordion_link { display: block; width: 100%; height: 70px; border-top: 1px solid #e4401b; cursor: pointer; position: relative; font-size: 2.3rem; line-height: 67px; color: #e4401b; padding-left: 55px; }

@media all and (max-width: 767.9px) { .content_acordion_link { font-size: 1.8rem; height: auto; padding-right: 25px; line-height: 1.4; padding-top: 10px; padding-bottom: 10px; } }

.content_acordion_link::before { content: ''; background: url(../images/ttl_icon.jpg) no-repeat top center; background-size: 100%; position: absolute; left: 0; top: 31px; width: 32px; height: 8px; }

@media all and (max-width: 767.9px) { .content_acordion_link::before { top: 50%; transform: translateY(-50%); } }

.content_acordion_link::after { content: ''; background: url(../images/arrow_down.png) no-repeat top center; background-size: 100%; position: absolute; right: 3%; top: 25px; width: 18px; height: 14px; transition: 0.3s ease-in; }

@media all and (max-width: 767.9px) { .content_acordion_link::after { top: 50%; transform: translateY(-50%); } }

.content_acordion_link.active { border-bottom: 1px solid #e4401b; }

.content_acordion_link.active::after { transform: rotate(180deg); }

@media all and (max-width: 767.9px) { .content_acordion_link.active::after { top: 50%; transform: rotate(180deg) translateY(50%); } }

.content_acordion_link.__last { border-bottom: 1px solid #e4401b; }

.content_panel { display: none; background: #ebe9e2; padding: 42px; }

@media all and (max-width: 767.9px) { .content_panel { padding: 20px; } }

.content_panel_ttl3 { font-size: 2.6rem; font-weight: bold; color: #333333; line-height: 1.92; }

@media all and (max-width: 767.9px) { .content_panel_ttl3 { font-size: 1.8rem; line-height: 1.6; } }

.content_panel_list { margin-top: 35px; }

@media all and (max-width: 767.9px) { .content_panel_list { margin-top: 20px; } }

.content_panel_list_item { width: 48%; }

@media all and (max-width: 767.9px) { .content_panel_list_item { width: 100%; } }

.content_panel_list_item img { width: 100%; }

.content_panel.__use01 { padding-right: 30px; }

@media all and (max-width: 767.9px) { .content_panel.__use01 { padding-right: 20px; } }

/*sec_bottom*/
.sec_bottom { background: #ebe9e2; padding-top: 100px; padding-bottom: 100px; }

@media all and (max-width: 767.9px) { .sec_bottom { padding-top: 50px; padding-bottom: 50px; } }

.sec_bottom .c-sec-ttl2 { font-size: 4rem; line-height: 1; color: #333; text-align: center; font-weight: bold; }

@media all and (max-width: 767.9px) { .sec_bottom .c-sec-ttl2 { font-size: 2.8rem; } }

.sec_bottom_movie { display: block; margin-top: 30px; width: 80%; margin-left: auto; margin-right: auto; }

@media all and (max-width: 767.9px) { .sec_bottom_movie { margin-top: 15px; width: 100%; } }

.sec_bottom_movie img { width: 100%; }

.sec_bottom_movie img:hover { opacity: 0.8; }

.sec_bottom_linkarea { margin-top: 100px; background: url(../images/cvarea_bg.jpg) no-repeat top center; background-size: cover; padding: 6% 9% 9%; }

@media all and (max-width: 767.9px) { .sec_bottom_linkarea { margin-top: 50px; padding: 3% 4% 4%; } }

.sec_bottom_linkarea_ttl3 { text-align: center; font-size: 3.3rem; font-weight: bold; }

@media all and (max-width: 767.9px) { .sec_bottom_linkarea_ttl3 { font-size: 2.0rem; line-height: 1.75; } }

.sec_bottom_linkarea_list { margin-top: 60px; align-items: flex-start; }

@media all and (max-width: 767.9px) { .sec_bottom_linkarea_list { margin-top: 30px; } }

.sec_bottom_linkitem { width: 29.2%; }

.sec_bottom_linkitem a { display: block; width: 100%; transition: 0.3s ease-in; }

.sec_bottom_linkitem a img { width: 100%; vertical-align: bottom; }

.sec_bottom_linkitem a:hover { transform: scale(0.95); opacity: 0.8; }

@media all and (max-width: 767.9px) { .sec_bottom_linkitem { width: 100%; margin-bottom: 20px; } }

.sec_movie_lnk { display: block; margin-top: 30px; width: 100%; margin-left: auto; margin-right: auto; position: relative; padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/ height: 0; overflow: hidden; }

@media all and (max-width: 767.9px) { .sec_movie_lnk { margin-top: 15px; width: 100%; } }

.sec_movie_lnk iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

/*アクセス*/
.sec_access { background: url(../images/access_bg.jpg) no-repeat top center; padding-top: 80px; padding-bottom: 80px; background-size: cover; }

@media all and (max-width: 767.9px) { .sec_access { padding-top: 40px; padding-bottom: 40px; } }

.sec_access_box { background: rgba(255, 255, 255, 0.9); padding: 8% 7.5% 7.5%; }

.sec_access .c-sec-ttl2 { width: 16.5%; margin-left: auto; margin-right: auto; }

@media all and (max-width: 767.9px) { .sec_access .c-sec-ttl2 { width: 50%; } }

.sec_access .c-sec-ttl2 img { width: 100%; }

.sec_access_content { align-items: center; justify-content: space-between; margin-top: 50px; }

@media all and (max-width: 767.9px) { .sec_access_content { margin-top: 25px; } }

.sec_access_detail { font-size: 2.1rem; line-height: 1.75; padding-left: 54px; position: relative; width: 50%; }

@media all and (max-width: 767.9px) { .sec_access_detail { width: 100%; font-size: 1.6rem; margin-bottom: 20px; } }

.sec_access_detail::before { content: ""; background: url(../images/access_point.png) no-repeat top center; background-size: 100%; width: 36px; height: 52px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }

.sec_access_link { width: 36.2%; }

@media all and (max-width: 767.9px) { .sec_access_link { width: 100%; } }

.sec_access_linkbtn { display: block; width: 100%; transition: 0.3s ease-in; }

.sec_access_linkbtn img { width: 100%; }

.sec_access_linkbtn:hover { transform: scale(0.95); opacity: 0.8; }

.sec_access_uni { margin-top: 90px; }

@media all and (max-width: 767.9px) { .sec_access_uni { margin-top: 40px; } }

.sec_access_uni_name { font-size: 3rem; font-weight: bold; position: relative; padding-left: 60px; }

@media all and (max-width: 767.9px) { .sec_access_uni_name { font-size: 2.1rem; } }

.sec_access_uni_name::before { content: ""; background: url(../images/name_icon.png) no-repeat top center; background-size: 100%; width: 40px; height: 48px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }

.sec_access_uni_detail { margin-top: 10px; font-size: 1.5rem; line-height: 2; }

.pagetop { width: 1000px; max-width: 100%; height: 70px; }

.pagetop_btn { display: block; float: right; margin-right: -9%; width: 7%; height: 7%; }

.pagetop_btn:hover { opacity: 0.65; }

.pagetop_btn img { width: 100%; vertical-align: bottom; }

@media all and (max-width: 1000px) { .pagetop { max-width: 95%; } }

@media all and (max-width: 1180px) { .pagetop_btn { margin-right: 0; } }

@media all and (max-width: 767.9px) { .pagetop { width: 100%; max-width: 89%; }
  .pagetop_btn { width: 15.5%; margin-right: 0; } }
