﻿section#main::before {
    width: 100%;
    height: 100%;
    background: rgba(4,40,60,0.2);
    content: "";
    position: absolute;
}
.no{
    padding:30px;
}
.shop_info .info_box:first-child{
    margin-top:0;
}

#header{
        padding: 10px;
}
#header .logo img{
    width:100% !important;
}
.shop_info .contact,.shop_info .info{
    padding: 50px 0 !important;
}
.shop_info{

    max-width: 900px;
}
.IN{
   bottom:10px !important;
}
#banner {
    position: fixed;
    right: 10px;
    bottom: -150px;
    z-index: 99;
    width: 350px;
    box-shadow: 4px 4px 5px rgba(2,2,2,0.3);
    transition:all 0.35s;
}
#banner a:hover{
    opacity:0.8;
}
#banner a{
    transition:all 0.3s;
}
#tel_mail_box{
    max-width:600px;
    margin:auto;
    margin-bottom:50px;
}

a.txt_white.font_bold.font_14up.font_12up_tb.font_16_sp.letter_4.d_inline_b.border_so1.pd_10px.pd_l-20px.pd_r-20px.border_rad5.pd_10px_sp.d_block_sp.letter_2_sp.pd_t-15px_sp.pd_b-15px_sp{
    background: #08324a;
    border: 0;
    font-size: 18px;
    width: 60%;
    padding: 10px;
}
.mail a{
    display: inline-block;
    background: #08324a;
    border-radius: 5px;
    color: white;
    margin-top: 15px;
    width: 60%;
    padding: 10px;
    transition:all 0.3s;
}
.mail a:hover{
    opacity:0.6;
}

@media all and (-ms-high-contrast: none){
    a.txt_white.font_bold.font_14up.font_12up_tb.font_16_sp.letter_4.d_inline_b.border_so1.pd_10px.pd_l-20px.pd_r-20px.border_rad5.pd_10px_sp.d_block_sp.letter_2_sp.pd_t-15px_sp.pd_b-15px_sp{
    padding:15px 15px 5px;
    }
.pager a span{
    padding:10px 0 5px;
   
}

.entry.more a{
    padding:15px 0 10px !important;
    position:relative;
    bottom:20px;
    
}
footer .entry.more a{
    padding:10px 0 5px;
}
h2.main_txt{
    padding:10px 0 0 10px;
}
}

.sp_view{
    display:none;
}
.mail{
   font-size: calc(1rem + 6px);
}
h2.font_30up.en_font.letter_4.font_18up_sp.letter_3_sp{
    white-space:nowrap;
}

.posi_center {
    position: absolute;
    top: 55%;
}
.load_logo figure{
    max-width:400px;
}
#loading_bg{
    background:#08324a;
}
   h1 {
    position: absolute;
    bottom: -20px;
    right: -50px;
    width: 390px;
}
.g-menu {
    background: #08324a;
}
.linkStyle{
    color:#ffa600;
    transition:all 0.3s;
}
.linkStyle:hover{
    opacity:0.6;
}
.box .font_24up {
    font-size: calc(1rem + 14px);
}

.box span.font_80up {
    font-size: calc(3rem + 50px);
}
.en_font {
    font-family: 'Alata';
}
footer .entry.more a{
    background: #ffaf1a;
    color: white;

}
.content_wrap,.top_cms_box{
    background-color: rgba(255,255,255,0.9);
    position: relative;
    padding:50px;
}
.page_title_box p.font_30up{
    position: relative;
    top: 15px;
    color: #001e30;
}
.page_title_box p.font_9up{
    font-family: 'Alata';
    font-size: 130px;
    color: #ffda02;
    font-weight: normal;
}
#page_title:before {
    background: linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #08324a 50.5%) no-repeat top left/100% 100%;
}
main{
    background:#08324a !important;
}
.cms_title2 p::first-letter{
    font-size: 8vw;
}
.cms_title2 {
    text-align: center;
    font-size: 6vw;
    color: #ffda02;
    position: relative;
    top: 4vw;
    z-index: 2;
}
#Fellows p::first-letter {
    font-size: 8vw;
}
.catch_box {
    position: relative;
    padding-top: 100px;
    padding-bottom: 100px;
}
#Fellows p {
    position: absolute;
    top: -20px;
    right: -7.5vw;
    font-size: 6vw;
    color: #ffda02;
    font-family: 'Alata';
    top: -8vw;
    letter-spacing: 3px;
}
.entry.more a{
   font-family: 游ゴシック;
    margin-bottom: 30px;
    font-size: 20px;
    width: 35%;
    padding: 10px 0;
}
h2.main_txt {
   font-family: 游ゴシック;
    color: white;
    background: #03283a;
    font-weight: 400;
    display: inline-block;
    padding-left: 20px;
}

#main .main_box {
    top: 48%;
    left: 3%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    max-width: 780px;
    width: 100%;
}
#main_txt p:last-of-type {
    position: relative;
    left: 27px;
}
#main_txt {
    font-size: 7vw;
    line-height: 4.5vw;
    letter-spacing: 10px;
    color: #ffda00;
}
div#main_txt p::first-letter {
  font-size: 10vw;
}
.g-menu-btn:after{
    background: rgba(255,255,255,0.8);
}
#contents .box .box_item:after{
    background: linear-gradient(to bottom left, rgba(255,255,255,0) 50%, #ffaf1b 50.5%) no-repeat top left/100% 100%;
}
#main{
    height:auto !important;
}
video{
    vertical-align: bottom;
    margin-top: -25px;
    margin-left: -1px;
}
#main .main_box{
    z-index:1;
}
.back_color{
background: linear-gradient(rgba(0,0,0,0.5) 0%, #08324a 20%, #08324a 80%,rgba(0,0,0,0.5) 100%);
}
#header{
    background-color: #ffaf1a;
}
footer.bg_color1{
    background:#001e30;
}
.font_s{
    font-family: 'Alata', sans-serif;
}

/*---------------------------------------------タブレッツ---------------------------------------*/
@media screen and (max-width:768px){
.shop_info a{
    max-width:none;
}
.shop_info .contact, .shop_info .info {
    padding: 70px 0 !important;
}

.page_title_box p.font_9up{
    font-size:90px;
}
.cms_title2 {
    text-align: center;
    font-size: 8vw;
    color: #ffda02;
    position: relative;
    top: 5vw;
    z-index: 2;
}
.cms_title2 p::first-letter {
    font-size: 10vw;
}
.box .font_24up {
    font-size: -webkit-calc(1rem + 12px);
    font-size: calc(1rem + 12px);
}
.box span.font_80up {
   font-size: -webkit-calc(1rem + 60px);
    font-size: calc(1rem + 60px);
}
#main_txt p:last-of-type {
    position: relative;
    left: 13px;
}

div#main_txt p::first-letter {
    font-size: 9vw;
}
    .entry.more a {
    font-family: 游ゴシック;
    margin-bottom: 30px;
    font-size: 16px;
    width: 35%;
    padding: 10px 0;
}
    h2.main_txt {
    font-size: 18px;
    padding: 10px;
}
}
/*---------------------------------------------ここまで---------------------------------------*/





/*---------------------------------------------スマホ---------------------------------------*/
@media screen and (max-width:667px){
.no {
    padding: 5px;
}
.shop_info .info_box:first-child{
    margin-top:-150px;
}
.shop_info .contact, .shop_info .info {
    padding: 40px 0 !important;
}
.shop_info h2{
    font-size: 20px;
}
.shop_info a{
    width: 90% !important;
}

    .pager a{
     position:relative;
    bottom:20px !important;
}
a.txt_white.font_bold.font_14up.font_12up_tb.font_16_sp.letter_4.d_inline_b.border_so1.pd_10px.pd_l-20px.pd_r-20px.border_rad5.pd_10px_sp.d_block_sp.letter_2_sp.pd_t-15px_sp.pd_b-15px_sp{
    width:100%;
    padding:10px 0;
}
.mail a{
    width:100%;
    padding:10px 0;
    font-size:16px;
}
.sp_view{
    display:block;
}
.page10 .more a:after{
    display:none;
}
    a.txt_white.font_bold.font_14up.font_12up_tb.font_16_sp.letter_4.d_inline_b.border_so1.pd_10px.pd_l-20px.pd_r-20px.border_rad5.pd_10px_sp.d_block_sp.letter_2_sp.pd_t-15px_sp.pd_b-15px_sp,h3.txt_center.font_6up.font_4up_tb.font_16_sp.mg_b-20px{
        font-size:16px;
    }
.content_wrap,.top_cms_box{
    background-color: rgba(255,255,255,0.9);
    position: relative;
    padding:30px 15px;
}

.page_title_box p.font_9up {
    font-size: 60px;
}
.page_title_box p.font_30up {
    position: relative;
    top: 10px;
    color: #001e30;
}
.page_title_box p.font_30up span{
    font-size: 28px;
}
.cms_title2 {
    text-align: center;
    font-size: 10vw;
    color: #ffda02;
    position: relative;
    top: 7vw;
    z-index: 2;
}
.cms_title2 p::first-letter {
    font-size: 14vw;
}
#contents .box .box_item:after {
    content: '';
    height: 30px;
    width: 100%;
    top: 0;
    background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #ffaf1a 50.5%) no-repeat bottom left/100% 100%;
}
#Fellows p {
    position: absolute;
    right: 3.5vw;
    font-size: 10vw;
    color: #ffda02;
    font-family: 'Alata';
    top: -15vw;
    letter-spacing: 3px;
}
#Fellows p::first-letter {
    font-size: 16vw;
}
.catch_box {
    position: relative;
    padding-top: 50px;
    padding-bottom: 100px;
}
.sp_view h2 {
    text-align: center;
    display: block;
    background: none;
    font-weight:bold;
}
.sp_view .more a{
    margin: auto;
    width: 80%;
    margin-bottom: 20px;
}
#main .main_box {
    top: 40%;
    left: 2%;
}
    h1{
        max-width:250px;
        right: -30px;
    }
#main_txt {
    font-size: 9vw;
    line-height: 6.5vw;
    letter-spacing: 10px;
    color: #ffda00;
}

#main_txt p:last-of-type {
    position: relative;
    left: 7px;
}
    .main_box h2,.main_box .more{
        display: none;
    }
    div#main_txt p::first-letter {
    font-size: 12vw;
}
.page7 .page_title_box p.font_9up,.page9 .page_title_box p.font_9up  {
    font-size: 40px ;
}
#banner {
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 99;
    width: 250px;
}
/*---------------------------------------------ここまで---------------------------------------*/