@charset "utf-8";
html {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-size: 500%;
}

body::before {
	display: block;
	height: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}
/*
@media ( min-width : 450px ) {
html {
	font-size: 375%;
}
body::before {
	content: 'sp-m';
}
}
@media ( min-width : 600px ) {
html {
	font-size: 500%;
}
body::before {
	content: 'sp-l';
}
}

@media ( min-width : 750px ) {
html {
	font-size: 625%;
}
body::before {
	content: 'tab';
}
}
*/
@media ( min-width : 1000px ) {
html {
	font-size: 500%;
}
body::before {
	content: 'pc-s';
}
}
@media ( min-width : 1680px ) {
html {
	font-size: 625%;
}
body::before {
	content: 'pc-m';
}
}
/*
@font-face {
font-family: 'NotoSans';
src:	url('../font/NotoSansCJKjp-Medium.woff') format('woff'),
url('../font/NotoSansCJKjp-Medium.ttf') format('truetype');
font-weight: normal;
}
@font-face {
font-family: 'NotoSans';
src:	url('../font/NotoSansCJKjp-Medium.woff') format('woff'),
url('../font/NotoSansCJKjp-Medium.ttf') format('truetype');
font-weight: bold;
}
*/
@font-face {
   font-family: 'Noto Sans Japanese';
   font-style: normal;
   font-weight: normal;
   src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),
        url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),
        url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
 }
body {
	font-family:"Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo ,sans-serif;
	min-width: 320px;
	font-size: 0.18rem;
	line-height: 1.5;
	background-color: #fff;
	color: #4e4349;
	font-weight: 500;
}
a {
	color: #ff52af;
}
a:hover {
	color: #ff52af;
	text-decoration: none;
}
img {
	vertical-align: top;
	max-width: 100%;
}
.dev-footer-code {
	height: 0;
	overflow: hidden;
}
#bnfooter{
  position: relative;
  z-index: 1;
}
/* ---------------------------------------------------------
OnetTrust
--------------------------------------------------------- */
#onetrust-banner-sdk {
    font-family: "noto-sans-cjk-jp", sans-serif;
    padding: 0.2rem 0.3rem;
  }
  @media (max-width: 480px) {
    #onetrust-banner-sdk {
      padding: 1.2rem 0.4rem 0.4rem 0.4rem;
    }
  }
#onetrust-pc-sdk{
    font-family: "noto-sans-cjk-jp", sans-serif;
}
  #onetrust-banner-sdk * {
    float: inherit !important;
    margin: 0 !important;
    overflow-wrap: break-word !important;
    padding: 0 !important;
    word-break: break-word !important;
  }
  #onetrust-banner-sdk *::after {
    display: none !important;
  }
  #onetrust-banner-sdk .ot-sdk-container {
    width: 100% !important;
  }
  @media (min-width: 901px) {
    #onetrust-banner-sdk .ot-sdk-container {
      max-width: 90% !important;
    }
  }
  @media (min-width: 481px) and (max-width: 900px) {
    #onetrust-banner-sdk .ot-sdk-container {
      max-width: calc(100% - 0.4rem) !important;
    }
  }
  #onetrust-banner-sdk .ot-sdk-row {
    align-items: center;
    display: grid !important;
    gap: 0.2rem;
    grid-template-columns: auto 3.2rem;
  }
  @media (max-width: 1200px) {
    #onetrust-banner-sdk .ot-sdk-row {
      grid-template-columns: auto 2.08rem;
    }
  }
  @media (max-width: 900px) {
    #onetrust-banner-sdk .ot-sdk-row {
      gap: 0.4rem;
      grid-template-columns: 1fr;
    }
  }
  #onetrust-banner-sdk #onetrust-group-container {
    width: 100% !important;
  }
  #onetrust-banner-sdk #onetrust-policy {
    overflow: inherit !important;
  }
  @media (min-width: 1281px) {
    #onetrust-banner-sdk #onetrust-policy {
      max-width: 85%;
    }
  }
  #onetrust-banner-sdk #onetrust-policy-text a {
    margin-left: 0.05rem !important;
  }
  #onetrust-banner-sdk #onetrust-button-group-parent {
    margin: auto !important;
    padding: 0 !important;
    position: inherit !important;
    transform: none !important;
    width: 100% !important;
  }
  @media (min-width: 481px) {
    #onetrust-banner-sdk #onetrust-button-group-parent {
      max-width: -webkit-fit-content;
      max-width: -moz-fit-content;
      max-width: fit-content;
    }
  }
  #onetrust-banner-sdk #onetrust-button-group {
    display: grid !important;
    gap: 0.1rem 0.2rem;
    grid-template-columns: repeat(2, auto);
  }
  @media (min-width: 901px) and (max-width: 1200px) {
    #onetrust-banner-sdk #onetrust-button-group {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width: 480px) {
    #onetrust-banner-sdk #onetrust-button-group {
      grid-template-columns: 1fr;
    }
  }
  #onetrust-banner-sdk #onetrust-pc-btn-handler,
  #onetrust-banner-sdk #onetrust-accept-btn-handler {
    min-width: fit-content !important;
    padding: 0.12rem !important;
    white-space: nowrap !important;
  }
  

  #onetrust-banner-sdk #onetrust-close-btn-container {
    height: 44px;
    margin: auto !important;
    position: absolute;
    right: 0.1rem !important;
    transform: none !important;
    width: 44px;
  }
  @media (min-width: 901px) {
    #onetrust-banner-sdk #onetrust-close-btn-container {
      bottom: 0;
      top: 0 !important;
    }
  }
  @media (max-width: 900px) {
    #onetrust-banner-sdk #onetrust-close-btn-container {
      top: 0.1rem !important;
    }
  }
  #onetrust-banner-sdk #onetrust-close-btn-container button {
    height: 100% !important;
    right: 0 !important;
    top: 0 !important;
    width: 100% !important;
  }