.elementor-kit-6{--e-global-color-primary:#006600;--e-global-color-secondary:#1F4135;--e-global-color-text:#333333;--e-global-color-accent:#CFA822;--e-global-color-c9a9d82:#CCCCCC;--e-global-color-b338ed6:#FFFFFF;--e-global-color-a34e1db:#666666;--e-global-color-bd5cd5d:#234539;--e-global-color-48d0b74:#CC6600;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:var( --e-global-color-astglobalcolor4 );background-image:url("https://okushinano-trails.com/wp/wp-content/uploads/2025/06/bg_img.webp");background-position:top left;background-repeat:repeat;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){margin-block-end:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{--lightbox-header-icons-size:5px;--lightbox-navigation-icons-size:6px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================
TOP
============================== */


/* info */
.tategaki {
  writing-mode: vertical-rl; 
    font-size: 2rem;
  line-height: 4.0!important;
font-family: "Zen Maru Gothic", serif;
}

.tategaki p {
  font-size: 29px;
  line-height: 2.5!important;
  margin: 0 0 2.8rem 0; 

}


.upright {
  text-combine-upright: all;
  text-orientation: upright; 
}

  .trim{
  display:inline-block;
  transform: translateY(-0.5em);
}
  
  
  @media screen and (max-width: 1024px) {

/* info */
.tategaki {
  writing-mode: vertical-rl; 
    font-size: 1.5rem;
  line-height: 1.5!important;

}

.tategaki p {
  font-size: 30px;
  line-height: 2.0!important;
  margin: 0 0 2.8rem 0; 

}


.upright {
  text-combine-upright: all;
  text-orientation: upright; 
}

  .trim{
  display:inline-block;
  transform: translateY(-0.5em);
}
  } 

  
  @media screen and (max-width: 767px) {

/* info */
.tategaki {
  writing-mode: vertical-rl; 
    font-size: 1.3rem;
  line-height: 1.5!important;

}

.tategaki p {
  font-size: 22px;
  line-height: 2.2!important;
  margin: 0 auto 2.8rem ; 

}


.upright {
  text-combine-upright: all;
  text-orientation: upright; 
}

  .trim{
  display:inline-block;
  transform: translateY(-0.5em);
}
  } 




/* button_arrow */

.button_arrow  {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 30px auto;
    max-width: 400px;
    padding: 10px 50px 10px 60px;
    font-size: 1.0rem;
    letter-spacing: 0.01em!important;

}


.button_arrow a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 400px;
    padding: 10px 50px 10px 60px;
    color: #cfa822;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    text-decoration: none!important;
}

.button_arrow a:before, .button_arrow a:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
}
.button_arrow a:before {
  width: 0.5rem;
  height: 0.5rem;
  left: 1.0rem;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  z-index: 2;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s;
}
.button_arrow a:after {
  left: 0;
  background: #cfa822;
  z-index: 1;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 4rem;
  transform: translateY(-50%);
  transition: all 0.5s;
}
.button_arrow a span {
  position: relative;
  transition: all 0.3s;
  z-index: 3;
}

.button_arrow a:hover span {
  color: #fff;
}
.button_arrow a:hover:before {
  left: 2rem;
}
.button_arrow a:hover:after {
  right: 0;
  width: 100%;
}



/* button_arrow_cta */

.button_arrow_cta  {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: left;
    margin: 10px auto;
    max-width: 300px;
    padding: 10px 20px 10px 20px;


}


.button_arrow_cta a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: left;
    margin: 0 auto;
    max-width: 400px;
    padding: 10px 50px 10px 60px;
    color: #cfa822;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    text-decoration: none!important;
}

.button_arrow_cta a:before, .button_arrow_cta a:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
}
.button_arrow_cta a:before {
  width: 0.5rem;
  height: 0.5rem;
  left: 1.0rem;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  z-index: 2;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s;
}
.button_arrow_cta a:after {
  left: 0;
  background: #cfa822;
  z-index: 1;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 4rem;
  transform: translateY(-50%);
  transition: all 0.5s;
}
.button_arrow_cta a span {
  position: relative;
  transition: all 0.3s;
  z-index: 3;
}

.button_arrow_cta a:hover span {
  color: #fff;
}
.button_arrow_cta a:hover:before {
  left: 2rem;
}
.button_arrow_cta a:hover:after {
  right: 0;
  width: 100%;
}




/* button_arrow_v2 */

.button_arrow_v2  {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 15px auto;
    max-width: 400px;
    padding: 10px 50px 10px 60px;
    font-size: 1.0rem;
    letter-spacing: 0.01em!important;

}


.button_arrow_v2 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 400px;
    padding: 10px 50px 10px 60px;
    color: #cfa822;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    text-decoration: none!important;
}

.button_arrow_v2 a:before, .button_arrow_v2 a:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
}

.button_arrow_v2 a:before {
  width: 0.5rem;
  height: 0.5rem;
  left: 1.0rem;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  z-index: 2;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s;
}

.button_arrow_v2 a:after {
  left: 0;
  background: #cfa822;
  z-index: 1;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 4rem;
  transform: translateY(-50%);
  transition: all 0.5s;
}

.button_arrow_v2 a span {
  position: relative;
  transition: all 0.3s;
  z-index: 3;
}

.button_arrow_v2 a:hover span {
  color: #fff;
}
.button_arrow_v2 a:hover:before {
  left: 2rem;
}
.button_arrow_v2 a:hover:after {
  right: 0;
  width: 100%;
}











/* --------------------
    TOPcontainersSet
-------------------- */



.wrapper_outer {
  font-family: "Zen Maru Gothic", sans-serif;
  max-width: 1420px;
  margin: 0 auto;
  padding: 60px 0;
  font-weight: 800;
}

.content-box {
  width: 1098px;
  margin: 0 auto;
  display: flex;
  padding: 35px 0;
  background-color: #ffffff;
  border-radius: 12px 12px 0 0;
  box-sizing: border-box;
  /*transform: translateX(50px); */
  /* ← 画像100pxはみ出しの中心補正 */
}



.content-box02 {
  width: 1098px;
  margin: 0 auto;
  display: flex;
  padding: 20px 0 10px;
  background-color: #ffffff;
  border-radius: 0;
  box-sizing: border-box;
  /*transform: translateX(50px); */
  /* ← 画像100pxはみ出しの中心補正 */
}

.content-box03 {
  width: 1098px;
  margin: 0 auto;
  display: flex;
  padding: 10px 0 50px;
  background-color: #ffffff;
  border-radius: 0 0 12px 12px;
  box-sizing: border-box;
  /*transform: translateX(50px); */
  /* ← 画像100pxはみ出しの中心補正 */
}


/* --------------------
    photo Left 
-------------------- */



/* photo */

.image-box {
  width: 768px;
  flex-shrink: 0;
  margin-left: -100px;
}

.image-box img {
  width: 768px;
  height: auto;
  display: block;
  border-radius: 8px;
}



/* --------------------
    photo Right
-------------------- */


.content-boxRight {
  width: 1098px;
  margin: 0 auto;
  display: flex;
  padding: 35px 0;
  background-color: #ffffff;
  border-radius: 12px;
  box-sizing: border-box;
  /*transform: translateX(50px); */
  /* ← 画像100pxはみ出しの中心補正 */
}




/* photo */

.image-boxRight {
  width: 768px;
  flex-shrink: 0;
  margin-right: -100px!important;
}

.image-boxRight img {
  width: 768px;
  height: auto;
  display: block;
  border-radius: 8px;
}


/* txtRight */
.text-boxR {
width: 40%;
  writing-mode: vertical-rl;
  text-orientation: mixed;
      margin: 0;
      padding-right: 30px;
      font-size: 1.2rem;
      font-weight: 700;
      line-height:2.8;
      letter-spacing: 0.1em;

}




/* txt */
.text-box {
width: 35%;
  writing-mode: vertical-rl;
  text-orientation: mixed;
      margin: 0;
      font-size: 1.2rem;
      font-weight: 700;
      line-height:2.8;
      letter-spacing: 0.1em;

}


.topList {
     margin-top: 20px!important;
     font-size: 1.1rem;   
     font-weight: 700;  
     color: #333;
}



.reset-writing {
  writing-mode: horizontal-tb; /* ←縦書きを解除 */
  text-orientation: mixed;
    letter-spacing: 0.01em!important;
}




h3.title {
   font-size: 1.6rem;
  color:#006600;
  line-height:3.0;
  letter-spacing: 0.2em;
  font-family: "Zen Maru Gothic", sans-serif;
   font-weight: 900;
    
}


/* iPad 幅までは画像を中央寄せに修正（はみ出し解除） */

@media (max-width: 1199px) {
  .content-box {
    max-width: calc(100% - 80px);
    transform: translateX(0);
  }

.content-box02 {
    max-width: calc(100% - 80px);
    transform: translateX(0);
  }

.content-box03 {
    max-width: calc(100% - 80px);
    transform: translateX(0);
  }



.content-boxRight {
    max-width: calc(100% - 80px);
    transform: translateX(0);
}




/*photo */

.image-box {
  width: 700px;
  flex-shrink: 0;
  margin-left: -100px;
}

.image-box img {
  width: 700px;
  height: auto;
  display: block;
  border-radius: 8px;
}


/* txt */
.text-box {
width: 330px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
      margin: 0 10px 0 0;
      font-size: 1.0rem;
      font-weight: 700;
      line-height:2.2;
      letter-spacing: 0.1em;

}

.text-box .text-boxList{
    margin-top: 00px;
}

ul li::marker{
 color: #333;
}
.text-box a {
    color:#333;
}

.text-box a:hover {
    color: #fff!important;
  background-color: #cfa822;
 padding: 5px;
}

h3.title {
    color:#006600;
    line-height:2.0;
  letter-spacing: 0.3em;
    
}


/* txtRight */
.text-boxR {
width: 330px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
      margin: 0;
      padding-right: 0px;
      font-size: 1.2rem;
      font-weight: 700;
      line-height:2.2px;
      letter-spacing: 0.1em;

}










}











  @media screen and (max-width: 767px) {

h3.title {
 font-family: "Zen Maru Gothic", sans-serif!important;
    color:#006600;
    line-height:2.0;
  letter-spacing: 0.3em;
    
}

/* info */
.tategaki_h3 {
font-family: "Zen Maru Gothic", serif;

 color:#006600;
 font-size: 1.2rem;
 line-height: 4.0!important;
}


/* txt */
.text-box {
width: 200px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
      margin: 0 10px 0 0;
      font-size: 1.0rem;
      font-weight: 700;
      line-height:2.8;
      letter-spacing: 0.1em;

}

.topList_sp {
  margin-left: 10px!important;
 font-size: 1.0rem;   
    font-weight: 700;  
     color: #333;
}

}




/* ===================================
   news-content
=================================== */



.news-content-align {
  display: flex;
  align-items: left;
  padding-left: 20px;
  height: 100%;
}

.news-content-align * {
  margin: 0!important;
  padding: 0!important;
  line-height: 1.4;

}    
    
    
 

  @media screen and (max-width: 767px) {
      
    .news-content-align {
  display: flex;
  align-items: left;
  padding-left: 0!important;
  height: 100%;
}  
      
    
      
}    
      
      



/* ============================
second page
============================== */




/* second page */

.explanatory {
      font-family: sans-serif;
    font-size: 1.0rem;
    letter-spacing: 0.1rem;
    font-weight: 400;
    line-height: 2.0rem;
}

.explanatory_v2 {
      font-family: sans-serif;
    font-size: 1.0rem;
    letter-spacing: 0.1rem;
    font-weight: 400;
    line-height: 1.6rem;
    padding-bottom: 10px;
    
    
}






.ZenMaru{
    font-family: "Zen Maru Gothic", sans-serif;
}


.greetingTxt {
      font-family: sans-serif;
    font-size: 1.0rem;
    letter-spacing: 0.1rem;
    font-weight: 400;
    line-height: 2.0rem;
    color: #333;
    padding-bottom: 10px!important;
    letter-spacing: 0.1rem;
    
}

.greetingTxt2 {
      font-family: sans-serif;
    font-size: 1.6rem;
    letter-spacing: 0.1rem;
    font-weight: 700;
    line-height: 2.0rem;
    color: #333;
}





  @media screen and (max-width: 767px) {
      
.greetingTxt {
      font-family: sans-serif;
    font-size: 1.0rem;
    font-weight: 400;
    line-height: 2.0rem;
    color: #333;
    padding-bottom: 10px!important;
    letter-spacing: 0.05rem!important;
    line-height: 1.6rem;
}
   
    
      
}    
      









/* ============================
POPU`
============================== */

/* メニューの最初の項目に背景が勝手につく場合の対処 */
.elementor-nav-menu li:first-child > a {
  background-color: transparent !important;
}








a {
  text-decoration: none!important;
}



/* 投稿カード内の SNS アイコン */
.social-icon {
  font-size: 2rem;
  margin-right: 10px;
  transition: color .2s;
}
.social-icon:last-child {
  margin-right: 10px;        /* 最後のアイコンだけ余白を削除 */
}
.social-icon:hover {
  color: #cc6600; 
}





/* ============================
MemberShip page
============================== */




/* MemberShip page */

.mmsipTxt {
      font-family: sans-serif;
    font-size: 1.0rem;
    letter-spacing: 0.1rem;
    font-weight: 400;
    line-height: 1.6rem;
    padding-bottom: 20px;  
}





















/* ============================
　Line break position
============================== */

/* sp CSS */
@media screen and (max-width: 767px) {
br.sp { display: inline; }
br.pc { display: none; }
br.tb { display: none; }
}

/* tb CSS */
@media (min-width: 768px) {
br.sp { display: none; }
br.tb { display: inline; }
}

/* PC CSS */
@media (min-width: 1024px) {
br.sp { display: none; }
br.tb { display: none; }
br.pc { display: inline; }
}
/*---------------------------------/* End custom CSS */