@charset "utf-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

ul,
ol {
    list-style: none;
}

html {
    font-size: 16px;
    /* font-feature-settings: "palt"; */
}

body {
    line-height: 1.4;
    font-family: serif;
    background: #fff;
    overflow-x: hidden;
    color: #000;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    min-height: 100vh;
    position: relative;
}


@media screen and (min-width: 769px) {
    body {
        /* min-width: 1000px; */
    }
}

@media screen and (max-width: 1200px) {
    html {
        font-size: 14px;
    }
}

@media screen and (max-width: 768px) {
    html {
        font-size: 16px;
        font-size: 2vw;
    }

    body {
        min-width: 0;
    }
}

@media screen and (max-width: 500px) {
    html {
        font-size: 12px;
        font-size: 13px;
    }
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block;
}

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    background: transparent;
    text-decoration: none;
    color: #fff;
}
a.link {
    color: #f59b00;
    text-decoration: underline;
    word-break: break-all;
}
a:focus {
    outline: none
}

a:hover img {
    /* opacity: .85 */
}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select,
textarea {
    vertical-align: middle;
    -webkit-appearance: none;
    padding: 0;
    /* border: 1px solid #006934; */
    background-color: #fff;
    /* height: 1.25em; */
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
    outline: none;
    border: none;
    border-radius: 2px;
    font-family: 'Noto Sans JP';
}

select {
    /* background: #fff url(/images/common/select_icon.svg) no-repeat center right 0.5em; */
    background-size: auto 0.5em;
    padding-right: 2em!important;
}

input:focus,
select:focus {box-shadow: 0 0 2px 0px #c4ac6d;}
::placeholder,
option:disabled {
    color: #cacaca;
}
* {
    box-sizing: border-box;
}
sup {
    vertical-align: super;
    font-size: 70%;
}
img {
    max-width: 100%;
    vertical-align: bottom;
    transition: .25s opacity;
    height: auto;
}

.clearfix {
    zoom: 1;
}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

a:hover img {
    /* opacity: .8; */
}

/* STYLE */
/* 共通 */
body {
	background: #000;
	color: #fff;
	position: relative;
}
#header {
    position: fixed;
    top: 0;
    left: 0;
    height: 9rem;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    transition: .5s;
    z-index: 100
}
#header.fixed {
    background: rgba(0,0,0,0.4);
    /* height: 6rem */
}
#header .headInner {
    width: 90%;
    max-width: 1100px;
    margin: auto;
}
#mypageLink {
    width: 5rem;
    margin-left: auto;
    line-height: 1;
}

.inner {
    width: 95%;
    max-width: 1080px;
    margin: auto;
    padding: 2.75rem 0 2.75rem;
    padding: 0 0 2.75rem;
}

/* フッター */
#footer {
    padding: 2rem 0;
    background: #000;
    position: relative;
}
#footer .footInner {
    max-width: 1080px;
    margin: auto;
}
#footer .snsLinks {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 2rem;
}
#footer .snsLinks li {
    margin: 0 .75rem 1rem;
}
#footer .footerLinks {
    display: flex;
    justify-content: center;
    /* margin-top: 2rem; */
    font-size: 0.875rem;
    font-weight: 400;
    flex-wrap: wrap;
}
#footer .footerLinks li {
    padding: 0 1.5rem;
    margin-bottom: 0.5rem;
}
#footer .footerLinks li:not(:last-child) {
    border-right: 1px solid;
}
#footer .footerLinks li a:hover {
    text-decoration: underline;
}
#footer #copy {
    margin-top: 0.5rem;
    font-size: 0.875rem;
    text-align: center;
    font-weight: 400;
}
@media screen and (max-width: 960px) {
    #header {
        height: 6.5rem;
    }
    #mypageLink {
        width: 4rem;
    }
    #footer .snsLinks li {
        margin: 0 .5rem 1rem;
    }
}

.btnWrap .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #29aae1;
    /* background: #3DAC6A; */
    color: #000;
    position: relative;
    padding: 0.5rem 3.2rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.2;
    transition: .2s opacity;
}
.btnWrap .btn.comingsoon {
    pointer-events: none;
    background: #ddd;
}
.btnWrap .btn.comingsoon > span {
    font-size: 80%;
    color: #666
}
.btnWrap .btn.color1 {
    background: #000;
    color: #f59b00;
}
.btnWrap .btn.color2 {
    background: #f59b00;
    color: #000;
}


.btnWrap .btn.color1 .arrow .d {stroke:#000;}
.btnWrap .btn.color1 .arrow .e {fill:#f59b00;}
.btnWrap .btn.color2 .arrow .d {stroke:#f59b00;}
.btnWrap .btn.color2 .arrow .e {fill:#000;}
.btnWrap .btn:hover {
    opacity: 0.65;
}
.btnWrap .btn .arrow {
    position: absolute;
    right: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 1.5rem;
}

.btnWrap .btn .arrow .d{
    fill:none;
    stroke: #29aae1;
    stroke: #3DAC6A;
    stroke-linejoin:round;
    stroke-width:4px;
}
.btnWrap .btn .arrow .e {
    fill: #000;
}
.btnWrap .btn.comingsoon .d{
    fill:none;
    stroke: #ccc;
    stroke-linejoin:round;
    stroke-width:4px;
}
.btnWrap .btn.comingsoon .e {
    fill: #efefef;
}

/* フッター上、その他のサービス */
#otherService {
    max-width: 1200px;
    margin: 0 auto;
    border: 1px solid #fff;
    border-width: 1px 0;
    padding: 5rem 3%;
}
#otherService.borderTopNone {
    border-top: none
}
#otherService.borderNone {
    border: none
}
#otherService .logo {
        width: 6.25rem;
        margin: 0 auto 2rem;
}

#otherService .ttlBlock {
    text-align: center;
    margin-bottom: 3.5rem;
}
#otherService .ttlBlock .ttl .text {
    color: #fff;
}
.linkBtns {
    display: flex;
    margin-bottom: 3rem;
    flex-wrap: wrap;
    justify-content: center;
}
.linkBtns li {
    width: calc(100% / 3);
    padding: 1rem 0.5rem;
    min-width: 20rem;
}
.linkBtns li a {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #fff;
    border-radius: 1000px;
    font-size: 1.375rem;
    height: 3.125rem;
    position: relative;
    padding: 0.25rem 2.5rem;
    transition: 0.3s;
    transition-property: background,color,border-color;
}
.linkBtns li a:hover {
    border-color: #000;
    background: #fff;
    color: #000;
}
.linkBtns li a .icon {
    position: absolute;
    right: 0.5rem;
    top: 50%;
    width: 1.625rem;
    height: 1.625rem;
    margin-top: -0.8125rem;
}

.linkBtns li a .icon .e {
    fill: #fff;
    transition: 0.3s;
    transition-property: fill;
}
.linkBtns li a .icon .d {
    fill:none;
    stroke: #000;
    stroke-linejoin:round;
    stroke-width: 3px;
    transition: 0.3s;
    transition-property: stroke;
}
.linkBtns li a:hover .icon .e {
    fill: #000;
}
.linkBtns li a:hover .icon .d {
    stroke: #fff;
}
.linkList {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: -2rem;
}
.linkList li {
    padding: 0 2rem 2rem;
    font-size: 1.375rem;
    font-weight: bold;
}
.linkList li a {
    padding: 0 0.5rem 1rem;
    border-bottom: 1px solid;
    display: flex;
    justify-content: center;
    height: 100%;
    align-items: center;
}

/* 入会ボタン[大] */
.largeBtnWrap {
    padding: 5rem 2rem;
}
.largeBtn {
    max-width: 1080px;
    margin: auto;
}
.largeBtn .btn {
    min-height: 9.25rem;
    border-radius: 1.25rem;
    padding: 1.75rem 6.5rem;
}
.largeBtn .btn .s {
    font-size: 137.5%;
    display: block;
}
.largeBtn .btn .l {
    font-size: 300%;
    display: block;
}
.largeBtn .btn.comingsoon .l {
    font-size: 180%;
}
.largeBtn .btn .arrow {
    width: 3.6375em;
    right: 2rem
}
@media screen and (max-width: 768px) {
    .linkList li {
        font-size: 120%;
        padding: 0 1.2rem 2rem;
    }
}
@media screen and (max-width: 640px) {
    .largeBtn .btn .arrow {
        /* width: 2.75em; */
        right: 1rem;
    }
    .largeBtn .btn {
        padding: 1.75rem 3.8rem;
        min-height: 4.5rem;
        font-size: 0.6rem;
    }
}

@media screen and (max-width: 480px) {
    #otherService .ttlBlock {
        margin-bottom: 1.75rem;
    }
    .linkBtns {
        margin-bottom: 2rem;
    }
    .linkBtns li {
        padding: 0.75rem 0.5rem 0.25rem;
    }
    .linkList li {
        width: 50%;
        text-align: center;
        padding: 0 0.75rem 2rem;
        font-size: 120%;
    }
    
}
/* アイコン付きテキストリンク */
.iconLink {
    text-decoration: underline
}
.iconLink .arrow {
    width: 1.375em;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    margin-left: 0.5em;
}
.iconLink .arrow .d{
    fill:none;
    stroke: #000;
    stroke-linejoin:round;
    stroke-width: 2px;
}
.iconLink .arrow .e {
    fill: #f59b00;
}
.iconLink.color2 .arrow .e {
    fill: #8cc832;
}

#wrap {
    position: relative;
    /* padding-top: 5rem; */
    background: rgba(0,0,0,0.75);
}
#contHeadWrap {
    /* display: flex; */
    /* justify-content: space-between; */
    /* padding: 0 2rem; */
    /* position: absolute; */
}

/* メニューボタン */
#menuBtn {
    position: sticky;
    /* position: fixed; */
    top: calc(72px + 1rem);
    z-index: 10;
    padding-right: 2rem;
    margin-left: auto;
    /* margin-bottom: -5rem; */
    /* top: 0; */
    z-index: 9900;
    left: 0;
    pointer-events: none;
}
#menuBtn > a {
    position: relative;
    z-index: 9999;
    width: 5rem;
    height: 5rem;
    display: block;
    margin-left: auto;
    pointer-events: all;
}
#menuBtn .d{fill:#f59b00;}
#menuBtn .e,.f{stroke:#f59b00;stroke-miterlimit:10;}
#menuBtn .f{fill:none;}
#menuBtn a:hover {
    
}
#menuBtn a:hover .d{fill:#000;}
#menuBtn a:hover .f{stroke:#000;}
#menuBtn a:hover .e{fill:#f59b00;}

#fcMenu {
    position: absolute;
    padding: 0 3% 3rem;
    z-index: 1000;
    width: 100%;
    /* height: 100%; */
    left: 0;
    top: 0rem;
    background: #000;
    /* margin-top: -6rem; */
    display: none;
    transform: translateY(-1rem);
    pointer-events: all;
}
#fcMenu .fcMenuInner {
    max-width: 1366px;
    padding-top: 6rem;
    display: flex;
    justify-content: space-between;
    margin: auto;
}
#fcMenu .fcMenuInner .fcMenuList {
    width: calc((100% - 3rem)/4);
    width: 23%;
    font-size: 1.25rem;
    font-weight: bold;
    /* padding: 0 0.5rem; */
}
#fcMenu .fcMenuInner .fcMenuList > li {
    border-bottom: 1px solid rgba(255,255,255,0.5);
}
#fcMenu .fcMenuInner .fcMenuList > li ul {
    padding-left: 0.5rem;
}
#fcMenu .fcMenuInner .fcMenuList a {
    display: flex;
    justify-content: space-between;
    display: block;
    padding: 0.75rem 0.25rem;
    padding-right: 1rem;
    transition: .25s opacity;
    position: relative;
}
#fcMenu .fcMenuInner .fcMenuList a:hover {
    opacity: 0.75
}
#fcMenu .fcMenuInner .fcMenuList a .arrow {
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(/sp/FC/images/common/menu_arrow.svg) no-repeat center;
    background-size: contain;
}

#fcMenu .fcMenuInner .fcMenuList .grandSlam a { color: #ccc}
#fcMenu .fcMenuInner .fcMenuList .gold a { color: #c8a977}
#fcMenu .fcMenuInner .fcMenuList .silver a { color: #5f8d98}
#fcMenu .fcMenuInner .fcMenuList .kids a { color: #69c90d}
#fcMenu .fcMenuInner .fcMenuList .bronze a { color: #cf4421}

#logo {
    width: 9.375rem;
    width: 6.125rem;
    /* margin-right: 1rem; */
    /* margin: 0 auto 0rem; */
    position: absolute;
    left: 2rem;
    top: 0.5rem;
    z-index: 1;
    height: 5rem;
    display: flex;
    align-items: center;
    /* width: 5rem; */
}

@media screen and (max-width: 768px) {
    #top #menuBtn {
        margin-top: 0;
        padding-top: 1rem;
    }
    #menuBtn {
        top: 1rem;
        margin-top: 1rem;
        /* margin-bottom: -5rem; */
        padding-right: 1.5rem;
        position: absolute;
        position: sticky;
    }
    #fcMenu {
        padding: 0 0% 3rem;
        height: 100vh;
        width: 100vw;
    }
    #fcMenu .fcMenuInner {
        /* flex-direction: column; */
        /* flex-wrap: wrap; */
        height: 100%;
        overflow-y: auto;
        /* align-items: flex-start; */
        /* justify-content: flex-start; */
        padding: 7rem 5% 1rem;
        width: 100vw;
        display: block;
    }
    /* #fcMenu .fcMenuInner .fcMenuList:nth-child(1) {order: 1}
    #fcMenu .fcMenuInner .fcMenuList:nth-child(2) {order: 3}
    #fcMenu .fcMenuInner .fcMenuList:nth-child(3) {order: 2}
    #fcMenu .fcMenuInner .fcMenuList:nth-child(4) {order: 4} */
    #fcMenu .fcMenuInner .fcMenuList:nth-child(1) > li,
    #fcMenu .fcMenuInner .fcMenuList:nth-child(2) > li {
        width: 100%;
    }
    #fcMenu .fcMenuInner .fcMenuList:nth-child(3) {}
    #fcMenu .fcMenuInner .fcMenuList:nth-child(4) {}
    #fcMenu .fcMenuInner .fcMenuList {
        width: 49%;
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between
    }
    #fcMenu .fcMenuInner .fcMenuList > li {
        width: 48%
    }
    #menuBtn.fixed {
        /* position: fixed; */
    }
    #wrap {
        /* padding-top: 1rem; */
    }
}


/* TOPページ */
#topBgImgs {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    z-index: -1;
}
#topBgImgs p.img {
    /* position: relative; */
    width: 100%;
    height: 100%;
    background: url(/sp/FC/images/main_bg.jpg) no-repeat center;
    background-size: cover;
}
#topWrap {
    /* background: rgba(0,0,0,0.75); */
    position: relative;
}
#topMain {
    /* background: url(/sp/FC/images/main_bg.jpg)  no-repeat center; */
    /* background-size: cover; */
    /* padding: 2rem 0 3rem; */
    position: relative;
    /* padding-top: 5rem; */
}
#topMain:after {
    /* content: ""; */
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.75);
    left: 0;
    top: 0;
}
#topMain .inner {
    position: relative;
    z-index: 1
}
#mainTtl {
    display: flex;
    color: #fff;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    text-align: center;
}
#mainTtl .ttlWrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    /* margin-bottom: 3rem; */
}
#mainTtl .ttlLeadText {
    font-size: 137.5%;
}
#mainTtl h1 {
    font-size: 3rem;
}
#mainTtl .lead {
    font-size: 1.375rem;
    border-top: 1px solid;
    padding-top: 0.75rem;
    margin-top: 0.75rem;
    /* text-align: left; */
    line-height: 1.6;
}
#mainTtl .lead + .lead {
    border: none;
    margin-top: 0
}
#topBenefits ul {
    /* display: flex; */
    /* justify-content: space-between; */
    /* align-items: flex-start; */
    margin-bottom: 3rem;
    /* flex-wrap: wrap; */
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-column-gap: 4%;
}
#topBenefits ul li {
    /* width: 30%; */
    text-align: center;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}
#topBenefits ul li .numWrap {
    display: flex;
    /* flex-direction: column; */
    align-items: center;
    text-align: center;
    color: #000;
    font-weight: bold;
    font-size: 1.375rem;
    justify-content: center;
    background: #f59b00;
    border-radius: 100rem;
    height: 2.75em;
    margin-bottom: 0.5em;
}
#topBenefits ul li .numWrap .text {
    /* margin-bottom: 0.25rem; */
    margin-right: 0.5rem;
}
#topBenefits ul li .numWrap .num {
    /* margin-bottom: 1rem; */
    height: 3.875rem;
    height: 2.125rem;
    height: 1.5em;
}
#topBenefits ul li .numWrap .num img {
    width: auto;
    height: 100%
}
#topBenefits ul li .small {
    font-size: 137.5%;
    font-weight: 500;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
#topBenefits ul li .large {
    font-size: 225%;
    font-weight: 700;
    height: 100%;
    display: flex;
    /* align-items: center; */
    justify-content: center;
}
#topMain .recommendArea {
	background: #f59b00;
	background: #fff;
	background: #fff100;
	margin-bottom: 3rem;
	color: #000;
	padding: 1.5rem;
}
#topMain .recommendArea .mainText {
	font-size: 1.75rem;
	text-align: center;
	font-weight: bold;
}
#topMain .recommendArea .mainText span {
	position: relative
}
#topMain .recommendArea .mainText span:after {
	/* content: ""; */
	display: block;
	position: absolute;
	width: 100%;
	height: 0.5rem;
	/* background: #ff0; */
	left: 0;
	opacity: 0.5
}
#topMain .recommendArea .lead {
	margin-top: 0.75rem;
	font-size: 1.125rem;
	text-align: center;
}
#topMain .recommendArea .anno {
	margin-top: 0.75rem;
	font-size: 0.875rem;
	text-align: center;
	padding-left: 1em;
	text-indent: -1em
}
#topMain .planCol {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5rem;
    flex-wrap: wrap;
}
#topMain .planCol .col {
    width: 48%;
    border: 1px solid #f59b00;
    background: rgba(0,0,0,0.3);
    padding: 4.375rem 1.875rem 1.875rem;
    text-align: center;
    overflow: hidden;
    position: relative;
}

#topMain .planCol .col .planTtl {
    background: #f59b00;
    color: #000;
    text-align: center;
    /* margin-bottom: 1rem; */
    position: absolute;
    left: 0;
    top: 0;
    /* transform: translateX(-50%) rotate(-45deg); */
    transform-origin: center top;
    align-content: center;
    font-size: 1.5rem;
    font-weight: bold;
    /* height: 5rem; */
    height: 2.5rem;
    width: 11rem;
    width: 100%;
    display: flex;
    align-items: flex-end;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 900px) {
    #topMain .planCol .col .planTtl {
        /* height: 4rem; */
        /* font-size: 1.25rem; */
    }
}
#topMain .planCol .col .memberTtl {
    margin-bottom: 1rem
}
#topMain .planCol .col .memberTtl .img {
    display: block;
    padding: 0 3%;
}
#topMain .planCol .col .memberTtl .img img {
    /* width: 90%; */
    max-width: 284px
}
#topMain .planCol .col .detailList {
    /* padding-bottom: 3.75rem; */
    /* padding-bottom: 1.5rem; */
    position: relative;
    /* padding-top: 0.5rem; */
}
#topMain .planCol .col .detailList:after {
    /* content: ""; */
    display: block;
    position: absolute;
    width: 1px;
    height: 1.75rem;
    left: 50%;
    bottom: 1rem;
    background: #f59b00
}
#topMain .planCol .col .detailList > div {
    display: flex;
    justify-content: center;
    margin-top: 1.125rem;
    text-align: left;
}
#topMain .planCol .col .detailList dt {
    padding-right: 1rem;
    border-right: 1px solid #fff;
    line-height: 1.2;
    min-width: 3rem;
}
#topMain .planCol .col .detailList dd {
    padding-left: 2rem;
    line-height: 1.2;
    max-width: calc(100% - 4rem);
}
#topMain .planCol .col .btn {
    min-height: 3.75rem;
    border-radius: 100rem;
    font-size: 1.375rem;
}
#topMain .planCol .col .btn .arrow {
    width: 1.55em;
    right: 0.75rem
}

#topMain .privilegeSec {
	margin-bottom: 5rem
}
#topMain .privilegeArea {
    background: #f59b00;
    border-radius: 0.25rem;
    padding: 2rem 2rem 1.25rem;
    color: #000;
    margin-top: 4rem;
}
#topMain .privilegeArea.more {
	margin-top: 0;
	padding-top: 1.25rem;
}
#topMain .privilegeArea + .moreText {
	text-align: center;
	font-size: 2.25rem;
	font-weight: bold;
	padding: 3rem 0 3rem;
}

#topMain .privilegeArea .mainText {
    display: flex;
    font-size: 2.25rem;
    font-weight: bold;
    align-items: baseline;
    margin-top: -3rem;
    justify-content: center;
    margin-bottom: 1rem;
    position: relative;
    flex-wrap: wrap;
    text-align: center;
}
#topMain .privilegeArea.more .mainText {
	margin-top: 0;
	margin-bottom: 0;
}
#topMain .privilegeArea .mainText .l {
    font-size: 150%;
    /* transform: translateY(0.25rem); */
    display: inline-block;
    margin-left: 1rem;
    margin-right: 0.5rem;
}
#topMain .privilegeArea .mainText p.icon {
    width: 6.375rem;
    margin-right: 0.25rem;
}
#topMain .privilegeArea .subText {
    font-size: 1.375rem;
    text-align: center;
}
#topMain .privilegeArea .moreText {
	background: #fff;
	padding: 1rem;
	margin-top: 1.75rem;
	font-size: 1.375rem;
	text-align: center;
}
#topMain .privilegeArea .moreText .largeText {
	font-size: 135%;
	display: block;
	font-weight: bold;
	padding: 0.2rem 0 0;
}
#topMain .privilegeArea .subText span {
    display: inline-block;
    text-align: left;
}
#topLinkWrap #topPanelLinkList {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5rem;
    flex-wrap: wrap;
}
#topLinkWrap #topPanelLinkList li {
    width: 18.5%;
}
#topLinkWrap #topPanelLinkList li a {
    display: flex;
    flex-direction: column;
    background: rgba(0,0,0,0.5);
    border-radius: 5px;
    padding: 1rem 0.5rem;
    height: 100%;
    justify-content: space-between;
    transition: .2s opacity;
}
#topLinkWrap #topPanelLinkList li a:hover {
    opacity: 0.7;
}
#topLinkWrap #topPanelLinkList li a .icon {
    min-height: 8rem;
    display: flex;
    align-items: center;
}
#topLinkWrap #topPanelLinkList li a .icon .iconInner {
    display: block;
    margin: auto;
    width: 50%;
    text-align: center;
}
.iconInner.course img {width: 77.5%;}
.iconInner.merit img {width: 69%;}
.iconInner.ticket img {width: 100%;}
.iconInner.point img {width: 79%;}
.iconInner.event img {width: 82.5%;}
#topLinkWrap #topPanelLinkList li a .panelText {
    text-align: center;
    font-size: 1.375rem;
    margin-top: 0.4rem;
    margin-bottom: 0.5rem;
}
@media screen and (max-width: 1200px) {
    #topLinkWrap #topPanelLinkList li a .panelText {
        font-size: 1.125rem
    }
}
#topLinkWrap #topPanelLinkList li a .arrow {
    width: 2rem;
    /* height: 2.25rem; */
    /* border-radius: 100%; */
    margin: 0.25rem auto 0;
}
#topLinkWrap #topPanelLinkList li a .arrow .d{
    fill:none;
    stroke:#000;
    stroke-linejoin:round;
    stroke-width:4px;
}
#topLinkWrap #topPanelLinkList li a .arrow .e {
    fill:#f59b00;
}
#topLinkList {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5rem
}
#topLinkList li {
    width: 50%;
    text-align: center;
    font-size: 1.375rem;
    line-height: 1
}
#topLinkList li a {
    display: inline-block;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid #fff;
    transition: .2s opacity;
}

.linkList li a:hover {
    opacity: 0.8
}
@media screen and (max-width: 768px) {
    #topMain .inner {
        padding-top: 1rem;
        width: 97.5%;
    }
    #mainTtl {
        flex-direction: column;
        margin-bottom: 1rem;
    }
    #mainTtl .logo {
    }
    #topMain .planCol {
        /* display: flex; */
        /* flex-direction: column; */
    }
    #topMain .planCol .col {
        padding: 3.75rem 0.5rem 1.5rem;
    }
    #topMain .planCol .memberTtl {
    margin-bottom: 0.75em;
    }
    #topMain .planCol .col .planTtl {
        /* font-size: 1.125rem; */
        /* padding: 1.8rem 3.5rem 0.5rem; */
    }
    #topMain .planCol .col .detailList > div {
        justify-content: flex-start;
        align-items: center
    }
    #topMain .planCol .col .detailList dt {
        width: 5rem;
        text-align: center;
    }
    #topMain .planCol .col .detailList dd {
        width: calc(100% - 5rem);
        padding-left: 1.5rem
    }
    #topBenefits ul {
        grid-column-gap: 0.5em;
        margin-bottom: 1.7rem;
    }
    #topBenefits ul li {
        /* width: 48%; */
        /* width: 32%; */
    }
    #topBenefits ul li  {
         /* font-size: 10px; */
         /* margin-top: auto; */
         /* font-size: 0.75rem; */
         /* display: grid; */
         /* grid-template-rows: subgrid;
         grid-row: span 2;
         height: 100%; */
    }
    #topBenefits ul li .small {
        font-size: 100%;
    }
    #topBenefits ul li .large {
        font-size: 150%;
    }
    #topLinkWrap #topPanelLinkList {
        justify-content: space-around
    }
    #topLinkWrap #topPanelLinkList li {
        width: 31.5%;
        margin-bottom: 1rem;
    }
}

@media screen and (max-width: 640px) {
    #topMain .planCol .col {
        /* width: 100%; */
        /* margin-bottom: 3rem; */
        padding: 3.75rem 0.25rem 1.5rem;
    }
}
@media screen and (max-width: 500px) {
    #mainTtl h1 {
        font-size: 1.8rem;
    }
    #mainTtl .lead {
        font-size: 1rem;
    }
    #topMain .planCol .col .detailList > div {
        /* flex-direction: column; */
        /* margin-top: 1.5rem; */
    }
    #topMain .planCol .col .detailList dt {
        padding-right: 0;
        /* padding-bottom: 0.75em; */
        /* margin-bottom: 0.75em; */
        /* border-right: none; */
        position: relative;
        width: 3.5em;
    }
    #topMain .planCol .col .detailList dt:after {
        content: "";
        display: block;
        width: 1.5em;
        height: 1px;
        /* background: #fff; */
        top: 100%;
        left: 50%;
        margin-left: -0.75em;
        position: absolute;
    }
    #topMain .planCol .col .detailList dd {
        padding-left: 0;
        /* width: 100%; */
        text-align: center;
        max-width: 100%;
        padding-left: 0.25em;
        width: calc(100% - 3.5em);
    }
    #topBenefits ul li .numWrap {
        font-size: 135%;
        margin-bottom: 1em;
        height: 2.5em;
    }
    #topBenefits ul li {
        font-size: 0.75rem;
    }
    #topMain .planCol .col .btn {
        font-size: 1rem;
        padding: 0.5em 1.75em;
        min-height: 3em;
    }
    #topMain .planCol .col .btn span {
        font-size: 0.8rem;
    }
    #topMain .planCol .col .btn .arrow {
        width: 1.75em;
    }
}
@media screen and (max-width: 480px) {
    #topLinkWrap #topPanelLinkList li {
        /* width: 45%; */
    }
    #topLinkWrap #topPanelLinkList li a {
        padding: 1rem 0.25rem;
    }
    #topLinkWrap #topPanelLinkList li a .icon {
        min-height: 6rem;
    }
    #topLinkWrap #topPanelLinkList li a .icon .iconInner {
        width: 70%;
    }
    #topLinkWrap #topPanelLinkList li a .panelText {
        font-size: 1rem
    }
}

/* 下層用 */
#underMain {
    margin-top: -5rem;
    max-width: 1920px;
    margin: -5rem auto 0;
    /* margin: 0 auto; */
}
#underMain.law,
#underMain.rule,
#underMain.giants_id,
#underMain.faq,
#underMain.point,
#underMain.service {
    margin-top: 0;
}
#underMain.point,
#underMain.faq {
    margin-top: -3rem;
}
#mainVisual {
    position: relative;
    max-width: 1366px;
    margin: -5rem auto 0;
}
#mainVisual .ttlBlock {
    position: absolute;
    /* bottom: 10%; */
    left: 50%;
    left: 0;
    /* transform: translateX(-50%); */
    margin-bottom: 0;
    width: 100%;
    /* top: 67%; */
}
#mainVisual.noImg {
    margin-top: 0;
}
#mainVisual.noImg .ttlBlock {
    padding: 0;
    position: static;
    transform: none;
    margin: 0 auto;
    background: none;
}
@media screen and (max-width: 1366px) {
    #mainVisual .img {
        width: 100%;
        overflow: hidden;
    }
    #mainVisual .img > img {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        width: 1366px;
        max-width: 1366px;
    }
}
@media screen and (max-width: 768px) {
    #underMain {
        margin-top: -6rem;
    }
    #mainVisual {
        margin: 0 auto;
    }
    #mainVisual .ttlBlock {
      /* position: relative; */
      top: auto;
      /* margin-top: -11rem; */
      /* margin-bottom: 3rem; */
      padding: 0px 3%;
    }
}

/* イベントページ */
.eventSecWrap {
    padding: 5rem 0 0.5rem;
}
.eventSecWrap .secInner {
    max-width: 1366px;
    margin: auto;
}
.eventSecWrap .sec {
    /* max-width: 1080px; */
    /* margin: auto; */
    margin-bottom: 5rem;
    position: relative;
    overflow: hidden;
}
#eventWrap1 {
    padding-top: 3rem;
    /* margin-top: -3rem; */
    /* margin-top: -2%; */
}
#eventWrap2 {
    background: #333
}
#eventWrap1 .sec:after,
#eventWrap2 .sec:after {
    /* content: ""; */
    display: block;
    position: absolute;
    top: 0;
    width: 1px;
    height: 100%;
    left: 50%;
    transform: translateX(-540px);
}
@media screen and (max-wdith: 1366px) {
    #eventWrap1 .sec:after,
    #eventWrap2 .sec:after{
        transform: translateX(-40vw)
    }
}
#eventWrap1 .sec .secTtlBlock:after,
#eventWrap2 .sec .secTtlBlock:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 1px;
    height: 1000px;
    left: -1rem;
}
#eventWrap1 .sec .secTtlBlock:after {
    background: #f59b00;
}
#eventWrap2 .sec .secTtlBlock:after {
    background: #8cc832;
}

@media screen and (max-width: 1200px) {
    #eventWrap1 .sec .secTtlBlock:after,
    #eventWrap2 .sec .secTtlBlock:after {
        left: -2%
    }
}
.eventSecWrap .secTtlBlock {
    display: flex;
    /* max-width: 1080px; */
    max-width: 79.0629575%;
    margin: auto;
    padding-bottom: 3rem;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
}
.eventSecWrap .imgWrap {
    padding: 0 23.6456808% 3rem;
}
.eventSecWrap .imgWrap .img {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.eventSecWrap .imgWrap .img .imgItem {
    width: calc(50% - 10px);
}
.eventSecWrap .sliderWrap {
    padding-bottom: 3rem;
    /* margin-bottom: 3rem; */
    position: relative;
    z-index: 10;
    max-width: 1366px;
    /* max-width: 1460px; */
    margin: auto;
    overflow: hidden;
}
.eventSecWrap .sliderWrap .slider:before,
.eventSecWrap .sliderWrap .slider:after {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 200px;
    top: 0;
    z-index: 1000;
    width: 10%;
}
.eventSecWrap .sliderWrap .slider:after {
    right: 0;
    background: rgb(0,0,0);
    background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 40%, rgba(0,0,0,1) 85%);
}
.eventSecWrap .sliderWrap .slider:before {
    left: 0;
    background: rgb(0,0,0);
    background: linear-gradient(90deg, rgba(0,0,0,1) 15%, rgba(0,0,0,0.6) 60%, rgba(0,0,0,0) 100%);
}
#eventWrap2.eventSecWrap .sliderWrap .slider:after {
    background: rgb(51,51,51);
    background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(51,51,51,0.6) 40%, rgba(51,51,51,1) 85%);
}
#eventWrap2.eventSecWrap .sliderWrap .slider:before {
    background: rgb(51,51,51);
    background: linear-gradient(90deg, rgba(51,51,51,1) 15%, rgba(51,51,51,0.6) 60%, rgba(0,0,0,0) 100%);
}
.eventSecWrap .sliderWrap .slideItem {
    padding: 0 10px;
    /* max-width: 370px; */
    line-height: 1;
}
.eventSecWrap .sliderWrap .slideItem .archiveInner {
    border: 1px solid #f59b00;
    position: relative;
    overflow: hidden;
}
.eventSecWrap .sliderWrap .slideItem .archiveInner .archiveLabel {
    position: absolute;
    left: 0;
    top: 0;
    background: #f59b00;
    color: #000;
    transform: translate(-50%,0%) rotate(-45deg);
    display: flex;
    flex-direction: column;
    transform-origin: center top;
    height: 4.25rem;
    width: 8.5rem;
    padding-bottom: 0.25rem;
    align-items: center;
    justify-content: flex-end;
    font-weight: bold;
    font-size: 1rem;
}
.eventSecWrap .sliderWrap .slideItem .archiveInner .archiveLabel .labelText {
    font-size: 87.5%
}
.eventSecWrap .sliderWrap .slideItem .archiveInner .archiveLabel .num {
    font-size: 112.5%
}
.eventSecWrap .sliderWrap .slideItem .archiveInner .text {
    padding: 1rem;
    min-height: 5.5rem;
    line-height: 1.75;
}
.eventSecWrap .secTextBlock {
    /* max-width: 1080px; */
    /* max-width: 79.0629575%; */
    /* padding-left: 10rem; */
    margin: auto;
    padding: 0 0 0 23.6456808%;
}
.eventSecWrap .secTextBlock .ttlLead {
    font-size: 1.375rem;
    font-weight: bold;
    margin-bottom: 1.25rem;
}
.eventSecWrap .secTextBlock .detailText {
    line-height: 1.75;
}
.eventSecWrap .secTextBlock .detailText .text {
    margin-top: 1rem
}
.eventSecWrap .secTextBlock .detailText .ttl {
    color: #f59b00;
}
.eventSecWrap .secTextBlock .detailText dl > div {
    display: flex;
    flex-wrap: wrap;
    font-weight: 400;
}
.eventSecWrap .secTextBlock .detailText dl dt {
    width: 17em;
}

.eventSecWrap .secTextBlock .detailText dl dd {
    padding-left: 1em;
}
.eventSecWrap .secTtlBlock .numWrap {
    width: 8rem;
    width: 13%;
    padding: 0.325rem 0.9375rem 0;
}
.eventSecWrap .secTtlBlock .textWrap {
    width: calc(100% - 8rem);
    width: 86.5%;
    padding-left: 2rem;
}
.eventSecWrap .secTtlBlock .textWrap .ttl {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 2rem;
    line-height: 1.2;
    margin-top: -0.1em;
}
.eventSecWrap .secTtlBlock .textWrap .textArea p {
    margin-bottom: 1.75rem;
    line-height: 1.75;
}
.ttlBlock {
    text-align: center;
    margin-bottom: 5rem;
    /* max-width: 1080px; */
    margin: 0 auto 5rem;
}
.ttlBlock .ttlLogo {
    width: 5.5em;
    margin: 0 auto 1.25rem;
}
.ttlBlock .ttl {
    /* line-height: 1; */
}
.ttlBlock .ttl .text {
    font-size: 2rem;
    font-weight: bold;
    display: block;
    position: relative;
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    line-height: 1.2;
}
.ttlBlock .leadText {
    font-size: 1.375rem;
    font-weight: 500;
    margin-top: 1.5rem;
}
.ttlBlock .leadText .small {
    font-size: 1rem
}
#mainVisual .ttlBlock .ttl .text, #eventWrap3 .ttlBlock .ttl .text {
    color: #f59b00;
}

#eventWrap2 .ttlBlock .ttl .text {
    color: #8cc832;
}
.ttlBlock .ttl .text:after {
    content: "";
    display: block;
    position: absolute;
    width: 1.5rem;
    height: 1px;
    border-bottom: 1px solid;
    left: 50%;
    top: 100%;
    margin-left: -0.75rem
}
.ttlBlock .enTtl {
    height: 0.75rem;
    display: block;
    line-height: 1;
}
.ttlBlock .enTtl img {
    width: auto;
    height: 100%;
    vertical-align: top;
}
@media screen and (max-width: 768px) {
    
    .event #mainVisual .img > img {
        /* width: 770px;
        max-width: 770px; */
    }
    .eventSecWrap .secTtlBlock,
    .eventSecWrap .secTextBlock {
        max-width: 92%;
    }
    .eventSecWrap .secTextBlock {
        padding-left: calc(13.5% + 2rem);
        padding-left: 2rem;
    }
    .eventSecWrap .imgWrap {
        width: 80%;
        padding: 0 10px;
        margin: auto;
    }
    .eventSecWrap .imgWrap .img .imgItem {
        padding: 0 0px;
    }
    .eventSecWrap .sliderWrap .slider:before,
    .eventSecWrap .sliderWrap .slider:after {
         width: 10%   
    }
    
    .ttlBlock .ttlLogo  {
        font-size: 0.5rem;
        margin-bottom: 0.75rem;
    }
}
@media screen and (max-width: 640px) {
    
    .eventSecWrap .secTtlBlock {
        flex-direction: column;
        display: block;
    }
    .eventSecWrap .secTtlBlock .numWrap {
        /* margin: auto; */
        width: 6rem;
        margin-bottom: 1rem;
        float: left;
    }
    .eventSecWrap .secTtlBlock .textWrap {
        width: 100%;
        padding-left: 1rem;
    }
    .eventSecWrap .secTtlBlock .textWrap .ttl {
        min-height: 6.6rem;
        display: flex;
        align-items: center;
        padding-left: 1rem;
        padding-top: 2rem;
        flex-wrap: wrap;
    }
    #eventWrap2 .secTtlBlock .textWrap .ttl {
        min-height: 9rem;
        padding-top: 2.85rem;
    }
    .eventSecWrap .secTtlBlock .textWrap .textArea {
        clear: both;
    }
}
@media screen and (max-width: 500px) {
    .ttlBlock .ttl .text {
        font-size: 1.5rem;
        margin-bottom: 0.75rem;
        padding-bottom: 0.5rem;
    }
    .eventSecWrap .sliderWrap .slideItem .archiveInner .text {
        font-size: 80%;
    }
}
@media screen and (max-width: 420px) {
    .eventSecWrap .imgWrap {
        width: 60%;
    }
    .eventSecWrap .imgWrap .img .imgItem {
        width: 100%;
    }
    .eventSecWrap .secTtlBlock .textWrap .ttl {
        padding-left: 0.5rem;
        font-size: 150%;
    }
}

/* グッズページ */
.goods #mainVisual .ttlBlock {
    /* top: auto; */
    /* bottom: 9%; */
}
@media screen and (max-width: 1366px) {
    .goods #mainVisual .ttlBlock {
        /* bottom: 4.375rem; */
    }
}
.goods .ttlBlock .ttlLogo {
    width: 3.75em
}
.goodsSecWrap {
    padding: 0 5%;
    padding-top: 5rem;
}
.goodsSecWrap .secInner {
    max-width: 1080px;
    margin: auto;
}
.goodsSecWrap .sec {
    padding-bottom: 10.5rem;
}
.goodsSecWrap .sec.end {
    position: relative;
}
.goodsSecWrap .sec.end:after {
    font-size: 1.5rem;
    position: absolute;
    background: rgba(0,0,0,0.7);
    display: flex;
    width: 150%;
    height: 110%;
    align-items: center;
    justify-content: center;
    left: -25%;
    top: -5%;
    font-weight: normal;
    white-space: pre;
}
.goodsSecWrap #goods1.end:after {
    content: "※スクエアリュックの\a選択受付は終了しています。";
}
.goodsSecWrap #goods2.end:after {
    content: "※マルチショルダーバッグの\a選択受付は終了しています。";
}
.goodsSecWrap #goods3.end:after {
    content: "※トートバッグの\a選択受付は終了しています。";
}
.goodsSecWrap #goods4.end:after {
    content: "※大判クッションの\a選択受付は終了しています。";
}
.goodsSecWrap #goods5.end:after {
    content: "※折りたたみストレージBOXの\a選択受付は終了しています。";
}
.goodsSecWrap #goods6.end:after {
    content: "※3Dテクスチャーブランケットの\a選択受付は終了しています。";
}
#goodsWrap2.goodsSecWrap .sec {
    padding-bottom: 7rem;
}
.goodsSecInner {
    /* display: flex; */
    /* justify-content: space-between; */
    /* flex-wrap: wrap; */
}
.goodsSecInner .detailArea ,
.goodsSecInner .slideArea {
    /* width: calc(50% - 2.5rem); */
    /* width: 46.2962963%; */
    /* max-width: 500px; */
    /* grid-column: 2 / 3; */
    /* grid-row: 1 / 3; */
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding-left: 8.125rem;
    /* display: table; */
    display: grid;
    grid-template-columns: 45% 55%;
    gap: 2rem;
}

.goodsSecInner .slideArea:after {
    content: "";
    display: block;
    clear: both;
}
.goodsSecInner .more .slideArea {
    display: block;
}
.goodsSecInner .slideArea .slideWrap {
    /* width: 35%; */
    /* display: table-cell; */
    /* float: left; */
}
.goodsSecInner .slideArea .slideNavWrap {
    /* width: 65%; */
    margin-top: 0;
    /* padding-left: 2rem; */
    /* display: table-cell; */
    /* float: right; */
    /* display: grid; */
    /* grid-template-rows: repeat(4,1fr); */
}
.goodsSecInner .slideArea .slider-nav .slick-list ,
.goodsSecInner .more .slideArea  .slick-list {
	margin: 0
}
.goodsSecInner .slideArea .slideNavWrap .slick-track,
.goodsSecInner .more .slideArea .slider-nav .slick-track {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 0.75rem;
    transform: unset !important;
    width: 100%!important;
}
.goodsSecInner .slideArea .slideNavWrap .slick-track .slick-slide,
.goodsSecInner .more .slideArea .slider-nav .slick-track .slick-slide {
	width: 100%!important;
}
.goodsSecInner .more .slideArea {
    display: block;
    padding-left: 0;
}
.goodsSecInner .more .slideArea .slider ,
.goodsSecInner .more .slideArea .slider-nav {
    width: 100%;
    padding-left: 0;
}
.goodsSecInner .more .slideArea .slider-nav {
    margin-top: 20px
}
.goodsSecInner .secGrid {
    /* display: grid; */
    /* grid-template-rows: auto 1fr; */
    /* grid-template-columns: 46.2962963% 46.2962963%; */
    width: 100%;
    /* column-gap: 7.40740741%; */
}
.goodsSecInner .secTtlBlock {
    display: flex;
    align-items: flex-start;
    margin-bottom: 3.75rem;
    /* grid-column: 1 / 2; */
    /* grid-row: 1 / 2; */
    grid-column: 1;
    grid-row: 1;
}
.goodsSecInner .secTtlBlock .numWrap {
    width: 6.125rem
}
.goodsSecInner .secTtlBlock .textWrap {
    width: calc(100% - 6.125rem);
    padding-left: 2rem;
}
.goodsSecInner .secTtlBlock .textWrap .ttl {
    font-size: 200%;
    font-weight: bold;
    color: #f59b00;
    line-height: 1.2;
    margin-bottom: 1rem;
    margin-top: -0.25em;
}
.goodsSecInner .secTtlBlock .textWrap .sizeDetail {
    margin-bottom: 1rem;
    font-weight: 400;
    line-height: 1.6;
}
.goodsSecInner .secTtlBlock .textWrap .textArea {
    line-height: 1.6;
    font-size: 125%;
}
.goodsSecInner .pointArea  {
    /* background: #333;
    padding: 1.5rem; */
    /* display: none; */
}
.goodsSecInner .pointArea .pointSec  {
    background: #333;
    padding: 1.5rem;
}
.goodsSecInner .pointArea .pointSec {
    display: flex;
    justify-content: space-between;
}
.goodsSecInner .pointArea .pointSec .textArea {
    width: 60%;
    font-weight: 400;
}
.goodsSecInner .pointArea .pointSec .imgArea {
    width: 36.5%;
}
.goodsSecInner .pointArea .ttl {
    font-size: 1.375rem;
    color: #f59b00;
    margin-bottom: 1rem
}

.goodsSecWrap .moreTtlWrap {
    background: #f59b00;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.25rem;
    font-weight: bold;
    min-height: 5.625rem;
    line-height: 1.4;
    padding: 0.25rem 2rem;
    border-radius: 100rem;
    margin-bottom: 3rem;
}

.goodsSecCol {
    display: flex;
    justify-content: space-between;
}
.goodsSecCol .goodsSecInner {
    width: calc(50% - 2.5rem);
    width: 46.2962963%;
    /* max-width: 500px; */
    flex-direction: column;
    justify-content: flex-start;
}

.goodsSecCol .goodsSecInner .more {
    display: flex;
    width: 100%;
    flex-direction: column;
}
.goodsSecCol .goodsSecInner .detailArea {
    width: 100%;
}
.goodsSecCol .goodsSecInner .slideArea {
    width: 100%;
    margin-bottom: 2rem;
}
.goodsSecCol .goodsSecInner .secTtlBlock {
    margin-bottom: 1rem;
}
.goodsSecCol .goodsSecInner .secTtlBlock .textWrap {
    padding-left: 0;
    width: 100%;
}
.goodsSecCol .goodsSecInner .secTtlBlock .textWrap .sizeDetail {
    min-height: 2em;
}
.goodsSecCol .goodsSecInner .pointArea .pointSec {
    background: none;
    padding: 0
}
.goodsSecCol .goodsSecInner .pointArea .pointSec .textArea {
    width: 100%;
    font-weight: 500;
}
@media screen and (max-width: 768px) {
    #mainVisual .img > img {
        width: 770px;
        max-width: 770px;
    }
}@media screen and (max-width: 500px) {
    #mainVisual .img > img {
        width: 600px;
        max-width: 770px;
    }
}
@media screen and (max-width: 640px) {
    .goodsSecInner .secGrid {
        /* display: flex; */
        flex-direction: column;
    }
    .goodsSecInner .secTtlBlock {
        order: 1;
    }
    .goodsSecInner .pointArea {
        order: 3
    }
    .goodsSecInner .slideArea {
        order: 2;
        max-width: 500px;
        margin: 0 auto 3rem;
    }
    .goodsSecInner .detailArea{
        
    }
    .goodsSecInner .slideArea {
        width: 100%;
        padding-left: 0;
        display: block;
    }
    .goodsSecInner .slideArea .slideWrap {
        width: 100%;
        float: none;
    }
    .goodsSecInner .slideArea .slideNavWrap {
        padding-left: 0;
        width: 100%;
    }
    .goodsSecCol {
        flex-direction: column;
    }
    .goodsSecCol .goodsSecInner {
        width: 100%;
        margin-bottom: 5rem;
    }
    .goodsSecCol .goodsSecInner + .goodsSecInner {
        margin-bottom: 0
    }
    .goodsSecCol .goodsSecInner .secTtlBlock .textWrap .sizeDetail {
        min-height: 0
    }
    .goodsSecWrap .moreTtlWrap {
        font-size: 1.6rem;
    }
}
@media screen and (max-width: 480px) {
    .goodsSecWrap .sec {
        margin-bottom: 5.5rem;
    }
    .goodsSecInner .secTtlBlock {
        margin-bottom: 1.5rem;
    }
    .goodsSecInner .secTtlBlock .numWrap {
        width: 5rem
    }
    .goodsSecInner .secTtlBlock .textWrap {
        width: calc(100% - 5rem);
        padding-left: 1.5rem;
        font-size: 90%;
    }
}



/* コースページTOP */
#underMain.course {
    margin-top: -3rem;
}
.course .ttlBlock .ttlLogo {
    width: 3.3125em;
}
.courseSecWrap {
    padding: 0 2rem;
    overflow: hidden;
}
.courseSecInner {
    max-width: 1080px;
    margin: auto;
    padding: 3rem 0;
}
.courseSecInner .ttlBlock {
}
.courseTableWrap {
}
.courseTableWrap .tableTtl {
    padding: 3rem 0;
    font-size: 2.25rem;
    font-weight: bold;
    text-align: center;
}
.courseTableWrap .annoList {
    text-align: center;
    padding: 1rem 1rem 0;
    line-height: 1.6;
    display: inline-block;
}
.courseTableWrap .annoList li {
    padding-left: 1.7em;
    text-indent: -1.75em;
    text-align: left;
}
@media screen and (max-width: 500px) {
    .courseTableWrap .annoList {
        text-align: left;
        padding: 0;
    }
}
.courseTableWrap .annoListWrap {
    text-align: center;
}
.courseTableWrap .annoList > div {
    display: flex;
    justify-content: center;
}
.courseTableWrap table {
    width: 100%;
    table-layout: fixed;
    color: #000;
    text-align: center;
    border-collapse: separate;
    border-spacing: 4px;
}
.courseTableWrap table th {
    font-size: 137.5%;
}
.courseTableWrap table td {
    vertical-align: middle
}
.courseTableWrap table th a {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    min-height: 3.5em;
    position: relative;
    padding: 0 2.2em;
    transition: 0.3s opacity;
}
.courseTableWrap table th a:hover {
    opacity: 0.6
}
.courseTableWrap table th a .arrow {
    position: absolute;
    display: block;
    width: 1.637em;
    height: 1.637em;
    right: 0.5em;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 500px) {
    .courseTableWrap table th a {
        padding: 0 1.2em;
        padding: 0 1.2em 0 0.5em;
    }
    .courseTableWrap table th a .arrow {
        width: 1em;
        height: 1em;
        right: 0.25em;
    }
}
.courseTableWrap table th a .arrow .d {
    stroke-linejoin: round;
    stroke-width: 4px;
    fill: none;
}
.courseTableWrap table th a .arrow .e {fill:#fff;}

.courseTableWrap table th.silver a .arrow .d {stroke:#6e8c96;}
/* .courseTableWrap table th.silver a .arrow .e {fill:#f59b00;} */
.courseTableWrap table th.bronze a .arrow .d {stroke:#b44628;}
/* .courseTableWrap table th.bronze a .arrow .e {fill:#f59b00;} */
.courseTableWrap table th.kids a .arrow .d {stroke:#8cc832;}
/* .courseTableWrap table th.kids a .arrow .e {fill:#f59b00;} */
.courseTableWrap table th.grand-slam a .arrow .d {stroke:#cbcbcb;}
/* .courseTableWrap table th.grand-slam a .arrow .e {fill:#f59b00;} */
.courseTableWrap table th.gold a .arrow .d {stroke:#a09114;}
/* .courseTableWrap table th.gold a .arrow .e {fill:#f59b00;} */

.courseTableWrap table.col3 th a {
    color: #fff
}
.courseTableWrap table.col2 th a {
    color: #000
}
.courseTableWrap table th.silver a {
    background: #6e8c96;
}
.courseTableWrap table th.bronze a {
    background: #b44628;
}
.courseTableWrap table th.kids a {
    background: #8cc832;
}
.courseTableWrap table th.grand-slam a {
    background: #cbcbcb;
}
.courseTableWrap table th.gold a {
    background: #a09114;
}
.courseTableWrap table td .wrap {
    display: flex;
    flex-direction: column;
    min-height: 5em;
    padding: 1rem 0.25rem;
    justify-content: center;
    height: 100%;
}
.courseTableWrap table td .wrap.end {
    position: relative;
}
.courseTableWrap table td .wrap.end:after {
    content: "※早期入会特典は終了しました。";
    font-size: 1.25rem;
    position: absolute;
    background: rgba(0,0,0,0.7);
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    left: 0;
    top: 0;
    font-weight: normal;
    white-space: pre;
    color: #fff;
}
.courseTableWrap table.col3 tr td:first-child {
    background: #f8f9fa;
}
.courseTableWrap table.col3 tr td:nth-child(2) {
    background: #fbf6f4;
}
.courseTableWrap table.col3 tr td:nth-child(3) {
    background: #f9fcf5;
}
.courseTableWrap table.col2 tr td:first-child {
    background: #fcfcfc;
}
.courseTableWrap table.col2 tr td:nth-child(2) {
    background: #faf9f3;
}
.courseTableWrap table.col3 tr td[colspan="3"] {
    background: #fff
}
.courseTableWrap table tr td .small {
    font-size: 100%;
    margin-bottom: 0.125rem;
}
.courseTableWrap table tr td .text {
    font-size: 137.5%;
    font-weight: bold;
}
.courseTableWrap table tr td .annoText {
    color: #f00;
}
.courseTableWrap table tr td .annoText > div {
    display: flex;
    justify-content: center;
}
.courseTableWrap table tr td .annoText dt {
    width: 1em;
}
.courseTableWrap table tr td .annoText dd {
    max-width: calc(100% - 1em);
    text-align: left;
}
.courseTableWrap table tr td .smallList div {
    display: flex;
    text-align: left;
    padding: 0 4%;
}
.courseTableWrap table tr td .smallList div dt {
    width: 2em;
}
.courseTableWrap table tr td .smallList div dd {
    width: calc(100% - 2em);
}
.courseTableWrap table tr td .itemImg {
    display: flex;
    justify-content: space-between;
    margin-top: 1rem;
}
.courseTableWrap table tr td .itemImg.center {
    justify-content: center;
}
.courseTableWrap table tr td .itemImg li {
    width: calc(100% / 7);
    padding: 0px 5px;
}
.courseTableWrap table tr td .itemImg.center li {
    width: calc((100% / 7)*2);
}
.courseTableWrap table tr td .itemImg li.end {
	position: relative;
}
.courseTableWrap table tr td .itemImg li.end:after {
	content: "";
	display: block;
	position: absolute;
	background: url(/sp/FC/images/course/item_end.png) no-repeat;
	background-size: cover;
	width: calc(100% - 10px);
	height: 100%;
	left: 5px;
	top: 0;
}
#courseWrap2 .courseSecInner {
    border-top: 1px solid #fff;
    padding-top: 0;
}
#courseWrap2 {
    z-index: 2;
    position: relative;
    background: #000;
}
#join {
    background: #dbdbdb;
    padding: 0rem 2rem;
    padding-top: 5rem;
    margin-top: -5rem;
    z-index: 1;
    position: relative
}
#join .howToInner {
    max-width: 1080px;
    margin: auto;
    color: #000;
}

#join .howToInner .ttlBlock {
    margin-bottom: 3.75rem
}
#join .howToInner .ttlBlock .ttl {
    font-size: 2.25rem;
    margin-bottom: 1rem;
}
#join .howToInner .ttlBlock .small {
    font-size: 87.5%
}
#join .howToInner .btns {
    display: flex;
    justify-content: space-between;
    margin-bottom: 3rem;
}
#join .howToInner .btns .btn {
    height: 5rem;
    font-size: 1.375rem;
    border-radius: 100rem;
    padding: 0.5rem 3.5rem;
}
#join .howToInner .btns .btn.disabled {
	filter: grayscale(1);
	pointer-events: none;
}
#join .howToInner .btns .arrow {
    width: 2.25rem;
    height: 2.25rem;
    right: 0.75rem;
}
#join .howToInner .btns .btnWrap {
    width: calc(50% - 1.5rem)
}
#join .howToInner .flow {
    background: #fff;
    padding: 1.5rem 2.4375rem 2rem;
}
#join .howToInner .flow > .ttl {
    font-size: 1.375rem;
    font-weight: bold;
    margin-bottom: 1.5rem;
}
#join .howToInner .flow .flowStep {
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}
#join .howToInner .flow .flowStep li {
    width: calc((100% - 8.5rem)/5);
}
#join .howToInner .flow .flowStep li .ttlWrap {
    display: flex;
    /* align-items: center; */
    position: relative;
    margin-bottom: 1rem;
    /* min-height: 3rem; */
    align-items: flex-end;
    width: 100%;
}
#join .howToInner .flow .flowStep li .imgArea {text-align: center}
#join .howToInner .flow .flowStep li .imgArea img {
    width: 70%;
    max-width: 5rem
}
#join .howToInner .flow .flowStep li .ttlWrap:after {
    content: "";
    display: block;
    position: absolute;
    width: calc(100% + 3rem);
    height: 1px;
    top: 100%;
    left: 0;
    background: #f59b00;
}
#join .howToInner .flow .flowStep li .ttlWrap  .num {
    width: 2rem;
}
#join .howToInner .flow .flowStep li .ttlWrap  .num img {
    height: 2.5rem;
}
#join .howToInner .flow .flowStep li .ttlWrap  .text {
    width: calc(100% - 2rem);
    padding-left: 0.5rem;
    /* height: 100%; */
    display: flex;
    align-items: center;
    min-height: 2.5rem;
    line-height: 1.2;
    flex-wrap: wrap;
}
#join .howToInner .flow .flowStep li > .text {
    font-size: 0.9rem;
    padding-top: 0.5rem;
    line-height: 1.6;
}

#join .howToInner .flow .flowStep li > .text span {
    display: inline-block;
    width: 100%;
    padding-left: 1em;
    text-indent: -1em;
    font-size: 90%;
}
#join .howToInner .flow .linkList {
    /* margin-top: 5rem; */
    margin-bottom: 0;
}
#join .howToInner .flow a {
    color: #000
}

#join .howToInner .flow .linkBtns {
    margin-bottom: 0
}
#join .howToInner .flow .linkBtns a {
    border-color: #000;
    font-weight: 600;
    font-size: 1.125rem
}
#join .howToInner .flow .linkBtns a:hover {
    background: #000;
    color: #fff;
}

#join .howToInner .flow .linkBtns li {
    padding: 1rem;
}
#join .howToInner .flow .linkBtns li a .icon .e {
    fill: #000;
}
#join .howToInner .flow .linkBtns li a .icon .d {
    stroke: #fff;
}
#join .howToInner .flow .linkBtns li a:hover .icon .e {
    fill: #fff;
}
#join .howToInner .flow .linkBtns li a:hover .icon .d {
    stroke: #000;
}
@media screen and (max-width: 900px) {
    #join .howToInner .flow .flowStep {
        justify-content: flex-start;
    }
    #join .howToInner .flow .flowStep li {
        width: calc((100% - 6rem)/3);
        margin-bottom: 3rem;
        margin-right: 2rem;
    }
}
@media screen and (max-width: 768px) {
    .courseSecWrap {
        padding: 0rem 3%;
    }
    #join .howToInner .flow {
        padding: 1.5rem 5%;
    }
    #join .howToInner .flow .flowStep li {
        width: calc(50% - 2rem);
        margin-bottom: 2rem
    }
}
@media screen and (max-width: 640px) {
    #join .howToInner .btns {
        flex-direction: column;
    }
    #join .howToInner .btns .btnWrap {
        width: 100%;
        margin-bottom: 1.75rem;
    }
}
@media screen and (max-width: 500px) {
    .courseTableWrap table {
        font-size: .75rem;
        border-spacing: 2px;
    }
    .courseTableWrap table td .wrap {
        
padding: 0.75rem 0.125rem;
    }
    .courseTableWrap table tr td .text {
        font-size: 100%;/* 小 */
    }
    #join .howToInner .flow .flowStep li {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
    #join .howToInner .flow .flowStep li .imgArea {
        width: 30%;
    }
    #join .howToInner .flow .flowStep li > .text {
        width: 70%;
    }
}

/* コース 下層 */

#mainVisual .img {
    position: relative;
}
#mainVisual.course .ttlBlock {
    top: auto;
    bottom: 0;
    background: none;
    font-size: 1rem;
    /* padding: 0; */
    background: rgba(0,0,0,0.5);
}
.grandslamMember #mainVisual.course .ttlBlock {
    background: rgba(255,255,255,0.35);
}

#mainVisual .ttlBlock {
    top: auto;
    bottom: 0;
    background: rgba(0,0,0,0.5);
    padding: 1.5rem 0
}
#mainVisual .leadText {
    text-align: center;
    font-size: 1.25rem;
    line-height: 1.75;
    font-weight: 400;
    letter-spacing: 0.05rem;
    padding: 3rem 5% 0;
}
#mainVisual .leadText + .leadText.red {
    padding-top: 0.2rem;
}
#mainVisual .leadText dl {
    display: flex;
    justify-content: center;
}
#mainVisual .leadText dl dt {
    width: 1em;
}
#mainVisual .leadText dl dd {
    max-width: calc(100% - 1em);
    text-align: left
}
#mainVisual.noImg .leadText {
    padding-top: 0;
    font-size: 1rem
}
#mainVisual dl.leadText > div {
    display: flex;
    justify-content: center;
    text-align: left;
    flex-wrap: wrap;
}
#mainVisual dl.leadText > div dd {
    max-width: calc(100% - 6em);
}

    #mainVisual dl.leadText > div dd.indnt span {
        padding-left: 1.7em;
        text-indent: -1.7em;
        display: inline-block;
    }
#kidsMemberList {
    padding-top: 0
} 
.courseDetail #mainVisual .ttlBlock .ttl .text {
    font-size: 200%;
    color: #fff;
    padding-bottom: 0;
    text-shadow: 0 0 5px black;
}
.courseDetail #mainVisual .ttlBlock .enTtl {
    /* height: 5rem; */
    font-size: 600%;
    height: auto;
    vertical-align: bottom;
    /* height: 0.95em; */
    font-weight: 900;
}
.courseDetail #mainVisual .ttlBlock .ttl .text:after {
    content: none
}
.courseDetail #mainVisual .ttlBlock .leadText {
    font-size: 1rem;
    line-height: 1.75;
    font-weight: 400;
    letter-spacing: 0.05rem
}
.iconPanelList {
    display: flex;
    flex-wrap: wrap;
    display: grid;
    grid-template-columns: repeat(6,1fr);
    grid-gap: 0.625rem;
}
.iconPanelList.gid {
    grid-template-columns: repeat(4,1fr);
    grid-gap: 2.5rem;
} 
.js-fade {
    transition: 1.2s;
    transition-property: opacity,transform;
    opacity: 0;
    transform: translateY(2rem);
}
.js-fade.on {
    opacity: 1;
    transform: translateY(0);
}
.iconPanelList li {
    width: calc((100% - 3.125rem)/6);
    /* margin-left: 0.625rem; */
    margin-bottom: 0.625rem;
    background: #333;
    padding: 0.75rem 0.25rem 0.75rem;
    text-align: center;
    display: grid;
    grid-template-rows: auto 1fr;
    /* display: flex; */
    /* flex-direction: column; */
    /* justify-content: space-between; */
    width: 100%;
    margin-bottom: 0;
    position: relative;
    overflow: hidden;
}
.iconPanelList li.lmtd:after {
    content: "";
    display: flex;
    position: absolute;
    left: 0;
    top: 0;
    transform: translate(-50%,0) rotate(-45deg);
    transform-origin: center top;
    font-weight: bold;
    height: 3.7em;
    aspect-ratio: 2/1;
    align-items: flex-end;
    font-size: 85%;
    justify-content: center;
    color: #000;
}
.grandslamMember .iconPanelList li.lmtd {
    padding-top: 2.25rem;
}
.grandslamMember .iconPanelList li.lmtd:after {
    content: "GSM限定";
    background: #cbcbcb;
}
.kidsMember .iconPanelList li.lmtd:after {
    content: "KIDS限定";
    background: #8cc832;
}
.goldMember .iconPanelList li.lmtd:after {
    content: "GOLD限定";
    background: #bfa779;
}
.iconPanelList.gid li {
    font-size: 1.375rem
}
.iconPanelList li .img {
    margin-bottom: 1rem;
    aspect-ratio: 21/11;
    display: flex;
    align-items: center;
    justify-content: center;
    /* min-height: 7rem; */
    /* padding: 0.9rem 0; */
    /* height: 100%; */
}
.iconPanelList li .img.type2 {
    aspect-ratio: 5/2;
}
.iconPanelList li .img img {
    width: 90%;
}
.iconPanelList.gid li .img {
    aspect-ratio: auto;
    margin-bottom: 0;
    padding: 2rem 0;
    height: 100%;
}
.iconPanelList.gid li .img img {
    width: 90%;
    max-width: 7rem;
}
.iconPanelList li .text {
    display: flex;
    /* height: 100%; */
    align-items: center;
    justify-content: center;
    margin-top: auto;
    min-height: 2.5rem;
    height: 100%;
}
.iconPanelList.gid li .text {
    height: 100%;
}

@media screen and (min-width: 961px) {
    .iconPanelList li:nth-child(6n+1) {
        /* margin-left: 0; */
    }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
    .iconPanelList {
        /* grid-template-columns: repeat(5,1fr); */
    }
    .iconPanelList li {
        /* width: calc((100% - 2.5rem)/5); */
    }
    .iconPanelList li:nth-child(5n+1) {
        /* margin-left: 0; */
    }
}
@media screen and (min-width: 581px) and (max-width: 768px) {
    .iconPanelList {
        grid-template-columns: repeat(4,1fr);
        grid-template-columns: repeat(5,1fr);
    }
    .iconPanelList li {
        /* width: calc((100% - 1.875rem)/4); */
    }
    .iconPanelList li:nth-child(4n+1) {
        /* margin-left: 0; */
    }
}
@media screen and (max-width: 768px) {
    .iconPanelList.gid {
        grid-gap: 0.625rem
    }
    .iconPanelList.gid li {
        font-size: 1rem
    }
    
}
@media screen and (max-width: 580px) {
    .iconPanelList,
    .iconPanelList.gid {
        grid-template-columns: repeat(3,1fr);
        grid-template-columns: repeat(4,1fr);
        grid-gap: 0.3rem;
    }
    .iconPanelList li {
        /* width: calc((100% - 1.25rem)/3); */
        font-size: 90%;
    }
    .iconPanelList li:nth-child(3n+1) {
        /* margin-left: 0; */
    }
    .iconPanelList.gid {
        grid-gap: 0.25rem
    }
    .iconPanelList.gid li {
        font-size: 0.75rem
    }
    .iconPanelList.gid li .img {
        padding: 0.7rem 0;
    }
    .iconPanelList.gid li .img img {
        width: 95%;
    }
    #mainVisual dl.leadText > div dd {
        max-width: 100%;
    }
}
@media screen and (max-width: 500px) {
    #mainVisual .leadText {
        padding: 1.25rem 3% 0;
        font-size: 0.95rem;
    }
}
@media screen and (max-width: 420px) {
    .iconPanelList li {
        /* width: calc((100% - 1.25rem)/3); */
        font-size: 68%;
    }
}
.courseColWrap {
    display: grid;
    /* grid-template-rows: 1fr 1fr; */
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    /* grid-column-gap: 5rem; */
    grid-row-gap: 4rem;
    grid-column-gap: 7.40740741%;
    /* grid-row-gap: 7.40740741%; */
    /* gap: 5rem 5rem; */
}

.courseColWrap .col {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 1.25rem 0;
    /* place-content: center; */
    line-height: 1.75;
}
.courseColWrap .col .ttl {
    font-size: 137.5%;
    font-weight: bold;
    display: flex;
    /* align-items: center; */
    place-content: center left;
    /* display: grid; */
    flex-wrap: wrap;
}
.courseColWrap .col .textArea {
    /* padding: 1rem 0 0; */
    line-height: 1.75;
}
.indntText {
    display: inline-block;
    padding-left: 1em;
    text-indent: -1em
}
.courseDetail .courseSecWrap .ttlBlock h2.ttl {
    font-size: 3rem;
    text-align: left;
    position: relative;
    letter-spacing: 0.125rem;
}
.courseDetail .courseSecWrap .ttlBlock h2.ttl:after {
    content: "";
    width: 100vw;
    height: 1px;
    border-bottom: 1px solid;
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
}


.courseSecWrap .moreTtl {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.25rem;
    font-weight: bold;
    min-height: 5.625rem;
    min-height: 2.5em;
    line-height: 1.4;
    padding: 0.25rem 2rem;
    border-radius: 100rem;
    margin-bottom: 3rem
}
.courseSecWrap .moreItem {
    display: grid;
    /* grid-template-rows: 1fr 1fr; */
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 5rem;
    grid-row-gap: 5rem;
    gap: 5rem 5rem;
    grid-column-gap: 7.40740741%;
    grid-row-gap: 5rem;
    margin-bottom: 3rem;
}
.courseSecWrap .moreItem .col {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 1rem 0;
    /* place-content: center; */
}
.courseSecWrap .moreItem .col .ttlWrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.courseSecWrap .moreItem .col .ttlWrap .lead {
    
}
.courseSecWrap .moreItem .col .ttlWrap .ttl {
    font-size: 137.5%;
    font-weight: bold;
}
.courseSecWrap .moreItem .col .textArea {
    /* line-height: 1.75 */
}
.courseImgColWrap .col {
    display: grid;
    grid-template-columns: 1fr 46.2962963%;
    grid-template-rows: auto auto;
    grid-column-gap: 2.5rem;
    margin-bottom: 7.5rem;
}
.courseImgColWrap .col:last-of-type {
    margin-bottom: 0
}
.courseImgColWrap .col.reverse {
    grid-template-columns: 46.2962963% 1fr;
}
.courseImgColWrap .col .textArea {
    
}
.courseImgColWrap .col .imgArea {
    grid-column: 2;
    grid-row: 1 / 3;
}
.courseImgColWrap .col.reverse .imgArea {
    grid-column: 1;
    grid-row: 1 / 3;
}
.courseImgColWrap .col .textBlock {
    grid-column: 1;
    grid-row: 1;
}
.courseImgColWrap .col.reverse .textBlock {
    grid-column: 2;
}
.courseImgColWrap .col .linkWrap {
    grid-column: 1;
    grid-row: 2;
}
.courseImgColWrap .col.reverse .linkWrap {
    grid-column: 2;
}
.courseImgColWrap .col .textBlock {
    margin-bottom: 5rem;
    /* line-height: 1.75; */
}
.courseImgColWrap .col .textBlock .subLead {
    font-size: 137.5%;
    margin-bottom: 1rem
}
.courseImgColWrap .col .textBlock .ttl {
    font-size: 200%;
    font-weight: bold;
    margin-bottom: 1rem
}
.courseImgColWrap .col .textBlock .leadText {
    line-height: 1.75
}
.courseImgColWrap .col .linkWrap {
    font-size: 137.5%;
}
.courseImgColWrap .col .linkWrap .leadText {
    font-weight: 500;
    margin-bottom: 1rem;
    padding: 0 .25rem;
}
.courseImgColWrap .col .linkWrap .btn {
    border-radius: 100rem;
    min-height: 3.75rem;
}
.courseImgColWrap .col .linkWrap .btn .arrow {
    width: 1.63636364em;
    height: 1.63636364em;
}
.courseImgColWrap .col .tableWrap .tableTtl {
    font-size: 137.5%;
    margin-bottom: 1rem
}
.courseImgColWrap .col .tableWrap table {
    border-spacing: 2px;
    border-collapse: separate;
    width: 100%;
}
.courseImgColWrap .col .tableWrap table th,
.courseImgColWrap .col .tableWrap table td {
    padding: 0.75rem;
    color: #000;
    background: #fff;
    vertical-align: middle;
    text-align: left;
}
.courseImgColWrap .col .tableWrap table th {
    font-weight: 600
}
.courseImgColWrap .col .tableWrap table td {
    font-weight: 500
}

.courseImgColWrap .col .tableWrap table + .tableAnno {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 90%;
    line-height: 1.7
}
.courseImgColWrap .col .tableWrap table + .tableAnno span {
    display: block;
    margin-bottom: 0.25em
}
@media screen and (max-width: 768px) {
    .courseDetail #mainVisual .img > img {
        width: 850px;
        max-width: 850px;
    }
    .courseDetail #mainVisual .ttlBlock {
        font-size: 0.8rem;
    }
    .courseDetail #mainVisual .ttlBlock .enTtl {
        
    }
}
@media screen and (max-width: 500px) {
    
    .courseDetail #mainVisual .img > img {
        width: 500px;
        max-width: 850px;
    }
    .courseImgColWrap .col {
        display: flex;
        flex-direction: column;
    }
    .courseImgColWrap .col:not(:last-of-type) {
        margin-bottom: 4rem;
    }
    .courseImgColWrap .col .textBlock {
        order: 1;
        margin-bottom: 3rem;
    }
    .courseImgColWrap .col .imgArea {
        order: 2;
        margin-bottom: 3rem;
    }
    .courseImgColWrap .col .linkWrap {
        order: 3;
    }
    .courseImgColWrap .col .linkWrap .leadText {
        font-size: 80%;
    }
    .courseImgColWrap .col .tableWrap .tableTtl {
        font-size: 112.5%;
    }
    .courseColWrap {
        
    }
    .courseDetail .courseSecWrap .ttlBlock {
        margin-bottom: 1rem
    }
    .courseDetail .courseSecWrap .ttlBlock h2.ttl {
        font-size: 2rem;
    }
    .courseDetail #grandslamSec01.courseSecWrap .ttlBlock h2.ttl {
        font-size: 1.6rem;
    }
    .courseColWrap {
        display: flex;
        flex-direction: column;
        grid-row-gap: 0;
        font-size: 1.25rem;
    }
    .courseColWrap .col:not(:last-of-type) {
        margin-bottom: 4rem;
    }
    .courseColWrap .col .ttl {
        font-size: 110%;
    }
    .courseColWrap .col .textArea {
        font-size: 0.875rem;
    }
    .courseSecWrap .moreItem {
        display: flex;
        flex-direction: column;
        grid-row-gap: 0;
    }
    .courseSecWrap .moreItem .col:not(:last-of-type) {
        margin-bottom: 5rem;
    }
    .courseDetail #mainVisual .ttlBlock {
        font-size: 0.65rem;
        padding: 1.5em;
    }
    .courseDetail #mainVisual .ttlBlock .ttl .text {
        font-size: 150%;
        margin-bottom: 1em;
    }
    .courseDetail #mainVisual .ttlBlock .enTtl {
        font-size: 350%;
    }
    .courseSecWrap .moreTtl {
        font-size: 1.5rem;
    }
    .courseImgColWrap .col .tableWrap table {
        
font-size: 90%;
    }
}

.courseDetail.kidsMember #mainVisual .ttlBlock .enTtl {color: #8cc832}
.courseDetail.silverMember #mainVisual .ttlBlock .enTtl {color: #6e8c96}
.courseDetail.bronzeMember #mainVisual .ttlBlock .enTtl {color: #b44628;}
.courseDetail.goldMember #mainVisual .ttlBlock .enTtl {color: #bfa779;}
.courseDetail.grandslamMember #mainVisual .ttlBlock .enTtl {color: #000;}
/* kids */
.courseDetail.kidsMember .courseSecWrap .ttlBlock h2.ttl {
    color: #8cc832;
}
.courseDetail.kidsMember .courseSecWrap .moreTtl {
    background: #8cc832;
    color: #000
}
.courseDetail.kidsMember .courseSecWrap .moreItem .col .ttlWrap {
    color: #8cc832;
}
.courseDetail.kidsMember .courseImgColWrap .col .linkWrap .leadText {
    color: #8cc832;
}
.courseDetail.kidsMember .courseImgColWrap .col .linkWrap .btn {
    background: #8cc832;
}
.courseDetail.kidsMember .courseImgColWrap .col .linkWrap .btn .d{
    stroke: #8cc832;
}
.courseDetail.kidsMember .courseImgColWrap .col .tableWrap .tableTtl {
    color: #8cc832;
}
.courseDetail.kidsMember .courseImgColWrap .col .tableWrap table th {
    background: #8cc832;
}
.courseDetail.kidsMember .courseImgColWrap .col .tableWrap table .type2 th {
    background: #c5e398
}
.courseDetail.kidsMember .courseImgColWrap .col .tableWrap table .type2 td {
    background: #e8f4d6
}

/* silver */
.courseDetail.silverMember .courseSecWrap .ttlBlock h2.ttl {
    color: #6e8c96;
}
.courseDetail.silverMember .courseSecWrap .moreTtl {
    background: #6e8c96;
    color: #000
}
.courseDetail.silverMember .courseSecWrap .moreItem .col .ttlWrap {
    color: #6e8c96;
}
.courseDetail.silverMember .courseImgColWrap .col .linkWrap .leadText {
    color: #6e8c96;
}
.courseDetail.silverMember .courseImgColWrap .col .linkWrap .btn {
    background: #6e8c96;
}
.courseDetail.silverMember .courseImgColWrap .col .linkWrap .btn .d{
    stroke: #6e8c96;
}
.courseDetail.silverMember .courseImgColWrap .col .tableWrap .tableTtl {
    color: #6e8c96;
}
.courseDetail.silverMember .courseImgColWrap .col .tableWrap table th {
    background: #6e8c96;
}
.courseDetail.silverMember .courseImgColWrap .col .tableWrap table .type2 th {
    background: #94b4bd;
}
.courseDetail.silverMember .courseImgColWrap .col .tableWrap table .type2 td {
    background: #b3c4c9;
}

/* bronze */
.courseDetail.bronzeMember .courseSecWrap .ttlBlock h2.ttl {
    color: #b44628;
}
.courseDetail.bronzeMember .courseSecWrap .moreTtl {
    background: #b44628;
    color: #000
}
.courseDetail.bronzeMember .courseSecWrap .moreItem .col .ttlWrap {
    color: #b44628;
}
.courseDetail.bronzeMember .courseImgColWrap .col .linkWrap .leadText {
    color: #b44628;
}
.courseDetail.bronzeMember .courseImgColWrap .col .linkWrap .btn {
    background: #b44628;
}
.courseDetail.bronzeMember .courseImgColWrap .col .linkWrap .btn .d{
    stroke: #b44628;
}
.courseDetail.bronzeMember .courseImgColWrap .col .tableWrap .tableTtl {
    color: #b44628;
}
.courseDetail.bronzeMember .courseImgColWrap .col .tableWrap table th {
    background: #b44628;
}
.courseDetail.bronzeMember .courseImgColWrap .col .tableWrap table .type2 th {
    background: #b3705e;
}
.courseDetail.bronzeMember .courseImgColWrap .col .tableWrap table .type2 td {
    background: #dfac9e;
}

/* gold */
.courseDetail.goldMember .courseSecWrap .ttlBlock h2.ttl {
    color: #bfa779;
}
.courseDetail.goldMember .courseSecWrap .moreTtl {
    background: #bfa779;
    color: #000
}
.courseDetail.goldMember .courseSecWrap .moreItem .col .ttlWrap {
    color: #bfa779;
}
.courseDetail.goldMember .courseImgColWrap .col .linkWrap .leadText {
    color: #bfa779;
}
.courseDetail.goldMember .courseImgColWrap .col .linkWrap .btn {
    background: #bfa779;
}
.courseDetail.goldMember .courseImgColWrap .col .linkWrap .btn .d{
    stroke: #bfa779;
}
.courseDetail.goldMember .courseImgColWrap .col .tableWrap .tableTtl {
    color: #bfa779;
}
.courseDetail.goldMember .courseImgColWrap .col .tableWrap table th {
    background: #bfa779;
}
.courseDetail.goldMember .courseImgColWrap .col .tableWrap table .type2 th {
    background: #dfd1b8;
}
.courseDetail.goldMember .courseImgColWrap .col .tableWrap table .type2 td {
    background: #f1ece2;
}

/* grandslam */
.courseDetail.grandslamMember .courseSecWrap .ttlBlock h2.ttl {
    color: #cbcbcb;
}
.courseDetail.grandslamMember .courseSecWrap .moreTtl {
    background: #cbcbcb;
    color: #000
}
.courseDetail.grandslamMember .courseSecWrap .moreItem .col .ttlWrap {
    color: #cbcbcb;
}
.courseDetail.grandslamMember .courseImgColWrap .col .linkWrap .leadText {
    color: #cbcbcb;
}
.courseDetail.grandslamMember .courseImgColWrap .col .linkWrap .btn {
    background: #cbcbcb;
}
.courseDetail.grandslamMember .courseImgColWrap .col .linkWrap .btn .d{
    stroke: #cbcbcb;
}
.courseDetail.grandslamMember .courseImgColWrap .col .tableWrap .tableTtl {
    color: #cbcbcb;
}
.courseDetail.grandslamMember .courseImgColWrap .col .tableWrap table th {
    background: #cbcbcb;
}
.courseDetail.grandslamMember .courseImgColWrap .col .tableWrap table .type2 th {
    background: #e5e5e5;
}
.courseDetail.grandslamMember .courseImgColWrap .col .tableWrap table .type2 td {
    background: #f5f5f5;
}

/* FAQページ */
#faqWrap {
    padding: 5rem 2rem
}
.faqSecInner {
    max-width: 1080px;
    margin: auto;
}

/* サービスガイド */
#serviceWrap {
    padding: 5rem 2rem
}
.serviceSecInner {
    max-width: 1080px;
    margin: auto;
}
.toggleClose{
	display: block;
    max-width: 8rem;
	position: relative;
	margin: 1.5rem auto 1rem;
	text-align: center;
	cursor: pointer;
	color: #fff;
	opacity: 1;
	transition: 0.3s;
}
.toggleClose::after{
	position: absolute;
    right: 10px;
    top: calc(50% - 0.1em);
    content: '';
    box-sizing: border-box;
    display: inline-block;
    vertical-align: middle;
    font-size: 1.7em;
    width: 0.5em;
    height: 0.5em;
    border-top: 0.1em solid currentColor;
    border-right: 0.1em solid currentColor;
    transform: rotate(-45deg);
}
.toggleClose:hover{
	opacity: 0.6;
	transition: 0.3s;
}

/* 特定商取引法に基づく表示ページ */
.lawSecWrap {
    padding: 5rem 2rem;
}
.lawSecInner {
    max-width: 1080px;
    max-width: 1200px;
    margin: auto;
}
.lawTable {
    width: 100%;
    border-collapse: separate;
    /* border-spacing: 2px; */
    /* color: #000; */
    font-size: 1.125rem;
}
.lawTable tr:first-child th {
    border-top-color: transparent;
}
.lawTable th ,
.lawTable td {
    background: #f8f9fa;
    vertical-align: middle;
    padding: 1.5rem;
    /* border: 1px solid; */
    border-top: 1px solid;
    line-height: 1.6;
    font-size: 112.5%;
}
.lawTable tr:first-child th {
    border-top-color: transparent;
}
.lawTable tr:last-child td {
    border-bottom: 1px solid;
}
.lawTable th {
    width: 20rem;
    background: #f8f9fa;
    color: #000;
    border-right: none;
    /* border-top-color: transparent; */
}
.lawTable td {
    width: auto;
    background: #f8f9fa;
    background: #000;
    color: #fff;
    border-right: 1px solid
}
.lawDl > div {
    display: flex;
    flex-wrap: wrap;
}
.lawDl > div dt {
    width: 14rem;
}
.lawDl > div dd {
    padding-left: 1rem
}
@media screen and (max-width: 768px) {
    .lawSecWrap {
        padding: 5rem 3%;
    }
    
    .lawTable th {
        width: 35%
    }
    .lawTable td {
        width: 65%
    }
}
@media screen and (max-width: 500px) {
    .lawTable {
        font-size: 75%;
        table-layout: fixed;
    }
    .lawTable th, .lawTable td {
        padding: 1rem
    }
    
    .lawTable th {
        /* width: 45%; */
    }
    .lawTable td {
        /* width: 55%; */
    } 
}
@media screen and (max-width: 320px) {
    .lawTable th, .lawTable td {
        padding: 0.55rem;
    }
}
/* 会員規約ページ */
.ruleSecWrap {
    padding: 5rem 2rem
}
.ruleSecInner {
    max-width: 1200px;
    margin: auto;
}
.ruleSecInner .leadText {
    line-height: 1.75;
    margin-bottom: 5rem;
}
.ruleBox {
    border: 1px solid
}
.ruleBox + .ruleBox {
    margin-top: 5rem
}
.ruleBoxHead {
    background: #eee;
    color: #000;
    font-size: 1.375rem;
    padding: 1.5rem 5rem;
}
.ruleBoxInner {
    padding: 2.5rem 5rem;
    line-height: 1.75
}
.ruleBoxInner .box {
    padding-left: 0.5rem;
}
.ruleBoxInner .box h3 {
    text-indent: -0.5rem;
    font-size: 1.125rem;
}
.ruleBoxInner .box h4 {
    margin-top: 0.75rem;
}
.ruleBoxInner .box + .box {
    margin-top: 2rem
}
.ruleBoxInner .box .textList {
    display: table;
}
.ruleBoxInner .box .textList > div:not(:first-child) {
    /* display: table-row; */
    /* display: flex; */
    margin-top: 0.5rem
}
.ruleBoxInner .box .textList dt {
    /* min-width: 18em; */
    /* white-space: nowrap; */
    display: inline-block;
    /* border-bottom: 1px solid rgba(255,255,255,0.5); */
}
.ruleBoxInner .box .textList dd {
    flex-basis: auto;
    padding-left: 2rem;
    width: 100%;
}
.ruleBoxInner .box .numList {
    /* padding-left: 1em; */
    counter-reset: item;
}

.ruleBoxInner .box .numList > li {
  text-indent: -1.25rem;
  padding-left: 1.25rem;
}
.ruleBoxInner .box .numList > li > * {
    text-indent: 0
}
.ruleBoxInner .box .numList > li:not(:first-child) {
    margin-top: 0.25rem
}
.ruleBoxInner .box .numList > li:before {
  display: inline-block;
  counter-increment: item;
  content: counter(item);
  padding-right: .25rem;
  font-weight: bold;
  text-indent: 0;
  width: 1rem;
}
.ruleBoxInner .box .indntList {
}
.ruleBoxInner .box .indntList li {
    padding-left: 1.25rem;
    text-indent: -1.25rem;
    padding-left: 2.5rem;
    text-indent: -2.5rem;
}
.ruleBoxInner .box .indntList li.indnt02 {
    padding-left: 3.125rem;
    text-indent: -3.125rem;
}
.ruleBoxInner .box .indntList li:not(:first-child) {
    
}
@media screen and (max-width: 768px) {
    .ruleSecWrap {
        padding: 5rem 3%;
    }
    .ruleBoxHead {
        padding: 1.5rem;
    }
    .ruleBoxInner {
        padding: 2.5rem 1.5rem;
    }
}


/* 開閉toggle */
.toggleBlock:not(:last-of-type) {
    margin-bottom: 5rem
}
.toggleBlock .OpenBox {
    
}
.toggleBlock .toggleBlockTtl {
    font-size: 1.75rem;
    text-align: left;
    position: relative;
    letter-spacing: 0.125rem;
    color: #f59b00;
    margin-bottom: 2rem;
    padding: 0.5rem 0;
}
.toggleBlock .toggleBlockTtl:after {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: 1px solid;
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
}
.toggleBlock .openBox {
    border: 1px solid #fff;
    border-radius: 0.5rem;
    padding: 0.5rem 2rem;
}
.toggleBlock .openBox + .openBox {
    margin-top: 1.5rem;
}
.toggleBlock .openBox .toggleTtl {
    padding: 1rem 0;
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 1.125rem;
    justify-content: space-between;
    transition: .25s opacity;
}
.toggleBlock .openBox .toggleTtl:hover {
    opacity: 0.8
}
.toggleBlock .openBox .toggleTtl p {
    padding-left: 2.5rem;
    position: relative;
    width: calc(100% - 2.25rem);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.toggleBlock.noIcon .openBox .toggleTtl p {
    padding-left: 0;
}
.toggleBlock.noIcon .openBox .toggleTtl p:before {
    content: none;
}
.toggleBlock .openBox .toggleTtl .arrowIcon {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    position: relative;
    transform: translateY(-25%);
}
.toggleBlock .openBox .toggleTtl .arrowIcon:after {
    content: "";
    display: block;
    position: absolute;
    width: 90%;
    height: 90%;
    border: 1px solid #fff;
    border-width: 0 2px 2px 0;
    transform: translate(-50%,-50%) rotate(45deg);
    left: 50%;
    top: 50%;
    box-sizing: border-box;
    transition: .5s;
}
.toggleBlock .openBox .toggleTtl.active .arrowIcon:after {
    transform: translate(-50%,-50%) rotate(225deg);
}
.toggleBlock .openBox .toggleCont {
    padding: 1rem 0;
    border-top: 1px solid #fff;
    line-height: 1.75;
    display: none;
}
.toggleBlock .openBox .toggleCont .faqCont {
    padding-left: 2.5rem;
    position: relative;
}
.toggleBlock .openBox .toggleTtl p:before ,
.toggleBlock .openBox .toggleCont .faqCont:before {
    content: "";
    display: block;
    position: absolute;
    width: 1.5rem;
    height: 2.2rem;
    background: url(/sp/FC/images/faq/icon_q.svg) no-repeat;
    background-size: contain;
    left: 0;
    top: 0;
}
.toggleBlock .openBox .toggleTtl p:before {
    top: -0.25rem
}
.toggleBlock .openBox .toggleCont .faqCont:before {
    background-image: url(/sp/FC/images/faq/icon_a.svg);
}



@media screen and (max-width: 768px) {
    #faqWrap {
        padding: 1rem 3% 3rem;
    }
    .toggleBlock:not(:last-of-type) {
        margin-bottom: 3rem!important
    }
    .toggleBlock .toggleBlockTtl {
        font-size: 1.4rem
    }
}


/* ポイントページ */
.point #mainVisual .ttlBlock {
    /* top: auto; */
    /* bottom: 3%; */
}
.point #mainVisual .ttlBlock .ttlLogo {
    width: 3.75em;
    
/* margin: 0 auto 1.5rem; */
}
@media screen and (max-width: 1366px) {
    .point #mainVisual .ttlBlock {
        /* bottom: 4.375rem; */
        /* position: absolute; */
    }
}
@media screen and (max-width: 768px) {
    .point #mainVisual .img > img {
        /* width: 770px;
        max-width: 770px; */
    }
    .point #mainVisual .ttlBlock {
        /* bottom: -4rem; */
    }
}
.pointSecWrap {
    padding: 5rem 2rem
}
#pointWrap1 {
    padding-top: 3rem;
}
.pointSecWrap .secInner {
    max-width: 1080px;
    margin: auto;
}
.modalTtlWrap {
    margin-bottom: 2.5rem
}
.modalTtlWrap .ttl {
    color: #f59b00;
    font-size: 2rem;
    font-weight: bold;
}
.modalTtlWrap .subText {
    display: flex;
    margin-top: 1rem
}
.modalTtlWrap .subText .icon {
    width: 1.25rem;
    margin-right: 0.5rem
}
#pointWrap2 {
    background: #333;
    overflow: hidden;
}
.ttlBlock2 {
    color: #f59b00;
    margin-bottom: 3rem;
    font-size: 1rem
}
@media screen and (max-width: 500px) {
    .ttlBlock2 {
        font-size: 0.75rem
    }
}
.ttlBlock2 h2 {
    font-size: 312.5%;
    position: relative;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    line-height: 1;
    letter-spacing: 0.125rem;
}
.ttlBlock2 h2:after {
    content: "";
    display: block;
    position: absolute;
    width: 100vw;
    height: 1px;
    border-bottom: 1px solid;
    box-sizing: border-box;
    top: 100%;
    left: -0.5rem;
}
.ttlBlock2 .subTtl {
    font-size: 137.5%
}
.ttlBlock2 .lead {
    color: #fff;
    margin-top: 1.75rem;
    padding-bottom: 1.5rem;
    font-size: 1rem;
}
.stepArea > ul > li {
    border-left: 2px solid #f59b00;
    padding-left: 2rem;
    clear: both;
    padding-bottom: 2rem;
}
.stepArea > ul > li:not(:last-child) {
    margin-bottom: 5rem;
}
.stepArea .ttlWrap {
    display: flex;
    margin-bottom: 2rem;
    align-items: flex-end;
}
.stepArea .ttlWrap .numWrap {
    width: 7.5%;
    width: 4.9rem;
}
.stepArea .ttlWrap .textWrap {
    width: 91%;
    padding-left: 2rem;
    width: calc(100% - 5rem);
}
.stepArea .contWrap {
    padding-left: calc(9% + 2rem);
}


.stepArea .contWrap .colWrap:after {
    content: "";
    display: block;
    clear: both;
}
.stepArea .contWrap .colWrap {
    /* display: flex; */
    /* justify-content: space-between; */
}
.stepArea .contWrap .colWrap .imgWrap {
    width: 38%;
    float: left;
    margin-right: 6%;
    clear: left;
}
.stepArea .contWrap .colWrap .textWrap {
    /* width: 55%; */
    margin-left: 45%;
}
.stepArea .contWrap .colWrap .textWrap .ttl {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 2rem;
}
.stepArea .contWrap .colWrap .textWrap p.text {
    margin-bottom: 2rem;
    line-height: 1.75;
}
.stepArea .contWrap .colWrap .textWrap .btn {
    height: 5rem;
    font-size: 1.375rem;
    border-radius: 100rem;
    padding: 0.5rem 3.5rem;
}

.stepArea .contWrap .colWrap .textWrap .btn .arrow {
    width: 2.25rem;
    right: 1rem;
}
.stepArea .ttlWrap .textWrap h3 {
    font-size: 500%;
}
.stepArea .ttlWrap .textWrap .balloon {
    position: relative;
    max-width: 20rem;
    margin-bottom: 1rem;
    display: none;
}
.stepArea .ttlWrap .textWrap .balloon span.text {
    color: #f59b00;
    border-radius: 1000px;
    border: 1px solid;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.6725rem 0.5rem;
    position: relative;
    z-index: 0;
    background: #333;
    /* background: #fff; */
    font-weight: 400;
} 
.stepArea .ttlWrap .textWrap .balloon span.icon {
    position: absolute;
    display: block;
    width: 1.45rem;
    height: 1rem;
    top: 100%;
    left: 3rem;
    background: #333;
    border: 1px solid #f59b00;
    border-width: 0 1px 1px 0;
    transform: skew(5deg,35deg);
    transform-origin: right top;
}


.colorTableWrap {
    margin-top: 2.5rem;
    overflow-x: auto;
    width: 100%;
    overflow-y: clip;
}
.colorTableWrap + .colorTableWrap {
    margin-top: 5.5rem;
}
.colorTableWrap table {
    width: 100%;
    vertical-align: middle;
    line-height: 1.75;
    /* margin-bottom: 1.5rem; */
    text-align: left;
    table-layout: fixed;
}
.colorTableWrap thead th {
    width: 14%;
    font-size: 90%;
    text-align: center;
    padding: 0.75rem 0.5rem;
    /* line-height: 1; */
    border: 2px solid #000;
    border-width: 0 2px 2px 0;
    vertical-align: middle;
}
.colorTableWrap thead .bgNone {
    width: 30%;
    font-size: 150%;
    text-align: left;
}
.colorTableWrap thead .grandSlam {color: #000;background: #ccc;}
.colorTableWrap thead .gold {color: #000;background: #c8a977;}
.colorTableWrap thead .silver {color: #fff;background: #5f8d98;}
.colorTableWrap thead .kids {color: #fff;background: #69c90d;}
.colorTableWrap thead .bronze {color: #fff;background: #cf4421;}

.colorTableWrap tbody th {
    border: 2px solid #303030;
    border-width: 0 2px 2px 0;
    background: #000;
    padding: 1rem 0.75rem;
    font-weight: 400;
    vertical-align: middle;
}
.colorTableWrap tbody td {
    background: #f5f5f5;
    color: #000;
    text-align: center;
    border: 2px solid #000;
    border-width: 0 2px 2px 0;
    padding: 1rem 0.75rem;
    vertical-align: middle;
}
.colorTableWrap tbody td .orangeBg {
    background: #ff9c00;
    padding: 0.25rem;
    margin-top: 0.5rem;
}
.colorTableWrap tbody td .pt {
    font-weight: 700;
    font-size: 112.5%;
    margin: 0 0.25em;
    word-break: keep-all;
    white-space: nowrap;
}
.colorTableWrap.type2 thead .bgNone {
    font-size: 137.5%;
    width: 40%;
    padding: 0.75rem 1.5rem;
}
.colorTableWrap.type2 thead th {
    width: 20%;
    font-size: 137.5%;
}
.colorTableWrap.type2 tbody tr:nth-child(odd) th {background: #333;}
.colorTableWrap.type2 tbody tr:nth-child(even) th { background: #555}
.colorTableWrap.type2 tbody tr:nth-child(odd) td:nth-of-type(1) { background: #f0f3f4}
.colorTableWrap.type2 tbody tr:nth-child(odd) td:nth-of-type(2) { background: #f7ece9}
.colorTableWrap.type2 tbody tr:nth-child(odd) td:nth-of-type(3) { background: #f3f9ea}
.colorTableWrap.type2 tbody tr:nth-child(even) td:nth-of-type(1) { background: #f8f9fa}
.colorTableWrap.type2 tbody tr:nth-child(even) td:nth-of-type(2) { background: #fbf6f4}
.colorTableWrap.type2 tbody tr:nth-child(even) td:nth-of-type(3) { background: #f9fcf5}

.colorTableWrap.type2 tbody td {
    font-size: 137.5%
}
.colorTableWrap.type2 tbody th {
    padding: 1rem 1.5rem;
    border-right-width: 3px;
}
.colorTableWrap.type2 tbody th .thInner .topText {
    font-size: 137.5%;
}
.colorTableWrap.type2 tbody th .thInner .btmText {
    font-size: 112.5%;
    color: #f59b00;
    font-weight: bold;
    border-top: 1px solid;
    padding-top: 0.5rem;
    margin-top: 0.5rem
}
.colorTableWrap table + .tableAnno {
    font-weight: 400;
    margin-top: 1.75rem;
    display: flex;
    flex-direction: column;
    padding-left: 1rem;
    text-indent: -1rem;
}
.stepArea .contWrap .textWrap .iconList li:not(:last-child) {
    margin-bottom: 2rem
}
.stepArea .contWrap .textWrap .iconList li .ttl {
    font-size: 1.5rem;
    color: #ff9c00;
    font-weight: 500;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}
.stepArea .contWrap .textWrap .iconList li .ttl .icon {
    width: 3.5rem;
    text-align: center;
}
.stepArea .contWrap .textWrap .iconList li.web .ttl .icon img {
    width: 55%
}
.stepArea .contWrap .textWrap .iconList li.dome .ttl .icon img {
    width: 80%
}
.stepArea .contWrap .textWrap .iconList li .ttl .text {
    padding-left: 0.75rem
}
.stepArea .contWrap .textWrap .iconList li .textArea {
    line-height: 1.75
}
.stepArea .contWrap .textWrap .iconList li .textArea .text {
    margin-bottom: 1.25rem;
    font-size: 1.125rem
}

.stepArea .contWrap .textWrap .iconList li .textArea .anno {
    font-size: 0.9725rem;
    font-weight: 400;
}
.stepArea .contWrap .textWrap .iconList li .textArea .anno span {
    display: block;
    padding-left: 1rem;
    text-indent: -1rem
}
@media screen and (max-width: 768px) {
    .pointSecWrap {
        padding: 3rem 3% 5rem;
    }
    #pointWrap1 {
        padding-top: 1rem
    }
    
    .stepArea .contWrap .colWrap .textWrap {
        margin-left: 0;
    }
    .useWrap .modalTtlWrap {
        clear: both;
        padding-top: 2rem;
    }
    .colorTableWrap tbody th,
    .colorTableWrap tbody td {
        padding: 0.5rem!important;
    }
    .colorTableWrap thead .bgNone {
        font-size: 125%
    }
}
@media screen and (max-width: 640px) {
    .stepArea > ul > li {
        padding-left: 3%;
    }
    .stepArea .ttlWrap .numWrap {
        width: 6rem;
        padding: 0.325rem 0.9375rem 0
    }
    .stepArea .ttlWrap .textWrap {
        width: calc(100% - 6rem);
        font-size: 0.875rem;
        padding-left: 1rem;
    }
    .stepArea .contWrap {
        padding-left: 0;
    }
}
@media screen and (max-width: 480px) {
    .stepArea .contWrap .colWrap {
        flex-direction: column;
    }
    .stepArea .contWrap .colWrap .imgWrap,.stepArea .contWrap .colWrap .textWrap {
        width: 100%;
    }
    .stepArea .contWrap .colWrap .imgWrap {
        text-align: center;
        margin-bottom: 1.25rem;
        float: none;
    }
    .stepArea .contWrap .colWrap .textWrap .ttl {
        margin-bottom: 1rem;
    }
    .stepArea .contWrap .colWrap .textWrap p.text {
        margin-bottom: 1.25rem;
    }
    .stepArea .contWrap .colWrap .imgWrap img {
        max-width: 200px
    }
    .colorTableWrap table {
        font-size: 70%;
        min-width: 330px;
    }
    .colorTableWrap thead .bgNone {
        width: 25%;
    }
    .colorTableWrap thead th {
        width: 15%;
    }
    .colorTableWrap.type2 table {
        font-size: 62.5%
    }
    .stepArea .ttlWrap {
        margin-bottom: 1.5rem;
    }
    .stepArea .ttlWrap .numWrap {
        width: 5rem;
    }
    .stepArea .ttlWrap .textWrap {
        font-size: 0.65rem;
        width: calc(100% - 5rem);
    }
    .colorTableWrap tbody th, .colorTableWrap tbody td {
        padding: 0.25rem!important;
    }
    .colorTableWrap tbody th {
        
font-size: 90%;
    }
}

/* GIANTS IDとは */
#giants-idWrap2 {
    background: #333;
    overflow: hidden;
}
.giants_id .ttlBlock .ttlLogo {
    width: 4.5625em;
}
.giants-idSecWrap {
    padding: 5rem 2rem;
}
.giants-idSecWrap .secInner {
    max-width: 1080px;
    margin: auto;
}
.savePointTable .tableTtl {
    color: #ff9c00;
    font-weight: 500;
    font-size: 1.375rem;
    margin-bottom: 1rem;
}
.savePointTable table th,
.savePointTable table td {
    border: 2px solid #333;
    color: #000;
    padding: 1rem;
    vertical-align: middle
}
.savePointTable table th {
    background: #ff9c00;
    border-width: 0 2px 2px 0;
    width: 35%;
}
.savePointTable table td {
    background: #fefaf2;
    border: 2px solid #333;
    border-width: 0 0px 2px 0;
    width: 65%;
}
.savePointTable table td span {
    margin-right: 1rem
}
.savePointTable table td .gid {
    display: inline-block;
    color: #f59b00;
    background: #000;
    padding: 0.125rem 0.5rem;
}
.savePointTable .anno {
    font-size: 0.875rem;
    font-weight: 400;
    margin-top: 1rem;
}
.useWrap {
    margin-bottom: 3rem;
}
.useWrap .modalTtlWrap {
    margin-top: 1.5rem;
    margin-bottom: 1.25rem;
}
.useWrap .modalTtlWrap .ttl {
    margin-bottom: 0.5rem!important;
}
.gidLead {
    text-align: center;
    margin: 3rem auto 0;
    max-width: 770px;
}
.giants-idSecWrap .note {
    border: 1px solid #fff;
    padding: 1.25rem;
    max-width: 800px;
    margin: 3rem auto 0;
    text-align: center;
}
.giants-idSecWrap .note .ttl {
    color: #f59b00;
    font-size: 1.375rem;
    margin-bottom: 0.75rem;
}
.giants-idSecWrap .note .text {
    line-height: 1.75;
}
.giants-idSecWrap .btnArea {
    margin-top: 3rem
}
.giants-idSecWrap .btnArea .btn {
    max-width: 530px;
    height: 5rem;
    font-size: 1.375rem;
    border-radius: 100rem;
    padding: 0.5rem 3.5rem;
    margin: auto;
}

.giants-idSecWrap .btnArea .btn .arrow {
    width: 2.25rem;
    right: 1rem;
}
.giants-idPages ul {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-gap: 3.75rem;
}
.giants-idPages ul li {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 0rem 0;
}
.giants-idPages .ttlArea {
    color: #f59b00;
    font-weight: bold;
    margin-bottom: 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.giants-idPages .ttlArea .en {
    font-size: 225%;
}
.giants-idPages .ttlArea .jp {
    font-size: 137.5%;
}
.giants-idPages .img {
    margin-bottom: 2.5rem
}
.giants-idPages .textArea {
    line-height: 1.75;
}
@media screen and (max-width: 768px) {
    .giants-idSecWrap {
        padding: 2rem 3% 5rem;
    }
    .giants-idSecWrap .note {
        margin-top: 1rem;
    }
    .savePointTable {
        clear: both;
        padding-top: 2rem;
    }
    .savePointTable table {
        font-size: 75%;
    }
    .savePointTable table th,
    .savePointTable table td {
        padding: 1rem 0.5rem
    }
    .giants-idPages ul {
        grid-template-columns: repeat(2,1fr);
    }
}

@media screen and (max-width: 500px) {
     #underMain.giants_id {
        margin-top: -3rem;
    }
    .giants-idPages ul {
        grid-template-columns: repeat(1,1fr);
        max-width: 350px;
        margin: auto
    }
    .gidLead {
        margin-top: 1.5rem;
        font-size: 0.925rem;
    }
    #giants-idWrap1 .btnArea {
        margin-top: 1rem;
    }
}


/* チケット先行販売 */

.ticketSecWrap {
    padding: 5rem 2rem;
    padding-top: 5rem;
    overflow: hidden;
}
.ticket .ttlBlock .ttlLogo {
    width: 5.625em
}

.ticketSecWrap .secInner {
    max-width: 1080px;
    margin: auto;
}
.ticketNews > div {
    display: flex;
    border: 1px solid #f59b00;
    /* background: #f59b00; */
    border-radius: 1000px;
    overflow: hidden;
    align-items: stretch;
    margin-bottom: 5rem;
}
.ticketNews > div dt {
    background: #f59b00;
    color: #000;
    font-size: 2rem;
    font-size: 200%;
    font-weight: bold;
    letter-spacing: 0.25rem;
    width: 8em;
    text-align: center;
    padding: 1rem 2rem;
    display: flex;
    /* height: 100%; */
    align-items: center;
    justify-content: center;
}
.ticketNews > div dd {
    padding: 0.5rem 1.5rem;
    line-height: 1.75;
    width: calc(100% - 16rem);
    background: #000;
    display: flex;
    align-items: center;
    width: auto;
}
#ticketWrap1 {
    padding-top: 0;
    padding-top: 3rem;
}
#ticketWrap2 {
    background: #333;
    margin-top: 0;
}
.benefitCol ul {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-gap: 5.556%;
}

.benefitCol ul li {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    grid-gap: 1.5rem;
}
.benefitCol ul li .ttlWrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    /* justify-content: center; */
    font-size: 1.375rem;
    line-height: 1.6;
}
.benefitCol ul li .ttlWrap .orangeBg {
    color: #000;
    background: #f59b00;
    padding: 0.125rem 1rem;
    font-weight: bold;
    margin-bottom: 0.75rem;
}
.btnTextsArea {
    margin-top: 5.5rem;
}
.btnTextsArea .lead {
    font-size: 1.375rem;
    text-align: center;
    margin-bottom: 2rem
}
.btnTextsArea > .text {
    text-align: center;
    margin-top: 3rem
}
.btnTextsArea .btn {
    height: 5rem;
    font-size: 1.375rem;
    border-radius: 100rem;
    padding: 0.5rem 3.5rem;
    max-width: 37.5rem;
    margin: auto;
}
.btnTextsArea .btn .arrow {
    width: 2.25rem;
    height: 2.25rem;
    right: 0.75rem;
}
@media screen and (max-width: 768px) {
    .ticket #mainVisual .img > img {
        /* width: 850px;
        max-width: 850px; */
    }
    .benefitCol ul {
        grid-template-columns: repeat(2,1fr);
        grid-gap: 3rem
    }
    .ticketSecWrap {
        padding: 3rem 5%;
    }
    #ticketWrap1 {
        margin-top: 1rem;
    }
    .ticketNews > div {
        margin-bottom: 3rem;
    }
}
@media screen and (max-width: 500px) {
    .benefitCol ul {
        grid-template-columns: repeat(1,1fr);
        grid-gap: 3rem;
        max-width: 320px;
        margin: auto;
    }
    .ticketNews > div dt {
        font-size: 120%;
        width: 7.2rem;
        padding: 1em;
        letter-spacing: 0;
    }
    .btnTextsArea .lead {
        font-size: 1.125rem;
    }
    .benefitCol ul li .ttlWrap {
        
font-size: 1.25rem;
    }
}
/* グッズモーダル */
.modalList {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-columns: repeat(6, 1fr);
    grid-gap: 1.75rem;
}
.useWrap .modalList {
    grid-template-columns: repeat(3, 1fr);
}
.modalList li {
    display: grid
}
.modalList a {
    /* display: grid; */
    /* grid-template-rows: subgrid; */
    /* grid-row: span 3; */
    /* gap: 0rem 0; */
    line-height: 1.75;
    text-align: center;
    /* padding: 0.5rem; */
    border: 1px solid;
    border-width: 1px 0 0 1px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: 0.25s opacity;
}
.modalList a.comingSoon {
    pointer-events: none
}
.modalList a:hover {
    opacity: 0.8
}
.modalList a .img {
    padding: 0.625rem;
    position: relative;
}
.modalList a .img img {
    background: #fff
}
.modalList a .img .icon {
    display: block;
    position: absolute;
    width: 22%;
    /* height: 15%; */
    background: #333 url(/sp/FC/images/common/icon_search.svg) no-repeat center;
    background-size: 60%;
    bottom: 0.625rem;
    right: 0.625rem;
    aspect-ratio: 1/1;
}
.modalList a.comingSoon .img .icon {
    display: none
}
.modalList a .point {
    font-size: 1.3125rem;
    padding: 0.25rem 0.125rem;
    height: 1.5em;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}
.modalList a .textArea {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
    /* place-content: center; */
    padding: 0.5rem 0.25rem;
    font-feature-settings: "palt";
    flex-direction: column;
    padding: 0.2rem;
    line-height: 1.4;
}
.modalList a .textArea .small {
    font-size: 80%
}
@media screen and (max-width: 960px) {
    .modalList {
        grid-template-columns: repeat(5, 1fr);
    }
}
@media screen and (max-width: 768px) {
    .modalList {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media screen and (max-width: 500px) {
    .modalList {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 0.75rem;
    }
    .modalList a .textArea {
        font-size: 0.85rem;
    }
    .modalList a .point {
        font-size: 1.125rem;
    }
}

.bdSec {
	position: relative;
	/* overflow: hidden; */
	display: block;
}
.bdSec:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 1.5rem;
	height: calc(100% - 1rem);
	background: #f59b00;
	transform: skewY(-60deg);
	z-index: 10;
}
.bdSec.top:before {
	height: calc(100% + 1rem);
	top: -2rem;
}
.bdSec:has(.noImg):before {
	height: calc(100% + 3rem);
	top: -4rem;
}
.grandslamMember .bdSec:before ,.bdSec.grandslam:before { background: #ccc}
.goldMember .bdSec:before ,.bdSec.gold:before { background: #c8a977}
.silverMember .bdSec:before ,.bdSec.silver:before { background: #6e8c96}
.kidsMember .bdSec:before ,.bdSec.kids:before {background: #8cc832;}
.bronzeMember .bdSec:before ,.bdSec.bronze:before {background: #b44628;}

@media screen and (max-width: 1200px) {
	.bdSec:has(#mainVisual:not(.noImg)):before {
		display:none;
	}
	.bdSec:before {
		width: 1rem
	}
	.bdSec {
		padding-left: 1rem
	}
}
/* 共通class */
.dilb {
    display: inline-block;
}

.fll {
    float: left;
}

.tal {
    text-align: left;
}

.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

.small {
    /* font-size: 90% */
}
.orange {
    color: #f59b00
}
.red {
    color: #f00
}
.mt0 {margin-top: 0 !important;}
.mt10 {margin-top: 0.625rem !important;}
.mt20 {margin-top: 1.25rem !important;}
.mt30 {margin-top: 1.875rem !important;}
.mt40 {margin-top: 2.5rem !important;}
.mt50 {margin-top: 3.125rem !important;}
.mt60 {margin-top: 3.75rem !important;}
.mt70 {margin-top: 4.375rem !important;}
.mt80 {margin-top: 5rem !important;}
.mt90 {margin-top: 5.625rem !important;}
.mt100 {margin-top: 6.25rem !important;}

.mb0 {margin-bottom: 0 !important;}
.mb10 {margin-bottom: 0.625rem !important;}
.mb20 {margin-bottom: 1.25rem !important;}
.mb30 {margin-bottom: 1.875rem !important;}
.mb40 {margin-bottom: 2.5rem !important;}
.mb50 {margin-bottom: 3.125rem !important;}
.mb60 {margin-bottom: 3.75rem !important;}
.mb70 {margin-bottom: 4.375rem !important;}
.mb80 {margin-bottom: 5rem !important;}
.mb90 {margin-bottom: 5.625rem !important;}
.mb100 {margin-bottom: 6.25rem !important;}

.w1p {width: 1%!important;}
.w2p {width: 2%!important;}
.w3p {width: 3%!important;}
.w4p {width: 4%!important;}
.w5p {width: 5%!important;}
.w6p {width: 6%!important;}
.w7p {width: 7%!important;}
.w8p {width: 8%!important;}
.w9p {width: 9%!important;}
.w10p {width: 10%!important;}
.w11p {width: 11%!important;}
.w12p {width: 12%!important;}
.w13p {width: 13%!important;}
.w14p {width: 14%!important;}
.w15p {width: 15%!important;}
.w16p {width: 16%!important;}
.w17p {width: 17%!important;}
.w18p {width: 18%!important;}
.w19p {width: 19%!important;}
.w20p {width: 20%!important;}
.w21p {width: 21%!important;}
.w22p {width: 22%!important;}
.w23p {width: 23%!important;}
.w24p {width: 24%!important;}
.w25p {width: 25%!important;}
.w26p {width: 26%!important;}
.w27p {width: 27%!important;}
.w28p {width: 28%!important;}
.w29p {width: 29%!important;}
.w30p {width: 30%!important;}
.w31p {width: 31%!important;}
.w32p {width: 32%!important;}
.w33p {width: 33%!important;}
.w34p {width: 34%!important;}
.w35p {width: 35%!important;}
.w36p {width: 36%!important;}
.w37p {width: 37%!important;}
.w38p {width: 38%!important;}
.w39p {width: 39%!important;}
.w40p {width: 40%!important;}
.w41p {width: 41%!important;}
.w42p {width: 42%!important;}
.w43p {width: 43%!important;}
.w44p {width: 44%!important;}
.w45p {width: 45%!important;}
.w46p {width: 46%!important;}
.w47p {width: 47%!important;}
.w48p {width: 48%!important;}
.w49p {width: 49%!important;}
.w50p {width: 50%!important;}
.w51p {width: 51%!important;}
.w52p {width: 52%!important;}
.w53p {width: 53%!important;}
.w54p {width: 54%!important;}
.w55p {width: 55%!important;}
.w56p {width: 56%!important;}
.w57p {width: 57%!important;}
.w58p {width: 58%!important;}
.w59p {width: 59%!important;}
.w60p {width: 60%!important;}
.w61p {width: 61%!important;}
.w62p {width: 62%!important;}
.w63p {width: 63%!important;}
.w64p {width: 64%!important;}
.w65p {width: 65%!important;}
.w66p {width: 66%!important;}
.w67p {width: 67%!important;}
.w68p {width: 68%!important;}
.w69p {width: 69%!important;}
.w70p {width: 70%!important;}
.w71p {width: 71%!important;}
.w72p {width: 72%!important;}
.w73p {width: 73%!important;}
.w74p {width: 74%!important;}
.w75p {width: 75%!important;}
.w76p {width: 76%!important;}
.w77p {width: 77%!important;}
.w78p {width: 78%!important;}
.w79p {width: 79%!important;}
.w80p {width: 80%!important;}
.w81p {width: 81%!important;}
.w82p {width: 82%!important;}
.w83p {width: 83%!important;}
.w84p {width: 84%!important;}
.w85p {width: 85%!important;}
.w86p {width: 86%!important;}
.w87p {width: 87%!important;}
.w88p {width: 88%!important;}
.w89p {width: 89%!important;}
.w90p {width: 90%!important;}
.w91p {width: 91%!important;}
.w92p {width: 92%!important;}
.w93p {width: 93%!important;}
.w94p {width: 94%!important;}
.w95p {width: 95%!important;}
.w96p {width: 96%!important;}
.w97p {width: 97%!important;}
.w98p {width: 98%!important;}
.w99p {width: 99%!important;}
.w100p {width: 100%!important;}

.fc-red { color: #eb1c24}

@media screen and (max-width: 768px) {
	.pc {display: none;}
}

@media screen and (min-width: 769px) {
	.sp {display: none;}
}

@media screen and (max-width: 640px) {
	.o640 {display: none;}
}

@media screen and (min-width: 641px) {
	.u640 {display: none;}
}

@media screen and (max-width: 480px) {
	.o480 {display: none;}
}

@media screen and (min-width: 481px) {
	.u480 {display: none;}
}

@media screen and (max-width: 320px) {
	.o320 {display: none;}
}

@media screen and (min-width: 321px) {
	.u320 {display: none;}
}