@charset "UTF-8";
*{
  margin: 0;
  padding: 0;
  font-weight: 500;
}
html,body,header,#wrapper{
  background: #FFF;
  width: 100%;
}
#bellcla_bar{
  transition: none !important;
}
header{
  position: relative;
  height: 70px;
  background-color: #FFF; /* 確実に指定 */
}
#main_visual{
  margin: auto 0;
  background: #cdebe7;
}
#main_visual img{
  margin: 0 auto;
}
#wrapper{
  position: relative;
  overflow: hidden;
  font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
#wrapper .en_gara{
  font-family:Verdana, Geneva, "sans-serif";
  font-weight:300;
  font-style: normal;
}
#wrapper .en_serif{
  font-family:serif;
  font-weight: 600;
}
#wrapper .serif{
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
#wrapper .inspired_h2{
  position: relative;
  font-size: 40px;
  line-height: 40px;
  text-align: center;
  font-weight: normal;
  padding-bottom: 20px;
}
#wrapper .inspired_h2 span{
  font-size: 24px;
  text-align: center;
  font-weight: normal;
}




.bg_fantasia,.bg_frozen,.bg_wish,.bg_minnie,.bg_donaldduck,.bg_daisyduck{
  position: relative;
}
.bg_fixed{
  content:"";
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 0;
}
.bg_fantasia .bg_fixed{
  background: #d6d5d0;
  background-size: 1200px auto;
}
.bg_minnie .bg_fixed{
  background: #efd3d0;
  background-size: 1200px auto;
}
.bg_donaldduck .bg_fixed{
  background: #ccdceb;
  background-size: 1200px auto;
}
.bg_daisyduck  .bg_fixed{
  background: #d9c5d8;
  background-size: 1200px auto;
}
.bg_frozen{
  position: relative;
}
.bg_frozen .bg_fixed{
  background: #e2c8b8;
}


.bg_frozen2 .bg_fixed{
  background: url("../img/ana_repeatbg.jpg") repeat center top;
  background-size: 200px auto;
}
.bg_wish .bg_fixed{
  background: url("../img/wish_bg.jpg") repeat center top;
  background-size: 1200px auto;
}
.bg_snowwhite .bg_fixed{
  background: url("../img/pw1.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_snowwhite .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp1_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
.bg_cinderella .bg_fixed{
  background: url("../img/pw2.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_cinderella .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp2_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
.bg_bell .bg_fixed{
  background: url("../img/pw3.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_bell .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp3_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
.bg_tiana .bg_fixed{
  background: url("../img/pw3.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_tiana .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp7_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
.bg_aurora  .bg_fixed{
  background: url("../img/pw5_2.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_aurora .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp6_2_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}



.bg_jasmine .bg_fixed{
  background: url("../img/pw4.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_jasmine .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp4_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
.bg_rapunzel .bg_fixed{
  background: url("../img/pw5.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_rapunzel .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp5_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
.bg_ariel .bg_fixed{
  background: url("../img/pw6.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_ariel .bg_fixed:before{
  content:"";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/dp6_bg.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0.1;
}
@media screen and (max-width: 768px) {
  .bg_snowwhite .bg_fixed:before{
    background: url("../img/sp/dp1_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_cinderella .bg_fixed:before{
    background: url("../img/sp/dp2_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_bell .bg_fixed:before{
    background: url("../img/sp/dp3_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_jasmine .bg_fixed:before{
    background: url("../img/sp/dp4_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_rapunzel .bg_fixed:before{
    background: url("../img/sp/dp5_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_ariel .bg_fixed:before{
    background: url("../img/sp/dp6_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_tiana .bg_fixed:before{
    background: url("../img/sp/dp7_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_aurora .bg_fixed:before{
    background: url("../img/sp/dp8_bg.jpg") no-repeat center top;
    background-size: cover;
  }
  .bg_frozen:before{
    background-size: 300px auto;
  }

}

.bg_princess .bg_fixed{
  background: url("../img/pw7.jpg") repeat center top;
  background-size: 6px auto;
}
.bg_princess{
  position: relative;
}
.bg_clip{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: inset(0);
}
.bg_frozen2{
  clip-path: polygon(0 12%, 100% 2%, 100% 100%, 0% 100%);
}
.cn_anim{
  transition:1s ease;
  opacity: 0;
  transform-origin: center top;
  transform: scale(1.1);
}
.cn_active{
  opacity: 1;
  transform: scale(1);
}
.bg_frozen .cn_inner{
  position: relative;
  z-index: 1;
}
.bg_frozen2 .cn_inner .img_flex2{
  margin-top: 40px;
}
.bg_frozen2{
  position: relative;
  padding-bottom: 120px;
}
.cn_inner h2 img{
  margin: 0 auto;
}
.cn_inner h2{
  margin-bottom: 60px;
}
.copyright{
  font-size: 12px;
  line-height: 12px;
  text-align: right;
  margin-top: 6px;
}
.white{
  color: #dfdfdf;
}
.navy{
  color: #1d2a41;
}
#wrapper .judy_solid{
  position: relative;
  border-bottom: 1px #333 solid;
}
#wrapper .judy_solid:after{
  content:"";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  border-bottom: 2px #333 solid;
}

.pooh{
  color: #926857;
}
#wrapper .pooh_solid{
  position: relative;
  border-bottom: 1px #926857 solid;
}
#wrapper .pooh_solid:after{
  content:"";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  border-bottom: 2px #926857 solid;
}





.judy{
  color: #1d2a41;
}
.dumbo{
  color:#727085;
}
#wrapper .dumbo_solid{
  position: relative;
  border-bottom: 1px #727085 solid;
}
#wrapper .dumbo_solid:after{
  content:"";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  border-bottom: 2px #727085 solid;
}

.yellow{
  color: #edbf4a;
}
.f_blue{
  color: #525ba7;
}
.f_green{
  color: #617036;
}
.gold{
  color: #edbf4a;
}
.red{
  color: #ba2e38;
}
.cblue{
  color: #528dd0;
}
.byellow{
  color: #b69525;
}
.chips{
  coloe:#926857;
}
.tgreen{
  color: #85832d;
}
.bluegreen{
  color: #176d7b;
}
.pink{
  color: #db519e;
}
.abg{
  color: #2da7b0;
}
.green{
  color: #1c4852;
}
.n_green{
  color: #7c7e4d
}
.aurora_pink{
  color: #ca6d76;
}

#wrapper .shadow_ef img{
  box-shadow: 0 0 10px rgba(126,126,126,0.8);
}
#wrapper .navy img,
#wrapper .red img{
  box-shadow: 0 0 10px rgba(150,150,150,0.8);
}
#wrapper .fblue img{
  box-shadow: 0 0 10px rgba(123,166,191,0.8);
}
#wrapper .fgreen img{
  box-shadow: 0 0 10px rgba(70,91,50,0.8);
}
#wrapper .purple img{
  box-shadow: 0 0 10px rgba(32,29,80,0.8);
}
.original_slick img{
  user-select: none;
  pointer-events: none;
}
.main_img img{
  pointer-events: none;
}
.item_imgs{
  cursor: pointer;
}
.original_slick .cursor_no{
  width: 20px;
  height: 20px;
  margin-right: 10px;
  background: #FFF;
  cursor: pointer;
}
.original_slick .cursor_ta{
  background: #000;
}
.navy .cursor_ta{
  background: #4947af;
}
.red .cursor_ta{
  background: #ea3036;
}
.fblue .cursor_ta{
  background: #3169a6;
}
.fgreen .cursor_ta{
  background: #617036;
}
.purple .cursor_ta{
  background: #8d6ad4;
}
.princess_flex .cursor_no{
  background: #fff;
}
.fred .cursor_ta{
  background: #ba2e38;
}
.fcblue .cursor_ta{
  background: #6ca2df;
}
.byellow .cursor_ta{
  background: #d5b031;
}
.chips .cursor_ta{
  background:#926857;
}
.tgreen .cursor_ta{
  background: #85832d;
}
.bluegreen .cursor_ta{
  background: #176d7b;
}
.pink .cursor_ta{
  background: #d167a2;
}
.abg .cursor_ta{
  background: #47afb7;
}
.aurora_pink .cursor_ta{
  background: #ca6d76;
}
.dumbo .cursor_ta{
  background:#727085;
}

.navy .next_icon{
  background: url("../img/next_fantasia1.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.navy .prev_icon{
  background: url("../img/next_fantasia1.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.red .next_icon{
  background: url("../img/next_fantasia2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.red .prev_icon{
  background: url("../img/next_fantasia2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fblue .next_icon{
  background: url("../img/next_frozen1.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fblue .prev_icon{
  background: url("../img/next_frozen1.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fgreen .next_icon{
  background: url("../img/next_frozen2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fgreen .prev_icon{
  background: url("../img/next_frozen2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.purple .next_icon{
  background: url("../img/next_wish.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.purple .prev_icon{
  background: url("../img/next_wish.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fred .next_icon{
  background: url("../img/next_pw1.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fred .prev_icon{
  background: url("../img/next_pw1.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fcblue .next_icon{
  background: url("../img/next_pw2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.fcblue .prev_icon{
  background: url("../img/next_pw2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.byellow .next_icon{
  background: url("../img/next_pw3.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.byellow .prev_icon{
  background: url("../img/next_pw3.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.chips .next_icon{
  background: url("../img/next_pw3_2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.chips .prev_icon{
  background: url("../img/next_pw3_2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}

.tgreen .next_icon{
  background: url("../img/next_pw7.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.tgreen .prev_icon{
  background: url("../img/next_pw7.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}

.bluegreen .next_icon{
  background: url("../img/next_pw4.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.bluegreen .prev_icon{
  background: url("../img/next_pw4.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.pink .next_icon{
  background: url("../img/next_pw5.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.pink .prev_icon{
  background: url("../img/next_pw5.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.abg .next_icon{
  background: url("../img/next_pw6.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.abg .prev_icon{
  background: url("../img/next_pw6.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.aurora_pink .next_icon{
  background: url("../img/next_pw5_2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.aurora_pink .prev_icon{
  background: url("../img/next_pw5_2.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.dumbo  .next_icon{
  background: url("../img/next_pw8.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}
.dumbo .prev_icon{
  background: url("../img/next_pw8.png") no-repeat center center;
  background-size: calc(100% - 20px) auto;
}


.next_icon{
  position: absolute;
  right: -30px;
  top: 50%;
  width: 40px;
  height: 40px;
  transform: translateY(-50%);
  cursor: pointer;
  z-index: 1;
  border-radius: 100%;
  overflow: hidden;
  text-indent: -9999px;
  font-size: 0;
  padding: 10px;
}
.prev_icon{
  position: absolute;
  left: -30px;
  top: 50%;
  width: 40px;
  height: 40px;
  transform: translateY(-50%) scale(-1,1);
  cursor: pointer;
  z-index: 1;
  border-radius: 100%;
  overflow: hidden;
  text-indent: -9999px;
  font-size: 0;
  padding: 10px;
}
@media screen and (max-width: 768px) {
  /*
  .next_icon{
    right: -17px;
    width: 34px;
    height: 34px;
  }
  .prev_icon{
    left: -17px;
    width: 34px;
    height: 34px;
  }
  */
}
.main_img{
  position: relative;
  max-width:500px;
  width: 50%;
}
.main_text h2{
  font-size:24px;
  line-height: 30px;
  margin-top:15px;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-weight: 600;
  margin-bottom:12px;
}
.main_text p{
  font-size:16px;
  line-height: 32px;
  text-align: justify;
}
.original_slick{
  position: relative;
}
.original_slick img:first-child{
  position: relative;
}
.original_slick img:not(:first-child){
  position: absolute;
  left: 0;
  top: 0;
}
.original_slick img{
  transform-origin: center center;
  backface-visibility: hidden;
}
.original_slick .sl_reverse_a{
  transform: perspective(1000px) rotateY(-179deg);
}
.original_slick .sl_reverse_b{
  transform: perspective(1000px) rotateY(179deg);
}
.original_slick .anim{
  transition: 0.5s ease-out;
}

body .original_slick .sl_target{
  transform: perspective(1000px) rotateY(0deg);
  transform: none;
  z-index: 1;
}

.original_slick .sl_target{
  transform: perspective(1000px) rotateY(0deg);
  transform: none;
  z-index: 1;
}
.original_slick .cursor{
  position: relative;
  display: flex;
  margin-top: 10px;
  z-index: 2;
}
.inspired_img{
  width: 100%;
  max-width: 1000px;
}
.inspired_img img{
  width: 100%;
  height: auto;
}
.center{
  text-align: center;
}
#canvas{
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}
.tuxedo_head{
  padding: 120px 30px;
  /*
  background: url("../img/tuxedo_bg.jpg") no-repeat center center;
  background-size: 100% auto;
  */
  background: #FFF;
}
.tuxedo_head .cn_inner{
  padding: 0;
}
.tuxedo_head h2{
  margin-bottom: 0;
}
.tuxedo_wrap .cn_inner{
  padding-top: 60px;
}
#roll{
  position: relative;
  width:300%;
  display: flex;
  animation: loop_animation 40s linear infinite;
}
#roll img{
  width: calc(100% / 3);
  height: auto;
}
@keyframes loop_animation {
  0% {
    left:0;
  }
  100% {
    left:-100%;
  }
}
@media screen and (min-width: 1440px) {
  #roll{
    width: calc(1440px * 3);
    animation: loop_animation 40s linear infinite;
  }
  #roll img{
    width: 1440px;
    height: auto;
  }


  @keyframes loop_animation {
    0% {
      left:0;
    }
    100% {
      left:-1440px;
    }
  }
}



#main_copy{
  padding: 0;
  margin: 0 auto;
  background: #FFF;
}
h1{
  font-size:28px;
  line-height:38px;
  color: #0051a1;
  text-align: center;
  font-weight: 600;
}
#main_copy h2{
  font-size:20px;
  line-height:36px;
  color: #0051a1;
  text-align: center;
  font-weight: 600;
  margin: 30px 0 0 0;
  padding: 0;
  max-width: 100%;
}
#main_copy p{
  font-size:16px;
  line-height: 32px;
  margin-top:20px;
  text-align: justify;

}
.cn_inner{
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  padding: 120px 30px 60px;
}
#main_copy .cn_inner{
  padding: 120px 30px;
}
.img_reverse{
  flex-direction: row-reverse;
}
.img_flex{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top:60px;
  margin-bottom:60px;  
}
#dwedding_wrap{
  position: relative;
}
#dwedding_wrap .cn_inner{
  padding: 60px 30px;
}
.bg_red .main_img{
  width:42.2%;
  margin-right:8.4%;
}
.main_active:before{
  transform:rotate(10deg);
  opacity: 1;
}

.main_text{
  position: relative;
  width:35%;
  max-width: 350px;
  margin: 0 auto;
}
.theme_logo{
  position: relative;
  width:100%;
}
.theme_logo img{
  width:140px;
  margin: 0 auto;
  display: block;
  opacity: 0;
  transition:1s ease;
}
.bg_yellow .theme_logo img{
  transform:scale(1.1);
}
.bg_rblue .theme_logo img{
  transform:scale(1.1);
}
.bg_blue .theme_logo img{
  width:118px;
  transform:translateX(30px);
}
.bg_pink .theme_logo img{
  width:125px;
  transform:translateX(30px);
}
.bg_green .theme_logo img{
  width:145px;
  transform:translateX(-30px);
}
.bg_red .theme_logo img{
  width:141px;
  transform:translateX(30px);
}
.woody .theme_logo img{
  width:70px;
}
.dress_text h3{
  font-weight: normal;
  font-size:30px;
  line-height: 30px;
  text-align: center;
  margin:30px 0;
}
.dress_text h3 span{
  font-size:45px;
}
/*
.princess_flex .dress_text h3{
  font-weight: normal;
  font-size:18px;
  line-height: 18px;
  text-align: center;
  margin:30px 0;
}
.princess_flex .dress_text h3 span{
  font-size:34px;
}
*/
.dress_text h3{
  font-weight: normal;
  font-size:18px;
  line-height: 18px;
  text-align: center;
  margin:30px 0;
}
.dress_text h3 span{
  font-size:34px;
}

.dress_text .inspired_chara{
  width: 50%;
  max-width: 202px;
  margin: 0 auto;
}
.dress_text .inspired_chara img{
  width: 100%;
  height: auto;
  margin: 0;
}
.dress_text .inspired_chara .copyright{
  margin: 5px 0 0 0;
  padding: 0;
  text-align: center;
  font-size: 12px;
  line-height: 12px;
}

#wrapper .sc_anim{
  opacity: 1;
  transform:scale(1) translate(0,0);
}

.logo_copyright{
  position: absolute;
  right:0;
  bottom:0;
  font-size:10px;
  line-height: 16px;
}
.gallery_flex{
  width:100%;
  display: flex;
  justify-content: space-between;
}
.gallery_img{
  width:31.5%;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.1);
  cursor: pointer;
  opacity: 0;
  transform:translateY(30px);
  transition: 1s;
}
.gallery_img:hover{
  transform: scale(1.02) !important;
  box-shadow: 4px 4px 4px rgba(0,0,0,0.2);
  transition: 0.5s;
}
#tuxedo_wrap{
  position: relative;
  background: #fff9f0;
}
#tuxedo_wrap .en_gara{
  font-size:44px;
  line-height: 44px;
  text-align: center;
  margin-bottom:60px;
}
.tuxedo_flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.tuxedo_img{
  width:50%;
}
.tuxedo_text{
  width: 50%;
}
#tuxedo_wrap .main_text{
  margin: 0 auto;
}
.princess_wedding{
  position: relative;
  background: #FFF;
}
.princess_wedding h2{
  font-size:44px;
  line-height: 44px;
  text-align: center;
  margin-bottom: 0;
}
.princess_wedding h3{
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-weight: normal;
  font-size:21px;
  line-height: 21px;
  text-align: center;
  margin-top:10px;
}
.princess_wedding h3 span{
  font-size:15px;
}
.princess_wedding .cn_inner{
  padding: 120px 30px;
}
.tuxedo_img{
  position: relative;
  background: #FFF;
  transition:0.4s ease;
  transform-origin: center top;
  transform:scale(1,1);
}
.tuxedo_img img{
  opacity: 0;
}
.tuxedo_img_active{
  transform:scale(-1,1);
}
.dress_img{
  transform:scale(-1,1);
  transition: 0.4s ease;
  opacity: 0;
}
.tuxedo_img_active .dress_img{
  opacity: 1;
}


.card_logo{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width:140px;
  text-align: center;
}
.card_logo img{
  opacity: 1;
}
.card_logo .logo_copyright {
  position:relative;
  text-align: center;
}
.tuxedo_flex:nth-child(4) .card_logo img{
  width:80px;
}
.tuxedo_img{
  background: #fff9f0;
}

.tuxedo_flex:nth-child(2) .tuxedo_img{
  background: #FFF;
}
.tuxedo_flex:nth-child(3) .tuxedo_img{
  background: #a6d4ee;
}
.tuxedo_flex:nth-child(4) .tuxedo_img{
  background: #f7c966;
}
.tuxedo_flex:nth-child(5) .tuxedo_img{
  background: #e1f9b3;
}
.tuxedo_flex:nth-child(6) .tuxedo_img{
  background: #feb1d2;
}
.dwedding_flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top:100px;
}
.dwedding_flex:nth-child(1){
  margin-top:0;
}
.dwedding_img{
  width:50%;
}
.anim_text h3{
  margin-top:20px;
  text-align: center;
}
.d_copyright{
  font-size:10px;
  text-align: right;
}
#dwedding_wrap .d_img{
  width:50%;
}
#dwedding_wrap .d_text{
  width:36%;
  margin: 0 auto;
}
.dwedding_center_img{
  width:100%;
  overflow: hidden;
}
.dwedding_center_img img{
  margin: 0 auto;
}
.color_wred{
  color: #c1332c;
}
.color_wblue{
  color: #7b85a4;
}
.color_wyellow{
  color: #a27323;
}
.color_wpurple{
  color: #9f5390;
}
.color_wgreen{
  color: #6b6e3f;
}
.color_wbluegreen{
  color: #5295a0;
}
.disney_main{
  position: relative;
  overflow: hidden;
}
.disney_main img{
  margin: 0 auto;
}
.slick-dots li{
  position: relative;
  overflow: hidden;
  margin: 10px 10px 0 0;
}
.slick-dots li button{
  position: absolute;
  left: 0;
  top:0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.slick-dots{
  bottom:-35px;
}
.slick-dots li button::before{
  content: "";
  position: absolute;
  width:100%;
  height: 100%;
  left: 0;
  top:0;
  display: block;
  background: #c1332c;
}
.slick-dots li.slick-active button:before{
  content:"" !important;
  background: #c1332c;
}
.wd1 .slick-dots li{
  background: rgba(193,51,44,0.3);  
}
.wd1 .slick-dots .slick-active{
  background: rgba(193,51,44,1);
}
.wd2 .slick-dots li{
  background: rgba(187,201,221,0.3);  
}
.wd2 .slick-dots .slick-active{
  background: rgba(187,201,221,1);  
}
.wd3 .slick-dots li{
  background: rgba(210,184,63,0.3);  
}
.wd3 .slick-dots .slick-active{
  background: rgba(210,184,63,1);  
}
.wd4 .slick-dots li{
  background: rgba(159,83,144,0.3);  
}
.wd4 .slick-dots .slick-active{
  background: rgba(159,83,144,1);  
}
.wd5 .slick-dots li{
  background: rgba(107,110,63,0.3);  
}
.wd5 .slick-dots .slick-active{
  background: rgba(107,110,63,1);  
}
.wd6 .slick-dots li{
  background: rgba(131,205,212,0.3);  
}
.wd6 .slick-dots .slick-active{
  background: rgba(131,205,212,1);
}

.popup{
  position:fixed;
  width:100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  left: 0;
  top:0;
  z-index: 9999;
  display: none;
}
.popup_img{
  cursor: pointer;
}
.load_img img{
  position: absolute;
  left: 50%;
  top:50%;
  height: 90%;
  display: block;
  width: auto;
  transform-origin: center center;
  transform:translate(-50%,-50%) scale(0.5);
}
.close_icon{
  position: fixed;
  right:0;
  top:0;
  width:60px;
  height: 60px;
  background: #000;
  cursor:pointer;
}
.close_icon:before{
  content:"";
  position: absolute;
  left: 8px;
  top:30px;
  width:45px;
  height: 1px;
  transform-origin: center center;
  transform:rotate(45deg);
  background: #FFF;
}
.close_icon:after{
  content:"";
  position: absolute;
  left: 8px;
  top:30px;
  width:45px;
  height: 1px;
  transform-origin: center center;
  transform:rotate(-45deg);
  background: #FFF;
}
.tux1 .theme_logo img,
.tux2 .theme_logo img {
  transform: scale(1.2);
}

.tux3 .theme_logo img{
  transform: translateX(-30px);
}
.tux4 .theme_logo img{
  transform: translateY(30px);
}
.tux5 .theme_logo img{
  transform: translateX(30px);
}
.sp_head{
  display: none;
}
.parallax_ef{
  position: relative;
  width: 100%;
  padding-top: 60%;
  height: 0;
}
.parallax_ef img{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
}




@media screen and (max-width: 768px) {
  .cn_inner h2 {
    width: 100%;
    /*
    max-width: 280px;
    */
    margin:0 auto 40px;
  }
  .cn_inner h2 img{
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .tuxedo_head h2 img{
    max-width: 200px;
  }
  .dress_text .inspired_chara {
    width: 40%;
    margin: 35px auto 0;
  }  
  .dress_text h3 {
    font-size: 22px;
    line-height: 22px;
    margin: 20px 0;
  }  
  .dress_text h3 span {
    font-size: 32px;
  }  
  .bg_frozen2 .img_flex{
    margin-top: 0;
  }
  .bg_frozen2 {
    padding-bottom: 30px;
  }
  
  .original_slick .cursor_no {
    width: 15px;
    height: 15px;
    margin-right: 10px;
  }
  h1{
    font-size:22px;
    line-height: 30px;
  }
  #main_copy h2{
    font-size: 18px;
    line-height: 30px;
    text-align: justify;
  }
  #main_copy p{
    padding: 0;
    margin-top:20px;
    font-size:16px;
    line-height: 28px;
  }
  .main_text p{
    line-height: 32px;
  }
  .cn_inner{
    padding: 60px 30px;
  }
  #main_copy .cn_inner{
    padding:40px 20px 60px;
  }
  .theme_logo{
    margin-top:40px;
  }
  .img_flex{
    display: block;
  }
  .main_img{
    width:100%;
    margin: 0 auto;
  }
  .main_text{
    width:100%;
    max-width: 100%;
  }
  .main_text p{
    padding: 0;
  }
  .gallery_flex{
    display: block;
    margin-top:20px;
  }
  .gallery_img{
    margin: 0 7.5px;
    width: calc(100% - 15px) !important;
  }
  .gallery_flex .slick-list{
    overflow: visible;
  }
  .slick-next,.slick-prev{
    display: none !important;
  }
  .gallery_img{
    transition: none;
  }
  
  .img_flex{
    margin-top:40px;
    margin-bottom: 0;
  }
  .dress_text h2{
    font-size:20px;
    line-height: 20px;
    margin: 20px 0 0;
  }
  .dress_text p{
    margin-top:10px;
    font-size:16px;
    line-height: 32px;
  }
  .bg_red .main_img {
    width: 80%;
    margin: 0 auto;
  }
  #tuxedo_wrap .en_gara {
    font-size: 32px;
    line-height: 32px;
    margin-bottom: 30px;
  }
  .tuxedo_flex{
    display: block;
  }
  .tuxedo_img{
    width:100%;
  }
  .theme_logo {
    margin-top: 15px;
  }
  #tuxedo_wrap .main_text{
    margin-bottom:60px;
  }
  .tuxedo_flex:last-child .main_text{
    margin-bottom:30px !important;
  }
  .princess_wedding h2 {
    font-size: 36px;
    line-height: 32px;
    margin-bottom: 0;
  }  
  .princess_wedding h3 {
    font-size: 16px;
    line-height: 16px;
  }  
  .princess_wedding h3 span {
    font-size: 10px;
  }
  .princess_wedding .cn_inner {
    padding:40px 30px;
  }
  .dwedding_flex{
    display: block;
  }
  #dwedding_wrap .img_flex{
    padding-top: 60px;
    margin-top: 0;
  }
  #dwedding_wrap .d_img {
    width: 100%;
  }
  #dwedding_wrap .cn_inner {
    padding: 0 30px 40px;
  }
  
  .tuxedo_head h2{
    margin-bottom: 0;
  }
  .tuxedo_head {
    padding: 40px 30px;
  }
  .tuxedo_wrap .cn_inner {
    padding: 20px 20px 40px;
  }
  #roll{
    position: relative;
    width:500%;
    display: flex;
    animation: loop_animation 20s linear infinite;
  }
  #roll img{
    width: calc(100% / 3);
    height: auto;
  }


  @keyframes loop_animation {
    0% {
      left:0;
    }
    100% {
      left:-167%;
    }
  }
  /*
  .princess_flex .dress_text h3{
    font-size:16px;
    line-height: 16px;
    margin:30px 0;
  }
  .princess_flex .dress_text h3 span{
    font-size:28px;
  }
  */
  .dress_text h3{
    font-size:16px;
    line-height: 16px;
    margin:30px 0;
  }
  .dress_text h3 span{
    font-size:28px;
  }
  
  .dress_text .inspired_chara .copyright {
    font-size: 10px;
    line-height: 10px;
  }    
  
  
  
  
  
  
  .anim_image{
    width: 100%;
    margin: 50px auto 0;
  }
  .anim_text h3{
    margin-bottom:30px;
    margin-top:5px;
  }
  
  
  #dwedding_wrap .d_text{
    width:100%;
    margin-top:45px;
  }
  .dwedding_flex{
    margin-top:60px;
  }
  .slick-dots {
    text-align: left;
  }
  .slick-dots {
    bottom: -32px;
  }
  .slick-dots li {
    width: 15px;
    height: 15px;  
  }
  .dwedding_flex:last-child .main_text{
    margin-bottom:30px !important;
  }
  .dwedding_flex:nth-child(1){
    margin-top:10px;
  }
  .load_img img{
    height: auto;
    width: 90%;
  }
  .sp_head{
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom:15px;
  }
  .anim_image{
    position: relative;
    width:50%;
    margin: 0;
  }
  .sp_head .dress_text{
    position: relative;
    width:50%;
  }  
  .sp_head .dress_text h3{
    padding: 0;
    margin: 0 0 0 0;
    line-height: 24px;
  }
  .sp_head .d_copyright{
    text-align: center;
    margin-top:10px;
  }
  .pc_view{
    display: none;
  } 

  .theme_logo img{
    width:120px;
  }
  .woody .theme_logo img {
    width: 60px;
  }
  .bg_red .theme_logo img{
    width:120px;
  }
  .bg_pink .theme_logo img {
    width: 110px;
  }
  .bg_blue .theme_logo img {
    width: 100px;
  }
  
  .bg_fantasia .bg_fixed{
    background-size: 600px auto;
  }
  .bg_frozen .bg_fixed{
    background-size: 600px auto;
  }
  .bg_frozen2 .bg_fixed{
    background-size: 100px auto;
  }
  .bg_wish .bg_fixed{
    background-size: 600px auto;
  }
  .bg_frozen2{
    clip-path: polygon(0 3%, 100% 0, 100% 100%, 0% 100%); /* 台形の形状を定義 */
  }
  .bg_frozen2 .cn_inner{
    padding-top: 95px;
  }
  .pooh span{
    display: block;
  }
}


