@charset "UTF-8";
/* CSS Document */

/* 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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none outside none;}
table {border-collapse: collapse;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

html {overflow-y: scroll;}
body{
font:80%/1.5 "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","Meiryo","メイリオ",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
color:#000;
-webkit-text-size-adjust: 100%;
background:#fff;
}
html>/**/body {}
* + html body {font-family: "メイリオ","Meiryo";}

object, embed	{vertical-align: top;}
hr, legend	{display: none;}
img {-ms-interpolation-mode: bicubic; }
li	{list-style-type: none;}
p, dd, blockquote {text-align: justify;text-justify: inter-ideograph;}
a	{overflow: hidden;outline: none;}

strong {font-weight: bold;}
sub, sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* -------------------------------------------- */


/* Style -------------------------------------------- */

html {
    font-size: 62.5%;
}

body {
	color: #333;
	font-size: 1.6em;
	line-height: 1.7;
/*	background-color: #33c2ff;*/
    background-color: #c1edff;
}

a{
	margin: 0;
	padding: 0;
	text-decoration: none;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	color: #000;
	
	transition: all 0.2s linear;
}



/* --------------------------------------------------
  Structure
-------------------------------------------------- */

header.page, footer.page {
	clear: both;
	width: 100%;
	position: relative;
}





/* --------------------------------------------------
  Common
-------------------------------------------------- */

a.cmn,
a.ext,
a.pdf,
a.word,
a.excel,
a.file,
a.link{
    color: #1954dc;
    text-decoration: underline;
}
a.cmn:hover,
a.ext:hover,
a.pdf:hover,
a.word:hover,
a.excel:hover,
a.file:hover,
a.link:hover{
    text-decoration: none;
}


.cmnBtn{
    display: inline-block;
}
.cmnBtn a{
    box-sizing: border-box;
    display: inline-block;
    padding: 10px 30px;
    background-color: #1954dc;

    border-radius: 50px;
    font-size: 1.7rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.0;
    
    text-decoration: none;
	
	filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
}
.cmnBtn a::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f138";
    padding-right: 8px;
    font-size: 110%;
}
.cmnBtn a:hover {
    box-shadow: 0 0 12px rgba(0,0,0,0.2);
    background-color: #01319f;

	filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0.3));
    will-change: filter;
}
.cmnBtn.ct{
    width: 100%;
    text-align: center;
}
.cmnBtn.back a{
    background-color: #666;
}
.cmnBtn.back a::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f137";
    padding-right: 8px;
    font-size: 110%;
}

a.ext::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f35d";
    padding-right: 8px;
    font-size: 120%;
}
a.pdf::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	content: "\f1c1";
    padding-right: 8px;
    font-size: 120%;
}
a.word::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	content: "\f1c2";
    padding-right: 8px;
    font-size: 120%;
}
a.excel::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	content: "\f1c3";
    padding-right: 8px;
    font-size: 120%;
}
a.file::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	content: "\f15c";
    padding-right: 8px;
    font-size: 120%;
}
a.link::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f138";
    padding-right: 6px;
    font-size: 110%;
}


p{
    font-size: 1.7rem;
    line-height: 1.8;
}
p.ct{
    text-align: center;
}
p.rt{
    text-align: right;
}
p.note{
    font-size: 1.5rem;
    line-height: 1.6;
}
p.sNote{
    color: #e00;
}
p.pb{
    padding-bottom: 0.6em;
}
p.footnote{
    border-top: 1px solid #ccc;
    padding-top: 1em;
}
p.aDate{
    text-align: right;
    font-size: 1.5rem;
    line-height: 1.6;
    padding-bottom: 2.0rem;
}


p.registedInfo{
    box-sizing: border-box;
    padding: 20px 25px;
    background-color: #e4ecff;
    border-radius: 10px;
    
    font-weight: bold;
    color: #1954dc;
}


.lg1{
    font-size: 1.9rem;
}
.lg2{
    font-size: 2.0rem;
}

ul.cmn{
    list-style-type: disc;
    padding-left: 1.5em;
}
ul.cmn li{
    list-style-type: disc;
    font-size: 1.7rem;
    line-height: 1.6;
    padding-bottom: 0.6em;
}
ul.cmn.notice li{
    font-size: 1.4rem;
}
ul.cmn.lpb li{
    padding-bottom: 0.3em;
}
ul.cmn.npb li{
    padding-bottom: 0;
}
ul.il li{
    font-size: 1.7rem;
    line-height: 1.6;
    padding-bottom: 0.6em;
    
    padding-left: 2.6em;
    text-indent: -2.6em;
}
ul.il2 li{
    font-size: 1.7rem;
    line-height: 1.6;
    padding-bottom: 0.6em;
    
    padding-left: 1.8em;
    text-indent: -1.8em;
}
ul.lists li{
    padding-bottom: 0.8em;
}
ol{
    list-style-type: decimal;
    padding-left: 1.5em;
}
ol li{
    list-style-type: decimal;
    font-size: 1.7rem;
    line-height: 1.6;
    padding-bottom: 0.6em;
}

table.cmn,
.wp-block-table.cmn table{
    border-bottom: 1px solid #ddd;
}
table.cmn th,
table.cmn td,
.wp-block-table.cmn table th,
.wp-block-table.cmn table td{
	border: 0;
	border-top: 1px solid #ddd;
    vertical-align: top;
    padding: 10px 15px;
    
    font-size: 1.7rem;
    line-height: 1.6;
}
table.cmn th,
.wp-block-table.cmn table th{
    font-weight: bold;
    background-color: #eee;
}
table.cmn th.nr,
.wp-block-table.cmn table th.nr{
    white-space: nowrap;
}
.wp-block-table.cmn.fcnw table tr td:first-child{
    white-space: nowrap;
}

table.cmn td.price,
.wp-block-table.cmn table td.price{
    font-weight: bold;
}
table.cmn th.rHeader,
.wp-block-table.cmn table th.rHeader{
    font-weight: bold;
    background-color: transparent;
    padding: 15px 15px 5px 0;
}
table.cmn.labo tr.header th{
    background-color: #ffebfa;
    text-align: center;
}
table.cmn.labo th,
table.cmn.labo td{
    padding: 10px 10px;
    font-size: 1.5rem;
}
table.cmn.labo th.cat{
    font-weight: normal;
    white-space: nowrap;
}
table.cmn.labo td.no{
    text-align: center;
}
table.cmn.labo td.bundan{
    white-space: nowrap;
}
table.cmn.labo td.date{
    white-space: nowrap;
}
table.cmn.labo td.photo img{
    display: block;
    width: 100%;
    max-width: 120px;
    height: auto;
    
    border-radius: 3px;
}
table.cmn.pr tr.header th{
    background-color: #ffeaea;
    text-align: center;
}
table.cmn.pr th,
table.cmn.pr td{
    padding: 10px 10px;
    font-size: 1.5rem;
}
table.cmn.pr td.no{
    text-align: center;
}
table.cmn.pr td.date{
    white-space: nowrap;
}

table.cmn.info tr.header th{
    background-color: #f4edff;
    text-align: center;
}
table.cmn.info.app td.title,
table.cmn.info.app td.purpose{
    width: 35%;
}
table.cmn.info.app td.date{
    white-space: nowrap;
}

table.cmn.spaceEducation{
}
table.cmn.spaceEducation th.title{
    padding: 0;
}
table.cmn.spaceEducation th.title a{
    display: block;
    padding: 10px 15px;

    font-size: 120%;
    text-decoration: none;
    letter-spacing: 0.05em;
    font-weight: normal;
    line-height: 1.3;

    background-color: #ebf5ff;
}
table.cmn.spaceEducation th.title a:hover{
    background-color: #f5faff;
}
table.cmn.spaceEducation td.chapter{
    box-sizing: border-box;
    width: 80%;
    
    padding-left: 3.5rem;
    text-indent: -1.5rem;
    
    position: relative;
}
table.cmn.spaceEducation td.chapter::before{
    content: "・";
}
table.cmn.spaceEducation td.author{
    box-sizing: border-box;
    width: 20px;
    
    padding-right: 2rem;
    white-space: nowrap;
}


table.cmn.registProf{
    width: 100%;
    border-left: 1px solid #ddd;
    
    margin-top: 0.5em;
    margin-bottom: 10px;
}
table.cmn.registProf th,
table.cmn.registProf td{
    text-align: center;
    vertical-align: middle;
    font-size: 1.5rem;
}
table.cmn.registProf th{
    background-color: #f5f5f5;
    border-right: 1px solid #ddd;
}
table.cmn.registProf td{
    border-right: 1px solid #ddd;
}
table.cmn.registProf th.lv{
    box-sizing: border-box;
    text-align: left;
    
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 60px;
        
    position: relative;
}
table.cmn.registProf th.lv::before{
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    background-color: #fff;
    margin: 0 10px;
    border-radius: 5px;
    
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 35px auto;
}
table.cmn.registProf th.lv.lv1::before{
    background-image: url("img/icon_joinus_lv1.png");
}
table.cmn.registProf th.lv.lv2::before{
    background-image: url("img/icon_joinus_lv2.png");
}
table.cmn.registProf th.lv.lv3::before{
    background-image: url("img/icon_joinus_lv3.png");
}


.registConditions {
    box-sizing: border-box;
    width: 100%;
    height: 500px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #ccc;
    
    word-break: break-all;
    
    padding: 20px 5%;
    margin-bottom: 20px;
}
@media only screen and (max-width: 899px){
.registConditions {
    height: 450px;
}
}
@media only screen and (max-width: 699px){
.registConditions {
    height: 400px;
}
}
@media only screen and (max-width: 499px){
.registConditions {
    height: 350px;
}
}




.familyDiscount{
    width: 90%;
    max-width: 900px;
    
    background-color: #c1edff;
    border-radius: 5px;
        
    display: none;
}
.familyDiscount .box{
    box-sizing: border-box;
    width: 95%;
    margin: 40px auto;
    padding: 20px 3%;
    
    background-color: #fff;
    
    display: flex;
    flex-wrap: wrap;
}
.familyDiscount h3{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
.familyDiscount table{
    margin-top: 25px;
}
.familyDiscount table th{
    text-align: center;
}

.leaderPhoto{
    width: 90%;
    max-width: 900px;
    
    background-color: #c1edff;
    border-radius: 5px;
        
    display: none;
}
.leaderPhoto .box{
    box-sizing: border-box;
    width: 95%;
    margin: 40px auto;
    padding: 20px 3%;
    
    background-color: #fff;
    
    display: flex;
    flex-wrap: wrap;
}
.leaderPhoto h3{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
.leaderPhoto ul.image{
    width: 100%;
}
.leaderPhoto ul.image li{
    width: 100%;
    margin-top: 20px;
    line-height: 0;
}
.leaderPhoto ul.image li img{
    width: 100%;
    height: auto;
}

.fancybox-bg{
    background-color: rgba(0, 0, 0, 0.6);
}
.fancybox-slide--html{
    padding-top: 100px;
    padding-bottom: 80px;
}
.fancybox-content{
    padding: 0;
}




.cf:after{
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility:hidden;
    }

   .cf{display: inline-block;}


    * html .cf {height: 1%;}
       .cf{display:block;}



/* --------------------------------------------------
  Common Header
-------------------------------------------------- */


header.page {
	width: 100%;
	height: 80px;

	position: fixed;
	z-index: 300;
	
    /*
	background-image: url(img/bg_header.png);
	background-repeat: repeat-x;
	background-position: center top;
	background-size: auto 100%;
	*/
    
    background-color: rgba(193, 237, 255, 1.0);
	transition: all 0.2s linear;
}
header.page::before{
    content: "";
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 80px;
    border-top-width: 8px;
    border-top-style: solid;
    border-top-color: rgba(51, 194, 255, 1.0);
    border-bottom-width: 8px;
    border-bottom-style: solid;
    border-bottom-color: rgba(51, 194, 255, 1.0);
	transition: all 0.2s linear;
}
header.page::after{
    content: "";
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 8px;
    width: 100%;
    height: 64px;
    border-top-width: 4px;
    border-top-style: solid;
    border-top-color: rgba(150, 224, 255, 1.0);
    border-bottom-width: 4px;
    border-bottom-style: solid;
    border-bottom-color: rgba(150, 224, 255, 1.0);
	transition: all 0.2s linear;
}
header.page.home{
    background-color: rgba(193, 237, 255, 0);
}
header.page.home::before{
    border-top-color: rgba(51, 194, 255, 0);
    border-bottom-color: rgba(51, 194, 255, 0);
}
header.page.home::after{
    border-top-color: rgba(150, 224, 255, 0);
    border-bottom-color: rgba(150, 224, 255, 0);
}
header.page .content{
	width: 100%;
	height: 80px;
	margin: 0 auto;
	position: relative;
	z-index: 310;
	
	max-width: 1200px;
}

header.page #logo{
	width: 300px;
    height: 100%;
	line-height: 0;

    position: relative;
    z-index: 320;
	
	padding-left: 30px;
    
    display: flex;
    align-items: center;
    
    opacity: 1;
	transition: all 0.2s linear;
}
header.page #logo img{
	width: 100%;
	height: auto;
}
header.page.home #logo{
    opacity: 0;
}




/* --------------------------------------------------
  Contents
-------------------------------------------------- */

#contents{
    padding-top: 80px;
    position: relative;
    z-index: 1;
}
#contents.home{
    padding-top: 0;
}
#contents.subpage::before {
	content: "";
	background: url("img/bg_subpage.png") no-repeat center bottom;
	background-size: 1200px auto;
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}




/* --------------------------------------------------
  Home
-------------------------------------------------- */


#mainImage{
	width: 100%;
	height: 580px;
	position: relative;
	z-index: 2;
	
	overflow: hidden;
	
    background-color: #004471;
	background-image: url(../img/mainImage.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 580px;

/*	border-bottom: 1px solid #33c2ff*/
}
#mainImage.v2{
    height: auto;
	background-image: none;
}
#mainImage.v2 .imageArea{
	width: 100%;
	display: block;
	position: relative;
	z-index: 20;
	overflow: hidden;
	
	line-height: 0;
    
	background-image: url(../img/mainImage-home-bg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
}
#mainImage.v2 .imageArea::before{
	content:"";
	display: block;
	padding-top: 50%;
}
#mainImage.v2 .imageArea > img{
	display: block;
	width: auto;
	height: 100%;

	position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#mainImage.v2 .imageArea .item{
    box-sizing: border-box;
    position: absolute;
    z-index: 100;
    left: 0;
    top: 0;
    width: 18.67%;
    height: 100%;
    overflow: hidden;
    transform: skew(-12deg);

    animation-name: imageAnim;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    opacity: 0;
}

@keyframes imageAnim{
  0% {
    opacity: 0;
    margin-left: -30px;
  }

  100% {
    opacity: 1;
    margin-left: 0;
  }
}

#mainImage.v2 .imageArea .item img{
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%) skew(12deg);
}
#mainImage.v2 .imageArea .item#image01{
    width: 38%;
    left: 49.0%;
    z-index: 200;
    animation-delay: 0.5s;
}
#mainImage.v2 .imageArea .item#image02{
    left: 30.5%;
    z-index: 180;
    animation-delay: 1.0s;
}
#mainImage.v2 .imageArea .item#image03{
    left: 86.9%;
    z-index: 180;
    animation-delay: 1.0s;
}
#mainImage.v2 .imageArea .item#image04{
    left: 11.88%;
    z-index: 160;
    animation-delay: 1.5s;
}
#mainImage.v2 .imageArea .item#image05{
    left: -6.64%;
    z-index: 140;
    animation-delay: 2.0s;
}

#mainImage.v2 .logoBar{
	display: block;
	position: absolute;
    left: 0;
	z-index: 300;

    width: 52.5%;
    bottom: 15px;
	
	line-height: 0;

    animation-name: logoBarAmin;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    animation-delay: 2.5s;
    transform: translateX(-100%);
}

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

  100% {
    transform: translateX(0);
  }
}

#mainImage.v2 .logoBar img{
	width: 100%;
	height: auto;
}

#mainImage .entryBtn{
	box-sizing: border-box;
	width: 180px;
	
	position: absolute;
	z-index: 120;
	left: 10%;
	top: 30px;

	background-color: rgba(241, 150, 0, 0.88);
    
	border: 5px solid rgba(249, 126, 43, 0.88);
    border-radius: 10px;
    
    background-image: url("img/bg_entryBtn.png");
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 53px auto;
    
	transition: all 0.2s linear;
}
#mainImage .entryBtn a{
    box-sizing: border-box;
    display: block;
    
    width: 100%;
	padding: 25px 5px 45px;
    margin-bottom: 20px;
    
    text-align: center;
    
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    line-height: 1.3;
    
    background-image: url("img/bg_entryBtnLabel.png");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 62px auto;
}
#mainImage .entryBtn .label{
}
#mainImage .entryBtn:hover{
	background-color: rgba(241, 150, 0, 1);
	border: 5px solid rgba(255, 188, 144, 1);
}

#mainImage .mypageBtn{
	box-sizing: border-box;
	width: 170px;
	
	position: absolute;
	z-index: 120;
	left: 10%;
	top: 30px;

	background-color: rgba(25, 84, 220, 0.88);
    
	border: 4px solid rgba(0, 55, 181, 0.88);
    border-radius: 10px;
    
    background-image: url("img/bg_mypageBtn.png");
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 48px auto;
    
	transition: all 0.2s linear;
}
#mainImage.v2 .mypageBtn{
	left: 2%;
}
#mainImage .mypageBtn a{
    box-sizing: border-box;
    display: block;
    
    width: 100%;
	padding: 25px 5px 40px;
    margin-bottom: 20px;
    
    text-align: center;
    
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
    
    background-image: url("img/bg_mypageBtnLabel.png");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 62px auto;
}
#mainImage .mypageBtn .label{
}
#mainImage .mypageBtn:hover{
	background-color: rgba(0, 58, 196, 1);
	border: 4px solid rgba(78, 128, 244, 1);
}

#mainImage .progressBtn{
	box-sizing: border-box;
	width: 140px;
	
	position: absolute;
	z-index: 115;
	right: 10%;
	bottom: 30px;

	background-color: rgba(255, 255, 255, 0.88);
    
	border: 4px solid rgba(0, 85, 167, 0.88);
    border-radius: 10px;
    
	transition: all 0.2s linear;
}
#mainImage .progressBtn a{
    box-sizing: border-box;
    display: block;
    
    width: 100%;
	padding: 10px 5px;
    
    text-align: center;
    
    font-size: 1.5rem;
    font-weight: bold;
    color: #0055a7;
    line-height: 1.4;
}
#mainImage .progressBtn .label{
}
#mainImage .progressBtn:hover{
	background-color: rgba(0, 85, 167, 1);
	border: 4px solid rgba(34, 114, 190, 1);
}
#mainImage .progressBtn:hover a{
    color: #fff;
}


#information{
    width: 100%;
    position: relative;
    z-index: 100;
    
    background: url("img/bg_pickup.png") repeat-x center bottom;
    background-color: #a9e5fe;
}
#information .cBody{
/*    padding: 60px 0 40px;*/
    padding: 30px 0 20px;
    position: relative;
    z-index: 100;
    
    background: url("img/bg_wRocket.png") no-repeat left center;
}
#information h2{
    box-sizing: border-box;
    width: 94%;
    max-width: 1175px;
    margin: 0 auto;
    
    padding: 10px 20px;
    text-align: center;
    
    font-size: 2.2rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.0;
    
/*    background-color: #004095;*/
    background-color: #006894;
    border-radius: 8px;
    
	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.5));
    will-change: filter;

    margin-bottom: 25px;
}
#information ul.banner{
    box-sizing: border-box;
    width: 94%;
    max-width: 1175px;
    margin: 0 auto;
    
    padding-top: 15px;
    
    display: flex;
    flex-wrap: wrap;

    border-radius: 8px;
    
    background-color: #c1edff;
    
    margin-bottom: 20px;
}
#information ul.banner li{
    box-sizing: border-box;
    width: 100%;
    margin: 0 1% 15px;

    line-height: 0;
    text-align: center;
}
#information ul.banner li a{
    display: inline-block;
    line-height: 0;
}
#information ul.banner li a:hover{
    opacity: 0.8;
}
#information ul.banner li a img{
    width: 100%;
    height: auto;
}
#information ul.items{
    box-sizing: border-box;
    width: 95%;
    max-width: 1200px;
    margin: 0 auto;
    
    display: flex;
    flex-wrap: wrap;
}
#information ul.items li{
    box-sizing: border-box;
    width: 23%;
    margin: 0 1% 20px;
    
    background-color: #fff;

    border-radius: 8px;
	
/*	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.3));*/
	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.5));
    will-change: filter;
    
    display: flex;
    
    transition: all 0.5s linear;
}
#information ul.items li.tc{
    width: 48%;
}
#information ul.items li:hover{
    background-color: #edf9fe;
	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.8));
    will-change: filter;
}
#information ul.items li a{
    display: block;
    width: 100%;
}
#information ul.items li .image,
#information ul.items li .tcimage{
    width: 100%;
	display: block;
	position: relative;
	z-index: 20;
	overflow: hidden;
	
	line-height: 0;
	
	border-radius: 8px 8px 0 0;
}
#information ul.items li .image:before{
	content:"";
	display: block;
	padding-top: 56%;
}
#information ul.items li .tcimage:before{
	content:"";
	display: block;
	padding-top: 26.8%;
}
#information ul.items li .tcimage{
    display: none;
}
#information ul.items li.tc .tcimage{
    display: block;
}
#information ul.items li.tc .image{
    display: none;
}
#information ul.items li .image img,
#information ul.items li .tcimage img{
	display: block;
	width: 100%;
	height: auto;

	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
    
    transition: all 0.2s linear;
}
#information ul.items li:hover .image img{
	transform: scale(1.1);
}
#information ul.items li:hover .tcimage img{
	transform: scale(1.05);
}

#information ul.items li .content{
    box-sizing: border-box;
    display: block;
    width: 84%;
    margin: 0 auto;
    
    padding: 20px 0;
}
#information ul.items li.tc .content{
    width: 90%;
}
#information ul.items li .title{
    display: block;
    font-size: 2.0rem;
    line-height: 1.3;
    
    margin-bottom: 15px;
}
#information ul.items li .desc{
    display: block;
    font-size: 1.6rem;
    line-height: 1.6;
    
    margin-bottom: 15px;
}
#information ul.items li .linkItem{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.3;
    color: #1954dc;
    
    padding-left: 1.3em;
    text-indent: -1.3em;
}
#information ul.items li .linkItem::before{
    content: "\f138";
    font-family: "Font Awesome 5 Free";
    padding-right: 0.3em;
}
#information ul.items li .linkItem.ext::before{
    content: "\f35d";
    font-family: "Font Awesome 5 Free";
    padding-right: 0.3em;
}
#information ul.items li:hover .linkItem{
    text-decoration: underline;
}



.newsArea{
    width: 100%;
    position: relative;
    z-index: 100;
    
    background: url("img/bg_earth.png") no-repeat right center;
    background-color: #2a87ad;
}
.newsArea .cBody{
    width: 93%;
    max-width: 1200px;
    margin: 0 auto;
    
    position: relative;
    z-index: 101;
    
/*    padding: 60px 0 40px;*/
    padding: 30px 0 30px;
}

.newsArea.ev{
    background-color: #c1edff;
    background-image: none;
/*    background-color: #33c2ff;*/
    position: relative;
    z-index: 100;
    padding-bottom: 1px;

/*background: rgb(51,194,255);
background: linear-gradient(90deg, rgba(51,194,255,1) 0%, rgba(99,208,255,1) 50%, rgba(51,194,255,1) 100%);*/
}
.newsArea.ev .cBody{
    padding: 20px 0 0;
    position: relative;
    z-index: 101;
}



.newsArea .box{
    box-sizing: border-box;
    width: 100%;
    max-width: 1175px;
    margin: 0 auto;
    background-color: #fff;
    
    border-radius: 8px;
    margin-bottom: 30px;
    
    padding-bottom: 20px;

	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.5));
    will-change: filter;
}
.newsArea .box .bodyArea{
    box-sizing: border-box;
    width: 90%;
    margin: 0 auto;
    
    padding: 25px 0 15px;
}
.newsArea .box .bodyAreaSub{
    box-sizing: border-box;
    width: 90%;
    margin: 0 auto;
    
    padding: 10px 0 5px;
}
.newsArea .subbox{
    padding-bottom: 20px;
}
.newsArea .subbox:last-child{
    padding-bottom: 10px;
}
.newsArea .box h2{
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    
    padding: 12px 20px;
    
    font-size: 2.0rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.0;
    
    background-color: #e0e0e0;

    border-radius: 8px 8px 0 0;
    
    margin-bottom: 10px;
}
.newsArea .box h3{
    font-size: 2.0rem;
    font-weight: bold;
    color: #1954dc;
    line-height: 1.3;

    text-align: center;
    
    margin-bottom: 15px;
}


.newsArea .box.supporters{
    background-color: #eaeff8;    
    padding-bottom: 20px;

    margin-bottom: 60px;
}
.newsArea .box.supporters h2{    
    padding: 8px 20px;
    
    font-size: 1.5rem;
    color: #fff;
    background-color: #1954dc;
}

.newsArea .box.pickup{
    background-color: #fff;
}
.newsArea .box.pickup h2{
    background-color: #f9c100;
}

.newsArea .box.whatsnew{
/*    background-color: #e2ecff;*/
    background-color: #f5eeff;
}
.newsArea .box.whatsnew h2{
/*    background-color: #1954dc;*/
    background-color: #702ed5;
}

.newsArea .box.events{
    background-color: #dbfbff;
}
.newsArea .box.events h2{
    background-color: #008494;
}

.newsArea .box.branch{
    background-color: #e5f9dd;
}
.newsArea .box.branch h2{
    background-color: #51d519;
}
.newsArea .box.branch .content{
    box-sizing: border-box;
    width: 95%;
    margin: 0 auto;
    
    padding: 20px 0 0;
}
.newsArea .box.branch h3{
    box-sizing: border-box;
    width: 100%;
    
    padding: 8px 15px;
    font-size: 2.0rem;
    font-weight: bold;
    color: #20550a;
    line-height: 1.0;

    background-color: #c3f4af;
    text-align: center;
    border-radius: 5px;
    
    margin-bottom: 10px;
}

.newsArea .box table{
    width: 95%;
    margin: 0 auto;
}
.newsArea .box.branch .content table{
    width: 98%;
}
.newsArea .box th{
    padding: 3px 20px 3px 0;
    font-size: 1.7rem;

    width: 15%;
    white-space: nowrap;
}
.newsArea .box td{
    padding: 5px 0;
    font-size: 1.7rem;
}
.newsArea .box td a{
    color: #1954dc;
    text-decoration: underline;
}
.newsArea .box td a:hover{
    text-decoration: none;
}
.newsArea .box td .note{
    font-size: 1.6rem;
}
.newsArea .box table.divline tr th,
.newsArea .box table.divline tr td{
    border-top: 1px dotted #ccc;
}
.newsArea .box table.divline tr:first-child th,
.newsArea .box table.divline tr:first-child td{
    border-top: none;
}
.newsArea .box td .cat{
    box-sizing: border-box;
    display: inline-block;
    width: 6em;
    padding: 3px 0;
    font-size: 1.5rem;
    text-align: center;
    line-height: 1.0;
    color: #fff;
    white-space: nowrap;
/*    background-color: #1e2678;*/
    background-color: #5925aa;
    border-radius: 5px;
    
    margin-right: 12px;
}
.newsArea .box.whatsnew td .cat{
    width: auto;
    min-width: 6em;
    padding: 3px 8px;
}
/*
.newsArea .box td .cat.yac{
    background-color: #1e2678;
}
.newsArea .box td .cat.coop{
    background-color: #007c0f;
}
.newsArea .box td .cat.info{
    background-color: #702ed5;
}
.newsArea .box td .cat.update{
    background-color: #009fff;
}
.newsArea .box td .cat.kawaraban{
    background-color: #ff322e;
}
*/

#information .more,
.newsArea .box .more{
    text-align: center;
    padding: 10px 0 0;
}
#information .more .cmnBtn a{
    background-color: #006894;
}
.newsArea .box.whatsnew .more .cmnBtn a{
/*    background-color: #1954dc;*/
    background-color: #702ed5;
}
.newsArea .box.branch .more .cmnBtn a{
    background-color: #38bb00;
}


.newsArea .box.advertisement{
    background-color: #fff;    
    padding-bottom: 20px;
    
    border-radius: 0;
    
	filter: none;
    will-change: filter;
    
}
.newsArea .box.advertisement h2{    
    padding: 8px 20px;
    
    font-size: 1.5rem;
    color: #666;
    background-color: #fff;
}

.newsArea .box.advertisement ul{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.newsArea .box.advertisement ul li{
    width: 300px;
    margin: 10px 20px 10px;
    line-height: 0;
}
.newsArea .box.advertisement ul li a{
	display: block;
	width: 100%;
}
.newsArea .box.advertisement ul li img{
	width: 100%;
	height: auto;
}




/* --------------------------------------------------
  Subpage
-------------------------------------------------- */

#subpageMainImage{
	width: 100%;
	height: 250px;
	position: relative;
	z-index: 100;
	
	overflow: hidden;
	
    background-color: #33c2ff;
	
	background-repeat: no-repeat;
    background-position: center center;
	background-size: cover;
    
    padding-bottom: 0.5rem;

	border-bottom: 5px solid #33c2ff
}
#subpageMainImage.noBB{
    border-bottom: none;
}
#subpageMainImage .SL{
    width: 100%;
    height: 100%;
    position: relative;
	z-index: 110;
    background-image: url("img/ImageSL.png");
    background-repeat: repeat;
    background-position: center center;

    padding-bottom: 0.5rem;
}
#subpageMainImageFW{
	width: 100%;
    
    position: relative;
	z-index: 100;
	
    background-color: #33c2ff;
	line-height: 0;
    
	border-bottom: 5px solid #33c2ff
}
#subpageMainImageFW img{
    width: 100%;
    height: auto;
}
#subpageMainImageLW{
	width: 95%;
    max-width: 1200px;
    margin: 0 auto;
    
    position: relative;
	z-index: 100;
	
	overflow: hidden;
	
    background-color: #33c2ff;
	line-height: 0;

    border-radius: 0 0 5px 5px;
    
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
}
#subpageMainImageLW img{
    width: 100%;
    height: auto;
}

.categoryTitle{
    width: 100%;
    position: relative;
    z-index: 120;
    
    margin-top: -140px;
    padding-top: 125px;
    
    text-align: center;
    
/*    background-image: url("img/ch.png");*/
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 130px auto;
}
.categoryTitle.catIndex{
    margin-top: -120px;
    padding-top: 105px;
}
.categoryTitle.textonly{
    margin-top: -100px;
}
.categoryTitle .cname{
    display: inline-block;
    
    font-size: 1.5rem;
    color: #fff;
    letter-spacing: 0.1em;
    line-height: 1.0;
    
    padding: 6px 25px;
    border-radius: 15px;
    
    background-color: #04394f;
    
    margin-bottom: 15px;
}
.categoryTitle.none .cname{
    background-color: transparent;
}
.categoryTitle.catIndex .cname{
    margin-top: 45px;
    font-size: 2.5rem;
    font-weight: bold;
    letter-spacing: 0.2em;
    padding: 12px 50px;
    border-radius: 30px;
}
.categoryTitle.aboutus{
    background-image: url("img/ch_aboutus.png");
}
.categoryTitle.aboutus .cname{
    background-color: #1954dc;
}
.categoryTitle.joinus{
    background-image: url("img/ch_joinus.png");
}
.categoryTitle.joinus .cname{
    background-color: #f27719;
}
.categoryTitle.labo{
    background-image: url("img/ch_labo.png");
}
.categoryTitle.labo .cname{
    background-color: #f44ec7;
}
.categoryTitle.pr{
    background-image: url("img/ch_pr.png");
}
.categoryTitle.pr .cname{
    background-color: #ff322e;
}
.categoryTitle.activity{
    background-image: url("img/ch_activity.png");
}
.categoryTitle.activity .cname{
    background-color: #51d519;
}
.categoryTitle.info{
    background-image: url("img/ch_info.png");
}
.categoryTitle.info .cname{
    background-color: #702ed5;
}
.categoryTitle.noicon{
    background-image: none;
}
.categoryTitle.page .cname{
    background-color: #00c4ce;
}
.categoryTitle.available .cname{
    background-color: #008494;
}
.categoryTitle.pickup .cname{
    background-color: #f9c100;
}


#subIndex{
	width: 100%;
	padding: 20px 0 50px;
	
	position: relative;
	z-index: 20;
}

#subIndex ul{
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;

	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#subIndex li{
	width: 31%;
    margin: 0 1%;
	
	margin-bottom: 20px;
	
	background-color: #1954dc;
	
	border-radius: 8px;
}
#subIndex ul.noimage li{
    text-align: center;
}
#subIndex ul.aboutus li{
	background-color: #1954dc;
}
#subIndex ul.joinus li{
    background-color: #f27719;
}
#subIndex ul.labo li{
    background-color: #f44ec7;
}
#subIndex ul.pr li{
    background-color: #ff322e;
}
#subIndex ul.info li{
    background-color: #702ed5;
}

#subIndex li a{
	display: block;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.3;
	
	color: #fff;
}
#subIndex li .photo{
	display: block;
	position: relative;

	width: 100%;
	overflow:hidden;
	
	line-height: 0;

	border-radius: 10px 10px 0 0;
}
#subIndex li .photo:before {
	content:"";
	display: block;
	padding-top: 60%;
}

#subIndex li .photo img{
	display: block;
	width: 100%;
	height: auto;

	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;

	transition: all 0.3s linear;
}
#subIndex li .photo img:hover{
	transform: scale(1.1);
}
#subIndex li .text{
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 20px 25px;

	font-size: 1.8rem;
	line-height: 1.3;
}
#subIndex li .text .desc{
	font-size: 1.6rem;
}


.breadcrumb{
    box-sizing: border-box;

    width: 95%;
    max-width: 1200px;
    margin: 0 auto;
}
.breadcrumb ul {
    display: inline-block;
    padding: 2px 15px 4px 10px;

    line-height: 1.3;
    border-radius: 5px 5px 0 0;
    background-color: rgba(255, 255, 255, 0.5);
}
.breadcrumb ul li {
    font-size: 1.3rem;
    display: inline-block;
}
.breadcrumb ul li:not(:last-child)::after {
    content: ">";
    margin: 0 0.5em;
}
.breadcrumb ul li a{
    text-decoration: none;
}
.breadcrumb ul li a:hover{
    text-decoration: underline;
}

.breadcrumb ul .home::before{
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\e3af";
    margin-right: 5px;
    color: #04394f;
}
.breadcrumb.aboutus ul .home::before{
    color: #1954dc;
}
.breadcrumb.joinus ul .home::before{
    color: #f27719;
}
.breadcrumb.labo ul .home::before{
    color: #f44ec7;
}
.breadcrumb.pr ul .home::before{
    color: #ff322e;
}
.breadcrumb.activity ul .home::before{
    color: #51d519;
}
.breadcrumb.info ul .home::before{
    color: #702ed5;
}
.breadcrumb.page ul .home::before{
    color: #00c4ce;
}
.breadcrumb.available ul .home::before{
    color: #008494;
}
.breadcrumb.pickup ul .home::before{
    color: #f9c100;
}



.subpageBody{
    width: 95%;
    max-width: 1200px;
    margin: 0 auto;
    
    padding: 60px 0 30px;
    border-radius: 5px;
    background-color: #fff;
    
    margin-bottom: 50px;
    
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
    
    position: relative;
}
.subpageBody h1,
.subpageTC .pageBody > h1{
    text-align: center;
    margin-bottom: 50px;
}
.subpageBody h1 .title,
.subpageTC .pageBody > h1 .title{
    box-sizing: border-box;
    max-width: 90%;
    
    display: inline-block;
    padding: 0 20px 10px;
    
    font-size: 2.8rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.3;
}
.subpageTC .pageBody > h1.article .title{
    max-width: 100%;
    font-size: 2.4rem;
    padding: 0 0 10px;
}
.subpageBody h1 .title::after,
.subpageTC .pageBody > h1 .title::after{
    content: "";
    display: block;
    width: 110%;
    height: 5px;
    border-radius: 3px;
    margin-top: 5px;
    margin-left: -5%;
    background-color: #04394f;
}
.subpageBody.aboutus h1 .title::after,
.subpageTC.aboutus .pageBody > h1 .title::after{
    background-color: #1954dc;
}
.subpageBody.joinus h1 .title::after,
.subpageTC.joinus .pageBody > h1 .title::after{
    background-color: #f27719;
}
.subpageBody.labo h1 .title::after,
.subpageTC.labo .pageBody > h1 .title::after{
    background-color: #f44ec7;
}
.subpageBody.pr h1 .title::after,
.subpageTC.pr .pageBody > h1 .title::after{
    background-color: #ff322e;
}
.subpageBody.activity h1 .title::after,
.subpageTC.activity .pageBody > h1 .title::after{
    background-color: #51d519;
}
.subpageBody.info h1 .title::after,
.subpageTC.info .pageBody > h1 .title::after{
    background-color: #702ed5;
}
.subpageBody.page h1 .title::after,
.subpageTC.page .pageBody > h1 .title::after{
    background-color: #00c4ce;
}
.subpageBody.available h1 .title::after,
.subpageTC.available .pageBody > h1 .title::after{
    background-color: #008494;
}
.subpageBody.pickup h1 .title::after,
.subpageTC.pickup .pageBody > h1 .title::after{
    background-color: #f9c100;
}

.subpageBody h2{
    clear: both;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
    
    padding: 8px 20px;

    font-size: 2.4rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.3;
/*    color: #04394f;*/
    color: #333;
    
/*    background-color: #e4f7ff;*/
    background-color: #f2f2f2;
}
.subpageBody > h3{
    width: 85%;
    margin: 0 auto;
}
.subpageBody h3{
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.3;
    
    margin-bottom: 18px;
}
.subpageBody h3.bb{
    text-align: center;
    border-bottom: 1px solid #333;
    margin-bottom: 26px;
}
.subpageBody h3.ct{
    text-align: center;
}
.subpageBody > h4{
    width: 85%;
    margin: 0 auto;
}
.subpageBody h4{
    font-size: 1.9rem;
    font-weight: bold;

    margin-bottom: 12px;
}
.subpageBody h4.ct{
    text-align: center;
}

.subpageBody.basic > p,
.subpageBody.basic > ul,
.subpageBody.basic > table,
.subpageBody.basic > div.row,
.subpageBody.basic > div.importBody,
.subpageBody.basic > form{
    box-sizing: border-box;
    width: 85%;
    margin: 0 auto;
}

.subpageBody .imageR30{
    width: 30%;
    float: right;
    margin-left: 30px;
    margin-bottom: 30px;
}
.subpageBody .imageR30 img{
    display: block;
    width: 100%;
    height: auto;
    
    border-radius: 5px 0 0 5px;
}
.subpageBody .leadCopy{
    font-weight: bold;
    text-align: center;
}
.subpageBody .leadCopy2{
    font-weight: bold;
}


ul.ambassador{
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
    
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
ul.ambassador li{
    width: 21%;
    margin: 0 2% 40px;
}
ul.ambassador li .image{
    line-height: 0;
}
ul.ambassador li .image img{
    width: 100%;
    height: auto;
}
ul.ambassador li p{
    text-align: center;
}
ul.ambassador li .copyright{
    box-sizing: border-box;
    font-size: 1.0rem;
    text-align: right;
    line-height: 1.0;
    background-color: #f5f5f5;
    padding: 2px 3px;
    margin-bottom: 18px;
}
ul.ambassador li .name{
    font-weight: bold;
    line-height: 1.3;
}

.messageFromAmbassador{
    width: 95%;
    max-width: 1000px;
    margin: 0 auto;
    
    background-color: #fdf8e5;
    border-radius: 30px;
    padding: 40px 0;
    
    margin-bottom: 30px;
}
.messageFromAmbassador p{
    box-sizing: border-box;
    width: 85%;
    margin: 0 auto;
}
.messageFromAmbassador .name{
    text-align: right;
}


.contactInfo{
    width: 100%;
    display: flex;
    justify-content: center;
}
.contactInfo .text{
    white-space: nowrap;
}


.entryStep{
    box-sizing: border-box;
    width: 95%;
    max-width: 1050px;
    margin: 0 auto;
    
    background-color: #fff0e6;
    border-radius: 30px;
    padding: 0 0 40px;
    
    margin-bottom: 30px;
}
.entryStep h3{
    
    background-color: #ffe1cb;
    border-radius: 30px 30px 0 0;
    
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    
    margin-bottom: 20px;
}

.entryStep h3 .num{
    box-sizing: border-box;
    display: block;
    width: 40px;
    height: 40px;
    background-color: #f27719;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 1.0;
    font-size: 2.0rem;
    padding: 10px 0;
    border-radius: 25px;
    
    margin: 5px 10px;
}
.entryStep h3 .title{
    color: #b74f00;
    font-weight: bold;
    font-size: 1.8rem;
}

.entryStep p{
    box-sizing: border-box;
    width: 85%;
    margin: 0 auto;
}

.entryStep .link{
    width: 90%;
    margin: 0 auto;
    text-align: center;
}
.cmnBtn.entry a{
    padding: 15px 40px;
    background-color: #f27719;
}
.subpageBody.basic .entryStep p{
    width: 90%;
}
.entryStep p a{
    color: #b74f00;
}


ul.teaser{
    display: flex;
    flex-wrap: wrap;
}
ul.teaser > li{
    width: calc(94%/3);
    margin-right: 3%;
    
    margin-bottom: 40px;
}
ul.teaser > li:nth-child(3n){
    margin-right: 0;
}
ul.teaser.qt > li{
    width: calc(91%/4);
    margin-right: 3%;
}
ul.teaser.qt > li:nth-child(4n){
    margin-right: 0;
}
ul.teaser > li .image{
    width: 100%;
    line-height: 0;
    text-align: center;
    margin-bottom: 20px;
}
ul.teaser > li .image img{
    display: inline-block;
    
    width: 100%;
    height: auto;
    
    border-radius: 5px;
}
ul.teaser.cover > li .image img{
    max-width: 300px;
}
ul.teaser ul.cmn li,
ul.teaser ol li{
    padding-bottom: 0.4rem;
}

ul.teaser.acList > li{
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;

    margin-bottom: 60px;
}
ul.teaser.acList > li .upper,
ul.teaser.acList > li .lower{
    width: 100%;
}


ul.iLink{
}
ul.iLink li{
    width: 100%;
    border-bottom: 1px solid #ddd;
}
ul.iLink li:first-child{
    border-top: 1px solid #ddd;
}
ul.iLink li a{
    width: 100%;
    padding: 10px 0;

    display: flex;
    justify-content: space-between;
    align-content: center;
    align-items: center;
}
ul.iLink li a:hover{
    background-color: #f5f5f5;
}
ul.iLink li .image{
    box-sizing: border-box;
    display: block;
    width: 8%;
    padding-left: 1%;
    line-height: 0;
}
ul.iLink li .image img{
    display: block;
    width: 100%;
    height: auto;
    border-radius: 5px;
}
ul.iLink li .text{
    display: block;
    width: 90%;
}
ul.iLink li .text::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f138";
    padding-right: 8px;
    font-size: 110%;
}

ul.iLink.pr li .text{
    color: #ff322e;
    font-weight: bold;
}
ul.iLink.pr li .text::before {
}


.row.lImg,
.row.lhImg,
.row.lfImg{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.row.lImg .image,
.row.lfImg .image{
    width: 28%;
    text-align: center;
}
.row.lImg .text,
.row.lfImg .text{
    width: 68%;
}
.row.lhImg .image{
    width: 48%;
    text-align: center;
}
.row.lhImg .text{
    width: 48%;
}
.row.lImg .image img,
.row.lhImg .image img,
.row.lfImg .image img{
    display: inline-block;
    width: 100%;
    height: auto;
    border-radius: 5px;
}
.row.lImg.cover .image img{
    max-width: 300px;
}


.ctBanner{
    width: 90%;
    margin: 0 auto;
    text-align: center;
}
.ctBanner img{
    display: inline-block;
    max-width: 100%;
    height: auto;
}


.importBody p{
    padding-bottom: 1.5rem;
}
.importBody a{
    color: #1954dc;
    text-decoration: underline;
}
.importBody a:hover{
    text-decoration: none;
}
.importBody img{
    max-width: 100%;
    height: auto;
}
.importBody iframe{
    max-width: 100%;
}
.importBody video{
    max-width: 100%;
}

.importBody .image_left{
    float: left;
    margin: 10px 30px 30px 0;
}
.importBody .image_right{
    float: right;
    margin: 10px 0 30px 30px;
}
.importBody .image_left,
.importBody .image_right{
    max-width: 30%;
}
.importBody .image_left img,
.importBody .image_right img{
    width: 100%!important;
    height: auto!important;
}
.importBody .image_left .caption,
.importBody .image_right .caption{
    font-size: 90%;
}
br.clear{
    clear: both;
}
.importBody .adjust_center{
    width: 100%;
    display: flex;
    justify-content: center;
}
.importBody .adjust_center .image_left,
.importBody .adjust_center .image_right{
    max-width: 48%;
    float: none;
    margin: 10px 1% 30px;
}
.importBody .o_name{
    font-weight: bold;
    color: #f27719;
}
.importBody .article_intro_pb{
    clear: both;
    margin-top: 50px;
    border-top: 1px dotted #f27719;
    padding-top: 20px;
}




.tabArea {
    width: 100%;
}

.tabItem {
    width: 25%;
    height: 60px;

    float: left;
    transition: all 0.2s ease;
    box-sizing: border-box;
    
    cursor: pointer;
    
    background-color: #e0fada;

    padding: 10px 10px;

    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    
}
.tabItem .text{
    font-size: 1.8rem;
    line-height: 1.2;
}
.tabItem:hover {
    background-color: #51d519;
    
    font-weight: bold;
    color: #fff;
}
input[name="tabItem"] {
    display: none;
}
.tabContent{
    display: none;
    clear: both;
    overflow: hidden;

    border-top-width: 10px;
    border-top-style: solid;
    border-top-color: #51d519;
    position: relative;
    
    box-sizing: border-box;
    padding: 40px 7.5% 30px;
}
.tabContent::after {
    content: "";
    position: absolute;

    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 30px 0 30px;
    border-color: #51d519 transparent transparent transparent;
}
.tabContent#c01Content::after {
    left: 10%;
}
.tabContent#c02Content::after {
    left: 35%;
}
.tabContent#c03Content::after {
    left: 60%;
}
.tabContent#c04Content::after {
    left: 85%;
}
#c01:checked ~ #c01Content,
#c02:checked ~ #c02Content,
#c03:checked ~ #c03Content,
#c04:checked ~ #c04Content{
    display: block;
}
.tabArea input:checked + .tabItem{
    background-color: #51d519;
    
    font-weight: bold;
    color: #fff;
}
.tabItem .text::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f13a";
    padding-right: 5px;
    font-size: 100%;
}
.tabArea input:checked + .tabItem .text::before{
    content: "";
    padding-right: 0;
}

.subpageBody .tabContent h2{
/*    background-color: #e0fada;*/
    background-color: #f2f2f2;
    border-radius: 30px;
}
.subpageBody .tabContent h2 .title{
    font-size: 90%;
}


.subpageBody.basic > ul.linkTabs{
    width: 100%;
    height: 70px;
    
    display: flex;
    
    margin-bottom: 50px;
}
ul.linkTabs li{
    box-sizing: border-box;
    width: 25%;
    height: 100%;

    background-color: #e0fada;
    border-bottom: 10px solid #51d519;
    position: relative;

	transition: background-color 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
ul.linkTabs li a{
    box-sizing: border-box;
    width: 100%;
    height: 100%;

    padding: 10px 10px;

    display: flex;
    justify-content: center;
    align-items: center;

	transition: color 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
ul.linkTabs li a .txt{
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.2;
}
ul.linkTabs li a .txt::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f13a";
    padding-right: 5px;
    font-size: 100%;
}
ul.linkTabs li:hover,
ul.linkTabs li.current{
    background-color: #51d519;
}
ul.linkTabs li:hover a,
ul.linkTabs li.current a{
    font-weight: bold;
    color: #fff;
}
ul.linkTabs li.current::after {
    content: "";
    position: absolute;
    
    bottom: -30px;

    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);

    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 30px 0 30px;
    border-color: #51d519 transparent transparent transparent;
}


ul.activityList{
}
ul.activityList li{
    width: 100%;
    border-bottom: 1px solid #ddd;
}
ul.activityList li:first-child{
    border-top: 1px solid #ddd;
}
ul.activityList li a{
    width: 100%;
    padding: 10px 0;

    display: flex;
    justify-content: space-between;
    align-content: center;
    align-items: center;
}
ul.activityList li a:hover{
    background-color: #f5f5f5;
}
ul.activityList li .image{
    box-sizing: border-box;
    display: block;
    width: 8%;
    padding-left: 1%;
    line-height: 0;
}
ul.activityList li .image img{
    display: block;
    width: 100%;
    height: 5.7vw;
    max-height: 71px;
    border-radius: 5px;
    
    object-fit: cover;
}
ul.activityList li .text{
    display: block;
    width: 90%;
    line-height: 1.3;
}
ul.activityList li .date{
    display: block;
    padding-left: 3.0rem;
    font-size: 1.6rem;
    font-weight: bold;
    padding-bottom: 0.5rem;
}
ul.activityList li .title{
    display: block;
    padding-left: 3.0rem;
    text-indent: -3.0rem;
    font-size: 1.9rem;
    color: #51d519;
    font-weight: bold;
    padding-bottom: 0.5rem;
}
ul.activityList li .group{
    display: block;
    padding-left: 3.0rem;
    font-size: 1.5rem;
}
ul.activityList li .title::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f138";
    padding-right: 8px;
    font-size: 110%;
}


ul.grouplist{
    display: flex;
    flex-wrap: wrap;
}
ul.grouplist > li{
    width: calc(94%/3);
    margin-right: 3%;
    
    margin-bottom: 40px;
}
ul.grouplist > li:nth-child(3n){
    margin-right: 0;
}
ul.grouplist .pref{
    display: block;
    border-bottom: 1px solid #51d519;
    font-size: 1.9rem;
    font-weight: bold;
    margin-bottom: 1.0rem;
}
ul.grouplist > li > ul > li{
    font-size: 1.7rem;
    line-height: 1.3;
    padding-bottom: 0.5em;
}
ul.grouplist a{
    color: #51d519;
    font-weight: bold;
}
ul.grouplist a::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f138";
    padding-right: 8px;
    font-size: 110%;
}


.activityDetail{
}
.activityDetail .header{
    width: 100%;
    margin-top: -20px;
    
    text-align: center;
    
    margin-bottom: 40px;
}
.activityDetail .header .bundan{
    display: inline-block;
    font-size: 1.5rem;
    color: #fff;
    letter-spacing: 0.1em;
    line-height: 1.0;
    padding: 6px 25px;
    border-radius: 15px;
    background-color: #51d519;
}
.activityDetail .header .bundan a{
    font-weight: bold;
    color: #fff;
}
.activityDetail .date{
    width: 100%;
    margin-top: -20px;
    
    text-align: center;
    
    margin-bottom: 20px;
}
.activityDetail .schedule{
    width: 100%;
    margin-top: -20px;

    text-align: center;
    margin-bottom: 40px;
}
.activityDetail .schedule .label{
    display: inline-block;
    font-size: 1.8rem;
    color: #fff;
    letter-spacing: 0.1em;
    line-height: 1.0;
    padding: 6px 25px;
    border-radius: 5px;
    background-color: #000;
}
.activityDetail .bodyArea{
    width: 100%;
    
    margin-bottom: 50px;
}

.subpageBody .activityDetail h2 {
    box-sizing: border-box;
    background-color: #f2f2f2;
    border-radius: 30px;
    padding: 6px 20px;
    line-height: 1.1;
}
.subpageBody .activityDetail h2 .title {
    font-size: 86%;
}
.subpageBody .activityDetail.bundanInfo h2 {
    background-color: #e9f9e2;
}


.activityDetail table.cmn{
    width: 100%;
    border-bottom: 1px solid #51d519;
}
.activityDetail table.cmn th,
.activityDetail table.cmn td{
    border-top: 1px solid #51d519;
}
.activityDetail table.cmn th{
    width: 18rem;
    color: #227300;
    background-color: #e9f9e2;
}
.activityDetail table.cmn td a{
    color: #1954dc;
    text-decoration: underline;
}
.activityDetail table.cmn td a:hover{
    text-decoration: none;
}

.masonry {
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto 30px;
    column-gap: 0.5em;

    column-count: 3;
}

.masonry .item {
    box-sizing: border-box;
    margin: 0 0 1.0rem;
}
.masonry .item img{
    width: 100%;
    height: auto;
    
    display: block;
    border-radius: 5px;
}

.activityDetail img.groupPhoto{
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 5px;
}

.activityDetail .footer{
    width: 100%;
    
    border-top: 1px solid #ccc;
    padding-top: 30px;
    
    margin-bottom: 40px;
}

.listNavi{
    width: 100%;
    
    display: flex;
    justify-content: center;

    margin-top: -20px;
    padding-bottom: 40px;
}
.listNavi.lower{
    margin-top: 0;
    padding-top: 40px;
    padding-bottom: 70px;
}
.listNavi .current{
    white-space: nowrap;
    padding: 0 20px;
}
.listNavi .link{
    min-width: 10rem;
    white-space: nowrap;
}
.listNavi .link.prev{
    text-align: right;
}

.scBox{
    padding-bottom: 70px;
}
.scheduleList{
    box-sizing: border-box;
    border: 1px solid #51d519;
    border-radius: 20px;
    padding: 0 0 10px;
    overflow: hidden;
}
.subpageBody .scheduleList h2{
    margin-bottom: 5px;
}
.subpageBody .scheduleList h2 .title{
    font-size: 86%;
}

.scheduleList ul.activityList li:first-child{
    border-top: none;
}
.scheduleList ul.activityList li:last-child{
    border-bottom: none;
}

.movieBody{
    padding-bottom: 60px;
}
.movieBody .description{
    padding-bottom: 50px;
}

.movieArea{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}
/*
.wp-block-embed-youtube{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}
*/
.youtube,
.wp-block-embed-youtube .wp-block-embed__wrapper{
    position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe,
.wp-block-embed-youtube .wp-block-embed__wrapper iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


ul.infoList{
}
ul.infoList li{
    width: 100%;
    border-bottom: 1px solid #ddd;
}
ul.infoList li:first-child{
    border-top: 1px solid #ddd;
}
ul.infoList li a{
    width: 100%;
    padding: 10px 0;

    display: block;
}
ul.infoList li a:hover{
    background-color: #f5f5f5;
}
ul.infoList li .date{
/*    display: block;*/
    display: inline-block;
    padding-left: 3.0rem;
    font-size: 1.6rem;
    font-weight: bold;
    padding-bottom: 0.2rem;
}
ul.infoList li .category{
    display: inline-block;
    min-width: 5em;
    padding: 3px 10px;
    font-size: 1.5rem;
    text-align: center;
    line-height: 1.0;
    color: #fff;
    white-space: nowrap;
    background-color: #5925aa;
    border-radius: 5px;
    
/*    margin-left: 3.0rem;
    margin-right: 10px;
    margin-bottom: 0.5rem;*/
    margin: 0 0 0 10px;
}
ul.infoList li .title{
    display: block;
    padding-left: 3.0rem;
    text-indent: -3.0rem;
    font-size: 1.9rem;
    color: #702ed5;
    font-weight: bold;
    padding-bottom: 0.5rem;
}
ul.infoList li .title::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f138";
    padding-right: 8px;
    font-size: 110%;
}
ul.infoList li .title.pdf::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	content: "\f1c1";
    padding-right: 8px;
    font-size: 120%;
}

.pageNavi{
    width: 100%;
    text-align: center;
    padding: 30px 0 40px;
}
.wp-pagenavi {
	clear: both;
}

.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #702ed5;
    border-color: #702ed5;
	padding: 3px 5px;
	margin: 5px;
    
    color: #702ed5;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border: 3px solid #702ed5;
    border-color: #702ed5;
}
.wp-pagenavi span.current {
	font-weight: bold;
}

.pageNavi.pr .wp-pagenavi a, .pageNavi.pr .wp-pagenavi span {
	border: 1px solid #ff322e;
    border-color: #ff322e;
    color: #ff322e;
}
.pageNavi.pr .wp-pagenavi a:hover, .pageNavi.pr .wp-pagenavi span.current {
	border: 3px solid #ff322e;
    border-color: #ff322e;
}


.subpageTC{
    width: 95%;
    max-width: 1200px;
    margin: 0 auto;
    
    border-radius: 5px;
    background-color: #fff;
    
    display: flex;
    flex-wrap: wrap;
    
    margin-bottom: 50px;
    
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
}

.subpageTC .main{
    width: 80%;
}
.subpageTC .sub{
    box-sizing: border-box;
    width: 20%;
    
    background-color: #f5f5f5;
}

.subpageTC .pageBody{
    padding: 60px 7% 30px;
}
.subpageTC .subBody{
    padding: 60px 0 30px;
}


.subpageTC .acHeader{
    width: 100%;
    position: relative;
    margin-bottom: 35px;
}
.subpageTC .acCat{
    position: absolute;
    left: 0;
    top: 0;
}
.subpageTC .acCat .cat{
    box-sizing: border-box;
    display: inline-block;
    min-width: 6em;
    padding: 5px 10px;
    font-size: 1.5rem;
    text-align: center;
    line-height: 1.0;
    color: #fff;
    white-space: nowrap;
/*    background-color: #1e2678;*/
    background-color: #5925aa;
    border-radius: 5px;
    
    margin-right: 12px;
}
.subpageTC .acDate{
    width: 100%;
    text-align: right;
    font-size: 1.6rem;
}

article{
    margin-bottom: 60px;
}
article h1{
    font-size: 2.2rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.3;
    
    margin-bottom: 1.5em;
}
article h2{
    font-size: 2.0rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.3;

    margin-bottom: 1.5em;
}
article h3{
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.3;

    margin-bottom: 1.5em;
}

article p{
    font-size: 1.7rem;
    line-height: 1.8;
    margin-bottom: 1.5em;
}
article p a,
.articleBody a,
.importBody a{
    color: #1954dc;
    text-decoration: underline;
}
article p a:hover,
.articleBody a:hover,
.importBody a:hover{
    text-decoration: none;
}
article p img,
.articleBody img,
.importBody img{
    max-width: 100%;
    height: auto;
}
article p iframe,
.articleBody iframe,
.importBody iframe{
    max-width: 100%;
}
.subpageTC .navTitle{
    box-sizing: border-box;
    width: 100%;
    
    padding: 8px 8%;
    font-size: 1.6rem;
    color: #04394f;
    font-weight: bold;
    background-color: #e0e0e0;
}
.subpageTC.info .navTitle{
    color: #702ed5;
}
.subpageTC ul.category,
.subpageTC ul.archive{
    box-sizing: border-box;
    width: 100%;

    padding: 12px 8%;
}
.subpageTC ul.category li,
.subpageTC ul.archive li{
    box-sizing: border-box;
    width: 100%;
}
.subpageTC ul.category li a,
.subpageTC ul.archive li a{
    box-sizing: border-box;
    display: block;
    width: 100%;

    padding: 6px 0;
    font-size: 1.5rem;
    color: #04394f;
}
.subpageTC ul.category li a:hover,
.subpageTC ul.archive li a:hover{
    text-decoration: underline;
}
.subpageTC.info ul.category li a,
.subpageTC.info ul.archive li a{
    color: #702ed5;
}


.req{
	color: #e00;
}

.error-fp{
	font-weight: bold;
	color: #e00;
	margin-bottom: 20px;
}

dl.form{
	width: 100%;
	border-bottom: 1px dotted #666;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
}
dl.form dt, dl.form dd{
}
dl.form dt{
	clear: both;
	border-top: 1px dotted #666;
	padding: 1% 2%;
	width: 21%;
	font-weight: bold;

	font-size: 1.7rem;
}
dl.form dd{
	border-top: 1px dotted #666;
	padding: 1% 2%;
	width: 71%;

	font-size: 1.7rem;
}
dl.form dd div{
	font-size: 1.7rem;
}


dl.form.registProf dt .lv{
    display: block;
    position: relative;
    
    padding-left: 22px;
}
dl.form.registProf dt .lv::before{
    content: "";
    position: absolute;
    left: -15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background-color: #fff;
    margin: 0 10px 0 0;
    border-radius: 5px;
    
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 25px auto;
}
dl.form.registProf dt .lv.lv1::before{
    background-image: url("img/icon_joinus_lv1.png");
}
dl.form.registProf dt .lv.lv2::before{
    background-image: url("img/icon_joinus_lv2.png");
}
dl.form.registProf dt .lv.lv3::before{
    background-image: url("img/icon_joinus_lv3.png");
}
dl.form.registProf dt .lv.lv2lv3::before{
    background-image: url("img/icon_joinus_lv2lv3.png");
}

dl.form.registProf dd .prefChk{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
dl.form.registProf dd .prefChk .item{
    width: 6.5em;
}
dl.form.registProf dd .dayOfWeekChk{
    text-align: left;
}
dl.form.registProf dd .dayOfWeekChk .item{
    display: inline-block;
    white-space: nowrap;
    padding-right: 0.5em;
}
dl.form.registProf dd .skillChk{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
dl.form.registProf dd .skillChk .item{
    width: 9.5em;
}


dl.form dd table th{
    white-space: nowrap;
    padding-right: 5px;
    padding-bottom: 10px;
}
dl.form dd table td{
    padding-bottom: 10px;
}


dl.form input[type="text"],
dl.form input[type="password"]{
	height: 25px;
	font-size: 1.7rem;
	margin-bottom: 3px;
}
dl.form select{
	height: 30px !important;
	font-size: 1.7rem;
	margin-bottom: 3px;
	padding: 3px 10px 3px 0;
}

dl.form input[type="text"].name{ width: 150px;}
dl.form input[type="text"].zip{ width: 150px;}
dl.form input[type="text"].address{ width: 280px;}
dl.form input[type="text"].tel{ width: 150px;}
dl.form textarea{ width: 90%; height: 12em; font-size: 14px;}
dl.form textarea.short{ width: 90%; height: 6em; font-size: 14px;}
dl.form input[type="text"].fullname{ width: 150px;}
dl.form input[type="text"].relation{ width: 80px;}
dl.form input[type="text"].email{ width: 280px;}
dl.form input[type="password"].password{ width: 100px;}
dl.form input[type="text"].age{ width: 80px;}
dl.form input[type="text"].yac{ width: 150px;}
dl.form input[type="text"].smessage{ width: 90%;}
dl.form input[type="text"].lng{ width: 78%;}
dl.form input[type="text"].lng2{ width: 50%; min-width: 250px;}
dl.form input[type="text"].lng3{ width: 12em;}

dl.form .ind{
    padding-left: 2em;
}
dl.form br.ww{
    display: block;
}
@media only screen and (max-width: 699px){
dl.form br.ww{
    display: none;
}
}

form input[type="button"],
form input[type="submit"]{
	background: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    border-width: 0;

	margin: 5px 0;
	padding: 10px 20px;
	font-size: 1.7rem;
	color: #fff;
	background-color: #1954dc;
	cursor: pointer;
/*	border: 5px solid #053ec1;*/
	border-radius: 8px;

	transition: all 0.2s linear;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
}
form input[type="button"]:hover,
form input[type="submit"]:hover{
    background-color: #063297;
	filter: none;
}

form input[type="button"].back,
form input[type="submit"].back{
	margin: 5px 0;
	padding: 5px 15px;
	font-size: 1.5rem;
	color: #000;
	background-color: #eee;
/*	border: 5px solid #ccc;*/
}
form input[type="button"].back:hover,
form input[type="submit"].back:hover{
    background-color: #e5e5e5;
	filter: none;
}


dl.form .notice{
	margin: 5px 0;
	padding: 5px 10px;
	background-color: #e4ecff;
	font-size: 1.4rem;
}
dl.form .notice a:link,
dl.form .notice a:visited{
	color: #1954dc;
	text-decoration: underline;
}
dl.form .notice a:hover,
dl.form .notice a:active{
	color: #1954dc;
	text-decoration: none;
}


.formButton{
	clear: both;
	width: 100%;
	padding: 10px 0;
	text-align: center;
}

.confirmCheck{
    box-sizing: border-box;
    width:90%;
    text-align: left;
    padding: 10px 5%;
    margin-bottom: 20px;
    background-color: #eee;
    border-radius: 5px;
}



#loadingElem{
    position: absolute;
	width: 100%;
    left: 0;
    top: 70px;
}
.loading{
	width: 100%;
	text-align: center;
}

.loadC {
	position: relative;
	display:inline-block;
	height: 46px;
	width: 46px;
	margin: 0.5em;
	border-radius: 50%;  
	background: none repeat scroll 0 0 #f2f2f2; /* BG */
	overflow:hidden;
	box-shadow: 0 0 10px rgba(0,0,0,.1) inset, 0 0 25px rgba(0,0,255,0.075);
}
.loadC:after {
	content: "";
	position: absolute;
	top: 9px; left: 9px;
	display: block;
	height: 28px; width: 28px;
	background: none repeat scroll 0 0 #f2f2f2;
	border-radius: 50%;
	box-shadow: 0 0 10px rgba(0,0,0,.1);
	
/*	display: none;*/ 
}
.loadC > span {
	position: absolute;
	height: 100%; width: 50%;
	overflow: hidden;
}
.loadC .circleleft  { left: 0 }
.loadC .circleright { left: 50% }
.loadC .anim {
	position: absolute;
	left: 100%; top: 0;
	height: 100%; width: 100%;
	border-radius: 999px;
	background: none repeat scroll 0 0 #00c4ce; /* color */
	opacity: 0.8;
	animation: ui-spinner-rotate-left 2s infinite;
	transform-origin: 0 50% 0;
}
.loadC .circleleft .anim {
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
}
.loadC .circleright .anim {
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
	left: -100%;
	transform-origin: 100% 50% 0;
}
.loadC .anim {
	animation-delay: 0s;
	animation-duration:2s;
	animation-timing-function: linear;
}
.loadC .circleright .anim{
	animation-name: ui-spinner-rotate-right;
	animation-delay:0;
	animation-delay: 1.0s;
}

@keyframes ui-spinner-rotate-right{
	0%{transform:rotate(0deg)}
	25%{transform:rotate(180deg)}
	50%{transform:rotate(180deg)}
	75%{transform:rotate(360deg)}
	100%{transform:rotate(360deg)}
}
@keyframes ui-spinner-rotate-left{
	0%{transform:rotate(0deg)}
	25%{transform:rotate(0deg)}
	50%{transform:rotate(180deg)}
	75%{transform:rotate(180deg)}
	100%{transform:rotate(360deg)}
}

.loading .label{
	display: block;
	margin: 0 auto;
	width: 60px;
	text-align: center;
	font-size: 10px;
	letter-spacing: 0.3em;
	color: #00c4ce;
}

.loading.aboutus .anim{ background: none repeat scroll 0 0 #1954dc; }
.loading.aboutus .label{ color: #1954dc; }
.loading.joinus .anim{ background: none repeat scroll 0 0 #f27719; }
.loading.joinus .label{ color: #f27719; }
.loading.labo .anim{ background: none repeat scroll 0 0 #f44ec7; }
.loading.labo .label{ color: #f44ec7; }
.loading.pr .anim{ background: none repeat scroll 0 0 #ff322e; }
.loading.pr .label{ color: #ff322e; }
.loading.activity .anim{ background: none repeat scroll 0 0 #51d519; }
.loading.activity .label{ color: #51d519; }
.loading.info .anim{ background: none repeat scroll 0 0 #702ed5; }
.loading.info .label{ color: #702ed5; }


.subpageBody .singleContent h2{
    background-color: #f2f2f2;
    border-radius: 30px;
}
.subpageBody .singleContent h2 .title{
    font-size: 90%;
}
.singleContent p{
    margin-bottom: 1.5em;
}
.singleContent a{
    color: #1954dc;
    text-decoration: underline;
}
.singleContent a:hover{
    text-decoration: none;
}
.singleContent .cmnBtn a{
    color: #fff;
    text-decoration: none;
}
.singleContent img{
    max-width: 100%;
    height: auto;
}
.singleContent iframe{
    max-width: 100%;
}
.singleContent video{
    max-width: 100%;
}
.singleContent ul{
    list-style-type: disc;
    padding-left: 1.5em;
}
.singleContent ul li{
    list-style-type: disc;
    font-size: 1.7rem;
    line-height: 1.6;
    padding-bottom: 0.6em;
}




.ymcommentWr{
    width: 100%;
    min-height: 250px;
}
.ymcomment{
    box-sizing: border-box;
    font-size: 1.6rem;
    line-height: 1.7;
    
    width: 80%;
 
    margin-right: 20%;
    
    padding: 20px 40px;
    
    background-color: #fbf8c9;
    border-radius: 30px;
    
    margin-bottom: 50px;
    
}
.ymcomment::before {
    content: "";
    display: block;
    position: absolute;
    top: 30px;
    right: -25px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 0 15px 25px;
    border-color: transparent transparent transparent #fbf8c9;
}
.ymcomment::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: -25%;
    width: 20%;
    height: 250px;
    
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
}

.ymcomment.dockey{
    background-color: #e1f5fc;
}
.ymcomment.dockey::before {
    border-color: transparent transparent transparent #e1f5fc;
}
.ymcomment.dockey::after {
    background-image: url("./img/photo_dockey.jpg");
}
.ymcomment.kamigaichi::after {
    background-image: url("./img/photo_kamigaichi.jpg");
}


.ymcomment .profile{
    display: flex;
    justify-content: space-between;
	align-items: center;
}
.ymcomment .profile .photo{
    width: 20%;
    line-height: 0;
}
.ymcomment .profile .photo img{
    width: 100%;
    height: auto;
}
.ymcomment .profile .text{
    width: 78%;
    font-size: inherit;
}
.ymcomment .profile .text .name{
    font-weight: bold;
}
.ymcomment .profile .text .sub{
    font-size: 80%;
}
.ymcomment .profile .text .sub.mb{
    margin-bottom: 10px;
}

.ymimage{
    width: 80%;
    line-height: 0;
    border: 1px solid #ccc;
    
    margin-bottom: 40px;
}
.ymimage img{
    width: 100%;
    height: auto;
}

.ymsep{
    margin-top: 10px;
    border-top: 5px dashed #eee;
    padding-top: 50px;
}


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

.ymcommentWr{
    min-height: 150px;
}
.ymcomment{
    font-size: 1.5rem;
    line-height: 1.6;
    
    width: 75%;
 
    margin-right: 25%;
    
    padding: 15px 30px;
    
    border-radius: 25px;
    
    margin-bottom: 40px;
    
}
.ymcomment::before {
    top: 30px;
    right: -25px;
    border-width: 15px 0 15px 25px;
}
.ymcomment::after {
    top: 0;
    right: -33%;
    width: 25%;
    height: 150px;
}
.ymcomment .profile{
	align-items: flex-start;
}
.ymcomment .profile .photo{
    width: 30%;
}
.ymcomment .profile .text{
    width: 65%;
}

.ymsep{
    margin-top: 10px;
    padding-top: 40px;
}

}


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

.ymcommentWr{
    min-height: 150px;
}
.ymcomment{
    font-size: 1.3rem;
    line-height: 1.6;
    
    width: 75%;
 
    margin-right: 25%;
    
    padding: 15px 20px;
    
    border-radius: 20px;
    
    margin-bottom: 40px;
    
}
.ymcomment::before {
    top: 20px;
    right: -20px;
    border-width: 15px 0 15px 20px;
}
.ymcomment::after {
    top: 0;
    right: -35%;
    width: 25%;
    height: 150px;
}

}










/* --------------------------------------------------
  Footer
-------------------------------------------------- */

footer.page{
	clear: both;
	width: 100%;
	padding: 0 0 30px;
    
    position: relative;
    z-index: 5;
    
    
    background-color: #04394f;
	
}

footer.page .ftNavi{
    width: 100%;
    padding: 15px 0;
    background-color: #b1e8ff;
}
footer.page .ftNavi ul{
    box-sizing: border-box;
    width: 90%;
    margin: 0 auto;
    
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
}
footer.page .ftNavi li{
    padding: 0 15px;
}
footer.page .ftNavi li a{
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    color: #1954dc;
    white-space: nowrap;
    line-height: 1.0;
}
footer.page .ftNavi li a::before{
    content: "\f0da";
    padding-right: 5px;
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
}
footer.page .ftNavi li a:hover{
    text-decoration: underline;
}

footer.page .logo{
    width: 80%;
    max-width: 300px;
    margin: 0 auto;
    
    line-height: 0;
    padding: 30px 0 10px;
}
footer.page .logo img{
    width: 100%;
    height: auto;
}

footer.page .copyright{
    box-sizing: border-box;
    width: 90%;
    margin: 0 auto;
	font-size: 1.1rem;
    color: #fff;
	text-align: center;
}


.pageTop {
	position: fixed;
	bottom: 40px;
	right: 10px;
	
	width: 60px;
	
	z-index: 1100;
}
.pageTop img{
	width: 100%;
	height: auto;
}


.ivmvel{
	opacity: 0.0;
	-webkit-transform: translate(0, 50px); 
	transform: translate(0, 50px); 
	transition: all 0.5s ease;
}
.ivmv{
	opacity: 1.0;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); 
}

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



/* Global Navigation
------------------------------------------------------------*/
@media only screen and (min-width: 900px){



#commonNavi{
	width: 100%;
    z-index: 320;

/*	border-bottom: 1px solid #33c2ff*/
}



/*
ul#categoryNavi {
    box-sizing: border-box;
	width: 95%;
    max-width: 1130px;

    margin: 0 auto;
    padding: 5px 0;

	z-index: 330;
    
    display: flex;

}
*/
ul#categoryNavi {
    width: 60%;
    height: 100%;
    position: absolute;
    right: 10px;
    bottom: 0;
    z-index: 315;
    
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;
    align-content: center;
}


 
ul#categoryNavi > li {
    box-sizing: border-box;
	display: block;
    
    position: relative;
    
    width: 16.5%;
    text-align: center;
	
	font-size: 1.9rem;
	
	letter-spacing: 0.05em;
    
    margin: 0 3px;
}
ul#categoryNavi > li > a {
    box-sizing: border-box;
	height: 35px;
	padding: 0 5px;
	transition: all 0.1s linear;
    
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.0;
    
	display: flex;
    justify-content: center;
    align-items: center;
    
    vertical-align: middle;

    border-radius: 5px;

	
	filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
}
ul#categoryNavi > li > a:hover {
    box-shadow: 0 0 12px rgba(255,255,255,0.8);
    border-radius: 8px;
    border: 3px solid rgba(255,255,255,0.3);

	filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0.3));
    will-change: filter;
}
ul#categoryNavi > li.aboutus > a{
    background-color: #1954dc;
}
ul#categoryNavi > li.joinus > a{
    background-color: #f27719;
}
ul#categoryNavi > li.labo > a{
    background-color: #f44ec7;
}
ul#categoryNavi > li.pr > a{
    background-color: #ff322e;
}
ul#categoryNavi > li.activity > a{
    background-color: #51d519;
    	letter-spacing: 0;
}
ul#categoryNavi > li.info > a{
    background-color: #702ed5;
}

ul#categoryNavi ul.sub{
	box-sizing: border-box;

	width: 130%;
	height: auto;

	position: absolute;
	z-index: 1200;
	
	top: 36px;
	left: -15%;
	line-height: 0;

	text-align: center;
	
	border-radius: 8px;
/*    border: 3px solid rgba(255,255,255,0.3);*/
    
	display: none;
}
ul#categoryNavi ul.sub li{
	width: 100%;
}
ul#categoryNavi ul.sub li a{
	display: block;
	line-height: 1.3;
	font-size: 1.2rem;
	color: #fff;
	
	border-radius: 8px;

    padding: 10px 5px;

    border: 3px solid rgba(255, 255, 255, 0);
}

ul#categoryNavi ul.sub li a:hover{
    border: 3px solid rgba(255, 255, 255, 0.3);
}
ul#categoryNavi > li.aboutus > ul.sub{
    background-color: #1954dc;
}
ul#categoryNavi > li.aboutus > ul.sub li a:hover{
	background-color: #003bc4;
}
ul#categoryNavi > li.joinus > ul.sub {
    background-color: #f27719;
}
ul#categoryNavi > li.joinus > ul.sub li a:hover{
    background-color: #db5f00;
}
ul#categoryNavi > li.labo > ul.sub {
    background-color: #f44ec7;
}
ul#categoryNavi > li.labo > ul.sub li a:hover{
    background-color: #d716a3;
}
ul#categoryNavi > li.pr > ul.sub {
    background-color: #ff322e;
}
ul#categoryNavi > li.pr > ul.sub li a:hover{
    background-color: #da0b07;
}
ul#categoryNavi > li.info > ul.sub {
    background-color: #702ed5;
}
ul#categoryNavi > li.info > ul.sub li a:hover{
    background-color: #4b05b6;
}


ul#floatNavi,
ul#floatNavi2{
    box-sizing: border-box;
	position: fixed;
	z-index: 120;
	right: 0;
	top: 230px;
        
    width: 60px;
    border: 3px solid rgba(255, 255, 255, 0.5);
    border-right: none;
    border-radius: 10px 0 0 10px;
    
	transition: all 0.2s linear;
    
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    will-change: filter;
}
ul#floatNavi2{
	top: 405px;
}
ul#floatNavi li,
ul#floatNavi2 li{
    box-sizing: border-box;
    width: 100%;
}
ul#floatNavi li a,
ul#floatNavi2 li a{
    box-sizing: border-box;
    display: block;
    padding: 45px 5px 8px;
    
/*    border-top: 1px solid #1954dc;*/
    
    background-repeat: no-repeat;
    background-position: center top 4px;
    background-size: 40px auto;
    
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.1;
    color: #fff;
}
ul#floatNavi li.contact{
    border-radius: 8px 0 0 0;
    background-color: rgba(0, 132, 148, 0.8);
}
ul#floatNavi li.contact a{
    background-image: url("img/icon_flnavi_contact.png");
    border-radius: 8px 0 0 0;
}
ul#floatNavi li.joinus{
    border-radius: 0 0 0 8px;
    background-color: rgba(242, 119, 25, 0.8);
}
ul#floatNavi li.joinus a{
    background-image: url("img/icon_flnavi_joinus.png");
    border-radius: 0 0 0 8px;
}
ul#floatNavi2 li.member{
    border-radius: 8px 0 0 8px;
    background-color: rgba(25, 84, 220, 0.8);
}
ul#floatNavi2 li.member a{
    background-image: url("img/icon_flnavi_member.png");
    border-radius: 8px 0 0 8px;
}
ul#floatNavi li a:hover,
ul#floatNavi2 li a:hover{
    /*
    color: #fff;
    */
    background-color: rgba(0, 0, 0, 0.2);
    
    font-weight: bold;
    
    background-position: center top 0px;
    background-size: 48px auto;
}
ul#floatNavi li br.ww{
}




}



/* Global Navigation Responsive Structure
---------------------------------------------------------------------------------------------------------------------*/

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


#commonNavi {
	display: none;
}
	

#menuOverlay {
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
	display: none;
	position: fixed;
	z-index: 7997;
}

#switchBtnArea {
	width: 100%;

	position: relative;
}

#switchBtnArea #switchBtn {
	top: 15px;
	right: 10px;
	width: 50px;
	height: 50px;
	display: block;
	
	position: fixed;

	z-index: 7998;
	
	background-color: #81d9ff;
	
	border-radius: 2px;
}

#switchBtnArea #switchBtn span {
	left: 27%;
	width: 46%;
	height: 2px;
	display: block;
	position: absolute;
	background-color: #444;
	border-radius: 5px;
	transition: all 0.2s linear;
}
#switchBtnArea #switchBtn span:nth-of-type(1) {
	top: 17px;
	-webkit-transform: rotate(0);
	transform: rotate(0);
}
#switchBtnArea #switchBtn span:nth-of-type(2) {
	top: 24px;
	-webkit-transform: scale(1);
	transform: scale(1);
}
#switchBtnArea #switchBtn span:nth-of-type(3) {
	bottom: 17px;
	-webkit-transform: rotate(0);
	transform: rotate(0);
}

#switchBtnArea #switchBtn.btnClose {
	background-color: #81d9ff;
}
#switchBtnArea #switchBtn.btnClose span:nth-of-type(1) {
	top: 24px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	background-color: #000;
}
#switchBtnArea #switchBtn.btnClose span:nth-of-type(2) {
	-webkit-transform: scale(0);
	transform: scale(0);
}
#switchBtnArea #switchBtn.btnClose span:nth-of-type(3) {
	bottom: 24px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background-color: #000;
}

#rwdMenuWrap {
	top: 0;
	right: -400px;
	width: 400px;
	height: 100%;
/*	background-color: #004471;*/
	background-color: rgba(0, 68, 113, 0.5);
	overflow: auto;
	position: fixed;
	z-index: 7997;
}


#rwdMenuWrap ul#categoryNavi {
    box-sizing: border-box;
	width: 100%;
    margin: 0 auto;

    margin-top: 150px;
    padding-top: 5px;
    
    margin-bottom: 20px;

    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    
/*    background-color: #61d0ff;*/
    background-color: rgba(97, 208, 255, 0.5);
}
 
#rwdMenuWrap ul#categoryNavi > li {
    box-sizing: border-box;
	display: block;
    
    width: 47%;
    margin: 0 1% 5px;
	
    text-align: center;
	font-size: 1.9rem;
	
	letter-spacing: 0.1em;

}
#rwdMenuWrap ul#categoryNavi > li > a {
    box-sizing: border-box;
	height: 50px;
	padding: 0 5px;
	transition: all 0.1s linear;
    
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.0;
    
	display: flex;
    justify-content: center;
    align-items: center;
    
    vertical-align: middle;

    border-radius: 5px;
}

#rwdMenuWrap ul#categoryNavi > li.subcat > a {
    border-radius: 5px 5px 0 0;
}

#rwdMenuWrap ul#categoryNavi > li.aboutus > a{
    background-color: #1954dc;
}
#rwdMenuWrap ul#categoryNavi > li.joinus > a{
    background-color: #f27719;
}
#rwdMenuWrap ul#categoryNavi > li.labo > a{
    background-color: #f44ec7;
}
#rwdMenuWrap ul#categoryNavi > li.pr > a{
    background-color: #ff322e;
}
#rwdMenuWrap ul#categoryNavi > li.activity > a{
    background-color: #51d519;
}
#rwdMenuWrap ul#categoryNavi > li.info > a{
    background-color: #702ed5;
}

ul#categoryNavi ul.sub{
    padding: 10px 0;
    border-radius: 0 0 5px 5px;
}
ul#categoryNavi > li.aboutus ul.sub{
    background-color: #003ac1;
}
ul#categoryNavi > li.joinus  ul.sub{
    background-color: #df6100;
}
ul#categoryNavi > li.labo  ul.sub{
    background-color: #d716a3;
}
ul#categoryNavi > li.pr  ul.sub{
    background-color: #da0b07;
}
ul#categoryNavi > li.info  ul.sub{
    background-color: #4b00bd;
}
ul#categoryNavi ul.sub li{
}
ul#categoryNavi ul.sub li a{
    display: block;
    font-size: 1.3rem;
    color: #fff;
    
    padding: 8px 0;
}



#rwdMenuWrap .float{
    box-sizing: border-box;
	position: absolute;
	z-index: 120;
	left: 0;
	top: 80px;
        
    width: 100%;
    height: 66px;
    
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    
    background-color: rgba(0, 31, 51, 0.9);
}
#rwdMenuWrap ul#floatNavi,
#rwdMenuWrap ul#floatNavi2{
    height: 100%;

    display: flex;
    justify-content: flex-end;
    align-content: center;
    align-items: center;
}
#rwdMenuWrap ul#floatNavi2{
    margin-left: 10px;
}
#rwdMenuWrap ul#floatNavi li,
#rwdMenuWrap ul#floatNavi2 li{
    box-sizing: border-box;
    padding: 0 3px;
    
    text-align: center;
    
    line-height: 0;
}
#rwdMenuWrap ul#floatNavi li a,
#rwdMenuWrap ul#floatNavi2 li a{
    display: inline-block;
    
    box-sizing: border-box;
    padding:  32px 12px 5px;
    
    font-size: 1.2rem;
    line-height: 1.0;
    color: #fff;
    
    border-radius: 10px;
    
    position: relative;
}
#rwdMenuWrap ul#floatNavi li.contact a{
    box-sizing: border-box;
/*    background-color: #0090a1;*/
    background-color: #000;
    color: #fff;
    font-weight: bold;
/*    border: 3px solid #00cae2;*/
    border: 1px solid #ccc;
}
#rwdMenuWrap ul#floatNavi li.joinus a{
    box-sizing: border-box;
/*    background-color: #c65804;*/
    background-color: #000;
    color: #fff;
    font-weight: bold;
/*    border: 3px solid #f27719;*/
    border: 1px solid #ccc;
}
#rwdMenuWrap ul#floatNavi2 li.member a{
    box-sizing: border-box;
/*    background-color: #0540c6;*/
    background-color: #000;
    color: #fff;
    font-weight: bold;
/*    border: 3px solid #5789fc;*/
    border: 1px solid #ccc;
}

#rwdMenuWrap ul#floatNavi li a::before,
#rwdMenuWrap ul#floatNavi2 li a::before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 40px;
    height: 45px;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 32px auto;
}
#rwdMenuWrap ul#floatNavi li.contact a::before{
    background-image: url("img/icon_flnavi_contact.png");
    border-radius: 8px 0 0 0;
}
#rwdMenuWrap ul#floatNavi li.joinus a::before{
    background-image: url("img/icon_flnavi_joinus.png");
    border-radius: 0 0 0 8px;
}
#rwdMenuWrap ul#floatNavi2 li.member a::before{
    background-image: url("img/icon_flnavi_member.png");
    border-radius: 0 0 0 8px;
}
#rwdMenuWrap ul#floatNavi li a .ww,
#rwdMenuWrap ul#floatNavi2 li a .ww{
    display: none;
}


}



@media only screen and (max-width: 399px){
#rwdMenuWrap {
	top: 0;
	right: -320px;
	width: 320px;
}
#rwdMenuWrap ul#categoryNavi > li {
	letter-spacing: 0.05em;
}
}





/* Responsive Structure
---------------------------------------------------------------------------------------------------------------------*/



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


.cmnBtn a{
    padding: 10px 30px;

    border-radius: 50px;
    font-size: 1.6rem;
}

p{
    font-size: 1.6rem;
}
p.note{
    font-size: 1.4rem;
}
p.aDate{
    font-size: 1.4rem;
}
.lg1{
    font-size: 1.8rem;
}
.lg2{
    font-size: 1.9rem;
}
ul.cmn li{
    font-size: 1.6rem;
}
ul.cmn.notice li{
    font-size: 1.3rem;
}
ul.il li{
    font-size: 1.6rem;
}
ul.il2 li{
    font-size: 1.6rem;
}
ol li{
    font-size: 1.6rem;
}

table.cmn th,
table.cmn td,
.wp-block-table.cmn table th,
.wp-block-table.cmn table td{
    font-size: 1.6rem;
}
table.cmn.labo th,
table.cmn.labo td{
    padding: 8px 8px;
    font-size: 1.4rem;
}
table.cmn.pr th,
table.cmn.pr td{
    padding: 8px 8px;
    font-size: 1.4rem;
}

table.cmn.registProf th,
table.cmn.registProf td{
    font-size: 1.4rem;
    padding: 5px 10px;
}
table.cmn.registProf th.lv{
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 50px;
}
table.cmn.registProf th.lv::before{
    width: 30px;
    height: 30px;
    margin: 0 10px;
    background-size: 25px auto;
}

header.page {
	width: 100%;
	height: 80px;
    
    background-size: auto 100%;
}
header.page .content{
	height: 80px;

    
    position: fixed;
}

header.page #logo{
	width: 300px;
    margin: 0 auto;
	
	padding-left: 0;
}


#contents{
    padding-top: 80px;
}
#contents.subpage::before {
	background-size: 900px auto;
}

#mainImage{
	height: 360px;
	background-size: auto 360px;
}

#mainImage.v2 .imageArea::before{
	padding-top: 60%;
}
#mainImage.v2 .imageArea .item{
    width: 22.4%;
}
#mainImage.v2 .imageArea .item#image01{
    width: 45.6%;
    left: 48.8%;
}
#mainImage.v2 .imageArea .item#image02{
    left: 26.8%;
}
#mainImage.v2 .imageArea .item#image03{
    left: 94.2%;
}
#mainImage.v2 .imageArea .item#image04{
    left: 4.45%;
}
#mainImage.v2 .imageArea .item#image05{
    left: -17.8%;
}

#mainImage.v2 .logoBar{
    width: 54%;
    bottom: 12px;
}


#mainImage .entryBtn{
	width: 140px;
	
	left: 1%;
	top: 5px;
}
#mainImage .entryBtn a{
    font-size: 1.6rem;
    
    padding-bottom: 40px;
    margin-bottom: 15px;
}

#mainImage .mypageBtn{
	width: 140px;
	
	left: 1%;
	top: 5px;
}
#mainImage .mypageBtn a{
    font-size: 1.6rem;
    
    padding-bottom: 40px;
    margin-bottom: 15px;
}

#mainImage .progressBtn{
	width: 120px;
	
	right: 1%;
	bottom: 5px;
}
#mainImage .progressBtn a{
	padding: 8px 3px;
    font-size: 1.4rem;
}





.newsArea .box{
    margin-bottom: 30px;
}
.newsArea .box h2{
    padding: 10px 20px;
    
    font-size: 1.8rem;
}
.newsArea .box h3{
    font-size: 1.9rem;
}
.newsArea .box.branch .content{
    padding: 20px 0 0;
}
.newsArea .box.branch h3{
    padding: 8px 15px;
    font-size: 1.9rem;
}

.newsArea .box th{
    padding: 3px 20px 0 0;
    margin-bottom: -8px;
    font-size: 1.6rem;

    display: block;
    width: 100%;
    white-space: nowrap;
}
.newsArea .box td{
    display: inline-block;
    padding: 8px 0;
    font-size: 1.6rem;
}
.newsArea .box td .note{
    font-size: 1.5rem;
}


.newsArea .box .more{
    padding: 10px 0 0;
}


#subpageMainImage{
	height: 180px;
}


.categoryTitle{
    margin-top: -110px;
    padding-top: 95px;

    background-size: 100px auto;
}
.categoryTitle.catIndex{
    margin-top: -90px;
    padding-top: 95px;
}
.categoryTitle.textonly{
    margin-top: -75px;
}
.categoryTitle .cname{
    font-size: 1.4rem;
    
    padding: 5px 20px;
    border-radius: 15px;
    
    margin-bottom: 15px;
}
.categoryTitle.catIndex .cname{
    margin-top: 22px;
    font-size: 2.2rem;
    padding: 10px 40px;
    border-radius: 30px;
}


#subIndex{
	padding: 20px 0 50px;
}
#subIndex li{
	width: 48%;
    margin: 0 1%;
	
	margin-bottom: 20px;
}

#subIndex li .text{
	padding: 15px 20px;

	font-size: 1.7rem;
}
#subIndex li .text .desc{
	font-size: 1.5rem;
}




.subpageBody{
    padding: 50px 0 20px;
    
    margin-bottom: 40px;
}

.subpageBody h1,
.subpageTC .pageBody > h1{
    margin-bottom: 40px;
}
.subpageBody h1 .title,
.subpageTC .pageBody > h1 .title{
    padding: 0 5px 10px;
    max-width: 90%;
    
    font-size: 2.4rem;
}
.subpageTC .pageBody > h1.article .title{
    max-width: 95%;
    font-size: 2.2rem;
}
.subpageBody h1 .title::after,
.subpageTC .pageBody > h1 .title::after{
    width: 110%;
    height: 4px;
    border-radius: 3px;
    margin-top: 4px;
    margin-left: -5%;
}

.subpageBody h2{
    margin-bottom: 30px;
    
    padding: 8px 20px;

    font-size: 2.2rem;
}
.subpageBody h3{
    font-size: 2.0rem;

    margin-bottom: 16px;
}
.subpageBody h4{
    font-size: 1.8rem;

    margin-bottom: 10px;
}

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


ul.ambassador li{
    width: 29%;
    margin: 0 2% 40px;
}
.subpageBody.basic ul.ambassador li p{
    width: 100%;
    text-align: left;
}
.subpageBody.basic ul.ambassador li .copyright{
    text-align: right;
    margin-bottom: 12px;
}

.entryStep h3 .num{
    width: 34px;
    height: 34px;
    font-size: 1.8rem;
    padding: 8px 0;
    border-radius: 25px;
    
    margin: 5px 10px;
}
.entryStep h3 .title{
    font-size: 1.7rem;
}

ul.teaser > li{
    width: calc(94%/2);
    margin-right: 6%;
    
    margin-bottom: 40px;
}
ul.teaser > li:nth-child(3n){
    margin-right: 6%;
}
ul.teaser > li:nth-child(2n){
    margin-right: 0;
}
ul.teaser.qt > li{
    width: calc(94%/3);
    margin-right: 3%;
}
ul.teaser.qt > li:nth-child(4n){
    margin-right: 3%;
}
ul.teaser.qt > li:nth-child(3n){
    margin-right: 0;
}

ul.teaser.acList > li{
    margin-bottom: 60px;
}


ul.iLink li .image{
    width: 10%;
    padding-left: 1%;
}
ul.iLink li .text{
    width: 88%;
}


.tabArea {
}
.tabItem {
    height: 60px;
    padding: 10px 10px;
}
.tabItem .text{
    font-size: 1.6rem;
}
.tabContent {
    border-top-width: 10px;
    padding: 30px 7.5% 30px;
}
.tabContent::after {
    border-width: 15px 20px 0 20px;
}

.subpageBody.basic > ul.linkTabs{
    height: 70px;
    margin-bottom: 40px;
}
ul.linkTabs li a .txt{
    font-size: 1.6rem;
}
ul.linkTabs li.current::after {
    bottom: -25px;
    border-width: 15px 20px 0 20px;
}

ul.activityList li .image{
    width: 10%;
    padding-left: 1%;
}
ul.activityList li .image img{
    height: 7.2vw;
}
ul.activityList li .text{
    width: 88%;
}

ul.activityList li .date{
    padding-left: 2.5rem;
    font-size: 1.5rem;
    padding-bottom: 0.5rem;
}
ul.activityList li .title{
    padding-left: 2.5rem;
    text-indent: -2.5rem;
    font-size: 1.8rem;
    padding-bottom: 0.5rem;
}
ul.activityList li .group{
    padding-left: 2.5rem;
    font-size: 1.4rem;
}
ul.activityList li .title::before {
    padding-right: 6px;
}


ul.grouplist > li{
    width: calc(94%/2);
    margin-right: 6%;
    
    margin-bottom: 40px;
}
ul.grouplist > li:nth-child(3n){
    margin-right: 6%;
}
ul.grouplist > li:nth-child(2n){
    margin-right: 0;
}
ul.grouplist .pref{
    font-size: 1.8rem;
    margin-bottom: 1.0rem;
}
ul.grouplist > li > ul > li{
    font-size: 1.6rem;
    padding-bottom: 0.5em;
}
ul.grouplist a::before {
    padding-right: 8px;
}


.activityDetail .header{
    margin-top: -20px;
    margin-bottom: 30px;
}
.activityDetail .header .bundan{
    font-size: 1.4rem;
    padding: 5px 23px;
}
.activityDetail .date{
    margin-top: -20px;
    margin-bottom: 20px;
}
.activityDetail .schedule{
    margin-top: -20px;
    margin-bottom: 20px;
}
.activityDetail .schedule .label{
    font-size: 1.7rem;
    padding: 5px 23px;
}
.activityDetail .bodyArea{
    margin-bottom: 40px;
}

.activityDetail table.cmn th{
    width: 18rem;
}

/*
.masonry {
    column-count: 3;
}
*/

.activityDetail .footer{
    padding-top: 30px;
    
    margin-bottom: 40px;
}



ul.infoList li .date{
    padding-left: 2.5rem;
    font-size: 1.5rem;
    padding-bottom: 0.1rem;
}
ul.infoList li .category{
    min-width: 5em;
    padding: 3px 8px;
    font-size: 1.4rem;

/*    margin-left: 2.5rem;
    margin-right: 10px;
    margin-bottom: 0.4rem;*/
    margin: 0 0 0 9px;
}
ul.infoList li .title{
    padding-left: 2.5rem;
    text-indent: -2.5rem;
    font-size: 1.8rem;
    padding-bottom: 0.5rem;
}
ul.infoList li .title::before {
    padding-right: 6px;
}





.subpageTC{
    max-width: 900px;
    
    margin-bottom: 50px;
}

.subpageTC .main{
    width: 100%;
}
.subpageTC .sub{
    width: 100%;
}

.subpageTC .pageBody{
    padding: 40px 5% 30px;
}
.subpageTC .subBody{
    padding: 40px 0 30px;
}
.subpageTC .acHeader{
    margin-bottom: 35px;
}
.subpageTC .acCat{
    font-size: 1.4rem;
}
.subpageTC .acDate{
    font-size: 1.5rem;
}

article{
    margin-bottom: 60px;
}

article h1{
    font-size: 2.0rem;
    margin-bottom: 1.5em;
}
article h2{
    font-size: 1.8rem;
    margin-bottom: 1.5em;
}
article h3{
    font-size: 1.7rem;
    margin-bottom: 1.5em;
}

article p{
    font-size: 1.6rem;
    margin-bottom: 1.5em;
}

.subpageTC .navTitle{
    padding: 8px 8%;
    font-size: 1.5rem;
}
.subpageTC ul.category,
.subpageTC ul.archive{
    padding: 12px 8%;
}
.subpageTC ul.category li a,
.subpageTC ul.archive li a{
    padding: 5px 0;
    font-size: 1.4rem;
}



dl.form dt{
	font-size: 1.6rem;
}
dl.form dd{
	font-size: 1.6rem;
}
dl.form dd div{
	font-size: 1.6rem;
}
dl.form input[type="text"],
dl.form input[type="password"]{
	font-size: 1.6rem;
}
dl.form select{
	font-size: 1.6rem;
}
form input[type="button"],
form input[type="submit"]{
	font-size: 1.6rem;
}
form input[type="button"].back,
form input[type="submit"].back{
	font-size: 1.5rem;
}
dl.form .notice{
	font-size: 1.4rem;
}


.singleContent ul li{
    font-size: 1.6rem;
}


footer.page{
	padding: 0 0 20px;
}

footer.page .ftNavi{
    padding: 12px 0;
}
footer.page .ftNavi li{
    padding: 0 15px;
}
footer.page .ftNavi li a{
    font-size: 1.3rem;
}
footer.page .logo{
    max-width: 250px;
    padding: 20px 0 5px;
}
footer.page .copyright{
	font-size: 1.0rem;
}


}






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


table.cmn.registProf th.lv{
    padding-top: 40px;
    padding-left: 10px;
    
    text-align: center;
    white-space: nowrap;
}
table.cmn.registProf th.lv::before{
    left: 50%;
    top: 5px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    background-size: 25px auto;
    margin-left: 0px;
}


#contents.subpage::before {
	background-size: 600px auto;
}

#information h2{
    padding: 10px 20px;
    
    font-size: 2.0rem;
    margin-bottom: 25px;
}
#information ul.items li{
    width: 48%;
    margin: 0 1% 20px;
}
#information ul.items li.tc{
    width: 98%;
    margin: 0 1% 20px;
}
#information ul.items li .content{
    width: 90%;
    padding: 20px 0;
}
#information ul.items li .title{
    font-size: 1.8rem;
    line-height: 1.3;
    
    margin-bottom: 15px;
}
#information ul.items li .desc{
    font-size: 1.4rem;
    line-height: 1.6;
    
    margin-bottom: 15px;
}
#information ul.items li .linkItem{
    width: 100%;
    font-size: 1.4rem;
    
    margin-bottom: 5px;
}

.newsArea .box{
    margin-bottom: 30px;
}
.newsArea .box h2{
    padding: 10px 20px;
    
    font-size: 1.7rem;
}
.newsArea .box h3{
    font-size: 1.8rem;
}
.newsArea .box.branch .content{
    padding: 20px 0 0;
}
.newsArea .box.branch h3{
    padding: 8px 15px;
    font-size: 1.8rem;
}

.newsArea .box th{
    padding: 3px 20px 0 0;
    margin-bottom: -8px;
    font-size: 1.5rem;

    display: block;
    width: 100%;
    white-space: nowrap;
}
.newsArea .box td{
    display: inline-block;
    padding: 8px 0;
    font-size: 1.5rem;
}
.newsArea .box td .note{
    font-size: 1.4rem;
}

.newsArea .box .more{
    padding: 10px 0 0;
}


ul.teaser.qt > li{
    width: calc(94%/2);
    margin-right: 6%;
}
ul.teaser.qt > li:nth-child(4n){
    margin-right: 6%;
}
ul.teaser.qt > li:nth-child(3n){
    margin-right: 6%;
}
ul.teaser.qt > li:nth-child(2n){
    margin-right: 0;
}

ul.iLink li .image{
    width: 12%;
    padding-left: 1%;
}
ul.iLink li .text{
    width: 86%;
}

ul.activityList li .image{
    width: 12%;
    padding-left: 1%;
}
ul.activityList li .image img{
    height: 9.2vw;
}
ul.activityList li .text{
    width: 86%;
}


.masonry {
    column-count: 2;
}


dl.form dt{
    box-sizing: border-box;
	padding: 3% 2% 3%;
	width: 100%;
}
dl.form dd{
    box-sizing: border-box;
	border-top: none;
	padding: 1% 2% 3%;
	width: 100%;
}

dl.form.registProf dt .lv{
    padding-left: 30px;
}
dl.form.registProf dt .lv::before{
    left: -5px;
}

dl.form textarea{ width: 100%; height: 10em; font-size: 14px;}



}


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


p{
    font-size: 1.5rem;
}
p.note{
    font-size: 1.3rem;
}
p.aDate{
    font-size: 1.3rem;
}
.lg1{
    font-size: 1.7rem;
}
.lg2{
    font-size: 1.8rem;
}
ul.cmn li{
    font-size: 1.5rem;
}
ul.cmn.notice li{
    font-size: 1.2rem;
}
ol li{
    font-size: 1.5rem;
}
ul.il li{
    font-size: 1.5rem;
}
ul.il2 li{
    font-size: 1.5rem;
}

table.cmn th,
table.cmn td,
.wp-block-table.cmn table th,
.wp-block-table.cmn table td{
    font-size: 1.5rem;
}
table.cmn.labo th,
table.cmn.labo td{
    padding: 5px 5px;
    font-size: 1.3rem;
}
table.cmn.labo td.date{
    font-size: 1.2rem;
}
table.cmn.pr th,
table.cmn.pr td{
    padding: 5px 5px;
    font-size: 1.3rem;
}

header.page #logo{
	width: 250px;
    margin: 0 auto;
	
	padding-left: 0;
}

#mainImage{
	height: 250px;
	background-size: auto 250px;
}

#mainImage.v2 .imageArea::before{
	padding-top: 70%;
}
#mainImage.v2 .imageArea .item{
    width: 26.14%;
}
#mainImage.v2 .imageArea .item#image01{
    width: 53.2%;
    left: 48.6%;
}
#mainImage.v2 .imageArea .item#image02{
    left: 22.6%;
}
#mainImage.v2 .imageArea .item#image03{
    left: 101.5%;
}
#mainImage.v2 .imageArea .item#image04{
    left: -3.45%;
}
#mainImage.v2 .imageArea .item#image05{
    left: -29.6%;
}

#mainImage.v2 .logoBar{
    width: 62%;
    bottom: 15px;
}

#mainImage .entryBtn{
	width: 120px;
    
    background-size: 30px auto;
}
#mainImage .entryBtn a{
    font-size: 1.4rem;
    
    padding-top: 15px;
    padding-bottom: 35px;
    margin-bottom: 10px;
}

#mainImage .mypageBtn{
	width: 120px;
    
    background-size: 30px auto;
}
#mainImage .mypageBtn a{
    font-size: 1.4rem;
    
    padding-top: 15px;
    padding-bottom: 35px;
    margin-bottom: 10px;
}
#mainImage .progressBtn{
	width: 100px;
}
#mainImage .progressBtn a{
	padding: 6px 1px;
    font-size: 1.2rem;
}


.newsArea .box.branch .content{
    width: 90%;
}
.newsArea .box table{
    width: 90%;
}


#subpageMainImage{
	height: 150px;
}

.categoryTitle{
    margin-top: -95px;
    padding-top: 80px;

    background-size: 80px auto;
}
.categoryTitle.catIndex{
    margin-top: -72px;
    padding-top: 75px;
}
.categoryTitle.textonly{
    margin-top: -60px;
}
.categoryTitle .cname{
    font-size: 1.4rem;
    
    padding: 5px 20px;
    border-radius: 15px;
    
    margin-bottom: 15px;
}
.categoryTitle.catIndex .cname{
    margin-top: 22px;
    font-size: 1.8rem;
    padding: 10px 40px;
    border-radius: 30px;
}

#subIndex{
	padding: 20px 0 50px;
}
#subIndex li{
	width: 100%;
    margin: 0;
	
	margin-bottom: 30px;
}

#subIndex li .text{
	padding: 15px 20px;

	font-size: 1.6rem;
}
#subIndex li .text .desc{
	font-size: 1.4rem;
}


.subpageBody{
    padding: 30px 0 20px;
    
    margin-bottom: 40px;
}

.subpageBody h1,
.subpageTC .pageBody > h1{
    margin-bottom: 30px;
}
.subpageBody h1 .title,
.subpageTC .pageBody > h1 .title{
    padding: 0 5px 10px;
    max-width: 90%;
    
    font-size: 2.0rem;
}
.subpageTC .pageBody > h1.article .title{
    max-width: 95%;
    font-size: 2.0rem;
}
.subpageBody h1 .title::after,
.subpageTC .pageBody > h1 .title::after{
    width: 110%;
    height: 4px;
    border-radius: 3px;
    margin-top: 4px;
    margin-left: -5%;
}

.subpageBody h2{
    margin-bottom: 20px;
    
    padding: 8px 20px;

    font-size: 1.9rem;
}
.subpageBody h3{
    font-size: 1.7rem;

    margin-bottom: 15px;
}
.subpageBody h4{
    font-size: 1.6rem;

    margin-bottom: 9px;
}

.subpageBody.basic > p,
.subpageBody.basic > ul,
.subpageBody.basic > table,
.subpageBody.basic > div.row,
.subpageBody.basic > div.importBody{
    width: 90%;
}


ul.ambassador li{
    width: 46%;
    margin: 0 2% 40px;
}

.entryStep h3 .num{
    width: 30px;
    height: 30px;
    font-size: 1.7rem;
    padding: 6px 0;
    border-radius: 25px;
    
    margin: 5px 10px;
}
.entryStep h3 .title{
    font-size: 1.6rem;
}


.row.lImg .image,
.row.lhImg .image{
    width: 100%;
    margin-bottom: 20px;
}
.row.lImg .text,
.row.lhImg .text{
    width: 100%;
}


.tabArea {
}
.tabItem {
    height: 50px;
    padding: 10px 10px;
}
.tabItem .text{
    font-size: 1.4rem;
}
.tabContent {
    border-top-width: 10px;
    padding: 20px 5% 30px;
}
.tabContent::after {
    border-width: 12px 12px 0 12px;
}

.subpageBody.basic > ul.linkTabs{
    height: 60px;
    margin-bottom: 35px;
}
ul.linkTabs li a .txt{
    font-size: 1.4rem;
}
ul.linkTabs li.current::after {
    bottom: -22px;
    border-width: 12px 12px 0 12px;
}

ul.activityList li .date{
    padding-left: 2.0rem;
    font-size: 1.4rem;
    padding-bottom: 0.5rem;
}
ul.activityList li .title{
    padding-left: 2.0rem;
    text-indent: -2.0rem;
    font-size: 1.7rem;
    padding-bottom: 0.5rem;
}
ul.activityList li .group{
    padding-left: 2.0rem;
    font-size: 1.3rem;
}
ul.activityList li .title::before {
    padding-right: 4px;
}


.activityDetail .header{
    margin-top: 0px;
    margin-bottom: 20px;
}
.activityDetail table.cmn th,
.activityDetail table.cmn td{
    box-sizing: border-box;
    display: block;
    width: 100%;
    
    border-bottom: none;
}
.activityDetail table.cmn th{
    border-bottom: none;
    padding: 6px 15px;
}
.activityDetail table.cmn td{
    border-top: none;
    padding: 10px 15px 20px;
}

.listNavi{
    margin-top: -10px;
    padding-bottom: 30px;
}
.listNavi.lower{
    margin-top: 0;
    padding-top: 30px;
    padding-bottom: 60px;
}
.scBox{
    padding-bottom: 60px;
}


ul.infoList li .date{
    padding-left: 2.0rem;
    font-size: 1.4rem;
    padding-bottom: 0.1rem;
}
ul.infoList li .category{
    min-width: 5em;
    padding: 3px 6px;
    font-size: 1.3rem;

/*    margin-left: 2.0rem;
    margin-right: 8px;
    margin-bottom: 0.4rem;*/
    margin: 0 0 0 8px;
}
ul.infoList li .title{
    padding-left: 2.0rem;
    text-indent: -2.0rem;
    font-size: 1.7rem;
    padding-bottom: 0.5rem;
}
ul.infoList li .title::before {
    padding-right: 4px;
}



.subpageTC{
    margin-bottom: 50px;
}
.subpageTC .main{
    width: 100%;
}
.subpageTC .sub{
    width: 100%;
}
.subpageTC .pageBody{
    padding: 40px 5% 30px;
}
.subpageTC .subBody{
    padding: 40px 0 30px;
}
.subpageTC .acHeader{
    margin-bottom: 35px;
}
.subpageTC .acCat{
    font-size: 1.3rem;
}
.subpageTC .acDate{
    font-size: 1.4rem;
}

article{
    margin-bottom: 60px;
}
article h1{
    font-size: 1.9rem;
    margin-bottom: 1.5em;
}
article h2{
    font-size: 1.7rem;
    margin-bottom: 1.5em;
}
article h3{
    font-size: 1.6rem;
    margin-bottom: 1.5em;
}

article p{
    font-size: 1.5rem;
    margin-bottom: 1.5em;
}

.subpageTC .navTitle{
    padding: 8px 8%;
    font-size: 1.4rem;
}
.subpageTC ul.category,
.subpageTC ul.archive{
    padding: 12px 8%;
}
.subpageTC ul.category li a,
.subpageTC ul.archive li a{
    padding: 6px 0;
    font-size: 1.3rem;
}


dl.form dt{
	font-size: 1.5rem;
}
dl.form dd{
	font-size: 1.5rem;
}
dl.form dd div{
	font-size: 1.5rem;
}
dl.form input[type="text"],
dl.form input[type="password"]{
	font-size: 1.5rem;
}
dl.form select{
	font-size: 1.5rem;
}
form input[type="button"],
form input[type="submit"]{
	font-size: 1.5rem;
}
form input[type="button"].back,
form input[type="submit"].back{
	font-size: 1.4rem;
}
dl.form .notice{
	font-size: 1.3rem;
}


.singleContent ul li{
    font-size: 1.5rem;
}


footer.page{
	padding: 0 0 15px;
}

footer.page .ftNavi{
    padding: 10px 0;
}
footer.page .ftNavi li{
    padding: 0 12px;
}
footer.page .ftNavi li a{
    font-size: 1.2rem;
}
footer.page .logo{
    max-width: 200px;
    padding: 15px 0 0px;
}
footer.page .copyright{
	font-size: 0.9rem;
}





}



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

#mainImage.v2 .imageArea::before{
	padding-top: 78%;
}
#mainImage.v2 .imageArea .item{
    width: 29.13%;
}
#mainImage.v2 .imageArea .item#image01{
    width: 59.28%;
    left: 48.4%;
}
#mainImage.v2 .imageArea .item#image02{
    left: 19.8%;
}
#mainImage.v2 .imageArea .item#image03{
    left: 101.5%;
}
#mainImage.v2 .imageArea .item#image04{
    left: -3.45%;
}
#mainImage.v2 .imageArea .item#image05{
    left: -29.6%;
}

#mainImage.v2 .logoBar{
    width: 70%;
    bottom: 25px;
}

#mainImage .mypageBtn{
	width: 110px;
    
    background-size: 20px auto;
}
#mainImage .mypageBtn a{
    font-size: 1.2rem;
    
    padding-top: 15px;
    padding-bottom: 35px;
    margin-bottom: 10px;
}

#information ul.items li{
    width: 98%;
    margin: 0 1% 20px;
}

#information ul.items li .tcimage{
    display: none;
}
#information ul.items li.tc .tcimage{
    display: none;
}
#information ul.items li.tc .image{
    display: block;
}


table.cmn.registProf th{
    font-size: 1.2rem;
    padding: 3px 8px;
}
table.cmn.registProf td{
    font-size: 1.4rem;
    padding: 3px 8px;
}


#subpageMainImage.ss{
	height: 100px;
}


ul.teaser > li{
    width: 100%;
    margin-right: 0;
    
    margin-bottom: 40px;
}
ul.teaser > li:nth-child(3n){
    margin-right: 0;
}
ul.teaser > li:nth-child(2n){
    margin-right: 0;
}
ul.teaser.qt > li{
    width: 100%;
    margin-right: 0;
}
ul.teaser.qt > li:nth-child(4n){
    margin-right: 0;
}
ul.teaser.qt > li:nth-child(3n){
    margin-right: 0;
}
ul.teaser.qt > li:nth-child(2n){
    margin-right: 0;
}

ul.teaser.acList > li{
    margin-bottom: 60px;
}


ul.iLink li .image{
    width: 16%;
    padding-left: 1%;
}
ul.iLink li .text{
    width: 82%;
}


ul.activityList li .image{
    width: 16%;
    padding-left: 1%;
}
ul.activityList li .image img{
    height: 13vw;
}
ul.activityList li .text{
    width: 82%;
}


ul.grouplist > li{
    width: 100%;
    margin-right: 0;
    
    margin-bottom: 40px;
}
ul.grouplist > li:nth-child(3n){
    margin-right: 0;
}
ul.grouplist > li:nth-child(2n){
    margin-right: 0;
}
ul.grouplist .pref{
    font-size: 1.7rem;
    margin-bottom: 1.0rem;
}
ul.grouplist > li > ul > li{
    font-size: 1.5rem;
    padding-bottom: 0.5em;
}
ul.grouplist a::before {
    padding-right: 8px;
}


.activityDetail .header{
    margin-top: 0px;
    margin-bottom: 20px;
}
.activityDetail .header .bundan{
    font-size: 1.3rem;
    padding: 5px 23px;
}
.activityDetail .date{
    margin-top: -20px;
    margin-bottom: 20px;
}
.activityDetail .schedule{
    margin-top: -20px;
    margin-bottom: 20px;
}
.activityDetail .schedule .label{
    font-size: 1.6rem;
    padding: 5px 23px;
}
.activityDetail .bodyArea{
    margin-bottom: 30px;
}

.masonry {
    column-count: 1;
}

.activityDetail .footer{
    padding-top: 30px;
    
    margin-bottom: 40px;
}


.pageTop {
	bottom: 80px;
	right: 10px;
	
	width: 40px;
}


}



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

header.page #logo{
	margin: 0 0 0 20px;
    width: 230px;
}

}



