@charset "utf-8";


/* ************************************************ 
*	基本設定
* ************************************************ */	
body {
font-family: 'Roboto','Sawarabi Gothic','Noto Sans JP',sans-serif;
font-size: 15px;
background:#fff;
color: #333;
line-height: 180%;
overflow-x: hidden;
}

/* リンク */
a{
	color: #333;
	text-decoration: underline;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}

a:hover{
color:#339fcc;
text-decoration: none;
}

a:active, a:focus {
outline: 0;
}

/* 画像 */
img{
border:0;
padding:0px;
margin:0px
vertical-align: bottom;
}

img a{
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}


/* フロート */
.right{ float: right; }
.left{ float: left; }
.clear{ clear:both; }


/* リスト */
ol{
margin: 0 0 0 5px;
padding: 0 0 0 0;
list-style: decimal;
}

ul{
margin: 0 0 0 0;
padding: 0 0 0 0;
list-style: none;
}

li{
margin: 0 0 10px 15px;
padding: 0 0 0 0;
}

li a{
color:#333;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}

li a:hover{
color:#000;
}

#topcontrol{
z-index:99999;
}

ruby {
color: #fff;
}
.red {
color: #ff0000;
}
.mL05 { margin-left: 0.7em; }
.mL1 { margin-left: 1em; }
.mL2 { margin-left: 2em; }
.mL3 { margin-left: 3em; }
.mL4 { margin-left: 4em; }
.mL5 { margin-left: 5em; }
.mL6 { margin-left: 6em; }
.mL7 { margin-left: 7em; }
.mL8 { margin-left: 8em; }
.mL9 { margin-left: 9em; }
.mL10 { margin-left: 10em; }
.mR2 { margin-right: 2em; }
.mR3 { margin-right: 3em; }
.mR4 { margin-right: 4em; }
.mR5 { margin-right: 5em; }

.width90{
width: 90%!important;
}
.width80{
width: 80%!important;
}
.width70{
width: 70%!important;
}
.width60{
width: 60%!important;
}
.width50{
width: 50%!important;
}
.width38{
width: 38%!important;
}
.width35{
width: 35%!important;
}
.width30{
width: 30%!important;
}
.width25{
width: 25%!important;
}
.width20{
width: 20%!important;
}
.width10{
width: 10%!important;
}
.width5{
width: 5%!important;
}

.bold { font-weight: bold; }
.big110 { font-size: 110%; }
.big120 { font-size: 120%; }
.big130 { font-size: 130%; }

.underline { text-decoration: underline; }
.center { text-align: center; margin: 0 auto 0 auto;}


/*---------------------------------------------------------------------------------
エフェクト
--------------------------------------------------------------------------------- */
/* 画面外にいる状態 */
.effect {
  opacity : 0;
  transition : all 900ms 300ms ease-out;
  transform: translate(0,0);
}
.fv-effect {
  transition : all 300ms 600ms ease-out;
  transform: translate(0,0);
  opacity: 0;
}
.fade-drop {
  transform: translate(0,-50px);
}
/* 画面内に入った状態 */
.effect-on {
  opacity: 1.0;
  transform: translate(0,0px);
}
/*ファーストビューエフェクト*/
.loaded .fv-effect {
  opacity: 1;
  transform: translate(0,0)!important;
}


/* ************************************************ 
*	全体Wrapper
* ************************************************ */	
.wrapper {
width: 90%;
max-width: 1000px;
padding: 0 0 100px 0;
margin: 0 auto;
}
.wrapper-contents {
margin: 0 auto; 
width: 100%;
padding: 0;
position:relative;
z-index: 1;
-moz-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
-webkit-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
-o-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
-ms-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
}
.wrapper800 {
width: 90%;
max-width: 800px;
padding: 0 0 100px 0;
margin: 0 auto;
}


/* ************************************************ 
*	ヘッダー
* ************************************************ */
#header {
width: 100%;
height: 100px;
margin: 0;
position: absolute;
}
.header-inner {
margin: 0 auto;
padding: 0;
width: 95%;
height: 100px;
position: relative;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
align-content: center;
}

#header h1 {
margin: 0;
}

.logo {
	float: left;
	margin: 0;
	padding: 0;
}
.logo img{
width:100%;
max-width:438px;
vertical-align: middle;
}
.header-logobox {
padding: 0;
width:30%;
}
.header-navbox {
margin: 0 0 0 0;
display: flex;
justify-content: flex-end;
align-items: center;
align-content: center;
flex-wrap: wrap;
}


/* ************************************************ 
*	トップナビゲーション
* ************************************************ */	
#navDmy{
display:none !important;
}
#nav_bg {
background: rgba(255,255,255,0);
width: 100%;
height: 100px;
padding: 0;
margin: 0;
position:relative;
z-index:9999;
display:block;
}

/* 上部固定用 */
#nav_bg.active{
position:fixed;
top:0;
left:0;
background: rgba(0,0,0,0.6);
-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}
/* 上部固定用ここまで */

.nav {
margin: 0;
}

.nav ul {
list-style: none;
margin: auto;
letter-spacing: -0.5em; /* 隙間を埋める追加 */
}

.main-navigation {
clear: both;
margin: 0 auto;
position: relative;
}

ul.nav-menu,
div.nav-menu > ul {
margin: 0;
padding: 0;
}

.nav-menu li {
font-family: 'Noto Sans JP';
font-weight: 500;
color: #333;
display: inline-block;
line-height: 16px;
position: relative;
margin: 0 1vw;
padding: 0;
float: left; 
text-align:center;
letter-spacing: normal; /* 隙間を埋める追加 */
cursor: pointer;
cursor: hand;
}
.nav-menu li img{
vertical-align: bottom;
}

.nav-menu li a {
color: #fff;
display: block;
font-size: min(1.6vw,16px);
text-decoration: none;
margin: 0;
padding: 15px 0;
border-bottom: 4px solid rgba(255,255,255,0);
}

.nav-menu li:hover > a,
.nav-menu li a:hover {
color: #fff;
border-bottom: 4px solid #fff000;
}

.nav-menu li:last-child a {
color: #333;
display: block;
font-size: min(1.4vw,14px);
text-decoration: none;
margin: 6px 0 0 0;
padding: 2px 8px 7px 13px;
border-bottom: 0px solid rgba(255,255,255,0);
background-color: #fff;
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}
.nav-menu li:last-child a::before {
position:relative;
top: 3px;
left: -5px;
content:"";
display:inline-block;
width:14px;
height:20px;
background:url("../images/icon_member.svg") no-repeat;
background-size:contain;
}
.nav-menu li:last-child a:hover {
color: #333;
background-color: #fff000;
}

.nav-menu .sub-menu {
background-color: rgba(118,118,118,0.9);
display:none;
position: absolute;
z-index: 99999;
padding: 0 0 0 0;
}

ul.nav-menu ul a,
.nav-menu ul ul a {
color: #fff;
margin: 0;
}

ul.nav-menu ul a:hover,
.nav-menu ul ul a:hover {
background-color: rgba(255,255,255,0.8);
color: #333;
}

ul.nav-menu li:hover > ul,
.nav-menu ul li:hover > ul {
display: block;
}

.nav-menu .current_page_item > a,
.nav-menu .current_page_ancestor > a,
.nav-menu .current-menu-item > a,
.nav-menu .current-menu-ancestor > a {
}


/* ************************************************ 
*	メインイメージ
* ************************************************ */	
.main-img {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 100%;
  height: 100vh;
  background: url("../images/main_img.svg") center;
  background-size: cover;
  position: relative;
  z-index: 1;
}

.main-text {
z-index: 10;
position: absolute;
top: 30%;
left: 10%;
}
.main-text img{
width: 25vw;
}


/* ************************************************ 
*	トップタイトル共通
* ************************************************ */	
.toptitle-box {
margin: 0 auto 50px auto;
text-align: center;
}
.toptitle-box2 {
margin: 100px auto 50px auto;
text-align: center;
}
.title-top {
font-family: 'Roboto';
margin: 0;
padding: 0;
font-size: min(5vw,48px);
display: inline;
letter-spacing: 0.05em;
position: relative;
}


/* ************************************************ 
*	トップお知らせ
* ************************************************ */	
.top-news-block {
width: 90%;
max-width: 800px;
padding: 100px 0;
margin: 0 auto;
}

table#topnewsbox {
width: 100%;
margin: 0px 0 50px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
}
table#topnewsbox th {
font-family: 'Roboto';
font-weight: normal;
text-align: left;
padding: 20px 10px;
white-space: nowrap; 
border-bottom: 1px #999 solid;
width:11%;
font-size: min(1.6vw,16px);
}
table#topnewsbox td {
text-align: left;
padding: 20px 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
}
table#topnewsbox td a{
font-size: min(1.6vw,16px);
color: #333;
text-decoration: none;
}
table#topnewsbox td a:hover{
color: #000;
text-decoration: underline;
}

.morelink {
font-size: min(1.6vw,16px);
margin: 0 auto;
padding: 0;
text-align:center;
background-color:#fff;
border: 1px solid #333;
width: 250px;
border-radius: 50vh; /* CSS3 */
 -webkit-border-radius: 50vh; /* Firefox */
 -moz-border-radius: 50vh; /* Safari,Chrome */
}
.morelink a{
color: #333;
display: block;
padding: 11px 0 10px 0;
line-height: 200%;
text-decoration: none;
}
.morelink a:hover{
color: #fff;
background-color:#333;
border-radius: 50vh; /* CSS3 */
 -webkit-border-radius: 50vh; /* Firefox */
 -moz-border-radius: 50vh; /* Safari,Chrome */
}
.new_icon {
  color: #e83929;
  font-size: 1em;
  padding: 0.1em;
  margin-left: 10px;
  font-weight: bold;
}

/* ************************************************ 
*	トップインスタグラム
* ************************************************ */	
.top-insta-block {
margin: 0; 
width: 100%;
padding: 100px 0 100px 0;
background: linear-gradient(
    -45deg,
    #efefef 25%, #fff 25%,
    #fff 50%, #efefef 50%,
    #efefef 75%, #fff 75%,
    #fff
  );
background-size: 24px 24px;
position:relative;
z-index: 1;
-moz-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
-webkit-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
-o-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
-ms-box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
}

.top-insta-inner {
width: 90%;
max-width: 1000px;
padding: 0;
margin: 0 auto 20px auto;
display: flex;
flex-wrap: wrap;
justify-content: start;
align-items: center;
align-content: center;
}
.top-insta-inner img{
vertical-align: bottom;
}
.top-insta-box{
width: 23%;
margin: 0 2.6% 2.6% 0;
padding: 0;
position: relative;
z-index:0;
height: auto;
max-height: 220px;
overflow: hidden;
}
li.top-insta-box:nth-child(4n){ margin: 0 0 2.6% 0; }


.instalink-box {
width: 90%;
max-width: 1000px;
padding: 0;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
align-content: center;
}
.instalink,
.followlink {
font-size: min(1.6vw,16px);
margin: 0 20px;
padding: 0;
text-align:center;
background-color:#333;
border: 1px solid #333;
width: 250px;
border-radius: 50vh; /* CSS3 */
 -webkit-border-radius: 50vh; /* Firefox */
 -moz-border-radius: 50vh; /* Safari,Chrome */
}
.instalink a,
.followlink a{
color: #fff;
display: block;
padding: 11px 0 10px 0;
line-height: 200%;
text-decoration: none;
}
.instalink a:hover,
.followlink a:hover{
color: #333;
background-color:#ffcd4c;
border-radius: 50vh; /* CSS3 */
 -webkit-border-radius: 50vh; /* Firefox */
 -moz-border-radius: 50vh; /* Safari,Chrome */
}

.followlink a::before,
.followlink a:hover::before{
position:relative;
top: 3px;
left: -5px;
content:"";
display:inline-block;
width:15px;
height:15px;
background-size:contain;
}
.followlink a::before{ background:url("../images/icon_insta.svg") no-repeat; }
.followlink a:hover::before{ background:url("../images/icon_insta_bk.svg") no-repeat; }


/* ************************************************ 
*	メイン（本文）コンテンツ
* ************************************************ */	
#main {
margin:0 0 0 0;
padding: 0 0 0 0;
word-break:break-all;
}

.clear	{ clear: both; } 
.mT10	{ margin-top:10px; }
.mT20	{ margin-top:20px; }
.mT30	{ margin-top:30px; }
.mT40	{ margin-top:40px; }
.mB10	{ margin-bottom:10px; }
.mB20	{ margin-bottom:20px; }

.imgcenter{
text-align:center;
margin: 0 auto;
padding: 0;
}
.imgcenter img {
  vertical-align: bottom;
}
.htext{
text-align:center;
}

/* 記事部分 */	
p {
padding: 0;
line-height: 180%;
}

p a {
color: #333;
text-decoration:underline;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}

p a:hover {
color:#339fcc;
text-decoration:none;
}

p a:active, a:focus {
outline: 0;
}


/* フォント */	
.mincho {
font-family:'century','Times New Roman','Baskerville','Optima','Palatino','Georgia','ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HGS明朝E','ＭＳ Ｐ明朝','MS PMincho',serif;
}

.bold {
font-weight: bold;
}

.italic {
font-style: italic; 
}
.dllink {
margin: 10px auto 5px auto;
padding: 0;
background-color:#1462be;
text-align:center;
width: 40%;
}
.dllink a{
color: #fff;
display: block;
padding: 10px 0px;
font-size:18px;
line-height: 210%;
}
.dllink a:hover{
color: #fff;
background-color:#03335d;
}


/* ************************************************ 
*	フッターエリア
* ************************************************ */	
#footer {
clear:both;
width:100%;
font-size: 100%;
margin: 0;
padding: 0;
background-color:#fff;
}
.footer-link {
width:100%;
margin: 0 auto;
padding: 25px 0 23px 0;
background-color:#efefef;
}
.footer-link ul{
width:90%;
max-width:1000px;
margin: 0 auto;
padding: 0;
}
.footer-link ul li{
margin: 0 30px 0 0;
padding: 0 0 0 7px;
display:inline-block;
}
.footer-link ul li a{
text-decoration: none;
}
.footer-link ul li a:hover{
text-decoration: underline;
}

.footer-top {
width:100%;
margin: 0 auto;
padding: 50px 0;
text-align: center;
}
.footer-top .name{
font-size: min(2.1vw,21px);
letter-spacing:0.1em;
margin: 0 auto 20px auto;
}
.footer-top img{ vertical-align: bottom; }
.footer-top p{
color:#333;
line-height: 170%;
font-size: min(1.5vw,15px);
}
.footer-top p.add{
font-size: min(1.5vw,15px);
}
.footer-top p.add::before{
position:relative;
top: 5px;
left: -5px;
content:"";
display:inline-block;
width:20px;
height:26px;
background:url("../images/icon_map.svg") no-repeat;
background-size:contain;
}

.footer-top p.tel{
font-size: min(2.1vw,21px);
font-weight: 700;
}
.footer-top p.tel::before{
position:relative;
top: -1px;
left: -5px;
content:"";
display:inline-block;
width:14px;
height:14px;
background:url("../images/icon_tel.svg") no-repeat;
background-size:contain;
}

.block-end{
width: 60px;
border-bottom: 1px solid #fff;
margin: 20px auto;
}

.copyright {
margin: 0px auto 0px auto;
padding: 25px 0;
text-align:center;
font-size: 85%;
width: 100%;
color: #fff;
background-color: #363636;
}


/* ************************************************ 
*	ライン
* ************************************************ */
.line-dotted {
margin: 0 0 0 0;
padding: 0 0 0 0;
border-bottom:1px dotted #CCC;
}

.line-solid {
margin: 0 0 0 0;
padding: 0 0 0 0;
border-bottom:1px solid #CCC;
}


/* ************************************************ 
*	画像装飾
* ************************************************ */
.pict_right {
margin:0 0 10px 20px; 
padding: 2px 2px 2px 2px; 
float: right;
border: 1px solid #DCDCDC;
}

.pict_left {
margin:0 10px 10px 0; 
padding: 2px 2px 2px 2px; 
float: left;
border: 1px solid #DCDCDC;
}

.pict1px{
margin: 0 0 5px 0; 
padding: 2px 2px 2px 2px; 
border: 1px solid #CCC;
}

.pict_shadow{
background: #fff;
margin: 0px auto;
border: 1px solid #ccc;
padding: 5px 5px 5px 5px;
border-radius: 1px; /* CSS3 */
 -webkit-border-radius: 1px; /* Firefox */
 -moz-border-radius: 1px; /* Safari,Chrome */
box-shadow: 2px 2px 3px #C0C0C0;
}



/* ************************************************ 
*	角丸
* ************************************************ */
.border-radius{
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}



/* ************************************************ 
*	ボックスシャドウ・テキストシャドウ
* ************************************************ */
.box-shadow{
box-shadow: 2px 2px 3px #ccc; /* CSS3 */
 -webkit-box-shadow: 2px 2px 3px #ccc; /* Safari,Chrome */
 -moz-box-shadow: 2px 2px 3px #ccc; /* Firefox */
}
.text-shadow{
text-shadow: 1px 1px 3px #DEDEDE; /* CSS3 */
 -webkit-text-shadow: 1px 1px 3px #DEDEDE; /* Safari,Chrome */
 -moz-text-shadow: 1px 1px 3px #DEDEDE; /* Firefox */
}



/* ************************************************ 
*	CSS3ボタン
* ************************************************ */
.bt-more a {
font-size: 9px;
font-weight: normal;
color: #333;
text-align: center;
text-decoration: none;
text-shadow: 0px -1px 0px #fff;
width: 50px;
float: left;
display: block;
padding: 0 0 0 0;
margin: 10px 0 0 0;
border: 1px solid #ccc;
border-radius: 5px;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
background-color: #eee;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #ddd),color-stop(.75, #eee),color-stop(1, #ddd));
background: -moz-linear-gradient(#ddd, #eee 75%, #ddd);
}

.bt-more a:hover {
background-color: #fff;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #eee),color-stop(.75, #fff),color-stop(1, #eee));
background: -moz-linear-gradient(#eee, #fff 75%, #eee);
}

.bt-more a:active {
background-color: #999;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #999),color-stop(.75, #ccc),color-stop(1, #999));
background: -moz-linear-gradient(#999, #ccc 75%, #999);
}

.bt-order a{
font-size: 14px;
color:#fff;
display: block;
text-align:center;
background-color: #999;
margin: 20px 0 20px 0 ;
padding: 10px 15px;
border-radius: 3px;
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
}

.bt-order a:hover{
color:#867888;
background: #ddd;
text-decoration:none;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}




/* ************************************************ 
*   レスポンシブ
* ************************************************ */
/* PC 画面の横幅が960px以上 */
@media only screen and (min-width: 960px){
 iframe {
    width: 100%;
    height:100%;
}
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
.show_sp { display: none!important; }
}

/* Tablet (Portrait) 画面の横幅が768px〜959pxまで */
@media only screen and (min-width: 768px) and (max-width: 959px) {
.wrapper-contents { padding: 0 0 50px 0; }
.wrapper { padding: 0 0 50px 0; }
.wrapper800 { padding: 0 0 50px 0; }

#header { height: 80px; }
.header-inner { height: 80px; }
#nav_bg { height: 80px; }
.nav-menu li a {
font-size: 12px;
}
.nav-menu li:hover > a,
.nav-menu li a:hover {
}
.nav-menu li:last-child a {
font-size: 11px;
margin: 10px 0 0 0;
padding: 2px 7px 4px 10px;
}
.nav-menu li:last-child a::before {
top: 3px;
left: -5px;
width: 10px;
height: 14px;
}

.main-img { height: 45vh; }

.toptitle-box { margin: 0 auto 30px auto; }
.toptitle-box2 { margin: 80px auto 30px auto; }
.title-top { font-size: 36px; }

.top-news-block { padding: 75px 0; }
table#topnewsbox { font-size: 85%; }
table#topnewsbox th {
    padding: 15px 10px;
    width: 11%;
}
table#topnewsbox td {  padding: 15px 10px; }

.top-insta-block { padding: 75px 0; }

.footer-link { padding: 15px 0; }
.footer-link ul li a{ font-size: 13px; }

.footer-top .name {
font-size: 18px;
margin: 0 auto 10px auto;
}
.footer-top p.add { font-size: 14px; }
.footer-top p.add::before {
top: 5px;
left: -5px;
width: 15px;
height: 21px;
}
.footer-top p.tel {
font-size: 19px;
}
.footer-top p {
font-size: 14px;
}

.copyright { width: 100%; font-size: 12px; padding: 15px 0;}
iframe { width: 100%; height:100%; max-width: 728px; }
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
#topcontrol{
  bottom: 20px!important;
  right: 20px!important;
}
#topcontrol img{
  width:60px;
}
.show_sp { display: none!important; }
}


/* Mobile (Portrait) 画面の横幅が767pxまで */
@media only screen and (max-width: 767px) {
body { font-size: 4.5vw; }
.wrapper-contents { padding: 50px 0; }
.wrapper { padding: 0 0 0 0; }
.wrapper800 { padding: 0 0 0 0; }
#header {
position:relative;
height: 70px;
background-color: #004aa1;
}
.header-inner {
width: 100%;
height: 70px;
position: static;
padding: 0 0 0 0;
}

.header-logobox { width: 80%; }
#header h1 {
line-height: 0;
width: 80%;
}
.logo {
	float: none;
	text-align:left;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	position: absolute;
	top: 13px;
	left: 15px;
	z-index:999999;
}
.logo img{ width: 75%; }
#nav_bg {
padding: 0 0 0 0;
margin:0 0 0 0;
position: absolute;
top:0;
left:0;
border-bottom: none;
height: 70px;
background-color: #004aa1;
}
/* 上部固定用 */
#nav_bg.active{
position: absolute;
top:0;
left:0;
background-color: #004aa1;
}
/* 上部固定用ここまで */

.nav { float: none; text-align:center; width: 100%; padding: 0; }
.nav-menu li {
display: inline-block;
position: relative;
margin: 0 0;
padding: 0;
  width: 100%;
  z-index:99999;
  text-align: left;
}
.nav-menu li a {
color: #fff;
display: block;
font-size: 4.5vw;
text-decoration: none;
border-bottom: none;
}
.nav-menu li:hover > a,
.nav-menu li a:hover {
color: #fff;
background-color: #999!important;
border-bottom: none;
}
.nav-menu li:last-child a {
color: #fff;
font-size: 4.5vw;
width: 86%;
padding: 1.5em 7%!important;
margin: 0 0 0 0;
background: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}
.nav-menu li:last-child a::before {
position:relative;
top: 3px;
left: -5px;
content:"";
display:inline-block;
width:12px;
height:18px;
background:url("../images/icon_member_w.svg") no-repeat;
background-size:contain;
}

.breadcrumbs { width: 90%; }
.main-img { height: 30vh; }
.main-text {
top: 17.5%;
left: 4%;
}
.main-text img{
width: 50vw;
}

.toptitle-box { margin: 0 auto 30px auto; }
.toptitle-box2 { margin: 50px auto 30px auto; }
.title-top { font-size: 8vw; }

.top-news-block { padding: 50px 0; }
table#topnewsbox {
width: 100%;
margin: 0 0 45px 0;
}
table#topnewsbox th {
display:block;
width: 100%;
padding: 15px 0 5px 0;
border-bottom: none;
font-size: 4vw;
}
table#topnewsbox td {
display:block;
width: 100%;
padding: 0px 0 15px 0;
}
table#topnewsbox td a {
line-height: 180%;
font-size: 4.5vw;
}

.morelink {
margin: 20px auto 20px auto;
width: calc(100% - 2px);
}
.morelink a{ font-size: 4.5vw; }

.top-insta-block { padding: 50px 0; }
.top-insta-inner { justify-content: space-between; }
.top-insta-box{
width: 47%;
margin: 0 0 20px 0;
max-height: 400px;
}
li.top-insta-box:nth-child(4n){ margin: 0 0 20px 0; }

.instalink,
.followlink {
margin: 0 auto 25px auto;
width: calc(100% - 2px);
}
.instalink a,
.followlink a{ font-size: 4.5vw; }

.footer-link { padding: 15px 0; }
.footer-link ul li{
margin: 7px 0;
padding: 0 0 0 7px;
display: block;
}
.footer-link ul li a{ font-size: 3.5vw; }

.footer-top { padding: 35px 0; }
.footer-top .name {
font-size: 5.5vw;
margin: 0 auto 20px auto;
}
.footer-top p.add { font-size: 4vw; }
.footer-top p.add::before {
top: 5px;
left: -5px;
width: 15px;
height: 20px;
}
.footer-top p.tel { font-size: 6vw; }
.footer-top p.tel::before {
top: 0px;
left: -5px;
width: 18px;
height: 18px;
}
.footer-top p { font-size: 4.5vw; }

.copyright {
width: 100%;
padding: 15px 0;
line-height: 150%;
font-size: 3vw;
}

.mL05,
.mL5 { margin-left: 0em; }
.width35{ width: 60%!important; }
.width60{ width: 100%!important; }

#topcontrol{
  bottom: 55px!important;
  right: 20px!important;
}
#topcontrol img{
  width:45px;
}
iframe { width: 100%; height:100%; }
.show_pc { display: none!important; }
}
