@charset "utf-8";
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:16px;color:#767676;line-height:normal;word-wrap:break-word;background:#222}
h1, h2, h3, h4, h5, h6{font-weight:bold;margin-bottom:30px;line-height:135%;}
h2, h3, h4, h5, h6{margin-top:40px}
h1{font-size:35px}
h2{font-size:30px}
h3{font-size:25px}
h4{font-size:20px}
h5{font-size:18px}
h6{font-size:16px}
p{margin:30px 0}
.page #content p, .single-post #content p{font-size:18px;line-height:145%}
* p:last-of-type, #sidebar .widget-container:last-child{margin-bottom:0}
a:hover, a:focus{text-decoration:none}
strong{font-weight:bold}
em{font-style:italic}
pre{overflow-x:auto;white-space:pre-wrap}
pre, code{font-family:'courier new',courier,serif}
hr{height:1px;border:0;margin:30px 0;background:#ccc}
blockquote{padding:15px;border-left:4px solid #ccc;margin:30px 0}
blockquote p:first-of-type{margin-top:0}
.entry-content ul, .widget-container ul, .comment-body ul, .entry-content ol, .widget-container ol, .comment-body ol{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;margin:30px 0 30px 60px}
.entry-content ul ul, .widget-container ul ul, .comment-body ul ul, .entry-content ol ol, .widget-container ol ol, .comment-body ol ol, .entry-content ul ol, .widget-container ul ol, .comment-body ul ol, .entry-content ol ul, .widget-container ol ul, .comment-body ol ul{margin-top:0;margin-bottom:0}
.entry-content ol, .widget-container ol, .comment-body ol{list-style:decimal outside;list-style-type:decimal-leading-zero;margin-left:70px}
.entry-content ul li, .widget-container ul li, .comment-body ul li{list-style-type:'— '}
.entry-content li, .widget-container li, .comment-body li{line-height:125%;margin:20px 0}
input, textarea{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:16px;padding:15px;border:0;border-bottom:1px solid transparent;outline:0;margin-top:10px;background:#f6f6f6}
input:focus, textarea:focus{border-bottom:1px solid #007acc}
input[type="submit"], button, .button{display:inline-block;font-family:georgia,serif;font-size:18px;color:#fff;text-align:center;text-decoration:none;padding:15px 25px;border:0;background:#007acc;cursor:pointer}
input[type="submit"]:hover, input[type="submit"]:focus, button:hover, button:focus, .button:hover, .button:focus{opacity:0.8}
a img, input[type="image"], iframe{border:0}
a img:hover, a:focus img, a svg:hover, a:focus svg{opacity:0.8}
img, img[src$=".svg"], svg{display:inline-block;line-height:normal;vertical-align:middle}
video, audio, table, select, textarea{max-width:100% !important;height:auto}
img{height:auto;}
table{width:100%;margin:30px 0}
#wrapper{display:flex;flex-direction:column;max-width:100%;min-height:100vh;margin:0 auto}
#header, #container, #footer{padding:5%}
#branding{float:left}
#logo{max-height:100%}
#container{flex:1;background:#fff}
#content{width:75%;padding-right:5%;float:left}
#content.full-width{width:100%;padding-right:0;float:none}
#sidebar{width:25%;float:right}
#footer{clear:both}
#menu{margin-top:10px;float:right}
#menu div:first-of-type{float:left}
#menu ul{font-size:0}
#menu ul, #menu li, #menu a{position:relative;display:inline;list-style:none;margin:0;padding:0}
#menu li.menu-item-has-children > a:after, #menu li.page_item_has_children > a:after{font-family:serif;content:' ▾';line-height:0}
#menu li.current-menu-item a, #menu li.current_page_parent a{}
#menu a{display:inline-block;font-size:18px;color:#fff;text-align:right;text-decoration:none;line-height:33px;padding-bottom:10px;margin-top:-1px;margin-right:25px}
#menu a:hover, #menu a:focus{color:#767676;text-decoration:none}
#menu ul.sub-menu, #menu ul.children{position:absolute;display:block;top:100%;left:-9999px;margin-top:20px;transition:unset;z-index:1000}
#menu ul.sub-menu a, #menu ul.children a{width:200px;font-size:14px;color:#333;text-align:left;line-height:20px;padding:15px;border:1px solid #eee;background:#fff}
#menu ul.sub-menu a:hover, #menu ul.sub-menu a:focus, #menu ul.children a:hover, #menu ul.children a:focus{color:#767676;background:#f7f7f7}
#menu li.menu-item-has-children a:hover + ul.sub-menu, #menu li.menu-item-has-children a:focus + ul.sub-menu, #menu li.menu-item-has-children a + ul.sub-menu:hover, #menu li.menu-item-has-children a + ul.sub-menu:focus-within, #menu li.page_item_has_children a:hover + ul.children, #menu li.page_item_has_children a:focus + ul.children, #menu li.page_item_has_children a + ul.children:hover, #menu li.page_item_has_children a + ul.children:focus-within{left:0}
#menu .menu-toggle{display:none;color:#fff;text-align:center;padding:0;border:0;margin:0;background:none;transition:unset}
#menu .menu-toggle:hover, #menu .menu-toggle:focus{color:#007acc}
#menu .menu-icon{font-size:50px}
#search .search-field{width:36px;height:36px;color:transparent;padding:10px;border-color:transparent;margin-top:0;background-color:transparent;background-image:url(images/find-light.png);cursor:pointer}
#search .search-field:focus{width:200px;color:#fff;border-color:#007acc;cursor:text}
.widget-container .search-field{width:100%}
.error404 .entry-content .search-field, .search .entry-content .search-field{width:200px;margin-top:30px}
.error404 .entry-content .search-field, .search .entry-content .search-field, .widget-container .search-field{background-color:#f6f6f6}
.search-field{background:url(images/find.png) no-repeat 98% center / 24px auto}
#site-title h1, #site-title a{display:inline;font-size:40px;font-weight:normal;color:#fff;text-decoration:none;margin-bottom:0}
#site-description, #copyright, #copyright a{color:#8a8a8a}
.single h1.entry-title a{color:#767676;text-decoration:none}
h2.entry-title, h3.widget-title{margin-top:0}
#commentform label{display:block}
#commentform #comment{width:100%;max-width:400px !important;height:auto}
#comments .comment-author{line-height:14px}
#comments .comment-author img{margin-right:5px;float:left}
#comments .comment{margin:20px 10px}
#comments .comment-body{padding:15px}
#comments .odd > .comment-body{background:#f6f6f6}
#comments .comment-body > p{font-size:16px;margin:15px 0 0}
#copyright{text-align:center}
.entry-meta, .entry-footer, .archive-meta{margin:30px 0}
.entry-footer{clear:both}
.entry-meta, .entry-meta a, .entry-footer, .entry-footer a, .comment-meta, .comment-meta a, .comment-author, .comment-author a{font-size:14px;color:#767676}
.sticky{padding-bottom:60px;border-bottom:4px solid #ccc}
.bypostauthor{}
.post, .widget-container, .search article{margin-bottom:60px}
.post:last-of-type{margin-bottom:0}
.wp-caption{width:auto !important}
.wp-caption.aligncenter, .wp-caption-text, .gallery-caption{text-align:center}
.wp-block-gallery ul, .wp-block-gallery ul li, .wp-block-gallery ul li:before{content:'';margin:0}
.wp-post-image{display:block;margin-bottom:30px}
.entry-attachment img{display:block;margin:60px auto 30px}
.attachment .entry-caption{text-align:center}
.alignleft{margin:0 30px 30px 0;float:left}
.alignright{margin:0 0 30px 30px;float:right}
.aligncenter{display:block;margin:30px auto;clear:both}
#content p.wp-block-cover-text{color:#fff}
.nav-links{margin-top:30px}
.nav-links a, #nav-above a{text-decoration:none}
#nav-above a{display:block;font-family:tahoma,sans-serif;font-size:50px;color:#767676;line-height:0;margin:30px 0 15px}
.nav-previous{text-align:left;float:left}
.nav-next{text-align:right;float:right}
.note{display:block;font-size:14px;padding:20px;margin:30px 0}
.icon{display:inline-block;width:32px;height:32px;line-height:normal;vertical-align:middle;mask-size:cover;background-color:currentColor}
.symbol{font-family:"Times","Times New Roman","serif","sans-serif",system-ui,-apple-system,BlinkMacSystemFont,"Avenir Next","Avenir","Segoe UI","Lucida Grande","Helvetica Neue","Helvetica","Fira Sans","Roboto","Noto","Droid Sans","Cantarell","Oxygen","Ubuntu","Franklin Gothic Medium","Century Gothic","Liberation Sans",sans-serif,"EmojiSymbols"}
.round{border-radius:100px}
.circle{border-radius:50%}
.blue, .blue *, .blue-dark, .blue-dark *, .green, .green *, .green-dark, .green-dark *, .orange, .orange *, .purple, .purple *, .red, .red *, .black, .black *{color:#fff}
.white, .white *, .yellow, .yellow *{color:#000}
.white{background-color:#fff !important}
.blue{background-color:#007acc !important}
.blue-dark{background-color:#1c78b5 !important}
.green{background-color:#91da29 !important}
.green-dark{background-color:#5d8c1a !important}
.orange{background-color:#f98733 !important}
.purple{background-color:#bb6cf8 !important}
.red{background-color:#ef645d !important}
.yellow{background-color:#f8f658 !important}
.black{background-color:#4a4a45 !important}
.lighter{background-color:rgba(255,255,255,0.05)}
.darker{background-color:rgba(0,0,0,0.05)}
.overlay:before{position:fixed;top:0;left:0;width:100%;height:100%;content:'';background:rgba(0,0,0,0.5);z-index:0}
.layer{width:100%;padding:5%}
.layer-inner{max-width:800px;margin:0 auto}
.box, .box-2, .box-3, .box-4, .box-5, .box-6, .box-1-3, .box-2-3{display:inline-block;width:100%;padding:5%;vertical-align:top;float:left}
.box-2{width:50%}
.box-3, .box-1-3{width:33.3333333%}
.box-4{width:25%}
.box-5{width:20%}
.box-6{width:16.6666667%}
.box-2-3{width:66.6666666%}
.left{text-align:left}
.center{text-align:center}
.right{text-align:right}
.float-left{float:left}
.float-right{float:right}
.clear{clear:both}
.clear-left{clear:left}
.clear-right{clear:right}
.clear-float:after, #header:after, #container:after, .boxes:after{display:table;content:'';clear:both}
.offset{padding-top:100px;margin-top:-100px}
.spacer{display:inline-block;width:25px}
.mobile, .desktop{display:none}
@media(max-width:1024px){.box-5, .box-6{width:25%}.boxes .box-5:nth-child(5){width:100%}.boxes .box-6:nth-child(5), .boxes .box-6:nth-child(6){width:50%}}
@media(min-width:600px){#logo-container{display:block;height:35px;margin-bottom:10px}.desktop{display:block}}
@media(max-width:1024px){#header, #footer{text-align:center}#content, #sidebar{width:100%;padding:0}#branding, #menu, #menu div:first-of-type, #menu.toggled{width:100%;height:100%;bottom:0;overflow-x:hidden;overflow-y:auto;z-index:1000}#menu .menu-toggle{display:inline-block}#menu ul{display:none}#menu.toggled ul, #menu.toggled ul.sub-menu, #menu.toggled ul.children{display:block;position:relative;top:0;left:0;padding:0 0 10px 0;margin:0}#menu.toggled ul.sub-menu, #menu.toggled ul.children{padding-bottom:0}#menu.toggled a, #menu.toggled ul.sub-menu a, #menu.toggled ul.children a{display:inline-block;width:100%;font-size:18px;color:#fff;text-align:center;line-height:20px;padding:15px 0 5px;border:0;margin:0;background:none}#menu.toggled ul.sub-menu a, #menu.toggled ul.children a{color:#ccc}.box-4, .box-5, .box-6{width:50%}.mobile{display:block}}
@media(max-width:1024px){.single .nav-links .nav-previous, .single .nav-links .nav-next{float:none}.box-3{width:50%}.boxes .box-3:nth-child(3){width:100%}}
@media(max-width:599px){#header, #container, #footer, .layer{padding:10%}.wp-caption, input, textarea, .button{width:100% !important}input[type="checkbox"], input[type="radio"]{width:auto !important}.box-2, .box-3, .box-4, .box-5, .box-6, .boxes .box-6:nth-child(5), .boxes .box-6:nth-child(6), .box-2-3, .box-1-3{width:100%}.spacer{display:block;width:100%;height:30px}}
@media(prefers-color-scheme:light){body, #container{background:#fff}#header{background:#111}}
@media(prefers-color-scheme:dark){body, #container{background:#111}}
@media print{*{color:#000 !important;background:#fff !important}body{padding:50px !important;margin:0 !important}#content{display:block !important;padding:0 !important;margin:0 !important}#header, #sidebar, #footer, #comments, .entry-footer, .navigation, .share, .video-wrap, iframe, img{display:none !important}}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}
.looper{display:none}
.search-submit{display:none !important}

/*
 anchor color
---------------------------*/
#CoreEdit-pc > div > ul > li > .children a:hover,
#CoreEdit-pc > div > ul > li > .sub-menu a:hover,
#CoreEdit-pc > div > ul > li > a:hover,
a{
    color:#4482ff;
}
/*
 icon
---------------------------*/
@font-face {
  font-family: 'Material Symbols Outlined';
  src: url('../../icon/material-symbols-outlined.woff2') format('woff2');
  font-weight: 100 700; /* 可変フォント */
  font-style: normal;
  font-display: swap;
}
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined' !important;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  direction: ltr;
  font-variation-settings:
    'FILL' 0,
    'wght' 400,
    'GRAD' 0,
    'opsz' 24;
}
/*
 var
---------------------------*/
:root {
    --ce-icon: 'Material Symbols Outlined';
}
/*
 common
---------------------------*/
img {
    max-width: 100%;
}
html {
    margin-top: 0px !important;
}
html body a {
    text-decoration: none;
}
html body ol li,
html body ul li,
html,body {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    /*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
    font-weight: 500;
    color: #232323;
}
.page #content p, .single-post #content p {
    line-height: 175%;
}
@media only screen and (max-width: 1024px) {
    .pc-only {
        display: none !important;
    }
}
@media only screen and (min-width: 1025px) {
    .sp-only {
        display: none !important;
    }
}
html:has(.full-active) {
    overflow: hidden;
}
.container {
    max-width: 1360px;
    padding: 0px 50px;
    margin: 0px auto;
    display: block;
}
@media only screen and (max-width: 1024px) {
    .container {
        padding: 0px 15px;
    }
}
/*
 overlay
---------------------------*/
div.full-overlay {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    background: linear-gradient(to right,#131313 33%,#303030 1px,#131313 calc(33% + 2px));
    z-index: 990;
}
.full-active div.full-overlay {
    display: block;
}
div.full-overlay:before {
    position: fixed;
    content: "";
    font-size: clamp(120px,38vw,38vw);
    color: #292929;
    display: block;
    font-weight: bold;
    top: clamp(30px,10vw,10vw);
    left: 0px;
    width: 100%;
    height: auto;
    white-space: nowrap;
    overflow: hidden;
}
*:not(.full-active) div.full-overlay,
div#sp-menu:not(.full-active) nav#CoreEdit-mobile {
    animation-name: full-fadeout;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
.full-active div.full-overlay,
div#sp-menu.full-active nav#CoreEdit-mobile {
    animation-name: full-fadein;
    animation-duration: 0.3s;
    animation-timing-function: ease-in;
    animation-fill-mode: forwards;
}
/*
 mobile menu
---------------------------*/
div#sp-menu {
    display: block;
    width: 60px;
    height: 60px;
    overflow: visible;
}
nav#CoreEdit-mobile {
    position: fixed;
    padding-bottom: clamp(60px,19vw,19vw);
    z-index: 992;
    top: 0px;
    left: calc(10% + 20px);
    display: block;
    width: calc(90% - 20px);
    height: 100%;
}
div#sp-menu:not(.full-active) nav#CoreEdit-mobile,
div#sp-menu:not(.full-active) .full-overlay {
    opacity: 0;
    display: none;
}
nav#CoreEdit-mobile > div.menu {
    display: block;
    max-height: 100%;
    overflow: auto;
}
nav#CoreEdit-mobile a {
    color: white;
    text-decoration: none;
    font-size: clamp(20px,5vw,5vw);
    font-weight: bold;
    display: inline-block;
    margin: clamp(16px,5vw,5vw);
}
div#mobile-toggle {
    position: relative;
    display: flex;
    width: 70px;
    height: 70px;
    padding: 5px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
div#sp-menu.full-active div#mobile-toggle {
    z-index:999;
}
#mobile-toggle > .mt-icon {
    display: block;
    width: 32px;
    height: 1px;
    background: white;
    margin: 5px auto;
}
div#sp-menu #mobile-toggle > .mt-icon:nth-of-type(3),
div#sp-menu #mobile-toggle > .mt-icon:nth-of-type(2),
div#sp-menu #mobile-toggle > .mt-icon:nth-of-type(1) {
    animation-name: mobile-icon1;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
div#sp-menu #mobile-toggle > .mt-icon:nth-of-type(2) {
    animation-name: mobile-icon2;
}
div#sp-menu #mobile-toggle > .mt-icon:nth-of-type(3) {
    animation-name: mobile-icon3;
}
div#sp-menu.full-active #mobile-toggle > .mt-icon:nth-of-type(3),
div#sp-menu.full-active #mobile-toggle > .mt-icon:nth-of-type(2),
div#sp-menu.full-active #mobile-toggle > .mt-icon:nth-of-type(1) {
    animation-name: mobile-active-icon1;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
div#sp-menu.full-active #mobile-toggle > .mt-icon:nth-of-type(2) {
    animation-name: mobile-active-icon2;
}
div#sp-menu.full-active #mobile-toggle > .mt-icon:nth-of-type(3) {
    animation-name: mobile-active-icon3;
}
#mobile-toggle > .mt-icon {
    background-color: #4D4D4F;
}
#sp-menu.full-active #mobile-toggle > .mt-icon {
    background-color: white;
}
/*
 animation
---------------------------*/
@keyframes mobile-icon1 {
    0% {
        transform: translateY(11px) rotate(-45deg);
    }
    50% {
        transform: translateY(11px);
    }
    100% {
        transform: translateY(0px);
    }
}
@keyframes mobile-icon2 {
    0% {
        transform: translateY(0px);
        opacity: 0;
    }
    50% {
        transform: translateY(0px);
    }
    100% {
        transform: translateY(0px);
    }
}
@keyframes mobile-icon3 {
    0% {
        transform: translateY(-11px) rotate(45deg); 
    }
    50% {
        transform: translateY(-11px);
    }
    100% {
        transform: translateY(0px);
    }
}
@keyframes mobile-active-icon1 {
    0% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(11px);
    }
    100% {
        transform: translateY(11px) rotate(-45deg);
    }
}
@keyframes mobile-active-icon2 {
    0% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(0px);
    }
    100% {
        transform: translateY(0px);
        opacity: 0;
    }
}
@keyframes mobile-active-icon3 {
    0% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-11px);
    }
    100% {
        transform: translateY(-11px) rotate(45deg);
    }
}
@keyframes full-fadein {
    0% {
        opacity: 0;
        display: none;
    }
    10% {
        opacity: 0;
        display: block;
    }
    100% {
        opacity: 1;
        display: block;
    }
}
@keyframes full-fadeout {
    0% {
        opacity: 1;
        display: block;
    }
    90% {
        opacity: 0;
        display: block;
    }
    100% {
        opacity: 0;
        display: none;
    }
}
@keyframes move-color {
    0% {
        background-position: 100% center;
    }
    100% {
        background-position: 300% center;
    }
}
@keyframes header-in {
    0% {
        position: fixed;
        top: -500px;
    }
    100% {
        position: fixed;
        top: 0px;
    }
}
/*
 search
---------------------------*/
#search input[type="search"] {
    width: 30px !important;
}
#search.full-active input[type="search"] {
    width: 250px !important;
}
#search-close {
    animation-name: full-fadeout;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    position: relative;
    z-index: 991;
}
.full-active #search-close {
    animation-name: full-fadein;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
#search.full-active form.search-form {
    position: fixed;
    z-index: 991;
    left: 50%;
    top:50%;
    transform: translate(-50%,-100%);
}
#search .search-field:focus {
    color: #fff;
    border-color: transparent;
}
#search.full-active .search-field {
    cursor: text;
    border-color: white;
    padding: 15px 40px 15px 5px;
    font-size: 16px
}
#search.full-active #search-close {
    opacity: 1;
    color: white;
    right: 45px;
    top: 45px;
    position: fixed;
}
#search:not(.full-active) .search-field {
    background: none;
}
#search {
    position: relative;
    display: block;
    width: 41px;
}
#search:before {
    position: absolute;
    font-family: var(--ce-icon);
    content: "\e8b6";
    color: white;
    display: block;
    width: 41px;
    height: 41px;
    background-color: #363636;
    border-radius: 100%;
    text-align: center;
    line-height: 41px;
    font-size: 18px;
    cursor: pointer;
    top: 50%;
    transform: translateY(-50%);
}
#search form {
    display: none;
}
#search.full-active form {
    display: block;
}
#search.full-active .search-field {
    color: white;
}
@media only screen and (min-width: 1025px) {
    #search.full-active .search-field {
        font-size: 24px;
    }
    #search.full-active input[type="search"] {
        width: 400px !important;
        padding-bottom: 20px;
    }
}
/*
 header
---------------------------*/
#header > * {
    float: none;
}
#header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0px 3.1%;
    height: 126px;
    width: 100%;
    margin: 0px auto 0px auto;
    background-color: white;
    z-index: 999;
}
#header #branding {
    margin-right: auto;
    text-align: left;
}
#header #logo-container {
    margin: 0px;
    line-height: 100%;
    height: 55px;
    padding: 0px 0px 0px 0px;
    display: flex;
    align-items: center;
    color: black;
}
#header #logo-container img {
    vertical-align: middle;
}
#header #site-title h1, 
#header #site-title a,
#header #site-title {
    height: 100%;
    display: block;
}
#header #site-title a {
    display: flex;
    align-items: center;
}
div#branding {
    z-index: 1000;
}
html.scrolled header#header {
    animation-name: header-in;
    animation-duration: 0.5s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
html.scrolled header#header {
    height: 80px;
}
html.scrolled header#header {
    position: sticky !important;
    box-shadow: 0 0 6px rgba(0 0 0 / 0.1);
}
#header #site-title {
    height: auto;
}
html.scrolled #header #site-title {
    margin-top: 0px;
}
header#header #site-description {
    font-size: 13px;
}
html.scrolled header#header #site-description {
    display: none;
}
html.full-active #header #logo-container img {
    filter: brightness(0) invert(1);
}
html.full-active #header #logo-container {
    color: white;
}
#header #logo-container img {
    max-height: 34px
}
div#branding #site-description {
    width: 100%;
    line-height: 120%;
}
@media only screen and (max-width: 1024px) {
    div#branding {
        width: calc(100% - 120px);
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        align-content: center;
    }
    div#search {
        order: 1;
    }
    div#sp-menu {
        order: 2;
    }
    div#mobile-toggle {
        padding-top: 0px;
    }
    #wrapper {
        padding-top: 5px;
    }
    #branding, #menu, #menu div:first-of-type, #menu.toggled {
        overflow: hidden;
    }
}
/*
 background
---------------------------*/
html body {
    background-color: #f0f0f0;
}
#container {
    background-color: transparent;
}
#footer {
    background-color: white;
}
/*
 pc menu
---------------------------*/
#pc-menu {
    display: flex;
    align-items: center;
}
#CoreEdit-pc > div > ul {
    display: flex;
    justify-content: flex-start;
}
#CoreEdit-pc > div > ul > li > a {
    color: black;
    font-weight: 500;
    text-decoration: none;
    margin: 0px clamp(18px,1.5vw,1.5vw);
}
#CoreEdit-pc > div > ul > li:last-child > a {
    margin-right: clamp(36px,3vw,3vw);
}
/*
 pc pulldown
---------------------------*/
#CoreEdit-pc > div > ul > li {
    position: relative;
}
#CoreEdit-pc > div > ul > li:hover:before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 10px;
    top: 100%;
}
#CoreEdit-pc > div > ul > li:not(:hover) > .children,
#CoreEdit-pc > div > ul > li:not(:hover) > .sub-menu {
    display: none;
    opacity: 0;
    animation-name: full-fadeout;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
#CoreEdit-pc > div > ul > li > .children,
#CoreEdit-pc > div > ul > li > .sub-menu {
    display: block;
    opacity: 1;
    animation-name: full-fadein;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    display: inline-block;
    position: absolute;
    width: auto;
    left: 50%;
    transform: translateX(-50%);
    top: calc(100% + 10px);
    background-color: white;
    box-shadow: 1px 2px 6px rgba(0 0 0 / 0.1);
    padding: 30px 25px;
    border-radius: 4px;
}
#CoreEdit-pc > div > ul > li > .children *,
#CoreEdit-pc > div > ul > li > .sub-menu * {
    display: inline-block;
    width: auto;
    white-space: nowrap;
}
#CoreEdit-pc > div > ul > li > .children a,
#CoreEdit-pc > div > ul > li > .sub-menu a {
    color: black;
    transition: all 0.2s ease-in-out;
    padding: 5px 0px 5px 22px;
    position: relative;
}
#CoreEdit-pc > div > ul > li > .children a:before,
#CoreEdit-pc > div > ul > li > .sub-menu a:before {
    position: absolute;
    font-family: var(--ce-icon);
    content: "\e5cc";
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.2s ease-in-out;
}
#CoreEdit-pc > div > ul > li > .children a:hover:before,
#CoreEdit-pc > div > ul > li > .sub-menu a:hover:before {
    left: 3px;
}
/*
 titlebar
---------------------------*/
body.search main#content > header .archive-meta ,
body.single main#content > header .archive-meta ,
body.archive main#content > header .archive-meta {
    margin: 10px 0px;
}
main#content > article > header,
body.search main#content > header,
body.single main#content > header,
body.archive main#content > header {
    padding: 50px 0px;
    position: relative;
}
main#content > article > header > .container,
body.search main#content > header > .container,
body.single main#content > header > .container,
body.archive main#content > header > .container {
    position: relative;
    z-index: 1;
}
main#content > article > header *,
body.search main#content > header *,
body.single main#content > header *,
body.archive main#content > header * {
    color: black;
}
main#content > article > header h1,
body.search main#content > header h1,
body.signle main#content > header h1,
body.archive main#content > header h1 {
    font-size: 36px;
    margin: 0px;
}
main#content > article > header .breadcrumb,
body.search main#content > header .breadcrumb,
body.single main#content > header .breadcrumb,
body.archive main#content > header .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}
main#content > article > header .breadcrumb > li:not(:last-child) ,
body.search main#content > header .breadcrumb > li:not(:last-child),
body.single main#content > header .breadcrumb > li:not(:last-child),
body.archive main#content > header .breadcrumb > li:not(:last-child) {
    padding-right: 10px;
    margin-right: 5px;
    position: relative;
}
main#content > article > header .breadcrumb > li:not(:last-child):after,
body.search main#content > header .breadcrumb > li:not(:last-child):after,
body.single main#content > header .breadcrumb > li:not(:last-child):after,
body.archive main#content > header .breadcrumb > li:not(:last-child):after {
    position: relative;
    font-family: var(--ce-icon);
    content: "\e5cc";
    right: -10px;
    top: 0px;
    font-size: 12px;
}
main#content > article > header .breadcrumb > li *,
body.search main#content > header .breadcrumb > li *,
body.single main#content > header .breadcrumb > li *,
body.archive main#content > header .breadcrumb > li * {
    font-size: 15px;
}
main#content > article > header .breadcrumb > li a,
body.search main#content > header .breadcrumb > li a,
body.single main#content > header .breadcrumb > li a,
body.archive main#content > header .breadcrumb > li a {
    transition: color 0.2s ease-in-out;
}
main#content > article > header h1,
body.search main#content > header h1,
body.signle main#content > header h1,
body.archive main#content > header h1 {
    mix-blend-mode: overlay !important;
    color: black;
    font-weight: bold;
}
main#content > article > header .breadcrumb > li a,
body.search main#content > header .breadcrumb > li a,
body.single main#content > header .breadcrumb > li a,
body.archive main#content > header .breadcrumb > li a,
main#content > article > header .breadcrumb > li a:hover,
body.search main#content > header .breadcrumb > li a:hover,
body.single main#content > header .breadcrumb > li a:hover,
body.archive main#content > header .breadcrumb > li a:hover {
    color: black;
    font-weight: bold;
}
main#content > article > header .breadcrumb > li a:hover,
body.search main#content > header .breadcrumb > li a:hover,
body.single main#content > header .breadcrumb > li a:hover,
body.archive main#content > header .breadcrumb > li a:hover {
    color: #4482ff;
}
body.page main#content > article.type-page > header h1 {
    position: relative;
    z-index: 1;
    mix-blend-mode: unset !important;
}
/*
 pagenation
---------------------------*/
.pagination .nav-links > * {
    display: inline-block;
    min-width:19px;
    text-align: center;
    background-color: #f0f0f0;
    color: #4482ff;
    padding: 5px 10px;
    font-weight: bold;
    transition: all 0.2s ease-in-out;
}
.pagination .nav-links > *.current {
    background-color: #4482ff;
    color: white;
}
.pagination .nav-links > a:hover {
    color: black;
}
/*
 post navigation
---------------------------*/
.post-navigation .nav-links > * > a {
    padding: 10px;
    background-color: #f0f0f0;
    font-weight: 500;
    margin: 5px;
    display: block;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.post-navigation .nav-links .meta-nav {
    display: none;
}
main#content > footer {
    background-color: transparent;
}
.post-navigation .nav-links {
    display: flex;
    flex-wrap: wrap;
}
.post-navigation .nav-links > * {
    float: none;
    width: 50%;
}
@media only screen and (max-width: 1024px) {
    .post-navigation .nav-links > * {
        width: 100%;
    }
    .post-navigation .nav-links > * > a {
        text-align: left;
    }
}
/*
 page & single & archive
---------------------------*/
body.single #content > article > .container .entry-footer * {
    color: white;
}
body.single #content > article > .container .entry-footer {
    padding: 15px;
    background-color: #3b3b3b;
}
body.single #content > article > .container,
body:not(.home):not(.page) #content > .container,
.entry-content.container {
    padding-top: 0px;
    padding-bottom: 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items:flex-start;
}
body.single #content > article > .container > .main,
body:not(.home):not(.page) #content > .container > .main,
.entry-content.container:has(.sidebar) > .main {
    width: 70%;
}
body.single #content > article > .container > .sidebar,
body:not(.home):not(.page) #content > .container > .sidebar,
.entry-content.container:has(.sidebar) > .sidebar {
    width: 25%;
    margin-left: 5%;
}
nav.navigation.post-navigation {
    display: block;
    padding-bottom: 80px;
}
.page #content p, 
.single-post #content p {
    line-height: 210%;
}
@media only screen and (max-width: 1024px) {
    body.single #content > article > .container,
    body:not(.home):not(.page) #content > .container,
    .entry-content.container {
        padding-top: 0px;
        padding-bottom: 40px;
    }
    body.single #content > article > .container > .main,
    body:not(.home):not(.page) #content > .container > .main,
    .entry-content.container:has(.sidebar) > .main {
        width: 100%;
    }
    body.single #content > article > .container > .sidebar,
    body:not(.home):not(.page) #content > .container > .sidebar,
    .entry-content.container:has(.sidebar) > .sidebar {
        width: 100%;
        margin-left: 0%;
        margin-top: 70px;
    }
}
/*
 sidebar
---------------------------*/
.sidebar h2.widget-title {
    margin-top: 0px;
    font-size: 20px;
    margin-bottom: 10px;
}
.sidebar ul {
    margin-left: 20px;
    margin-top: 10px;
}
.sidebar ul li {
    list-style: none;
}
.sidebar a {
    color: black;
    transition: all 0.2s ease;
}
.sidebar a:hover {
    color: #4482ff;
}
/*
 postItems
---------------------------*/
.postItems,
.postItems .categories,
.postItems .metaInfo {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.postItems {
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #d9d9d9;
}
.postItems .texts {
    padding: 5px 0px;
}
.postItems:has(.thumb) .texts {
    width: calc(100% - 141px);
}
.postItems .thumb {
    margin-right: 17px;
    overflow: hidden;
    border: 1px solid #D9D9D9;
}
.postItems .thumb a {
    position: relative;
}
.postItems .thumb img {
    width: 120px;
    height: 110px;
    display: block;
    object-fit: cover;
    margin: 0px;
}
.postItems h3 {
    margin: 5px 0px 7px 0px;
    font-size: 18px;
}
.postItems h3 a:hover {
    color: #363636;
    text-decoration: underline;
}
.postItems .publish {
    font-size: 15px;
    margin-right: 10px;
}
.postItems .categories {
    font-size :13px;
}
.postItems .category {
    background-color: #ffffff;
    padding: 2px 15px 1px 15px;
    border-radius: 4px;
    margin-right: 6px;
    border: 1px solid #4482ff;
    text-transform: uppercase;
    font-size: 12px;
}
.postItems .category:hover {
    background-color: #4482ff;
    color: white;
}
.postItems .tag {
    font-size: 14px;
    position: relative;
    margin-right: 15px;
    padding-left: 17px;
    line-height: 20px;
    vertical-align: middle;
    text-transform: uppercase;
}
.postItems .tag:before {
    position: absolute;
    font-family: var(--ce-icon);
    content: "\f05b";
    font-size: 16px;
    line-height: 20px;
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
}
.postItems .tag:hover {
    text-decoration: underline;
}
.postItems .tag:not(:last-child):after {
    position: relative;
    content: ",";
    margin-right: 5px;
}
@media(max-width:1024px) {
    .postItems:has(.thumb) .texts {
        width: calc(100% - 100px);
    }
    .postItems .thumb img {
        width: 49px;
        height: 45px;
        display: block;
    }
}
/*
 main
---------------------------*/
article.hentry {
    background-color: transparent;
}
body:not(.home) #content {
    background-color: white;
}
article.hentry > header {
    background-color: #f0f0f0;
    margin-bottom: 60px;
}
body:not(.home) main#content > header {
    margin-bottom: 60px;
}
/*
 ce-links
---------------------------*/
.ce-links {
    margin-top: 45px;
    text-align: center;
}
.ce-links a {
    padding: 13px 25px;
    background-color: #363636;
    border-radius: 6px;
    font-size: 15px;
    min-width: 220px;
    display: inline-block;
    text-align: center;
    color: white;
    margin-bottom: 0px;
}
.ce-links a:not(:last-child) {
    margin-right: 10px;
}
.ce-links a:hover {
    background-color: #4482ff;
}
@media(max-width:1024px) {
    .ce-links a {
        min-width: 120px;
    }
}
/*
 section
---------------------------*/
#content > [id^="section"] {
    background-color: white;
    padding: 90px 0px 100px 0px;
}
#content > [id^="section"]:nth-of-type(odd) {
    background-color: transparent;
}
@media(max-width:1024px){
    #content > [id^="section"] {
        padding: 45px 0px 45px 0px;
    }
}
/*
 #Hero
---------------------------*/
#Hero .CoreEditSlider.ces-active, 
#Hero .cesi-back img, 
#Hero .cesi-back {
    height: clamp(470px,70vw,600px);
}
/*
 CTA
---------------------------*/
div#CTA {
    position: relative;
}
div#CTA:before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgb(0 0 0 / 0.3);
    top: 0px;
    left: 0px;
    z-index: 1;
}
div#CTA .container {
    position: relative;
    z-index: 2;
}
#CTA .ceit-inner header h2,
#CTA .ceit-inner header h3,
#CTA .ceit-inner header h4,
#CTA .ceit-inner header h5,
#CTA .ceit-inner header h6 {
    margin-bottom: 10px;
}
#CTA .ceit-inner p {
    margin-top: 10px;
}
#CTA .ceit-inner {
    display: flex;
    align-items: center;
    align-content: center;
}
#CTA .ceit-inner .ceit-img {
    width: 50%;
    order: 1;
    margin-left: 25px;
    border-radius: 15px;
    overflow: hidden;
}
#CTA .ceit-inner .ceit-img img {
    padding: 0px;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}
#CTA .widget_coreeditimgtxt {
    margin: 120px 0px;
}
#CTA .ceit-inner {
    padding: 40px 50px;
    background-color: white;
    border-radius: 15px;
}
#CTA .ceit-contents {
    padding-right: 25px;
    width: 50%;
}
#CTA .ce-links {
    text-align: left;
}
#CTA {
    background-image: url(../../images/cta.webp);
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
}
@media(max-width:1024px){
    #CTA .widget_coreeditimgtxt {
        margin: 45px 0px;
    }
    #CTA .ceit-inner {
        display: block;
    }
    #CTA .ceit-inner .ceit-img,
    #CTA .ceit-inner .ceit-contents {
        width: 100%;
        padding: 0px;
        margin: 0px;
    }
    #CTA .ceit-inner {
        padding: 30px 15px;
    }
}
/*
 Footer
---------------------------*/
#f-content nav > ul,
#f-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: cneter;
}
#f-content img {
    max-width: 100%;
}
#f-content {
    justify-content: space-between;
}
#f-content nav ul {
    margin: 0px;
}
#f-content nav > ul li {
    list-style: none;
}
#f-content nav > ul > li {
    margin: 0px 25px;
}
#f-content nav > ul > li a {
    color: black;
}
#f-content nav > ul > li > a {
    font-weight: 600;
    font-size: 17px;
}
#f-content .CoreEditImgTxt .ceit-img img {
    object-fit: contain;
    aspect-ratio: unset;
    max-height: 34px;
}
@media(max-width:1024px){
    #f-content nav > ul,
    #f-content {
        justify-content: center;
    }
    #f-content > div {
        width: 100%;
    }
} 
/*
 Page Template Common
---------------------------*/
article.hentry {
    position: relative;
}
.bg-image {
    position: absolute;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 100%;
}
.bg-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
/*
 Page Template custom2
---------------------------*/
main#content > article.custom2 > header .breadcrumb,
article.custom2 > header,
article.custom2 > .entry-content {
    position: relative;
    text-align: center;
    justify-content: center;
}
article.custom2 > header {
    background-color: transparent;
    margin-bottom: 0px;
}
article.custom2 > .entry-content {
    background-color: white;
    padding-top: 60px;
    min-height: 50vh;
    width: calc(100% - 30px);
    margin: 0px auto;
}
article.custom2 {
    padding-bottom: 70px;
}
/*
 postList
---------------------------*/
.postList .postExcerpt p {
    margin-top: 10px;
}
/*
 Sub Menu Pulldown
---------------------------*/
@media only screen and (max-width:1024px) {
    li > span.menu-click-icon {
        display: block;
        position: absolute;
        top: 0px;
        right: 0px;
        cursor: pointer
    }
    li > span.menu-click-icon:before {
        display: block;
        position: relative;
        font-family: var(--ce-icon);
        content: "\e69c";
        top: 0px;
        right: 0px;
        color: black;
        font-size: 20px;
        line-height: 100%;
        transition: all 0.3s ease;
    }
    li.submenu-open > span.menu-click-icon:before {
        transform: rotate(-180deg);
    }
    li:has(.menu-click-icon) {
        padding-right: 25px;
        position: relative;
        overflow: hidden;
    }
    #header #CoreEdit-mobile > div > ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 100%; 
    }
    #header #CoreEdit-mobile > div > ul > li {
        padding: 0px 20px;
        display: inline-block;
        margin: 0px auto;
    }
    #header #CoreEdit-mobile li .menu-click-icon {
        right: 0px;
        top: calc(clamp(20px,5vw,5vw) + clamp(16px,5vw,5vw) / 2);
        height: 30px;
        width: 30px;
        border: 2px solid white;
        border-radius: 3px;
        transform: translateY(-7px);
        margin: 0px;
    }
    #header #CoreEdit-mobile li .menu-click-icon:before {
        color: white;
        line-height: 28px;
    }
    #footer nav > div > ul,
    #footer nav > ul,
    #header nav > div > ul,
    #header nav > ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 100%;
    }
    body #wrapper #footer nav li,
    body #wrapper #header nav li {
        margin: 12px;
    }
    #footer nav > div > ul > li,
    #footer nav > ul > li,
    #header nav > div > ul > li,
    #header nav > ul > li {
        margin: 10px 0px;
        width: 100%;
        border-bottom: 1px solid black;
        text-align: left;
        padding: 10px 0px 10px 0px;
    }
    #footer nav > div > ul > li .menu-click-icon,
    #footer nav > ul > li .menu-click-icon,
    #header nav > div > ul > li .menu-click-icon,
    #header nav > ul > li .menu-click-icon {
        margin: 10px 0px;
        border: 1px solid black;
    }
    #footer nav > div > ul > li > ul,
    #footer nav > ul > li > ul {
        background-color: #00000005;
        padding: 10px 10px;    
    }
    #footer #f-content nav > ul > li {
        margin: 10px 0px;
    }
    #header #CoreEdit-mobile > div > ul > li {
        padding: 0px 20px;
        display: inline-block;
        margin: 0px auto;
        border-bottom: 1px solid white;
        padding: 0px;
    }
    #header nav#CoreEdit-mobile > div > ul > li > a {
        margin: 0px;
        padding: 25px 0px 25px 0px;;
    }
    #header nav#CoreEdit-mobile > div > ul > li > ul {
        background-color: #ffffff08;
    }
    #header nav#CoreEdit-mobile > div > ul > li > ul  a {
        padding: 10px 0px;
        margin: 0px;
        font-size: clamp(14px,4vw,4vw)
    }
    #header #CoreEdit-mobile li .menu-click-icon {
        right: 0px;
        top: calc(25px + (clamp(20px,5vw,5vw)/1.25));
        height: 30px;
        width: 30px;
        border: 1px solid white;
        border-radius: 3px;
        transform: translateY(-50%);
    }
    #header #CoreEdit-mobile li .menu-click-icon:before {
        color: white;
        text-align: center;
        line-height: 28px;
        font-weight: 300;
    }
    #header nav#CoreEdit-mobile {
        width: 75%;
        left: 50%;
        transform: translateX(-50%);
    }
}
