/* ---- main fix ---- */

@font-face {
	font-family: "YuGothic M";
	src: local("Yu Gothic Medium");
}

html {
	font-size: 10px;
	letter-spacing: 0.1rem;
}

body {
	font-family: "游ゴシック体", YuGothic, "YuGothic M", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	color: #333333;
	font-size: 1.8rem;
	font-size: 18px;
	line-height: 2;
}

.frame0 {
	border: 0px;
}

a {
	color: #666666;
	text-decoration: none;
}

a:hover, a:focus {
	color: #333;
	text-decoration: none;
}

hr {
	border: 0;
	border-top: 1px solid #322216;
}

img {
    max-width: 100%;
    height: auto;
}

.img-center {
	margin: 0 auto;
}

.logo_img {
	height: 70px;
	padding: 15px 0;
}

/* ----IE hack svg ---- */
img[src$=".svg"] {
    width: 100%;
}

/* --------------------------------
** hover transiton
-------------------------------- */
.transition {
	transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out; /* opera */
	-moz-transition: all 0.5s ease-out; /* firefox */
	-webkit-transition: all 0.5s ease-out; /* chrome, safari */
	-ms-transition: all 0.5s ease-out; /* ie */
}

/* ---- Typo fix ---- */
h1, h2, h3, h4, h5, h6 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1rem;
	line-height: 1.5;
}

h1 {
	color: #333333;
	margin: 0 0 10px 0;
	font-size: 32px;
	font-size: 3.2rem;
}

h2 {
  color: #333333;
  font-size: 20px;
  font-size: 2.0rem;
  border-left: 5px solid #35ae35;
  padding: 10px 5px 10px 15px;
}

h3 {
	color: #0b2b5a;
}

h4 {
	color: #333333;
}

em {
	font-size: 0.8em;
	line-height: 0.8em;
}

span {
	display: inline-block;
}

.eng-text {
	font-family: 'Roboto', sans-serif;
	color: #cccccc;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 100;
}

.phone-text {
	font-family: 'Roboto', sans-serif;
	color: #111111;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: bold;
}

.rbn-text {
	color: #FFF;
	background-color: #212529;
	display: inline-block;
	margin-bottom: 4px;
	padding: 4px 6px;
	font-size: 13px;
	font-weight: normal;
	line-height: 1.42857143;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	background-image: none;
}


.col-bdr-right {
	border-right: 1px solid #cccccc;
}

.col-bdr-left{
	border-left: 1px solid #cccccc;
}

.bdr-lft {
	border-left: 2px solid #f0ad4e;
}

.bdr-btm {
	padding-bottom: 10px;
	border-bottom: 1px solid #0a2a59;
}

.no-bdr {
  border: none;
}

/* --------------------------------
font-size fix
-------------------------------- */
.text-xl { font-size: 28px; font-size: 2.8rem; }
.text-l  { font-size: 24px; font-size: 2.4rem; }
.text-m  { font-size: 18px; font-size: 1.8rem; }
.text-s  { font-size: 14px; font-size: 1.4rem; }
.text-xs { font-size: 12px; font-size: 1.2rem; }

/* --------------------------------
mobile display setting
-------------------------------- */
.xs-block { display: block; }
.xs-inline{ display: inline-block; }
.xs-absolute { position: absolute; }
.xs-relative{ position: relative; }

/* --------------------------------
txt-hidden
-------------------------------- */
.txt-hidden {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background-color: transparent;
    background-image: none;
}

/* --------------------------------
text-wrap
-------------------------------- */
.text-wrap {
    overflow-wrap: break-word;
    word-wrap: break-word;
}

/********************************************************************************
color Setting
********************************************************************************/

.fc-main { color: #28a745; }
.fc-dark { color: #333333; }

.fc-white,
.fc-white:hover,
.fc-white:focus {
	color: #ffffff;
}


/*.bg-color, .bg-box {
	box-shadow: 0px 0px 8px -2px #222;
}*/

.bg-base, .bg-white {	background-color: #ffffff; }
.bg-main  {	background-color: #53c353; }
.bg-green {	background-color: #36a253; }
.bg-sub   {	background-color: #f5f5f5;}
.bg-gray  { background-color: #f5f5f5; }

.bg-line {
	background: url(../../assets/images/bg-line.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center
}

.bdr-white { border-color: #ffffff; }

/********************************************************************************
text Setting
********************************************************************************/
.text-xl { font-size: 24px; }

/* ---- layout fix ---- */

.container-wrap {
	padding-top: 30px;
	padding-bottom: 30px;
}
.contents-wrap {
	padding-top: 30px;
	padding-bottom: 30px;
}

table.th5em th {
	min-width: 5em;
}


.bdr-btn {
	color: #0a2a59;
	background-color: transparent;
	margin-bottom: 4px;
	padding: 6px 12px;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 1.42857143;
	vertical-align: middle;
	background-image: none;
	border: 2px solid #0a2a59;
	display: block;
}

.bdr-btn:after {
  width:18px;
  text-align:center;
  margin-right:5px;
  font-family:FontAwesome;
  content:"\f105";
  font-weight:lighter;
  font-size: 18px;
  font-size: 1.8rem;
  position: relative;
  display:inline-block;
  float: right;
  top: -3px;
}

.bdr-btn.active, .bdr-btn.focus, .bdr-btn:active, .bdr-btn:focus, .bdr-btn:hover {
  color: #fff;
  background-color: #0a2a59;
  border-color: transparent;
}


/********************************************************************************
full Setting
********************************************************************************/

 .img-bg-1 {
   background: url(../images/service/img-bg-1.png) no-repeat center center #eeeeee;
   width: 100%;
   -webkit-background-size: cover;
   -moz-background-size: cover;
   -o-background-size: cover;
   background-size: cover;
 }


/* --------------------------------
ABOUT-BLOCK
-------------------------------- */

.color-type2 .bg-right-cover {
  background: #eceeef;
}


/********************************************************************************
navi Setting
********************************************************************************/

header #global-bar {
	background-color: rgba(255,255,255,0.5);
	box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
}

header.stickynav #global-bar {
		background-color: rgba(255,255,255,1);
}

.navbar-light .navbar-nav .nav-link {
    color: rgba(0, 0, 0, 1);
}
.navbar-fixed-bottom, .navbar-fixed-top {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 1030;
}
.navbar, .navbar-nav {
    width: 100%;
    padding: 0;
}
.navbar-nav li {
}
.navbar-nav .nav-item a {
  text-align: center;
  display: block;
  padding: 5px;
}

.navbar-brand {
    width: 50%;
    height: inherit;
}

.navbar-brand img {
    max-width: 260px;
}

.navbar-toggler {
    border: none;
}

.navbar-default .navbar-toggler .icon-bar {
    background-color: #333;
}

.navbar-toggler {
    padding: 9px 5px;
}

.navbar-toggler .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
}

.navbar-toggler .icon-bar+.icon-bar {
    margin-top: 5px;
}

button:focus {
    outline: none;
}


.nav-height span {
	position: absolute;
	width: 100%;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	font-size: 15px;
	font-weight: bold;
	line-height:80px;
	transition: all 0.2s ease;
	-o-transition: all 0.2s ease; /* opera */
	-moz-transition: all 0.2s ease; /* firefox */
	-webkit-transition: all 0.2s ease; /* chrome, safari */
	-ms-transition: all 0.2s ease; /* ie */
}

/****************************************
** toggle effect
*****************************************/
.navbar-toggle {
	border: none;
  position: relative;
  margin: 0;
  padding: 12px 10px;
}
.navbar-toggle .icon-bar {
  width: 22px;
  transition: all 0.2s;
  height: 2px;
  border-radius: 1px;
  display: block;
}
.navbar-toggle .icon-bar+.icon-bar {
    margin-top: 4px;
}
.navbar-toggle .top-bar {
	-webkit-transform: translateY(6px) rotate(-45deg);
	-ms-transform: translateY(6px) rotate(-45deg);
	transform: translateY(6px) rotate(-45deg);
}
.navbar-toggle .middle-bar {
	opacity: 0;
}
.navbar-toggle .bottom-bar {
	-webkit-transform: translateY(-6px) rotate(45deg);
	-ms-transform: translateY(-6px) rotate(45deg);
	transform: translateY(-6px) rotate(45deg);
}
.navbar-toggle.collapsed .top-bar {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
}
.navbar-toggle.collapsed .middle-bar {
	opacity: 1;
}
.navbar-toggle.collapsed .bottom-bar {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
}
.navbar-toggle, .navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
	background-color: transparent;
}
.navbar-default .navbar-toggle .icon-bar {
	background-color: #fff;
}


/* ---- main ---- */

.main-container {}

.main-img {
	display: block;
}

.subtitle {
	margin: 0px;
	background: rgba(255, 255, 255, 0.7);
	color: #000;
	padding: 10px 10px;
}

.main-v {
	padding-top: 76px;
	position:relative;
}

.slide-text {
  font-size: 50px;
  width: 100%;
  padding: 15px;
  position: absolute;
  text-align: right;
  letter-spacing: 0;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
	margin-top: 40px;
  z-index: 1000;
}

.slide-text h2 {
  color: #000000;
  font-size: 25px;
  border: none;
	padding: 0;
	}

	.slide-text h2 > span {
	  position: relative;
	  display: inline-block;
		padding: 10px 15px;
		overflow: hidden;
		border-bottom: 5px solid #53c353;
	}
	.slide-text h2 > span::before {
	  content: "";
	  position: absolute;
	  bottom: -5px;
	  left: -5px;
	  top: -5px;
	  right: -5px;
	  background-color: rgb(255 255 255 / 80%);
	  z-index: -1;
	}

.slidetitle {
	margin: 0px;
	background: rgba(33, 33, 44, 0.7);
	color: #fff;
	padding: 10px 10px;
}

.rightposition {
    position: absolute;
    right: 5px;
}

/* ---- index ---- */

/******* --- pageTop css --- *******/

#pageTop {
    position: fixed;
    bottom: 10%;
    right: 4%;
}

#pageTop a {
    /*position: relative;*/
    display: block;
    width: 60px;
    height: 60px;
    padding: 1.5em 0 1.5em 2px;
    background: #cccccc;
    text-align: center;
    outline: none;
    text-decoration: none;
    z-index: 2;
    border-radius: 30px;
}


/* 矢印のデザイン */

#page-top {
    position: fixed;
    right: -20px;
    bottom: 60px;
    height: 50px;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(90deg);
    line-height: 3rem;
    color: #121212;
    padding: 0 0 0 35px;
    border-top: solid 1px;
}
#page-top::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px #119a35;
    transform: rotate(35deg);
    transform-origin: left top;
}


/******* --- /pageTop css --- *******/


/* ---- footer ---- */

.contactboxbdr {
	border-left: 1px solid #DDD;
}

footer a {
	color: #292b2c;
	transition: all ease-in 0.2s;
}

footer a:hover {
	color: #CE0C00;
}

footer p>img {
	width: 40px !important;
	padding-right: 10px;
	padding-bottom: 4px;
	vertical-align: middle;
}

.copywrap {
	color: #90949c;
	background-color: #ffffff;
	padding: 20px 0px;
}



/* ---- footer-table ---- */

footer dl {
    margin-top: 0;
    margin-bottom: 0;
}

footer dt, footer dd {
    display: inline-block;
}

footer dt {
    font-size: 1.4rem;
    font-size: 14px;
    line-height: 1.4rem;
    margin: 10px 0;
    padding: 5px 0;
    width: 35%;
}

footer dd {
    margin: 10px 0;
    width: 65%;
    text-align: right;
}

/* ---- form ---- */

.form-group {
    margin-bottom: 1.6rem;
}

.form-control {
    font-size: 1.4rem;
    line-height: 1.25;
/*    display: block;
    width: 100%;
    padding: 0.5rem .75rem;
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    color: #464a4c;
    border: 1px solid rgba(0, 0, 0, .15);
    border-radius: .25rem;
    background-color: #fff;
    background-image: none;
    background-clip: padding-box;*/
}

/* ---- table-bdr-tb ---- */

.table-bdr-tb>thead>tr>th, .table-bdr-tb>tbody>tr>th, .table-bdr-tb>tfoot>tr>th, .table-bdr-tb>thead>tr>td, .table-bdr-tb>tbody>tr>td, .table-bdr-tb>tfoot>tr>td {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
}


/* ---- timeline ---- */

table.timeline {
  border-top: 2px solid #183459;
  border-bottom: 2px solid #183459;
}


/********************************************************************************
etc setting
********************************************************************************/
/* --------------------------------
margin fix 5 10 15 20 30 45 60
-------------------------------- */
.mt0 { margin-top: 0px; }
.mt5 { margin-top: 5px; }
.mt10 {	margin-top: 10px; }
.mt15 {	margin-top: 15px; }
.mt20 {	margin-top: 20px; }
.mt30 {	margin-top: 30px; }
.mt45 {	margin-top: 45px; }
.mt60 {	margin-top: 60px; }
.mb0 { margin-bottom: 0px; }
.mb5 { margin-bottom: 5px; }
.mb10 {	margin-bottom: 10px; }
.mb15 {	margin-bottom: 15px; }
.mb20 {	margin-bottom: 20px; }
.mb30 {	margin-bottom: 30px; }
.mb45 {	margin-bottom: 45px; }
.mb60 {	margin-bottom: 60px; }
.mr0 { margin-right: 0px; }
.mr5 { margin-right: 5px; }
.mr10 {	margin-right: 10px; }
.mr15 {	margin-right: 15px; }
.mr20 {	margin-right: 20px; }
.mr30 {	margin-right: 30px; }
.mr45 {	margin-right: 45px; }
.mr60 {	margin-right: 60px; }
.ml0 { margin-left: 0px; }
.ml5 { margin-left: 5px; }
.ml10 {	margin-left: 10px; }
.ml15 {	margin-left: 15px; }
.ml20 {	margin-left: 20px; }
.ml30 {	margin-left: 30px; }
.ml45 {	margin-left: 45px; }
.ml60 {	margin-left: 60px; }

.mh0 { margin-top: 0px; margin-bottom: 0px; }
.mh5 { margin-top: 5px; margin-bottom: 5px; }
.mh10 { margin-top: 10px; margin-bottom: 10px; }
.mh15 { margin-top: 15px; margin-bottom: 15px; }
.mh20 { margin-top: 20px; margin-bottom: 20px; }
.mh30 { margin-top: 30px; margin-bottom: 30px; }
.mh45 { margin-top: 45px; margin-bottom: 45px; }
.mh60 { margin-top: 60px; margin-bottom: 60px; }

.mw0 { margin-right: 0px; margin-left: 0px; }
.mw5 { margin-right: 5px; margin-left: 5px; }
.mw10 { margin-right: 10px; margin-left: 10px; }
.mw15 { margin-right: 15px; margin-left: 15px; }
.mw20 { margin-right: 20px; margin-left: 20px; }
.mw30 { margin-right: 30px; margin-left: 30px; }
.mw45 { margin-right: 45px; margin-left: 45px; }
.mw60 { margin-right: 60px; margin-left: 60px; }

.mt-15 { margin-top: -15px; }
.mt-30 { margin-top: -30px; position:relative; z-index: 99;}

.row.nm0 {
  margin-right: 0px;
  margin-left: 0px;
}

/* --------------------------------
padding fix 5 10 15 20 30 45 60
-------------------------------- */
.pt0 { padding-top: 0px; }
.pt5 { padding-top: 5px; }
.pt10 {	padding-top: 10px; }
.pt15 {	padding-top: 15px; }
.pt20 {	padding-top: 20px; }
.pt30 {	padding-top: 30px; }
.pt45 {	padding-top: 45px; }
.pt60 {	padding-top: 60px; }
.pb0 { padding-bottom: 0px; }
.pb5 { padding-bottom: 5px; }
.pb10 {	padding-bottom: 10px; }
.pb15 {	padding-bottom: 15px; }
.pb20 {	padding-bottom: 20px; }
.pb30 {	padding-bottom: 30px; }
.pb45 {	padding-bottom: 45px; }
.pb60 {	padding-bottom: 60px; }
.pr0 { padding-right: 0px; }
.pr5 { padding-right: 5px; }
.pr10 {	padding-right: 10px; }
.pr15 {	padding-right: 15px; }
.pr20 {	padding-right: 20px; }
.pr30 {	padding-right: 30px; }
.pr45 {	padding-right: 45px; }
.pr60 {	padding-right: 60px; }
.pl0 { padding-left: 0px; }
.pl5 { padding-left: 5px; }
.pl10 {	padding-left: 10px; }
.pl15 {	padding-left: 15px; }
.pl20 {	padding-left: 20px; }
.pl30 {	padding-left: 30px; }
.pl45 {	padding-left: 45px; }
.pl60 {	padding-left: 60px; }

.ph0 { padding-top: 0px; padding-bottom: 0px; }
.ph5 { padding-top: 5px; padding-bottom: 5px; }
.ph10 { padding-top: 10px; padding-bottom: 10px; }
.ph15 { padding-top: 15px; padding-bottom: 15px; }
.ph20 { padding-top: 20px; padding-bottom: 20px; }
.ph30 { padding-top: 30px; padding-bottom: 30px; }
.ph45 { padding-top: 45px; padding-bottom: 45px; }
.ph60 { padding-top: 60px; padding-bottom: 60px; }

.pw0 { padding-right: 0px; padding-left: 0px; }
.pw5 { padding-right: 5px; padding-left: 5px; }
.pw10 { padding-right: 10px; padding-left: 10px; }
.pw15 { padding-right: 15px; padding-left: 15px; }
.pw20 { padding-right: 20px; padding-left: 20px; }
.pw30 { padding-right: 30px; padding-left: 30px; }
.pw45 { padding-right: 45px; padding-left: 45px; }
.pw60 { padding-right: 60px; padding-left: 60px; }

.row .np0 {
    padding-right: 0px;
    padding-left: 0px;
}

.mauto {
    margin-left: auto;
    margin-right: auto;
}

.row.bdr {
  border: 1px solid #fff;
}

.maxh400 {
	max-height: 400px;
	overflow: hidden;
}
/**********************************
embed-container
**********************************/

/* ---- google map ---- */
/* ---- youtube etc ---- */
.embed-container, .video-container {
	position: relative;
	padding-bottom: 56.25%; /* 16/9 ratio */
	padding-top: 30px; /* IE6 workaround*/
	height: 0;
	overflow: hidden;
	max-width: 100%;
}
.gmap.embed-container {
	padding-bottom: 300px;
}
.embed-container iframe {
	border: 0;/*w3cfix*/
}
.embed-container iframe, .embed-container object, .embed-container embed, .video-container iframe, .video-container object, .video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0px;
}


/**********************************
fb timeline
**********************************/

.fbcomments, .fb_iframe_widget, .fb_iframe_widget[style], .fb_iframe_widget iframe[style], .fbcomments iframe[style], .fb_iframe_widget span {
    width: 100%! important;
}

/****************************************
slick-theme.css
*****************************************/
/* Slider */
.slick-loading .slick-list
{
    background: #fff url(../images/ajax-loader.gif) center center no-repeat;
}

/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    margin-top: -10px;
    padding: 0;

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'FontAwesome';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: 0px;
}
[dir='rtl'] .slick-prev
{
    right: 0px;
    left: auto;
}
.slick-prev:before
{
    content: "\f104";
}
[dir='rtl'] .slick-prev:before
{
    content: "\f104";
}

.slick-next
{
    right: 0px;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: 0px;
}
.slick-next:before
{
    content: "\f105";
}
[dir='rtl'] .slick-next:before
{
    content: "\f105";
}

/* Dots */
.slick-slider
{
    margin-bottom: 15px;
}

.slick-dots {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: center;
}
.slick-dots li {
    position: relative;
    display: inline-block;
    width: 25px;
    height: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 25px;
  height: 20px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}


.slick-dots li button:before {
  font-size: 6px;
  line-height: 20px;

  position: absolute;
  top: 50%;
  left: 0;

  width: 25px;
  height: 4px;
  margin-top: -2px;

  content: "";
  text-align: center;

  background: #bdbdbd;
  transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out; /* opera */
	-moz-transition: all 0.5s ease-out; /* firefox */
	-webkit-transition: all 0.5s ease-out; /* chrome, safari */
	-ms-transition: all 0.5s ease-out; /* ie */
}
.slick-dots li.slick-active button:before {
  background: #ff6000;
}


/**********************************
Animations 起動前非表示
**********************************/
.js .animate-box {
    opacity: 0;
}


/* Small devices (mobile, 768px) */
@media screen and (min-width: 768px) {
    /* ---- typo ---- */
	.text-xl { font-size: 30px; }

	.bdr-tb {
			font-size: 2.8rem;
			font-size: 28px;
			padding: 20px 10px;
			margin: 20px 0;
			letter-spacing: 0.1em;
	}
	#index #pagelink1 .bdr-tb {
			margin-top: 20px;
			color: #000;
			background-color: transparent;
	}
	h3.common-h {
			font-size: 1.3em;
	}
	.navbar-collapse>div:last-child p {
			width: 100%;
			text-align: right;
			padding-top: 10px;
	}

	/* ---- navbar ---- */
	body {}
		.navbar-toggle {
				display: none;
	}
	/* ---- navbar ---- */
	body {}
	/*ヘッダーメニューPC*/
	.navbar-wrap {

	}
	.navbar-toggleable-md .navbar-collapse {
			display: table;
			width: 100%;
	}
	.navbar-toggleable-md .navbar-toggler {
			display: none;
	}
	.navbar {
			padding: 0;
	}
	.navbar, .navbar-nav {
			display: table;
			height: inherit;
			table-layout: fixed;
	}
	.logo {
	}
	.hc-tel img {
			vertical-align: baseline;
			padding: 0px 2px;
	}
	/*.nav-item {
			display: table-cell;
			float: none;
			vertical-align: middle;
			padding: 0;
	}*/
	.navbar .nav li {
		display: table-cell;
		float: none;
		position: relative;
	}
	.navbar .nav li::after {
			content: "";
			width: 100%;
			position: absolute;
			left: 0;
			top: 0;
			border-bottom-width: 3px;
			border-bottom-style: solid;
			border-color: transparent;
			text-align: center;
			transition: border-color .5s ease-out,left .5s ease-out;
			-o-transition: border-color .5s ease-out,left .5s ease-out;
			-moz-transition: border-color .5s ease-out,left .5s ease-out;
			-webkit-transition: border-color .5s ease-out,left .5s ease-out;
			-ms-transition: border-color .5s ease-out,left .5s ease-out;
	}

	.navbar .nav li:hover::after,
	.navbar .navbar-nav li.active::after {
			content: "";
			border-color: #006699;
	}
	.navbar .nav li::before{
		content: '';
		display: block;
		width: 1px;
		height: 15px;
		position: absolute;
		top: 50%;
		left: 0;
		background: #222;
		margin-top: -7.5px;
	}
	.navbar .nav li a {
		font-weight: normal;
		text-align: center;
		background: none no-repeat transparent;
		border-top: none;
		transition: padding 0.2s ease;
		-o-transition: padding 0.2s ease; /* opera */
		-moz-transition: padding 0.2s ease; /* firefox */
		-webkit-transition: padding 0.2s ease; /* chrome, safari */
		-ms-transition: padding 0.2s ease; /* ie */
	}


	.navbar .navbar-nav li.active > a,
	.navbar .navbar-nav li.active > a:hover,
	.navbar .navbar-nav li.active > a:focus,
	.navbar .navbar-nav li a:hover,
	.navbar .navbar-nav li a:focus {
		background: none no-repeat transparent;
	}

	#mainmenu-wrap .navbar-nav li>a::after {
			display: block;
			content: "";
			width: 74%;
			height: 0;
			border-bottom: 1px solid #008F68;
			position: absolute;
			bottom: -5px;
			left: 13%;
			opacity: 0;
			-webkit-transition: all .25s ease-out;
			transition: all .25s ease-out;
	}
	#mainmenu-wrap .navbar-nav li>a:hover::after,
	#mainmenu-wrap .navbar-nav li.active>a::after,
	#mainmenu-wrap .navbar-nav li.active>a:hover::after {
			opacity: 1;
			bottom: 5px;
	}
	header #global-bar {
		background-color: rgba(255,255,255,0.5);
		box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
	}

	header.stickynav #global-bar {
			background-color: rgba(255,255,255,1);
	}

	.nav-height {
		position: relative;
		width: 150px;
		text-align: center;
		display: block;
	}

	.nav-height span {
		position: absolute;
		width: 100%;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		font-size: 15px;
		font-weight: bold;
		line-height:80px;
		transition: all 0.2s ease;
		-o-transition: all 0.2s ease; /* opera */
		-moz-transition: all 0.2s ease; /* firefox */
		-webkit-transition: all 0.2s ease; /* chrome, safari */
		-ms-transition: all 0.2s ease; /* ie */
	}

	#headerlogo {
		width: 300px;
	}

	.navbar .nav li a {
		color: #0a2a59;
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 80px;
		font-weight: bold;
		text-align: center;
		background: none no-repeat transparent;
		padding: 0;
		transition: all 0.2s ease;
		-o-transition: all 0.2s ease; /* opera */
		-moz-transition: all 0.2s ease; /* firefox */
		-webkit-transition: all 0.2s ease; /* chrome, safari */
		-ms-transition: all 0.2s ease; /* ie */
	}
	.navbar .navbar-nav li.active > a, .navbar .navbar-nav li.active > a:hover, .navbar .navbar-nav li.active > a:focus, .navbar .navbar-nav li a:hover, .navbar .navbar-nav li a:focus {
		color: #006699 !important;
		background: none no-repeat transparent;
	}
	.stickynav .navbar .nav li a ,
	.stickynav .nav-height span {
		line-height:70px;
		transition: all 0.2s ease;
		-o-transition: all 0.2s ease; /* opera */
		-moz-transition: all 0.2s ease; /* firefox */
		-webkit-transition: all 0.2s ease; /* chrome, safari */
		-ms-transition: all 0.2s ease; /* ie */
	}

	img#pclogo {
		height: auto;
		width: 300px;
	}
	.stickynav img#pclogo {
		height: auto;
		width: 200px;
		-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;
	}
	.navbar-fixed-bottom, .navbar-fixed-top {
			position: fixed;
	}
	.mainvisual-header {
		min-height: 200px;
		padding: 100px 0;
	}

	.main-v {
	    padding-top: 0;
	}
	.slide-text h2 {
		color: #000000;
		font-size: 50px;
		border: none;
	}
	/**********************************
	bootstrap4 hack
	**********************************/
	.collapse {
			display: block;
	}

	/**********************************
	IE hack Ite IE9 ( 消去不可 ）
	**********************************/
	.row > div {
			float: left;
	}
	.collapse {
			display: block;
	}
	.navbar-toggleable-sm .navbar-collapse>div {
			float: left;
	}
	.gmap.embed-container {
		padding-bottom: 500px;
	}

}


/* Medium devices (desktops, 992px and up) */
@media screen and (min-width: 992px) {
	.container-s{
		width: 860px;
	}

	.tell {
			font-size: 1.6em;
			line-height: 2.0em;
	}

	nav .navfont {
			font-size: 0.9em;
	}

	.fbg01, .fbg02, .fbg03, .fbg04 {
			background-size: auto;
	}
}


/* Large devices (large desktops, 1200px and up) */
@media screen and (min-width: 1200px) {
    .tell {
        font-size: 1.8em;
        line-height: 1.8em;
    }
    nav .navfont {
        font-size: 0.9em;
    }
		.bg-right-cover {
			padding-right: 100px;
		}
		.bg-left-cover {
			padding-left: 100px;
		}
}


/* ---- link none ---- */

@media print {
    .container { max-width: none !important; width: 970px; }
    .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
        float: left;
    }
    .col-md-12 { width: 100%; }
    .col-md-11 { width: 91.66666667%; }
    .col-md-10 { width: 83.33333333%; }
    .col-md-9 { width: 75%; }
    .col-md-8 { width: 66.66666667%; }
    .col-md-7 { width: 58.33333333%; }
    .col-md-6 { width: 50%; }
    .col-md-5 { width: 41.66666667%; }
    .col-md-4 { width: 33.33333333%; }
    .col-md-3 { width: 25%; }
    .col-md-2 { width: 16.66666667%; }
    .col-md-1 { width: 8.33333333%; }
    .hidden-sm-down { display: none!important; }
    a[href]:after { content: ""!important; }
    abbr[title]:after { content: ""!important; }
    a, a:visited { text-decoration: none; }
    .navbar { display: inherit !important; }
    .navbar-header { display: none !important; }
    .bx-wrapper { max-width: 970px !important; margin: 0 auto; border-bottom: 2px solid #19a3ff; }
    .bx-wrapper .bx-viewport { height: 404px !important; }
    ul.bxslider li { width: 100% !important; height: inherit !important; position: relative; }
    .under-link-design, .under-link-design a { display: block !important; width: 100%; color: #FA9300; }
    .p-break-b { page-break-before: always; }
    .p-break-a { page-break-after: avoid; }
		.js .animate-box { opacity: 1; }

		*::first-letter {/*print bugfix*/
      position: relative !important;
    }

}
