@charset "utf-8";

/* Reset *//* Reset *//* Reset *//* Reset *//* Reset *//* Reset *//* Reset *//* Reset */

	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}

	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block;
	}

	body {
		line-height: 1;
	}

	ol, ul {
		list-style: none;
	}

	blockquote, q {
		quotes: none;
	}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	body {
		-webkit-text-size-adjust: none;
	}

	img{
		max-width: 100%;
	}

/* Box Model *//* Box Model *//* Box Model *//* Box Model *//* Box Model *//* Box Model *//* Box Model */

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



.font01{font-family: 'Noto Sans JP', sans-serif; font-weight: 700;}


/* ------------------------------------------------------------
base
------------------------------------------------------------ */

p {
    line-height: 1.7;
}

.wrapper , .wrapper2 {
    overflow: hidden;
    margin: 0 auto;
}
.wrapper p {
    line-height: 1.7;
}

/* ------------------------------------------------------------
link
------------------------------------------------------------ */
a,a:visited {
  color: #000;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
/*マウスオーバー時ゆっくり透過*/
.fade {
    -webkit-transition: 0.4s ease-in-out;
    -moz-transition: 0.4s ease-in-out;
    -o-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}
.fade:hover {
    opacity: 0.4;
    filter: alpha(opacity=90);
}
@keyframes fadeIn {
 0% {
opacity: 0
}
 100% {
opacity: 1
}
}
 @-webkit-keyframes fadeIn {
 0% {
opacity: 0
}
 100% {
opacity: 1
}
}
/* ------------------------------------------------------------
head
------------------------------------------------------------ */
#head {
width: 100%;
overflow: hidden;
position: absolute;
background-color: rgba(255,255,255,0.9);
}
#head2 {
width: 100%;
overflow: hidden;
position: relative;
background-color: rgba(255,255,255,0.9);
}
#head .wrapper {
}
#head h1,#head2 h1{
float: left;
color: #0a1b4c;
font-size: 1.5rem;
text-align: left;
line-height: 1.3;
padding: 10px 0 15px 0;
}
#head h1 a,#head2 h1 a{
text-decoration: none;
}
#head h1 span,#head2 h1 span{
display: block;
font-size: 3.3rem;
}

#head .tel,#head2 .tel{
float: right;
color: #0a1b4c;
font-size: 1.5rem;
text-align: left;
line-height: 1.3;
padding: 10px 0 15px 0;
}
#head .tel span,#head2 .tel span{
display: block;
color: #229fbf;;
font-size: 3.3rem;
}

/* ------------------------------------------------------------
gnav
------------------------------------------------------------ */
#gnav {
clear: both;
text-align: center;
margin-bottom: 15px
}
#gnav ul {
text-align: center;
}
#gnav li {
display: inline-block;
border-right: 1px solid #aaa;
}
#gnav li:last-child{
border-right:none;
}
#gnav li a {
    display: block;
    color: #0a1b4c;
    font-size: 1.4rem;
    text-align: center;
    padding: 3px 20px;
}
#gnav li a:hover {
    color: #0780ad;
    text-decoration: none;
}
/* ------------------------------------------------------------
sp btn
------------------------------------------------------------ */
#panel-btn {
    display: block;
    position: absolute;
    top: 5px;
    right: 0;
    z-index: 150000;
    width: 50px;
    height: 50px;
    text-align: center;
    cursor: pointer;
}
#panel-btn-icon {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 1px;
    margin: -1px 0 0 -23px;
    background: #000;
    transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    width: 30px;
    height: 1px;
    background: #000;
    transition: .3s;
}
#panel-btn-icon:before {
    margin-top: -10px;
}
#panel-btn-icon:after {
    margin-top: 10px;
}
#panel-btn .close-btn {
    background: transparent;
}
#panel-btn .close-btn:before, #panel-btn .close-btn:after {
    background: #000;
    margin-top: 0;
}
#panel-btn .close-btn:before {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
}
#panel-btn .close-btn:after {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
}
/* ------------------------------------------------------------
spnav
------------------------------------------------------------ */
#sp-nav {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    position: fixed;
    z-index: 1500;
    left: 0;
    top: 0;
    display: none;
    font-size: 1.4rem;
    background-color: #fff;
    filter: alpha(opacity=95);
    -moz-opacity: 0.95;
    opacity: 0.95;
    padding-bottom: 0px;
    padding-top: 55px;
    text-align: center;
}
#sp-nav ul {
    margin-bottom: 20px;
    padding: 10px 10px 0 10px;
}
#sp-nav ul li {
border-bottom: 1px dotted #333;
}
#sp-nav ul li:last-child{
border-bottom: none;
}
#sp-nav ul li a {
    display: block;
    padding: 12px 10px;
    color: #000;
    font-size: 1.7rem;
    text-decoration: none;
}
#sp-nav ul li a span{
    display: block;
    color: #d11609;
    font-size: 1.0rem;
    padding-top: 5px;
}
/* ------------------------------------------------------------
page-title
------------------------------------------------------------ */
.page-title h1{
background: url("../images/cmn-images/page-title-bg.jpg") 50% 50% no-repeat;
background-size: cover;
color: #ffffff;
font-size: 3.6rem;
padding: 80px 0;
margin-bottom: 10px;
}

.kanazawa-facility{background-image: url("../images/kanazawa-images/page-title01.jpg");}
.kanazawa-guide{background-image: url("../images/kanazawa-images/page-title02.jpg");}
.kanazawa-school{background-image: url("../images/kanazawa-images/page-title03.jpg");}
.kanazawa-access{background-image: url("../images/kanazawa-images/page-title04.jpg");}
.kanazawa-exercise{background-image: url("../images/kanazawa-images/page-title05.jpg");}
.kanazawa-contact{background-image: url("../images/kanazawa-images/page-title06.jpg");}

.konan-facility{background-image: url("../images/konan-images/page-title01.jpg");}
.konan-guide{background-image: url("../images/konan-images/page-title02.jpg");}
.konan-school{background-image: url("../images/konan-images/page-title03.jpg");}
.konan-fitness{background-image: url("../images/konan-images/page-title04.jpg");}
.konan-access{background-image: url("../images/konan-images/page-title05.jpg");}
.konan-contact{background-image: url("../images/konan-images/page-title06.jpg");}

.hodogaya-facility{background-image: url("../images/hodogaya-images/page-title01.jpg");}
.hodogaya-guide{background-image: url("../images/hodogaya-images/page-title02.jpg");}
.hodogaya-school{background-image: url("../images/hodogaya-images/page-title03.jpg");}
.hodogaya-fitness{background-image: url("../images/hodogaya-images/page-title04.jpg");}
.hodogaya-access{background-image: url("../images/hodogaya-images/page-title05.jpg");}
.hodogaya-contact{background-image: url("../images/hodogaya-images/page-title06.jpg");}

.page-title-sub h1{
background-position: 50% 50%;
background-repeat: no-repeat;
background-size: cover;
padding: 200px 0 80px 0;
margin-bottom: 10px;
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
}
.page-title-konan h1{
background: url("../images/konan-images/page-title01.jpg") 50% 50% no-repeat;
background-size: cover;
padding: 200px 0 80px 0;
margin-bottom: 10px;
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
}
.page-title-hodogaya h1{
background: url("../images/hodogaya-images/page-title01.jpg") 50% 50% no-repeat;
background-size: cover;
padding: 200px 0 80px 0;
margin-bottom: 10px;
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
}
.page-title-kanazawa h1{
background: url("../images/kanazawa-images/page-title01.jpg") 50% 50% no-repeat;
background-size: cover;
padding: 200px 0 80px 0;
margin-bottom: 10px;
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
}
.page-title h1 span,.page-title-konan h1 span,.page-title-hodogaya h1 span,.page-title-kanazawa h1 span{
color: #ffffff;
display: block;
font-size: 1.2rem;
padding-top: 10px;
}
.page-nav{
font-size: 1.3rem;
text-align: left;
border-bottom: 1px solid #cccccc;
padding-bottom: 10px;
margin-bottom: 30px;
}
/* ------------------------------------------------------------
contents
------------------------------------------------------------ */
.contents{
float: left;
width: 70%;
}
.side{
float: right;
width: 25%;
}
.white-bg{
background-color: #ffffff;
}
.line-box{
border: 1px solid #ccc;
padding: 45px;
border-radius:15px;
}

section {
    clear: both;
    overflow: hidden;
}
section p {
    margin-bottom: 10px;
}
section p a{
text-decoration: underline;
}
/* ------------------------------------------------------------
side
------------------------------------------------------------ */
.cate-menu h3{

font-size: max(22px,2vw);
xbackground-color: #3c7ccc;
padding: 10px;
display:block;
padding:80px 40px 20px 0;
	background-image:url(images/ywp-maskot.svg);
	background-size:140px 99px;
	background-repeat:no-repeat;
	background-position:right 0 bottom 0;
}

.cate-menu ul{
	display:block;
	padding:30px;
	background-color:#F1F7FF;
	border-radius:20px;
}

.cate-menu li a{
border-bottom: 1px dotted #000;
}
.cate-menu li a{
display: block;
text-align: left;
padding: 10px;
}
/* ------------------------------------------------------------
cmn-box
------------------------------------------------------------ */
.cmn-box00{
padding: 80px 0;
}
.cmn-box01{
padding-bottom: 80px;
}
.cmn-box02{
margin-bottom: 80px;
}
.cmn-box03{
text-align: left;
padding-bottom: 80px;
}
/* ------------------------------------------------------------
cmn-title
------------------------------------------------------------ */
.cmn-title01{
font-size: 2.6rem;
font-weight: bold;
text-align: left;
margin-bottom: 15px;
}
.cmn-title02{
font-size: max(30px, 3vw);
line-height:1.5;
color:#002C4E;
margin-bottom: 50px;
}
.cmn-title03{
color: #0a1b4c;
font-size: 3.6rem;
text-align:center;
margin-bottom: 30px;
}
.cmn-title03 span{
color: #229fbf;
display: block;
font-size: 1.2rem;
padding-top: 10px;
}
.cmn-title04{
overflow: hidden;
font-size: 2.2rem;
color: #ffffff;
background-color: #2295ed;
text-align: left;
padding: 10px 15px;
margin-bottom: 20px;
}
.cmn-title04 a{
float: right;
display: block;
font-size: 1.2rem;
font-weight: normal;
color: #ffffff;
border: 1px solid #fff;
text-align: left;
padding: 3px 10px;
margin-top: 6px;
}
.cmn-title04 a:hover{
text-decoration: none;
}
.cmn-title05{
overflow: hidden;
font-size: 2.2rem;
color: #ffffff;
background-color: #0a1b4c;
text-align: left;
padding: 10px 15px;
margin-bottom: 20px;
}

.cmn-title05.closed{
	background-color:#FFBD33;
	color:#000;
}

.cmn-title06{
overflow: hidden;
font-size: 2.2rem;
color: #ffffff;
background: url("../images/cmn-images/btn-icon01.png") 10px 50% no-repeat;
background-size: 6px auto;
background-color: #2295ed;
text-align: left;
padding: 10px 10px 10px 25px;
margin-bottom: 20px;
}
.cmn-title06b{
overflow: hidden;
font-size: 2.2rem;
color: #ffffff;
background: url("../images/cmn-images/btn-icon01.png") 10px 50% no-repeat;
background-size: 6px auto;
background-color: #0e548a;
text-align: left;
padding: 10px 10px 10px 25px;
margin-bottom: 20px;
}
.cmn-title06p{
overflow: hidden;
font-size: 2.2rem;
color: #ffffff;
background: url("../images/cmn-images/btn-icon01.png") 10px 50% no-repeat;
background-size: 6px auto;
background-color: #ed78a7;
text-align: left;
padding: 10px 10px 10px 25px;
margin-bottom: 20px;
border-radius:15px;
}
.cmn-title07{
overflow: hidden;
font-size:max(26px, 3vw); 
color: #229fbf;
background: url("../images/cmn-images/news-icon.png") 10px 50% no-repeat;
background-size: 6px auto;
background-color: #d7edfa;
text-align: left;
padding: 10px 10px 10px 25px;
margin-bottom: 2vw;
}
.cmn-title08{
color: #002C4E;
font-size:max(22px, 2vw); 
text-align: left;
font-weight: bold;
margin-bottom: 2vw;
}
.cmn-title09{
font-size: max(22px, 2vw);
text-align: left;
font-weight: bold;
margin-bottom: 2vw;
}
/* ------------------------------------------------------------
cmn-btn
------------------------------------------------------------ */




.cmn-btn03{
display: inline-block;
}
.cmn-btn03 a{
display: inline-block;
color: #ffffff;
background-color: #2295ed;
min-width: 270px;
border-radius: 25px;
text-align: center;
margin: 0 auto;
padding: 15px 0;
}
.cmn-btn03 a::after{
display: inline-block;
content: "";
width: 4px;
height: 7px;
background-image: url("../images/cmn-images/btn-icon01.png");
background-size: 100% auto;
background-repeat: no-repeat;
margin-left: 10px;
}
.cmn-btn03 a:hover{
text-decoration: none;
}

.cmn-btn04{
display: inline-block;
}
.cmn-btn04 a{
display: inline-block;
color: #ffffff;
background-color: #ed78a7;
min-width: 270px;
border-radius: 25px;
text-align: center;
margin: 0 auto;
padding: 15px 0;
}
.cmn-btn04 a::after{
display: inline-block;
content: "";
width: 4px;
height: 7px;
background-image: url("../images/cmn-images/btn-icon01.png");
background-size: 100% auto;
background-repeat: no-repeat;
margin-left: 10px;
}
.cmn-btn04 a:hover{
text-decoration: none;
}

.cmn-line{
background-color: #ccc;
height: 1px;
border: none;
}

/* ------------------------------------------------------------
table
------------------------------------------------------------ */
.cmn-table{
width: 100%;
}
.cmn-table th{
width: 20%;
}
.cmn-table th,.cmn-table td{
text-align: left;
vertical-align: top;
border-bottom: 1px solid #ccc;
padding: 15px 5px;
line-height:1.6;
}

/* ------------------------------------------------------------
bn-group
------------------------------------------------------------ */
#bn-group ul{
overflow: hidden;
}
#bn-group ul li{
float: left;
width: 22%;
margin-right: 4%;
}
#bn-group ul li:last-child{
margin-right: 0;
}
/* ------------------------------------------------------------
anchor-nav
------------------------------------------------------------ */
.anchor-nav{
overflow: hidden;
padding-bottom: 30px;
}
.anchor-nav li{
float: left;
width: 30%;
text-align: center;
margin: 0 5% 15px 0;
}
.anchor-nav li:nth-child(3n){
margin: 0 0 15px 0;
}
.anchor-nav li a{
display: block;
color: #2295ed;
border: 2px solid #2295ed;
padding: 15px 0;
}
.anchor-nav li a:hover{
display: block;
color: #fff;
text-decoration: none;
background-color: #2295ed;
border: 2px solid #2295ed;
padding: 15px 0;
}
/* ------------------------------------------------------------
img-group
------------------------------------------------------------ */
.img-group{
overflow: hidden;
display:flex;
flex-wrap:wrap;
}
.img-group li{
width: 33%;
padding:1vw;
text-align: center;
}
.img-group li:nth-child(3n){

}
.img-group li img{
margin-bottom: 15px;
}
/* ------------------------------------------------------------
root-group
------------------------------------------------------------ */
.root-group{
xoverflow: hidden;
}
.root-group li{
float: left;
width: 30%;
text-align: center;
position: relative;
margin: 0 5% 0 0;
}
.root-group li:nth-child(3n){
margin: 0 0 0 0;
}
.root-group li h4{
    position: relative;
    z-index: 100;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    line-height: 50px;
    color: #fff;
    background-color: #02316F;
    text-align: center;
    font-size: 20px;
    transform: translateX(-50%);
}



.root-group li img{
margin: -30px 0 10px 0;
}
/* ------------------------------------------------------------
column
------------------------------------------------------------ */
.column01{
overflow: hidden;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.column01 .float-l{
width: 50%;
}
.column01 .float-r{
width: 50%;
padding:0 0 0 3vw;

}

.column02{
overflow: hidden;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
margin-bottom:50px;

}
.column02 .float-l{
width: 55%;
}
.column02 .float-r{
width: 45%;
padding:0 0 0 3vw;
}

.column03{
overflow: hidden;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
flex-direction:row-reverse;
margin-bottom:50px;
}
.column03 .float-l{
width: 45%;
padding:0 3vw 0 0;
}
.column03 .float-r{
width: 55%;
}
/* ------------------------------------------------------------
youtube
------------------------------------------------------------ */
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
/* ------------------------------------------------------------
fnav
------------------------------------------------------------ */
#fnav{
  margin-bottom:20px;
  position: relative;
  z-index: 1000;
}
#fnav ul{
  text-align:center;
}
#fnav ul li {
    display: inline-block;
    border-right:1px solid #fff;
    text-align: center;
}
#fnav ul li a{
  display:block;
  color: #fff;
  line-height: 1.1;
  padding:0 10px;
}
#fnav ul li a:hover{
  text-decoration: underline;
}
#fnav ul li:last-child{
  border-right:none;
}
/* ------------------------------------------------------------
footer
------------------------------------------------------------ */
#foot{
  overflow:hidden;
  background-color: #3c7ccc;
  text-align:center;
}

#foot-container {
background-color: #fff;
}
#foot-container canvas {
    width: 100%;
    height: 200px;
    vertical-align: top;
}
#foot .foot-box{
position: relative;
z-index: 100;
top: -130px;
margin-bottom: -100px;
}
#foot .foot-box .box{
overflow: hidden;
}
#foot .foot-box .swim{
width: 200px;
}
#foot .foot-box .adr{
float: left;
color: #fff;
text-align: left;
}
#foot .foot-box .adr h2{
font-size: 1.8rem;
margin-bottom: 10px;
}
#foot .foot-box .adr p{
font-size: 1.4rem;
line-height: 1.5;
}
#foot .foot-box .adr p a{
color: #fff;
}
#foot .foot-box .company{
float: right;
color: #fff;
text-align: right;
}
#foot .foot-box a ,#foot .foot-box span{
color: #fff;
font-weight: bold;
}

#foot .copy{
font-size: 1.1rem;
color: #8cced0;
  text-align:center;
  margin-bottom: 15px;
}

.schedule-txt01{
color: #0a1b4c;
font-size: 3rem;
font-weight: bold;
text-align: center;
margin-bottom: 15px;
}
.schedule-txt02{
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.schedule-txt03{
font-size: 1.6rem;
font-weight: normal;
text-align: center;
}


.wrapper.pagetop{
	padding-top:5vw;
}

/* ------------------------------------------------------------
page-top
------------------------------------------------------------ */

@media screen and (min-width: 1360px) {.wrapper2 { width: 1360px;}}
@media screen and (max-width:1359px) {.wrapper2 { padding: 0 15px;}}

/* ==========================================================================
pc
  ========================================================================== */
@media screen and (min-width: 1100px) {
body {
  height:100%;
}
.sp-only {
 display: none;
}
.tablet-only {
 display: none;
}
.pc-none {
 display: none;
}

.wrapper {
  max-width: 100%;
  padding: 0 3vw;
}

.correction{
min-height: 400px;
}

}
/* ==========================================================================
tablet
========================================================================== */
@media screen and (max-width:1099px) {
.pc-only {
 display: none;
}
.sp-only {
 display: none;
}
.wrapper {
    padding: 0 15px;
}

.contents{
width: 65%;
}
.side{
width: 30%;
}

.correction{
min-height: 400px;
}

}
/* ==========================================================================
sp
========================================================================== */
@media screen and (max-width: 699px) {
body {
  font-size: 1.5rem;
}
.sp-only {
 display: block;
}
.sp-none {
	display: none;
}
.pctablet {
	display: none;
}
.tablet-only {
 display: none;
}
.wrapper {
    padding: 0 3vw;
}
#head,#head2 {
width: 100%;
position: fixed;
background-color:rgba(255,255,255,0.95);
z-index: 9999;
}
#head h1,#head2 h1 {
float: left;
width: 150px;
font-weight: normal;
padding: 10px 0 10px 0;
font-size: 1.2rem;
}
#head h1 span,#head2 h1 span{
display: block;
font-size: 2.0rem;
}

/* ------------------------------------------------------------
page-title
------------------------------------------------------------ */
.page-title h1,.page-title-konan h1,.page-title-hodogaya h1,.page-title-kanazawa h1,.page-title-sub h1{
font-size: 2.2rem;
padding: 90px 0 30px 0;
margin-bottom: 10px;
}
.page-nav{
font-size: 1.1rem;
padding-bottom: 10px;
margin-bottom: 30px;
}

.contents{
float: none;
width: 100%;
margin-bottom: 30px;
}
.side{
float: none;
width: 100%;
}

.correction{
min-height: auto;
}
.line-box{
padding: 15px;
}
/* ------------------------------------------------------------
cmn-box
------------------------------------------------------------ */
.cmn-box00{
padding: 30px 0;
}
.cmn-box01{
padding-bottom: 30px;
}
.cmn-box02{
margin-bottom: 30px;
}
.cmn-box03{
padding-bottom: 30px;
}
/* ------------------------------------------------------------
cmn-title
------------------------------------------------------------ */
.cmn-title01{
font-size: 1.8rem;
}


.cmn-title03{
font-size: 2.2rem;
margin-bottom: 15px;
}
.cmn-title03 span{
font-size: 1.2rem;
padding-top: 5px;
}

.cmn-title04{
font-size: 1.8rem;
padding: 10px 15px;
margin-bottom: 10px;
}

.cmn-title08{
font-size: 1.6rem;
margin-bottom: 10px;
}
.cmn-title09{
font-size: 1.5rem;
margin-bottom: 10px;
}

/* ------------------------------------------------------------
price
------------------------------------------------------------ */
.price th{
width: 50%;
padding: 10px 0;
}
.price td{
padding: 10px 0;
}


/* ------------------------------------------------------------
anchor-nav
------------------------------------------------------------ */
.anchor-nav{
padding-bottom: 15px;
}
.anchor-nav li{
width: 48%;
font-size: 1.2rem;
margin: 0 4% 10px 0;
}
.anchor-nav li:nth-child(3n){
margin: 0 4% 10px 0;
}
.anchor-nav li:nth-child(2n){
margin: 0 0 10px 0;
}

/* ------------------------------------------------------------
bn-group
------------------------------------------------------------ */
#bn-group ul li{
width: 48%;
margin-right: 4%;
margin-bottom: 10px;
}
#bn-group ul li:nth-child(2){
margin-right: 0;
}
#bn-group ul li:last-child{
margin-right: 0;
}
/* ------------------------------------------------------------
img-group
------------------------------------------------------------ */
.img-group{
overflow: hidden;
}
.img-group li{
width: 48%;
margin: 0 4% 0 0;
}
.img-group li:nth-child(3n){
margin: 0 4% 0 0;
}
.img-group li:nth-child(2n){
margin: 0 0 0 0;
}
/* ------------------------------------------------------------
root-group
------------------------------------------------------------ */
.root-group li{
float: none;
width: 100%;
margin: 0 0 15px 0;
}
.root-group li:nth-child(3n){
margin: 0 0 15px 0;
}
.root-group li h4{
width: 40px;
height: 40px;
border-radius: 50%;
line-height: 40px;
text-align: center;
}
.root-group li img{
margin: -30px 0 10px 0;
}
/* ------------------------------------------------------------
column
------------------------------------------------------------ */
.column01 .float-l{
width: 100%;
margin-bottom: 10px;
}
.column01 .float-r{
width: 100%;
margin-bottom: 10px;
}

.column02 .float-l{
width: 100%;
margin-bottom: 10px;
}
.column02 .float-r{
width: 100%;
margin-bottom: 10px;
}

.column03 .float-l{
width: 100%;
margin-bottom: 10px;
}
.column03 .float-r{
width: 100%;
margin-bottom: 10px;
}
/* ------------------------------------------------------------
footer
------------------------------------------------------------ */
#foot .foot-box .swim{
width: 100px;
}

#foot .foot-box .adr{
float: none;
text-align: center;
}
#foot .foot-box .adr h2{
font-size: 1.8rem;
text-align: center;
margin-bottom: 10px;
}
#foot .foot-box .adr p{
font-size: 1.2rem;
text-align: center;
line-height: 1.5;
margin-bottom: 20px;
}
#foot .foot-box .adr p span,#foot .foot-box .adr p a{
color: #fff;
font-size: 1.4rem;
font-weight: bold;
}

#foot .foot-box .company{
float: none;
font-size: 1.2rem;
text-align: center;
}
/* ------------------------------------------------------------
page-top
------------------------------------------------------------ */
#page-top a{
  width: 30px;
  height: 30px;
  line-height:30px;
  right: 10px;
  bottom: 25px;
}

}


/*INDEX INDEX INDEXCSS */


/* ------------------------------------------------------------
html5
------------------------------------------------------------ */
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, menu, nav, section, summary {
    display: block;
}
/* ------------------------------------------------------------
base
------------------------------------------------------------ */
* {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, main, article, aside, dialog, figcaption, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    outline: 0;
    font-weight: normal;
    vertical-align: baseline;
}

address {
    font-style: normal;
}
xli {
    padding-left: 1em; /*1em（1文字）分、右に動かす*/
    text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
}
img, a img {
    border: 0;
}
img {
    vertical-align: top;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
ul, ol {
    margin: 0 0 0 0;
    padding: 0;
}
.btn a {
    transition-property: all;
    transition-duration: .6s;
    transition-timing-function: ease;
}
/* ------------------------------------------------------------
  COMMEN CLASS
------------------------------------------------------------ */
.red{
    color: #bd2121;
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-min {
    font-size: 70%;
}
.text-big {
    font-size: 130%;
}
.text-big2{
font-size: max(22px, 2.6vw);
font-weight: bold;
}
.clear {
    clear: both;
}
.float-l {
    xfloat: left;
}
.float-r {
    xfloat: right;
}
.img-l {
    margin: 0 10px 10px 0;
    float: left;
}
.img-r {
    margin: 0 0 10px 10px;
    float: right;
}
.img-center {
    display: block;
    margin: 0 auto;
}
.img-max {
    width: 100%;
    height: auto;
}
.overf {
    overflow: hidden;
}
.clear {
    clear: both;
}
.mb0 {
    margin-bottom: 0px;
}
.mb10 {
    margin-bottom: 10px;
}
.mb15 {
    margin-bottom: 15px;
}
.mb20 {
    margin-bottom: 20px;
}
.mb25 {
    margin-bottom: 25px;
}
.mb30 {
    margin-bottom: 30px;
}
.mb40 {
    margin-bottom: 40px;
}
.mb50 {
    margin-bottom: 50px;
}
.mb60 {
    margin-bottom: 60px;
}
.mb70 {
    margin-bottom: 70px;
}
.mt25 {
margin-top: 25px;
}
.pt25 {
padding-top: 25px;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


#canvas-container {
    padding-top: 400px;
    background: url(../images/pool.jpg) no-repeat center center;
    background-size: cover;
}
#canvas-container canvas {
    width: 100%;
    height: 300px;
    vertical-align: top;
}

/* ------------------------------------------------------------
contents
------------------------------------------------------------ */
/* ---lead--- */
#lead{
min-height: 479px;
background: url("../images/index-images/lead-bg.png") 50% 0 no-repeat;
position: relative;
top: -150px;
margin-bottom: -150px;
}
#lead h2{
color: #0a1b4c;
font-size: 3.6rem;
padding-top: 115px;
margin-bottom: 30px;
}
#lead h2 span{
color: #229fbf;
display: block;
font-size: 1.2rem;
padding-top: 10px;
}

#lead .txt01{
margin-bottom: 50px;
}
#lead .txt02{
color:#BC0A0D;
font-size: 120%;
margin-bottom: 40px;
}

.ready-img{
margin-bottom: 60px;
}
.ready-img img{
width: 391px;
height: auto;
}

/* ---pool--- */
#pool{
background: url("../images/cmn-images/cmn-bg01.jpg") 0 0 repeat-x;
background-color: #fff;
}
#pool ul{
overflow: hidden;
}
#pool ul li{
float: left;
width: 31.3333%;
margin: 0 3% 60px 0;
}
#pool ul li:last-child{
margin: 0 0 60px 0;
}
#pool ul li h3{
color: #0a1b4c;
font-size: 2.4rem;
margin-bottom: 10px;
}
#pool ul li p{
margin-bottom: 15px;
}

/* ---news--- */
#news{
background-color: #ffffff;
}

#news h2 span{
color: #ffffff;
display: block;
font-size: 1.2rem;
padding-top: 10px;
}
ul.post-list{
margin-bottom: 30px;
padding:30px 20px;
border-radius:15px;
border:1px solid #f0f0f0;
}
ul.post-list li{
border-bottom: 1px dotted #000;
padding: 10px 0;
}

ul.post-list li:last-child{
border-bottom:none;
padding: 10px 0 0;
}

.post-list li dl{
overflow: hidden;
}
.post-list li dl dt{
float: left;
width: 170px;
box-sizing: border-box;
background: url("../images/cmn-images/news-icon.png") 0 50% no-repeat;
background-size: 4px auto;
text-align: left;
padding-left: 10px;
}
.post-list ul li dl dd{
text-align: left;
margin-left: 170px;
}
#bn-group{
overflow: hidden;
background-color: #ffffff;
padding: 80px 0;
}

#tw{
background-color: #ffffff;
padding: 80px 0;
}
#tw ul{
overflow: hidden;
}
#tw li{
float: left;
width: 30%;
box-sizing: border-box;
margin-right: 5%;
}
#tw li:last-child{
margin-right: 0;
}
#tw li .box{
border: 1px solid #ccc;
}
#tw li h3{
color: #1da1f2;
font-size: 1.8rem;
font-weight: bold;
text-align: left;
margin-bottom: 10px;
}
/* ==========================================================================
pc
========================================================================== */
@media screen and (min-width: 1100px) {
}

/* ==========================================================================
tablet
========================================================================== */
@media screen and (max-width:1099px) {
}

@media only screen and (max-width: 959px) {
#canvas-container {
    padding-top: 100px;
}
canvas {
    height: 300px;
}

}
/* ==========================================================================
sp
========================================================================== */
@media screen and (max-width: 699px) {
#canvas-container {
    padding-top: 0;
}

#lead{
min-height: auto;
background: url("../images/index-images/lead-bg-sp.png") 50% 100% no-repeat;
background-size: 95% auto;
padding-bottom: 36%;
margin-bottom: -120px;
}
#lead h2{
font-size: 2.2rem;
margin-bottom: 20px;
}
#lead h2 span{
font-size: 1.2rem;
}
.ready-img{
margin-bottom: 0;
}
.ready-img img{
max-width: 391px;
width: 100%;
height: auto;
}

/* ---pool--- */
#pool{
background: url("../images/cmn-images/cmn-bg01.jpg") 0 0 repeat-x;
background-color: #fff;
}
#pool ul{
overflow: hidden;
}
#pool ul li{
float: none;
width: 100%;
max-width: 390px;
margin: 0 auto 30px auto;
}
#pool ul li:last-child{
margin: 0 auto 30px auto;
}
#pool ul li img{
margin-bottom: 5px;
}
#pool ul li h3{
font-size: 1.8rem;
margin-bottom: 10px;
}
#pool ul li p{
margin-bottom: 15px;
}

/* ---news--- */

#news ul li dl dt{
float: none;
width: 100%;
}
#news ul li dl dd{
margin-left: 0;
}

#bn-group{
padding: 40px 0;
}

#tw{
padding: 40px 0;
}
#tw li{
float: none;
width: 100%;
margin-right: 0;
margin-bottom: 30px;
}


}


/*KONAN KONAN KONANCSS */


#canvas-container {
    padding-top: 500px;
    background: url(../images/konan-images/pool01.jpg) no-repeat center center;
    background-size: cover;
}
#canvas-container canvas {
    width: 100%;
    height: 300px;
    vertical-align: top;
}
/* ------------------------------------------------------------
contents
------------------------------------------------------------ */
/* ---lead--- */
#lead{
position: relative;
background-color: #afdbf6;
top: -40px;
text-align: left;
padding-bottom: 40px;
margin-bottom: -40px;
}
#lead .float-l{
width: 30%;
}
#lead .float-r{
width: 65%;
}

#lead .txt01{
}
#lead .txt02{
color:#BC0A0D;
font-size: 120%;
text-align: center;
padding-top: 40px;
margin-bottom: 40px;
}

/* ---guide--- */
#guide{
background: url("../images/cmn-images/cmn-bg01.jpg") 0 0 repeat-x;
background-size: auto 100%;
background-color: #fff;
}
#guide ul{
overflow: hidden;
}
#guide ul li{
float: left;
width: 30%;
margin: 0 5% 0 0;
}
#guide ul li:last-child{
margin: 0 0 0 0;
}
#guide ul li img{
margin: 0 0 20px 0;
}

#swim ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 100px;
}
#swim ul li:last-child {
    margin: 0 0 0 5%;
}




.ywp-newsarea-wrap{
	display:flex;
	justify-content:space-between;

}

.ywp-newsarea{
	width:55%;
}


.ywp-newsside{
	width:43%;
}


.ywp-newsarea2{
	width:65%;
}


.ywp-newsside2{
	width:32%;
}

/* ---overall--- */
#overall .float-l,#overall .float-r{
box-sizing: border-box;
border: 1px solid #ccc;
}
/* ---school--- */
#school .cmn-btn03{
margin: 0 10px 10px 10px;
}

/* ---access--- */
#access table{
width: 100%;
}
#access table th{
width: 25%;
}
#access table th,#access table td{
text-align: left;
vertical-align: top;
border-bottom: 1px solid #ccc;
padding: 15px 5px;
line-height:1.6;
}

#telbox .box{
display:flex;
flex-wrap:nowrap;
justify-content:space-between;
overflow: hidden;
margin-bottom: 30px;
}

#telbox .box .float-l,#telbox .box .float-r{
width: 49%;
box-sizing: border-box;
border: 1px solid #ccc;
border-radius: 20px;
padding: 30px;
display: flex;
  flex-direction: column;           /* 縦方向に並べる */
  justify-content: space-between;  /* 要素を縦方向に均等配置 */
}
#telbox h3{
	display:block;
	width:100%;
font-size: max(18px,2.6vw);
margin-bottom: 20px;
}

#telbox p{
display:block;
width:100%;

}


#telbox h4{
	display:block;
	width:100%;
color: #2295ed;
font-size: max(16px,3vw);
}
#telbox h4 span{
font-size: max(20px,4vw);
font-weight:bold;
}
#telbox h4 a{
color: #2295ed;
}
.copy-nav ul{
  text-align:center;
}
.copy-nav ul li {
    display: inline-block;
    border-right:1px solid #000;
    text-align: center;
}
.copy-nav ul li a{
  display:block;
  color: #000;
  line-height: 1.1;
  padding:0 10px;
}
.copy-nav ul li a:hover{
  text-decoration: underline;
}
.copy-nav ul li:last-child{
  border-right:none;
}

#tw{
padding: 80px 0;
}
#tw .box{
border: 1px solid #ccc;
}
#tw h3{
color: #1da1f2;
font-size: 1.8rem;
font-weight: bold;
text-align: left;
margin-bottom: 10px;
}

/* ==========================================================================
pc
========================================================================== */
@media screen and (min-width: 1100px) {
}

/* ==========================================================================
tablet
========================================================================== */
@media screen and (max-width:1099px) {
}

@media only screen and (max-width: 959px) {
#canvas-container {
    padding-top: 100px;
}
canvas {
    height: 300px;
}
}
/* ==========================================================================
sp
========================================================================== */
@media screen and (max-width: 699px) {
#canvas-container {
    padding-top: 0;
}

/* ---lead--- */
#lead{
position: relative;
top: -40px;
text-align: left;
margin-bottom: -40px;
}
#lead .float-l{
float: none;
width: 100%;
margin-bottom: 10px;
}
#lead .float-r{
float: none;
width: 100%;
}

/* ---guide--- */
#guide ul li{
float: left;
width: 100%;
margin: 0 0 20px 0;
}
#guide ul li:last-child{
margin: 0 0 0 0;
}
#guide ul li img{
margin: 0 0 10px 0;
}

#swim ul {
display: block;
justify-content: space-between;
margin-bottom: 50px;
}
#swim ul li:last-child {
margin: 0 0 0 0;
}
#swim ul li {
margin: 0 0 30px 0;
}		
	


#telbox .box .float-l,#telbox .box .float-r{
float: none;
width: 100%;
border-radius: 10px;
padding: 15px;
margin-bottom: 10px;
}
#telbox h3{
font-size: 1.6rem;
}
#telbox h4{
font-size: 2.0rem;
}
#telbox h4 span{
font-size: 2.5rem;
}

#tw{
padding: 40px 0;
}
}


/*NEWS NEWS NEWSCSS */


/* ------------------------------------------------------------
contents
------------------------------------------------------------ */


/* ---article--- */
.article-box {
text-align: left;
    margin-bottom: 40px;
}
.article-box  img {
    max-width: 100%;
    height: auto;
}
.article-box  a {
	text-decoration: underline;
}
.article-box  a:hover {
	color: #000 !important;
	text-decoration: underline;
}

.article-box h1 {
	font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 20px;
}
.article-box h2 {
    font-size: 2.2rem;
    font-weight: bold;
    margin-bottom: 20px;
}
.article-box h3 {
    font-size: 2.0rem;
    font-weight: bold;
    border-left: 5px solid #eee;
    padding-left: 10px;
    margin-bottom: 20px;
}
.article-box ul{
    margin-bottom: 20px;
}
.article-box ul li {
list-style-type: disc;
margin-left: 20px;
    background-size: 5px auto;
    margin-bottom: 6px;
}
.article-box p {
    margin-bottom: 15px;
}

.pager{
	text-align:center;
}
a.page-numbers,
.pager .current{
	background:rgba(0,0,0,0.02);
	border:solid 1px rgba(0,0,0,0.1);
	border-radius:5px;
	padding:5px 8px;
	margin:0 2px;
}
.pager .current{
	background:rgba(0,0,0,1);
	border:solid 1px rgba(0,0,0,1);
	color:rgba(255,255,255,1);
}

.remark{
text-align: left;
margin-bottom: 5px;
}
.remark .date{
font-size: 1.6rem;
margin-right: 10px;
}
.remark .post-categories{
display: inline-block;
}
.remark .post-categories li{
display: inline-block;
margin-right: 10px;
}
.remark .post-categories li a{
display: inline-block;
font-size: 1.2rem;
background-color: #eee;
padding: 5px 15px;
border-radius: 10px;
}
/* ==========================================================================
pc
========================================================================== */
@media screen and (min-width: 1100px) {
}

/* ==========================================================================
tablet
========================================================================== */
@media screen and (max-width:1099px) {
}

@media only screen and (max-width: 959px) {


}
/* ==========================================================================
sp
========================================================================== */
@media screen and (max-width: 699px) {

/* ---news--- */
#news ul li dl dt{
float: none;
width: 100%;
}
#news ul li dl dd{
margin-left: 0;
}

.article-box h1 {
	font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 20px;
}
.article-box h2 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 20px;
}
.article-box h3 {
    font-size: 1.3rem;
    font-weight: bold;
    border-left: 5px solid #eee;
    padding-left: 10px;
    margin-bottom: 20px;
}
.article-box ul{
    margin-bottom: 20px;
}
.article-box ul li {
    background-size: 5px auto;
    padding-left: 10px;
    margin-bottom: 6px;
}
.article-box p {
    margin-bottom: 15px;
}

.remark .date{
font-size: 1.5rem;
}
.remark .post-categories li a{
font-size: 1.1rem;
padding: 3px 10px;
border-radius: 10px;
}

}


/*FORM FORM FORMCSS */


/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

#mailbox table {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 30px;
}
#mailbox table th {
    width: 26%;
    text-align: left;
    vertical-align: top;
    box-sizing: border-box;
    padding: 10px;
}
#mailbox table th span {
color: #B70000;
padding-left: 10px;
}
#mailbox table td {
    text-align: left;
    vertical-align: top;
    box-sizing: border-box;
    padding: 10px;
}
.input01 {
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
}
.input02{
    width:50%;
    box-sizing: border-box;
    padding: 10px;
}
.input03 {
    box-sizing: border-box;
    padding: 10px;
}

.mwform-tel-field input{
padding: 10px;
}

.submit {
    display: inline-block;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    padding: 0 5%;
}
.submit button {
    display: inline-block;
    color: #fff;
    font-size: 1.6rem;
    width: 100%;
    box-sizing: border-box;
    max-width: 250px;
    background-color: #3c7ccc;
    border: solid 1px #3c7ccc;
    cursor: pointer;
    padding: 10px 30px;
    margin-bottom: 15px;
    -webkit-transition: 0.4s ease-in-out;
    -moz-transition: 0.4s ease-in-out;
    -o-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}
.submit button:hover {
    color: #1e58ad;
    background-color: #fff;
    border: solid 1px #3c7ccc;
    cursor: pointer;
}

.submit input {
    display: inline-block;
    color: #fff;
    font-size: 1.6rem;
    width: 100%;
    box-sizing: border-box;
    max-width: 250px;
    background-color: #3c7ccc;
    border: solid 1px #3c7ccc;
    cursor: pointer;
    padding: 10px 30px;
    margin-bottom: 15px;
    -webkit-transition: 0.4s ease-in-out;
    -moz-transition: 0.4s ease-in-out;
    -o-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}
.submit input:hover {
    color: #1e58ad;
    background-color: #fff;
    border: solid 1px #3c7ccc;
    cursor: pointer;
}

.ap-box{
margin-bottom: 50px;
}
.ap-box p{
text-align: left;
}

/* ------------------------------------------------------------
	 PC   1000px -
   ------------------------------------------------------------ */
@media screen and (min-width: 1000px) {

}

/* ------------------------------------------------------------
	 TABLET   for - 999px
   ------------------------------------------------------------ */

@media screen and (max-width:999px) {

}

/* ------------------------------------------------------------
	 SP　599pxまで
   ------------------------------------------------------------ */
@media screen and (max-width: 599px) {
#mailbox table {
    margin-bottom: 30px;
}
#mailbox table th {
display: block;
    width: 100%;
    padding: 10px;
}
#mailbox table td {
display: block;
    width: 100%;
    padding: 0 10px 10px 10px;
}

}





/* Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic Basic */

	@-ms-viewport {
		width: device-width;
	}

	body {
		color: #1b1b1b;
		background: #fff;
		font-size: 16px;
		font-weight: 400;
		line-height: 1;
		font-family: "Noto Sans Japanese", sans-serif;
	}

	body.is-loading *, body.is-loading *:before, body.is-loading *:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
	}

	a {
		-moz-transition: color 0.2s ease, border-bottom-color 0.2s ease;
		-webkit-transition: color 0.2s ease, border-bottom-color 0.2s ease;
		-ms-transition: color 0.2s ease, border-bottom-color 0.2s ease;
		transition: color 0.2s ease, border-bottom-color 0.2s ease;
		text-decoration: none;
	}

	a:hover {
		border-bottom-color: transparent;
	}

	strong, b {
		font-weight: 800;
	}

	.align-left {
		text-align: left;
	}

	.align-center {
		text-align: center;
	}

	.align-right {
		text-align: right;
	}


	.clearfix::after {
 		content: "";
  		clear: both;
  		display: table;
	}

	.nowrap{
		white-space:nowrap;
	}
/* Page Wrapper + Menu *//* Page Wrapper + Menu *//* Page Wrapper + Menu *//* Page Wrapper + Menu *//* Page Wrapper + Menu *//* Page Wrapper + Menu */

	#page-wrapper {
		-moz-transition: opacity 0.5s ease;
		-webkit-transition: opacity 0.5s ease;
		-ms-transition: opacity 0.5s ease;
		transition: opacity 0.5s ease;
		opacity: 1;
		padding-top: 3em;
	}

	#page-wrapper:before {
		background: transparent;
		content: '';
		display: block;
		display: none;
		height: 100%;
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 10001;
	}

	#menu {
		-moz-transform: translateX(30em);
		-webkit-transform: translateX(30em);
		-ms-transform: translateX(30em);
		transform: translateX(30em);
		-moz-transition: -moz-transform 0.5s ease;
		-webkit-transition: -webkit-transform 0.5s ease;
		-ms-transition: -ms-transform 0.5s ease;
		transition: transform 0.5s ease;
		-webkit-overflow-scrolling: touch;
		background: #02316F;
		color: #ffffff;
		height: 100%;
		max-width: 80%;
		overflow-y: auto;
		padding: 3em 0;
		position: fixed;
		right: 0;
		top: 0;
		width: 30em;
	}

	#menu ul {
		list-style: none;
		padding: 0;
	}

	#menu ul > li {
		border-top: solid 1px rgba(255, 255, 255, 0.3);
		margin: 1.2em 0  0;
		padding: 1.2em 3em 0;
	}

	#menu ul > li:first-child {
		border-top: 0 !important;
		margin-top: 0 !important;
		padding-top: 0 !important;
	}

	#menu ul > li > a {
		border: 0;
		color: inherit;
		display: block;
		font-size: 18px;
		letter-spacing: 0.225em;
		outline: 0;
		text-decoration: none;
		font-weight: bold;
	}

	@media screen and (max-width: 736px) {
		#menu ul > li > a {
		}

	}

	#menu .close {
		background-image: url("images/close.svg");
		background-position: 4.85em 1em;
		background-repeat: no-repeat;
		border: 0;
		cursor: pointer;
		display: block;
		height: 3em;
		position: absolute;
		right: 0;
		top: 0;
		vertical-align: middle;
		width: 7em;
	}



	body.is-menu-visible #page-wrapper {
		opacity: 0.35;
	}

	body.is-menu-visible #page-wrapper:before {
		display: block;
	}

	body.is-menu-visible #menu {
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}

/* Header *//* Header *//* Header *//* Header *//* Header *//* Header *//* Header *//* Header *//* Header */

	#header {
		-moz-transition: background-color 0.2s ease;
		-webkit-transition: background-color 0.2s ease;
		-ms-transition: background-color 0.2s ease;
		transition: background-color 0.2s ease;
		background: rgba(255,255,255,0.98);
		height: 100px;
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 10002;
	}

	.banner header{
		width:100%;
		height: 100px;
		position: relative;
		background-color: #fff;
	}

	#header h1 a{
		border: 0;
		display: inline-block;
		background-image:url(images/ywp-logo.png);
		width:426px;
		height:61px;
		text-indent: -9999px;
		background-size: 426px 61px;
		position: absolute;
		left: 40px;
		top: 50%;
		transform: translateY(-50%);
	}


	.banner header h1 a{border: 0;
		display: inline-block;
		background-image:url(images/ywp-logo.png);
		width:426px;
		height:61px;
		text-indent: -9999px;
		background-size: 426px 61px;
		position: absolute;
		left: 40px;
		top: 50%;
		transform: translateY(-50%);
	}


	#header h1.konan a{
		border: 0;
		display: inline-block;
		background-image:url(images/ywp-konan-logo.png);
		width:426px;
		height:61px;
		text-indent: -9999px;
		background-size: 426px 61px;
		position: absolute;
		left: 40px;
		top: 50%;
		transform: translateY(-50%);
	}

	.banner header h1.konan a{border: 0;
		display: inline-block;
		background-image:url(images/ywp-konan-logo.png);
		width:426px;
		height:61px;
		text-indent: -9999px;
		background-size: 426px 61px;
		position: absolute;
		left: 40px;
		top: 50%;
		transform: translateY(-50%);
	}

		#header h1.hodogaya a{
		border: 0;
		display: inline-block;
		background-image:url(images/ywp-hdg-logo.png);
		width:400px;
		height:60px;
		text-indent: -9999px;
		background-size: 400px 60px;
		position: absolute;
		left: 40px;
		top: 50%;
		transform: translateY(-50%);
	}

	.banner header h1.hodogaya a{border: 0;
		display: inline-block;
		background-image:url(images/ywp-hdg-logo.png);
		width:400px;
		height:60px;
		text-indent: -9999px;
		background-size: 400px 60px;
		position: absolute;
		left: 40px;
		top: 50%;
		transform: translateY(-50%);
	}

            #header h1.kanazawa a{
        border: 0;
        display: inline-block;
        background-image:url(images/ywp-kanazawa-logo.png);
        width:426px;
        height:60px;
        text-indent: -9999px;
        background-size: 426px 60px;
        position: absolute;
        left: 40px;
        top: 50%;
        transform: translateY(-50%);
    }

    .banner header h1.kanazawa a{border: 0;
        display: inline-block;
        background-image:url(images/ywp-kanazawa-logo.png);
        width:426px;
        height:60px;
        text-indent: -9999px;
        background-size: 426px 60px;
        position: absolute;
        left: 40px;
        top: 50%;
        transform: translateY(-50%);
    }




	.banner img{
		vertical-align:bottom;
	}

	.toyo-header-logo02{
		width:auto;
		height:auto;
		position: absolute;
		left: 340px;
		top: 50%;
		transform: translateY(-50%);
	}

	.toyo-header-logo02-sm{
		display: none;
	}


	.toyo-header-conversion{
		width:278px;
		height:auto;
		position: absolute;
		right:100px;
		top:50%;
		transform: translateY(-50%);
	}


	.banner .toyo-header-conversion{
		right:10px;
	}

	.toyo-header-conversion img{
		width:100%;
		height: auto;
		vertical-align: bottom;
	}

	.ywp-header-link{
		position:absolute;
		top:50%;
		transform:translateY(-50%);
		right:100px;
	}
		.ywp-header-link a{
			padding:5px 10px;
		}



	#header .headercopy {
		-moz-transition: opacity 0.2s ease;
		-webkit-transition: opacity 0.2s ease;
		-ms-transition: opacity 0.2s ease;
		transition: opacity 0.2s ease;
		height: inherit;
		left: 180px;
		line-height: 12px;
		position: absolute;
		top: 50%;
		font-size:12px;
		margin-top:-6px;
		color:#000;
		font-weight: bold;
	}

	#header nav {
		height: inherit;
		line-height: inherit;
		position: absolute;
		right: 0;
		top: 0;
		color:#000;
	}

	.banner a.menuToggle{
		height: inherit;
		line-height: inherit;
		position: absolute;
		right: 0;
		top: 0;
		color:#000;
	}

	#header nav > ul {
		list-style: none;
		margin: 0;
		padding: 0;
		white-space: nowrap;
	}

	#header nav > ul > li {
		display: inline-block;
		padding: 0;
	}

	#header nav > ul > li > a {
		border: 0;
		color: #000;
		display: block;
		font-size: 0.8em;
		letter-spacing: 0.225em;
		padding: 0 1.5em;
		text-transform: uppercase;
	}

	a.menuToggle {
		outline: 0;
		position: relative;
	}

	#header nav > ul > li > a.menuToggle{
		padding:0;
	}

	a.menuToggle:after {
		background-image: url("images/bars.svg");
		background-position: center center;
		background-repeat: no-repeat;
		content: '';
		display: inline-block;
		height: 100px;
		vertical-align: middle;
		width:100px;
		margin-right:0;
	}

	.banner a.menuToggle{
		display: none;
	}

	@media screen and (max-width: 736px) {
		.banner a.menuToggle{
			display: block;
			float:right;
		}

		a.menuToggle span {
			display: none;
		}
	}

	@media screen and (max-width: 736px) {
		#header nav > ul > li > a {
			padding: 0 0 0 1.5em;
		}
	}

	#header nav > ul > li:first-child {
		margin-left: 0;
	}

	#header.alt {
		display: none;
	}

	#header.alt h1 {
		-moz-pointer-events: none;
		-webkit-pointer-events: none;
		-ms-pointer-events: none;
		pointer-events: none;
		opacity: 0;
	}

	#header.alt div{
		-moz-pointer-events: none;
		-webkit-pointer-events: none;
		-ms-pointer-events: none;
		pointer-events: none;
		opacity: 0;
	}


/* Landing *//* Landing *//* Landing *//* Landing *//* Landing *//* Landing *//* Landing *//* Landing */

	body.landing #page-wrapper {
		padding-top: 0;
	}

	body.is-mobile.landing #page-wrapper {
		background: none;
	}

	body.is-mobile.landing #page-wrapper.page{
		padding-top:65px;
	}


/* Banner *//* Banner *//* Banner *//* Banner *//* Banner *//* Banner *//* Banner *//* Banner *//* Banner */

	#banner {

	}



.banner .inner{
	width:100%;
	position:relative;
}

.banner .inner img{
	width:100%;
	vertical-align:bottom;
	
}


.banner .inner span{
	position:absolute;
	left:3vw;
	font-size:3vw;
	line-height:1.3;
	color:#fff;
	top:6.5vw;
	font-weight:500;
	letter-spacing: 0.1em;
}

.banner .inner h2{
	position:absolute;
	left:3vw;
	font-size:4.3vw;
	line-height:1.6;
	color:#fff;
	top:13vw;
	font-weight:500;
}


.banner .inner p{
	position:absolute;
	left:3.5vw;
	font-size:1.7vw;
	line-height:2;
	color:#fff;
	top:23vw;
	font-weight:500;
}

/* Footer *//* Footer *//* Footer *//* Footer *//* Footer *//* Footer *//* Footer *//* Footer *//* Footer */


	#footer {
		padding: 30px 0 ;
		background-color: #023970;
		text-align: center;
	}

	#footer .copyright {
		color: #fff;
		font-size: 13px;
		letter-spacing: 4px;
		list-style: none;
		padding: 0;
	}


/* Landing *//* Landing *//* Landing *//* Landing *//* Landing *//* Landing *//* Landing *//* Landing */

	body.landing #page-wrapper {
		padding-top: 0;
	}

	body.landing #page-wrapper.page{
		padding-top:65px;
	}

/*topnavi*//*topnavi*//*topnavi*//*topnavi*//*topnavi*//*topnavi*//*topnavi*//*topnavi*//*topnavi*//*topnavi*//*Custom*/


	.toyo-header-nav{
		position:relative;
		width:100%;
		height:auto;
		padding:20px 20px;
		background-color: #02316F;
	}

	.toyo-header-nav ul{
		width:100%;
		list-style: none;
    	display:flex;
		justify-content: center;
    	align-items: center;
	}

	.toyo-header-nav > ul > li{
		display: table;
		border-right: 1px solid #fff;
	}

	.toyo-header-nav > ul > li:last-child{
		border-right:none;
	}

	.toyo-header-nav > ul > li > a{
		display: table-cell;
		vertical-align: middle;
		line-height: 1.3;
		width:auto;
		padding:0 1.2vw;
		color:#fff;
		font-size:max(16px,1.3vw);
		white-space:nowrap;
		transition: 0.5s ease border-bottom;
		letter-spacing: 0.8px;
		text-decoration:none;
	}

	.toyo-header-nav > ul > li > a span{
		font-size:10px;
		display: block;
		color:#aaa;
		margin-top:4px;
	}

	.toyo-header-nav > ul > li > a:hover,.toyo-header-nav ul li a.active{
		color:#FFFE00;
	}

	.toyo-header-nav > ul > li > a.b-contact:hover{
		background-color:#0F4B8B;
	}


	.toyo-header-nav > ul > li:hover {

	}

	.toyo-header-nav > ul > li:hover > a {
	}

	.toyo-header-nav > ul > li:hover .nav-menu {
  		max-height: 9999px;
  		opacity: 1;
	}

	.toyo-header-nav > ul > li > a {
		transition: all .2s ease-in;
	}

	.toyo-header-nav > ul .nav-menu {
  		transition: all .2s ease-in;
  		max-height: 0;
  		height: auto;
  		opacity: 0;
  		overflow: hidden;
  		width: 100vw;
  		left:0;
		transform: translateY(0);
  		text-align: left;
  		position: absolute;
  		background-color: #fff;
  		box-shadow: 0 0 5px #aaa;
		z-index: 10000000000000000000;
	}


/*toyo-yoki*//*toyo-yoki*//*toyo-yoki*//*toyo-yoki*//*toyo-yoki*//*toyo-yoki*//*toyo-yoki*//*toyo-yoki*/

.toyo-main-bottom{
	text-align: center;
	color:#fff;
	background-color: #002518;
	padding:15px 10px;
	font-size:20px;
	font-weight: bold;
	line-height: 32px;
}

.toyo-main-bottom span{
	display: inline-block;
}

.toyo-drum{
	width:100%;
	position:relative;
}

.toyo-drum img{
	width:100%;
	vertical-align:bottom;
	
}

.toyo-drum h3{
	position:absolute;
	left:3vw;
	font-size:5vw;
	line-height:1.4;
	color:#fff;
	top:9vw;
	font-weight:500;
}


.toyo-drum p{
	position:absolute;
	left:3.5vw;
	width:81vw;
	font-size:1.6vw;
	line-height:2;
	color:#fff;
	top:22vw;
	font-weight:500;
}

.toyo-drum a{
	bottom:10vw;
	left:3.5vw;
	display:block;
	position:absolute;
	font-size:1.4vw;
	color:#fff;
	text-align:center;
	padding:2vw 10vw;
	background-color:#830000;
	transition:0.2s all ease;
}

.toyo-drum a:hover{
	background-color:#B40707;
}

.toyo-sdgs-wrap{
	display:flex;
	padding:5vw 0;
}

.toyo-sdgs-box.box01{
	flex-basis: 45vw;
	display:flex;
	align-items: center;
	justify-content: center;

}

.toyo-sdgs-box.box01 img{
	display:block;
	width:25vw;
}

.toyo-sdgs-box.box02{
	flex-basis: 55vw;
	padding:0 15vw 0 0;
}

.toyo-sdgs-box.box02 h3{
	font-size:1.8vw;
	display:block;
	margin-bottom:1.8vw;
	letter-spacing:0.8vw;
	font-weight:700;
}

.toyo-sdgs-box.box02 span{
	font-size:1vw;
	display:block;
	margin-bottom:1.8vw;
	letter-spacing:0.8vw;
}

.toyo-sdgs-box.box02 p{
	font-size:1vw;
	letter-spacing:0.2vw;
	line-height:2.2;
	text-align:justify;
}


.toyo-service{
	padding:30px 7vw 20px;
}

.toyo-service-wrap{
	display:flex;
	flex-shrink:0;
	flex-wrap:nowrap;
	justify-content:space-between;
}

.toyo-service-box{
	width:30%;
}

.toyo-service-box a{
	opacity: 1;
	transition: 0.4s all ease;
}

.toyo-service-box a:hover{
	opacity: 0.8;
}

.toyo-service-box img{
	width:100%;
	height: auto;
}

.toyo-can-wrap{
	display:flex;
	flex-wrap:nowrap;
	justify-content:center;
}

.toyo-can-box{
	flex-basis:30%;
}

.toyo-can-box h4{
	font-weight:bold;
	display:block;
	margin-bottom:10px;
}

.toyo-can-box img{
	margin-bottom:10px;
}


.toyo-can-box p{
	line-height:1.8;
}

.toyo-recruit-contact{
	padding:2vw 0 5vw;
	text-align:center;
}


.toyo-recruit-contact a{
	width:100%;
	padding:1vw 1.5vw;
	font-size:max(16px,1.2vw);
	background-color:#B40707;
	color:#fff;
	text-align:center;
	white-space:nowrap;
	border-radius:2vw;
	margin:0 0.8vw;
}

/*dio-cta*//*dio-cta*//*dio-cta*//*dio-cta*//*dio-cta*//*dio-cta*//*dio-cta*//*dio-cta*/


.dio-cta{
	width:100%;
	height:auto;
}


.dio-cta-wrap{
	display: flex;
	flex-shrink:0;

}

.dio-cta-box a{
	color:#000;
	border-bottom: 1px solid #000;
	transition:0.3s all ease;
}

.dio-cta-box a:hover{
	color:#F2631D;
	border-bottom: 1px solid #F2631D;
}

.dio-cta-01{
	width:42%;
	background-color:#fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dio-cta-01 img{
	width:398px;
}

.dio-cta-02{
	width:58%;
	padding:55px 60px;
	background-color:#F1F8FF;
	font-weight: bold;
	position:relative;
	background-image:url(images/ywp-maskot.svg);
	background-size:140px 99px;
	background-repeat:no-repeat;
	background-position:right 3vw bottom 0;
}


.dio-cta-span01{
	font-size:17px;
	display: block;
	margin-bottom: 10px;
}

.dio-cta-02 h4{
	font-size:37px;
	line-height: 37px;
	margin-bottom: 35px;
	display: inline-block;
	letter-spacing: 5px;
	transform: translateX(-3px);
}

.dio-cta-box h5{
	font-size:110%;
	margin-bottom:5px;
}


.dio-cta-span02{
	font-size:13px;
	line-height: 37px;
	letter-spacing: 5px;
	margin-left: 10px;
}

.dio-cta-02 p{
	font-size:16px;
	font-weight: normal;
	line-height: 2;
}


.asa-footer-link{
	padding: 10px 0;
}

.asa-footer-link a{
	margin-right: 1em;
}




/*news*//*news*//*news*//*news*//*news*//*news*//*news*//*news*/



.toyo-news{
	padding:30px 7vw;
}

.toyo-news h3{
	width:100%;
	display: block;
	font-size:22px;
	font-weight: bold;
	position:relative;
	padding-left:90px;
	color:#000;
	margin-bottom:30px;
	letter-spacing: 2.5px;
}

.toyo-news h3:before{
	content:'';
	width:74px;
	height:33px;
	background-image:url(images/jsk-mk.png);
	background-size:74px 33px;
	position:absolute;
	left:0;
	top:50%;
	transform:translateY(-50%);
}


.toyo-news-box{
	display: block;
	width:100%;
	height:auto;
	margin-bottom:10px;
	padding:8px;
	border-radius: 15px;
	background-color: #f0f0f0;
	transition: 0.3s all ease 0.2s;
	position: relative;
	color:#000;
}


.toyo-news-box:hover{
	background-color: #FFF400;
	color:#000;
}

.toyo-news-box-img{
	width:100%;
	height:auto;
}

.toyo-news-box-img img{
	width:100%;
}

.toyo-news-box-txt{
	width:100%;
	height:auto;
	padding:10px 10px 10px 5px;
}

.toyo-news-box-txt h4{
	font-size:15px;
	font-weight: bold;
	margin-bottom:10px;
	line-height: 1.3;
}

.toyo-news-date{
	font-size:11px;
	margin-bottom:20px;
}

.toyo-news-box-button{
	position: absolute;
	width:auto;
	padding:3px 10px;
	float:right;
	bottom:10px;
	right:10px;
	background-color: #00136C;
	color:#fff;
	border-radius: 15px;
	text-align: center;
	font-weight: bold;
	font-size:12px;
	transition: 0.3s all ease 0.2s;
}



.dio-mark-new{
	background-color:#FF006E;
	color:#fff;
	font-size:11px;
	padding:2px 8px;
	border-radius: 30px;
	margin-right:5px;
}




.toyo-news-date2{
	display: inline-block;
	font-size:14px;

	letter-spacing: 3px;
	background-color:#f0f0f0;
	padding:5px 20px;
	border-radius: 30px;
	font-weight: bold;
}

.toyo-banner img{
	margin-bottom:1vw;
}



.toyo-page-title{
	background-image: url(images/jsk-pagebg.jpg);
	background-repeat: no-repeat;
	background-size:cover;
	background-position:center;
	width:100%;
	height: auto;
	padding:60px 0;
	text-align: left;
}



.toyo-page-title.konan{
	background-image: url(images/ywp-konan-pagebg01.jpg);
	background-repeat: no-repeat;
	background-size:cover;
	background-position:center;
	width:100%;
	height: auto;
	padding:60px 0;
	text-align: left;
}



.toyo-page-title.kanazawa{
    background-image: url(images/ywp-kanazawa-pagebg01.jpg);
    background-repeat: no-repeat;
    background-size:cover;
    background-position:center;
    width:100%;
    height: auto;
    padding:60px 0;
    text-align: left;
}


.toyo-page-title.hodogaya{
    background-image: url(images/ywp-hodogaya-pagebg01.jpg);
    background-repeat: no-repeat;
    background-size:cover;
    background-position:center;
    width:100%;
    height: auto;
    padding:60px 0;
    text-align: left;
}

.re-submain{
	width:100%;
	text-align: center;
	vertical-align: bottom;
}


.toyo-page-title h3{
	padding:56px 200px 56px 205px;
	font-size:max(36px, 3vw);
	letter-spacing: 0.3em;
	color:#fff;
	font-weight: 600;
	line-height: 1;
	display: inline-block;
	background-image:url(images/ywp-konan-pagebg.png) ;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	position: relative;
	background-position:center;
}

.toyo-page-title h3:before{
	position: absolute;
	width: 	123px;
	height: 64px;
	display: block;
	content: '';
	background-image: url(images/jsk-mk.png);
	background-size: 123px 64px;
	top: 50%;
	transform: translateY(-50%);
	left: 47px;
}





.toyo-page-sec{
	padding:5vw 0 5vw;
}

.toyo-page-sec header{
	text-align:center;
	padding:0 0 20px; 
}

.toyo-page-sec header h3{
	text-align: center;
	background-image: url(images/jsk-mk.png);
	background-repeat:no-repeat;
	width:100%;
	background-size:6vw 3vw;
	background-position:top 0 left 50%;
	padding:4.3vw 0 0;
	font-size:2.6vw;
	color:#000;
	line-height:1.4;
	letter-spacing:0.3em;
	font-weight: 500;
	margin-bottom: 2vw;
}

.toyo-page-sec h4{
	font-size:1.6vw;
	border-left:4px solid #002518;
	padding:0.1vw 1vw 0.1vw;
	margin-bottom: 1.5vw;
}

.toyo-page-sec p{
	font-size:1.3vw;
	line-height:2;
	margin-bottom: 2vw;
}

.toyo-page-hosoku-01{
	background-color:#FFF400;
	padding:20px;
	width:100%;
	font-size:18px;
	font-weight: bold;
	text-align: center;
	border-radius: 35px;
	transition: 0.3s ease all;
	margin-bottom: 30px;
	line-height: 1.6;
}


.toyo-page-sec table{
	margin-bottom: 30px;
}

.toyo-kaiotri-list{
	margin-bottom:5vw;
}

.toyo-kaiotri-list li{
	padding:1.5vw 1.5vw 1.5vw 4.6vw;
	width:100%;
	border:1px solid #ccc;
	display:block;
	font-size:1.7vw;
	margin-bottom:1.5vw;
	background-image:url(images/toyo-check.jpg);
	background-size:2vw 2vw;
	background-position:top 50% left 1.5vw;
	background-repeat:no-repeat;
	line-height:1.4;
	white-space:nowrap;
}


.as-sec-box{
		background-color:#EFEFEF;
		border: 1px solid #ccc;
	padding:45px;
	border-radius: 10px;
	font-weight: bold;
	font-size:18px;
	line-height: 1.6;
}


.as-sec-box2{
	padding:25px;
	border: 1px solid #ccc;
	font-size:16px;
	line-height: 1.8;
	margin-bottom: 15px;
}

.mb15{
	margin-bottom:1vw;
}

.certr{
	text-align:center;
}

.as-sec-box p{
	margin-bottom: 15px;
}

.as-sec-box p:last-child{
	margin-bottom:0;
}


.as-sec-box img{
	width:100%;
	margin-bottom: 15px;
}

.toyo-drum-wrap{
	display:flex;
	flex-wrap:wrap;
	flex-shrink:1;
	justify-content:space-between;
}

.toyo-drumbox{
	flex-basis:24%;
	margin-bottom:30px;
}

.toyo-drumbox h4{
	border:none;
	font-size:1.7vw;
	line-height:1.5;
	margin-bottom:1vw;
	padding:0 0 0 1vw;
	font-weight:bold;
}

.toyo-drumbox p{
	font-size:1.2vw;
	line-height:1.5;
	padding:0 1vw 0;
}


.toyo-drumbox.large{
	flex-basis:49%;
	display:flex;
}

.toyo-drumbox.large div{
	flex-basis:49%;
}

.toyo-drumbox img{
	width:100%;
}

/*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*//*asahi-sangyo*/


.as-concept-box{
	padding:20px 80px;
}

.as-concept-box h3{
	text-align: center;
	background-image: url(../../images/as-mark.jpg);
	background-repeat:no-repeat;
	background-size:161px 48px;
	background-position:top 0 left 50%;
	padding:55px 0 0;
	font-size:17px;
	font-weight: bold;
	margin-bottom: 30px;
}

.as-concept-box p{
	line-height: 2;
	font-size:18px;
}

.as-pa{
	margin-bottom: 30px;
}

.as-pa-box{
	background-color:#FFF6D9;
	padding:30px;
	display: flex;
	align-items:center;
	flex-shrink:0;

}

.as-pa-box.js{
	margin-bottom: 50px;
	}

.as-pa-box img{
	display: block;
	width:100px;
	margin:0 30px;
}

.as-pa-box p{
	font-size:16px;
	line-height: 1.8;
}

.as-service-img{
	width:50%;
	margin:0 0 30px;
}

.as-service-img-text{
	font-size:12px;
	font-weight: bold;

}


.as-service-btn a{
	padding: 10px 20px ;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	background-color: #25AEEF;
	border-radius: 20px;
	text-align: center;
	margin-bottom: 10px;
	display: inline-block;
}

.as-js-main{
	margin-bottom: 30px;
}

.as-page-link{
	text-align: center;
	margin-bottom: 30px;
}

.as-page-link a{
	display: inline-block;
	background-color:#C8171E;
	padding:20px 65px;
	color:#fff;
	font-size:16px;
	font-weight: bold;
	border-radius: 35px;
	transition: 0.3s ease all;
}

.as-page-link a:hover{
	background-color:#AF050C;
}


.as-js-box{
	background-color:#EFEFEF;
	padding:45px;
	border-radius: 10px;
}

.as-js-box-wrap{
	display:flex;
	flex-shrink:0;
	flex-wrap:nowrap;
	justify-content: space-between;
}

.as-js-img{
	width:25%;
}

.as-js-txt{
	width:75%;
	text-align: left;
	font-size:18px;
}

.as-js-txt table{
	margin-bottom: 30px;
}

.as-js-txt table tr td{
	width:65% !important;
	padding:5px 0 10px 50px;
	line-height: 1.8;
	font-weight: bold;
}

.as-js-txt table tr td:first-child{
	width:35% !important;
	border-right:1px solid #ccc;
	padding:5px 0 30px 0;
}

.as-js-txt table tr td strong{
	color:#C8171E;
}


.as-js-txt table:last-child{
	margin-bottom: 0;
}

.as-message{
	font-size:18px;
	line-height: 2;
}


.as-message p{
	text-indent: 1em;
	margin-bottom: 50px;
}

.as-message p:last-child{
	text-indent:inherit;
	margin-bottom: 0;
}

.as-email{
	text-align: center;
}

.as-email p{
	font-size:20px;
	margin-bottom:20px;
}

.as-email a{
	display: block;
	border-radius: 15px;
	border:1px solid #ccc;
	padding:15px;
	background-color:#fff;
	transition:0.3s all ease;
}

.as-email a:hover{
	background-color:#FFF400;
}

.as-email a img{
	width:300px;
}


.as-history-box{
	margin-bottom: 25px;
}


.as-history-box h4{
	padding:22px 100px;
	background-color:#00136C;
	color:#fff;
	font-size:20px;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	margin-bottom: 0;
}

.as-history-box p{
	display: block;
	background-color:#EDEDED;
	padding:25px 50px;
	font-size:16px;
	line-height: 1.8;
}

.as-futsal-box{
	display: block;
	background-color:#EDEDED;
	padding:30px 50px;
	font-size:18px;
	line-height: 1.8;
	border-radius: 15px;
}

.as-futsal-box img{
	margin-bottom: 20px;
}

/*rebuster*//*rebuster*//*rebuster*//*rebuster*//*rebuster*//*rebuster*//*rebuster*//*rebuster*//*rebuster*//*topnavi*//*Custom*/


.re-bar-01{
	width:100%;
	height: auto;
	background-color: #00A0E8;
	text-align:center;
	display: flex;
	justify-content: center;
	line-height:1;
	align-items: center;
	padding:15px;

}

.re-bar-01 h4{
	font-weight: 800;
	margin-right: 30px;
	font-size:19px;
	color:#fff;
}


.re-bar-01 span{
	padding:15px 80px;
	background-color: #FBFF00;
	font-size:21px;
	font-weight: 800;
	border-radius: 30px;
}

.re-bar-02{
	width:100%;
	height: auto;
	text-align:center;
	display: flex;
	justify-content: center;
	line-height:1;
	align-items: center;
	padding:5px 0;
	box-shadow: 0 8px 3px -3px #ccc;
	margin-bottom: 30px;
}

.re-bar-02 img{
	width:70.51vw;
}


.re-section header{
	padding:0 0 40px;
	text-align: center;
}

.dio-feature header{
	padding:50px 0 30px;
	text-align: center;
}


.re-section header h4{
	font-size:34px;
	font-weight: bold;
	margin-bottom: 10px;
}

.re-section header h3{
	font-size:45px;
	font-weight: bold;
	margin-bottom: 10px;
}

.dio-feature header h3{
	font-size:45px;
	font-weight: bold;
	margin-bottom: 10px;
}

.re-section header strong,
.dio-feature header strong{
	color:#00A0FF;
}

.re-section header span{
	color:#fff;
	background-color:#00A0FF;
	padding:7px 80px;
	border-radius: 30px;
	font-size:26px;
	display: inline-block;
}



.re-section{
	padding:50px 0;
}


.re-top-section.re-section{
	padding:30px 0;
}


.re-section-body{
	padding-bottom: 40px;
}

.re-section-body h3{
	background-color: #00A0FF;
	padding:15px;
	color:#fff;
	font-weight: bold;
	font-size:23px;
	margin-bottom: 20px;
}

.re-section-body h4{
	border-left:5px solid #00A0FF;
	padding:6px 15px;
	font-size:23px;
	margin-bottom: 20px;
}

.re-section-body img{
	display: block;
	margin:0 auto;
	width:80%;
	max-width: 100%;
}

.re-section-body p{
	line-height: 1.8;
}

.re-section-body .dio-hosoku{
	margin-bottom:0;
}

.re-price-wrap{
	max-width: 1024px;
	margin:0 auto;
}

.re-price-box{

}

.re-banner{
	margin-bottom: 30px;
}



.common-jisseki-wrap{
	width:100%;
	height: auto;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-bottom: 35px;
	padding:0 20px;
}

.common-jisseki-wrap a{
	display: block;
	width:18%;
	margin-right:1%;
}

.common-jisseki-wrap.taxo a{
	width:33%;
}

.common-jisseki-box{
	margin-bottom: 20px;
	padding:15px;
	border-radius: 15px;
	border:1px solid #eee;
}

.common-jisseki-box:hover{
	background-color:#f0f0f0;
}

.common-jisseki-box a{
	color:#000;
}

.common-jisseki-box img{
	width:100%;
	height: 170px;
	object-fit: cover;
	margin-bottom:8px;
}

.common-jisseki-box span{
	display: block;
}

.common-jisseki-box span.common-jisseki-category{
	font-size:14px;
	font-weight: bold;
	color:#fff;
	text-align: center;
	padding:4px 0;
	background-color: #00B900;
	margin-bottom: 10px;
}

.common-jisseki-box span.common-jisseki-category.category-slug-aircon{
	background-color:#00BFFF;
}

.common-jisseki-box span.common-jisseki-category.category-slug-voice{
	background-color:#FF00B7;
}

.common-jisseki-box span.common-jisseki-category.category-slug-kushitsu{
	background-color:#0000FF;
}

.common-jisseki-box span.common-jisseki-date{
	font-size:12px;
	color:#FF0047;
	font-weight: bold;
	margin-bottom: 7px;
}

.common-jisseki-box span.common-jisseki-title{
	font-size:16px;
	display: inline;
	line-height: 24px;
	border-bottom: 1px solid #1b1b1b;
	padding-bottom: 1px;
}
.re-btn-wrap{
	text-align:center;
}


a.re-btn{
	margin:0 auto 30px;
	background-color: #E4006C;
	color:#fff;
	text-align:center;
	font-weight: bold;
	border-radius: 30px;
	padding:10px 60px;
}



.nav-menu header{
	width:100%;
	height: auto;
	padding:60px 50px 45px;

}

.nav-menu header h3{
	font-size:14px;
	letter-spacing: 3px;
	font-weight: bold;
	display: inline;
	line-height: 14px;
}

.nav-menu header h3:after{
	content:'';
	width:40px;
	height: 1px;
	background: #1b1b1b;
	display: inline-block;
	transform: translateY(-4px);
	margin:0 25px;
}

.nav-menu header span{
	font-size:13px;
	line-height: 14px;
	letter-spacing: 1px;
	font-weight: bold;
}




	.toyo-menu-box{
		width:100%;
		height: auto;
		padding:18px 30px 18px;
		display: flex;
		align-content: center;
		position: relative;
		border-bottom:1px solid #f0f0f0;
	}



	.toyo-menu-box h4{
		
		font-size: 20px;
		font-weight: bold;
		letter-spacing: 4px;
		display: inline;
		line-height: 20px;
	}

	.toyo-menu-box span{
		display: inline;
		font-size:10px;
		color:#999999;
		margin-right:15px;
		font-weight: bold;
	}



.jsh-menu-box{
	width:100%;
	height: 100px;
	position: relative;
}

#menu .jsh-menu-box a{
	color:#fff !important;
}

.jsh-menu-box img{
	width:100%;
	height:100%;
	object-fit:cover; 
	font-family: 'object-fit: cover;'; /*IE対策*/
}

.jsh-menu-box h4{
	position: absolute;
	top:50%;
	left:50%;
	display: block;
	transform: translate(-50%,-50%);
	font-size:18px;
	font-weight: bold;
	white-space: nowrap;
	line-height: 1.5;
	text-align: center;
}


.jsh-menu-box .info{
	position: absolute;
	text-align: center;
	width:100%;
	top:50%;
	left:50%;
	display: block;
	transform: translate(-50%,-50%);
}

.jsh-menu-box .info p{
	font-size:12px;
	display: block;
	margin-bottom:15px;
}

.jsh-menu-box .info h5{
	display: inline;
	font-size:16px;
	line-height: 2;
	border-bottom: 1px solid #fff;
	font-weight: bold;
}


.jsh-menu-box span{
	position: absolute;
	bottom:10%;
	left:50%;
	display: block;
	transform: translate(-50%,0);
	font-size:8px;
	font-weight: bold;
	letter-spacing: 5px;
	color:#999999;
}



.jsh-menu-box a{
	color:#fff;
}

.jsh-menu-box img{
	filter: brightness(50%);
	transition: 0.5s all ease;
}

.jsh-menu-box:hover img{
	filter: brightness(75%);
}
#menu a{
	color:#fff;
}


#menu a.menu-contact{
	background-color: #313131;
	display: block;
	width:100%;
	height: auto;
	color:#fff;
	text-align: center;
	font-size:15px;
	font-weight: bold;
	letter-spacing: 4px;
	transition: 0.5s ease all;
}
a.menu-contact:hover{
	background-color:#024578;
}

a.menu-contact span{
	display: block;
	width:100%;
	height: auto;
	position: relative;
	padding:22px 0;
}

a.menu-contact span:after{
	position: absolute;
	content:'';
	width:64px;
	height: 1px;
	background-color:#fff;
	right:0;
	top:50%;
	transform: translateY(-50%);
}

#menu a.menu-contact.soudan{
	background-color: #0068b7;

}


.re-bar-zero{
	width:100%;
	height: auto;
	text-align:center;
	background-color: #FF3594;
}

.re-bar-aniva{
	width:100%;
	height: auto;
	text-align:center;
	background-color: #00A0FF;
}


.re-bar-manzoku{
	width:100%;
	height: auto;
	text-align:center;
}

.re-bar-zero img ,.re-bar-aniva img, .re-bar-manzoku img{
	max-width: 1024px;
	width: 100%;
}

.re-hoken{
	padding-bottom: 50px;
}

.re-hoken-header{
	background-color: #00C09E;
	color:#fff;
	font-size:36px;
	font-weight: 800;
	text-align: center;
	padding:30px 0;
	margin-bottom: 20px;
}

.re-hoken .dio-hosoku{
	font-weight: bold;
	text-align: center;
	font-size: 19px;
}

.re-hoken .dio-hosoku span.s-blue{
	color:#00A0E8;
}


.re-hoken .dio-hosoku span.s-pink{
	color:#FF6464;
}

.re-hoken-wrap{
	display: flex;
	flex-shrink: 50%

}

.re-hoken-box{
	width:50%;
	display: block;
	padding:0 20px;
	
}



.re-hoken-box img{
	width:100%;
	margin-bottom:20px;
}


.re-hoken-box h5{
	display: block;
	width:100%;
	text-align: center;
	font-size:23px;
	font-weight: bold;
	background-color: #f0f0f0;
	padding:20px;
	border-radius: 15px;
}

.re-hoken-box strong{
	color:#FF6F6F;
}

.re-manzoku{
	text-align: center;
}

 
.re-manzoku img{
	max-width: 1224px;
	width:100%;
}


/*reason
*********************/
.re-reason{overflow: hidden;padding:0 0 40px;background-color:#f0f0f0;}
.re-reason-wrap{
	display: flex;
	flex-shrink: 0;
	flex-wrap: wrap;
	text-align: center;
	justify-content: center;
}

.re-reason-box{
	width:30%;
	color:#000;
	margin:10px;
}


.re-reason-img img{

	vertical-align: bottom;
}

.re-reason-txt{
	background-color:#fff;
	padding:10px 20px 20px;
	line-height: 1.6;
}

.re-reason-txt h4{
	color:#FF6419;
	font-size:23px;
	font-weight: 800;
	margin-bottom:20px;
}

.re-reason-txt p{
	font-size:16px;
	text-align: left;
}


.re-cta-top{
	display: none;
}

.re-cta-bottom{
	display: none;
}

.re-nayami{
	padding:50px 0;
	background-color: #0091D2;
	text-align: center;
}

.re-nayami h3{
	color:#fff;
	font-size:33px;
	font-weight: bold;
	margin-bottom: 50px;
}

.re-nayami h3 strong{
	color:#EDFF00;
}

.re-nayami-wrap{
	display: flex;
	flex-wrap:wrap;
	flex-shrink: 0;
}

.re-nayami-box{
	width:50%;
	display: flex;
	flex-wrap:nowrap;
	flex-shrink: 0;
	margin-bottom:40px;
	padding-right:20px;
	align-items:flex-start;
}

.re-nayami-txt{
	width:75%;
	padding:25px;
	background-color: #fff;
	line-height: 1.8;
	font-size:18px;
	font-weight: bold;
	text-align:left;
	border-radius: 20px;
}

.re-nayami-img{
	width:25%;
	align-items: bottom;
}

.re-nayami h4{
	padding:20px 30px;
	font-size:48px;
	color:#000;
	background-color: #F8FF00;
	border-radius: 40px;
	font-weight: 800;
	margin-bottom:15px;
}

.re-nayami span{
	color:#fff;
	font-size:24px;
	font-weight: bold;
	line-height: 1.6;
}


.zen-list-wrap{
		width:100%;
		height: auto;
	}

	.zen-list-box{
		width:100%;
		height: auto;
		padding:30px 30px 30px;
		border-radius: 20px;
		line-height: 1.6;
		display: flex;
		align-content: center;
		position: relative;
		background:#f0f0f0; /* Old browsers */
background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(235,235,235,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(235,235,235,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(235,235,235,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ); /* IE6-9 */
	}

	

	.zen-list-box span{
		display: inline;
		font-size:24px;
		line-height: 1.5;

	}


	.openbox{
		width:100%;
		height: auto;
		display: none;
	}

	.aaa,.bbb,.ccc{

		display: none;
	}



	.zen-list-contena{
		width:100%;
		display: flex;
		padding:40px;
		flex-wrap: wrap;
		background-color:#fff;
		font-size:16px;
		line-height: 2;
	}

	.re-flow-cta{
		display: block;
	}

	.re-flow-cta img{
		width:150px;
		margin:10px 10px 0 0;
		display: inline-block;
	}


.re-flow-footer{
	background-color: #00C09E;
    color: #fff;
    font-size: 36px;
    font-weight: 800;
    text-align: center;
    padding: 30px 0;
    line-height: 1.6;
}

.flow-wrap .dio-hosoku{
	text-align: center;
	font-weight: bold;
}

.re-voice{
	background-color: #F2631D;
}

.re-voice h3{
	color:#fff;
}

.re-voice-box{
	margin-bottom: 30px;
}

.re-voice-box h4{
	font-weight: bold;
	color:#fff;
	margin-bottom: 10px;
	font-size:20px;
}

.re-voice-box p{
	padding:20px;
	background-color: #f0f0f0;
	line-height: 1.6;
	font-size:16px;
	border-radius: 10px;
}

.re-banner.re-banner-clean{
	padding:20px 0;
}

.re-access.re-section{
	padding:0 0 30px;
}

.re-map.re-section{
	padding:0 40px 30px;
}

.re-map .dio-hosoku{
	font-size:16px;
}

.re-map .dio-hosoku p{
	margin-bottom:10px;
}


.re-map .dio-hosoku a{
	color:#000;
}

.re-map .dio-hosoku a:hover{
	color:#F2631D;
}


.dio-hosoku h5{
	font-weight: bold;
	font-size:110%;
}

.re-jit-box-wrap.re-jit01{
	padding:20px;
	background-color:#f0f0f0;
	line-height: 1.8;
	border-radius: 20px;
	margin-bottom: 20px;

}


.re-jit-box-wrap.re-jit02{
	width:100%;
	display: flex;
	flex-wrap:nowrap;
	flex-shrink: 0;
	margin-bottom:20px;
	align-items:center;
	padding:0 20px;
}

.re-jit-box-wrap.re-jit01 h5{
	font-weight: bold;
	color:#F2631D;
}


.re-jit-man-com{
	width:84%;
	padding:25px;
	background-color: #00A0E8;
	color:#fff;
	line-height: 1.8;
	font-size:18px;
	font-weight: bold;
	text-align:left;
	border-radius: 20px;
}

.re-jit-man{
	width:16%;
	padding:20px;
}

.re-jit-man img{
	width:100%;
}


a.button{
	padding:15px 60px;
	text-align:center;
	color:#fff;
	background-color: #00136C;
	font-size:16px;
	font-weight: bold;
	border-radius: 15px;
	width:60%;
	display: block;
	margin:0 auto;
}

table.dio-contact{
	width:100%;
}

.re-section-body img{
	margin-bottom: 20px;
}


.re-price-sub{
	padding:15px 30px;
	text-align:center;
	color:#fff;
	background-color: #00A0FF;
	font-size:20px;
	font-weight: bold;
	border-radius: 15px;
	margin-bottom:20px;

}

.re-nayami-wrap2{
	flex-wrap:wrap;
	display: flex;
	flex-shrink:0;
	justify-content: center;
}

.re-nayami-box2{
	width:30%;
	text-align:left;
	padding:20px;
	font-weight: bold;
	background-color: #fff;
	font-size:18px;
	line-height: 1.8;
	border-radius: 30px;
	margin: 10px;
	box-shadow: 10px 10px 10px rgba(0,0,0,0.2);
}

.re-price-ranking{
	margin-bottom: 40px;
}

.re-service-wrap{
	display: flex;
	flex-shrink:0;
	flex-wrap:wrap;
}

.re-service-box{
	width:50%;
	padding:10px;
}

.re-service-box h4{
	display: block;
	background-color: #00A0FF;
	color:#fff;
	padding:10px;
	text-align: center;
	font-weight: bold;
	font-size:20px;
	margin-bottom: 10px;
}

.re-service-box img{
	margin-bottom: 10px;
}

.re-service-box p{
	font-size:16px;
	line-height: 1.6;
}


.zen-list-contena ul{
}


.zen-list-contena li{
	width: 33%;
    float: left;
}




.jsh-blog-wrap{
	width:100%;
	height:auto;
	display: flex;
	flex-shrink: 0;
	flex-wrap: nowrap;
}

.jsh-blog-main{
	width:100%;
	height: auto;
}


.jsh-blog-side{
	width:28%;
	height: auto;
}


.jsh-blog-main-header{
	width:100%;
	height: auto;
	margin-bottom: 70px;
	padding:2px 0;
}

.jsh-blog-info{
	width: auto;
	float:left;
}

.jsh-blog-tag{
	width:auto;
	float:right;
}

.jsh-blog-cat{
	width:auto;
	height: auto;
	padding:7px 30px;
	font-size:10px;
	font-weight: bold;
	display: inline-block;
	color:#fff;
	background-color: #1b1b1b;
	margin-right:17px;
}

.jsh-blog-date{
	font-weight: bold;
	font-size:14px;
	line-height: 24px;
}

.jsh-tag a{
	color:#1b1b1b;
	font-size:12px;
	font-weight: bold;
	padding:10px 15px;
	border:1px solid #1b1b1b;
	border-radius: 20px;
	margin-right:8px;
	line-height: 24px;
	box-shadow: 0 0 5px #eee;
	background-color: #fff;
	transition: 0.3s ease all;
}

.jsh-tag a:hover{
	color:#fff;
	background-color: #1b1b1b;
	
}



.jsh-blog-title h1{
	font-size:30px;
	font-weight: bold;
	line-height: 1.5;
	display: block;
	margin-bottom:70px;
}

.jsh-blog-img{
	width:100%;
	height: auto;
	margin-bottom:30px;
}

.jsh-blog-img img{
	width:100%;
	height: auto;
}

.jsh-blog-content {
	width:100%
	height:auto;
	padding-bottom: 70px;
}

.jsh-blog-content img{
	width:100%;
	height: auto;
	max-height: 500px;
	object-fit: cover;
}

.jsh-blog-content h1{
	font-size:32px;
	font-weight: bold;
	line-height: 1.5;
	display: block;
	margin-bottom:35px;
}

.jsh-blog-content h2{
	font-size: 24px;
	font-weight: bold;
	line-height: 2;
	padding-left:25px;
	border-left:3px solid #1b1b1b;
	margin-bottom:35px;
	margin-top:35px;
}

.jsh-blog-content h2:first-child{
	margin-top:0;
}

.jsh-blog-content h3{
	font-size: 20px;
	font-weight: bold;
	line-height: 2;
	padding:20px 30px;
	background-color: #eeeeee;
	margin-bottom:35px;
	margin-top:35px;
}

.jsh-blog-content h3:first-child{
	margin-top:0;
}

.jsh-blog-content p{
	font-size:16px;
	line-height: 2;
	color:#252525;
	padding-bottom:35px;
}

.jsh-blog-content p:last-child{
	padding-bottom:0;
}

.jsh-blog-content ul,.jsh-blog-content ol{
	margin-bottom:30px;
}

.jsh-blog-content ul li{
	list-style: inside;
}

.jsh-blog-content ol li{
	list-style: inside;
	list-style-type: decimal;
}

.jsh-blog-content a{
	color:#1b1b1b;
	padding-bottom:5px;
	border-bottom:1px solid #1b1b1b;
	transition: 0.3s ease all;
}

.jsh-blog-content a:hover{
	color:#0068b7;
	border-bottom:1px solid #0068b7;
}

.jsh-blog-content table{
	font-size: 13px;
	color:#535353;
	border:1px solid #dddddd;
	width:100%;
	height: auto;
	margin-bottom: 35px;
}
.jsh-blog-content table th,.jsh-blog-content table td{
	border:1px solid #dddddd;
	padding:15px 30px;
}

.jsh-blog-content thead td{
	background-color: #eeeeee;
	text-align: center;

}
.jsh-blog-content tbody th{
	background-color: #eeeeee;
	text-align: center;
	vertical-align: middle;

}

.jsh-blog-content tbody td{
	background-color: #ffffff;
	text-align:left;
	vertical-align: middle;


}

.jsh-blog-banner{
	width:100%;
	height: auto;
}

.jsh-blog-banner img{
	opacity: 1;
	transition: 0.5s ease all;
}

.jsh-blog-banner img:hover{
	opacity: 0.8;
}


.jsh-blog-supervision{
	padding:70px 0 70px;
}

.jsh-blog-supervision header{
	margin-bottom:30px;
}

.jsh-blog-supervisor-header{
	width:100%;
	height:auto;
	display: flex;
	justify-content:flex-start;
	align-items:center;
	margin-bottom:15px;
}

.jsh-blog-supervisor-image{
	width:105px;
	height: 105px;
	margin-right:17px;
}

.jsh-blog-supervisor-image img{
	width:100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE対策*/
}

.jsh-blog-supervisor-name{
	font-size:20px;
	font-weight: bold;
}

.jsh-blog-supervisor-name span{
	display: block;
	font-size:12px;

}

.jsh-blog-supervisor-info{
	color:#252525;
	font-size:14px;
	line-height: 2;
}

.jsh-blog-tag2{
	width:100%;
	background-color: #eeeeee;
	height:auto;
	display: flex;
	justify-content:flex-start;
	align-items:center;
	padding:20px 40px;
	margin-bottom:70px;
}

.jsh-blog-tag2 .title{
	font-size:12px;
	font-weight: bold;
	font-family: 'Overpass', sans-serif;
	letter-spacing: 4px;
	border-right:1px solid #1b1b1b;
	padding:7px 40px;
}


.jsh-blog-tag2 .tags{
	padding:7px 40px;
}

.jsh-blog-sns{
	width:100%;
	height: auto;
	display: flex;
	justify-content:center;
	align-items:center;
	border: 1px solid #dddddd;
	margin-bottom: 100px;
}

.jsh-blog-sns-box{
	width:50%;
	text-align: center;
	padding:50px 0;
	position: relative;

}


.jsh-blog-sns-box span{
	color:#1b1b1b;
	font-weight: bold;
	font-size:12px;
	display: block;
	transition: 0.5s ease all;
}

.jsh-blog-sns-box:hover span{
	color:#fff;
}

.jsh-blog-sns-box.jsh-blog-sns-twitter{
	background-color: #fff;
	transition: 0.5s ease all;
}

.jsh-blog-sns-box.jsh-blog-sns-twitter:after{
	content:'';
	display: block;
	position: absolute;
	right:0;
	top:50%;
	width:1px;
	height: 80px;
	background-color: #dddddd;
	transform: translateY(-50%);
	}

.jsh-blog-sns-box.jsh-blog-sns-twitter:hover,.jsh-blog-sns-box.jsh-blog-sns-fb:hover{
	background-color: #1b1b1b;
}

.jsh-blog-sns-box.jsh-blog-sns-twitter{
	color:#4aa1ec;
	transition: 0.5s ease all;
}

.jsh-blog-sns-box.jsh-blog-sns-fb{
	color:#3b5998;
	transition: 0.5s ease all;
}

.jsh-blog-sns-box.jsh-blog-sns-twitter:hover,.jsh-blog-sns-box.jsh-blog-sns-fb:hover{
	color:#fff;
}

/**blog-side**/

.jsh-blog-side-banner-wrap{
	width:100%;
	height:auto;
	margin-bottom:30px;
}

.jsh-blog-side-banner-box{
	width:100%;
	height:auto;
	margin-bottom:15px;
	 box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.4);
  -webkit-box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.4);
  -moz-box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.4);
}

.jsh-blog-side-banner-box img{
	opacity: 1;
	transition: 0.3s all ease;
}

.jsh-blog-side-banner-box:hover img{
	opacity: 0.7;
}


.jsh-blog-category{
	width: 100%;
	height: auto;
	padding:40px;
	background-color: #eeeeee;
	margin-bottom:30px;
}

.jsh-blog-category-title{
	width:100%;
	height: auto;
	position: relative;
	margin-bottom: 30px;
}

.jsh-blog-category-title:after{
	
	content:'';
	display: block;
	width:80px;
	height: 1px;
	background-color: #1b1b1b;
	z-index: 100000;
	bottom:0;
	left:0;

}

.jsh-blog-category-title h4{
	font-size:12px;
	display: inline-block;
    	font-weight: bold;
	letter-spacing: 3px;
}


.jsh-blog-category-title h4:after{
	content:'';
	display: block;
	width:100%;
	height: 1px;
	background-color: #ccc;
	position: absolute;
	z-index: 10;
	bottom: 0;
	left:0;

}
.jsh-blog-category li{
	margin-bottom:20px;
}
.jsh-blog-category li a{
	color:#1b1b1b;

	padding-bottom: 5px;
	font-size:14px;
	font-weight: bold;
	border-bottom:1px solid #1b1b1b;
}

.jsh-blog-category li a:last-child{
	margin-bottom:0;
}

.jsh-blog-pickup{
	width:100%;
	height: auto;
	margin-bottom:35px;
}

.jsh-blog-pickup h4{
	font-size:14px;
	font-weight: 800;
	letter-spacing: 2px;
	margin-bottom: 20px;
}

.jsh-blog-pickup-box{
	display: flex;
	justify-content:flex-start;
	align-items:center;
	width:100%;
	height: auto;
	margin-bottom:8px;
	opacity: 1;
	transition: 0.5 all ease;
}

.jsh-blog-pickup-box:hover{
	opacity: 0.7;

}

.jsh-blog-pickup a{
	color:#1b1b1b;
}


.jsh-blog-pickup-box-image{
	width:88px;
	height: 88px;
	margin-right:18px;
	min-width: 88px;
}

.jsh-blog-pickup-box-image img{
	width:88px;
	height: 88px;
	object-fit:cover;
	font-family: 'object-fit: cover;'; /*IE対策*/

}

.jsh-blog-pickup-box-title{
	font-size:13px;
	font-weight: bold;
	line-height: 18px;
}

.jsh-blog-pickup-box-title span{
	display: block;
	font-size:12px;
	font-weight: bold;
}

.jsh-blog-service a{
	color:#1b1b1b;
}

.jsh-blog-service-box{
	text-align: center;
	margin-bottom:18px;
	opacity: 1;
	transition: 0.5s ease all;
}

.jsh-blog-service-box:hover{
	opacity: 0.7;
}

.jsh-blog-service-box h4{
	font-size:12px;
	line-height: 1.5;
	font-weight: bold;
	display: inline;
	border-bottom:1px solid #1b1b1b ;
}

.jsh-blog-tag-title{
	margin:0 0 50px;
}

.jsh-blog-tag-title h3{
	font-size:28px;
	font-weight: bold;
	line-height: 2;
	
}

.jsh-blog-tag-title h3 span{
	font-size:13px;
	margin-left:5px;
}

.jsh-blog-tag-title p{
	display: block;
	margin-top:30px;
	font-size:14px;
	line-height: 2;
	color:#252525;
}

.jsh-blog-banner-bottom{
	width:100%;
	height: 126px;
	background-color: #dddddd;
	position: relative;
	padding-top:20px;
	margin-bottom: 165px;
}

.jsh-blog-banner-bottom-wrap{
	width:100%;
	height: auto;
	display: flex;
	justify-content: space-between;
}

.jsh-blog-banner-bottom-wrap a{
	color:#1b1b1b;
}


.re-footerlink{
	width:100%;
	height: auto;
	background-color: #FFF900;
	padding:25px;
	text-align:left;

}

.re-footerlink-wrap{
	display: flex;
	flex-shrink: 0;
	flex-wrap:nowrap;
}


.re-footerlink-box{
	width:20%;
	padding:1%;
	font-size:16px;
}

.re-footerlink-box h4{
	font-size:18px;
	font-weight: bold;
	margin-bottom: 15px;
	border-bottom: 1px solid #333;
	padding-bottom:10px;
}

.re-footerlink-box li{
	margin-bottom: 15px;
}

.re-footerlink-box li a{
	color:#000;
}

.re-footerlink-box li a:hover{
	color:#FF6100;
}

.re-cam{
	background-color: #f0f0f0;
	width:100%;
	height: auto;
}


.re-cam-wrap{
	display: flex;
	flex-wrap:nowrap;
	flex-shrink: 0;
}

.re-cam-box{
	width:50%;
}

.re-cam-box img{
	vertical-align: bottom;
	width:100%;
}


.re-ihin-img{
	display: block;
	width:80%;
	margin-bottom: 20px;
}

.re-award-wrap{
	display: flex;
	flex-wrap:nowrap;
	flex-shrink:0;
}

.re-award-wrap img{
	width:33%;
	display: block;
}


/*feature*//*feature*//*feature*//*feature*//*feature*//*feature*//*feature*//*feature*//*feature*//*topnavi*//*Custom*/
.dio-feature{
	width:100%;
	height: auto;
}

.dio-feature.dio-feature-page{
	padding-bottom: 30px;
}


.dio-feature-wrap{
	display:flex;
	background-color:#00A0FF;
	color:#fff;
	flex-shrink: 0;
	flex-direction: row;
	box-shadow: 0 8px 3px -3px #ccc;
	margin-bottom: 60px;
}


.dio-feature-page .dio-feature-wrap{
	margin-bottom: 0;
	}

.dio-feature-02.dio-feature-wrap{
	flex-direction: row-reverse;
	}

.dio-feature-img{
	width:48%;
}

.dio-feature-02 .dio-feature-img{
	width:52%;
}

.dio-feature-img img{
	width:100%;
	vertical-align: bottom;
}

.dio-feature-txt{
	width:52%;
	padding:40px 45px;
	font-weight: bold;
	position: relative;
}

.dio-feature-txt strong{
	color:#FBFF00;
}

.dio-feature-02 .dio-feature-txt{
width:48%;
	}

.dio-feature-txt h3{
	font-weight: 900;
	font-size:40px;
	line-height: 1.2;
	margin-bottom: 30px;
	white-space: nowrap;
}

.dio-feature-txt p{
	font-size:18px;
	line-height: 2;
	width:80%;
	margin-bottom:30px;
}

.dio-feature-txt span{
	display: inline-block;
	background-color:#FBFF00;
	border-radius: 30px;
	padding:13px 25px;
	color:#000;
	font-size:26px;
}





/*backtotop*//*backtotop*//*backtotop*//*backtotop*//*backtotop*//*backtotop*//*backtotop*//*backtotop*/


a.backtotop{
	width:100%;
	display:block;
	padding:5px 0;
	text-align: center;
	background-color:#002518;
	border-bottom:inherit;
	color:#fff;
}

a.backtotop:hover{
	width:100%;
	background-color:#FFF400;
			-moz-transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		-ms-transition: all 0.5s ease;
		transition: all 0.5s ease;

}




.dio-member-menu-01{
	margin-bottom: 30px;
}

.dio-member-menu-01 a{
	display: block;
	background-color:#41A60D;
	color:#fff;
	font-size:20px;
	font-weight: bold;
	padding:28px 30px;
	border-radius: 15px;
	margin-bottom: 15px;
	position: relative;
	padding-left:75px;
	transition: 0.5s all ease;
}

.dio-member-menu-01 a:hover{
	background-color:#57D615;
}

.dio-member-menu-01 a:before{
	content:'';
	display:block;
	width:46px;
	height: 46px;
	background-image:url(../../images/dio-mark.png);
	background-size:46px 46px;
	position: absolute;
	top:50%;
	left:20px;
	transform: translateY(-50%);
}



.dio-member-menu-02 a{
	display: block;
	font-size:18px;
	margin-bottom: 25px;
	color:#000;
	position: relative;
	padding-left:45px;
	transition: 0.5s all ease;
}

.dio-member-menu-02 a:hover{
	color:#41A60D;
}

.dio-member-menu-02 a:before{
	content:'';
	display:block;
	width:32px;
	height: 32px;
	background-image:url(../../images/dio-mark.png);
	background-size:32px 32px;
	position: absolute;
	top:50%;
	left:0;
	transform: translateY(-50%);
}

/*dio-conversion*//*dio-conversion*//*dio-conversion*//*dio-conversion*//*dio-conversion*//*dio-conversion*//*dio-conversion*//*dio-conversion*/


.dio-conversion{
	width:100%;
	height:auto;
	background-color:#00A0E8;
	xmargin-bottom:50px;
}


.dio-conversion-wrap{
	display: flex;
	flex-shrink:0;
	align-items:  center;
}

.dio-conversion-box{
	width:50%;
	padding:20px;
}


.dio-conversion-02 img{
	margin-bottom: 20px;
}




/*dio-topcampain*//*dio-topcampain*//*dio-topcampain*//*dio-topcampain*//*dio-topcampain*//*dio-topcampain*//*dio-topcampain*//*dio-topcampain*/


.dio-topcampaign{
	width:100%;
	height:auto;
	margin-bottom:50px;
}


.dio-topcampaign-wrap{
	display: flex;
	flex-shrink:0;
	align-items:  center;
	background-color:#00A0FF;
	padding:30px;
	transition: 0.3s all ease;
	}


.dio-topcampaign-wrap:hover{
background-color:#FE9E00;
}

.dio-topcampaign-box{

}

.dio-topcampaign-01{
	width:45%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.dio-topcampaign-01 img{
	width:60%;
}

.dio-topcampaign-02{
	width:65%;
	display: flex;
	justify-content: center;
	align-items: center;

}

.dio-topcampaign-02.dio-football img{
	width:70%;

}

/*dio-page*//*dio-page*//*dio-page*//*dio-page*//*dio-page*//*dio-page*//*dio-page*//*dio-page*/



.dio-page.lp{
	width:100%;
	height: auto;
	background-color:#f0f0f0;
}

.dio-page-title{
	padding:70px 0;
		background-image:url(../../images/dio-page-header.jpg);
	background-repeat:no-repeat;
	background-size:222px 78px;
	background-position:0  50%;
	background-color: #fff;
}

.dio-page-title h3{
	text-align: left;
	font-size:38px;
	position: relative;
	font-weight: 800;
	display: block;
	padding-left:250px;
	letter-spacing: 5px;

}

.dio-page-section{
	background-color: #fff;
	width:100%;
	height: auto;
}


.dio-page-body{
	width:100%;
	padding:50px 50px;
	height: auto;
	background-color:#fff;
}


.dio-page-body.dio-lp{
	padding:0 ;
}


.dio-page-body header h3{
	font-size:28px;
	margin-bottom: 20px;
	display: block;
	line-height:1.2;
	position: relative;
	width: 100%;
}




/*dio-cotent*//*dio-cotent*//*dio-cotent*//*dio-cotent*//*dio-cotent*//*dio-cotent*//*dio-cotent*//*dio-cotent*/



.dio-content{
	width:100%;
	height: auto;
	padding:30px 0;
}

.dio-content p{
	line-height: 2;
	margin-bottom: 20px;
}

.dio-content p a{
	padding:10px 20px;
	display: inline-block;
	background-color: #f0f0f0;
	color:#000;
	border:none;
	text-decoration: none;
	border-radius: 20px;
	margin:10px 0;
	transition: 0.4s all ease;
}

.dio-content p a:hover{
	background-color: #FE9E00;
	color:#fff;
}



/*dio-coat*//*dio-coat*//*dio-coat*//*dio-coat*//*dio-coat*//*dio-coat*//*dio-coat*//*dio-coat*/


.dio-coat{
	width:100%;
	height: auto;
	padding:30px 60px 60px;
}

.dio-coat img{
	width:100%;
	height: auto;
	vertical-align: bottom;
}
.dio-coat-wrap{
	display: flex;
	flex-shrink: 0;
	flex-wrap: nowrap;
	margin-top:48px;
}

.dio-coat-img{
	width:25%;
	height:auto;
}

.dio-coat-info{
width:75%;
	height:auto;
	padding-left:24px;
}

.dio-coat-info h3{
	color:#33AFEC;
	font-size:20px;
	font-weight: 800;
	line-height: 1.4;
	margin-bottom: 24px;
}

.dio-coat-info h3 span{
	font-size:26px;
	display: block;
}

.dio-coat-info p{
	font-size:18px;
	line-height: 33px;
}

.dio-school-message{
	background-color: #DBFF00;
	padding:50px;
}

.dio-school-message-wrap{
	background-color: #fff;
	padding:52px 100px;
	border-radius: 23px;
}


.dio-school-message-header{
	display: flex;
	flex-shrink: 0;
justify-content: center;
	align-items: center;
	margin-bottom:70px;
}

.dio-school-message-img{
	width:40%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.dio-school-message-img img{
	width:90%;
}

.dio-school-message-info{
	width:60%;
	padding:0 40px;
}

.dio-school-message-info h4{
	width:100%;
	display: block;
	font-size:26px;
	font-weight: 800;
	margin-bottom: 35px;
	line-height: 1.8;
	letter-spacing: 4.5px;
}

.dio-school-message-info h4:before{
	content:'';
	display: block;
	background-image: url(../../images/dio-mark.png);
	background-size: 58px 58px;
	background-repeat: no-repeat;
	width:58px;
	height: 58px;
	margin-bottom: 15px;
}

.dio-school-message-info p{
	width:100%;
	display: block;
	font-size:21px;
	line-height: 2;
	letter-spacing: 4.5px;
}

.dio-school-message-body{
	display: flex;
	flex-shrink: 0;
	
}

.dio-school-message-body p{
	margin-bottom:30px;
	line-height: 2.5;
	font-size:16px;
	text-indent:1em;
}

.dio-school-message-01{
		width:50%;
		padding:0 40px;
}


.dio-school-message-02{
	width:50%;
	padding:0 40px;
}


.dio-shisetsu-wrap{
	display:flex;
	flex-shrink:0;
}

.dio-shisetsu-box{
	width:33%;
	padding:20px;
	text-align: center;
}

.dio-shisetsu-box img{
	width:100%;
	margin-bottom: 10px;
}

.dio-shisetsu-box h5{
	font-size:16px;
	margin-bottom:10px;
}


.dio-shisetsu-box p{
	font-size:13px;
}


/*dio-price*//*dio-price*//*dio-price*//*dio-price*//*dio-price*//*dio-price*//*dio-price*//*dio-price*/


.dio-price{

}

.dio-price h4{
	font-size:32px;
	display: block;
	margin-bottom: 30px;
	position: relative;
	text-indent:48px;
}

.dio-price h4:before{
	content:'';
	display:block;
	width:40px;
	height: 40px;
	background-image:url(../../images/dio-mark.png);
	background-size:40px 40px;
	position: absolute;
	top:50%;
	left:0;
	transform: translateY(-50%);
}

.dio-price h5{
	font-size:22px;
	display: block;
	margin-bottom: 15px;

}

.dio-price h5 span{
	font-size:16px;
	margin-left: 10px;
	font-weight: bold;
	background-color:#DBFF00;
	padding:3px 15px;
	border-radius: 30px;

}

.dio-price table{
	width:100%;
	height: auto;
	margin-bottom: 50px;
}

.dio-price table:last-child{
	margin-bottom: 30px;
}


.dio-price th,.dio-price td{
	padding:10px 20px;
	background-color:#f0f0f0;
	border:3px solid #fff;
	vertical-align: middle;
}

.dio-price tbody td{
	padding:30px 20px;
	font-size:120%;
}

.dio-price tbody th span{
	font-size:70%;
	display: block;
	margin-top:8px;
}

.dio-price th{
	color:#fff;
	font-weight: bold;
	background-color:#00A0FF;
	letter-spacing: 2px;
}

.dio-price thead th{
	line-height: 1.8;
	letter-spacing: 3px;
}


.dio-price thead th span{
	font-size:80%;
}

.dio-price tbody th{
	color:#000;
	font-weight: bold;
	background-color:#ccc;
	letter-spacing: 1px;
	width:35%;
	font-size:120%;
}



.dio-price td{
	line-height: 1.6;
	font-weight: bold;
	text-align: center;
}

td.table-time{
	text-align: cetner;
	width:20%;
}


.dio-price .dio-table-junior th{
	background-color:#41A60D;
}

.dio-price .dio-table-junior tbody th{
	color:#000;
	font-weight: bold;
	background-color:#ccc;
	letter-spacing: 3px;
	width:25%;
}

.dio-hosoku{
	padding:30px;
	background-color: #f0f0f0;
	line-height: 2;
	margin-bottom: 60px;
	border-radius: 15px;
}

.dio-hosoku p{
	margin-bottom: 20px;
}


.dio-hosoku p:last-child{
	margin-bottom: 0;
}

.dio-hosoku ul{
	margin-bottom: 20px;
}

.dio-hosoku li{
	margin-bottom:5px;
}

.dio-hosoku li:last-child{
	margin-bottom:0;
}

.dio-hosoku span{
	color:#FF006E;
}

.dio-access  img{
	margin-bottom: 30px;
}

.dio-access iframe{
	margin-bottom: 30px;
}



/*dio-contact*//*dio-contact*//*dio-contact*//*dio-contact*//*dio-contact*//*dio-contact*//*dio-contact*//*dio-contact*/


.dio-contact table{
	width:100%;
	height: auto;
	margin-bottom: 50px;
}

.dio-contact table:last-child{
	margin-bottom: 30px;
}

.dio-contact th,.dio-contact td{
	padding:30px 20px;
	background-color:#f0f0f0;
	border:3px solid #fff;
	vertical-align: middle;
	font-size:clamp(16px,1vw,18px);
}


.dio-contact th span{
	font-size:80%;
	display: block;
	margin-top:8px;
	color:#FE9E00;
}

.dio-contact th{
	color:#fff;
	font-weight: bold;
	background-color:#002518;
	letter-spacing: 2px;
	width:30%;
}


.dio-contact td{
	line-height: 1.6;
	text-align: left;
}


	.dio-contact input[type="text"],.dio-contact input[type="email"]{
		width:100%;
		padding:20px;
		border-radius: 15px;
		background-color:#fff;
		border:none;
		font-size:24px;
	}

	.dio-contact input[type="tel"]{
		padding:20px;
		border-radius: 15px;
		background-color:#fff;
		border:none;
		font-size:24px;
	}

	.dio-contact input[type="number"]{
		padding:20px 0 20px 20px;
		font-size:24px;
		border-radius: 15px;
		background-color:#fff;
		border:none;
	}



	.dio-contact select{
		padding:20px;
		border-radius: 15px;
		background-color:#fff;
		border:none;
		font-size:20px;
	}
	.dio-contact textarea{
		width:100%;
		padding:20px;
		border-radius: 15px;
		background-color:#fff;
		border:none;
		font-size:20px;
	}

	.dio-contact-submit{
		text-align: center;
	}


.dio-contact-submit input[type="submit"],
	.dio-contact-submit input[type="reset"],
	.dio-contact-submit input[type="button"]{
		appearance: none;
		transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		background-color: transparent;
		border-radius: 15px;
		border: 0;
		color: #fff;
		background-color:#00A0FF;
		cursor: pointer;
		display: inline-block;
		font-size: 24px;
		font-weight: 800;
		letter-spacing: 3px;
		padding: 15px 80px;
		text-align: center;
		text-decoration: none;
		white-space: nowrap;
		margin:0 auto;
	}

	.dio-contact-submit input[type="submit"].dio-contact-back{
		background-color:#ccc;
		color:#000;
		margin-bottom: 30px;
	}

		.dio-contact-submit input[type="submit"]:hover
		{
			background-color: #50BEFF;
		}

			.dio-contact-submit input[type="submit"].dio-contact-back:hover{
		background-color:#888;
	}

	.dio-thanks{
		width:100%;
		text-align: center;
		
	}

	.dio-thanks span{
		display: block;
		margin-bottom: 20px;
		font-size:30px;
		font-weight:bold;
	}

	.dio-contact02 h5,.dio-error{
		font-size:20px;
		text-align: center;
		margin-bottom: 15px;
		padding:20px;
		display: block;
		background-color:#DBFF00;
		font-weight:bold;
		border-radius: 30px;
	}

	.re-pagenavi{
		width: 100%;
        text-align:center;
	}


.re-pagenavi .wp-pagenavi{
        margin:3vw;
        display:flex;
        flex-wrap:wrap;
    }

    .wp-pagenavi a, .wp-pagenavi span{
        padding:10px !important;
        border-radius:5px !important;
        display:block;

    }

    .wp-pagenavi a, .wp-pagenavi span{
        padding:10px 15px;
        
    }
    .wp-pagenavi span.current{
        background-color:#f0f0f0 !important;
    }

	.re-region-box{
		width:100%;
		height: auto;
		margin-bottom: 50px;
	}

	.re-region-box h3{
		padding:30px;
		background-color:#00A0E8;
		color:#fff;
		font-weight: bold;
		font-size:22px;
		margin-bottom: 20px;
	}

	.re-region-wrap{
		display: flex;
		flex-shrink: 0;
		flex-wrap: nowrap;
	}

	.re-region-img{
		width:30%;
	}

	.re-region-img img{
		width:100%;
	}

	.re-region-txt{
		width:70%;
		padding:0 20px;
		line-height: 1.8;
		font-size:16px;
	}

	.re-region-txt a{
		display: inline-block;
		margin:30px 0;
		padding:15px 30px;
		background-color:#00A0E8;
		color:#fff;
		font-weight: bold;
		font-size:16px;
		border-radius: 30px;
		transition:0.3s background-color ease;

	}
	.re-region-txt a:hover{
		background-color:#F2631D;
	}



/*モバイル*/
.pcon-bl{
	display: block;
}

.pcon-inbl{
	display: inline-block;
}


.smon-bl,.smon-inbl{
	display: none;
}

.jsk-product h4{
	border:none;
	text-align:center;
	display:block;
	margin:20px 0;
}


.jsk-product-wrap{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:30px;
}


.jsk-product-box{
	flex-basis:33%;
	padding:20px;
}

.jsk-productbox-img{
	width:100%;
	object-fit:fit;
	border:1px solid #ccc;
	background-color:#fff;
	padding:20px;
	margin-bottom:20px;
}

.jsk-product-box span{
	display:block;
	font-size:15px;
	margin-bottom:10px;
}


.jsk-product-box h5{
	display:block;
	font-size:18px;
	line-height:1.6;
	margin-bottom:10px;
}

.jsk-product-box p{
	font-size:12px;
	line-height:1.6;
	letter-spacing:1px;

}

.jsk-pro-bottom{
	border:1px solid #ccc;
	padding:20px;
	text-align:center;
	font-size:20px;
}

.jsk-pdf{
	margin-bottom:50px;
}

.jsk-pdf span{
	display:block;
	text-align:center;
	font-size:16px;
	margin-bottom:20px;
	line-height:1.5;
}

.jsk-pdf img{
	transition:0.2s all ease;
	opacity:1;
}

.jsk-pdf img:hover{
	opacity:0.8;
}


.jsk-menu-wrap{
	display:flex;
	padding:30px 3vw;
	justify-content:space-between;
}

.jsk-menu-wrap.page{
	padding:0 3vw 30px;
}

.jsk-menubox{
	flex-basis:33%;
	padding:10px;
}


.jsk-menu-wrap2{
	display:flex;
	padding:0 3vw 30px;
	justify-content:space-between;
}

.jsk-menubox2{
	flex-basis:50%;
	text-align:center;
	padding:10px;
}

.jsk-name{
	text-align:right;
	line-height:1.6;
	font-size:1.4vw;
}


.toyo-page-sec dl{
	display:flex;
	justify-content:space-between;
	margin-bottom:10px;
}


.toyo-page-sec dt{
	flex-basis:25%;
	padding:20px;
	border-bottom:2px solid #002518;
	line-height:1.6;
}


.toyo-page-sec dd{
	flex-basis:80%;
	padding:20px;
	line-height:1.6;
	border-bottom:2px solid #ccc;
}

p.center{
	text-align:center;
}


.jsk-recruitbox{
	margin-bottom:50px;
}

.shaze li{
	list-style:number;
	margin-bottom:15px;
	line-height:1.6;
}


/** YWP YWP YWP YWP YWP YWP YWP YWP YWP YWP YWP YWP YWP YWP **/


.ywp-h3{
	text-align:center;
font-size: 46px;
color: #002C4E;
letter-spacing: 2.17px;
padding-top:70px;
position:relative;
margin-bottom:35px;
}

.ywp-h3:before{
	content:'';
	width:60px;
	height:60px;
	background-size:60px 60px;
	xbackground-image:url(images/ywp-mark01.png);
    background-image:url(images/ywp-h3icon.svg);
	background-repeat: no-repeat;
	top:0;
	left:50%;
	transform:translateX(-50%);
	position:absolute;
}


.ywp-h3 span{
	display:block;
font-size: 16px;
color: #002C4E;
letter-spacing: 0.75px;
text-align: center;
margin-top:10px;
}

.ywp-top-pools{

		padding:3vw;
	background-color:#F1F8FF;
}

.ywp-top-pools.white{

		padding:3vw;
	background-color:#fff;
}

.ywp-top-pools ul{
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;

}



.ywp-top-pools li{
	padding:20px;
	text-align:center;
	margin-bottom:1.5vw;
}

.ywp-top-pools li img{
	margin-bottom:1.5vw;
}

.ywp-top-pools li h4{font-weight:bold;
    font-weight:700;
font-size:max(28px,2.4vw);
color: #002C4E;
letter-spacing: 5px;
margin-bottom:10px;
line-height: 1.3;
}

.ywp-top-pools li span{font-weight:bold;
    font-weight:700;
font-size:max(13px,1.1vw);
color: #2CAFC8;
letter-spacing: 4.39px;
text-align: center;
margin-bottom:1.5vw;
display:block;
}

.ywp-top-pools li p{
font-weight:bold;
font-weight:700;
font-size:max(15px,1.3vw);
color: #002C4E;
letter-spacing: 1.7px;
text-align: center;
line-height: 1.5;
margin-bottom:1vw;
}


a.link{
background: #000C7C;
  border-radius: 28px;
  padding:1.2vw 2vw;
  width: 100%;
  display: inline-flex; /* インラインフレックスボックスで表示 */
  align-items: center; /* 縦方向の中央揃え */
  justify-content: center; /* 水平方向の中央揃え */
font-weight:bold;
font-weight:700;
  font-size: max(16px, 1.4vw);
  color: #FFFFFF;
  letter-spacing: 2.04px;
  text-decoration: none;
  transition: 0.2s all ease;
  position: relative;
  white-space:nowrap;
}

a.link.inline{
	width:auto;
	padding:1.2vw 2vw;
}

a.link:before{
	content: '';
  width: 40px;
  height: 32px;
  background-size: 40px 32px;
  background-image: url(images/ywp-mark02.png);
  background-repeat: no-repeat;
  margin-right: 8px; /* テキストとの間にスペースを確保 */
  /* 中央揃えは親要素のalign-itemsで設定 */
}


a.link:hover{
	background-color:#0059D6;
}


.ywp-top-txtbox{
	font-size:max(16px,1.3vw);
	padding:20px;
	display:block;
	margin-bottom:40px;
	font-weight:bold;
	border:1px solid #979797;
	line-height:1.4;
	letter-spacing:2px;
	text-align:center;
}

.ywp-important {

}


.ywp-important h3{
	background-color:#FF005E;
	color:#fff;
	border-radius: 13px;
	text-align:center;
	font-weight:bold;
	font-size:max(18px,1.4vw);
	padding:15px;
	margin-bottom:30px;
	letter-spacing:3px;
	line-height:1.3;
}



.ywp-important-box{
background: #FFFFFF;
border: 1px solid #979797;
border-radius: 10px;
background: #fff;
padding:2vw;font-weight:bold;
font-weight:700;
font-size:max(16px,1.3vw);
color: #000000;
letter-spacing: 1.81px;
line-height:1.6;
margin-bottom:30px;
}

.ywp-important-box h4{
font-size:max(18px,1.4vw);
margin-bottom:1.3vw;
padding-left:3.2vw;
position:relative;
}

.ywp-important-box h4:before{
	content:'';
	width:2.6vw;
	height:2vw;
	background-size:2.6vw 2vw;
	background-image:url(images/ywp-mark03.png);
	background-repeat: no-repeat;
	top:50%;
	left:0;
	transform:translateY(-50%);
	position:absolute;

}

.ywp-important-box h4 span{
	margin-left:1.5em;
	display:inline-block;
	padding:5px 15px;
	border-radius:15px;
	background-color:#f0f0f0;
}

.ywp-emergency {
	background-color:#FCFB00;
	padding:2vw;
}


.ywp-emergency h3{
	background-color:#FF005E;
	color:#fff;
	border-radius: 13px;
	text-align:center;
	font-weight:bold;
	font-size:max(18px,1.4vw);
	padding:15px;
	margin-bottom:30px;
	letter-spacing:3px;
	line-height:1.3;
}



.ywp-emergency-box{
background: #FFFFFF;
border: 1px solid #979797;
border-radius: 10px;
background: #fff;
padding:2vw;font-weight:bold;
font-weight:700;
font-size:max(16px,1.3vw);
color: #000000;
letter-spacing: 1.81px;
line-height:1.6;
margin-bottom:30px;
}

.ywp-emergency-box h4{
font-size:max(18px,1.4vw);
margin-bottom:1.3vw;
padding-left:3.2vw;
position:relative;
color:#FF005E;
text-align:center;
}









.ywp-status {
    background-color: #00FFD5;
    padding: 10px;
    text-align: center;
font-weight:bold;
font-weight:700;
    line-height: max(22px,1.8vw);
    font-size: max(22px,1.8vw);
    letter-spacing: 0.8px;
    /* vertical-alignは不要、h3をflex化で揃えます */
}

.ywp-status h3 {
    display: inline-flex;
    font-weight:700;
    align-items: center; /* 垂直方向中央揃え */
    justify-content: center; /* 水平方向中央揃え */
    margin: 0; /* ブラウザデフォルトの余白をリセットする場合 */
}

.ywp-status h3 span {
    margin-left: 10px;
    font-weight:700;
    font-size: max(18px,1.6vw);
    /* line-heightは指定しないで、親要素(h3)のラインハイトに合わせる */
    /* vertical-alignやdisplayは指定しない */
}
.ywp-status.blue{
	background-color:#00FFD5;
}

.ywp-status.yellow{
	background-color:#FFBD33;
}


.ywp-status.red{
	background-color:#FF005E;
}








.ywp-news{
	display:flex;
}


.ywp-news-list{
	display:flex;
}


.ywp-news-closed{
	display:flex;
}

.cmn-title06,.cmn-title05,.cmn-title07{
	    overflow: hidden;
    font-size: max(20px, 1.8vw);
    color: #ffffff;
    background: none; 
    background-size: none;
    background-color: #02316F;
    text-align: left;
    padding: 10px 10px 10px 25px;
    margin-bottom: 30px;
    border-radius:15px;
}



#news ul li dl dt{
	width:100px;
}

#news ul li dl dd{
	margin-left:100px;
}


#news ul li dl dd span{
	margin-right:10px;
	display:inline-block;
	padding:10px;
	border-radius:25px;
	background-color:#8FC700;
	color:#fff;
}


.post-item {
    margin-bottom: 15px;
}

.post-content {
    display: flex;
    align-items: flex-start; /* 上揃えに設定 */
    gap: 10px; /* 各要素の間隔 */
}

/* 日付のスタイル */
.post-date {
    font-size: max(15px,0.9vw);
    font-weight:bold;
    color: #000;
    flex: 0 0 13%; /* 固定幅 */
    white-space: nowrap; /* 折り返さない */
}

/* カテゴリーのスタイル */
.post-category {
    background-color: #02316F; 
    color: #fff;
    font-size: max(12px,0.7vw);
    padding: 10px;
    font-weight: bold;
    border-radius: 5px;
    white-space: nowrap; /* 折り返さない */
    flex: 0 0 12%; /* 固定幅 */
    text-align:center;
    transform:translateY(-15%);
}

.post-category.news{
	background-color: #02316F; 
}

.post-category.event{
	background-color: #04C271; 
}

.post-category.school{
	background-color:#005BEF;
}


.post-category.fitness,.post-category.exercise{
    background-color:#A220CD;
}




.post-category.konan_important,.post-category.hodogaya_important,.post-category.kanazawa_important{
	background-color:#FF005E;
}


.post-category.konan_emergency,.post-category.hodogaya_emergency,.post-category.kanazawa_emergency{
    background-color:#FF0000;
}

.post-category.closed{
    background-color:#FFBD33;
    color:#000;
}

/* タイトルのスタイル */
.post-title {
    flex: 1 1 auto; /* 残りのスペースを使用 */
    min-width: 0; /* 折り返しのため必要 */

}

.post-title a {
    font-size: 16px;
    color: #333;
    text-decoration: none;
    word-wrap: break-word; /* 長い単語を折り返す */
    word-break: break-word; /* 必要に応じて単語内で改行 */
    display: block;
    line-height:1.4;
}

.post-title a:hover {
    text-decoration: underline;
}


#pool{
	background:none;
}

.wrapper{
	xpadding-top:40px;
}


.ywp-openinfo{
font-weight:bold;
font-weight:700;
font-size:max(36px,3vw);
padding:20px;
color: #002C4E;
letter-spacing: 4.55px;
text-align: center;
line-height: 1.5;
}

.ywp-table{
	border-collapse:collapse;
	width:100%;
	margin-bottom:35px;
}


.ywp-table th, .ywp-table td{
	padding:20px;
	border:1px solid #ccc;
	line-height:1.5;
	vertical-align:middle;
}

.ywp-table th{
	width:35%;
}

.facility{
	padding:0 8vw;
}


.ywp-center{
	text-align:center;
	margin-bottom:50px;
}

.notes-list{
	margin-left:1em;
}

.notes-list li{
	font-size:max(16px,1vw);
margin-bottom:15px;
list-style:disc;
line-height:1.5;
}

.notes-list li:last-child{
	margin-bottom:0;
}

.cmn-btn01{
    padding:20px 0;
}

.cmn-btn01 a{
    display:inline-block;
    padding:15px 20px;
    border-radius:30px;
    text-align:center;
    background-color:#02316F;
    color:#fff;
    font-size:max(16px, 1.1vw);
    font-weight:bold;
    text-decoration:none;
}
