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

body.scrolled{
	padding-top:60px;
}

#wrapper {
  overflow: hidden;
}

.inner{
	width:94%;
	max-width:1100px;
	margin-left:auto;
	margin-right:auto;
}
.inner100{
	width:100%;
	max-width:1100px;
	margin-left:auto;
	margin-right:auto;
}

#contents_left{
	float:left;
	width:calc(100% * (800 / 1100));
}
#contents_right{
	float:right;
	width:calc(100% * (270 / 1100));
}

/* locator */
/*------------------------------------------------------------------------------*/

#locator{
	padding:20px 0 30px;
	text-align:right;
	line-height:1.4;
}

/******----table用---******/
.w5{width: 5%;}
.w10{width: 10%;}
.w15{width: 15%;}
.w20{width: 20%;}
.w25{width: 25%;}
.w30{width: 30%;}
.w35{width: 35%;}
.w40{width: 40%;}
.w45{width: 45%;}
.w50{width: 50%;}
.w55{width: 55%;}
.w60{width: 60%;}
.w65{width: 65%;}

/*header*/
/*------------------------------------------------------------------------------*/

@media only screen and (min-width:1101px) {
#header_top{
	background:#E0F1F1;
}
#header_top .inner{
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	justify-content: space-between;
	padding:20px 0;
}
#logo{
	font-size:0px;
	width:calc(100vw - 530px);
	height:auto;
	max-width:335px;
}
#logo a{
	display:inline-block;
	position:relative;
}
#logo a:after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	background:#E0F1F1;
	opacity:0;
	transition:0.3s;
}
#logo img{
	width:100%;
	height:auto;
	opacity:1 !important
}
#logo a:hover:after{
	opacity:0.3;
}


#header_link{
	margin-bottom:15px;
}
#header_link li{
	float:left;
}
#header_link li + li{
	border-left:1px solid #CCC;
}

#header_link li a{
	display:block;
	line-height:1;
	padding:0 20px;
}
#header_link li:last-child a{
	padding-right:0;
}

#header_search{
	float:right;
}

#header_right_btn{
	float:left;
	width:140px;
	margin-right:20px;
}
#header_right_btn a{
	display:block;
	height:40px;
	line-height:36px;
	color:#FFF;
	background:#666;
	border:1px solid #666;
	text-align: center;
	position:relative;
	padding:0 10px 0 20px;
	border-radius:4px;
	transition:0.3s;
}
#header_right_btn a:after{
	content:"";
	box-sizing:border-box;
	width:8px;
	height:8px;
	border-top:1px solid #FFF;
	border-right:1px solid #FFF;
	transform: rotate(45deg);
	position:absolute;
	left:13px;
	top:calc(50% - 4px);
	transition:0.3s;
}
#header_right_btn a:before{
	content:"";
	box-sizing:border-box;
	width:8px;
	height:8px;
	border-top:1px solid #FFF;
	border-right:1px solid #FFF;
	transform: rotate(45deg);
	position:absolute;
	left:9px;
	top:calc(50% - 4px);
	transition:0.3s;
}

#header_right_btn a:hover{
	color:#666;
	background:#FFF;
}
#header_right_btn a:hover:before,
#header_right_btn a:hover:after{
	border-top:1px solid #666;
	border-right:1px solid #666;
}


#header_right_in{
	width:400px;
	float:right;
}

#header_search {
	display:block/* !important*/;
	float:right;
	width:calc(100% - 160px);
}

}

#fSearch {
	width:300px;
	display:block !important;
	border:1px solid #cccccc;
}

#header_search *,
#fSearch *{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius:0;
	border:none;
}

#header_search input[type="text"],
#fSearch input[type="text"]{
	float:left;
	width:calc(100% - 40px);
	height:40px;
	line-height:40px;
	padding:0 15px;
	background:#FFF;
}

#header_search input[type="submit"],
#fSearch input[type="submit"] {
	float:right;
	width:40px;
	height:40px;
	background:url(../image/common/header_search_btn.webp) #999 no-repeat center top / 40px 80px;
	overflow:hidden;
	text-indent:-9999px;
	transition:0.3s;
}
#header_search input[type="submit"]:hover,
#fSearch input[type="submit"]:hover {
	background-color:#008C8C;
	cursor:pointer;
}

#gnav_btn{
	display:none;
}
#search_btn{
	display:none;
}


/*globalnav*/
/*------------------------------------------------------------------------------*/

@media only screen and (min-width:1101px) {
#globalnav_wrapper{
	position:relative;
	background:#008C8C;
	width:100%;
	z-index:10;
}
#globalnav_wrapper.fixed{
	position:fixed;
	left:0;
	top:0;
	z-index:100;
}

#globalnav > ul{
	display:flex;
}
#globalnav > ul > li{
	flex:1 1 auto;
}
/*
#globalnav > ul > li:nth-child(1){width:11.55% !important;}
#globalnav > ul > li:nth-child(2){width:15.91% !important;}
#globalnav > ul > li:nth-child(3){width:17.45% !important;}
#globalnav > ul > li:nth-child(4){width:17.45% !important;}
#globalnav > ul > li:nth-child(5){width:11.64% !important;}
#globalnav > ul > li:nth-child(6){width:11.55% !important;}
#globalnav > ul > li:nth-child(7){width:14.45% !important;}
*/


#globalnav > ul >  li > a{
	display:block;
	text-align:center;
	font-size:16px;
	height:60px;
	line-height:60px;
	color:#FFF;
	position:relative;
	transition:0.3s;
}

#globalnav > ul >  li > a:after{
	content:"";
	width:1px;
	height:16px;
	background:rgba(255,255,255,0.3);
	position:absolute;
	right:0;
	top:22px;
}

#globalnav > ul >  li:first-child > a:before{
	content:"";
	width:1px;
	height:16px;
	background:rgba(255,255,255,0.3);
	position:absolute;
	left:0;
	top:22px;
}

#globalnav > ul >  li > a:hover,
#globalnav > ul >  li.main_current > a,
#globalnav > ul >  li.open > a{
	background:#007575;
}

.sub_menu{
	position:absolute;
	top:100%;
	left:0;
	background:#007575;
	width:100%;
	display:none;
	padding:30px 0 !important;
}
.sub_menu li{
	float:left;
	width:24.1%;
	margin:1.2% 0 0 1.2%;
}
.sub_menu li:nth-child(4n+1){
	clear:both;
	margin-left:0;
}
.sub_menu li:nth-child(-n+4){
	margin-top:0;
}
.sub_menu li a{
	display:flex;
	flex-wrap:wrap;
	justify-content: flex-start;
	align-items: center;
	font-size:16px;
	color:#FFF;
	height:60px;
	line-height:1.3;
	padding:5px 30px 5px 15px;
	border:1px solid #FFF;
	position:relative;
	transition:0.3s;
}
.sub_menu li a:after{
	content:"";
	box-sizing:border-box;
	width:8px;
	height:8px;
	border-top:1px solid #FFF;
	border-right:1px solid #FFF;
	transform: rotate(45deg);
	position:absolute;
	right:15px;
	top:calc(50% - 4px);
	transition:0.3s;
}

.sub_menu li a:hover{
	color:#007575;
	background:#FFF;
}
.sub_menu li a:hover:after{
	border-top:1px solid #007575;
	border-right:1px solid #007575;
}
}


/* btn */
/*------------------------------------------------------------------------------*/

.free_btn a{
	display:inline-block;
	min-width:300px;
	border:2px solid #1C5F8F;
	line-height:1.4;
	font-size:16px;
	text-align:center;
	color:#1C5F8F;
	position:relative;
	background:#FFF;
	padding:15px 15px 15px 30px;
	transition:0.3s;
	text-decoration: none;
}
.free_btn a:before,
.free_btn a:after{
	content:"";
	box-sizing:border-box;
	width:8px;
	height:8px;
	border-top:1px solid #1C5F8F;
	border-right:1px solid #1C5F8F;
	transform: rotate(45deg);
	position:absolute;
	left:10px;
	top:calc(50% - 4px);
	transition:0.3s;
}
.free_btn a:after{
	left:14px;
}

.free_btn a:hover{
	background:#1C5F8F;
	color:#FFF;
}
.free_btn a:hover:before,
.free_btn a:hover:after{
	border-top:1px solid #FFF;
	border-right:1px solid #FFF;
}

.free_btn a[href$=".pdf"]{
	padding:15px 40px 15px 15px;
}
.free_btn a[href$=".pdf"]:before{
	display:none;
}
.free_btn a[href$=".pdf"]:after{
	font-family: 'FontAwesome';
	content:"\f1c1";
	width:auto;
	height:20px;
	line-height:20px;
	border-top:none !important;
	border-right:none !important;
	transform: rotate(0deg);
	left:auto;
	right:15px;
	top:calc(50% - 10px);
	font-size:20px;
	color:#1C5F8F;
}
.free_btn a[href$=".pdf"]:hover:after{
	color:#FFF;
}

.free_btn2 a{
	display:inline-block;
	min-width:200px;
	border:1px solid #008C8C;
	line-height:1.4;
	font-size:16px;
	color:#1C5F8F;
	position:relative;
	background:#008C8C;
	color:#FFF;
	padding:12px;
	transition:0.3s;
}
.free_btn2 a:hover{
	color:#008C8C;
	background:#FFF;
}

/* contact_box */
/*-------------------------------------------------------------------------------*/

#contact_box{
	background:url(/dcms_sftp/dcms_free/contact_box_bg.webp) no-repeat center center / cover;
	padding:70px 0;
	color:#FFF;
	letter-spacing:0.05em;
	text-align:center;
	font-size:16px;
}

#contact_box_title{
	font-size:36px;
	line-height:1.4;
	margin-bottom:20px;
	font-weight:500;
}

#contact_box_btn a{
	display:inline-block;
	width:400px;
	max-width:100%;
	color:#FFF;
	font-size:20px;
	background:#D9A300;
	border:1px solid #D9A300;
	padding:20px 0;
	transition:0.3s;
}
#contact_box_btn a:hover{
	background:#FFF;
	color:#D9A300;
}

/* banner */
/*-------------------------------------------------------------------------------*/

#top_banner{
	background:#008C8D;
	padding:60px 0;
}
#top_banner .inner{
	width:calc(100vw - 60px);
	max-width:980px;
}
#top_banner_list img{
	width:100%;
	max-width:300px;
	height:auto;
}
#top_banner_list .slick-slide{
	padding:0 10px;
}

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

footer{
	background:#EEE;
}
#f_logo{
	padding:40px 20px 30px;
	border-bottom:1px solid #CCC;
	margin-bottom:40px;
	text-align:center;
}
#f_logo a{
	display:inline-block;
	position:relative;
}
#f_logo a:after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	background:#EEE;
	opacity:0;
	transition:0.3s;
}
#f_logo img{
	width:336px;
	height:auto;
	opacity:1 !important
}
#f_logo a:hover:after{
	opacity:0.3;
}

#f_menu{
	margin-bottom:50px;
}

#f_menu ul{
	float:left;
	width:23.8%;
}
#f_menu ul + ul{
	margin-left:1.6%;
}

#f_menu li{
	font-size:16px;
	line-height:1.4;
}
#f_menu li + li{
	margin-top:10px;
}

#footer_link{
	background:#666;
	color:#FFF;
	line-height:1.4;
	padding:20px 0;
}
#footer_link li{
	display:inline-block;
}

#footer_link li + li:before{
	content:"　｜　";
}
#footer_link li a{
	color:#FFF;
}
#footer_link li a:hover{
	text-decoration: underline;
}

#copyright{
	background:#000;
	color:#FFF;
	line-height:1.4;
	padding:20px 0;
	text-align:center;
}

/* pagetop */
/*-------------------------------------------------------------------------------*/
#topcontrol{
	bottom:20px !important;
	right:20px !important;
	z-index:50;
}

#topcontrol a{
	display:block;
	background:#008C8E;
	width:62px;
	height:62px;
	border:1px solid #FFF;
	position:relative;
}

#topcontrol a:after{
	content:"";
	box-sizing:border-box;
	width:20px;
	height:20px;
	border-top:1px solid #FFF;
	border-right:1px solid #FFF;
	transform: rotate(-45deg);
	position:absolute;
	left:calc(50% - 10px);
	top:25px;
}



/* btn */
/*-------------------------------------------------------------------------------*/
.free_btn3 li.free_btn_und a{
	display:block;
	border:2px solid #1C5F8F;
	line-height:1.4;
	font-size:16px;
	text-align:center;
	color:#1C5F8F;
	position:relative;
	background:#FFF;
	padding:15px 15px 15px 30px;
	transition:0.3s;
}
.free_btn3 li.free_btn_und a:before,
.free_btn3 li.free_btn_und a:after{
	content:"";
	box-sizing:border-box;
	width:8px;
	height:8px;
	border-top:1px solid #1C5F8F;
	border-right:1px solid #1C5F8F;
	transform: rotate(135deg);
	position:absolute;
	left:10px;
	top:calc(50% - 1px);
	transition:0.3s;
}
.free_btn3 li.free_btn_und a:after{
	left:10px;
	top:calc(50% - 4px);
}

.free_btn3 li.free_btn_und a:hover{
	background:#1C5F8F;
	color:#FFF;
}
.free_btn3 li.free_btn_und a:hover:before,
.free_btn3 li.free_btn_und a:hover:after{
	border-top:1px solid #FFF;
	border-right:1px solid #FFF;
}

.txt_link_unnon a{
	color: #008C8C;
}

.sp_only {
	display:none;
}

