@charset "UTF-8";

/*
 * "Morisawa BIZ UDGothic" is licensed under the SIL Open Font License, Version 1.1.
 * https://github.com/googlefonts/morisawa-biz-ud-gothic
 */
@font-face {
  font-family: "BIZUDPGCAO";
  font-weight: 400;
  font-display: swap;
  src: url(/common4/font/BIZUDPGCAO-R.woff2) format("woff2");
}
@font-face {
  font-family: "BIZUDPGCAO";
  font-weight: 700;
  font-display: swap;
  src: url(/common4/font/BIZUDPGCAO-B.woff2) format("woff2");
}

*,
*::before,
*::after {
  /* box-sizing: border-box; */
}

* {
  margin: 0;
}

html {
  font-size: 62.5%;
}

html,
body {
  height: 100%;
}

body {
  font-family: "BIZ UDPGothic", "BIZUDPGCAO", sans-serif;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #333;
  overflow-wrap: break-word;
}
.en {
  font-family: Arial, sans-serif !important;
}

img,
picture,
svg {
  max-width: 100%;
  height: auto;
}

input,
button,
textarea,
select {
  font: inherit;
  accent-color: #004697;
}
input:not([type="checkbox"]):not([type="radio"]):not([type="image"]):not([type="file"]),
select,
textarea {
  padding: .4em .8em;
  border: 1px solid #9D9D9D;
  border-radius: 4px;
}
select {
  padding: 0.74em .4em 0.74em .5em;
  background-color: #fff;
}

input[type="checkbox"],
input[type="radio"] {
  margin-right: .3em;
}
input[type="checkbox"],
input[type="checkbox"] + label,
input[type="radio"],
input[type="radio"] + label,
input[type="submit"],
button,
select {
  cursor: pointer;
}
input[type="image"],
fieldset {
  padding: 0;
  border: none;
}

a {
  text-decoration: underline;
  text-underline-offset: 2px;
}
a:link {
  color: #004697;
}
a:visited {
  color: #bc007d;
}
a:hover,
a:focus {
  color: #003470;
  text-decoration: none;
}
a:active {
  color: #2d5e97;
}


a,
button,
input,
select,
textarea {
  outline: 0 solid transparent;
  transition: .2s;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline: 4px solid #FF6110;
  outline-offset: 4px;
}


p {
  font-size: 1.8rem;
  letter-spacing: 0.18em;
}
.en p {
  letter-spacing: .04em;
}

ul,
ol {
  padding: 0;
}

address {
  font-style: normal;
}

em {
  font-style: normal;
  font-weight: bold;
}

sup {
  vertical-align: .5em;
}


/*
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
*/
