/*!
Template:rishun
Theme Name: rishun_child
Theme URI: https://rishuntrading.co.jp
Description: Rishun is a very simple & easy to customize theme which is based on the Bootstrap. It is also very friendly with custom post types and custom taxonomies. When you add a new one, the breadcrumbs will be adjusted and posts will look beautifully without editing or adding a template files.
Author: RishunTrading Limited.
Author URI: https://rishuntrading.co.jp
Version: 1.0.0
Requires at least: 1.0
Tested up to: 1.0.0
Requires PHP: 5.6.0
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks

License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Rishun WordPress theme, Copyright (C) 2022 RishunTrading Limited.
Rishun WordPress theme is licensed under the GPL.
Update Author:RishunTrading Limited
Update Author URI:https://rishuntrading.co.jp/
Version:1.0.0
*/
@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:wght@300;400;500;700;800&display=swap');
/************************************************************/
:root{
    --fontawesome:"Font Awesome 6 Free";
    --fontawesome2:"Font Awesome 6 Brands";
    --jpfont:"Noto Sans JP", sans-serif;
    --enfont:"Poppins", sans-serif;
    --ivory:#E9E5E1;
    --tera:#b17856;
    --ash:#8D7B6A;
    --teal:#4e7a75;
    --oldgold:#c2a866;
}
/*==========================================================*/
/* defalt define											*/
/*==========================================================*/
body, p{
    font-size:17px;
    color:#000;
    font-family:var(--jpfont);
}
body a{
    color:#333;
    transition: all .3s ease;
    text-decoration:none;
}
body a:hover{
    text-decoration:none;
}
.nodata{
    color:#ff0000;
}
img{
    width:100%;
    height:auto;
}
.entry-body img{
    display:unset;
    width:auto;
    height: auto;
    max-width: 100%;
}
@media print {
    #mobile-menu {
        display: none !important;
    }
}

/*---- origin ----*/
.imgarea {
    margin-bottom:1rem;
    text-align: center;
}
.imgarea img {
    width:100%;
}
.gmap-wrap {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom:100%;
}
.gmap-wrap iframe, .gmap-wrap object, .gmap-wrap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.detail-wrap {
    padding:30px 0;
}
img.aligncenter {
    display: block;
    margin-left:auto;
    margin-right:auto;
}
img.alignleft {
    float:left;
}
img.alignright{
    float:right;
}
a.tellink {
    transition: all .3s;
}
table {
    border-collapse: collapse;
}
.entry-body {
    padding:40px 0;
}
.tb-inline,.tb-inline-block,.tb-block,.tb-flex,.pc-inline,.pc-inline-block,.pc-block,.pc-flex {
    display: none;
}
.bgoverlay {
    position: relative;
}
.bgoverlay::before {
    content: '';
    position: absolute;
    top: 0;
    left:0;
    width:100%;
    height:100%;
}
.bgoverlay>div {
    position: relative;
    z-index: 1;
}
@media(min-width:500px){
    .d-500-none {
        display: none;
    }
}
@media(min-width:768px){
    a.tellink {
        pointer-events: none;
    }
    .tb-inline {
        display: inline!important;
    }
    .tb-inline-block {
        display: inline-block!important;
    }
    .tb-block {
        display: block!important;
    }
    .tb-flex {
        display: flex!important;
    }
}
@media(min-width:992px){
    .page-section{
        padding:80px 0;
    }
    .pc-inline {
        display: inline!important;
    }
    .pc-inline-block {
        display: inline-block!important;
    }
    .pc-block {
        display: block!important;
    }
    .pc-flex {
        display: flex!important;
    }
}

/*---- title,font ----*/
.h1org,.h2org,.h3org,.h4org {
    line-height: 1.5;
}
.h1org{
    font-size:22px;
    font-weight:700;
}
.jp_en_ttl{
    display:flex;
    flex-direction:column;
    gap:8px 16px;
    margin-bottom:40px;
}
.jp_en_ttl h2{
    margin-bottom:0;
    font-weight:700;
    font-size:26px;
}
.jp_en_ttl span{
    display: block;
    font-size:13px;
    font-family:var(--enfont);
    font-weight:bold;
}
.h2big{
    font-weight:bold;
    line-height:1.3;
    margin-bottom:40px;
}
.h2big.en{
    font-size:28px;
    font-family:var(--enfont);
}
.h2org{
    font-size:22px;
    margin-bottom:2rem;
    font-weight:bold;
}
.h2org.before_info{
    font-size:18px;
}
.h2org .en{
    font-family:var(--enfont);
}
.h3org {
    font-size:20px;
    margin-bottom:1.5rem;
}
.h4org {
    font-size:18px;
    margin-bottom:1rem;
}
.a_btn{
    display:flex;
}
.a_btn>a{
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:96px;
    min-width:160px;
    border-bottom:2px solid #000;
    font-weight:600;
    color:#000;
}
.a_btn.en>a{
    font-family:var(--enfont);
}
a .arrow{
    display:inline-flex;
    font-size:16px;
    align-items:center;
    margin-left:10px;
    width:14px;
    overflow:hidden;
}
a .arrow::before,a .arrow::after{
    content:'\f061';
    display:block;
    font-family:var(--fontawesome);
    font-weight:700;
    transition:transform .4s cubic-bezier(.23,1,.32,1);
    -webkit-transform:translateX(-100%);
    transform:translateX(-100%);
}
a:hover .arrow::before,a:hover .arrow::after{
    -webkit-transform:translateX(0);
    transform:translateX(0);
}
.a_btn.cntr{
    justify-content:center;
}
.btnsquare{
    display:flex;
    justify-content:center;
}
.btnsquare>a{
    padding:12px 20px;
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    background:var(--teal);
    letter-spacing:1px;
    color:#fff;
    font-family:var(--enfont);
    font-weight:bold;
    font-size:20px;
    box-shadow:0 5px 1px #a8d1cb;
}
.btnsquare>a:hover{
    -webkit-transform:translateY(5px);
    transform:translateY(5px);
    filter:brightness(1.1);
    box-shadow:none;
}
.btnsquare i{
    font-size:120%;
    margin-right:7px;
}
@media(min-width:400px){
    .btnsquare>a{
        width:350px;
    }
}
@media(min-width:768px){
    .h1org {
        font-size:26px;
    }
    .h2org{
        font-size:24px;
    }
    .h2org.before_info{
        font-size:22px;
    }
    .h3org {
        font-size:22px;
    }
    .h4org {
        font-size:20px;
    }
    .jp_en_ttl{
        flex-direction:row;
        align-items:flex-start;
    }
    .jp_en_ttl h2,.h2big{
        font-size:32px;
    }
    .jp_en_ttl span{
        font-size:13px;
    }
    .h2big.en{
        font-size:34px;
    }
    .a_btn>a{
        min-width:230px;
        font-size:20px;
    }
    a .arrow{
        font-size:20px;
        width:19px;
    }
}
@media(min-width:992px){
    .h1org {
        font-size:30px;
    }
    .h2org{
        font-size:30px;
    }
    .h2org.before_info{
        font-size:26px;
    }
    .h3org {
        font-size:24px;
    }
    .jp_en_ttl{
        margin-bottom:64px;
    }
    .jp_en_ttl span{
        font-size:15px;
    }
    .jp_en_ttl h2{
        font-size:52px;
        line-height:1;
    }
    .h2big,.h2big.en{
        font-size:52px;
    }
}
/*==============
  header
===============*/
.site-header-inner{
    justify-content:flex-start;
}
.site-header-logo a img{
    height:calc(var(--ptnB-sp-header-height) - 10px);
    object-fit:contain;
}
.front-page .site-header{
    background:rgba(255, 255, 255, 0);
}
.front-page .site-header-wrap{
    box-shadow:none;
}
.front-page.scrolled .site-header-wrap{
    box-shadow:0 2px 2px rgba(220,220,220,0.6);
}
/* mobilemenu */
.mobile-navi-btn{
    background:#333;
}
.mobile-navi-btn.right{
    width:50px;
    height:auto;
    aspect-ratio:1/1;
    top:4px;
    right:7px;
    border-radius:50%;
}
.mobile-navi-btn span{
    position:absolute;
    background:#fff;
    height:1px;
    width:30px;
    left:50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    transition: all .3s;
}
.mobile-navi-btn span:nth-child(1){
    top:30%;
}
.mobile-navi-btn span:nth-child(2){
    top:50%;
}
.mobile-navi-btn span:nth-child(3){
    top:70%;
}
.mobile-navi-btn.mobile-navi-open{
    background:var(--burger-bkcolor);
}
.mobile-navi-btn.mobile-navi-open span:nth-child(1) {
    top: 28%;
    left: calc(50% - 4px);
    transform: rotate(-45deg) translate(-50%,-50%);
}
.mobile-navi-btn.mobile-navi-open span:nth-child(2){
    opacity: 0;
}
.mobile-navi-btn.mobile-navi-open span:nth-child(3) {
    top: 71%;
    left: calc(50% - 5px);
    transform: rotate(45deg) translate(-50%,-50%);
}
.site-mobile-nav{
    padding:40px 0;
}
.site-mobile-nav>div{
    padding:0;
    background:rgba(255, 255, 255, 0);
}
.origin-menu li,.site-mobile-menu>li{
    border-bottom:1px solid rgba(255, 255, 255, 0.1);
}
.origin-menu>li:first-child{
    border-top:1px solid rgba(255, 255, 255, 0.1);
}
.origin-menu>li{
    padding:0;
    margin:0;
    display:block;
}
.origin-menu>li>a{
    display: block;
    padding:12px 24px;
    font-weight:700;
    font-family:var(--enfont);
}
.origin-menu>li a:hover{
    opacity:0.8;
}
.origin-menu>li.menu-item-has-children>a {
    position:relative;
    padding-right:33px;
}
.origin-menu>li.menu-item-has-children>a::before,.origin-menu>li.menu-item-has-children>a::after {
    content:'';
    position: absolute;
    top: 50%;
    width: 15px;
    height: 2px;
    background:#f3f1f1;
    transition:all .3s;
}
.origin-menu>li.menu-item-has-children>a::before{
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.origin-menu>li.menu-item-has-children>a::after{
    right: 11px;
    top: calc(50% - 1px);
    -webkit-transform:rotate(90deg) translateY(-50%);
    transform:rotate(90deg) translateY(-50%);
}
.origin-menu>li.menu-item-has-children.clicked>a::before {
    opacity: 0;
}
.origin-menu>li.menu-item-has-children.clicked>a::after{
    -webkit-transform: rotate(0deg) translateY(-50%);
    transform: rotate(0deg) translateY(-50%);
}
ul.sub-menu{
    list-style:none;
}
.origin-menu ul.sub-menu{
    margin:0;
    padding-left:0;
    display:none;
    background:#333;
    border-top:1px solid rgba(255, 255, 255, 0.1);
}
.site-mobile-menu ul.sub-menu>li{
    margin:0;
}
.origin-menu ul.sub-menu>li:last-child{
    border-bottom:none;
}
.origin-menu ul.sub-menu>li>a{
    font-size:15px;
    display:block;
    padding:9px 24px;
    font-weight:700;
    font-family:var(--enfont);
}
.origin-menu>li>a:not([href]):not([class]){
    color:var(--sp-menu-font-color);
}
.site-mobile-menu>li.menu-pri{
    display:none;
}
@media(min-width:992px){
    .ptnB .container.site-header-container{
        display:flex;
        justify-content:space-between;
        align-items:center;
    }
    .ptnB .site-header-inner{
        width:fit-content;
    }
    .site-header-menu>li>a{
        font-family:var(--jpfont);
        letter-spacing:0;
    }
    .site-header-menu>li>a:before{
        border-radius:0;
    }
    .site-header-menu>li>a:not([href]):not([class]){
        cursor:pointer;
    }
    .site-header-menu ul.sub-menu{
        background:#fff;
        padding:0;
        box-shadow:rgba(0, 0, 0, 0.16) 0px 3px 6px;
    }
    .site-header-menu ul.sub-menu>li{
        background:rgba(255, 255, 255, 0);
        padding:0;
        border-bottom:1px solid #f4f4f4;
    }
    .site-header-menu ul.sub-menu>li>a{
        background:#fff;
        padding:16px 24px;
        font-weight:700;
        font-family:var(--enfont);
        color:var(--menu-gradient2);
    }
    .site-header-menu ul.sub-menu>li>a:hover{
        background: #f4f4f4;
    }
    .site-header-menu>.menu-item-has-children:hover:after{
        border-bottom: 8px solid #fff;
    }
}
/* fade-in animation */
.fade-in,.load-in{
	opacity:0;
	transition-duration:0.7s;
	transition-property:opacity, transform;
}
.fade-in.fade-in-up,.load-in.fade-in-up {
  -webkit-transform: translate(0,30px);
  transform: translate(0,30px);
}
.fade-in.fade-in-down,.load-in.fade-in-down{
  -webkit-transform: translate(0,-30px);
  transform: translate(0,-30px);
}
.fade-in.fade-in-left,.load-in.fade-in-left{
  -webkit-transform: translate(-30px,0);
  transform: translate(-30px,0);
}
.fade-in.fade-in-right,.load-in.fade-in-right{
  -webkit-transform: translate(30px,0);
  transform: translate(30px,0);
}
.scroll-in{
	opacity: 1!important;
  -webkit-transform: translate(0,0)!important;
  transform: translate(0,0)!important;
}
/*---- #information page ----*/
figure{
    width:fit-content;
    max-width:100%;
    padding-top:0;
    position:static;
    overflow:unset;
    margin:0;
}
figure>img{
    width:auto;
    max-width:100%;
    height:auto;
    object-fit:contain;
    position:static;
    transition:none;
}
.a_cat,.a_tag{
    display:inline-block;
    font-size:15px;
}
.a_cat{
    background:var(--ivory);
    color:#333;
    font-weight:700;
    padding:4px 10px;
}
.a_tag{
    font-size:15px;
    color:var(--ash);
    font-weight:500;
}
a.a_tag{
    display:inline-block;
    position:relative;
    padding-bottom:2px;
}
a.a_tag::after{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:0;
    height:1px;
    transition:all .3s;
    -webkit-transform:scale(0,1);
    transform:scale(0,1);
    background:var(--ash);
}
a.a_cat:hover{
    color:#fff;
    background:#333;
}
a.a_tag:hover::after{
    width:100%;
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}
.p_date{
    display:inline-block;
    font-weight:700;
    color:var(--ash);
    font-family:var(--enfont);
}
/* archive */
.ulcatttl{
    display:table;
    padding:7px 15px;
    font-weight:600;
    font-size:15px;
    background:var(--ivory);
    color:#333;
}
.ul_cat{
    padding:1rem;
    background:#fff;
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:flex-start;
    gap:10px 20px;
}
.ul_cat.cats{
    margin-bottom:2rem;
}
.ul_cat.tags{
    margin-bottom:50px;
}
.ul_cat li{
    display:inline-block;
}
.ul_cat li a{
    color:#000;
    padding:5px;
    font-weight:700;
    position:relative;
    display:inline-block;
}
.ul_cat li a:hover{
    opacity:0.8;
}
.ul_cat li a.current{
    pointer-events:none;
    background:rgba(255, 255, 255, 0);
    overflow:hidden;
}
.ul_cat li a::after{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:0;
    -webkit-transform:scale(0,1);
    transform:scale(0,1);
    height:2px;
    transition:all .3s;
    overflow:hidden;
    background:#000;
}
.ul_cat li a:hover::after,.ul_cat li a.current::after{
    width:100%;
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}
.ul_info .a_cat{
    padding:1px 5px;
    font-size:12px;
    margin-right:5px;
}
.ul_info .a_cat:last-child{
    margin-right:0;
}
ul .p_date{
    font-size:14px;
    margin-bottom:6px;
}
.ul_info{
    padding-left:0;
    list-style:none;
    margin-bottom:0;
}
.ul_info li{
    margin-bottom:10px;
}
.ul_info a{
    display:flex;
    padding:10px;
    background:#fff;
    justify-content:space-between;
    align-items:center;
}
.ul_info .box1{
    width:130px;
}
.ul_info .thum{
    overflow:hidden;
}
.ul_info .thum img{
    transition:all .3s;
    object-fit:contain;
}
.ul_info a:hover .thum img,.ul_info a:focus .thum img{
    -webkit-transform:scale(1.1);
    transform:scale(1.1);
}
.ul_info .box2{
    width:calc(100% - 140px);
}
.ul_info h3{
    font-size:15px;
    line-height:1.6;
    margin-bottom:6px;
    color:#000;
}
.ul_info li:first-child a{
    padding:0;
    display:block;
    position:relative;
    padding-bottom:25px;
}
.ul_info li:first-child a .box1,.ul_info li:first-child a .box2{
    width:100%;
}
.ul_info li:first-child a .box2{
    padding:10px;
}
.ul_info li:first-child .thum img{
    aspect-ratio:16/9;
    object-fit:cover;
}
.ul_info li:first-child .p_date{
    position:absolute;
    bottom:0;
    left:10px;
}
.ul_info li:first-child .cat_tag{
    position:absolute;
    top:-28px;
    right:0;
}
.ul_info li:first-child .a_cat{
    margin:0;
    font-size:14px;
    padding:3px 7px;
}
.ul_info li:first-child .ulinfocat{
    border-right:1px solid #c6bfb9;
}
.ul_info li:first-child h3{
    font-size:16px;
}
@media(min-width:768px){
    .ul_cat li a{
        font-size:17px;
    }
    .ul_info{
        display:flex;
        flex-wrap:wrap;
        align-items:flex-end;
    }
    .ul_info li{
        width:calc(100% / 3);
        padding:0 1%;
        margin-top:25px;
    }
    .top_info_sec .ul_info li:first-child{
        width:calc((100% / 3) * 2);
    }
    .ul_info a{
        padding:0;
        display:block;
        position:relative;
        padding-bottom:25px;
    }
    .ul_info .box1,.ul_info .box2{
        width:100%;
    }
    .ul_info .box2{
        padding:10px;
    }
    .ul_info .thum img{
        aspect-ratio:16/9;
        object-fit:cover;
    }
    .ul_info .p_date{
        position:absolute;
        bottom:0;
        left:10px;
    }
    .ul_info .cat_tag{
        position:absolute;
        top:-28px;
        right:0;
        margin:0;
    }
    .ul_info .a_cat{
        padding:3px 7px;
        font-size:14px;
        margin:0;
    }
    .ulinfocat{
        border-right:1px solid #c6bfb9;
    }
    .ul_info h3{
        min-height:77px;
    }
}
@media(min-width:992px){
    .ul_info h3{
        font-size:16px;
        min-height:52px;
    }
}
@media(min-width:1200px){
    .ul_info li{
        width:25%;
    }
    .top_info_sec .ul_info li:first-child{
        width:50%;
    }
    .ul_info h3{
        min-height:77px;
    }
}
/* single */
.entry-body p{
    margin-bottom:1rem;
}
.entry-body p:last-child{
    margin-bottom:0;
}
.singlethum{
    text-align:center;
    padding-top:40px;
}
.singlethum img{
    max-width:700px;
    max-height:600px;
    object-fit:contain;
}
.sin_cats{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    gap:15px 10px;
    margin-bottom:2rem;
}
.entry-header .h1org{
    margin-bottom:20px;
}
@media(min-width:768px){
    .entry-header .p_date{
        font-size:18px;
    }
}
@media(min-width:992px){
    .sin_cats{
        gap:5px 20px;
    }
    .entry-header .p_date{
        font-size:20px;
    }
}
/*---- canvas#bg ----*/
body{
    background:#f3f1f1;
}
.canvasWrap{
    position:fixed;
    z-index:-1;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    will-change:opacity;
    transition:opacity 1s ease;
}
canvas#bg{
    width:100%;
    height:100%;
    -webkit-animation: three_fadeIn 1.5s ease-in-out forwards,three_zoomIn 2.5s ease-in-out .2s forwards;
    animation: three_fadeIn 1.5s ease-in-out forwards,three_zoomIn 2.5s ease-in-out .2s forwards;
    opacity:0;
    transform:scale(1.3);
}
@-webkit-keyframes three_fadeIn{
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
@keyframes three_fadeIn{
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
@-webkit-keyframes three_zoomIn{
    0% {
        transform: scale(1.3)
    }
    20% {
        transform: scale(1.3)
    }
    to {
        transform: scale(1)
    }
}
@keyframes three_zoomIn{
    0% {
        transform: scale(1.3)
    }
    20% {
        transform: scale(1.3)
    }
    to {
        transform: scale(1)
    }
}
.scrolled .canvasWrap{
    opacity:0.15;
}
#has_canvasbg .page-section{
    background:rgba(245, 243, 237, 0.7);
}
.scrolled canvas#bg{
    transition-delay:1s;
}
/*---- #top page ----*/
/* #fv_sec */
.fv_sec{
    background:rgba(255, 255, 255, 0);
    padding:64px 0;
}
.catchWrap{
    padding:0 20px;
    width:fit-content;
    margin:0 auto;
}
.catch_en{
    margin-bottom:24px;
}
.catch_en .en{
    font-family:var(--enfont);
    font-weight:bold;
    font-size:28px;
    margin-bottom:6px;
    text-indent:-15px;
    padding-left:15px;
}
.catch_en .jp{
    font-size:15px;
    font-weight:600;
}
.catch_main strong{
    font-size:28px;
}
.catch_sub{
    margin-top:24px;
    font-size:14px;
    line-height:2.4;
    font-weight:500;
}
@media(min-width:600px) and (max-width:767px){
    .catch_en .en br{
        display:none;
    }
}
@media(min-width:768px){
    .catch_en .en{
        font-size:50px;
        text-indent:-27px;
        padding-left:27px;
    }
    .catch_en .jp{
        font-size:16px;
    }
    .catch_main strong {
        font-size:50px;
    }
    .catch_sub{
        font-size:16px;
    }
}
@media(min-width:992px){
    .catch_en{
        margin-bottom:30px;
    }
    .catch_en .en{
        font-size:56px;
        text-indent:-30px;
        padding-left:30px;
    }
    .catch_en .jp{
        font-size:18px;
    }
    .catch_main strong {
        font-size:64px;
    }
    .catch_sub{
        font-size:18px;
    }
}
/* #top_srv_sec */
.section_desc{
    margin-bottom:40px;
}
.ul_top_srv{
    max-width:960px;
    margin:0 auto;
    padding-left:0;
    list-style:none;
}
.ul_top_srv li{
    border-bottom:1px solid var(--ash);
}
.ul_top_srv li:first-child{
    border-top:1px solid var(--ash);
}
.ul_top_srv a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:20px;
    font-weight:700;
    font-family:var(--enfont);
    color:#000;
    padding:20px 10px;
}
.ul_top_srv a:hover{
    background:#f4f4f4;
}
@media(min-width:768px){
    .section_desc{
        margin-bottom:64px;
    }
    .ul_top_srv a{
        padding:24px 20px;
    }
}
@media(min-width:992px){
    .ul_top_srv a{
        font-size:28px;
    }
}
/* #top_cmp_sec */
.top_cmp_img{
    text-align:center;
    margin-bottom:2rem;
}
.top_cmp_img img{
    max-width:600px;
    object-fit:contain;
}
@media(min-width:992px){
    .top_cmp_sec .contains-wrap::after{
        content:'';
        display:block;
        width:100%;
        height:0;
        clear:both;
    }
    .top_cmp_sec .section_desc,.top_cmp_sec .a_btn{
        float:left;
        width:55%;
    }
    .top_cmp_sec .section_desc{
        margin-bottom:40px;
    }
    .top_cmp_img{
        width:45%;
        float:right;
        padding-left:40px;
        margin-bottom:0;
    }
}
@media(min-width:1200px){
    .top_cmp_sec .section_desc,.top_cmp_sec .a_btn{
        width:50%;
    }
}
/* #top_other_sec */
.ot_inr h2,.ot_inr p{
    text-align:center;
}
.ot_inr{
    padding-top:40px;
    margin-bottom:40px;
    border-top:1px solid var(--ash);
}
.ot_inr p{
    margin-bottom:10px;
}
@media(min-width:992px){
    .top_other_sec .flx{
        display:flex;
        justify-content:center;
    }
    .ot_inr{
        width:calc(50% - 2.5%);
        padding-top:0;
        border-top:none;
    }
    .ot_inr h2{
        min-height:136px;
    }
    .ot_inr:last-child{
        margin-left:5%;
    }
}
/*---- #about-vision page ----*/
.about_sec .msg p{
    margin-bottom:20px;
    line-height:1.8;
    font-size:16px;
}
.about_sec .msg p:last-child{
    margin-bottom:0;
}
.about_sec .msg p.msgttl{
    font-weight:700;
    font-size:18px;
}
.ceoname{
    padding-top:10px;
    text-align:right;
}
.poly{
    will-change:clip-path;
    -webkit-clip-path:polygon(0 20px,20% 30px,calc(100% - 40px) 0,100% 25px,100% 100%,0 100%);
    clip-path:polygon(0 20px,20% 30px,calc(100% - 40px) 0,100% 25px,100% 100%,0 100%);
}
.about_sec.sec2{
    padding-top:40px;
    padding-bottom:40px;
}
.about_sec.sec3{
    padding-top:40px;
    padding-bottom:80px;
}
.poly.about.bgbr{
    position:relative;
    top:-40px;
    margin-bottom:-41px;
}
.bgiv{
    background:var(--ivory);
}
.p-vis-m{
    font-weight:bold;
    font-size:20px;
    margin-bottom:20px;
    text-indent:-20px;
    padding-left:10px;
    line-height:1.8;
}
.p-vis-sub{
    line-height:1.8;
}
.bgbr{
    background:#4c3e20;
    color:#fff;
}
.bgbr p{
    color:#fff;
}
.ulmission{
    padding-left:0;
    list-style:none;
    margin-bottom:0;
}
.ulmission li{
    margin-bottom:2rem;
}
.ulmission li>div{
    padding:1rem;
    background:#fff;
}
.ulmission .num{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    width:60px;
    aspect-ratio:1/1;
    color:#fff;
    font-family:var(--enfont);
    font-weight:700;
    font-size:20px;
    margin:0 auto 20px;
}
.ulmission .num::before{
    display:block;
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:60px;
    height:60px;
    will-change:clip-path;
    transition:all 1s;
    -webkit-transform:rotate(100deg);
    transform:rotate(100deg);
}
.ulmission .num.pen{
    padding-top:5px;
}
.ulmission .num.try{
    padding-top:10px;
}
.ulmission .num.try::before{
    background:var(--teal);
    -webkit-clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.ulmission .num.squ::before{
    background:var(--oldgold);
    -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
.ulmission .num.pen::before{
    background:var(--tera);
    -webkit-clip-path:polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
    clip-path:polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
}
.ulmission li.scroll-in .num::before{
    -webkit-transform:rotate(0deg);
    transform:rotate(0deg);
}
.ulmission .num span{
    position:relative;
}
.ulmission h3{
    text-align: center;
    line-height:1.7;
    font-size:17px;
    font-weight:700;
    margin-bottom:1rem;
}
.ulmission p{
    font-size:16px;
}
.ulmission h3 .br1{
    display:none;
}
.olvalue{
    padding-left:0;
    list-style:none;
}
.olvalue li{
    counter-increment:value;
    border-bottom:1px solid rgba(255, 255, 255, 0.3);
    padding:24px 0;
    display:flex;
    flex-direction:column;
    gap:10px 1rem;
}
.olvalue li:first-child{
    border-top:1px solid rgba(255, 255, 255, 0.3);
}
.olvalue li .num{
    white-space:nowrap;
    font-size:18px;
    font-family:var(--enfont);
    font-weight:bold;
}
.olvalue li .num::before{
    content:'0'counter(value);
    display:block;
}
.olvalue h3{
    font-size:17px;
    margin-bottom:15px;
}
.olvalue h3 span{
    font-family:var(--enfont);
    font-weight:700;
    font-size:28px;
    letter-spacing:1px;
}
.olvalue p{
    font-size:15px;
    font-weight:600;
}
.slo-en{
    font-family:var(--enfont);
    font-weight:bold;
    font-size:30px;
    margin-bottom:20px;
    text-indent:-16px;
    padding-left:15px;
}
.slo-jp{
    font-size:15px;
    font-weight:600;
}
@media(max-width:767px){
    .olvalue li:nth-child(4) h3 span,.olvalue li:nth-child(5) h3 span{
        font-size:25px;
    }
}
@media(min-width:400px){
    .ulmission li>div{
        padding:20px;
    }
}
@media(min-width:768px){
    .about_sec .msg p.msgttl{
        font-size:22px;
    }
    .p-vis-m{
        font-size:32px;
        text-indent:-31px;
    }
    .ulmission{
        display:flex;
        column-gap:2%;
    }
    .ulmission li{
        width:calc(100% / 3);
    }
    .ulmission li>div{
        height:100%;
    }
    .ulmission li h3{
        font-size:16px;
        height:55px;
    }
    .ulmission h3 .br1{
        display:inline;
    }
    .olvalue li{
        flex-direction:row;
    }
    .olvalue li .num{
        font-size:22px;
    }
    .olvalue h3 span{
        font-size:34px;
        margin-right:10px;
    }
    .slo-en{
        font-size:32px;
    }
    .slo-en br{
        display:none;
    }
    .slo-jp{
        font-size:17px;
    }
}
@media(min-width:992px){
    .about_sec .msg p.msgttl{
        font-size:24px;
    }
    .poly{
        -webkit-clip-path:polygon(0 55px,18% 85px,80% 0,100% 70px,100% 100%,0 100%);
        clip-path:polygon(0 55px,18% 85px,80% 0,100% 70px,100% 100%,0 100%);
    }
    .about_sec.sec2{
        padding-top:80px;
        padding-bottom:80px;
    }
    .about_sec.sec3{
        padding-top:80px;
        padding-bottom:160px;
    }
    .poly.about.bgbr{
        top:-80px;
        margin-bottom:-81px;
    }
    .p-vis-m{
        font-size:40px;
        text-indent:-39px;
    }
    .ulmission li h3{
        font-size:22px;
        height:68px;
    }
    .olvalue li{
        column-gap:30px;
    }
    .slo-en {
        font-size:46px;
    }
    .slo-jp{
        font-size:20px;
    }
}
@media(min-width:1200px){
    .p-vis-m br{
        display:none;
        text-indent:0;
        padding-left:0;
    }
    .ulmission li h3{
        font-size:20px;
        height:auto;
    }
    .ulmission h3 .br1{
        display:none;
    }
}
/*---- #company page ----*/
.dl_cmp{
    max-width:880px;
}
.dl_cmp dt{
    padding:24px 0 10px;
}
.dl_cmp dd{
    padding:0 0px 24px;
    margin-bottom:0;
    border-bottom:1px solid rgba(141, 123, 106, 0.5);
}
.dl_cmp dt:first-of-type{
    border-top:1px solid rgba(141, 123, 106, 0.5);
}
.dl_cmp .tellink{
    color:var(--tera);
    font-weight:600;
}
.dl_cmp .tellink:hover{
    opacity:0.8;
}
.cmp_logo{
    margin-bottom:2rem;
}
.cmp_logo img{
    width:180px;
    object-fit:contain;
}
.cmp_sec.sec2 .txtarea p{
    line-height:1.8;
}
@media(min-width:768px){
    .dl_cmp{
        display:flex;
        flex-wrap:wrap;
    }
    .dl_cmp dt{
        padding:32px 10px;
        width:25%;
        border-bottom:1px solid rgba(141, 123, 106, 0.5);
    }
    .dl_cmp dd{
        width:75%;
        padding:32px 10px;
        padding-left:0;
    }
    .dl_cmp dd:first-of-type{
        border-top:1px solid rgba(141, 123, 106, 0.5);
    }
    .dl_cmp .tellink{
        color:#000;
        font-weight:inherit;
    }
    .dl_cmp dd .br2{
        display:none;
    }
    .cmp_sec.sec2 .flx{
        display:flex;
        gap:5%;
        align-items:center;
    }
    .cmp_logo{
        width:180px;
        margin-bottom:0;
    }
    .cmp_logo .txtarea{
        width:calc(95% - 180px);
    }
}
@media(min-width:992px){
    .dl_cmp dd .br1{
        display:none;
    }
}
/*---- #omoiqane-neuroedge page ----*/
.srvCatch .en{
    font-family:var(--enfont);
    font-weight:bold;
    font-size:26px;
    margin-bottom:6px;
}
.srvCatch .jp{
    font-size:15px;
    font-weight:500;
}
.leadtxt p{
    margin-top:2rem;
    font-size:18px;
    font-weight:700;
    line-height:1.8;
}
.leadtxt .br1{
    display:none;
}
.srv_sec.poly{
    padding-top:80px;
}
.srv_sec .imgarea{
    margin-bottom:20px;
}
.srv_sec .imgarea img{
    max-width:500px;
    max-height:500px;
    object-fit:contain;
}
.srv_sec .desc p{
    margin-bottom:1rem;
    line-height:1.8;
}
.srv_sec .desc p:last-child{
    margin-bottom:0;
}
.srv_sec .desc ul{
    padding-left:0;
    list-style:none;
    margin-bottom:0;
    padding-bottom:6px;
}
.srv_sec .desc ul li{
    margin-bottom:10px;
    font-weight:bold;
    position:relative;
    padding-left:25px;
}
.srv_sec .desc ul li::before{
    content:'';
    position:absolute;
    top:5px;
    left:0;
    width:17px;
    height:auto;
    aspect-ratio:1/1;
    background:var(--oldgold);
    will-change:clip-path;
    -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
.srvCatch-last{
    font-size:26px;
    font-weight:bold;
    margin-bottom:20px;
    text-align:center;
}
.srv_sec.sec5{
    padding-bottom:80px;
}
.srv_sec.sec6.poly{
    position:relative;
    top:-40px;
    margin-bottom:-41px;
    text-align:center;
}
.p-bld{
    font-size:20px;
    font-weight:bold;
    margin-top:20px;
}
.srv_sec.sec6.poly p{
    text-align:center;
}
.shape-sec{
    background:#fff;
    position:relative;
    top:-40px;
    margin-bottom:-41px;
    padding-bottom:80px;
    overflow:hidden;
}
.bg-animation{
  position:fixed;
  top:30%;
  left:50%;
  width:120%;
  -webkit-transform:translate(-50%,-50%);
  transform:translate(-50%,-50%);
  display:flex;
  justify-content:center;
  align-items:center;
  opacity:0;
  pointer-events:none;
  z-index:-1;
  transition:opacity 0.8s ease;
}
.bg-animation.appear{
    opacity:1;
}
.fluid-container{
  width:100%;
  height:100%;
  position:relative;
}
.fluid-container svg{
  position:absolute;
  width:100%;
  height:auto;
}
.blob-bg{
  fill:#a8d1cb;
  opacity:0.85;
  transform-origin:center;
}
.blob-top{
  fill:#4E7A75;
  opacity: 0.85;
  transform-origin:center;
}
.srv_keys{
    width:fit-content;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px;
}
.srv_keys p{
    color:#fff;
    margin-bottom:80px;
}
.srv_keys span{
    display:block;
}
.srv_keys p:last-child{
    margin-bottom:0;
}
.srv_keys .en{
    font-family:var(--enfont);
    font-weight:700;
    font-size:28px;
}
.srv_keys .jp{
    font-size:15px;
    font-weight:500;
}
.keyanim{
    opacity:0;
    transition:all .7s;
    -webkit-transform:translateY(30px);
    transform:translateY(30px);
}
.keyanim.appear{
    opacity:1;
    -webkit-transform:translateY(0);
    transform:translateY(0);
}
@media(min-width:550px){
    .neu .srvCatch .jp br{
        display:none;
    }
    .bg-animation{
        width:90%;
    }
    .srv_keys{
        width:85%;
    }
}
@media(min-width:768px){
    .srvCatch .en{
        font-size:48px;
    }
    .srvCatch .jp{
        font-size:17px;
    }
    .leadtxt .br1{
        display:inline;
    }
    .srv_sec .flx{
        display:flex;
        gap:5%;
        align-items:flex-start;
    }
    .srv_sec .flx.rev{
        flex-direction:row-reverse;
    }
    .srv_sec .flx .imgarea{
        width:35%;
        margin-bottom:0;
    }
    .srv_sec .flx .desc{
        width:60%;
    }
    .srvCatch-last{
        font-size:32px;
    }
    .p-bld br{
        display:none;
    }
    .bg-animation{
        top:20%;
        width:600px;
    }
    .srv_keys{
        width:450px;
    }
    .srv_keys .en{
        font-size:40px;
    }
    .srv_keys .jp{
        font-size:16px;
    }
}
@media(min-width:992px){
    .srvCatch .en{
        font-size:52px;
    }
    .srvCatch .jp{
        font-size:18px;
    }
    .leadtxt p{
        font-size:22px;
    }
    .srv_sec .flx{
        align-items:center;
    }
    .srv_sec.poly{
        padding-top:160px;
    }
    .srvCatch-last{
        font-size:40px;
    }
    .srv_sec.sec5{
        padding-bottom:160px;
    }
    .shape-sec{
        padding-bottom:160px;
        top:-80px;
        margin-bottom:-81px;
    }
    .srv_sec.sec6.poly{
        top:-80px;
        margin-bottom:-81px;
    }
    .p-bld{
        font-size:24px;
    }
    .bg-animation{
        top:15%;
    }
    .srv_keys p{
        margin-bottom:100px;
    }
}
@media(min-width:1200px){
    .srvCatch .en{
        font-size:60px;
    }
    .srv_sec .flx .imgarea{
        width:30%;
    }
    .srv_sec .flx .desc{
        width:65%;
    }
}
/*---- #for-investors-partners ----*/
.for_sec .btnsquare{
    margin-top:2rem;
}
@media(min-width:992px){
    .for_sec .h2org{
        font-size:24px;
    }
}
/*---- #contact page ----*/
.beforeform1,.beforeform2{
    margin-bottom:40px;
}
.telWrap,.form_add{
  padding:1rem;
  background:#fff;
}
.telWrap{
    max-width:700px;
  margin:0 auto 40px;
}
.telWrap .h2org{
    font-size:17px;
    margin-bottom:10px;
    text-align:center;
}
.telWrap .tellink{
  font-size:26px;
  display:flex;
  justify-content:center;
  align-items:center;
  font-weight:700;
  font-family:var(--enfont);
  color:#000;
}
.telWrap .tellink:hover{
    color:#444;
}
.telWrap .tellink i{
  margin-right:5px;
  font-size:75%;
  color:#333;
}
.telWrap .tellink:hover{
  opacity:0.8;
}
.aftertel{
  margin-top:5px;
  font-size:14px;
  text-align:center;
}
.form_add{
    margin-top:40px;
}
.form_add p{
    font-size:15px;
}
@media(min-width:400px){
    .telWrap,.form_add{
        padding:20px;
    }
}
@media(min-width:768px){
    .beforeform1{
        text-align:center;
    }
    .ctt_sec h2{
        text-align:center;
    }
    .telWrap{
        padding:20px 30px;
    }
    .telWrap .tellink{
      font-size:36px;
      letter-spacing:1px;
    }
    .telWrap .h2org{
        font-size:20px;
    }
    .aftertel{
        font-size:15px;
    }
    .form_add{
        padding:30px;
    }
    .form_add p{
        font-size:16px;
    }
}
@media(min-width:992px){
    .beforeform2{
        text-align:center;
    }
}
/*---- #privacy page ----*/
.pri_sec,.pri_sec p{
    font-size:16px;
}
.pri_sec .h2org{
    font-size:20px;
}
.ul_pri{
    margin:1rem 0;
    padding-inline-start:20px;
}
.ul_pri>li{
    margin-bottom:10px;
}
.pri_sec a{
    color:var(--tera);
    font-weight:500;
    margin:0 3px;
    text-decoration:underline;
}
.pri_sec a:hover{
    opacity:0.8;
    text-decoration:none;
}
@media(min-width:768px){
    .pri_sec .h2org{
        font-size:24px;
    }
}
@media(min-width:992px){
    .pri_sec .h2org{
        font-size:26px;
    }
}
/*---- #page heder ----*/
.page-header {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.page-header-ttl .jp{
    font-family:var(--enfont);
    font-weight:bold;
    margin:0;
}
.page-header-ttl{
    left:50%;
    -webkit-transform:translate(-50%,-50%);
    transform:translate(-50%,-50%);
    padding:0 20px;
}
.page-header-ttl .en{
    display:none;
}
@media(min-width:576px){
    .page-header-ttl{
        max-width:540px;
    }
}
@media(min-width:768px){
    .page-header-ttl{
        max-width:720px;
    }
}
@media(min-width:992px){
    .page-header-ttl{
        max-width: 960px;
    }
    .page-header-ttl .jp{
        font-size:52px;
    }
}
@media (min-width: 1200px){
	.page-header-ttl{
		max-width:1140px;
	}
}
@media (min-width: 1400px){
	.page-header-ttl{
		max-width:1320px;
	}
}
/*---- #footer ----*/
.ftricon{
    text-align:center;
    padding:0 20px;
    margin-bottom:30px;
}
.ftricon img{
    width:120px;
    object-fit:contain;
    filter:drop-shadow(1px 2px 3px rgba(255, 255, 255, 0.1));
}
.ftrinfo p,.ftrinfo a{
    color:var(--footer-font-color);
}
.copyright{
    margin-top:30px;
    font-weight:400;
}
.site-footer-menu ul.sub-menu>li>a{
    color:var(--footer-font-menucolor);
}
.site-footer-menu>li.ul_pri{
    border-bottom:none;
}
.site-footer-menu>li.ul_pri>a{
    font-size:15px;
}
@media(max-width:991px){
    .site-footer-wrap>.container{
        padding:0;
        max-width:100%;
    }
}
@media(min-width:992px){
    .site-footer-menu{
        display:flex;
        flex-wrap:wrap;
    }
    .site-footer-menu>li{
        width:25%;
        padding:0 10px;
    }
    .site-footer-menu>li>a{
        width:fit-content;
        padding:0;
        font-size:17px;
    }
    .site-footer-menu>li,.site-footer-menu ul.sub-menu>li{
        border:none!important;
        margin-bottom:15px;
    }
    .site-footer-menu>li.menu-item-has-children>a{
        padding-right:0;
    }
    .site-footer-menu>li.menu-item-has-children>a::before,.site-footer-menu>li.menu-item-has-children>a::after{
        display:none;
    }
    .site-footer-menu ul.sub-menu{
        display:block;
        border-top:none;
        margin-top:15px;
    }
    .site-footer-menu ul.sub-menu>li>a{
        width:fit-content;
        padding:0;
        font-weight:500;
    }
    .site-footer-menu li a:hover{
        opacity:1;
        color:#847e7d!important;
    }
}