@charset "UTF-8";
/* CSS Document */
/*カラールール
黒   #000
黄色 #ffb900
水色 #0099cc
*/

/* GLOBAL STYLES
-------------------------------------------------- */
html {
  font-size: 16px;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}
body{
	color:#000 ;
}
a {
	color:#000;
}
ul{
	padding-left:0;
}
li{
	list-style:none;
}
a, a:hover{
	text-decoration:none;
}
h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
}
/*グリッドスタイルで高さを同じにする*/
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}
.bg-faded {
    background-color: #f7f7f9;
}
.btn_01 a{
	position: relative;
	display: block;
	padding:15px 10px;
	font-size:1.2em;
	color:#FFF;
	text-align:center;
	background:#0099cc;
	border-radius:5px;
}
.btn_01 a:hover{
	background:#ffb900;
}
.btn_01 a::after {
	position: absolute;
	top: 50%;
	left: .5em;
	content: '';
	margin-top: -10px;
	border: 10px solid transparent;
	border-top-width: 10px;
	border-bottom-width: 10px;
	border-left-color: #fff;
	transition: all .3s;
}


/* 表示非表示の画面サイズ指定
-------------------------------------------------- */
@media (min-width: 576px){
.hidden-sm-up {
    display: none!important;
}
}
@media (max-width: 575px){
.hidden-xs-down {
    display: none!important;
}
}
@media (min-width: 992px) {
.hidden-lg-up {
    display: none!important;
}
}
@media (max-width: 991px){
.hidden-md-down {
    display: none!important;
}
}
 
/* HEADER STYLES
-------------------------------------------------- */
header{
}
header h1{
	margin:0 0 0 5px;
}
header h1 img{
	margin:10px 0;
	width:140px;
/*	vertical-align: baseline; */
}
#logo_company{
	margin:10px 0 10px 5px;
	width:140px;
}

.header_text{
	margin:0;
	padding:6px 0;
	font-size:0.8rem;
	text-align:center;
	background:#ffb900;
}
@media (min-width: 36em){
.header_text{
	padding-left:15px;
	font-size:0.9rem;
	text-align:left;
	background:#fff;
}
}

/* NAV STYLES
-------------------------------------------------- */
.navbar {
	position:absolute;
	top:0px;
	right:0px;
	z-index: 9999;
	min-height: auto;
}
.navbar .navbar-toggler{
	position: absolute;
	top:10px;
  right: 0;
	width: 2.5em;
	height: 2em;
	padding: .5rem .75rem;
	line-height: 1;
/*	background: transparent no-repeat center center; */
	background: #FFF;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,185,0,1)' stroke-width='4' stroke-linecap='' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
	border:none;
	border-radius: .25rem;
	margin-right:10px;
	font-size:0.7rem;
	color:#ffb900;
	z-index:9;
}
.navbar-light .navbar-toggler:hover{
	color:#ffb900;
}
.navbar .navbar-toggler span{
	margin-left: -17px;
	padding-top:16px;
	display: block;
}
@media (min-width: 36em) {
.navbar{
	position:static;
	margin-bottom:0 !important;
	padding: 0;
	font-size:0.9rem;
	background:#ffb900;
	border-radius: 0;
	border:none;
}
.navbar-nav .nav-link{
	padding:5px 20px;
	color:#000 !important;
}
.navbar-nav .nav-link:hover{
	background:#000;
	color:#FFF !important;
}
.navbar-nav .nav-item {
    float: left;
}
}
@media (min-width: 576px){
.navbar-toggleable-xs {
    display: block !important;
}
}



/* MAIN STYLES
-------------------------------------------------- */
main{
	background:#ffb900;
}


/* スマホ用メニュー
-------------------------------------------------- */
.nav_sp{
	padding:0px 5px;
}
.nav_sp .col-xs-6{
	padding-right: 10px;
	padding-left: 10px;
}
.nav_sp li{
	margin:15px 0 0 0;
}
.nav_sp li a{
	padding:15px 0px;
	font-size: 0.9rem;
	text-align:center;
	border:1px solid #FFF;
	border-radius:5px;
	display:block;
}
.nav_sp li a:hover{
	background:#000;
	color:#FFF;
}
@media (max-width: 992px) {
main > .container{
	padding-bottom:15px;
}
}



/* SUB PAGE 共通
-------------------------------------------------- */
.sub_page{
	padding:20px;
}
.sub_page > div{
	background:#FFFFFF;
}
.title_set{
	margin-top:20px;
}
.title_set h1{
	margin-bottom:0.5em;
	font-size: 30px;
	position: relative;
	padding: 3px 0 0px 36px;
}
.title_set h1:before, .title_set h1:after{
		content: "";
		position: absolute;
		bottom: 0;
		background: #ffb900;
		margin: auto;
}
.title_set h1:before{
		top: 6px;
		left: 0px;
		width: 20px;
		height: 20px;
		animation: spin 4s linear infinite;
}
.title_set h1:after{
		top: -14px;
		left: 14px;
		width: 12px;
		height: 12px;
		animation: spin 4s linear infinite;
		border:solid 2px #FFF;
}
@keyframes spin{
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
.title_set .text{
	margin-bottom:20px;
}
.title_set .text ul{
	margin-bottom:0;
}
.title_set .text ul li{
	margin-left:20px;
	font-size:1.3em;
	list-style:disc;
	line-height:1.5em;
}
.title_set .photo{
	text-align:right;
}
.title_set .photo img{
	width:100%;
}
@media (min-width: 992px) {
.sub_page {
	background:#FFFFFF;
}
.sub_page > div {
	margin:auto;
}
.title_set{
}
}

/* FOOTER STYLES
-------------------------------------------------- */
footer .logo{
	margin:10px 0;
	text-align: center;
}
footer .copy{
	margin-bottom:5px;
	font-size: 0.6rem;
	text-align:center;
}
footer .gotop{
	position:fixed;
	right:5px;
	bottom:5px;
}
footer .member{
	padding:8px 0;
	font-size:0.9rem;
	text-align:center;
	color:#FFF;
	background:#000;
}
@media (min-width: 62em) {
	footer{
		padding-top:10px;
		border-top:dotted 10px #ffb900;
	}
	footer .logo{
		text-align: left;
	}
	footer .logo img{
	padding-bottom:10px;
	}
	footer .logo span{
		padding-left:25px;
	}
	footer .copy{
		margin-bottom:0;
		padding:10px;
		background:#000;
		color:#FFF;
	}	
}