@charset "utf-8";
/* reset */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}address{font-style:normal}*{margin:0;padding:0}*,:after,:before{background-repeat:no-repeat;box-sizing:border-box}img{vertical-align:bottom;-webkit-backface-visibility:hidden;}

/*--------------------------------------------------------------------------------
  base
--------------------------------------------------------------------------------*/
/* break-point */
@media (min-width: 961px) {
  :root { --space-break-point: 1200; }
  :root { --box-break-point: 1000; }
}
@media (max-width: 960px) {
  :root { --space-break-point: 960; }
  :root { --box-break-point: 800; }
}
:root {
  --base-width: 1280px;
  --space-unit-max: 20;
  --space-unit-min: 1rem;
  --side-space: clamp((var(--space-unit-min) * 1.5), (40 / var(--space-break-point) * 100vw), 40px);
  --space-3l: clamp((var(--space-unit-min) * 4), ((var(--space-unit-max) * 6) / var(--space-break-point) * 100vw), (var(--space-unit-max) * 6) * 1px);
  --space-2l: clamp((var(--space-unit-min) * 3.5), ((var(--space-unit-max) * 5) / var(--space-break-point) * 100vw), (var(--space-unit-max) * 5) * 1px);
  --space-l: clamp((var(--space-unit-min) * 3), ((var(--space-unit-max) * 4) / var(--space-break-point) * 100vw), (var(--space-unit-max) * 4) * 1px);
  --space-m: clamp((var(--space-unit-min) * 2.5), ((var(--space-unit-max) * 3) / var(--space-break-point) * 100vw), (var(--space-unit-max) * 3) * 1px);
  --space-s: clamp((var(--space-unit-min) * 2), ((var(--space-unit-max) * 2) / var(--space-break-point) * 100vw), (var(--space-unit-max) * 2) * 1px);
  --space-2s: clamp((var(--space-unit-min) * 1.5), ((var(--space-unit-max) * 1.5) / var(--space-break-point) * 100vw), (var(--space-unit-max) * 1.5) * 1px);
  --space-3s: clamp((var(--space-unit-min) * 1), (var(--space-unit-max) / var(--space-break-point) * 100vw), var(--space-unit-max) * 1px);
  --box-space-l: clamp((var(--space-unit-min) * 1.75), ((var(--space-unit-max) * 2.5) / var(--box-break-point) * 100vw), (var(--space-unit-max) * 2.5) * 1px);
  --box-space-m: clamp((var(--space-unit-min) * 1.5), ((var(--space-unit-max) * 2) / var(--box-break-point) * 100vw), (var(--space-unit-max) * 2) * 1px);
  --box-space: clamp((var(--space-unit-min) * 1.25), ((var(--space-unit-max) * 1.5) / var(--box-break-point) * 100vw), (var(--space-unit-max) * 1.5) * 1px);
  --box-space-s: clamp((var(--space-unit-min) * 1), ((var(--space-unit-max) * 1.25) / var(--box-break-point) * 100vw), (var(--space-unit-max) * 1.25) * 1px);
  --box-space-2s: clamp((var(--space-unit-min) * 0.75), ((var(--space-unit-max) * 1) / var(--box-break-point) * 100vw), (var(--space-unit-max) * 1) * 1px);
  --box-space-3s: clamp((var(--space-unit-min) * 0.75), ((var(--space-unit-max) / 1.5) / var(--box-break-point) * 100vw), (var(--space-unit-max) / 1.5) * 1px);
  --table-space: clamp((var(--space-unit-min) * 0.75), ((var(--space-unit-max) / 1) / var(--box-break-point) * 100vw), (var(--space-unit-max) / 1) * 1px);
  --bg-color: #FAF2E6;
  --black: #161412;
  --green: #42B4A2;
  --gold: #C39B5F;
  --yellow: #EBB950;
  --red: #D7414B;
  --pink: #F5737D;
  --bpink: #FC868A;
  --bpink2: #FFA5A5;
  --gray: #969696;
  --bg-color-rgba: 250,242,230;
  --black-rgba: 22,20,18;
  --gold-rgba: 195,155,95;
  --bpink-rgba: 252,134,138;
  --bpink2-rgba: 255,165,165;
  --box-shadow: 0px 0px 18px 4px rgba(0,0,0,0.04);
  --cubic-bezier: cubic-bezier(.23,1,.32,1);
  --hover-trans: color 0.15s ease-in-out, opacity 0.15s ease-in-out, background 0.15s ease-in-out, border 0.1s ease-in-out, fill 0.15s ease-in-out, filter 0.15s ease-in-out, transform 0.15s ease-in-out;
  --ff-min: 'Kaisei HarunoUmi', serif;
  --ff-en: 'Lora', serif;
  --lineh-l : 2;
  --lineh-s : 1.6;
  --lineh-2s : 1.4;
  
  /* fancybox thumbnail */
  --fancybox-zIndex: 9999;
}

/* font size */
@media (min-width: 961px) {
  :root {
    --fs-break-point: 1000;
    --fs-break-point-max: 1200;
    --fs-break-point-min: 960;
    --fs-min: 15;
    --fs-max: 17;
  }
}
@media (max-width: 960px) {
  :root {
    --fs-break-point: 300;
    --fs-break-point-max: 640;
    --fs-break-point-min: 300;
    --fs-min: 13;
    --fs-max: 16;
  }
}
:root {
  --fs-ratio: calc((var(--fs-max) - var(--fs-min)) / (var(--fs-break-point-max) - var(--fs-break-point-min)));
  --fs-5l: clamp(2.3em, 2.7em + (2.2vw - 1em), 2.7em);
  --fs-4l: clamp(1.9em, 2.3em + (2.2vw - 1em), 2.3em);
  --fs-3l: clamp(1.6em, 1.9em + (2.2vw - 1em), 1.9em);
  --fs-2l: clamp(1.3em, 1.6em + (2.2vw - 1em), 1.6em);
  --fs-l: clamp(1.2em, 1.3em + (2.2vw - 1em), 1.3em);
  --fs-m: clamp(1.1em, 1.15em + (2.2vw - 1em), 1.15em);
  --fs-n: 1em;
  --fs-s: 0.9em;
  --fs-2s: 0.8em;
  --fs-3s: 0.7em;
}
html { font-size: clamp((var(--fs-min) * 1px), (100vw - calc(var(--fs-break-point) * 1px)) * var(--fs-ratio) + (var(--fs-min) * 1px), (var(--fs-max) * 1px)); }

html,
body {
  height: 100%;
}
body {
  font-family:
  'Roboto',
  'Helvetica Neue',
  Arial,
  'Hiragino Kaku Gothic ProN',
  'Hiragino Sans',
  'BIZ UDPGothic',
  Meiryo,
  sans-serif;
  font-weight: 400;
  color: var(--black);
  min-width: 300px;
  word-wrap: break-word;
  line-height: 1.8;
  background-color: var(--bg-color);
}
[data-ruby] {
  position: relative;
}
[data-ruby]:before {
  content: attr(data-ruby);
  position: absolute;
  top: -1.5em;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  margin: auto;
  font-size: var(--fs-2s);
}
rt { display: none; }
.js_rps-tbl,
.js_rps-block { overflow: hidden; }
.js_link-block { cursor: pointer; }
.js_iframe iframe { pointer-events: none; cursor: pointer; }

.fancybox-slide--html { padding: var(--side-space) !important; }
.fancybox-container * { transition: none; }
.fancybox__caption { text-align: center; }

.u-clear:after { content: ""; display: block; height: 0; clear: both; }
.u-no-break { display: inline-block; }
.u-keep-break { word-break: keep-all; overflow-wrap: anywhere; }

.u-ff-min { font-family: var(--ff-min); }
.u-ff-en { font-family: var(--ff-en); }
.u-fs-5l { font-size: var(--fs-5l); }
.u-fs-4l { font-size: var(--fs-4l); }
.u-fs-3l { font-size: var(--fs-3l); }
.u-fs-2l { font-size: var(--fs-2l); }
.u-fs-l { font-size: var(--fs-l); }
.u-fs-m { font-size: var(--fs-m); }
.u-fs-n { font-size: var(--fs-n); }
.u-fs-s { font-size: var(--fs-s); }
.u-fs-2s { font-size: var(--fs-2s); }
.u-fs-3s { font-size: var(--fs-3s); }
.u-fw-b { font-weight: bold; }
.u-fw-n { font-weight: normal; }

/* img
----------------------------------------*/
img {
  max-width: 100%;
  height: auto;
}
.u-svg-icon {
  fill: currentColor;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 0.15rem;
}

/* link
----------------------------------------*/
a { outline: none; }
a,
a:visited,
a:hover {
  color: inherit;
}
.u-link-none { pointer-events: none; text-decoration: none; }
@media (hover: hover) {
  a {
    transition: var(--hover-trans);
  }
  a:hover {
    color: var(--red);
  }
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
    color: inherit;
    text-decoration: none;
  }
  a.u-alpha-img img,
  .js_linkblock .u-alpha-img img,
  .js_linkblock img.u-alpha-img {
    transition: opacity 0.2s ease-in-out;
  }
  a .u-svg-icon {
    transition: var(--hover-trans);
  }
  a.u-alpha:hover,
  a.u-alpha-img:hover img,
  .js_linkblock:hover .u-alpha-img img,
  .js_linkblock:hover img.u-alpha-img {
    opacity: 0.6;
  }
}

/* margin
----------------------------------------*/
.u-mgt-3l { margin-top: var(--space-3l); }
.u-mgt-2l { margin-top: var(--space-2l); }
.u-mgt-l { margin-top: var(--space-l); }
.u-mgt-m { margin-top: var(--space-m); }
.u-mgt-s { margin-top: var(--space-s); }
.u-mgt-2s { margin-top: var(--space-2s); }
.u-mgt-3s { margin-top: var(--space-3s); }
.u-mgb-3l { margin-bottom: var(--space-3l); }
.u-mgb-2l { margin-bottom: var(--space-2l); }
.u-mgb-l { margin-bottom: var(--space-l); }
.u-mgb-m { margin-bottom: var(--space-m); }
.u-mgb-s { margin-bottom: var(--space-s); }
.u-mgb-2s { margin-bottom: var(--space-2s); }
.u-mgb-3s { margin-bottom: var(--space-3s); }

.u-mgt-r0h { margin-top: 0.5rem; }
.u-mgt-r1 { margin-top: 1rem; }
.u-mgt-r1h { margin-top: 1.5rem; }
.u-mgt-r2 { margin-top: 2rem; }
.u-mgt-r2h { margin-top: 2.5rem; }
.u-mgt-r3 { margin-top: 3rem; }
.u-mgb-r0h { margin-bottom: 0.5rem; }
.u-mgb-r1 { margin-bottom: 1rem; }
.u-mgb-r1h { margin-bottom: 1.5rem; }
.u-mgb-r2 { margin-bottom: 2rem; }
.u-mgb-r2h { margin-bottom: 2.5rem; }
.u-mgb-r3 { margin-bottom: 3rem; }

.u-mgtb-3l { margin-top: var(--space-3l); margin-bottom:: var(--space-3l); }
.u-mgtb-2l { margin-top: var(--space-2l); margin-bottom:: var(--space-2l); }
.u-mgtb-l { margin-top: var(--space-l); margin-bottom:: var(--space-l); }
.u-mgtb-m { margin-top: var(--space-m); margin-bottom:: var(--space-m); }
.u-mgtb-s { margin-top: var(--space-m); margin-bottom:: var(--space-s); }

/* padding
----------------------------------------*/
.u-pdt-3l { padding-top: var(--space-3l); }
.u-pdt-2l { padding-top: var(--space-2l); }
.u-pdt-l { padding-top: var(--space-l); }
.u-pdt-m { padding-top: var(--space-m); }
.u-pdt-s { padding-top: var(--space-s); }
.u-pdt-2s { padding-top: var(--space-2s); }
.u-pdt-3s { padding-top: var(--space-3s); }
.u-pdb-3l { padding-bottom: var(--space-3l); }
.u-pdb-2l { padding-bottom: var(--space-2l); }
.u-pdb-l { padding-bottom: var(--space-l); }
.u-pdb-m { padding-bottom: var(--space-m); }
.u-pdb-s { padding-bottom: var(--space-s); }
.u-pdb-2s { padding-bottom: var(--space-2s); }
.u-pdb-3s { padding-bottom: var(--space-3s); }

.u-pdt-r0h { padding-top: 0.5rem; }
.u-pdt-r1 { padding-top: 1rem; }
.u-pdt-r1h { padding-top: 1.5rem; }
.u-pdt-r2 { padding-top: 2rem; }
.u-pdt-r2h { padding-top: 2.5rem; }
.u-pdt-r3 { padding-top: 3rem; }
.u-pdb-r0h { padding-bottom: 0.5rem; }
.u-pdb-r1 { padding-bottom: 1rem; }
.u-pdb-r1h { padding-bottom: 1.5rem; }
.u-pdb-r2 { padding-bottom: 2rem; }
.u-pdb-r2h { padding-bottom: 2.5rem; }
.u-pdb-r3 { padding-bottom: 3rem; }

.u-pdtb-3l { padding-top: var(--space-3l); padding-bottom:: var(--space-3l); }
.u-pdtb-2l { padding-top: var(--space-2l); padding-bottom:: var(--space-2l); }
.u-pdtb-l { padding-top: var(--space-l); padding-bottom:: var(--space-l); }
.u-pdtb-m { padding-top: var(--space-m); padding-bottom:: var(--space-m); }
.u-pdtb-s { padding-top: var(--space-m); padding-bottom:: var(--space-s); }

/* !important
----------------------------------------*/
.u-mgt0 { margin-top: 0 !important; }
.u-mgb0 { margin-bottom: 0 !important; }
.u-pdt0 { padding-top: 0 !important; }
.u-pdb0 { padding-bottom: 0 !important; }
.u-ru0 { border-radius: 0 !important; }

/*--------------------------------------------------------------------------------
  icon
--------------------------------------------------------------------------------*/
:root {
  --icon-arrowV-circle: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22"><path d="m10,0c5.5228481,0,10,4.4771523,10,10s-4.4771519,10-10,10S0,15.5228481,0,10,4.4771523,0,10,0Zm-1.75,13.4977493l.7519121.7522507,4.2480879-4.25-4.2480879-4.25-.7519121.7522502,3.4961767,3.4977498-3.4961767,3.4977493Z" fill="currentColor"/></svg>');
  --icon-arrowV: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 10"><polygon points="0 9.1149998 .9022942 10 6 5 .9022942 0 0 .885 4.1954122 5 0 9.1149998" fill="currentColor"/></svg>');
  --icon-arrowY1: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26 26"><polygon points="21.09375 13.765625 1.75 13.765625 1.75 12.2641602 21.1347656 12.2641602 13.8774414 5.184082 15 4.0605469 23.9394531 12.9956055 15 21.9394531 13.8769531 20.8154297 21.09375 13.765625" fill="currentColor"/></svg>');
  --icon-file: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 20"><path d="m2.3076999,19.5c-.5051298,0-.9326999-.1749992-1.2826999-.5249996-.35-.3500004-.525-.7776012-.525-1.2826996V2.3076999c0-.5051298.175-.9326999.525-1.2826999.35-.35.77757-.525,1.2826999-.525h7.9423001l5.25,5.2499499v11.9423509c0,.5050983-.1750002.9326992-.5249996,1.2826996-.3500004.3500004-.7776003.5249996-1.2828007.5249996H2.3076999Zm7.1923001-13.0000505V1.99998H2.3076999c-.0769298,0-.14746.0320501-.2115798.0961499-.0641.06411-.0961502.1346402-.0961502.21157v15.3846009c0,.0768986.0320501.1473999.0961502.2114983.0641198.0641003.13465.0962009.2115798.0962009h11.3844998c.0770006,0,.1475-.0321007.2116003-.0962009.0641003-.0640984.0962-.1345997.0962-.2114983V6.4999499s-4.5,0-4.5-.0000005Z" fill="currentColor"/></svg>');
  --icon-plus: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><polygon points="18 8 10 8 10 0 8 0 8 8 0 8 0 10 8 10 8 18 10 18 10 10 18 10 18 8" fill="currentColor"/></svg>');
}
