@charset "UTF-8";

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 100%;
  overflow: auto;
}


body {
  font-family: 
    "Noto Sans JP", 
    "Yu Gothic",
    "Yu Gothic UI",
    "游ゴシック体",
    "Hiragino Kaku Gothic ProN",
    "Meiryo",
    sans-serif;
  font-feature-settings: "palt";
  font-size: 14px;
  width: 100%;
  background: white;
  margin: 0 auto;
  padding: 0;
  color: #1d2129;
  overflow: hidden;
  line-height: 1.8;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {

  /* Chromeにだけ「Original Yu Gothic」を優先適用 */
  body {
    font-family: 
    "Noto Sans JP", 
    "Yu Gothic",
    "Yu Gothic UI",
    "游ゴシック体",
    "Hiragino Kaku Gothic ProN",
    "Meiryo",
    sans-serif;
    font-feature-settings: "palt";
  }
}


@media only screen and (min-width: 641px) {
  body {
    min-width: 1000px;
  }
}

@media only screen and (max-width: 640px) {
  body {
    min-width: auto;
    font-size: 12px;
  }

  .fs9sp {
    font-size: 10px !important;
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -o-transform: scale(0.9);
    transform: scale(0.9);
  }

  .fs8sp {
    display: block;
    font-size: 10px !important;
    -webkit-transform: scale(0.8);
    -moz-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -o-transform: scale(0.8);
    transform: scale(0.8);
  }

  .fs7sp {
    font-size: 10px !important;
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    -o-transform: scale(0.7);
    transform: scale(0.7);
  }

  .fs6sp {
    font-size: 10px !important;
    -webkit-transform: scale(0.6);
    -moz-transform: scale(0.6);
    -ms-transform: scale(0.6);
    -o-transform: scale(0.6);
    transform: scale(0.6);
  }
}

ul,
li,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

dl {
  margin: 0;
}

dl dd {
  margin: 0;
}

p {
  margin: 0;
  padding: 0;
  line-height: 1.8;
  letter-spacing: 1px;
  word-break: break-all;
}

a {
  text-decoration: none;
  color: #1d2129;
  -webkit-tap-highlight-color: transparent;
}

a:link {
  color: #1d2129;
  text-decoration: underline;
}

a:visited {
  color: #1d2129;
  text-decoration: none;
}

a:hover {
  color: #005DAC;
  text-decoration: none;
  border-bottom: 1px solid #005DAC;
}

img {
  max-width: 100%;
  height: auto;
}

li img,
dt img,
dd img {
  vertical-align: middle;
}

a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
  border-bottom: 0px;
}

a:not(img):hover {
  border-bottom: 0px;
}

hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

table {
  margin: 0 auto;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0px;
}

table th,
table td {
  padding: 0;
}

h1,
h2,
h3,
h4,
h5 {
  clear: both;
  margin: 0;
  padding: 0;
  letter-spacing: 1px;
}

h1,
h2,
h5 {
  font-weight: 700;
}

strong {
  color: #000000;
}

strong.orange {
  color: #ff4d00;
}


iframe {
  max-width: 100%!important;
}