@charset "UTF-8";



/* ====================================================

 *     サイト全体の基本スタイル

 *     背景色、文字色、リンク色はカラーセット設定で変化

 * ==================================================== */



/*背景*/

.gamen_bg_color1{
  background-color: #d1d2d1;
  width:770px;
  text-align:left;
  margin: 0px auto;
}



.gamen_bg_color1 a{
  text-decoration:underline;

}

.gamen_bg_color3{

    margin:10px auto;

  background-color: #fff;

  padding: 10px;

    width:93%;

    font-size:1.2em;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #000;

}



.gamen_bg_color3 span{

  color: #0863C5;

}



.gamen_bg_color3 a{

    color:#0892C5;

}





.gamen_bg_color4{

  background-color: #fff;

  padding: 10px;

  width:85%;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #000;

}



.gamen_bg_color5{

  background-color: #fff;

  padding: 8px;

    width:85%;

    margin-bottom:5px;

    height:290px;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #000;

}


.gamen_bg_color6{
  background-color: #fff;
  padding: 5px;
    width:94%;
    margin-bottom:5px;
    height:280px;
  /* border-radius */
  border-radius:3px;
  -webkit-border-radius:3px;
  -moz-border-radius:3px;
  /* border */
  border:1px solid #000;
}

.gamen_bg_color7{

  background-color: #fff;

  padding: 8px;

    width:89%;

    margin-bottom:5px;

    height:340px;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #000;

}



/*txtカラー*/

.gamen_txt_pu{

  color: #60C;  

}





/*width100%のバナー*/

.gamen_width_max{

  text-align: center;

  line-height: 0px;

}



.gamen_width_max img{
  max-width: 100%;
}





/*マージン各種*/

.gamen_margin10{

  margin:10px;

}



.gamen_margin_top5{

  margin-top:5px;

}



.gamen_margin_bottom3{

  margin-bottom:3px;

}



.gamen_margin_bottom5{

  margin-bottom:5px;

}



.gamen_margin_bottom10{

  margin-bottom:10px;

}



.gamen_margin_bottom15{

  margin-bottom:15px;

}



.gamen_margin_bottom25{

  margin-bottom:25px;

}



.gamen_margin_left5{

  margin-left:5px;

}



.gamen_margin_right5{

  margin-right:5px;

}



.gamen_margin_left10{

  margin-left:10px;

}



.gamen_margin_right10{

  margin-right:10px;

}





/* IE7 hack */

*+html .gamen_margin_top-4{

  margin-top:-4px;

}





/*パディング各種*/

.gamen_padding_top10{

  padding-top:10px;

}



.gamen_padding_top15{

  padding-top:15px;

}



.gamen_padding_bottom10{

  padding-bottom:10px;

}



.gamen_padding_bottom25{

  padding-bottom:25px;

}



.gamen_padding_right5{

  padding-right:5px;

}



.gamen_padding_right10{

  padding-right:10px;

}



.gamen_padding_right12{

  padding-right:12px;

}



.gamen_padding_left5{

  padding-left:5px;

}



.gamen_padding_left10{

  padding-left:10px;

}





/*100%以下のdiv*/

.gamen_740div{

  margin:20px 15px 0px 15px;

}



.gamen_740div2{

  margin:0px 15px 0px 15px;

}



.gamen_95div{

  margin:5px 10px;

}



.gamen_90div{

  width:90%;

  margin:0 auto;

}



.gamen_80div{

  width:80%;

  margin:0 auto;

}





/*tableに当てるクラス*/

table.gamen_title_box_table{

  width:100%;

  margin-bottom:10px;

}



table.gamen_title_box_table2{

  width:50%;

  margin-bottom:10px;

}



.gamen_v_top{

  vertical-align:top;

}



.gamen_v_middle{

  vertical-align:middle;

}



.gamen_v_bottom{

  vertical-align:bottom;

}



.gamen_w06per{

  width:6%;

}



.gamen_w08per{

  width:8%;

}



.gamen_w13per{

  width:13%;

}



.gamen_w16per {

  width:16%;

}



.gamen_w22per{

  width:22%;

}



.gamen_w30per {

  width:30%;

}



.gamen_w40per {

  width:40%;

}



.gamen_w45per {

  width:45%;

}



.gamen_w50per{

  width:50%;

}



.gamen_w59per{

  width:59%;

}



.gamen_w70per{

  width:70%;

}



.gamen_w55per{

  width:55%;

}



.gamen_w81per{

  width:81%;

}



.gamen_w84per{

  width:84%;

}



.gamen_w91per{

  width:91%;

}



.gamen_w99per{

  width:99%;

}





/*表紙6列表示table*/

table.gamen_cover6_table{

  width:498px;

  margin-bottom:10px;

  margin-left:auto;

  margin-right:auto;

}



table.gamen_cover6_table td{

  width:83px;

  padding:2px;

}



table.gamen_cover6_table img{

  width:83px;

  border:1px solid #808080;

}





/*表紙3列表示table*/

table.gamen_cover3_table{

  width:249px;

  margin-bottom:10px;

  margin-left:auto;

  margin-right:auto;

}



table.gamen_cover3_table td{

  width:83px;

  padding:2px;

}



table.gamen_cover3_table img{

  width:83px;

  border:1px solid #808080;

}





/*表紙2列表示table*/

table.gamen_cover2_table{

  width:240px;

  margin-bottom:10px;

  margin-left:auto;

  margin-right:auto;

}



table.gamen_cover2_table td{

  width:120px;

  padding:2px;

}



table.gamen_cover2_table img{

  width:120px;

  border:1px solid #808080;

}





/*巻サム*/

.gamen_vol_thum{

    text-align:left;

  padding:0 10px 0 0;

  margin-bottom: 5px;

  width: 96px;

}



.gamen_vol_thum img{

  margin: 0 0 5px;

  max-width: 100%;

  max-height: 100%;

  border:1px solid #808080;

}



.gamen_vol_thum2{

    text-align:left;

  margin-bottom: 5px;

  wwidth: 136px;

}



.gamen_vol_thum2 img{

  margin: 0 0 5px;

  max-width: 100%;

  max-height: 100%;

  border:1px solid #808080;

}



.gamen_vol_thum3{

    text-align:left;

  padding:0 10px 0 0;

  margin-bottom: 5px;

  width: 136px;

}



.gamen_vol_thum3 img{

  margin: 0 0 5px;

  max-width: 100%;

  max-height: 100%;

  border:1px solid #808080;

}





/*ボタン*/

.gamen_btn_area img {

  max-width:100%;

}



.gamen_btn_area a {

  text-decoration:none;

}







/*レビュー部分*/

.gamen_user_thum{

  padding:0 10px 0 0;

  margin-bottom: 5px;

}



.gamen_user_thum img{

  max-width: 100%;

  max-height: 100%;

  margin-bottom: 5px;

}



.gamen_user_name{

  text-align:center;

  color:#43B4FF;

  font-size:12px;

  font-weight:bold;

}



.gamen_fukidasi {

  border:3px solid #A8D200;

  border-radius:10px;

  background-color:#FFF;

  padding:10px;

  margin: 5px 0;

}



.gamen_fukidasi p {

  font-size:12px;

}



.gamen_fukidasi img {

  vertical-align:top;

}





/*dotライン*/

.gamen_right_line_pk{

  border-right:2px dotted #F06;

  margin-right:5px;

}



.gamen_right_line_gr{

  border-right:2px dotted #418200;

  margin-right:5px;

}



.gamen_right_line_bl{

  border-right:2px dotted #09F;

  margin-right:5px;

}



.gamen_right_line_wh{

  border-right:2px dotted #FFF;

  margin-right:5px;

}



.gamen_right_line_pr{

  border-right:2px dotted #90F;

  margin-right:5px;

}



.gamen_right_line_or{

  border-right:2px dotted #F90;

  margin-right:5px;

}



.gamen_right_line_rd{

  border-right:2px dotted #F00;

  margin-right:5px;

}



.gamen_top_line_gr{

  border-top:2px dotted #418200;

  margin-top:15px;

  padding-top:15px;  

}



.gamen_top_line_bl{

  border-top:2px dotted #09F;

  margin-top:15px;

  padding-top:15px;

}



.gamen_top_line_bk{

  border-top:2px dotted #000;

  margin-top:15px;

  padding-top:15px;

}



.gamen_top_line_pr{

  border-top:2px dotted #90F;

  margin-top:15px;

  padding-top:15px;

}



.gamen_top_line_or{

  border-top:2px dotted #F90;

  margin-top:15px;

  padding-top:15px;

}



.gamen_top_line_pk{

  border-top:2px dotted #F06;

  margin-top:15px;

  padding-top:15px;

}



.gamen_top_line_rd{

  border-top:2px dotted #F00;

  margin-top:15px;

  padding-top:15px;

}

.gamen_top_line_wh{

  border-top:2px dotted #FFF;

  margin-top:15px;

  padding-top:15px;

}





/*ページTOPへ*/

.gamen_page_top{

  text-align: right;

  margin-top:15px;

  margin-right: 20px;

  margin-bottom: 15px;

}



.gamen_page_top a {

  text-decoration:none;

}





/*雑誌一覧*/

table.gamen_magazine{

  width:99%;

  margin:5px auto 10px;

  border-top:1px solid #0CC;

  border-left:1px solid #0CC;

  border-collapse: collapse;

  background-color:#AFF;

}



table.gamen_magazine td{

  width:25%;

  border-right:1px solid #0CC;

  border-bottom:1px solid #0CC;

  border-collapse: collapse;

  padding:5px 0;

  text-align:center;

}



table.gamen_magazine td a{

  color:#06C;

  text-decoration:none;

  text-align:center;

  font-size:14px;

}



.gamen_magazine_logo img{

  width:150px;

  margin: 0px 5px;

}



.gamen_link_banner img{

  width:350px;

}



.gamen_title_txt{

  margin:8px 0;

  color: #000;

  font-size: 1.2em;

    clear:both;

}



.gamen_title_name{

  font-size: 1.5em;

  line-height:1.3;

  margin:5px 0;

  font-weight:bold;

  color: #000;

    text-decoration: underline;

}



.gamen_title_name a{

  color: #000;

  text-decoration: underline;

}



.gamen_title_name2{

  font-size: 1.5px;

  line-height:1.2;

  margin-bottom:5px;

  font-weight:bold;

  color: #351F01;

}



.gamen_title_name2 a{

  color: #351F01;

  text-decoration: underline;

}



.gamen_author_name{

  font-size: 1.5em;

  line-height:1.2;

  color: #000;

    margin:5px 0 0;

}



.gamen_author_name a{

  text-decoration: underline;

  color: #000;

}




.gamen_author_name2{

  font-size: 1em;

  line-height:1.2;

  color: #000;

    margin:5px 0 0;

}



.gamen_author_name2 a{

  text-decoration: underline;

  color: #000;

}



.gamen_link{

  font-size: 12px;

  line-height:1.2;

  margin-bottom:5px;

}



.gamen_link a{

  color: #0FF;

  text-decoration: underline;

}



.gamen_sepa{

  width:10px;

  vertical-align: top;

  background-image: url(../images/130920_dot1.png);

  background-repeat: repeat-y;

  background-size: 10px;

}



.gamen_sepa2{

  margin:10px 0px;

  height:10px;

  vertical-align: top;

  background-image: url(../images/130920_dot2.png);

  background-repeat: repeat-x;

  background-size: 10px;

}



.gamen_watari{

  margin:10px;

  text-align:right;

  font-size:18px

}



.gamen_watari a{

  text-decoration: underline;

   color: #FFF;

}



.gamen_table td{

  text-align:center;

}



.gamen_table .gamen_table_thum{

  border:solid 1px #CC0000;

  background-color:#FFCCFF;

  text-align:center;

  margin:0px auto 5px auto;

  width: 119px;

  height: 166px;

}



.gamen_table .gamen_table_thum img{

  height:166px;

}



.gamen_small_btn{

  width:146px;

  height:75px;

  margin: 0px 3px 10px 3px;

  background-image:url(../images/140501_mag_btn.png);

  background-repeat: no-repeat;

  background-position: left top;

  background-size: 146px;

}



.gamen_small_btn img{

  width:146px;

}



.gamen_small_btn a {

  display:block;

  width:146px;

  height:75px;

  font-size:1px;

  line-height:1px;

  outline:none;

}



.gamen_small_btn a:hover {

  background-image:url(../images/140501_mag_btn_r.png);

  background-size: 150px;

  background-repeat: no-repeat;

  background-position: left top;

  background-size: 146px;

} 



.sm_cimg{

  line-height:0px;

  text-align:right;

}



.sm_li_img{

  width:404px;

  margin: 0px;

}



.sm_li_img img{

  width:400px;

  border:#000 solid 2px;

}



.sm_mag_btn{

  margin:5px 0px;

  text-align:center;

}



.sm_mag_btn img{

  width: 100%;

  max-width: 240px;

}



.sm_copyright2{

    width:95%;

  margin:10px auto 0;

    text-align:center;

  color:#000;

  font-size:1em;

}



.sm_copyright3{

    width:90%;

  margin:10px auto 5px;

    padding:5px;

    text-align:center;

  color:#000;

  font-size:1.3em;

    background-color:#fff;

    border:1px #000 solid;

}



.sm_copyright{

  margin:0px;

  padding:10px;

  color:#000;

  font-size:0.6em;

    text-align:center;

}



.gamen_thum_small img{

  width:105px;

  border:solid 1px #666;

}



.sm_cimg{

  line-height:0px;

  text-align:right;

}



.sm_li_img{

  width:404px;

  margin: 0px;

}



.sm_li_img img{

  width:400px;

  border:#000 solid 2px;

}



.sm_mag_btn{

  margin:5px 0px;

  text-align:center;

}



.sm_mag_btn img{

  width: 100%;

  max-width: 240px;

}



.gamen_itembox{

  margin: 5px;

  padding: 5px;

  width: 330px;

  height:145px;

  background-color: #fff;

  float: left;

}



.sm_btnset li{

  list-style: none;

  margin-top:10px;

  width:49%;

  text-align:right;

  float:left;

  padding-bottom:5px;

}



.sm_btnset li:last-child{

  width:49%;

  text-align:left;

  float:right;

}



.sm_docomopt img{

  width:100%;

      vertical-align:top; 

}





/* マーキー */

.gamen_mq{

  width: 100%;

  margin: 20px 0 5px;

  padding: 5px 0;

  color: #fff;

  font-size: 1.5em;

  background-color: #50A7E6;

}





.gamen_mq a{

  color:#fff;



}



/* 還元表示 */

.gamen_cbtn{

  width:90%;

  height:20px;

  float: left;

  font-size:1.2em;

  font-weight:bold;

  text-align:center;

  color:#fff;

  background-color:#f00;

  padding:3px ;

  margin:5px 0;

  /* border-radius */

  border-radius:5px;

  -webkit-border-radius:5px;

  -moz-border-radius:5px;

  /* border */

  border:1px solid #f00;



}



/* キャン渡りボタン */

.gamen_canbtn{

  margin:10px auto;

  width:80%;

  float: center;

  font-weight:bold;

  text-align:center;

  color:#000;

  background-color:#fff;

  background-image: linear-gradient(white,#ececec);

  margin:15px auto;

  font-size:1.3em;

  height:70px;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #dddddd;

}



.gamen_canbtn  a{

    color:#000;

    text-decoration: none;

    display: block;

    height:70px;

    line-height:4.5em;

}





.gamen_canbtn2{

  margin:10px auto;

  width:98%;

  float: center;

  font-weight:bold;

  text-align:center;

  color:#000;

  background-color:#fff;

  background-image: linear-gradient(white,#ececec);

  margin:3px auto;

  font-size:1.3em;

  height:70px;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #dddddd;

}



.gamen_canbtn2  a{

    color:#000;

    text-decoration: none;

    display: block;

    height:70px;

    line-height:4.5em;

}





/*コマサム*/

.gamen_bigthm{

  padding-left:5px;

}



.gamen_bigthm img{

  border:1px #000 solid;

  width:98%;

}



.gamen_thum img{

  border:1px #000 solid;

  width:250px;

}



.gamen_thum_big img{

  width:110px;

  border:solid 1px #000;

}



.gamen_thum_big2 img{

  width:140px;

  border:solid 1px #000;

}

.gamen_thum_big3 img{

  width:145px;

  border:solid 1px #000;

}

.gamen_thum_big4 img{

  width:110px;

  border:solid 1px #000;

}


.gamen_thum_big5 img{

  width:170px;

  border:solid 1px #000;

}

.gamen_thum_big6 img{

  width:180px;

  border:solid 1px #000;

}



.gamen_canbtn3{

  margin:10px auto;

  width:300px;

  float: center;

  font-weight:bold;

  text-align:center;

  color:#000;

  background-color:#fff;

  background-image: linear-gradient(white,#ececec);

  margin:5px auto;

  font-size:1.3em;

  height:30px;

  /* border-radius */

  border-radius:3px;

  -webkit-border-radius:3px;

  -moz-border-radius:3px;

  /* border */

  border:1px solid #dddddd;

}



.gamen_canbtn3  a{

  color:#000;

  text-decoration: none;

  display: block;

  height:30px;

  line-height:1em;

}



.gamen_line {
  background: linear-gradient(transparent 60%, #FFFF9F 0%);
}

.gamen_2thum img{
  border:1px #000 solid;

}

.gamen_no1{
  width:100%;
  padding:5px 0;
  color:#fff;
  background-color:#0c0a6e;
  text-align:center;
  font-size:1.5em;
  font-weight:bold;

}


.gamen_no2{
  width:100%;
  padding:3px 0;
  margin-bottom:5px;
  color:#fff;
  background-color:#bcad01;
  text-align:center;
  font-size:1.2em;
  font-weight:bold;

}

.can_flame{
  background-color:#fff;
  width:93%;
  padding:10px;
  margin:10px auto;
  font-size:1.2em;
  border:2px solid #bcad01;

}

.can_flame span{
  font-weight:bold;
  color:#bcad01;

}




.gamen_no{
  text-align:left;
}

.gamen_no a{
 color:#000;
 font-size:1.5em;
 font-weight:bold;
}


.gamen_menu{
  display: flex;
  width:97%;
  flex-wrap: wrap;
  justify-content: center;
  margin: auto;
  
}
.gamen_menu li{
  width:25%;
  text-align:center;
  box-sizing: border-box;
  margin-bottom: 0;
  padding: 0 1px 5px 1px;
  list-style: none;
}
.gamen_menu img{
  width: 100%;
  max-width: 184px;
  height: auto;
}


.gamen_container{
    display: flex;
  width: 700px;
  margin: 10px auto 0px;
}

.gamen_container2{
  display: flex;
  width:97%;
  flex-wrap: wrap;
  margin: auto;
}
.gamen_contents2{
  width:50%;
  display: flex;
  justify-content:space-between;
  margin-bottom: 10px;
}
.gamen_contents2_back {
  width:100%;
  background-color: #fff;
  padding: 5px;
  margin: 0px 5px 0px 5px;
  /* border-radius */
  border-radius:3px;
  -webkit-border-radius:3px;
  -moz-border-radius:3px;
  /* border */
  border:1px solid #000;
}

.gamen_container3{
    display: flex;
  width: 100%;
}
.gamen_left3{
    width: 180px;
  box-sizing: border-box;
}
.gamen_left3 img{
  width:170px;
  border:solid 1px #000;
}
.gamen_contents3{
    flex: 1;
  box-sizing: border-box;
}


.gamen_contents4{
  width:25%;
  display: flex;
  justify-content:space-between;
  margin-bottom: 10px;
  text-align: center;
}
.gamen_contents4_back {
  width:100%;
  background-color: #fff;
  padding: 8px;
  margin: 0px 5px 0px 5px;
  /* border-radius */
  border-radius:3px;
  -webkit-border-radius:3px;
  -moz-border-radius:3px;
  /* border */
  border:1px solid #000;
}

/********************************************************************
  ゆびさきと恋々
********************************************************************/

/*margin*/
.mb5{margin-bottom: 5px!important;}
.mb10{margin-bottom: 10px!important;}
.mb15{margin-bottom: 15px!important;}
.mb20{margin-bottom: 20px!important;}
.mb30{margin-bottom: 30px!important;}
.mb40{margin-bottom: 40px!important;}
.mb50{margin-bottom: 50px!important;}
.mb60{margin-bottom: 60px!important;}
.mb70{margin-bottom: 70px!important;}
.mb80{margin-bottom: 80px!important;}
.mb90{margin-bottom: 90px!important;}


.mt20{margin-top: 20px!important;}
.mt35{margin-top: 35px!important;}
.mt40{margin-top: 40px!important;}
.mt50{margin-top: 50px!important;}
.mt70{margin-top: 50px!important;}

.mr5{margin-right: 5px!important;}
.mr10{margin-right: 10px!important;}
.mr15{margin-right: 15px!important;}
.mr25{margin-right: 25px!important;}

/*padding*/
.pt10{padding-top: 10px!important}
.pt20{padding-top: 20px!important}
.pt30{padding-top: 30px!important}
.pt35{padding-top: 35px!important}
.pt50{padding-top: 50px!important}

.pb20{padding-bottom: 20px!important}
.pb30{padding-bottom: 30px!important}
.pb40{padding-bottom: 40px!important}
.pb60{padding-bottom: 60px!important}
.pb70{padding-bottom: 70px!important}

/*text*/
.text_left{text-align: left}
.text_right{text-align: right}

/*flex*/
.fl{display: flex;}/*コンテンツ回り込み*/
.ju{justify-content: space-between;}/*左右にわける*/
.ju_sa{justify-content: space-around;}/* 各アイテムを均等に配置し各アイテムの両側に半分の大きさの間隔を置く */
.ju_left{justify-content: left;}
.ju_right{justify-content: right;}
.ju_f_end{justify-content: flex-end;}
.ju_se{justify-content: space-evenly;}/* 各アイテムを均等に配置し各アイテムの周りに同じ大きさの間隔を置く */
.ju_center{justify-content: center;}
.items_center{align-items: center;}

/********************************************************************
  共通
********************************************************************/
#ybsktrnrn{
  margin: 0 auto;
  padding-top: 10px;
  max-width: 770px;
  width: 100%;
  height: auto;
  background: url(../images/bg_pattern01.png) repeat-y top;
  background-color: #fef5e4;
}

#ybsktrnrn img{
    max-width: 100%;
    height: auto;
}

#ybsktrnrn ul li {
    list-style: none;
}

.t_pink {
  color: #dd8995!important;
  display: inline-block;
}

/*動き*/
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
  }

.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
  }

.float {
  width: 770px;
  margin: 0 auto;
}

.floating {
  position: fixed;
  left: auto;
  bottom: 50px;
  display: none;
  z-index: 100;
}

.floating a {
  display: block;
  padding: 8px;
  text-decoration: none;
}

.floating a:hover {
  opacity: 1;
}

/*雪*/
.snow,
.snow2nd{
  color: #fff;
  /*雪の大きさ*/
  font-size: 13px;
  /*初期位置*/
  position: absolute;
  top: 0;
  left: 1%;
  /*雪を適当な幅で降らせる*/
  text-shadow:
  5vw   100px 2px,
  10vw  80px 3px,
  20vw  400px 4px,
  30vw  300px 1px,
  32vw  250px 2px,
  15vw  340px 5px,
  25vw  150px 2px,
  38vw  180px 0,
  48vw  50px 4px,
  28vw  320px 9px,
  40vw  10px 7px;
  /*雪アニメーション1*/
  animation: roll 13s linear infinite;
  }
  /*2つめの雪アニメーション*/
  .snow2nd{
    top: 10%;
    animation: anim 8s linear infinite;
  }

  
  @keyframes roll {
    0% {transform:rotate(0deg);}
   90% {opacity:1;}
   100% {transform:rotate(0deg);top:100%;opacity:0;}
  }
  @keyframes anim {
  100% {color:transparent;top:150%;}
  }



.snow2,
.snow2_2nd{
  color: #fff;
  /*雪の大きさ*/
  font-size: 13px;
  /*初期位置*/
  position: absolute;
  top: 0;
  left: 1%;
  /*雪を適当な幅で降らせる*/
  text-shadow:
  5vw   100px 2px,
  10vw  80px 3px,
  20vw  400px 4px,
  30vw  300px 1px,
  32vw  250px 2px,
  15vw  340px 5px,
  25vw  150px 2px,
  38vw  180px 0,
  48vw  50px 4px,
  28vw  320px 9px,
  40vw  10px 7px;
  /*雪アニメーション1*/
  animation: roll2 30s linear infinite;
  }
  /*2つめの雪アニメーション*/
  .snow2_2nd{
    animation: anim2 35s linear infinite;
  }
  
  @keyframes roll2 {
    0% {transform:rotate(0deg);}
   90% {opacity:1;}
   100% {transform:rotate(0deg);top:100%;opacity:0;}
  }
  @keyframes anim2 {
  100% {color:transparent;top:150%;}
  }




/********************************************************************
  通常記述
********************************************************************/

/*ボタンエリア*/
.btn_area {
  max-width: 632px;
  width: 100%;
  height: auto;
  margin: 30px auto 35px;
}

.btn_area ul {
  display: flex;
  align-items: center;
    justify-content: space-between;;
}


/*イントロ*/
.intro {
  background-color: #dbf4fb;
  background: linear-gradient(180deg, rgba(255,239,213,0) 0%, rgba(219,244,251,1) 5%,rgba(230,243,241,1) 91%, rgba(236,242,235,1) 95%, rgba(253,241,219,0) 100%);
  padding: 60px 0;
  position: relative;
}

/*相関図*/
.character {
  padding: 60px 0;
  position: relative;
  background: url(../images/bg_pattern01.png) repeat-y top;
  background-color: #fef5e4;
}

.character::after {
  position: absolute;
  bottom: 0;
  right:36.5px;
  width: 697px;
  height: 7px;
  content: '';
  background: url(../images/img_line.png) no-repeat top;
  z-index: 0;
}

.character h2 {
  padding-bottom: 30px;
}




/*ストーリー*/
.story {
  padding: 20px 0 0;
  background-color: #fef5e4;
}

.story p {
  padding-top: 30px;
  position: relative;
  z-index: 199;
  font-size: 24px;
  font-family:  '游明朝 Medium', serif;
  color: #624c27;
  text-shadow: 0px 0px 10px #ffffff, -2px -2px 10px #fff, -1px -1px 10px #fff,2px 2px 10px #fff,1px 1px 10px #fff;
}

.story h2 {
  margin-bottom: 20px;
}


.icon01,
.icon02,
.icon03 {
  position: relative;
}

.icon01 img,
.icon02 img {
  position: relative;
  z-index: 100;
}


.icon01::before {
  position: absolute;
  top: 0;
  left:0;
  width: 347px;
  height: 346px;
  content: '';
  background: url(../images/img_dot.png) no-repeat top;
  z-index: 0;
}

.icon02::before {
  position: absolute;
  top: 0;
  right:0;
  width: 347px;
  height: 346px;
  content: '';
  background: url(../images/img_dot.png) no-repeat top;
  z-index: 0;
}

.icon03::after {
  position: absolute;
  bottom: 5%;
  right:10%;
  width: 88px;
  height: 63px;
  content: '';
  background: url(../images/img_icon01.png) no-repeat top;
  z-index: 0;
}

.st_box {
  position: relative;
  padding: 10px;
}

.st_box:before,.st_box:after{ 
    content:'';
    width: 18px;
    height: 18px;
    position: absolute;
    display: inline-block;
}

.st_box:before{
    border-left: solid 5px #dd8995;
    border-top: solid 5px #dd8995;
    top:0;
    left: 20%;
}

.st_box:after{
    border-right: solid 5px #dd8995;
    border-bottom: solid 5px #dd8995;
    bottom:0;
    right: 20%;
}
.st_box p {
    margin: 0; 
    padding: 0;
}



.move01 , .move02 {
  position: relative;
}

.move01 {
  color: #6f6787;
  font-size: 26px;
}

.move01::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -7px;
  width: 80%;
  height: 10px;
  border-bottom: solid 10px #fff;
}

.move02::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: -7px;
  width: 80%;
  height: 10px;
  border-bottom: solid 10px #fff;
}



.st_box01 {
  display: flex;
  align-items: center;
    justify-content: center;
  margin: 0 auto;
}

.st_box01 p:first-child {
  padding-right: 47px;
}

.st_box01 p:last-child{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  transform: rotate(10deg);
    -moz-transform: rotate(10deg);
    -webkit-transform: rotate(10deg);
  line-height: 1.4;
  font-size: 26px;
  position: relative;
}

.st_box01 p:last-child::after{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  transform: rotate(10deg);
    -moz-transform: rotate(10deg);
    -webkit-transform: rotate(10deg);
  line-height: 1.4;
  font-size: 26px;
  position: relative;
}

.st_box01 p:last-child::after,
.st_box01 p:last-child::before{ 
    content:'';
    width: 18px;
    height: 18px;
    position: absolute;
    display: inline-block;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -webkit-transform: rotate(-3deg);
}

.st_box01 p:last-child:before{
    border-right: solid 3px #dd8995;
    border-top: solid 3px #dd8995;
    top:-5%;
    right: -25%;
}

.st_box01 p:last-child:after{
    border-left: solid 3px #dd8995;
    border-bottom: solid 3px #dd8995;
    bottom:-13%;
    left: -16%;
}

.st_wrap01 {
  margin-top: 20px;
  padding-bottom: 30px;
}

.st_wrap02 {
  background-color: #dbf4fb;
  position: relative;
}

.st_box02 {
  display: flex;
  align-items: center;
  justify-content: center;
}

.st_box02_t {
  padding-right: 10px;
}

.st_box03 {
  max-width: 604px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding-top: 20px;
}

.st_box03_t01 {
  text-align: left;
}

.st_box03_t02 {
  text-align: right;
}

.st_wrap03 {
  position: relative;
  padding: 20px 0 10px;
  background: linear-gradient(0deg,rgba(229, 207, 224, 1),rgba(219, 244, 251, 1));
}

.st_inner02 {
  position: relative;
  padding-top: 40px;
  background-color: #eac7e2;
}

.st_wrap04 {
  max-width: 733px;
  width: 100%;
  height: auto;
  margin: 0 auto 20px;
  padding: 40px 0;
  background-color: #f6eaf3;
}

.st_wrap05 {
  position: relative;
}

.st_wrap05::before {
  position: absolute;
  top: 0;
  left:0;
  width: 770px;
  height: 197px;
  content: '';
  background: url(../images/bg_pink.png) no-repeat top;
  z-index: 0;

}

.st_wrap05_top {
  padding: 50px 0;
  background-color: #cfbed5;
}

.st_wrap05 p {
  position: relative;
  z-index: 99;
}

.st_wrap05_top p {
  position: relative;
}

.st_wrap05_top p::before {
  position: absolute;
  top: -3%;
  right: 18%;
  width: 58px;
  height: 47px;
  content: '';
  background: url(../images/img_hanabira01.png) no-repeat top;
  z-index: 0;
}

.st_wrap05_top p::after {
  position: absolute;
  bottom: -6%;
  right: 7%;
  width: 65px;
  height: 52px;
  content: '';
  background: url(../images/img_hanabira02.png) no-repeat top;
  z-index: 0;
}

.st_wrap05_bottom {
  position: relative;
  padding-bottom: 60px;
  background: linear-gradient(0deg,rgba(234, 199, 226, 1),rgba(207, 190, 213, 1));
}

.st_wrap05_bottom::before {
  position: absolute;
  bottom: 10%;
  left: 12%;
  width: 40px;
  height: 68px;
  content: '';
  background: url(../images/img_hanabira03.png) no-repeat top;
  z-index: 0;
}

.f_box {
  display:flex;
  align-items: center;
  justify-content: center;
} 

.f_box p:first-child{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding-right: 18px;
  text-align: start;
}

.f_box span {
  display: inline-block;
  text-indent: 97px;
}

/*キャンペーン*/
.y_campaign {
  padding: 20px 0 80px;
  background: url(../images/bg_pattern01.png) repeat-y top;
  background-color: #fef5e4;
}

.y_campaign p {
  color: #624c27;
  font-size: 14px;
  line-height: 1.4;
  font-family:  '游明朝 Medium', serif;
  text-shadow: 0px 0px 10px #ffffff, -2px -2px 10px #fff, -1px -1px 10px #fff,2px 2px 10px #fff,1px 1px 10px #fff;
}

.s_big01 {
  font-size: 18px;
}

.s_big02 {
  font-size: 20px!important;
}

.cam_txt {
  padding: 25px 0 50px;
}

.txt_btm {
  padding-top: 4px;
}

.title_main {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 70px;
}

.title_img {
  padding-right: 50px;
}

.title_main ul {
  padding-top: 30px;
  position: relative;
}

.title_main ul::after {
  position: absolute;
  bottom: -60%;
  right: -23%;
  width: 109px;
  height: 74px;
  content: '';
  background: url(../images/img_hana01.png) no-repeat top;
  z-index: 0;

}

.title_main ul li:first-child  {
  padding-bottom: 10px;
}

.title_sub {
  position: relative;
  padding-top: 30px;
}

.title_sub::before {
  position: absolute;
  top: 0;
  right:36.5px;
  width: 696px;
  height: 7px;
  content: '';
  background: url(../images/img_line.png) no-repeat top;
  z-index: 0;
}

.title_sub::after {
  position: absolute;
  bottom: -7%;
  left:7%;
  width: 93px;
  height: 110px;
  content: '';
  background: url(../images/img_hana02.png) no-repeat top;
  z-index: 0;
}

.sub_list {
  padding-top: 30px;
}

.sub_list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  max-width: 434px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.title_img02 {
  padding-right: 0;
}

.y_title_name {
  padding: 15px 0;
}

.btn_free {
  padding-bottom: 10px;
}

.y_title_name a {
  text-decoration: none;
  color: #624c27;
}

.y_title_name a:hover {
  opacity: 0.6;
}



/*コピーライト*/
small {
  display: block;
  padding: 10px 0;
  background-color: #fdf6e9;
}



/*特集用*/
.title_main_s {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 70px;
}

.title_main_s ul {
  position: relative;
}

.title_main_s ul::after {
  position: absolute;
  bottom: -100%;
  right: -23%;
  width: 109px;
  height: 74px;
  content: '';
  background: url(../images/img_hana01.png) no-repeat top;
  z-index: 0;

}

.title_main_s ul li:first-child  {
  padding-bottom: 10px;
}