@charset "UTF-8";
/* CSS Document */


body{
  background-image:url("../img/bg_head.png"),url("../img/bg_under_cosmos.jpg");
  background-repeat: no-repeat,repeat-y;
  background-position:top center,center;
  background-size: contain,contain;
}

.sp_newline{
  display: none
}
.sp_newline480{
  display: none
}
@media screen and (max-width: 767px) {
.sp_newline{
  display: block
}
}

@media screen and (max-width: 480px) {
.sp_newline480{
  display: block
}
    body{
  background-image:url("../img/bg_head.png"),url("../img/bg_under_cosmos.jpg");
  background-position:100% 0% , center;
  background-size:120% 800px,contain;
}
}
.wrap{
 max-width: 870px;
  margin: 50px auto 25px;
}
.foot_container{
 max-width: 870px;
  margin: 100px auto 0px
}
  
@media screen and (max-width: 1024px) {
  .wrap,
  .foot_container
  {
padding-left: 3%;
padding-right:3%;
}
}
  
.ttl_block_ttl {
  background: url("../img/bg_fukidashi.png")no-repeat top center / contain;
  min-height: 150px;
  padding-top:6px;
 line-height: 1.5
}
@media screen and (max-width: 750px) {

  .ttl_block_ttl {
}
}


.ttl_block_ttl_1 {
  color: #660066;
  font-size: 29px;
  font-weight: bold;
  text-align: center;
   display: block
}

.ttl_block_ttl_2 {
  color: #cc0099;
  font-size: 29px;
  font-weight: bold;
    text-align: center;
   display: block;
  margin-top:-0.2em
}
@media screen and (max-width: 1024px) {
.ttl_block_ttl_1 {
  font-size: 1.125rem;
  font-size:clamp(0.813rem, 0.27rem + 2.41vw, 1.813rem);
  min-height:0vw
}
.ttl_block_ttl_2 {
  font-size: 1.125rem;
  font-size:clamp(0.813rem, 0.27rem + 2.41vw, 1.813rem);
  min-height:0vw
}

}
@media screen and (max-width: 767px) {

  .ttl_block_ttl {
  background: url("../img/bg_fukidashi.png")no-repeat top center / 100% 60%;

}
}


@media screen and (max-width: 480px) {

  .ttl_block_ttl {
  background: url("../img/bg_fukidashi.png")no-repeat top center / 100% 75%;
}
}
@media screen and (max-width: 420px) {

  .ttl_block_ttl {
  background: url("../img/bg_fukidashi.png")no-repeat top center / 100% 65%;
}
}
.container01 {
  background-color:#777!important;
  height: 1500px!important
}

.buy_btn_wrap {
height: 46px;
margin-top: 45px;
}


.buy_btn {
  max-width: 180px;
  line-height: 46px;
  display: block;
  background-color: #8b9cff;
  border-radius: 30px;
  font-size:14px;
  color: #000;
  text-align: center;
}
a.buy_btn{
  color: #000!important;
}

.buy_btn:after{
content: "\03e";
  font-size: 17px;
  margin-left: 5px
}
.buy_btn:hover {
  background-color: #ffad7e;
  color: #000;
}

.main_col2_foot_pict > .buy_btn_wrap {
height: 46px;
margin:15px 0 0 20px
}

@media screen and (max-width: 480px) {
  .main_col2_foot_pict > .buy_btn_wrap {
height: 46px;
margin:15px 0 0 0px
}
  .buy_btn {
  max-width: 300px;
  margin: auto;
}
}


.main_col2 {
  display: flex;
 justify-content: space-between;

}

@media screen and (max-width: 767px) {
  .main_col2 {
  display: flex;
    justify-content: space-between
}
}

@media screen and (max-width: 480px) {
  .main_col2 {
margin-top: -90px;
      display: flex;
flex-direction: column-reverse
}
}

.main_col2_txt {
  max-width: 461px;
  height: auto
}

.main_col2_pict {
    max-width: 339px;
  height: auto;
    margin: -57px 0 0 0;
}

.top_block_pict {
  margin: 50px auto;
  padding-left:10%;
  padding-right:10%
}


.main_col3_block {
  display: flex;
  justify-content: space-between;
  max-width:744px;
  margin:auto;
  position:relative
}




.main_col3:nth-of-type(1) {
max-width: 224px!important;
background: url("../img/bg_circle01.png") no-repeat top center / cover ;
 min-height: 223px;
}
.main_col3:nth-of-type(2) {
max-width: 224px!important;
background: url("../img/bg_circle02.png") no-repeat top center / cover ;
 min-height: 223px;
position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
 
}
.main_col3:nth-of-type(3) {
max-width: 224px!important;
background: url("../img/bg_circle03.png") no-repeat top center / cover ;
 min-height: 223px;

}

@media screen and (max-width: 767px) {
  
.top_block_pict {
  margin: 50px auto;
  padding-left:0%;
  padding-right:0%
}
  
  .main_col3_block {
 flex-direction: column;
}
  .main_col3:nth-of-type(1) {
max-width:100%!important;
 background: url("../img/bg_circle01.png") no-repeat top center / contain ;
}
  .main_col3:nth-of-type(2) {
max-width:100%!important;
 position:inherit;
    background: url("../img/bg_circle02.png") no-repeat top center / contain ;
    margin-top: 60px
}
  .main_col3:nth-of-type(3) {
max-width:100%!important;
 background: url("../img/bg_circle03.png") no-repeat top center / contain ;
}
}

span.main_col3_txt {
    display: block;
font-size: 14px;
  color: #000;
  line-height: 1.9;
  text-align: center;
  margin-top: 75px;
  padding-left:25px;
  padding-right:25px
}


.top_block_pict2 {
  max-width: 65px;
  height:auto;
  margin: -10px auto 0
}

.feature_wrap {
  max-width:900px;
  margin:0 auto;
  position: relative;
}

.contents_ttl {
  display: block;
  color: #fff;
  font-size: 15px;
  text-align: center;
  margin: 15px auto;
  font-weight: normal
}

.contents_ttl.iro_bk {
  color: #000;
}


.card_col3_item {
   background: rgb(138,152,251);
background: linear-gradient(0deg, rgba(138,152,251,1) 0%, rgba(116,73,153,1) 100%); 
  box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
  max-width: 230px;
padding:8px 8px 20px;
  border-radius: 8px
}

.card_col3_item_ttl {
  color: #fff;
  font-size:19px;
  margin:15px auto 10px;
  text-align: center
}
.card_col3_item_ttl span{
  color: #fff;
  font-size:12px
}
.card_col3_item_txt {
    color: #fff;
  font-size:15px;
  line-height: 1.9
}

.card_col3_item_inner {
  max-width: 190px;
  margin: auto
}
.card_col3_item_inner img {
height: 117px;
margin: auto;
display: block
}
.card_col3 {
  display: flex;
  justify-content: space-between;
  max-width: 680px;
  margin: auto
}

@media screen and (max-width: 767px) {
  .card_col3 {
flex-direction: column;
align-items: center;
}
.card_col3_item:nth-child(n+2) {
margin-top: 20px
}
  .top_block_pict2 {
  margin: 20px auto 0
}
}

.feature_wrap_pict {
  max-width: 370px;
  height: auto;
  margin: 100px auto 70px
}

.feature_wrap_ttl {
  height: auto;
  margin: 0px auto 30px;
}

.contents_label {
  max-width: 185px;
  margin: 0
}
.feature_wrap_body {
  margin: -100px auto 50px;
}

/* ---  特徴２  --- */

.card_col3_02 {
  display: flex;
  justify-content: space-between;
  max-width: 768px;
  margin: auto
}



.card_col3_02_item {
background: url("../img/bg_circle_purpule.png")no-repeat center / contain;
 max-width: 232px;
min-height: 234px;
padding:25px 26px 20px;
  line-height: 1.5
}
.card_col3_02_item:nth-of-type(2),
.card_col3_02_item:nth-of-type(3) {
background: url("../img/bg_circle_purpule_02.png")no-repeat center / contain;
padding:25px 26px 20px;
}

.card_col3_02_item_ttl {
  color: #fff;
  font-size:19px;
  margin:15px auto 10px;
  text-align: center
}

.card_col3_02_item_txt {
    color: #fff;
  font-size:14px;
    line-height: 1.9
}
@media screen and (max-width: 767px) {

  .feature_wrap_body {
    padding-left:3%;
    padding-right:3%;
    padding-top:50px
}
  .card_col3_02 {
  display: flex;
    flex-direction: column;
    align-items: center;
}
  .card_col3_02_item:nth-child(n+2) {
margin-top: 10px
}
}

.card_col3_02_item_inner {
  max-width: 190px;
  margin: auto
}



.feature_wrap_ttl_01{
  max-width: 156px;
  height: auto;
  margin: auto;
  display: block!important;
}
.feature_wrap_ttl_02 {
  max-width: 104px;
  height: auto;
  margin: auto;
display: block
}
.feature_wrap_ttl_03 {
  max-width: 156px;
  height: auto;
  margin: auto;
display: block
}

.feature_wrap_pict02 {
  max-width: 892px;
  height: auto;
  margin: 10px auto 70px;
}
.use_col2 {
  display: flex;
  flex-direction: row-reverse;
  max-width: 710px;
  margin: auto;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
}






.use_col2:not(:first-child){
margin-top: 30px
}
.use_col2 li{
width:50%;
}
.use_col2_txt {
  background: #edffa2;
  padding:2em 1em 1em 1em;
  box-sizing: border-box;
}
.use_col2_txt h5 img{
height: 24px;
 margin: 0
}
.use_col2_txt p{
font-size: 14px;
  line-height:1.9
}
.use_col2_pict img {
  width:100%;
 vertical-align:top;
}


@media screen and (max-width: 767px) {
  .use_col2 {
  display: flex;
  flex-direction: column;
 max-width: 100%!important;
    width:100%!important;
}
  
  .use_col2 li{
width:100%;
}
  .use_col2_txt {

  padding:2em;
  box-sizing: border-box;
}
  
}
  
  
.main_col2_foot {
  display: flex;
 justify-content: start;
}

.main_col2_foot_txt {
  max-width: 530px;
  height: auto;
  margin: 114px 0 0;
}

.main_col2_foot_pict {
    max-width: 339px;
  height: auto
}
@media screen and (max-width: 767px) {
  .main_col2_foot_txt {
  max-width: 50%;
  height: auto;
  margin: 114px 0 0;
}

.main_col2_foot_pict {
    max-width: 45%;
  height: auto
}
}
@media screen and (max-width: 480px) {
  .main_col2_foot {
  display: flex;
 flex-direction: column;
}
  .main_col2_foot_txt {
  max-width: 530px;
  height: auto;
  margin: 30px 0 0;
}
  .main_col2_foot_pict {
    max-width: 100%;
    margin:auto;
  height: auto
}
}
.overview_list {
  line-height: 1.7;
  font-size:16px;
  color: #000;
  margin-top: 60px;
  background:url("../img/bg_lattice.png")repeat-x left bottom / 28px;
}
.overview_list li{
  background:url("../img/bg_lattice.png")repeat-x left top / 28px;
  padding:1.8em 0 
}
.foot_block_pict {
  max-width: 697px;
  height: auto
}

.foot_container_bg {
    background:url("../img/bg_foot_cosmos.png")no-repeat center bottom / cover;
  
}

.feature_wrap_bg {
   padding-top:40px; 
 padding-bottom:40px;
    background-image: url("../img/img_doura.png"),url("../img/bg_purple_wave.png");
  background-repeat: no-repeat,no-repeat;
  background-position: right 500px,center -80px;
  background-size:313px ,cover
}

@media screen and (min-width: 1200px) {
    .feature_wrap {
  margin:2.5vw auto 0;
}
} 

@media screen and (max-width: 1200px) {
.feature_wrap_bg {
 padding-bottom:40px;
    background-image: url("../img/img_doura.png"),url("../img/bg_purple_wave.png");
  background-repeat: no-repeat,no-repeat;
  background-position: right 500px,center -80px;
  background-size:313px ,100% 120%
}
}

@media screen and (max-width: 767px) {
  .feature_wrap {
  margin:25px auto 0;
}
.feature_wrap_bg {
 padding-bottom:40px;
background-image: url("../img/img_doura.png"),url("../img/bg_purple_wave.png");
  background-repeat: no-repeat,no-repeat;
  background-position: right 1000px,center -80px;
  background-size:313px ,100% 120%
}
}

@media screen and (max-width: 480px) {
  .feature_wrap_bg {
 padding-bottom:40px;
background-image: url("../img/img_doura.png"),url("../img/bg_purple_wave.png");
  background-repeat: no-repeat,no-repeat;
  background-position: right 1150px,center -80px;
  background-size:200px ,100% 120%;
}
}


@media screen and (min-width: 1200px) {
  .feature_wrap_bg2 {
margin-top: 2.5vw
}
} 
@media screen and (max-width: 1200px) {
  .feature_wrap_bg2 {
margin-top: -3.33vw
}
} 

.feature_wrap_bg2 {
 background:url("../img/bg_purple_wave02.png")no-repeat center 350px / contain;
}

@media screen and (max-width: 767px) {
  .feature_wrap_bg2 {
margin-top: -50px
}
}

@media screen and (max-width: 480px) {
  .book_under_txt {
  font-size: 12px;
  color: #000;
  text-align: left;
  margin:-10px 30px 0;
  letter-spacing: -0.05em
}
}

.book_under_txt {
  font-size: 12px;
  color: #000;
  background: #ccc9da;
  text-align: center;
  max-width: 200px;
  margin-left:25px;
  letter-spacing: -0.05em
}
.main_col2_foot_pict > .book_under_txt {
  font-size: 12px;
  color: #000;
  text-align: left;
  margin:-5px 0 0 18px
}


.copyright_wrap {
    background: #181f33;
 height: 100px;
}
.copyright {
color: #fff;
  text-align: center!important;
  display: block;
  font-size: 12px;
  line-height: 100px
}

.ttl_block {
  max-width: 840px;
  margin: auto
}


@media screen and (max-width: 480px) {
  .main_col2_pict {
  max-width: 90%;
margin: 0px auto 30px;
}
  .copyright {
  font-size: 8px;

}
  .book_under_txt {
  text-align: left;
  margin-left:2em;
  letter-spacing: -0.05em
}

}
