@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

a{
	-webkit-transition: all .3s;
  transition: all .3s;
}
.page a{text-decoration: underline;}

html{margin-top:0 !important; font-size: 13px;}
@media (min-width: 992px) {
  html{font-size:16px;}
}

body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  text-align:left;
  line-height: 1.7;
  display:flex;
  min-height:100vh;
  height:100%;
  flex-direction:column;
  justify-content: flex-start;
  background-color:#ffffff;
  color:#333333;
}
body > *{min-height: 0%; }

a:not(.btn), a:link:not(.btn) {color: #444444;}
a:visited:not(.btn) {color: #666666;}

/* メニューバー定義
----------------------------------------------------------------------------------------------------*/
header#head{position: absolute; top:0 !important; z-index:25;}
path {
  pointer-events: all;
}

header h1{max-width:400px; width:100%; margin:0;}
header nav.navbar{background-color:#ffffff; z-index:2;
	-webkit-transition: all .3s;
  transition: all .3s;
}
header .navbar-nav .nav-item{margin-right:.5em; margin-bottom:2px; display:none;}
header .navbar-nav .nav-item:last-child{margin-right:0; justify-content:center; align-items:center;}
header .navbar-nav .nav-item:last-child img{display:none;}
header .navbar-light .navbar-nav .nav-link{letter-spacing:.08em; padding: .5rem .2em .1em;font-size:.85rem; color:#333333 !important;}
/* .navbar .navbar-nav .dropdown:hover .dropdown-menu{display: block;}*/
header .navbar-light .navbar-nav .nav-link img{height:50px;}
header .dropdown{position:static;}
header .dropdown input{border-radius: 0;}
header .dropdown-menu{right:0; left:auto;border-radius: 0; background-color: rgba(255,255,255,.4); border:none; margin:0;}
header .dropdown-item:focus, .dropdown-item:hover{background-color:transparent;}
header .dropdown .dropdown-toggle::after{margin-left:0; display:none;}
@media (min-width: 992px) {
header .navbar-nav .nav-item,
header .navbar-nav .nav-item:last-child img{display:block;}
header .navbar-nav .nav-item:last-child i{display:none;}
}

header .dropdown-item .form-control{max-width:200px;}
.form-control{border-radius: 0;}


.fixed {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}

.sns-icon > a{margin-right:3px; display:inline-flex; align-items:center; justify-content:center; border-radius: 100%; background-color:#777777; color:#ffffff !important; width:35px; height:35px; }
#head .sns-icon > a:nth-child(1),.globalMenuSp .sns-icon > a:nth-child(1){background-color:#1877f2;}
#head .sns-icon > a:nth-child(2),.globalMenuSp .sns-icon > a:nth-child(2){background-color:#1DA1F2;}
#head .sns-icon > a:nth-child(3),.globalMenuSp .sns-icon > a:nth-child(3){background-color:#00B900;}
#head .sns-icon > a:nth-child(4),.globalMenuSp .sns-icon > a:nth-child(4){background-color:#DA1725;}
#head .sns-icon > a:last-child,.globalMenuSp .sns-icon > a:last-child{background-color:#41c9b4;}
.sns-icon > a:hover{text-decoration:none;}

#title{
  position: relative;
  overflow: hidden;
}
#title div.container-fluid{
  position: absolute;
  bottom: 10px;
  left: 0;
  width: auto;
  padding: 0;
  margin: 0 10px;
  }
#title h2,#title small{
  background-color: #E60012;
  padding: .7rem;
  letter-spacing:0.13em;
  color:#ffffff;
  line-height:1.1em;
}
#title h2{
  display:block;
  font-size: 1.5em; 
  margin-bottom: 5px;
}
#title small{
  display:inline-block;
  width: auto;
  font-weight:600;
  text-transform: capitalize;
  letter-spacing: 0.04em;
}
#title > div:first-child{ min-height:150px; height:100%;display:flex; justify-content:center; align-items:center; background-size:cover !important;}

@media (min-width:992px) {
  #title div.container-fluid{
    left: 80px;
    padding: 15px;
    margin: 0 20px;
  }  
  #title img{padding-left:80px; width:100%;}
  #title h2{font-size: 2rem;}
  #title > div:first-child{ min-height:300px;}
}


/* ぱんくず
----------------------------------------------------------------------------------------------------*/
.breadcrumb{background-color:transparent; font-size:80%;}
.breadcrumb > li + li:before { content: ">";}
.breadcrumb a{text-decoration:none;}

/* トップへ戻る
----------------------------------------------------------------------------------------------------*/
#page_top { position: fixed; bottom: 50px; right:10px; z-index:15;}
#page_top img{width:60px;}
#page_top a{background-color:#cccccc; text-decoration:none; color:#ffffff; display:flex; position: relative; width:40px; height:40px; font-size:1em; justify-content:center; align-items:flex-end; font-weight:500; padding-bottom:2px; font-family: 'Oswald', sans-serif;}
#page_top a:before{
	content: ' ';
	width:0;
	height: 0; display:block;
	position:absolute;
	border:10px solid transparent;
	top:-0.2em;
	margin:auto; left:0; right:0;border-bottom-color:#ffffff;}

  @media (min-width:576px) {
    #page_top a{width:60px; height:60px; font-size:1.1em; padding-bottom:3px;}
    #page_top a:before{border:18px solid transparent; top:-0.5em;border-bottom-color:#ffffff;}
    }

/*ã‚µã‚¤ãƒ‰*/
#side01 {position: fixed; bottom: 150px; right:10px; z-index:15;transition: 1s;}
#side01:hover{
  -webkit-transform: rotateX(360deg);
  transform: rotateX(360deg);}
#side01 img {width: 130px;}

/* bottom_banner
----------------------------------------------------------------------------------------------------*/
ul.bottom_banner{list-style-type:none; padding:0; margin:0 -10px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;}
ul.bottom_banner li{ flex-basis: 50%; max-width:50%;}
ul.bottom_banner li a{ margin:0 5px 10px; display:block;}
ul.bottom_banner li img{border:#cccccc 1px solid;}
@media (min-width:768px) {
ul.bottom_banner{flex-wrap:nowrap; margin:0;}
ul.bottom_banner li a{border:none; margin:0;}
ul.bottom_banner li img{border:none;border-left:#cccccc 1px solid;}
ul.bottom_banner li:last-child a img{border-right:#cccccc 1px solid;}
}

/* フッター
----------------------------------------------------------------------------------------------------*/
footer{display:none; background-color:#103d9b; color:#ffffff;}
footer .sns-icon > a{background-color:#ffffff; color:#103d9b !important;}
footer div.left{display:none; margin:0 20px 10px 0; width:30%;}
footer div.right{display:none; align-items:flex-end; justify-content:flex-end; flex-direction: column; flex:1;}
footer .footer_menu{display:flex; margin-right:auto; margin-bottom:10px; flex-wrap:wrap;}
footer .footer_menu ul{margin:0 15px 0 0; padding:0; display:flex; flex-wrap:wrap; list-style-type:none; flex-direction: column;}
footer .footer_menu ul li{font-size:.9rem;}
footer .footer_menu ul:first-child{width:100%;}
footer .footer_menu ul a{color:#ffffff !important; text-decoration:none; display:block; position: relative; padding-left:19px;}
footer .footer_menu ul a:before{position: absolute;
  display: block;
  content: '';
  top:7px; 
  left:2px; 
  height:0; 
  width:0; 
  border-top: 5px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #ffffff;}
footer dl{margin:10px 0 0;}
footer dl > div > *{margin:0;}
footer dl > div{display:flex; font-size:.8rem;}
footer dl > div > dt{width:50px; margin-right:10px;}
footer dl > div > dd{flex:1;}
@media (min-width:576px) {
  footer{display:block;}
  footer div.footer_wrap{display:flex;}
  footer div.left,footer div.right{display:flex; flex-direction: column;}
  footer .footer_menu{display:flex;}
}

#sm_bottom{bottom:0; z-index:15;}
#sm_bottom a{background-color:#000000; color:#ffffff !important; line-height:1.2; border-right:1px dotted #ffffff; padding: .9rem .5rem; text-decoration:none;}
#sm_bottom a:last-child{border:none;}
