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

/*googlefonts*/

/*Adobefonts*/

/*カスタム変数*/
/*カラー用*/
:root {
	--color-01:#40be74 ;
	--color-02:#fdf7ef ;
	--color-03:#dc3766 ;
	--color-04:#000000 ;
}
:root {
	--color-main:var(--color-01) ; 
	--color-sub:var(--color-02) ; 
	--color-text01:var(--color-04) ;
	--color-text02:var(--color-01) ;
	--color-point:var(--color-03) ;
}


/*================================
目次
================================

■FSの設定打消し
■PC版とSP版での表示切替設定（見出しや改行などPCとSPの表示を分けたい場合に使用）

1.全体
2.共通フォーマット（ボタンデザインなど）
3.メインビジュアル
4.当選内容

5.アイテム
6.プロフィール
7.フッター

*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■FSの設定打消し
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.fs-l-main *{
	min-width: initial;
    min-width: auto;
    min-height: initial;
    min-height: auto;
}

/*メインエリアの横幅制限解除ここから*/
.fs-l-pageMain {
	max-width: 100%;
}

.fs-l-main{
	max-width: 100%;
	padding:0;
	margin:0;
}
/*メインエリアの横幅制限解除ここまで*/


.fs-c-breadcrumb{
	padding-top:80px;
}
@media screen and (max-width:768px) {
	.fs-c-breadcrumb{
		padding-top:80px;
	}
}

/* 「現在登録されている商品はありません。」を非表示 */
.fs-c-noResultMessage { display: none }

/* 文字サイズ調整 */
.fs-l-main{
	font-size:1.1em;
}

/*共通フッターのマージン調整*/
.footer-sp{
	margin-top: 0 !important;
}

/*自動生成商品エリアのマージンゼロ/余白が発生するため*/
.fs-c-productList{
	margin:0;
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■PC版とSP版での表示切替設定（見出しや改行などPCとSPの表示を分けたい場合に使用）
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/*例：brタグにclassを追加
PCのみで改行→pc <br class="pc">
SPのみで改行→sp <br class="sp">
※両方共通の改行の場合は<br>のみでOK

他、PCとSPで表示を分けたい部分にも使用可能
*/

@media screen and (min-width: 768px){
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 768px){
  .pc { display:none; }
  .sp { display:block; }
}



/*================================
1.全体
================================*/

body{
/*背景色*/
	background-color: #fff;
}

/*全体の設定/フォントなど*/
.js-main{
	text-align: center;
	line-height: 1.8;
	letter-spacing: 0.05em;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 400;
	color:#2f2f2f;
	font-size:12px;
}
@media screen and (max-width:768px) {
	.js-main{
		padding-top:0;
	}
}

/*リンクの設定*/
.js-main a{
	text-decoration:none;
	color:#2f2f2f;
}
.js-main a:hover,a:hover img{
	opacity:0.6;
    -moz-opacity:0.6;
    filter:alpha(opacity = 60);
}


/*widthなどの適応範囲をborder基準に変更*/
.js-main *, .js-main *:before, .js-main *:after{
	-webkit-box-sizing: border-box; /* Webkit */
	-moz-box-sizing: border-box; /* Firefox */
	box-sizing: border-box; /* 標準 */
}


/*SP版画像サイズ制御*/
@media screen and (max-width:768px) {
    /*　画面サイズが768px以下の時はここを読み込む　*/
	.js-main img{
	width:100%;
	height: auto;
	}
}

/*PC980px、SP100%*/
.js-container{
	width:100%;
	max-width:980px;
	margin:auto;
}


/*TOPへ戻るボタンの位置調整 PCのみ*/
@media screen and (min-width: 769px){
	#footer.second-page .footer__pagetop__btn{
		bottom:150px;
		right:40px;
	}
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
2.共通フォーマット（ボタンデザインなど）
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/*ボタン*/
.button019 a {
    background: #fff;
    /*border-radius: 3px;*/
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 280px;
    padding: 10px 25px;
    color: #6b6b6b;
    transition: 0.3s ease-in-out;
    /*font-weight: 500;*/
	border:solid 1px #6b6b6b;
}
.button019 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 1px currentColor;
  border-right: solid 1px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button019 a:hover {
  background: #6b6b6b;
  color: #FFF;
  opacity: 1;
}
.button019 a:hover:after {
  right: 1.4rem;
}

/*メインの余白の指定*/
/*padding*/
.main-padding{
	padding-top: 80px;
	padding-bottom: 80px;
}
@media screen and (max-width: 768px){
	.main-padding{
		padding-top: 5em;
		padding-bottom: 5em;
	}
}
/*margin*/
.main-margin{
	margin-top: 80px;
	margin-bottom: 80px;
}
@media screen and (max-width: 768px){
	.main-margin{
		margin-top: 5em;
		margin-bottom: 5em;
	}
}


/*見出し*/
.main-title{
	margin-bottom:2em;
	letter-spacing: 0.1em;
	line-height: 1.5;
	font-weight: bold;
}
.main-title01{
	display: inline-block;
	color: var(--color-main);
	font-size:1.2em;
	border-bottom:solid 1px var(--color-main);
	margin-bottom:1em;
}
.main-title02{
	font-size:2em;
}
@media screen and (max-width: 768px){
	.main-title01{
		font-size:0.9em;
	}
	.main-title02{
		font-size:1.8em;
	}
}
/*見出し 友だち追加方法部分調整*/
.main-join_set .main-title{
	font-size:0.85em;
}
.main-join_set .main-title01{
	font-size:1.8em;
	margin-bottom:0.6em;
}

/*内容包括*/
.main-inner{
	
}



/*フォント指定*/


/*色指定*/
/*背景色*/
.bgcolor01{ /*グレー*/
	background-color: #f4f4f4;
}
.bgcolor02{ /*メインカラー*/
	background-color: var(--color-main);
}
.bgcolor03{ /*サブカラー*/
	background-color: var(--color-sub);
}

/*フォント色*/
.fontcolor01{
	color: var(--color-main);
}
.fontcolor02{
	color: var(--color-point);
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
3.メインビジュアル
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.main-visual{
	margin-bottom:0;
	width:100%;
	background-color: var(--color-main) ;
	line-height: 0;
}
.main-visual img{
	width:100%;
}

h1{
	margin:0;
	line-height: 0;
}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
4.キャンペーン
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.campaign_text01{
	margin-bottom:1.25em;
	font-weight: bold;
	font-size: 2em;
}
.join_btn{
	margin: 0 auto 2em;
	width:220px;
	max-width:70%;
}
.campaign_text02{
	margin-bottom:2em;
	font-weight: bold;
	font-size: 1.5em;
}
.campaign_text02 span{
	font-size: 0.8em;
	font-weight: 300;
}

.campaign_text03{
	margin: 3em auto 0;
	width:300px;
	max-width:80%;
	text-align: left;
}
@media screen and (max-width: 768px){
	.campaign_text01{
		font-size: 1.7em;
	}
}

/*アコーディオン*/
.acbox_campaign_notice{
	width: 400px;
	max-width:90%;
	font-size:0px; /* ラベルと開く部分を分離する時は数値を入れる */
	margin: 0px auto; /* ボックス全体の位置調整 */
}
.acbox_campaign_notice label{
	width: auto;
	font-size: 15px; /* ラベルの文字サイズ */
	font-weight: normal;
	text-align: center;
	background: #fff; /* ラベルの背景色 */
	position: relative;
	display: block;
	padding:8px;
	border:1px solid var(--color-text01);
	border-radius: 5px; /* ラベルの角の丸み */
	cursor: pointer;
	color: var(--color-text01);
}
.acbox_campaign_notice .bold_u{
	font-weight: bold;
	text-decoration: underline;
}
.acbox_campaign_notice label:hover{
	background: var(--color-main); /* ラベルにマウスを乗せた時の背景色 */
}
.acbox_campaign_notice input{
	display: none;
}
.acbox_campaign_notice label:after{
	color: var(--color-text01);
	content:"＋"; /* ラベルのアイコン */
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -14px;
}
.acbox_campaign_notice input:checked ~ label::after {
	content:"－"; /* ラベルをクリックした後のアイコン */
}
.acbox_campaign_notice .acbox_campaign_notice-under{
	height: 0px;
	overflow: hidden;
	opacity: 0;
	transition: 0.15s; /* 開閉スピードの設定 */
}
.acbox_campaign_notice input:checked ~ .acbox_campaign_notice-under{
	height: auto;
	padding: 18px; /* 開いた部分の枠内の余白 */
	border-radius: 0 0 5px 5px; 
	border: solid 1px var(--color-text01);
	border-top: transparent;
	background: #fff; /* 開いた部分の背景色 */
	opacity: 1;
}
.acbox_campaign_notice input:checked ~ label {
	background: #fff; /* クリック後のラベルの背景色 */
	border-bottom: transparent;
	border-radius: 5px 5px 0 0; 
}
.acbox_campaign_notice-under{
	font-size: 12px; /* 開いた部分の文字サイズ */
	color: #888; /* 開いた部分の文字色 */
	text-align: left;
}

@media screen and (max-width: 768px){
	.acbox_campaign_notice-under{
		text-align: left;
	}
}


/*アコーディオンの中身*/
.campaign_notice_set{
	margin-bottom:2em;
}
.campaign_notice_set:last-child{
	margin-bottom:0;
}

.campaign_notice_set_t{
	font-weight: bold;
	margin-bottom:0.5em;
}
.campaign_notice_set_in{
	
}

.campaign_notice_list{
	padding-inline-start: 20px;
}
.campaign_notice_list li{
	line-height: 1.4;
	margin-bottom:0.75em;
}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
5.イントロ
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.main-intro{
	
}
.main-intro_box{
	
}
.main-intro_boxin01{
	
}
.main-intro_boxin01 img{
	width: 100%;
}
.main-intro_boxin02{
	text-align: left;
	font-weight:bold;
	font-size:1.2em;
}

/*SP*/
@media screen and (max-width: 768px){
	.main-intro_box{
		margin:auto;
		width:85%;
	}
	.main-intro_boxin02{
		margin-top:2em;
	}
}
/*PC*/
@media screen and (min-width: 769px){
	.main-intro_box{
		/*フレックスボックスの設定*/
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		/*フレックスボックスの要素を中央寄せ*/
		justify-content: center;
		align-items: center;
		
		width:700px;
		max-width: 95%;
		margin:auto;
	}
	.main-intro_boxin01{
		width:45%;
		padding-right:20px;
	}
	.main-intro_boxin02{
		width:55%;
	}
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
6.登録
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.main-join{
	
}


.main-join_set{
	background-color: #fff;
	padding:30px;
	margin:0 auto 2em;
	width:90%;
	max-width:500px;
	border-radius: 10px;
}
.main-join_set:last-child{
	margin-bottom:0;
}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
7.フッター
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.under_notice{
	color: #888;
	text-align: left;
	
	width:90%;
	max-width: 700px;
	margin:auto;
}
.under_notice a{
	color: #888;
	text-decoration: underline;
	font-weight: bold;
}


.contents-footer{
	margin:4em auto;
}
.contents_brand_top{
	margin:3em auto;
}
.brand_under-text{
	margin-top:1em;
}

/*SP*/
@media (max-width: 768px) {
	.contents_brand_top{
		width:50%;
	}
}


/*タイトル画像部分*/
.footer-title{
	margin-bottom:80px;
	padding:150px 0 30px;
	width:100%;

	/*background-color: #fff;*/
}
.footer-title img{
	width:400px;
}
@media (max-width: 768px) {
	.footer-title{
		/*padding:5em 0 2em;*/
	}
	.footer-title img{
		width:50%;
	}
}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
ex.フェードインエフェクト
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.fadein-top {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}



/*animation-ふわっと出現*/
/* 基本のスタイル */
.animation.delighter {
	  transition: all .8s ease-out;
      transform: translateX(0%);
      opacity: 0;
   }
 
/* スタート時のスタイル */
   .animation.delighter.started {
      transform:none;
	  opacity:1;
   }
 
/* エンド時のスタイル */
   .animation.delighter.started.ended {
      
   }
