@charset "UTF-8";
/*
Theme Name: aaa
*/

/*
#272727 rgba(39,39,39,1.0)
#dfdfdf rgba(223,223,223,1.0)
#f42da9 rgba(244,45,169,1.0)
*/

/* common
---------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;}
table{border-collapse:collapse;border-spacing:0;}
img{vertical-align:bottom;border:0 none;font-size:62.5%;width:100%;height:auto;}
ul,ol,li{list-style:none;}
strong{font-weight:650;color:inherit;}
em{font-style:normal;font-weight:650;color:inherit;}

/* HTML5 */
header,section,footer,aside,nav,article,figure,figcaption{margin:0;padding:0;display:block;}
canvas{display:block;vertical-align:bottom;}
/* IE8+, Chrome */
input,button{outline:0;}
/* Firefox */
input::-moz-focus-inner,button::-moz-focus-inner{border:0;}


/* base */
html{
  width:100%;
  background:#fff;
  font-size:62.5%;
  line-height:1.0;
  -webkit-tap-highlight-color:rgba(39,39,39,0.1);
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
  -webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x: hidden !important;
  scroll-behavior: smooth;
}
body{
  font-size:18.6px;
  font-size:1.86rem;
  letter-spacing: 0.085em;
  line-height: 2.0;
  font-family: "Noto Sans JP",sans-serif;
  font-weight: 400;
  font-style: normal;
  font-optical-sizing: auto;
  font-feature-settings:"palt" 1;
  box-sizing:border-box;
  color:#272727;
  position: relative;
}
::selection{background:rgba(39,39,39,0.1);}
::-moz-selection{background:rgba(39,39,39,0.1);}
@media (max-width:1280px){

}
@media (max-width:960px){
body{
  font-size:15.6px;
  font-size:1.56rem;
}
}
@media (max-width:768px){
body{
  font-size:14.6px;
  font-size:1.46rem;
  line-height:1.6;
}
}
@media (max-width:480px){

}

/* link */
a{color:inherit;text-decoration:none;outline:none;
  -webkit-transition:all 0.2s ease-out 0s;
  transition:all 0.2s ease-out 0s;
}
a:hover{color:inherit;opacity:0.8;text-decoration:none !important;}
.a{display:inline-block;position:relative;line-height:1.4;padding-left:1px;padding-right:1px;}
.a:after{position:absolute;bottom:0;left:0;content:"";display:inline-block;width:100%;height:1px;border-bottom:dashed 1px currentColor;opacity:0.6;
}
.target{pointer-events:none;opacity:0.68;}
a.target:after{border-bottom:none!important;}
.arr{display: inline-block;}
.arr:before{
  content:"";
  display:inline-block;
  width:0.5em;
  height:0.5em;
  border-top:solid 1px currentColor;
  border-right:solid 1px currentColor;
  transform: rotate(45deg);
  opacity: 0.8;
  line-height: 1.0;
  margin-right:0.8em;
}

.font01{font-family:"Shippori Antique",sans-serif;font-weight:400;font-style:normal;letter-spacing:0.085em;}
.font02{font-family:"Josefin Sans",sans-serif;font-weight:500;font-style:normal;letter-spacing:0.02em;text-transform:capitalize;}
.cf:before,.cf:after{content:"";display:table;}
.cf:after{clear:both;}
.cf{*zoom:1;}
.fl{float:left !important;}
.fr{float:right !important;}
.cb{clear:both !important;}
.tc{text-align:center !important;}
.tr{text-align:right !important;}
.tl{text-align:left !important;}
.ib{display:inline-block;}
br{height:0;width:0;line-height:0;}
.nobr{display:none;}
.mt0{margin-top:0 !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mt30{margin-top:30px !important;}
.mt40{margin-top:40px !important;}
.mt50{margin-top:50px !important;}
.mt60{margin-top:60px !important;}
.mt70{margin-top:70px !important;}
.mt80{margin-top:80px !important;}
.mt90{margin-top:90px !important;}
.mt100{margin-top:100px !important;}
.mt120{margin-top:120px !important;}
.mt150{margin-top:150px !important;}
.mb0{margin-bottom:0 !important;}
.pt0{padding-top:0 !important;}
.pb0{padding-bottom:0 !important;}
/*.pt80{padding-top:80px !important;}*/
@media (max-width:1280px){
br.br1280{display:block;}
.nobr1280{display:none;}
}
@media (max-width:960px){
img{max-width:100%;}
br.br960{display:block;}
.nobr960{display:none;}
.mt70{margin-top:60px !important;}
.mt80{margin-top:60px !important;}
.mt90{margin-top:60px !important;}
.mt100{margin-top:60px !important;}
.mt120{margin-top:60px !important;}
}
@media (max-width:768px){
br.br768{display:block;}
.nobr768{display:none;}
}
@media (max-width:600px){
br.br600{display:block;}
.nobr600{display:none;}
}
@media (max-width:480px){
br.br480{display:block;}
.nobr480{display:none;}
}

.w{
  overflow: hidden;
}
.main{

}
.inner{
  width:92%;
  max-width: 1280px;
  margin:0 auto;
  padding:40px 0 60px;
}
.max1280{
  max-width: 1280px;
  margin:0 auto;
}
.max1100{
  max-width: 1100px;
  margin:0 auto;
}
.max880{
  max-width: 880px;
  margin:0 auto;
}
.max680{
  max-width: 680px;
  margin:0 auto;
}
.main .inner img{
  max-width: 100%; 
  height: auto;
}
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {
.main {
  min-height: 100vh;
}
.max680{
  max-width: 80%;
  margin:0 auto;
}
}
@media (max-width:600px) {
.main .inner img{
  width: 100%; 
  height: auto;
}
}
@media (max-width:480px) {

}


#header_w{
  position: fixed;
  right: 0;
  top:0;
  z-index: 5;
}
#header01{
  text-align: right;
  margin-top: 0.1em;
  margin-right: 0.6em;
}
.mnav_logo{
  width: 10em;
}
.mnav_logo a{
  padding: 0.3em 0.8em;
  display: block;
}
.mnav01{
  font-size: 90%;
}
.mnav01_li{
  margin-bottom: 0.36em;
}
.mnav01_a{
  padding:0.6em 1em 0.4em;
  font-weight: 600;
  opacity: 1!important;
  position: relative;
  -webkit-transition:all 0.2s ease-out 0s;
  transition:all 0.2s ease-out 0s;
  background: rgba(255,255,255,0.36);
  backdrop-filter: blur(0.1em);
}
.mnav01_a:after{
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  transform: translate(-40%,-20%);
  content: "";
  display: block;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  background: #dfdfdf;
}
.mnav01_a:hover{
  padding:0.5em 1.3em 0.5em 1em;
}
.mnav01_a:hover:after{
  background: #f42da9;
}
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {

}
@media (max-width:600px) {
#header_w {
  position: relative;
}
#header01 {
  text-align: center;
}
.mnav_logo {
  margin: 0 auto;
  text-align: center;
  width: 10em;
}
.mnav01 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1em 4vw 3em;
}
}
@media (max-width:480px) {

}


.breadcrumb_w{
  font-size: 60%;
  text-align: right;
  padding:0.3em 2vw 0;
  margin:0.3em 0 0 auto;
  width: fit-content;
}
.breadcrumb_w ul{
  line-height: 2.0em;
}
.breadcrumb_w li{
  display: inline-block;
}
.breadcrumb_w li a{
  margin:0 0.6em;
  display: inline-block;
}
.breadcrumb_w li a:after{
  content: "";
  display: block;
  width: 100%;
  height: 0;
  border-bottom: dashed 1px currentColor;
  opacity: 0.6;
}
.breadcrumb_w li:last-child a{
  font-weight: 700;
  pointer-events: none;
  opacity: 0.86;
}
.breadcrumb_w li:last-child a:after{
  border-bottom:none;
}
@media (max-width:1280px) {

}
@media (max-width:960px) {
.breadcrumb_w {
  margin: 80px auto -50px;
  width: 92vw;
}
.miraizu_w .breadcrumb_w {
  margin: 20px auto 0;
}
}
@media (max-width:768px) {

}
@media (max-width:600px) {

}
@media (max-width:480px) {

}


.main .h2_ttl{
  line-height: 1.0;
  margin: 3em auto 3em 0;
  position: relative;
  z-index: 3;
}
.main .h2_ttl_en{
  display: block;
  font-size: 360%;
  letter-spacing: 0;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.0;
  white-space: nowrap;
}
.main .h3_ttl{
  position: relative;
  line-height: 1.0;
  margin: 5em auto 3em 0;
  width: fit-content;
}
/*.main .h3_ttl_jp{
  display: inline-block;
  font-size: 170%;
  letter-spacing: 0.1em;
  font-weight: 500;
  line-height: 1.0;
  padding: 0 0.5em 0.7em 1em;
  position: relative;
}
.main .h3_ttl_jp:after{
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0.6em;
  width: 12em;
  height: 1px;
  background: rgba(0,0,0,0.5);
  transform: translateX(100%);
}
.main .h3_ttl_en{
  display: block;
  font-size: 480%;
  letter-spacing: 0;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.0;
  white-space: nowrap;
  opacity: 0.06;
  position: absolute;
  left: 0;
  bottom: 0;
}
.main .h4_ttl{
  font-size: 146%;
  font-weight: 600;
  letter-spacing: 0.05em;
}*/
.main .catch01{
  font-size: 120%;
  font-weight: 500;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 0.16em;
}
.main .inner p+p{
  margin-top: 1em;
}
.main .s01{
  font-size: 54%;
  opacity: 0.68;
}
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {
.main .h2_ttl {
  padding: 0 2vw;
}
}
@media (max-width:600px) {

}
@media (max-width:480px) {

}

.main .area_w{
  display: -webkit-flex;
  display: flex;
  align-items:flex-start;
  justify-content:space-between;
  width: 100%;
}
.main .l_area{
  width:47%;
  order: 1;
}
.main .r_area{
  width:47%;
  order: 2;
}
.main .ol01 li{
  margin: 0 0 0 1.1em;
  text-indent: -1.1em;
  line-height: 1.74;
}
.main .ol01 li .font01{
  font-size: 110%;
  font-weight: bold;
}
.main .dl01 dt{
  font-size: 110%;
  font-weight: bold;
  margin: 1.9em 0 0.3em;
}
.main .dl01 dd{
  line-height: 1.74;
}
.main .dl01 dd+dd{
  margin-top: 0.7em;
}
.table_w{
  max-width: 1100px;
  width: 100%;
  /*overflow-x: auto;*/
  border-right:dashed 1px rgba(29,49,58,0.6);
  position: relative;
  padding-top:1.3em;
  overflow-x:scroll;
}
.table_w:after{
  position: absolute;
  top:0;
  left:0;
  z-index: 2;
  display: inline-block;
  background: rgba(29,49,58,0.4);
  line-height: 1.0;
  padding:0.4em 1.3em 0.3em 2em;
  color:rgba(255,255,255,1);
  content:"SCROOL >>";
  font-size: 70%;
  font-family: Poppins,sans-serif;
  font-weight: bold;
  letter-spacing: 0.05em;
  border-radius: 2px 2px 0 0;
}
@media (min-width:1196px) {
.table_w.w1100{
  overflow-x:visible;
  border-right:none;
}
.table_w.w1100:after{
  display: none;
}
}
@media (max-width:1195px) {
.table_w.w1100{
  overflow-x:scroll;
  border-right:dashed 1px rgba(29,49,58,0.6);
}
.table_w.w1100:after{
  display: inline-block;
}
/*.table_w.w1100 table{
  width: 100%;
}*/
}
@media (min-width:870px) {
.table_w.w800{
  overflow-x:visible;
  border-right:none;
}
.table_w.w800:after{
  display: none;
}
.table_w.w800 table{
  width: 100%;
}
}
@media (max-width:869px) {
.table_w.w800{
  overflow-x:scroll;
  border-right:dashed 1px rgba(29,49,58,0.6);
}
.table_w.w800:after{
  display: inline-block;
}
.table_w.w800 table{
  width: 800px;
}
}
.table01{
  border-collapse:collapse;
  min-width: 100%;
  line-height: 1.46;
  font-size: 0.9em;
}
.table01 .th01{
  padding: 1.3em 2em 1.0em;
  border-bottom:solid 1px #dfdfdf;
  /*min-width: 150px;
  width: 30%;*/
  box-sizing: border-box;
  font-weight: 600;
  vertical-align: middle;
}
.table01 tr:first-child .th01{
  border-top:solid 1px #dfdfdf;
}
.table01 .th01.va_mdl{
  vertical-align: middle;
}
.table01 .td01{
  padding: 1.35em 1em 1.0em;
  border-bottom:solid 1px #dfdfdf;
  box-sizing: border-box;
  font-size: 90%;
}
.table01 tr:first-child .td01{
  border-top:solid 1px #dfdfdf;
}
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {

}
@media (max-width:600px) {
.main .h2_ttl{
  margin: 3em auto 2.4em 0;
}
.table01{
  display: block;
}
.table01 thead,
.table01 tbody,
.table01 tr{
  display: block;
}
.table01 .th01{
  display: block;
  width: 100% !important;
  text-align: center;
  border-bottom: dashed 1px #dfdfdf;
  padding: 0.75em 1em 0.5em;
  background: rgba(223,223,223,0.21);
}
.table01 tr:first-child .td01 {
  border-top: none;
}
.table01 .td01{
  display: block;
  width: 100% !important;
  padding: 1.35em 4vw 1.0em;
  text-align: center;
}
}
@media (max-width:480px) {

}


/* btn */
.btns01{
  margin: 2em 1em;
  display: flex;
  justify-content: flex-end;
}
.btn01{
  width: fit-content;
}
.btn01_a{
  display: flex;
  align-items: center;
  width: fit-content;
}
.btn01_en{
  display: inline-block;
  transform: scaleX(1.18);
  transform-origin: right bottom;
  letter-spacing: 0;
  font-size: 160%;
  color: rgba(0,0,0,0.68);
  margin-left: 2.4em;
}
.btn01_arr{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3em;
  height: 3em;
  background: rgba(0,0,0,0.68);
  color: rgba(255,255,255,0.86);
  text-align: center;
  border-radius: 50%;
  margin-left: 1em;
}
.btn01_arr i{
  font-size: 120%;
}
.arrow01{
  box-sizing: border-box;
  line-height: 1.1;
  text-align: center;
  font-size: 50%;
  color: #272727;
  font-weight: 500;
  letter-spacing: 0.07em;
}
.arrow01 a{
  display: block;
  text-align: right;
  font-size: 170%;
  font-weight: 650;
}
.arrow01 img{
  width: 4.2em;
  vertical-align: middle;
  padding-left: 1.2em;
}
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {

}
@media (max-width:600px) {

}
@media (max-width:480px) {

}


#footer_w{
  position: relative;
  width: 100%;
  max-width: 100vw;
  height: 17em;
  /*background: rgba(39,39,39,0.96);*/
  color: rgba(255,255,255,0.86);
}
#footer_w:before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(39,39,39,0.96);
  position: relative;
  z-index: -1;
}
#footer01_w{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.footer01{
  padding: 10em 2vw 0 2vw;
  width: 100%;
  box-sizing: border-box;
}
.footer01_bg{
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-6%,0);
  width: 28vw;
  height: 20em;
  overflow: hidden;
  /*height: 35vw;*/
}
.fnav_logo{
  margin-left: auto;
  margin-right: 0.1em;
  width: 7em;
}
.fnav_logo a{
  padding: 0.2em 0.6em;
  display: block;
  background: #000;
}
.copyright{
  font-size: 60%;
  text-align: right;
  margin-top: 2.4em;
  opacity: 0.68;
}
.pagetop{
  box-sizing: border-box;
  line-height: 1.1;
  text-align: center;
  font-size: 50%;
  color: #272727;
  position: absolute;
  right: 3vw;
  top: 0;
  transform: translate(0,-110%);
  font-weight: 500;
  letter-spacing: 0.07em;
}
.pagetop a{
  display: block;
  width: 4.2em;
  text-align: center;
}
.pagetop img{
  padding-top: 0.6em;
  transform: rotate(180deg);
}
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {

}
@media (max-width:600px) {
.footer01 {
  padding: 10em 4vw 0 4vw;
}
.footer01_bg{
  transform: translate(-6%,0);
  width: 42vw;
  /*height: 20em;*/
}
.footer01_bg img{
  position: absolute;
  bottom: 0;
}
}
@media (max-width:480px) {

}


