﻿@charset "utf-8";

/*====================================================================================================

  Font

====================================================================================================*/

/*@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);*/

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');

@font-face {
  font-family:"Noto Sans JP";
  font-style:normal;
  font-weight:200;
  src:url("../fonts/noto_sans_cjk_jp_light.woff2") format("woff2"),
      url("../fonts/noto_sans_cjk_jp_light.woff") format("woff"),
      url("../fonts/noto_sans_cjk_jp_light.off") format("opentype");
  font-display:auto;
}

@font-face {
  font-family:"Noto Sans JP";
  font-style:normal;
  font-weight:300;
  src:url("../fonts/noto_sans_cjk_jp_regular.woff2") format("woff2"),
      url("../fonts/noto_sans_cjk_jp_regular.woff") format("woff"),
      url("../fonts/noto_sans_cjk_jp_regular.off") format("opentype");
  font-display:auto;
}

@font-face {
  font-family:"Noto Sans JP";
  font-style:normal;
  font-weight:400;
  src:url("../fonts/noto_sans_cjk_jp_bold.woff2") format("woff2"),
      url("../fonts/noto_sans_cjk_jp_bold.woff") format("woff"),
      url("../fonts/noto_sans_cjk_jp_bold.off") format("opentype");
  font-display:auto;
}

/*@font-face {
  font-family:"Noto Serif Japanese";
  font-style:normal;
  font-weight:200;
  src:url("../fonts/noto_serif_cjk_jp_light.woff2") format("woff2"),
      url("../fonts/noto_serif_cjk_jp_light.woff") format("woff"),
      url("../fonts/noto_serif_cjk_jp_light.off") format("opentype");
  font-display:auto;
}

@font-face {
  font-family:"Noto Serif Japanese";
  font-style:normal;
  font-weight:300;
  src:url("../fonts/noto_serif_cjk_jp_regular.woff2") format("woff2"),
      url("../fonts/noto_serif_cjk_jp_regular.woff") format("woff"),
      url("../fonts/noto_serif_cjk_jp_regular.off") format("opentype");
  font-display:auto;
}

@font-face {
  font-family:"Yu Mincho";
  font-style:normal;
  font-weight:300;
  src:url("../fonts/yumin.woff2") format("woff2"),
      url("../fonts/yumin.woff") format("woff"),
      url("../fonts/yumin.ttf") format("truetype");
  font-display:auto;
}*/




/*====================================================================================================

  Reset CSS

====================================================================================================*/

/*-------------------------------------------------------------------------------
  ress.css v2.0.1
-------------------------------------------------------------------------------*/

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;
}

html {
  box-sizing:border-box;
  -webkit-text-size-adjust:100%;
  word-break:break-word;
  -moz-tab-size:4;
  tab-size:4;
}

*,
::before,
::after {
  background-repeat:no-repeat;
  box-sizing:border-box;
}

::before,
::after {
  text-decoration:inherit;
  vertical-align:inherit;
}

* {
  padding:0;
  margin:0;
}

address {
  font-style:normal;
}

hr {
  overflow:visible;
  height:0;
}

details,
main {
  display:block;
}

summary {
  display:list-item;
}

small {
  font-size:80%;
}

[hidden] {
  display:none;
}

abbr[title] {
  border-bottom:none;
  text-decoration:underline;
  text-decoration:underline dotted;
}

a {
  background-color:transparent;
}

a:active,
a:hover {
  outline-width:0;
}

code,
kbd,
pre,
samp {
  font-family:monospace, monospace;
}

pre {
  font-size:1em;
}

b,
strong {
  font-weight:bolder;
}

sub,
sup {
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline;
}

sub {
  bottom:-0.25em;
}

sup {
  top:-0.5em;
}

input {
  border-radius:0;
}

[disabled] {
  cursor:default;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height:auto;
}

[type="search"] {
  -webkit-appearance:textfield;
  outline-offset:-2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance:none;
}

textarea {
  overflow:auto;
  resize:vertical;
}

button,
input,
optgroup,
select,
textarea {
  font:inherit;
}

optgroup {
  font-weight:bold;
}

button {
  overflow:visible;
}

button,
select {
  text-transform:none;
}

button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor:pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style:none;
  padding:0;
}

button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline:1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance:button;
}

button,
input,
select,
textarea {
  background-color:transparent;
  border-style:none;
}

select {
  -moz-appearance:none;
  -webkit-appearance:none;
}

select::-ms-expand {
  display:none;
}

select::-ms-value {
  color:currentColor;
}

legend {
  border:0;
  color:inherit;
  display:table;
  max-width:100%;
  white-space:normal;
  max-width:100%;
}

::-webkit-file-upload-button {
  -webkit-appearance:button;
  font:inherit;
}

img {
  border-style:none;
}

progress {
  vertical-align:baseline;
}

svg:not([fill]) {
  fill:currentColor;
}

@media screen {
  [hidden~="screen"] {
  display:inherit;
  }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
  position:absolute !important;
  clip:rect(0 0 0 0) !important;
  }
}

[aria-busy="true"] {
  cursor:progress;
}

[aria-controls] {
  cursor:pointer;
}

[aria-disabled] {
  cursor:default;
}


/* TELリンク無効 */
.ua-pc a[href^="tel:"] {
  pointer-events:none;
  cursor:default;
}

.ua-pc a[href^="tel:"],
.ua-pc a[href^="tel:"]:visited,
.ua-pc a[href^="tel:"]:hover {
  text-decoration:none;
}


/*====================================================================================================

  Base

====================================================================================================*/

body {
  font-family:"Noto Sans JP","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif,Noto Serif Japanese,YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  font-weight: 300;
	color: #383838;
  text-align:left;
  min-width:320px;
  line-height:1.8;
}

@media print,screen and (min-width:641px) {
  /*body { min-width:1120px; }*/
}

.clear:after {
  content:"";
  display:block;
  height:0;
  clear:both;
}

.f-nowrap {
  display:inline-block;
}

.f-tsume {
  letter-spacing:-0.1em;
}

.f-lineSS { line-height:1.4; }
.f-lineS  { line-height:1.6; }
.f-lineL  { line-height:2; }

.ff-roundedc { font-family:"M PLUS Rounded 1c"; transform: rotate(0.05deg); }
/*.ff-yumin { font-family:"Yu Mincho"; }
.ff-serif { font-family:"Noto Serif Japanese"; }*/
.ff-sans { font-family:"Noto Sans JP"; }

.fw-200 { font-weight:200; } /* light */
.fw-300 { font-weight:300; } /* regular */
.fw-400 { font-weight:400; } /* bold */

/*--------------------------------------------------------------------------------
  font-size
--------------------------------------------------------------------------------*/

html { font-size:62.5%; }
body { font-size:18px; }

.fs-max { font-size:6.0rem; }  /* 60 */
.fs-3l  { font-size:4.8rem; }  /* 48 */
.fs-2l  { font-size:3.6rem; }  /* 36 */
.fs-l   { font-size:3.0rem; }  /* 30 */
.fs-m   { font-size:2.4rem; }  /* 24 */
.fs-sm  { font-size:2.0rem; }  /* 20 */
.fs-s   { font-size:1.6rem; }  /* 16 */
.fs-ss  { font-size:1.4rem; }  /* 14 */
.fs-min { font-size:1.2rem; }  /* 12 */

@media screen and (max-width:640px) {
  /*html { font-size:58%; }*/
  body { font-size:1.8rem; }
  .fs-max { font-size:4.8rem; }    /* 36 */
  .fs-3l  { font-size:3.6rem; }    /* 32 */
  .fs-2l  { font-size:3.2rem; }    /* 28 */
  .fs-l   { font-size:2.8rem; }    /* 24 */
  /*付け足し*/    
  /*.fs-m   { font-size:2.0rem; }  /* 24 */
  /*.fs-sm  { font-size:1.8rem; }  /* 20 */
  /*.fs-s   { font-size:1.4rem; }  /* 18 */
  /*.fs-ss  { font-size:1.2rem; }  /* 14 */
 /* .fs-min { font-size:1rem; }  /* 12 */
}

@media screen and (max-width:560px) {
  html {
    font-size:-webkit-calc(32% + 0.75vw);
    font-size:calc(32% + 0.75vw);
  }
}


/*-----------------------------------------------------------------------------------
  font-color
-----------------------------------------------------------------------------------*/

body { color:#3e3937; }

.fc-normal,
a.fc-normal:hover  { color:#3e3937; }
.fc-green,
a.fc-green:hover  { color:#19873b; }
.fc-black,
a.fc-black:hover  { color:#373737; }
.fc-red,
a.fc-red:hover    { color:#ef858c; }
.fc-orange,
a.fc-orange:hover { color:#f8a828; }
.fc-blue,
a.fc-blue:hover   { color:#32a5d7; }
.fc-yellow01,
a.fc-yellow01:hover { color:#6C5728; }
.fc-yellow02,
a.fc-yellow02:hover { color:#7c693f; }
.fc-yellow03,
a.fc-yellow03:hover { color:#a68b62; }
.fc-yellow04,
a.fc-yellow04:hover { color:#af9772; }
.fc-yellow05,
a.fc-yellow05:hover { color:#b19e74; }
.fc-yellow06,
a.fc-yellow06:hover { color:#bfac8e; }
.fc-white,
a.fc-white:hover  { color:#fff; }
.fc-gray01,
a.fc-gray01:hover  { color:#e2dbc9; }
.fc-gray02,
a.fc-gray02:hover  { color:#efebe2; }

/*----------------------------------------------------------------------
  img
----------------------------------------------------------------------*/

img {
  max-width:100%;
  height:auto;
  vertical-align:bottom;
  -webkit-backface-visibility:hidden;
  -ms-interpolation-mode:bicubic;
}

img[src$=".svg"] {
  width:100%;
  height:auto;
}

.ua-pc img.img-hv,
.ua-pc a.img-hv img {
  -webkit-transition:opacity 0.2s ease-out;
  transition:opacity 0.2s ease-out;
}
  
.ua-pc img.img-hv:hover,
.ua-pc a.img-hv:hover img {
  opacity:0.7;
}


/*----------------------------------------------------------------------
  link
----------------------------------------------------------------------*/

a { outline:none; }
a,
a:visited { color:#1d97cc; text-decoration:underline; }
a:hover { color:#45b2e1; text-decoration:none; }

.ua-pc a {
  -webkit-transition:color 0.15s ease;
  transition:color 0.15s ease;
}
