/*!
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=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');
/************************************************************/
:root{
    --fontawesome:"Font Awesome 6 Free";
    --fontawesome2:"Font Awesome 6 Brands";
    --linecolor:#06c755;
    --font:"Zen Kaku Gothic New", sans-serif;
    --gr1:#1B734D;
    --gr2:#045332;
    --blue1:#3FB3D3;
    --sp-header-height:55px;
}
/*==========================================================*/
/* defalt define											*/
/*==========================================================*/
body, p{
    font-size:17px;
    font-family:var(--font);
    color:#000;
}
body a{
    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:block;
    width:auto;
}
@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;
}
.single .entry-body img {
    display: inline;
    width: auto;
    max-width:100%;
}
.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){
    .gmap-wrap {
        padding-bottom:75%;
    }
    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){
    .gmap-wrap {
        padding-bottom:56.25%;
    }
    .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:24px;
}
.jp_en_ttl{
    margin-bottom:40px;
}
.jp_en_ttl h2{
    font-weight:700;
    color:var(--gr1);
}
.jp_en_ttl h2 img{
    display:block;
    width:150px;
    height:auto;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:20px;
}
.page-other-business .jp_en_ttl h2{
    text-align:center;
}
.jp_en_ttl span{
    font-weight:400;
    font-size:17px;
    color:var(--gr1);
}
.page-other-business .jp_en_ttl span{
    display:block;
    text-align:center;
}
.h2org {
    font-size:22px;
    margin-bottom:2rem;
}
.h3org {
    font-size:20px;
    margin-bottom:1.5rem;
}
.h4org {
    font-size:18px;
    margin-bottom:1rem;
}
@media(min-width:768px){
    .jp_en_ttl{
        display:flex;
        align-items:flex-end;
    }
    .jp_en_ttl h2{
        font-size:26px;
        margin-bottom:0;
        margin-right:20px;
    }
    .jp_en_ttl span{
        font-size:18px;
    }
    .h1org {
        font-size:26px;
    }
    .h2org {
        font-size:24px;
    }
    .h3org {
        font-size:22px;
    }
    .h4org {
        font-size:20px;
    }
    .page-other-business .jp_en_ttl{
        display:block;
    }
    .page-other-business .jp_en_ttl h2{
        text-align:center;
    }
    .page-other-business .jp_en_ttl span{
        display:block;
        text-align:center;
    }
}
@media(min-width:992px){
    .h1org {
        font-size:30px;
    }
    .h2org {
        font-size:30px;
    }
    .h3org {
        font-size:24px;
    }
    .jp_en_ttl h2{
        font-size:30px;
    }
    .jp_en_ttl span{
        font-size:20px;
    }
    .page-other-business .jp_en_ttl{
        display:flex;
        flex-flow:row nowrap;
        align-items:center;
        margin-bottom:20px;
    }
    .page-other-business .jp_en_ttl h2{
        display:flex;
        flex-flow:row nowrap;
        align-items:center;
    }
    .jp_en_ttl h2 img{
        margin-right:10px;
    }
}
/* link,button */
.a_btn{
    width:fit-content;
}
.a_btn>a{
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-bottom:5px;
    border-bottom:1px solid var(--gr2);
    color:var(--gr1);
    font-weight:700;
}
.a_btn .btncircle{
    width:36px;
    background:var(--gr1);
    color:#fff;
    margin-left:10px;
    transition:all .3s;
}
.a_btn>a:hover{
    opacity:0.8;
}
.a_btn>a:hover .btncircle{
    transform:translateX(5px);
}
@media(min-width:400px){
    .a_btn{
        width:fit-content;
    }
}
/* fade-in animation */
.fade-in,.load-in{
	opacity:0;
	transition:all .7s;
}
.fade-in.fade-in-up,.load-in.fade-in-up{
  -webkit-transform: translate(0,30px);
  -moz-transform: translate(0,30px);
  -ms-transform: translate(0,30px);
  transform: translate(0,30px);
}
.fade-in.fade-in-left,.load-in.fade-in-left{
  -webkit-transform:translate(-30px,0);
  -moz-transform:translate(-30px,0);
  -ms-transform:translate(-30px,0);
  transform:translate(-30px,0);
}
.fade-in.fade-in-right,.load-in.fade-in-right{
  -webkit-transform:translate(30px,0);
  -moz-transform:translate(30px,0);
  -ms-transform:translate(30px,0);
  transform:translate(30px,0);
}
.load-in.scroll-in,.fade-in.scroll-in{
  opacity:1;
  -webkit-transform: translate(0,0)!important;
  -moz-transform: translate(0,0)!important;
  -ms-transform: translate(0,0)!important;
  transform: translate(0,0)!important;
}
/*==============
  header
===============*/
/* mobilemenu */
.mobile-navi-btn{
    background:#fff;
}
.mobile-navi-btn.right {
    width: 50px;
    height: 50px;
    top:4px;
    right:7px;
}
.mobile-navi-btn span {
    position: absolute;
    background:#3e8ea4;
    height:2px;
    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{
    background:#fff;
}
.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>div{
    padding:0;
    background:rgba(255, 255, 255, 0);
}
.site-mobile-menu>li{
    padding: 0;
    margin: 0;
}
.site-mobile-menu>li>a{
    display: block;
    padding: 15px 5px;
    font-weight:500;
    font-family:var(--jpfont);
}
.site-mobile-menu>li.menu-item-has-children>a {
    position: relative;
}
.site-mobile-menu>li.menu-item-has-children>a::before,.site-mobile-menu>li.menu-item-has-children>a::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 15px;
    height: 2px;
    background: var(--main2);
    transition: all .3s;
}
.site-mobile-menu>li.menu-item-has-children>a::before{
    right: 10px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.site-mobile-menu>li.menu-item-has-children>a::after{
    right: 11px;
    top: calc(50% - 1px);
    -webkit-transform:rotate(90deg) translateY(-50%);
    -moz-transform:rotate(90deg) translateY(-50%);
    -ms-transform:rotate(90deg) translateY(-50%);
    transform:rotate(90deg) translateY(-50%);
}
.site-mobile-menu>li.menu-item-has-children.clicked>a::before {
    opacity: 0;
}
.site-mobile-menu>li.menu-item-has-children.clicked>a::after{
    -webkit-transform: rotate(0deg) translateY(-50%);
    -moz-transform: rotate(0deg) translateY(-50%);
    -ms-transform: rotate(0deg) translateY(-50%);
    transform: rotate(0deg) translateY(-50%);
}
.site-mobile-menu ul.sub-menu{
    padding-left: 15px;
    display: none;
}
.site-mobile-menu ul.sub-menu>li>a{
    display: block;
    padding:7px 5px;
}
.site-mobile-menu>li>a:not([href]):not([class]){
    color:var(--sp-menu-font-color);
}
.ctabtn.btn_blue{
    border:1px solid var(--hd-left-bt-color);
}
.ctabtn.btn_gr{
    border:1px solid var(--hd-right-bt-color);
}
.site-mobile-nav .ctabtn{
    margin:20px auto 0;
    max-width:350px;
    padding:10px 15px;
    display:flex;
    justify-content:center;
    align-items:center;
    font-weight:700;
    transition:all 0.3s;
}
.site-mobile-nav .ctabtn.btn_blue{
    background:var(--hd-left-bt-color);
    color:#fff;
}
.site-mobile-nav .ctabtn.btn_gr{
    background:#fff;
    color:var(--hd-right-bt-color);
}
.site-mobile-nav .ctabtn:hover{
    color:#fff;
}
.site-mobile-nav .ctabtn.btn_blue:hover{
    color:var(--hd-left-bt-color);
    background:#fff;
}
.site-mobile-nav .ctabtn.btn_gr:hover{
    color:#fff;
    background:var(--hd-right-bt-color);
}
.ctabtn i{
    font-size:120%;
    margin-right:5px;
}
/* logo */
.logo-ttl img{
    width:220px;
    height:50px;
    object-fit:contain;
}
.contact-btn>div>a{
    font-size:var(--font);
}
.contact-btn>div>a:hover{
    background:#fff;
}
.contact-btn .btn_blue:hover{
    color:var(--hd-left-bt-color);
}
.contact-btn .btn_gr:hover{
    color:var(--hd-right-bt-color);
}
.contact-btn>div>a>i{
    font-size:120%;
}
@media(max-width:991px){
    .contact-btn{
        position:fixed;
        bottom:0;
        left:0;
        z-index:1000;
        height:50px;
    }
    .site-header-inner{
        height:calc(var(--sp-header-height));
    }
}
@media(min-width:992px){
    .site-header-menu>li>a{
        font-family:var(--font);
        letter-spacing:0;
        font-weight:500;
        margin:0 5px;
    }
    .site-header-menu>li>a:not([href]):not([class]){
        cursor:pointer;
    }
    .contact-btn>div>a{
        border-radius:0;
    }
    .logo-ttl img{
        height:55px;
    }
}
/*===================
  #Blog & #Information
====================*/
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;
}
/* archive */
.p_date{
    color:#707070;
    font-size:16px;
    display:inline-block;
}
.catttl{
    margin-bottom:5px;
}
.ul_cat,.ul_tag{
    padding-left:0;
    margin-bottom:30px;
}
.ul_cat li,.ul_tag li{
    list-style-type:none;
    margin-right:1rem;
    margin-bottom:10px;
    display:inline-block;
}
.ul_cat li:last-child,.ul_tag li:last-child{
    margin-right:0;
}
.a_cat,.a_tag{
    display:inline-block;
}
.a_cat{
    padding:3px 7px;
    text-align:center;
    font-size:16px;
    color:#fff;
    background:var(--blue1);
    border:1px solid var(--blue1);
    border-radius:5px;
}
a.a_cat{
    min-width:100px;
}
a.a_cat:hover,.a_cat.current{
    color:var(--blue1);
    background:#fff;
}
.a_tag{
    font-size:16px;
    color:var(--gr2);
}
a.a_tag:hover,.a_tag.current{
    background:rgba(255, 255, 255, 0);
    text-decoration:underline;
    color:#078752;
}
.a_cat.current,.a_tag.current{
    pointer-events:none;
}
.ul_blog,.ul_info{
    padding-left:0;
}
.ul_blog li{
    list-style-type:none;
    margin-bottom:2rem;
}
.ul_blog a{
    display:block;
}
.ul_blog a:hover{
    opacity:0.8;
}
.ul_blog figure{
    aspect-ratio:4/3;
    border-radius:10px;
    margin-bottom:15px;
    overflow:hidden;
}
.ul_blog figure>img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:all .3s;
}
.ul_blog a:hover figure>img{
    -webkit-transform:scale(1.1);
    transform:scale(1.1);
}
.ul_blog h3{
    font-size:17px;
    color:#000;
    font-weight:500;
    line-height:1.5;
    margin-bottom:10px;
}
.ul_blog .a_cat{
    padding:2px 5px;
    font-size:14px;
}
.ul_blog .a_tag{
    font-size:15px;
}
.ul_blog .a_cat:last-child,.ul_blog .a_tag:last-child{
    margin-right:0;
}
.ul_info li{
    list-style-type:none;
    border-bottom:1px solid #888;
}
.ul_info li:first-child{
    border-top:1px solid #888;
}
.ul_info a{
    display:block;
    padding:10px 5px;
}
.ul_info a:hover{
    opacity:0.8;
}
.ul_info h3{
    font-size:17px;
    color:#000;
    font-weight:400;
    line-height:1.5;
    margin-bottom:0;
}
.ul_info .p_date{
    margin-bottom:10px;
}
.ul_blog .a_cat,.ul_blog .a_tag{
    margin-right:10px;
    margin-bottom:10px;
}
.ul_blog .a_cat:last-child,.ul_blog .a_tag:last-child{
    margin-right:0;
}
.currenth2{
    margin-bottom:20px;
}
@media(min-width:400px){
    .ul_blog{
        display:flex;
        flex-wrap:wrap;
    }
    .ul_blog li{
        width:50%;
        padding:0 1%;
    }
}
@media(min-width:768px){
    .ul_blog li{
        width:calc(100% /3);
    }
    .catttl{
        font-size:19px;
    }
    .ul_info a{
        display:flex;
        align-items:center;
        padding:15px 5px;
    }
    .ul_info .p_date{
        width:90px;
        padding-right:1rem;
        margin-bottom:0;
    }
    .ul_info h3{
        width:calc(100% - 90px);
    }
}
@media(min-width:992px){
    .ul_blog li{
        width:25%;
    }
}
/* single */
.entry-header .p_date{
    font-size:18px;
}
.entry-header .a_cat,.entry-header .a_tag{
    margin-right:1rem;
    margin-bottom:10px;
}
.entry-header .a_cat:last-child,.entry-header .a_tag:last-child{
    margin-right:0;
}
.singlethum{
    text-align:center;
    padding-top:40px;
}
.singlethum img{
    width:100%;
    max-width:800px;
    max-height:700px;
    object-fit:contain;
}
.a_btn.singlebtnWrap{
    width:fit-content;
    margin-left:auto;
}
/*==============
  #top page
===============*/
/* #top_fv */
.top_fv{
    padding-top:0;
}
.fvSlider{
    width:95%;
    max-width:1600px;
    overflow:hidden;
    height:calc(100vh - var(--sp-header-height));
    border-radius:0 0 30px 30px;
    margin:0 auto;
    opacity:0;
    transition:opacity 0.2s;
}
.fvSlider.slick-initialized{
    opacity:1;
}
.fvSlider .slick-track,.fvSlider .slick-list{
    height:100%;
    width:100%;
}
.top_img{
  position:relative;
}
.top_img::before{
    content:'';
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0, 0, 0, 0.3);
}
.fvSlider .slide-inner{
  width:100%;
  height:100%;
  overflow:hidden;
  position:relative;
}
.fvSlider .slide-inner img{
  width:110%;
  height:100%;
  object-fit:cover;
  -webkit-transform: translateX(0);
  -webkit-transition: transform 7s linear;
  transform:translateX(0);
  transition:transform 7s linear;
}
.slick-active .slide-inner img{
    -webkit-transform:translateX(-5%);
    transform:translateX(-5%);
}
.fvSlider .txt{
    position:absolute;
    top:50%;
    left:0;
    width:100%;
    transform:translateY(-50%);
    padding:0 8%;
    overflow:hidden;
    text-shadow:0 2px 7px #000;
}
.fvSlider .txt p{
    display:inline-block;
    color:#fff;
    transition:all 0.8s;
    transition-delay:1.5s;
    -webkit-transform:translateY(100%);
    transform:translateY(100%);
    font-weight:700;
    font-size:24px;
}
.fvSlider .slick-active .txt p{
    -webkit-transform:translateY(0);
    transform:translateY(0);
}
/* #top_about */
.top_about{
    position:relative;
}
.top_about::before{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:78%;
    background:#E0EBEE;
}
.top_about .carousel{
  width:100%;
  overflow:hidden;
  position:relative;
}
.carouselinr{
  display:flex;
  width:300%;
  animation:scroll-left 50s linear infinite;
}
.carousel .block{
  width:260px;
  flex-shrink:0;
  aspect-ratio:1/1;
  border-radius:10px;
  margin-right:50px;
  overflow:hidden;
}
.carousel .block img{
    height:100%;
    object-fit:cover;
}
.bgwh{
    padding:20px;
    position:relative;
    background:rgba(255, 255, 255, 0.8);
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
}
.top_about .bgwh{
    top:-80px;
    margin-bottom:-80px;
}
.top_about h2{
    font-size:24px;
    line-height:1.5;
    margin-bottom:20px;
    color:var(--gr1);
    font-weight:700;
}
.top_about .txt p{
    margin-bottom:1rem;
}
.top_about .txt p:last-child{
    margin-bottom:0;
}
@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
/* #top_nav */
.top_nav .nav_cell{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-radius:10px;
    margin-bottom:30px;
    overflow:hidden;
    padding:10px 30px;
}
.top_nav .nav_cell h3{
    font-size:20px;
    font-weight:700;
    line-height:1.5;
    margin-bottom:0;
    margin-right:10px;
}
.top_nav .nav_img h3{
    position:relative;
    color:#fff;
    text-shadow:0 10px 50px #000;
}
.top_nav .nav_cell.enable_pict h3{
    width:calc(100% - 145px);
}
.top_nav .nav_cell .pict{
    width:100px;
    padding-right:10px;
}
.top_nav .nav_cell .pict>img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:all 0.5s;
}
.btncircle{
    display:flex;
    justify-content:center;
    align-items:center;
    aspect-ratio:1/1;
    border-radius:50%;
    transition:all .3s;
}
.btncircle::before{
    content:'\f105';
    font-family:var(--fontawesome);
    font-weight:700;
    display:block;
}
.nav_cell .btncircle{
    width:45px;
    font-size:20px;
}
.nav_cell:hover .btncircle{
    transform:translateX(5px);
}
.top_nav .nav_img .btncircle{
    position:relative;
    background:#fff;
    color:#333;
}
.top_nav .nav_cell:last-of-type{
    margin-bottom:0;
}
.top_nav .nav_img{
    min-height:150px;
    position:relative;
}
.top_nav .nav_img img,.top_nav .nav_img .bg{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:100%;
    transition:all .3s;
}
.top_nav .nav_img img{
    object-fit:cover;
}
.top_nav .nav_img .bg{
    content:'';
    background:rgba(0, 0, 0, 0.4);
}
.top_nav .nav_img:hover img{
    transform:scale(1.1);
}
.top_nav .nav_img:hover .bg{
    opacity:0;
}
.nav_wh{
    height:120px;
    border-bottom:1px solid var(--gr2);
}
.nav_wh h3{
    color:var(--gr1);
}
.nav_wh .btncircle{
    background:var(--gr1);
    color:#fff;
}
.nav_wh:hover{
    opacity:0.8;
}
.nav_wh.nav_cell.enable_pict:hover img{
    transform:scale(1.2);
}
.txtSlide span{
    font-size:50px;
    display:inline-block;
    line-height:1.1;
    white-space:nowrap;
    font-weight:700;
    letter-spacing:1px;
    color:rgba(205, 226, 232, 0.7);
    -webkit-animation:bg_slide 30s linear infinite;
    animation:bg_slide 30s linear infinite;
}
@keyframes bg_slide{
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
/* #top_posts */
.top_posts .blogWrap{
    margin-bottom:60px;
}
.ul_blog_top{
    padding-left:0;
}
.ul_blog_top li{
    list-style-type:none;
    margin-bottom:30px;
}
.ul_blog_top a{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}
.ul_blog_top .imgarea{
    overflow:hidden;
    aspect-ratio:1/1;
    width:80px;
    margin-bottom:0;
}
.ul_blog_top .imgarea img{
    height:100%;
    object-fit:cover;
    transition:all .3s;
}
.ul_blog_top .txtarea{
    width:calc(100% - 90px);
    transition:all .3s;
}
.ul_blog_top a:hover .imgarea img{
    transform:scale(1.1);
}
.ul_blog_top a:hover .txtarea{
    opacity:0.8;
}
.ul_blog_top h3{
    font-size:16px;
    font-weight:400;
    color:#000;
    line-height:1.5;
    margin-bottom:0;
}
.top_posts .a_btn{
    min-width:180px;
    margin-left:auto;
}
.top_posts .ul_info h3{
    font-size:16px;
}
.top_posts .infoWrap .a_btn{
    margin-top:30px;
}
@media(min-width:768px){
    /* #top_fv */
    .fvSlider .txt p{
        font-size:28px;
    }
    /* #top_about */
    .bgwh{
        padding:30px;
    }
    .top_about h2{
        font-size:28px;
    }
    /* #top_nav */
    .top_nav .contains-wrap{
        display:flex;
        flex-wrap:wrap;
        justify-content:space-between;
    }
    .top_nav .nav_cell{
        width:48%;
    }
    .txtSlide span{
        font-size:70px;
    }
    /* #top_posts */
    .ul_blog_top a{
        align-items:center;
    }
    .ul_blog_top .imgarea{
        width:100px;
    }
    .ul_blog_top .txtarea{
        width:calc(100% - 130px);
    }
}
@media(min-width:992px){
    /* #top_fv */
    .fvSlider{
        width:90%;
    }
    .fvSlider .txt p{
        font-size:34px;
    }
    /* #top_about */
    .carousel .block{
        width:300px;
    }
    .bgwh{
        padding:40px;
    }
    .top_about h2{
        font-size:32px;
    }
    /* #top_nav */
    .top_nav .nav_cell h3{
        font-size:26px;
    }
    .txtSlide span{
        font-size:80px;
    }
    /* #top_posts */
    .top_posts .contains-wrap{
        display:flex;
    }
    .top_posts .contains-wrap>div{
        width:50%;
    }
    .top_posts .blogWrap{
        padding-right:40px;
        border-right:1px solid var(--gr2);
    }
    .top_posts .infoWrap{
        padding-left:40px;
    }
    .top_posts .ul_info a{
        display:block;
    }
    .top_posts .ul_info .p_date{
        width:fit-content;
        margin-bottom:10px;
        margin-right:0;
    }
    .top_posts .ul_info h3{
        width:100%;
    }
}
/*================
  #tourism page
=================*/
.tourism_fst{
    margin-bottom:40px;
}
.tourism_inr{
    padding:40px 0;
    border-bottom:1px solid rgba(4, 83, 50, 0.8);
}
.tourism_inr:first-of-type{
    border-top:1px solid rgba(4, 83, 50, 0.8);
}
.tourism_inr .imgarea{
    position:relative;
    aspect-ratio:3/2;
}
.tourism_inr .imgarea .num{
    position:absolute;
    line-height:1.2;
    top:-40px;
    display:inline-block;
    font-weight:500;
    font-size:50px;
    border-bottom:1px solid #000;
}
.tourism_inr.fade-in-left .imgarea .num{
    left:0;
}
.tourism_inr.fade-in-right .imgarea .num{
    right:0;
}
.tourism_inr .imgarea img{
    height:100%;
    object-fit:cover;
}
.tourism_inr h2{
    font-size:22px;
    font-weight:700;
    margin-bottom:10px;
    line-height:1.5;
    color:var(--gr2);
}
.mosaic_time{
    color:#777;
    font-size:15px;
    margin-bottom:1rem;
}
.tourism_last{
    margin-top:40px;
}
.tourism_inr .desc{
    margin-bottom:20px;
}
@media(min-width:768px){
    .tourism_inr h2{
        font-size:26px;
    }
    .mosaic_time{
        font-size:17px;
        font-weight:500;
    }
    .tourism_inr{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
    }
    .tourism_inr.fade-in-right{
        flex-direction:row-reverse;
    }
    .tourism_inr .imgarea{
        width:40%;
        margin-bottom:0;
    }
    .tourism_inr .txtarea{
        width:calc(60% - 30px);
    }
    .tourism_inr.fade-in-left .imgarea .num{
        left:-15px;
    }
    .tourism_inr.fade-in-right .imgarea .num{
        right:-15px;
    }
}
@media(min-width:992px){
    .tourism_fst,.tourism_last{
        text-align:center;
    }
    .tourism_inr h2{
        font-size:30px;
    }
    .tourism_inr .txtarea{
        width:calc(60% - 40px);
    }
}
/*==============
  #mosaic page
===============*/
.mosaic_sec.sec-1{
    position:relative;
}
.mosaic_sec.sec-1::before{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:80%;
    height:75%;
    background:rgba(203, 233, 221, 0.8);
}
.mosaic_img{
    position:relative;
    margin-left:auto;
    width:95%;
    border-radius:10px 0 0 10px;
    aspect-ratio:3/2;
    overflow:hidden;
    transition-duration:1s;
}
.mosaic_img img{
    height:100%;
    object-fit:cover;
}
.mosaic_sec .bgwh{
    top:-40px;
    margin-bottom:-40px;
    transition-duration:1s;
}
.mosaic_sec .bgwh h2{
    font-size:22px;
    line-height:1.5;
    margin-bottom:20px;
    font-weight:700;
    transition-duration:1s;
    transition-delay:0.5s;
}
.mosaic_sec .bgwh p{
    transition-duration:1s;
    transition-delay:0.5s;
}
.mosaic_sec.sec-2 ol{
    padding-left:0;
}
.mosaic_sec.sec-2 ol li{
    list-style-type:none;
    margin-bottom:60px;
}
.mosaic_sec.sec-2 ol li:last-child{
    margin-bottom:0;
}
.mosaic_sec.sec-2 .imgarea{
    position:relative;
}
.mosaic_sec.sec-2 .imgarea .num{
    position:absolute;
    line-height:1.2;
    top:0;
    display:inline-block;
    font-weight:500;
    font-size:45px;
    border-bottom:1px solid #000;
}
.mosaic_sec.sec-2 .fade-in-left .imgarea .num{
    right:0;
}
.mosaic_sec.sec-2 .fade-in-right .imgarea .num{
    left:0;
}
.mosaic_sec.sec-2 .imgarea img{
    object-fit:contain;
}
.mosaic_sec.sec-2 h3{
    font-size:22px;
    font-weight:500;
    line-height:1.5;
    margin-bottom:20px;
}
.mosaic_sec.sec-2 .desc p{
    margin-bottom:1rem;
}
.mosaic_sec.sec-2 .desc p.p_small{
    font-size:14px;
}
.mosaic_sec.sec-2 .desc p:last-child{
    margin-bottom:0;
}
.mosaic_sec.sec-3 .p_bold{
    font-weight:700;
    font-size:20px;
    margin-bottom:1rem;
}
.mosaic_sec.sec-3 .imgbox{
    margin:40px 0;
}
.mosaic_sec.sec-3 .imgbox>div{
    margin-bottom:15px;
}
.mosaic_sec.sec-3 .imgbox img{
    aspect-ratio:4/3;
    object-fit:cover;
}
.h3line{
    font-size:22px;
    font-weight:700;
    color:var(--gr1);
    line-height:1.5;
    margin-bottom:20px;
    width:fit-content;
    border-bottom:1px solid var(--gr1);
}
.ul_amenity{
    padding-left:0;
}
.ul_amenity>li{
    list-style-type:none;
    margin-bottom:20px;
}
.ul_amenity>li:nth-child(1),.ul_amenity>li:nth-child(2),.ul_amenity>li:nth-child(3){
    display:inline-block;
}
.ul_amenity>li:nth-child(1),.ul_amenity>li:nth-child(2){
    margin-right:30px;
}
.ul_amenity h4{
    display:flex;
    align-items:center;
    font-size:17px;
    line-height:1.5;
    margin-bottom:0;
    font-weight:500;
}
.ul_amenity h4 i{
    color:var(--gr2);
    margin-right:10px;
}
.ul_amenity p{
    margin-top:5px;
    font-size:16px;
}
.ul_amenity>li:last-child{
    margin-bottom:0;
}
.mosaic_sec.sec-4 .txtarea{
    margin-bottom:30px;
}
.mosaic_sec.sec-4 .txtarea p{
    margin-bottom:1rem;
}
.mosaic_sec.sec-4 .txtarea p .tellink{
    font-weight:500;
    color:#000;
}
.mosaic_sec.sec-4 .txtarea p .tellink:hover{
    opacity:0.8;
}
.btn_square{
    font-weight:500;
    max-width:300px;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:13px 20px;
    border-radius:10px;
    background:var(--gr1);
    color:#fff;
}
.btn_square .btncircle{
    width:36px;
    margin-left:10px;
    background:#fff;
    color:var(--gr1);
}
.btn_square:hover{
    filter:brightness(1.2);
}
.btn_square:hover .btncircle{
    transform:translateX(5px);
}
@media(min-width:768px){
    .mosaic_sec .bgwh h2{
        font-size:28px;
    }
    .mosaic_sec.sec-2 li{
        display:flex;
        justify-content:space-between;
        align-items:center;
    }
    .mosaic_sec.sec-2 li.fade-in-right{
        flex-direction:row-reverse;
    }
    .mosaic_sec.sec-2 .imgarea{
        width:45%;
        margin-bottom:0;
    }
    .mosaic_sec.sec-2 .txtarea{
        width:calc(55% - 20px);
    }
    .mosaic_sec.sec-2 h3{
        font-size:24px;
    }
    .mosaic_sec.sec-2 .imgarea .num{
        top:-45px;
    }
    .mosaic_sec.sec-2 .fade-in-left .imgarea .num{
        right:auto;
        left:-15px;
    }
    .mosaic_sec.sec-2 .fade-in-right .imgarea .num{
        left:auto;
        right:-15px;
    }
    .h3line{
        font-size:24px;
    }
    .mosaic_sec.sec-3 .imgbox{
        display:flex;
        justify-content:space-between;
    }
    .mosaic_sec.sec-3 .imgbox>div{
        width:calc((100% / 3) - 5px);
    }
    .mosaic_sec.sec-4 .flx{
        display:flex;
        justify-content:space-between;
        align-items:center;
    }
    .mosaic_sec.sec-4 .txtarea,.mosaic_sec.sec-4 .maparea{
        width:48%;
        margin-bottom:0;
    }
    .mosaic_sec.sec-4 .txtarea p .tellink{
        font-weight:inherit;
    }
    .mosaic_sec .gmap-wrap{
        padding-bottom:100%;
    }
}
@media(min-width:992px){
    .mosaic_img{
        width:70%;
        aspect-ratio:16/9;
    }
    .mosaic_sec .bgwh{
        width:726px;
        top:-120px;
        margin-bottom:-120px;
    }
    .mosaic_sec .bgwh h2{
        font-size:30px;
    }
    .mosaic_sec.sec-2 ol li{
        padding-top:20px;
    }
    .mosaic_sec.sec-2 h3{
        font-size:26px;
    }
    .mosaic_sec.sec-2 .imgarea{
        width:48%;
    }
    .mosaic_sec.sec-2 .txtarea{
        width:calc(52% - 40px);
    }
    .mosaic_sec .gmap-wrap{
        padding-bottom:80%;
    }
    .h3line{
        font-size:26px;
    }
}
@media(min-width:1320px){
    .mosaic_sec .gmap-wrap{
        padding-bottom:75%;
    }
}
/*==============
  #other page
===============*/
.other_sec .imgs{
    margin-bottom:30px;
}
.jas_img{
    max-width:400px;
    max-height:350px;
}
.other_sec .imgs img{
    object-fit:contain;
}
.jas_img.img1{
    width:90%;
}
.jas_img.img2{
    width:60%;
    position:relative;
    top:-40px;
    margin-left:auto;
    margin-bottom:-20px;
}
.jas_img.img3{
    width:55%;
    margin-left:4%;
}
.other_sec .tellink{
    font-weight:500;
    color:#000;
}
.other_sec.sec-1 .txtarea p{
    margin-bottom:1rem;
}
.instalink{
    display:inline-flex;
    align-items:center;
    font-weight:500;
    color:#000;
}
.instalink:hover,.other_sec .tellink:hover,.other_sec.sec-2 a:hover{
    opacity:0.8;
}
.instalink i{
    font-size:120%;
    margin-right:5px;
}
.other_sec.sec-1 .gmap-wrap{
    margin-top:40px;
}
.bldimg.img1{
    width:70%;
    margin-left:auto;
}
.bldimg.img2{
    width:80%;
    position:relative;
    top:-20px;
    margin-bottom:-20px;
}
.other_sec.sec-2 a{
    margin:0 3px;
    color:var(--gr2);
    border-bottom:1px solid var(--gr2);
}
.other_sec.sec-2 a:hover{
    border-color:rgba(255, 255, 255, 0);
}
.jas_img.img2,.bldimg.img2{
    transition-delay:.2s;
}
.jas_img.img3{
    transition-delay:.4s;
}
@media(min-width:768px){
    .other_sec .flx{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
    }
    .other_sec.sec-2 .flx{
        flex-direction:row-reverse;
    }
    .other_sec .imgs{
        width:40%;
        margin-bottom:0;
    }
    .other_sec .txtarea{
        width:calc(60% - 40px);
    }
    .other_sec .tellink{
        font-weight:inherit;
    }
    .other_sec.sec-1 .gmap-wrap{
        padding-bottom:100%;
    }
}
@media(min-width:992px){
    .other_sec.sec-1 .gmap-wrap{
        padding-bottom:70%;
    }
    .other_sec.sec-1 .imgs{
        width:35%;
    }
    .other_sec.sec-1 .txtarea{
        width:calc(60% - 30px);
    }
    .other_sec.sec-2 .flx{
        align-items:center;
    }
    .bldimg.img2{
        width:90%;
    }
}
/*==============
  #company page
===============*/
.company_sec.sec-1 img{
    display:block;
    border-radius:10px 0 0 10px;
    margin-left:auto;
    width:95%;
    aspect-ratio:16/9;
    object-fit:cover;
}
.visionWrap{
    transition-delay:.5s;
    margin-top:30px;
}
.dl_cmp{
    max-width:880px;
    margin:0 auto;
}
.dl_cmp dt{
    padding:13px 5px 10px;
}
.dl_cmp dd{
    padding:0 5px 13px;
    margin-bottom:0;
    border-bottom:1px solid var(--gr2);
}
.dl_cmp .tellink{
    color:#000;
    font-weight:500;
    font-size:120%;
}
.dl_cmp .tellink:hover{
    opacity:0.8;
}
.dl_cmp dt:first-of-type{
    border-top:1px solid var(--gr2);
}
@media(min-width:768px){
    .company_sec.sec-1 img{
        width:90%;
        aspect-ratio:2/1;
    }
    .dl_cmp{
        display:flex;
        flex-wrap:wrap;
    }
    .dl_cmp dt{
        padding:13px 10px;
        width:25%;
        border-bottom:1px solid var(--gr2);
    }
    .dl_cmp dd{
        width:75%;
        padding:13px 10px;
        padding-left:0;
    }
    .dl_cmp dd:first-of-type{
        border-top:1px solid var(--gr2);
    }
    .dl_cmp .tellink{
        font-weight:inherit;
        font-size:inherit;
    }
}
@media(min-width:992px){
    .company_sec.sec-1 img{
        aspect-ratio:5/2;
    }
    .company_sec.sec-2 .jp_en_ttl{
        justify-content:center;
    }
    .dl_cmp dt,.dl_cmp dd{
        padding-top:1rem;
        padding-bottom:1rem;
    }
}
@media(min-width:1320px){
    .company_sec.sec-1 img{
        width:85%;
        aspect-ratio:3/1;
    }
}
/*===============
  #contact page
===============*/
.ctt_sec{
    padding:40px 0;
}
.beforeform1{
    margin-bottom:40px;
}
.form_add{
    padding:1rem;
    background:#e2edf0;
    border-radius:30px;
}
.form_add p{
    color:#1e697d;
    font-weight:500;
}
@media(min-width:400px){
    .form_add{
        padding:20px;
    }
}
@media(min-width:768px){
    .form_add{
        padding:30px;
    }
    .beforeform1{
      text-align:center;
    }
}
/*===============
  privacy page
================*/
.pri_sec a{
    margin:0 3px;
    font-weight:500;
    color:var(--gr1);
    border-bottom:1px solid var(--gr1);
}
.pri_sec a:hover{
    opacity:0.8;
    border-color:rgba(255, 255, 255, 0);
}
.ol_pri,.ul_pri {
    margin:1rem 0;
    padding-inline-start:20px;
}
.ol_pri>li,.ul_pri>li{
    margin-bottom:10px;
}
/*==============
  page heder
===============*/
.page-header{
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-image:url(./img/head/mosaic_h.jpg);
}
.page-header-ttl .jp{
    font-family:var(--font);
    margin-bottom:5px;
}
.page-header-ttl .en{
    font-family:var(--font);
}
.tourism-pgheader{
    background-image:url(./img/head/tour_h.jpg);
}
.other-business-pgheader{
    background-image:url(./img/head/other_h.jpg);
    background-position-y:40%;
}
.company-pgheader{
    background-image:url(./img/head/cmp_h.jpg);
}
.post-pgheader{
    background-image:url(./img/head/blog_h.jpg);
}
.information-pgheader{
    background-image:url(./img/head/info_h.jpg);
}
.contact-pgheader{
    background-image:url(./img/head/ctt_h.jpg);
}
.contact-pgheader::after{
    background:rgba(32, 63, 37, 0.6);
}
/*============
  footer
=============*/
.site-footer{
    padding-bottom:80px;
}
.footer_widget1{
    padding-bottom:20px;
    border-bottom:1px solid rgba(255, 255, 255, 0.5);
}
.footer_widget2{
    padding:20px 0;
}
.footer_widget3{
    padding-top:20px;
    border-top:1px solid rgba(255, 255, 255, 0.5);
}
.ftr_logo{
    display:block;
    width:230px;
    margin-bottom:20px;
}
.ftr_logo:hover{
    opacity:0.8;
}
.ftr_logo img{
    object-fit:contain;
}
.ftrinfo p,.ftrinfo a{
    color:var(--footer-font-color);
}
.ftrinfo .tellink{
    font-weight:700;
}
.site-footer-menu>li{
    padding:6px 0;
    margin-right:30px;
}
.site-footer-menu>li:last-child{
    margin-right:0;
}
.site-footer-menu>li>a{
    font-family:var(--font);
    font-size:16px;
}
.ftr_insta{
    display:flex;
    align-items:center;
    margin-bottom:1rem;
    color:#fff;
    font-size:18px;
    font-weight:500;
}
.ftr_insta.btn3{
    margin-bottom:0;
}
.ftrinfo .tellink:hover,.site-footer-menu>li>a:hover,.ftr_insta:hover{
    opacity:0.8;
}
.ftr_insta i{
    font-size:120%;
    margin-right:7px;
}
.copyright{
    margin-top:30px;
    font-weight:400;
}
.menu-item-type-gs_sim{
    display:none!important;
}
@media(min-width:768px){
    .ftrinfo .tellink{
        font-weight:400;
    }
    .footer_widget1,.footer_widget2,.footer_widget3{
        padding:0 15px;
    }
    .footer_widget1{
        border-bottom:none;
    }
    .footer_widget2{
        border-left:1px solid rgba(255, 255, 255, 0.5);
        border-right:1px solid rgba(255, 255, 255, 0.5);
    }
    .footer_widget3{
        border-top:none;
    }
}
@media(min-width:768px) and (max-width:991px){
    .ftr_logo{
        width:200px;
    }
}
@media(min-width:992px){
    .site-footer{
        padding-bottom:40px;
    }
}