@charset "utf-8";
/* CSS Document */
body{padding-left: 10px;}
body::before { content: ''; position: fixed; top: 0; left: 0; bottom: 0; width: 10px; z-index: 100; background-image: url("../images/bg_rainbow_ver@2x.png"); background-repeat: repeat-y; background-position: top left; background-size: 10px auto; }

#mainheader #mainheadright{margin-right: 10px;}

.dp-pc {display: none;}
.dp-sp {display: block;}
@media (min-width: 42.5em){
    .dp-pc {display: block;}
    .dp-sp {display: none;}
}

.top-main-sponsor { display: none; margin: 100px 0 10px; padding: 30px 20px 40px 20px; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; background-color: #fff; text-align: center; -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); -moz-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); }
@media (min-width: 80em) { .top-main-sponsor { display: block; } }
.top-main-sponsor .title { margin: 0 0 10px; font-size: 10px; line-height: 1; color: #000; }
.top-main-sponsor .sponsor-container { display: flex; justify-content: center; }
.top-main-sponsor .sponsor-airline { display: flex; align-items: center; margin-right: 67px; }
.top-main-sponsor .sponsor-airline-title { margin: 0 0 3px; padding: 0 52px 0 0; font-size: 0; text-align: left; }
.top-main-sponsor .sponsor-airline-title img { width: 80px!important; }
.top-main-sponsor .sponsor-airline-icon { margin: 0 auto; padding: 0; list-style: none; }
@media (min-width: 42.5em) { .top-main-sponsor .sponsor-airline-icon { display: flex; justify-content: center; align-items: flex-start; } }
.top-main-sponsor .sponsor-airline-icon li { margin: 0; padding: 0; }
.top-main-sponsor .sponsor-airline-icon a { display: block; }
.top-main-sponsor .sponsor-airline-icon a:hover { opacity: 1; }
.top-main-sponsor .sponsor-airline-icon .icon-jal { width: 102px!important; }
.top-main-sponsor .sponsor-supporting { display: flex; align-items: center; }
.top-main-sponsor .sponsor-supporting-title { margin: 0 48px 3px 0; padding: 0; font-size: 0; text-align: left; }
.top-main-sponsor .sponsor-supporting-title img { width: 106px!important; }
.top-main-sponsor .sponsor-supporting-icon { margin: 0; padding: 0; list-style: none; }
@media (min-width: 42.5em) { .top-main-sponsor .sponsor-supporting-icon { display: flex; flex-wrap: wrap; /*justify-content: center;*/ align-items: flex-start; } }
.top-main-sponsor .sponsor-supporting-icon li { margin: 20px 53px 20px 0; padding: 0; }
.top-main-sponsor .sponsor-supporting-icon li:nth-last-child(-n + 1) { margin-right: 0; }
.top-main-sponsor .sponsor-supporting-icon a { display: block; }
.top-main-sponsor .sponsor-supporting-icon a:hover { opacity: 1; }
.top-main-sponsor .sponsor-supporting-icon .icon-ahamo { width: 152px!important; margin-top: 7px; }
.top-main-sponsor .sponsor-supporting-icon .icon-sgc { width: 144px!important; }
.top-main-sponsor .sponsor-supporting-icon .icon-kinoshita { width: 162px!important; margin-top: 10px; }

.footer-sponsor { position: relative; padding: 40px 20px; background-color: #fff; text-align: center; }
@media (min-width: 42.5em) { .footer-sponsor { padding: 64px 20px 90px 20px; } }
.footer-sponsor .title { margin: 0 0 60px!important; font-size: 12px; line-height: 1; color: #000; }
.footer-sponsor .title img {margin: auto!important;}
.footer-sponsor .sponsor-airline { margin: 0 auto 89px auto; width: 225px; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-airline { margin: 0 0 72px; width: auto; } }
.footer-sponsor .sponsor-airline-title { margin: 0 0 48px!important; padding: 0; font-size: 0; text-align: center; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-airline-title { margin: 0 0 80px!important; text-align: center; } }
.footer-sponsor .sponsor-airline-title img { width: 112px!important; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-airline-title img { width: 100px!important; } }
.footer-sponsor .sponsor-airline-icon { margin: 0 auto; padding: 0; list-style: none; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-airline-icon { display: flex; justify-content: center; align-items: flex-start; } }
.footer-sponsor .sponsor-airline-icon li { margin: 0; padding: 0; }
.footer-sponsor .sponsor-airline-icon a { display: block; }
.footer-sponsor .sponsor-airline-icon a:hover { opacity: 1; }
.footer-sponsor .sponsor-airline-icon .icon-jal { width: 150px!important; }
.footer-sponsor .sponsor-supporting { margin: 0 auto; width: 225px; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting { margin: 0; width: auto; } }
.footer-sponsor .sponsor-supporting-title { margin: 0 0 48px!important; padding: 0; font-size: 0; text-align: center; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-title { margin: 0 0 33px!important; text-align: center; } }
.footer-sponsor .sponsor-supporting-title img { width: 149px!important; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-title img { width: 106px!important; } }
.footer-sponsor .sponsor-supporting-icon { margin: 0 auto; padding: 0; list-style: none; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-icon { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; } }
.footer-sponsor .sponsor-supporting-icon li { margin: 0 0 48px; padding: 0; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-icon li { margin: 0 33px 33px 33px; } }
.footer-sponsor .sponsor-supporting-icon li:nth-last-child(-n + 1) { margin-bottom: 60px; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-icon li:nth-last-child(-n + 1) { margin-bottom: 0; } }
.footer-sponsor .sponsor-supporting-icon a { display: block; }
.footer-sponsor .sponsor-supporting-icon a:hover { opacity: 1; }
.footer-sponsor .sponsor-supporting-icon .icon-ahamo { width: 189px!important; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-icon .icon-ahamo { margin-top: 9px; } }
.footer-sponsor .sponsor-supporting-icon .icon-sgc { width: 179px!important; }
.footer-sponsor .sponsor-supporting-icon .icon-kinoshita { width: 201px!important; }
@media (min-width: 42.5em) { .footer-sponsor .sponsor-supporting-icon .icon-kinoshita { margin-top: 13px; } }

/*CSS 追加部分*/
footer{position: relative!important;}
footer a img {background: none!important;}
footer img{max-width: 100%!important; height: auto!important;}
#contents .sns{margin: 0;}
#contents .sns li{float: none;}
.footer-title { position: relative; margin: 0; padding: 10px 0 3.4rem 0; text-align: center; }
.footer-title a { display: block; }
.footer-title .title { margin: 0 auto 18px auto; max-width: 258px!important; }
.footer-title .title-list { display: flex; justify-content: center; align-items: center; margin: 0 auto; padding: 0; list-style: none; max-width: 340px!important; }
.footer-title .title-list li { margin: 0 4px; }
.footer-main { position: relative; padding: 56px 30px 100px; background-color: #F0F1F3; text-align: center; }
@media (min-width: 62em) { .footer-main { padding: 112px 30px; } }
.footer-main::before { content: ''; position: absolute; top: 0; left: 0; right: 0; width: 100%; height: 15px; background-image: url("../images/bg_rainbow_hor@2x.png"); background-repeat: repeat-x; background-size: auto 15px; }
.footer-main .list { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin: auto!important; padding: 0; list-style: none; }
.footer-main .list li { margin: 0.8rem; }
.footer-main .list.logo { margin-bottom: 2.4rem; }
.footer-main .list.logo li { margin: 0.8rem; }
.footer-main .list.logo img { height: 80px!important; }
@media (min-width: 42.5em) { .footer-main .list.logo img { height: 100px!important; } }
@media (min-width: 62em) { .footer-main .list.logo img { height: 130px!important; } }
.footer-main .list.sns { margin-bottom: 1.6rem!important; }
.footer-main .list.sns li { margin: 0.4rem!important; font-size: 18px; line-height: 1; }
@media (min-width: 42.5em) { .footer-main .list.sns li { font-size: 28px; } }
.footer-main .list.sns img{width: 27px!important;}
.footer-main .list.sns a { display: flex; justify-content: center; align-items: center; width: 48px!important; height: 48px; background-color: #fff; border-radius: 48px; -webkit-box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); -moz-box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); }
@media (min-width: 42.5em) { .footer-main .list.sns a { width: 64px!important; height: 64px; border-radius: 64px; } }
.footer-main .list.sitemap { margin-bottom: 32px!important; }
@media (min-width: 62em) { .footer-main .list.sitemap { margin-bottom: 64px!important; } }
.footer-main .list.sitemap li { margin: 0.4rem; font-size: 12px; line-height: 1.6666666667; }
@media (min-width: 62em) { .footer-main .list.sitemap li { font-size: 14px; line-height: 1.5714285714; } }
.footer-main .list.sitemap a { text-decoration: underline; color: #000;}
.footer-main .copy { margin: 0; font-size: 12px; line-height: 1.6666666667; background: none;}
@media (min-width: 62em) { .footer-main .copy { font-size: 14px; line-height: 1.5714285714; } }
