@charset "shift_jis";
/*-- reset --*/
html {
	color: #000;
	background: #FFF;
	}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
	}

fieldset,img {
	border: 0;
	}

address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
	font-weight: normal;
	}

ol,ul {
	list-style: none;
	}

caption,th {
	text-align: left;
	}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
	}

q:before,q:after {
	content: '';
	}

abbr,acronym {
	border: 0;
	font-variant: normal;
	}

sup {
	vertical-align :text-top;
	}

sub {
	vertical-align: text-bottom;
	}

input,textarea,select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	}

input,textarea,select {
	font-size: 100%;
	}

legend {
	color: #000;
	}
	
img{
	border:0;
}	
@charset "utf-8";

/* CSS Document */

/* STARRY　関連*/

/* マイページ上部　案内表示*/
.mypage-info{
    margin-bottom: 20px;
    padding: 15px;
    background-color: #fff;
    border:solid 1px #eee;
}
.mypage-info a{
    text-decoration-line: underline;}
.mypage-info strong{
    font-size: 120%;
    line-height: 1.8;
}
@media screen and (max-width: 600px) {
.mypage-info strong{
    font-size: 100%;
    line-height: 1.8;}    
}
#div_entry12 pre{
    overflow: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
}
/*ログイン必須にする（「ログインせずに購入手続きへ」ボタンを消す）*/
button#btn2.stry-ec03-continue {display: none !important;}

.stry-ec01-breadcrumbs.stry-margintb5 {
	display: none;
}
.stry-ec01-categories-title.stry-margintb10 {
	display: none;
}
.stry-ec01-category-thumbnail {
	display: none !important;
}
.stry-ec01-category {
	display: inline-block !important;
	height: 0px !important;
	background-color: #FFF !important;
}
.stry-ec01-category-name, .stry-ec01-category-name a {
	height: 0px !important;
	padding: 0 5px 0 5px;
}
.stry-ec01-cartlink {
	display: none !important;
}
#div_item_ec01 .stry-marginb50 {
	margin-bottom: 0px !important;
}
#div_item_ec01 .stry-margint20 {
	margin-top: 0px !important;
}
.stry-ec01-item, .stry-ec01-category {
	width: auto !important;
	display: inline-block !important;
}
.stry-ec02-breadcrumbs.stry-alignleft {
    display: none;
}
/*問い合わせ　背景白*/
.stry-support01-table{
    background: #fff !important;
    border: 30px #fff solid;
    margin-top: 50px !important;
}
.stry-tableodd{
    background: #fff !important;
}
td.stry-support01-column01, td.stry-support01-column02{
    border: none !important;
}
/*STARRYボタン青色に変更*/
#div_entry06 .finish button,
#div_entry05 #btn,
#div_member02 .member02-2 button,
#div_password01 button,
#div_entry11 #btn,
#div_entry10 #btn,
#div_entry09 #btn,
#div_item_ec05 #btn,
.stry-ec04-payment-button,
button.stry-ec03-purchase,
.stry-support01-button button{
    margin: 50px auto 30px !important;
    padding: 5px 10px !important;
    background: #003CFF;
    width: 250px !important;
    height: 45px !important;
    border-radius: 30px;
    text-align: center;
    color: #fff !important;
    border: none !important;
}
/*STARRYボタン灰色に変更*/
#div_leave01 #div_btn button,
#div_leave01 #backbtn,
.stry-update06 button,
#div_member05 button,
#div_support03 button,
#div_entry07 button,
#div_entry06 .back06 button,
#div_entry05 #backbtn,
#div_entry04 button,
#div_member08 button,
#div_member02 button,
#div_password03 button,
#div_leave02 button,
#div_leave02 #backbtn,
.stry-error01-button,
.stry-entry01-button,
#div_entry11 #backbtn,
#div_entry10 #backbtn,
#div_entry09 #backbtn,
#div_item_ec05 #backbtn,
.stry-ec04-back-button,
.stry-glay-button button{
    margin: 50px auto 30px !important;
    padding: 5px 10px !important;
    background: #333333;
    width: 80px !important;
    height: 45px !important;
    border-radius: 30px;
    text-align: center;
    color: #fff !important;
    border: none !important;
}
/*　新規登録　*/
.stry-entry01-contents{
    background: #fff !important;
    font-weight: bold;
}
#div_entry01 .stry-midwrapper{
    display: none !important;
}

#entry_area{
    background: #fff;
}
#div_member02-2 p,
#div_password03 .title,
#div_password01 .title,
#div_entry01 .title{
    font-weight: bold;
    font-size: 16px;
    margin: 30px 0 15px;
}
#div_entry01 .stry-entry01-button{
    width: 200px !important;
    margin: 10px 0 30px 20px !important;
}
#div_entry01 .stry-entry01-agreement{
    line-height: 2;
}
.stry-entry01-signuptext span{
    line-height: 2;
}
input.stry-entry01-passwordbox,
input.stry-entry01-mailaddressbox{
    background: #fff;
    border: 1px solid #707070 !important;
    padding-left: 15px;
}
input:-webkit-autofill {
    transition: background-color 5000s ease-in-out 0s !important;
}
/* 会員登録　*/
.stry-course-select-table{
    margin: auto ;       
} 
/*　会員情報入力　*/
#div_entry05 .entry05-f{
    width: 70%;
    margin: auto;
}
/*
#div_entry05 .stry-member-info-input-text:after{
    content: "・市町村・番地";
}*/
#div_entry05 .entry05-info{
    width: 50%;
    margin: auto;
    text-align: left;
}
.stry-member-info-f{
    margin: auto;
    width: 100% !important;
    box-sizing: border-box;
    background: #fff;
    padding: 20px;
    border: 1px solid #707070;
    border-radius: 5px;
    margin-bottom:30px;
}
    @media screen and (max-width: 600px) {
        #div_member05 .info-f{
            width: 98% !important;
            margin: auto !important;
            text-align: left;
        }
        #div_entry05 .entry05-f{
            width: 90%;
        }
        .stry-member-info-f{
            width: 90% !important;
            padding: 10px;
        }        
}
#div_member05 .info-f{
    margin: auto;
    width: 70% !important;
    box-sizing: border-box;
    background: #fff;
    padding: 20px;
    border: 1px solid #707070;
    border-radius: 5px;
    margin-bottom:30px;
    line-height: 2;
}
#div_member05 .info-f table,
#div_member05 .info-f input{
    width: 100%;
}
#div_member05 .info-f input{
    box-sizing: content-box;
}
#div_member05 .info-f button{
    width: 30% !important;
}
#div_member05 .info-f select{
    height: 45px;
}
#div_member05 input{
    height: 35px;    
}
#div_member05 #name1_last,
#div_member05 #name2_last{
    width: 95% !important;
}
    @media screen and (max-width: 600px) {
        #div_member05 .info-f{
            width: 100% !important;
            margin: auto !important;
            text-align: left;
        }
        #div_entry05 .entry05-f{
            width: 90%;
        }
        .stry-member-info-f{
            width: 90% !important;
            padding: 10px;
        }        
        #div_member05 .info-f input{
        width: 100% !important;
        margin: auto;
        }
        #div_member05 .info-f table{
        width: 100% !important;
        margin: auto;
        }
        #div_member05 button.info-f,
        #div_member05 input#zip{
        width: 100% !important;
        margin: auto;
        }
        #div_member05 .info-f #nickname{
            width: 100% !important;
        }
        #div_member05 #name1_last,
        #div_member05 #name2_last{
            width: 95% !important;
        }        
        #div_member05 #name1_first,
        #div_member05 #name2_first{
            width: 100% !important;
        }        
        #div_member05 #address{
            margin-top: 10px;
        }
        #div_member05 .info-f #birthday_yyyy,
        #div_member05 .info-f #birthday_mm,
        #div_member05 .info-f #birthday_dd{
            margin: 10px 0 !important;
            width: 20% !important;
        }
        #div_member05 td.stry-member-info-input-cell{
            padding: 0 !important;
        }
}
#div_update06 table,
#div_entry06 table{
    margin: auto;
    width: 100%;
    background: #fff;
    margin-top: 15px;
    margin-bottom: 30px;
}
#div_leave01 #div_btn button,
#div_update06 .stry-update06 button{
    width: 150px !important;
}
#div_member05 tr,
#div_entry06 tr{
    height: 30px;
}
#div_entry06 td{
    padding-left: 15px;
}
#div_update06 td,
#div_member05 td{
    width: 35%;
    height: 35px;
}
#div_update06 td{
    padding-left: 15px;
}
#div_update06 .stry-update06-column01,
#div_entry06 .stry-entry06-column01{
    background: #F6F6F6;
}
#div_update06 table,#div_update06 td,
#div_entry06 table,#div_entry06 td{
    border-collapse: collapse;
    border:1px solid #707070;
    }

/* STARRY my page*/
button.stry-member01-button04, button.stry-member01-button05{
    line-height: 30px;
}
#div_member01 h5{
    margin: 30px 0 10px;
    font-size: 120%;
    font-weight: bold;
}
.stry-midwrapper{
    margin-bottom: 30px;
}
.stry-member01-column02,
.stry-midwrapper{
    background: #fff !important;
}
.stry-member01-column01{
    background: #F6F6F6;
}
hr.stry-member01-hr01{
    width: 300px;
    margin-left: unset;
}
#div_entry01 .stry-entry01-agreement a,
.stry-login01-forgotpassword a,
#link_leave a,
.stry-member01-siteinfo02 a:active,
.stry-member01-siteinfo02 a{
    color: #2155FF !important;
    line-height: 2;
}
/* logout */
.stry-loginbox{
    background: #fff !important;
}
.stry-logout01-button{
    line-height: 30px !important;
}

/* LOGIN */
#div_login01{
    margin: auto;
    width: 60%;
    max-width: 770px;
}
#login01_input1_area,
#login01_input2_area{
    margin: 30px 0 10px;
    text-align: left;
    font-weight: bold;
}
#div_login01 input.stry-login01-mailaddressbox, 
#div_login01 input.stry-login01-passwordbox{
    margin-left:auto !important;
    background: #fff !important;
    border: 1px solid #707070;
    padding-left: 15px;
}
#div_login01 input.back-white, 
#div_login01 input.back-white{
    background-color: #fff !important;
	-webkit-appearance: button;
	overflow: visible;    
}
    @media screen and (max-width: 600px) {
        #div_login01 input.stry-login01-mailaddressbox,
        #div_login01 input.back-white, 
        #div_login01 input.back-white{
            width: 100% !important;
        }
    }


#div_login01 .back_button{
    line-height: 30px !important;
}

/* cart */

#div_item_ec03 button.stry-ec03-recalc{
    width: 100px !important;
    height: 35px !important;
    line-height: 25px !important;
}
.stry-ec03-recalcblock{
    margin: auto;
    max-width: 680px;
}
    @media screen and (max-width: 1024px) {
        .stry-ec03-recalcblock{
            margin: auto;
            max-width: 680px;
        }
    }
.stry-ec03-table-subtotal{
    background: #E2F3CE !important;
}
.stry-tdw10{
    background: #E9E9E9;
}
.stry-ec03-table-itemname,
.stry-ec03-table-itempicture{
    background: #fff;
}
#div_item_ec03 .stry-ec03-sumblock{
    margin: auto;
    max-width: 700px;
    border-top:5px solid #4E4C4C;
    border-bottom:5px solid #4E4C4C;
}
button#btn5.stry-ec03-continue{
    line-height: 20px !important;
}
#div_item_ec03 button.stry-ec03-purchase{
    line-height: 35px !important;
}
.stry-ec03-enrollment{
    display: none !important;
}

/* 購入手続き画面　*/
#div_entry13,
#div_entry12,
.div_entry11,
.div_entry10,
.div_entry09,
.div_item_ec05,
.div_item_ec04{
    margin: auto;
    width: 70% !important;
    background: #fff;
    padding: 20px;
    border: 1px solid #707070;
    border-radius: 5px;
    margin-bottom:30px;
}
.stry-ec04-delivery_info tr,
.stry-addressbox tr{
    height: 40px;
}
.stry-ec04-column01{
    min-width: 150px;
    width: 20%;
}
#div_item_ec04 .stry-ec04-column03,
#div_item_ec04 .stry-ec04-column02{
    width: auto;
}
#div_item_ec04 .stry-ec04-column02 select,
#div_item_ec04 .stry-ec04-column02 input{
    width: 48% !important;
    box-sizing: content-box;
}
#div_item_ec04 .stry-ec04-column03 select,
#div_item_ec04 .stry-ec04-column03 input{
    width: 38% !important;
}
#div_item_ec04 input.stry-ec04-membername-firstbox,
#div_item_ec04 input.stry-ec04-membername-lastbox,
#div_item_ec04 input.stry-ec04-deliveryname-lastbox,
#div_item_ec04 input.stry-ec04-deliveryname-firstbox,
#div_item_ec04 input.stry-ec04-membername-lastbox{    
    width: 96% !important;
}
#div_item_ec04 .stry-ec04-deliveryzip-data input,
#div_item_ec04 .stry-ec04-memberzip-data input{
    margin-left: 2px;
}
#div_item_ec04 select,
#div_item_ec04 .stry-ec04-delivery_info input,
#div_item_ec04 .stry-addressbox input{
    height: 30px;
}
.stry-addressbox input{
    box-sizing: unset !important;
}
.stry-ec04-member_info_table,
.stry-addresstable{
    width: 85%;}
#div_logo_docomo,#div_logo_au,#div_logo_softbank,
#div_logo_cod,#div_logo_paypal,#div_logo_merpay{
    display: none;
}
.stry-paymethodinfobox{
    border: none !important;
    max-width: 300px !important;
}
.stry-ec03-daibiki-text {display: none;}
#same_delivery_flag{
    vertical-align: middle;
    margin-right: 10px;
}
input.stry-ec04-deliveryname-lastbox,
input.stry-ec04-membername-firstbox,
input.stry-ec04-membername-lastbox{
    width: 90% !important;
}


/* 注文確認　*/
#div_item_ec05 table{
    margin: auto;
    padding: 15px 0;
    width: 90%;
}
#div_item_ec05 td{
    width: 20% !important;
    height: 30px;
    text-align: left !important;
}
.item_ec05_hidden,
.item_ec05_hidden p{
    height: 0 !important;
}
#div_member05 .div_item_ec05_buy,
#div_entry09 .div_item_ec05_buy,
#div_entry10 .div_item_ec05_buy,
#div_entry11 .div_item_ec05_buy,
#div_item_ec05 .div_item_ec05_buy{
    display: inline-block;
    margin-left: 30%; 
    }
#div_member05 .div_item_ec05_buy{
    display: inline-block;
    margin-left: 40%; 
    }
#div_leave01 .div_item_ec05_buy{
    display: inline-block;
    margin-left: 37%; 
    }

/*　決済情報入力　*/
#div_entry11,
#div_entry10,
#div_entry09{
    line-height: 3;
}
#div_entry11 select,
#div_entry11 input,
#div_entry10 select,
#div_entry10 input,
#div_entry09 select,
#div_entry09 input{
    height: 30px;
    margin: 0 10px;
}

/*　警告　その他　*/
#div_entry03{
    line-height: 2;
    text-align: center;
}
#div_error01 .stry-error01-button{
    width: 300px !important;
}
.stry-errorbox{
    background: #fff !important;
}
#div_update02,
#div_leave02{
    line-height: 2;
}
#div_password01 .title{
    text-align: left;
    padding-left:100px; 
}
#div_password01 input{
    height: 30px;
}
#div_password03 input{
    height: 30px;
    width: 100%;
}
#div_member02-2{
    width: 60%;
    margin: 30px auto 0;
}
    @media screen and (max-width: 600px) {
        #div_member02-2{
        width: 90%;
        }
    }
#div_password01 input,
#div_member02-2 input{
    height: 30px;
    width: 100%;
}
#div_update02 a{
    color: #2155FF;
}
#div_entry04 button{
    width: 300px !important;
}
#div_support03{
    text-align: center;
}
#div_support03 .support03-new button{
    width: 300px !important;
}
#payment_history table,
#div_support04 table,
#div_support03 table{
    margin-top: 20px;
    width: 100%;
}
    @media screen and (max-width: 600px) {
        #div_support04 table,
        #div_support03 table{
            margin-top: 20px;
            width: 100%;
            font-size: 80%;
        }
    }
#div_support04 table{
    margin-bottom: 20px;
}
#div_support04 td{
    padding-left: 15px;
}
#payment_history tr,
#div_support04 tr,
#div_support03 tr{
    height: 30px;
}
#div_support04 table,#div_support04 tr,
#div_support03 table,#div_support03 tr{
    border-collapse: collapse;
    border:1px solid #707070;    
}
#div_support03 table a{
    color: #2155FF;
}
#payment_history table{
    
}
#div_entry07 button{
    margin: 50px auto 30px !important;
    padding: 5px 10px !important;
    background: #333333;
    width: 250px !important;
    height: 45px !important;
    border-radius: 30px;
    text-align: center;
    color: #fff !important;
    border: none !important;
}
#div_entry13 pre{
    overflow: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
}
#div_entry13 .div_entry13 button{
    line-height: 30px !important;
}
#div_password01 #div_member02-2 .title{
    padding-left: 0 !important;
}

/* 問い合わせ関連　*/

#div_support02 table{
    background: #fff;
    width: 90%;
    margin: auto;
}
#div_support02 tr{
    height: 40px;
}
#div_support02 table,#div_support02 td{
    border-collapse: collapse;
    border:1px solid #707070;
    }
#div_support02 td{
    padding-left:15px;
}

a:hover{
    color:#FB0000 !important;
}
.clear{
    clear: both;
}
.font-center{
    text-align: center;
}
.div_entry13 button,
button#btn5.stry-ec03-continue,
button.stry-ec03-recalc,
.stry-logout01-button,.stry-login01-button,
.stry-member01-button04,.stry-member01-button05,
.back_button{
    margin: 50px auto 30px !important;
    padding: 5px 10px;
    background: #333333;
    width: 250px;
    height: 45px;
    border-radius: 30px;
    text-align: center;
    line-height: 45px;
    color: #fff;
    
}
    @media screen and (max-width: 600px) {
        .back_button{
            width: 90% !important;
        }
    }        
.back_button a{
    display: block;
    color: #fff !important;
    text-decoration: none !important;
}
.back_button a:hover{
    color: #FF0101 !important;
}

.back_butto_none{
    display: none;
}
.stry-member01-button03,
.stry-member01-button02,
.stry-member01-button01{
    margin: 15px auto 0 !important;
    padding: 5px 10px;
    background: #333333;
    width: 250px;
    height: 45px;
    border-radius: 30px;
    text-align: center;
    line-height: 45px;
    color: #fff;    
}

/* STARRYカートに入れる商品ページ　*/
.stry-ec02-thumbnail-main,
.stry-ec02-thumbnail{
  position: relative;
  overflow: hidden;
}
.stry-ec02-thumbnail-main img,
.stry-ec02-thumbnail img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}



/************************
 ヘッダー　メニュー
************************/

/* STARRY側メニュー */

.menu_area{
    float: right;
    background: #333333;
    height: 80px;
    border-radius: 55px 0 0 55px;
    text-align: right;
    padding-left: 20px;
    padding-right: 90px;
}
#menu-starry_menu{
    margin-top: 5px;
}
.menu_area li{
    display: inline-block;
    vertical-align: top;
    width: 60px;
    height: 50px;
    margin:0 10px;
    text-align: center;
    line-height: 1;
}
.menu_area li img{
    width: 55px;
    height: 55px;
    }  
.menu_area li a{
    color:#fff;
}
.cart-icon {
    position: relative;
    line-height: 2 !important;
    top:8px;
 }
.dashicons-cart{
    color:#2D74D5 !important;    
    width: 40px !important;
    height: 40px !important;
    background: #fff !important;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    font-size: 24px !important;
    line-height: 40px !important;
    border: solid 1px #2D74D5;
    box-shadow: 0 0 0 6px #fff;
    -webkit-box-shadow: 0 0 0 6px #fff;
    -moz-box-shadow: 0 0 0 6px #Fff;    
    
}
.cart-item-count{
    position: absolute;
    z-index: 800;
    height:15px !important;
    width: auto;
    min-width: 15px !important;
    background: #FB0000;
    color: #fff;
    border-width: 2px !important;
    padding: 1px !important;
    top: 0;
    right: 2px;
}

/* ハンバーガーメニュー */

/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 80px;
  right: -300px;
  bottom: 0;
  width: 330px;
  background: #333;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 700;
  opacity: 0;
}
.open nav {
  right: 0;
  opacity: 1;
}
nav .inner {
  padding: 40px 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
nav .inner ul li a {
  display: block;
  color: #fff;
  font-size: 18px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #333;
}

/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top: 5px;
  right: 20px;
  width: 55px;
  height: 55px;
  transition: all .5s;
  cursor: pointer;
  z-index: 9999;
  background: #fff;
  border-radius: 50%;    
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #2D74D5;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 18px;
  left: 13px;
}
.toggle_btn span:nth-child(2) {
  top: 28px;
  left: 13px;
}
.toggle_btn span:nth-child(3) {
  top: 38px;
  left: 13px;
}
.toggle_btn p{
    margin: 55px 0 0 5px;
    color: #fff;
}
.toggle_btn:hover,
.toggle_btn p:hover{
    color: #FF0101;   
}
.open .toggle_btn span {
  background-color: #2D74D5;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(10px) rotate(-315deg);
  transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  z-index: 2;
  cursor: pointer;
}


/* FOOTERメニュー */
.footer_area li a{
    color: #333;
}

/*-----　slider　---*/
.top-slider {
overflow-x: hidden;
}

.slider{
    padding-top: 80px;
}
.slick-initialized .slick-slide{
    outline: none;
}

.slider-for{
    width: 100%;
}
.slider-back{
    background-size: cover;
    width: 100%;
    background-repeat: no-repeat;    
}
.slider-main{
    min-height: 550px;
}
.slider-desc-f{
    margin: 20px auto 80px;
    padding: 10px 20px;
    width: 80%;
    max-width: 800px;
    height: 200px;
    text-align: left;
    background: rgb(0,0,0,0.55);
 　　display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -ms-flex-pack:center;
    justify-content:center;
    justify-content: center;    
}
.slider-title{
    font-size: 38px;
    margin: 100px auto 50px;
    min-height: 30px;
    text-align: center;
    color: #000;
    line-height: 1;
    text-shadow:  2px  2px 3px #fff ,
                 -2px  2px 3px #fff ,
                2px -2px 3px #fff ,
                -2px -2px 3px #fff;
    }
.slider-desc{
}
.slider p, .slider-nav p{
    line-height: 1.5 !important;
    background-color: rgb(0,0,0,0) !important;
}
.slider-desc1{
    width: 40%;
    }
.slider-desc2{
    display: inline-block;
    width: 50%;
    height: 200px;
    margin-left: 10px;
    vertical-align: top;
    }
.slider-desc3{
    height: 200px;
}
.slider-desc2 .slider-text p,
.slider-desc2 .slider-text,
.slider-desc3 .slider-text p,
.slider-desc3 .slider-text{
    width: 100%;
    color: #fff;
    font-size: 100%;
    display: table-cell;
    vertical-align: middle;
    height: 200px;
}
.slider-text p,
.slider-text{
    width: 100%;
    color: #fff;
    font-size: 100%;
 }
.slider-text-noimg{
    width: 100%;
    color: #fff;
    font-size: 100%;    
}
.slider-img{
}
.slider-desc1 img{
    margin: auto;
    width: 240px;
    height: 200px;
    object-fit: cover;
}

.slider-under{
    margin: auto;
    width: 810px;
    margin-top: -50px;
}
.slider-under .slick-slide{
}
.slider-thumb{
    margin: auto;
    z-index: 999;
    width: 250px;
    height: auto;
    max-height: 150px;
}
.slider-thumb img{
    width: 240px;
    height: auto;
    min-height: 150px;
	object-fit: cover;
	object-position: center center;
}
.slider-main .back_button{
    width: 300px;
}
.slider-under .fa, .fas{
    color: #fff;
    background: #333;
    border-radius: 5px;
    padding: 5px;
}

.button-left{
    float: left;
    position: relative;
    z-index: 600;
    top: 45px;
    left: 20px;
}
.button-right{
    position: relative;
    z-index: 600;
    top: -100px;
    left: 30px;
    float: right;
}
.slider-button{
    opacity: 0.5;
}

/* WP管理画面　テキスト用　*/
.red{
    color: red;
}
.hutoaka{
    margin: 10px 0;
    color: red;
    font-weight: bold;
}
.hutozi{
    font-weight: bold;
}
.oomozi{
    font-size: 160%;
}
.tyumozi{
    font-size: 130%;
}

/* PAGE NAVI*/
.wp-pagenavi{
    margin-top: 30px;
    margin-bottom: 10px;
    width: 100%;
}

.pages{
    background: #333;
    border-radius: 30px;
    padding: 1px 5px;
    color: #fff;
}
.wp-pagenavi .current{
    background: #333;
    border-radius: 50%;    
    color: #fff;
    padding: 1px 5px;
    margin: 0 5px;
}
.previouspostslink,
.nextpostslink,
.wp-pagenavi a{
    border:1px solid #333 !important;
    border-radius: 50%;    
    padding: 1px 5px !important;
}
/* PAGE UP　*/

#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #333333;
  opacity: 0.8;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/* fade in */

/* ------------- スクロールフェードインDown用 ------------- */
.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(20px); -ms-transform: translateY(20px); transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

/* 画像リンクのマウスオーバーに透かし */
a:hover img {
	-moz-opacity: 0.7;
	opacity: 0.7;
}



@media screen and (min-width: 768px) {
/******************************************************************************
 PC Common
******************************************************************************/

    
/************************
 TOP
************************/

	.top .news {
		padding: 0 0 10px 0;
 display: -webkit-flex;
 display: flex;
	}
	.top .news a {
		text-decoration: underline;
	}	
	.top .news dt {
		width: 15%;
	}
	.top .more {
	font-size: 114%;
		border: 1px solid #000;
		margin-bottom: 30px;
		margin-left: 5px;
		padding: 5px 0;
		width: 165px;
		text-align: center;
		float: right;
	}
	.item-pic {
		margin: 0 0 10px 0;
		position: relative;
	}	
.item-pic img {
	width: 200px;
	height: 200px;
}	
.item-pic .sale_tag2 img {
	width: 70px;
	height: auto;
	position: absolute;
	top: 0px;
	left: 0px;	
	}		
.item-pic .sale_tag img {
	width: 80px;
	height: auto;
	position: absolute;
	bottom: 0px;
	right: 0px;	
	}		
  
/********************************************************************************************************
 img周り
********************************************************************************************************/		
 
}

@media screen and (max-width: 835px) {
/************
IPAD
*************/
/* スライダー */
.slider-under{
    margin: auto;
    width: 90%;
    margin-top: -50px;
}
.m-slider-child{
    overflow: hidden;
}      
.slider-under .slick-slide{
}
.slider-thumb{
    margin: auto;
    z-index: 999;
    width: 235px;
    height: auto;
    max-height: 150px;
}
.slider-thumb img{
    width: 225px;
    height: auto;
    min-height: 150px;
	object-fit: contain;
	object-position: center center;
}
.button-left{
    float: left;
    position: relative;
    z-index: 600;
    top: 35px;
    left: 30px;
}
.button-right{
    position: relative;
    z-index: 600;
    top: -110px;
    left: 30px;
    float: right;
}
}

@media screen and (max-width: 767px) {
/********************************************************************************************************
 SMP
*************
    
    /* STARRY 購入*/    
    
.stry-wrap{
font-size: 85%;
}
.stry-ec04-column01{
    width: 30%;
}
.stry-ec04-membermailaddress-title{
    letter-spacing: -0.1em;
}    
#div_item_ec05 table{
    margin-bottom: 30px;
    }    
#div_item_ec05 tr{
    border:1px solid #000;
    }    
#div_item_ec05 td{
    font-size: 92%;
    }    
#div_entry09 p{
    margin-bottom: 20px;
    }    
#div_entry16 button{
    margin: 10px 0;
    }   
    
/************************
 ヘッダー　メニュー
************************/

/* STARRY側メニュー */

.menu_area{
    float: right;
    background: #333333;
    height: 100px;
    border-radius: 50px 0 0 50px;
    text-align: right;
    padding-left: 10px;
    padding-right: 70px;
}
#menu-starry_menu{
    margin-top: 20px;
}
.menu_area li{
    display: inline-block;
    width: 60px;
    height: 50px;
    margin:0 5px;
    text-align: center;
    line-height: 1;    
}
.menu_area li img{
    width: 60px;
    height: 60px;
    }    
.menu_area li a{
    color:#fff;
}        
.menu_starry{
    font-size: 70%;
    }    
.cart-icon {
    position: relative;
    line-height: 2 !important;
 }
.dashicons-cart{
    color:#2D74D5 !important;    
    width: 40px !important;
    height: 40px !important;
    background: #fff !important;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    font-size: 24px !important;
    line-height: 40px !important;
    border: solid 1px #2D74D5;
    box-shadow: 0 0 0 6px #fff;
    -webkit-box-shadow: 0 0 0 6px #fff;
    -moz-box-shadow: 0 0 0 6px #Fff;    
    
}
.cart-item-count{
    position: absolute;
    z-index: 800;
    height:15px !important;
    width: 15px !important;
    background: #FB0000;
    color: #fff;
    border-width: 2px !important;
    padding: 0 !important;
    top: 0;
    right: 2px;
    min-width: unset !important;
}

/* スライダー */
.button-left{
    float: left;
    position: relative;
    z-index: 600;
    top: 35px;
    left: 30px;
}
.button-right{
    position: relative;
    z-index: 600;
    top: -110px;
    left: 30px;
    float: right;
}
    
/* ハンバーガーメニュー */

/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 80px;
  bottom: 0;
  left: -600px;
  width: 100%;
  background: #333;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 700;
  opacity: 0;
}
.open nav {
  left: 0;
  opacity: 1;
}
nav .inner {
  padding: 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
nav .inner ul li a {
  display: block;
  color: #fff;
  font-size: 18px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #333;
}
@media screen and (max-width: 767px) {
  nav {
    right: -600px;
    width: 100%;
  }
}
/*============
.toggle_btn
=============*/
.toggle_btn {
  top: 20px;
  right: 10px;
  width: 50px;
  height: 50px;
  border-radius: 50px;    
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #2D74D5;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 14px;
  left: 10px;
}
.toggle_btn span:nth-child(2) {
  top: 24px;
  left: 10px;
}
.toggle_btn span:nth-child(3) {
  top: 34px;
  left: 10px;
}
.toggle_btn p{
    margin: 50px 0 0 10px;
    color: #fff;
    font-size: 70%;
}
.open .toggle_btn span {
  background-color: #2D74D5;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(10px) rotate(-315deg);
  transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}    
    
/********************************************************************************************************
 TOP
********************************************************************************************************/
	.top .more {
		margin: 20px auto 30px auto;
		width: 90%;
		font-size: 114%;
		border: 1px solid;
		padding: 5px 0;
		text-align: center;
	}
.news_main dt	{
	padding: 0 0 100px 0;
	}
	.item-pic {
		margin: 0 0 10px 0;
		position: relative;
	}	
.item-pic .sale_tag2 img {
	width: 70px !important;
	height: auto;
	position: absolute;
	top: 0px;
	left: 0px;	
	}		
.item-pic .sale_tag img {
	width: 80px !important;
	height: auto;
	position: absolute;
	bottom: 0px;
	right: 0px;	
	}		
    
    
/********************************************************************************************************
 img周り
********************************************************************************************************/		
 
}




@media screen and (max-width: 600px) {
    
/*STARRYボタン青色に変更*/
#div_entry06 .finish button,
#div_entry05 #btn,
#div_member02 .member02-2 button,
#div_password01 button,
.stry-ec04-payment-button,
button.stry-ec03-purchase,
.stry-support01-button button{
    margin: 20px auto 30px !important;
    padding: 5px 10px !important;
    background: #003CFF;
    width: 250px !important;
    height: 45px !important;
    border-radius: 30px;
    text-align: center;
    color: #fff !important;
    border: none !important;
}
/*STARRYボタン灰色に変更*/
#div_leave01 #div_btn button,
#div_leave01 #backbtn,
.stry-update06 button,
#div_member05 button,
#div_support03 button,
#div_entry07 button,
#div_entry06 .back06 button,
#div_entry05 #backbtn,
#div_member08 button,
#div_member02 button,
#div_password03 button,
#div_leave02 button,
#div_leave02 #backbtn,
.stry-error01-button,
.stry-entry01-button,
#div_entry11 #backbtn,
#div_entry10 #backbtn,
#div_entry09 #backbtn,
#div_item_ec05 #backbtn,
.stry-ec04-back-button,
.stry-glay-button button{
    margin: 20px auto 30px !important;
    padding: 5px 10px !important;
    background: #333333;
    width: 80px !important;
    height: 45px !important;
    border-radius: 30px;
    text-align: center;
    color: #fff !important;
    border: none !important;
}    
    
#div_entry04 button{
    margin: 20px auto 30px !important;
    padding: 5px 10px !important;
    background: #333333;
    width: 200px !important;
    height: 45px !important;
    border-radius: 30px;
    text-align: center;
    color: #fff !important;
    border: none !important;        
    }    
    
.div_entry13 button,
button#btn5.stry-ec03-continue,
button.stry-ec03-recalc,
.stry-logout01-button,.stry-login01-button,
.stry-member01-button04,.stry-member01-button05,
.back_button{
    margin: 20px auto !important;
    padding: 5px 10px;
    background: #333333;
    width: 250px;
    height: 45px;
    border-radius: 30px;
    text-align: center;
    line-height: 45px;
    color: #fff;
    
}    
/* 会員登録　*/
.stry-course-select-table{
    width: 100% !important;       
}    
/* 購入手続き画面　*/
.stry-addresstable, .stry-addresstable{
    margin: auto;
    width: 95% !important;
}    
.stry-ec04-column01{
    width: 27%;
    font-size: 95%;
}    
    
input.stry-ec04-deliveryname-lastbox,
input.stry-ec04-membername-firstbox,
input.stry-ec04-membername-lastbox{
    width: 95% !important;
}    
#div_entry13,
#div_entry12,
.div_entry11,
.div_entry10,
.div_entry09,
.div_item_ec05,
.div_item_ec04{
    margin: auto;
    width: 90% !important;
    background: #fff;
    padding: 10px;
    border: 1px solid #707070;
    border-radius: 5px;
    margin-bottom:30px;
}    
.stry-ec04-deliveryzip input,    
.stry-ec04-memberzip-data input{
    min-width: auto !important;
    width: 30% !important;
    padding-left: 5px !important;
    }
.stry-ec04-deliveryzip button, input[type="button"],
.stry-ec04-memberzip-data button, input[type="button"] {
    font-size: 12px !important;
    width: 80px !important;
    }   
    .stry-ec04-membername p{
        font-size: 90%;
    }    
#div_item_ec04 .stry-ec04-column02 select,
#div_item_ec04 .stry-ec04-column02 input{
    width: 96% !important;
    box-sizing: content-box;
}    
#div_item_ec04 input.stry-ec04-membername-firstbox,
#div_item_ec04 input.stry-ec04-membername-lastbox,
#div_item_ec04 input.stry-ec04-deliveryname-lastbox,
#div_item_ec04 input.stry-ec04-deliveryname-firstbox,
#div_item_ec04 input.stry-ec04-membername-lastbox{    
    width: 90% !important;
}
#div_item_ec04 .stry-ec04-column02 input#delivery_zip,    
#div_item_ec04 .stry-ec04-column02 input#zip{
    width: 46% !important;
    padding-left:0 !important;
}
#div_item_ec04 .stry-ec04-column02 .stry-ec04-ec04-button{
    width: 44% !important;
    margin:0 0 0 2px !important;
    padding-left: 0 !important;    
}
#div_item_ec04 .stry-ec04-deliveryzip-data input,
#div_item_ec04 .stry-ec04-memberzip-data input{
    margin-left: 0;
}    
    
/*　注文確認　*/    
#div_item_ec05 p{
    margin-bottom: 10px !important;
}    
#div_member05 .div_item_ec05_buy,    
#div_leave01 .div_item_ec05_buy,    
#div_entry09 .div_item_ec05_buy, 
#div_entry10 .div_item_ec05_buy, 
#div_entry11 .div_item_ec05_buy, 
#div_item_ec05 .div_item_ec05_buy{
    display: inline-block;
    margin-left: 20px !important; 
    }    
#div_member05 #btn,     
#div_entry11 #btn,    
#div_entry10 #btn,    
#div_entry09 #btn,    
#div_item_ec05 #btn{
  margin: 0 auto 10px !important;
  width: 180px !important;
    }
#div_leave01 #div_btn button{
        width: 150px !important;
    }
.div_item_ec05-border{
    display: none;
    }
.item_ec05_hidden,
.item_ec05_hidden p{
    height: 0 !important;
}    
/* STARRY 購入*/       
.stry-wrap{
    font-size: 85%;
    margin-bottom: 50px;
}    
  /*問い合わせ　背景白*/
.stry-support01-table{
    background: #fff !important;
    border: 10px #fff solid;
    margin-top: 50px !important;
}  
.menu_area{
    float: right;
    background: #333333;
    height: 80px;
    border-radius: 50px 0 0 50px;
    text-align: right;
    padding-left: 20px;
    padding-right: 55px;
}
#menu-starry_menu{
    margin-top: 15px;
}
.menu_area li{
    display: inline-block;
    width: 40px;
    height: 35px;
    margin:0 4px;
    text-align: center;
    line-height: 1.8;
}
.menu_area li img{
    width: 40px;
    height: 40px;
    }      
.menu_starry{
    font-size: 58%;
    }    
.cart-icon {
    position: relative;
    line-height: 2.5 !important;
    font-size: 65%;
    top:6px;
    }
.dashicons-cart{
    color:#2D74D5 !important;    
    width: 32px !important;
    height: 32px !important;
    background: #fff !important;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    font-size: 20px !important;
    line-height: 30px !important;
    border: solid 1px #2D74D5;
    box-shadow: 0 0 0 5px #fff;
    -webkit-box-shadow: 0 0 0 5px #fff;
    -moz-box-shadow: 0 0 0 5px #Fff;    
    
}
.cart-item-count{
    position: absolute;
    z-index: 800;
    height:13px !important;
    width: 13px !important;
    background: #FB0000;
    color: #fff;
    border-width: 2px !important;
    padding: 0 !important;
    font-size: 6px !important;
    line-height: 12px !important;
    top: 0;
    right: 0;
    min-width: unset !important;
}    
.toggle_btn {
  top: 15px;
  right: 5px;
  width: 42px;
  height: 42px;
  border-radius: 50%;    
}    
.toggle_btn p{
    margin: 40px 0 0 6px;
    color: #fff;
    font-size: 60%;
}    
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 20px;
  height: 2px;
  background-color: #2D74D5;
  border-radius: 4px;
  transition: all .5s;
}    
.toggle_btn span:nth-child(1) {
  top: 13px;
  left: 11px;
}
.toggle_btn span:nth-child(2) {
  top: 20px;
  left: 11px;
}
.toggle_btn span:nth-child(3) {
  top: 27px;
  left: 11px;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(7px) rotate(-315deg);
  transform: translateY(7px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-7px) rotate(315deg);
  transform: translateY(-7px) rotate(315deg);
}    
    
    
    
/*-----　slider　---*/
    
.slick-slider {
  max-height: 520px;　
}    
    
.slider-main .back_button{
    width: 150px;
    font-size: 90%;
}
.slider-title{
    font-size: 32px;
    margin: 70px auto 50px;
    padding: 0 10px;
    line-height: 1.2;
    height: 70px;
    } 
.slider-text p,
.slider-text{
    width: 90%;
    color: #fff;
    font-size: 100%;
 }    
.slider-main{
    height: 450px;
    min-height:450px;
}    
.slider-under{
    margin-top: 40px;
    max-height: 200px;
    overflow: hidden;
}    
.slider-desc1 {
    width: 51%;
}    
.slider-desc1 img{
    width: 100% !important;
    height: 200px !important;
    object-fit: contain;
}    
    
.slick-list{
    overflow: inherit !important;
}     
.slider-desc-f{
    margin: 20px auto 40px;
    padding: 10px;
    width: 92%;
    max-width: 100%;
    min-height: 200px;
    height: auto;
    text-align: left;
    background: rgb(0,0,0,0.55);
   display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display: flex;

    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -ms-flex-pack:center;
    justify-content:center;
}     
   
.button-left {
  position: absolute;
  z-index: 600;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}
.button-right {
  position: absolute;
  z-index: 600;
  top: 50%;
  left: auto;
  right: 10px;
  transform: translateY(-50%);
}
.slider-button{
    opacity: 1;
}    
.slider-under .fa, .fas{
    color: #fff;
    background: #333;
    border-radius: 0;
    padding: 5px 15px;
}    
.slider-back{
    background-size: cover;
    background-position-y:-40px;
    width: 100%;
    background-repeat: no-repeat;
}    
}



@media screen and (max-width: 400px) {
.menu_area{
    padding-left: 10px;
}
}

/*コンビニ決済 safari改行されない問題*/
pre{
    overflow: auto;
    white-space: pre-wrap;
    word-wrap: break-word;    
}
