@charset "utf-8";


/* レイアウト*/
body:has(#lp_page_compact_content) #container { overflow:visible; }
body.page-template-page__lp #page_content { width:auto; max-width:var(--tcd-lp-content-max-size); margin:0 auto; }
#lp_page_compact_content { max-width:var(--tcd-lp-content-max-size); margin:var(--tcd-lp-header-margin-top) auto 120px; }
#lp_page_compact_content.display_dropshadow { box-shadow:0 0 10px 0 rgba(0,0,0,0.2); }
#lp_page_compact_content #page_content { max-width:inherit; padding:120px 100px; }
@media (max-width: 1200px) {
	body.page-template-page__lp #page_content { margin:0 100px; }
  #lp_page_compact_content { margin:0; max-width:inherit; box-shadow:none !important; border:none; }
  body:has(#header) #lp_page_compact_content { margin:0px; box-shadow:none; border:none; }
	body:not(:has(#lp_page_header)) #lp_page_compact_content { margin-top:60px !important; }
  #lp_page_compact_content #page_content { padding:100px 0px; }
	body:has(#header):has(#lp_page_compact_content):not(.page_header_hidden) #header:after { transform: translate3d(0,-100%,0); }
	body:has(#header):has(#lp_page_compact_content):not(.page_header_hidden) #header_logo .image { filter:brightness(0) invert(1); }
	body:has(#header):has(#lp_page_compact_content):not(.page_header_hidden) #header_logo a { color:#fff; }
}
@media (max-width: 1000px) {
	body.page-template-page__lp #page_content { margin:0 50px; }
}
@media (max-width: 767px) {
	body.page-template-page__lp #page_content { margin:0 20px; }
  #lp_page_compact_content { margin:0 auto; }
  #lp_page_compact_content #page_content { padding:40px 0; }
	body:not(:has(#lp_page_header)) #lp_page_compact_content { margin-top:40px !important; }
}


/* ページヘッダー */
#lp_page_header { position:relative; overflow:hidden; width:100%; }
#lp_page_header.height_full { height:100svh; position:relative; }
body:has(#header):has(#header_message) #lp_page_header.height_full { height:calc(100svh - var(--tcd-header-message-height)); }
#lp_page_header.height_custom { height:var(--tcd-lp-header-height-custom-pc);  }
#lp_page_compact_content #lp_page_header { width:100%; height:auto; min-height:inherit; }
#lp_page_header_parallax { width:100%; height:100%; position:absolute; top:0; left:0; overflow:hidden; transform:translate3d(0,0,0); }
body:not(.page_header_hidden) #lp_page_header_parallax { will-change:transform; }
@media (min-width: 1201px) {
  body:has(#lp_page_compact_content) #lp_page_header_parallax { transform:translate3d(0,0,0) !important; }
}
@media (max-width: 1000px) {
	#lp_page_header { min-height:360px; }
}
@media (max-width: 767px) {
	#lp_page_compact_content #lp_page_header { min-height:300px; }
  #lp_page_header.height_custom { height:var(--tcd-lp-header-height-custom-sp);  }
}

#lp_page_header .main_content { width:100%; height:100%; position:relative; z-index:10; display:grid; place-items:center; }
#lp_page_header .content { position:relative; z-index:3; gap:0px; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:100px 0; width:var(--tcd-lp-content-max-size); }
#lp_page_compact_content #lp_page_header .content { padding-left:100px; padding-right:100px; }
#lp_page_header.layout_right .content { text-align:right; align-items:flex-end; }
#lp_page_header.layout_left .content { text-align:left; align-items:flex-start; }
#lp_page_header.direction_vertical .content { writing-mode:vertical-rl; text-align:left; align-items:flex-start !important; padding:100px 0; max-height:100%; max-width:100vw; }
#lp_page_header.layout_right.direction_vertical .content { justify-content:flex-start; }
#lp_page_header.layout_left.direction_vertical .content { justify-content:flex-end; }
#lp_page_header .catch { line-height:var(--tcd-lp-header-text1-line-height); margin-top:calc(0.5em - 0.5lh); margin-bottom:calc( var(--tcd-lp-header-text1-margin-bottom-pc) + (0.5em - 0.5lh) ); color:var(--tcd-lp-header-text1-font-color); font-size:var(--tcd-lp-header-text1-font-size-pc); font-family:var(--tcd-lp-header-text1-font-type); font-weight:500; }
#lp_page_header .desc { line-height:var(--tcd-lp-header-text2-line-height); margin-top:calc(0.5em - 0.5lh); margin-bottom:calc( var(--tcd-lp-header-text2-margin-bottom-pc) + (0.5em - 0.5lh) ); color:var(--tcd-lp-header-text2-font-color); font-size:var(--tcd-lp-header-text2-font-size-pc); font-family:var(--tcd-lp-header-text2-font-type); font-weight:500; }
#lp_page_header .catch:last-child { margin-bottom:calc(0.5em - 0.5lh) !important; }
#lp_page_header .desc:last-child { margin-bottom:calc(0.5em - 0.5lh) !important; }
#lp_page_header.direction_vertical .catch { margin:0; margin-right:calc(0.5em - 0.5lh) !important; margin-left:calc( var(--tcd-lp-header-text1-margin-bottom-pc) + (0.5em - 0.5lh) ); }
#lp_page_header.direction_vertical .desc { margin:0; margin-right:calc(0.5em - 0.5lh) !important; margin-left:calc( var(--tcd-lp-header-text2-margin-bottom-pc) + (0.5em - 0.5lh) ); }
#lp_page_header.direction_vertical .catch:last-child { margin-left:calc(0.5em - 0.5lh) !important; }
#lp_page_header.direction_vertical .desc:last-child { margin-left:calc(0.5em - 0.5lh) !important; }
@media (min-width: 1201px) {

}
@media (max-width: 1200px) {
	#lp_page_header .content { width:100%; padding:100px; }
  #lp_page_header.direction_vertical .content { width:100%; padding:100px; }
}
@media (max-width: 1100px) {
  #lp_page_header .catch { font-size: calc( (var(--tcd-lp-header-text1-font-size-pc) + var(--tcd-lp-header-text1-font-size-sp)) / 2) ; }
}
@media (max-width: 1000px) {
	#lp_page_header .content { padding:100px 50px; }
  #lp_page_compact_content #lp_page_header .content { padding-left:50px; padding-right:50px; }
  #lp_page_header.direction_vertical .content { padding:100px 50px; }
}
@media (max-width: 767px) {
	#lp_page_header .content { padding:80px 50px; text-align:center !important; align-items:center !important; }
  #lp_page_header.direction_vertical .content { padding:80px 50px; text-align:left !important; }
  #lp_page_header.layout_right.direction_vertical .content { justify-content:center; }
  #lp_page_header.layout_left.direction_vertical .content { justify-content:center; }
  #lp_page_header .catch { font-size:var(--tcd-lp-header-text1-font-size-sp); margin-bottom:calc( var(--tcd-lp-header-text1-margin-bottom-sp) + (0.5em - 0.5lh) ); }
  #lp_page_header .desc { font-size:var(--tcd-lp-header-text2-font-size-sp); margin-bottom:calc( var(--tcd-lp-header-text2-margin-bottom-sp) + (0.5em - 0.5lh) ); }
  #lp_page_header.direction_vertical .catch { margin-left:calc( var(--tcd-lp-header-text1-margin-bottom-sp) + (0.5em - 0.5lh) ); }
  #lp_page_header.direction_vertical .desc { margin-left:calc( var(--tcd-lp-header-text2-margin-bottom-sp) + (0.5em - 0.5lh) ); }
}

#lp_page_header .button { border-color:var(--tcd-lp-header-button-color); color:var(--tcd-lp-header-button-color); }
#lp_page_header .overlay { display:block; width:100%; height:100%; position:absolute; top:0; left:0; z-index:2; overflow:hidden; }
#lp_page_header .bg_image { display:block; width:100%; height:100%; position:absolute; top:0; left:0; z-index:1; overflow:hidden; }
#lp_page_header .bg_image img { width:100%; height:100%; position:absolute; top:0; left:0; object-fit:cover; }

#lp_page_header .content * { opacity:0; }
body.start_first_animation #lp_page_header .content *:nth-child(1) { opacity:1; transition: opacity 1.0s ease 0.7s; }
body.start_first_animation #lp_page_header .content *:nth-child(2) { opacity:1; transition: opacity 1.0s ease 1.2s; }
body.start_first_animation #lp_page_header .content *:nth-child(3) { opacity:1; transition: opacity 1.0s ease 1.7s, color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease; }
@media(hover: hover) {
  #lp_page_header .button:hover { border-color:var(--tcd-accent-color); background-color:var(--tcd-accent-color); color:#fff !important; }
}

body.page-template-page__lp:not(:has(#footer)) #copyright { border-top:1px solid #ddd; height:70px; display:grid; place-items:center; }


/* コンテンツ */
.tcd_lp_table { margin-bottom:0px; }
.tcd_lp_table th, .tcd_lp_table td { line-height:2 !important; padding:18px 30px !important; }
.tcd_lp_table th { width:240px !important; text-align:center; background:#f6f6f6 !important; }
.tcd_lp_table td { width:calc(100% - 240px) !important; }
@media (max-width: 1100px) {
  .tcd_lp_table { margin-bottom:100px; }
}
@media (max-width: 767px) {
  .tcd_lp_table td { padding:14px 20px !important; }
  .tcd_lp_table td:nth-child(1) { width:120px !important; }
  .tcd_lp_table td:nth-child(2) { width:calc(100% - 120px) !important; }
  .tcd_lp_table { margin-bottom:0; }
}


/* サイドボタン */
#side_button { position:fixed; right:0; top:50%; transform: translate3d(100%,-50%,0); z-index:100; transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1); }
body.start_scroll #side_button { transform: translate3d(0,-50%,0); }
#side_button a { width:70px; min-height:180px; height:auto; font-size:16px; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; color:#fff; padding:20px 0; position:relative; }
#side_button a span { display:block; writing-mode:vertical-rl; text-align:left; z-index:2; line-height:1.4; }
#side_button a:after { content:''; width:100%; height:100%; position:absolute; top:0; left:0; background:#fff; z-index:1; opacity:0; mix-blend-mode:screen; transition:opacity 0.25s ease; pointer-events:none; }
@media(hover: hover) {
  #side_button a:hover:after { opacity:0.2; }
}
@media (max-width: 1280px) {
  #side_button { display:block; }
  #side_button a { width:50px; min-height:120px; font-size:12px; }
}




/* END KASHIRA lp.css */