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

@font-face {
 font-family: "noto";
 font-style: normal;
 font-weight:normal; line-height:110%;
 src: url('../fonts/noto.woff') format('woff'), url('../fonts/noto.ttf') format('truetype');
}

@font-face {
 font-family: "noto";
 font-style: normal;
 font-weight:bold; line-height:100%;
 src: url('../fonts/noto_bold.woff') format('woff'), url('../fonts/noto_bold.ttf') format('truetype'); 
}
@font-face {
 font-family: "notomin";
 font-style: normal;
 font-weight:normal; line-height:110%;
 src: url('../fonts/notomin.woff') format('woff'), url('../fonts/notomin.ttf') format('truetype');
}

@font-face {
 font-family: "notomin";
 font-style: normal;
 font-weight:bold; line-height:100%;
 src: url('../fonts/notomin_bold.woff') format('woff'), url('../fonts/notomin_bold.ttf') format('truetype'); 
}

body{
  font-family:'noto'; margin:0; padding:0; width:100vw;
    word-wrap : break-word; overflow-wrap : break-word;
	animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal; overflow-x:hidden;font-size: 2.66vw; line-height:16px  }
html{
  overflow-x:hidden;
  overflow-y:scroll;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width:100vw; margin:0; padding:0; text-align:center;font-size: 62.5%;}
  
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

   /* IE10以降 */
@media all and (-ms-high-contrast:none){
html{
  font-size: 10px;  }
}

.notomin { font-family:"notomin" !important;}
.noto { font-family:"noto" !important;}


.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}  
 
input[type=radio] {
    width: 30px;
    height: 30px;
    vertical-align: middle;
}

tr td{ font-size:1.6rem; text-align:2.4rem; text-align:left }
.table { display:table; list-style:none; margin:0; padding:0; box-sizing:border-box }
.table li { display:table-cell; margin:0; padding:0; vertical-align:middle; text-align:left; box-sizing:border-box }
img{ width:100%}
a img{border:none;}
a { text-decoration:none}
a:hover { opacity:0.8; transition-duration: 0.8s, 0.8s, 1.0s, 1.0s;} 
header{ width:100vw; background-color:#FFF; padding:0; position:fixed; top:0; left:0; z-index:10; height:7vh; min-height:100px; text-align:left }
.logo_main{  margin:10px; height:60px; width:auto}

.menu {  width:96vw; list-style:none; margin:0 auto; padding:0; height:100px; background:#FFF }
.menu dl { display:block; float:left;  font-weight:bold; width:13vw; text-align:center; padding:0; margin:0; height:100px; color:#333; box-sizing:border-box; border-bottom:#999 3px double; border-left:#CCC 1px dotted }
.menu dl a { text-decoration:none; color:#333 !important; height:100px; display:block; color:#600 }
.menu dl a dt { font-size:1.8rem; line-height:2.2rem;  margin:0; padding:40px 0 10px 0; }
.menu dl a dd { font-size:0.8rem; margin:0px; padding:0; }
.menu dl a img { height: 60px; width:auto; padding:15px 0;}
.menu dl a:hover { background-color:#097ACB; color:#FFF !important; } 
.menu dl dt { font-size:1.5rem; margin:0; padding:20px 0 10px 0; }
.menu dl dd { font-size:2rem; margin:0px; padding:0; }
.vw21{ width:18vw !important; }
.vw21 dt{ font-size:1.6rem !important;}

.ac_menu {display:none;}
.copy { width:90vw; margin:50px auto; padding:0; box-sizing:border-box;  }
.copy p { padding:20px !important; margin:0 !important; box-sizing:border-box; font-size:2.0rem !important; line-height:2.6rem !important; font-family:"notomin"; text-align:left}
.topcopy { background: -moz-linear-gradient(115deg, #0093A1 20%, #AFD5A0 40%, #0093A1 100%);
background: -webkit-linear-gradient(115deg, #0093A1 20%, #AFD5A0 40%, #0093A1 100%);
background: -ms-linear-gradient(115deg, #0093A1 20%, #AFD5A0 40%, #0093A1 100%);
 box-shadow:2px 2px rgba(0,0,0,0.4); width:90vw; margin:30px auto !important; box-sizing:border-box;  padding:40px 20px !important; box-sizing:border-box; font-size:3.2rem !important; line-height:5.0rem !important; font-family:"notomin"; color:#fff; text-align:center}
.ttl{ text-align:center; border-bottom:5px solid #0099CC; font-size:2.6rem; line-height:3.6rem; width:90vw; margin:60px auto 40px auto; }

/* flexbox */
.flexbox{ box-sizing:border-box; display:inline-flex; flex-flow: row wrap; }
/* flexbox */
.topics{ width:90vw;justify-content:space-around; margin:20px auto; padding:10px;background-color:#CCC;	background-image: repeating-linear-gradient(45deg,#999, #999 3px,transparent 0, transparent 6px);box-shadow:2px 2px rgba(0,0,0,0.4); font-family:"noto"; box-sizing:border-box; }
.item { background:rgba(255,255,255,0.8); width:40%;  border:#FFF 1px solid; box-shadow:2px 2px rgba(0,0,0,0.4); padding:10px 0 40px 0; box-sizing:border-box; margin:20px auto; align-items: stretch; font-size:2.0rem; line-height:2.8rem; }
.tel{ color:#FFF; background-color:#336699; border:#FFF double 5px; width:90vw; margin:50px auto; line-height:3.0rem; font-size:2.0rem; text-align:center; padding:20px 0 }

footer { color:#FFF; background-color:#336699; width:100vw; padding:20px 0; margin:50px 0 0 0; font-size:2.0rem; line-height:2.6rem}
.kcfg2 div{align-self: center !important; font-family:"notomin" }
.kcfg2 img{ height:50px; width:auto !important; margin:20px !important; padding:0 }
.credit{ line-height:50px; font-size:1.4rem; margin:0;}

.bdnone { border-left:none !important}

.f_orange{color:rgb(255,147,38);}
.pc{display:block;}
.phone{ display:none}

@media only screen and (max-width: 1200px) {
	.item { width:40vw;}

}

/* ------------------------------
   MEDIAQUERIES LAYOUT
------------------------------ */

@media only screen and (max-width: 1000px) {
.ac_menu { display:block;}
.menu { display:none;}
label { display: block; cursor :pointer; top:0; right:0; width:60px; height:60px; position:fixed; background:url(../image/common/bg_menu.jpg) #000 no-repeat top center; background-size:contain; color:#FFF; line-height:25px; font-size:16px; z-index:21;}
label span {
    display:block;
    position:absolute; /*#navToggle div に対して*/
    width:80%; margin:0 10%;
    border-bottom:solid 3px #FFFFFF;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out}
label span:nth-child(1) {top:30px}
label span:nth-child(2) {top:40px}
label span:nth-child(3) {top:50px}

input[type="checkbox"].bellows{
    display: none;/* チェックボックスの非表示 */
}

.ac_menu ul { z-index:22;
/* メニュー開閉時アニメーション */
    background:rgba(91, 91, 91, 0.8);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    margin: 0;
    padding: 0; font-size:1.5rem;
    list-style: none; top:50px; right:0; position:fixed;
}

.ac_menu li {
    padding:10px; text-align:left; }
.ac_menu li a { border-left:#0CF 3px solid; text-decoration:none; color:#FFF; padding:0 20px;}
.ac_menu li a:hover { border-left:#069 3px solid; border-bottom:#FC3 3px solid;}


input[type="checkbox"].bellows + ul{
    max-height: 0;/* チェックが入っていない時の高さ */
    overflow: hidden;
}

input[type="checkbox"].bellows:checked + ul{
    max-height: 50em;/* チェックが入っているときの高さ */
}

h1 { font-size:3.6rem; }
.staff { width:100vw; }
.photo li { width:50%;}
.table { float:none; display:block;   }
.table li { display:block; }

}

@media print, screen and (max-width: 768px) {
h1 { font-size:3.2rem; line-height:4.0rem; }
.item { width:80vw; font-size:1.6rem; line-height:2.2rem}
.results div{ width:98%;}
.pc{ display:none}
.phone{ display:block;}
}

@media print, screen and (max-width: 500px) {

}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

/*
