/***ウェブフォント****************************************START***/
/*
@font-face {
	font-family: "HuiFont29";
	src: url("/assets/fonts/HuiFont29.woff2") format("woff2"),
		url("/assets/fonts/HuiFont29.woff") format("woff"),
		url("/assets/fonts/HuiFont29.ttf") format("truetype");
	font-style: normal;
}
*/
@font-face {
    font-family: "rounded-x-mplus-1c-heavy";
    src: url("/assets/fonts/rounded-x-mplus-1c-heavy.woff2") format("woff2"),
         url("/assets/fonts/rounded-x-mplus-1c-heavy.woff") format("woff");
         url("/assets/fonts/rounded-x-mplus-1c-heavy.ttf") format("truetype");
    font-style: normal;
}
@font-face {
    font-family: "rounded-x-mplus-1c-bold";
    src: url("/assets/fonts/rounded-x-mplus-1c-bold.woff2") format("woff2"),
         url("/assets/fonts/rounded-x-mplus-1c-bold.woff") format("woff");
         url("/assets/fonts/rounded-x-mplus-1c-bold.ttf") format("truetype");
    font-style: normal;
}
@font-face {
    font-family: "rounded-x-mplus-1c-regular";
    src: url("/assets/fonts/rounded-x-mplus-1c-regular.woff2") format("woff2"),
         url("/assets/fonts/rounded-x-mplus-1c-regular.woff") format("woff");
         url("/assets/fonts/rounded-x-mplus-1c-regular.ttf") format("truetype");
    font-style: normal;
}
@font-face {
    font-family: "rounded-x-mplus-1c-light";
    src: url("/assets/fonts/rounded-x-mplus-1c-light.woff2") format("woff2"),
         url("/assets/fonts/rounded-x-mplus-1c-light.woff") format("woff");
         url("/assets/fonts/rounded-x-mplus-1c-light.ttf") format("truetype");
    font-style: normal;
}
/*太字*/
.heavy {
	font-family: "rounded-x-mplus-1c-heavy";
	font-size: 1.5rem;
}
/*ちょっと太字*/
.bold {
	font-family: "rounded-x-mplus-1c-bold";
	font-size: 1.5rem;
}
/*標準*/
span.regular {
	font-family: "rounded-x-mplus-1c-regular";
	font-size: 1.5rem;
}
div.regular {
	font-family: "rounded-x-mplus-1c-regular";
	font-size: 1.5rem;
}
/*細字*/
.light {
	font-family: "rounded-x-mplus-1c-light";
	font-size: 1.5rem;
}
/***ウェブフォント******************************************END***/


/***jquerymobileが強制的に与えている設定を解除*************START***/
.ui-overlay-a, .ui-page-theme-a, .ui-page-theme-a .ui-panel-wrapper .ui-content{
	background-color: #333333;
	background-size:12%;
	text-shadow: none;
	padding: 0;
}
.ui-overlay-a, .ui-page-theme-a, .ui-page-theme-a .ui-panel-wrapper{
	color:#ffffff;
}
.ui-btn {
	font-size:1.2rem;
}
/***jquerymobileが強制的に与えている設定を解除***************END***/


/***基本設定******************************************START***/
html{
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	font-size: calc(62.5% + 0.5vw);
	margin:0 auto;
	padding:0px;
	background-color:#ffffff;
	background-size:32px 32px;
	background-image:url('/assets/img/site/sp/480/all/top/bg_common.png');
	background-attachment: fixed;
	background-position: right bottom
}
body{
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	font-family: "rounded-x-mplus-1c-regular" !important;
	font-size: 1.2rem;
	word-break: break-all;
}
div#main{
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	padding: 0;
}
div#header{
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	padding: 0;
}
div#contents {
	max-width:800px;
	width:100%;
	padding: 0;
}
div#footer{
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	padding: 0;
}
img{
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	height:auto;
}
input::placeholder{color: #cccccc;}
a {
	color: inherit;
	text-decoration:none;
}
#inherit{
	color: inherit;
}
.ui-field-contain{
	border-bottom-style:none;
}
.ui-field-contain, .ui-mobile fieldset.ui-field-contain{
	padding: 0px 0px;
}
.radius_all{
	border-top-right-radius: 8px;
	border-top-left-radius: 8px;
	border-bottom-right-radius: 8px;
	border-bottom-left-radius: 8px;
	font-weight:bold;
}
.line_dushed{
	max-width:800px;
	width:100%;
	border-top:1px dashed #999999;
	/*
	height:1px;
	background:repeating-linear-gradient(90deg, #999999 36px, rgba(0,0,0,0) 46px);
	*/
}
/***基本設定********************************************END***/


/***TOPページ設定*************************************START***/
.topbg{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	color:#ffffff;
}
/***TOPページ設定***************************************END***/


/***マーキー設定**************************************START***/
.marquee_box {
	/*display:inline-block;*/
	max-width:800px;
	width:100%;
	vertical-align:middle;
	line-height:1.8rem;
}
.marquee_body{
	position:absolute;
	overflow:hidden;
	z-index: 1;
	max-width:800px;
	width:100%;
	max-height:30px;
	background-color:rgba(0,0,0,0.7);
	color:#ffffff;
	height:auto;
}
/*マーキーアニメーション処理*/
.marquee {
	max-width: 800px;
	width:100%;
	box-sizing:border-box;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	text-align: left;
	color:#ffffff;
	font-size: 1.1rem;
}
.marquee p:after {
	max-width: 800px;
	width:100%;
	box-sizing:border-box;
	content: "";
	white-space: nowrap;
}
.marquee_default {
	max-width: 800px;
	width:100%;
	box-sizing:border-box;
	margin: 0;
	padding-left: 100%;
	display: inline-block;
	white-space: nowrap;
	-webkit-animation-name:marqueekeyframes;
	-webkit-animation-timing-function:linear;
	-webkit-animation-duration:10s;
	-webkit-animation-iteration-count:infinite;
	animation-name:marqueekeyframes;
	animation-timing-function:linear;
	animation-duration:10s;
	animation-iteration-count:infinite;
}
.marquee_views {
	margin: 0;
	padding-left: 100%;
	display: inline-block;
	white-space: nowrap;
	
	-webkit-animation-name:marqueekeyframes;
	-webkit-animation-timing-function:linear;
	/*スムーズなスクロールをさせるためには呼び出し元でdurationを動的に与えること*/
	-webkit-animation-duration:10s;
	-webkit-animation-iteration-count:infinite;
	
	animation-name:marqueekeyframes;
	animation-timing-function:linear;
	/*スムーズなスクロールをさせるためには呼び出し元でdurationを動的に与えること*/
	animation-duration:10s;
	animation-iteration-count:infinite;
}
@-webkit-keyframes marqueekeyframes {
	from {-webkit-transform:translate(0%);}
	99%,to {-webkit-transform:translate(-100%);}
}
@keyframes marqueekeyframes {
	from {transform:translate(0%);}
	99%,to {transform:translate(-100%);}
}
/***マーキー設定****************************************END***/


/***フリッカー設定（共通）********************************START***/
.flickity-page-dots {bottom: -14px;}
.flickity-page-dots .dot {
	height: 10px;
	width: 10px;
	margin: 0 8px;
	border-radius: 50%;
}
.flickity-prev-next-button {
	top: 76%;
	width: 36px;
	height: 36px;
	opacity: 0.3;
}
.flickity-prev-next-button:active {
	opacity: 1;
}
.flickity-prev-next-button.previous { left: 0px; }
.flickity-prev-next-button.next { right: 0px; }
/***フリッカー設定（共通）*********************************END***/


/***テーブル処理設定（共通）****************************START***/
/* table_itemのwidthは要素側のstyleで設定してください                         */
/* 未指定時はデフォルトの50%となります。                                           */
/************************************************************/
.table_box{
	display:table;
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	vertical-align:middle;
}
.table_item{
	display:table-cell;
	max-width:800px;
	width:50%;
	box-sizing:border-box;
	vertical-align:middle;
}
.table_boxshadow{
	box-shadow: 0 0 3px gray;
	display:table;
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	vertical-align:middle;
}
/***テーブル処理設定（共通）******************************END***/





/***表示効果（共通）***********************************START***/
.stripe_green{
	max-width:800px;
	width:100%;
	background-color:#20af20;
}
.stripe_white{
	max-width:800px;
	width:100%;
	border: 0px solid #eeeeee;
	background-color:#ffffff;     /*ストライプ機能が使えない機種用*/
	background-image: linear-gradient(
		-135deg,
		#ffffff 25%,
		#ecffe8 25%, #ecffe8 50%,
		#ffffff 50%, #ffffff 75%,
		#ecffe8 75%, #ecffe8
	);
	background-size: 16px 16px;
}

.balloon1 {
  position: relative;
  display: inline-block;
  margin: 0.5em 0 2.0em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #000;
  font-size: 1.0rem;
  background: #cfe7ff;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #cfe7ff;
}

.balloon1 p {
  margin: 0;
  padding: 0;
}

/***表示効果（共通）*************************************END***/


.basic_bg{
	/*font-family:HuiFont29;*/
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	text-align:left;
}
.basic_info{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding:0%;
	text-align:left;
}
.basic_title{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding-left:2%;
	text-align:left;
	font-size:1.2rem;
	color:#bbbbbb;
}
.basic_text{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding:2%;
	text-align:left;
	background-color:#ffffff;
	border:solid 1px #cccccc;
	font-size:1.0rem;
}





/***規約ページ等***********************************START***/
.help_bg{
	/*font-family:HuiFont29;*/
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	text-align:left;
}
.help_info{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding:0%;
	text-align:left;
}
.help_title{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding-left:2%;
	text-align:left;
	font-size:1.2rem;
	color:#bbbbbb;
}
.help_text{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding:2%;
	text-align:left;
	background-color:#ffffff;
	border:solid 1px #cccccc;
	font-size:1.0rem;
}
.help_howto{
	max-width:800px;
	width:100%;
	box-sizing:border-box;
	padding:2%;
	border:solid 1px #cccccc;
	font-size:1.0rem;
	background-color: #ECECEC;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, color-stop(.5, #F9F9F9), color-stop(.5, transparent), to(transparent));
	-webkit-background-size: 10px;
}
/***規約ページ等*************************************END***/


/***リボン装飾*************************************START***/
.ribbon1 {
	display:inline-block;
	position:relative;
	height:22px;/*高さ*/
	line-height:22px;/*高さ*/
	vertical-align:middle;
	text-align:center;
	box-sizing:border-box;
	/*padding:0 12px 0 4px;/*文字の左右の余白*/
	padding:0% 2% 0% 1%;
	font-weight:400;/*文字サイズ*/
	background: linear-gradient(-135deg,#083884,#000000);/*背景色(黒グラデ)*/
	color:#ffffff;/*文字色*/
}
.ribbon1:after {
	position:absolute;
	content: '';
	width:0px;
	height:0px;
	z-index:1;
}
.ribbon1:after {
	top:0;
	right:0;
	border-width:11px 6px 11px 6px;
	border-color:transparent #e6e6e6 transparent transparent;
	border-style:solid;
}

.ribbon2 {
	display:inline-block;
	position:relative;
	height:22px;/*高さ*/
	line-height:22px;/*高さ*/
	vertical-align:middle;
	text-align:center;
	box-sizing:border-box;
	/*padding:0 12px 0 4px;/*文字の左右の余白*/
	padding:0% 2% 0% 1%;
	font-weight:400;/*文字サイズ*/
	background: linear-gradient(-135deg,#ff5592,#cc074a);/*背景色(桃グラデ)*/
	color:#FFF;/*文字色*/
}
.ribbon2:after {
	position:absolute;
	content: '';
	width:0px;
	height:0px;
	z-index:1;
}
.ribbon2:after {
	top:0;
	right:0;
	border-width:11px 6px 11px 6px;
	border-color:transparent #e6e6e6 transparent transparent;
	border-style:solid;
}

.ribbon3 {
	display:inline-block;
	position:relative;
	height:22px;/*高さ*/
	line-height:22px;/*高さ*/
	vertical-align:middle;
	text-align:center;
	box-sizing:border-box;
	/*padding:0 12px 0 4px;/*文字の左右の余白*/
	padding:0% 2% 0% 1%;
	font-weight:400;/*文字サイズ*/
	background: linear-gradient(-135deg,#66a8e2,#083884);/*背景色(青グラデ)*/
	color:#FFF;/*文字色*/
}
.ribbon3:after {
	position:absolute;
	content: '';
	width:0px;
	height:0px;
	z-index:1;
}
.ribbon3:after {
	top:0;
	right:0;
	border-width:11px 6px 11px 6px;
	border-color:transparent #e6e6e6 transparent transparent;
	border-style:solid;
}

/***リボン装飾****************************************END***/

