:root{
--gh-height:64px;
}


html,
body{ width:100%; margin:0; padding:0; -webkit-overflow-scrolling:touch; font:1rem  'Inter','Noto Sans JP',sans-serif; -webkit-font-adjust:100%; -webkit-text-size-adjust:100% !important; line-height:1.47059; color:var(--nx-grayscale-color-100); font-weight:400; word-break:break-word; -webkit-font-smoothing: antialiased; }
#all{ background:#fff; }
#nx{ margin:0; padding:0; -webkit-transition-property:all; transition-property:all; -webkit-transition-delay:.3s; transition-delay:.3s; -webkit-transition-duration:.5s; transition-duration:.5s; }
#main{ height:auto; }

/* Global Elements */
.gn-item-link-hover{ opacity:.5; }
#gn-search .gn-item-link.active i:before{ content:'\f00d' }

#news-slides .article-list{ padding-bottom:12px; }
#news-slides .article-list a:hover,
#news-slides .article-list a:active,
#news-slides .article-list a:focus{ color:#000; text-decoration:none; }
#news-slides .article-list a:hover .entry-thumbnail,
#news-slides .article-list a:active .entry-thumbnail,
#news-slides .article-list a:focus .entry-thumbnail{ transform:scale(1.1, 1.1); opacity:.9; -webkit-transition:all .4s; -moz-transition:all .4s; transition:all .4s; }

/* 404 */
.error404 .page-section{ display:-webkit-box; display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-box-align:center; -webkit-align-items:center; -ms-flex-align:center; align-items:center; justify-content:center; }
.error-message,
#post0 .content-title{ font-size:1.125rem; margin-bottom:24px; line-height:1.45; }
.error-title{ text-align:center; margin-bottom:6px; }
.error-title strong{ font-size:2.714em; font-weight:700; }
.notfound{ text-align:center; }
.notfound .btn{ position:relative; }


.nav-open{ position:fixed; width:100%; overflow-y:scroll; }
#globalnav{ position:fixed; height:100vh; z-index:1000; padding-top:12px; display:none; width:100%; background:#fff; }
#globalnav #gn-sitemap{ padding-top:36px; padding-bottom:24px; }
#globalnav #gn-sitemap .site .nav-group{ margin-bottom:12px; }
#globalnav #gn-sitemap h3{ font-size:1.125rem; color:#fff; font-weight:600; }
#globalnav #gn-sitemap h3,
#globalnav #gn-sitemap ul li a{ line-height:2.6; }
#globalnav #gn-sitemap ul li a{ font-size:1.125rem; color:#aaa; }
#globalnav #gn-sitemap h3 a{ color:#fff; }

/*
 * only mobile device
 */
#globalnav #gn-mobile .container{ padding-left:42px; padding-right:42px; }
#globalnav #gn-mobile .nav-group a{ font-size:0.875rem;}
#globalnav #gn-mobile .panel-group .panel{ border-bottom:none; }
#gf-mobilenav .panel-default .panel-title,
#gf-mobilenav .panel-collapse a{ font-size:0.875rem; }
#gh-mobilenav .accordion-toggle a.collapsed:after{ top:18px; }
#gh-mobilenav .cta{ margin-top:24px; }
#gn-menu a i{ position:relative; display:block; width:24px; height:28px; }
#gn-menu a i:before,
#gn-menu a i:after{ content:''; position:absolute; left:0; width:100%; height:0.0938rem; background-color:rgba(0,0,0,.44); border-radius:4px; display:inline-block; transition:all .4s; box-sizing:border-box; }
#gn-menu a i:before{ top:8px; animation:hm-top .5s forwards; }
#gn-menu a i:after{ bottom:9px; width:80%; animation:hm-bottom .5s forwards; }
#gn-menu a.active i:before { animation:active-hm-top .5s forwards; }
#gn-menu a.active i:after { width:100%; animation:active-hm-bottom .5s forwards; }
#gn-menu a i{ width:16px; height:25px; }

@keyframes hm-top { 0%{ transform:translateY(4px) rotate(45deg); } 50% { transform:translateY(4px) rotate(0); } 100% { transform:translateY(0) rotate(0); } }
@keyframes hm-bottom { 0% { transform:translateY(-4px) rotate(-45deg); } 50% { transform:translateY(-4px) rotate(0); } 100% { transform:translateY(0) rotate(0); } }
@keyframes active-hm-top { 0% { transform:translateY(0) rotate(0); } 50% { transform:translateY(3.5px) rotate(0); } 100% { transform:translateY(3.5px) rotate(45deg); } }
@keyframes active-hm-bottom { 0% { transform:translateY(0) rotate(0); } 50% { transform:translateY(-3px) rotate(0); } 100% { transform:translateY(-3px) rotate(-45deg); } }

/**************
 * Responsive *
 **************/
/* 1025 - 1280 */
@media only screen and (min-width:1025px) and (max-width:1280px){
}
/* Tablet */
@media only screen and (min-width:768px) and (max-width:1024px){
img{ max-width:100%; }
.text-h1 + .text-lg,
.text-h3,
.text-h3 + .text-lg{ word-break:auto-phrase; text-wrap:balance }
#globalnav{ top:3.375rem; }
#globalnav #gn-mobile{ display:block; }
#globalnav #gn-mobile .cta{ margin-top:24px; text-align:center; }
#globalnav #gn-mobile .cta .btn{ padding:12px 18px; letter-spacing:0; }
#globalnav #gn-sitemap{ display:none; }
.gf-item-wrap .gf-item-link{ margin:5px 13px; }
#globalfooter .gf-item-wrap{ display:block; text-align:center; }
#gf-mobilenav{ order:1; }
#gf-container{ order:2; height:auto; border-bottom:none; flex-direction:column; }
#gf-legal{ order:3; padding-bottom:16px; }
#gf-legal ul{ margin-left:-12px; margin-right:-12px; text-align:center; }
#gf-legal ul li{ padding-left:12px; padding-right:12px; }
#s,
#search-addon{ font-size:0.875rem; }
.error-title strong{ font-size:2.214em; font-weight:700; }
#news .local-headline .title,
#news .copy-body{ text-align:center; }
.cta .btn:first-child{ margin-bottom:0.75rem; }
}

    

/* Mobile */
@media only screen and (min-width:320px) and (max-width:767px){
img{ max-width:100%; }
.error-title strong{ font-size:2.214em; font-weight:700; }
#news .local-headline .title,
#news .copy-body{ text-align:center; }
.cta .btn:first-child{ margin-bottom:0.75rem; }
}

/*
 * Color Chart
 * https://developer.apple.com/design/human-interface-guidelines/ios/visual-design/color/
 *
 * Light Theme
 * Green    #34c759
 * Indigo   #5856d6
 * Orange   #ff9500
 * Pink     #ff2d55
 * Purple   #af52de
 * Red      #ff3b30
 * Teal     #5ac8fa
 * Yellow   #ffcc00
 *
 * Dark Theme
 * Blue     #0a84ff
 * Green    #30d158
 * Indigo   #5e5ce6
 * Orange   #ff9f0a
 * Pink     #ff375f
 * Purple   #bf5af2
 * Red      #ff453a
 * Teal     #64d2ff
 * Yellow   #ffd60a
 */

/* px to rem Converter
 * 
 * 57px => 3.5625rem;
 * 54px => 3.375rem;
 * 51px => 3.1875rem;
 * 46px => 2.875rem;
 * 41px => 2.525rem;
 * 38px => 2.375rem;
 * 36px => 2.25rem;
 * 34px => 2.125rem;
 * 32px => 2rem;
 * 31px => 1.9375rem;
 * 27px => 1.675rem;
 * 24px => 1.5rem;
 * 22px => 1.375rem;
 * 20px => 1.25rem;
 * 18px => 1.125rem;
 * 17px => 1.0625rem;
 * 16px => 1rem;
 * 15px => 0.9375rem;
 * 14px => 0.875rem;
 * 13px => 0.8125rem;
 * 12px => 0.75rem;
 * 11px => 0.6875rem;
 * 10px => 0.625rem;
 */
