@charset "utf-8";
/* ----------------------------------------------
* normalize
---------------------------------------------- */
html {margin-top: 0;line-height: 1.15; -webkit-text-size-adjust: 100%;}
body {margin: 0;}
main {display: block;}
h1 {font-size: 2em;margin: 0.67em 0;}
hr {box-sizing: content-box; height: 0; overflow: visible;}
pre {font-family: monospace, monospace; font-size: 1em;}
a {background-color: transparent;}
abbr[title] {border-bottom: none; text-decoration: underline; text-decoration: underline dotted;}
b,strong {font-weight: bolder;}
code,kbd,samp {font-family: monospace, monospace; font-size: 1em;}
small {font-size: 80%;}
sub,sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}
sub {bottom: -0.25em;}
sup {top: -0.5em;}
img {border-style: none;}
button,input,optgroup,select,textarea {font-family: inherit;font-size: 100%; line-height: 1.15; margin: 0;}
button,input { overflow: visible;}
button,select { text-transform: none;}
button,[type="button"],[type="reset"],[type="submit"] {-webkit-appearance: button;}
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner {border-style: none; padding: 0;}
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring {outline: 1px dotted ButtonText;}
fieldset {padding: 0.35em 0.75em 0.625em;}
legend {box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal;}
progress {vertical-align: baseline;}
textarea {overflow: auto;}
[type="checkbox"],[type="radio"] {box-sizing: border-box; padding: 0;}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button {height: auto;}
[type="search"] {-webkit-appearance: textfield; outline-offset: -2px;}
[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit;}
details {display: block;}
summary {display: list-item;}
template {display: none;}
[hidden] {display: none;}

body {font-family: 'Noto Sans JP', sans-serif; font-weight:400; color:#444; font-size: 1.5rem;}
/* ----------------------------------------------
* reset
---------------------------------------------- */
html{
scroll-behavior: smooth;/*Safariは非対応*/
}
body {
margin: 0 auto;
padding: 0;
-webkit-text-size-adjust: 100%;
overflow-wrap: break-word;
}
table {
margin : 0;
border-collapse: collapse;
border-spacing: 0;
empty-cells: show;
}
img {
vertical-align: middle;
border: none;
}

*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;*behavior:url(boxsizing.htc)}.container{margin:0 auto}.clr:after,.col:after,.container:after,.group:after,.row:after{content:"";display:table;clear:both}.row{padding-bottom:0}.col{display:block;float:left;width:100%}@media (min-width:769px),print{.gutters .col{margin-left:2%}.gutters .col:first-child{margin-left:0}.gutters .colR:first-child{margin-right:0}}

#fadewrap {animation: fadein 1s forwards;}
@keyframes fadein {0% {opacity: 0} 60%{opacity:0} 100% {opacity: 1}}

/* ----------------------------------------------
* Starter set
---------------------------------------------- */
/*scrollbar*/
::-webkit-scrollbar{-webkit-appearance:none;width:10px; background-color:#ccc;}
::-webkit-scrollbar-thumb{border-radius:4px;background-color:rgba(0,0,0,.5);-webkit-box-shadow:0 0 1px rgba(255,255,255,.5);}

/*clearfix*/
.clearfix:after {content: " "; display: block; height: 0;clear: both; visibility: hidden;}
.clearfix {display: inline-table;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/* ***DEF-FONTSIZE*** */
html {font-size: 62.5%;}
body {font-size: 1.5em; line-height: 1.6;}
p{font-size: 1.5rem; /* 15px */}

@media only screen and ( max-width : 768px ) {
body {font-size: 1.4em; line-height: 1.6;}
p{font-size: 1.4rem; /* 14px */}
}

/* ----------------------------------------------
* other
---------------------------------------------- */

a {outline:none; color:;}
a:hover {text-decoration: none;}
a,a:hover,a:hover img {
/*-webkit-transition: 0.5s; -moz-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s;*/
text-decoration: none;
}
a:after{
font-family:'Font Awesome 5 Free'; font-weight:600; margin-left:1em; font-size:.5em;}
a[target="_blank"]:after{
content:"\f35d"; opacity:.5;}
a[href$=".pdf"]:after{
content:"\f1c1"; color:red; font-weight:lighter; font-size:.9em; opacity:.9;}
a[href$=".doc"]:after, a[href$=".docx"]:after{
content:"\f1c2"; color:darkblue; font-weight:lighter; font-size:.9em; opacity:.9;}
a[href$=".xls"]:after, a[href$=".xlsx"]:after{
content:"\f1c3"; color:green; font-weight:lighter; font-size:.9em; opacity:.9;}
a.btn:after{margin-left:1em;}

img {
max-width: 100%;
height: auto;
width /***/:auto;　/*IE8のみ適用*/
}

.sp{display:none !important;}
.tb{display:none !important;}
@media only screen and ( max-width : 768px ) {
.tb{display:inherit !important;}
}
@media only screen and ( max-width : 500px ) {
.pc{display:none !important;}
.sp{display:inherit !important;}
}

@media screen and (max-width: 768px) {
    .br-sp { display:none; }
}
/*blue:#1230b2*/
/*aqua:#0082e0*/
/*gray:#f2f5fa*/
/*course1:#1230b2*/
/*course2:#ff5b90*/
/*course3:#00b58c*/

.red{color:#ea393f;}
.blue{color:#006fbf;}

/*FADE*/
/* 20210820 削除
.sa {opacity: 0; transition: all .5s ease;}
.sa.show {opacity: 1; transform: none;}
.sa--lr {transform: translate(-100px, 0);}
.sa--rl {transform: translate(100px, 0);}
.sa--up {transform: translate(0, 100px);}
.sa--down {transform: translate(0, -100px);}
.sa--scaleUp {transform: scale(.5);}
.sa--scaleDown {transform: scale(1.5);}
.sa--rotateL {transform: rotate(180deg);}
.sa--rotateR {transform: rotate(-180deg);}
*/

/*ボタン装飾*/
.btn label, .btn1 label, .btn2 label, .btn3 label{cursor:pointer;}
a.btn{border:1px solid; line-height:1; padding:.8em; max-width:150px; text-align:center; display:block; margin:0 auto; color:#444; transition:.3s;}
a.btn:hover{background:#0082e0; color:#fff; opacity:1;}
a.btn i{display:inline-block; margin-right:.5em;}
a.btn.more{white-space:nowrap; margin-top: 2em;}

a.btn1{text-align:center; color:#fff; padding:1em; font-weight:700; line-height:1; border-bottom:0;
border-radius:.4em; box-shadow: 0 5px 8px rgba(0,0,0,.3);
background: rgb(0,130,225); background: linear-gradient(0deg, rgba(0,130,225,1) 0%, rgba(0,120,205,1) 50%, rgba(0,130,225,1) 50%, rgba(0,130,225,1) 100%);
}
a.btn1:hover{
opacity:1; box-shadow: 0 0 0 rgba(0,0,0,0);
background: rgb(0,100,225);background: linear-gradient(0deg, rgba(0,100,225,1) 0%, rgba(0,85,205,1) 50%, rgba(0,100,225,1) 50%, rgba(0,100,225,1) 100%);}

a.btn2{text-align:center; color:#222; padding:1em; font-weight:700; line-height:1; border-bottom:0;
background:rgb(233,233,0); border-radius:.4em; box-shadow: 0 5px 8px rgba(0,0,0,.3);
background: linear-gradient(0deg, rgba(233,233,0,1) 0%, rgba(233,233,0,1) 50%, rgba(255,255,0,1) 50%, rgba(255,255,0,1) 100%);
}
a.btn2:hover{
opacity:1; box-shadow: 0 0 0 rgba(0,0,0,0);
background: rgb(255,214,69);background: linear-gradient(0deg, rgba(255,214,69,1) 0%, rgba(255,208,0,1) 50%, rgba(255,226,0,1) 50%, rgba(255,226,0,1) 100%);}

a.btn3{text-align:center; color:#fff; padding:0 1em; border-bottom:0;
background:rgb(5,20,140); border-radius:.2em;
background: linear-gradient(0deg, rgba(5,20,140,1) 0%, rgba(5,20,140,1) 50%, rgba(20,50,180,1) 50%, rgba(20,50,180,1) 100%);
display:block; font-size:2.4rem; font-weight:400; line-height:55px; white-space:nowrap;
}
a.btn3:hover{
opacity:1;
background: rgb(0,10,100);background: linear-gradient(0deg, rgba(0,10,100,1) 0%, rgba(0,10,100,1) 50%, rgba(5,20,140,1) 50%, rgba(5,20,140,1) 100%);}

a.btn4{text-align:center; color:#fff; padding:1em; font-weight:700; line-height:1; font-size:2rem; border-bottom:0; display:block; max-width: 400px; margin:30px auto;
background:rgb(230,80,130); border-radius:.4em; transition: .3s;
background: linear-gradient(0deg, rgba(230,80,130,1) 0%, rgba(230,80,130,1) 50%, rgba(255,90,145,1) 50%, rgba(255,90,145,1) 100%);
}
a.btn4:hover{
opacity:1; box-shadow: 0 0 0 rgba(0,0,0,0);
background: rgb(255,214,69);background: linear-gradient(0deg, rgba(250,90,140,1) 0%, rgba(250,90,140,1) 50%, rgba(255,110,160,1) 50%, rgba(255,110,160,1) 100%);}

a.btn2.inline{padding:0 1em; font-size:1.4rem; font-weight:600; line-height:2.4rem; white-space:nowrap; border-radius:3px; box-shadow: 0 0 0;}
a.btn2.block{padding:0 1em; font-size:3.4rem; font-weight:600; line-height:6.4rem; white-space:nowrap; display:block;}

@media only screen and ( max-width :500px ) {
a.btn2.block{font-size:2.5rem; line-height:5rem;}
}

a.tel{text-align:center; color:#fff; padding:0 1em; font-weight:700; border-bottom:0;
background:rgb(10,140,40); border-radius:.1em;
background: linear-gradient(0deg, rgba(10,140,40,1) 0%, rgba(10,140,40,1) 50%, rgba(20,170,60,1) 50%, rgba(20,170,60,1) 100%);
display:block; font-size:2.6rem; line-height:40px; white-space:nowrap;
}
a.tel:hover{
opacity:1;
background: rgb(30,180,20);background: linear-gradient(0deg, rgba(30,180,20,1) 0%, rgba(30,180,20,1) 50%, rgba(30,200,20,1) 50%, rgba(30,200,20,1) 100%);}
a.tel img{display:inline-block; width:50px; height:25px; margin:0 .5em 0 0;}

.reflection{
display:inline-block;
position:relative;
overflow:hidden;
margin-top: -50px;	
margin-bottom: -20px;
}
 
.reflection:after {
content:"";
height:100%;
width:30px;
position:absolute;
top:-180px;
left:0;
background-color: #fff;
opacity:0;
-webkit-transform: rotate(45deg);
-webkit-animation: reflection 2s ease-in-out infinite;
}
 
@keyframes reflection {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.c-button._shiny {
    display: block;
    position: relative;
    padding: 1em 1.5em;
    background-color: #FFF;
    border-radius: 4px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
	transition: 300ms;
}
.c-button._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #FFF;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.c-button._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

/*レイアウト*/

/*h*/
h1{font-size:2.8rem; margin:0; padding:30px 15px; line-height:1.3; text-align:center;}
h2{font-size:3.5rem; text-align:center; margin:0 auto .8em auto; padding:0; line-height:1.3;  font-weight:600; color:#0082e0; display:table;}
h2 label{color:#444; font-size:2rem; display:block; margin:.3em 0 0 0; padding:.3em 0 0 0; border-top:3px solid #0082e0;}
h2.left{margin-left:0; text-align:left;}
h3{font-size:3.5rem; text-align:center; margin:.3em auto .7em auto; padding: .2em 0; line-height:1.3; border-top:2px solid; border-bottom:2px solid; color:#0082e0;}
h4{font-size:1.8rem; border-left:3px solid #0082e0; border-bottom:1px solid #0082e0; line-height:1.3; margin:2.5em 0 1em 0; padding:.2em .5em .3em .5em;}
span.first + h2, span.first + h4
{margin-top:0 !important;}
h5{font-size:1.6rem; margin:1.5em 0 .8em 0;}

@media screen and (max-width: 500px) {
h2{font-size:3rem;}
h2 label{font-size:1.6rem;}
h2.left{margin-left:auto; text-align:center;}
h3{font-size:3.2rem; border-top:1px solid; border-bottom:1px solid;}
h4{font-size:1.5rem;}
}

/*p*/
p{padding:0; margin:0;}
p+p{margin-top:1em;}

/*dl*/
dl,dt,dd{padding:0; margin:0; text-align:left; vertical-align:top;}

/*hr*/
hr{border:0; display:block; margin:60px auto; width:70px; height:4px; background-color:rgba(255,255,255,.5);}

/*ulol*/
ul,ol,li{list-style:none; padding:0; margin:0; font-size:1.5rem;}

/*flexbox*/
.flexbox{display:flex; grid-gap:20px;}
@media screen and (max-width: 500px) {
.flexbox{display:inherit; grid-gap:inherit;}
}

/*gridbox*/
.gridbox {display: grid; gap: 30px; grid-template-columns: 1fr 1fr;}
@media screen and (max-width: 500px) {
.gridbox {display: inherit; gap: inherit; grid-template-columns: inherit;}
}

/*slick*/
.slick-slide img {width: 100%;}
.slick-prev:before, .slick-next:before {color: black; font-family:'Font Awesome 5 Free'; font-weight:900;}
.slick-slide {transition: all ease-in-out .3s;}

/*header*/
header{overflow: hidden; position:fixed; width:100%; z-index:9000; background:none;}
header.fv_header{overflow: hidden; position:fixed; width:100%; z-index:9000; background:none;}
header.shop_header{overflow: hidden; position:fixed; width:100%; z-index:9000; background:none;}
body.area2 header {background:none;}
body.area3 header {background:none;}
header .inner{max-width:1400px;margin: 0 auto; position:relative;}
header.fv_header .inner{max-width:1280px;margin: 10px 10% 0 23%; position:relative;}
header.shop_header .inner{max-width:1400px;margin: 0 auto; position:relative;}
header .logo{height:70px;display: flex;justify-content: flex-start;align-items: center;}
body#top header .logo{height:70px;display: flex;justify-content: flex-start;align-items: flex-start;}
header.shop_header .logo{height:70px;display: flex;justify-content: flex-start; align-items: center;}
header .logo img{height:37px; margin-left:10px;}
header.fv_header .logo img{height:40px; margin-left:10px;}
header.shop_header .logo img{height:37px; margin-left:10px;}
header .language a{color:#fff; background:#1230b2;position: absolute; top: 40px; right: 85px; font-size:17px;border-radius:7px;padding: 1px 10px 3px;}
header.shop_header .language a{color:#fff; background:#1230b2;position: absolute; top: 40px; right: 85px; font-size:17px;border-radius:7px;padding: 1px 10px 3px;}
header.fv_header .language a{color:#fff; background:#1230b2;position: absolute; top: 40px; right: 85px; font-size:17px;border-radius:7px;padding: 1px 10px 3px;}
@media screen and (max-width: 1280px) {
    header.fv_header .inner{max-width:1280px;margin: 0 auto; position:relative;padding-top: 5px;}
}
@media screen and (max-width: 500px) {
header .logo img{height:20px;}
}
@media screen and (max-width: 767px) {
header.fv_header .logo img{height:27px; margin-left:10px;}
body#top header .logo{height:80px;display: flex;justify-content: flex-start;align-items: center;align-items: flex-start;}
header.fv_header{padding-top: 10px;}
header.shop_header{overflow:visible;position:fixed; width:100%; z-index:9000; background:none;}
header.shop_header .logo{height:50px;display: flex;justify-content: flex-start; align-items: center;}
header.shop_header .logo img{height:27px; margin-left:10px;}
header.shop_header .language a{color:#fff; background:#1230b2;position: absolute; top: 31px; right: 80px; font-size:14px;border-radius:7px;padding: 1px 10px 3px;}
header .language a{color:#fff; background:#1230b2;position: absolute; top: 31px; right: 80px; font-size:14px;border-radius:7px;padding: 1px 10px 3px;}
header.fv_header .language a{color:#fff; background:#1230b2;position: absolute; top: 31px; right: 80px; font-size:14px;border-radius:7px;padding: 1px 10px 3px;}
}
.nav{
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background: rgb(18,48,178);
background: linear-gradient(145deg, rgba(18,48,178,1) 0%, rgba(18,48,178,1) 50%, rgba(15,41,153,1) 50%, rgba(15,41,153,1) 100%);
color: #ffffff;
display: flex;
justify-content: center;
align-items: center;
/* 初期：非表示 */
visibility: hidden;
opacity: 0;

/* ふわっと表示 */
transition: 0.5s ease-in-out;
}
.nav ul{
list-style:none;
}
.nav li:not(:last-child){
margin-bottom: 30px;
}
.nav a{
color: #ffffff;
}

/* ナビゲーションボタン（開く） */
#navbtn{
position:absolute;
top: /*25px*/0;
right: 15px;
padding: 0;
outline: none;
border: none;
background: none;
width: 50px;
height: 50px;
cursor: pointer;
z-index: 1000;
}
body #navbtn,
body#top #navbtn,
body#shibuya #navbtn,
body#akasaka #navbtn,
body#ikebukuro #navbtn,
body#shinbashi #navbtn,
body#omiya #navbtn,
body#ueno #navbtn,
body#umeda #navbtn,
body#nanba #navbtn,
body#shinjuku #navbtn{
    position:absolute;
    top: /*25px*/0;
    right: 15px;
    padding: 0;
    outline: none;
    border: none;
    background: none;
    width: 65px;
    height: 70px;
    cursor: pointer;
    z-index: 1000;
    background-color:rgba(15, 41, 153, 1) ;
    padding: 0 13px 5px;
    border-radius: 7px;
    margin-top: 2px;
    }
    @media screen and (max-width: 767px) {
        body #navbtn,
        body#top #navbtn,
        body#shibuya #navbtn,
        body#akasaka #navbtn,
        body#ikebukuro #navbtn,
        body#shinbashi #navbtn,
        body#omiya #navbtn,
        body#ueno #navbtn,
        body#umeda #navbtn,
        body#nanba #navbtn,
        body#shinjuku #navbtn{
            width: 60px;
            height: 55px;
            background-color:rgba(18, 48, 178, 1) ;
        }
}


#navbtn span{display:block; width: 100%; color:#fff; position:absolute; bottom:-1em; text-align:center;}
#navbtn data::before,
#navbtn data::after{
content : '';
display: block;
height: 1px;
background-color: #ffffff;
transform: translateY(10px);
transition: 0.3s ease-in-out;
}
body #navbtn span,
body#top #navbtn span,
body#shibuya #navbtn span,
body#akasaka #navbtn span,
body#ikebukuro #navbtn span,
body#shinbashi #navbtn span,
body#omiya #navbtn span,
body#ueno #navbtn span,
body#umeda #navbtn span,
body#nanba #navbtn span,
body#shinjuku #navbtn span{display:block; width: 100%; color:#fff; position:absolute;bottom: 8px; right: 1px; text-align:center;font-size: 17px;}
@media screen and (max-width: 767px) {
body #navbtn span,
body#top #navbtn span,
body#shibuya #navbtn span,
body#akasaka #navbtn span,
body#ikebukuro #navbtn span,
body#shinbashi #navbtn span,
body#omiya #navbtn span,
body#ueno #navbtn span,
body#umeda #navbtn span,
body#nanba #navbtn span,
body#shinjuku #navbtn span{display:block; width: 100%; color:#fff; position:absolute;bottom: 2px; right: 1px; text-align:center;font-size: 13px;}    
}

#navbtn data::before,
#navbtn data::after{
content : '';
display: block;
height: 1px;
background-color: #ffffff;
transform: translateY(10px);
transition: 0.3s ease-in-out;
}
body #navbtn data::before,
body #navbtn data::after,
body#top #navbtn data::before,
body#top #navbtn data::after,
body#shibuya #navbtn data::before,
body#akasaka #navbtn data::before,
body#ikebukuro #navbtn data::before,
body#shinbashi #navbtn data::before,
body#omiya #navbtn data::before,
body#ueno #navbtn data::before,
body#umeda #navbtn data::before,
body#nanba #navbtn data::before,
body#shinjuku #navbtn data::before,
body#shibuya #navbtn data::after,
body#akasaka #navbtn data::after,
body#ikebukuro #navbtn data::after,
body#shinbashi #navbtn data::after,
body#omiya #navbtn data::after,
body#ueno #navbtn data::after,
body#umeda #navbtn data::after,
body#nanba #navbtn data::after,
body#shinjuku #navbtn data::after{
content : '';
display: block;
height: 1px;
background-color: #ffffff;
transform: translateY(3px);
transition: 0.3s ease-in-out;
}


#navbtn data::before{
transform: translateY(-10px);
box-shadow: 0 10px #ffffff;
}
        body #navbtn data::before,
body#top #navbtn data::before,
        body#shibuya #navbtn data::before,
        body#akasaka #navbtn data::before,
        body#ikebukuro #navbtn data::before,
        body#shinbashi #navbtn data::before,
        body#omiya #navbtn data::before,
        body#ueno #navbtn data::before,
        body#umeda #navbtn data::before,
        body#nanba #navbtn data::before,
        body#shinjuku #navbtn data::before{
    transform: translateY(-17px);
    box-shadow: 0 10px #ffffff;
    }
    @media screen and (max-width: 767px) {
        body #navbtn data::before,
        body#top #navbtn data::before,
        body#top #navbtn data::after,
        body#shibuya #navbtn data::before,
        body#akasaka #navbtn data::before,
        body#ikebukuro #navbtn data::before,
        body#shinbashi #navbtn data::before,
        body#omiya #navbtn data::before,
        body#ueno #navbtn data::before,
        body#umeda #navbtn data::before,
        body#nanba #navbtn data::before,
        body#shinjuku #navbtn data::before,
        body#shibuya #navbtn data::after,
        body#akasaka #navbtn data::after,
        body#ikebukuro #navbtn data::after,
        body#shinbashi #navbtn data::after,
        body#omiya #navbtn data::after,
        body#ueno #navbtn data::after,
        body#umeda #navbtn data::after,
        body#nanba #navbtn data::after,
        body#shinjuku #navbtn data::after{
            content : '';
            display: block;
            height: 1px;
            background-color: #ffffff;
            transform: translateY(7px);
            transition: 0.3s ease-in-out;
        }
        body #navbtn data::before,
        body#top #navbtn data::before,
        body#shibuya #navbtn data::before,
        body#akasaka #navbtn data::before,
        body#ikebukuro #navbtn data::before,
        body#shinbashi #navbtn data::before,
        body#omiya #navbtn data::before,
        body#ueno #navbtn data::before,
        body#umeda #navbtn data::before,
        body#nanba #navbtn data::before,
        body#shinjuku #navbtn data::before{
            transform: translateY(-13px);
            box-shadow: 0 10px #ffffff;
        }        
}

/* ナビゲーションボタン（閉じる） */
.open #navbtn{
z-index: 100000;
}

.open #navbtn data::before{
transform: rotate(-45deg);
box-shadow: none;
}
.open body #navbtn,
.open body#shibuya #navbtn,
.open body#akasaka #navbtn,
.open body#ikebukuro #navbtn,
.open body#shinbashi #navbtn,
.open body#omiya #navbtn,
.open body#ueno #navbtn,
.open body#umeda #navbtn,
.open body#nanba #navbtn,
.open body#shinjuku #navbtn
{
    background:none;
}
.open body data::before,
.open body#top #navbtn data::before,
    .open body#shibuya #navbtn data::before,
    .open body#akasaka #navbtn data::before,
    .open body#ikebukuro #navbtn data::before,
    .open body#shinbashi #navbtn data::before,
    .open body#omiya #navbtn data::before,
    .open body#ueno #navbtn data::before,
    .open body#umeda #navbtn data::before,
    .open body#nanba #navbtn data::before,
    .open body#shinjuku #navbtn data::before{
    transform: rotate(-45deg);
    box-shadow: none;
    }
    .open #navbtn data::after{
    transform: rotate(45deg);
    box-shadow: none;
    }
    .open body #navbtn data::after,
    .open body#top #navbtn data::after,
    .open body#shibuya #navbtn data::after,
    .open body#akasaka #navbtn data::after,
    .open body#ikebukuro #navbtn data::after,
    .open body#shinbashi #navbtn data::after,
    .open body#omiya #navbtn data::after,
    .open body#ueno #navbtn data::after,
    .open body#umeda #navbtn data::after,
    .open body#nanba #navbtn data::after,
    .open body#shinjuku #navbtn data::after{
    transform: rotate(45deg);
    box-shadow: none;
    }
   


    /* ナビゲーションメニュー 開いた時*/
.open .nav{
visibility: visible;
opacity: 1;
}
nav.nav .area{overflow-y:auto; height:90%; padding:0 5%;}
nav.nav ul{display:80%; max-width:500px; display:block;}
nav.nav li{border-bottom:2px solid; font-size:2rem; text-align:center; padding:0 !important; margin:0 !important;}
nav.nav a{display:block; padding:.8em 2em; font-weight:700; line-height:1.3; transition:.5s;}
nav.nav a:hover{opacity:.5;}
nav.nav a label{display:block; padding:0; margin:0; cursor:pointer;}
nav.nav a:after{display:none;}
nav.nav li img{display:block !important; max-width:300px; margin-bottom: 30px;}
@media screen and (max-width: 500px) {
nav.nav li{font-size:1.6rem;}
nav.nav li img{width:200px;padding-left: 30px;}
}

/*section*/
section.gray, div.gray{background:#f2f5fa;}
section > .inner, div.gray > .inner, #outline > .inner{max-width:1030px; margin:0 auto; padding:50px 15px}
.gray > .inner > .box{background:#fff; padding:50px;}
@media screen and (max-width: 500px) {
section > .inner, div.gray > .inner, #outline > .inner{padding:40px 15px;}
.gray > .inner > .box{padding:20px;}
}

.aed.sp{margin:0 15px 50px 15px;}
/*footer*/
footer{background-color:#1230b2;color:#fff;}
body.area2 footer {background:#764ac5;}
body.area3 footer {background:#ea3a3f;}
footer .inner{padding:1em 15px;}
footer dl{display:flex; justify-content:flex-start; align-items:center; margin:0 auto; max-width:700px;}
footer dd{margin-left:1em;}
footer ul{list-style:none; padding:0; margin:0;}
footer li{padding:0; margin:0; display:inline-block;}
footer li + li:before{content:""; display:inline-block; width:1px; height:1em; background: #fff; margin:0 .8em;}
footer li a{color:#fff; transition:.3s; border:0;}
footer li a:hover{opacity:.6;}
footer p{margin-top:0;}
footer img.aed{height:40px; width:auto;}
@media screen and (max-width: 767px) {
footer dl{display:block; max-width:inherit;}
footer dt{text-align:center; padding-bottom:1em;}
footer dd{margin-left:0; text-align:center;}
footer li, footer p{font-size:1.2rem;}
footer li + li:before{margin:0 .3em;}
footer p{margin-top:.5em;}
footer img.aed{display:none;}
}

p.to-top{display:block; width:90px; height:90px; line-height:90px; text-align:center; opacity:.5; position:fixed; bottom:0; right:0; color:#fff; background-color:#556473; cursor:pointer; margin:0; transition: .3s;}
p.to-top:hover{opacity:1;}
p.to-top:before{content:""; display:block; width:20px; height:20px; border-top:2px solid; border-left:2px solid;-webkit-transform: rotate(45deg);transform: rotate(45deg); margin:40px 0 0 38px;}
@media screen and (max-width: 1000px) {
p.to-top{width:60px; height:60px; line-height:60px;}
p.to-top:before{width:15px; height:15px; margin:25px 0 0 25px;}
}
@media screen and (max-width: 768px) {
p.to-top{width:50px; height:50px; line-height:50px;}
p.to-top:before{margin:22px 0 0 18px;}
}

p.address {display:none;}
body#shibuya p.address.shibuya,
body#shinjuku p.address.shinjuku,
body#ikebukuro p.address.ikebukuro,
body#ueno p.address.ueno,
body#shinbashi p.address.shinbashi,
body#akasaka p.address.akasaka,
body#omiya p.address.omiya,
body#umeda p.address.umeda,
body#nanba p.address.nanba
{display:inherit;}

/*list*/
main section .inner ul{margin:1em 0;}
main section .inner li{list-style:circle !important; padding:0; margin:.3em 0 .3em 1.5em;}

/*table*/
main table{text-align:center; vertical-align: middle; width:100%;}
main table th{color:#fff; background:#006fbf; border:2px solid #006fbf; padding:.5em; white-space:nowrap;}
main table caption{color:#fff; background:#006fbf; border:2px solid #006fbf; padding:.5em; white-space:nowrap;font-size:2rem;}
main table th data{font-size:85%;}
main table caption data{font-size:85%;}
main table td{border:2px solid #006fbf; padding:.8em;}
@media screen and (max-width: 500px) {
main table th{border:1px solid #006fbf;}
main table caption{border:1px solid #006fbf;}
main table td{border:1px solid #006fbf;}
}

main table.line{text-align:left; vertical-align:top; width:100%;}
main table.line tr{border-top:1px solid #ccc; border-bottom:1px solid #ccc;}
main table.line th{background-color:inherit; color:inherit; padding: 1em 1em 1em 0;}
main table.line td{border:0; padding: 1em 0;}
@media screen and (max-width: 500px) {
main table.line{text-align:center; display:block; line-height:1.3;}
main table.line,
main table.line tr,
main table.line th,
main table.line td
{display:table; width:100%;}
main table.line tr{display:block; border-top:0; padding:1em 0;}
main table.line th{display:block; padding:.2em 0; width:inherit;}
main table.line td{display:block; padding:.2em 0; width:inherit;}
}

main table.clear{text-align:left; vertical-align:top;}
main table.clear th{background-color:inherit; color:inherit; padding:0;}
main table.clear td{border:0; padding:0;}
main table.clear td+td{padding-left:1.5em;}

/*a*/
main a{color:#006fbf; border-bottom: 1px solid; display:inline-block; margin:0 .1em; transition: .3s;}
main a:hover{opacity:.5;}

/**********************************************

INDEX

**********************************************/
main{overflow:hidden;}

/*intro*/
.video-container{position: relative; height:100vh; margin-top: 70px;}
video {width: 100%; height:100%; object-fit: cover; }
@media screen and (max-width: 768px) and (min-width: 501px) {
.video-container {position:inherit; height:inherit; margin-top:70px;}
video {width: 100%; height:auto; object-fit:inherit;}
}
@media screen and (max-width: 500px) {
.video-container {height:calc(100vh - 350px);}
.video-container:not(.js_active)::before {
position: absolute;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
background-color: rgba(0, 0, 0, 0.5);
content: "";
}
.video-container:not(.js_active)::after {
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
width: 20px;
height: 20px;
background-image: url('../img/top/loading.gif');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
content: "";
}
}

/*sidebtn*/
#sidebtn, #sidebtn2{width:150px; z-index:+5; position:fixed; bottom: 2em; right:.8em;}
#sidebtn a, #sidebtn2 a{display:block;}
#sidebtn a+a, #sidebtn2 a+a{margin-top:.8em;}
@media screen and (max-width: 500px) {
/* スマホの場合も右下固定にする
#sidebtn, #sidebtn2{position:inherit; bottom:inherit; right:inherit; display:flex; width:100%;}
#sidebtn .btn1, #sidebtn .btn2, #sidebtn2 .btn1, #sidebtn2 .btn2{box-shadow:none; border-radius:0; margin:0; width:50%; padding:1.5em .3em; font-size:1.8rem;}
*/
/*body#top #sidebtn, body#top #sidebtn2{display:none;}*/
}
@media screen and (min-width: 501px) {
#sidebtn.clear, #sidebtn2.clear{display:none;}
}
body.location #sidebtn, body.form #sidebtn{display:none;}
body#index.location #sidebtn{display:inherit;}
@media screen and (max-width: 500px) {
body#index.location #sidebtn{display:flex;}
body#index.location #sidebtn, body.course #sidebtn{display:none;}
}

/*Location*/
body#top section#location .inner{max-width:inherit; padding:0;}
/*body#top section#location h2{margin:30px auto 15px auto; display:flex; justify-content: center; align-items:center; grid-gap:10px;}
body#top section#location h2 data{border-bottom:3px solid #0082e0; padding-bottom: .3em;}*/
/*body#top section#location h2 label{border:0; display:block; padding:0 0 10px 0; position:relative;}
body#top section#location h2 label:after{content:""; display:block; width:100%; height:3px; background:#0082e0; position:absolute; bottom:3px;}*/
@media screen and (max-width: 500px) {
/*body#top section#location h2 data{padding-right:10px;}
body#top section#location h2{margin:5px auto 10px auto; font-size: 2.4rem;}
*/}
.regular.slider{overflow:hidden;}
.regular.slider a{border-bottom: 0; display:block;}



.index_location{max-width:800px; margin:0 auto;}
.index_location a{display:block; margin:.5em 0; border-bottom: 0; opacity:1 !important;}
.index_location .item{overflow:hidden; aspect-ratio:7 / 1; background:blue; position:relative;}
.index_location .item img{object-fit:cover; width:100%; height:100%; transition-duration: 0.5s;}
.index_location .item:hover img{transform: scale(1.1); transition-duration: 0.5s; opacity:.5;}
.index_location .item .text{position:absolute; left:0; top:0; z-index:+1;}
.index_location .item .text{display:flex; align-items:center; width:100%; aspect-ratio:7 / 1; padding-bottom:.5em;}
.index_location .item .text > div{color:#fff; font-size:9vmin; font-weight:bold; line-height:1.3; letter-spacing:.1em;}
.index_location .item .text > div span{padding:0 .3em;}
.index_location .item .text > div small{display:table; background:#0f3854; font-size:35%; font-weight:normal; letter-spacing:0; padding:0 1em; position:relative; border-right:1px solid #0f3854;}
.index_location .item .text > div small:after{content:""; position:absolute; top:0; right:-.7em; display:block;
width: 0; height: 0; border-style: solid;border-color:#0f3854 transparent transparent transparent; border-width: 1.3em .7em 0 0;}
@media screen and (max-width: 800px) {
.index_location{max-width:inherit; margin:0 1em;}
.index_location .item{overflow:hidden; aspect-ratio:6 / 1;}
.index_location .item .text{aspect-ratio:6 / 1;}
}
@media screen and (max-width: 500px) {
.index_location .item{overflow:hidden; aspect-ratio:5 / 1;}
.index_location .item .text{aspect-ratio:5 / 1;}
h2.notokyo{display:block; width:100%; margin:.5em 0 .5em 0; padding:0; line-height:1;}
h2.notokyo label{border-top:3px solid #a0dcff; padding:.5em 0;}
}

.index_location a .item .text > div:after{
	content:"▶"; background:#fff; font-size:1.8rem; display:block; line-height:1.8; border-radius:1.8em; letter-spacing:0; text-align:center; width:1.8em; position:absolute; top:35%; transition-duration: 0.5s;
	right:1em; color:#0184df; opacity:.8;}
.index_location .item:hover .text > div:after{opacity:1 !important;}
@media screen and (max-width: 600px) {
.index_location a .item .text > div:after{font-size:1.5rem; right:1em; opacity:.9;}
}




/*banner*/
section#banner > .inner{max-width:1000px; margin:0 auto; padding:30px 15px 0px; text-align:center;}
section#banner a{border:0 !important; display:inherit; margin:0;}
#iframe_player_api{width:910px; height: 510px;}
@media screen and (max-width: 500px) {
section#banner{margin-top: 10px; margin-bottom: -30px;}
#iframe_player_api{width:100%; height: 220px;}
}

/*banner2*/
section#banner2 > .inner{max-width:455px; margin:0 auto; padding:30px 15px 0px; text-align:center;}
section#banner2 a{border:0 !important; display:inherit; margin:0;}
#iframe_player_api{width:455px; height: 747px;}
@media screen and (max-width: 500px) {
section#banner2{margin-top: -20px; margin-bottom: -30px;}
#iframe_player_api{width:100%; height: 220px;}
}

/*app_top*/
section#app_top > .inner{max-width:1000px; margin:0 auto; padding:20px 15px 15px; text-align:center;}
section#app_top a{border:0 !important; display:inherit; margin:0;}
@media screen and (max-width: 500px) {
section#app_top{margin-top: 0px; margin-bottom: 30px; padding-top: 0px; }
#app_top img{margin:0 auto; }
}
/*recruit_s*/
section#recruit_s > .inner{max-width:1000px; margin:0 auto; padding:50px 15px 15px; text-align:center;}
section#recruit_s a{border:0 !important; display:inherit; margin:0;}
@media screen and (max-width: 768px) {
section#recruit_s  > .inner{margin-top: 0px; margin-bottom: 30px; padding: 0px 15px 15px; }
#recruit_s img{margin:0 auto; }
}
/*online_s*/
section#online_s > .online_inner{max-width:1000px; margin:0 auto; padding:20px 15px 15px; text-align:center;}
section#online_s a{border:0 !important; display:inherit; margin:0;}
@media screen and (max-width: 768px) {
section#online_inner{margin-top: 0px; margin-bottom: 30px; padding-top: 0px; }
#online_s img{margin:0 auto; }
}
/*app*/
section#app > .inner{max-width:1000px; margin: auto; padding:0px 15px 0px; text-align:center;}
section#app a{border:0 !important; display:inherit; margin:0;}
#iframe_player_api{width:910px; height: 510px;}
@media screen and (max-width: 500px) {
section#app{margin-top: 30px; margin-bottom: -20px }
#app img{margin:0 auto; }
}

/*covid*/
section#covidbnr > .inner{max-width:1000px; margin:0 auto; padding:50px 15px; text-align:center;}
section#covidbnr a{border:0 !important; display:inherit; margin:0;}
@media screen and (max-width: 500px) {
body#akasaka section#covidbnr{margin-top: 0px;}
section#covidbnr > .inner{padding:10px 15px 30px;}
	
}

/*start*/
section#start h1{margin:0px auto !important; padding:0 15px !important; color: #FFF; font-style: italic;font-size:6rem; font-weight:700; text-shadow: 2px 2px 3px #808080; line-height: 0.8;}
section#start h1 big{font-size:7rem; color: #ffff00;}
section#start h1 .color{font-size:7rem; color: #ffff00;}
section#start.sp h1{margin:0 auto;}
section#start.sp h1 img{height:90px; width:auto; }
section#start h2{margin:60px auto 10px auto; padding:0 15px; color: #FFF; font-style: italic;font-size:6rem; font-weight:700; text-shadow: 2px 2px 3px #808080;}
section#start h2 big{font-size:7rem; color: #FFF;}
section#start.sp h2{margin:0 auto;}
section#start.sp h2 img{height:90px; width:auto; }
section#start div.image{background:url('../img/top/bg_start1.webp') center no-repeat; background-size:cover; padding-top:25px;}
section#start.sp div.image{background:url('../img/top/bg_start1_sp.webp') center no-repeat;margin-top:70px; padding-top: 10px;}
section#start div.image .bg2{margin:0 auto; display:block;}
section#start.sp div.image .bg2{max-height:180px; width:auto; width:100%; height:auto;}
section#start div.image .labels{text-align:center; display:flex; justify-content:center; max-width:1000px; margin:0 auto;}
section#start div.image label{background:#fff; color:#1230b2; font-size:3.2rem; font-weight:900; display:inline-block; line-height:50px; white-space:nowrap; position:relative; margin: .2em .5em; padding:0 .2em;}
section#start div.image label a{text-decoration: none !important;border-bottom:0px solid #dd0000;color:#1230b2; }
section#start.sp div.image label{font-size:2.0rem;}
section#start div.image label:before{content:""; position:absolute; top:0; left:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #fff transparent; border-width: 0 0 50px .5em;}
section#start div.image label:after{content:""; position:absolute; top:0; right:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: #fff transparent transparent transparent; border-width: 50px .5em 0 0;}
section#start div.catch h1{margin:70px 0 30px !important; line-height: 130%; }
@media screen and (max-width: 1000px) {
section#start h1{font-size:5rem;}
section#start div.image label{font-size:2.7rem; line-height:50px;}
}
@media screen and (max-width: 768px) {
section#start div.image{background:url("../img/top/bg_start1_sp.webp") center no-repeat; background-size:cover; }
section#start h1{font-size:5rem; line-height: 120%; padding: 0px;}
section#start h1 big{font-size:6rem;}

section#start h2{font-size:4rem; line-height: 120%; }
section#start h2 big{font-size:5rem;}
section#start div.image .labels{display:inherit; justify-content:inherit; max-width:inherit;}
section#start div.image label{font-size:2rem;}
}

@media screen and (max-width: 540px) {
section#start h1{font-size:3.5rem; line-height: 120%; }
section#start h1 big{font-size:4rem;}
section#start h2{font-size:3.5rem; line-height: 120%; }
section#start h2 big{font-size:4rem;}
section#start div.catch h1{margin:60px 0 20px !important; line-height: 130%; font-size: 230%;}
section#start h1 .color{font-size:100%; color: #ffff00;}
}

@media screen and (max-width: 500px) {
section#start h1{font-size:4rem; line-height: 120%; }
section#start h1 big{font-size:5rem;}

section#start div.image{padding-top:30px;}
section#start div.image label{line-height:36px;}
section#start div.image label:before{border-width: 0 0 36px .5em;}
section#start div.image label:after{border-width: 36px .5em 0 0;}
}

@media screen and (max-width: 375px) {
section#start h1{font-size:3.5rem; line-height: 120%; }
section#start h1 big{font-size:4rem;}
section#start h2{font-size:4rem; line-height: 130%; width: 100%; }
section#start h2 big{font-size:5rem;}
section#start.sp div.image label{font-size:1.7rem;}
}

section#start .text{background:#1230b2; color:#fff; padding:15px;}
section#start dl{max-width:1000px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; grid-gap:20px;}
section#start dt label{background:white; display:block; color:#1230b2; font-size:3.5rem; font-weight:900; line-height:1;  padding:.2em .5em .3em .3em; font-style:italic; text-align:center;}
section#start dt p{font-size:2rem; line-height:1; margin-top:.5em; text-align:center;}
section#start dd {text-align:center;}
section#start dd a.btn2{font-size: 2.5rem;}
@media screen and (max-width: 1000px) {
section#start dl.campaign{max-width:inherit; display:inherit; justify-content:inherit; align-items:inherit; text-align:center;}
section#start dt p{border-bottom:1px solid; padding:.5em 0; margin:0 0 .5em 0;}
section#start dd{display:inline-block;}
section#start dd img{height:100px; width:auto;}
section#start dd a.btn2{font-size: 2.3rem;}
}
@media screen and (max-width: 500px) {
section#start dt label{font-size:2.2rem; padding:.5em 0 .7em 0;}
section#start dt p{font-size:1.4rem;}
section#start dl.campaign dl{width:100%; grid-gap:10px;}
section#start dl.campaign dl dt{width:60%;}
section#start dl.campaign dl dd{width:40%;}
section#start dd img{height:auto; width:auto;}
section#start dd a.btn2{font-size: 1.6rem; padding:.8em .2em; display:block;}
section#start dd a.btn2 br{display:none;}
}

/*blue_prestnts*/
section#presents {background:url('../img/top/bg_start1.webp') center no-repeat; background-size:cover; margin-top:70px;}
body.location section#presents{margin-top:0;}
section#presents .inner{padding:0; padding-bottom:100px;}
body.location section#presents .inner{padding-bottom:0;}
section#presents .inner #pankuzu{color:#000;}
section#presents h1{color: #FFF; font-style: italic; font-weight:700; text-shadow: 2px 2px 3px #808080; line-height:1; transform: rotate(-3deg); 
font-family :"UD デジタル 教科書体 N-R","UD デジタル 教科書体 NK-R","Meiryo",sans-serif;letter-spacing:-.1em;}
section#presents h1 span{display:table; margin:0 auto;}
section#presents h1 span:after{content:""; display:block; background:rgba(255,255,255,.5); height:7px}
body.location section#presents h1{text-shadow: 2px 2px 3px #1230b2; padding:1em 0 .5em 0; padding-top:0 !important; margin-bottom:.2em; transform:inherit; font-family: 'Noto Sans JP', sans-serif; letter-spacing:0;}
body.location section#presents h1 span{color:yellow;border-bottom:0;}
body.location section#presents h1 span.space{display:inline-block; width:.7em;}
section#presents .labels{text-align:center; /*display:flex; justify-content:center;*/}
section#presents .labels label{background:#fff; color:#1230b2; font-weight:900; display:inline-block; line-height:50px; white-space:nowrap; position:relative; margin: .2em .5em; padding:0 .2em;}
section#presents .labels label:before{content:""; position:absolute; top:0; left:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #fff transparent; border-width: 0 0 50px .5em;}
section#presents .labels label:after{content:""; position:absolute; top:0; right:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: #fff transparent transparent transparent; border-width: 50px .5em 0 0;}
section#presents .labels a{
color:#1230b2; font-size:3rem; font-style:italic; font-weight:900; 
display:inline-block; line-height:50px; white-space:nowrap; border:0; border-radius:5px; padding:0 .7em;
background: #e4e7f8;
background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, #e4e7f8), to(#fff));
background: -webkit-linear-gradient(bottom, #e4e7f8 50%, #fff 100%);
background: linear-gradient(0deg, #e4e7f8 50%, #fff 100%);
-webkit-box-shadow: inset 0 1px 1px rgba(255, 255, 255, .6), 0 5px 10px rgba(0, 0, 0, .1);
box-shadow: inset 0 1px 1px rgba(255, 255, 255, .6), 0 5px 10px rgba(0, 0, 0, .1);
box-shadow: 0 5px 8px rgba(0,0,0,.3);
background: rgb(0,130,225); background: linear-gradient(0deg, rgba(240,240,240,1) 0%, rgba(240,240,240,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
}
section#presents .labels a img{margin-left:.3em;}
#presents .blue{background:url('../img/top/bg_presents.svg') center top no-repeat; background-size:100% 100%; width:100%; margin:0; padding:0 10px;}
#presents .blue > div a.btn2{box-shadow: 0 0 0; display:flex; justify-content:center; align-items:center; padding:0;}

section#presents h1{font-size:6rem;}
body.location section#presents h1 span{display:inline-block !important; margin:0;}
body.location section#presents h1 span:after{display:none;}
section#presents .labels label{font-size:3.2rem;}

@media screen and (max-width: 1000px) {
section#presents h1{font-size:4.5rem;}
section#presents .inner{padding-bottom:5%;}
body.location section#presents h1{font-size:6rem;}
body.location section#presents h1 span.space{display:block !important; height:1px;}
section#presents .labels{display:inherit;}
section#presents .labels label{font-size:2.5rem;}
}
@media screen and (max-width: 500px) {
section#presents {background:url('../img/top/bg_start1_sp.webp') center no-repeat; background-size:cover;}
section#presents h1{font-size:3.4rem; padding-bottom:.5em; transform: rotate(-5deg);}
section#presents h1 span:after{background:rgba(255,255,255,.5); height:5px}
section#presents .labels a{font-size:2rem;}
body.location section#presents h1{font-size:3.5rem; transform:inherit; margin-bottom:0;}
body.location section#presents h1 span{border-bottom:0;}
section#presents .labels label{font-size:2.5rem; line-height:40px;}
section#presents .labels label:before{border-width: 0 0 40px .5em;}
section#presents .labels label:after{border-width: 40px .5em 0 0;}
#presents .blue > div{padding-bottom:20px;}
#presents .blue > div a.btn2{font-size:2rem; line-height:70px;}
body.location section#presents .mainimage{padding-top:20px;}
section#presents .inner{position:relative; padding-bottom: 45%;}
body.location section#presents .inner{position:relative; padding-bottom: 45%;}
#presents .blue{position:absolute; bottom:0;}
}
@media screen and (min-width: 501px) {
section#presents{position:relative;}
section#presents .mainimage{margin-bottom:10%;}
body.location section#presents .mainimage{margin-bottom:0%; padding-bottom:20%;}
section#presents .inner .blue{position:absolute; width:100%; left:0; bottom:0;}
section#presents .inner .blue > div{margin:0 auto; max-width:1000px; position:relative;}
#presents .blue > div a.btn2{position:absolute; left:0; bottom:15%; width:33%; height:30%; font-size:2.5rem;}
}
@media screen and (max-width: 1000px) {
#presents .blue > div a.btn2{font-size:2rem;}
}
@media screen and (max-width: 400px) {
section#presents .inner{padding-bottom:61%;}
}
@media screen and (max-width: 395px) {
section#presents h1{font-size:2.5rem;}
section#presents .labels label{font-size:2.0rem; line-height:30px;}
section#presents .labels label:before{border-width: 0 0 30px .5em;}
section#presents .labels label:after{border-width: 30px .5em 0 0;}
section#presents .inner{padding-bottom:50%;}
}

/*ADVANTAGE*/
body#top section#advantage .inner{padding:50px 0 0 0; position:relative; max-width:inherit; overflow:hidden; z-index: 1;}
body#top section#advantage .inner .points{text-align:center; padding-bottom: 40px;}
body#top section#advantage .inner .points img{margin:0 auto; display:block;width:19.5%; }
body#top section#advantage .inner .bg{display:flex; grid-gap: 350px; justify-content:center; position:absolute; bottom:0; z-index:-1; width:100%;}
@media screen and (max-width: 1000px) {
body#top section#advantage .inner .bg{justify-content: space-between; grid-gap: 0;}
}
@media screen and (max-width: 767px) {
body#top section#advantage .inner{padding:50px 0 200px 0;}
body#top section#advantage .inner .points{padding-bottom:0;}
/*body#top section#advantage .inner .bg{bottom:-60px; justify-content:center; }*/
body#top section#advantage .inner .bg{justify-content:center; }
body#top section#advantage .inner .bg img{margin:0 auto;min-height: 190px;}
body#top section#advantage .inner .points img{width:79.5%;max-width: 370px;}
}

/*staff*/
section#staff > .inner{max-width:1000px; margin:0 auto; padding:100px 0;}
section#staff a{border:0; display:inherit; margin:0;}
@media screen and (max-width: 500px) {
section#staff > .inner{max-width:inherit; padding: 0;}
}

/*news*/
section#news li{border-bottom: 1px dotted; padding:1em 5em 1em 0; position:relative; list-style-type :none !important; margin:0;}
section#news li data{padding-right:1em; white-space:nowrap;vertical-align:top;}
section#news li data:after{content:"お知らせ"; display:inline-block; color:#fff; font-weight:400; background:#0082e0; line-height:20px; padding:1px .5em; text-align:center; width:6em; margin-left: 1em;}
section#news li a{border-bottom:0; color:#444;}
section#news li label{position:absolute; right:0; bottom:1em; line-height: 1; font-size:16px; cursor:pointer;}
section#news li label span{position:relative; padding:0 0 0 1.5em;}
section#news li label span:before{position:absolute; top:.4em; left:0; content:"\f105"; font-family:'Font Awesome 5 Free'; font-weight:900; border:1px solid; border-radius:1em; line-height:16px; font-size:1.2rem; text-align:center; display:inline-block; width:16px; margin-right: .5em; vertical-align:bottom;}
section#news li a:hover{opacity:1; color:#0082e0;}
@media screen and (max-width: 500px) {
section#news li{position:inherit; padding:1em 0;}
section#news li data, section#news li a{display:block;}
section#news li data:after{margin-bottom:10px;}
section#news li label{position:inherit; right:inherit; bottom:inherit; display:block; text-align:center; margin-top: 10px;}
section#news li a:after{display:none;}
}

/*qa*/
section#qa{position:relative;}
section#qa a.anc{position:absolute; top:-70px;}
section#qa .inner{margin-bottom:50px;}
section#qa h2 span{font-size:85%; display:inline-block;margin:0 .1em;}
section#qa p.lead{text-align:center; margin-bottom:3em;}
section#qa .box dl{border-bottom:2px solid #006fbf; padding:40px 0;}
section#qa .box dl.first{padding-top:0;}
section#qa .box dt{color:#006fbf; font-weight:700; position:relative; padding:.3em 0 40px 60px; font-size:1.9rem; line-height:1.3;}
section#qa .box dt:before{content:"Q"; color:#fff; background:#006fbf; border:3px solid #006fbf; display:block; font-size:3rem; line-height:30px; width:40px; padding:2px 0 8px 0; text-align:center; position:absolute; top:0; left:0;}
section#qa .box dd{position:relative; padding:0 0 0 60px; font-size:1.7rem;}
section#qa .box dd:before{content:"A"; color:#006fbf; border:3px solid #006fbf; display:block; font-size:3rem; line-height:30px; width:40px; padding:2px 0 8px 0; text-align:center; position:absolute; top:.2em; left:0;}
@media screen and (max-width: 500px) {
section#qa .inner{margin-bottom:0;}
section#qa p.lead{text-align:left;}
section#qa .box dl{padding:30px 0;}
section#qa .box dt{padding:0 0 1.5em 50px; font-size:1.7rem;}
section#qa .box dt:before{font-size:2.2rem; line-height:26px; width:30px; padding:0 0 6px 0;}
section#qa .box dd{position:relative; padding:0 0 0 50px; font-size:1.5rem;}
section#qa .box dd:before{font-size:2.2rem; line-height:26px; width:30px; padding:0 0 6px 0; top:0;}
}

/*acodion*/
.nav-ac label {
margin: 0;
cursor: pointer;
}
.nav-ac .toggle-content {
display: none;
}
.nav-ac .icons {
display: inline-block;
text-align: center;
position: relative;
cursor: pointer;
transition: 0;
}
.nav-ac .icons .fa, .nav-ac .icons .fas {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
transition: 0;
}
.nav-ac .icons .fa:last-child ,.nav-ac .icons .fas:last-child{
opacity: 0;
}
.nav-ac.active .toggle-content {
display: block;
}
.nav-ac.active .fa:last-child, .nav-ac.active .fas:last-child {
opacity: 1;
}
.nav-ac.active .fa:first-child, .nav-ac.active .fas:first-child {
opacity: 0;
}
.nav-ac .icons {
width: 14px;
height: 14px;
line-height: 34px;
border-radius: 50%;
margin-right:.8em;
}
.nav-ac .icons .fa, .nav-ac .icons .fas {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
transition: 0;
}
.nav-ac .icons .fa:last-child, .nav-ac .icons .fas:last-child {
opacity: 0;
}
.nav-ac.active .toggle-content {
display: block;
}
.nav-ac.active .fa:last-child, .nav-ac.active .fas:last-child {
opacity: 1;
}
.nav-ac.active .fa:first-child, .nav-ac.active .fas:first-child {
opacity: 0;
}
section#qa .accordion-title{margin:40px 0 0 0;}
section#qa label.more{cursor:pointer;white-space:nowrap;}
section#qa label.more{border:1px solid; line-height:1; padding:.8em; max-width:150px; text-align:center; display:block; margin:0 auto; color:#444; transition:.3s;}
section#qa label.more:hover{background:#0082e0; color:#fff;}
section#qa label.more i{display:inline-block; margin-right:.5em;}

@media screen and (max-width: 500px) {
section#qa .accordion-title{margin:40px 0 30px 0;}
}


#index_address{ max-width:auto;}
#index_address .area{display:flex; flex-wrap:wrap; justify-content:center; align-items:stretch; max-width:1200px; margin:0 auto 3em auto; gap:3%;}
#index_address a{display:block; width:calc(94% / 3); padding:0; margin:1.5% 0; border:0; opacity:1 !important;}
#index_address .item{border:1px solid #ccc; padding:8% 5%;}
#index_address .item h3{border:0; padding:0; margin:0 0 .5em 0; text-align:center; white-space:nowrap; font-size:2.4rem; color:#333; letter-spacing:0;}
#index_address .item p{margin:0; color:#333; line-height:1.3; text-align:center; font-size:1.3rem;}
#index_address .item img{display:block; width:90%; margin:1em auto;}
#index_address .item span{display:block; width:90%; line-height:1; white-space:nowrap; text-align:center; margin:0 auto; font-weight:600; color:#fff; background:#1432b4; padding:1em;}
#index_address .item span i{display:inline-block; margin:0 0 0 .7em;}
#index_address .item, #index_address .item img, #index_address .item span{transition:.3s;}
#index_address a:hover .item{border-color:#0087e1;}
#index_address a:hover .item img{opacity:.8;}
#index_address a:hover .item span{background:#0087e1;}
@media screen and (max-width: 1200px) {
#index_address .area{padding:0 3%;}
#index_address .item h3{font-size:2vw;}
#index_address .item p, #index_address .item span{font-size:1.1vw;}
}
@media screen and (max-width: 900px) {
#index_address .area{gap:3%;}
#index_address a{width:calc(97% / 2);}
#index_address .item{padding:2em;}
#index_address .item h3{font-size:2.5vw;}
#index_address .item img, #index_address .item span{width:inherit;}
#index_address .item p, #index_address .item span{font-size:1.7vw;}
}
@media screen and (max-width: 500px) {
#index_address .area{display:block;}
#index_address a{width:calc(100% - 2em); margin:1em;}
#index_address .item{padding:1.5em;}
#index_address .item h3{font-size:2rem;}
#index_address .item p, #index_address .item span{font-size:1.3rem;}
}

/*PAGE*/

p.lead{text-align:center; font-size:1.6rem; line-height:1.7;}
@media screen and (max-width: 500px) {
p.lead{text-align:left;}
}
body#admission #container{padding:0;}
#container{padding:50px 0 0;}
#pankuzu{max-width:1000px; margin:0 auto; padding-top:30px;}
#pankuzu ul{margin:0; padding:0;}
#pankuzu ul li{display:inline-block; font-size:1.3rem; padding:0; margin:0;}
#pankuzu ul li+li:before{content:"\f105"; font-family:'Font Awesome 5 Free'; font-weight:900; display:inline-block; margin: 0 .8em;}
#start .image #pankuzu{padding-top:0px; margin-top:-40px;padding-bottom: 20px;}
#start .image #pankuzu a {color: #FFF;}

@media screen and (max-width: 1000px) {
#pankuzu ul{margin:0; padding:0 15px;}
}

@media screen and (max-width: 768px) {
#start .image #pankuzu{ margin-top:0px; padding-top:20px; padding-bottom: 0px; }
#start .image #pankuzu a {color: #0082e0;}

}

/**********************************************

COURSE

**********************************************/
body.course #container { padding: 50px 0 0 0; }

/* description：共通設定 + 各コース色分け */
@media screen and (max-width: 768px) {
  section.course-description p.lead { text-align: left; }
  section.course-description p.lead br { display: none; }
}
section.course-description .item > img { display: block; margin: 0 auto; }
section.course-description .item .text { position: relative; padding: 90px 0 0 0; }
section.course-description .item .text h3 { position: absolute; width: 100%; top: -20px; margin: 0; padding: 0; border: 0; font-size: 2.6rem; color: #444; }
section.course-description .item .text h3 label { display: block; max-width: 450px; margin: 0 auto .2em auto; padding: 0; }
section.course-description .item .text h3 label span {
  position: relative; display: block; margin: 0 10px; padding: 0;
  background: #ccc; font-size: 3.6rem; line-height: 50px; font-weight: 400; font-style: italic; color: #fff;
}
section.course-description .item .text h3 label span:before,
section.course-description .item .image data span:before {
  position: absolute; top: 0; left: -15px; content: "";
  display: block; width: 0; height: 0; border-style: solid;
  border-width: 0 0 50px 15px; border-color: transparent transparent #ccc transparent;
}
section.course-description .item .text h3 label span:after,
section.course-description .item .image data span:after {
  position: absolute; top: 0; right: -15px; content: "";
  display: block; width: 0; height: 0; border-style: solid;
  border-width: 50px 15px 0 0; border-color: #ccc transparent transparent transparent;
}
/* コースごとの色分けクラス */
section.course-description .item.sports .text h3 label span { background: #1230b2; }
section.course-description .item.sports .text h3 label span:before { border-color: transparent transparent #1230b2 transparent; }
section.course-description .item.sports .text h3 label span:after { border-color: #1230b2 transparent transparent transparent; }
section.course-description .item.fitness .text h3 label span { background: #ff5b90; }
section.course-description .item.fitness .text h3 label span:before { border-color: transparent transparent #ff5b90 transparent; }
section.course-description .item.fitness .text h3 label span:after { border-color: #ff5b90 transparent transparent transparent; }
section.course-description .item.athlete .text h3 label span { background: #00b58c; }
section.course-description .item.athlete .text h3 label span:before { border-color: transparent transparent #00b58c transparent; }
section.course-description .item.athlete .text h3 label span:after { border-color: #00b58c transparent transparent transparent; }

/* コース共通口コミ（voice）背景色の自動付与 */
section.course-voice { padding: 40px 0; }
section.course-voice.sports { background: #1230b2; }
section.course-voice.fitness { background: #ff5b90; }
section.course-voice.athlete { background: #00b58c; }
section.course-voice h2, section.course-voice h2 label { color: #fff; }
section.course-voice h2 label { border-color: #fff; }

section.course-voice .inner {
  max-width: inherit;
  margin: 0 auto;
  padding: 0;
  width: 95%;
  column-gap: 0;
}
@media (max-width: 1400px) { section.course-voice .inner { column-count: 4; } }
@media (max-width: 1100px) { section.course-voice .inner { column-count: 3; } }
@media (max-width: 800px)  { section.course-voice .inner { column-count: 2; } }
@media (max-width: 500px)  { section.course-voice .inner { column-count: 1; } }

section.course-voice .grid {
  padding: 5px;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
section.course-voice .grid img { width: 100%; vertical-align: bottom; }
section.course-voice .grid img + p { margin-top: .8em; }
section.course-voice .grid > div { background-color: rgba(255,255,255,.9); }
section.course-voice .text { padding: 20px; }
section.course-voice .pic { padding: 20px 0; }
section.course-voice .grid > * { border-radius: 8px; }
section.course-voice .pic > *:not(img) { padding: 0 20px; }
section.course-voice .grid h3 { font-size: 1.5rem; width: inherit; display: table; margin: 0 auto 1em auto; }
section.course-voice .grid h3 label { font-size: 2.2rem; }

/* コース共通boxデザイン */
body.course section#course .inner { max-width: 900px; padding-bottom: 0; }
body.course .coursebox { margin-top: 0; grid-gap: 50px; }


/**********************************************

LOCATION

**********************************************/
/*index*/
body.location #container{padding-bottom: 0 !important;}
body#index.location .inner .btn2{margin-top:2em; font-size:2.4rem;}
a.btn_location{display:block; line-height:1; white-space:nowrap; text-align:center; margin:0 auto 2em auto; font-weight:600; color:#fff; background:#1432b4; border-radius:5px; padding:1em; width:13em;}
a.btn_location:hover{background:#0087e1; opacity:1;}
a.btn_location i{display:inline-block; margin:0 0 0 .6em;}
#locations{background:url('../img/location/bg.jpg') left center no-repeat; background-size:cover; background-attachment:fixed;padding-top: 3%;}
.areabox .inner{max-width:1000px; margin:0 auto; padding:20px 15px 50px 15px;}
#locations h1{color:#1230b2; background:url('../img/location/h1.png') center center no-repeat; background-size:contain; padding:1em ; margin:0; font-size: 3.4rem; font-weight:900; border-top:1px solid; border-bottom:1px solid;}
#locations h1 label{display:block; text-align:center; font-size: 2.8rem; font-weight:600;}
.areabox h2{color:#fff; display:block; font-size:2.8rem; padding:0 0 .1em 0; margin:2.5em 0 1em 0;}
.areabox .area1 h2{background:#1230b2; margin-top:2em;}
.areabox .area2 h2{background:#764ac5;}
.areabox .area3 h2{background:#ea3a3f;}
.areabox h3 + p{text-align:center; margin:1em 0;}
@media screen and (max-width: 500px) {
#locations h1{padding:.5em; font-size: 2rem;}
#locations h1 label{font-size: 2rem;}
.areabox h2{font-size:2rem;}
a.btn_location{margin:0 auto 1em auto;}
}

@media screen and (min-width: 501px) {
.areabox .flexbox{grid-gap:20px; width:100%; margin-bottom: 10px;}
.areabox .flexbox > div:nth-child(odd){width:calc(100% / 3);}
.areabox .flexbox > div > a{font-size:2.4rem; max-width:320px;}
.areabox .flexbox > div > data{display:none !important;}
}
.areabox .flexbox > div > a{display:block; width:100%; background:#fff; border:2px solid; border-radius:2em; white-space:nowrap; text-align:center; letter-spacing:1em; text-indent:1em; font-weight:700;}
.areabox .flexbox > div.nanba > a{letter-spacing:0; text-indent:0;}
.areabox .flexbox > div > a:hover{opacity:1; background:#f1f1f1;}
.areabox .area1  .flexbox > div > a{color:#1230b2;}
.areabox .area2  .flexbox > div > a{color:#764ac5;}
.areabox .area3  .flexbox > div > a{color:#ea3a3f;}

.areabox .flexbox > div > data, .areabox .flexbox > div > data a{border:0; color:#fff; text-align:center;}
.areabox .flexbox > div > data{display:block; width:100%; border-radius: 3px;}
.areabox .flexbox > div > data > a > img{height:10px; width:auto; margin-right: .5em;}
.areabox .area1 .flexbox > div data{border-bottom:0;
background:rgb(5,20,140);  background: linear-gradient(0deg, rgba(5,20,140,1) 0%, rgba(5,20,140,1) 50%, rgba(20,50,180,1) 50%, rgba(20,50,180,1) 100%);}
.areabox .area2 .flexbox > div data{border-bottom:0;
background:rgb(5,20,140);  background: linear-gradient(0deg, rgba(85,50,140,1) 0%, rgba(85,50,140,1) 50%, rgba(120,75,200,1) 50%, rgba(120,75,200,1) 100%);}
.areabox .area3 .flexbox > div data{border-bottom:0;
background:rgb(5,20,140);  background: linear-gradient(0deg, rgba(165,45,40,1) 0%, rgba(165,45,40,1) 50%, rgba(235,60,60,1) 50%, rgba(235,60,60,1) 100%);}
.areabox .flexbox > div.akasaka data{color:#1230b2; background:#fff; border:1px solid;}

@media screen and (max-width: 500px) {
.areabox .flexbox > div{display:flex; grid-gap:10px; width:100%; margin:0 0 10px 0;}
.areabox .flexbox > div > a{width:40%;}
.areabox .flexbox > div > span{width:40%;}
.areabox .flexbox > div > data{width:60%;}
.areabox .flexbox > div:nth-child(even) data{color:#000 !important; background: linear-gradient(0deg, rgba(233,233,0,1) 0%, rgba(233,233,0,1) 50%, rgba(255,255,0,1) 50%, rgba(255,255,0,1) 100%);}
.areabox .flexbox > div:nth-child(even) data a{color:#000 !important;}
}

/*area*/
section#area .inner{text-align:center; padding-top:2em;}
section#area .inner > img{max-width: 500px; width:100%; height:auto;}
.flexbox.area {text-align:center; max-width:470px; margin:20px auto 0 auto; justify-content:center;}
.flexbox.area data{color:#1230b2; border:1px solid; font-size:2.6rem; font-weight:900; display:inline-block; padding:0 1em 0 1.2em; letter-spacing:.2em; white-space:nowrap;}
.flexbox.area a.tel{display:block;}
body#nanba .flexbox.area data{letter-spacing:0; text-indent:0; padding:0 1em;}
@media screen and (max-width: 500px) {
.flexbox.area{display:inherit;}
section#area .inner{padding-bottom:30px;}
section#area .inner > img{max-width:400px; margin: 20px 0 0 0;padding:10px 20px 0px;}
section#area .inner h1{color:#1230b2; padding:0.5em 0; margin:0; font-size: 3.5rem; font-weight:900; font-style:italic; letter-spacing: -2px;  line-height: 1;}
section#area .inner h1 span{font-size: 4.5rem;}

section#area .inner div.labels label{text-align:center; display:flex; justify-content:center;  margin:0 auto; max-width:400px;}
section#area .inner div.labels label{background:#1230b2; color:#ffff00; font-size:2.5rem; font-style:italic; font-weight:900; display:inline-block; line-height:50px; white-space:nowrap; position:relative; margin: .1em .5em; padding:0 .2em;}
section#area .inner div.labels label:before{content:""; position:absolute; top:0; left:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #1230b2 transparent; border-width: 0 0 50px .5em;}
section#area .inner div.labels label:after{content:""; position:absolute; top:0; right:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: #1230b2 transparent transparent transparent; border-width: 50px .5em 0 0;}

.flexbox.area {margin-top:10px;}
.flexbox.area data{border-left:0; border-right:0; font-size:2rem;}
.flexbox.area a.tel{margin:20px auto 0 auto;}
}

@media screen and (max-width: 360px) {
section#area .inner div.labels label{font-size:2.1rem;}
}

/*start*/
body.location section#start .image{position:relative; background-position: left top 0; padding-top:70px;}
body.location section#start .image .bg{height:350px; width:900px; margin:0 auto; overflow:hidden; position:relative;}
body.location section#start .image .bg img{position:absolute; bottom:0; left:0;}
body.location section#start .image h2{margin:0; padding:0 15px; position:absolute; top:30px; text-align:center; width:100%; z-index:+1;}
@media screen and (max-width: 900px) {
body.location section#start .image .bg{height:auto; width:auto; position:inherit;}
body.location section#start .image .bg img{position:inherit; top:inherit; bottom:0;}
}
@media screen and (max-width: 500px) {
body.location section#start .image{position:inherit; padding-top:15px;}
body.location section#start .image .bg{border:1px;}
body.location section#start .image .bg img{margin:0; width:100%; height:auto; }
body.location section#start .image h2{padding:0; position:inherit; top:inherit;}
}

body.location section#start .flexbox{justify-content:center; align-items: center; grid-gap:10px;}

body.location section#start div.labels .btn_label{
margin: 30px;
padding: 0 20px;
font-size:3rem;
border-radius: 0.6rem;
background: #e4e7f8;
background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, #e4e7f8), to(#fff));
background: -webkit-linear-gradient(bottom, #e4e7f8 50%, #fff 100%);
background: linear-gradient(0deg, #e4e7f8 50%, #fff 100%);
-webkit-box-shadow: inset 0 1px 1px rgba(255, 255, 255, .6), 0 5px 10px rgba(0, 0, 0, .1);
box-shadow: inset 0 1px 1px rgba(255, 255, 255, .6), 0 5px 10px rgba(0, 0, 0, .1);
box-shadow: 0 5px 8px rgba(0,0,0,.3);
background: rgb(0,130,225); background: linear-gradient(0deg, rgba(240,240,240,1) 0%, rgba(240,240,240,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
}

body.location section#start div.labels a.btn_label {
color:#1230b2; font-size:4.0rem; font-style:italic; font-weight:900; display:inline-block; line-height:50px; white-space:nowrap; position:relative; margin: 1.2em .6em 0.5em .6em; padding:10px 0.5em; padding-right: 15px;
}

body.location section#start div.labels label{text-align:center; display:flex; justify-content:center; max-width:1000px; margin:0 auto;}
body.location section#start div.labels label{background:#fff; color:#1230b2; font-size:4.0rem; font-style:italic; font-weight:900; display:inline-block; line-height:50px; white-space:nowrap; position:relative; margin: 1.2em .6em 0.5em .6em; padding:0 .3em; padding-right: 10px;}
body.location section#start div.labels label:before{content:""; position:absolute; top:0; left:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #fff transparent; border-width: 0 0 50px .5em;}
body.location section#start div.labels label:after{content:""; position:absolute; top:0; right:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: #fff transparent transparent transparent; border-width: 50px .5em 0 0; }

body.location section#start div.time{font-size:3.6rem; font-weight:700; font-style:italic; color:yellow;}
body.location section#start div.time label{display:inline-block;margin:0 10px;}
body.location section#start div.time label data{font-size:130%;}
@media screen and (max-width: 1200px) {
body.location section#start .flexbox{display:inherit; text-align:center; line-height:1;}
body.location section#start .text{padding:20px 15px 30px 15px;}
}


@media screen and (max-width: 600px) {
body.location section#start img.sp{margin:0 15px; width:calc(100% - 30px); height:auto;}
body.location section#start div.labels label{font-size:2.5rem; margin: 0.1em .5em 0.5em .5em; }
body.location section#start div.labels a.btn_label {font-size:2.3rem; margin: 0.0em .5em 0.5em .7em; padding: 0px 15px; }
body.location section#start div.time{font-size:3rem;}
}
@media screen and (max-width: 350px) {
body.location section#start div.labels label{font-size:2.0rem; }
body.location section#start div.labels a.btn_label {font-size:2.0rem;}
}


/*ADVANTAGE*/
section#advantage p span.come{font-size:1.4rem;}

/*FACILITIES*/
.gallery{display:flex; flex-wrap:wrap; justify-content:center; gap:1em;}
.gallery > div{max-width:calc(50% - .5em);}
.gallery > div img{margin:0 auto; display:block; width:100%; max-width:450px; height:auto;}
.gallery > div:last-child{width:100%; max-width:inherit;}
.gallery > div:last-child img{width:inherit; max-width:800px;}


/*slider*/
.slider.center{margin:0 3px 50px 3px;}
.slider.center .slick-prev:before, .center .slick-next:before {color:#1230b2 !important; opacity:1; box-shadow: 0 0 5px rgba(0,0,0,.1);}
.slider.center > div{align-items:center; vertical-align:middle;}
.slider.center > div img{align-items:center; vertical-align:middle; display:inline;}
@media screen and (max-width: 500px) {
.slider.center{margin:0 3px 0px 3px;}
body.location #facilities h2{font-size:3.5rem; color:#1230b2; font-weight: 800; letter-spacing: -1px; border-top:#1230b2 solid 3px; border-bottom:#1230b2 solid 3px;}
body.location #facilities h2 span{font-size:2rem; padding: 0 0 0 10px; font-weight: 600; letter-spacing: 0px;  display: table-cell; vertical-align: middle;}
}


section#facilities .view a{color: yellow; text-align:center; font-size:2.6rem; font-weight:600; line-height:60px; border:0; padding:0 15px; background-color:#1230b2; display:flex; justify-content:center; align-items:center; gap:.5em;}
section#facilities .view a:after{display:none;}
section#facilities .view a:hover{opacity:1; background:#0082e0;}
section#facilities .view a br{display:none;}
section#facilities .view a img{display:inline-block; vertical-align:middle;}
section#facilities .view a i{color:#fff;}
@media screen and (max-width: 768px) {
section#facilities .view a{line-height:1; padding:15px; font-size:2rem;}
section#facilities .view a img{width:40px; height:auto;}
section#facilities .view a br{display:inherit;}
}
@media screen and (max-width: 500px) {
section#facilities .inner{padding-bottom:0;}
section#facilities .view a{font-size:2.0rem; line-height: 120%;}
}
@media screen and (max-width: 400px) {
section#facilities .view a{font-size:1.5rem; padding: 15px 0;}
}


/*ADDRESS*/
section#address p.lead{font-size:1.7rem; margin-bottom:2em;}
section#address p.lead data{display:inline-block; margin-right:1em;}
@media screen and (max-width: 500px) {
section#address {margin-top:-50px;}
section#address p.lead{font-size:1.5rem; line-height:1.7; text-align:center;}
section#address p.lead data{display:block; margin-right:0;}
}

/*accessmap*/
section#access iframe{margin-bottom:1em;}
section#access p{text-align:center; font-size:1.7rem; margin:0;}
@media screen and (max-width: 1000px) {
section#access p{text-align:left;}
section#access p br{display:none;}
}
@media screen and (max-width: 500px) {
/*section#access .inner{padding-top:0;}*/
section#access iframe{height:300px;}
section#access #access_nanba iframe{height:360px;}
section#access p{text-align:left;}
section#access p br{display: none;}
section#access a.btn3 {font-size:2rem; margin:40px auto;}
section#access a.btn3 label i{position:absolute; left:-.2em; top:0;}
}

/*nobaroon*/
section#access .mapbox{position: relative;width: 100%;padding-top: 450px;overflow: hidden; margin-bottom:1em;}
section#access .mapbox iframe {position: absolute;top: -150px;left: 0;  height: calc(100% + 150px + 150px);pointer-events: none;}

/*contact*/
section#contact .flexbox.area{margin-top:0;}
section#contact a.btn2{max-width:400px; margin:30px auto; display:block; padding:0 1em; font-size:3.4rem; font-weight:600; line-height:6.4rem; white-space:nowrap;}
section#contact a.btn3{max-width:400px; margin:30px auto;}
section#contact a.btn3 label{position:relative; padding-left: 1.8em;}
section#contact a.btn3 label i{position:absolute; left:0; top:.15em; font-size:3rem; display:inline-block; margin:0 .3em 0 0;}

/*sns*/
.sns{text-align: center;}
.sns a{border:0; display:inline-block; width:60px; height:60px; border-radius:30px; overflow:hidden; margin:0 .5em;}
.sns a:after{display:none;}
@media screen and (max-width: 500px) {
.sns a{width:40px; height:40px; border-radius:20px; margin:0 .3em;}
}

/*btnarea*/
section#btn{background-color:#1230b2;}
section#btn .inner{padding:25px 0;}
section#btn a.btn2{font-size: 2.8rem; font-weight:900; padding:0 1em; line-height:70px; white-space:nowrap; max-width:400px; margin:0 auto; display:block;}
@media screen and (max-width: 1000px) {
section#btn a.btn2{font-size: 2.5rem;}
}

/*campaign*/
section#meneki_campaign > .inner{max-width:1000px; margin:0 auto; padding:0px 15px 50px; text-align:center;}
section#meneki_campaign a{border:0 !important; display:inherit; margin:0;}


/**********************************************

STAFF

**********************************************/
body.staff{background:#f2f5fa;}

/*index*/
body#index.staff{background:inherit;}
body#index.staff p.lead{font-size:2.6rem; font-weight:600; line-height: 1.3;}
body#index.staff p.lead br{display:none;}
body#index.staff h3{color:#fff; display:block; font-size:2.2rem; padding:.3em 0 .5em 0; margin:2.5em 0 1em 0; line-height:1; white-space:nowrap;}
body#index.staff .gridbox {display: grid; gap: 30px; grid-template-columns: 1fr 1fr 1fr;}
body#index.staff .area1 h3, body#index.staff .area1 .item label{background:#1230b2; margin-top:2em;}
body#index.staff .area2 h3, body#index.staff .area2 .item label{background:#764ac5;}
body#index.staff .area3 h3, body#index.staff .area3 .item label{background:#ea3a3f;}
body#index.staff .item label{display:block; color:#fff; text-align:center; font-size:2.6rem; font-weight:600; line-height:1; white-space:nowrap; padding:.5em; margin:0 !important;}
@media screen and (max-width: 1000px) {
body#index.staff .gridbox {margin:0 15px;}
}
@media screen and (max-width: 768px) {
body#index.staff p.lead br{display:inherit;}
}
@media screen and (max-width: 500px) {
body#index.staff p.lead{font-size:2rem; text-align:center;}
body#index.staff .gridbox {gap: 10px; grid-template-columns: 1fr 1fr;}
body#index.staff .item label{font-size:1.8rem;}
}

/*page*/
body.staff .sliderarea {max-width:500px; margin:50px auto 0 auto;}
body.staff .sliderarea label{color:#fff; display:block; font-size:2.2rem; padding:.3em 0 .5em 0; margin:2.5em 0 1em 0; line-height:1; white-space:nowrap;}
body.staff .sliderarea h1{text-align:center; font-size:2.6rem; font-weight:600; line-height:1; white-space:nowrap; padding:1em .5em .7em .5em; margin:0;}
body.staff .sliderarea data{text-align:center; display:block; font-weight:600; line-height:1.5; padding:0; margin:0 0 1em 0;}
body.staff .sliderarea a:after{display:none;}
body.staff.area1 .sliderarea label{background:#1230b2; margin:0 !important; text-align:center;}
body.staff.area1 .sliderarea h1, body.staff.area1 .sliderarea data{color:#1230b2;}
body.staff.area2 .sliderarea label{background:#764ac5; margin:0 !important; text-align:center;}
body.staff.area2 .sliderarea h1, body.staff.area2 .sliderarea data{color:#764ac5;}
body.staff.area3 .sliderarea label{background:#ea3a3f; margin:0 !important; text-align:center;}
body.staff.area3 .sliderarea h1, body.staff.area3 .sliderarea data{color:#ea3a3f;}
@media screen and (max-width: 768px) {
body.staff .sliderarea {width:calc(100% - 80px);}
}
@media screen and (max-width: 500px) {
body.staff .sliderarea label{font-size:1.5rem;}
body.staff .sliderarea iframe{height:200px;}
}

/**********************************************

ETC

**********************************************/
body.etc section .inner{padding:30px 15px 0 15px;}
body.etc h1{color:#0082e0; font-size:4rem; padding-bottom: 0;}
body.etc h2{color:inherit; font-size:2rem; text-align:left; display:block; margin:2em 0 .8em 0; padding:0;}
@media screen and (max-width: 500px) {
body.etc h1{font-size:2.8rem;}
}
body#sitemap section{line-height:1;}
body#sitemap section h1{margin:0; padding:1em 0;}
body#sitemap section h2{margin:0; padding:0;}
body#sitemap section ul li{list-style:none !important; margin:.3em 0; padding:.8em 1em;}
body#sitemap section > .inner > ul > li{background-color:#f8f8f8; border:1px solid #eee; border-radius:5px;}
body#sitemap section > .inner > ul > li > ul > li{display:inline-block; margin:0; padding:.8em 1em 0 1em;}
@media screen and (max-width: 500px) {
body#sitemap section > .inner > ul > li > ul > li{padding:1em 0 0 0; display:block;}
}

/*message*/
body#message #container{padding-bottom:0;}
body#message section .inner{padding:50px;}
body#message section .inner h2{margin:0 0 .8em 0; padding:0; color:#0082e0; font-size:3.5rem; display:inline-block;}

body#message section#message2 .inner{background:url('../img/top/bg_message.png') left bottom no-repeat; background-size: contain; padding: 50px 15px 50px 400px;}
section#message2 label.sign{display:block; margin:30px 0 0 0;}
section#message2 label.sign img{vertical-align:bottom; margin-left:1.5em;}
@media screen and (max-width: 900px) {
body#message section#message2 .inner{background-size:35%; padding-left: 40%;}
}
@media screen and (max-width: 767px) {
body#message section#message2 .inner{background-size:inherit; background-image:inherit; padding-left:inherit; padding:0; margin:0;}
body#message section#message2 .title{background:url('../img/top/bg_message.png') right 5%  top #f2f5fa no-repeat; background-size:170px; padding:50px 50% 50px 5%; height:250px;}
body#message section#message2 .text{padding:15px 15px 50px 15px;}
}
@media screen and (max-width: 500px) {
body#message section#message2 .title h2.left{margin-left:0; text-align:left;}
}

/*profile*/
body#message section#profile .inner{padding: 50px 400px 50px 15px;}
body#message section#profile table.clear{margin-top:.5em;}
body#message section#profile table.clear tr > td:first-child{white-space:nowrap; width:8em;}
@media screen and (min-width: 768px) {
body#message section#profile .inner{background:url('../img/top/bg_profile.jpg') right bottom #f2f5fa no-repeat;}
}
@media screen and (max-width: 767px) {
body#message section#profile .inner{text-align:center; padding:0;}
body#message section#profile .title{background:url('../img/top/bg_profile.jpg') right bottom #f2f5fa no-repeat; background-size:200px; padding:50px 50% 50px 5%; height:280px; text-align:left;}
body#message section#profile{background:#fff !important;}
body#message section#profile .text{padding:15px 15px 0 15px;}
}
@media screen and (max-width: 500px) {
body#message section#profile .title h2.left{margin-left:0; text-align:left;}
body#message section#profile p{margin-bottom:1em;}
body#message section#profile table.clear{font-size:1.4rem; line-height:1.3; text-align:center;}
body#message section#profile table.clear tr > td:first-child{white-space:inherit; width:inherit;}
body#message section#profile table.clear,
body#message section#profile table.clear tr,
body#message section#profile table.clear td
{display:table; width:100%;}
body#message section#profile table.clear tr{margin:0;border-bottom:1px dotted; display:block; padding:.8em 0;}
body#message section#profile table.clear td{display:block; padding:.2em 0;}
}

/*** 会長ブログボタン ***/

*,
*:before,
*:after {
-webkit-box-sizing: inherit;
box-sizing: inherit;
}

html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
font-size: 62.5%;/*rem算出をしやすくするために*/
}

.btn,
a.btn,
button.btn {
font-size: 1.5rem;
font-weight: 600;
line-height: 1.5;
padding: 1rem 1.5rem;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-transition: all 0.1s;
transition: all 0.1s;
text-align: center;
vertical-align: middle;
text-decoration: none;
letter-spacing: 0.1em;
color: #212529;
border-radius: 0.1rem;
margin-top: 20px;
}

.btn--blue,
a.btn--blue {
color: #fff;
background-color: #1230b2;
}
.btn--blue:hover,
a.btn--blue:hover {
color: #fff;
background: #2b45b6;
}

a.btn--radius {
border-radius: 3vh;
}

/*movie*/
section#movie .inner{max-width:580px;}
.embed-responsive{
position: relative;
display: block;
width: 910px;
padding: 0;
overflow: hidden;
padding-top: 56.25%;
margin-bottom: 1em;
margin: 0 auto ;
}
.embed-responsive iframe{
position: absolute;
top: 0;
bottom: 0;
left: 0;
border: 0;
width: 910px;
height: 512px;
}

.embed-responsive a{
position: absolute;
top: 0;
bottom: 0;
left: 0;
border: 0;
background-image: url('../img/top/maxresdefault.webp');
width: 910px;
height: 512px;
margin: 0 auto;
}

.embed-responsive a:hover{
background-image: url('../img/top/maxresdefault_over.webp');
opacity:1 !important;
}

.embed-responsive_umeda{
position: relative;
display: block;
width: 455px;
padding: 0;
overflow: hidden;
padding-top: 56.25%;
margin-bottom: 1em;
margin: 0 auto ;
}
.embed-responsive_umeda iframe{
position: absolute;
top: 0;
bottom: 0;
left: 0;
border: 0;
width: 420px;
height: 747px;
}

.embed-responsive_umeda a{
position: absolute;
top: 0;
bottom: 0;
left: 0;
border: 0;
background-image: url('../img/location/umeda/maxresdefault_umeda.webp');
width: 420px;
height: 747px;
margin: 0 auto;
}

.embed-responsive_umeda a:hover{
background-image: url('../img/location/umeda/maxresdefault_umeda_over.jpg');
opacity:1 !important;
}

@media screen and (max-width: 500px) {
section#movie .inner{max-width:inherit; /*padding:40px 15px !important;*/ ;}
section#movie iframe{height:220px; }

.embed-responsive{
width: 100%;
}

.embed-responsive iframe,
.embed-responsive img,
.embed-responsive a	{
width: 100%;
height: 100%;
}
}

.embed-responsive2{
position: relative;
display: block;
width: 420px;
padding: 0;
overflow: hidden;
padding-top: 175.25%;
margin-bottom: 1em;
margin: 0 auto ;
}

.embed-responsive2 iframe{
position: absolute;
top: 0;
bottom: 0;
left: 0;
border: 0;
width: 420px;
height: 747px;
}

.embed-responsive2 a{
position: absolute;
top: 0;
bottom: 0;
left: 0;
border: 0;
width: 455px;
height: 747px;
margin: 0 auto;
}

.embed-responsive2 a:hover{
opacity:1 !important;
}

.embed-shibuya a:hover{
background-image: url('../img/location/shibuya/maxresdefault_shibuya_over.webp');
}

.embed-shinjuku a:hover{
background-image: url('../img/location/shinjuku/maxresdefault_shinjuku_over.webp');
}

.embed-ikebukuro a:hover{
background-image: url('../img/location/ikebukuro/maxresdefault_ikebukuro_over.webp');
}

.embed-ueno a:hover{
background-image: url('../img/location/ueno/maxresdefault_ueno_over.webp');
}

.embed-shinbashi a:hover{
background-image: url('../img/location/shinbashi/maxresdefault_shinbashi_over.webp');
}

.embed-akasaka a:hover{
background-image: url('../img/location/akasaka/maxresdefault_akasaka_over.webp');
}

.embed-omiya a:hover{
background-image: url('../img/location/omiya/maxresdefault_omiya_over.webp');
}

.embed-umeda a:hover{
background-image: url('../img/location/umeda/maxresdefault_umeda_over.webp');
}

.embed-nanba a:hover{
background-image: url('../img/location/nanba/maxresdefault_nanba_over.webp');
}

@media screen and (max-width: 500px) {
section#movie .inner{max-width:inherit;}
section#movie iframe{height:220px; }

.embed-responsive2{
width: 98%;
margin-bottom: 30px;	
}

.embed-responsive2 iframe,
.embed-responsive2 img,
.embed-responsive2 a	{
width: 100%;
height: 100%;
}

}

.yt { position: relative;width: 100% !important;padding-top: 56.25%; margin-bottom: 10px;}
.yt iframe { position: absolute;top: 0;	right: 0;width: 100% !important;height: 100%;}
.yt_video { position: absolute;	width:100% !important;height:auto; top:0;}
.yt_video img { width:100%;	height:auto;}
.yt_video img:hover{ cursor: pointer;width:100%;height:auto;box-sizing: border-box;}

/*outline*/
#outline h2{margin:0 0 .8em 0; padding:0; color:#0082e0; font-size:3.5rem; display:inline-block;}
#history h2{margin-top:50px;}
#outline table.line{font-size:1.7rem;}
#outline table.line th{width:100px; border:0;}
@media screen and (max-width: 500px) {
#outline h2{display:table; margin:50px auto .8em auto; text-align:center;}
#outline #company h2{margin-top:30px !important;}
#outline table.line{font-size:1.4rem;}
#outline table.line th{width:inherit;}
#outline .aed.sp{margin:40px 0 0 0;}
}


/*covid*/
body#covid #container{padding-bottom:0;}
body#covid h2{font-size:3.5rem; text-align:center; margin:0 auto .8em auto; padding:0; line-height:1.3;  font-weight:600; color:#0082e0; display:table;}
body#covid h2 label{color:#444; font-size:2rem; display:block; margin:.3em 0 0 0; padding:.3em 0 0 0; border-top:3px solid #0082e0;}
body#covid section .inner{padding:40px 15px 0 15px;}
body#covid #item2 .inner{padding:40px 15px 50px 15px;}
body#covid #item3 .inner{padding:10px 15px 50px 15px;}
body#covid #item4 .inner{padding:40px 15px 50px 15px;}

/*greeting*/
section#greeting{position:relative;}
section#greeting a.anc{position:absolute; top:-70px;}
section#greeting .inner{padding-top:0 !important; padding-bottom:0;}
section#greeting h1{color:#0082e0; font-size:4rem; margin-bottom: 1em;}
section#greeting h1 br{display:none;}
@media screen and (max-width: 768px) {
section#greeting h1 br{display:inherit;}
}
@media screen and (max-width: 500px) {
section#greeting .inner{padding-top:30px;}
section#greeting h1{font-size:2.8rem; padding:0; margin:1em 0 .8em 0;}
section#greeting p.lead br{display:none;}
}

/*taisaku*/
section#taisaku .inner{max-width:950px; padding-bottom: 60px !important;}
section#taisaku h2{text-align:center; color:#0082e0;}
section#taisaku h2 {
position: relative;
width:100%;
padding:.5em;
line-height:1;
font-size:2.8rem;
margin: 0 0 1.5em 0;
background: #FFF;
border: solid 3px;
box-sizing: border-box;
}

section#taisaku h2:before {
content: "";
position: absolute;
bottom: -44px;
left: 50%;
margin-left: -20px;
border: 22px solid transparent;
border-top: 22px solid #FFF;
z-index: 2;
}

section#taisaku h2:after {
content: "";
position: absolute;
bottom: -50px;
left: 50%;
margin-left: -22px;
border: 24px solid transparent;
border-top: 24px solid;
z-index: 1;
}
section#taisaku .item{background:#0082e0; color:#fff; border-radius:1em; padding:1.3em;}
section#taisaku .item label{display:block; text-align:center; padding:0; margin:0; font-size:3.5rem; line-height:1;}
section#taisaku .item h3{color:#feff79; text-align:center; font-size:2.4rem; margin:0 0 .5em 0; border:0;}
section#taisaku .item img{display:block; margin:10px auto; max-width:250px;}
section#taisaku .item p{font-weight:400;}
@media screen and (min-width: 501px) {
section#taisaku h2 br{display:none;}
}
@media screen and (max-width: 500px) {
section#taisaku .item + .item{margin-top:20px;}
section#taisaku .item img{max-width:200px;}
}

/*campaign*/
section#campaign{background:url('../img/top/bg_campaign.jpg') center top no-repeat; background-size:cover; overflow:hidden; position:relative;}
section#campaign a.anc{position:absolute; top:-70px;}
section#campaign .lead{font-size:2.2rem; line-height:1.5; padding:0; margin:.5em 0 1em 0;}
section#campaign .inner{z-index:1; position:relative; color:#fff; padding-bottom: 40px; max-width:900px;}
section#campaign .inner > img{position:absolute; top:0; z-index: -1;}
section#campaign .inner > img.bg_l{position:absolute; left:-180px;}
section#campaign .inner > img.bg_r{position:absolute; right:-280px;}
section#campaign ol{margin:.5em 0 0 1.5em;}
section#campaign ol li{margin:0; font-size:1.4rem; list-style-type: decimal !important; padding:0 0 0 .3em;}
section#campaign .areabox{max-width:600px; margin:0 auto; padding-bottom: 45px;}
section#campaign .areabox h3{width: 60%;}
section#campaign .areabox div+div{margin-top:40px;}
section#campaign .areabox div p{font-size:1.6rem; font-weight:400; margin:0; padding:0;}
section#campaign .areabox div img{display:block; margin:20px auto;}
img.sets{border-radius:5px;}
@media screen and (max-width: 768px) {
section#campaign .areabox{max-width:600px; margin:50px auto; padding-bottom: 0;}
section#campaign{overflow:inherit;}
section#campaign .lead{font-size:1.7rem;}
section#campaign .inner{z-index:inherit; position:inherit;}
section#campaign .inner > img{display:none; position:inherit; top:inherit; z-index:inherit;}
section#campaign p br{display:none;}
}
@media screen and (max-width: 500px) {
section#campaign .inner{padding-top:0 !important;}
}

/*campaign(blue_presents)*/
section#campaign .inner{padding-top:2em !important;}
section#campaign .labels{text-align:center;}
section#campaign .labels span.blue{
background:#1230b2; color:white; display:inline-block; line-height:36px; white-space:nowrap; position:relative; margin: 0 0 .2em 0; padding:0;
font-weight:700; font-style: italic; font-size:2.8rem;}
section#campaign .labels span.blue:before{content:""; position:absolute; top:0; left:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #1230b2 transparent; border-width: 0 0 36px .5em;}
section#campaign .labels span.blue:after{content:""; position:absolute; top:0; right:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: #1230b2 transparent transparent transparent; border-width: 36px .5em 0 0;}
section#campaign .labels label{  
background:none; color:#1230b2; display:inline-block; line-height:60px; white-space:nowrap; position:relative; margin: .1em 0; padding:0 0 1.2rem 0;
font-weight:900; font-style:italic; font-size:5rem;width: 50%; }
section#campaign .labels label.l1{z-index:+1;}
section#campaign .labels label.l2 span{font-size:4rem; padding:0; margin:0; line-height:1;}
section#campaign .labels label.l1:before,
section#campaign .labels label.l3:before
{content:""; position:absolute; top:0; left:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #fff transparent; border-width: 0 0 60px .5em;}
section#campaign .labels label.l2:after,
section#campaign .labels label.l3:after
{content:""; position:absolute; top:0; right:-.5em; display:block;
width: 0; height: 0; border-style: solid;border-color: #fff transparent transparent transparent; border-width: 60px .5em 0 0;}
section#campaign .areabox p{font-size:1.8rem;}
section#campaign p.lead{margin:1.5em 0 !important;}
section#campaign p.lead .btn2{box-shadow:0px 2px 2px rgba(0,0,0,.3); font-size:2rem; line-height:1.8; padding:0 .5em; margin:0 .5em 0 0;}
section#campaign p.lead .btn2:hover{box-shadow:0px 0px 0px;}

@media screen and (max-width: 768px) {
section#campaign{background:url('../img/top/bg_campaign_sp.webp') center top no-repeat #0b73d7; background-size:100%; margin-top: 0;}
section#campaign .labels span.blue{font-size:2rem; line-height:20px; margin-left:1.7em;}
section#campaign .labels span.blue:before{border-width: 0 0 20px .5em; left:-.4em;}
section#campaign .labels span.blue:after{border-width: 20px .5em 0 0; right:-.4em;}
section#campaign .labels{text-align:left; padding-left:1em;}
section#campaign .labels label{margin: .1em 0; padding:0 .2em; line-height:50px; font-size:4.5rem; display:table;}
section#campaign .labels label.l2 span{font-size:3rem;}

section#campaign p.lead{margin-top:50px;}
section#campaign p.lead br{display:inherit !important;}
section#campaign p.lead br.sp{display:none !important;}

section#campaign .labels label.l1{margin-left:.6em;}
section#campaign .labels label.l2{margin-left:.3em;}

section#campaign .labels label.l1:before,
section#campaign .labels label.l2:before,
section#campaign .labels label.l3:before
{content:""; position:absolute; top:0; left:-.3em; display:block;
width: 0; height: 0; border-style: solid;border-color: transparent transparent #fff transparent; border-width: 0 0 50px .3em;}
section#campaign .labels label.l1:after,
section#campaign .labels label.l2:after,
section#campaign .labels label.l3:after
{content:""; position:absolute; top:0; right:-.3em; display:block;
width: 0; height: 0; border-style: solid;border-color: #fff transparent transparent transparent; border-width: 50px .3em 0 0;}
}
@media screen and (max-width: 500px) {
section#campaign .labels{padding-top:37px; padding-left: 0;}
section#campaign .labels span.blue{margin-left:1.1em; font-size:1.6rem;}
section#campaign .labels label{line-height:40px; font-size:2.5rem; padding-left: 0;}
section#campaign .labels label.l2 span{font-size:2.5rem;}
section#campaign .labels label.l1:before,section#campaign .labels label.l2:before,section#campaign .labels label.l3:before{border-width: 0 0 40px .3em;}
section#campaign .labels label.l1:after,section#campaign .labels label.l2:after,section#campaign .labels label.l3:after{border-width: 40px .3em 0 0;}
section#campaign p.lead{margin-top:20px; text-align:center; font-size:1.5rem;}
section#campaign p.lead br.sp{display:inherit !important;}
section#campaign .areabox p{font-size:1.4rem;}
}
@media screen and (max-width: 380px) {
section#campaign .labels span.blue{font-size:1.2rem;}
}



/*title*/
section#nyukai{position:relative;}
section#nyukai > a.anc{position:absolute; top:-90px;}
.title.blue{font-size:3rem; text-align:center; line-height:1.3;  font-weight:600; background-color:#1230b2; color:#fff; padding:15px; margin-top:1em;}
.title.blue data{font-size:1.6rem; border-bottom:2px solid; display:inline-block; height: 2.8rem;vertical-align:bottom; margin-left:.7em;}

/*course*/
.coursebox{margin-top:2em;}
.coursebox a{border-bottom:0;}
/* .coursebox a:after{
content:"クリックして詳細へ"; font-family: 'Noto Sans JP', sans-serif;font-size:2rem; line-height:35px; text-align:center; white-space:nowrap;
display:block; width:80%; margin:0 auto; border-top:1px solid; border-bottom:1px solid;} */
.coursebox .image{position:relative;}
.coursebox .image data{position:absolute; padding:0; margin:0;}
.coursebox .image data span{
position:relative; display:block; height:35px; padding:0 .7em 0 .5em; background:#ccc;
font-size:26px; line-height:35px; font-weight:400; font-style: italic; color:#fff;}
.coursebox .text{position:relative; padding:50px 0 0 0;}
.coursebox .text h3{position:absolute; width:100%; top:-20px; margin:0; padding:0; border:0; font-size:1.8rem; color:#666;}
.coursebox .text h3 label{display:block; margin:0 0 .2em 0; padding:0;}
.coursebox .text h3 label span{
position:relative; display:block; margin:0 10px; padding:0; background:#ccc;  
font-size:2.8rem; line-height:35px; font-weight:400; font-style: italic; color:#fff;}
.coursebox .image data span:before, .coursebox .text h3 label span:before{
position:absolute; top:0; left:-10px;
content:""; display:block; width: 0; height: 0; border-style: solid; 
border-width: 0 0 35px 10px; border-color: transparent transparent #ccc transparent;}
.coursebox .image data span:after, .coursebox .text h3 label span:after{
position:absolute; top:0; right:-10px;
content:"";  display:block; width: 0; height: 0; border-style: solid; 
border-width: 35px 10px 0 0; border-color: #ccc transparent transparent transparent;}

@media screen and (max-width: 768px) {
section#course .lead{text-align:left; margin:0 0 1.5em 0;}
/* section#course .lead br{display:none;} */
.coursebox a:after{width:65%;}
.flexbox.coursebox{display:inherit; max-width:400px; margin:0 auto;}
.flexbox.coursebox .item + .item{margin-top:50px;}
.flexbox.coursebox .text{width:80%; margin:0 auto;}
}

.coursebox .sports a:after{color:#1230b2;}
.coursebox .sports .image data span, .coursebox .sports .text h3 label span{background:#1230b2;}
.coursebox .sports .image data span:before, .coursebox .sports .text h3 label span:before{border-color: transparent transparent #1230b2 transparent;}
.coursebox .sports .image data span:after, .coursebox .sports .text h3 label span:after{border-color: #1230b2 transparent transparent transparent;}

.coursebox .fitness a:after{color:#ff5b90;}
.coursebox .fitness .image data span, .coursebox .fitness .text h3 label span{background:#ff5b90;}
.coursebox .fitness .image data span:before, .coursebox .fitness .text h3 label span:before{border-color: transparent transparent #ff5b90 transparent;}
.coursebox .fitness .image data span:after, .coursebox .fitness .text h3 label span:after{border-color: #ff5b90 transparent transparent transparent;}

.coursebox .athlete a:after{color:#00b58c;}
.coursebox .athlete .image data span, .coursebox .athlete .text h3 label span{background:#00b58c;}
.coursebox .athlete .image data span:before, .coursebox .athlete .text h3 label span:before{border-color: transparent transparent #00b58c transparent;}
.coursebox .athlete .image data span:after, .coursebox .athlete .text h3 label span:after{border-color: #00b58c transparent transparent transparent;}

/*hours*/
section#hours .inner{padding-top:60px; padding-bottom: 0;}
@media screen and (max-width: 500px) {
section#hours .inner{padding-top:50px;}
}
.flexbox.hours > .item{width:calc(100% / 3);}
.flexbox.hours table{background:#fff; width:100%; font-size:1.7rem;}
.flexbox.hours table th{border:1px solid #999; padding:1em .5em; color:#666; background:inherit;}
.flexbox.hours table td{border:1px solid #999; padding:1em .5em; color:#666;}
.flexbox.hours .hours1 th{background:#fbfbfb;}
.flexbox.hours .hours2 th{background:#e5f3fc;}
.flexbox.hours .hours3 th{background:#fff1f6;}
@media screen and (max-width: 900px) {
.flexbox.hours table{font-size:1.4rem;}
}
@media screen and (max-width: 768px) {
.flexbox.hours{display:inherit; grid-gap:inherit;}
.flexbox.hours > .item{width:100%;}
.flexbox.hours table th,.flexbox.hours table td{width:50%;}
.flexbox.hours .item + .item th, .flexbox.hours .item + .item td{border-top:0;}
}

/*price*/
.flexbox .price1{width:35%;}
.flexbox .price2{width:65%;}
.flexbox .price1 th, .flexbox .price2 th{font-size:2rem;}
.flexbox .price1 td, .flexbox .price2 td{font-size:1.6rem; padding:.8em 0;}
.flexbox .price2 tr > td:nth-child(1){width:45%;}
.flexbox .price2 tr > td:nth-child(2){width:55%;}
.flexbox .price1 .large{font-size:2.4rem; font-weight:600; line-height:20px; margin-bottom:.5em;}
@media screen and (max-width: 768px) {
section#price .flexbox{display:inherit; grid-gap:inherit;}
.flexbox .price1{width:100%;}
.flexbox .price2{width:100%; margin-top:30px;}
}

/*item*/
section.item .inner{max-width:500px;}
section.item img{margin:20px auto 0 auto; display:block;}
section#item1 .inner{padding:30px 15px 0 15px;}
body.location section#item1 .inner{padding:40px 15px;}
section#item2 .inner{padding:40px 15px 80px 15px;}
body.location section#item2 .inner{padding:40px 15px;}
section#item2 h4{color:#0082e0; padding:0; margin:1em 0 .8em 0 ; border:0; font-size:2.3rem; text-align:center; text-indent: .5em;}
section#item2 h4 br{display:none;}
section#item2 .day {color:#0082e0; padding:0; margin:0.5em 0 .5em 0 ; border:0; font-size:2.3rem; text-align:center; text-indent: .5em; font-weight: bold;}
section#item2 .day br{display:none;}
section#item2 p{text-align:center;}
section#item2 img{border-radius:5px;}
section#item2 .btn2{font-size:3rem; padding:.7em; display:block; margin:30px auto 0 auto; max-width:400px;}
section#item3 .btn2{font-size:3rem; padding:.7em; display:block; margin:0px auto 0 auto; max-width:400px;}
section#item4 .inner{padding:40px 15px 80px 15px;}
body.location section#item4 .inner{padding:40px 15px;}
section#item4 h4{color:#0082e0; padding:0; margin:1em 0 .8em 0 ; border:0; font-size:2.3rem; text-align:center; text-indent: .5em;}
section#item4 h4 br{display:none;}
section#item4 .day{color:#0082e0; padding:0; margin:1em 0 .8em 0 ; border:0; font-size:2.3rem; text-align:center; text-indent: .5em; font-weight: bold;}
section#item4 .day br{display:none;}
section#item4 p{text-align:center;}
section#item4 img{border-radius:5px;}
section#item4 .btn2{font-size:3rem; padding:.7em; display:block; margin:30px auto 0 auto; max-width:400px;}
section#item5 .inner{padding:40px 15px 80px 15px;}
body.location section#item5 .inner{padding:40px 15px;}
section#item5 h4{color:#0082e0; padding:0; margin:1em 0 .8em 0 ; border:0; font-size:2.3rem; text-align:center; text-indent: .5em;}
section#item5 h4 br{display:none;}
section#item5 .day {color:#0082e0; padding:0; margin:1em 0 .2em 0 ; border:0; font-size:2.3rem; text-align:center; text-indent: .5em; font-weight: bold;}
section#item5 .day br{display:none;}
section#item5 p{text-align:center;}
section#item5 img{border-radius:5px;}
section#item5 .btn2{font-size:3rem; padding:.7em; display:block; margin:30px auto 0 auto; max-width:400px;}
@media screen and (max-width: 500px) {
/*body#covid section.item .inner{margin-bottom:50px;}*/
section#item1 .inner{padding:20px 15px 0 15px;}	
section#item2 .inner{padding:40px 15px;}
section#item2 h4{font-size:2.2rem;text-indent:0;}
section#item2 h4 br{display:inherit;}
section#item2 .day{font-size:2.2rem;text-indent:0;}
section#item2 .day br{display:inherit;}	
section#item2 p{text-align:left;}
section#item2 p br{display:none;}
section#item2 .inner{padding:20px 15px 60px 15px;}
/*body#covid section#item2 .inner{padding:0 15px 60px 15px; margin-bottom:0 !important}*/
section#item2 img.sp{margin-top:40px;}
section#item4 .inner{padding:40px 15px;}
section#item4 h4{font-size:2.2rem;text-indent:0;}
section#item4 h4 br{display:inherit;}
section#item4 .day{font-size:2.2rem;text-indent:0;}
section#item4 .day br{display:inherit;}		
section#item4 p{text-align:left;}
section#item4 p br{display:none;}
section#item4 .inner{padding:20px 15px 60px 15px;}
section#item4 img.sp{margin-top:40px;}
section#item5 .inner{padding:40px 15px;}
section#item5 h4{font-size:2.2rem;text-indent:0;}
section#item5 h4 br{display:inherit;}
section#item5 .day{font-size:2.2rem;text-indent:0;}
section#item5 .day br{display:inherit;}			
section#item5 p{text-align:left;}
section#item5 p br{display:none;}
section#item5 .inner{padding:20px 15px 60px 15px;}
section#item5 img.sp{margin-top:40px;}		
}

/**********************************************

reserve

**********************************************/
body.reserve #container{padding-bottom: 0 !important;}

/*index*/
@media screen and (max-width: 500px) {
body#index.reserve .areabox .flexbox > div{display:block; width:100%; margin:0 0 10px 0;}
body#index.reserve .areabox .flexbox > div > a{width:inherit; font-size:1.8rem; padding:.4em 1em;}
}

/*form*/
.formbox{background:#fff; padding:50px; margin-top:40px;}
.formbox dl{display:flex; width:100%; line-height:1.3;}
.formbox dt{width:200px; padding:1em; font-weight:700;}
.formbox dd{width:calc(100% - 200px); padding:1em;}
.formbox dd input[type=text]{display:block; width:100%; margin-bottom:5px; line-height:1.5; font-size:1.6rem; padding:.5em; border:1px solid #ccc; border-radius: 3px; background-color:#fff;}
.formbox dd input[type=radio], .formbox dd input[type=checkbox]{display:inline-block; margin-right:.5em;}
.formbox dd select{display:block; margin-bottom:5px; line-height:1.5; font-size:1.6rem; padding:.5em; border:1px solid #ccc; border-radius: 3px; background-color:#fff;}
.formbox .area{margin-bottom:1em;}
.formbox hr{margin:2em 0 1em 0; width:auto; height:1px; background-color:#ccc;}
.formbox .come{font-size:1.4rem;}
@media screen and (max-width: 600px) {
.formbox{padding:30px 20px;}
.formbox dl{display:inherit; padding:.5em 0;}
.formbox dt{width:inherit; padding:.5em 0;}
.formbox dt br{display: none;}
.formbox dd{width:inherit; padding:.5em 0;}
}
input[type="submit"] {font-size: 20px; background:#0082e0; border: none; padding: 10px 20px; cursor:pointer; border-radius:3px; color:#fff; margin-top:30px;}
.flat-btn {-webkit-appearance: none; border-radius: 0; transition: .3s;}
.flat-btn:hover{background-color:#1230b2;}

body.reserve#index #pankuzu{padding:10px 0 20px 0;}
body.reserve.form #pankuzu{padding:0; margin:0;}
body.reserve h1{color:#0082e0; font-size:4rem; padding-bottom: 0; margin-bottom: 30px;}
@media screen and (max-width: 768px) {
body.reserve h1{font-size:2.8rem;}
}

/**********************************************

report

**********************************************/
/*Report-color:#0b1658*/
/*sub:#e696ff*/
/*sub2:#af5fe1*/
/*hr*/
body.report section{position:relative; color:#56147e;}
body.report section:before, body.report section:after{position:absolute; content:""; display: block; width:100%; height:60px;}
body.report section:before{right:0; top:0; width: 0; height: 0; border-style: solid; border-width: 0 50vw 50px 0; border-color: transparent #af5fe1 transparent transparent;}
body.report section:after{left:0; bottom:0; width: 0; height: 0; border-style: solid;border-width: 50px 0 0 50vw; border-color: transparent transparent transparent #af5fe1;}
body.report section#six:before,body.report section:last-child:after{display:none;}
/*inner*/
body.report #container .inner{max-width:1000px; margin:0 auto; padding:50px 0 90px 0;}
@media screen and (max-width: 1000px) {
body.report #container .inner{max-width:inherit; margin:0 15px;}
}
body.report section:last-child .inner{padding-bottom:0 !important;}
@media screen and (max-width: 767px) {
body.report #container #pankuzu{padding:10px 0 0 0;}
}
/*h2*/
body.report h2{
position:relative; padding:3em 0 0 0; margin:0 0 1.5em 0;
font-size:3rem; font-weight:700; color:#56147e; text-align:left; display:block; line-height:1.5;}
body.report h2 span{padding:0 0 3px 0; background:url('../img/report/line1.png') left bottom repeat-x;}
body.report h2 label{display:inherit; padding:0; margin:0; border:0; font-size:inherit; color:inherit; color: #eb6487;}
body.report h2 data{
position: absolute; top:0; left:0;
text-align:center; font-size:5rem; line-height:1; font-family: 'Sarpanch', sans-serif; color: #e696ff; font-weight:400;
}
body.report h2 data:before{content:"Round"; font-size:16px; display:block; font-weight:700; color:#56147e;}
@media screen and (max-width: 500px) {
body.report h2{font-size:2rem; padding:3.5em 0 0 0;}
body.report h2 br{display:none;}
}
/*lead*/
body.report .lead {
position:relative; padding:.5em 1.5em 1em 1.5em; margin:0 0 1em 0;
border-left:2px solid; border-right:2px solid; display:inline-block; }
body.report .lead p{font-size:1.6rem; margin:5px 0; padding:0;}
body.report .lead > span{display:block; width:.5em; height:2px; background:#56147e; position:absolute;}
body.report .lead > span:nth-child(1){left:0; top:0;}
body.report .lead > span:nth-child(2){right:0; top:0;}
body.report .lead > span:nth-child(3){left:0; bottom:0;}
body.report .lead > span:nth-child(4){right:0; bottom:0;}
body.report .lead p label{padding:0 0 3px 0; background:url('../img/report/line2.png') left bottom repeat-x;}
@media screen and (max-width: 500px) {
body.report .lead p br{display:none;}
}
/*h3*/
body.report h3{
text-align:left; font-size:1.8rem; color:#fff; background:#6f23e2; font-weight:400;
white-space:nowrap;
position:relative; display:table; padding:.3em .5em .4em .5em; margin:1em 0;
}
body.report h3:after{content:""; position:absolute; top:0; right:-10px; display:block;
width: 0; height: 0; border-style: solid;border-color: #6f23e2 transparent transparent transparent; border-width: 35px 10px 0 0;}
/*voice*/
body.report .voice{
position:relative;
display:inline-block; padding:1.3em 1.3em 1.3em 150px; margin:50px 0 20px 0;
background:url('../img/report/comment.gif'); border:1px solid #eee; border-radius:5px;
}
body.report .voice > img{position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto 0 auto 1em; width: 115px; height: 124px;}
body.report .voice p{margin:0; padding:0; font-size:1.5rem; font-weight:700;}
body.report .voice p+p{margin:1em 0 0 0;}
body.report .voice p span{ background: linear-gradient(transparent 45%, yellow 45%); display:inline;}
@media screen and (max-width: 767px) {
body.report .voice{padding:1.3em 1.3em 1.3em 120px;}
body.report .voice > img{margin: auto 0 auto -10px;}
}
@media screen and (max-width: 500px) {
body.report .voice{padding:40px 1.3em 1.3em 1.3em; margin:120px 0 0 0;}
body.report .voice > img{margin:-90px 0 0 10px;}
}
/*imgbox*/
.voice+.imgbox{margin-top:50px;}
.imgbox{display:flex; grid-gap:30px;}
.imgbox img{box-shadow: 5px 5px 0 #e696ff;}
.imgbox .img{display:flex; grid-gap: 20px; justify-content:center;}
.imgbox .img img{min-width:250px;}
.imgbox video{max-width:540px;}
.imgbox .mov {text-align:center;}
.imgbox p, .imgbox2 p{font-size:1.4rem; padding:.5em 0; line-height: 1.3; text-align:center;}
@media screen and (max-width: 1000px) {
.imgbox{display:inherit;}
.imgbox .img{text-align:center;}
.imgbox p br,.imgbox2 p br{display:inherit;}
.imgbox .mov {margin-top:20px;}
}
@media screen and (max-width: 500px) {
.imgbox .img{display:inherit;}
.imgbox .img > div+div{margin-top:20px;}
.imgbox p, .imgbox2 p{text-align:left; padding:10px 15px 0 15px;}
.imgbox p br, .imgbox2 p br{display:none;}
}

.imgbox2{margin-top:30px; display:flex; grid-gap:10px;}
.imgbox2 img{min-width: inherit;}
.imgbox2 img{box-shadow: 5px 5px 0 #e696ff;}
@media screen and (max-width: 500px) {
.imgbox2{display:inherit; grid-gap:inherit; text-align:center;}
.imgbox2 > div+div{margin-top:20px;}
}

.imgbox.large .img img{min-width:inherit; max-width:210px;}
.imgbox.large .grid{display: grid; gap: 20px; grid-template-columns: 1fr 1fr;}
@media screen and (max-width: 1000px) {
.imgbox.large .main{text-align:center; margin-bottom: 20px;}
.imgbox.large .img img{max-width:inherit; width:100%; height:auto;}
}
/*mainimage*/
body.report #mainimage{
margin:10px 0 0 0; padding:0; position:relative; overflow:hidden; max-height:450px;
background:url('../img/report/h_bg.jpg') center center no-repeat; background-size:cover; background-attachment:fixed;}
body.report #mainimage:before,body.report #mainimage:after{position:absolute; content:""; display: block; width:100%; height:60px; z-index:10;}
body.report #mainimage:before{right:0; bottom:0; width: 0; height: 0; border-style: solid; border-width: 100px 50vw 0 0; border-color: transparent #fff transparent transparent;}
body.report #mainimage:after{left:0; bottom:0; width: 0; height: 0; border-style: solid;border-width: 100px 0 0 50vw; border-color: transparent transparent transparent #fff;}
body.report #mainimage .inner{margin:0 auto; padding:0; text-align:right; position:relative;}
body.report #mainimage .inner h1{position:absolute; top:0; left:0;}
@media screen and (max-width: 767px) {
body.report #mainimage .inner h1{width:80%;}
}
body.report #mainimage #pankuzu{position:absolute; left:0; top:0; z-index: +1;}
/*six*/
body.report #six{text-align:center;}
body.report #six .inner{padding-top:20px;}
body.report #six h2{font-size:2.6rem; text-align:center; font-weight:600; margin:0; padding:0; line-height:1;}
body.report #six h2 span{background-image:none; background: linear-gradient(transparent 65%, yellow 65%);}
body.report #six h2 span label{color:#dc6e87; font-size:4.5rem;}
/*table*/
body.report .flexbox.price{margin:40px 0 20px 0;}

body.report .flexbox.price th{background:#af5fe1;}
body.report .flexbox.price th, body.report .flexbox.price td{border-color:#af5fe1;}
body.report .flexbox.price .price1 .red, body.report .flexbox.price .price2 tr > td:last-child{color:#af5fe1;}
@media screen and (max-width: 768px) {
body.report .flexbox.price{display:inherit; grid-gap:inherit;}
}
/*five*/
body.report #five{
position:relative;
padding:30px; margin:80px 0 0 0;
background:url('../img/report/five.gif'); border:5px solid #eee;}
body.report #five h3{background:none; padding:0; margin:0; position:absolute; top:-50px; left:-20px; border:0;}
body.report #five h3:after{display:none;}
body.report #five h3 img{}
body.report #five ul{padding:0; margin:0;}
body.report #five li{list-style:none !important; padding:0 0 0 70px; margin:2.5em 0;}
body.report #five li:nth-child(1){background:url('../img/report/five_1.png') left top no-repeat;}
body.report #five li:nth-child(2){background:url('../img/report/five_2.png') left top no-repeat;}
body.report #five li:nth-child(3){background:url('../img/report/five_3.png') left top no-repeat;}
body.report #five li:nth-child(4){background:url('../img/report/five_4.png') left top no-repeat;}
body.report #five li:nth-child(5){background:url('../img/report/five_5.png') left top no-repeat; margin-bottom:1em;}
body.report #five h4{border:0; padding:0; margin:0 0 .5em 0; white-space:nowrap; font-size:2rem; font-family: 'Kosugi', sans-serif; font-weight:400;}
body.report #five h4 span{ background: linear-gradient(transparent 60%, yellow 60%);}
body.report #five p{}
@media screen and (max-width: 768px) {
body.report #five p br{display:none;}
}
@media screen and (max-width: 500px) {
body.report #five{padding:20px 10px 30px 8px; margin:20px 0 0 0; position:inherit;}
body.report #five h3{left:inherit; top:inherit; position:inherit; margin:0 0 40px 0;}
body.report #five li{background-size:40px !important; padding:0 0 0 50px;}
body.report #five li:nth-child(1){margin-top: 0;}
body.report #five li:nth-child(5){margin-bottom: 0;}
body.report #five h4{font-size:1.8rem;}
body.report #five p{font-size:1.3rem;}
}
body.report .voice.five{margin-bottom:50px;}
/*math*/
body.report section#math .flexbox{justify-content: space-between; grid-gap: 60px; align-items:start;}
body.report section#math .flexbox .text{width:60%;}
body.report section#math .flexbox .text　img{width:100px; height:auto;}
body.report section#math h2{padding:0;}
body.report section#math .voice{padding:2rem; display:block; }
body.report section#math .voice p{font-size:1.5rem;}
@media screen and (max-width: 850px) {
body.report section#math .flexbox{grid-gap: 30px;}
body.report section#math h2 br{display:none;}
body.report section#math .voice p{font-size:1.4rem;}
body.report section#math .voice p br{display:none;}
}
@media screen and (max-width: 767px) {
body.report section#math .flexbox{display:inherit;}
body.report section#math .flexbox .text{width:100%;}
body.report section#math .voice{margin:0 0 20px 0;}
body.report section#math .flexbox .image{text-align:center;}
}
body.report section#math .box{margin:40px 0 0 0; padding:2.5em; border:1px solid #e4e4ec; background:#f6f6fe;}
body.report section#math .box p{margin:0;}

/**********************************************

News & Topics

**********************************************/
body#post.news #newsarea > .inner{padding-top:20px;}
body#post.news h1{border-top:1px solid; border-bottom:1px solid; text-align:left; padding:.3em 0; margin:0 0 0 0; color:#0082e0; font-size:4rem; line-height:1.3;}
body#post.news h1 + data{text-align:right; display:block; margin:.5em 0 1.5em 0; color:#999; font-weight:400;}
body#post.news .contents{display:flex; grid-gap: 50px; justify-content:space-between;}
body#post.news .contents > .text{width:100%;}
body#post.news .contents > .img{max-width:400px;}
body#post.news .contents > .img:empty{display:none;}
body#post.news h2{display:inherit; text-align:left; margin:1.5em 0 1em 0; font-size:2.2rem;}
@media screen and (max-width: 1000px) {
body#post.news h1{font-size:3rem; padding:.5em 0;}

}
@media screen and (max-width: 767px) {
body#post.news h1{font-size:2.6rem; padding:1em 0;}
}
@media screen and (max-width: 500px) {
body#post.news .contents{display:inherit;}
body#post.news .contents > .img{max-width:inherit; text-align:center; margin-top:30px;}
}

body#post.news .contents table{width:auto; margin:2em 0;}
body#post.news .contents th{background:#eee; color:#0082e0;}
body#post.news .contents th, body#post.news .contents td{padding:1em 2em; border-width:1px;}
body#post.news .contents .flex{display:flex; grid-gap: 10px;}
body#post.news .contents .flex.img{justify-content:space-between; grid-gap: 50px;}
body#post.news .contents .flex.img img{max-width:300px;}
body#post.news .contents .flex.center{align-items:center;}
body#post.news .contents .red{color:red;}
@media screen and (max-width: 768px) {
body#post.news .contents .flex.img img{max-width:250px;}
}
@media screen and (max-width: 500px) {
body#post.news .contents th, body#post.news .contents td{padding:1em .5em; font-size:1.4rem;}
body#post.news .contents .flex.img{display:block;}
body#post.news .contents .flex.img > div:last-child{text-align:center; margin-top:20px;}
}

body#post.news .contents .large, body#post.news .contents .large p{font-size:2.6rem;}
body#post.news .contents .middle, body#post.news .contents .middle p{font-size:1.8rem;}
@media screen and (max-width: 500px) {
body#post.news .contents .large, body#post.news .contents .large p{font-size:2.1rem;}
body#post.news .contents .middle, body#post.news .contents .middle p{font-size:1.7rem;}
}
.m30{margin-top:30px; margin-bottom:30px;}

/**********************************************

EXPERIENCE

**********************************************/
body.experience h2{margin:0px auto; display:flex; justify-content: center; align-items:center; grid-gap:10px; color: #1230b2; font-size:6.5rem; } 
body.experience h3{font-size:4.5rem; font-weight:600;}
body.experience h4{font-size:4rem; text-align:center; margin:.3em auto .7em auto; padding: .2em 0; line-height:1.3; border:2px solid; color:#0082e0; background-color: #FFF;font-weight:600;}

body.experience a.btn3{text-align:center; color:#fff; padding:0 0em; border-bottom:0;
background:rgb(5,20,140); border-radius:.2em;
background: linear-gradient(0deg, rgba(5,20,140,1) 0%, rgba(5,20,140,1) 50%, rgba(20,50,180,1) 50%, rgba(20,50,180,1) 100%);
display:block; font-size:3.0rem; font-weight:550; line-height:70px; white-space:nowrap;box-shadow: 0 5px 8px rgba(0,0,0,.3);
}
body.experience h5{width: 60%;font-size: 1.6rem;margin: 2em 0 .5em 0;}
body.experience a.btn3:hover{
opacity:1;
background: rgb(0,10,100);background: linear-gradient(0deg, rgba(0,10,100,1) 0%, rgba(0,10,100,1) 50%, rgba(5,20,140,1) 50%, rgba(5,20,140,1) 100%);}

body.experience #container{padding:0px 0px 0px !important; margin: 0px 0px -20px !important; }
body.experience #area img{margin-top: 30px; margin-bottom: -20px;}

@media screen and (max-width: 500px) {
body.experience h2{font-size:4.5rem;}
body.experience h3{font-size:3.8rem; font-weight:550;}
body.experience h4{font-size:3.2rem;}
body.experience a.btn3{font-size:2.3rem;line-height:60px; }
body.experience section#area .inner > img{max-width: 500px; width:100%; height:auto; }
body.experience #area{padding:20px 0px 0px !important; margin: 0px 0px 0px !important; }
body.experience #area img{margin-top: 0px; margin-bottom: 0px;}
}

@media screen and (max-width: 320px) {
body.experience h2{font-size:3.8rem;}
body.experience h3{font-size:3.0rem; font-weight:550;}
body.experience h4{font-size:2.5rem;}
body.experience a.btn3{font-size:1.9rem;line-height:50px; }
}
body.experience section.item img {
    margin: 0 auto 0 auto;
    padding-bottom: .5rem;
    display: block;
}
body.experience .rim{
    padding-top: 50px;
}
a.external-link {
  margin-bottom: 2rem;  
  text-decoration: none;
}
a.external-link::after {
display: none !important;
}

/**********************************************

SNS

**********************************************/

body#sns_page section#area1 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area2 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area3 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area4 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area5 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area6 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area7 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area8 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page section#area9 .inner > img{max-width: 500px; width:100%; height:auto; text-align: center; display: block; margin : 0 auto}
body#sns_page .flexbox.area data{width:460px; background-color:#FFF;}

@media screen and (max-width: 500px) {
body#sns_page section#area .inner > img{margin-top:10px; }
body#sns_page section#area1 .inner > img{margin-top:10px; }
body#sns_page section#area2 .inner > img{margin-top:10px; }
body#sns_page section#area3 .inner > img{margin-top:10px; }
body#sns_page section#area4 .inner > img{margin-top:10px; }
body#sns_page section#area5 .inner > img{margin-top:10px; }
body#sns_page section#area6 .inner > img{margin-top:10px; }
body#sns_page section#area7 .inner > img{margin-top:10px; }
body#sns_page section#area8 .inner > img{margin-top:10px; }
body#sns_page section#area9 .inner > img{margin-top:10px; }
body#sns_page .flexbox.area data{width:100%;border:1px solid; }
body#sns_page section#area .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area1 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area2 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area3 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area4 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area5 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area6 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area7 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area8 .inner > img{max-width: 500px; width:100%; height:auto;}
body#sns_page section#area9 .inner > img{max-width: 500px; width:100%; height:auto;}
}

/**********************************************

英語サイト左下メニュー

**********************************************/
a[data-stt-changelang] {
margin:0 7px;
}
a[data-stt-active] {
text-decoration:none;
font-weight:bold;
display: none !important;
}

#e_menu {
position: fixed; /* 要素の位置を固定する */
bottom: 0; /* 基準の位置を画面の一番下に指定する */
left: 0; /* 基準の位置を画面の一番右に指定する */
width: 70px; /* 幅を指定する */
border-top: 1px solid #f2f5fa; /* ボーダーを指定する */
border-right: 1px solid #f2f5fa; /* ボーダーを指定する */
z-index:1000;
background: #FFF;
font-weight: bold;
border-top-right-radius: 10px;
padding: 10px 0px;
}
#e_menu a{
color:#0082e0;
}

.youtube{
text-align: center;
}

.dli-caret-circle-fill-right {
display: inline-block;
vertical-align: middle;
color: #1230b2;
line-height: 1;
position: relative;
width: 0.7em;
height: 0.7em;
border: 0.1em solid currentColor;
background: currentColor;
border-radius: 50%;
box-sizing: content-box;
}

.dli-caret-circle-fill-right::before {
content: '';
color: #fff;
width: 0;
height: 0;
border-style: solid;
border-color: transparent;
border-width: 0.18em 0.31177em;
border-left-color: currentColor;
border-right: 0;
transform: translateX(15%);
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
}

.shop-advantage-swiper .swiper-slide { display: flex; justify-content: center; }
.shop-advantage-swiper .box { background: #fff; border-radius: 16px; box-shadow: 0 2px 12px rgba(0,0,0,.08); padding: 24px 6px 18px; width: 300px; text-align: center; }
.shop-advantage-swiper .box img { display: block; margin: 0 auto; max-width: 100%; }
.shop-advantage-swiper .box p img { max-width: 100%;; margin: 0 auto; }
@media (max-width: 700px) {
    .shop-advantage-swiper .box { width: 88vw; }
}