@charset "utf-8";

.device-pc #contents {
  width: 1120px;
}
.device-sp #contents {
  padding: 0;
}
.device-sp #contents br:not([role=device-sp]) {
  content: none;
}
.border {
  border-top: 2px solid #EB655A;
  border-bottom: 2px solid #EB655A;
  height: 8px;
}
.border-wave {
  background: url(../images/border-wave.svg) repeat-x;
  height: 8px;
}
.hidden {
  display: none;
}
.main {
  color: #000;
  font-feature-settings: 'palt';
}
.device-pc .main {
  width: 960px;
  margin: 0 auto;
}
.device-sp .main {
  padding: 0 16px;
}
.device-sp .main br {
  display: block !important;
}
.main .vertical {
  writing-mode: vertical-rl;
  font-feature-settings: "vhal";
}
.main .vertical span {
  display: inline-block;
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
}
#contents.result .mt-wrapper , #contents.result .title2 {
  font-family: 'Jun 501', sans-serif;
}
/* main visual */
.top {
  position: relative;
}
.top .logo {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 1;
}
.device-sp .top .logo {
  position: relative;
  width: 143px;
}
#main-title img {
  width: 100%;
}
.device-sp .result .top {
  margin: 0 -16px;
  padding: 0;
}
/* yodogawa */
.device-pc .yodogawa {
  display: flex;
  justify-content: space-between;
  padding: 40px 0;
}
.device-sp .yodogawa {
  padding-bottom: 32px;
}
.device-sp .index .yodogawa {
  padding-top: 32px;
}
.yodogawa .text {
  font-size: 16px;
  font-weight: 700;
  line-height: 150%; /* 24px */
  margin: 0 auto;
}
.device-pc .yodogawa .text {
  width: 420px;
  font-size: 20px;
}
.device-sp .index .yodogawa .text {
  padding-bottom: 32px;

}
.mikuji {
  width: 560px;
  height: 400px;
  margin: 0 auto;
  overflow: hidden;
  cursor: pointer;
}
.result .mikuji {
  margin: 0 auto;
}
.btn_omikuji .anime {
  width: 560px;
  height: auto;
  cursor: pointer;
  opacity: 1 !important;
  animation: btn_anim infinite step-end 1.5s;
  -ms-animation: btn_anim_safari infinite step-end 1.5s;
  -webkit-animation: btn_anim_webkit infinite step-end 1.5s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
@keyframes btn_anim{
  1% { transform:translate3d(0,0,0); }
  30% { transform:translate3d(0,-400px,0);}
}
@keyframes btn_anim_safari{
  1% { transform:translate3d(0,0,0); }
  30% { transform:translate3d(0,-400px,0);}
}
@keyframes btn_anim_webkit{
  1% { transform:translate3d(0,0,0); }
  30% { transform:translate3d(0,-400px,0);}
}
.device-sp .mikuji {
  width: calc(100vw - 32px);
  height: calc((100vw - 32px) * .71428);
}
.device-sp .btn_omikuji .anime {
  width: calc(100vw - 32px);
  animation: btn_anim-sp infinite step-end 1.5s;
  -ms-animation: btn_anim_safari-sp infinite step-end 1.5s;
  -webkit-animation: btn_anim_webkit-sp infinite step-end 1.5s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
@keyframes btn_anim-sp{
  1% { transform:translate3d(0,0,0); }
  30% { transform:translate3d(0,calc((100vw - 32px) * .71428 * -1),0);}
}
@keyframes btn_anim_safari-sp{
  1% { transform:translate3d(0,0,0); }
  30% { transform:translate3d(0,calc((100vw - 32px) * .71428 * -1),0);}
}
@keyframes btn_anim_webkit-sp{
  1% { transform:translate3d(0,0,0); }
  30% { transform:translate3d(0,calc((100vw - 32px) * .71428 * -1),0);}
}
.mikuji2 {
  text-align: center;
}
.btn_omikuji2 {
  cursor: pointer;
  margin: 40px auto;
  width: 560px;
  height: 120px;
  overflow: hidden;
  position: relative;
}
.device-sp .btn_omikuji2 {
  width: 100%;
  height: 0;
  padding-top: 46.7%;
}
.btn_omikuji2 > div img {
  height: auto;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
}
.btn_omikuji2 > div img:last-of-type {
  opacity: 0;
  transition: opacity .7s;
}
.btn_omikuji2:hover > div img {
  opacity: 1;
}
.btn-back {
  padding: 40px 0;
  text-align: center;
}
.device-sp .btn-back {
  padding: 32px 0;
}
.btn-back img {
  width: initial;
  display: inline;
}
.banner p {
  padding: 16px 0;
  text-align: center;
}
.banner p img {
  max-width: 767px;
}
.banner a img {
  display: block;
  max-width: 800px;
  margin: 0 auto;
}
.mt .btn_omikuji2 {
  width: 436px;
  height: 100px;
  margin: 80px auto;
  display: block;
}
.device-sp .mt .btn_omikuji2 {
  width: 84%;
  height: 0;
  padding-top: 31.2%;
  margin: 0 auto 32px;
}
.download {
  max-width: 436px;
  width: 76.923vw;
  margin: 0 auto;
}
.ttl_download {
  padding-bottom: 8px;
}
.mikuji3 {
  display: flex;
  justify-content: space-between;
}
.mt .mikuji3 .btn_omikuji2 {
  width: 210px;
  height: 80px;
  position: relative;
  margin: 0 0 80px;
}
.device-sp .mt .btn_omikuji2 {
  width: 46.9%;
  height: 0;
  padding-top: 25%;
  margin: 0 0 32px;
}
#contents section img.logo {
  width: 50%;
  max-width: 320px;
  display: block;
  margin: 0 auto;
  mix-blend-mode: multiply; }
.ua-desktop-windows #contents section > div > a {
  -ms-transform: rotate(0.001deg);
  transform: rotate(0.001deg); }
#contents footer a.lineup{
  position: relative;
  z-index: 1;
}
#contents footer a.lineup img{
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
#contents footer div > a {
  font-size: 16px;
  font-weight: 700;
  display: table;
  margin: 32px auto;
}
#contents footer ul.magazine-s {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 32px auto;
  font-weight: 700;
  color: #333;
}
.device-pc #contents footer ul.magazine-s {
  padding-top: 32px;
}
#contents footer ul.magazine-s:before {
  font-size: 12px;
  line-height: 2.33;
  display: block;
  width: 100%;
  margin-bottom: 8px;
  content: "Share";
  text-align: center;
}
#contents footer ul.magazine-s li a {
  display: block;
  width: 32px;
  cursor: pointer;
}
#contents footer ul.magazine-s li a img {
  display: block;
  width: 100%;
}
#contents footer ul.magazine-s li + li {
  margin-left: 32px;
}
#contents footer .date {
  text-align: center;
  font-size: 12px;
  margin-top: 64px;
  color: #333;
  font-weight: 700;
}
#contents footer .copyright {
  text-align: center;
  font-size: 16px;
  margin-top: 16px;
  font-weight: 700;
}
.device-sp #contents footer .copyright {
  margin-bottom: 32px;
}
.device-sp #contents footer {
  text-align: center;
  padding-bottom: 32px;
}
.device-pc #contents.result {
  display: block;
}
.device-pc #contents.result .container {
  display: flex;
}
#contents.result section.mt-wrapper {
  padding-top: 16px;
}
.device-sp #contents.result section.mt-wrapper {
  padding-bottom: 40px;
}

#contents.result section.mt-wrapper h2 {
  font-size: 48px;
  line-height: 150%;
  margin: 0 auto;
  padding-top: 80px;
}
.device-pc #contents.result section.mt-wrapper h2 {
  width: max-content;
  margin: 0 auto;
}
.device-sp #contents.result section.mt-wrapper h2 {
  font-size: min(9vw, 40px);
  padding: 42px 7.69vw 0;
}
.device-sp #contents.result section.mt-wrapper h2 br {
  display: none !important;
}
.device-sp #contents section a {
  display: block;
}
.device-pc #contents section {
  width: 96em;
  margin: 0 auto;
}
.device-pc #contents footer {
  display: flex;
  justify-content: space-between;
  padding: 40px 0;
}
.device-pc #contents.result section.mt-wrapper.mt-wrapper {
  padding: 80px 80px 86px;
}
#contents.result section.mt-wrapper.mt-wrapper .img {
  padding: 32px 0;
  max-width: 560px;
  margin: 0 auto;
}
.device-pc #contents.result section.mt-wrapper.mt-wrapper .border-wave {
  max-width: 688px;
  margin: 49px auto 81px;
}
.device-sp #contents.result section.mt-wrapper.mt-wrapper .border-wave {
  margin: 0 5vw;
  padding-bottom: 32px;
}
#contents.result section.mt-wrapper.mt-wrapper .text {
  max-width: 436px;
  width: 86%;
  font-size: 18px;
  line-height: 150%; /* 27px */
  margin: 0 auto;
}
.device-pc #contents.result section.mt-wrapper.mt-wrapper > div > div.share {
  margin: 40px auto; }
.device-pc #contents.result section.mt-wrapper.mt-wrapper > div > div.share p {
  max-width: 100px; }

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
  }
  20% {
    -webkit-transform: translate(0, 10px);
  }
  40% {
    -webkit-transform: translate(0, 0);
  }
}
@keyframes sdb {
  0% {
    transform: translate(0, 0);
  }
  20% {
    transform: translate(0, 10px);
  }
  40% {
    transform: translate(0, 0);
  }
}
#contents.result section.mt-wrapper div.mt {
  border: 4px solid #EB655A;
  position: relative;
}
#contents.result section.mt-wrapper div.mt::before {
  content: '';
  display: block;
  width: calc(100% - 16px);
  height: calc(100% - 16px);
  border: 4px solid #EB655A;
  position: absolute;
  top: 8px;
  left: 8px;
}
#contents.result section.mt-wrapper div.mt img {
  width: 100%;
}
#contents.result section.mt-wrapper > div .advice {
  max-width: 436px;
  width: 84%;
  margin: 80px auto;
  border: 2px solid #EB655A;
  position: relative;
  padding: 18px 32px 34px;
}
.device-sp #contents.result section.mt-wrapper > div .advice {
  margin-top: 32px;
  margin-bottom: 0;
  padding: 18px 16px 34px;
}
#contents.result section.mt-wrapper > div .advice::before {
  content: '';
  display: block;
  width: calc(100% - 12px);
  height: calc(100% - 12px);
  border: 2px solid #EB655A;
  position: absolute;
  top: 6px;
  left: 6px;
}
#contents.result section.mt-wrapper > div .advice h3 {
  font-size: 24px;
  line-height: 150%; /* 36px */
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: center;
}
.device-sp #contents.result section.mt-wrapper > div .advice h3 {
  font-size: min(4.32vw, 18px);
  line-height: 150%; /* 27px */
}
#contents.result section.mt-wrapper > div .advice .border-wave {
  margin: 8px auto !important;
}
.device-sp #contents.result section.mt-wrapper > div .advice .border-wave {
  padding-bottom: 0;
}
.device-sp #contents.result section.mt-wrapper > div .advice + .border-wave {
  margin: 32px 5vw;
  padding-bottom: 0;
}
#contents.result section.mt-wrapper > div .advice h3 img {
  width: 60px;
}
.device-sp #contents.result section.mt-wrapper > div .advice h3 img {
  width: 60px;
}
#contents.result section.mt-wrapper > div .advice ul{
  text-align: left;
  font-size: 18px;
  padding-left: .3em;
}
#contents.result section.mt-wrapper > div .advice ul li {
  text-indent: -.2em;
  padding-left: .2em;
  line-height: 130%;
}
#contents.result section.mt-wrapper > div .advice ul li:nth-of-type(n + 2) {
  padding-top: .4em;
}
.device-sp #contents.result section.mt-wrapper > div .advice ul{
  font-size: min(3.84vw, 16px);
  padding-left: .2em;
}
#contents.result section.mt-wrapper > div .advice li::before {
  position: relative;
}
#contents.result section.mt-wrapper > div .advice li::before {
  content: '-';
  font-weight: 700;
  display: inline-block;
  margin-right: .1em;
}
#contents.result .title2 {
  font-size: 32px;
  line-height: 150%; /* 48px */
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  padding: 16px;
}
.device-sp #contents.result .title2 {
  font-size: min(6.2vw, 24px);
  line-height: 150%; /* 36px */
  padding: 8px;
  text-align: center;
}
#contents.result .title2 img {
  width: 50px;
}