html{
  font-size: 62.5%;
}
body {
  color: #333;
  font-family:'メイリオ', 'Meiryo', sans-serif;
  font-size: 1.6rem;
  letter-spacing: .05em;
  margin: 0;
}
*,
*:after,
*:before {
  box-sizing: border-box;
}
a:link {
  text-decoration: none;
}
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}
a:active {
  text-decoration: none;
}

a:active:not([class]),a:not([class]){
  color: #551a8b;
}

a {
  cursor: pointer;
}
li{
    list-style: none;
}
ul{
  padding: 0;
  list-style: none;
}
ol{
  padding: 0;
}
img:not(.header-diff-img) {
  width: 100%;
  height: auto;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
li,
th,
td,
dt,
dd {
  line-height: 1.5;
  margin: 0;
  padding: 0;
  font-size: 1em;
}
.section-limited-width{
  width: 1024px;
  margin: 30px auto 1rem;
}
.d-flex{
  display: flex!important;
}
.j-center {
  justify-content: center;
}
.w-100{
  width: 100%!important;
}
.w-90{
    width: 90%!important;
}
.pc-content{
    display: block!important;
}
.sp-content{
    display: none!important;
}
.w-60{
  width: 60%!important;
}
.m-0{
    margin: 0!important;
}
.t-center{
  text-align: center!important;
}
.t-right{
  text-align: right!important;
}
.color-white{
  color: #fff;
}
.color-blue{
  color: #5178A8;
}
.decoration-none{
  text-decoration: none;
}
.text-bold{
  font-weight: bold;
}
.color-red{
  color: red;
}
.clearfix::after {
  display: block;
  clear: both;
  content: '';
}
.clear {
  clear: both;
}
/*fadeinアニメーション*/
.js-fadein[data-visibility="false"]{
  opacity: 0;
  transform: translate(0, 5%);
}
.js-fadein[data-visibility="true"]{
  opacity: 1;
  transform: translate(0, 0);
  transition: .5s;
}
/*文字サイズ*/
.title-txt{
  font-size: 3.0rem;
}
.normal-txt{
  font-size: 1.6rem;
}
.big-txt{
  font-size: 2.4rem;
}
.small-txt{
  font-size: 1.2rem;
}
.note-txt{
  font-size: 0.8rem;
}
.bigger-txt{
  font-size: 1.25em;
}
.marker-txt{
  background:linear-gradient(transparent 60%, #ff6 60%);
  display: inline-block;
}
.bold-txt{
  font-weight: bold!important;
}
.sns-item {
  display: flex;
  margin-top: calc(40px + 40px);
  margin-top: 40px;
  justify-content: center;
}
.sns-item a {
  margin-right: 20px;
}
.sns-item a:last-of-type {
  margin-right: 0;
}
.sns-item img {
  width: 11vw;
}
#footer {
  margin-top: 40px;
  padding-bottom: 130px;
}
.sp-header{
    display: none;
}
.wrapper {
  width: 1024px;
  margin: 0 auto;
}
.gray-overlay{
  position: relative;
}
.gray-overlay::after {
  width: 100%;
  background-color: #b5b5b5;
  opacity: .8;
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  cursor: default;
}
.gray-txt{
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
  width: 100%;
  text-align: center;
}
.responsive-banner {
    max-width: 728px;
    margin: 3vh auto;
}
@media screen and (max-width:1024px){
  .wrapper{
    width: 100%;
  }
  .section-limited-width{
    width: 100%;
    margin: 0 auto 0rem;
  }
}
@media screen and (max-width: 1000px){
.sp-header{
  display: block;
}
.pc-header{
  display: none;
}
}
@media screen and (max-width: 767px){
.pc-content{
    display: none!important;
}
.sp-content{
    display: block!important;
}
.responsive-banner {
    width: 100%;
    max-width: 300px;
    margin: 3vh auto;
}
}
@media screen and (max-width: 559px){
html{
    font-size: 58%;
}
}
@media screen and (max-width: 320px){
html{
  font-size: 55%;
}
}


/*infeed*/
.infeed-container{
    padding: 0 1rem;
}
.infeed-banner{
    border: solid 1px #949494;
    margin: 0 0 1vh;
    padding: .5rem;
    position: relative;
}
.infeed-read-more{
  position: absolute;
  right: 0;
  bottom: 0;
  text-decoration: underline;
  color: #000;
}
.infeed-banner-inner{
    display: flex!important;
    align-items: center;
}
.infeed-text-color{
    color: #313131;
}
.infeed-title{
    font-weight: bold;
    line-height: 1.2;
}
.infeed-event{
    font-size: 1rem;
    color: #949494;
}
.infeed-text{
    font-size: 1.2rem;
    color: #717171;
}
.hantei-sys-infeed-img.hantei-sys-infeed-img{
    width: 80px;
}
.infeed-content{
    display: flex;
    align-items: center;
    width: 100%;
    flex: 1;
}
.infeed-text-container{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: auto;
    margin-left: 1rem;
    flex: 3;
}
.infeed-button{
    background-color: #ef8028;
    color: #fff;
    text-align: center;
    border-radius: 3px;
    width: 80%;
}
.infeed-button-container{
    height: 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
    flex: 1;
}
.criteo-banner{
    position: relative;
    height: 230px;
}
.criteo-banner-column{
    display: flex;
    flex-direction: column;
}
.criteo-banner-content{
  transition: .75s opacity;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 98%;
  height: 100%;
}
.criteo-banner-content[data-type="criteo"][data-condition="surface"]{
  opacity: 1;
  z-index: 1;
}
.criteo-banner-content[data-type="criteo"][data-condition="back"]{
  opacity: 0;
  z-index: 0;
}
.side-button{
  position: fixed;
  right: 0;
  bottom: 10px;
  transition: .2s transform ease-in;
  width: 300px;
  background: #fff;
  box-shadow: 0 0 3px 0px #565656;
}
.side-button-txt{
  text-align: center;
  color: #000;
  text-decoration: none;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
}
.side-button-img{
  width: 90%;
  margin: 0 auto;
  display: block;
}
.side-button[data-visible="false"]{
  transform: translate(100%, 0)
}
.side-button[data-visible="true"]{
  transform: translate(0, 0)
}
#close-button {
  position: absolute;
  top: 0;
  right: 4px;
}
@media screen and (max-width: 1024px) {
.infeed-text-container {
  height: 100px;
}
.infeed-title {
  font-size: 1.2rem;
}
.infeed-text {
  font-size: 1rem;
}
}
@media screen and (max-width: 767px){
.infeed-banner[data-type="criteo"]{
  position: relative;
  height: 220px;
}
.sp-criteo-banner-content{
  transition: .75s opacity;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 98%;
}
.sp-criteo-banner-content[data-type="criteo"][data-condition="surface"]{
  opacity: 1;
  z-index: 1;
}
.sp-criteo-banner-content[data-type="criteo"][data-condition="back"]{
  opacity: 0;
  z-index: 0;
}
.infeed-text{
    display: none;
}
.hantei-sys-infeed-img.hantei-sys-infeed-img{
    width: 60px;
}
.infeed-text-container{
    height: 60px;
}
.sp-infeed-big{
    flex-direction: column;
    height: 215px;
}
.sp-infeed-big .infeed-img-container{
    margin-bottom: .5rem;
    height: 150px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sp-infeed-big .hantei-sys-infeed-img.hantei-sys-infeed-img{
    width: 100%
}
.infeed-button-container{
    height: 20px;
}
}
@media screen and (max-width: 320px){
.infeed-title{
    font-size: 1.4rem;
}
}

@media all and (-ms-high-contrast: none) {
.infeed-banner-rectangle-ie{
  height: 240px;
}
}

/*ユーザー別ボタン*/
.hantei-sys-fixed-banner {
  position: fixed;
  bottom: 0;
  z-index: 10000;
  background-color: rgba(255,255,255,.8);
  transform: translate(-50%, 0);
  opacity: 1;
  transition: 1s;
  left: 50%;
  width: 900px;
}
.hantei-sys-fixed-banner[data-visibility = "false"] {
  visibility: hidden;
  height: 0;
  transform: translate(-50%, 5%);
  opacity: 0;
}
.fixed-banner-txt {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.red-txt {
  color: #f00;
}
.js-fadein-cnt-after {
  transition: 0s;
}

.close-btn {
  position: absolute;
  top: 0;
  right: .5rem;
  line-height: 1;
  color: #000;
  font-weight: bold;
  font-size: 2.2rem;
}

@media screen and (max-width: 1200px){
  .hantei-sys-fixed-banner {
    width: 75%;
    min-width: 767px;
  }
}

@media screen and (max-width: 767px){
  .hantei-sys-fixed-banner {
    width: 100%;
    min-width: auto;
  }
}