@charset "UTF-8";

/* reset ---------------------------------------*/

.container li {list-style:none;}


/* base ---------------------------------------*/

.container * {
	box-sizing: border-box;
	min-height: 0vw;
}

.container a {
	text-decoration: none;
	color: #fff;
	transition: all .25s ease;
}

.container img {
	vertical-align: bottom;
	line-height: 1;
	max-width: 100%;
	height: auto;
}

#footer_glonavi.gloval__footer,
.smp_gloval__footer{
	background: #fff;
	position: relative;
	z-index:2;
}


/* common item ---------------------------------------*/

.clearfix::after,
.inner::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}


/* layout ---------------------------------------*/

.container {
	width: 100%;
	min-height: 100%;
	background: ;
	color: #fff;
	-webkit-text-size-adjust: 100%;
	padding: 0;
	margin: 0;
	font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	font-feature-settings: "palt" 1;
	-webkit-font-feature-settings: "palt" 1;
}

.container::before {
	display: block;
	content: '';
	background: url('../img/pc_bg.jpg') no-repeat center top #0F0762;
	background-size: cover;
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
}

.wrapper {
	position: relative;
	z-index: 2;
}

.wrapper::before {
	display: block;
	content: '';
	background: url('../img/bg_kv.png') no-repeat center top;
	background-size: 100%;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	transform: translate(0, 0);
}

.wrapper::after {
	display: block;
	content: '';
	background: url('../img/bg_brush_03.png') no-repeat center bottom;
	background-size: 100%;
	width: 100%;
	height: 50vw;
	position: absolute;
	left: 0;
	bottom: -150px;
	transform: translate(0, 0);
}

.content {
	position: relative;
	z-index: 5;
}


/* kv ---------------------------------------*/

.crats2025ss-kv {
	padding: 50px;
	margin-bottom: 32px;
}

.crats2025ss-kv-image {
	width: 77.7vw;
	margin: 0 auto;
}


/* message ---------------------------------------*/

.crats2025ss-message {
	padding: 0 50px;
	text-align: center;
	margin-bottom: 195px;
	position: relative;
}

.crats2025ss-message::before{
	display:block;
	content:'';
	background:url('../img/bg_brush_01.png') no-repeat right top;
	background-size:100%;
	width:100%;
	height:50vw;
	position:absolute;
	right:0px;
	top:200px;
}

.crats2025ss-message-inner {
	max-width: 820px;
	margin: 0 auto;
	position: relative;
	z-index:2;
}

.crats2025ss-message-pict {
	position: absolute;
}

.crats2025ss-message-pict.pict_01 {
	left: -100px;
	top: -90px;
}

.crats2025ss-message-pict.pict_02 {
	right: -170px;
	top: 110px;
}

.crats2025ss-message-pict.pict_03 {
	left: -60px;
	bottom: -40px
}

.crats2025ss-message-title {
	margin-bottom: 52px;
}

.crats2025ss-message-text {
	font-size: 16px;
	font-weight: 300;
	line-height: 2;
	margin-bottom: 55px;
}

.crats2025ss-message-package {}


/* campaign ---------------------------------------*/

.crats2025ss-campaign {
	padding: 0 50px;
	text-align: center;
	margin-bottom: 80px;
	position: relative;
}

.crats2025ss-campaign::before{
	display:block;
	content:'';
	background:url('../img/bg_brush_02.png') no-repeat right top;
	background-size:100%;
	width:100%;
	height:60vw;
	position:absolute;
	right:0px;
	top:300px;
}

.crats2025ss-campaign-inner {
	margin: 0 auto;
	max-width:1360px;
	position: relative;
	z-index:2;
}

.crats2025ss-campaign-title {
	position: relative;
	padding:0;
	margin:0 0 56px;
}

.crats2025ss-campaign-title picture {
	display: inline-block;
	position: relative;
}

.crats2025ss-campaign-title picture::after {
	display: block;
	content: '';
	background: url('../img/line_1.png') no-repeat left top;
	background-size: 100%;
	width: 291px;
	height: 168px;
	position: absolute;
	left: -150px;
	top: -40px;
}

.crats2025ss-campaign-text {
	font-size: 16px;
	font-weight: 300;
	line-height: 2;
	margin-bottom: 30px;
}

.crats2025ss-campaign-package {}

.crats2025ss-campaign-package-title {
	margin:0 0 68px;
}

.crats2025ss-campaign-package-list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding:0;
	margin:0;
}

.crats2025ss-campaign-package-list li{
	padding:0;
	margin:0;
	overflow: hidden;
	border:2px solid #0062B0;
	border-radius: 20px;
	box-shadow: 0 8px 20px rgba(15, 7, 98, 0.25);
	width:17.8%;
}

.crats2025ss-campaign-package-list li img{width:100%}


.crats2025ss-campaign-package-jfa{
	text-align:right;
	margin-top:30px;
}

/* products ---------------------------------------*/

.crats2025ss-products {
	padding: 80px 50px 58px;
	position: relative;
}

.crats2025ss-products::before{
	display:block;
	content:'';
	background:url('../img/bg_brush_01.png') no-repeat right top;
	background-size:100%;
	width:100%;
	height:50vw;
	position:absolute;
	right:0px;
	top:500px;
}

.crats2025ss-products-inner {
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	z-index:2;
	padding-left: 250px;
	padding-right: 250px;
}

.crats2025ss-products-title {
	position: absolute;
	left: 20px;
	top: 0;
	margin:0;
	padding:0;
}

.crats2025ss-products-title::after {
	display: block;
	content: '';
	background: url('../img/line_1.png') no-repeat left top;
	background-size: 100%;
	width: 291px;
	height: 168px;
	position: absolute;
	left: -80px;
	bottom: -60px;
}

.crats2025ss-products-package {
}

.crats2025ss-products .icon-mark {
	position: absolute;
	right: 0;
	top: 0;
}

.crats2025ss-products .icon-jfa {
	position: absolute;
	right: 135px;
	bottom: 95px;
}


/* howtoplay ---------------------------------------*/

.crats2025ss-howtoplay {
	padding: 80px 50px 40px;
}

.crats2025ss-howtoplay-inner {
	max-width:1380px;
	margin:0 auto;
}

.crats2025ss-howtoplay-title {
	text-align: center;
	margin-bottom: 110px;
}

.crats2025ss-howtoplay-title picture{
	display: inline-block;
	position: relative;
}

.crats2025ss-howtoplay-title picture::after {
	display: block;
	content: '';
	background: url('../img/line_1.png') no-repeat left top;
	background-size: 100%;
	width: 291px;
	height: 168px;
	position: absolute;
	right: -100px;
	top: 0px;
}

.crats2025ss-howtoplay-list {
	display: flex;
	gap: 40px;
	padding:0;
	margin:0;
}

.crats2025ss-howtoplay-list li {
	background: rgba(255, 255, 255, 0.15);
	border-radius: 24px;
	border: 2px solid #0062B0;
	padding: 62px 30px 34px;
	position: relative;
	width: calc(33.333% - 27px);
	box-shadow: 0px 4px 12px rgba(15, 7, 98, 0.25);
	margin:0;
}

.crats2025ss-howtoplay-item-num {
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translate(-50%, -50%);
}

.crats2025ss-howtoplay-item-title {
	margin-bottom: 22px;
	text-align: center;
}

.crats2025ss-howtoplay-item-image {
	text-align: center;
	margin-bottom: 25px;
}

.crats2025ss-howtoplay-item-text{
	text-align:left;
	padding:0 10px;
}

.crats2025ss-howtoplay-item-text p {
	font-size: 16px;
	line-height: 1.6;
	font-weight: 300;
	min-height:73px;
}

.crats2025ss-howtoplay-item-text small {
	display: block;
	font-size: 14px;
	line-height: 1.6;
	margin-top: 20px;
}


/* term ---------------------------------------*/

.crats2025ss-term {
	padding: 0 50px;
	margin-bottom: 56px;
}

.crats2025ss-term-inner {
	max-width: 920px;
	margin: 0 auto;
	background: rgba(255, 255, 255, 0.15);
	border-radius: 24px;
	border: 2px solid #0062B0;
	padding: 46px 50px 40px 78px;
	position: relative;
	box-shadow: 0px 4px 12px rgba(15, 7, 98, 0.25);
}

.crats2025ss-term-title {
	text-align: center;
	margin-bottom: 40px;
}

.crats2025ss-term-detail {
	height: 420px;
	overflow: auto;
	font-size: 16px;
	font-style: normal;
	font-weight: 300;
	line-height: 1.6;
	padding-right: 15px;
	text-align:left;
}

.crats2025ss-term-detail-title {
	background: #fff;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	padding: 12px 20px;
	color: #0F0762;
	margin: 40px 0 20px;
	border-radius: 4px;
}

.crats2025ss-term-detail p {
	margin:0 0 0.8em;
}

.crats2025ss-term-detail ul {
	padding:0;
	margin:0;
}

.crats2025ss-term-detail li{
	padding:0;
	margin:0;
}

.crats2025ss-term-detail-notice li{
	font-size: 14px;
	text-indent: -1.3em;
	margin-left:1.3em;
}

.crats2025ss-term-detail-step li{
	position: relative;
	padding:2px 0 2px 36px;
	line-height: 1.6;
	margin-bottom: 10px;
}

.crats2025ss-term-detail-step li span{
	background: rgba(255, 255, 255, 0.15);
	color:#fff;
	width:28px;
	height:28px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 11px;
	font-weight: bold;
	box-shadow: 0px 2px 8px rgba(15, 7, 98, 0.25);
	position: absolute;
	left:0;
	top:0;
}

.crats2025ss-term-detail-list > li{
	position: relative;
	padding-left:20px;
	line-height:2;
}

.crats2025ss-term-detail-list > li::before{
	display:block;
	content:'';
	background:#fff;
	width:2px;
	height:2px;
	position:absolute;
	left:5px;
	top:15px;
}

.crats2025ss-term-detail-numlist > li{
	position: relative;
	line-height:2;
	padding-left: 33px;
}

.crats2025ss-term-detail-numlist > li span{
	width:30px;
	text-align:right;
	position: absolute;
	left:0;
	top:0;
}

.crats2025ss-term-detail-list .crats2025ss-term-detail-numlist > li{padding-left:18px;}
.crats2025ss-term-detail-list .crats2025ss-term-detail-numlist > li span{width:15px;}


/* contact ---------------------------------------*/

.crats2025ss-contact {
	padding: 0 50px;
	margin-bottom: 85px;
}

.crats2025ss-contact-inner {
	max-width: 920px;
	margin: 0 auto;
	background: rgba(255, 255, 255, 0.15);
	border-radius: 24px;
	border: 2px solid #0062B0;
	padding: 68px 40px 46px;
	position: relative;
	box-shadow: 0px 4px 12px rgba(15, 7, 98, 0.25);
}

.crats2025ss-contact-title {
	margin:0 0 40px;
	text-align: center;
}

.crats2025ss-contact-tel-wrapper {
	text-align: center;
}

.crats2025ss-contact-tel-lead{
	font-size: 16px;
	line-height:1.6;
	font-weight: bold;
}

.crats2025ss-contact-tel {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	font-size: 46px;
	font-weight: 600;
	margin:0 0 10px;
	padding:10px 0 0 0;
}

.crats2025ss-contact-tel::before {
	display: block;
	content: '';
	background: url('../img/icon_tel.svg') 0 0 no-repeat;
	background-size: contain;
	width: 40px;
	height: 40px;
}

.crats2025ss-contact-time {
	line-height: 1.6;
}

.crats2025ss-contact-time dt {
	font-size: 16px;
	padding:0;
	margin:0;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 10px;
	margin-bottom: 5px;
}

.crats2025ss-contact-time dt small{
	font-size: 14px;
}

.crats2025ss-contact-time dd {
	font-size: 16px;
	padding:0;
	margin:0;
}

.crats2025ss-supported {
	text-align: center;
	padding-bottom: 80px;
}


@media screen and (min-width: 768px) and (max-width: 1180px) {

	.crats2025ss-message-pict.pict_01{
		left:0px;
		width:120px;
	}

	.crats2025ss-message-pict.pict_02{
		right:-20px;
		width:120px;
	}

	.crats2025ss-message-pict.pict_03{
		left:-0px;
		width:100px;
	}

	.crats2025ss-campaign-title img{
		width:500px;
	}

	.crats2025ss-products-inner{
		padding:0 100px;
	}

	.crats2025ss-products-title{
		width:80px;
		left:0;
	}

	.crats2025ss-products .icon-mark{
		width:100px;
	}

	.crats2025ss-products .icon-jfa{
		right:0;
		width:80px;
	}

	.crats2025ss-howtoplay-title img{
		width:610px;
	}

	.crats2025ss-howtoplay-title picture::after{
		right:-50px;
	}

	.crats2025ss-howtoplay-list li{
		padding:40px 20px 25px;
	}

	.crats2025ss-howtoplay-item-num img{
		width:60px;
		height:60px;
	}

	.crats2025ss-howtoplay-item-title img{
		width:auto;
		height:20px;
	}

	.crats2025ss-contact-tel-wrapper{
		gap:40px;
	}

	.crats2025ss-contact-tel{
		font-size: 24px;
		width:50%;
	}


}



/* pc only */
@media screen and (min-width: 768px) {

	.sp {display: none !important;}
	.spbr {display: none;}

}


@media screen and (max-width: 767px) {

	.pc {display: none !important;}
	.pcbr {display: none;}

	.container::before {
		background: url('../img/sp_bg.jpg') no-repeat center top;
	}

	.wrapper::before {
		background: url('../img/bg_kv_sp.png') no-repeat center top;
		background-size: 100%;
	}

	.wrapper::after {
		display: block;
		content: '';
		background: url(../img/bg_brush_03_sp.png) no-repeat center top;
		background-size: 100%;
		width: 100%;
		height: 150vw;
		position: absolute;
		left: 0;
		bottom: -200px;
	}


	/* kv ---------------------------------------*/

	.crats2025ss-kv {
		padding: 0;
		margin-bottom: 0;
	}

	.crats2025ss-kv-image {
		width:100%;
	}


	/* message ---------------------------------------*/

	.crats2025ss-message {
		padding: 0 25px;
		margin-bottom: 119px;
		position: relative;
	}

	.crats2025ss-message::before{
		background:url('../img/bg_brush_01_sp.png') no-repeat right top;
		background-size:100%;
		width:100%;
		height:110vw;
		top:650px;
	}

	.crats2025ss-message-inner {
	}

	.crats2025ss-message-pict {
		position: relative;
		margin-bottom: 5px;
	}

	.crats2025ss-message-title {
		margin-bottom: 36px;
	}

	.crats2025ss-message-text {
		padding:0 15px;
		margin-bottom: 30px;
	}

	.crats2025ss-message-package {
		padding:0 8px;
	}


	/* campaign ---------------------------------------*/

	.crats2025ss-campaign {
		padding: 0 20px;
		margin-bottom: 72px;
	}

	.crats2025ss-campaign::before{
		background:url('../img/bg_brush_02_sp.png') no-repeat right top;
		background-size:100%;
		width:100%;
		height:150vw;
		top:500px;
	}

	.crats2025ss-campaign-title {
		margin-bottom: 32px;
		position: relative;
	}

	.crats2025ss-campaign-title img{
		width:262px;
	}

	.crats2025ss-campaign-title picture::after {
		width: 145px;
		height: 85px;
		position: absolute;
		left: -32px;
		top: -45px;
	}

	.crats2025ss-campaign-text {
		padding:0 20px;
		margin-bottom: 30px;
	}

	.crats2025ss-campaign-package img{}

	.crats2025ss-campaign-package-title {
		margin-bottom: 42px;
	}

	.crats2025ss-campaign-package-title img{width:242px;}

	.crats2025ss-campaign-package-list {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
		gap: 15px;
		padding:0 5px;
	}

	.crats2025ss-campaign-package-list > li{
		width:calc(33.3333% - 10px);
		border-width:1px;
		border-radius: 10px;
	}

	.crats2025ss-campaign-package-jfa{
		position: relative;
		margin-top: 0;
		width:calc(33.3333% - 10px);
		float:right;
	}

	.crats2025ss-campaign-package-jfa img{
		position: absolute;
		right:0;
		top:0;
		transform: translate(0,-101%);
		width:100%;
	}


	/* products ---------------------------------------*/

	.crats2025ss-products {
		padding: 60px 24px 60px;
		margin-bottom: 40px;
	}

	.crats2025ss-products::before{
		background:url('../img/bg_brush_01_left_sp.png') no-repeat right top;
		background-size:100%;
		width:100%;
		height:150vw;
		top:400px;
	}

	.crats2025ss-products-inner {
		padding-left: 80px;
		padding-right: 0px;
	}

	.crats2025ss-products-title {
		width: 65px;
		left:0;
	}

	.crats2025ss-products-title::after {
		width: 146px;
		height: 85px;
		left: -67px;
		bottom: -55px;
	}

	.crats2025ss-products-package {
	}

	.crats2025ss-products .icon-mark {
		display: none;
	}

	.crats2025ss-products .icon-jfa {
		display: none;
	}


	/* howtoplay ---------------------------------------*/

	.crats2025ss-howtoplay {
		padding: 0px 25px;
		margin-bottom: 32px;
		overflow: hidden;
		position: relative;
	}

	.crats2025ss-howtoplay::before{
		content:'';
		display: block;
		background:url('../img/bg_brush_01_sp.png') no-repeat right top;
		background-size:100%;
		width:100%;
		height:120vw;
		position: absolute;
		right:0;
		top:400px;
	}

	.crats2025ss-howtoplay::after{
		content:'';
		display: block;
		background:url('../img/bg_brush_01_left_sp.png') no-repeat right top;
		background-size:100%;
		width:100%;
		height:120vw;
		position: absolute;
		left:0;
		top:900px;
	}

	.crats2025ss-howtoplay-inner {
		position: relative;
		z-index:2;
	}

	.crats2025ss-howtoplay-title {
		margin-bottom: 70px;
	}

	.crats2025ss-howtoplay-title picture::after {
		width: 150px;
		height: 85px;
		position: absolute;
		right: -40px;
		top: 2px;
	}

	.crats2025ss-howtoplay-title img{width:326px;}

	.crats2025ss-howtoplay-list {
		display: block;
		width:auto;
		gap:0;
		margin:0;
		padding:0;
	}

	.crats2025ss-howtoplay-list li {
		padding: 40px 12px 22px;
		width:auto;
		box-shadow: 0px 4px 12px rgba(15, 7, 98, 0.25);
		border-radius: 24px;
		margin:0 0 64px;
	}

	.crats2025ss-howtoplay-list li:last-child {margin-bottom: 0;}

	.crats2025ss-howtoplay-item-num img{
		width:80px;
		height:80px;
	}

	.crats2025ss-howtoplay-item-title {
		margin-bottom: 16px;
	}

	.crats2025ss-howtoplay-item-title img{
		width:auto;
		height:28px;
	}

	.crats2025ss-howtoplay-item-image {
		text-align: center;
		padding:0 10px 0 ;
		margin:0 0 20px;
	}

	.crats2025ss-howtoplay-item-text{min-height:0;}

	.crats2025ss-howtoplay-item-text p{
		margin:0;
	}

	.crats2025ss-howtoplay-item-text small {
		margin-top: 10px;
	}


	/* term ---------------------------------------*/

	.crats2025ss-term {
		padding: 0 24px;
		margin-bottom: 32px;
	}

	.crats2025ss-term-inner {
		padding: 28px 10px 30px;
		box-shadow: 0px 4px 12px rgba(15, 7, 98, 0.25);
	}

	.crats2025ss-term-title {
		margin:0 0 28px;
	}

	.crats2025ss-term-title img{width:141px}

	.crats2025ss-term-detail {
		height: 400px;
		font-size: 14px;
		line-height: 1.56;
		padding-left: 15px;
	}

	.crats2025ss-term-detail-title {
		font-size: 16px;
		padding: 9px 15px;
		margin: 24px 0 16px;
	}

	.crats2025ss-term-detail p {
		margin-bottom: 0.8em;
	}

	.crats2025ss-term-detail-notice li{
		font-size: 12px;
	}

	.crats2025ss-term-detail-step li{
		padding:0 0 0 32px;
		line-height: 1.6;
		margin-bottom: 10px;
		font-size: 14px;
	}
	
	.crats2025ss-term-detail-step li span{
		width:24px;
		height:24px;
		font-weight: normal;
		font-size: 10px;
		top:8px;
	}
	
	.crats2025ss-term-detail-list > li{
		font-size: 14px;
		padding-left:18px;
		line-height:1.6;
	}
	
	.crats2025ss-term-detail-list > li::before{
		left:8px;
		top:12px;
	}
	
	.crats2025ss-term-detail-numlist > li{
		line-height:1.6;
		padding-left: 28px;
		font-size: 14px;
	}
	
	.crats2025ss-term-detail-numlist > li span{
		width:25px;
	}
	
	.crats2025ss-term-detail-list .crats2025ss-term-detail-numlist > li{padding-left:15px;}
	.crats2025ss-term-detail-list .crats2025ss-term-detail-numlist > li span{width:13px;}


	/* contact ---------------------------------------*/

	.crats2025ss-contact {
		padding: 0 24px;
		margin-bottom: 43px;
	}

	.crats2025ss-contact-inner {
		padding: 28px 20px 10px;
		box-shadow: 0px 4px 12px rgba(15, 7, 98, 0.25);
	}

	.crats2025ss-contact-title {
		margin:0 0 28px;
	}

	.crats2025ss-contact-title img{
		width:105px;
	}

	.crats2025ss-contact-tel-wrapper {
		display: block;
		text-align:left;
	}

	.crats2025ss-contact-tel-lead {
		line-height: 1.5;
		font-weight: 500;
		margin-bottom: 10px;
	}

	.crats2025ss-contact-tel {
		gap: 4px;
		font-size: 31px;
		margin-bottom: 22px;
		padding-top: 3px;
	}

	.crats2025ss-contact-tel::before {
		width: 27px;
		height: 27px;
	}

	.crats2025ss-contact-time {
		line-height: 1.6;
		text-align: left;
	}

	.crats2025ss-contact-time dt {
		font-size: 16px;
		margin-bottom: 5px;
		display: block;
	}

	.crats2025ss-contact-time dt small{
		display: block;
	}

	.crats2025ss-contact-time dd {
		font-size: 16px;
	}

	.crats2025ss-supported {
		padding-bottom: 40px;
	}

	.crats2025ss-supported img{width:160px;}
	
}