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


/* text ◇ ------------------------------*/
p {text-justify: inter-ideograph;}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	line-height:1.7em;
	letter-spacing:0.1em;
	font-weight: 600;
	margin: 0;
	text-rendering: optimizeLegibility;}

.noto100 {font-weight:100;}
.noto200 {font-weight:200;}
.noto300 {font-weight:300;}
.noto400 {font-weight:400;}
.noto500 {font-weight:500;}
.noto600 {font-weight:600;}
.noto700 {font-weight:700;}
.noto800 {font-weight:800;}
.noto900 {font-weight:900;}

small {font-size: 75%;}

.txt_wh {color:#fff;}
.txt_bl {color:#0080e6;}
.txt_rd {color:red;}
.txt_center {text-align:center;}
.txt_left {text-align:left; text-align: justify;}

.tx250 {font-size:250%;}
.tx200 {font-size:200%;}
.tx150 {font-size:150%;}
.tx130 {font-size:130%;}
.tx120 {font-size:120%;}
.tx110 {font-size:110%;}
.tx90 {font-size:90%;}
.tx80 {font-size:80%;}
.tx75 {font-size:75%;}

.nolink { pointer-events: none; text-decoration-line: none; color: inherit !important;}


/* image ◇ ------------------------------*/

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
	transition: .5s;}

/* margin ◇ ------------------------------*/

.mt05   { margin-top: 5px;}
.mt10   { margin-top: 10px;}
.mt15   { margin-top: 15px;}
.mt20   { margin-top: 20px;}
.mt30   { margin-top: 30px;}
.mt40   { margin-top: 40px;}
.mt50   { margin-top: 50px;}
.mt60   { margin-top: 60px;}
.mt70   { margin-top: 70px;}
.mt80   { margin-top: 80px;}
.mt90   { margin-top: 90px;}
.mt100   { margin-top: 100px;}
.mb05   { margin-bottom: 5px;}
.mb10   { margin-bottom: 10px;}
.mb15   { margin-bottom: 15px;}
.mb20   { margin-bottom: 20px;}
.mb30   { margin-bottom: 30px;}
.mb40   { margin-bottom: 40px;}
.mb50   { margin-bottom: 50px;}
.mb60   { margin-bottom: 60px;}
.mb70   { margin-bottom: 70px;}
.mb80   { margin-bottom: 80px;}
.mb90   { margin-bottom: 90px;}

.mr05   {margin-right: 5px;}
.mr10   {margin-right: 10px;}
.mr15   {margin-right: 15px;}
.mr20   {margin-right: 20px;}

.ml05   {margin-left: 5px;}
.ml10   {margin-left: 10px;}
.ml15   {margin-left: 15px;}
.ml20   {margin-left: 20px;}

.mrml10 {margin-right: 10px; margin-left:10px;}

/* switching ◇ ------------------------------*/
@media only screen and (min-width: 768px) {
.mdsp { display: none !important; } /* MD・SP用（992からはここを読み込む） */
}
@media only screen and (max-width: 767px) {
.pc { display: none !important; } /* PC用（991までの幅の場合に適応される） */
}

/* media ◇ ------------------------------*/

@media screen and (min-width:480px) { 
    /*　for iPhone Landscape　(iPhone 横)　*/
}
@media screen and (min-width:768px) and ( max-width:1024px) {
    /*　for iPad 　*/
}
@media screen and (min-width:1024px) {
    /*　for PC　*/
}


.bc_bg_ye {background:#ffd200;}
.bc_bg_gr {background:#00b3b7;}
.bc_bg_bl {background:#0080e6;}
.bc_bg_aq {background:#d9ebff;}



/* ガター幅（余白）を調整 ◇ ------------------------------*/
.row-0   { margin-left:0px; margin-right:0px;} .row-0>div  { padding-right:0px; padding-left:0px;}
.row-10  { margin-left:-5px; margin-right:-5px;} .row-10>div { padding-right:5px; padding-left:5px;}
.row-20  { margin-left:-10px; margin-right:-10px;} .row-20>div { padding-right:10px; padding-left:10px;}
.row-30  { margin-left:-15px; margin-right:-15px;} .row-30>div { padding-right:15px; padding-left:15px;}
.row-40  { margin-left:-20px; margin-right:-20px;} .row-40>div { padding-right:20px; padding-left:20px;}
.row-50  { margin-left:-25px; margin-right:-25px;} .row-50>div { padding-right:25px; padding-left:25px;}
.row-60  { margin-left:-30px; margin-right:-30px;} .row-60>div { padding-right:30px; padding-left:30px;}

.mx1200{
	max-width:1140px;
	margin:0 auto;
	padding:0 20px;}

.w-300 { width: 300px !important; }
.w-250 { width: 250px !important; }
.w-200 { width: 200px !important; }
.w-140 { width: 140px !important; }
.w-50p { width: 50% !important; }

/* ヘッダー ◇ ------------------------------*/
.current { color:#0080e6; background:#ffd200!important;}
.current a { color:#0080e6!important;}

.gnav-menulist { font-size:90%; font-weight:bold; display: table; table-layout: fixed; list-style-type: none; padding: 0; width: 100%; height: 100%;}
.gnav-menulist li {display: table-cell; vertical-align: middle; border-left: 1px solid #fff; word-wrap: break-word; height: 100%; background: #0080e6;}
.gnav-menulist li:first-child {border-left: 0px solid #fff;}
.gnav-menulist a{
  display: inline-block;
  vertical-align: middle;
  padding: 1em;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
  text-align: center;
  box-sizing: border-box;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;}
.gnav-menulist li a:hover { color: #0080e6; background: #ffd200;}

.logo {margin: 0 0 0 20px; padding-top:6px;}
@media (max-width: 600px) { .logo img{width:300px; padding-top:10px; margin-left:-10px;} }

.hd_box { position:relative; height:85px;}
@media (max-width: 969px) { .hd_box { border-bottom:5px solid #0080e6; }}

.hd_right { position:absolute; float:right; right:0; top:0; font-weight:bold;}

.hd_box_right ul{ display: flex; padding: 0; margin: 0; list-style: none; }

.hd_box_right a{
  display: inline-block;
  vertical-align: middle;
  padding: 1.55em 1em;
  width: 100%;
  height: 100%;
  text-decoration: none;
  text-align: center;
  box-sizing: border-box;}

.hd_box_right a:hover{ opacity:0.5; filter:alpha(opacity=50); -ms-filter: "alpha( opacity=50 )";}
.hd_box_link_a a {color:#0080e6; transition : all 0.5s ease 0s;}
.hd_box_link_b a {color:#ffffff; transition : all 0.5s ease 0s;}

.hd_box_right_in01 {width:290px; text-align: center; padding: 0.65em 0 0;}
.hd_box_right_in01 h3{ font-size:160%; letter-spacing:0.05em;}
.hd_box_right_in01 p{ font-size:76%; font-weight:bold;}
.hd_box_right_in01 a{ color:#000; margin: 0; padding: 0;}

.hd_box_right_in02 {width:90px; height:85px; font-size:70%;}
.hd_box_right_in02 p{margin-top:4px;}


/* フッター ◇ ------------------------------*/

.ft_toggle a:hover {color:#fff; cursor: pointer;}
.ft_toggle {color:#fff; cursor: pointer;}

#footbar {
    z-index: 1000;
    position: fixed;
    bottom: 0px;
    left: 0px;
    width: 100%;
    background-color: #ffd200;
	text-align:center;
	font-size:12px;
	font-weight:bold;}

.ft_box_a {padding:0.8em 1em 0.6em;}
.ft_box_b {padding:0.8em 1em 0.6em; background:#0080e6;}

a.ft_box_a {color: #000; text-decoration:none;}
a.ft_box_b {color: #fff; text-decoration:none;}

.copyright_pc {
  margin: 60px 0px 10px 30px;	
  font-size: 75%;}

@media (min-width: 970px) { .bp_970o {display: none;} #page_top{width:65px; height: 75px; position: fixed; right: -90px; bottom: 0px; z-index:99;} }
@media (max-width: 969px) { .bp_970u {display: none;} #bp_970u {display: none;} #page_top {display: none;} #footer{padding-bottom:58px;}}

/* full screen navi ◇ ------------------------------*/

#toggle { position: fixed; top: 0; right: 0; z-index: 1001; width:90px; height:85px; background: #0080e6; text-align:center; cursor: pointer; transition : all 0.5s ease 0s;}
#toggle p{ font-size:76%; margin-top:4px; color:#ffffff; font-weight:bold;}
#toggle:hover{ opacity:0.5; filter:alpha(opacity=50); -ms-filter: "alpha( opacity=50 )";}
#toggle-box { position: relative; width: 50px; height: 30px; margin:18px auto 0;}
#toggle-box > span { height: 2px; left: 10px; display: inline-block; background: #fff; position: absolute; transition: all .6s;}
#toggle-box > span:nth-child(1) { top: 5px; width: 30px; }
#toggle-box > span:nth-child(2) { top: 15px; width: 30px; }
#toggle-box > span:nth-child(3) { top: 25px; width: 30px; }
.is-open #toggle-box > span {background: #fff;}
.is-open #toggle-box > span:nth-child(1) { top: 11px; left: 9px; transform: translateY(6px) rotate(-45deg); width: 32px;}
.is-open #toggle-box > span:nth-child(2) { top: 23px; left: 9px; transform: translateY(-6px) rotate(45deg); width: 32px;}
.is-open #toggle-box > span:nth-child(3) { top: 23px; left: 9px; transform: translateY(-6px) rotate(45deg); width: 32px;}
.is-open #nav-content {z-index: 1000; transform: translateX(0);}

#nav-content {
    z-index: 1000;
    overflow: auto;
    width: 100%;
    height: 100%;
    background-color: rgba(232,244,253,0.95);
	background-image: url("../images/common/face1.svg"),url("../images/common/face2.svg");
	background-repeat:no-repeat;
    color: #212529;
    position: fixed;
    top: 0;
    right: 0;
    text-align: center;
    transform: translateX(100%);
    transition:  transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);}


@media (min-width: 993px) {
	#nav-content { background-position:left 10% top 9%, right 5% bottom 9%;}
	.nav-menu-box { width:910px; padding: 0 30px; text-align:left; position: absolute; top:40%; left:50%; transform: translateY(-50%) translateX(-50%);} 
	.nav-menu-box_title {margin-bottom:40px;}
	.nav-content_in_pc ul { margin: 15px 0 0 0; font-size:120%; padding: 0; list-style: none; text-align:left; border-bottom: 2px dashed #0080e6;}
	.nav-content_in_pc li a { padding: 15px; }
}

@media (min-width: 970px) and (max-width: 992px)  {
	#nav-content { background-position:left 10% top 9%, right 5% bottom 9%;}
	.nav-menu-box { max-width:600px; margin:20px auto 0; padding:30px; text-align:left;}
	.nav-menu-box_title {margin-bottom:40px;}
	.nav-menu-box_right {padding-top:30px;}
	.nav-content_in_pc ul { margin: 15px 0 0 0; font-size:100%; padding: 0; list-style: none; text-align:left; border-bottom: 2px dashed #0080e6;}
	.nav-content_in_pc li a { padding: 10px; }
}

@media (max-width: 969px)  {
	#nav-content { background-position:left 10% top 9%, right 5% top 40%}
	.nav-menu-box { max-width:600px; margin:0 auto; padding:30px 40px; text-align:left;}
	.nav-menu-box_title {margin-bottom:10px;}
	.nav-menu-box_right {padding-top:10px;}
	.nav-content_in_pc ul { margin: 15px 0 0 0; font-size:100%; padding: 0; list-style: none; text-align:left; border-bottom: 2px dashed #0080e6;}
	.nav-content_in_pc li a { padding: 5px; }
}

.nav-menu-box-time {border:2px solid #fff; background:#fff; padding:5px;}
.nav-content_in_pc li { margin: 0; padding: 0;}
.nav-content_in_pc li a{ position:relative; display: block; font-weight: 600; border-top: 2px dashed #0080e6; text-decoration: none;}


.nav-content_in ul { margin: 15px 0 0 0; padding: 0; list-style: none; text-align:left;}
.nav-content_in li { margin: 0; padding: 0;}
.nav-content_in li a{
	display: block;
	font-weight: bold;
	border-top: 1px solid #eaedf2;
	border-left: 1px solid #eaedf2;
	border-right: 1px solid #eaedf2;
	background-color: #fff;
	padding: 10px;
	text-decoration: none;
	color: #212529;}
.nav-content_in li:last-child a{border-bottom: 1px solid #eaedf2;}
.nav-content_in li a:hover{background-color: #fbfbf8;}
.nav-content_in {
	max-width:600px;
	margin:0 auto;
	padding:15px;}