@charset "UTF-8";

@media screen and (min-width: 750px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 749px) {
  .pc {
    display: none !important;
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
  border: 0;
  list-style: none;
  vertical-align: baseline;
  text-decoration: none;
  font: inherit;
  -webkit-tap-highlight-color: transparent;
}

html {
  -webkit-overflow-scrolling: touch;
  height: 100%;
  /*font-size: 62.5% !important;*/
  font-size: 62.5%;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
body {
  overflow-x: hidden;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  /*color: #000;*/
  color: #212121;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.87;
}
body.active {
  overflow-y: scroll;
}
@media screen and (min-width: 750px) {
  body {
    background: url(../img/pc_back.svg) repeat center center fixed;
    background-size: 30px;
  }
}

div, main, section {
  position: relative;
  display: block;
}

*:focus {
  outline: none;
}

p {
  font-size: 1.4rem;
  line-height: 2.0;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 600;
}
p.bold {
  font-weight: bold;
}
p.mid {
  font-size: 1.4rem;
}
ruby {
  letter-spacing: 0;
}
ruby rt {
  font-size: 0.8rem;
  transform: translateY(2px) scale(0.8);
  letter-spacing: -0.10rem;
}
::-webkit-full-page-media, :future, :root ruby rt {
  position: absolute;
  font-size: 0.8rem;
  /* transform: translateY(2px) scale(0.8); */
  letter-spacing: -0.10rem;
}
img {
  width: 100%;
}
a {
  text-decoration: none;
  -webkit-transition-duration: 0.35s;
  -moz-transition-duration: 0.35s;
  -ms-transition-duration: 0.35s;
  -o-transition-duration: 0.35s;
  transition-duration: 0.35s;
}
a:hover {
	opacity:0.7;
  filter: alpha(opacity=70);
  -moz-opacity:0.7;
}
h1, h2, h3, h4, h5 {
  font-weight: 700;
}

/*common*/

/* 画面外にいる状態 */
.fadeinLeft {
  opacity:0.0;
  filter: alpha(opacity=0);
  transition : all 500ms;
  -webkit-transform : translate(-50px, 0);
  -moz-transform : translate(-50px, 0);
  -ms-transform : translate(-50px, 0);
  -o-transform : translate(-50px, 0);
  transform : translate(-50px, 0);
  -moz-opacity:0.0;
}
.fadeinRight {
  opacity:0.0;
  filter: alpha(opacity=0);
  transition : all 500ms;
  -webkit-transform : translate(50px, 0);
  -moz-transform : translate(50px, 0);
  -ms-transform : translate(50px, 0);
  -o-transform : translate(50px, 0);
  transform : translate(50px, 0);
  -moz-opacity:0.0;
}
.fadeinBottom {
  opacity:0.0;
  filter: alpha(opacity=0);
  transition : all 500ms;
  -webkit-transform : translate(0, 50px);
  -moz-transform : translate(0, 50px);
  -ms-transform : translate(0, 50px);
  -o-transform : translate(0, 50px);
  transform : translate(0, 50px);
  -moz-opacity:0.0;
}

/* 画面内に入った状態 */
.fadeinLeft.scrollin, .fadeinRight.scrollin, .fadeinBottom.scrollin {
  opacity:1.0;
  filter: alpha(opacity=100);
  -webkit-transform : translate(0, 0);
  -moz-transform : translate(0, 0);
  -ms-transform : translate(0, 0);
  -o-transform : translate(0, 0);
  transform : translate(0, 0);
  -moz-opacity:1.0;
}

/* Loading　------------------------------------------------------------*/
#splash {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100lvw;
  height: 100lvh;
  background: url(../img/img_header_back.gif) repeat center center;
  -webkit-transition-duration: 0.5s;
  -moz-transition-duration: 0.5s;
  -ms-transition-duration: 0.5s;
  -o-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
#splash.active {
  top: -100lvh;
}
#splash img {
  position: absolute;
  transform: translate(-50%,-50%) rotate(0deg);
  top: 50%;
  left: 50%;
  display: block;
  width: 20rem;
  animation: op 2s infinite linear;
}
@keyframes op {
  0% {
    transform: translate(-50%,-50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%,-50%) rotate(359deg);
  }
}

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


/*------------------------------------------------------------*/
/*
#content {
  display: block;
  overflow-x: hidden;
  width: 100%;
  max-width: 750px;
  min-height: 80lvh;
  margin: 0 auto;
  padding: 0;
  background-color: #fff;
}
*/

#content {
  display: block;
  overflow-x: hidden;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  background-color: #fff;
}

/*
@media screen and (min-width: 750px) {
  #content {
    width: 100%;
    max-width: 750px;
    box-shadow: 0 -10px 10px rgba(0,0,0,0.5);
  }
}
*/

@media screen and (min-width: 750px) {
  #content {
    width: 100%;
    max-width: 750px;
    box-shadow: 0 -10px 10px rgba(0,0,0,0.5);
  }
}

/*------------------------------------------------------------*/
/*header*/
/*
header {
  position: relative;
  background: url(../img/img_header_back.gif) repeat center center;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
}
header p img {
  width: 30%;
  min-width: 128px;
}
*/

header {
  position: relative;
  background: url(../img/img_header_back.gif) repeat center center;
  text-align: center;
  color: #fff;
  font-size: 1rem;
  height:6.8rem;
}
header p img {
  width: 30%;
}

header p{
  font-size: 1rem;
}

.select_lang{
  width:9rem;
  height:2.9rem;
  background-color: #fff;
  border:solid 0.2rem #ff0000;
  border-radius: 1.45rem;
  position:absolute;
  right:1.1rem;
  top:2.2rem;
  background-image: url(../img/icon_select_lang.svg);
  background-repeat:no-repeat;
  background-size:1.7rem 1.7rem;
  background-position:0.4rem 0.4rem;
  font-size: 1.5rem;
  line-height:2.5rem;
  color:#000;
  text-align: right;
  padding-right:0.9rem;
  font-weight: 400;
}

.select_lang a:link, .select_lang a:visited {
  color:#000;
}

.select_lang a:hover{
    opacity:0.8;
}

 .lang_sep{
  margin-left:0.25em;
  margin-right:0rem;
}

.select_jp .lang_jp{
  font-weight: 700;
  margin-right: 0.25em;
}

.select_en .lang_en{
  font-weight: 700;
  margin-left: 0.25em;
}

/*hero*/
.hero {
  position: relative;  
  background: url(../img/img_hero.png) no-repeat center top 18.1rem;
  background-size: 100%;
  height: calc(42.1rem + 17.9rem);
}


.hero h1 {
  width:87%;
  margin: 0 auto 0;
  padding-top:0.7rem;
}
.hero .object01, .hero .object02 {
  position: absolute;
  /*transform: translate(-50%,-50%) scale(0.1);*/
  transform: scale(0.1);
  opacity: 0;
  transition-duration: 0.35s;
}
.hero .object01 {
   width: 25%;
   top: 0.8rem;
   right: 0.4rem;
}
.hero .object02 {
  width: 18%;
  top:13.1rem;
  left:2.7rem;
}

.hero .object01.active, .hero .object02.active {
  transform: scale(1.0);
  opacity: 1;
  animation: obj 0.5s ease;
}


@keyframes obj {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  40% {
    transform: scale(1.2);
    opacity: 1;
  }
  80% {
    transform: scale(1.0);
    opacity: 1;
  }
 
}

/*
@media screen and (min-width: 750px) {
  .hero {
    background: url(../img/img_hero.png) no-repeat center top 18.1rem;
    background-size: 100%;
    height: calc(42.1rem + 17.9rem);
  }
  .hero .object01 {
    width: 25%;
    top: 0.8rem;
    right: 0.4rem;
  }
  .hero .object02 {
    width: 18%;
    top:13.1rem;
    left:2.7rem;
  }
}
*/

/*------------------------------------------------------------*/
footer {
  background-color: #fffce6;
}
footer p {
  display: block;
  width: 90%;
  margin: 0 auto;
  padding: 20px 0;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
  text-align: center;
}
footer p span {
  display: inline-block;
  margin-top: 10px;
}
/*------------------------------------------------------------*/
#article-end {
  display: block;
  margin-top: -1px;
}

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

.menu{
  height:7.5rem;
  position:relative;
  display: flex;
  justify-content: center;
  column-gap: 0.7rem;
}

.nav01, .nav01::before,.nav01::after,.nav01 div,
.nav02, .nav02::before,.nav02::after,.nav02 div,
.nav03, .nav03::before,.nav03::after,.nav03 div{
  width:13.3rem;
  height:6.6rem;
  border-radius:2rem;
  cursor: pointer;
}
::-webkit-full-page-media, :future, :root .nav01, .nav01::before,.nav01::after,.nav01 div,
.nav02, .nav02::before,.nav02::after,.nav02 div,
.nav03, .nav03::before,.nav03::after,.nav03 div{
  height:auto;
  padding-bottom:2.1rem;
}

.nav01, .nav02, .nav03{
  position:relative;
  top:-4.6rem;
}

.nav01:hover, .nav02:hover, .nav03:hover,
.magic_choices:hover, .magic_answer_watch:hover, .magic_answer_analysis:hover,
.shimadzu_btn:hover, .survival_series_btn:hover, .school_btn:hover{
  opacity:0.8;
}

.nav01::after, .nav02::after, .nav03::after{
  position:absolute;
  content:"";
  left:0;
  top:0.1rem;
  background-color:#fff;
}

.nav01::before, .nav02::before, .nav03::before{
  position:absolute;
  content:"";
  left:0;
  top:0.7rem;
}

.nav01 div, .nav02 div, .nav03 div{
  font-size:1.7rem;
  line-height: 1em;
  font-weight: 700;
  background-image: url(../img/bg_dot.svg);
  background-size:13.3rem 6.3rem;
  position:absolute;
  width:100%;
  height:100%;
  left:0;
  top:0;
  font-feature-settings: "palt";
  color:#fff;
  padding-top:2.5rem;
  z-index:1;
}
::-webkit-full-page-media, :future, :root .nav01 div, .nav02 div{
  height:auto;
  padding-bottom:4.5rem;
}
::-webkit-full-page-media, :future, :root .nav03 div{
  height:auto;
  padding-bottom:3.6rem;
}

.nav_sub_text{
  font-size: 0.9rem;
  line-height: 1em;
  display: block;
  margin-top:0.4rem;
}


.nav01 div{
  background-color:#e8820c;
}

.nav01::before{
  background-color:#cf7d1a;
}

.nav02 div{
  background-color:#08a84e;
}

.nav02::before{
  background-color:#0d8742;
}

.nav03 div{
  background-color:#0c8fe6;
  /*padding-top:0.5rem;*/
  padding-top:2.6rem;
  font-size: 1.3rem;
}
.nav03 div ruby rt {
    font-size: 0.6rem;
    transform: translateY(2px) scale(0.4);
    letter-spacing: -0.10rem;
}

.nav03::before{
  background-color:#3379a6;
}

.nav_arrow{
  position:absolute;
  left:0;
  right:0;
  top:-9.7rem;
  margin-left:auto;
  margin-right:auto;
  width:3.7209rem;
  animation : arrowmove 1.1s infinite ease-out;
}

@keyframes arrowmove {
  0% { top: -10.6rem;}
  50% { top: -9.7rem;}
  100% { top: -10.6rem;}
}

/*------------------------------------------------------------*/
.lead{
  background-color:#f8de00;
  width:auto;
  height:auto;
  background-image: url(../img/lead_back.svg);
  background-size:3.57874rem;
  padding:3.1rem 3.5rem 3.0rem 3.5rem;
  font-size: 1.8rem;
  line-height: 2.8rem;
  font-weight: 500;
  color: #333;
}
/*------------------------------------------------------------*/

.bunsekisekai{
  background-color: #fffce6;
  padding-top:3.5rem;
  padding-bottom:16rem; 
}

.bunsekisekai_heading{
  width:33.4rem;
  margin:0 auto 1rem;
  line-height:0;
  position:relative;
}

.bunsekisekai_heading_ruby_01,
.bunsekisekai_heading_ruby_02,
.bunsekisekai_heading_ruby_03,
.bunsekisekai_heading_ruby_04{
  color:#e60012;
  font-size:1.1rem;
  line-height:1em;
  position:absolute;
  top:-1rem;
  font-weight: 700;
}

.bunsekisekai_heading_ruby_01{
  left:3.7rem;
}

.bunsekisekai_heading_ruby_02{
  left:10.3rem;
}

.bunsekisekai_heading_ruby_03{
  left:17.7rem;
}

.bunsekisekai_heading_ruby_04{
  left:24rem;
}

/*------------------------------------------------------------*/
.slick-prev:hover,
.slick-next:hover{
  opacity: 0.8;
}

.slick-dots {
  margin:0;
  padding: 0;
  text-align: center;
  position:absolute;
  left:0;
  right:0;
  bottom:-9.3rem;
  margin:0 auto;
  z-index: 5;
}

.slick-dots li{
  display: inline-block;
  margin: 0 0.55rem;
  width:1.2rem;
  height:1.2rem;
  border-radius:50%;
  background:#fff;
  border:solid 0.1rem #e60012;
}

.slick-dots li button {
  position: relative;
  text-indent: -9999px;
  cursor:pointer;
}

.slick-dots li.slick-active{
  background:#e60012;
}

.slick-prev{
  position:absolute;
  left:5rem;
  bottom:-9.5rem;
  z-index: 10;
}

.slick-next{
  position:absolute;
  right:5rem;
  bottom:-9.5rem;
  z-index: 10;
}

.slick-prev, .slick-prev::before,.slick-prev::after,.slick-prev div,
.slick-next, .slick-next::before,.slick-next::after,.slick-next div
{
  width:6.2rem;
  height:6.2rem;
  border-radius:1.2rem;
  cursor:pointer;
}

.slick-prev::after, .slick-next::after{
  position:absolute;
  content:"";
  left:0.2rem;
  top:0.2rem;
  background-color:#fff;
}

.slick-prev::before, .slick-next::before{
  position:absolute;
  content:"";
  left:0.7rem;
  top:0.7rem;
  background-color:#db6b74;
}

.slick-prev div, .slick-next div{
  font-size:1.7rem;
  line-height: 1em;
  font-weight: 700;
  background-color:#e60012;
  background-image: url(../img/icon_slider.svg);
  background-size:2.43712rem 3.97358rem;
  background-repeat:no-repeat;
  background-position: 1.6rem, 9.8rem;
  position:absolute;
  width:100%;
  height:100%;
  left:0;
  top:0;
  font-feature-settings: "palt";
  color:#fff;
  padding-top:2.5rem;
  z-index:1;
}

 .slick-next div{
  transform: scaleX(-1);
 }

/*------------------------------------------------------------*/
.quiz{
  padding-top:7.9rem;
  padding-bottom:7.3rem;
  background:url(../img/quiz_deco.svg) repeat-x  top left/2.6rem 1.3rem, 
  url(../img/quiz_deco.svg) repeat-x  bottom left/2.6rem 1.3rem, 
  repeating-linear-gradient(-50deg,#f9d0ba,#f9d0ba 0.08rem,#fce4d6 0,#fce4d6 0.96rem);
}

.quiz_try{
  width:34.61255rem;
  margin:0 auto 5.7rem;
  position: relative;
}

.quiz_try_ruby_01,
.quiz_try_ruby_02{
  color:#e60012;
  font-size:1.1rem;
  line-height:1em;
  position:absolute;
  top:-1.2rem;
  font-weight: 700;
}

.quiz_try_ruby_01{
  left:21rem;
}

.quiz_try_ruby_02{
  left:27.5rem;
}


.magic{
  width:38.7rem;
  background-color: #fff;
  border-radius: 2rem;
  margin:0 auto 13rem;
  padding-bottom: 3.1rem;
}

.magic:nth-last-child(1 of .magic) {
    margin-bottom:0;
}


.quiz_sec_h{
  width:38.7rem;
  height:14rem;
  border-top-left-radius: 2rem;
  border-top-right-radius: 2rem;
  position:relative;
  padding-top:5.5rem;
}
::-webkit-full-page-media, :future, :root .quiz_sec_h {
  height:auto;
  padding-bottom: 2rem;
}

.quiz_sec_h_01{
  background: url(../img/magic_bg_01.png) no-repeat;
  background-size: 38.7rem 14rem;
}

.quiz_sec_h_02{
  background: url(../img/magic_bg_02.png) no-repeat;
  background-size: 38.7rem 14rem;
}

.quiz_sec_h_03{
  background: url(../img/magic_bg_03.png) no-repeat;
  background-size: 38.7rem 14rem;
}

.quiz_sec_h_04{
  background: url(../img/magic_bg_04.png) no-repeat;
  background-size: 38.7rem 14rem;
}

.quiz_sec_h_05{
  background: url(../img/magic_bg_05.png) no-repeat;
  background-size: 38.7rem 14rem;
}

.quiz_sec_h_06{
  background: url(../img/magic_bg_06.png) no-repeat;
  background-size: 38.7rem 14rem;
}
::-webkit-full-page-media, :future, :root .quiz_sec_h_01, .quiz_sec_h_02, .quiz_sec_h_03, .quiz_sec_h_04, .quiz_sec_h_05, .quiz_sec_h_06 {
  background-size: cover;
}

.magic_no{
  width:18.5rem;
  position:absolute;
  left:0;
  right:0;
  top:-5.1rem;
  margin-left:auto;
  margin-right:auto;
}

.magic_title{
  font-size:3.0rem;
  line-height: 1em;
  color:#fff100;
  text-align:center;
  margin-bottom:0.9rem;
  text-shadow: 0.3rem 0.3rem 0.3rem rgba(0,0,0,0.75);
  font-feature-settings: "palt";
}

.tyoutai_01{
  transform: scaleX(76%);
  display:inline-block;
  position: relative;
  left:-4.8rem;
  white-space: nowrap;
}

.tsume_01{
  margin-left:-0.15em;
  margin-right:-0.15em;  
}

.tsume_02{
  margin-left:-0.05em;
  margin-right:-0.05em;  
}

.tsume_03{
  margin-left:-0.15em;
  margin-right:-0.1em;  
}

.magic_title_sub{
  font-size:1.6rem;
  line-height: 1.3em;
  color:#fff;
  text-align:center;
  text-shadow: 0.3rem 0.3rem 0.3rem rgba(0,0,0,0.75);
}

.magic_wrapper{
  width:34.8rem;
  margin:0 auto;
  padding-top:2.7rem;
}

.magic_intro{
  font-size:2.1rem;
  line-height: 3.5rem;
  margin-bottom:2.3rem;
  font-feature-settings: "palt";
}

/*
.text_tracking_01{
  letter-spacing: -0.08em;
}

.text_tracking_02{
  letter-spacing: -0.06em;
}

.text_tracking_03{
  letter-spacing: -0.03em;
}
*/

.magic_image{
  border:solid 1px #b8b8b8;
  margin-bottom:4.7rem;
  line-height: 0;
}

.magic_intro_06_wrapper{
  display: flex;
  justify-content:flex-start;
  column-gap: 2.2rem;
  /*margin-bottom:4.7rem;*/
}

.magic_image_06_02{
  line-height: 0;
  margin-left:auto;
  margin-right:auto;
  width:65%;
  margin-top:2rem;
  margin-bottom:3.7rem;
}

.magic_intro_06{
  width:15.5rem;
  margin-bottom:0;
}

.magic_image_06{
  width:16.8rem;
  border:none;
  margin-top:2.5rem;
  margin-bottom:0;
}

.magic_question{
  display: flex;
  justify-content: center;
  column-gap: 1rem;
  position: relative;
  margin-bottom: 2.1rem;
}

.magic_question_icon{
  width:4.9rem;
  min-width:4.9rem;
  line-height: 0;
}

.magic_question_text{
  font-size: 2.6rem;
  line-height: 3.1rem;
  font-weight:700;
  position:relative;
  /*top:0.8rem;*/
  /*top:0.3rem;*/
  top:0.6rem;
}


/*
.magic_question_06 {
  height:6rem;
  margin-bottom:2.3rem;
}
*/

/*
.magic_question_06 .magic_question_icon{
  position:absolute;
  left:0;
  top:0.6rem; 
}

.magic_question_06 .magic_question_text{
  width:31.3rem;
  white-space:nowrap;
  position:absolute;
  left:5.7rem;
  top:0;
}
*/

.magic_question_text_2lines{
  /*top:-0.6rem;*/
  top:-0.9rem;
}

.magic_choices_area{
    width:100%;
    display: flex;
    flex-direction: column;
    row-gap: 2.4rem;
    /*margin-bottom: 2.7rem;*/
}
::-webkit-full-page-media, :future, :root .magic_choices_area{
  row-gap: 5.4rem;
  margin-bottom: 2.7rem;
}

.magic_choices_area_05{
  margin-top:-0.8rem;
  /*margin-bottom:4.5rem;*/
}

.magic_choices{
  background-color: transparent;
  width:100%;
  height:6.6rem;
  border-radius:2rem;
  position:relative;
  cursor: pointer;
}

.magic_choices::before{
  content: "";
  width:100%;
  height:100%;
  background-color: rgb(0,0,0,0.1);
  border-radius:2rem;
  position:absolute;
  left:0.4rem;
  top:0.4rem;
  z-index:1;
}
::-webkit-full-page-media, :future, :root .magic_choices::before {
  height:auto;
}

.magic_choices div{
  background-color: #00b076;
  width:100%;
  /*height:6.6rem;*/
  height:100%;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0;
  z-index:5;
  color:#fff;
  font-size: 2.2rem;
  line-height:1.2em;
  /*padding-top:0.6rem;*/
   padding-top:2rem;
}
::-webkit-full-page-media, :future, :root .magic_choices div{
  height:auto;
  padding-bottom:2.1rem;
}

.magic_choices_06{
  height:7.6rem;
}

.magic_choices_06 div{
    position: relative;
    padding-top:1.5rem;
    padding-left:1rem;
    padding-right:1rem;
    font-size: 2rem;
}

.magic_choices_06:nth-child(1 of .magic_choices_06)  div{
    padding-top:1.2rem;
}

.magic_choices_2l {
  height:7.6rem;
}

.magic_choices_2l div{
    padding-top:1.6rem;
    padding-left:1.5rem;
    padding-right:1.5rem;
    font-size: 2rem;
}

.magic_answer_area{
  width:100%;
  display:flex;
  /*justify-content: space-between;*/
  flex-direction: column;
  row-gap: 2.5rem;
  margin-bottom:5rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_area{
  row-gap: 5.4rem;
  margin-bottom: 8.7rem;
}

.hint{
  font-size:2rem;
  position:relative;
  top:-0.2rem;
}

.youto{
  font-size:1.5rem;
  line-height: 1.0em;
  margin-top:0.5rem;
  position:relative;
  display: block;
}

.magic_answer_watch{
  background-color: transparent;
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  border-radius:2rem;
  color:#fff;
  font-size: 2.2rem;
  position:relative;
  cursor: pointer;
}

.magic_answer_watch div{
  background-color: #2267e0;
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0;
  z-index:1;
  font-size: 3rem;
  line-height:1em;
  padding-top:2.1rem;
}

.magic_answer_watch::after{
  content: "";
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  background-color:#fff;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0.1rem;
}


.magic_answer_watch::before{
  content: "";
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  background-color: #6ba7db;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0.7rem;
}

::-webkit-full-page-media, :future, :root .magic_answer_watch div{
  height:auto;
  padding-bottom:2.1rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_watch::after{
  height:110%;
  bottom:-0.1rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_watch::before{
  height:110%;
  bottom:-0.7rem;
}

/*
.magic_answer_analysis div{
  background-color: #6d49bf;
  width:16.4rem;
  height:7rem;
  border-radius:2rem;
}
  */

  .magic_answer_analysis{
  background-color: transparent;
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  border-radius:2rem;
  color:#fff;
  font-size: 2.2rem;
  position:relative;
  cursor: pointer;
}

.magic_answer_analysis div{
  background-color: #6d49bf;
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0;
  z-index:1;
  font-size: 3rem;
  line-height:1em;
  padding-top:2.1rem;
}

.magic_answer_analysis::after{
  content: "";
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  background-color:#fff;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0.1rem;
}

.magic_answer_analysis::before{
  content: "";
  /*width:16.4rem;*/
  width:100%;
  height:7rem;
  background-color: #8d6bdb;
  border-radius:2rem;
  position:absolute;
  left:0;
  top:0.7rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_analysis div{
  height:auto;
  padding-bottom:2.1rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_analysis::after{
  height:110%;
  bottom: -0.1rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_analysis::before{
  height:110%;
  bottom:-0.7rem;
}

.magic_answer_watch_icon{
  width:3.2rem;
  vertical-align:top;
  margin-right:0.6rem;
  position:relative;
  top:-0.1rem;
}

.magic_answer_analysis_icon{
  width:3.2rem;
  vertical-align:top;
  margin-right:0.6rem;
  position:relative;
  top:-0.1rem;
}
::-webkit-full-page-media, :future, :root .magic_answer_watch_icon{
  /*top: 1.5rem;*/
}
::-webkit-full-page-media, :future, :root .magic_answer_analysis_icon{
  /*top: 1.5rem;*/
}

/*------------------------------------------------------------*/
.epilogue{
  background-color: #fffce6;
  padding-top:3.5rem;
  padding-bottom:16rem; 
}

.epilogue_heading{
  width:33.4rem;
  margin:0 auto 1rem;
  line-height:0;
}
/*------------------------------------------------------------*/
.shimadzu{
  background-color: #f5f4f0;
  border-top:solid 13px #fe0000;
  padding-top:3.2rem;
  padding-bottom:6.7rem;
  font-family: "Noto Sans JP", sans-serif;  font-family: "Noto Sans JP", sans-serif;
}

.shimadzu_logo{
  width:24rem;
  margin:0 auto 3.1rem;
  line-height: 0;
}

.shimadzu_150{
  width:33.6rem;
  margin:0 auto 6.1rem;
  display:flex;
  justify-content: center;
  column-gap:3.1rem;
  line-height: 0;
}

.shimadzu_150_logo{
  width:16.1rem;
  margin:3.6rem auto 0;
}

.shimadzu_150_balloon{
  width:14.4rem;
  margin:0 auto;
}

.shimadzu_wrapper{
  width:39rem;
  margin:0 auto;
}

.shimadzu_heading{
  font-size: 3.1rem;
  /*line-height: 1em;*/
  line-height: 4.03rem;
  text-align: center;
  position:relative;
  /*margin-bottom: 5.4rem;*/
  margin-top:-0.465rem;
  margin-bottom: calc(5.4rem - 0.465rem);
}

.shimadzu_heading::after{
  content:"";
  width:3rem;
  height:0.2rem;
  background-color: #fe0000;
  position:absolute;
  bottom:-2.7rem;
  left:0;
  right:0;
  margin:0 auto;
}

.shimadzu_text{
  margin-bottom:6rem;
}

.shimadzu_text p{
  font-size: 1.9rem;
  line-height: 3.2rem;
  font-weight: 400;
  margin-bottom:1.8rem;
  font-family: "Noto Sans JP", sans-serif;
}

.strong_01{
  font-size: 2.4rem;
  /*line-height: 1em;*/
  line-height: 3.12rem;
  text-align: center;
  font-weight: 700;
  /*margin-top:4.3rem;
  margin-bottom:4.3rem;*/
  margin-top:calc(4.3rem - 0.36rem);
  margin-bottom:calc(4.3rem - 0.36rem);
}

.strong_02{
  font-size: 3rem;
  line-height: 1em;
  text-align: center;
  font-weight: 900;
}

.shimadzu_btn, 
.survival_series_btn,
.school_btn{
  display: block;
  width:100%;
  height:7.1rem;
  border-radius: 2rem;
  color:#fff;
  /*font-size: 2.4rem;*/
  font-size: 2.2rem;
  font-weight: 600;
  position:relative;
  z-index: 10;
  cursor: pointer;
  text-align: center;
}

.shimadzu_btn::after,
.survival_series_btn::after,
.school_btn::after{
  content:"";
  position:absolute;
  border-radius: 2rem;
  background-image: url(../img/icon_openwindow.svg);
  background-size:1.1rem 1.1rem;
  background-repeat:no-repeat;
  background-position:right 1.5rem top 1.1rem;
  left:0;
  top:0;
  width:100%;
  height:100%;
}

.shimadzu_btn::before,
.survival_series_btn::before,
.school_btn::before{
  content:"";
  position:absolute;
  border-radius: 2rem;
  left:0.4rem;
  top:0.4rem;
  width:100%;
  height:100%;
  background-color: rgb(0, 0, 0, 0.1);
}

/*
.shimadzu_btn span,
.survival_series_btn span,
.school_btn span{
  position:relative;
  z-index:10;
}
*/

.shimadzu_btn span,
.survival_series_btn span,
.school_btn span{
  position:absolute;
  z-index:10;
  left:0;
  top:0;
  width:100%;
  padding-top:1.2rem;
}

.shimadzu_btn span{
  padding-top:0.6rem;
  line-height:1.3em;
}

.shimadzu_btn::after{
  background-color: #fe0000;
}

.school_btn::after{
  background-color: #0e80cc;
}

.survival_series_btn::after{
  background-color: #ea5504;
}

.survival_series{
  background-color: #fff1eb;
  border-top:solid 13px #ea5504;
  padding-top:2rem;
  padding-bottom:4rem;
  font-family: "Noto Sans JP", sans-serif;  font-family: "Noto Sans JP", sans-serif;
}

.survival_series_heading{
  width:33rem;
  margin:0 auto 0.7rem;
  line-height: 0;
}

.survival_series_latest{
  width:15.4rem;
  margin:0 auto 1.7rem;
  line-height: 0;
  position:relative;
}

.survival_series_latest_ruby_01,
.survival_series_latest_ruby_02,
.survival_series_latest_ruby_03{
  color:#ff490e;
  font-size:1rem;
  line-height:1em;
  position:absolute;
  top:-1rem;
  font-weight: 700;
}

.survival_series_latest_ruby_01{
  left:2.8rem;
}

.survival_series_latest_ruby_02{
  left:6.5rem;
}

.survival_series_latest_ruby_03{
  left:10.5rem;
}



.survival_series_wrapper{
  width:39rem;
  margin:0 auto;
}

.survival_series_bookcover{
  width:29.4rem;
  margin:0 auto 2.8rem;
  line-height: 0;
  box-shadow: 0.7rem 0.7rem 0.9rem rgba(0,0,0,0.25);
}

.survival_series_title{
  width:28.2rem;
  line-height: 0;
  margin:0 auto 2.1rem;
  position:relative;
}

.survival_series_title_ruby_01,
.survival_series_title_ruby_02,
.survival_series_title_ruby_03,
.survival_series_title_ruby_04{
  color:#379ed8;
  font-size:1rem;
  line-height:1em;
  position:absolute;
  top:-1.2rem;
  font-weight: 700;
}

.survival_series_title_ruby_01{
  left:0.7rem;
}

.survival_series_title_ruby_02{
  left:3.1rem;
}

.survival_series_title_ruby_03{
  left:19rem;
}

.survival_series_title_ruby_04{
  left:21.8rem;
}

.survival_series_text{
  font-size:2.1rem;
  line-height: 3.5rem;
  font-weight: 400;
  margin-bottom: 1.5rem;
}

.survival_series_footnote{
  font-size: 1.6rem;
  line-height: 2.8rem;
  font-weight: 300;
  margin-bottom: 3.1rem;
}

.school{
  background-color: #ebf7ff;
  border-top:solid 13px #0e80cc;
  padding-top:3.5rem;
  padding-bottom:4rem;
  font-family: "Noto Sans JP", sans-serif;  font-family: "Noto Sans JP", sans-serif;
}

.school_wrapper{
  width:39rem;
  margin:0 auto;
}

.school_heading{
  width:40rem;
  line-height: 0;
  margin:0 auto 1rem;
}

.school_heading_guide{
  font-size: 2.4rem;
  line-height: 1em;
  text-align: center;
  font-weight: 600;
  margin-bottom: 3.7rem;
}

.school_wrapper{
  width:39rem;
  margin:0 auto;
}

.school_text{
  font-size:2.1rem;
  line-height: 3.5rem;
  font-weight: 400;
  margin-bottom: 1.6rem;
}

.school_text_note{
  font-size:1.5rem;
  letter-spacing: -0.06em;
}

.school_bookcover{
  width:29.4rem;
  margin:0 auto 3.8rem;
  line-height: 0;
  box-shadow: 0.7rem 0.7rem 0.9rem rgba(0,0,0,0.25);
}

/*#modal_01{*/
.modal_bg{
  width:100vw;
  height:100vh;
  padding-left:1.8rem;
  padding-right:1.8rem;
  padding-top:5rem;
  padding-bottom:5rem;
  background-color:rgba(0,0,0,0.75);
  position:fixed;
  left:0;
  top:0;
  z-index:100;
  overflow-y: scroll;
  display:none;
}

.modal_wrapper{
  width:100%;
  /*max-width: calc(750px - 3.6rem);*/
  max-width: 750px;
  margin:0 auto;
}

.modal_elm{
  display:none;
}

.modal_watch{
  background-color:#e6efff;
  border-radius:2rem;
  padding:2.1rem 1.2rem  3.6rem 1.2rem;
  /*margin-bottom:13.2rem;*/
}
.bunsekisekai a, .modal_watch a, .modal_answer_column a {
  position: relative;
  display: block;
  width: 80%;
  background-color: #e60012;
  border: solid 2px #fff;
  border-radius: 100px;
  margin: 4rem auto;
  padding: 0.5rem 0;
  font-size: 2.6rem;
  font-weight: 600;
  text-align: center;
  color: #fff;
  box-shadow: 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.1);
}
.modal_answer_column a {
  width: 100%;
  margin: 4rem auto 0;
}
.bunsekisekai a::after, .modal_watch a::after, .modal_answer_column a::after {
  content: "";
  position: absolute;
  border-radius: 2rem;
  background-image: url(../img/icon_openwindow.svg);
  background-size: 1.1rem 1.1rem;
  background-repeat: no-repeat;
  background-position: right 1.5rem top 1.1rem;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.modal_heading{
  height:6.8rem;
  border-radius: 2.2rem;
  border:solid 0.4rem #fff;
  font-size: 3.7rem;
  line-height: 6rem;
  /*
  letter-spacing: 0.25em;
  padding-left:0.25em;
  */
  text-align: center;
  color:#fff;
  font-weight: 700;
  position:relative;
  margin-bottom: 3.8rem;
}

.modal_heading_watch{
  background-color: #2267e0;
}

.icon_modal_close_top{
  width:4.2rem;
  height:4.2rem;
  position:absolute;
  right:1.2rem;
  top:0.9rem;
  cursor: pointer;
}

.modal_close_bottom{
  width:19rem;
  height:5.4rem;
  margin:3.7rem auto 0;
  position:relative;
  background-color: transparent;
  display: block;
  cursor: pointer;
}
::-webkit-full-page-media, :future, :root .modal_close_bottom{
  /*height:8rem;
  padding: 1rem 0;*/
}

.modal_close_bottom::before{
  content: "";
  width:100%;
  height:100%;
  border-radius:2.7rem;
  position:absolute;
  left:0.4rem;
  top:0.5rem;
}

.modal_close_bottom span{
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0;
  border-radius:2.7rem;
  font-size:2.6rem;
  line-height:1em;
  text-align: left;
  font-weight:700;
  padding-left:7.3rem;
  padding-top:1.2rem;
  background-color: #fff;
}

.modal_close_bottom span::before{
  content:"";
  width:3.1rem;
  height:3.1rem;
  background-size:3.1rem 3.1rem;
  background-repeat: no-repeat;
  position:absolute;
  left:2rem;
  top:0.9rem;
}
::-webkit-full-page-media, :future, :root .modal_close_bottom span::before{
  /*top:2rem;*/
}

.modal_close_bottom_watch::before{
  background-color: #d5dbe6;
}

.modal_close_bottom_watch span{
  border:solid 0.2rem #2267e0;
  color:#2267e0;
}

.modal_close_bottom_watch span::before{
  background-image: url(../img/modal_close_bottom_watch.svg);
}

.modal_close_bottom_analysis::before{
  background-color: #dad5e6;
}

.modal_close_bottom_analysis span{
  border:solid 0.2rem #6d49bf;
  color:#6d49bf;
}

.modal_close_bottom_analysis span::before{
  background-image: url(../img/modal_close_bottom_analysis.svg);
}

.modal_close_bottom_answer::before{
  background-color: #d4e6dd;
}

.modal_close_bottom_answer span{
  border:solid 0.2rem #08a84e;
  color:#08a84e;
}

.modal_close_bottom_answer span::before{
  background-image: url(../img/modal_close_bottom_answer.svg);
}
.modal_close_bottom_watch span, .modal_close_bottom_analysis span, .modal_close_bottom_answer span {
  display: block;
}


.modal_analysis{
  background-color:#f0e8ff;
  border-radius:2rem;
  padding:2.1rem 1rem  3.6rem 1rem;
  /*margin-bottom:13.2rem;*/
}

.modal_heading_analysis{
  background-color: #6d49bf;
}

.modal_answer{
  background-color:#e6fff1;
  border-radius:2rem;
  padding:2.1rem 1rem  3.6rem 1rem;
}

.modal_heading_answer{
  background-color: #08a84e;
  margin-bottom: 4.8rem;
}

.modal_conversation{
  display:flex;
  justify-content: space-between;
  justify-content:flex-start;
  column-gap:2rem;
  margin-bottom: 2.3rem;
}

.flex_end{
  justify-content:flex-end;
}

.modal_conversation:nth-last-child(1 of .modal_conversation) {
    margin-bottom:0;
}

.modal_speaker_icon{
  width:6.4rem;
  min-width:6.4rem;
  height:6.4rem;
  border-radius:50%;
  border:solid 0.2rem #00adb2;
  background-color: #fff;
  margin-top:0.4rem;
  overflow: hidden;
}

.reflect_img_x {
  transform: scale(-1, 1);
}

/* .modal_speaker_icon_hanten img{
  transform:
} */

.modal_speaker_comment{
  width:auto;
  padding:1.4rem;
  border:solid #000 0.2rem;
  border-radius:2.3rem;
  background-color: #fff;
  font-size:1.8rem;
  line-height: 2.4rem;
  font-weight: 400;
  position:relative;
}

.modal_speaker_comment_right::before{
  content:"";
  position:absolute;
  left:-1.4rem;
  top:2.5rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 0.9rem solid transparent;
  border-bottom: 0.9rem solid transparent;
  border-right: 1.4rem solid #000;
  border-left: 0;
}

.modal_speaker_comment_left::before{
  content:"";
  position:absolute;
  right:-1.4rem;
  top:2.5rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 0.9rem solid transparent;
  border-bottom: 0.9rem solid transparent;
  border-left: 1.4rem solid #000;
  border-right: 0;
}

.modal_watch_image{
  border:solid 0.1rem #d3d3d3;
  width:100%;
  margin-top:1.1rem;
  margin-bottom:0.8rem;
  line-height: 0;
}

.modal_04_watch_btn{
  line-height: 1.1em;
}

.modal_01_analysis_image_01{
  width:97%;
  margin:0 auto;
  margin-top:-1.4rem;
  margin-bottom:4.3rem;
  line-height: 0;
}

.modal_answer_answer{
  font-size:3.2rem;
  line-height: 4rem;
  text-align: center;
  font-weight: 700;
  margin-bottom: 1.7rem;
}
.modal_answer.modal_elm .true {
  position: absolute;
  transform: translate(-50%,0);
  top: 170px;
  left: 50%;
  width: 50vw;
  height: 50vw;
  max-width: 200px;
  max-height: 200px;
  border: solid 20px #f00;
  border-radius: 100%;
  opacity: 0;
  -webkit-transition-duration: 0.35s;
  -moz-transition-duration: 0.35s;
  -ms-transition-duration: 0.35s;
  -o-transition-duration: 0.35s;
  transition-duration: 0.35s;
}
.modal_answer.modal_elm .true.active {
  opacity: 1;
}
.modal_answer.modal_elm .false {
  position: absolute;
  transform: translate(-50%,0);
  top: 257px;
  left: 50%;
  width: 50vw;
  height: 50vw;
  max-width: 200px;
  max-height: 200px;
  opacity: 0;
  -webkit-transition-duration: 0.35s;
  -moz-transition-duration: 0.35s;
  -ms-transition-duration: 0.35s;
  -o-transition-duration: 0.35s;
  transition-duration: 0.35s;
}
.modal_answer.modal_elm .false.active {
  opacity: 1;
}
.modal_answer.modal_elm .false span {
  position: absolute;
  left: 50%;
  display: block;
  width: 100%;
  height: 20px;
  background-color: #00f;
}
.modal_answer.modal_elm .false span:nth-child(1) {
  transform: translate(-50%,0) rotate(45deg);
}
.modal_answer.modal_elm .false span:nth-child(2) {
  transform: translate(-50%,0) rotate(-45deg);
}

.modal_01_answer_image_01{
  width:16rem;
  margin:0 auto 2.1rem;
  line-height: 0;
}

.modal_02_answer_image_01{
  width:22.6rem;
  margin:0 auto 2.1rem;
  line-height: 0;
}

.modal_02_answer_column_image_01{
  margin-top:2rem;
}

.modal_03_watch_image_01{
  width:100%;
  margin-top:1.1rem;
  margin-bottom:0.8rem;
  line-height: 0;
}

.modal_03_answer_image_01{
  width:36.3rem;
  margin:0 auto 2.1rem;
  line-height: 0;
}

.modal_04_answer_image_01{
  width:18.5rem;
  margin:0 auto 2.1rem;
  line-height: 0;
}

.modal_05_answer_image_01{
  width:35.3rem;
  margin:0 auto 2.1rem;
  line-height: 0;
}

.modal_answer_comment{
  /*width:20em;*/
  margin:0 0.7rem 7.1rem;
  font-size:1.8rem;
  line-height: 3rem;
  font-weight:400;
}

#modal_06_answer .modal_answer_comment{
  margin-bottom:0;
}

.modal_05_answer_column_btn{
    line-height:1.1em;
}

.modal_answer_column{
  background-color: #fffce6;
  border:solid 0.1rem #6a6a55;
  border-radius:2rem;
  position:relative;
  padding-top:5.3rem;
  padding-bottom:2.9rem;
  padding-left:2.2rem;
  padding-right:2.2rem;
}

.modal_answer_column_title{
  width:23.8rem;
  height:6.1rem;
  background-image: url(../img/column_bg.svg);
  background-size: 23.8rem 6.1rem;
  background-repeat: no-repeat;
  color:#fff;
  font-size:2.8rem;
  line-height: 6.1rem;
  text-align: center;
  font-weight:700;
  padding-left: 0.125em;
  position:absolute;
  left:0;
  right:0;
  top:-3rem;
  margin-left:auto;
  margin-right:auto;
}

.modal_answer_column_heading{
  font-size:2.6rem;
  line-height: 3.4rem;
  text-align: center;
  font-weight: 700;
  color:#e60012;
  margin-bottom: 2.8rem;
}

.modal_answer_column_text{
  margin-bottom:1.2rem;
}

.modal_answer_column_text p{
  /*width:18em;
  margin:0 auto;*/
  font-size:1.8rem;
  line-height: 3rem;
  font-weight:400;
}

.modal_answer_column_image_01{
  width:31.2rem;
  margin:0 auto;
  line-height: 0;
}

.modal_answer_column_know{
  position:relative;
  width:31.1rem;
  margin-right:0rem;
  margin-left:auto;
  left:-0.2rem;
}

.modal_answer_column_know_char{
  width:9.4rem;
  line-height: 0;
}

.modal_answer_column_know_text{
  width:21.3rem;
  padding: 1.1rem 1.4rem 1.1rem 1.4rem;
  border:solid 0.2rem #000;
  border-radius: 2rem;
  background-color: #fff;
  font-size:1.8rem;
  line-height: 3rem;
  font-weight: 400;
  position:absolute;
  left:9.8rem;
  top:0.9rem;
}

.modal_answer_column_know_text::before{
  content:"";
  position:absolute;
  left:-1.4rem;
  top:3.2rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 0.9rem solid transparent;
  border-bottom: 0.9rem solid transparent;
  border-right: 1.4rem solid #000;
  border-left: 0; 
}

.modal_06_analysis_annotation{
    font-size:1.7rem;
    line-height: 1.4em;
    font-weight: 400; 
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
    margin-top:1.8rem;
    margin-bottom:-1rem;
}

.modal_06_analysis_annotation li{
  padding-left:4.5rem;
  padding-right:1rem;
  position: relative;
}

.modal_06_analysis_annotation_01::before,
.modal_06_analysis_annotation_02::before,
.modal_06_analysis_annotation_03::before{
  position: absolute;
  left:0;
  top:0.5rem;
  width:3.5rem;
  height:3.5rem;
  border-radius: 50%;
  color: #fff;
  text-align:center;
  font-size:3rem;
  line-height: 3.5rem;
  font-weight:500;
}

.modal_06_analysis_annotation_01::before{
  content:"1";
  background-color: #b6966c;
}

.modal_06_analysis_annotation_02::before{
  content:"2";
  background-color: #f93300;
}

.modal_06_analysis_annotation_03::before{
  content:"3";
  background-color: #468acc;
}

.modal_06_analysis_annotation_03{
    padding-top:0.9rem;
}

.modal_06_answer_image_01{
  margin: 0 auto 1rem auto;
  width: 80%;
}

.modal_answer_comment_06{
  margin-bottom:4rem !important;
}

@media screen and (min-width: 750px) {

  header {
    height:auto;
  }

  .hero {
    background: url(../img/img_hero.png) no-repeat center top calc(18.1rem  * (750 / 430));
    background-size: 100%;
    height: calc((42.1rem + 17.9rem) * (750 / 430));
  }

  .hero h1 {
  padding-top:calc(0.7rem  *  (750 / 430));
}

  .hero .object01 {
    top: calc(0.8rem *  (750 / 430));
    right: calc(0.4rem * (750 / 430));
  }
  .hero .object02 {
    top:calc(13.1rem * (750 / 430));
    left:calc(2.7rem * (750 / 430));
  }

.menu{
  transform: scale(calc(750 / 430));
}

  /*------------------------------------------------------------*/
  .lead{
    height:auto;
  }

/*------------------------------------------------------------*/
  .bunsekisekai{
    padding-top:35px;
    padding-bottom:160px; 
  }

  .bunsekisekai_heading{
    width:334px;
    margin:0 auto 10px;
  }

/*------------------------------------------------------------*/
  .slick-dots {
    bottom:-9.3rem;

  }

  .slick-dots li{
    display: inline-block;
    margin: 0 5.5px;
    width:12px;
    height:12px;
    border-radius:50%;
    background:#fff;
    border:solid 0.1rem #e60012;
  }

  .slick-dots li button {
    position: relative;
    text-indent: -9999px;
    cursor:pointer;
  }

  .slick-dots li.slick-active{
    background:#e60012;
  }

  .slick-prev{
    position:absolute;
    left:50px;
    bottom:-95px;
    z-index: 10;
  }

  .slick-next{
    position:absolute;
    right:50px;
    bottom:-95px;
    z-index: 10;
  }

  .slick-prev, .slick-prev::before,.slick-prev::after,.slick-prev div,
  .slick-next, .slick-next::before,.slick-next::after,.slick-next div
  {
    width:62px;
    height:62px;
    border-radius:12px;
    cursor:pointer;
  }

  .slick-prev::after, .slick-next::after{
    position:absolute;
    content:"";
    left:2px;
    top:2px;
    background-color:#fff;
  }

  .slick-prev::before, .slick-next::before{
    position:absolute;
    content:"";
    left:7px;
    top:7px;
    background-color:#db6b74;
  }

  .slick-prev div, .slick-next div{
    font-size:17px;
    line-height: 1em;
    font-weight: 700;
    background-color:#e60012;
    background-image: url(../img/icon_slider.svg);
    background-size:24.3712px 39.7358px;
    background-repeat:no-repeat;
    background-position: 16px, 98px;
    position:absolute;
    width:100%;
    height:100%;
    left:0;
    top:0;
    font-feature-settings: "palt";
    color:#fff;
    padding-top:25px;
    z-index:1;
  }

  .slick-next div{
    transform: scaleX(-1);
  }

/********/
  .quiz{
    padding-left:2.15rem;
    padding-right:2.15rem;
  }

  .magic{
    /*width:38.7rem;*/
    width:auto;
  }

  .quiz_sec_h{
    width:auto;
    background-color: #000 !important;
  }

  .quiz_sec_h_01, .quiz_sec_h_02, .quiz_sec_h_03, .quiz_sec_h_04, .quiz_sec_h_05, .quiz_sec_h_06{
    background-position-x:right;
  }

  .magic_wrapper{
    /*width:34.8rem;*/
    width:100%;

    padding-left:1.9rem;
    padding-right:1.9rem;

    margin:0 auto;
    padding-top:2.7rem;
  }

  .magic_answer_area{
    /*width:34.8rem;*/
    width:100%;
    margin-left:auto;
    margin-right:auto;
  }

  .tyoutai_01{
    transform: none;
    display:inline-block;
    position: relative;
    left:0;
    white-space: nowrap;
  }

  .magic_intro_06_wrapper{
      margin-left:2rem;
  }
  
  /*
  .magic_question_06 {
    width:37.7rem;
    margin-left:auto;
    margin-right:auto;
  }
  */
  .magic_image_06{
    min-width:16.8rem;
    margin-top:2.5rem;
    margin-top:0;

  }

  .magic_intro_06{
    width:21em;
    margin-top:8rem;
  }

  .shimadzu_wrapper{
    width:auto;
    padding-left:2rem;
    padding-right:2rem;
  }

  .school_wrapper{
    width:auto;
    padding-left:2rem;
    padding-right:2rem;
  }
  .school_heading{
    width:50rem;
  }

  .survival_series_wrapper{
    width:auto;
    padding-left:2rem;
    padding-right:2rem;
  }

  .modal_answer_column_know{
    margin-right:auto;
    margin-left:auto;
    left:0;
  }

  .modal_06_analysis_annotation li{
    margin-bottom:1rem;
  }

  .modal_06_analysis_annotation_01{
    margin-bottom:0rem !important;
  }

  .modal_06_analysis_annotation_02, .modal_06_analysis_annotation_03{
    padding-top:0.9rem;
  }

  .modal_05_answer_image_01{
    width:72.3rem;
  }

  .magic_question_text_2lines{
    top:0.3rem;
    top:0.6rem;
  }

  .magic_choices_2l {
    height:6.6rem;
  }

  .magic_choices_2l div{
      padding-top:2rem;
  }

  .magic_choices_06:nth-child(1 of .magic_choices_06)  div{
    padding-top:1.5rem;
  }

  .shimadzu_btn span{
    padding-top:1.2rem;
    line-height:1.87;
  }

  .modal_05_answer_column_btn{
    line-height:1.87;
  }

  .modal_04_watch_btn{
    line-height: 1.87;
  }

}