/* CSS Document */
body {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	word-break: keep-all;
	line-break: strict;
	word-wrap: break-word;
	overflow-wrap: break-word;
    background-color: #F5F5F8;
    text-align: left !important;
    line-break: strict;
    word-break: normal;
}
header {
    background: #000;
    border-bottom: 1px solid #FFF;
    padding: 6px 10px 6px 10px;
    height: 30px;
    overflow: hidden !important;
}
a:hover {
    opacity: 0.65;
}
a {
    transition: opacity 0.3s ease-out;
    transition-duration: .3s;
}
.sp {
    display: none;
}
.pc {
    display: block;
}
@media (max-width: 750px) {
    .sp {
        display: block;
    }
    .pc {
        display: none;
    }
}
/* -----------------------------------------------
common 
-------------------------------------------------*/
/* -- margin --- */
.mb-10 {margin-bottom: 10px;}
.mb-20 {margin-bottom: 20px;}
.mb-30 {margin-bottom: 30px;}
.mb-40 {margin-bottom: 40px;}
.mb-50 {margin-bottom: 50px;}
.mb-60 {margin-bottom: 60px;}
.mb-70 {margin-bottom: 70px;}
.mb-80 {margin-bottom: 80px;}
.mb-90 {margin-bottom: 90px;}
.mb-100 {margin-bottom: 100px;}
.mb-110 {margin-bottom: 110px;}
.mb-120 {margin-bottom: 120px;}
.mb-130 {margin-bottom: 130px;}
.mb-140 {margin-bottom: 140px;}
.mb-150 {margin-bottom: 150px;}
.mb-160 {margin-bottom: 160px;}
.mb-170 {margin-bottom: 170px;}
.mb-180 {margin-bottom: 180px;}
.mb-190 {margin-bottom: 190px;}
.mb-200 {margin-bottom: 200px;}
@media (max-width: 750px) {
    .mb-10 {margin-bottom:1.333333333vw;}
    .mb-20 {margin-bottom:2.666666667vw;}
    .mb-30 {margin-bottom:4vw;}
    .mb-40 {margin-bottom:5.333333333vw;}
    .mb-50 {margin-bottom:6.666666667vw;}
    .mb-60 {margin-bottom:8vw;}
    .mb-70 {margin-bottom:9.333333333vw;}
    .mb-80 {margin-bottom:10.66666667vw;}
    .mb-90 {margin-bottom:12vw;}
    .mb-100 {margin-bottom:13.33333333vw;}
    .mb-110 {margin-bottom:14.66666667vw;}
    .mb-120 {margin-bottom:16vw;}
    .mb-130 {margin-bottom:17.33333333vw;}
    .mb-140 {margin-bottom:18.66666667vw;}
    .mb-150 {margin-bottom:20vw;}
    .mb-160 {margin-bottom:21.33333333vw;}
    .mb-170 {margin-bottom:22.66666667vw;}
    .mb-180 {margin-bottom:24vw;}
    .mb-190 {margin-bottom:25.33333333vw;}
    .mb-200 {margin-bottom:26.66666667vw;}
}

/* -- text-align --- */
.ta-c {text-align: center;}
.ta-r {text-align: right;}
.ta-l {text-align: left;}
.ta-j {text-align: justify;}

/* -- font-size --- */
.fz-10	{font-size:	10%}
.fz-11	{font-size:	11%}
.fz-12	{font-size:	12%}
.fz-13	{font-size:	13%}
.fz-14	{font-size:	14%}
.fz-15	{font-size:	15%}
.fz-16	{font-size:	16%}
.fz-17	{font-size:	17%}
.fz-18	{font-size:	18%}
.fz-19	{font-size:	19%}
.fz-20	{font-size:	20%}
.fz-21	{font-size:	21%}
.fz-22	{font-size:	22%}
.fz-23	{font-size:	23%}
.fz-24	{font-size:	24%}
.fz-25	{font-size:	25%}
.fz-26	{font-size:	26%}
.fz-27	{font-size:	27%}
.fz-28	{font-size:	28%}
.fz-29	{font-size:	29%}
.fz-30	{font-size:	30%}
.fz-31	{font-size:	31%}
.fz-32	{font-size:	32%}
.fz-33	{font-size:	33%}
.fz-34	{font-size:	34%}
.fz-35	{font-size:	35%}
.fz-36	{font-size:	36%}
.fz-37	{font-size:	37%}
.fz-38	{font-size:	38%}
.fz-39	{font-size:	39%}
.fz-40	{font-size:	40%}
.fz-41	{font-size:	41%}
.fz-42	{font-size:	42%}
.fz-43	{font-size:	43%}
.fz-44	{font-size:	44%}
.fz-45	{font-size:	45%}
.fz-46	{font-size:	46%}
.fz-47	{font-size:	47%}
.fz-48	{font-size:	48%}
.fz-49	{font-size:	49%}
.fz-50	{font-size:	50%}
.fz-51	{font-size:	51%}
.fz-52	{font-size:	52%}
.fz-53	{font-size:	53%}
.fz-54	{font-size:	54%}
.fz-55	{font-size:	55%}
.fz-56	{font-size:	56%}
.fz-57	{font-size:	57%}
.fz-58	{font-size:	58%}
.fz-59	{font-size:	59%}
.fz-60	{font-size:	60%}
.fz-61	{font-size:	61%}
.fz-62	{font-size:	62%}
.fz-63	{font-size:	63%}
.fz-64	{font-size:	64%}
.fz-65	{font-size:	65%}
.fz-66	{font-size:	66%}
.fz-67	{font-size:	67%}
.fz-68	{font-size:	68%}
.fz-69	{font-size:	69%}
.fz-70	{font-size:	70%}
.fz-71	{font-size:	71%}
.fz-72	{font-size:	72%}
.fz-73	{font-size:	73%}
.fz-74	{font-size:	74%}
.fz-75	{font-size:	75%}
.fz-76	{font-size:	76%}
.fz-77	{font-size:	77%}
.fz-78	{font-size:	78%}
.fz-79	{font-size:	79%}
.fz-80	{font-size:	80%}
.fz-81	{font-size:	81%}
.fz-82	{font-size:	82%}
.fz-83	{font-size:	83%}
.fz-84	{font-size:	84%}
.fz-85	{font-size:	85%}
.fz-86	{font-size:	86%}
.fz-87	{font-size:	87%}
.fz-88	{font-size:	88%}
.fz-89	{font-size:	89%}
.fz-90	{font-size:	90%}
.fz-91	{font-size:	91%}
.fz-92	{font-size:	92%}
.fz-93	{font-size:	93%}
.fz-94	{font-size:	94%}
.fz-95	{font-size:	95%}
.fz-96	{font-size:	96%}
.fz-97	{font-size:	97%}
.fz-98	{font-size:	98%}
.fz-99	{font-size:	99%}
.fz-100	{font-size:	100%}
.fz-101	{font-size:	101%}
.fz-102	{font-size:	102%}
.fz-103	{font-size:	103%}
.fz-104	{font-size:	104%}
.fz-105	{font-size:	105%}
.fz-106	{font-size:	106%}
.fz-107	{font-size:	107%}
.fz-108	{font-size:	108%}
.fz-109	{font-size:	109%}
.fz-110	{font-size:	110%}
.fz-111	{font-size:	111%}
.fz-112	{font-size:	112%}
.fz-113	{font-size:	113%}
.fz-114	{font-size:	114%}
.fz-115	{font-size:	115%}
.fz-116	{font-size:	116%}
.fz-117	{font-size:	117%}
.fz-118	{font-size:	118%}
.fz-119	{font-size:	119%}
.fz-120	{font-size:	120%}
.fz-121	{font-size:	121%}
.fz-122	{font-size:	122%}
.fz-123	{font-size:	123%}
.fz-124	{font-size:	124%}
.fz-125	{font-size:	125%}
.fz-126	{font-size:	126%}
.fz-127	{font-size:	127%}
.fz-128	{font-size:	128%}
.fz-129	{font-size:	129%}
.fz-130	{font-size:	130%}
.fz-131	{font-size:	131%}
.fz-132	{font-size:	132%}
.fz-133	{font-size:	133%}
.fz-134	{font-size:	134%}
.fz-135	{font-size:	135%}
.fz-136	{font-size:	136%}
.fz-137	{font-size:	137%}
.fz-138	{font-size:	138%}
.fz-139	{font-size:	139%}
.fz-140	{font-size:	140%}
.fz-141	{font-size:	141%}
.fz-142	{font-size:	142%}
.fz-143	{font-size:	143%}
.fz-144	{font-size:	144%}
.fz-145	{font-size:	145%}
.fz-146	{font-size:	146%}
.fz-147	{font-size:	147%}
.fz-148	{font-size:	148%}
.fz-149	{font-size:	149%}
.fz-150	{font-size:	150%}
.fz-151	{font-size:	151%}
.fz-152	{font-size:	152%}
.fz-153	{font-size:	153%}
.fz-154	{font-size:	154%}
.fz-155	{font-size:	155%}
.fz-156	{font-size:	156%}
.fz-157	{font-size:	157%}
.fz-158	{font-size:	158%}
.fz-159	{font-size:	159%}
.fz-160	{font-size:	160%}
.fz-161	{font-size:	161%}
.fz-162	{font-size:	162%}
.fz-163	{font-size:	163%}
.fz-164	{font-size:	164%}
.fz-165	{font-size:	165%}
.fz-166	{font-size:	166%}
.fz-167	{font-size:	167%}
.fz-168	{font-size:	168%}
.fz-169	{font-size:	169%}
.fz-170	{font-size:	170%}
.fz-171	{font-size:	171%}
.fz-172	{font-size:	172%}
.fz-173	{font-size:	173%}
.fz-174	{font-size:	174%}
.fz-175	{font-size:	175%}
.fz-176	{font-size:	176%}
.fz-177	{font-size:	177%}
.fz-178	{font-size:	178%}
.fz-179	{font-size:	179%}
.fz-180	{font-size:	180%}
.fz-181	{font-size:	181%}
.fz-182	{font-size:	182%}
.fz-183	{font-size:	183%}
.fz-184	{font-size:	184%}
.fz-185	{font-size:	185%}
.fz-186	{font-size:	186%}
.fz-187	{font-size:	187%}
.fz-188	{font-size:	188%}
.fz-189	{font-size:	189%}
.fz-190	{font-size:	190%}
.fz-191	{font-size:	191%}
.fz-192	{font-size:	192%}
.fz-193	{font-size:	193%}
.fz-194	{font-size:	194%}
.fz-195	{font-size:	195%}
.fz-196	{font-size:	196%}
.fz-197	{font-size:	197%}
.fz-198	{font-size:	198%}
.fz-199	{font-size:	199%}
.fz-200	{font-size:	200%}

/* -- font-weight --- */
.fw-b {font-weight: bold;}
.fw-n {font-weight: normal;}
.fw-100{font-weight: 100;}
.fw-200{font-weight: 200;}
.fw-300{font-weight: 300;}
.fw-400{font-weight: 400;}
.fw-500{font-weight: 500;}
.fw-600{font-weight: 600;}
.fw-700{font-weight: 700;}
.fw-800{font-weight: 800;}
.fw-900{font-weight: 900;}
.fw-1000{font-weight: 1000;}

/* -- position --- */
.po-r {position: relative;}
.po-a {position: absolute;}
.po-f {position: fixed;}

/* -- z-index --- */
.z-001{z-index: 001;}
.z-100{z-index: 100;}
.z-200{z-index: 200;}
.z-300{z-index: 300;}
.z-400{z-index: 400;}
.z-500{z-index: 500;}
.z-600{z-index: 600;}
.z-700{z-index: 700;}
.z-800{z-index: 800;}
.z-900{z-index: 900;}
.z-900{z-index: 9000;}

/* -- float --- */
.fl-l {float: left;}
.fl-r {float: right;}

/* -- color --- */
.c-000 {color: #000;}
.c-FFF {color: #FFF;}
.c-F00 {color: #F00;}

/* -- white-space --- */
.ws-n {
    white-space: nowrap;
}

/* -- col2 --- */
.col2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.col2 > div,
.col2 > p {
    width: 50%;
}

/* line-height */
.lh-12 {line-height: 1.0;}
.lh-12 {line-height: 1.2;}
.lh-14 {line-height: 1.4;}
.lh-16 {line-height: 1.6;}
.lh-18 {line-height: 1.8;}
.lh-20 {line-height: 2.0;}
.lh-22 {line-height: 2.2;}
.lh-24 {line-height: 2.4;}
.lh-26 {line-height: 2.6;}
.lh-28 {line-height: 2.8;}
.lh-30 {line-height: 3.0;}

/* letter-spacing */
.ls-000 {letter-spacing: 0.00em;}
.ls-005 {letter-spacing: 0.05em;}
.ls-010 {letter-spacing: 0.10em;}
.ls-015 {letter-spacing: 0.15em;}
.ls-020 {letter-spacing: 0.20em;}
.ls-025 {letter-spacing: 0.25em;}
.ls-030 {letter-spacing: 0.30em;}
.ls-035 {letter-spacing: 0.35em;}
.ls-040 {letter-spacing: 0.40em;}
.ls-045 {letter-spacing: 0.45em;}
/* -----------------------------------------
	nav
-----------------------------------------*/
#nav-btn {
    position: fixed;
    z-index: 9000;
    top: .75em;
    right: 0;
    left: 0;
    margin: auto;
    cursor: pointer;
    transform: translateX(320px);
    width: 80px;
}
#nav-btn:hover{
    opacity: 0.75;
}
#nav-fixed {
    position: fixed;
    z-index: 9000;
    top: 0;
    left: -400px;
    width: 400px;
    height: 100%;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none; 
}
#nav-fixed::-webkit-scrollbar {
    display:none;
}
#nav-fixed.navClose {
    animation: navClose 0.25s ease 0.0s forwards alternate;
}
#nav-fixed.navOpen {
    animation: navOpen 0.25s ease 0.0s forwards alternate;
}

#nav-fixed ul li {
    font-size: 18px;
    border-bottom: 1px solid #FFF;
}
#nav-fixed ul li a {
    padding: 15px 20px;
    display: block;
    color: #FFF;
    font-weight: bold;
}
#nav-fixed ul li a:hover {
    opacity: 0.75;
}
@media (max-width: 750px) {
    #nav-btn {
        transform: translateX(42.5vw);
        width: 11vw;
    }
    #nav-fixed {
        left: -85vw;
        width: 85vw;
    }
    #nav-fixed ul li {
        font-size: 3.3vw;
    }
    #nav-fixed ul li a {
        padding: 3vw 4vw;
        font-size: 125%;
    }
}
@keyframes navClose {
    0% {
        left: 0;
    }
    100% {
        left: -400px;
    }
}
@keyframes navOpen {
    0% {
        left: -400px;
    }
    100% {
        left: 0;
    }
}
@media (max-width: 750px) {
    @keyframes navClose {
        0% {
            left: 0;
        }
        100% {
            left: -85vw;
        }
    }
    @keyframes navOpen {
        0% {
            left: -85vw;
        }
        100% {
            left: 0;
        }
    }
}
/* -----------------------------------------
	youtube
-----------------------------------------*/
#contents .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
#contents .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
/* -----------------------------------------
	fnav
-----------------------------------------*/
.fnav {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
    width: 100%;
    max-width: 750px;
    z-index: 1000;
}
.fnav.fixed {
    position: fixed;
}
.fnav-in {
    position: relative;
}
.fnav-btn {
    position: absolute;
    right: 0.5em;
    top: 0.5em;
    width: 12.5%;
    z-index: 1100;
    cursor: pointer;
}
.fnav-body {
    display: none;
    position: relative;
    z-index: 1000;
    background-color: #fff;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none; 
    height: 100vh;
}
.fnav-body::-webkit-scrollbar {
    display:none;
}
/* -----------------------------------------
	sns-btn
-----------------------------------------*/
#contents .sns-btn {
    margin: 0 0% 0;
    text-align: center;
}
#contents .sns-btn li {
    display: inline-block;
    width: 12.5%;
    margin: 0 3.5%;
}
#social_btn {
	width: 100%;
    text-align: center;
    font-size: 0;
}
#social_btn > div {
    vertical-align: top;
    display: inline-block;
    margin: 0 5px;
}
#social_btn .fb_iframe_widget {
    vertical-align: top;
}
/* -----------------------------------------
	page-top
-----------------------------------------*/
#page-top {
    position: fixed;
    z-index: 9000;
    bottom: .5em;
    right: .5em;
}
#page-top.fixed {
    position: fixed !important;
}
/* -----------------------------------------

	SNSフッタ

-----------------------------------------*/
#social_btn {
	width: 100%;
    text-align: center;
    font-size: 0;
}
#social_btn > div {
    vertical-align: top;
    display: inline-block;
    margin: 0 5px;
}
#social_btn .fb_iframe_widget {
    vertical-align: top;
}
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
#page-top.fixed {
    position: fixed !important;
}
/* sns-area */
#sns-area{
	margin-bottom: 2em;
	margin: 0 5.333% 3em;
}
.main-sns .ttl-sns{
    /* background: #969696; */
}
.main-sns .inner {
    position: relative;
}
.main-sns .inner .bg {
    position: relative;
    z-index: 1;
}
.main-sns .inner .on {
    position: absolute;
    z-index: 2;
    width: 76.9%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.main-sns .inner li{
    background: #fff;
}
.main-news .ttl-news{
    /* background: #969696; */
}
.main-news .news_inner{
    background: #fff;
    width: 100%;
    border: 1px solid #969696;
    box-sizing: border-box;
}
.main-news .news_inner.gray{
    background: #eee;
    width: 100%;
    border: none;
    box-sizing: border-box;
}
.main-news .news_inner .news_lead{
    width: 84.6%;
    margin-left: auto;
    margin-right: auto;
}
.main-news .news_inner .news_btn{
    width: 76.923%;
    border: 1px solid #969696;
    margin-left: auto;
    margin-right: auto;
}
.main-sns-channel{
    background: #EEECEB;
}
/* Alternative */
.main-sns.alter{
    position: relative;
    padding: 8% 0;
    /* background: #EEECEB; */
}
.main-sns.alter .ttl-sns{
    /* background: #EEECEB; */
}
.main-sns.alter ul{
    width: 90%;
    margin: 0 auto;
}
.main-channel.alter{
    position: relative;
    padding: 8% 0;
    /* background: #EEECEB; */
}
.main-channel.alter::after{
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
    width: 90%;
    height: 1px;
    background: #8F8F8F;
    transform: translate(-50%, 0);
}
.main-channel.alter ul{
    width: 90%;
    margin: 0 auto;
}
/* global */
.other-txt{
    display: block;
}
.global-txt{
    display: none;
}
.global .other-txt {
    display: none;
}
.global .global-txt{
    display: block;
}
#site-notice{
	margin: 2em 5.333%;
    font-size: 85%;
}
/* -----------------------------------------
	SNS footer
-----------------------------------------*/
#sns-footer {
	background: #EEE;
	margin-top: 0em;
}
#sns-footer svg {
	width: 100%;
}
#sns-footer img {
	width: 100%;
}
#sns-footer #sns-footer-inner {
	max-width: 750px;
	margin: auto;
}
#sns-footer #sns-footer-inner #sns-footer-tit {
	padding: 12% 20% 5%;
}
#sns-footer #sns-footer-inner #sns-footer-line {
	padding: 0 14% 10%;
}
#sns-footer #sns-footer-inner #sns-footer-tit-02 {
	padding: 0 33% 3.5%;
}
#sns-footer #sns-footer-inner #sns-footer-list {
	padding: 0 14% 15%;
	overflow: hidden;
}
#sns-footer #sns-footer-inner #sns-footer-list li {
	float: left;
	width: 33.33333%;
	width: -webkit-calc(100% / 3);
	width: calc(100% / 3);
}
#sns-footer #sns-footer-inner #sns-footer-list li a {
	display: block;
	padding: 5%;
}
/* -----------------------------------------
	sns-link
-----------------------------------------*/
.sns-link {
    background-color: #e7e5e3;
    margin: 0 6.66% 2em;
    padding: 2em 0 2em;
    color: #000;
}
.sns-link-title {
    text-align: center;
    margin-bottom: 0.225em;
    font-size: 160%;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 0.75em;
}
.sns-link-title .in {
    position: relative;
    display: inline-block;
}
.sns-link-title .in::after {
    content: '';
    position: absolute;
    transform: rotate(-15deg);
    left: -1em;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #000;
}
.sns-link-title .in::before {
    content: '';
    position: absolute;
    transform: rotate(15deg);
    right: -1em;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #000;
}
.sns-link-in {
    margin: 0 3.846%;
}
.sns-link-copy {
    text-align: center;
    margin-bottom: 0.5em;
    line-height: 1.4;
    font-size: 130%;
}
.sns-link-copy .s {
    font-size: 65%;
}
.sns-link-img {
    margin-bottom: 0.75em;
}
.sns-link-ig {
    margin-bottom: 1em;
}
.sns-link-tw {
    margin-bottom: 1em;
}
.sns-link-yt {
    margin-top: 2em;
    padding-top: 1.5em;
    text-align: center;
    border-top: 1px solid #000;
}
.sns-link-yt-sub {
    font-size: 90%;
}
.sns-link-yt-title {
    font-weight: bold;
    font-size: 145%;
    margin-bottom: 0.5em;
}
.sns-title {
    margin-bottom: 1.5em;
    text-align: center;
    font-size: 100%;
}
.sns-title span {
    display: inline-block;
    position: relative;
    padding: 0 1em;
    font-weight: bold;
    line-height: 1.2;
}
.sns-title span::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    height: 100%;
    background-color: #000;
    transform: rotate(-25deg);
}
.sns-title span::before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 2px;
    height: 100%;
    background-color: #000;
    transform: rotate(25deg);
}
/* -----------------------------------------
	attention
-----------------------------------------*/
.attention {
    margin: 0 6.66% 1em;
    font-size: 85%;
}
.attention li {
    text-indent: -1em;
    margin-left: 1em;
}
/* -----------------------------------------
contents
-----------------------------------------*/
#container {
    margin: auto;
}
#contents {
    overflow: hidden;
    font-family: 'Noto Sans JP',"Zen Kaku Gothic New","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    line-height: 1.6;
    font-size: 26px;
    width: 100%;
    max-width: 750px;
    display: block;
    font-feature-settings: "palt";
    position: relative;
    margin: 0 0 0 10%;
    background-color: #fff;
    color: #4C4C4C;
    letter-spacing: 0.05em;
}
@media (max-width: 1300px) {
    #contents {
        margin: 0 auto;
    }
}
@media (max-width: 750px) {
    #contents {
        font-size: 3.5vw;
    }
}
.serif {
    font-family: "Zen Old Mincho", serif;
    letter-spacing: 0.1em;
    /* font-family: 'Noto Serif JP', serif; */
    /* font-family: 'Shippori Mincho', serif; */
}
#contents img {
    width: 100%;
    font-size: 0;
    line-height: 1;
}
.contents-in img {
    width: 100%;
    display: block;
    font-size: 0;
    line-height: 1;
}
/* -----------------------------------------
anchor
-----------------------------------------*/
.anchor {
    padding-top: 150px;
    margin-top: -150px;
    display: block;
    position: relative;
    cursor: default;
    z-index: -1;
}
@media (max-width: 750px) {
    .anchor {
        padding-top: 20.0vw;
        margin-top: -20.0vw;
    }
}
/* -----------------------------------------
page Layout
-----------------------------------------*/
.main-title {
    position: relative;
}
.main-title-bg {
    position: relative;
    z-index: 10;
}
.main-title-logo {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 20;
}
.slick-dots {
    position: absolute;
    bottom: 13%;
    left: 3.5%;
    line-height: 1;
    display: block;
    width: 0.25em;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.slick-dots li {
    position: relative;
    overflow: hidden;
    display: inline-block;
    width: .25em;
    height: .25em;
    cursor: pointer;
    border: 1.5px solid #FFF;
    border-radius: 100px;
    border-radius: 100px;
    margin: 0 .2em;
    padding: 0;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li.slick-active {
    background-color: #FFF;
}
header,
footer {
    position: relative;
    z-index: 200;
}
footer {
    background-color: #563779 !important;
}
.nav {
    position: fixed;
    right: 0;
    top: 0;
    width: calc(90% - 750px);
    height: 100%;
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: start;
    margin-top: 42px;
}
.nav-ig {
    position: absolute;
    right: 5%;
    bottom: 5%;
    width: 1em;
}
.nav-in {
    width: 80%;
    height: 90vh;
    padding: 0 10%;
    max-width: 370px;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.nav-in::-webkit-scrollbar {
    display: none;
}
.nav-logo {
    padding-top: 2em;
    margin-bottom: 3em;
}
.nav-list li {
    margin-bottom: 1.5em;
}
.nav-list li a {
    display: block;
    text-align: center;
}
.nav-list li a .text {
    font-size: 70%;
}
.nav-btn {
    display: none;
}
.nav-btn a:hover {
    opacity: 1;
}
@media (max-width: 1300px) {
    .nav {
        display: none;
        position: fixed;
        right: 0;
        left: 0;
        margin: auto;
        top: 0;
        width: 100%;
        max-width: 750px;
        height: 100%;
        z-index: 100;
        background-color: #fff;
        margin-top: 0;
    }
    .nav-ig {
        position: absolute;
        right: 5%;
        bottom: 5%;
        width: 2em;
    }
    .nav-in {
        width: 60%;
        height: 100vh;
        padding: 0 20%;
        max-width: 60%;
        overflow-y: scroll;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
    .nav-in::-webkit-scrollbar {
        display: none;
    }
    .nav-logo {
        padding-top: 3em;
        margin-bottom: 2em;
    }
    .nav-list li {
        margin-bottom: 1.5em;
    }
    .nav-list li a {
        display: block;
        text-align: center;
    }
    .nav-list li a .text {
        font-size: 70%;
    }
    .nav-btn {
        display: block;
        position: absolute;
        z-index: 1000;
        right: 0;
        left: 0;
        margin: auto;
        top: 0em;
        max-width: 750px;
        width: 100%;
        text-align: right;
        z-index: 1000;
    }
    .nav-btn.fixed {
        position: fixed;
    }
    .nav-btn a {
        display: inline-block;
        width: 3em;
        height: 3em;
        position: relative;
        margin: .5em;
    }
    .nav-btn a span {
        position: absolute;
        left: 15%;
        display: block;
        width: 70%;
        height: 2px;
        background-color: #563779;
        transition: .25s;
    }
    .nav-btn a span:nth-child(1) {
        top: 25%;
    }
    .nav-btn a span:nth-child(2) {
        top: 50%;
    }
    .nav-btn a span:nth-child(3) {
        top: 75%;
    }
    .nav-btn a.on span:nth-child(1) {
        top: 50%;
        transform: rotate(45deg);
        background-color: #563779;
    }
    .nav-btn a.on span:nth-child(2) {
        display: none;
    }
    .nav-btn a.on span:nth-child(3) {
        top: 50%;
        transform: rotate(-45deg);
        background-color: #563779;
    }
}
@media (max-width: 750px) {
    .nav-logo {
        padding-top: 5em;
    }
}
/* --------------------------- */
.c-01 {
    color: #FFF;
}
.c-02 {
    color: #563779;
}
.copy-01 {
    text-align: center;
    font-size: 80%;
    margin-bottom: 2em;
}
.copy-02 {
    text-align: center;
    font-size: 90%;
    line-height: 2;
}
.inner-01 {
    margin-left: 6.66%;
    margin-right: 6.66%;
}

.btn-close {
    background-color: #9A9A9A;
    color: #FFF;
    display: block;
    text-align: center;
    border: 1px solid #9A9A9A;
    padding: .2em;
    transition: .25s;
}

.btn-comingsoon {
    background-color: #9f93b4;
    color: #5b407a;
    display: block;
    text-align: center;
    border: 1px solid #9f93b4;
    padding: .2em;
    transition: .25s;
}

.btn-01 {
    display: block;
    text-align: center;
    border: 1px solid #FFF;
    color: #FFF;
    padding: .2em;
    transition: .25s;
}
.btn-01:hover {
    background-color: #fff;
    color: #B99D43;
    opacity: 1;
}
.btn-01.c2 {
    color: #563779;
    border: 1px solid #563779;
}
.btn-01.c2:hover {
    background-color: #563779;
    color: #FFF;
}
.btn-01.c3 {
    color: #563779;
    background-color: #fff;
    border: 1px solid #563779;
}
.btn-01.c3:hover {
    background-color: #000;
    color: #FFF;
}
.ico-01 {
    width: .85em;
    margin-right: 0.5em;
    display: inline-block;
}
.cls-1 {
    transition: .25s;
    fill: none;
    stroke: #563779;
    stroke-miterlimit: 10;
}
a:hover .cls-1 {
    stroke: #FFF;
} 
.ico-02 {
    width: 0.85em;
    display: inline-block;
    transition: .1s;
    margin-right: 0.5em;
}
a.on .ico-02 {
    transform: rotate(45deg);
}
.ico-02 line {
    fill: none;
    stroke: #563779;
    stroke-miterlimit: 10;
    transition: .25s;
}
a:hover .ico-02 line {
    stroke: #FFF;
}
/* --------------------------- */
.about {
    padding: 5em 0;
    background-color: #B99D43;
}
.about-logo {
    margin: 0 37.6% 2em;
}
.about-copy {
    text-align: center;
    font-size: 90%;
    color: #FFF;
    line-height: 2;
    margin-bottom: 2em;
}
/* --------------------------- */
.special {
    padding: 5em 0;
    background-color: #ded9eb;
}
.special-item {
    margin-bottom: 4em;
}
.special-item-img {
    margin-bottom: 1em;
}
.special-item-title {
    font-size: 140%;
}
.special-item-date {
    font-size: 90%;
    margin-bottom: 0.25em;
}
.special-item-text {
    font-size: 87%;
    text-align: justify;
    letter-spacing: -0em;
    margin-bottom: 1em;
}
/* --------------------------- */
.event-title {
    text-align: center;
    font-weight: 400;
    margin-bottom: 1em;
    color: #563779;
}
.event-item-wrap {
    margin-bottom: 2em;
}
.event-item {
    margin-top: 1.25em;
    padding-top: 1.2em;
    border-top: 1px solid #BDB4D6;
}
.event-item a {
    display: block;
}
.event-item:first-child {
    border-top: none;
    padding-top: 0;
}
.event-item-title {
    font-weight: 500;
    color: #563779;
    margin-bottom: 0.5em;
}
.event-item-in {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.event-item-img {
    width: 36%;
}
.event-item-info {
    width: 61%;
}
.event-item-date {
    font-size: 80%;
    margin-bottom: 0.5em;
    line-height: 1.4;
}
.event-item-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-size: 80%;
    margin-bottom: 0.25em;
}
.event-item-list dt {
    width: 22%;
    text-align: center;
}
.event-item-list dt span {
    display: block;
    border: 1px solid #563779;
    color: #563779;
    border-radius: 100px;
}
.event-item-list dd {
    width: 75%;
    line-height: 1.4;
}
.event-item-sub {
    font-size: 80%;
    margin-top: 0.5em;
}
.event-close {
    display: none;
}
.event-item:nth-child(n+5) {
    display: none;
}
/* --------------------------- */
.topics {
    padding: 5em 0;
    background-color: #FFF;
}
.topics-slide-wrap {
    margin: 2em 0 2em -2.5%;
    width: 140%;
}

.topics-slide-wrap2 {
    margin: 2em auto 2em;
    width: 100%;
}

.topics-slide li a {
    display: block;
    position: relative;
    padding: 0 .5em;
}
.topics-slide li.new a::after {
    content: '';
    position: absolute;
    left: 1em;
    top: .5em;
    width: 2.5em;
    height: 2.5em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../img/new.svg);
}
.topics-slide-img {
    margin-bottom: 0.75em;
    background-color: #EEE;
}
.topics-slide-title {
    margin-bottom: 0.5em;
    font-size: 80%;
    color: #563779;
}
.topics-slide-schedule {
    font-size: 85%;
    margin-bottom: 0.5em;
    line-height: 1.4;
    color: #4C4C4C;
}
.topics-slide-price {
    font-size: 85%;
    margin-bottom: 0.25em;
    line-height: 1.4;
    color: #4C4C4C;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.topics-slide-price .tit {
    display: block;
    width: 25%;
    box-sizing: border-box;
}
.topics-slide-price .tit span {
    display: block;
    box-sizing: border-box;
    border-radius: 100px;
    border: 1px solid #4C4C4C;
    padding: .1em;
    text-align: center;
    font-size: 90%;
}
.topics-slide-price .text {
    display: block;
    width: 71%;
}
.topics-slide .slick-prev,.topics-slide .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 0%;
    display: block;
    width: 30px;
    height: 278px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background-color: transparent;
    -webkit-background-size: contain;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 300;
}
.topics-slide .slick-prev {
    left: -4%;
}
.topics-slide .slick-next {
    right: 21%;
}
.topics-slide .slick-prev {
    background-image: url(../img/btn-prev.svg);
}
.topics-slide .slick-next {
    background-image: url(../img/btn-next.svg);
}

@media (max-width: 750px) {
    .topics-slide .slick-prev,.topics-slide .slick-next {
        width: 4.2vw;
        height: 37.1vw;
    }
}
/* --------------------------- */
.manabiluxe {
    padding: 5em 0;
    background-color: #563779;
}
.manabiluxe-single {
    margin-bottom: 3em;
}
.manabiluxe-single:last-child {
    margin-bottom: 0;
}
.manabiluxe-single-img {
    margin-bottom: 0.5em;
}
.manabiluxe-single-hash {
    font-size: 90%;
    margin-bottom: 0em;
}
.manabiluxe-single-title {
    font-size: 120%;
    margin-bottom: .25em;
	letter-spacing: -0.05em;
}
.manabiluxe-single-schedule {
    font-size: 90%;
    margin-bottom: .5em;
}
.manabiluxe-single-info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: .5em;
}
.manabiluxe-single-list {
    text-align: left;
    margin-bottom: 0.25em;
}
.manabiluxe-single-list.w1 {
    width: 35%;
}
.manabiluxe-single-list.w2 {
    width: 65%;
}

.manabiluxe-single-list.w3 {
    width: 55%;
}
.manabiluxe-single-list.w4 {
    width: 45%;
}

.manabiluxe-single-list dt {
    margin-right: .1em;
    display: inline-block;
    text-align: center;
    font-size: 80%;
}
.manabiluxe-single-list dt span {
    display: block;
    border-radius: 100px;
    border: 1px solid #FFF;
    line-height: 1.35;
    padding: .1em .75em;
}
.manabiluxe-single-list dd {
    display: inline-block;
    font-size: 85%;
}
.manabiluxe-single-text {
    font-size: 95%;
    margin-bottom: 0.75em;
    text-align: justify;
    letter-spacing: -0.05em;
	font-feature-settings: "palt";
}
.manabiluxe-single-sub {
    font-size: 85%;
    margin-bottom: 0.5em;
}
.manabiluxe-single-btn {
    margin-bottom: 0.5em;
}
/* --------------------------- */
.reports {
    padding: 5em 0;
    background-color: #FFF;
}
.reports-list {
    margin-bottom: 1em;
}
.reports-list li {
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid #BDB4D6;
}
.reports-list li:last-child {
    border-bottom: none;
    margin-bottom: 0;
}
.reports-list li.new .in::after {
    content: '';
    position: absolute;
    left: -.75em;
    top: -.75em;
    width: 2.5em;
    height: 2.5em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../img/new.svg);
}
.reports-list li .in {
    display: block;
    position: relative;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.reports-list-img {
    width: 30%;
}
.reports-list-info {
    width: 67%;
}
.reports-list-date {
    font-size: 80%;
    line-height: 1.4;
    margin-bottom: 0.25em;
}
.reports-list-title {
    line-height: 1.4;
    font-size: 90%;
    color: #563779;
    font-weight: 600;
    margin-bottom: 0.25em;
}
.reports-list-text {
    line-height: 1.4;
    font-size: 80%;
}
/* --------------------------- */
.manabi {
    padding: 5em 0;
    background-color: #ded9eb;
}
/* --------------------------- */

/* --------------------------- */
.manabi2 {
	margin-top: -1em;
    padding: 4em 0;
    background-color: #fbfbde;
}
/* --------------------------- */


.otonanomanabi-footer {
    padding: 5em 0 2em;
    background-color: #fff;
}
.otonanomanabi-link:hover {
    opacity: 1;
}
.otonanomanabi-link .cls-1 {
    fill: #fffff1;
    transition: .25s;
}
.otonanomanabi-link:hover .cls-1 {
    fill: #986736;
}
.otonanomanabi-link .cls-1, .otonanomanabi-link .cls-2 {
    stroke-width: 0px;
    transition: .25s;
}
.otonanomanabi-link .cls-2 {
    fill: #986736;
    transition: .25s;
}
.otonanomanabi-link:hover .cls-2 {
    fill: #FFF;
}
/* --------------------------- */
.title-about {
    padding-top: 3em;
}
.about-logo-2nd {
    margin: 3em 21.53% 5em;
}
.about-box {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 2em;
}
.about-box-img {
    width: 50%;
}
.about-box-info {
    width: 50%;
}
.about-box-title {
    margin-right: 7.5%;
}
.about-box-in {
    margin: 0 0% 0 10%;
}
.about-box-copy {
    line-height: 2;
    letter-spacing: 0;
    font-size: 85%;
}
.about-back {
    margin: 0 6.66% 2em;
}
.about-back a {
    display: block;
    font-size: 85%;
    color: #563779;
    padding-left: 3em;
    background-repeat: no-repeat;
    background-position: left 0 center;
    background-size: 2.5em;
    background-image: url(../img/about-arrow.svg);
}


/* --------------------------- */
.specialfeature {
    padding: 5em 0;
    background-color: #fbfbde;
}

.specialfeature .copy-01 {
		color: #299778;
}

.specialfeature-single {
    margin-bottom: 3em;
}
.specialfeature-single:last-child {
    margin-bottom: 0;
}
.specialfeature-single-img {
    margin-bottom: 0.5em;
}
.specialfeature-single-hash {
    font-size: 90%;
    margin-bottom: 0em;
}
.specialfeature-single-title {
    font-size: 120%;
    margin-bottom: .25em;
	color: #299778;
}
.specialfeature-single-schedule {
    font-size: 90%;
    margin-bottom: .5em;
	color: #299778;
}
.specialfeature-single-info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: .5em;
}
.specialfeature-single-list {
    text-align: left;
    margin-bottom: 0.25em;
}
.specialfeature-single-list.w1 {
    width: 35%;
}
.specialfeature-single-list.w2 {
    width: 65%;
}

.specialfeature-single-list.w3 {
    width: 55%;
}
.specialfeature-single-list.w4 {
    width: 45%;
}

.specialfeature-single-list dt {
    margin-right: .1em;
    display: inline-block;
    text-align: center;
    font-size: 80%;
}
.specialfeature-single-list dt span {
    display: block;
    border-radius: 100px;
    border: 1px solid #FFF;
    line-height: 1.35;
    padding: .1em .75em;
}
.specialfeature-single-list dd {
    display: inline-block;
    font-size: 85%;
}
.specialfeature-single-text {
    font-size: 95%;
    margin-bottom: 0.75em;
    text-align: justify;
    letter-spacing: 0;
	color: #000;
}
.specialfeature-single-sub {
    font-size: 85%;
    margin-bottom: 0.5em;
}
.specialfeature-single-btn {
    margin-bottom: 0.5em;
}
/* --------------------------- */

/* --------------------------- */
.specialfeature2 {
    padding: 5em 0 0;
    background-color: #fbfbde;
}

.specialfeature2 .copy-01 {
		color: #b99d43;
}

.specialfeature2-single {
    margin-bottom: 3em;
}
.specialfeature2-single:last-child {
    margin-bottom: 0;
}
.specialfeature2-single-img {
    margin-bottom: 0.5em;
}
.specialfeature2-single-hash {
    font-size: 90%;
    margin-bottom: 0em;
}
.specialfeature2-single-title {
    font-size: 160%;
	margin-top: 0.5em;
    margin-bottom: .35em;
	color: #b99d43;
	text-align: center;
	font-weight: 300;
	transform: scale(1.15, 1);
}

.specialfeature2-single-title2 {
    font-size: 60%;
    margin-top: -1.25em;
	margin-bottom: .35em;
	color: #b99d43;
	text-align: center;
}

.specialfeature2-single-schedule {
    font-size: 90%;
    margin-bottom: .5em;
	color: #b99d43;
	text-align: center;
}
.specialfeature2-single-info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: .5em;
}
.specialfeature2-single-list {
    text-align: left;
    margin-bottom: 0.25em;
}
.specialfeature2-single-list.w1 {
    width: 35%;
}
.specialfeature2-single-list.w2 {
    width: 65%;
}

.specialfeature2-single-list.w3 {
    width: 55%;
}
.specialfeature2-single-list.w4 {
    width: 45%;
}

.specialfeature2-single-list dt {
    margin-right: .1em;
    display: inline-block;
    text-align: center;
    font-size: 80%;
}
.specialfeature2-single-list dt span {
    display: block;
    border-radius: 100px;
    border: 1px solid #FFF;
    line-height: 1.35;
    padding: .1em .75em;
}
.specialfeature2-single-list dd {
    display: inline-block;
    font-size: 85%;
}
.specialfeature2-single-text {
    font-size: 95%;
    margin-bottom: 0.75em;
    text-align: center;
    letter-spacing: 0;
	color: #000;
}
.specialfeature2-single-sub {
    font-size: 85%;
    margin-bottom: 0.5em;
}
.specialfeature2-single-btn {
    margin-bottom: 0.5em;
}
/* --------------------------- */

/* --------------------------- */
.specialfeature3 {
    padding: 5em 0 0;
    background-color: #fff;
}

.specialfeature3 .copy-01 {
		color: #00132e;
}

.specialfeature3-single {
    margin-bottom: 3em;
}
.specialfeature3-single:last-child {
    margin-bottom: 0;
}
.specialfeature3-single-img {
    margin-bottom: 0.5em;
}
.specialfeature3-single-hash {
    font-size: 90%;
    margin-bottom: 0em;
}
.specialfeature3-single-title {
    font-size: 160%;
	margin-top: 0.5em;
    margin-bottom: .35em;
	color: #00132e;
	text-align: center;
	font-weight: 300;
	transform: scale(1.15, 1);
}

.specialfeature3-single-title2 {
    font-size: 60%;
    margin-top: -1.25em;
	margin-bottom: .35em;
	color: #00132e;
	text-align: center;
}

.specialfeature3-single-schedule {
    font-size: 90%;
    margin-bottom: .5em;
	color: #00132e;
	text-align: center;
}
.specialfeature3-single-info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: .5em;
}
.specialfeature3-single-list {
    text-align: left;
    margin-bottom: 0.25em;
}
.specialfeature3-single-list.w1 {
    width: 35%;
}
.specialfeature3-single-list.w2 {
    width: 65%;
}

.specialfeature3-single-list.w3 {
    width: 55%;
}
.specialfeature3-single-list.w4 {
    width: 45%;
}

.specialfeature3-single-list dt {
    margin-right: .1em;
    display: inline-block;
    text-align: center;
    font-size: 80%;
}
.specialfeature3-single-list dt span {
    display: block;
    border-radius: 100px;
    border: 1px solid #FFF;
    line-height: 1.35;
    padding: .1em .75em;
}
.specialfeature3-single-list dd {
    display: inline-block;
    font-size: 85%;
}
.specialfeature3-single-text {
    font-size: 85%;
    margin-bottom: 0.75em;
    text-align: center;
    letter-spacing: 2px;
	line-height: 2em;
	color: #4d4d4d;
}
.specialfeature3-single-sub {
    font-size: 85%;
    margin-bottom: 0.5em;
}
.specialfeature3-single-btn {
    margin-bottom: 0.5em;
}
/* --------------------------- */

/* -----------------------------------------
	modal
-----------------------------------------*/
.modal {
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.8);
    justify-content: center;
    align-items: center;
    display: none;
    opacity: 0;
}

.modal.active {
    display: flex;
    animation: fadein .5s forwards;
}

.modal.fade-out { 
    animation: fadeout .5s forwards;
}

@keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeout {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
.modal-content {
    background-color: transparent;
    padding: 0;
    border: none;
    max-width: 750px;
    width: 100%;
    border-radius: 0;
    position: relative; 
    max-height: 96vh;
    overflow-y: auto;
	-ms-overflow-style: none;
    scrollbar-width: none;
}
.modal-content::-webkit-scrollbar {
    display: none;
}

.close-button {
	position: absolute;
	display: block;
	right: 3%;
    bottom: 5%;
    width: 12%;
}

.close-button:hover,
.close-button:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.modal-mv {
    background-color: #563779;
    padding: 3%;
    color: #FFF;
}
.modal-mv-in {
    border: 1px solid #FFF;
    position: relative;
}
.modal-mv-head {
    background-color: #fff;
    text-align: center;
    color: #563779;
    font-size: 105%;
    padding: .35em 0;
}
.modal-mv-body {
    padding: 5%;
}
.modal-card {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.modal-card-thumb {
    width: 25%;
}
.modal-card-info {
    width: 75%;
}
.modal-card-info-title {
    font-size: 100%;
    letter-spacing: -.025em;
    margin-bottom: 0.2em;
}
.modal-card-info-link a {
    display: inline-block;
    background-color: #fff;
    color: #563779;
    font-weight: 500;
    line-height: 1.2;
    padding: .1em .25em;
    letter-spacing: -0.025em;
}
.modal-attention {
    font-size: 90%;
}

.dateTimeSwitching {
  display: none;
}


/* -----------otonacollege---------------- */
.otonacollege-nav-index {
    display: flex;
    padding-bottom: 2em;
    flex-wrap: wrap;
    justify-content: space-between;
}
.otonacollege-nav-index.center {
    justify-content: center;
}
.otonacollege-nav-index p {
    width: 30%;
}
.otonacollege-nav-index.center p {
    margin: 0 4%;
}
.occ-01 {
    color: #a57c52;
}
.oc-head {
    text-align: center;
    margin-bottom: 3em;
    color: #fff;
    padding: 1em 0;
}
.oc-head.p2 {
    padding: 1.5em 0;
}
.oc-bg1 {background-color: #EEF9F3;}
.oc-bg2 {background-color: #FBF7EA;}
.oc-bg3 {background-color: #EEF5F6;}

.oc-head-bg1 {background-color: #75D19E;}
.oc-head-bg2 {background-color: #DCC054;}
.oc-head-bg3 {background-color: #73A8B6;}
.oc-head .l {
    font-size: 150%;
    font-weight: 400;
}
.oc-head .s {
    font-size: 100%;
    font-weight: 400;
}
.oc-c1 {color: #75D19E;}
.oc-c2 {color: #DCC054;}
.oc-c3 {color: #73A8B6;}
.oc-slide-wrap {
    padding: 0 4%;
}
.oc-slide {
    padding: 0 0 10%;
}
.oc-slide-01 {background-color: #EEF9F3;}
.oc-slide-02 {background-color: #FBF7EA;}
.oc-slide-03 {background-color: #EEF5F6;}
.oc-slide-in {
    padding: 5% 5% 0;
}
.oc-slide-title {
    letter-spacing: 0;
    font-size: 105%;
    text-indent: -1.5em;
    margin-left: 1.5em;
}
.oc-slide-date {
    margin-left: 2em;
    font-size: 85%;
    margin-bottom: 1em;
}
.oc-slide-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.oc-slide-img {
    width: 39%;
}
.oc-slide-info {
    width: 57.5%;
}
.oc-slide-dlist {
    margin-bottom: 0.35em;
    display: flex;
    font-size: 80%;
    flex-wrap: wrap;
    justify-content: space-between;
}
.oc-slide-dlist dt {
    width: 26%;
}
.oc-slide-dlist dt span {
    display: block;
    text-align: center;
    background-color: #fff;
    border-radius: 100px;
    padding: .1em .5em;
}
.oc-slide-dlist-01 dt span {
    color: #75D19E;
    border: 1px solid #75D19E;
}
.oc-slide-dlist-02 dt span {
    color: #DCC054;
    border: 1px solid #DCC054;
}
.oc-slide-dlist-03 dt span {
    color: #73A8B6;
    border: 1px solid #73A8B6;
}
.oc-slide-dlist dd {
    width: 71%;
    line-height: 1.35;
}
.oc-slide-ml {
    margin-left: 8%;
}
.oc-slide-ml .oc-slide-dlist dt {
    width: 17.5%;
}
.oc-slide-ml .oc-slide-dlist dd {
    width: 79.5%;
}
.oc-slide-s .oc-slide-dlist dt {
    width: 15%;
}
.oc-slide-s .oc-slide-dlist dd {
    width: 82.5%;
}
.oc-slide-btn {
    margin-top: 0.75em;
    margin-bottom: 0.25em;
}
.oc-slide-ml .oc-slide-btn {
    margin-top: 0.5em;
    margin-right: 40%;
}
.oc-slide-btn a {
    display: block;
    color: #FFF;
    font-size: 85%;
    padding: .2em .5em .3em;
    text-align: center;
}
.oc-slide-btn-01 a {background-color: #75D19E;}
.oc-slide-btn-02 a {background-color: #DCC054;}
.oc-slide-btn-03 a {background-color: #73A8B6;}

.oc-slide-btn-01.b a {background-color: transparent;border: 1px solid #75D19E;color: #75D19E;}
.oc-slide-btn-02.b a {background-color: transparent;border: 1px solid #DCC054;color: #DCC054;}
.oc-slide-btn-03.b a {background-color: transparent;border: 1px solid #73A8B6;color: #73A8B6;}
.oc-slide .slick-prev, .oc-slide .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 0%;
    display: block;
    width: 4.5%;
    height: 100%;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background-color: transparent;
    background-size: 45%;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 300;
}
.oc-slide-sub {
    font-size: 80%;
}
.oc-slide .slick-prev {
    left: -4.5%;
}
.oc-slide .slick-next {
    right: -4.5%;
}
.oc-slide .slick-prev {
    background-image: url(../img/otonacollege/om-prev.svg);
}
.oc-slide .slick-next {
    background-image: url(../img/otonacollege/om-next.svg);
}
.oc-slide-01 .slick-prev,.oc-slide-01 .slick-next {background-color: #75D19E;}
.oc-slide-02 .slick-prev,.oc-slide-02 .slick-next {background-color: #DCC054;}
.oc-slide-03 .slick-prev,.oc-slide-03 .slick-next {background-color: #73A8B6;}

.oc-slide .slick-dots {
    position: absolute;
    bottom: 1em;
    left: 0;
    right: 0;
    line-height: 1;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.oc-slide .slick-dots li {
    position: relative;
    overflow: hidden;
    display: inline-block;
    width: .25em;
    height: .25em;
    cursor: pointer;
    border: 1.5px solid #4c4c4c;
    border-radius: 100px;
    border-radius: 100px;
    margin: 0 .2em;
    padding: 0;
}
.oc-slide .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.oc-slide .slick-dots li.slick-active {
    background-color: #4c4c4c;
}
.oc-bg-01 {
    background-color: #FBFBDE;
    padding-bottom: 1px;
}
.oc-box01 {
    padding: 6.66%;
}
.oc-btn01 a {
    display: block;
    text-align: center;
    padding: .2em .5em;
    z-index: 90%;
}
.oc-btn01-01 a {
    color: #75D19E;
    border: 1px solid #75D19E;
}
.oc-btn01-02 a {
    color: #DCC054;
    border: 1px solid #DCC054;
}
.oc-btn01-03 a {
    color: #73A8B6;
    border: 1px solid #73A8B6;
}
.oc-slide-common {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -1em;
    justify-content: space-between;
}
.oc-slide-common-left {
    padding: 5% 0 0 5%;
    width: 55%;
}
.oc-slide-common-right {
    width: 40%;
}
.oc-inner-01 {
    padding: 5% 7%;
}
.oc-inner-02 {
    padding: 0 6.66%;
    margin-bottom: 3em;
}
.oc-tid {
    text-indent: -1em;
    margin-left: 1em;
}
/* --------------------------------------- */