@charset "UTF-8";
@import url('./init.css');


/* =============== 全体 */

body {display:flex; flex-direction:column; min-height:100vh; background:#fbfbfc; font:1.6rem/1.8 "Noto Sans JP", sans-serif; font-weight:300; color:#000; font-feature-settings:"pkna";}
body[data-locale="en"] *, body[data-locale="en"] * > * {font-weight:400!important;}
body[data-locale="cn"] {font-family:'Noto Sans SC', sans-serif; font-weight:300;}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {font-family:inherit;}
main {flex-grow:1; overflow-x:hidden;}
.content {margin:0 auto; position:relative;}
.content:after {content:""; display:block; clear:both;}
:root {--themeBlue:#001D79; --themeLightBlue:#68d4; --themeGray:#e8eaec; --themeGray2:#e0e4e8ee; --themeGold:#dbaf51;}

@media (min-width:981px) {
  body {align-items:center;}
}

@media (min-width:601px) {
  body {width:100%; min-width:980px;}
  .pageHeader, main, .pageFooter {width:100%; min-width:980px;}
  .content {width:calc(100% - 50px); max-width:1200px; min-width:950px;}
}

@media (max-width:600px) {
  .navopen {overflow:hidden;}
  .navOverlay {width:100%; height:100%; position:fixed; top:0; left:0; z-index:10; background:#e5e5e5; display:none; z-index:900;}
  .pageHeader, .pageFooter {min-width:320px;}
  .content {width:auto; margin:0 20px;}
}


/* =============== ヘッダ */

.pageHeader {position:sticky; top:0; z-index:10000; box-shadow:0 3px 0 var(--themeBlue); background:#fff;}
.pageHeader .content {display:flex; justify-content:space-between; align-items:center;}
.pageHeader > .content:first-of-type:after {content:""; display:none;}
.pageHeader a {text-decoration:none;}
.pageHeader a:hover {color:#1f1a72;}
.pageHeader .__siteName img {height:44px; transition:.15s all;}
.pageHeader img[src*="icon_search"] {width:20px; transition:.1s all;}
.scrlnav {display:none;}
.pageHeader .__btns {position:relative; display:flex; align-items:center; gap:clamp(16px,1.6vw,30px);}
.pageHeader .__btns:before {content:""; display:inline-block; position:relative; left:clamp(-5px,-1.3vw,-18px); height:25px; border-left:1px #ccc solid;}
.pageHeader .__btns > li {position:relative;}
.pageHeader .__btns > li > a:first-child {position:relative; display:block; width:25px; height:25px; background-position:50% 50%; background-repeat:no-repeat; background-size:contain; overflow:hidden; text-indent:200%;}
.pageHeader .__btns > li.__search > a:first-child {background-image:url(../../images/common/icon_search.png);}
.pageHeader .__btns > li.__lang > a:first-child {background-image:url(../../images/common/icon_lang.png);}
.pageHeader .__btns > li.__auth > a:first-child {background-image:url(../../images/common/icon_logout.png);}
.pageHeader .__btns > li:not(.__spnav) a:before,
.pageHeader .__btns .__lang #lang {position:absolute; left:50%; z-index:60; display:flex; flex-direction:column; gap:3px; max-height:0; max-width:0; background:#fff; padding:0 14px; overflow:hidden; box-sizing:border-box; transform:translate(-50%,8px);}
.pageHeader .__btns .__lang .on ~ #lang {max-height:200px; max-width:300px; padding:10px 14px; background:var(--themeGray);}
.pageHeader .__btns .__lang:only-child .on ~ #lang  {transform:translate(-70%,8px);}
.pageHeader .__btns .__lang #lang a {display:block; padding:0 .4em;}
.pageHeader .__btns .__lang #lang a.on {background:var(--themeBlue); color:#fff;}
.pageHeader .__btns .__spnav a:before,
.pageHeader .__btns .__spnav a:after {content:""; display:block; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:30px; height:3px; background:var(--themeBlue); transition:.15s all;}
.pageHeader .__btns .__spnav a:before {box-shadow:0 -8px 0 var(--themeBlue);}
.pageHeader .__btns .__spnav a:after {box-shadow:0 8px 0 var(--themeBlue);}
.navopen .pageHeader .__btns .__spnav a:before {box-shadow:none; transform:translate(-50%,-50%) rotate(-45deg);}
.navopen .pageHeader .__btns .__spnav a:after {box-shadow:none; transform:translate(-50%,-50%) rotate(45deg);}
.pageHeader .__btns a.on img {opacity:0;}
.pageHeader .gnav > li > a:first-child {font-weight:500;}
 
.pageHeader nav svg {vertical-align:-10%; fill:#000;}
.gnav .-pr ~ .-ch {opacity:0; height:0; max-height:0; overflow:hidden; transition:max-height .2s linear, opacity .1s linear; box-sizing:border-box;}
i.ten {display:inline-block; vertical-align:15%; width:4px; height:4px; margin:0 .12em 0 .15em; background:#222; border-radius:50%;}
.pageHeader #searchBox {position:absolute; left:0; max-height:0; box-sizing:border-box; overflow:hidden; opacity:0; transition:.2s all; width:100%;}
.searching .pageHeader #searchBox {max-height:1000px; opacity:1;}
#searchBox form {display:inline-block; background:#fff;}
#searchBox input,
#searchBox button {margin:0; border:0; vertical-align:middle}
#searchBox input {padding:2px 6px; text-align:left;}
#searchBox button {padding:8px 12px; background:#001D7A; font-size:93%; font-weight:500; color:#fff;}
#searchBox button img[src*="icon_search"] {width:16px; vertical-align:-15%; margin-right:.4em;}

@media (min-width:601px) {
  .pageHeader .content {gap:max(3vw,15px);}
  #spNav {display:none;}
  .pageHeader .__siteName {order:-2; padding:12px 0 10px;}
  .pageHeader .__btns .__spnav {display:none;}
  .pageHeader .__caution {margin:-.6em 0 .6em;}
  .pageHeader nav {flex-grow:1; order:-1;}
  .gnav {display:flex; gap:min(1.5vw, 30px); justify-content:space-around;}
  .gnav > li > a {position:relative; display:block; min-width:4em; min-width:0; height:60px; margin:0 auto; padding:7px 0 3px; text-align:center; line-height:1.3; font-size:108%; white-space:nowrap;}
  .gnav > li > a.-crnt:after,
  .gnav > li > a:hover:after {content:""; display:block; width:100%; border-top:2px #1f1a72 solid; position:absolute; bottom:.4em; left:0;}
  .gnav > li > a > .txtWrap {display:inline-block; vertical-align:middle; max-width:calc(100% - 1px);}
  .gnav > li > a:before {content:""; display:inline-block; height:100%; vertical-align:middle;}
  .gnav .-pr ~ .-ch {display:block!important; position:absolute; left:0; z-index:100; width:100%; background:var(--themeGray); box-shadow:-950px 0 0 var(--themeGray), 950px 0 0 var(--themeGray);}
  body:not(.searching) .gnav li .-pr:hover ~ .-ch,
  body:not(.searching) .gnav li .-pr ~ .-ch:hover {opacity:1; height:auto; max-height:1000px;}
  .gnav .-pr ~ .-ch ul {display:grid; grid-template-columns:repeat(auto-fill, minmax(17em,1fr)); padding:15px 0;}
  .gnav .-pr:is([href*="waiwai"],[href*="philo"]) ~ .-ch ul {display:grid; grid-template-columns:repeat(auto-fill, minmax(20em,1fr)); padding:15px 0;}
  .gnav .-pr ~ .-ch li {padding:0 10px;}
  .gnav .-pr ~ .-ch a {position:relative; display:block; padding:10px 10px 10px 30px; line-height:1.3; font-weight:500;}
  .gnav .-pr ~ .-ch a:before {content:""; display:inline-block; vertical-align:10%; width:6px; height:6px; margin-right:.6em; border:#001D7A solid; border-width:2px 2px 0 0; transform:rotate(45deg);}
  .pageHeader #searchBox {padding:40px 0; background:var(--themeGray); box-shadow:-950px 0 0 var(--themeGray), 950px 0 0 var(--themeGray); text-align:center;}
  .pageHeader #searchBox b {margin-right:1em;}
  body:not(.searching) .pageHeader #searchBox {padding:0;}
}

@media (max-width:600px) {
  .pageHeader .content {flex-wrap:wrap; margin:0;}
  .pageHeader > .content ~ .content {position:static;}
  .pageHeader .__siteName {margin-left:15px; padding:10px 0;}
  .pageHeader .__siteName img {height:35px;}
  .pageHeader .__btns {margin-right:15px;}
  .pageHeader .__btns li {padding:0;}
  .pageHeader .__btns .__auth a {font-size:85%;}
  .pageHeader img[src*="icon_search"] {width:18px;}
  .pageHeader .__caution {margin-bottom:2px;}
  .pageHeader nav {width:100%;}
  .pageHeader nav img[src*="header_home"] {margin-right:.3em;}
  .scrlnav {position:relative; z-index:50; display:block; width:100%; overflow:hidden; line-height:26px; transition:.1s all;}
  .scrlnav .__rail {overflow:auto; transition:.3s all;}
  .scrlnav ul {display:table;}
  .scrlnav li {display:table-cell; white-space:nowrap;}
  .scrlnav li a {display:block; padding:.3em 8px; font-weight:500;}
  .scrlnav a.-crnt {background:#001D7A; color:#fff;}
  .scrlnav a.-crnt svg {fill:#fff; translate:-4px 0;}
  .scrlnav li:first-child a {padding-left:15px;}
  .scrlnav li:last-child a {padding-right:15px;}
  .scrlnav li:not(:first-child) a.-crnt {margin-left:3px;}
  .scrlnav li:not(:last-child) a.-crnt {margin-right:3px;}
  .scrlnav .__arw {position:absolute; top:0; width:45px; height:35px; transition:.3s all;
    background:-webkit-linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 40%,  rgba(255,255,255,.8) 65%, rgba(255,255,255,.5) 80%, rgba(255,255,255,0) 100%); 
    background:linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 40%, rgba(255,255,255,.8) 65%, rgba(255,255,255,.5) 80%, rgba(255,255,255,0) 100%);}
  .scrlnav .__arw:after {content:""; display:block; position:absolute; top:calc(50% - 4px); left:10px; width:6px; height:6px; border:#333 solid; border-width:0 0 2px 2px; transform:rotate(45deg);}
  .scrlnav .__arw.-R {right:0; transform:rotate(180deg);}
  .scrlnav .__arw.-L:not(.on) {left:-45px;}
  .scrlnav .__arw.-R:not(.on) {right:-45px;}
  .gnav {max-height:0; overflow:hidden; opacity:0; transition:.2s opacity, .2s left; position:absolute; z-index:60; width:100%; left:-100vw;}
  .navopen .scrlnav {opacity:0;}
  .navopen .gnav {max-height:2000px; height:calc(100vh - 55px); opacity:1; left:0; top:55px; background:rgba(255,255,255,.97); overflow:auto;}
  .gnav li {position:relative;}
  .gnav a {display:block;}
  .gnav > li > a {margin-right:50px; padding:0 15px; font-weight:500; font-size:1.6rem; line-height:60px;}
  .gnav > li + li {border-top:1px #ccc dotted;}
  .gnav .acdnSw {display:block; position:absolute; right:0; top:0; width:50px; height:60px;}
  .gnav .acdnSw:before,
  .gnav .acdnSw:after {content:""; display:block; position:absolute; left:auto; right:20px; top:50%; width:14px; height:auto; margin-top:-1px; border-top:3px #091A73 solid; transform:rotate(0deg); transition:all .1s;}
  .gnav .acdnSw:after {transform:rotate(90deg);}
  .gnav .-pr ~ .-ch a {position:relative; padding:.3em 1em .3em 50px;}
  .gnav .-pr ~ .-ch a:before {content:""; display:block; position:absolute; left:30px; top:calc(50% - 4px); width:6px; height:6px; border:#091A73 solid; border-width:2px 2px 0 0; transform:rotate(45deg);}
  .gnav .open .-ch {position:relative; top:-10px; display:block; opacity:1; width:100%!important; height:auto; max-height:500px;}
  .gnav .open .acdnSw:after {transform:rotate(0deg);}
  .pageHeader #searchBox {z-index:100; height:calc(100vh - 55px); top:55px; left:0; padding:5px 15px; background:rgba(255,255,255,.97);}
  body:not(.searching) .pageHeader #searchBox {left:-100vw;}
  .pageHeader #searchBox b {font-size:1.6rem;}
  #searchBox form {margin-top:10px; border:1px #ccc solid; white-space:nowrap; transition:.2s opacity, .2s left;}
  #searchBox input[type="text"] {width:calc(100vw - 110px); box-sizing:border-box;}
  #searchBox button {width:74px;}
}

.temporaryNotice {width:100%; padding:.8em 1.2em; background:#262626; line-height:1.6; color:#fff; text-align:left;}

.temporaryNotice.main {background:#001a72;}
.temporaryNotice.plane {background:#262626;}
.temporaryNotice.accent {background:#E64600;}
.temporaryNotice.sub {background:#809EFE; color:#2a2a2a;}
.temporaryNotice.pale {background:var(--themeGray2); color:#2a2a2a;}


.modalScreen {position:fixed; width:100%; height:100%; left:0; top:0; z-index:10010; background:#000a; transition:opacity .2s; overflow:hidden; max-height:999999px;}
.logoutConfirmation {position:fixed; left:50%; top:50%; z-index:10011; padding:1em; background:#fff; text-align:center; box-shadow:0 0 10px #0004; transform:translate(-50%,-50%); white-space:nowrap; transition:opacity .2s; overflow:hidden; max-height:500vh;}
.logoutConfirmation ._title {font-size:116%; font-weight:bold;}
.logoutConfirmation ul {display:flex; align-items:center; justify-content:center; gap:6px; margin-top:1.5em; padding-top:1.5em; border-top:1px #0002 solid;}
.logoutConfirmation a {display:block; padding:0 .6em; border-radius:4px; text-decoration:none; color:#555;}
.logoutConfirmation a[href*="/logout/"] {padding:.3em .8em; background:var(--themeBlue); color:#fff;}
body:not(.-loggingOut) :is(.modalScreen,.logoutConfirmation) {max-height:0; opacity:0; top:0; left:0;}

/* =============== フッタ */

.utilBtns {position:fixed; bottom:70px; right:-6px; z-index:1000; display:flex; padding-right:6px; border-radius:10px 0 0 10px; background:var(--themeGray); transition:.5s all; opacity:0; overflow:hidden; box-shadow:-2px 3px 0 #0005;}
.utilBtns.-loaded {opacity:1;}
.utilBtns li {position:relative; max-width:100px; opacity:1; transition:.6s all; line-height:1.1; font-size:1.1rem; font-weight:bold; color:var(--themeBlue);}
.utilBtns li._switch {display:flex; align-items:center; justify-content:center; min-width:30px; background:var(--themeBlue); color:#fff;}
.utilBtns li._switch > span {display:block; text-align:center; font-size:1.1rem; writing-mode:vertical-rl; padding-block:.2em; transition:.5s all;}
.utilBtns li._switch:before {content:""; display:block; position:absolute; top:50%; left:14px; border:transparent 8px solid; border-left:10px #fff solid; border-right:0; transform:translate(-15%,-50%); transition:.3s all;}
.utilBtns li + li:before {content:""; display:block; height:calc(100% - 20px); position:absolute; left:0; top:10px; border-left:1px #0002 solid;}
.utilBtns a {display:block; text-decoration:none; text-align:center; white-space:nowrap;}
.utilBtns a i {display:flex; flex-direction:column; aspect-ratio:1/1; margin-inline:auto; background-position:0% 0%; background-repeat:no-repeat; background-size:contain;}
.utilBtns a[href*="calendar"] i {background-image:url(../../images/common/icon_utl_calendar.png);}
.utilBtns a[href*="bus"] i {background-image:url(../../images/common/icon_utl_bus.png);}
.utilBtns a[href*="parking"] i {background-image:url(../../images/common/icon_utl_parking.png);}
.utilBtns a[href*="menu"] i {background-image:url(../../images/common/icon_utl_dining.png);}
.utilBtns a[href*="facilities"] i {background-image:url(../../images/common/icon_utl_reserve.png);}
.utilBtns a[href*="hr"] i {background-image:url(../../images/common/icon_utl_jinji.png);}
.utilBtns a[href*="welfare"] i {background-image:url(../../images/common/icon_utl_bu.png);}

@media (min-width:601px) {
  .utilBtns {bottom:90px;}
  .utilBtns:not(:hover) li._switch {padding:0 6px 0 20px;}
  .utilBtns:not(:hover) li._switch:before {left:10px; border-right:10px #fff solid; border-left:0; transform:translate(-25%,-50%);}
  .utilBtns:hover li._switch > span {opacity:0;}
  .utilBtns:not(:hover) li._switch ~ li {max-width:0; opacity:0;}
  .utilBtns a {width:80px; padding:15px 0;}
  .utilBtns i {width:36px; margin-bottom:4px;}
}
@media (max-width:600px) {
  .utilBtns {bottom:30px; display:grid; grid-template-columns:auto 1fr 1fr 1fr; grid-template-rows:1fr 1fr;}
  .utilBtns li._switch {display:flex; flex-direction:column; gap:10px; align-items:center; grid-row:1/-1;} 
  .utilBtns li._switch:before {position:static; transform:none;}
  .utilBtns li._switch:not(.-on):before {top:24px; left:13px; border-right:10px #fff solid; border-left:0; transform:none;}
  .utilBtns li:nth-child(4) ~ li {border-top:1px #0002 solid;}
  .utilBtns a {width:60px; padding:.8em 0 .6em;}
  .utilBtns i {width:30px; margin-bottom:2px;}
  .utilBtns li._switch > span {overflow:hidden;}
  .utilBtns li._switch.-on > span {height:0; width:0; opacity:0;}
  .utilBtns li._switch:not(.-on) ~ li {max-width:0; opacity:0;}
}

.pageFooter {background:#001D79; color:#fff;}
.pageFooter > * {padding:30px 0; font-size:1.4rem;}
.pageFooter a {text-decoration:none; color:#fff;}
.pageFooter a:hover {text-decoration:underline;}

.breadcrumb {background:var(--themeGray2); color:#2a2a2a;}
.breadcrumb a {color:#2a2a2a;}
.breadcrumb li:not(:last-child) {float:left; position:relative;}
.breadcrumb li:not(:last-child):after {content:""; display:inline-block; vertical-align:5%; width:6px; height:6px; margin:0 .6em; border:#333 solid; border-width:1px 1px 0 0; transform:rotate(45deg);}
.breadcrumb a {text-decoration:none;}

.pageFooter .__banners {background:var(--themeGray2); color:#2a2a2a; overflow:hidden;}
.pageFooter .breadcrumb ~ .__banners {background:#d3d8dc;}
.pageFooter .__banners ul {width:calc(100% + 20px); margin-left:-10px;}
.pageFooter .__banners li {padding:10px;}
.pageFooter .__banners li a {display:block; position:relative;}
.pageFooter .__banners li a:after {content:""; display:block; position:absolute; bottom:0px; right:0px; border-bottom:12px #5367A5 solid; border-left:12px transparent solid; opacity:.6;}
.pageFooter .__banners li img {width:100%;}
.pageFooter .__banners .slick-arrow {z-index:20; width:35px; height:35px; top:50%; transition:.1s all;}
.pageFooter .__banners .slick-arrow:before {content:""; display:block; position:absolute; left:30%; top:50%; width:8px; height:8px; border:rgba(100,100,100,.6) solid; border-width:3px 3px 0 0; transform:rotate(45deg) translate(-50%,-50%); opacity:1;}
.pageFooter .__banners .slick-prev {left:-30px;}
.pageFooter .__banners .slick-next {right:-30px;}
.pageFooter .__banners .slick-prev:before {left:40%; border-width:0 0 3px 3px;}

.fnav {overflow:hidden; margin-bottom:1em;}
.fnav li {float:left; position:relative; left:-34px; padding-left:34px;}
.fnav li:before {content:""; display:block; position:absolute; left:17px; top:calc(50% - .5em); height:1em; border-left:1px rgba(255,255,255,.6) solid;}
.pageFooter .__sns {display:flex; flex-wrap:wrap;}
.pageFooter .__sns dt {letter-spacing:.15em; font-size:85%;}
.pageFooter .__sns img {width:36px;}
.pageFooter .__copyright {font-size:1.1rem;}
.pageFooter .__aisinLogo {position:absolute; right:80px; top:50%; transform:translate(0,-10%);}
.pageFooter .__aisinLogo a {display:block; height:22px;}
.pageFooter .__aisinLogo img {display:block; width:110px;}
.pageFooter .__scrlToTop {position:absolute; right:0; top:50%; transform:translate(0,-10%); width:30px; height:30px; background:#fff; padding:0; border-radius:50%; cursor:pointer; transition:.1s all;}
.pageFooter .__scrlToTop:hover {opacity:.8;}
.pageFooter .__scrlToTop:after {content:""; display:block; position:absolute; top:50%; left:50%; box-sizing:border-box; width:11px; height:11px; border:#001D79 solid; border-width:3px 3px 0 0; transform:rotate(-45deg) translate(-10%,-60%);}

@media (max-width:1280px){
  .pageFooter .__banners .slick-prev {left:-25px;}
  .pageFooter .__banners .slick-next {right:-25px;}
}

@media (min-width:601px) {
  .pageFooter .__sns {position:absolute; right:230px; width:90px; top:50%; justify-content:space-between; transform:translate(0,-60%);}
  .pageFooter .__sns dt {width:100%; margin-bottom:.33em; text-align:center; text-indent:-.2em;}
}
@media (max-width:600px) {
  .pageFooter > * {padding:15px 0;}
  .pageFooter .__banners h2 {display:none;}
  .pageFooter .__banners ul {width:calc(100% - 20px); margin-left:10px; padding:5px 0;}
  .pageFooter .__banners li {padding:3px;}
  .pageFooter .__banners .slick-arrow {width:24px; height:30px; background:rgba(100,100,100,.3); transform:translate(0,-50%);}
  .pageFooter .__banners .slick-arrow:before {top:calc(50% + 2px); border-color:#fff;}
  .pageFooter .__banners .slick-prev {left:-30px;}
  .pageFooter .__banners .slick-next {right:-31px;}
  .pageFooter .__banners .slick-next:before {left:20%;} 
  .pageFooter .__sns {gap:10px; align-items:center; margin-bottom:1em;}
  .pageFooter .__copyright {font-size:1.1rem;}
  .pageFooter .__copyright .IB {display:block;}
  .pageFooter .__aisinLogo {right:0; top:auto; bottom:15px; transform:none;}
  .pageFooter .__aisinLogo img {width:80px;}
  .pageFooter .__scrlToTop {top:25px; transform:none;}
}


/* =============== メイン */

.mainCol {float:left; width:calc((100% - 81px) / 3 * 2 + 40px); padding-top:35px;}
.sideCol {padding-top:35px;}
.-singleCol {padding-top:80px;}
.mainCol > * + section,
.-singleCol > * + section {margin-top:60px;}
.sideCol > section + section {margin-top:50px;}

/* コンテンツエリアの要素 初期マージン */
main *:last-child {margin-bottom:0;}
main * + p,
main * + ul,
main * + ol,
main * + dl,
main * + table {margin-top:.8em;}
main ul:not[class] {padding-left:1.5em; list-style-type:disc;}
main ul:not[class] > li > ul:not[class] {padding-left:1.5em; list-style-type:circle;}
main h4 + *, main .h4 + *,
main h5 + *, main .h5 + *,
main h6 + *, main .h6 + * {margin-top:0;}
.sideRanking {border:4px var(--themeGold) solid;}
.sideRanking h2 {--themeBlue:var(--themeGold); border:0;}
.sideRanking h2 .h2wrap {border:0;}

@media (min-width:601px) {
  main {min-width:980px; line-height:1.8;}
  main > *:last-child {padding-bottom:60px;}
  .sideCol {float:right; width:calc((100% - 81px) / 3); padding-bottom:20px; /*position:sticky; top:0;*/}
  .sideRanking {padding:.2em clamp(10px,calc(10px + (100vw - 1100px) * .1),20px) .6em;}
}
@media (max-width:600px) {
  main > *:last-child {padding-bottom:30px;}
  .mainCol {float:none; width:auto; padding-top:30px; line-height:1.6;}
  .mainCol > * + section {margin-top:30px;}
  main {min-width:320px;}
  main .pageTitle ~ .content,
  main .pageTitle ~ section > .content {width:auto; margin:0 15px;}
  .-singleCol {padding-top:30px;}
  
  .sideCol {display:flex; flex-wrap:wrap; position:static!important; width:auto!important; bottom:auto!important; right:auto!important;}
  .sideCol > section {width:100%;}
  .sideCol .sideRanking {order:2; margin-top:50px; padding:.2em 10px .6em; }
  .sideCol .sideComment {order:1; margin-top:0;}
}

/* ページタイトル */
.pageTitle {background:-moz-linear-gradient(260deg, #4D5CBB, #757BCC); 
  background:-webkit-linear-gradient(260deg, #4D5CBB, #757BCC); 
  background:linear-gradient(170deg, #4D5CBB, #757BCC);
  padding:110px 0;}
.pageTitle h1 {color:#fff; font-size:3.5rem;}

@media (max-width:600px) {
  .pageTitle {padding:40px 0;}
  .pageTitle h1 {font-size:2.1rem;}
}




/*----------------------------------------------------------------------------------------------------------------------------------------

  メインコンテンツ 汎用スタイル

----------------------------------------------------------------------------------------------------------------------------------------*/

:is([class*="entryList"], [class*="headlines"]) .__pic {aspect-ratio:16/9;}

/* H2～H6 */

:root {--hllh:calc(1em + .625rem);}
h2, .h2 {margin:0 0 2.6rem; border-top:2px rgba(198,198,198,1) solid; font-size:3rem; font-weight:500;}
* + h2, * + .h2 {margin-top:3em;}
h2:before, .h2:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h2:after, .h2:after {content:""; display:none; width:0; height:0; border:0; transform:none;}
.h2wrap {display:inline-block; margin-top:-2px; padding-top:.4em; border-top:2px var(--themeBlue) solid; box-shadow:0 1px 0 (--themeBlue);}
:is(.sideCol,.pageFooter) :is(h2,.h2) {font-size:1.9rem;}

h3, .h3 {margin:0 0 1.3rem; font-size:2.1rem; font-weight:500; border:0;}
* + h3, * + .h3 {margin-top:2em;}
h3:before, .h3:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h3:after, .h3:after {content:""; display:none; width:0; height:0; border:0; transform:none;}
.h3 .h2wrap {border:0;}

h4, .h4 {margin:0 0 1rem; font-size:1.8rem; font-weight:500;}
* + h4, * + .h4 {margin-top:1.8em;}
h4:before, .h4:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h4:after, .h4:after {content:""; display:none; width:0; height:0; border:0; transform:none;}

h5, .h5 {margin:0 0 .6rem; font-size:1.7rem; font-weight:500;}
* + h5, * + .h5 {margin-top:1.2em;}
h5:before, .h5:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h5:after, .h5:after{content:""; display:none; width:0; height:0; border:0; transform:none;}

h6, .h6 {margin:0 0 .5rem; font-size:1.6rem; font-weight:500;}
* + h6, * + .h6 {margin-top:.8em;}
h6:before, .h6:before {content:""; display:none; width:0; height:0; border:0; transform:none;}
h6:after, .h6:after {content:""; display:none; width:0; height:0; border:0; transform:none;}

h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6 {line-height:var(--hllh);}

/*.fs-4 {font-size:1.2rem!important;}
.fs-3 {font-size:1.3rem!important;}
.fs-2 {font-size:1.4rem!important;}
.fs-1 {font-size:1.5rem!important;}
.fs1 {font-size:1.6rem!important;}
.fs2 {font-size:1.8rem!important;}
.fs3 {font-size:2.0rem!important;}
.fs4 {font-size:2.2rem!important;}
.fs5 {font-size:2.4rem!important;}
.fs6 {font-size:2.8rem!important;}*/

@media (min-width:601px) {
}

@media (max-width:600px) {
  h2, .h2 {font-size:2.2rem; margin-bottom:2rem;}
  h3, .h3 {font-size:1.85rem; margin-bottom:1.5rem;}
  h4, .h4 {font-size:1.7rem; margin-bottom:1rem;}
  h5, .h5 {font-size:1.5rem; margin-bottom:.8rem;}
  h6, .h6 {font-size:1.4rem; margin-bottom:.6rem;}
  .fs-4 {font-size:1.0rem!important;}
  .fs-3 {font-size:1.1rem!important;}
  .fs-2 {font-size:1.2rem!important;}
  .fs-1 {font-size:1.3rem!important;}
  .fs1 {font-size:1.4rem!important;}
  .fs2 {font-size:1.7rem!important;}
  .fs3 {font-size:1.85rem!important;}
  .fs4 {font-size:2.0rem!important;}
  .fs5 {font-size:2.2rem!important;}
  .fs6 {font-size:2.5rem!important;}
}

/* .btn */
.btn1 :is(a,button), *:is(a,button).btn1 {position:relative; display:inline-block; min-width:200px; padding:.4em 30px .4em 15px; border:0; border-radius:4px; background:#001D7A; text-decoration:none; text-align:center; color:#fff; box-sizing:border-box;}
.btn1 :is(a,button):after, *:is(a,button).btn1:after {content:""; display:block; position:absolute; right:10px; top:calc(50% - 4px); width:4px; height:4px; border:#fff solid; border-width:2px 2px 0 0; transform:rotate(45deg);}
.btn1.-wh :is(a,button), *:is(a,button).btn1.-wh {position:relative; display:inline-block; min-width:140px; padding:.4em 15px; border:2px #001D7A solid; background:transparent; text-decoration:none; text-align:center; color:#001D7A; box-sizing:border-box;}
.btn1.-wh.-write :is(a,button):before, *:is(a,button).btn1.-wh.-write:before {content:""; display:inline-block; width:1em; height:1em; margin-right:.4em; background:url(../../images/common/icon_write.png) no-repeat 50% 50% / contain;}

[class*="headlines"] .btn1 a {border-color:#fff; color:#fff;}
[class*="headlines"] .btn1 a:after {background-image:url(../../images/common/icon_arw_wh.png); background-size:contain;}

.btn2:after {content:""; display:inline-block; width:14px; height:8px; margin-left:.4em; background:url(../../images/common/icon_arw.png) no-repeat 50% 20%; background-size:contain;}

.-inclB2 {margin-bottom:0; padding-right:80px;}
.-inclB2 + .btn2 {margin:-2.8rem 0 2em calc(100% - 80px); text-align:right; font-size:77%; color:#001D7A; white-space:nowrap;}
.-inclB2 + .btn2 a {text-decoration:none; color:#001D7A;}

.btn3 a:before, a.btn3:before {content:""; display:inline-block; height:5px; width:5px; margin-right:.4em; border:#001D7A solid; border-width:2px 2px 0 0; transform:rotate(45deg);}

.btn4 a, a.btn4 {position:relative; display:block; padding-left:calc(24px + .4em);}
.btn4 .__arw {position:absolute; left:0; top:calc(50% - 12px); display:inline-block; width:24px; height:24px; background:#001D79; border-radius:50%;}
.btn4 .__arw:before {content:""; display:block; position:absolute; left:calc(50% - 5.5px); top:calc(50% - 4px); width:6px; height:6px; border:#fff solid; border-width:3px 3px 0 0; transform:rotate(45deg);}

.-newWindow a, a.-newWindow {display:inline-block; position:relative; padding-right:35px;}
.-newWindow a:after, a.-newWindow a:after {content:""; display:block;position:absolute; top:50%; right:15px; width:14px; height:14px; margin:0 0 0 .6em; padding:0; border:0; background:url(../../images/common/icon_newwindow.png) no-repeat 50% 50%; background-size:contain; transform:translate(0,-50%);}

/* .記事リスト関連 */
.__pic {position:relative; text-align:center; overflow:hidden;}
.__pic img {width:100%; height:100%; object-fit:cover; box-shadow:1px 1px 0 rgba(0,26,114,1);}
@media all and (-ms-high-contrast:none) {
  .__pic img {width:100%; height:auto; object-fit:none; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);}
}
.newmark {position:absolute; top:-8px; left:-28px; padding:20px 25px 3px; background:#E74600; line-height:10px; font-size:10px; font-weight:500; color:#fff; transform:rotate(-45deg);}
.ctgBadge {display:inline-block; box-sizing:border-box; vertical-align:10%; min-width:90px; padding:.15em .6em; border-radius:3px; background:var(--themeLightBlue); line-height:1.1; text-align:center; font-size:1.1rem;}
@media (max-width:600px){
  .ctgBadge {font-size:77%;}
}
.ctgBadge a {display:block; text-decoration:none; color:#fff;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) a {text-decoration:none;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) article {cursor:pointer;}
/* :is([class*="entryList"], [class*="__headlines"], .stickedEntry) article:hover img {opacity:.8;} */
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) article:after {content:""; display:block; clear:both;}
:is([class*="entryList"], [class*="__headlines"], .blogEntry, .homeInfo) .__date {margin-right:.3em; font-size:1.1rem; font-weight:500; color:#001D7A; letter-spacing:.04em;}
.blogEntry .__date {font-size:1.35rem;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__ttl {font-weight:500;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) article:hover .__ttl {text-decoration:underline;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__misc {display:flex; flex-wrap:wrap; clear:both; font-size:85%; color:#666;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__misc a {color:#666;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__like {display:inline-block; font-weight:500;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__like:not(:last-child):after {content:""; display:inline-block; vertical-align:-10%; height:1em; border-left:1px #aaa solid; margin:0 1em;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__tags a {display:inline-block;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__tags a:hover {text-decoration:underline;}
:is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__misc .IB:has(.multiTypeReaction) ~ span {translate:0 8%;}

[class*='__headlines'] .slick-dotted.slick-slider {margin-bottom:0;}
[class*='__headlines'] .slick-dots {right:0; text-align:right; width:150px; height:10px;}
[class*='__headlines'] .slick-dots li {width:auto; margin:0;}
[class*='__headlines'] .slick-dots li button {width:15px; text-align:center;}
[class*='__headlines'] .slick-dots li button:before {content:""; height:3px; width:10px; background:#B8BFD7; opacity:1!important;}
[class*='__headlines'] .slick-dots li.slick-active button:before {background:#fff;}

@media (max-width:600px) {
  .newmark {top:-11px; left:-32px; transform:rotate(-45deg) scale(.7);}
  :is([class*="entryList"], [class*="__headlines"], .stickedEntry) .__misc {font-size:77%;}
}

[class*="entryList"] .__pic {position:relative; border-radius:10px; overflow:hidden; background:rgba(0,26,114,1);}
[class*="entryList"] .__pic:before {content:""; display:block; background:#fff; width:100%; height:100%; position:absolute; left:0; top:0;}
[class*="entryList"] .__pic img {position:relative;}

/* リスト1 */
.entryList .__pic {position:relative; margin-bottom:10px; border:1px rgba(0,26,114,1) solid;}
.entryList .__ttl {font-size:1.9rem;}
/*.entryList .__misc {padding-top:.25em;}*/
.entryList.-horizontal article {display:flex; justify-content:space-between; align-items:flex-start;}
.entryList.-horizontal article .__pic {width:35%; margin-bottom:0;}
.entryList.-horizontal article .__txt {width:60%;}
.entryList ._endBtns .closer {margin-top:1em; color:var(--themeBlue);}
.entryList ._endBtns .closer a:before {content:""; display:inline-block; vertical-align:-20%; width:10px; height:10px; margin-right:.5em; border:var(--themeBlue) solid; border-width:2px 2px 0 0; transform:rotate(-45deg) scale(.8);}
.entryList.-optional {max-height:0; overflow:hidden; opacity:0; transition:.2s opacity, .2s max-height;}
.entryList.-initial.-open ~ ._showMore {display:none;}
.entryList.-initial.-open ~ .entryList.-optional {max-height:10000px; opacity:1;}

@media (min-width:601px){
  .entryList:not(.-horizontal) {display:grid; grid-template-columns:repeat(auto-fill, minmax(45%,1fr)); gap:40px 4%;}
  .entryList.-threeCols {grid-template-columns:repeat(auto-fill, minmax(28%,1fr));}
  .entryList.-threeCols .__ttl {font-size:clamp(1.78rem,1.7vw,1.9rem);}
  .entryList.-threeCols .__exc {font-size:clamp(1.5rem,1.5vw,1.6rem);}
  .entryList ~ ._showMore {margin-top:40px;}
  .entryList.-initial.-open ~ .entryList.-optional {margin-top:40px;}
  .entryList ._endBtns {grid-column:1/-1;}
}
@media (min-width:601px) and (max-width:1100px) {
  .entryList.-threeCols .__misc {font-size:80%;}
}
@media (max-width:600px) {
  .entryList + .btn1 {margin-top:5px;}
  .entryList article {float:none; width:auto; margin:0; padding:0 0 15px;}
  .entryList article + article {padding-top:15px; border-top:0px #ccc dotted;}
  .entryList .__pic {float:left; width:35%; margin:0;}
  .entryList .__txt {float:right; width:calc(65% - 16px);}
  .entryList .__ttl {font-size:108%;}
  .entryList .__exc {display:none;}
  .entryList.-horizontal article .__txt {width:calc(65% - 16px);}
  .entryList.-initial:not(.-open) article:nth-of-type(n+4) {display:none;}
  .entryList.-initial ~ ._showMore {margin-top:40px;}
  .entryList.-initial.-open ~ .entryList.-optional {padding-top:15px;border-top:1px #ccc dotted;}
}

/* リスト2 */
.entryList2 article + article {margin-top:25px; padding-top:25px; border-top:1px #ccc dotted;}
.entryList2 .__pic {width:30%; float:left;}
.entryList2 .__pic ~ * {width:calc(70% - 32px); float:right; clear:none;}
.entryList2 .__ttl {font-size:116%;}
.entryList2 .__misc {margin-top:1em;}

@media (min-width:601px){
  .entryList2 .__date {font-size:85%;}
  .entryList2 .__ttl {margin:.3em 0;}
  .entryList2 .ctgBadge {font-size:77%;}
}
@media (max-width:600px){
  .entryList2 .__pic {width:40%;}
  .entryList2 .__txt {width:calc(60% - 15px); float:right; clear:none;}
  .entryList2 .__ttl {font-size:108%;}
  .entryList2 .__exc {display:none;}
  .entryList2 .__misc {clear:both; width:auto; float:none; padding-top:1rem;}
  .entryList2 article {margin-bottom:0;}
  .entryList2 article + article {margin-top:13px; padding-top:18px;}
}

/* ランキング */
.icon_ranking {display:inline-block; vertical-align:-10%; width:24px; height:24px; margin-right:.3em;  background:url(../../images/common/icon_ranking.png) no-repeat 50% 50% / contain;}
.entryListR article {margin-bottom:25px;}
.entryListR .__pic {float:left; width:33%;}
:is(.sideRanking .entryListR, [class*="entryList"].-ranking) .__pic:before {display:block; position:absolute; z-index:5; left:2px; top:2px; width:20px; height:20px; border-radius:50%; background:#2644A3; line-height:20px; text-align:center; color:#fff; font-weight:500; font-size:77%;}
.entryListR .__txt {float:right; width:calc(67% - 14px); margin-top:-.3em; line-height:1;}
.entryListR .__date {margin-right:.2em; line-height:2; font-size:1.1rem; color:#000; letter-spacing:0;}
.entryListR .ctgBadge {max-width:calc(100% - 8rem); vertical-align:middle;}
.entryListR .__ttl {line-height:1.5; font-size:1.6rem; white-space:normal;}

:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(1) .__pic:before {content:"1"; background:#C8A11B;}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(2) .__pic:before {content:"2"; background:#999DA3;}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(3) .__pic:before {content:"3"; background:#B06711;}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(4) .__pic:before {content:"4";}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(5) .__pic:before {content:"5";}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(6) .__pic:before {content:"6";}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(7) .__pic:before {content:"7";}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(8) .__pic:before {content:"8";}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(9) .__pic:before {content:"9";}
:is([class*="anking"] .entryListR, [class*="entryList"].-ranking) article:nth-of-type(10) .__pic:before {content:"10";}

@media (max-width:600px){
  .entryListR article:nth-of-type(3) ~ article {display:none;}
  .entryListR .__ttl {font-size:100%;}
}

.newComments {overflow:auto;}
.newComments li {padding:1em 0; line-height:1.6;}
.newComments li:first-of-type {padding-top:0;}
.newComments li:last-of-type {padding-bottom:0;}
.newComments li + li {border-top:1px #aaa dashed;}
.newComments a {text-decoration:none;}
.newComments .__date {font-size:1.2rem; color:#606060;}
.newComments .__ttl {font-weight:500; overflow:hidden; font-size:1.63rem; text-overflow:ellipsis; white-space:nowrap;}
.newComments .__txt {position:relative; max-height:4.6rem; margin-top:.4em; font-size:1.33rem; color:rgba(69,67,67,1); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
/*.newComments .__txt.-out:after {content:"…"; position:absolute; right:0; bottom:0; display:block; width:1em; height:1.6em; padding-left:.7em; line-height:1.6em;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 33%, rgba(255,255,255,1) 100%);}*/

@media (min-width:601px){
  .newComments {padding-right:.4em;}
}

/* カテゴリ */
.ctgList a {display:block; position:relative; text-decoration:none;}
.ctgList a.-crnt {background:var(--themeLightBlue);}
.mainCol .ctgList a:before,
.sideCol .ctgList .-pr a:before {content:""; display:block; position:absolute; top:calc(50% - 4px); right:8px; width:6px; height:6px; border:#001D7A solid; border-width:2px 2px 0 0; transform:rotate(45deg);}
.sideCol .ctgList .-pr a:before {right:auto; left:2px;}
.sideCol .ctgList li + li {margin-top:.2em}
.sideCol .ctgList a {padding-left:1.5em;}
.sideCol .ctgList .-sub a {padding-left:2.5em;}
.sideCol .ctgList li.-pr {font-weight:500;}
.sideCol .ctgList li.-pr a:before {display:block;}

@media (min-width:601px){
  .mainCol .ctgList {display:none!important;}
}
@media (max-width:600px){
  .ctgSelector {position:relative; cursor:pointer;}
  .ctgSelector:after {content:""; display:block; position:absolute; top:calc(50% - 4px); right:8px; width:6px; height:6px; border:#001D7A solid; border-width:0 2px 2px 0; transform:rotate(45deg); transition:.1s all;}
  .mainCol .ctgList {max-height:0; overflow:hidden; opacity:0; margin-top:-1rem; transition:.3s all;}
  .mainCol .ctgList li {border-bottom:1px rgba(198,198,198,1) solid;}
  .mainCol .ctgList a {padding:.3em 20px .3em .4em;}
  .mainCol .ctgList .-sub a {padding-left:1.2em;}
  .mainCol .ctgSelector.on:after {transform:rotate(225deg);}
  .mainCol .ctgSelector.on + .ctgList {max-height:1000px; opacity:1;}
}

/* ページネーション */
.pagination {padding-top:40px; text-align:center;}
.pagination li {display:inline-block; margin:3px;}
.pagination li > * {position:relative; display:inline-block; box-sizing:border-box; height:1.6em; padding:0 .4em; text-align:center; text-decoration:none; white-space:nowrap; overflow:hidden; border:1px #fff solid;}
.pagination li.-crnt > *,
.pagination li > *.-crnt {background:#001D7A; border-color:#001D7A; color:#fff; cursor:default;}
.pagination :is(li.__first, li.__last)  a {width: 1.5em; border:1px #001D7A solid; text-indent:200%;}
.pagination :is(li.__prev, li.__next) a {width: 1.3em; border:1px #001D7A solid; text-indent:200%;}
/* 前・最初 */
.pagination li.__first a:before,
.pagination li.__first a:after,
.pagination li.__prev a:before {content:""; display:block; position:absolute; top:calc(50% - 4px); left:calc(50% - 3px); width:6px; height:6px; border:#001D7A solid; border-width:1px 0 0 1px; transform:rotate(-45deg);}
.pagination li.__first a:before {left:calc(50% - 4px);}
.pagination li.__first a:after {left:calc(50% + 1px);}
/* 次・最後 */
.pagination li.__last a:before,
.pagination li.__last a:after,
.pagination li.__next a:before {content:""; display:block; position:absolute; top:calc(50% - 4px); right:calc(50% - 3px); width:6px; height:6px; border:#001D7A solid; border-width:1px 1px 0 0; transform:rotate(45deg);}
.pagination li.__last a:before {right:calc(50% - 4px);}
.pagination li.__last a:after {right:calc(50% + 1px);}

@media (max-width:600px){
  .pagination {padding-top:30px; border-top:1px #bbb dotted;}
}

.pageSelector ul {display:table; margin:50px auto; border:1px rgba(198,198,198,1) solid;}
.pageSelector li {display:table-cell; font-size:1.4rem; color:rgba(198,198,198,1);}
.pageSelector li:not(.-crnt) > * {display:block; padding:0 0.4em; text-decoration:none;}
.pageSelector li:not(.-crnt) > a {color:#000;}
.pageSelector li.-crnt {position:relative; width:10em; border:rgba(198,198,198,1) solid; border-width:0 1px; text-align:center; font-size:1.5rem; color:#000;}
.pageSelector li.-crnt select {position:absolute; top:0; left:0; width:100%; height:100%; -webkit-appearance:none; appearance:none; border:0; opacity:0; cursor:pointer;}



/*----------------------------------------------------------------------------------------------------------------------------------------

  ページ個別

----------------------------------------------------------------------------------------------------------------------------------------*/


/* =============== トップページ */

[class*="homeFV"] {padding-top:30px;}
.homeFV2 li img {border-radius:10px; border:1px rgba(0,26,114,1) solid;}

.mv {width:100%; max-height:590px; padding-inline:40px; overflow:hidden;}
:is(.mv, .homeFV2) .slick-prev {left:-25px;}
:is(.mv, .homeFV2) .slick-next {right:-25px;}
:is(.mv, .homeFV2) .slick-prev:before {left:40%; border-width:0 0 3px 3px;}
:is(.mv, .homeFV2) .slick-dots {bottom:-35px; margin:0 auto;}
:is(.mv, .homeFV2) .slick-dots li {width:auto; margin:0;}
:is(.mv, .homeFV2) .slick-dots li button {width:15px; text-align:center;}
:is(.mv, .homeFV2) .slick-dots li button:before {content:""; height:3px; width:10px; background:#B8BFD7; opacity:1!important;}
:is(.mv, .homeFV2) .slick-dots li.slick-active button:before {background:#001D7A;}
:is(.mv, .homeFV2) .slick-slide img {width:100%; aspect-ratio:16 / 9; object-fit:cover; border-radius:10px;}

.mv ~ main .entryList .__tags {display:none;}

.homeInfo {margin-top:20px; margin-bottom:5px;}
.homeInfo h2 {margin:0; padding:0 .6em; border:0; background:var(--themeBlue); line-height:1.8; font-size:1.5rem; color:#fff;}
.homeInfo h2 .h2wrap {border:0; box-shadow:none;}
.homeInfo .__slide {margin:0;}
.homeInfo .__slide .ctgBadge {min-width:12em;}
.homeInfo .__slide dd {overflow:hidden; white-space:nowrap; text-overflow:ellipsis;}
.homeInfo .slick-arrow {transform:rotate(90deg) translate(-10px,0);}

@media (min-width:601px){
  .homeFV {display:flex; justify-content:space-between;}
  .mv {width:47%;}
  .mv .slick-list {margin:0 auto;}
  .mv .slick-list li {padding:0 10px;}
  .mv .slick-list li img {width:100%;}
  .homeFV .entryList {width:47%; display:flex; flex-direction:column; justify-content:space-between; padding-bottom:30px;}
  .homeFV2 {margin:0 70px 45px;}
  .homeFV2 :is(.slick-prev,.slick-next):before {width:30px; height:30px; font-size:30px;}
  .homeFV2 .slick-prev {left:-40px;}
  .homeFV2 .slick-next {right:-40px;}
  .homeFV2 .slick-slide {padding-inline:13px;}
  .homeFV2 img {max-width:100%;}
  .homeFV2 .pc {display:grid; grid-template-columns:50.4% 1fr 1fr; grid-template-rows:1fr 1fr; gap:4.5% 3%;}
  .homeFV2 .pc li:first-child {grid-column:1/2; grid-row:1/-1; padding-right:4.5%;}
  .homeInfo {display:flex; border:1px var(--themeBlue) solid;}
  .homeInfo > * {white-space:nowrap;}
  .homeInfo h2 {display:flex; align-items:center; width:15rem; text-align:center;}
  .homeInfo .__slide {width:calc(100% - 15rem - 2px); padding:.2em  60px .2em 1rem;}
  .homeInfo .__slide .slick-slide{display:flex;}
  .homeInfo .__slide dt {width:20rem;}
  .homeInfo .__slide dd {width:calc(100% - 20rem); padding-left:.8em;}
  .homeInfo .slick-arrow {top:calc(50% + 3px);}
  .homeInfo .slick-prev {left:auto; right:32px;}
  .mainCol section.homeCtg {margin-top:60px;}
  .homeCtg .entryList.-horizontal .__pic {width:48%;}
  .homeCtg .entryList.-horizontal .__txt {width:46%;}
}

@media (max-width:600px){
  .homeFV2 {padding-inline:10px;}
  :is(.mv, .homeFV2 .sp) {padding:0 25px;}
  :is(.mv, .homeFV2 .sp) .slick-arrow {width:24px; height:30px; top:50%;}
  :is(.mv, .homeFV2 .sp) .slick-arrow:before {top:calc(50% + 2px);}
  :is(.mv, .homeFV2 .sp) .slick-prev {left:-27px;}
  :is(.mv, .homeFV2 .sp) .slick-next {right:-27px;}
  :is(.mv, .homeFV2 .sp) .slick-next:before {left:20%;}
  :is(.mv, .homeFV2 .sp) .slick-dots {bottom:-30px;}
  .homeFV .entryList {margin-top:20px;}
  .homeFV2 {margin-bottom:45px;}
  .homeInfo h2 {width:fit-content;}
  .homeInfo .slick-list {border:1px var(--themeBlue) solid;}
  .homeInfo .slick-slide {padding:.2em .7em .5em;}
  .homeInfo .slick-arrow {top:-12px;}
  .homeInfo .slick-prev {left:auto; right:26px;}
  .homeInfo .slick-next {right:0;}
  .mainCol section.homeCtg {margin-top:80px;}
  .mainCol section.homeCtg > .-horizontal article:after {display:none;}
  .mainCol section.homeCtg > .-horizontal + .-threeCols.mt30 {margin-top:15px!important;}
  .mainCol section.homeCtg .entryList article:nth-of-type(n+3) {display:none;}
  [class*="homeFV"] ~ .mainCol :is(h2, .h2) {font-size:2.5rem;}
  [class*="homeFV"] ~ .mainCol h2 + .entryList {margin-top:35px;}
  [class*="homeFV"] ~ .sideCol {margin-top:80px;}
}

.home__blog {display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap;}
.home__blog > section {padding:12px 25px 25px; box-sizing:border-box; overflow:hidden;}
.home__blog .-president {background:var(--themeGray2);}
.home__blog .-cp {background:#DAE2FA;}
.home__blog article {overflow:hidden; cursor:pointer;}
.home__blog .__ttl a {text-decoration:none;}

@media (min-width:601px){
  .home__blog {margin-bottom:60px;}
  .home__blog > section {width:calc(50% - 10px); margin-left:20px;}
  .home__blog > section:nth-child(2n+1) {margin-left:0;}
  .home__blog .__pic {width:calc(50% - 30px); float:left;}
  .home__blog .__txt {width:calc(50% + 10px); float:right;}
  .home__blog .__txt .__date {display:block; color:#001D7A; font-size:85%; letter-spacing:.03em;}
  .home__blog .__txt .__ttl {font-size:124%; font-weight:500;}
}
@media (max-width:600px){
  .home__blog {margin-bottom:20px;}
  .home__blog > section {display:table; height:9rem; width:calc(50% - 6px); margin-left:12px; padding:8px 15px;}
  .home__blog > section:nth-child(2n+1) {margin-left:0;}
  .home__blog > section > * {display:none;}
  .home__blog article {position:relative; display:table-cell; padding-right:20px; vertical-align:middle;}
  .home__blog article > * {display:none;}
  .home__blog article:before {display:inline-block; line-height:1.4; font-size:108%; font-weight:500;}
  .home__blog .-president article:before {content:"社長ブログ";}
  .home__blog .-cp article:before {content:"カンパニー\Aプレジデンツ\Aブログ"; white-space:pre;}
  .home__blog article:after {content:""; display:block; position:absolute; right:0; top:calc(50% - 8px); width:24px; height:16px; background:url(../../images/common/icon_arw.png) no-repeat 50% 50%; background-size:contain; opacity:.75;}
}

.home__headlines {margin-bottom:25px; padding:30px 0 40px; background:#001D7A; color:#fff; overflow:hidden;}
.home__headlines a {color:#fff;}
.home__headlines h2,
.home__headlines .h2wrap {border-color:#fff; box-shadow:0 1px 0 #fff;}
.home__headlines .__wrap {display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap; color:#fff; text-decoration:none; cursor:pointer;}
.home__headlines .__date {color:#fff;}
.home__headlines .__ttl {margin-bottom:.4em; font-size:138%; font-weight:500;}
.home__headlines .__pic {height:auto!important;}
.home__headlines .__pic a {display:block; position:relative; padding:56.25% 0 0;}
.home__headlines .__pic a img {position:absolute; top:0; left:0;}
@media all and (-ms-high-contrast: none) {
  .home__headlines .__pic a img {top:50%; left:50%;}
}

@media (min-width:601px){
  .home__headlines .__pic {width:calc(50% - 16px); height:auto; position:relative; overflow:hidden;}
  .home__headlines .__txt {position:relative; width:calc(50% - 16px); margin-left:32px; padding-bottom:70px;}
  .home__headlines .__txt .btn1 {position:absolute; bottom:0;}
  .home__headlines .slick-dots {top:-90px;}
  .home__headlines .slick-arrow {z-index:20; width:35px; height:35px; top:50%; transition:.1s all;}
  .home__headlines .slick-arrow:before {content:""; display:block; position:absolute; left:30%; top:50%; width:8px; height:8px; border:#fff solid; border-width:3px 3px 0 0; transform:rotate(45deg) translate(-50%,-50%); opacity:1;}
  .home__headlines .slick-prev {left:-40px;}
  .home__headlines .slick-next {right:-40px;}
  .home__headlines .slick-prev:before {left:40%; border-width:0 0 3px 3px;}
}
@media (max-width:1280px){
  .home__headlines .slick-prev {left:-35px;}
  .home__headlines .slick-next {right:-35px;}
}
@media (max-width:600px){
  .home__headlines {margin-bottom:0; padding:15px 0 20px;}
  .home__headlines .__slideArea:after {content:""; position:absolute; z-index:1000; top:0; right:-20px; width:40px; height:100%;
    background:-webkit-linear-gradient(90deg, rgba(0,29,122,0) 0%, rgba(0,29,122,1) 100%);
    background:linear-gradient(90deg, rgba(0,29,122,0) 0%, rgba(0,29,122,1) 100%);}
  .home__headlines .slick-list {width:calc(100% - 25px); overflow:visible;}
  .home__headlines .__pic {width:40%;}
  .home__headlines .__txt {width:calc(60% - 16px); margin-left:16px;}
  .home__headlines .__txt .__date {display:block; margin-bottom:.2em; line-height:1; font-size:1.2rem;}
  .home__headlines .__ttl {font-size:100%;}
  .home__headlines .__txt .btn1 {max-height:0; overflow:hidden;}
  .home__headlines .__txt .btn1 a {position:relative; top:1px;}
  .home__headlines .__exc {display:none;}
  .home__headlines .slick-dots {top:-65px;}
}

.utilIcons h2 {margin-bottom:0;}
.utilIcons ul {display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap; margin:8px 0 30px; overflow:hidden;}
.utilIcons li {-webkit-box-flex:1; -ms-flex-positive:1; flex-grow:1; text-align:center; border-left:1px #ddd solid; position:relative; left:-1px; box-sizing:border-box;}
.utilIcons li:before {content:""; display:block; width:8.6rem; margin:0 auto;}
.utilIcons li a {display:block; padding:20px 0 10px; text-decoration:none; line-height:1.3; font-size:1.7rem; font-weight:500; white-space:nowrap;}
.utilIcons li img {display:block; height:50px; margin:0 auto 15px;}

.bnr__appGuide a {display:block; width:410px; box-sizing:border-box; margin:0 auto; padding:14px 40px 12px; text-decoration:none; color:#fff; font-weight:500; font-size:116%; background:url(../../images/appbnr_bg.jpg) no-repeat 50% 50%; background-size:cover;}
.bnr__appGuide a:before {content:""; display:inline-block; vertical-align:middle; width:56px; height:56px; margin-right:16px; background:url(../../images/appbnr_icon.png) no-repeat 50% 50%; background-size:contain;}
.bnr__appGuide a span {display:inline-block; vertical-align:middle; line-height:28px;}

@media (max-width:600px){
  .utilIcons ul {margin:5px 0 30px;}
  .utilIcons li {border-bottom:1px #ddd solid; top:1px;}
  .utilIcons li a {padding:10px 0 5px; line-height:1.4; font-size:93%; white-space:nowrap;}
  .utilIcons li img {height:40px; margin-bottom:8px;}
  .utilIcons .-total4 li {width:50%;}

  .bnr__appGuide a {width:250px; padding:10px 25px 8px; font-size:108%;}
  .bnr__appGuide a:before {width:30px; height:30px; margin-right:12px;}
  .bnr__appGuide a span {line-height:18px;}
}

/* =============== ニュース */

/* トップ */
section.blog__headlines {margin-top:30px; padding:20px 25px 25px; background:#001A72; overflow:hidden;}
section.blog__headlines .h2 {color:#fff; border-color:#fff;}
section.blog__headlines .h2wrap {border-color:#fff; box-shadow:0 1px 0 #fff;}
section.blog__headlines .__txt {background:#fff; padding:20px 25px;}
section.blog__headlines .__ttl {margin-bottom:.4em; font-size:124%;}
section.blog__headlines .ctgBadge,
.blogEntry header .ctgBadge {margin-top:.4em; padding:.25em .6em; min-width:120px;}
section.blog__headlines .__misc {background:#fff; margin-top:-20px; padding:.4em 25px 25px;}

section.blog__headlines .slick-dots {bottom:auto; top:-80px;}
section.blog__headlines .slick-arrow {z-index:20; width:35px; height:50px; top:50%; background:rgba(30,30,30,.4); transition:.1s all;}
section.blog__headlines .slick-arrow:before {content:""; display:block; position:absolute; left:30%; top:calc(50% + 2px); width:8px; height:8px; border:#fff solid; border-width:3px 3px 0 0; transform:rotate(45deg) translate(-50%,-50%); opacity:1;}
section.blog__headlines .slick-prev {left:-25px;}
section.blog__headlines .slick-next {right:-25px;}
section.blog__headlines .slick-prev:before {left:40%; border-width:0 0 3px 3px;}


@media (max-width:600px){
  section.blog__headlines {width:calc(100% + 40px); margin:20px 0 0 -20px; box-sizing:border-box;}
  section.blog__headlines .__txt {padding:12px 16px;}
  section.blog__headlines .__misc {margin-top:-12px; padding:.4em 16px 12px;}
  section.blog__headlines .slick-dots {top:-60px;}
  section.blog__headlines .slick-arrow {width:28px; height:36px;}
}

/* 個別 */
.blogEntry img {max-width:100%;}
.blogEntry .__mv {margin-top:20px; border-radius:10px; overflow:hidden;}
.__modded {font-size:77%; color:#666;}
.blogEntry .__ttl {font-size:clamp(2.6rem,2.4vw,3rem); font-weight:500;}
.blogEntry .__misc {font-size:1.4rem;}
.likeBtn {display:inline-block; margin-right:.2em; padding:.25em .6em; border:1px #809EFE solid; line-height:1.1; text-decoration:none;}
.blogEntry .__misc .__tags {display:inline;}
.blogEntry .__misc .__tags > * {display:inline-block; margin-right:.6em;}
/*.blogEntry .__misc .__tags a {text-decoration:none;}*/
.blogEntry .__misc .__tags a:hover {text-decoration:underline;}
.blogEntry [class*="__img"] {margin:20px 0; overflow:hidden; font-size:1.4rem;}
.blogEntry [class*="__img"] p {margin-top:.6em;}
.blogEntry .__img50 > * {float:left; width:calc(50% - 18px); margin-left:36px;}
.blogEntry .__img50 > *:nth-child(2n+1) {margin-left:0; clear:left;}
.blogEntry .__movie {margin:20px 0;}
.blogEntry .__movie video {display:block; width:100%;}
.blogEntry .__body :is(h2,.h2), .-beh2 {padding:.4em .6em; border-block:0; border-left:0 var(--themeBlue) solid; background:#68d4; font-size:2.25rem; font-weight:600;}
.blogEntry .__body :is(h2,.h2).-altn, .-beh2.-altn {background:var(--themeGray2); color:var(--themeBlue);}
.-beh2 .h2wrap {margin:0; padding:0; border:0;}
.blogEntry .__body .h2wrap {padding:0; border:0; box-shadow:none;}
.blogEntry .__body :is(h3,.h3) {padding-bottom:.3em; border-bottom:4px #68d4 solid;}
.blogEntry .__body :is(h4,.h4) {padding-left:.6em; border-left:4px #001D79 solid;}
.blogEntry .__body :is(h2,.h2,h3,.h3,h4,.h4,b,strong) {font-weight:600;}
.blogEntry .__body a {color:#03c;}
.blogEntry .__body strong {font-weight: bold !important;}

.blogEntry header {overflow:hidden;}
.blogEntry header .badgesWrap {display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between; -webkit-box-align:baseline; align-items:baseline;}
.blogEntry header .ctgBadge {margin-right:1.6em; font-size:1.2rem;}
.blogEntry header .__misc {margin-top:.4em; white-space:nowrap;}
.blogEntry header .__misc > * {display:inline-block; line-height:1.1;}
.blogEntry header .__misc > * + * {margin-left:1.6em;}
.blogEntry section.__body {margin-top:min(3em,12vw); /*margin-top:1.5em; padding-top:1.5em; border-top:1px rgba(198,198,198,1) solid;*/}
.blogEntry section.__body:before {content:""; display:block; width:80%; margin:min(4em,10vw) auto; border-top:1px #ccc solid;}
.blogEntry section.__body img {border-radius:10px;}

.blogEntry footer .__misc {clear:both; padding-top:40px;}
.blogEntry footer .__misc .__like {position:relative; display:inline-block; padding-right:2em;}
/*.blogEntry footer .__misc .__like:after {content:""; height:1em; position:absolute; top:50%; right:1em; transform:translate(0,-50%); border-right:1px #444 solid;}*/
.blogEntry .__otherEntries {display:flex; flex-wrap:wrap; justify-content:center; margin-top:20px; padding:35px 0 50px; border-top:1px rgba(198,198,198,1) solid;}
.blogEntry .__otherEntries a {display:block; text-decoration:none;}
.blogEntry .__otherEntries :is(.__prev, .__next) {width:calc(50% - 18px);}
.blogEntry .__otherEntries :is(.__prev, .__next) a[href=""] {pointer-events:none; visibility:hidden;}
.blogEntry .__otherEntries b {display:block; margin-bottom:.4em; font-weight:normal; font-size:93%;}
.blogEntry .__otherEntries .__next b {text-align:right;}
.blogEntry .__otherEntries .__prev b:before {content:""; display:inline-block; vertical-align:5%; width:6px; height:6px; border:#001D79 solid; border-width:2px 0 0 2px; transform:rotate(-45deg); margin-right:.2em;}
.blogEntry .__otherEntries .__next b:after {content:""; display:inline-block; vertical-align:5%; width:6px; height:6px; border:#001D79 solid; border-width:2px 2px 0 0; transform:rotate(45deg); margin-left:.2em;}
.blogEntry .__otherEntries .__pic {width:33%; float:left;}
.blogEntry .__otherEntries .__txt {width:calc(67% - 15px); float:right; font-weight:500;}
.blogEntry .__otherEntries [class*="__back"] {font-size:93%;}
.blogEntry .__otherEntries [class*="__back"] a {display:inline-block;}
.blogEntry .__otherEntries [class*="__back"] .__arw {position:relative; display:inline-block; vertical-align:-35%; width:30px; height:30px; margin-right:.4em; background:#001D79; border-radius:50%;}
.blogEntry .__otherEntries [class*="__back"] .__arw:before {content:""; display:inline-block; position:absolute; left:calc(50% - 4px); top:calc(50% - 6px); vertical-align:5%; width:8px; height:8px; border:#fff solid; border-width:3px 0 0 3px; transform:rotate(-45deg); margin-right:.2em;}
.blogEntry .__otherEntries .__back2 .__arw:before {left:calc(50% - 5px); top:calc(50% - 3px); transform:rotate(45deg);}

.blogEntry #comments {padding-top:100px;}
.blogEntry #comments h2 img {height:1.2em; margin-right:.2em;}
.blogEntry #comments form {max-height:10000px; padding:1.5em 1.8em; background:rgba(0,30,50,.06); opacity:1; overflow:hidden; transition:.2s all;}
.blogEntry #comments .btn1:not(.-open) ~ form {max-height:0; opacity:0; padding-block:min(1.5em,2.5vw);}
.blogEntry #comments .btn1 button {min-width:12em;}
.blogEntry #comments .btn1._switch button:after {display:inline; position:static; transform:initial;}
.blogEntry #comments .btn1.-open button {margin-bottom:min(40px,6vw);}
.blogEntry #comments .btn1.-open button:before {width:6px; height:6px; margin-right:.5em; border:var(--themeBlue) solid; border-width:2px 2px 0 0; background:none; transform:rotate(-45deg);}
.blogEntry #comments .btn1.-open button:after {content:"投稿フォームを閉じる";}
[data-locale="en"] .blogEntry #comments .btn1.-open button:after {content:"Close Submission Form";}
[data-locale="cn"] .blogEntry #comments .btn1.-open button:after {content:"关闭提交表格";}
.blogEntry #comments .btn1.-open button span {display:none;}
.blogEntry #comments .__row {position:relative; margin-bottom:.8em;}
.blogEntry #comments ::-ms-expand {display:none;}
.blogEntry #comments input[type="text"],
.blogEntry #comments select {position:relative; -webkit-appearance:none; -moz-appearance:none; appearance:none;
  width:80%; min-height:2.6em; box-sizing:border-box; padding:0 .6em; border:1px #ccc solid; border-radius:2px; background:#fff; line-height:2.6;}
.blogEntry #comments .__row.-selectBox:after {content:""; display:block; position:absolute; top:calc(50% - 6px); right:calc(20% + 10px); width:6px; height:6px; border:#333 solid; border-width:0 2px 2px 0; transform:rotate(45deg);}
.blogEntry #comments textarea {width:98%; box-sizing:border-box; padding:.3em .6em; border:1px #ccc solid; border-radius:2px; background:#fff;}
.blogEntry #comments .btn1.-open ~ .__board {margin-top:0; border:0;}
.blogEntry #comments .__board {margin:35px 0 min(60px,12vw);}
.blogEntry #comments .__board > div {margin-top:2em;}
.blogEntry #comments .__board dt {font-weight:500; color:#7a7a7a; font-size:1.2rem;}

.blogEntry #comments .__board > div.boardSwitch {position:relative; text-align:center; background:rgba(0,30,50,.06); cursor:pointer; font-size:1.4rem;}
.blogEntry #comments .__board:not(.open) > div.boardSwitch:before {content:"もっと読む";}
.blogEntry #comments .__board:not(.open) > div:nth-child(n+4):not(:last-child) {display:none;} 
.blogEntry #comments .__board.open > div.boardSwitch:before{content:"閉じる";}
.blogEntry #comments .__board.open > div.boardSwitch * {display:none;}
.blogEntry #comments .__board:not(.open) > div:nth-child(n+4):not(:last-child) {display:none;} 
.blogEntry #comments .__board dd:not(.-unfolded) {max-height:6.5em; overflow:hidden;}
.blogEntry #comments .__board dd.-folded {position:relative;}
.blogEntry #comments .__board dd.-folded:after {content:"全文を表示"; position:absolute; bottom:-1px; left:0; width:100%; height:3.5em; box-sizing:border-box; padding-top:1.5em; line-height:2.5; text-align:center; font-size:1.3rem; color:rgba(0,29,122,.8);
  background:-webkit-linear-gradient(180deg, transparent 0%, #fbfbfc 60%, #fbfbfc 100%); background:linear-gradient(180deg, transparent 0%, #fbfbfc 60%, #fbfbfc 100%);}

.blogEntry #comments .__prvcChk {margin:2em 0 0; padding:.8em 1.2em; background:rgba(0,30,50,.06);}
button[disabled] {opacity:.4;}

.blogEntry #comments .cc-f-label-i {margin: 0 0 5px; font-size:13px; color: #aba7a7;}
.blogEntry #comments .cc-f-label-r {color:red;}

@media (min-width:601px){
  .blogEntry .__otherEntries {gap:35px 36px;}
  .blogEntry .__otherEntries [class*="__back"] {width:100%; text-align:center;}
  .blogEntry .__otherEntries .__back2 {margin-top:-25px;}
}

@media (max-width:600px){
  .blogEntry .__img50 > * {width:calc(50% - 8px); margin-left:16px;}
  .blogEntry .__otherEntries {gap:25px 0;}
  .blogEntry .__otherEntries {margin-top:0; padding-bottom:35px; border-top:0; justify-content:space-between; align-items:center;}
  .blogEntry .__otherEntries > * {width:auto!important;}
  .blogEntry .__otherEntries b {margin-bottom:0;}
  .blogEntry .__otherEntries b ~ * {display:none;}
  .blogEntry .__otherEntries .__next {order:3;}
  .blogEntry .__otherEntries .__back {order:2;}
  .blogEntry .__otherEntries .__back2 {order:4;}
  .blogEntry .__otherEntries .__back .__arw {display:none;}
  .blogEntry .__otherEntries .btn1 a {min-width:0; padding-inline:.8em;}
  .blogEntry .__otherEntries .btn1 a:after {display:none;}
  
  .blogEntry #comments input[type="text"],
  .blogEntry #comments select {width:96%;}
  .blogEntry #comments .__row.-selectBox:after {right:calc(4% + 10px);}
}

/* ふきだし */
.speechBalloon {display:-webkit-box; display:flex; -webkit-box-pack:justify; justify-content:space-between; -webkit-box-align:start; align-items:flex-start; margin:40px auto;}
.speechBalloon + .speechBalloon {margin-top:-30px;}
.speechBalloon ._pic {width:60px; text-align:center;}
.speechBalloon ._pic span {position:relative; display:block; height:60px; border-radius:50%; background:#eee; overflow:hidden;}
.speechBalloon ._pic span:before,
.speechBalloon ._pic span:after {content:""; display:block; position:absolute; left:50%; transform:translate(-50%,0); background:rgba(0,0,0,.2); border-radius:30px;}
.speechBalloon ._pic span:before {width:40%; height:40%; top:14%;}
.speechBalloon ._pic span:after {width:65%; height:80%; top:60%;}
.speechBalloon ._pic img {position:relative; z-index:10; width:100%; height:100%; object-fit:cover;}
.speechBalloon ._pic img[src=""] {display:none;}
.speechBalloon ._pic ._name {width:80px; margin:.4em 0 0 -10px; line-height:1.3; font-size:1.4rem;}
.speechBalloon ._body {position:relative; width:calc(100% - 100px); padding-top:.5em;}
.speechBalloon ._body > div {position:relative; display:inline-block; padding:.8em 1.2em; background:rgba(220,230,250,1); box-sizing:border-box; border-radius:10px; line-height:1.6;}
.speechBalloon ._body > i {position:absolute; display:block; background:inherit; z-index:1; background:rgba(220,230,250,1)}
.speechBalloon:not(.-round) ._body > i {transform:scale(1,.2); left:-19px; top:.8em; width:0; height:36px;}
.speechBalloon:not(.-round) ._body > i:before {content:""; display:block; width:36px; height:100%; transform:rotate(45deg); background:inherit;}
.speechBalloon.-round ._body > i {left:0; top:calc(.5em + 10px); width:0;}
.speechBalloon.-round ._body > i:before,
.speechBalloon.-round ._body > i:after {content:""; display:block; position:absolute; z-index:3; border-radius:50%; background:inherit; box-sizing:border-box; transform:translate(-50%,-50%);}
.speechBalloon.-round ._body > i:before {width:16px; height:16px; left:-10px; top:10px;}
.speechBalloon.-round ._body > i:after {width:11px; height:11px; left:-25px; top:16px;}
.speechBalloon ._body > i + div > div {position:relative; z-index:2; text-align:left;}
.speechBalloon.-right ._pic {-webkit-box-ordinal-group:2; order:2;}
.speechBalloon.-right ._body {-webkit-box-ordinal-group:1; order:1; text-align:right;}
.speechBalloon.-right:not(.-round) ._body > i {left:calc(100% - 19px);}
.speechBalloon.-right.-round ._body > i {left:100%;}
.speechBalloon.-right.-round ._body > i:before {left:10px;}
.speechBalloon.-right.-round ._body > i:after {left:25px;}
.speechBalloon.-c_grey ._body > * {background:rgba(222,227,231,1);}
.speechBalloon.-c_act ._body > * {background:rgba(0,26,114,1); color:#fff;}
.speechBalloon.-c_yellow ._body > * {background:rgba(255,255,153,1);}
.speechBalloon.-c_pink ._body > * {background:rgba(255,204,255,1);}
.speechBalloon.-c_green ._body > * {background:rgba(204,255,153,1);}
.speechBalloon[class*="-l_"] ._body > *,
.speechBalloon[class*="-d_"] ._body > * {background:#fff;}
.speechBalloon.-l_blue ._body > i:before,
.speechBalloon.-l_blue ._body > i:after,
.speechBalloon.-l_blue ._body > i + div {border:1px #7581b3 solid;}
.speechBalloon.-l_grey ._body > i:before,
.speechBalloon.-l_grey ._body > i:after,
.speechBalloon.-l_grey ._body > i + div {border:1px #b2b2b2 solid;}
.speechBalloon.-d_blue ._body > i:before,
.speechBalloon.-d_blue ._body > i:after,
.speechBalloon.-d_blue ._body > i + div {border:1px #7581b3 dashed;}
.speechBalloon.-d_grey ._body > i:before,
.speechBalloon.-d_grey ._body > i:after,
.speechBalloon.-d_grey ._body > i + div {border:1px rgba(0,26,114,1) dashed;}
.speechBalloon[class*="-d_"]:not(.-round) ._body > i:before,
.speechBalloon[class*="-d_"]:not(.-round) ._body > i:after {border-style:dotted;}
.speechBalloon:not(.-right):not(.-round) ._body > i:before {border-width:0 0 2px 2px;}
.speechBalloon.-right:not(.-round) ._body > i:before {border-width:2px 2px 0 0;}
@media (min-width:601px){
  .speechBalloon ._body > div {max-width:calc(100% - 140px);}
}
@media (max-width:600px){
  .speechBalloon ._pic {width:48px;}
  .speechBalloon ._pic span {height:48px;}
  .speechBalloon ._pic ._name {width:70px; margin-left:-11px; font-size:1.25rem;}
  .speechBalloon ._body {width:calc(100% - 70px); padding-top:.3em;}
  .speechBalloon ._body > div {max-width:calc(100% - 25px);}
  .speechBalloon:not(.-round) ._body > i {transform:scale(1,.3); left:-13px; height:24px;}
  .speechBalloon:not(.-round) ._body > i:before {width:24px;}
  .speechBalloon.-right:not(.-round) ._body > i {left:calc(100% - 13px);}
  .speechBalloon.-round ._body > i:before {width:13px; height:13px; left:-9px; top:5px;}
  .speechBalloon.-round ._body > i:after {width:8px; height:8px; left:-18px; top:13px;}
  .speechBalloon.-right.-round ._body > i:before {left:9px;}
  .speechBalloon.-right.-round ._body > i:after {left:18px;}
}

/* =============== About AISIN */

.aaMenu ul {display:flex; flex-wrap:wrap; gap:20px;}
.aaMenu li > a {background:var(--themeGray2); padding:10px 10px 10px 50px; text-decoration:none; line-height:1.5;}
.aaMenu li > a .__arw {left:12px;}

@media (min-width:601px){
  .aaMenu li {display:table; width:calc(50% - 10px);}
  .aaMenu li a {height:4em; display:table-cell; vertical-align:middle;}
}
@media (max-width:600px){
  .aaMenu ul {flex-direction:column; gap:10px;}
}

/*.aaMenu {background:var(--themeGray2);}
.aaMenu h3 {position:relative; margin:0; border-bottom:3px #001D7A solid; background:rgba(170,187,244,.3); margin:0; padding:1rem 1.4rem;}
.aaMenu dl {box-sizing:border-box; padding:.4rem 1.8rem 1.4rem; transition:.1s all; opacity:1; overflow:hidden;}
.aaMenu dt {margin-bottom:.3em;}
.aaMenu * + dt {margin-top:1.2em;}
.aaMenu dt a {text-decoration:none; font-size:108%; font-weight:500;}
.aaMenu dt a:hover {color:#001D7A;}

@media (max-width:600px){
  .aaMenu h3:after {content:""; display:block; position:absolute; right:20px; top:calc(50% - 4px); width:6px; height:6px; border:#001D7A solid; border-width:0 3px 3px 0; transform:rotate(45deg); margin-right:.2em;}
  .aaMenu h3.-on:after {transform:rotate(225deg);}
  .aaMenu h3:not(.-on) ~ dl {max-height:0; opacity:0; padding-top:0; padding-bottom:0; margin:0!important;}
}*/


.stickedEntry .__pic {margin-bottom:10px;}
.stickedEntry .__date {margin-right:.3em; color:#001D7A; font-size:85%;}
.stickedEntry .__ttl {font-size:138%;}
.stickedEntry .__misc {margin-top:.6em;}
.stickedEntry + .entryList {margin-top:30px;}
@media (max-width:600px){
  .stickedEntry + .entryList {margin-top:15px; padding-top:15px; border-top:1px #ccc dotted;}
}


/* =============== アクセスランキング単体ページ */

.entryList2.-ranking .__pic:before {z-index:5;}

@media (min-width:601px){
  .entryList2.-ranking .__pic:before {width:26px; height:26px; font-size:100%; line-height:28px;}
  .entryList2.-ranking article:first-of-type .__pic,
  .entryList2.-ranking article:first-of-type .__pic ~ * {width:calc(50% - 16px);}
  .entryList2.-ranking article:first-of-type .__pic:before {width:34px; height:34px; font-size:120%; line-height:36px;}
}
@media (max-width:600px){
  .entryList2.-ranking article:first-of-type .__pic,
  .entryList2.-ranking article:first-of-type .__pic ~ * {width:auto; float:none;}
  .entryList2.-ranking article:first-of-type .__pic {margin-bottom:1.2rem;}
  .entryList2.-ranking article:first-of-type .__date {font-size:85%;}
  .entryList2.-ranking article:first-of-type .__pic:before {width:30px; height:30px; font-size:110%; line-height:32px;}
  .entryList2.-ranking article:first-of-type .ctgBadge {font-size:77%;}
  .entryList2.-ranking article .__ttl {font-size:108%;}
  .entryList2.-ranking article:first-of-type .__ttl {margin:.1em 0; font-size:138%;}
  .entryList2.-ranking article:first-of-type .__misc {margin-top:.5rem; padding-top:0;}
}

/* =============== 検索結果 */

.-singleCol #searchBox form {margin-bottom:.6em; padding-left:1px; box-shadow:1px 0 0 #ccc inset, 0 1px 0 #ccc inset, 0 -1px 0 #ccc inset;}

@media (max-width:600px){
  .-singleCol #searchBox form {box-shadow:none;}
}

/* =============== お役立ち */

.singleColPc3Col {overflow:hidden;}
.singleColPc3Col > li > a {display:block; text-decoration:none;}
.singleColPc3Col .__pic {position:relative; padding-top:56.25%; margin-bottom:10px;}
.singleColPc3Col .__pic img {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.singleColPc3Col .__ttl {margin-bottom:10px; font-weight:500; font-size:116%;}

@media (min-width:601px){
  .singleColPc3Col > li {float:left; width:calc((100% - 81px) / 3); margin:0 0 30px 40px;}
  .singleColPc3Col > li:nth-child(3n+1) {margin-left:0; clear:left;}
}
@media (max-width:600px){
  .singleColPc3Col > li + li {margin-top:40px;}
}

.bnrsPc3Col {overflow:hidden;}
.bnrsPc3Col > li > a {display:table; width:100%; text-decoration:none;}
.bnrsPc3Col > li > a > * {display:table-cell; vertical-align:middle; background:var(--themeGray2);}
.bnrsPc3Col .__pic {width:80px; padding-right:0; padding:20px 0 20px 25px;}
.bnrsPc3Col .__pic img {width:100%; box-shadow:none;}
.bnrsPc3Col .__txt {position:relative; margin-bottom:10px; padding:20px 30px 20px 20px; font-weight:500; font-size:116%;}
.bnrsPc3Col .__txt:after {content:""; display:block; position:absolute; right:10px; top:calc(50% - 4px); width:14px; height:14px; background:url(../../images/common/icon_arw.png) no-repeat 50% 50%; background-size:contain;}
@media all and (-ms-high-contrast: none) {
  .bnrsPc3Col .__pic img {position:static; transform:none;}
}

@media (min-width:601px){
  .bnrsPc3Col > li {float:left; width:calc((100% - 81px) / 3); margin:0 0 30px 40px;}
  .bnrsPc3Col > li:nth-child(3n+1) {margin-left:0; clear:left;}
}
@media (max-width:600px){
  .bnrsPc3Col > li + li {margin-top:20px;}
  .bnrsPc3Col .__pic {width:60px; padding:15px 0 15px 20px;}
}

/* バス時刻表 */
.bus__locSelect {overflow:hidden;}
.bus__locSelect dt {clear:both; margin:1em 0; font-size:108%; font-weight:500;}
.bus__locSelect * + dt {margin-top:1.5em;}
.bus__locSelect dd {float:left;}
.bus__locSelect a {width:100%; text-align:left;}
/*.bus__locSelect a:after {transform:rotate(90deg);}*/
.bus__locSelectH4 h4 {margin-top:1.4em;}
.bus__locSelectH4 a {padding-block:.8em; text-align:left; line-height:1.5;}

.bus__fileLinks li {display:table;}
.bus__fileLinks li a {display:table-cell; vertical-align:middle; position:relative; height:min(60px); padding:.2em 1em .2em 60px; border:1px #ccc solid; text-decoration:none; line-height:1.4;}
.bus__fileLinks li a[href*=".pdf"]:before,
.bus__fileLinks li a[href*=".PDF"]:before {background:url(../../images/common/icon_ext_pdf.png) no-repeat 50% 50%; background-size:contain;}
.bus__fileLinks li a[href*=".jpg"]:before,
.bus__fileLinks li a[href*=".JPG"]:before {background:url(../../images/common/icon_ext_jpg.png) no-repeat 50% 50%; background-size:contain;}
.bus__fileLinks li a:before {content:""; display:block; position:absolute; left:10px; top:50%; width:45px; height:60px; transform:translate(0,-50%);}

@media (min-width:601px){
  .bus__locSelect dd {position:relative; top:-.4em; width:calc(25% - 15.1px); margin:0 0 20px 20px;}
  .bus__locSelect dt ~ dd:nth-of-type(4n+1) {margin-left:0; clear:left;}
  .bus__locSelectH4 p.btn1 {display:grid; grid-template-columns:repeat(auto-fill, minmax(280px,1fr)); gap:1rem;}
  .bus__fileLinks {overflow:hidden;}
  .bus__fileLinks li {float:left; width:calc(33.33% - 60px); margin:0 0 30px 30px;}  
  .bus__fileLinks li:nth-child(3n+1) {clear:left; margin-left:0;}
}
@media (max-width:600px){
  .bus__locSelect dd {position:relative; top:-.4em; width:calc(50% - 5.1px); margin:0 0 10px 10px;}
  .bus__locSelect dt ~ dd:nth-of-type(2n+1) {margin-left:0; clear:left;}
  .bus__locSelect dd a {min-width:0;}
  .bus__fileLinks li {width:100%;}
  .bus__fileLinks li + li {margin-top:10px;}
}

/* カレンダー */
.companyCalendar .-bhiru {background:rgba(0,0,0,.1);}
.companyCalendar .-chiru {background:#fff;}
.companyCalendar .-hol {color:#e00;}
.companyCalendar .__exp {margin:1.5em 0; padding:.75em 1em; background:rgba(0,0,0,.04);}
.companyCalendar .__exp li {display:inline-block; margin-right:1.4em;}
.companyCalendar .__exp span {display:inline-block; border:1px rgba(0,0,0,.5) solid; line-height:1;}
.companyCalendar .__exp span.-hol {border:0; width:8px; height:8px; border-radius:50%; background:#e00;}
.companyCalendar table * {line-height:1.4; text-align:center;}
.companyCalendar caption {padding:.4em 0; border:1px #bbb solid; border-bottom:0; background:rgba(0,40,200,.1); font-weight:500;}
.companyCalendar caption ~ * {font-size:93%;}
.companyCalendar thead th {font-weight:500;}
.companyCalendar tbody td:nth-child(5) ~ td:not(.-noHol) {color:#e00;}

@media (min-width:601px){
  .companyCalendar .__months {overflow:hidden;}
  .companyCalendar .__months table {float:left; width:31.33%; margin:0 0 25px 3%;}
  .companyCalendar .__months table:nth-child(3n+1) {clear:left; margin-left:0;}
}
@media (max-width:600px){
  .companyCalendar .__months table {width:100%;}
  .companyCalendar .__months table + table {margin-top:25px;}
}


/* =============== フォーム */
.freeform-button-container + .under_form {margin-top:50px; padding-top:30px; border-top:1px #888 dashed;}


/*----------------------------------------------------------------------------------------------------------------------------------------

  外部ライブラリ等

----------------------------------------------------------------------------------------------------------------------------------------*/


/* --------------- .eml */
.eml {cursor:pointer;}
.eml abbr {display:inline; width:1em; overflow:hidden; white-space:nowrap;}
.eml abbr:not(.done):before {content:"@";}

/* --------------- modaal */
.modaal-noscroll {overflow:hidden;}
.modaal-accessible-hide {position:absolute !important; clip:rect(1px 1px 1px 1px); /* IE6, IE7 */ clip:rect(1px, 1px, 1px, 1px); padding:0 !important; border:0 !important; height:1px !important; width:1px !important; overflow:hidden;}
.modaal-overlay {position:fixed; top:0; left:0; width:100%; height:100%; z-index:999; opacity:0;}
.modaal-wrapper {display:block; position:fixed; top:0; left:0; width:100%; height:100%; z-index:9999; overflow:auto; opacity:1; box-sizing:border-box; -webkit-overflow-scrolling:touch; -webkit-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out;}
.modaal-wrapper * {box-sizing:border-box; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; -webkit-backface-visibility:hidden;}
.modaal-wrapper .modaal-close {border:none; background:transparent; padding:0; -webkit-appearance:none;}
.modaal-wrapper.modaal-start_none {display:none; opacity:1;}
.modaal-wrapper.modaal-start_fade {opacity:0;}
.modaal-wrapper *[tabindex="0"] {outline:none !important;}
.modaal-wrapper.modaal-fullscreen {overflow:hidden;}
.modaal-outer-wrapper {display:table; position:relative; width:100%; height:100%;}
.modaal-fullscreen .modaal-outer-wrapper {display:block;}
.modaal-inner-wrapper {display:table-cell; width:100%; height:100%; position:relative; vertical-align:middle; text-align:center; padding:80px 25px;}
.modaal-fullscreen .modaal-inner-wrapper {padding:0; display:block; vertical-align:top;}
.modaal-container {position:relative; display:inline-block; width:100%; margin:auto; text-align:left; color:#000; max-width:1000px; border-radius:0px; background:#fff; box-shadow:0 4px 15px rgba(0, 0, 0, 0.2); cursor:auto;}
.modaal-container.is_loading {height:100px; width:100px; overflow:hidden;}
.modaal-fullscreen .modaal-container {max-width:none; height:100%; overflow:auto;}
.modaal-close {position:fixed; right:20px; top:20px; color:#fff; cursor:pointer; opacity:1; width:50px; height:50px; background:rgba(0, 0, 0, 0); border-radius:100%; -webkit-transition:all 0.2s ease-in-out; transition:all 0.2s ease-in-out;}
.modaal-close:focus,
.modaal-close:hover {outline:none; background:#fff;}
.modaal-close:focus:before,
.modaal-close:focus:after,
.modaal-close:hover:before,
.modaal-close:hover:after {background:#b93d0c;}
.modaal-close span {position:absolute !important; clip:rect(1px 1px 1px 1px); /* IE6, IE7 */ clip:rect(1px, 1px, 1px, 1px); padding:0 !important; border:0 !important; height:1px !important; width:1px !important; overflow:hidden;}
.modaal-close:before,
.modaal-close:after {display:block; content:" "; position:absolute; top:14px; left:23px; width:4px; height:22px; border-radius:4px; background:#fff; -webkit-transition:background 0.2s ease-in-out; transition:background 0.2s ease-in-out;}
.modaal-close:before {-webkit-transform:rotate(-45deg); -ms-transform:rotate(-45deg); transform:rotate(-45deg);}
.modaal-close:after {-webkit-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg);}
.modaal-fullscreen .modaal-close {background:#afb7bc; right:10px; top:10px;}
.modaal-content-container {padding:30px;}
.modaal-confirm-wrap {padding:30px 0 0; text-align:center; font-size:0;}
.modaal-confirm-btn {font-size:14px; display:inline-block; margin:0 10px; vertical-align:middle; cursor:pointer; border:none; background:transparent;}
.modaal-confirm-btn.modaal-ok {padding:10px 15px; color:#fff; background:#555; border-radius:3px; -webkit-transition:background 0.2s ease-in-out; transition:background 0.2s ease-in-out;}
.modaal-confirm-btn.modaal-ok:hover {background:#2f2f2f;}
.modaal-confirm-btn.modaal-cancel {text-decoration:underline;}
.modaal-confirm-btn.modaal-cancel:hover {text-decoration:none; color:#2f2f2f;}
.modaal-instagram .modaal-container {width:auto; background:transparent; box-shadow:none !important;}
.modaal-instagram .modaal-content-container {padding:0; background:transparent;}
.modaal-instagram .modaal-content-container > blockquote {width:1px !important; height:1px !important; opacity:0 !important;}
.modaal-instagram iframe {opacity:0; margin:-6px !important; border-radius:0 !important; width:1000px !important; max-width:800px !important; box-shadow:none !important; -webkit-animation:instaReveal 1s linear forwards; animation:instaReveal 1s linear forwards;}
.modaal-image .modaal-inner-wrapper {/*padding-left:140px; padding-right:140px;*/}
.modaal-image .modaal-container {width:auto; max-width:100%;}
.modaal-gallery-wrap {position:relative; color:#fff;}
.modaal-gallery-item {display:none;}
.modaal-gallery-item img {display:block;}
.modaal-gallery-item.is_active {display:block;}
.modaal-gallery-label {position:absolute; left:0; width:100%; margin:20px 0 0; padding-bottom:20px; text-align:center; color:#fff;}
.modaal-gallery-label:focus {outline:none;}
.modaal-gallery-control {position:absolute; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%); opacity:1; cursor:pointer; color:#fff; width:50px; height:50px; background:rgba(0, 0, 0, 0); border:none; border-radius:100%; -webkit-transition:all 0.2s ease-in-out; transition:all 0.2s ease-in-out;}
.modaal-gallery-control.is_hidden {opacity:0; cursor:default;}
.modaal-gallery-control:focus,
.modaal-gallery-control:hover {outline:none; background:#fff;}
.modaal-gallery-control:focus:before,
.modaal-gallery-control:focus:after,
.modaal-gallery-control:hover:before,
.modaal-gallery-control:hover:after {background:#afb7bc;}
.modaal-gallery-control span {position:absolute !important; clip:rect(1px 1px 1px 1px); /* IE6, IE7 */ clip:rect(1px, 1px, 1px, 1px); padding:0 !important; border:0 !important; height:1px !important; width:1px !important; overflow:hidden;}
.modaal-gallery-control:before,
.modaal-gallery-control:after {display:block; content:" "; position:absolute; top:16px; left:25px; width:4px; height:18px; border-radius:4px; background:#fff; -webkit-transition:background 0.2s ease-in-out; transition:background 0.2s ease-in-out;}
.modaal-gallery-control:before {margin:-5px 0 0; -webkit-transform:rotate(-45deg); -ms-transform:rotate(-45deg); transform:rotate(-45deg);}
.modaal-gallery-control:after {margin:5px 0 0; -webkit-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg);}
.modaal-gallery-next-inner {left:100%; margin-left:40px;}
.modaal-gallery-next-outer {right:45px;}
.modaal-gallery-prev:before,
.modaal-gallery-prev:after {left:22px;}
.modaal-gallery-prev:before {margin:5px 0 0; -webkit-transform:rotate(-45deg); -ms-transform:rotate(-45deg); transform:rotate(-45deg);}
.modaal-gallery-prev:after {margin:-5px 0 0; -webkit-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg);}
.modaal-gallery-prev-inner {right:100%; margin-right:40px;}
.modaal-gallery-prev-outer {left:45px;}
.modaal-video-wrap {margin:auto 50px; position:relative;}
.modaal-video-container {position:relative; padding-bottom:56.25%; height:0; overflow:hidden; max-width:100%; box-shadow:0 0 10px rgba(0, 0, 0, 0.3); background:#000; max-width:1300px; margin-left:auto; margin-right:auto;}
.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {position:absolute; top:0; left:0; width:100%; height:100%;}
.modaal-iframe .modaal-content {width:100%; height:100%;}
.modaal-iframe-elem {width:100%; height:100%; display:block;}
.modaal-loading-spinner {background:none; position:absolute; width:200px; height:200px; top:50%; left:50%; margin:-100px 0 0 -100px; -webkit-transform:scale(0.25); -ms-transform:scale(0.25); transform:scale(0.25);}
.modaal-loading-spinner > div {width:24px; height:24px; margin-left:4px; margin-top:4px; position:absolute;}
.modaal-loading-spinner > div > div {width:100%; height:100%; border-radius:15px; background:#fff;}
.modaal-loading-spinner > div:nth-of-type(1) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:0s; animation-delay:0s;}
.modaal-loading-spinner > div:nth-of-type(2) > div,
.modaal-loading-spinner > div:nth-of-type(3) > div {-ms-animation:modaal-loading-spinner 1s linear infinite; -moz-animation:modaal-loading-spinner 1s linear infinite; -webkit-animation:modaal-loading-spinner 1s linear infinite; -o-animation:modaal-loading-spinner 1s linear infinite;}
.modaal-loading-spinner > div:nth-of-type(1) {-ms-transform:translate(84px, 84px) rotate(45deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(45deg) translate(70px, 0); transform:translate(84px, 84px) rotate(45deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(2) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.12s; animation-delay:.12s;}
.modaal-loading-spinner > div:nth-of-type(2) {-ms-transform:translate(84px, 84px) rotate(90deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(90deg) translate(70px, 0); transform:translate(84px, 84px) rotate(90deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(3) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.25s; animation-delay:.25s;}
.modaal-loading-spinner > div:nth-of-type(4) > div,
.modaal-loading-spinner > div:nth-of-type(5) > div {-ms-animation:modaal-loading-spinner 1s linear infinite; -moz-animation:modaal-loading-spinner 1s linear infinite; -webkit-animation:modaal-loading-spinner 1s linear infinite; -o-animation:modaal-loading-spinner 1s linear infinite;}
.modaal-loading-spinner > div:nth-of-type(3) {-ms-transform:translate(84px, 84px) rotate(135deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(135deg) translate(70px, 0); transform:translate(84px, 84px) rotate(135deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(4) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.37s; animation-delay:.37s;}
.modaal-loading-spinner > div:nth-of-type(4) {-ms-transform:translate(84px, 84px) rotate(180deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(180deg) translate(70px, 0); transform:translate(84px, 84px) rotate(180deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(5) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.5s; animation-delay:.5s;}
.modaal-loading-spinner > div:nth-of-type(6) > div,
.modaal-loading-spinner > div:nth-of-type(7) > div {-ms-animation:modaal-loading-spinner 1s linear infinite; -moz-animation:modaal-loading-spinner 1s linear infinite; -webkit-animation:modaal-loading-spinner 1s linear infinite; -o-animation:modaal-loading-spinner 1s linear infinite;}
.modaal-loading-spinner > div:nth-of-type(5) {-ms-transform:translate(84px, 84px) rotate(225deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(225deg) translate(70px, 0); transform:translate(84px, 84px) rotate(225deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(6) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.62s; animation-delay:.62s;}
.modaal-loading-spinner > div:nth-of-type(6) {-ms-transform:translate(84px, 84px) rotate(270deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(270deg) translate(70px, 0); transform:translate(84px, 84px) rotate(270deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(7) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.75s; animation-delay:.75s;}
.modaal-loading-spinner > div:nth-of-type(7) {-ms-transform:translate(84px, 84px) rotate(315deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(315deg) translate(70px, 0); transform:translate(84px, 84px) rotate(315deg) translate(70px, 0);}
.modaal-loading-spinner > div:nth-of-type(8) > div {-webkit-animation:modaal-loading-spinner 1s linear infinite; animation:modaal-loading-spinner 1s linear infinite; -webkit-animation-delay:.87s; animation-delay:.87s;}
.modaal-loading-spinner > div:nth-of-type(8) {-ms-transform:translate(84px, 84px) rotate(360deg) translate(70px, 0); -webkit-transform:translate(84px, 84px) rotate(360deg) translate(70px, 0); transform:translate(84px, 84px) rotate(360deg) translate(70px, 0);}
@media only screen and (min-width:1400px) {
  .modaal-video-container {padding-bottom:0; height:731px;}
}
@media only screen and (max-width:1140px) {
  .modaal-image .modaal-inner-wrapper {padding-left:25px; padding-right:25px;}
  .modaal-gallery-control {top:auto; bottom:20px; -webkit-transform:none; -ms-transform:none; transform:none; background:rgba(0, 0, 0, 0.7);}
  .modaal-gallery-control:before,
  .modaal-gallery-control:after {background:#fff;}
  .modaal-gallery-next {left:auto; right:20px;}
  .modaal-gallery-prev {left:20px; right:auto;}
}
@media screen and (max-width:900px) {.modaal-instagram iframe {width:500px !important;}}
@media only screen and (max-width:600px) {.modaal-instagram iframe {width:280px !important;}}
@media screen and (max-height:1100px) {.modaal-instagram iframe {width:700px !important;}}
@media screen and (max-height:1000px) {
  .modaal-inner-wrapper {padding-top:60px; padding-bottom:60px;}
  .modaal-instagram iframe {width:600px !important;}
}
@media screen and (max-height:900px) {
  .modaal-instagram iframe {width:500px !important;}
  .modaal-video-container {max-width:900px; max-height:510px;}
}
@media only screen and (max-height:820px) {
/*  .modaal-gallery-label {display:none;} */
}
@keyframes instaReveal {
  0% {opacity:0;}
  100% {opacity:1;}
}
@-webkit-keyframes instaReveal {
  0% {opacity:0;}
  100% {opacity:1;}
}
@-webkit-keyframes modaal-loading-spinner {
  0% {opacity:1; -ms-transform:scale(1.5); -webkit-transform:scale(1.5); transform:scale(1.5);}
  100% {opacity:.1; -ms-transform:scale(1); -webkit-transform:scale(1); transform:scale(1);}
}
@keyframes modaal-loading-spinner {
  0% {opacity:1; -ms-transform:scale(1.5); -webkit-transform:scale(1.5); transform:scale(1.5);}
  100% {opacity:.1; -ms-transform:scale(1); -webkit-transform:scale(1); transform:scale(1);}
}

dt.req:before {content:"必須";}


/* --------------- slick */
/* slider */
.slick-slider {position:relative; display:block; box-sizing:border-box; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; -webkit-touch-callout:none; -khtml-user-select:none; -ms-touch-action:pan-y; touch-action:pan-y; -webkit-tap-highlight-color:transparent;}
.slick-list {position:relative; display:block; overflow:hidden; margin:0; padding:0;}
.slick-list:focus {outline:none;}
.slick-list.dragging {cursor:pointer; cursor:hand;}
.slick-slider .slick-track,
.slick-slider .slick-list {-webkit-transform:translate3d(0, 0, 0); -moz-transform:translate3d(0, 0, 0); -ms-transform:translate3d(0, 0, 0); -o-transform:translate3d(0, 0, 0); transform:translate3d(0, 0, 0);}
.slick-track {position:relative; top:0; left:0; display:block; margin-left:auto; margin-right:auto;}
.slick-track:before,
.slick-track:after {display:table; content:'';}
.slick-track:after {clear:both;}
.slick-loading .slick-track {visibility:hidden;}
.slick-slide {display:none; float:left; height:100%; min-height:1px;}
[dir='rtl'] .slick-slide {float:right;}
.slick-slide img {display:block;}
.slick-slide.slick-loading img {display:none;}
.slick-slide.dragging img {pointer-events:none;}
.slick-initialized .slick-slide {display:block;}
.slick-loading .slick-slide {visibility:hidden;}
.slick-vertical .slick-slide {display:block; height:auto; border:1px solid transparent;}
.slick-arrow.slick-hidden {display:none;}

.slick-loading .slick-list {background:#fff url('../slick/ajax-loader.gif') center center no-repeat;}

/* Icons */
@font-face {font-family:'slick'; font-weight:normal; font-style:normal; src:url('../slick/slick.eot'); src:url('../slick/slick.eot?#iefix') format('embedded-opentype'), url('../slick/slick.woff') format('woff'), url('../slick/slick.ttf') format('truetype'), url('../slick/slick.svg#slick') format('svg');}
/* Arrows */
.slick-prev,
.slick-next {font-size:0; line-height:0; position:absolute; top:50%; display:block; width:20px; height:20px; padding:0; -webkit-transform:translate(0, -50%); -ms-transform:translate(0, -50%); transform:translate(0, -50%); cursor:pointer; color:transparent; border:none; outline:none; background:transparent;}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {color:transparent; outline:none; background:transparent;}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {opacity:1;}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {opacity:.25;}

.slick-prev:before,
.slick-next:before {font-family:'slick'; font-size:20px; line-height:1; opacity:.75; color:rgba(100,100,100,.5); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}

.slick-prev {left:10px;}
[dir='rtl'] .slick-prev {right:-25px; left:auto;}
.slick-prev:before {content:'←';}
[dir='rtl'] .slick-prev:before {content:'→';}

.slick-next {right:10px;}
[dir='rtl'] .slick-next {right:auto; left:-25px;}
.slick-next:before {content:'→';}
[dir='rtl'] .slick-next:before {content:'←';}

/* Dots */
.slick-dotted.slick-slider {margin-bottom:30px;}
.slick-dots {position:absolute; bottom:-25px; display:block; width:100%; padding:0; margin:0; list-style:none; text-align:center;}
.slick-dots li {position:relative; display:inline-block; width:14px; height:14px; margin:0 5px; padding:0; cursor:pointer;}
.slick-dots li button {font-size:0; line-height:0; display:block; width:20px; height:20px; padding:5px; cursor:pointer; color:transparent; border:0; outline:none; background:transparent;}
.slick-dots li button:hover,
.slick-dots li button:focus {outline:none;}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {opacity:1;}
.slick-dots li button:before {font-family:'slick'; font-size:6px; line-height:20px; position:absolute; top:0; left:0; width:20px; height:20px; content:'•'; text-align:center; opacity:.25; color:black; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
.slick-dots li.slick-active button:before {opacity:.75; color:black;}


/* logo slogan image protect */
#logo_img{
position:relative;
width: 220px;
height: 66px;
}
#slogan_img{
position:relative;
width: 400px;
height: 44px;
}
#logo_img span.guard, #slogan_img span.guard{
position:absolute;
display:block;
width:100%;
height:100%;
background: url(/assets/image/act/dummy.png);
}


/* ログイン */
.pageHeader.-noGnav .__btns {position:absolute; right:0;}
.loginFAQbtn {text-align:right;}
.loginFAQbtn a {padding:.1em 20px .1em .6em; font-size:93%; background:rgba(101,110,197,.15); border:0;}
.loginAIfirst a {padding:.1em 20px .1em .6em; font-size:93%; background:#001d7a; border:0; color:#fff;}
.loginAIfirst a:after {width:5px; height:5px; margin-top:1px; background:none; border:#fff solid; border-width:1px 1px 0 0; transform:rotate(45deg);}
.loginForm dl {max-width:500px; margin:0 auto; padding:0 0 .3em; overflow:hidden;}
.loginStatus {display:-webkit-box; display:-ms-flexbox; display:flex; 
  -ms-flex-wrap:wrap; flex-wrap:wrap; 
  -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}

@media (min-width:601px) {
  .pageHeader.-noGnav:before {bottom:-5px;}
  .pageHeader.-noGnav ~ main .pageTitle {padding:3em 0;}
  .pageHeader.-noGnav ~ main .-singleCol {padding-top:40px;}
  .loginForm dt {clear:left; width:7em; float:left; padding:.6em 0;}
  .loginForm dd {width:calc(100% - 7em); float:left; padding:.6em 0;}
  .loginStatus li {width:49%;}
  .loginStatus  a {display:block; margin:10px 0; text-align:center; text-decoration:none; line-height:3rem; font-size:1.8rem; font-weight:500;}
  .loginStatus  a i {padding:0 .6rem; line-height:2rem; font-size:1.5rem; background:rgba(0,29,122,.6); color:#fff;}
  .loginStatus .-ai a {padding:.7rem 25px .7rem 1rem; line-height:3rem;}
  .loginStatus .-noai a {padding:calc(1.4rem + 6px) 25px calc(1.4rem + 6px) 1rem;}
  .loginStatus .-noai a i {background:rgba(30,0,100,.5);}
}
@media (max-width:600px) {
  .loginStatus li {width:49%; margin-bottom:15px;}
  .loginStatus li a {min-width:0; width:100%;}
}

.rgstForm input.-passwd {padding-right:30px; vertical-align:middle;}
::-ms-reveal {display: none;}
.rgstForm .eye {display:inline-block; vertical-align:middle; width:20px; height:1.8em; margin-left:-24px; background:url(../../images/common/icon_eye_show.png) no-repeat 50% 50%; background-size:14px auto;}
.rgstForm .eye.on {background:url(../../images/common/icon_eye_hide.png) no-repeat 50% 50%; background-size:14px auto;}
.rgstForm .-chk {max-width:900px;max-height: 7em;overflow: auto; margin:0 auto 1.5em;padding: .4em .7em;border: 1px #ccc solid;}
.rgstForm .-chk i {display:inline-block; width:25px; margin:0 0 0 -25px;}
.rgstForm .btn1 a,
.rgstForm .btn1 button {margin:4px;}
.rgstForm button.-confirm {background:#001d7a; color:#fff;}
.rgstForm button.-confirm[disabled] {opacity:.4;}
.rgstForm button ~ a {padding:.2em 30px .2em 15px;}
.rgstForm button.-submit {border:0; background:#e46; color:#fff;}
.rgstForm.-confirmation .-error {color:#e35;}
.rgstForm.-confirmation .first {display: none;}
.rgstForm:not(.-confirmation) .msg,
.rgstForm:not(.-confirmation) .showWhenConfirming,
.rgstForm.-confirmation dd > *:not(.msg),
.rgstForm.-confirmation .-chk,
.rgstForm.-confirmation .goToConf {display:none;} 
.rgstForm.-confirmation.-incomplete button.-submit {display:none;}
.rgstForm.-confirmation:before {content:"以下の内容で送信します。よろしければ「登録」をクリックしてください。";}
.rgstForm.-confirmation.-incomplete:before {content:"入力内容にエラーがありました。";}

.rgstSteps {display:grid; grid-template-columns:1fr 1fr 1fr 1fr; gap:10px; width:fit-content; margin:0 auto 2em; padding-left:0; list-style:none; line-height:1.3; text-align:center; --bg:#d3dcf4;}
.rgstSteps li {position:relative; padding:.5em; background:var(--bg); border-radius:4px;}
.rgstSteps li:not(:last-child):after {content:""; display:block; border:5px transparent solid; border-left:8px var(--bg) solid; position:absolute; left:100%; top:50%; translate:0 -50%;}
.rgstSteps[data-current="1"] li[data-step="1"],
.rgstSteps[data-current="2"] li[data-step="2"],
.rgstSteps[data-current="3"] li[data-step="3"],
.rgstSteps[data-current="4"] li[data-step="4"] {--bg:#001D7A; color:#fff;}

@media (min-width:601px) {
  .rgstSteps {min-width:800px;}
  .rgstSteps br {display:none;}
}
@media (max-width:600px) {
  .rgstSteps {font-size:93%;}
  .rgstForm .-chk {max-height:7em; overflow:auto; padding:.4em .7em; border:1px #ccc solid;}
}


/* multi-type reaction */
.multiTypeReaction {display:flex!important; gap:.4rem 1.5rem;}
.IB > .multiTypeReaction {padding-right:1.5rem;}
.multiTypeReaction li {display:grid; gap:2px 5px; position:relative; line-height:1; overflow:hidden;}
.multiTypeReaction a {grid-row:1/3;}
.multiTypeReaction a:before {content:""; display:block; position:absolute; left:0; top:0; width:100%; height:100%;}
.multiTypeReaction img {width:25px; aspect-ratio:1/1; object-fit:contain; opacity:.6;}
.multiTypeReaction a:hover img {opacity:1;}
.multiTypeReaction label {grid-column:2/3; grid-row:1/2; margin:0; font-size:1rem; color:#333;}
.multiTypeReaction .likeCount {grid-column:2/3; grid-row:2/3;}
.multiTypeReaction + .__tags {margin-left:0!important;}
.multiTypeReaction.-inList {padding-block:.3em;}
.multiTypeReaction.-inList li {align-items:center;}
.multiTypeReaction.-inList label {display:none;}
.multiTypeReaction.-inList a {pointer-events:none; display:inline-block;}
.multiTypeReaction.-inList img {width:20px;}
.multiTypeReaction.-inList .likeCount {grid-row:1/3;}