.elementor-kit-5{--e-global-color-primary:#DBDBDB;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-5dfa6ba:#004C34;--e-global-color-fe599d7:#FBF8F6;--e-global-color-0a8adc4:#FBF8F6;--e-global-color-e4890b1:#F1F1F1;--e-global-color-8437fc9:#F2EFE9;--e-global-color-341ecb6:#D0AF6D;--e-global-color-2d095e9:#FFFFC9;--e-global-color-3dc46b7:#A5D1FF;--e-global-color-0435b2d:#BEB19E;--e-global-color-a3791d5:#1C1C1C;--e-global-color-903c49e:#7F140A;--e-global-color-4a29b89:#BFA969;--e-global-color-09d568c:#F5F5F5;--e-global-color-d7ca50b:#C9C2AC;--e-global-typography-primary-font-family:"Noto Sans JP";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Noto Sans JP";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Noto Sans JP";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Noto Sans JP";--e-global-typography-accent-font-weight:500;background-color:#282828;overscroll-behavior:auto;}.elementor-kit-5 p{margin-block-end:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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 *//* =========================================
   ベースリセットとiOS対策
========================================= */
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  margin: 0;
  padding: 0;
}



/* =========================================
   ビューポート単位とレスポンシブ用変数
========================================= */

:root {
  --vw-base: 1440;
  --vh: 1vh; 
  --fluid-multiplier: 100vw;
  /* オプション（コメント解除で有効化）
  --ideal-viewport-width: 1600px;
  --ideal-font-size: 16px;
  --min-viewport-width: 375px;
  --max-viewport-width: 3840px;
  --clamped-viewport-width: clamp(var(--min-viewport-width), 100vw, var(--max-viewport-width));
  */
}






/* =========================================
   html / body 全体スタイル
========================================= */
html {
  scroll-behavior: auto !important; /* Lenisがスクロールを制御するため */
  touch-action: manipulation;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0 auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
   scroll-behavior: auto !important;
   
  /* オプション：可変フォントサイズ
  font-size: calc(
    var(--ideal-font-size) * var(--clamped-viewport-width) / var(--ideal-viewport-width)
  );
  */
}


/*選択範囲にの色をかえる*/
::selection{
  background: #000;
  color:#bfa969;
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0 !important;
  padding: 0 !important;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  box-sizing: border-box;
}

/* =========================================
   Lenis 固有クラス対応
========================================= */


html.lenis,
html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}

/* =========================================
   Lenis 追加
========================================= */


.lenis:not(.lenis-autoToggle).lenis-stopped {
  overflow: clip;
}


.lenis.lenis-autoToggle {
  transition-property: overflow;
  transition-duration: 1ms;
  transition-behavior: allow-discrete;
}




h1, h2, h3, h4, h5, h6, p {
  margin: 0;
  padding: 0;
}







/* ========================
   改行制御
======================== */
.pc_br {
  display: flex!important;
}
@media only screen and (max-width: 767px) {
  .pc_br {
    display: block!important;
  }
}
.sp_br {
  display: block!important;
}
@media only screen and (max-width: 767px) {
  .sp_br {
    display: flex!important;
  }
}

.split-text { display:flex; flex-wrap:wrap; }
.break { flex-basis:100%; height:0; font-size:0; line-height:0; } /* 改行用 */
.break.sp { display:none; }
.break.pc { display:inline; }

@media (max-width: 767px){
  .break.sp { display:inline; }
  .break.pc { display:none; }
}


/*
@media only screen and (min-width: 1367px) {
	body #magicMouseCursor {
	  z-index:10000000!important;
	  position: fixed;
	  width: 35px;
	  height: 35px;
	  border: 1px solid #fff;
	  background: rgba(0,0,0,0.2);
	  border-radius: 50%;
	  z-index: 9999;
	  left: 0;
	  top: 0;
	  transition: transform 0.07s, width 0.3s, height 0.3s;
	  pointer-events: none; }
	  body #magicMouseCursor.cursor-square {
		border-radius: 0; }

	body #magicPointer {
	  z-index:10000000!important;
	  height: 5px;
	  width: 5px;
	  top: 0;
	  left: 0;
	  position: fixed;
	  background: red;
	  border-radius: 50%;
	  pointer-events: none;
	  transition: background 0.2s, width 0.2s, height 0.2s, box-shadow 0.2s; }
	  body #magicPointer.is-hover {
		background: #fff; }
	  body #magicPointer.pointer-blur {
		height: 50px;
		width: 50px;
		background: none;
		border: 1px solid #fff;
		box-shadow: 0px 0px 15px -5px white; }
	  body #magicPointer.pointer-overlay {
		height: 50px;
		width: 50px;
		mix-blend-mode: difference;
		box-shadow: 0px 0px 15px -5px white; }

	body .magic-hover {
	  transition: all 0.2s; }
	  body .magic-hover:hover {
		cursor: none!important; }
}
*/


/* 黒板風　タイトル　1 */
.kokuban-t1 {
 position: relative;
 padding: 5.5vw 2vw 4.5vw 2vw;
 width: 90%; /* ボックス幅 */
 background-color: #202020; /* ボックス背景色 */
 color: #fff; /* 文章色 */
 border: 1vw solid #8b4513; /* 枠線 */
 border-radius: 3px; /* 角の丸み */
 box-shadow: 0 0 5px #333;
}
.kokuban-t1::before,
.kokuban-t1::after {
 position: absolute;
 content: '';
 bottom: 0;

} 
.kokuban-t1::before {
 right: 1.2vw;
 background:red;
 border: solid 0.4vw #ff7fbf; /*チョーク（ピンク）*/
 width: 2vw; 
 border-radius: 3px 2px 0 2px;
}
.kokuban-t1::after {
 right: 4vw;
 border: solid 0.4vw #fff; /*チョーク（白）*/
 width: 2vw; 
 border-radius: 8px 5px 2px 5px;
}
.title-t1 {
 position: absolute;
 left: 2vw;
 top: 2vw;
 font-weight: bold;
 font-size: 2vw; /*タイトル）*/
 color: #ff7fbf; /* タイトル色 */
}

@media (max-width: 767px){
    .kokuban-t1{
        padding: 10vw 5vw 8vw 5vw;
        border: 2vw solid #8b4513; /* 枠線 */
    }
    
    .kokuban-t1::before {
        right: 3vw;
        border: solid 1vw #ff7fbf; /*チョーク（ピンク）*/
        width: 5.5vw; 
    }
    .kokuban-t1::after {
        right: 10vw;
        border: solid 1vw #fff; /*チョーク（白）*/
        width: 4.5vw; 
    }
    .title-t1 {
        font-size: 5.5vw; /*タイトル）*/
        left: 5vw;
        top: 3vw;
    }
}

/*文字ライン黄色*/
.highlight {
  background: linear-gradient(180deg,transparent 65%, yellow 65%);
}/* End custom CSS */