/**
 * place custom style in this file
 * add !important to the end if no effect
 * e.g. color: #fff !important;
 * --------------------------------------------------
 *
 */



/* ニュース */
.news dd a{
	color: #006ff5;
}
.news dd a:hover{
	text-decoration: underline;
}

article a{
	color: #006ff5;
}
article a:hover{
	text-decoration: underline;
}

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

.page-intro.sp{
	height: 467px;
}

.navbar-brand{
	height: 60px;
	padding-top: 0;
	padding-bottom: 0;
}
.navbar-brand .navbar-brand-media-img{
	width: 166px;
	height: 60px;
}
.navbar-expand-lg .navbar-nav .nav-link {
	color: #212121;
}
.navbar{
	padding: 15px 0;
}

.btn-primary {
    border-radius: 2px;
    font-size: 13px;
    padding: 0 15px;
}

.btn{
	border-radius: 2px !important;
    font-size: 15px !important;
    padding: 9px 15px !important;
    line-height: 1.86667 !important;
    color: #fff !important;
    background-color: #2a7af3 !important;
    border-color: #2874e7 !important;
}

.navbar-nav a.nav-link{
	padding-right: 15px !important;
	padding-left: 15px !important;
}

.dropdown-menu{
    min-width: 160px;
    padding: 5px 0;
    margin: 0;
    list-style: none;
    font-size: 15px;
    text-align: left;
    background-color: #fff;
    border: 1px solid #e5e5e5;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    background-clip: padding-box;
}

#breadcrumb{
	margin-top: 0;
}

a.box-problem-top,
a.box-problem-top *,
a.box-problem-top:focus,
a.box-problem-top:active {
  text-decoration: none !important;
}

.box-problem-top{
	display: block;
}

.site-content{
	padding-bottom: 96px;
}

@media (max-width: 991px) {
	.navbar-collapse {
		max-height: 90vh; /* 任意の高さに応じて調整可 */
		overflow-y: auto;
	}
	
	.navbar-nav {
		flex-direction: column;
	}

	.navbar{
		padding: 10px 0;
		overflow: hidden;
	}
	.navbar-brand .navbar-brand-media-img{
		width: 100px;
		height: 36px;
	}
	.navbar-brand{
		height: 43px;
		padding-top: 5px;
    	padding-bottom: 0;
	}
	.navbar-toggler-icon {
	  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='black' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
	}
	.navbar-toggler {
	  border: none;
	  box-shadow: none; /* フォーカス時の影も消す */
	}
	.navbar-toggler:focus {
	  outline: none;
	  box-shadow: none;
	}
	.navbar-nav a,
	.navbar-nav a:focus,
	.navbar-nav a:active,
	.navbar-nav button,
	.navbar-nav button:focus,
	.navbar-nav button:active,
	.navbar-nav li,
	.navbar-nav li:focus,
	.navbar-nav li:active {
	  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	  outline: none;
	  box-shadow: none;
	}
	.dropdown-menu{
	    min-width: 160px;
	    padding: 5px 0;
	    margin: 10px 16px 10px 16px;
	    list-style: none;
	    font-size: 15px;
	    text-align: left;
	    border: 0;
	    -webkit-border-radius: 0;
	    border-radius: 0;
	    -webkit-box-shadow: none;
	    box-shadow: none;
	    background-color: #EFEFEF;
	}

	.btn-primary {
	    padding: 10px 15px;
	}
	.navbar-nav .btn-primary {
	    display: inline-block;
	    width: 90% !important;
	}

    .section-title {
        font-size: 24px;
    }
    
	h3, .text-h3 {
	    font-size: 21px;
	}
	
	.module{
		padding-top: 48px;
		padding-bottom: 48px;
	}
	.feature-1-section .col-content{
		margin-bottom: 0;
	}
	.section-cta{
		margin-top: 24px;	
	}
	.section-media-img{
		max-width: 80%;	
	}
}

.col-el{
	margin: 0 auto;
}

/* フォーム対応 */
.mwform-radio-field-text{
	text-align: center;
	width: 50px;
	display: block;
}