@charset "UTF-8";

/*---基本設定-----------*/
html {
  font-size: 4vw;
}

body {
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans", Meiryo,sans-serif;
  font-size: 4vw;
  font-weight: 400;
  color: #444;
  position: relative;
  background-color: #fffcf4;
  -webkit-text-size-adjust: 100%;
}

p,
dt,
dd,
li {
  line-height: 1.5;
}

html,
body {
  height: 100%;
}

body {
  background-image: url(bg01.png.1);
  background-size: 20px;
  background-attachment: fixed;
}

.wrap {
  width: 100%;
  overflow-x: hidden;
  min-height: 100%;
  position: relative;
  padding-bottom: 0;
  padding-top: 2.25em;
}

/*--SVG設定--------------------------------------------*/
.icon {
  position: static;
  width: 1em;
  height: 1em;
  opacity: 1;
  vertical-align: text-top;
}

:root {
  --whiteArrow: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23fff" d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"/></svg>')
    no-repeat center;
  --blackArrow: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23444" d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"/></svg>')
    no-repeat center;
  --whiteArrow2: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23fff" d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"/></svg>')
    no-repeat center;
  --blackArrow2: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"/></svg>')
    no-repeat center;
  --ashArrow2: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23999" d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"/></svg>')
    no-repeat center;
  --redArrow: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23b40001" d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"/></svg>')
    no-repeat center;
  --orangeArrow: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23ff5722" d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"/></svg>')
    no-repeat center;
  --ashArrow: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23999" d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"/></svg>')
    no-repeat center;
  --redCrown: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="%23ba0a0c" d="M528 448H112c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm64-320c-26.5 0-48 21.5-48 48 0 7.1 1.6 13.7 4.4 19.8L476 239.2c-15.4 9.2-35.3 4-44.2-11.6L350.3 85C361 76.2 368 63 368 48c0-26.5-21.5-48-48-48s-48 21.5-48 48c0 15 7 28.2 17.7 37l-81.5 142.6c-8.9 15.6-28.9 20.8-44.2 11.6l-72.3-43.4c2.7-6 4.4-12.7 4.4-19.8 0-26.5-21.5-48-48-48S0 149.5 0 176s21.5 48 48 48c2.6 0 5.2-.4 7.7-.8L128 416h384l72.3-192.8c2.5.4 5.1.8 7.7.8 26.5 0 48-21.5 48-48s-21.5-48-48-48z"/></svg>')
    no-repeat center;
  --search: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23fff" d="M304 192v32c0 6.6-5.4 12-12 12h-56v56c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-56h-56c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h56v-56c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v56h56c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z"/></svg>')
    no-repeat center;
  --ashSearch: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23999" d="M304 192v32c0 6.6-5.4 12-12 12h-56v56c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-56h-56c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h56v-56c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v56h56c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z"/></svg>')
    no-repeat center;
  --whiteSearch: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23fff" d="M304 192v32c0 6.6-5.4 12-12 12h-56v56c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-56h-56c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h56v-56c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v56h56c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z"/></svg>')
    no-repeat center;
  --hand: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23fff" d="M44.8 155.826h149.234c-5.841-8.248-10.57-16.558-14.153-24.918C166.248 99.098 189.778 63.986 224 64c18.616.008 32.203 10.897 40 29.092 12.122 28.286 78.648 64.329 107.534 77.323 17.857 7.956 28.453 25.479 28.464 43.845l.002.001v171.526c0 11.812-8.596 21.897-20.269 23.703-46.837 7.25-61.76 38.483-123.731 38.315-2.724-.007-13.254.195-16 .195-50.654 0-81.574-22.122-72.6-71.263-18.597-9.297-30.738-39.486-16.45-62.315-24.645-21.177-22.639-53.896-6.299-70.944H44.8c-24.15 0-44.8-20.201-44.8-43.826 0-23.283 21.35-43.826 44.8-43.826zM440 176h48c13.255 0 24 10.745 24 24v192c0 13.255-10.745 24-24 24h-48c-13.255 0-24-10.745-24-24V200c0-13.255 10.745-24 24-24zm24 212c11.046 0 20-8.954 20-20s-8.954-20-20-20-20 8.954-20 20 8.954 20 20 20z"/></svg>')
    no-repeat center;
  --search: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23000" d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg>')
    no-repeat center;
  --link: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23fff" d="M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-88 16H248.029c-21.313 0-32.08 25.861-16.971 40.971l31.984 31.987L67.515 364.485c-4.686 4.686-4.686 12.284 0 16.971l31.029 31.029c4.687 4.686 12.285 4.686 16.971 0l195.526-195.526 31.988 31.991C358.058 263.977 384 253.425 384 231.979V120c0-13.255-10.745-24-24-24z"/></svg>')
    no-repeat center;
  --blueLink: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%230072af" d="M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-88 16H248.029c-21.313 0-32.08 25.861-16.971 40.971l31.984 31.987L67.515 364.485c-4.686 4.686-4.686 12.284 0 16.971l31.029 31.029c4.687 4.686 12.285 4.686 16.971 0l195.526-195.526 31.988 31.991C358.058 263.977 384 253.425 384 231.979V120c0-13.255-10.745-24-24-24z"/></svg>')
    no-repeat center;

  --redCircle_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23F44336" d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"/></svg>')
    no-repeat center;
  --whiteCircle_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23fff" d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"/></svg>')
    no-repeat center;
  --blackCircle_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23444" d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"/></svg>')
    no-repeat center;
  --orangeCircle_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23ff5722" d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"/></svg>')
    no-repeat center;
  --skyblueCircle_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%2336bdef" d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"/></svg>')
    no-repeat center;
  --ashCircle_down: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23999" d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"/></svg>')
    no-repeat center;
  --blackComment: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7S4.8 480 8 480c66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32z"/></svg>')
    no-repeat center;
  --blackCaret: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23444" d="M288.662 352H31.338c-17.818 0-26.741-21.543-14.142-34.142l128.662-128.662c7.81-7.81 20.474-7.81 28.284 0l128.662 128.662c12.6 12.599 3.676 34.142-14.142 34.142z"/></svg>')
    no-repeat center;
  --blackPen: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23444" d="M136.6 138.79a64.003 64.003 0 0 0-43.31 41.35L0 460l14.69 14.69L164.8 324.58c-2.99-6.26-4.8-13.18-4.8-20.58 0-26.51 21.49-48 48-48s48 21.49 48 48-21.49 48-48 48c-7.4 0-14.32-1.81-20.58-4.8L37.31 497.31 52 512l279.86-93.29a64.003 64.003 0 0 0 41.35-43.31L416 224 288 96l-151.4 42.79zm361.34-64.62l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.75 18.75-49.15 0-67.91z"/></svg>')
    no-repeat center;
  --blackHand_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23444" d="M512 199.652c0 23.625-20.65 43.826-44.8 43.826h-99.851c16.34 17.048 18.346 49.766-6.299 70.944 14.288 22.829 2.147 53.017-16.45 62.315C353.574 425.878 322.654 448 272 448c-2.746 0-13.276-.203-16-.195-61.971.168-76.894-31.065-123.731-38.315C120.596 407.683 112 397.599 112 385.786V214.261l.002-.001c.011-18.366 10.607-35.889 28.464-43.845 28.886-12.994 95.413-49.038 107.534-77.323 7.797-18.194 21.384-29.084 40-29.092 34.222-.014 57.752 35.098 44.119 66.908-3.583 8.359-8.312 16.67-14.153 24.918H467.2c23.45 0 44.8 20.543 44.8 43.826zM96 200v192c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V200c0-13.255 10.745-24 24-24h48c13.255 0 24 10.745 24 24zM68 368c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20z"/></svg>')
    no-repeat center;
  --skull: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23999" d="M256 0C114.6 0 0 100.3 0 224c0 70.1 36.9 132.6 94.5 173.7 9.6 6.9 15.2 18.1 13.5 29.9l-9.4 66.2c-1.4 9.6 6 18.2 15.7 18.2H192v-56c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v56h64v-56c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v56h77.7c9.7 0 17.1-8.6 15.7-18.2l-9.4-66.2c-1.7-11.7 3.8-23 13.5-29.9C475.1 356.6 512 294.1 512 224 512 100.3 397.4 0 256 0zm-96 320c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm192 0c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z"/></svg>')
    no-repeat center;
  --ashQuote_left: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23999" d="M464 256h-80v-64c0-35.3 28.7-64 64-64h8c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24h-8c-88.4 0-160 71.6-160 160v240c0 26.5 21.5 48 48 48h128c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zm-288 0H96v-64c0-35.3 28.7-64 64-64h8c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24h-8C71.6 32 0 103.6 0 192v240c0 26.5 21.5 48 48 48h128c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48z"/></svg>')
    no-repeat center;
  --thumbs_down: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23FF9800" d="M0 56v240c0 13.255 10.745 24 24 24h80c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56zm40 200c0-13.255 10.745-24 24-24s24 10.745 24 24-10.745 24-24 24-24-10.745-24-24zm272 256c-20.183 0-29.485-39.293-33.931-57.795-5.206-21.666-10.589-44.07-25.393-58.902-32.469-32.524-49.503-73.967-89.117-113.111a11.98 11.98 0 0 1-3.558-8.521V59.901c0-6.541 5.243-11.878 11.783-11.998 15.831-.29 36.694-9.079 52.651-16.178C256.189 17.598 295.709.017 343.995 0h2.844c42.777 0 93.363.413 113.774 29.737 8.392 12.057 10.446 27.034 6.148 44.632 16.312 17.053 25.063 48.863 16.382 74.757 17.544 23.432 19.143 56.132 9.308 79.469l.11.11c11.893 11.949 19.523 31.259 19.439 49.197-.156 30.352-26.157 58.098-59.553 58.098H350.723C358.03 364.34 384 388.132 384 430.548 384 504 336 512 312 512z"/></svg>')
    no-repeat center;
  --ashQuote_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23999" d="M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z"/></svg>')
    no-repeat center;
  --blackArrowCircle_right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z"/></svg>')
    no-repeat center;
  --redCheck: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23F44336" d="M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"/></svg>')
    no-repeat center;
}

/* LPの的中実績表示 */
.site .latest {
  padding: 0 0 0.1em 0;
}

.site .latest h3 {
  margin: 0.5em 0.5em 0 0.5em;
}

.site .latest ul {
  background: white;
  margin: 0 0.5em 0.5em 0.5em;
  padding: 0.25em 0 0.25em 0;
}

.site .latest ul li {
  padding: 0.25em 1em 0 1em;
}

.site .latest li div {
  display: flex;
  margin: 0.25em;
}

.site .latest li span {
  border-left: 0.25em solid #008bd5;
  padding: 0 0 0 0.25em;
}

.site .latest li div dl {
  margin: 0 0.5em 0 0;
  position: relative;
}

.site .latest li div dl:nth-child(2)::before {
  content: "→";
  position: absolute;
  top: -0.1em;
}
.site .latest li div dl:nth-child(2) dd {
  position: absolute;
  left: 1.5em;
}

.site .latest li div dl:nth-child(2) dt {
  margin: 0 0 0 1.45em;
}

.site .latest li div p {
  margin: 0 0 0 0.25em;
}

/* 文字の真ん中に線 */
.sen {
  text-decoration: line-through;
}

/* SG開催中の記事リンク */
.sg_link {
  width: 100%;
  margin: 0;
  z-index: 100;
  display: none;
  position: fixed;
  top: 2.4em;
  left: 0;
}
.sg_link a {
  padding: 0.6em 0.5em;
  background-color: #001440;
  color: white;
  display: block;
  font-size: 90%;
}
.sg_link a span {
  color: #fff;
  border: solid 1px;
  padding: 0.1em 0.2em;
  border-radius: 0.3em;
  margin-right: 0.5em;
  background: #ff9000;
  animation: blink 1s ease-in-out infinite alternate;
}

.sg_link a i {
  background: var(--whiteArrow);
  background-size: contain;
  display: inline-block;
  transform: rotate(90deg);
  width: 1em;
  height: 1em;
  vertical-align: top;
  margin-top: 0.2em;
  margin-left: 0.5em;
}

/*SGリンクここまで-----------------------------------------*/

.ranking_osusume_btnArea > .btn svg {
  position: static;
}

.abl {
  position: absolute;
  left: 0;
}

.abr {
  position: absolute;
  right: 0;
}

.voice_content::before {
  content: "" !important;
}

.voice_content::after {
  content: "" !important;
}

/*--PARTS-------------*/

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="number"],
textarea {
  width: 100%;
  display: block;
  padding: 0.75em;
  border: 1px #ccc solid;
  border-radius: 0.25em;
  font-size: 1em;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
input[type="password"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder {
  opacity: 0.5;
}

.select_wrap {
  overflow: hidden;
  border: 1px #ccc solid;
  display: block;
  border-radius: 0.25em;
  background-color: #fff;
  position: relative;
  z-index: 0;
}

.select_wrap::after {
  content: "";
  background: var(--ashCircle_down);
  background-size: contain;
  width: 1em;
  height: 1em;
  transform: rotate(90deg);
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 0.5em;
  color: #ccc;
  margin-top: -0.5em;
  opacity: 0.7;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  width: 100%;
  border-radius: 0.25em;
  padding: 0.75em;
  font-size: 1em;
  position: relative;
  z-index: 3;
  border: none;
}

.form_checkbox li {
  display: inline-block;
}

.form_checkbox input {
  display: none;
}

.form_checkbox label {
  display: inline-block;
  text-align: center;
  background-color: #ddd;
  padding: 0.5em 1em;
  border-radius: 0.2em;
  transition-duration: 0.5s;
  -moz-transition-duration: 0.5s;
  -webkit-transition-duration: 0.5s;
  -o-transition-duration: 0.5s;
  -ms-transition-duration: 0.5s;
}

.form_checkbox input:checked + label {
  background-color: #18a1dc;
  color: #fff;
}

.form_inline > * {
  display: inline-block;
  vertical-align: top;
}
.form_row {
  margin-bottom: 1em;
}

.form_row > label {
  margin-bottom: 0.5em;
  font-weight: bold;
}

.form_row > div > label {
  padding: 0 0.25em;
  line-height: 2.8;
}

ul.notice li {
  position: relative;
  line-height: 1.6;
  padding-left: 1.5em;
  margin: 1em 0;
}

ul.notice li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}

ul.check {
  padding: 3em 1em 1em;
  background-color: #ffecb3;
  position: relative;
  border: 2px #ffc107 solid;
	margin-bottom: 1em;
}

ul.check::before {
  content: "CHECK POINT";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  background-color: #ffc107;
  color: #fff;
  padding: 0.5em 0;
}

ul.check li {
  padding-left: 1.5em;
  position: relative;
  margin: 0.5rem 0;
}

ul.check li::before {
  content: "";
  background: var(--redCheck);
  background-size: contain;
  width: 1em;
  height: 1em;
  display: block;

  position: absolute;
  top: 3px;
  left: 0;
  color: #ff9800;
}

ul.check2 {
  padding: 3em 1em 1em;
  background-color: #ffecb3;
  position: relative;
  border: 2px #ffc107 solid;
  margin: 0 0 1rem 0;
}

ul.check2::before {
  content: "CHECK POINT";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  background-color: #ffc107;
  color: #fff;
  padding: 0.5em 0;
}

ul.check2 li {
  padding-left: 1.5em;
  position: relative;
  margin: 0.5rem 0;
}

ul.check2 li::before {
  content: "";
  background: var(--redCheck);
  background-size: contain;
  width: 1em;
  height: 1em;
  display: block;

  position: absolute;
  top: 3px;
  left: 0;
  color: #ff9800;
}

ul.check3 {
  padding: 3em 1em 0.35em;
  background-color: #f7e6ff;
  position: relative;
  border: 2px #c74dff solid;
  margin: 0 0 1rem 0;
}

ul.check3::before {
  position: absolute;
  content: "要注意ポイント";
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  background-color: #c74dff;
  color: #fff;
  padding: 0.5em 0;
}

ul.check3 li {
  padding-left: 1.5em;
  position: relative;
  margin: 0.5rem 0;
  padding: 0.5em 0 0.5em 1.5em;
}

ul.check3 li::before {
  position: absolute;
  content: "";
  background: var(--skull);
  background-size: contain;
  width: 1em;
  height: 1em;
  display: block;

  top: 0.55rem;
  left: 0;
}

.box {
  background-color: rgba(230, 230, 230, 0.5);
  padding: 1em;
}

table {
  border-collapse: collapse;
  width: 100%;
}

table th,
table td {
  padding: 0.25em 0.5em;
  border: 1px #ccc solid;
  background-color: #fff;
  line-height: 1.6;
}

table th {
  background-color: #eee;
}
table.default	{
	width:auto;
}

table.default tbody th,
table.default tbody tr + td {
  background-color: #eee;
  font-weight: normal;
  padding: 0.5em;
}

table.default td {
  padding: 0.5em;
}

table.default thead th,
table.default thead td {
  padding: 0.25em;
  background-color: #206cdf;
  color: #fff;
  font-size: 90%;
  font-weight: bold;
  text-align: center;
}

table.default .total th,
table.default .total td {
  border-top: 4px #ccc double;
}

table.clear th,
table.clear td {
  border: none;
}

table.clear {
  width: auto;
  margin-left: auto;
  margin-right: auto;
  border-collapse: separate;
  border-spacing: 0px 0.5em;
}

table.auto {
  width: auto;
}

em {
  background: linear-gradient(transparent 50%, #ffc107 50%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#FFC107',GradientType=0 );
}

strong {
  color: #dd0f00;
}

.quote strong {
  color: #d91406;
}

a {
  color: #dd0f00;
  text-decoration: none;
}

.innerLink {
  color: #0072af;
  text-decoration: underline;
  position: relative;
  margin: 0 0 0 1em;
}
.innerLink::before {
  content: "";
  background: var(--blueLink);
  position: absolute;
  top: 0;
  left: -1em;
  background-size: contain;
  display: block;
  width: 1em;
  height: 1em;
  line-height: 1;
}

.lsp {
  letter-spacing: 0.1em;
  padding-left: 0.1em;
}

/* list */
ul.mark li {
  position: relative;
  padding-left: 1.5em;
}

ul.mark li::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  width: 0.5em;
  height: 0.5em;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 100%;
}

ul.mark-flex {
	display: flex;
	flex-wrap: wrap;
	gap: 0 1.25em;
}

ul.mark-flex li {
	padding-left:1em;
}

ul.mark-flex li::before {
	left:0;
}

ul.number {
  position: relative;
  padding-left: 1.5em;
}

ul.number span {
  position: absolute;
  top: auto;
  left: 0;
}

ul.mark li,
ul.number li {
  margin: 0.5em 0;
}

.btn {
  border: none;
  text-align: center;
  text-decoration: none;
  display: block;
  width: 100%;
  position: relative;
  padding: 1em 0;
  border-radius: 0.2em;
  background: rgb(90, 206, 84);
  background: -moz-linear-gradient(
    top,
    rgba(90, 206, 84, 1) 0%,
    rgba(52, 226, 58, 1) 49%,
    rgba(17, 173, 0, 1) 53%,
    rgba(49, 204, 46, 1) 100%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(90, 206, 84, 1) 0%,
    rgba(52, 226, 58, 1) 49%,
    rgba(17, 173, 0, 1) 53%,
    rgba(49, 204, 46, 1) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(90, 206, 84, 1) 0%,
    rgba(52, 226, 58, 1) 49%,
    rgba(17, 173, 0, 1) 53%,
    rgba(49, 204, 46, 1) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5ace54', endColorstr='#31cc2e',GradientType=0 );
  font-size: 1em;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  box-shadow: 0 1px 3px #333;
  border: none;
}

.btn-inline {
  display: inline-block;
  width: auto;
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.btn-org {
  background: rgb(255, 183, 107);
  background: -moz-linear-gradient(
    top,
    rgba(255, 183, 107, 1) 0%,
    rgba(255, 167, 61, 1) 50%,
    rgba(255, 124, 0, 1) 51%,
    rgba(255, 127, 4, 1) 100%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(255, 183, 107, 1) 0%,
    rgba(255, 167, 61, 1) 50%,
    rgba(255, 124, 0, 1) 51%,
    rgba(255, 127, 4, 1) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(255, 183, 107, 1) 0%,
    rgba(255, 167, 61, 1) 50%,
    rgba(255, 124, 0, 1) 51%,
    rgba(255, 127, 4, 1) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb76b', endColorstr='#ff7f04',GradientType=0 );
}

.btn-blu {
  background: rgb(109, 179, 242);
  background: -moz-linear-gradient(
    top,
    rgba(109, 179, 242, 1) 0%,
    rgba(84, 163, 238, 1) 50%,
    rgba(54, 144, 240, 1) 51%,
    rgba(30, 105, 222, 1) 100%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(109, 179, 242, 1) 0%,
    rgba(84, 163, 238, 1) 50%,
    rgba(54, 144, 240, 1) 51%,
    rgba(30, 105, 222, 1) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(109, 179, 242, 1) 0%,
    rgba(84, 163, 238, 1) 50%,
    rgba(54, 144, 240, 1) 51%,
    rgba(30, 105, 222, 1) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6db3f2', endColorstr='#1e69de',GradientType=0 );
}

.btn-red {
  background: rgb(248, 80, 50);
  background: -moz-linear-gradient(
    top,
    rgba(248, 80, 50, 1) 0%,
    rgba(241, 111, 92, 1) 50%,
    rgba(246, 41, 12, 1) 51%,
    rgba(240, 47, 23, 1) 71%,
    rgba(231, 56, 39, 1) 100%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(248, 80, 50, 1) 0%,
    rgba(241, 111, 92, 1) 50%,
    rgba(246, 41, 12, 1) 51%,
    rgba(240, 47, 23, 1) 71%,
    rgba(231, 56, 39, 1) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(248, 80, 50, 1) 0%,
    rgba(241, 111, 92, 1) 50%,
    rgba(246, 41, 12, 1) 51%,
    rgba(240, 47, 23, 1) 71%,
    rgba(231, 56, 39, 1) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f85032', endColorstr='#e73827',GradientType=0 );
}

.btn-ic-right::after {
  content: "";
  position: absolute;
  top: 16px;
  right: 1em;
  background: var(--whiteArrow2);
  background-size: contain;
  display: block;
  width: 1em;
  height: 1em;
  line-height: 1;
}

.btn-ad::before {
	content: "AD";
	position: absolute;
	right: 0;
	top: 0;
	font-weight: normal;
	font-size: .8rem;
	line-height: 1;
	background-color: #00000088;
	padding: 0.2em 0.2em 0.2em 0.4em;
	mix-blend-mode: multiply;
	opacity: 1;
  border-top-right-radius: .2rem;
}

.jump {
  -webkit-animation: 0.8s jump ease-out infinite;
  animation: 0.8s jump ease-out infinite;
}

@-webkit-keyframes jump {
  20% {
    -webkit-transform: translateY(-10px);
  }
}
@keyframes jump {
  20% {
    transform: translateY(-10px);
  }
}

ul.listlink {
  overflow: hidden;
  margin: -1em;
}

ul.listlink li {
  border-bottom: 1px #ccc solid;
}

ul.listlink li:last-of-type {
  border: none;
}

ul.listlink li a {
  display: block;
  padding: 1em;
  text-decoration: none;
  position: relative;
}

ul.listlink li a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: auto;
  right: 1em;
  opacity: 0.5;
}

dl.check dt {
  position: relative;
  font-weight: bold;
}

dl.check dd {
  margin-bottom: 1em;
}

.wrap {
  position: relative;
  transition-duration: 0.5s;
  -moz-transition-duration: 0.5s;
  -webkit-transition-duration: 0.5s;
  -o-transition-duration: 0.5s;
  -ms-transition-duration: 0.5s;
}

/*.wrap.slide {
  right: 16em;
}*/

nav.default li {
  border-bottom: 1px #ccc dotted;
}

nav.default a {
  text-decoration: none;
  display: block;
  padding: 0.75em 0;
  position: relative;
}

nav.default a i {
  color: #18a1dc;
  font-size: 1.25em;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.25em;
}

nav.default a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: 50%;
  margin-top: -0.5em;
  line-height: 1;
  right: 0.5em;
  color: #ccc;
}

i[class^="star"] {
	display: block;
	width: 1em;
	height: 1em;
	background: no-repeat url(star.svg.1) center top/auto 100%;
}

i.star-half {
	background-image: url(star_half.svg.1)
}

i.star-null {
	background-image: url(star_null.svg.1)
}


.pageMes {
  width: 80%;
  text-align: center;
  top: 30%;
  left: 10%;
  background-color: rgba(0, 104, 186, 0.5);
  position: absolute;
  z-index: 100;
  height: 20%;
  color: #fff;
  display: table;
  font-size: 1.2em;
}

.pageMes > * {
  display: table-cell;
  vertical-align: middle;
}

a.simple {
  border-bottom: 1px #f00 solid;
}

.linkArea {
  margin: 1em 0;
}

.linkArea a {
	text-decoration: none;
	font-weight: bold;
	color: #ff5722;
	background: linear-gradient(to bottom, transparent 95%, #ff5722 95%);
}

.linkArea a::before {
  content: "";
  background: var(--orangeCircle_right);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: text-top;
  margin: 0 6px 0 0;
}

.linkArea_skyblue a::before {
  content: "";
  background: var(--skyblueCircle_right) !important;
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: text-top;
  margin: 0 6px 0 0;
}

.scroll {
	overflow-x: scroll;
	margin-bottom: 1.5em;
	position: relative;
}

.scroll::before {
	content: "↓ スクロールしてご確認ください。 ↓";
	font-size: 90%;
	color: #008bd5;
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	display: block;
	text-align: center;
	margin-bottom: .2em;
}

.scroll table {
  table-layout: auto;
  width: auto;
	margin-left: auto;
	margin-right: auto;
  font-size: 90%;
	white-space: nowrap;
}

.more {
  text-align: right;
  margin: 0.5em 0 0 0;
}

.more span {
  display: inline-block;
  font-size: 80%;
  background-color: #206cdf;
  color: #fff;
  padding: 0.5em 1em;
  border-radius: 2em;
}

.newmark::after {
  content: "NEW";
  display: inline-block;
  font-size: 80%;
  line-height: 2;
  background-color: #f44336;
  color: #fff;
  padding: 0 0.5em;
  vertical-align: middle;
}

.anchor {
  display: block;
  padding-top: 5em;
  margin-top: -5em;
}

.admark {

}

.admark::after {
  content: "AD";
	font-size: 80%;
	line-height: 1;
	padding: 0.1em 0.25em;
	border: 1px #008bd5 solid;
	color: #008bd5;
	margin-left: 0.2em;
	display: inline-block;
	vertical-align: text-bottom;
}

.youtube {
	width: 100%;
	aspect-ratio: 560/315;
	margin: 1rem auto;
}
.youtube iframe {
	width:100%;
	height: 100%;
}

/*--SEARCHBOX------------------------------------------*/

.search {
  display: none;
  background-color: #008bd5;
  color: #fff;
  position: fixed;
  top: 2em;
  left: 0;
  width: 100%;
  z-index: 92;
}

.header_search {
  display: inline-block;
  width: 5em;
}

.search_option button {
  background: #ff9800;
  font-weight: normal;
  font-family: inherit;
  padding: 0.75em;
}

.search_option {
  margin: 0.5em 0;
  padding: 0 1em;
}

.search_option label {
  float: left;
  width: 50%;
  padding-right: 1em;
}

/*--LIGHT BOX------------------------------------------*/

.lightbox {
  text-align: center;
  margin-bottom: 1em;
}

.lightbox a {
  position: relative;
  display: block;
  width: 15em;
  height: 15em;
  margin: 0 auto;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  border: 1px #ccc solid;
  background-color: #333;
}

.lightbox a::after {
  content: "";
  background: var(--ashSearch);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  position: absolute;
  top: 40%;
  left: 40%;
  font-size: 3em;
  opacity: 0.7;
}

.jisseki_picture a::after {
  top: 30% !important;
  left: 30% !important;
}

.lightbox img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.lightbox figcaption {
	font-size: 80%;
	margin-top: 0.5em;
	display: flex;
	align-items: baseline;
	justify-content: center;
	text-align: left;
}

.lightbox figcaption::before {
  content: "";
  background: var(--blackCaret);
  background-size: contain;
  margin-right: 0.5em;
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: text-top;
}

.smartphoto-arrow-left,
.smartphoto-arrow-right {
  background: none !important;
}

.smartphoto-arrow-left a,
.smartphoto-arrow-right a {
  background: none !important;
  position: relative;
}

.smartphoto-arrow-left a::after,
.smartphoto-arrow-right a::after {
  position: absolute;
  top: 50%;
  margin-top: -0.5em;
  line-height: 1;
  font-size: 2em;
  width: 1em;
  height: 1em;
  opacity: 0.8;
}

.smartphoto-arrow-right a::after {
  content: "";
  background: var(--whiteArrow);
  background-size: contain;
  display: inline-block;
  transform: rotate(90deg);
  background-color: #444;
  right: 0.1em;
}

.smartphoto-arrow-left a::after {
  content: "";
  background: var(--whiteArrow);
  background-size: contain;
  display: inline-block;
  transform: rotate(-90deg);
  background-color: #444;
  left: 0.1em;
}

/*--WRITER------------------------------------------*/

.writer {
  border: none;
}

.writer h2 {
  text-align: center;
  padding-top: 1em;
  background: none;
  color: #444;
  font-size: 1em;
}

.writer h2 + div {
  position: relative;
  padding-left: 7em;
}

.writer h2 + div figure {
  position: absolute;
  width: 5em;
  top: 0;
  left: 1em;
}

.writer {
  width: 96%;
  max-width: 500px;
  display: table;
  margin: 0 auto;
  padding: 0 0.75em;
  position: relative;
}

.writer input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

.writer_notice {
  margin: 1em auto;
  max-width: 500px;
  font-size: 13px;
  padding: 0 1em 0 2.5em;
  position: relative;
}

.writer_notice::before {
  content: "※";
  position: absolute;
  top: auto;
  left: 1em;
}

.writer figure {
  display: table-cell;
  width: 20%;
}

.writer dl {
  display: table-cell;
  padding-left: 0.75em;
  font-size: 0.9em;
}

.writer dt {
  font-weight: bold;
  font-size: 1.1em;
}

.writer dt::before {
  content: "";
  background: var(--blackPen);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  margin-right: 0.5em;
}

section h2 ~ div > .writer {
  padding: 1rem;
	border: 1px #ccc solid;
	width: 100%;
}

section h2 ~ div > .writer_notice {
	color: #008bd5;
	font-size: 90%;
	margin: .5rem auto 1rem;
}


/*--COURCE COLOR------------------------------*/

.c1,
.c2,
.c3,
.c4,
.c5,
.c6 {
  display: inline-block;
  line-height: 1;
  padding: 2px;
  width: calc(1em + 4px);
  color: #fff;
  text-align: center;
}

.c1 {
  background-color: #f0f0f0;
  color: #333;
}
.c2 {
  background-color: #333;
}
.c3 {
  background-color: #f00;
}
.c4 {
  background-color: #00f;
}
.c5 {
  background-color: #ff0;
  color: #333;
}
.c6 {
  background-color: #080;
}

.blinking {
  -webkit-animation: blink 0.5s ease-in-out infinite alternate;
  -moz-animation: blink 0.5s ease-in-out infinite alternate;
  animation: blink 0.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*--------------------------------------------*/

.dialog {
  display: none;
  position: fixed;
  top: 20%;
  left: 10%;
  width: 80%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 100;
  color: #fff;
}

.dialog > div {
  padding: 1em;
}

.message {
  position: fixed;
  top: 20%;
  left: 50%;
  width: 14em;
  color: #fff;
  text-align: center;
  padding: 2em 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 100;
  margin-left: -7em;
}

.categoryNav {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.categoryNav h2 {
  margin: 0;
}

.categoryNav > div {
  padding: 0;
}

.categoryNav ul li {
  background-color: #fff;
  border-bottom: 1px #ccc solid;
  width: 100%;
  min-height: 120px;
}

.categoryNav ul li:last-of-type {
  border-bottom: 0px;
}

.categoryNav ul li a {
  text-decoration: none;
  color: inherit;
  padding: 1em 1em 1em 6.5em;
  position: relative;
  display: block;
  width: 100%;
}

.categoryNav ul li a figure {
  width: 5em;
  vertical-align: top;
  position: absolute;
  top: 1em;
  left: 1em;
}

.categoryNav .uptime {
  font-size: 80%;
  color: #666;
}

.categoryNav dl {
	text-align: justify;
}

.categoryNav dt {
	font-weight: bold;
	margin-bottom: 0.5em;
}

.ranking_free .ranking_site p {
  margin: 0;
}

.ranking_free .ranking_site_name {
  font-weight: bold;
}

.ranking_free .ranking_site_spec {
  font-size: 90%;
}

.ranking_free .ranking_site_spec span {
  font-size: 90%;
  background-color: #999;
  color: #fff;
  padding: 0 0.25em;
  display: inline-block;
  vertical-align: bottom;
  margin: 0 0.2em;
}

.ranking_free tbody tr th {
  background-color: #f44336;
  color: #fff;
}

.ranking_free tbody tr:nth-of-type(n + 4) th {
  background-color: #f90;
}

.ranking_free tbody tr:nth-of-type(n + 6) th {
  background-color: #8bc34a;
}

.ranking_free tbody tr:nth-of-type(n + 11) th {
  background-color: #36bdef;
}

.ranking_free tbody tr:nth-last-of-type(-n + 3) th {
  background-color: #333;
}

.ranking_free .ranking_site a {
  display: block;
  color: inherit;
  position: relative;
}

.ranking_free .ranking_site a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f201";
  position: absolute;
  top: 50%;
  margin-top: -1em;
  line-height: 1;
  right: -0.25em;
  background-color: #009fe8;
  width: 1.5em;
  text-align: center;
  line-height: 1.5;
  border-radius: 100%;
  color: #fff;
  padding: 0.2em;
}

/*-- ranking aside----------------------------*/

.ranking_aside ul li {
  position: relative;
  background-color: #fff;
  padding: 1em;
  border-bottom: 1px #ccc dotted;
}

.ranking_aside ul li:last-of-type {
  border-bottom: none;
}

.ranking_aside ul li::before {
  content: "";
  width: 3.5em;
  height: 5em;
  position: absolute;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top;
  left: 0.5em;
  top: 0.5em;
  z-index: 10;
}

.ranking_aside ul li:nth-of-type(1)::before {
  background-image: url(award_1.png.1);
}

.ranking_aside ul li:nth-of-type(2)::before {
  background-image: url(award_2.png.1);
}

.ranking_aside ul li:nth-of-type(3)::before {
  background-image: url(award_3.png.1);
}

.ranking_aside ul li figure {
  width: 5em;
  position: absolute;
  left: 3.5em;
  top: 1em;
}

.ranking_aside dt {
  padding-left: 8em;
  min-height: 6em;
}

.ranking_aside dt .name {
  font-size: 1.2em;
  font-weight: bold;
}

.ranking_aside .btnArea p {
	width: 15rem;
	margin-left: auto !important;
}

/*--------------------------------------------*/

.mainnav {
  position: fixed;
  top: 2.25em;
  right: -100%;
  background-color: rgba(0, 0, 0, 0.8);
  height: 100%;
  color: #fff;
  width: 100%;
  z-index: 100;
  transition-duration: 0.3s;
}

.mainnav.slide {
  right: 0;
}

.mainnav .menu ul {
  display: flex;
  flex-wrap: wrap;
}

.mainnav .menu li {
  line-height: 1.4;
  font-size: 90%;
  position: relative;
  width: 50%;
}

.mainnav .menu li a {
  padding: 1em 2em 1em 1em;
  border-bottom: 1px #000 solid;
  display: block;
  text-decoration: none;
  color: inherit;
  position: relative;
}

.mainnav .menu li a i {
  margin-right: 0.5em;
}

.mainnav .menu li a svg {
  margin-right: 0.5em;
  fill: #444;
}

/*
.mainnav .menu li a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: auto;
  right: 0.5em;
  opacity: 0.8;
}
*/

.slide .menu li a::after {
  content: "";
  background: var(--whiteArrow);
  background-size: contain;
  display: block;
  width: 1em;
  height: 1em;
  transform: rotate(90deg);
  margin-left: 0.5em;
  position: absolute;
  top: 13px;
  right: 4px;
}

.mainnav .sitemenu li a {
  padding: 1.5em 1.5em 1.5em 4.25em;
  border-bottom: 1px #ccc inset;
  line-height: 1;
}

.mainnav .sitemenu li a figure {
  width: 3em;
  position: absolute;
  left: 0.5em;
  top: 0.5em;
}

.mainnav .sitemenu li a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f138";
  position: absolute;
  top: auto;
  right: 0.5em;
  opacity: 0.8;
}

.mainnav .blogmenu li a {
  padding: 1em 2em 1em 6.25em;
  border-bottom: 1px #ccc inset;
  line-height: 1;
  position: relative;
}

.mainnav .blogmenu li a figure {
  width: 5em;
  position: absolute;
  left: 0.5em;
  top: 0.5em;
}

.mainnav .blogmenu li a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f138";
  position: absolute;
  top: 50%;
  right: 0.5em;
  opacity: 0.8;
  margin-top: -0.5em;
}

.blogmenu_date {
  font-size: 85%;
  line-height: 1;
}

.blogmenu_title {
  font-size: 1.1em;
  font-weight: bold;
  margin-top: 0.2em;
  line-height: 1.4;
}

.blogmenu_content {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 0;
  font-size: 90%;
}

.menu_title {
  font-weight: bold;
  text-align: center;
  color: #fff;
  background-image: url(https://apaie.org/_common/img/iron01.jpg);
  background-size: cover;
  padding: 0.5em 0;
  position: relative;
}

.menu_title::before,
.menu_title::after {
  content: "";
  position: absolute;
  top: 50%;
  height: 2em;
  width: 2em;
  background-image: url(https://apaie.org/_common/img/pin.png);
  background-size: cover;
  margin-top: -0.8em;
  opacity: 0.8;
}

.menu_title::before {
  left: 0.5em;
}

.menu_title::after {
  right: 0.25em;
}

.menu ul.reviewmenu li a {
  padding: 0.25em 2em 0.25em 0.5em;
  border-bottom: 1px #ccc inset;
}

.menu ul.reviewmenu li a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f138";
  position: absolute;
  top: 50%;
  right: 0.5em;
  opacity: 0.8;
  margin-top: -0.5em;
}

.reviewmenu .review_user {
  display: none;
}

.reviewmenu .review_content {
  background: none;
  border-radius: 0;
  width: 100%;
  height: 1.6em;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 0;
}

.reviewmenu .review_date {
  right: 3em;
}

.linkmenu {
  background-color: hsla(201, 100%, 26%, 0.5);
  padding: 2em 0.5em;
  width: 100%;
  margin: 0;
  position: inherit;
  padding-bottom: 15em;
  color: #fff;
}

.linkmenu li {
  text-align: center;
}

.linkmenu li a {
  display: block;
  text-align: left;
  color: inherit;
  overflow: hidden;
  border-radius: 0.2em;
}

.linkmenu .boatrace a {
  background-color: #fff;
  padding: 0.5em;
  border: 1px #ccc solid;
  text-align: center;
}

.linkmenu .boatrace img {
  height: 2em;
  width: auto;
}

.linkmenu .teleboat a {
  background-color: #333;
  padding: 0.5em;
  border: 1px #ccc solid;
  text-align: center;
}

.linkmenu .teleboat img {
  height: 2em;
  width: auto;
}

.linkmenu .stadiumlink li {
  float: left;
  width: 50%;
}

.linkmenu .stadiumlink li a {
  font-size: 90%;
  display: block;
  padding: 0.5em;
  position: relative;
}

.linkmenu .stadiumlink li a::before {
  content: "";
  background: var(--whiteCircle_right);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: text-top;
  margin: 0 4px 0 0;
}

/*--------------------------------------------*/

article {
  position: relative;
  /*
  opacity: 0;
  transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  -ms-transition-duration: 0.3s;
  */
}
/*
article.active {
  opacity: 1;
}
*/
article.slide {
  right: 16em;
}

article > section {
  margin: 1em auto;
  position: relative;
}

article > section > div {
  background-color: #fff;
  padding: 1em;
}

article > section > div > *:last-child {
  margin-bottom: 0;
}

article > section p {
  margin-bottom: 1.5em;
}

.introduction {
  width: 96%;
  margin: 0 auto;
  max-width: 500px;
  padding: 0 1em;
}

.topBtn {
  position: fixed;
  bottom: 1.75em;
  right: 0.25em;
  text-align: center;
  z-index: 100;
  display: none;
  font-size: 2.2em;
}

h1 {
  text-align: center;
  font-size: 1.4em;
  font-weight: 900;
  letter-spacing: 0em;
  line-height: 1.2;
  padding: 0.5em;
}

h2 {
  font-weight: 900;
  font-size: 1.2em;
  color: #fff;
  background-image: url(nami_2.png.1);
  background-size: auto 100%;
  padding: 1.25em 0.8em 0.5em;
  position: relative;
  line-height: 1.4;
  background-repeat: repeat-x;
}

h2 i {
  margin-right: 0.5em;
}

h2 svg {
  margin-right: 0.5em;
}

h2 .icon {
  vertical-align: baseline;
}

h3 {
  font-weight: bold;
  font-size: 1.1em;
  border-left: 2px #008bd5 solid;
  margin-bottom: 0.75em;
  padding-left: 0.5em;
}

h4 {
  text-align: center;
  margin-bottom: 0.5em;
  font-weight: bold;
  color: #ff5722;
  font-size: 1.1em;
}

.border {
  border: 1px #fffcf4 solid;
}

.goRanking {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0.5em;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 100;
}

.goRanking a {
  max-width: 400px;
  margin: 0 auto;
}

.goRanking a::after {
  top: 50%;
  margin-top: -0.5em;
}

.goRanking a span {
  background-color: #ff5722;
  display: inline-block;
  padding: 0.5em;
  margin-right: 0.2em;
  border-radius: 1em;
}

.footerNav {
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: #333;
  z-index: 200;
}

.footerNav ul {
	display: flex;
	align-items: stretch;
	justify-content: space-evenly;
}
.footerNav ul::after {
}

.footerNav ul li {
}

.footerNav ul li a {
	display: block;
	color: #fff;
	font-size: 80%;
	line-height: 1;
	padding: 0.75em 0;
	text-align: center;
}

.footerNav ul li a i {
  font-size: 1.8em;
  margin-bottom: 0.25em;
}

.footerNav ul li a .icon {
  font-size: 1.8em;
  margin-bottom: 0.25em;
}

.footerNav ul li a span {
  display: none;
}

/*------------------------------------------*/

header {
  line-height: 1;
  z-index: 50;
  font-size: 1.2em;
  background-color: #008bd5;
  background-repeat: repeat-x;
  background-size: auto 0.75em;
  background-position: left 101%;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  color: #fff;
}

header .searchBtn {
  position: absolute;
  top: 0.5em;
  right: 3em;
  padding: 0.25em 0.5em;
  font-size: 80%;
  background-color: #fff;
  border-radius: 0.4em;
  color: #1c1c1c;
}

header .backBtn {
  display: none;
  position: absolute;
  top: 0;
  right: 2em;
  padding: 0.5em;
}

header .menuBtn {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.5em;
}

.header_logo {
  height: 2em;
  padding: 0.25em;
}

.header_logo > a {
  display: inline-block;
  width: 7em;
  padding: 0.25em;
}

/*--フッター----------------------------------------*/

footer {
  text-align: center;
  padding: 1em 0 6em;
  background-color: #005786;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: #fff;
}

footer ul {
  padding: 0.75em 0;
}

footer li {
  display: inline-block;
  text-align: center;
}

footer li:nth-of-type(n + 2) {
  border-left: 1px #fff solid;
  padding-left: 0.2em;
}

footer li a {
  display: inline-block;
  color: inherit;
  padding: 0 0.5em;
}

footer .copyright {
  font-size: 80%;
  color: #ccc;
}

/*--PAGENATION----------------------------------------*/

.pagenation {
  text-align: center;
}

.pagenation li {
  display: inline-block;
  margin-right: 0.25em;
}

.pagenation li a {
  display: block;
  text-align: center;
  text-decoration: none;
  background-color: #36bdef;
  color: #fff;
  line-height: 1;
  padding: 0.5em;
  border-radius: 4px;
}

.pagenation li.active a {
  background-color: #035886;
  pointer-events: none;
}

/*--RANKING--------------------------------------------- */

.ranking {
  padding: 0 0 1em;
}

.ranking > div {
  padding: 0;
}

.ranking li {
  display: block;
  width: 100%;
  border-bottom: 1px #36bdef dotted;
  position: relative;
  background-color: #fff;
  padding: 1em;
}

.ranking li:last-of-type {
  border: none;
}

.ranking li a::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f054";
  position: absolute;
  top: 50%;
  transform: translateY(-0.5em);
  right: 0.5em;
}

.ranking li figure {
  position: absolute;
  width: 5em;
  height: 5em;
  top: 1em;
  left: 0.5em;
}

.ranking li::before {
  width: 2em;
  text-align: center;
  display: block;
  line-height: 2;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  color: #fff;
}

.ranking li:nth-of-type(1)::before,
.ranking li:nth-of-type(2)::before,
.ranking li:nth-of-type(3)::before {
  background-size: auto 100%;
  background-repeat: no-repeat;
  width: 3em;
  height: 4em;
  background-position: center top;
  top: -0.25em;
  left: -0.75em;
}

.ranking li:nth-of-type(1)::before {
  content: "";
  background-image: url(medal_1.png.1);
}

.ranking li:nth-of-type(2)::before {
  content: "";
  background-image: url(medal_2.png.1);
}

.ranking li:nth-of-type(3)::before {
  content: "";
  background-image: url(medal_3.png.1);
}

.ranking .stastus {
  position: absolute;
  background-color: #9e9e9e;
  color: #fff;
  padding: 0.5em;
  line-height: 1;
  font-size: 80%;
  top: 1em;
  right: 1em;
}
.ranking dt {
  padding-left: 5em;
}

.ranking dt .name {
  font-size: 1.2em;
  font-weight: bold;
}

.ranking dt .star {
  font-weight: bold;
}

.ranking dt .star i {
  color: #f90;
  font-size: 90%;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -0.2em;
}

.ranking .btnArea .btn::after {
  content: "";
}

.ranking dd {
  line-height: 1.4;
  font-size: 90%;
  background-color: #fff3cd;
  padding: 0.5em;
  position: relative;
  color: #444;
}

.ranking-bad dd {
  background-color: #ccc;
}

.ranking-bad li:nth-of-type(1)::before {
  content: "";
  background: none;
}

.ranking-bad li:nth-of-type(2)::before {
  content: "";
  background: none;
}

.ranking-bad li:nth-of-type(3)::before {
  content: "";
  background: none;
}

/*--JISSEKI--------------------------------------------- */

.jisseki {
  background-color: #f0f0f0;
}

.jisseki h3 {
  text-align: center;
  border: none;
  background-color: #008bd5;
  color: #fff;
  margin: 0;
}

.jisseki > div {
  padding: 0;
}

.jisseki li {
  width: 100%;
  padding: 0.5em 1em;
}

.jisseki_readmore {
  background-color: #f0f0f0;
  text-align: center;
  padding: 1em 0;
}

.jisseki_readmore span::before {
  content: "";
  background: var(--blackArrowCircle_right);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
  opacity: 0.7;
  vertical-align: text-top;
}

.jisseki li figure {
  width: 6em;
  height: 6em;
  float: left;
  margin-right: 0.75em;
  margin-bottom: 0;
}

.jisseki li figure > a {
  width: 100%;
  height: 100%;
  position: relative;
}

.jisseki li figure > a svg {
  position: absolute;
  top: 13px;
  left: 15px;
  z-index: 2;
  opacity: 0.7;
  background-color: black;
  border-radius: 100%;
  padding: 0px 2px 1px 3px;
  height: 32px;
  width: 26px;
}

.jisseki_course {
  font-size: 90%;
}

.jisseki_course span {
  font-weight: bold;
  font-size: 1.1em;
  display: block;
}

.jisseki_race {
  display: inline-block;
  text-align: center;
  font-size: 90%;
  padding-right: 1em;
  position: relative;
}

.jisseki_race::after {
  content: "";
  background: var(--orangeArrow);
  background-size: contain;
  display: block;
  width: 1em;
  height: 1em;
  transform: rotate(90deg);
  margin-left: 0.5em;
  line-height: 1;
  position: absolute;
  bottom: 2px;
  right: -3px;
  opacity: 0.5;
}

.jisseki_race:last-of-type {
  padding-right: 0;
}

.jisseki_race:last-of-type::after {
  content: "";
  background: none;
}

.jisseki_race span {
  font-weight: bold;
  font-size: 1.4em;
  color: #dd0f00;
  display: block;
  line-height: 1;
  margin-top: 0.2em;
}

.jisseki_get {
  font-size: 1.2em;
  text-align: center;
}

.jisseki_get span {
  font-weight: bold;
  color: #dd0f00;
  font-size: 1.6em;
}

.jisseki p {
  margin-bottom: 0;
}

.jisseki_comment {
  background-color: #f0f0f0;
  padding: 0.75em;
  position: relative;
  margin-top: 5px;
}

.jisseki_comment::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #f0f0f0 transparent;
  top: -10px;
  left: 50%;
  margin-left: -10px;
}

/*--SIDEMENU--------------------------------------------- */

.sidemenu .ranking {
  margin: 0 auto;
}

/*--パンくずリスト--------------------------------------------- */

.breadcrumb {
  padding: 0.25em;
  background-color: #0072af;
}

.breadcrumb li {
  display: inline-block;
  line-height: 1;
  position: relative;
  margin-right: 1em;
}

.breadcrumb li a {
  color: #fff;
  font-size: 70%;
  line-height: 2;
  display: inline-block;
  padding: 0 0.5em;
  vertical-align: top;
}

.breadcrumb .longbrd {
  margin-right: 2em;
}

.breadcrumb .longbrd a {
  overflow-x: hidden;
  max-width: 11em;
  white-space: nowrap;
}
.breadcrumb .longbrd::after {
  right: -1.8em;
}

.breadcrumb .longbrd::before {
  content: "...";
  position: absolute;
  right: -1.1em;
  top: 0.6em;
  font-size: 70%;
  color: #fff;
}

.breadcrumb li::after {
  content: "";
  background: var(--whiteArrow);
  background-size: contain;
  display: block;
  transform: rotate(90deg);
  width: 1em;
  height: 1em;
  position: absolute;
  right: -16px;
  top: 3px;
}

.breadcrumb li:last-of-type {
  pointer-events: none;
}

.breadcrumb li:last-of-type::after {
  display: none;
}

.quote {
  padding: 1.75em;
  position: relative;
  margin-bottom: 0.5em;
  background-color: #f0f0f0;
  color: #1c1c1c;
}

.quote > *:last-of-type {
  margin: 0;
}
.quote::before,
.quote::after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  position: absolute;
  color: #999;
}

.quote::before {
  content: "";
  background: var(--ashQuote_left);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0.5em;
  left: 0.5em;
}

.quote::after {
  content: "";
  background: var(--ashQuote_right);
  background-size: contain;
  display: inline-block;
  width: 1em;
  height: 1em;
  position: absolute;
  bottom: 0.5em;
  right: 0.5em;
}

.quote_from {
  font-size: 80%;
  max-width: calc(80% - 3em);
  margin-left: auto !important;
  font-style: italic;
  position: relative;
  display: table;
}

.quote_from::before {
  content: "";
  width: 2em;
  height: 1px;
  background-color: #333;
  position: absolute;
  top: 0.6em;
  left: -2.5em;
}

dl.default {
  margin: 1em 0;
}

dl.default dd {
  padding-left: 1.2em;
}

dl.default dt:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f024";
  color: skyblue;
  padding-right: 0.3em;
}

dl.default dt {
  padding-bottom: 0.1em;
  font-weight: bold;
  margin: 0.5em 0;
}

.voice {
  background-color: #f0f0f0;
  padding: 1em 1em 0.5em;
}

.voice_user {
  font-size: 0.8em;
  font-style: italic;
}

.btnArea {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.section_image {
  width: 100%;
  padding: 1em;
  background-color: #fff;
  text-align: center;
}

.section_image img {
  max-width: 500px;
}

.minus {
  font-size: 0.9em;
}

.plus {
  font-weight: bold;
  color: #f44336;
}

.plus::before {
  content: "+";
}

.site_admin .sitelist dd {
  position: fixed;
  overflow-y: scroll;
  top: 6em;
  height: 80%;
  left: 32em;
  padding: 2em;
  border: solid 1px #22566e;
}

/*-------------------------------*/

@keyframes gear {
  100% {
    transform: rotate(90deg);
  }
}

.gear li::before {
  content: "";
  animation-name: gear;
  animation-duration: 3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  background-size: cover;
}

.gear_red::before {
  background-image: url(gear_red.png.1);
  animation-direction: reverse;
}

.gear_org::before {
  background-image: url(gear_org.png.1);
}

.gear_grn::before {
  background-image: url(gear_grn.png.1);
  animation-direction: reverse;
}

.gear_blu::before {
  background-image: url(gear_blu.png.1);
}

.site_award {
  display: table;
  margin: 0 auto;
}

.site_award > dl {
  display: table-row;
}

.site_award dt {
  display: table-cell;
  padding-right: 1em;
}

.site_award dt i {
  font-size: 1.6em;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.25em;
}

.site_award dd {
  display: table-cell;
  line-height: 1;
  font-weight: bold;
}

.site_award dd span {
  font-size: 2em;
}

/*人気のコラム、検証レポート追加 */
.index_report > div {
  padding: 0em;
}

.pop_p {
  font-weight: 600;
}

/* サムネイル画像の横に文章が来る構成 */
.photoarea {
}

.photoarea figure {
}

.photoarea figure ~ * {
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■ */

@media (max-width: 374px) {
} /*■■■■■■■■■■■■■■■■■■■■■■■■■ */

@media (min-width: 768px) {
  .forSP {
    display: none;
  }

  html,body {
    font-size: 14px;
  }

  .form_table {
    display: table;
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 1em;
  }

  .form_row {
    display: table-row;
  }

  .form_row > * {
    display: table-cell;
    vertical-align: top;
  }

  .form_row > label {
    padding: 0.75em 0;
  }

  h1 br {
    display: none;
  }

  article > section {
    max-width: 700px;
    margin: 2em auto;
  }

  .sidemenu {
    max-width: 700px;
    width: 96%;
    margin: 0 auto;
  }

  .sidemenu .ranking {
    width: 100%;
    margin: 2em auto;
  }

  .ranking > div {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }

  .ranking li:nth-child(-n + 3) figure {
    width: 150px;
    left: 6em;
  }

  .ranking li dl {
    text-align: left;
  }

  .ranking li:nth-child(-n + 3) dl {
    padding-left: 17em;
  }

  .ranking li:nth-child(-n + 3) dt {
    padding-left: 0;
  }

  .ranking dt .btnArea {
    margin-left: 0;
  }

  .ranking li:nth-of-type(-n + 3)::before {
    width: 5em;
    height: 7em;
    top: 0.25em;
    left: 0.25em;
  }

  .ranking .btnArea > p {
    display: inline-block;
    width: 128px;
    margin: 0 2px 1em;
  }

  .linkmenu {
    text-align: center;
    margin-top: 2em;
    padding-bottom: 16em;
  }

  .linkmenu li {
    display: inline-block;
  }

  .linkmenu .stadiumlink li {
    width: 25%;
  }

  .ranking li {
    min-height: 8em;
  }

  .section_image {
    padding-top: 2em;
  }

  .ranking_free tbody tr th {
    width: 3em;
  }

  .ranking_free .ranking_site {
    padding: 0.75em 0.5em;
  }

  .ranking_free .ranking_site_spec {
    font-size: 100%;
    position: absolute;
    top: 0em;
    right: 3em;
    text-align: left;
    width: 200px;
  }

  .topBtn {
    color: rgba(0, 0, 0, 0.5);
    z-index: 110;
  }

  .ranking_aside ul li figure {
    width: 7em;
    position: absolute;
    left: 3.5em;
    top: 1em;
  }

  .ranking_aside dt {
    padding-left: 11em;
    min-height: auto;
  }

  .ranking_aside dd {
    padding-left: 10em;
    margin-top: 0.5em;
  }

  .siteLink {
    width: 500px;
    margin: 0 auto 2.5em;
  }

  .jisseki > div {
    max-width: 100%;
  }

  .jisseki ul {
    text-align: center;
    margin: 0 auto;
  }

  .jisseki li {
    width: 300px;
    text-align: left;
    margin: 10px;
    vertical-align: top;
    background-color: #fff;
    display: inline-block;
  }

  .jisseki li.jisseki_readmore {
    text-align: center;
    background: none;
  }

  .jisseki li.jisseki_readmore span {
    border: 1px #666 solid;
    padding: 0.5em 1em;
    border-radius: 2em;
    display: inline-block;
    margin-top: 2em;
  }

  .breadcrumb li::after {
    top: 0.3em;
  }

  .index_report {
    width: 100%;
  }

  .linkAreaB {
    margin: 0 0 1em 2em;
  }

  .lightbox {
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    width: 17rem;
  }

  .lightbox a {
	width: 17rem;
	height: 17rem;
  }

  .lightbox a::after {
    background: var(--whiteSearch);
    font-size: 1.5em;
    top: 85%;
    left: 85%;
    background-color: black;
    border-radius: 100%;
    padding: 1px 2px 0px 0px;
    opacity: 0.7;
    height: 1.2em;
    width: 1.2em;
  }

  .lightbox ~ ul.mark,
  .lightbox ~ .quote {
    margin-left: 18em;
  }

  .smartphoto-arrow-left a::after,
  .smartphoto-arrow-right a::after {
    width: 1.5em;
    height: 1.5em;
  }


	.scroll::before {
		content: none;
	}

} /*■■■■■■■■■■■■■■■■■■■■■■■■■ */

@media (min-width: 1024px) {
  .anchor {
    padding-top: 8em;
    margin-top: -8em;
  }

  .forSP {
    display: none !important;
  }

  header {
    background-image: url(header_bg.png.1);
    background-repeat: repeat-x;
    background-size: auto 2em;
    background-position: left bottom;
    border: none;
    padding: 0;
    position: relative;
    position: fixed;
    width: 100%;
  }

  .header_logo {
    max-width: 1000px;
    margin: 0 auto;
    text-align: left;
    height: 60px;
    padding: 14px 0;
  }

  .header_logo > a {
    width: 12em;
    padding: 0;
  }

  header .searchBtn,
  header .backBtn,
  header .menuBtn {
    display: none;
  }
  .wrap {
    padding-bottom: 0;
  }

  .scroll {
    overflow: auto;
  }

  .scroll-always {
    overflow-x: auto;
  }

  article {
    position: relative;
    padding-top: 120px;
  }

  article > section {
    margin: 2em 0;
    background-color: #fff;
    max-width: 100%;
    width: 100%;
  }

  article > section > div {
    border: none;
    background: none;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 2em 0;
  }

  article > section > div::after {
    content: "";
    clear: both;
    display: block;
  }

  h2 {
    font-size: 1.6em;
    position: relative;
    top: -1em;
    margin-bottom: -1em;
    text-align: center;
  }

  h3 {
    margin: 2em 0;
  }

  .footerNav {
    bottom: auto;
    top: 10px;
    width: 530px;
    left: 50%;
    transform: translateX(-50%);
    background: none;
    margin-left: -20px;
    z-index: 91;
  }

  .footerNav ul li {
    border: none;
    width: 25%;
  }

  .footerNav ul li a {
    position: relative;
    padding: 0.5em 1em 0.5em 3em;
    font-size: 1em;
    text-align: left;
    background-color: #f6f6f6;
    border-radius: 2em;
    margin-right: 0.5em;
    box-shadow: 0 3px 2px rgba(0, 0, 0, 0.5);
    line-height: 1;
    color: #444;
  }

  .footerNav ul li a br {
    display: none;
  }

  .footerNav ul li a i {
    position: absolute;
    left: 0.5em;
    top: 0.5em;
    font-size: 1.4em;
  }

  .footerNav ul li a .icon {
    position: absolute;
    left: 0.5em;
    top: 0.5em;
    font-size: 1.4em;
  }

  .footerNav ul li a span {
    display: block;
  }

  .footerNav ul .footer_add {
    display: none;
  }

  .breadcrumb {
    width: 100%;
    position: fixed;
    top: 93px;
    margin: 0;
    z-index: 100;
    left: 0;
    z-index: 91;
    height: 35px;
  }

  .breadcrumb > ul {
    list-style: none;
    width: 1000px;
    margin: 0 auto;
  }
  .breadcrumb li a {
    font-size: 90%;
    padding: 0;
  }

  .mainnav {
    position: fixed;
    width: 100%;
    background: none;
    color: #444;
    height: auto;
    right: auto;
    z-index: 60;
    left: 0;
    top: 60px;
    background-color: #f6f6f6;
  }

  .menu ul {
    margin: 0 auto;
    text-align: center;
  }
  .mainnav .menu ul {
    justify-content: center;
  }
  .mainnav .menu li {
    display: inline-block;
    font-size: 14px;
    width: auto;
  }

  .mainnav .menu li a {
    padding: 0.5em;
    border: none;
    text-align: center;
  }

  .mainnav .menu li a i {
    margin-right: 0.5em;
  }

  .mainnav .menu li a::after {
    content: "";
  }

  .mainnav .menu li a svg {
    margin-right: 0.5em;
  }

  .search-header {
    display: block !important;
    background: none;
    width: auto;
    top: 0;
    left: 50%;
    margin-left: 230px;
  }

  .search-header .search_main {
    text-align: right;
  }

  .search-header .search_main input {
    padding: 0.5em 0.5em 0.5em 2em;
    border: none;
    background-image: url(search.svg.1);
    background-repeat: no-repeat;
    background-size: auto 0.8em;
    background-position: 0.5em center;
    width: 200px;
    display: inline-block;
  }

  .search-header .search_option {
    display: none;
    margin: 0;
    padding: 1em;
    background-color: #045975;
  }

  .search-header .search_option label {
    float: left;
    width: 50%;
    padding: 0.5em 0;
    float: none;
    width: 100%;
    display: block;
  }

  .search-header .btn {
    position: fixed;
    top: 1em;
    width: 50px;
    padding: 0.5em;
    font-family: inherit;
    left: 50%;
    margin-left: 450px;
  }

  .categoryNav {
    width: 100%;
    max-width: 100%;
    margin-top: 3em;
  }

  .categoryNav ul {
    text-align: center;
    margin-top: 2em;
  }

  .categoryNav ul li {
    display: inline-block;
    vertical-align: top;
    width: 300px;
    min-height: 370px;
    border: none;
    margin: 0.25em;
  }

  .categoryNav ul li {
    width: 240px;
    vertical-align: top;
    margin: 10px;
    height: 360px;
  }

  .categoryNav ul li a {
    display: block;
    padding: 1em;
    height: 100%;
  }

  .categoryNav ul li a::after {
    content: "";
  }

  .categoryNav ul li a > * {
    display: block;
  }

  .categoryNav ul li a figure {
    width: 150px;
    margin: 0 auto 0.5em;
    position: static;
  }

  .categoryNav ul li a dd {
    text-align: left;
  }

  .categoryNav .more {
    text-align: center;
    position: absolute;
    bottom: 1em;
    left: 0;
    width: 100%;
  }

  .sidemenu {
    max-width: 100%;
    width: 100%;
    text-align: center;
    padding: 1em 0;
    margin-top: 2em;
  }

  .ranking {
    text-align: center;
  }

  .ranking ul {
    margin-top: 1em;
    text-align: center;
  }

  .ranking li {
    float: left;
    width: 32%;
    margin: 1% 2% 1% 0;
    vertical-align: top;
    border: none;
  }

  .ranking li:nth-of-type(-n + 3) {
    width: 100%;
    margin: 1% 0;
  }

  .ranking li:nth-of-type(n + 4) .btnArea > p {
    display: block;
    width: 100%;
  }

  .ranking li:last-of-type {
    margin-right: 0;
  }

  .ranking li:nth-of-type(n + 4) dd {
    min-height: 120px;
  }

  .linkmenu {
    background-color: hsla(201, 100%, 26%, 0.5);
    padding: 2em;
    width: 100%;
    margin: 0;
    position: inherit;
    padding-bottom: 10em;
    color: #fff;
  }

  .linkmenu ul {
    max-width: 1000px;
    margin: 0 auto;
  }

  .linkmenu .stadiumlink li {
    width: 20%;
  }

  .section_image {
    padding: 2em 0 0;
    margin-bottom: -2em;
  }

  footer dl {
    display: table;
    margin: 0 auto 1em;
  }

  footer dl > * {
    display: table-cell;
    vertical-align: middle;
    padding: 0 0.5em;
  }

  .sidemenu > .clearfix {
    width: 100%;
    margin: 3em auto 2em;
    max-width: 1200px;
  }

  .ranking_aside {
    display: inline-block;
    vertical-align: top;
    width: 32%;
    margin: 0 0.5%;
    border: 1px #ccc solid;
  }

  .ranking_aside ul li figure {
    width: 6em;
  }

  .ranking_aside dt {
    padding-left: 9em;
    text-align: left;
    min-height: 6em;
  }

  .ranking_aside dd {
    padding: 0;
  }

  .goRanking {
    display: block;
    width: 200px;
    background: none;
    bottom: 1em;
    left: 2em;
  }

  .goRanking a {
    max-width: 100%;
    border-radius: 3em;
  }

  .goRanking a::after {
    content: "";
  }

  .goRanking a span {
    display: block;
    margin: 0 auto 1em;
    width: 8em;
  }

  footer {
    padding-bottom: 1em;
  }

  .breadcrumb .longbrd a {
    max-width: 12em;
  }

  .breadcrumb li::after {
    top: 0.3em;
  }

  .index_report > h2 {
  }

  .index_report {
    margin-top: 1em;
    background: none;
  }

  .index_report ul {
	margin-top: 0;
	margin-bottom: 3rem;
  }

  .linkAreaB {
    margin: 0 0 1em 9em;
  }

  .ranking_osusume_btnArea > .btn svg {
    position: absolute;
    left: 0.5em;
  }
} /*■■■■■■■■■■■■■■■■■■■■■■■■■ */

@media (max-width: 767px) {
  .forPC {
    display: none;
  }
}

dl.turnmark dt {
  font-weight: 600;
  position: relative;
  padding-left: 1.5em;
  font-size: 1.1em;
  margin: 0.5em 0;
  display: inline-block;
}

dl.turnmark dt::before {
  background-image: url(turnmark.png.1);
  content: "";
  width: 1.2em;
  height: 1.4em;
  background-size: cover;
  position: absolute;
  left: 0;
  top: -0.1em;
  background-position: center;
}

dl.turnmark dd {
  display: inline-block;
  font-weight: 600;
  position: relative;
  font-size: 1.1em;
  margin: 0.5em 0;
  display: inline-block;
}

.lead_accordion + label {
  padding: 0 1em;
  max-width: 700px;
  margin: 1em auto 0;
  text-align: left;
  word-break: break-word;
  word-wrap: break-word;
  display: block;
}

.lead_accordion + label p::after {
  content: "";
  background: var(--redCircle_right);
  background-size: contain;
  transform: rotate(-90deg);
  width: 1em;
  height: 1em;
  display: inline-block;
  text-align: center;
  line-height: 1;
  padding: 0.2em;
  vertical-align: middle;
}

.lead_accordion:checked + label p::after {
  transform: rotate(90deg);
}

.lead_accordion + label + div {
  max-width: 700px;
  margin: 0 auto;
  height: 0;
  opacity: 0;
  visibility: hidden;
  padding: 0 1em;
  margin-top: 0.5em;
  transform: translateY(-1em);
  transition: 0.3s;
}

.lead_accordion:checked + label + div {
  height: auto;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.freelist + .ta-c {
  white-space: nowrap;
  letter-spacing: -0.04em;
  font-size: 0.9em;
  margin-top: 2em;
}

.freelist + .ta-c span {
  margin-right: 0;
}

.free_btn {
  margin-bottom: 2em;
}

.ranking_aside li:nth-of-type(n + 4)::before {
  background-image: none;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  color: white;
  font-weight: bold;
  width: 2em;
  height: 2em;
}

.ranking_aside li:nth-of-type(4)::before {
  content: "4";
  background-color: #f44336;
}

.ranking_aside li:nth-of-type(5)::before {
  content: "5";
  background-color: #ff9900;
}

.ranking_aside li:nth-of-type(n + 4) figure {
  width: 4.5em;
  left: 1em;
}

.ranking_aside li:nth-of-type(n + 4) dt {
  padding-left: 5em;
}

@media (min-width: 768px) {
  .lead_accordion + label,
  .lead_accordion + label + div {
    padding: 0;
  }

  .lead_accordion + label + div {
    margin-top: 0;
  }

  .lead_accordion + label p::after,
  .lead_accordion:checked + label p::after {
    content: none;
  }

  .lead_accordion + label + div {
    height: auto;
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .freelist + .ta-c {
    margin-top: 1em;
    font-size: 1em;
    letter-spacing: normal;
  }

  .ranking_aside ul {
    display: flex;
    flex-wrap: wrap;
  }

  .ranking_aside li:nth-of-type(-n + 3) {
    width: 100%;
  }

  .ranking_aside li:nth-of-type(n + 4) {
    width: 50%;
  }

  .ranking_aside li:nth-of-type(n + 4) figure {
    width: 6em;
  }

  .ranking_aside li:nth-of-type(n + 4) dl {
    min-height: 5em;
  }

  .ranking_aside li:nth-of-type(n + 4) dt {
    padding-left: 6.5em;
    min-height: 6.5em;
  }

  .ranking_aside li:nth-of-type(n + 4) dd {
    padding-left: 0;
  }

  .ranking_osusume_btnArea > .btn svg {
    position: absolute;
    left: 0.5em;
  }
}

@media (min-width: 1024px) {
  .ranking_aside ul {
    display: block;
  }

  .ranking_aside li:nth-of-type(n + 4) {
    width: 100%;
  }

  .pa-1 {
    padding-bottom: 2em;
  }
  .sg_link a {
    height: 35px;
    padding: 0.56em 0.5em;
  }

  .sg_link {
    top: 93px;
    left: 50%;
    text-align: center;
    width: 50%;
  }
}

/* adArea 2023/07/26追加 */
.adArea {
	margin: 1em !important;
	background-color: #fff  !important;
	padding: 1em !important;
	border: 1px #eee solid;
}

section > div > .adArea {
	margin: 2em auto !important;
	background-color: #e8f1f5 !important;
}

.adArea a {
	display: block;
	color: inherit;
}

.adArea figure {
	margin-bottom: 0.5em;
}

.adArea figure img {
}

.adArea dl {
}

.adArea dt {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.2;
	/* text-align: justify; */
	margin-bottom: .8em;
}

.adArea dd {
	text-align: justify;
}

.adArea span {
	display: block;
	font-size: 80%;
	background-color: #008bd5;
	color: #fff;
	padding: 0.5em 1em;
	border-radius: 2em;
	width: 10em;
	text-align: center;
	margin-left: auto;
	margin-top: 1em;
}

@media( min-width:768px ) {

.adArea {
	max-width: 700px;
	margin: 2em auto !important;
}

.adArea a {
	display: flex;
	gap: 0 1em;
}

.adArea dl {
	flex: 1;
}

.adArea figure {
	width: 300px
}

}

/* 実績 */

.jissekilist div {
	padding: .25em 0;
	border-bottom: 1px solid #ccc;
}
.jissekilist dt {
	color: #008bd5;
	font-weight: 700;
}

.jissekilist dt em {
	font-size: inherit;
}

.jissekilist dd {
	display: flex;
	align-items: center;
	justify-content: space-between;
	line-height: 1;
}

.jissekilist dd p {
	display: flex;
	align-items: center;
	margin:0;
}

.jissekilist dd span {
	display: block;
	text-align: center;
	line-height: 1.2;
	font-size: 90%;
	position: relative;
}

.jissekilist dd span:nth-of-type(n+2) {
	padding-left: 1em;
}

.jissekilist dd span:nth-of-type(n+2)::before {
	content: "";
	display: inline-block;
	width: .8em;
	height: 1em;
	background-color: #008bd5;
	clip-path: polygon(0 0,100% 50%,0 100%);
	margin-top: 1e;
	position: absolute;
	left: 0.2em;
	top: .5em;
	opacity: .5;
}

.jissekilist dd strong {
	font-weight: 700;
	font-size: 2em;
	padding-left: 1em;
	background: no-repeat url(hitmark.webp.1) left top/auto 90%;
	display: block;
}

@media( min-width:768px ) {
	.jissekilist {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
	}

  .jissekilist div {
    width: 48%;
  }

}

/* 2024-08-06 新レポートリンク */

div.reportLink {
	padding: 1rem;
}
div.reportLink>a {
	display: block;
	background-color: #fff;
	color: inherit;
	padding: 1rem;
}

div.reportLink>a>dl>dd::after {
	content: "続きを見る";
	margin-left: auto;
	display: table;
	text-align: right;
	color: #008bd5;
	border: 1px #008bd5 solid;
	line-height: 1;
	padding: .5em 1em;
	border-radius: 1em;
	font-size: 90%;
}

div.reportLink>a>dl>dt {
	font-size: 1.25rem;
	line-height: 1.4;
	margin: .5rem 0;
	font-weight: 700;
	text-decoration: underline;
}

@media( min-width: 768px) {

  div.reportLink {
    padding: 0;
    width: 700px;
    margin: 0 auto;
  }

  div.reportLink>a {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
  }
  div.reportLink>a>figure {
    width: 20rem;
  }
  div.reportLink>a>dl {
    flex: 1;
  }
  div.reportLink>a>dl>dt {
    margin-top: 0;
  }

}

@media( min-width: 1024px) {
  div.reportLink {
    margin-bottom: 3rem;
  }
}
