@charset "UTF-8";
/******************************* Preface ***************************************/
a:hover { color: #E50012; }

/********************************* body ***************************************/
/********************************* body ***************************************/
body { /******************************** header **************************************/ /********************************  Main Content ******************************/ /***********************************  footer ********************************/ }

body header { position: relative; z-index: 999; }

body header.header { position: fixed; width: 100%; top: 0; background: #EFF4F4; }

body header.header.scrolled { background-color: rgba(239, 244, 244, 0.7); transition: all linear .1s; }

body header.header .inner { position: relative; max-width: 1400px; margin: 0 auto; padding: 1rem 1rem; }

body header.header .inner .f-warp { display: flex; align-items: center; justify-content: space-between; }

body header.header .inner .f-warp .jr_logo { width: 55px; }

body header.header .inner .f-warp .netyoyaku_logo { width: 164px; }

body header.header .inner .f-warp .left-con { display: flex; align-items: center; }

body header.header .inner .f-warp .left-con .header_btn { margin-right: 2.5rem; }

body header.header .inner .f-warp .left-con .header_btn a { display: block; font-weight: bold; font-size: .9rem; background: #222; color: #fff; border-radius: 999px; padding: .3rem 2.5rem .4rem 2.5rem; border: solid 1px #222; transition: .3s; }

body header.header .inner .f-warp .left-con .header_btn a:hover { background: #fff; color: #222; }

body .main_vi { position: relative; }

body .main_vi .mv-ttl { position: absolute; top: 23%; left: 50%; width: 42%; margin: 0 auto; transform: translate(-50%, -50%); }

body .main_vi .cta-box { position: relative; width: 42%; margin: -21% auto 0 auto; }

body .main_vi .cta-box .cta-box-ttl { font-size: 1.2vw; }

body .main_vi .cta-box .cta-box-inr { max-width: 680px; margin: 0 auto; padding: 5%; }

body .main_vi .cta-box .cta-box-inr .search-button { margin-top: 5%; padding: 3%; }

@media (min-width: 768px) and (max-width: 1080px) { body .main_vi .cta-box { position: relative; width: 55%; margin: -16% auto 0 auto; } }

body .content-wrap { padding: 4rem 1.5rem; }

body .content-wrap .inner.inner-l { width: 100%; max-width: 1100px; margin: 0 auto; }

body .content-wrap .inner.inner-m { width: 100%; max-width: 980px; margin: 0 auto; }

body .content-wrap .inner.inner-s { width: 100%; max-width: 768px; margin: 0 auto; }

body .content-wrap h1.section-title.section-title-01, body .content-wrap h2.section-title.section-title-01, body .content-wrap h3.section-title.section-title-01, body .content-wrap h4.section-title.section-title-01, body .content-wrap h5.section-title.section-title-01, body .content-wrap h6.section-title.section-title-01 { line-height: 1.6; margin-bottom: 3.5rem; }

body .content-wrap h1.section-title.section-title-01 .ttl_icon, body .content-wrap h2.section-title.section-title-01 .ttl_icon, body .content-wrap h3.section-title.section-title-01 .ttl_icon, body .content-wrap h4.section-title.section-title-01 .ttl_icon, body .content-wrap h5.section-title.section-title-01 .ttl_icon, body .content-wrap h6.section-title.section-title-01 .ttl_icon { max-width: 272px; margin: 0 auto .8rem auto; }

body .content-wrap h1.section-title.section-title-01 .ttl_icon.ttl_icon_dai, body .content-wrap h2.section-title.section-title-01 .ttl_icon.ttl_icon_dai, body .content-wrap h3.section-title.section-title-01 .ttl_icon.ttl_icon_dai, body .content-wrap h4.section-title.section-title-01 .ttl_icon.ttl_icon_dai, body .content-wrap h5.section-title.section-title-01 .ttl_icon.ttl_icon_dai, body .content-wrap h6.section-title.section-title-01 .ttl_icon.ttl_icon_dai { max-width: 300px; }

body .content-wrap h1.section-title.section-title-01 .main, body .content-wrap h2.section-title.section-title-01 .main, body .content-wrap h3.section-title.section-title-01 .main, body .content-wrap h4.section-title.section-title-01 .main, body .content-wrap h5.section-title.section-title-01 .main, body .content-wrap h6.section-title.section-title-01 .main { display: block; font-weight: bolder; font-size: 1.8rem; margin-bottom: 1rem; }

body .content-wrap h1.section-title.section-title-01 .sub, body .content-wrap h2.section-title.section-title-01 .sub, body .content-wrap h3.section-title.section-title-01 .sub, body .content-wrap h4.section-title.section-title-01 .sub, body .content-wrap h5.section-title.section-title-01 .sub, body .content-wrap h6.section-title.section-title-01 .sub { display: block; }

body .content-wrap.content-wrap-intro .inner-color { border-radius: 15px; padding: 4rem 3rem; }

body .content-wrap.content-wrap-intro .intro-ttl { margin-bottom: 2rem; }

body .content-wrap.content-wrap-intro .intro-txt { font-size: 1.025rem; color: #fff; }

body .content-wrap.content-wrap-intro .intro-txt .mb { margin-bottom: .8rem; }

body .content-wrap.content-wrap-intro .intro_ed { margin-top: 4rem; }

body .content-wrap.content-wrap-intro .intro_ed h4 { font-weight: bold; font-size: 1.7rem; margin-bottom: 2rem; }

body .content-wrap.content-wrap-intro .intro_ed .comparison { margin-bottom: 4rem; }

body .content-wrap.content-wrap-intro .intro_ed .charm .scene-list { max-width: 880px; margin: 0 auto; display: flex; justify-content: center; }

body .content-wrap.content-wrap-intro .intro_ed .charm .scene-list .scene-item { width: 33.3%; margin-left: 8%; }

body .content-wrap.content-wrap-intro .intro_ed .charm .scene-list .scene-item:first-of-type { margin-left: 0; }

body .content-wrap.content-wrap-intro .intro_ed .charm .scene-list .scene-item .thm { margin-bottom: 1rem; }

body .content-wrap.content-wrap-intro .intro_ed .charm .scene-list .scene-item .scene-ttl { font-weight: bold; font-size: 1.025rem; margin-bottom: .8rem; }

body .content-wrap.content-wrap-intro .intro_ed .charm .scene-list .scene-item .scene-txt { font-size: .85rem; }

body .content-wrap.content-wrap-point .point-list { display: flex; }

body .content-wrap.content-wrap-point .point-list .point-item { width: 33.333%; margin-left: 3%; border-radius: 20px; overflow: hidden; background: #fff; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; }

body .content-wrap.content-wrap-point .point-list .point-item:first-of-type { margin-left: 0; }

body .content-wrap.content-wrap-point .point-list .point-item .point-item_inr { padding: 1.5rem; }

body .content-wrap.content-wrap-point .point-list .point-item .thm { width: 25%; margin: 0 auto; margin-bottom: .6rem; }

body .content-wrap.content-wrap-point .point-list .point-item .point-label { padding: .8rem 1rem; font-weight: bold; font-size: 1.1rem; background: #222; }

body .content-wrap.content-wrap-point .point-list .point-item .point-ttl { font-weight: bold; font-size: 1.6rem; margin-bottom: .2rem; }

body .content-wrap.content-wrap-point .point-list .point-item .point-txt { font-size: .85rem; }

body .content-wrap.content-wrap-merit .merit-list { display: flex; margin-bottom: 2.6rem; }

body .content-wrap.content-wrap-merit .merit-list .merit-item { width: 25%; margin-left: 3%; }

body .content-wrap.content-wrap-merit .merit-list .merit-item:first-of-type { margin-left: 0; }

body .content-wrap.content-wrap-merit .merit-list .merit-item .thm { width: 30%; margin: 0 auto; margin-bottom: .6rem; }

body .content-wrap.content-wrap-merit .merit-list .merit-item .merit-ttl { font-weight: bold; font-size: 1.1rem; margin-bottom: .2rem; }

body .content-wrap.content-wrap-merit .merit-list .merit-item .merit-txt { font-size: .85rem; }

body .content-wrap.content-wrap-tickets .tickets-main { display: flex; }

body .content-wrap.content-wrap-tickets .tickets-main .tickets-item { width: 50%; transition: .2s; }

body .content-wrap.content-wrap-tickets .tickets-main .tickets-item:hover { transform: translateY(-8px); }

body .content-wrap.content-wrap-tickets .tickets-autro { margin-top: 3.5rem; }

body .content-wrap.content-wrap-tickets .tickets-autro .rocal-ttl { font-weight: bold; font-size: 1.4rem; margin-bottom: 1rem; }

body .content-wrap.content-wrap-tickets .tickets-autro .rocal-box { background: #fff; border-radius: 20px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; padding: 1.5rem 2rem; margin-bottom: 3.5rem; }

body .content-wrap.content-wrap-tickets .tickets-autro .rocal-box .rocal-box-ttl { font-weight: bold; font-size: 1.2rem; margin-bottom: .8rem; }

body .content-wrap.content-wrap-tickets .tickets-autro .rocal-box .txt-link { margin-top: .5rem; }

body .content-wrap.content-wrap-tickets .tickets-autro .autro-ttl { max-width: 710px; margin: 0 auto; }

body .content-wrap.content-wrap-tickets .tickets-autro .autro-txt { font-size: 1.1rem; margin-top: 2rem; }

body .content-wrap.content-wrap-scene .scene-list { display: flex; margin-bottom: 4.5rem; }

body .content-wrap.content-wrap-scene .scene-list .scene-item { width: 25%; margin-left: 3%; }

body .content-wrap.content-wrap-scene .scene-list .scene-item:first-of-type { margin-left: 0; }

body .content-wrap.content-wrap-scene .scene-list .scene-item .thm { margin-bottom: .6rem; }

body .content-wrap.content-wrap-scene .scene-list .scene-item .scene-ttl { font-weight: bold; font-size: 1.1rem; margin-bottom: .2rem; }

body .content-wrap.content-wrap-scene .scene-list .scene-item .scene-txt { font-size: .85rem; }

body .content-wrap.content-wrap-scene .caution-box { border-radius: 20px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; padding: 1.5rem; }

body .content-wrap.content-wrap-scene .caution-box .scene_oh { max-width: 240px; margin: 0 auto 1rem auto; }

body .content-wrap.content-wrap-voice .voice-list { display: flex; flex-wrap: wrap; align-items: stretch; }

body .content-wrap.content-wrap-voice .voice-list .voice-item { width: 48.5%; background: #fff; border-radius: 20px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; padding: 1rem 1.5rem; margin-bottom: 3%; }

body .content-wrap.content-wrap-voice .voice-list .voice-item:nth-of-type(2n) { margin-left: 3%; }

body .content-wrap.content-wrap-voice .voice-list .voice-item .voice-ttl { font-weight: bold; font-size: 1.1rem; margin-bottom: .3rem; }

body .content-wrap.content-wrap-voice .voice-list .voice-item .voice-txt { font-size: .9rem; margin-top: .4rem; }

body .content-wrap.content-wrap-voice .voice-list .voice-item .label .human { font-size: .75rem; color: #fff; background: #222; border-radius: 999px; padding: .2rem 1.5rem .3rem 1.5rem; }

body .content-wrap.content-wrap-voice .voice-list .voice-item .label .case { font-size: .9rem; font-weight: bold; }

body .content-wrap.content-wrap-faq .caution { margin-bottom: .7rem; }

body .content-wrap .accordion_list { margin-bottom: 3rem; }

body .content-wrap .accordion_list:last-of-type { margin-bottom: 0; }

body .content-wrap .accordion_list .accordion-item { padding: 1rem 2rem; background: #fff; border-radius: 15px; margin-bottom: 1.8rem; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; }

body .content-wrap .accordion_list .accordion-item:last-of-type { margin-bottom: 0; }

body .content-wrap .accordion_list .accordion-item .accordion-header { display: flex; justify-content: space-between; align-items: center; cursor: pointer; background: #fff; font-weight: bold; }

body .content-wrap .accordion_list .accordion-item .accordion-header .accordion-title { display: flex; align-items: center; }

body .content-wrap .accordion_list .accordion-item .accordion-header .accordion-title img { width: 14px; margin-right: 1rem; }

body .content-wrap .accordion_list .accordion-item .accordion-header .accordion-title img.qa { width: 42px; }

body .content-wrap .accordion_list .accordion-item .accordion-header .accordion-title .ttl { width: 100%; font-weight: bold; font-size: 1.1rem; }

body .content-wrap .accordion_list .accordion-item .accordion-header .accordion-icon { font-size: 1.5rem; transition: transform 0.3s ease; }

body .content-wrap .accordion_list .accordion-item .accordion-content { max-height: 0; overflow: hidden; transition: max-height 0.4s ease; }

body .content-wrap .accordion_list .accordion-item .accordion-content .content { padding-top: 1.3rem; font-size: .95rem; line-height: 1.6; }

body .content-wrap .accordion_list .accordion-item .accordion-content .content a { font-weight: bold; text-decoration: underline; color: #E50012; }

body .content-wrap.content-wrap-cta .inner-color { padding: 4rem 3rem; }

body .content-wrap.content-wrap-cta .inner-color .inner { display: flex; align-items: center; }

body .content-wrap.content-wrap-cta .inner-color .inner .cta_intro { width: 32%; margin-right: 4.5rem; }

body .content-wrap.content-wrap-cta .inner-color .inner .cta_intro .cta-ttl { margin-bottom: 1.5rem; }

body .content-wrap .link-btn { text-align: center; max-width: 380px; margin: 0 auto; }

body .content-wrap .link-btn a { display: flex; justify-content: center; align-items: center; padding: 1rem 2rem; font-weight: bold; font-size: 1.125rem; color: #fff; border-radius: 999px; transition: .3s; }

body .content-wrap .link-btn a img { width: 5%; margin-right: 1.2rem; }

body .content-wrap .link-btn a:hover { opacity: .7; }

body .content-wrap .link-btn.main-color a { background: #E50012; }

body .content-wrap .link-btn.sub-color a { background: #222222; }

body .content-wrap .txt-link { font-weight: bold; color: #E50012; transition: .3s; }

body .content-wrap .txt-link i { font-size: 1.2rem; }

body .content-wrap .txt-link:hover { opacity: .7; }

body .cta-box { width: 68%; border-radius: 20px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; }

body .cta-box .cta-box-ttl { display: flex; justify-content: center; align-items: center; background: #222; text-align: center; color: #fff; font-size: 1.1rem; font-weight: bold; padding: .8rem 1rem; }

body .cta-box .cta-box-ttl .icon { width: 4.5%; margin-right: 1rem; }

body .cta-box .cta-box-inr { padding: 1.5rem 4rem; }

body .cta-box label { font-weight: bold; }

body .cta-box input { text-align: left !important; -webkit-text-align: left; background: #fff !important; }

body .cta-box input::-webkit-date-and-time-value { text-align: left; }

body .cta-box .inputicon { position: absolute; width: 9%; top: 63%; right: 5%; transform: translateY(-50%); }

body .cta-box .search-button { position: relative; background: #1B8811; font-size: 1rem; padding: 1.1rem; margin-top: 1.8rem; transition: .3s; }

body .cta-box .search-button:hover { opacity: .7; }

body .cta-box .search-button i { position: absolute; font-size: 1.6rem; top: 50%; right: 1.5rem; transform: translateY(-50%); }

body .cta-box .swap-button { background: #FFCC00; }

body .cta-box .swap-button svg { color: #fff; }

body footer.footer { background: #222; padding: 1.5rem; }

body footer.footer .inner { max-width: 1400px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }

body footer.footer .inner .copyright { font-size: .85rem; color: #fff; letter-spacing: .1rem; }

body footer.footer .inner .left { display: flex; align-items: center; }

body footer.footer .inner .left .jr_logo { max-width: 32%; margin-right: 3rem; }

body footer.footer .inner .left .f-link a { color: #fff; font-size: .9rem; }

body footer.footer.footer-top { padding: 1rem 1.5rem; background: #fff; }

body footer.footer.footer-top .copyright { color: #222; }

body footer.footer.footer-top .footer_news a { font-size: .9rem; font-weight: 500; }

body footer.footer.footer-top .footer_news a .data { margin-right: 1rem; }

body footer.footer.footer-top .footer_news a i { margin-left: 1rem; }

/*==================================================
　anime
==================================================*/
/* fadeUp */
.fadeIn { animation-name: fadeInAnime; animation-duration: 1.2s; animation-fill-mode: forwards; opacity: 0; }

.fadeUp { animation-name: fadeUpAnime; animation-duration: .8s; animation-fill-mode: forwards; opacity: 0; }

.fadeLeft { animation-name: fadeLeftAnime; animation-duration: 0.8s; animation-fill-mode: forwards; opacity: 0; }

.fadeRight { animation-name: fadeRightAnime; animation-duration: 0.8s; animation-fill-mode: forwards; opacity: 0; }

@keyframes fadeInAnime { from { opacity: 0; }
		to { opacity: 1; } }

@keyframes fadeUpAnime { from { opacity: 0;
				transform: translateY(60px); }
		to { opacity: 1;
				transform: translateY(0); } }

@keyframes fadeLeftAnime { from { opacity: 0;
				transform: translateX(100px); }
		to { opacity: 1;
				transform: translateX(0); } }

@keyframes fadeRightAnime { from { opacity: 0;
				transform: translateX(-100px); }
		to { opacity: 1;
				transform: translateX(0); } }

@keyframes bounce { 0%, 100% { transform: translateY(0);
				/* 元の位置 */ }
		50% { transform: translateY(-10px);
				/* 上に移動 */ } }

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeUpTrigger, .fadeLeftTrigger, .fadeRightTrigger, .fadeTrigger { opacity: 0; }

/* フェードインアニメーション */
@keyframes fadeIn { from { opacity: 0; }
		to { opacity: 1; } }

.loop-text { padding: 1.5rem 0; }

.loop-text.loop-text02 { padding: 3rem 0 0 0; }

.loop-text.loop-text03 { padding: 0; }

.loop-text.loop-text04 { padding: 2rem 0 0 0; }

.loop-text .loop__box { display: flex; width: 100%; overflow: hidden; }

.loop__box img { display: inline-block; padding: 0 3rem; width: auto; height: calc(24 / 375 * 100vw); }

.loop__box img:first-child { animation: loop 30s -15s linear infinite; }

.loop__box img { animation: loop2 30s linear infinite; }

@keyframes loop { 0% { transform: translateX(100%); }
		to { transform: translateX(-100%); } }

@keyframes loop2 { 0% { transform: translateX(0); }
		to { transform: translateX(-200%); } }

@keyframes slide_tsubame_top { 0% { left: 100%;
				transform: scaleX(1.2);
				opacity: 0.3; }
		60% { opacity: 1; }
		100% { opacity: 1;
				left: 3rem;
				transform: scaleX(1); } }

@keyframes slide_tsubame_bkp { 0% { right: -100%;
				transform: scaleX(1.2);
				opacity: 0.3; }
		60% { opacity: 1; }
		100% { opacity: 1;
				right: 0;
				transform: scaleX(1); } }

@keyframes slide_tsubame_contact { 0% { right: -100%;
				transform: scaleX(1.2);
				opacity: 0.3; }
		60% { opacity: 1; }
		100% { opacity: 1;
				right: 0;
				transform: scaleX(1); } }

@keyframes slide_tsubame_about { 0% { right: -100%;
				transform: scaleX(1.2);
				opacity: 0.3; }
		60% { opacity: 1; }
		100% { opacity: 1;
				right: 0;
				transform: scaleX(1); } }

#page-top { display: none; position: fixed; bottom: 50px; right: 50px; transition: opacity 0.5s ease-in-out; }

/*リンクの形状*/
#page-top a { display: flex; justify-content: center; align-items: center; background-color: #ffffff; border-radius: 100rem; width: 65px; height: 65px; text-transform: uppercase; text-decoration: none; font-size: 1.6rem; line-height: 2; transition: all 0.3s; font-weight: bold; padding-bottom: .4rem; border: solid 1px #222; }

#page-top a:hover { background: #E50012; color: #fff; border: solid 1px #E50012; }

/*リンクを右下に固定*/
#page-top { position: fixed; right: 40px; bottom: 80px; z-index: 2; opacity: 0; transform: translateY(100px); }

/*　上に上がる動き　*/
#page-top.UpMove { animation: UpAnime 0.5s forwards; }

@keyframes UpAnime { from { opacity: 0;
				transform: translateY(80px); }
		to { opacity: 1;
				transform: translateY(0); } }

/*　下に下がる動き　*/
#page-top.DownMove { animation: DownAnime 0.5s forwards; }

@keyframes DownAnime { from { opacity: 1;
				transform: translateY(0); }
		to { opacity: 1;
				transform: translateY(100px); } }
