@charset "utf-8";
/**
 * COMMON CSS
 */

/* For Safari clamp function */
* {
	min-height: 0vw;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
    box-sizing: border-box;
}
/* Remove list styles (bullets/numbers) */
ol,
ul,
menu {
    list-style: none;
}
/* For images to not be able to exceed their container */
img {
    max-width: 100%;
}
/* removes spacing between cells in tables */
table {
    border-collapse: collapse;
}
/* reset default text opacity of input placeholder */
::-moz-placeholder {
    color: unset;
}
::placeholder {
    color: unset;
}

a {
    text-decoration: none;
}
a.anchor {
    display: block;
    padding-top: 100px;
    margin-top: -100px;
}
* {
    word-wrap: break-word;
    box-sizing: border-box;
    background-repeat: no-repeat;
    overflow-wrap: break-word;
}
html {
    height: 100%;
    height: -webkit-fill-available;
    overflow-y: scroll;
    scroll-behavior: smooth;
}
body {
	position:relative;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    height: 100%;
    min-height: 100vh;
    min-height: -webkit-fill-available;
    line-height: 1.5;
    font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Sans","Helvetica Neue",Arial,Meiryo,sans-serif;
}
:where(body) p {
    line-height: 1.5;
}
:where(body) h1,
:where(body) h2,
:where(body) h3,
:where(body) h4,
:where(body) h5,
:where(body) h6 {
    line-height: 1.5;
}

/*
* PC - SP
******************************************************/
.pc-only {
	display: none;
}
@media print, screen and (min-width: 1140px) {
	.sp-only {
		display: none;
	}
	.pc-only {
		display: block;
	}
}

a:link.link-off{
	pointer-events: none;
	text-decoration: none;
}
/*
* HEADER 
******************************************************/
.globalHeader{
	background-color:var(--color-primary);
	width:100%;
	margin:auto;
	padding:27px 20px;

}
.globalHeader.fixed{
	position: fixed;
	top: 0;
	z-index: 1000;
}
.globalHeader__inner {
	display:flex;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	align-items: center;
}
.globalHeader__hamburgerMenu{
	display:flex;
	align-items: center;
	width:40%;
}
.globalHeader__hamburgerImg--area {
    width: 54px;
    height: 24px;
    cursor: pointer;
}
.globalHeader__hamburgerImg{
	width: 24px;
	height: 24px;
    margin-right:30px;
}
.globalHeader__kkOpenImg{
    max-width: 100px;
}
.globalHeader__logoImg{
	display: none;
	width:162px;
	margin:auto;
}
.globalHeader__login{
	width:40%;
	font-size:var(--font-size-df);
	font-weight:var(--font-bold);
	color:var(--color-default);
	text-align:right;
    letter-spacing: 0.1em;
}
.globalHeader__login a:link,.globalHeader__login a:visited{
	color: var(--color-default);
}

@media print, screen and (min-width: 1140px) {
	.globalHeader{
		padding:18px 0;
	}
	.globalHeader__inner {
		max-width: var(--content-size);
		margin: auto;
	}
    .globalHeader__hamburgerImg--area {
        width: 87px;
        height: 40px;
    }
	.globalHeader__hamburgerImg{
		width: 42px;
		height: 40px;
        margin-right:45px;
	}
	.globalHeader__logoImg{
		display: initial;
	}
    .globalHeader__kkOpenImg{
        max-width: inherit;
    }
    .globalHeader__login{
        font-size: var(--font-size-ml);
    }
}

/*
* SIDE MENU
******************************************************/
.globalSideMenu{
	position:fixed;
	top:0;
	left:-1200px;
	height:100%;
	width:100%;
	background-color:var(--color-bg-menu-pc);
	z-index: 9999;
	overflow: scroll;
}
.globalSideMenu__closeBtn{
	font-size:var(--font-size-lg);
	color:var(--color-default);
	background-color: #777;
	height: 77px;
}
.globalSideMenu__closeBtnImg{
    position: absolute;
    right: 25px;
    top: 28px;
    cursor: pointer;
    width: 24px;
}
@media print, screen and (min-width: 1140px) {
	.globalSideMenu{
		position:fixed;
		width:700px;
		background-color:var(--color-bg-menu-sp);
	}
	.globalSideMenu__closeBtnImg {
		top: 25px;
		width: 30px;
	}
}

.globalSideMenu__sideMenuWrapper{
	width: auto;
    margin: 50px 3vw;
}
.sideMenu__item{
	position: relative;
	padding: 10px 15px;
	border-top:1px var(--color-text-gray) solid;
	color: var(--color-text-gray);
}
.sideMenu__item:last-child{
	border-bottom:1px var(--color-text-gray) solid
}
.sideMenu__link:link,.sideMenu__link:visited{
	color: var(--color-text-gray);
	display: block;
}
.sideMenu__link--mypage:link,.sideMenu__link--mypage:visited{
	color:var(--color-default);
}
.sideMenu__item--mypage{
	margin-top: 50px;
	background-color: var(--color-secondary);
	color: var(--color-default);
}
.sideMenu__inner{
	display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
.sideMenu__inner::after{
	content: '';
	position: absolute;
}
/*
NEW DESIGN DELETE
.sideMenu__inner--link::after{
	width: 15px;
	height: 15px;
	border-top: solid 3px #b5b5b5;
	border-right: solid 3px #b5b5b5;
	border-radius: 3px;
	transform: rotate(45deg);
	right: 10px;
}
.sideMenu__inner--submenu::before,.sideMenu__inner--submenu::after{
	content: '';
	position: absolute;
	top: 25px;
	right: 12px;
    width: 3px;
    height: 20px;
    background: #b5b5b5;
}
.sideMenu__inner--submenu::before{
  transform: translate(-50%,-50%) rotate(90deg);
}
.sideMenu__inner--submenu::after{
	transform: translate(-50%,-50%) rotate(180deg);
}

.sideMenu__inner--submenu.clicked::before{
  transform: translate(-50%,-50%) rotate(-45deg);
	top: 25px;
}
.sideMenu__inner--submenu.clicked::after{
	transform: translate(-35%,-50%) rotate(45deg);
	top: 25px;
}
*/
.sideMenu__en{
	font-family: 'Oswald', sans-serif;
	font-size: calc(var(--font-size-md) + 4px);
	vertical-align: middle;
}
.sideMenu__jp{
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Sans","Helvetica Neue",Arial,Meiryo,sans-serif;
	font-weight:var(--font-bold);
	margin-left: 15px;
	font-size: var(--font-size-xs);
}
/*
NO TOGGLE
.sideMenu__submenu{
	display: none;
}
*/
.sideMenu__subLink{
	margin-left: 15px;
}
.sideMenu__subItem{
	padding: 10px 0 5px 0;
	font-size: var(--font-size-ml);
	font-family: 'Oswald', sans-serif;
}
.sideMenu__subItem a:link,.sideMenu__subItem a:visited{
	color: #4a4a4a;
	display: block;
}
@media print, screen and (min-width: 1140px) {
	.sideMenu__inner--link::after{
		width: 25px;
		height: 25px;
		right: 25px;
	}
	.sideMenu__inner--submenu::before,.sideMenu__inner--submenu::after{
		top: 35px;
		right: 28px;
		width: 4px;
		height: 35px;
	}
	.sideMenu__item{
		padding: 10px 25px;
	}
	/*
    .sideMenu__inner--submenu.clicked::before{
        transform: translate(-50%,-50%) rotate(-45deg);
          top: 35px;
    }
    .sideMenu__inner--submenu.clicked::after{
          transform: translate(-35%,-50%) rotate(45deg);
          top: 35px;
    }
	*/
	.sideMenu__en{
		font-size: var(--font-size-lg);
	}
	.sideMenu__jp{
		margin-left: 25px;
		font-size: var(--font-size-sl);
	}
	.sideMenu__subLink{
		margin-left: 35px;
	}
}

.globalSideMenu__sideMenuSnsWrapper{
	margin-top: 50px;
}
.sideMenuSns{
	display: flex;
	justify-content: flex-start;
}
.sideMenuSns__item{
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	background-color: var(--color-primary);
	width: 40px;
	height: 40px;
	margin-right:13px;
	padding: 5px;
}
.sideMenuSns__img{
	width: 100%;
}
.sideMenuSns__item:hover {
	background: var(--color-secondary);
}
@media print, screen and (min-width: 1140px) {
	.sideMenuSns__item{
		width: 70px;
		height: 70px;
		margin-right:25px;
	}
    .sideMenuSns__item{
        width: 55px;
        height: 55px;
    }
}
.globalSideMenu__textLinkWrapper{
	margin: 50px 0;
}
.textLink{
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Sans","Helvetica Neue",Arial,Meiryo,sans-serif;
}
.textLink__item{
	margin: 25px 0;
	font-size: var(--font-size-md);
	font-weight:var(--font-bold);
}
.textLink__link:link,.textLink__link:visited {
	color: var(--color-text-gray);
	padding: 0 0 0 1em;
}
.textLink__link:hover {
	color: var(--color-secondary);
}
.textLink__item a[target="_blank"]:after {
	content: url(../images/common/ico-arrow-external-link.png);
	margin: 0 0 0 6px;
    position: absolute;
    top: 2px;
}

/*
* HEADING BG SHADOW
******************************************************/
.bg__heading {
	position: relative;
}
.bg__heading::before {
	content: "";
	display: block;
	width: 100%;
	background-repeat: repeat-x;
	background-position: left top;
	height: 20px;
	background: url(../images/common/bg-gray-shadow.png) repeat-x;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
}
@media print, screen and (min-width: 1140px) {
	.bg__heading::before {
		top: 0;
		left: 0;
	}
}

/*
* MAINVISUAL
******************************************************/
.Mainvisual {
	background: url(../images/common/bg-mv.png) repeat-x;
	min-height: 180px;
	margin: auto;
	position:relative;
}
.Mainvisual__content {
	margin: 0 auto;
	text-align: center;
	padding: 40px 0 0 0;
}
.Mainvisual__heading {
	color:var(--color-default);
	font-weight:var(--font-bold);
	font-size:var(--font-size-mv);
	font-family: 'Oswald', sans-serif;
	line-height:1;
}
.Mainvisual__heading span {
	color: var(--color-default);
	display: block;
	font-weight:var(--font-bold);
	font-size: 15px;
	padding: 12px 0 0 0;
}
@media print, screen and (min-width: 1140px) {
	.Mainvisual {
		background: url(../images/common/bg-heading.png) repeat-x;
		min-height: 80px;
		height:80px;
	}
	.Mainvisual__content {
		padding: 0;
	}
	.Mainvisual__heading span {
		font-size: var(--font-size-lg);
		display: inline-block;
        margin: 0 0 0 1.55em;
	}
}

/*
* TITLE
******************************************************/
.ge-heading {
    color: var(--color-default);
    padding: 10px 14px;
}
.line-top {
    content: "";
    border-top: 3px solid #bea570;
    box-shadow: inset 0 1px 0 0 rgba(0,0,0,.5);
}
.line-bottom {
    content: "";
    border-bottom: 3px solid transparent;
}
.line-bottom-last {
    content: "";
    border-bottom: 3px solid #d0b787;
    box-shadow: 0 1px 0 0 rgba(255,255,255,.5);
}
.ge-heading--bg {
	background: url(../images/common/bg-heading-sp.png) repeat-x;
	box-shadow: -6px 1px 3px rgba(0, 0, 0, .4) inset, 6px 1px 2px rgba(0, 0, 0, .3) inset
}
.geHeading--toggle h2 {
    font-size: var(--font-size-lm);
    font-family: 'Oswald', sans-serif;
    font-weight: var(--font-bold);
    line-height: 1;
}
.ge-heading.as_text-s h2 {
	font-size: var(--font-size-ml);
	line-height: 1.5;
}
.ge-heading span {
    font-size: var(--font-size-xs);
    padding-left: 14px;
    vertical-align: middle;
    font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Sans","Helvetica Neue",Arial,Meiryo,sans-serif;
}
.ge-heading.as_text-s span {
	font-size: 10px;
	padding-left: 10px;
}
.ge-heading.as_long h2 {
	display: flex;
}
.as_long span {
    display: block;
}
.as_long span.pc-only {
    display: none;
}
@media print, screen and (min-width: 1140px) {
    .ge-heading {
        padding: 10px 28px;
    }
	.ge-heading--bg {
		background: url(../images/common/bg-heading.png) repeat-x;
		height: 70px;
	}
    .ge-heading h2 {
        font-size: 55px;
        line-height: 55px;
        max-width: var(--content-size);
        margin: -7px auto 0;
    }
    .ge-heading span {
        font-size: var(--font-size-md);
		vertical-align: baseline;
        padding-left: 30px;
    }
	.geHeading-short h2 {
		font-size: 38px;
		position:absolute;
		right:57%;
		width: 450px;
	}
    .line-bottom {
        border-bottom: 3px solid #d0b787;
        box-shadow: 0 1px 0 0 rgba(0,0,0,.5);
    }
	.line-top {
		border-top: 3px solid #bea570;
	}
	.geHeading-short {
		max-width: 45%;
	}
}

/*
* HEADING TOGGLE
******************************************************/
.geHeading--toggle {
	font-size: var(--font-size-lm)!important;
	height: 50px;
	position: relative;
    cursor: pointer;
	transform-origin: center 45%;
    transition: transform 0.75s;
}
.geHeading--toggle::before,
.geHeading--toggle::after {
	content: "";
	position: absolute;
	width: 4px;
	height: 24px;
	background: var(--color-default);
    top: 50%;
	right: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.geHeading--toggle::before {
	transform: translate(-50%,-50%) rotate(0deg);
}
.geHeading--toggle::after {
	transform: translate(-50%,-50%) rotate(90deg);
}
.geHeading--toggle.close::before{
	transform: translate(-50%,-50%) rotate(-45deg);
}  
.geHeading--toggle.close::after{
	transform: translate(-50%,-50%) rotate(45deg);
}
.geHeading--toggle--content {
	display: none;
}
.sp-content {
	border-top: 2px solid rgb(154, 146, 21);
	box-shadow: inset 0 1px 0 0 rgb(0 0 0 / 50%);
}

@media print, screen and (min-width: 1140px) {
	.geHeading--toggle {
		position: static;
		cursor: inherit;
		pointer-events: none;
		box-shadow: -6px 0 3px rgba(0, 0, 0, .4) inset, 6px 0 3px rgba(0, 0, 0, .4) inset;
		height: 70px;
	}
	.sp-content,
	.sp-content.bg-gray {
		background: inherit;
		border-top: none;
		box-shadow: none;
	}
	.geHeading--toggle::before,
	.geHeading--toggle::after {
		display: none;
	}
	.geHeading--toggle--content {
		display: block;
	}
}

/*
* PC 2colmun
******************************************************/
@media print, screen and (min-width: 1140px) {
	.pc2col {
		display: grid;
		grid-template-columns: 660px 1fr;
	}
	.pc2colHeading {
		min-width: 600px;
	}
	.pc2colContent {
        max-width: 1044px;
		margin: 0 50px auto;
	}
}

/*
* BOARD PARTS
******************************************************/
.geBoard {
	padding: 0;
    margin: auto;
    max-width: 360px;
}
.geBoard--button a {
	height: 40px;
	width: 100%;
	background-image: var(--color-gradation-secondary);
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.geBoard--list {
	margin: 0 0 22px 0;
}
.geBoard--button-pc {
	display: none;
}
.geBoard--button-sp {
	display: block;
	padding: 0 1em 0 35%;
}
.geBoard--button-sp.as_score {
	padding: 0 1em 0 30%;
}
.geBoard--select__button {
	margin: auto;
	width: 230px;
}
.sp-more-view {
    margin: 21px auto 21px;
}
@media print, screen and (min-width: 1140px) {
	.geBoard--wrapper {
		max-width:var(--content-size);
        height: auto;
        margin: 16px auto 0 auto;
        border-radius: 10px;
        padding: 0;
		background:var(--color-gradation-primary);
	}
	.geBoard--ranking {
		height:463px;
	}
	.geBoard--ranking.ranking-open {
		height:auto;
	}
	.geBoard {
        max-width:var(--content-size);
        height: auto;
        padding: 3px;
	}
	.geBoard--inner {
		background: var(--color-default);
		border-radius: 8px;
		border-top:var(--border-shadow1);
		border-left:var(--border-shadow1);
		border-right:var(--border-shadow2);
		border-bottom:var(--border-shadow2);
	}
	.geBoard--innerBox {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		min-height: 416px;
	}
	.geBoard--button a {
		border-radius: 8px 8px 0 0;
		height: 38px;
		justify-content: center;
	}
	.geBoard--button-pc {
		display: block;
	}
	.geBoard--button-sp {
		display: none;
	}
	.geBoard--list {
        max-width: 660px;
        min-width: 340px;
        width: 100%;
        padding: 0;
        margin: 0 24px;
	}
	.geBoard--list-2col {
		display: grid;
		grid-template-columns: 540px 480px;
		column-gap: 16px;
	}
	.geBoard--select {
		max-width: 240px;
		width: 100%;
		padding: 20px 0 0 0;
		margin: 0 auto;
	}
	.geBoard--select--lineup {
		width: 100%;
		max-width: 660px;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        column-gap: 16px;
		position: absolute;
		left: 75%;
		transform: translateX(-75%);
		-webkit-transform: translateX(-75%);
		-ms-transform: translateX(-75%);
	}
	.geBoard--select--lineup.as-ranking,
	.geBoard--select--lineup.as-score {
        top: 8px;
	}
	.geBoard--select__button {
        margin: 18px auto;
        width: 100%;
	}
}
@media print, screen and (min-width: 1310px) {
	.geBoard--select--lineup {
		left: 73%;
		transform: translateX(-72%);
		-webkit-transform: translateX(-72%);
		-ms-transform: translateX(-72%);
	}
}

/*
* RANKING PARTS
******************************************************/
.rankingLists {
	padding: 18px 0 0 0;
}
.rankingLists--top{
	height: 350px;
	overflow-y: scroll;
}
.rankingList {
	border-bottom: 1px solid #c5c5c5;
	display: grid;
	grid-template-columns: 32px 3fr 2fr;
	align-items: center;
}
.rankingList--rank--heading,
.rankingList--name-heading,
.rankingList--point--heading {
	font-size: var(--font-size-sm);
	color: #a8a8a8;
	font-family: 'Oswald', sans-serif;
}
.rankingList--lank {
	width: 24px;
	height: 100%;
	background: var(--color-bg-gray);
	font-size: var(--font-size-md);
	font-family: 'Oswald', sans-serif;
	font-weight:var(--font-bold);
	text-align: center;
	color: var(--color-default);
}
.rankingList--name {
	font-size: var(--font-size-sm);
	text-align: left;
	color: var(--color-text-gray);
	padding: 4px 0.55em;
}
.rankingList--point {
	background: var(--color-bg-light-gray);
	height: 100%;
	font-size: 17px;
	font-family: 'Oswald', sans-serif;
	font-weight:var(--font-bold);
	text-align: right;
	color: var(--color-text-gray);
	padding: 0 .55em 0 0;
}
.rankingList--rank--heading,
.rankingList--point--heading {
	text-align: center;
	padding: 0 0 3px 0;
}
.rankingList--name-heading {
	text-align: left;
	padding: 0 0 3px .55em;
}
.rankingList--loading{
	border-bottom: none;
}
@media print, screen and (min-width: 1140px) {
	.rankingList--lank {
		width: var(--font-size-lg);
		font-size: var(--font-size-md);
	}
	.rankingList--name {
		font-size: var(--font-size-df);
		padding: 3px 1em;
	}
	.rankingList--point {
		font-size: var(--font-size-md);
		padding: 0 1em 0 0;
	}
	.rankingList--rank--heading,
	.rankingList--name-heading,
	.rankingList--point--heading {
		font-size: var(--font-size-df);
	}
	.rankingList--rank--heading,
	.rankingList--point--heading {
		padding: 0 0 6px 0;
	}
	.rankingList--name-heading {
		padding: 0 0 6px 1em;
	}
}


/*
* SCORE LIST
******************************************************/
.scoreLists {
	padding: 15px 0 0 0;
}
.scoreLists--border {
	border-bottom: 1px solid #c5c5c5;
	margin: 0 0 13px 0;
}
.scoreList {
	border-top: 1px solid var(--color-secondary);
	border-bottom: 1px solid var(--color-secondary);
	display: grid;
	grid-template-columns: 77px 3fr 2fr;
	margin: 0 0 12px 0;
}
.scoreList:last-child {
	border-top: 1px solid var(--color-secondary);
	border-bottom: 1px solid transparent;
}
.scoreList--heading {
	display: flex;
	justify-content: center;
	align-items: start;
	height: 28px;
	padding: 2px .55em 0 0;
	font-size: var(--font-size-df);
	font-weight:var(--font-bold);
	text-align: center;
	color: var(--color-default);
	position: relative;
	z-index: 1;
}
.scoreList--heading::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: var(--color-secondary);
	transform: scaleY(1.1) perspective(.4em) rotateX(-2deg);
	transform-origin: top left;
}
.scoreList--numbers {
	line-height: 1;
	display: flex;
	justify-content: end;
	align-items: baseline;
	text-align: center;
	font-size: 48px;
	font-family: 'Oswald', sans-serif;
	font-weight:var(--font-bold);
	color: #595959;
	padding: 5px 0;
}
.scoreList--decimal-point {
	font-size: var(--font-size-md);
}
.scoreList--unit {
	display: flex;
	justify-content: start;
	align-items: end;
	padding: 0 0 8px .55em;
	font-size: var(--font-size-md);
	font-family: 'Oswald';
	color: #595959;
}
.scorerTable {
	background:var(--color-secondary);
	display: flex;
	flex-wrap: wrap;
	padding: 5px 20px 10px;
	margin: 0 0 10px 0;
	position: relative;
}
.scorerTable::before {
	content: "";
	position: absolute;
	top: -40px;
	left: 50%;
	margin-left: -25px;
	border: 25px solid transparent;
	border-bottom: 15px solid var(--color-secondary);
}
.scorerTable--inner {
	color: var(--color-default);
	border-bottom: 1px solid var(--color-default);
	width: calc((100% - 20px) / 2);
	margin: 0 5px;
	padding: 3px;
	display: flex;
	justify-content: space-between;
	align-items:flex-end;
}
.scorerTable--inner span {
	display: inline;
}
.scorerTable--name {
	font-size:var(--font-size-sm);
	font-weight:var(--font-bold);
}
.scorerTable--title {
	font-size: 9px;
	font-weight:var(--font-bold);
}
@media print, screen and (min-width: 1140px) {
	.scoreLists {
        padding: 24px 0 0 24px;
	}
	.scoreLists--border {
		border-bottom: 1px solid #c5c5c5;
		margin: 0;
	}
	.scoreList {
		border-top: 2px solid var(--color-secondary);
		border-bottom: 2px solid transparent;
		grid-template-columns: 180px 3fr 2fr;
		margin: 0 0 12px 0;
	}
	.scoreList:last-child {
		border-top: 2px solid var(--color-secondary);
		border-bottom: 2px solid var(--color-secondary);
		grid-template-columns: 180px 3fr 2fr;
		margin: 0 0 12px 0;
	}
	.scoreList--heading {
		font-size: var(--font-size-md);
	}
	.scoreList--numbers {
		font-size: 60px;
		padding: 10px 0;
	}
	.scorerTable-bg {
		background: var(--color-secondary);
		min-width: 480px;
		margin: 24px 24px 24px 12px;
	}
	.scorerTable {
		padding: 5px 30px 10px;
	}
	.scorerTable::before {
		top: 206px;
		left: 10px;
		margin-left: -25px;
		border-style: solid;
		border-top: 30px solid transparent;
		border-bottom: 30px solid transparent;
		border-right: 20px solid var(--color-secondary);
		border-left: 0;
	}
	.scorerTable--inner {
		width: calc((100% - 40px) / 2);
		margin: 0 10px;
		padding: 12px 5px 0 5px;
	}
	.scorerTable--name {
		font-size: var(--font-size-df);
	}
	.scorerTable--title {
		font-size: var(--font-size-xxs);
	}
}

/*
* COUPON CARD DESIGN
******************************************************/
.coupon-info__card--bg {
	border-radius: 16px;
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.15);
	max-width: 340px;
}
.coupon-info__card {
	background: var(--color-default);
	border-radius: 16px;
	padding: 16px;
    display: flex;
	max-width: 340px;
    margin: auto;
}
.coupon-info__card--thumb {
	width: 30%;
}
.coupon-info__card--desc {
	width:70%;
	padding: 0 0 0 20px;
}
.coupon-info__card--heading {
	font-size: 17px;
	font-weight:var(--font-bold);
	color: var(--color-primary);
}
.coupon-info__card--coupon {
	color: #999;
	font-family: 'Oswald';
	line-height: 1;
	font-size: 15px;
}
.coupon-info__card--text {
	font-size: 11px;
	color: var(--color-primary);
	margin: 1em 0 0 0;
	line-height: 1.5;
}
@media print, screen and (min-width: 1140px) {
	.coupon-info__card {
		padding: 16px;
	}
	.coupon-info__card--desc {
		padding: 0 0 0 20px;
	}
}
/*
* COUPON GUIDE INCLUDE
******************************************************/
.couponGuide {
	background: #fafafa;
	border-radius: 16px;
}
.couponGuide__content {
	padding: 50px 16px 100px 16px;
}
.couponGuide__lists__wrapper {
	margin: 60px 0 0 0;
}
.couponGuide__lists {
    max-width: 340px;
    margin: auto;
}
.couponGuide__list {
	margin: 0 0 20px 0;
}
.couponGuide__banner--list {
	text-align: center;
}
.couponGuide__heading {
	margin: auto;
	padding: 0 0 40px 0;
    font-size: 17px;
    max-width: 220px;
	text-align:center;
}
.couponGuide__notes--wrapper {
	margin: 40px 0 0 0;
}
.couponGuide__notes {
	font-size: var(--font-size-sm);
	font-weight:var(--font-bold);
	text-align: center;
	padding: 0 10px;
	color:#4b4b4b;
}
.couponGuide__notes span {
	display: block;
}
.couponGuide__button {
    padding: 30px 0 0 0;
    text-align: center;
    margin: auto;
    max-width: 180px;
}
.couponGuide__button .r-button {
	padding: 15px 0 0 0;
}
.couponGuide__notice {
	padding: 20px 0;
}
.couponGuide__notice--text {
	color: #be3030;
	font-size: 11px;
}

@media print, screen and (min-width: 1140px) {
	.couponGuide__content {
		padding: 80px 0;
	}
	.couponGuide__heading {
		padding: 0 0 20px 0;
		font-size: 22px;
		max-width: inherit;
	}
	.couponGuide__notes {
		font-size: 17px;
		padding: 0;
	}
	.couponGuide__notes span {
		display: inline-block;
	}
	.couponGuide__lists__wrapper {
		margin: 20px 0 0 0;
	}
	.couponGuide__lists {
		display: flex;
		justify-content: start;
		flex-wrap: wrap;
		margin: 10px 0 40px 8px;
        max-width: inherit;
	}
	.couponGuide__list {
		width: calc((100% - 20px) / 3);
		max-width: 310px;
		margin: 10px 10px 24px 10px;
	}
	.couponGuide__banner--list {
		display: flex;
		justify-content: center;
		padding: 0;
	}
	.couponGuide__button {
		padding: 50px 0 70px 0;
		max-width: 270px;
	}
	.couponGuide__button .r-button {
		padding: 30px 0 0 0;
	}
	.couponGuide__notice {
		text-align: center;
		margin: auto;
		max-width: 650px;
	}
	.couponGuide__notice--text {
		font-size: 12px;
	}
}

/*
* NEWS LIST
******************************************************/
.News__lists {
    margin: 0 20px;
}
.News__list {
    border-bottom:var(--border-line-dot);
    padding: 10px 0 14px 0;
}
.News__list:last-child {
	border-bottom:none;
}
.News__list a {
    display: block;
    color: var(--color-primary);
}
.News__list--inner {
    display: grid;
    grid-template-columns: 90px 1fr;
    position: relative;
}
.News__list--inner::after {
    content: url(../images/news/ico-arrow.png);
    position: absolute;
    top: 50%;
    right: -10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.News__list--inner.nolink::after {
    content: "";
}
.News__list--thumb {
    min-width: 80px;
    margin: 0 10px 0 0;
}
.News__list--info {
	overflow: hidden;
}
.News__list--catch {
    font-size: 14px;
    font-weight:var(--font-bold);
    line-height: 1;
	padding: .55em 0 0 0;
}
.News__list--date {
    font-size: var(--font-size-xs);
    color: var(--color-text-lightgray);
	line-height: 1.5;
    display: block;
}
.News__list--heading {
    font-size: var(--font-size-df);
    font-weight: var(--font-bold);
    padding: .2em 0 0 0;
	overflow: hidden;
    /* white-space: nowrap;
    text-overflow: ellipsis; */
}
.News__list--icon {
    color: var(--color-default);
    font-size: var(--font-size-xs);
	font-weight: var(--font-bold);
    width: 120px;
    padding: 0 0 0 5px;
}
.as_event {
	background:var(--color-secondary);
}
.as_collaboration {
	background:var(--color-theme-blue);
}
.as_collaboration-2 {
	background:var(--color-primary);
}
.as_challenge {
	background:var(--color-icon-beige);
}
@media print, screen and (min-width: 1140px) {
    .News__lists {
        margin: 0 auto;
    }
    .News__list {
        padding: 16px 32px 16px 0;
    }
    .News__list--inner {
        display: grid;
        grid-template-columns: 140px 1fr;
    }
	.News__list--inner::after {
		content: url(../images/news/ico-arrow-l.jpg);
        right: -2em;
	}
    .News__list--thumb {
        min-width: 120px;
		max-width: 120px;
    }
	.News__list--info {
		margin: 16px 16px 0 0;
	}
	.News__list--info.as_icon {
		margin: 6px 16px 0 0;
	}
	.News__list--info--inner {
        display: flex;
        align-items: center;
	}
	.News__list--icon {
		margin: 0 0 8px 0;
	}
    .News__list--catch {
        font-size:var(--font-size-lm);
		padding: 0;
    }
    .News__list--date {
        font-size:var(--font-size-ml);
    }
	.News__list--info--inner .News__list--date {
		margin: 0 0 0 1em;
	}
    .News__list--heading {
		font-size: var(--font-size-lm);
        padding: .55em 2em 0 0;
    }
}

/*
* PAGENATION
******************************************************/
.pagenation__wrapper {
    margin: 40px 0;
}
.pagenation__lists {
    display: flex;
    align-items: center;
    justify-content: space-around;
    max-width: 375px;
    margin: auto;
}
.pagenation__list {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    margin: 0 2px;
}
.pagenation__list a {
    color: #666;
}
.page-number {
    font-family: 'Oswald';
    font-size: 17px;
    border: 1px solid #565656;
    border-radius: 50%;
    width: 17px;
    padding: 17px;
    height: 17px;
    margin: 3px;
}
.current {
    background: var(--color-theme-blue);
}
.current a {
    color: var(--color-default);
}
@media print, screen and (min-width: 1140px) {
    .pagenation__wrapper {
        margin: 100px 0;
    }
    .pagenation__lists {
        max-width: 600px;
    }
    .pagenation__list {
        font-size:20px;
        margin: 0 4px;
    }
    .page-number {
        font-size: 30px;
        width: 30px;
        padding: 30px;
        height: 30px;
        margin: 5px;
    }
}

/*
* BUTTON
******************************************************/
.ge-button {
    width: 230px;
    height: 40px;
    line-height: 40px;
    font-size: var(--font-size-df);
    font-weight:var(--font-bold);
    text-align: center;
}
.ge-button a {
    display: block;
    border: 1px solid transparent;
    border-radius: 30px;
}
.w-button a {
    border: 1px solid var(--color-text-gray);
    background: var(--color-text-gray);
    color: var(--color-default);
}
.r-button a {
    background: var(--color-secondary);
    color: var(--color-default);
}
@media print, screen and (min-width: 1140px) {
    .ge-button {
        width: 340px;
        height: 60px;
        line-height: 60px;
        font-size: var(--font-size-ls);
    }
}

/*
* FORM PARTS
******************************************************/
.ge-form-parts--heading {
	font-size: var(--font-size-sm);
	font-weight: normal;
	color:var(--color-text-gray);
	padding: 0 0 8px 24px;
	position: relative;
}
.ge-form-parts--heading.as_title {
	font-size: var(--font-size-df);
    color: var(--color-primary);
    padding: 0 3px 12px 36px;
}
.ge-form-parts--heading::before {
	content: url(../images/common/ico-arrow-s.png);
	position: absolute;
	left: 8px;
}
.ge-form-parts select {
    border:var(--border-form-select);
    width: 100%;
    border-radius: 5px;
    font-size: var(--font-size-sm);
    font-weight: var(--font-bold);
    color:var(--color-text-gray);
    padding: 6px 1em;
    background-color: var(--color-default);
    background-image: url(../images/common/ico-arrow-m.png);
    background-size: 16px;
    background-position-y: 50%;
    background-position-x: 96%;
    margin: 0 0 14px 0;
}
.submit-button {
	width: 230px;
	height: 36px;
	line-height: 36px;
	margin: auto;
}
.submit-button-l {
	width: 240px;
	height: 40px;
	line-height: 40px;
}
.submit-button a {
	font-size: var(--font-size-df);
	font-weight:var(--font-bold);
}
.submit-button-l a {
	font-size: var(--font-size-md);
	font-weight:var(--font-bold);
}
.nth-button {
    margin: 22px 0 0 0;
}
/* INPUT */
.ge-input {
	width:100%;
	padding: 12px 18px;
	border: 2px #e1e1e1 solid;
	border-radius: 5px;
    font-size: var(--font-size-df);
}
::placeholder {
    color: var(--color-text-gray);
}
/* 旧Edge対応 */
::-ms-input-placeholder {
    color:var(--color-text-gray);
}
/* IE対応 */
:-ms-input-placeholder {
    color:var(--color-text-gray);
}
@media print, screen and (min-width: 1140px) {
	.ge-form-parts--heading.as_title {
		font-size: var(--font-size-df);
		font-weight: var(--font-bold);
		color: var(--color-default);
		padding: 0 0 3px 24px;
	}
	.ge-form-parts--heading.as_title::before {
		content: url(../images/common/ico-arrow-sw.png);
		position: absolute;
		left: 8px;
	}
	.ge-form-parts select {
		margin: 0 0 20px 0;
	}
	.ge-form-parts.as_title select {
		padding: 2px 1em;
	}
    .ge-input {
        padding: 16px 24px;
    }
	.nth-button {
		margin: 0 0 0 70px;
	}
}

/*
* SCROLL TOP
******************************************************/
.footer-scroll-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 66px;
	margin: auto;
	padding: 0 0 0 12px;
	background: var(--color-text-gray);
	height: 60px;
	z-index:22;
}
.footer-scroll-top svg {
	width: 40px;
	margin: 4px 0 0 0;
}
@media print, screen and (min-width: 1080px) {
	.footer-scroll-top {
		bottom: 60px;
		right: 60px;
	}
}

/*
* FOOTER 
******************************************************/
.globalFooter {
    width: 100%;
    margin: auto;
	background:var(--color-theme-blue);
}
.globalFooter__content {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.globalFooter__heading {
	background: var(--color-default);
}
.globalFooter__heading h2 {
	color: var(--color-theme-blue);
	font-size: var(--font-size-lm);
	font-weight:var(--font-bold);
	text-align: center;
	margin: 0 0 0 3em;
}
.globalFooter__heading h2 span {
    color: var(--color-theme-red);
    font-size: var(--font-size-sl);
    font-weight: var(--font-bold);
    vertical-align: middle;
    margin: 0 0 0 .55em;
}
.globalFooter__content--inner {
    width: 100%;
}
.globalFooter__content--left {
    padding: 0 0 20px 0;
}
.globalFooter__content--right {
}
.globalFooter__content--SNS {
    padding: 25px 20px 90px 20px;
}
.globalFooter__content--SNS--inner {
    display: flex;
    align-items: center; 
    justify-content: center;
}
.globalFooter__content--left-inner {
    width: 100%;
    margin: auto;
    padding:0 20px 0 20px;
}
.globalFooter__nav {
	background: var(--color-primary);
}
.globalFooter__nav--content {
	max-width: var(--content-size);
	margin: auto;
}
.globalFooter--icon {
    padding:40px 0 30px 0;
}
.globalFooter--icon ul {
    display: flex;
    justify-content: center;
}
.globalFooter--icon li {
    margin: 0 20px 0 0;
    width: 45px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color-default);
    border-radius: 50%;
	transition:var(--transition-base);
}
.globalFooter--icon li:hover {
    background:var(--color-secondary);
}
.ico-sp {
    display: block;
}
.ico-pc {
    display: none;
}
.globalFooter--navi ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
	gap:10px;
}
.arrow {
	position: relative;
	padding: 0 0 0 10px;
}
.arrow::before {
    content: '';
    width: 10px;
    height: 10px;
    border-top: solid 2px var(--color-text-gray);
    border-right: solid 2px var(--color-text-gray);
    position: absolute;
    left: 0px;
    top: 6px;
}
.arrow.arrow-right::before {
	transform: rotate(45deg);
}
.globalFooter--navi li,
.globalFooter--navi li a {
    font-size: var(--font-size-df);
    color: var(--color-text-footer);
    font-weight:var(--font-bold);
	margin: 0 0 0 .5em;
}
.globalFooter--navi--bottom {
	padding: 16px 0;
}
.globalFooter--navi--bottom ul {
	display: flex;
	align-items: flex-start;
}
.globalFooter--navi--bottom li,
.globalFooter--navi--bottom li a {
	font-size: var(--font-size-xs);
    color: var(--color-text-footer);
    font-weight:var(--font-bold);
	margin: 0 6px 0 0;
}
.globalFooter--navi--bottom li a[target="_blank"]:after {
    display: inline-block;
	vertical-align: middle;
    content: url(../images/common/ico-arrow-external-link-sp.png);
    padding: 0 0 0 6px
}
.globalFooter--copyright {
    font-size: var(--font-size-xs);
    color: var(--color-text-footer);
    text-align: center;
	padding: 0 0 16px 0;
}
.globalFooter__bottom {
    background: var(--color-theme-blue);
    width: 100%;
    margin: auto;
    height: 70px;
    display: flex;
    align-items: center; 
    justify-content: center;
}
.globalFooter__bottom--logo {
    max-width: 115px;
}
@media print, screen and (min-width: 1140px) {
    .globalFooter__content {
        display: flex;
        flex-direction: row-reverse;
		max-width: var(--content-size);
        margin: auto;
    }
	.globalFooter__heading h2 {
		font-size: var(--font-size-heading-footer);
		text-align: center;
		margin: 0;
	}
	.globalFooter__heading h2 span {
		font-size: var(--font-size-lm);
		margin: 0 0 0 .55em;
	}
    .globalFooter__content--inner {
        width: 50%;
		padding: 40px 0;
    }
    .globalFooter__content--left-inner {
        max-width: 620px;
        padding:0;
    }
    .globalFooter__content--SNS {
        max-width: 606px;
        margin: auto;
        padding: 0;
    }
	.globalFooter__content--SNS--inner {
		align-items: flex-start;
		justify-content: space-between;
	}
    .globalFooter__content--copyright {
        text-align: left;
        font-size: var(--font-size-md);
    }
	.globalFooter--icon li {
        margin: 0 35px 0 0;
        width: 71px;
        height: 71px;
    }
    .ico-sp {
        display: none;
    }
    .ico-pc {
        display: block;
    }
    .globalFooter--navi ul {
		grid-template-columns: 1fr 1fr 1fr;
		gap: 16px;
    }
    .globalFooter--navi li,
    .globalFooter--navi li a {
        font-size: var(--font-size-ls);
        color:var(--color-text-footer);
        font-weight:var(--font-bold);
		margin: 0 0 0 1em;
    }
	.arrow::before {
		width: 14px;
		height: 14px;
		top: 8px;
	}
	.globalFooter--navi--bottom {
		padding: 32px 0;
	}
	.globalFooter--navi--bottom li,
	.globalFooter--navi--bottom li a {
		font-size: var(--font-size-df);
		margin: 0 4em 0 0;
	}
	.globalFooter--navi--bottom li a[target="_blank"]:after {
		content: url(../images/common/ico-arrow-external-link.png);
		padding: 0 0 0 6px
	}
	.globalFooter--copyright {
		font-size: var(--font-size-df);
	}
    .globalFooter__bottom {
        height: 140px;
    }
    .globalFooter__bottom--logo {
        max-width: inherit;
    }
}

.mask-opacity {
	opacity: .3;
}