@charset "UTF-8";


:root {
	--font-family-primary:YakuHanMP ,"Noto Serif JP", serif;
	--font-family-secondary:YakuHanJP, "Noto Sans JP", sans-serif;

	--font-size-root:16px;
	--font-size-nav:clamp(0.813rem, 0.741rem + 0.15vw, 0.875rem);
	--font-size-menu:14px;
	--font-size-dialog-menu:13px;
	--font-size-mega-menu:clamp(0.813rem, 0.741rem + 0.15vw, 0.875rem);

	--font-size-mv:clamp(1.5rem, -2.5rem + 8.33vw, 5rem);

	--font-size-headding:clamp(1.5rem, -0.357rem + 3.87vw, 3.125rem);
	--font-size-read:clamp(1.125rem, -0.161rem + 2.68vw, 2.25rem);
	--font-size-title:clamp(1.125rem, 0.268rem + 1.79vw, 1.875rem);
	--font-size-text:clamp(0.875rem, 0.589rem + 0.6vw, 1.125rem);
	--font-size-btn:clamp(1rem, 0.571rem + 0.89vw, 1.375rem);
	--font-size-banner:clamp(0.938rem, 0.58rem + 0.74vw, 1.25rem);
		
	--font-size-10:10px;
	--font-size-11-16:clamp(0.688rem, 0.33rem + 0.74vw, 1rem);
	--font-size-12-14:clamp(0.75rem, 0.607rem + 0.3vw, 0.875rem);
	--font-size-14-16:clamp(0.875rem, 0.732rem + 0.3vw, 1rem);
	--font-size-12-20:clamp(0.75rem, 0.179rem + 1.19vw, 1.25rem);
	--font-size-26-110:clamp(1.625rem, -4.375rem + 12.5vw, 6.875rem);

	
	
	--font-weight-primary:500;
	--font-weight-semibold:600;
	--font-weight-bold:700;

	--font-lineheight-120:120%;
	--font-lineheight-140:140%;
	--font-lineheight-150:150%;
	--font-lineheight-160:160%;
	--font-lineheight-170:170%;
	--font-lineheight-200:200%;

	--color-white: #fff;
	--color-black:#333;
	--color-gray:#e1e1e1;
	--color-navy:#000333;
	--color-dialog-menu-btn: #000;	
	--color-dialog-menu-bg:#fff;	
	--color-dialog-menu-link:#0B2E5E;	
	
	--color-primary:#a31039;
	--color-primary-gd:linear-gradient(105deg,rgba(183, 18, 18, 1) 0%, rgba(227, 61, 61, 1) 55%, rgba(183, 18, 18, 1) 100%);;
	--color-secondary:#d1a537;
	--color-accent:#dcbcbd;


	--sp-padding:20px;
	--sp-padding25:25px;
	
	--padding-base:20px;
	--padding-header:35px;
	--padding-zero:0px;
	--align-left:left;
	--align-center:center;
}

@media screen and (min-width: 1025px) {
	:root {
		--sp-padding:0px;
		--font-size-root:12px;
		--font-size-menu:12px;
		--font-size-nav:15px;
		--font-size-mega-menu:14px;
		--font-size-text:16px;
		--font-size-title:20px;
		--font-size-14-16:15px;
		--font-size-12-14:14px;
		--font-size-11-16:15px;	
		--padding-base:60px;
		--padding-header:60px;
		--font-size-banner:20px;
	}
}


html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  box-sizing: border-box;
  word-break: break-all;
}

body {
  margin: 0px;
}

*, :before, :after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

* {
    min-height: 0;
    min-width: 0;
}



html {
	scroll-behavior: smooth;
	font-size:var(--font-size-root);
}

body {
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  background-color: var(--color-white);
  color: var(--color-black);
  font-family: var(--font-family-primary);
  font-size: 1rem;
  font-weight: var(--font-weight-primary);
  line-height: 1.6;
  font-feature-settings: "palt";
  max-width: 100%;
  min-width: 100%;
  overflow-wrap: break-word;
  overflow-x: clip;
  position: relative;
}


button{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
  cursor: pointer;
}

a.
button{
	transition: all 0.4s;
}
a:hover,
button:hover{
  opacity: 1;
}


img {
  object-fit: cover;
  position: relative;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  transition: 0.6s all;
}


.dispPc {
	display: block !important;
}
.dispSp{
	display: none !important;
}

@media screen and (max-width: 736px) {
	.dispPc {
		display: none !important;
	}
	.dispSp {
		display: block !important;
	}
}















