@charset "utf-8";

:root {
    --c-black: #010101;
    --c-red: #e60012;
    --c-title-blue: #5eb7e8;
    --c-news-blue: #047bbc;
    --c-white: #fff;
    --font-base: "ryo-gothic-plusn", 'Century Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'Yu Gothic', Meiryo, sans-serif;
    --font-r-weight: 400;
    --font-m-weight: 500;
    --font-b-weight: 700;
    --font-h-weight: 800;
    --font-uh-weight: 900;
    --transition-time: 0.4s all;
    --transition-opacity: 0.7;
}
* {
    box-sizing: border-box;
}
html,body,h1,h2,h3,h4,h5,ul,ol,dl,p,dd{
	margin:0;
	padding:0;
	list-style:none;
}
html,body{
    font-family: var(--font-base);
	color:#000;
	font-weight:normal;
	text-align:left;
}
.cf:after {
	content:" ";
	display:block;
	clear:both;
}
html {
	font-size: 62.5%;
}
body {
	font-size: 1.0rem;
    line-height: 1.2;
}
img {
	border: 0;
	vertical-align: bottom;
}
a {
	color: #428bca;
    text-decoration: none;
    transition: var(--transition-time);
}
a:hover {
    opacity: var(--transition-opacity);
}
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
i { font-style: normal; }

/*----------------------------
共通部品
-----------------------------*/
.pc_only { display: block!important; }
.sp_only { display: none!important; }
/*----------------------------
ヘッダー
-----------------------------*/
header {
    position: sticky;
    top: 0;
    background: var(--c-news-blue);
    padding: 12px 20px 20px;
    height: 80px;
    width: 100%;
    z-index: 99;
}
#l-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
#l-headerMenu {
    display: flex;
    align-items: center;
    gap: 29px;
}
#l-headerMenu ul {
    display: flex;
    gap: calc(100vw * 0.02);
}
#l-headerMenu ul li a {
    color: var(--c-white);
    display: inline-flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    font-size: 0.9rem;
    font-weight: var(--font-m-weight);
    text-align: center;
}
#l-headerMenu ul li a::before {
    color: var(--c-white);
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1;
    text-transform: uppercase;
    content: attr(data-title);
}
#l-headerEntry {
    background: var(--c-white);
    display: grid;
    place-content: center;
    border-radius: 20px;
    height: 40px;
    width: 239px;
	opacity: 0.7;
}
#l-headerEntry span {
    display: block;
    color: var(--c-news-blue);
    font-size: 1.5rem;
    font-weight: var(--font-uh-weight);
}
#l-headerEntry a {
    background: var(--c-white);
    display: grid;
    place-content: center;
    border-radius: 20px;
    height: 40px;
    width: 239px;
}
#l-headerEntry a span {
    display: block;
    color: var(--c-news-blue);
    font-size: 1.5rem;
    font-weight: var(--font-uh-weight);
}
#l-headerEntry a span::after {
    display: inline-block;
    filter: invert(47%) sepia(90%) saturate(5898%) hue-rotate(182deg) brightness(92%) contrast(97%);
    background-image: url("../img/icon_link.svg");
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    height: 16px;
    width: 17px;
    margin-left: 12px;
    vertical-align: text-bottom;
}
#l-spmenuOpen {
    display: none;
}
#g-nav{
    position:fixed;
	z-index: -1;
    display: none;
	top:0;
    left: 0;
	width:100%;
    height: 100vh;
	background: rgba(4, 123, 188, 0.95);
    transition: var(--transition-time);
}
#g-nav.panelactive{
    display: none;
	z-index:999;
}
#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 99;
    width: 100%;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
#g-nav-logo {
    text-align: center;
    margin: 64px 0 30px;
}
#g-nav ul {
    width: 100%;
}
#g-nav li {
    padding: 15px 0;
    text-align: center;
}
#g-nav li:not(:last-child) {
    border-bottom: 1px solid #419aca;
}
#g-nav li a {
    color: var(--c-white);
    display: inline-flex;
    flex-direction: column;
    gap: 18px;
    align-items: center;
    font-size: 1.2rem;
    font-weight: var(--font-m-weight);
    text-align: center;
}
#g-nav li a::before {
    color: var(--c-white);
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1;
    text-transform: uppercase;
    content: attr(data-title);
}
#g-nav-btn {
    margin: 18px auto 0;
    width: 80%;
    padding-bottom: 40px;
}
#g-nav-btn a {
    background: var(--c-white);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    width: 100%;
}
#g-nav-btn a span {
    display: flex;
    align-items: center;
    color: var(--c-news-blue);
    font-size: 2.4rem;
    font-weight: var(--font-uh-weight);
}
#g-nav-btn a span::after {
    display: inline-block;
    filter: invert(47%) sepia(90%) saturate(5898%) hue-rotate(182deg) brightness(92%) contrast(97%);
    background-image: url("../img/icon_link.svg");
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    height: 25px;
    width: 27px;
    margin-left: 18px;
}
/*----------------------------
フッター
-----------------------------*/
footer {
    color: var(--c-white);
    background: #000;
}
#c-footer {
    padding: 34px 0 40px;
    text-align: center;
}
#c-footerTitle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
}
#c-footerTitle span {
    font-size: 1.5rem;
    font-weight: var(--font-b-weight);
}
#c-footerTitle::before {
    display: inline-block;
    content: "";
    background-image: url(../img/icon_mail.svg);
    background-repeat: no-repeat;
    background-size: contain;
    height: 22px;
    width: 22px;
}
#c-footer dl {
    margin-top: 22px;
}
#c-footer dl dt {
    font-size: 1.5rem;
    font-weight: var(--font-b-weight);
    line-height: 2;
}
#c-footer dl dd {
    font-size: 1.4rem;
    line-height: 2;
}
#c-footer dl dd a {
    color: var(--c-white);
    font-weight: var(--font-b-weight);
}

/*----------------------------
コンテンツ
-----------------------------*/
.p-slide picture {
    display: block;
}
.p-slide img {
    height: 100%;
    width: 100%;
}

.c-titleBlock {
    text-align: center;
}
.c-title {
    color: var(--c-title-blue);
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
    align-items: center;
    font-size: 1.5rem;
    font-weight: var(--font-m-weight);
}
.c-title::before {
    font-size: 5rem;
    font-weight: var(--font-b-weight);
    line-height: 1;
    text-transform: uppercase;
    content: attr(data-title);
}
.c-entryBtn {
    margin: 90px auto 0;
    width: 358px;
}
.c-entryBtn-price {
    margin: 30px auto 0;
    width: 358px;
}
.c-entryBtn-aid {
    margin: 30px auto 0;
    width: 500px;
}
.c-entryBtn i, .c-entryBtn-price i {
    background: var(--c-news-blue);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    width: 358px;
	opacity: 0.7;
}
.c-entryBtn a {
    background: var(--c-news-blue);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    width: 358px;
}
.c-entryBtn-aid i {
    background: var(--c-news-blue);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    width: 500px;
	opacity: 0.7;
}
.c-entryBtn i span, .c-entryBtn-price i span, .c-entryBtn-aid i span {
    display: block;
    color: var(--c-white);
    font-size: 2.3rem;
    font-weight: var(--font-uh-weight);
}
.c-entryBtn-aid a {
    background: var(--c-news-blue);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    width: 500px;
}
.c-entryBtn a span, .c-entryBtn-price a span, .c-entryBtn-aid a span {
    display: block;
    color: var(--c-white);
    font-size: 2.3rem;
    font-weight: var(--font-uh-weight);
}
.c-entryBtn a span {
    display: block;
    color: var(--c-white);
    font-size: 2.3rem;
    font-weight: var(--font-uh-weight);
}
.c-entryBtn a span::after, .c-entryBtn-price a span::after, .c-entryBtn-aid a span::after {
    display: inline-block;
    filter: invert(100%) sepia(2%) saturate(10%) hue-rotate(45deg) brightness(105%) contrast(105%);
    background-image: url("../img/icon_link.svg");
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    height: 24px;
    width: 25px;
    margin-left: 14px;
    vertical-align: text-bottom;
}
.c-pdfBtn {
    margin: 45px auto 0;
    width: 358px;
}
.c-pdfBtn02 {
    margin: 10px auto 20px !important;
}
.c-pdfBtn a {
    background: var(--c-news-blue);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    width: 358px;
}
.c-pdfBtn a span {
    display: flex;
    align-items: center;
    color: var(--c-white);
    font-size: 2.3rem!important;
    font-weight: var(--font-uh-weight);
}
.c-pdfBtn a span::after {
    display: inline-block;
    background-image: url("../img/icon_pdf.svg");
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    height: 35px;
    width: 29px;
    margin-left: 14px;
    vertical-align: text-bottom;
}


.p-days {
    background: var(--c-title-blue);
    padding: 75px 0 70px;
}
.p-days p {
    color: var(--c-white);
    font-size: 7.5rem;
    font-weight: var(--font-b-weight);
    text-align: center;
}
.p-days span {
    display: inline-block;
    margin-left: 12px;
}
.p-news {
    background: #eff4f6;
    padding: 55px 0 50px;
}
.p-newsSlider {
    position: relative;
    margin: 50px auto 0;
    max-width: 800px;
    width: 100%;
}
.news-arrows svg {
    display: none;
}
.news-arrows button {
    cursor: pointer;
    border: none;
    background-color: transparent;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    height: 30px;
    width: 30px;
}
.news-prev {
    background-image: url(../img/icon_arrow_left.svg);
    left: -60px;
}
.news-next {
    background-image: url(../img/icon_arrow_right.svg);
    right: -60px;
}
.p-news li {
    background: var(--c-white);
}
.p-news li a {
    display: block;
    padding: 10px 9px 4px;
    width: 250px;
}
.p-news li picture {
    display: block;
    text-align: center;
}
.p-news li picture a:hover {
    opacity: 1;
}
.p-news li .c-newsTime {
    display: block;
    color: #6d6d6d;
    font-size: 1.1rem;
    margin: 14px 0;
}
.p-news li .c-newsTitle {
    color: var(--c-news-blue);
    font-size: 1.4rem;
    font-weight: var(--font-b-weight);
    margin: 14px 0;
}
.p-news li .c-newsTitle {
    color: var(--c-news-blue);
    font-size: 1.4rem;
    font-weight: var(--font-b-weight);
}
.p-news li .c-newsText {
    color: var(--c-black);
    font-size: 1.3rem;
    font-weight: var(--font-r-weight);
    line-height: 1.5;
	margin-bottom: 5px;
}

.p-about {
    padding-top: 65px;
}
.p-about .c-title {
    gap: 12px;
}
.p-aboutLead {
    text-align: center;
    padding: 65px 0 40px;
}
.p-aboutLead p {
    font-size: 2rem;
    font-weight: var(--font-r-weight);
    text-align: center;
    line-height: 2;
}
.p-aboutLead p span {
    font-weight: var(--font-b-weight);
}
.p-aboutVs {
    background-position: center bottom;
    background-size: cover;
    height: 265px;
    width: 100%;
}
.webp .p-aboutVs {
    background-image: url(../img/about_vs_25.webp);
}
.no-webp .p-aboutVs {
    background-image: url(../img/about_vs_25.jpg);
}
.p-about__btn {
    margin: 0 auto;
    padding: 16px 0;
    width: 95%;
}
.p-about__btn ul {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 4px;
}
.p-about__btn ul li {
    width: 247px;
}
.p-about__btn ul li img {
    height: auto;
    width: 100%;
}
.p-about__event {
    background-repeat: repeat;
    background-size: 1200px 1523px;
    padding: 65px 0 90px;
}
.webp .p-about__event {
    background-image: url(../img/bg_wave.webp);
}
.no-webp .p-about__event {
    background-image: url(../img/bg_wave.jpg);
}
.p-about__event .c-title {
    font-weight: var(--font-r-weight);
    gap: 10px;
    margin-bottom: 45px;
}
.p-about__event .c-title::before {
    font-size: 2.5rem;
}
.p-about__eventCol {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1000px;
    width: 100%;
}
.p-about__eventColRev {
    flex-direction: row-reverse;
}
.p-about__eventCol .p-about__eventPic {
    flex-shrink: 0;
    width: 440px;
}
.p-about__eventCol .p-about__eventText {
    width: 480px;
}
.p-about__eventCol .p-about__eventText p {
    margin-top: -8px;
    font-size: 1.7rem;
    font-weight: var(--font-r-weight);
    line-height: 2.05;
}
.p-about__eventCol .p-about__eventText p span {
    font-weight: var(--font-b-weight);
}
.p-about__eventCol .p-about__eventText p i {
    display: inline-block;
}
.p-about__eventCol dl {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}
.p-about__eventCol dl dt {
    flex-shrink: 0;
    width: 100px;
	line-height: 2.2rem;
}
.p-about__eventCol dl dt span {
    font-size: 1.7rem;
    font-weight: var(--font-b-weight);
}
.p-about__eventCol dl dt span::after {
    content: "：";
}
.p-about__eventCol dl dd {
    font-size: 1.7rem;
    font-weight: var(--font-r-weight);
	line-height: 2.2rem;
    margin-bottom: 20px;
    width: calc(100% - 100px);
}
.p-about__eventCol dl dd u {
    text-decoration: none;
}
.p-about__eventCol dl dd span {
    display: block;
    font-size: 1.4rem;
    margin-top: 8px;
}
.p-about__eventCol dl dd span i,
.p-about__eventCol dl dd > i {
    margin-right: 14px;
}
.p-about__eventCol ul {
    margin-top: 0px;
    display: flex;
    gap: 0px;
}
.p-about__eventCol ul li {
	display: table-cell;
	vertical-align: middle;
}
.p-about__sponsorship {
    background: #fff;
    border-radius: 20px;
	box-shadow: 0 0 3px 2px rgba(0,0,0,0.1);
    padding: 30px 0;
    margin: 43px auto 0;
    max-width: 1000px;
    width: 95%;
}
.p-about__sponsorshipTitle {
    display: block;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}
.p-about__sponsorshipList {
    display: flex;
    justify-content: center;
    margin-top: 12px;
    gap: 10px;
}
.p-about__sponsorshipList li {
    max-width: 240px;
    width: calc(94% / 5);
}
.p-about__sponsorshipList li:first-child {
    max-width: 180px;
}
.p-about__sponsorshipList li img {
    height: auto;
    width: 100%;
}
.p-about__sponsorshipList li span {
    font-size: 130%;
}
.p-about__sponsorshipName {
    display: block;
    font-size: 1.4rem;
    line-height: 1.4;
    margin-top: 8px;
    text-align: center;
}
.p-about__sponsorshipName i {
    display: inline-block;
    font-style: normal;
}
.txtonlyco {
	margin-top: 30px;
}
.p-about__eventSubTitle {
    position: relative;
    color: var(--c-title-blue);
    font-size: 2.5rem;
    line-height: 1;
    padding: 75px 0 26px;
    margin-bottom: 48px;
    text-align: center;
}
.p-about__eventSubTitle::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    background: var(--c-title-blue);
    border-radius: 2px;
    height: 5px;
    width: 94px;
}
.p-about__eventSection {
    margin-top: 12px;
}

.p-course .c-titleBlock {
    background: var(--c-title-blue);
    padding: 34px 0 30px;
}
.p-course .c-title {
    color:var(--c-white);
}
.p-course__map {
    margin: 50px auto 90px;
    width: 1000px;
}
.p-course__mapWrap {
    display: none;
    aspect-ratio: 25 / 12;
    width: 100%;
}
.p-course__mapWrap iframe {
    border: none;
    height: 100%;
    width: 100%;
}
.p-course__map01 {
    display: block;
}
.p-course__btn {
    margin-top: 36px;
}
.p-course__btn ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 20px;
}
.p-course__btn ul {
    width: 100%;
}
.p-course__btn li {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--c-news-blue);
    border: 5px solid var(--c-news-blue);
    border-radius: 50px;
    box-sizing: border-box;
    padding: 12px 0 12px 18px;
    height: 50px;
    width: 31.9%;
}
.p-course__btn li.toire {
    background: var(--c-red);
    border: 5px solid var(--c-red);
}
.p-course__btn li span:first-of-type {
    display: block;
    filter: brightness(0) invert(1);
}
.p-course__btn li span:last-of-type {
    color: var(--c-white);
    font-size: 1.6rem;
    font-weight: var(--font-uh-weight);
}
.p-course__btn li:hover,
.p-course__btn li.--active {
    background: var(--c-white);
}
.p-course__btn li:hover span:first-of-type,
.p-course__btn li.--active span:first-of-type {
    filter: none;
}
.p-course__btn li:hover span:last-of-type,
.p-course__btn li.--active span:last-of-type {
    color: var(--c-news-blue);
}
.p-course__btn li.toire:hover span:last-of-type,
.p-course__btn li.toire.--active span:last-of-type {
    color: var(--c-red);
}
.p-course__app {
    background: #e7eeef;
    border-radius: 10px;
    padding: 40px 110px 47px;
    margin-top: 75px;
}
.p-course__appTitle {
    margin-bottom: 50px;
}
.p-course__appTitle img {
    height: auto;
    width: 100%;
}
.p-course__appStart {
    text-align: center;
}
.p-course__appStart span {
    display: block;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 14px;
}
.p-course__appStart i {
    display: inline-block;
    font-style: normal;
}
.p-course__appStart a {
    display: block;
    margin: 0 auto;
    max-width: 335px;
}
.p-course__appStart a img {
    height: auto;
    width: 100%;
}
.p-course__appAtt {
    margin: 18px 0 32px;
}
.p-course__appAtt li {
    display: flex;
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 4px;
}
.p-course__appAtt li::before {
    flex-shrink: 0;
    content: "※";
}
.p-course__appBtn ul {
    display: flex;
    justify-content: center;
    gap: 20px;
}
.p-course__appBtn li {
    max-width: 179px;
}
.p-course__appBtn li img {
    height: auto;
    width: 100%;
}

.p-specials .c-titleBlock {
    background: var(--c-title-blue);
    padding: 34px 0 30px;
}
.p-specials .c-title {
    color:var(--c-white);
}
.p-specialsInner {
    background-repeat: repeat;
    background-size: 1200px 987px;
    padding: 66px 0 70px;
}
.backgroundDot {
    background-image: url(../img/bg_dots.webp);
}
.backgroundDot02 {
    background-image: url(../img/bg_dots02.webp);
}
.backgroundDot03 {
    background-image: url(../img/bg_dots03.webp);
}
.backgroundDot04 {
    background-image: url(../img/bg_dots04.webp);
}
.p-specialsTitle {
    text-align: center;
    margin-bottom: 82px;
}
.p-specialsTitle h3 {
    font-size: 4rem;
    font-weight: var(--font-b-weight);
    line-height: 1;
}
.p-specialsTitle h3 {
    background-position: center 6px;
    background-repeat: no-repeat;
    background-size: 367px 30px;
}
.p-specialsTitle h3.influ {
    background-size: 440px 30px;
}
.webp .p-specialsTitle h3 {
    background-image: url(../img/bg_bicycle.webp);
}
.no-webp .p-specialsTitle h3 {
    background-image: url(../img/bg_bicycle.png);
}
.webp .p-specialsTitle h3.influ {
    background-image: url(../img/bg_bicycle_influ.webp) !important;
}
.no-webp .p-specialsTitle h3.influ {
    background-image: url(../img/bg_bicycle_influ.png) !important;
}
.p-specialsTitle span {
    display: inline-block;
    font-size: 1.5rem;
    margin-top: 16px;
}
.p-special__Text {
    text-align: center;
    margin-bottom: 82px;
}
.p-special__Text p {
    margin-top: -30px;
    font-size: 1.7rem;
    font-weight: var(--font-r-weight);
    line-height: 2.05;
}
.p-special__Text p span {
    display: inline-block;
	text-decoration: underline;
	text-underline-offset: 10px;
	text-decoration-thickness: 1px;
}
.p-specialsGuestIntro {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 50px;
    max-width: 1000px;
}
.p-specialsGuestIntroPic {
    flex-shrink: 0;
    width: 523px;
}
.p-specialsGuestIntroText {
    width: 440px;
}
.p-specialsGuestIntroName {
    display: block;
    border-bottom: 1px solid #ccc;
    color: #5eb7e8;
    font-size: 3rem;
    font-weight: var(--font-b-weight);
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.p-specialsGuestIntroName span {
    font-size: 1.5rem;
    margin-left: 10px;
}
.p-specialsGuestIntroWorks {
    font-size: 1.5rem;
    font-weight: var(--font-b-weight);
    line-height: 1.667;
    margin-bottom: 10px;
}
.p-specialsGuestIntrocourse_guest {
    font-size: 1.5rem;
    font-weight: var(--font-b-weight);
    line-height: 1.667;
    margin-bottom: 23px;
}
.p-specialsGuestIntrocourse {
    font-size: 1.5rem;
    font-weight: var(--font-b-weight);
    line-height: 1.667;
    margin-bottom: 23px;
}
.p-specialsGuestIntroProf {
    margin-bottom: 25px;
}
.p-specialsGuestIntroProf p {
    font-size: 1.5rem;
    line-height: 1.667;
}
.p-specialsGuestIntroLink {
    font-size: 1.5rem;
    line-height: 1.667;
}
.p-specialsGuestIntroLink a {
    color: #047bbc;
    font-weight: var(--font-b-weight);
}
.p-specialsGuestIntroProf p + p {
    margin-top: 1.667rem;
}

.p-specialsGuestIntroSns {
    display: flex;
    gap: 10px;
}
.p-specialsGuestList hr {
    background: #5eb7e8;
    border: none;
    border-radius: 5px;
    margin-bottom: 50px;
    height: 5px;
    width: 94px;
}
.p-specialsAid {
    margin: 40px auto 60px;
    max-width: 1000px;
}
.p-specialsAidLead {
	display: block;
	text-align: center;
}
.p-specialsAidLead p {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
	text-align: left;
	display: inline-block;
}
.p-specialsAidLead p.exp {
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1.5;
	text-align: left;
	display: inline-block;
	margin-top: 20px;
}
.p-specialsAidImage {
    margin: 55px 0 45px;
}
.wcamp {
    margin: 0px 0 20px !important;
}
.p-specialsAidImage ul {
    display: flex;
    flex-wrap: wrap;
    row-gap: 14px;
    justify-content: space-between;
}
.p-specialsAidText {
    display: flex;
	margin-top: 20px;
}
.p-specialsAidText ul {
    margin-left: 60px;
    width: 440px;
}
.p-specialsAidText li {
    line-height: 2;
}
.p-specialsAidText li span:first-of-type {
    font-size: 1.5rem;
    font-weight: bold;
}
.p-specialsAidText li span:first-of-type::after {
    content: "：";
}
.p-specialsAidText li span:last-of-type {
    font-size: 1.5rem;
	line-height: 1.7rem;
}
.p-specialsAidPickup {
    background: var(--c-white);
    border-radius: 10px;
    padding: 25px 0 30px;
    margin: 45px 0 35px;
    text-align: center;
}
.p-specialsAidPickup span {
    display: block;
    font-size: 3.3rem;
    font-weight: bold;
}
.p-specialsAidPickup span:first-of-type {
    margin-bottom: 20px;
}
.p-specialsAidPickup span:first-of-type b {
    color: var(--c-news-blue);
    font-size: 4rem;
}
.p-specialsAidPickup span:last-of-type b {
    color: var(--c-news-blue);
}
.p-specialsAidNotes ul li {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-left: 1em;
    text-indent: -1em;
    margin-bottom: 8px;
}
.p-specialsAidNotes ul li::before {
    content: "※";
}
.p-specialsAidResult {
    padding: 0;
    margin: 45px 0 35px;
    text-align: center;
}
.p-specialsAidResult source,
.p-specialsAidResult img {
    display: block;
    height: auto;
    width: 100%;
}

.myfirstk1 {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    margin: 50px 0 0;
    max-width: 1000px;
}
.myfirstk1Pic {
    flex-shrink: 0;
    width: 220px;
}
.myfirstk1Text {
    max-width: 440px;
}
.myfirstk1Works {
    font-size: 2.0rem;
    font-weight: var(--font-b-weight);
    line-height: 2.0;
    margin-bottom: 15px;
}
.myfirstk1Prof {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-bottom: 10px;
}
.myfirstk1Prof p {
    margin-bottom: 10px;
}

.sankasyou {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    margin: 10px 0 30px;
    max-width: 1000px;
}
.sankasyouPic {
    flex-shrink: 0;
    width: 330px;
}


.p-outline .c-titleBlock {
    background: var(--c-title-blue);
    padding: 34px 0 30px;
}
.p-outline .c-title {
    color:var(--c-white);
}
.p-outlineAccordion ul {
    margin: 0 auto;
    max-width: 1000px;
    width: 100%;
}
.p-outlineInner {
    border-bottom: 1px solid #cee9f8;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 55px 0;
}
.p-outlineInnerTitle {
    cursor: pointer;
    display: flex;
    align-items: center;
    font-size: 2rem;
    font-weight: var(--font-b-weight);
    width: 29%;
}
.p-outlineInnerTitle::before {
    display: inline-block;
    content: "";
    background-image: url(../img/icon_plus.svg);
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    height: 27px;
    margin-right: 8px;
    width: 27px;
}
.p-outlineInnerTitle span {
    font-size: 1.4rem;
}
.is-open::before {
    background-image: url(../img/icon_minus.svg);
}
.p-outlineInnerExp {
    display: none;
    width: 68.5%;
}
.is-open + .p-outlineInnerExp {
    display: block;
}
.p-outlineInnerExp ol li {
    display: flex;
    justify-content: space-between;
    width: 345px;
}
.p-outlineInnerExp ol li span,
.p-outlineInnerExp ul li span {
    font-size: 1.6rem;
    line-height: 2;
}
.p-outlineInnerExp ul.ul-kikan li span:first-child {
    font-weight: var(--font-b-weight);
    margin-right: 16px;
}
.p-outlineComment {
    margin-top: 2px;
    font-size: 1.4rem;
    line-height: 2;
	padding-left:1em;
	position:relative;
}
.p-outlineComment::before {
    content: "※";
	position:absolute;
	left:0;
	top:0;
}
.p-outlineLead,
.p-outlineText {
    font-size: 1.6rem;
    line-height: 2;
}
.p-outlineLead b {
    color: var(--c-red);
    font-weight: var(--font-b-weight);
}
.p-outlineLead i {
    display: inline-block;
}
.p-outlineText span {
    font-weight: var(--font-b-weight);
}
.p-outlinePriceLead {
    margin-bottom: 48px;
}
.p-outlinePrice {
    margin-top: 40px;
    position: relative;
    background: #f9f9f9;
    border-radius: 10px;
    padding: 15px;
}
.p-outlinePriceEarly {
    background: #fff6d1;
}
.p-outlinePrice .p-outlinePriceTitle {
    font-size: 2.1rem;
    line-height: 1.5;
}
.p-outlinePriceEarly .p-outlinePriceTitle {
    color: var(--c-red);
}
.p-outlinePrice li span:nth-child(2) {
    color: var(--c-red);
    font-weight: var(--font-b-weight);
    margin-left: 12px;
}
.p-outlinePriceIcon {
    position: absolute;
    top: -49px;
    right: 21px;
}
.ul-receipt li {
    display: flex;
}
.ul-receipt li span:first-child {
    font-weight: var(--font-b-weight);
    margin-right: 28px;
}
.ul-receipt li span:last-child {
    margin-left: 12px;
}
.ul-schedule li {
    display: flex;
}
.ul-schedule li span:first-child {
    flex-shrink: 0;
    font-weight: var(--font-b-weight);
    width: 75px;
}
.ul-schedule li span:last-child {
    font-size: 1.4rem;
    margin-left: 14px;
}
.p-outlineQuali li {
    font-size: 1.6rem;
    line-height: 2;
	padding-left:1em;
	position:relative;
}
.p-outlineQuali li::before {
    content: "";
    background: #5eb7e8;
	position:absolute;
	left:0;
	top: 8px;
    border-radius: 50%;
    height: 12px;
    width: 12px;
}
.p-outlineAtt li {
    font-size: 1.4rem;
    line-height: 2;
	padding-left:1em;
	position:relative;
}
.p-outlineAtt li::before {
    content: "※";
	position:absolute;
	left: 0;
	top: 0;
}
.p-outlineDlLead {
    margin-bottom: 20px;
}
.p-outlineInnerExp dl dt:not(:first-child) {
    display: flex;
    align-items: center;
    margin-top: 24px;
}
.p-outlineInnerExp dl dt::before {
    display: inline-block;
    content: "";
    background: #000;
    height: 14px;
    width: 14px;
}
.p-outlineInnerExp dl dt span {
    font-size: 1.6rem;
    font-weight: var(--font-b-weight);
    line-height: 2;
}
.p-outlineInnerExp dl dt.faq:not(:first-child) {
    display: flex;
    align-items: center;
    margin-top: 24px;
	vertical-align: top; /* 追加 */
	pading: 0 0 0 0;
}
.p-outlineInnerExp dl dt.faq::before {
    content: "Q：" !important;
    font-size: 1.8rem;
    font-weight: var(--font-b-weight);
    background: none !important;
    height: 22px;
    width: 30px;
    color: var(--c-news-blue);
}
.p-outlineInnerExp dl dt.faq span {
    font-size: 1.8rem;
    font-weight: var(--font-b-weight);
    line-height: 2;
    color: var(--c-news-blue);
}
.p-outlineInnerExp dl dd ul li.faq::before {
    content: "A：" !important;
    font-size: 1.6rem;6
    height: 14px;
    width: 30px;
}
.p-outlineInnerExp dl dd ul li.faq {
    font-size: 1.6rem;
    line-height: 2;
	padding-left:1.6em;
	position:relative;
}
.p-outlineInnerExp dl dd p {
    font-size: 1.6rem;
    line-height: 2;
}
.p-outlineInnerExp dl dd span {
    font-size: 1.4rem;
    line-height: 2;
}
.p-outlineInnerExp dl dd ul li span.haveto {
    font-size: 1.3rem;
	font-weight: normal;
}
.p-outlineInnerExp dl dd ul li {
    font-size: 1.6rem;
    line-height: 2;
	padding-left:1em;
	position:relative;
}
.p-outlineInnerExp dl dd ul li.havetolist {
    font-size: 1.8rem;
	font-weight: bold;
    line-height: 1.4;
	padding-left:1em;
	position:relative;
	margin: 10px;
}
.p-outlineInnerExp dl dd ul li::before {
    content: "・";
    position:absolute;
    left:0;
    top:0;
}
.p-outlineInnerExp dl a {
    color: var(--c-news-blue);
    font-weight: var(--font-b-weight);
}
.p-outlineInnerExp dl dd ol {
    position: relative;
}
.p-outlineInnerExp dl dd ol li {
    display: block;
    font-size: 1.6rem;
    line-height: 2;
    list-style-position: outside;
    margin: 0;
    padding-left: 1.25em;
    width: 100%;
}
.p-outlineInnerExp dl dd ol li i {
    position: absolute;
    left: 0;
    margin: 0
}
.p-outlineAccordion .c-entryBtn {
    margin: 90px auto;
}
.p-outlineAccordion .c-entryBtn-price {
    margin: 30px auto;
}

.p-past .c-titleBlock {
    background: var(--c-title-blue);
    padding: 30px 0 30px;
}
.p-past .c-title {
    color:var(--c-white);
}
.p-pastMovie {
    padding: 70px 0 93px;
}
.p-pastMovie ul {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1000px;
    width: 100%;
}
.p-pastMovie ul li {
    width: 32%;
}
.p-pastMovieTitle {
    font-size: 2rem;
    font-weight: var(--font-b-weight);
    margin-bottom: 12px;
}
.p-pastMovieIframe {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.p-pastMovieIframe iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border-radius: 8px;
}
#footEntryBtn {
    background: var(--c-news-blue);
    position: fixed;
    display: none;
    bottom: 0;
    width: 100%;
}
#footEntryBtn div {
    margin: 18px auto;
    width: 50%;
}
#footEntryBtn div i {
    background: var(--c-white);
    display: grid;
    place-content: center;
    border-radius: 30px;
    height: 60px;
    min-width: 378px;
    width: 100%;
    font-weight: var(--font-m-weight);
	opacity: 0.7;
}
#footEntryBtn div i span {
    display: flex;
    align-items: center;
    color: var(--c-news-blue);
    font-size: 2.0rem;
    font-weight: var(--font-uh-weight);
}
#footEntryBtn div a span::after {
    display: inline-block;
    filter: invert(47%) sepia(90%) saturate(5898%) hue-rotate(182deg) brightness(92%) contrast(97%);
    background-image: url("../img/icon_link.svg");
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    height: 25px;
    width: 27px;
    margin-left: 18px;
}

#p-influence {
    background: var(--c-white);
}
.p-influence__block {
    margin: 30px auto 50px;
    max-width: 800px;
    width: 95%;
}
.p-influence__vs img {
    height: auto;
    width: 100%;
}
.p-influence__head {
    color: var(--c-news-blue);
    font-size: 3.6rem;
    font-weight: var(--font-h-weight);
    text-align: center;
    margin: 28px 0 40px;
}
.p-influence__head span {
    display: inline-block;
}
.p-influence__pickup {
    background: var(--c-news-blue);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 16px 20px;
    margin: 0 auto 48px;
    max-width: 450px;
    width: 80%;
}
.p-influence__pickup span {
    color: var(--c-white);
    font-size: 1.8rem;
    font-weight: var(--font-h-weight);
}
.p-influence__pickup span:last-of-type {
    font-size: 1.5rem;
    font-weight: var(--font-m-weight);
}
.p-influence__pickup span i {
    display: inline-block;
}
.p-influence__lead p {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 12px;
}
.p-influence__note {
    margin-top: 50px;
}
.p-influence__note h3 {
    color: var(--c-news-blue);
    font-size: 2.5rem;
    font-weight: var(--font-h-weight);
    margin-bottom: 12px;
}
.p-influence__note h4 {
    color: var(--c-news-blue);
    font-size: 1.8rem;
    font-weight: var(--font-h-weight);
    line-height: 1.6;
    margin-bottom: 8px;
}
.p-influence__note p {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 18px;
}
.p-influence__note p span {
    font-size: 1.2rem;
}
.p-influence__note ul li {
    display: flex;
    align-items: flex-start;
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 8px;
}
.p-influence__note ul li::before {
    flex-shrink: 0;
    display: inline-block;
    content: "";
    background: var(--c-news-blue);
    border-radius: 100px;
    height: 14px;
    width: 14px;
    margin: 4px 4px 0 0;
}
.p-influence__note ol {
    margin-top: 16px;
}
.p-influence__note ol li {
    display: flex;
    font-size: 1.4rem;
    line-height: 1.7;
}
.p-influence__note ol li::before {
    content: "※";
}
.p-influence__note ol li a {
    color: var(--c-news-blue);
}
.p-influence__note ol li a:hover {
    text-decoration: underline;
}
.p-influence__foot {
    margin-top: 65px;
}
.p-influence__foot p {
    font-size: 1.5rem;
    line-height: 1.6;
    text-align: center;
}
.p-influence__foot p span {
    cursor: pointer;
    color: var(--c-news-blue);
}
.p-influence__foot p span:hover {
    text-decoration: underline;
}
.p-influence__foot .c-entryBtn {
    margin-top: 60px;
}

.js-modal__bg {
    width: 100%;
    height: 100%;
    display: none;
    background-color: rgba(0,0,0,0.6);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}
.js-modal__main {
    width: 80%;
    height: calc(100vh - 200px);
    min-height: 400px;
    max-width: 800px;
    margin: auto;
    padding: 12px;
    top: 50%;
    right: 0;
    left: 0;
    transform: translateY(-50%);
    background: var(--c-white);
    border-radius: 10px;
    position: absolute;
}
.js-modal__main__scroll {
    background: var(--c-white);
    height: 100%;
    min-height: 300px;
    margin-bottom: 20px;
    overflow-y: scroll;
}
.js-modal__btn {
    cursor: pointer
}
.js-modal__btn--close {
    width: 30px;
    height: 30px;
    position: absolute;
    top: -35px;
    right: 0;
    z-index: 101;
    cursor:pointer;
}
.js-modal__btn--close:before{
    content:"";
    width: 24px;
    height: 24px;
    border-right:5px solid #fff;
    transform: rotate(-45deg);
    position: absolute;
    top:12px;
    left:-3px;
}
.js-modal__btn--close:after{
    content:"";
    width: 24px;
    height: 24px;
    border-right:5px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top:-5px;
    left:-3px;
}
.js-modal__bg h4 {
    font-size: 2.4rem;
    font-weight: var(--font-h-weight);
    text-align: center;
    margin: 8px 0 16px;
}
.js-modal__bg dt {
    font-size: 1.4rem;
    line-height: 1.7;
}
.js-modal__bg dd {
    font-size: 1.4rem;
    line-height: 1.7;
    margin: 0 0 24px 12px;
}
.js-modal__bg dl + span {
    font-size: 1.4rem;
    line-height: 1.7;
    padding-bottom: 20px;
}

.p-specialsGuestDl {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.p-specialsGuestDl dt {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.67;
    white-space: nowrap;
    width: 90px;
}
.p-specialsGuestDl dd {
    font-size: 1.5rem;
    line-height: 1.67;
    text-indent: -1em;
    width: calc(100% - 90px);
}
.p-specialsGuestDl dd::before {
    content: "：";
    font-weight: bold;
}
.p-cool {
    background: #fff;
    margin: 0 auto;
    max-width: 1000px;
    padding: 20px;
}
.p-coolInner {
    display: flex;
    justify-content: space-between;
    gap: 4%;
}
.p-coolLeft {
    width: 33%;
}
.p-coolLeft h2 {
    font-size: 2.5rem;
    line-height: 1.5;
    margin-bottom: 16px;
}
.p-coolLeft h2 span {
    display: inline-block;
}
.p-coolLeft h2 i {
    font-size: 1.4rem;
    vertical-align: middle;
}
.p-coolLeft p {
    font-size: 1.5rem;
    line-height: 1.67;
}
.p-coolRight {
    width: 63%;
}
.p-sfBox {
    margin: 0 auto;
    max-width: 1000px;
}
.p-sfTitleBox {
    display: flex;
    gap: 20px;
}
.p-sfTitleBox--sp {
    display: none;
}
.p-sfTitleBox div,
.p-sfTitleBox--sp div {
    background: #fb7803;
    color: var(--c-white);
    font-size: clamp(1.2rem, 0.2767rem + 1.203vw, 1.6rem);
    text-align: center;
    padding: 8px 0;
    white-space: nowrap;
    width: 100%;
}
.p-sfTitleBox--sp div {
    font-size: 1.6rem;
}
.p-sfTitleBox div:first-child {
    flex-shrink: 0;
    width: 32%;
}
.p-sfContBoxNameLabel {
    display: block;
    font-size: clamp(1.6rem, 0.215rem + 1.8045vw, 2.2rem);
    font-weight: bold;
    line-height: 1.67;
    text-align: center;
}
.p-sfContBoxNameCountry {
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
    margin: 8px 0;
}
.p-sfContBox {
    display: flex;
    gap: 20px;
}
.p-sfContBoxInner {
    width: 32%;
}
.p-sfContBox .p-sfContBoxInner:first-child {
    flex-shrink: 0;
}
.p-sfContBoxName {
    margin: 20px 0;
}
.p-sfContBoxName picture {
    display: block;
    margin-bottom: 16px;
}
.p-sfContBoxName picture img {
    height: auto;
    width: 100%;
}
.p-sfContBoxText {
    border-top: 1px solid #ccc;
    padding: 16px 0;
}
.p-sfContBoxText p {
    font-size: 1.5rem;
    line-height: 1.67;
}