@charset "UTF-8";

/* 共通
=======================================*/
body{
	position:relative;
}

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

ul{
	list-style:none outside;
}

.sp_none{
	display:block !important;
}

.pc_none{
	display:none !important;
}

.over980{
	display:block !important;
}
	
.under980{
	display:none !important;
}

/* 画面幅980px以下
=======================================*/
@media screen and (max-width:980px){
	.over980{
		display:none !important;
	}

	.under980{
		display:block !important;
	}
}

/* 画面幅768px以下
=======================================*/
@media screen and (max-width:768px){
	.sp_none{
		display:none !important;
	}

	.pc_none{
		display:block !important;
	}
}

/* 画面幅480px以下
=======================================*/
.sp_only{
	display: none !important;
}
.pc_only{
	display: block !important;
}
@media all and (max-width: 480px){
.sp_only{
	display: block !important;
}
.pc_only{
	display: none !important;
}
}
/* マウスオーバ時に画像を半透明に（※PCのみ）
--------------------------------------------*/
@media screen and (min-width:768px){
	a:hover img {
		opacity:0.7;
		filter:alpha(opacity=70);
		-moz-opacity:0.7;
		-webkit-transition:0.4s ease-in-out;
		-moz-transition:0.4s ease-in-out;
		-o-transition:0.4s ease-in-out;
		transition:0.4s ease-in-out;
	}
}

/* ヘッダー
--------------------------------------------*/
header{
	width:100%;
	/*position:relative;*/
	position:fixed;
	top:0;
	z-index:100;
	background-color:#FFF;
}

header::after{
	content:"";
    position:absolute;
    top:144px;
    left:0;
    width:100%;
    height:2px;
    background-color:#BAE2F2;
	z-index:-10; /* ナビより上だと、グローバルナビからサブナビにカーソルを移動する際にhoverが解除されてしまう */
}

header div.wrapper{
	width:1300px;
	margin:0 auto;
}

header div.wrapper div.top{
	overflow:hidden;
	background-color:#FFF;
	line-height:0;
}

header div.wrapper div.top > a{
	display: block;
  float: left;
  margin: 5px 0 0 160px;
  width: 285px;
}

header div.wrapper div.top ul{
	float:right;
	overflow:hidden;
}
/* andou 200417 */
.sub_nav_set{
	display: block;
	margin: 4px 0 0 0;
	font-size: 13px;
	text-align: right;
}
.sub_nav_set a:hover{
	color: #bae2f2;
}
.header_sub_nav{
	float:left;
	line-height: 1.8;
}
header div.wrapper div.top ul div#google_translate_element{
	display: block;
	float: none;
	margin-top: 28px;
}
.header_sub_nav_sns{
	float:left !important;
	line-height: 1.8;
	margin: 21px 5px 0 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	flex-wrap: wrap;
}
ul.header_sub_nav_sns > li > a > img{
	width: 37px;
	height: 37px;
}
/* andou 200417 END*/
header div.wrapper div.top ul li{
	float:left;
	margin-left:5px;
}
header div.wrapper div.top ul li a svg rect.cls-1{
	width: 170px;
	margin-top: 10px;
}
header div.wrapper div.top ul li a svg rect.cls-1{
	fill:#91D8DE;
}
header div.wrapper div.top ul li a svg g .cls-2,
header div.wrapper div.top ul li a svg g .cls-3
{
	fill:#fff;
}
header div.wrapper div.top ul li a svg g .cls-3{
	stroke:#91D8DE;
	stroke-miterlimit:10;
	stroke-width:2px;
}
header div.wrapper div.top ul li a svg g polygon.cls-1{
	fill:#B49B46;
}
header div.wrapper div.top ul li a svg rect.cls-4{
	fill:#B49B46;
}

header div.wrapper nav{
	width:980px;
	/*margin:0 auto;*/
	margin:6px auto 0 auto;
	display:block;
}

header div.wrapper nav > ul{
	display:block;
	position:relative;
}

header div.wrapper nav > ul > li{
	width:140px;
	height:70px;
	line-height:70px;
	float:left;
	background-color:#FFF;
	border-bottom:2px solid #BAE2F2;
	box-sizing:border-box;
}
.gnavi ul li span a:hover{
	color: #B49B46;
	-webkit-transition:all 0.4s ease-in-out;
  transition:all 0.4s ease-in-out;
}
header div.wrapper nav > ul > li > span{
	display: flex;
	margin-top: 20px;
	border-right: 1px solid #8e8e8e;
	box-sizing: border-box;
	width: 100%;
	height: 40px;
	line-height: 20px;
	font-size: 14.0px;
	font-weight: 600;
	text-align: center;
	letter-spacing: 1px;
	-webkit-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
	cursor: pointer;
	position: relative;
	z-index: 100;
	align-content: center;
	align-items: center;
	justify-content: center;
}
/*
header div.wrapper nav > ul > li > span{
	display:block;
	margin-top:20px;
	border-right:1px solid #8e8e8e;
	box-sizing:border-box;
	width:100%;
	height:30px;
	line-height:30px;
	font-size:14.0px;
	font-weight:600;
	text-align:center;
	letter-spacing:1px;
	-webkit-transition:all 0.4s ease-in-out;
    transition:all 0.4s ease-in-out;
	cursor:pointer;
	position:relative;
	z-index:100;
}
*/

header div.wrapper nav > ul > li.active > span{
	color:#b59c46;
}

header div.wrapper nav > ul > li:first-child > span{
	border-left:1px solid #8e8e8e;
}

header div.subnavi{
	width:100%;
	position:absolute;
	top:146px;
	left:0;
}

header div.subnavi div.container{
	display:none;
	width:100%;
	margin:0 auto;
	background-color:rgba(255,255,255,0.95);
	line-height:140%;
	/*z-index:-10;*/
	position:relative;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック",YuGothic,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	padding:30px 45px;
	box-sizing:border-box;
	overflow:hidden;
	border-bottom: 2px solid #BAE2F2;;
}

header div.subnavi div.container > ul{
	overflow:hidden;
	margin:0 auto;
	box-sizing:border-box;
	display:none;
	-webkit-transition:all 0.9s ease-in-out;
    transition:all 0.9s ease-in-out;
	opacity:0;
	filter:alpha(opacity=0);
	-moz-opacity:0;
}

header div.subnavi div.container > ul:nth-child(1){ width:747px; }
header div.subnavi div.container > ul:nth-child(2){ width:940px; }
header div.subnavi div.container > ul:nth-child(3){ width:940px; }
/*header div.subnavi div.container > ul:nth-child(4){ width:361px; }*/
/*header div.subnavi div.container > ul:nth-child(4){ width:554px; }*/
header div.subnavi div.container > ul:nth-child(4){ width:940px; }
header div.subnavi div.container > ul:nth-child(5){ width:940px; }
header div.subnavi div.container > ul:nth-child(6){ width:747px; }

header div.subnavi div.container > ul.active{
	display:block;
}

header div.subnavi div.container > ul > li{
	float:left;
	width:168px;
	margin-right:25px;
}

header div.subnavi div.container > ul > li:last-child{
	margin-right:0;
}
header div.subnavi div.container > ul.con3 > li{
	width:134px;
}
/*header div.subnavi div.container > ul > li a{
	display:block;
}*/

/*header div.subnavi div.container > ul > li div{
	width:100%;
	height:104px;
	overflow:hidden;
}*/

header div.subnavi div.container > ul > li div{
	width:100%;
	height:auto;
	position:relative;
	overflow:hidden;
}
	
header div.subnavi div.container > ul > li div::before {
	content:"";
	display:block;
	padding-top:75%;
}

header div.subnavi div.container > ul > li div img{
	width:100%;
	height:100%;
	position:absolute;
	top:0; 
	left:0;
	-webkit-transition:all 0.6s ease-in-out;
    transition:all 0.6s ease-in-out;
}

header div.subnavi div.container > ul > li div:hover img{
	transform:scale(1.10,1.10);
    -webkit-transform:scale(1.10,1.10);
    -moz-transform:scale(1.10,1.10);
    -ms-transform:scale(1.10,1.10);
    -o-transform:scale(1.10,1.10);
}

header div.subnavi div.container > ul > li p a{
	font-size:14.5px;
	font-weight:600;
	color:#b49b46;
	margin:10px 0;
	display:inline-block;
}

header div.subnavi div.container > ul > li span{
	font-size:13px;
	font-weight:300;
}

header div.subnavi div.container > ul > li ul{
	margin-top:6px;
}

header div.subnavi div.container > ul > li ul li{
	position:relative;
	/*width:154px;*/
	width:calc(100% - 14px);
	left:14px;
	padding:1px 0;
	font-weight:300;
}

header div.subnavi div.container > ul > li ul li::before{
	content:"〉";
	position:absolute;
	left:-14px;
	top:2px;
	font-size: 11px;
	color: #b49b46;
}

header div.subnavi div.container > ul > li ul li a{
	font-size:13px;
}

header div.subnavi div.container > ul > li ul li a:hover{
	color:#b49b46;
}

header div.exam{
	width:100%;
	clear:both;
	border-top:2px solid #bae2f2;
	position:relative;
	top:-2px;
}

header div.exam nav{
	width:100%;
	display:none;
	overflow:hidden;
	padding:20px 0;
	box-sizing:border-box;
	border-bottom:2px solid #BAE2F2;
	background-color:rgba(255,255,255,0.95);
}

header div.exam nav ul{
	width:980px;
	margin:0 auto;
	overflow:hidden;
}
	
header div.exam nav ul li{
	float:left;
	width:184px;
	height:60px;
	margin-right:15px;
	position:relative;
	border:2px solid #BAE2F2;
	/*border-radius:5px;
	-webkit-border-radius:5px;  
	-moz-border-radius:5px;*/
	box-sizing:border-box;
	-webkit-transition:all 0.4s ease-in-out;
    transition:all 0.4s ease-in-out;
}
	
header div.exam nav ul li:hover{
	background-color:#BAE2F2;
}

header div.exam nav ul li::before{
	position:absolute;
	left:7px;
	top:7px;
	content:"";
	width:0;
	height:0;
	border-style:solid;
	border-width:0px 0 17px 17px;
	border-color:transparent transparent transparent #FFF;
	z-index:10;
}
	
header div.exam nav ul li:nth-child(5){
	margin-right:0;
}

header div.exam nav ul li a{
	display:block;
	position:relative;
	width:100%;
	height:100%;
	line-height:56px;	/* 60px - 上下の枠線4px */
	text-align:center;
	text-decoration:none;
	font-size:17px;
	font-weight:600;
	color:#BAE2F2;
	letter-spacing:1px;
	-webkit-transition:all 0.4s ease-in-out;
    transition:all 0.4s ease-in-out;
}

header div.exam nav ul li:hover a{
	color:#FFF;
}

header div.exam nav ul li a::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:50%;
	border-radius:5px 5px 0 0 / 5px 5px 0 0;
	-webkit-border-radius:5px 5px 0 0 / 5px 5px 0 0;
	-moz-border-radius:5px 5px 0 0 / 5px 5px 0 0;
	background-color:#FFF;
	-webkit-transition:all 0.4s ease-in-out;
    transition:all 0.4s ease-in-out;
}

header div.exam nav ul li:hover a::before{
	background-color:#BAE2F2;
}
	
header div.exam nav ul li a span{
	position:relative;
}

header div.exam div.tab{
	width:430px;
	height:36px;
	line-height:36px;
	margin:0 auto;
	background-image:url(../img/common/btn_tab.png);
	background-repeat:no-repeat;
	background-position:center;
	font-size:15px;
	font-family:"Hiragino Maru Gothic W6 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight:600;
	color:#FFF;
	text-align:center;
	cursor:pointer;
	position:relative;
}

header div.exam div.tab span{
	position:relative;
	display:inline-block;
}

header div.exam div.tab img.before,
header div.exam div.tab img.after{
	position:absolute;
	top:8px;
}

header div.exam div.tab img.before{
	left:60px;
}

header div.exam div.tab img.after{
	right:60px;
}

header a#switch{
	display: none;
}

/* 画面幅1300px以下
=======================================*/
@media screen and (max-width:1300px){
	header div.wrapper{
		width:100%;
	}
	
	header div.wrapper div.top > a{
		margin-left:10px;
	}
}

/* 画面幅1024px以下
=======================================*/
@media screen and (max-width:1024px){
	header div.subnavi div.container > ul:nth-child(1){ width:94%; }
	header div.subnavi div.container > ul:nth-child(2){ width:94%; }
	header div.subnavi div.container > ul:nth-child(3){ width:94%; }
	header div.subnavi div.container > ul:nth-child(4){ width:94%; }
	header div.subnavi div.container > ul:nth-child(5){ width:94%; }
	header div.subnavi div.container > ul:nth-child(6){ width:94%; }

	header div.subnavi div.container{
		width:100%;
		padding:30px 0;
	}

	header div.subnavi div.container > ul > li{
		float:left;
		width:18.4%;
		margin-right:2%;
	}
	header div.subnavi div.container > ul.con3 > li{
		width:15.0%;
	}

	header div.subnavi div.container > ul > li a div{
		width:100%;
		height:104px;
		overflow:hidden;
	}
	
	header div.exam nav ul{
		width:100%;
		margin:0 auto;
		overflow:hidden;
	}
		
	header div.exam nav ul li{
		width:18.5%;
		height:60px;
		margin-right:1.25%;
	}
	
	header div.exam nav ul li:last-child{
		margin-right:1.25%;
	}
	
	header div.exam nav ul li:first-child{
		margin-left:1.25%;
	}
}

/* 画面幅980px以下
=======================================*/
@media screen and (max-width:980px){
	/*header div.wrapper div.top ul{
		width:50%;
	}
	
	header div.wrapper div.top ul li{
		width:32%;
		margin-left:2%;
	}
	
	header div.wrapper div.top ul li:first-child{
		margin-left:0;
	}
	
	header div.wrapper div.top ul li a img{
		width:100%;
	}*/
	
	header div.wrapper nav{
		width:100%;
	}
	
	header div.wrapper nav > ul > li{
		width:14.27%;
	}
	
	header div.wrapper nav > ul > li:first-child > span{
		border-left:none;
	}
	
	header div.wrapper nav > ul > li:last-child > span{
		border-right:none;
	}
	
	header div.exam nav ul li a{
		font-size:16px;
	}
}
/* 画面幅880px以下
=======================================*/
@media screen and (max-width:880px){
	header div.wrapper nav > ul > li > span{
		font-size:13px;
		letter-spacing:0px;
	}
}

/* 画面幅850px以下
=======================================*/
@media screen and (max-width:950px){
	header div.wrapper div.top ul div#google_translate_element{
		display:none;
	}

	header div.wrapper nav > ul > li > span{
		font-size:13px;
		letter-spacing:0px;
	}
	
	header div.exam nav ul li a{
		font-size:15px;
	}
}

/* 画面幅768px以下
=======================================*/
@media screen and (max-width:768px){
	header{
		position:fixed;
		/* position:absolute; */
		height:70px;
		z-index: 101;
		box-shadow: 2px 1px 2px rgba(0, 0, 0, 0.22);
	}

	header::after{
		content:normal;
	}
	
	header div.wrapper div.top > a{
		margin-top:5px;
	}
	
	header div.subnavi{
		display:none;
	}
	header a#switch{
        display: block;
		position: fixed;
		right: 0;
		top: 8px;
		width:50px;
		height:50px;
		transform:matrix(1, 0, 0, 1, 0, 0);
	}
}

/* 画面幅500px以下
=======================================*/
@media screen and (max-width:500px){
	header div.wrapper div.top a img{
		width:90%;
	}
}

@media screen and (max-width:370px){
	header div.wrapper div.top a img{
		width:87%;
	}
}

@media screen and (max-width:350px){
	header div.wrapper div.top a img{
		width:83%;
	}
}

@media screen and (max-width:335px){
	header div.wrapper div.top a img{
		width:78%;
	}
}

article{
	margin:200px auto 0 auto;
}

/* 画面幅768px以下
=======================================*/
@media screen and (max-width:768px){
	article{
		position:relative;
		top:70px;
		margin-top:0;
	}
	
	article div.spnavi{
		width:100%;
	}
	
	article div.spnavi ul{
		width:100%;
		overflow:hidden;
	}
	
	article div.spnavi ul li{
		float:left;
		width:50%;
		height:100px;
	}
	
	article div.spnavi ul li:first-child{
		background-color:#bae2f2;
	}
	
	article div.spnavi ul li:last-child{
		background-color:#F0A53B;
	}
	
	article div.spnavi ul li a{
		display:block;
		width:100%;
		height:100%;
		background-repeat:no-repeat;
		background-position:center center;
		text-indent:100%;
		white-space:nowrap;
	}
	
	article div.spnavi ul li:first-child a{
		background-image:url(../img/common/txt_request.png);
	}
	
	article div.spnavi ul li:last-child a{
		background-image:url(../img/common/txt_entry.png);
	}
	
	article div.spnavi > a{
		width:100%;
		height:80px;
		display:block;
		text-align:center;
		padding:10px;
		box-sizing:border-box;
		background-image:url(../img/common/bg_slant.png);
		background-repeat:repeat;
		position:relative;
	}
	
	article div.spnavi > a span{
		width:100%;
		height:100%;
		line-height:60px;
		display:block;
		background-color:#FFF;
		font-family:"Hiragino Maru Gothic W6 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-weight:600;
		font-size:18px;
		letter-spacing:1px;
		position:relative;
	}

	article div.spnavi > a span i{
		font-style:normal;
		display:inline-block;
		width:350px;
		position:relative;
	}

	article div.spnavi > a span i img.before,
	article div.spnavi > a span i img.after{
		position:absolute;
		top:25px;
		z-index:10;
	}

	article div.spnavi > a span i img.before{
		left:0px;
	}

	article div.spnavi > a span i img.after{
		right:0px;
	}
}

/* 画面幅600px以下
=======================================*/
@media screen and (max-width:600px){
	article div.spnavi ul li{
		height:80px;
	}
	
	article div.spnavi ul li:first-child a{
		background-size:70%;
	}
	
	article div.spnavi ul li:last-child a{
		background-size:80%;
	}
}

/* 画面幅460px以下
=======================================*/
@media screen and (max-width:460px){
	article div.spnavi > a span{
		font-size:16px;
	}
	
	article div.spnavi ul li{
		height:70px;
	}
}

@media screen and (max-width:400px){
	article div.spnavi > a span i{
		width:90%;
	}
}

@media screen and (max-width:368px){
	article div.spnavi > a span i{
		width:95%;
	}
}

@media screen and (max-width:350px){
	article div.spnavi > a span{
		font-size:15px;
	}
}

/* フッター
--------------------------------------------*/
footer{
	width:100%;
	background-color:#BAE2F2;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック",YuGothic,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

footer a, footer a:hover{
	color:#000;
}

footer div.slant{
	width:100%;
	height:25px;
	background-size: auto auto;
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(187, 227, 243, 1) 5px, rgba(187, 227, 243, 1) 6px ); 
}

footer div.navi{
	color:#000;
	width:980px;
	margin:0 auto;
	padding:35px 0;
	display:flex;
}

footer div.navi{
	overflow:hidden;
}

footer div.navi div.column{
	float:left;
}

footer div.navi div.column.left{
	padding-right:40px;
}

footer div.navi div.column div.sitemap{
	overflow:hidden;
/* 	background-image:url(../img/common/img_jihee.png); */
	background-repeat:no-repeat;
	background-position:right bottom;
}

footer div.navi div.column div.sitemap div.column{
	margin-right:5%;
	box-sizing:border-box;
}

footer div.navi div.column div.sitemap div.column.col1{ width:23%; }
footer div.navi div.column div.sitemap div.column.col2{ width:22%; }
footer div.navi div.column div.sitemap div.column.col3{ width:20%; }
footer div.navi div.column div.sitemap div.column.col4{
	margin-right:0;
	width:20%;
}

footer div.navi div.column div.mark{
	width: 100%;
	margin: 0;
	padding: 20px 0 0;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	justify-content: flex-end;
	flex-wrap: wrap;
}
footer div.navi div.column div.mark img{
	margin: 0 0 0 10px;
	width: 126px;
}
@media all and (max-width:680px){
footer div.navi div.column div.mark{
	display: none;
}
}
@media all and (min-width:680px){
footer div.navi div.column div.sns .jihee ,
footer div.navi div.column div.sns .goals{
	display: none;
}
}


footer div.navi div.column div.sitemap div.column p{
	font-size:13px;
	font-weight:600;
	margin-bottom:4px;
}

footer div.navi div.column div.sitemap div.column p a{
	transition: all 0.2s ease-in-out; 
	cursor:default;
}

footer div.navi div.column div.sitemap div.column p a:hover {
  color: #B49B46;
}

footer div.navi div.column div.sitemap div.column ul{
	margin-bottom:30px;
}

footer div.navi div.column div.sitemap div.column ul:last-child{
	margin-bottom:0;
}

footer div.navi div.column div.sitemap div.column ul li a{
	font-size:13px;
	font-weight:300;
	line-height:180%;
	position:relative;
	display:inline-block;
	padding-left:12px;
	vertical-align:middle;
	transition: all 0.2s ease-in-out; 
}

footer div.navi div.column div.sitemap div.column ul li a:hover{
	color:#B49B46;
}

footer div.navi div.column div.sitemap div.column ul li a::before{
	position:absolute;
	top:5px;
	left:0;
	content:"";
	box-sizing:border-box;
	width:0px;
	height:0px;
	border:5px solid transparent;
	border-left:7px solid #B49B46;
}

footer div.navi div.column div.campus{
	overflow:hidden;
	margin-top:6px;
}

footer div.navi div.column div.campus img,
footer div.navi div.column div.campus > div{
	float:left;
	width: 100px;
}

footer div.navi div.column div.campus > div{
	width:236px;
	padding-top:16px;
	margin-left:30px;
}

footer div.navi div.column div.campus > div p:nth-child(1){
	font-size:20px;
	font-weight:600;
	font-family:"Hiragino Maru Gothic W6 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height:120%;
}

footer div.navi div.column div.campus > div p:nth-child(2){
	font-size:14px;
}

footer div.navi div.column div.campus > div a[href^="tel:"]{
	font-weight:600;
	font-size:15px;
	transition: all 0.2s ease-in-out; 
}

footer div.navi div.column div.campus > div a[href^="tel:"]:hover{
	color:#B49B46;
}

footer div.navi div.column div.campus > div a[href^="tel:"]::before{
	content:"Tel.";
	font-weight:300;
}

footer div.navi div.column div.campus > div a[href^="tel:"]::after{
	content:"（代表）";
	font-weight:300;
}

footer div.navi div.column div.campus > div a.access{
	display:block;
	width:80px;
	height:20px;
	line-height:20px;
	margin-top:6px;
	text-align:center;
	background-color:#FFF;
	color:#B49B46;
	font-size:12px;
	font-weight:600;
}

footer div.navi div.column.right{
	float:right;
	padding:15px 0 0 30px;	
	width:290px;
	box-sizing:border-box;
	border-left:1px solid #FFF;
}

footer div.navi div.column.right > p{
	text-align:left;
	font-weight:600;
	font-size:12px;
	line-height:180%;
	margin-top:34px;
}

footer div.navi div.column.right > p span{
	letter-spacing:-4px;
}

ooter div.navi div.column.right div.sns p{
	color: #fff;
} 
footer div.navi div.column.right div.sns ul{
	overflow:hidden;
	margin-top:20px;
}

footer div.navi div.column.right div.sns ul li{
	float:left;
	margin-right:6px;
	width: 37px;
	height: 37px;
}
footer div.navi div.column.right div.sns ul li img{
	width: 37px;
	height: 37px;
}

footer div.copyright{
	width:100%;
	height:100px;
	background-color:#FFF;
}

footer div.copyright div{
	width:980px;
	height:100%;
	margin:0 auto;
}

footer div.copyright div img{
	float: left;
  margin-top: 10px;
  max-width: 285px;
}

footer div.copyright div p{
	float:right;
	height:100%;
	line-height:100px;
	font-size:11px;
}

/* 画面幅980px以下
=======================================*/
@media screen and (max-width:980px){
	
	footer div.navi{
		width:94%;
		position:relative;
	}
	
	footer div.navi div.column.left{
		width:55%;
		padding-right:5%;
	}
	
	footer div.navi div.column div.sitemap{
		background:none;
	}
	
	footer div.navi div.column div.sitemap > ul{
		width:45%;
		margin-right:10%;
		float:left;
	}
	
	footer div.navi div.column div.sitemap > ul:last-child{
		margin-right:0;
	}
	
	footer div.navi div.column div.sitemap > ul li{
		height:40px;
		line-height:40px;
		padding:0 13px;
		border-bottom:2px solid #FFF;
		box-sizing:border-box;
		font-size:13px;
	}
	
	footer div.navi div.column div.image{
		overflow:hidden;
		margin-top:30px;
	}
	
	footer div.navi div.column div.image > img{
		float:left;
	}
	
	footer div.navi div.column div.image div.sns{
		float:right;
	}
	
	footer div.navi div.column div.image div.sns > p{
		font-size:13px;
	}

	footer div.navi div.column div.image div.sns ul{
		overflow:hidden;
		width: 100%;
		margin: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	footer div.navi div.column div.image div.sns ul li{
		float:left;
		margin-right:6px;
	}
	footer div.navi div.column div.image div.sns ul li.item_set a img{
		width: 37px;
		height: 37px;
	}
	footer div.navi div.column.right{
		padding-left:5%;
		padding-bottom:16px;
	}
	
	footer div.navi div.column.right > p{
		font-size:13px;
	}
	
	footer div.navi div.column.right div.sns{
		display:none;
	}
	
	footer div.copyright div{
		width:94%;
	}
}

/* 画面幅768px以下
=======================================*/
@media screen and (max-width:768px){
	footer div.copyright{
		height:30px;
	}
	
	footer div.copyright div p{
		float:none;
		width:100%;
		line-height:30px;
		text-align:center;
	}
	
footer div.navi div.column.right{
	float:right;
	padding:15px 0 0 30px;	
	width:320px;
	box-sizing:border-box;
	border-left:1px solid #FFF;
}
}

/* 画面幅680px以下
=======================================*/
@media screen and (max-width:680px){
	footer div.navi{
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:10px 0 20px 0;
	flex-direction: column;
	}
	footer div.navi div.column div.sitemap > ul{
		display:none !important;
	}
	
	footer div.navi div.column.left{
		float:none;
		width:100%;
		padding-right:0;
		order: 2;
	}
	
	footer div.navi div.column div.image{
		width:126px;
		text-align:center;
		margin:0 auto;
	}
	
	footer div.navi div.column div.image > img{
		float:none;
		margin-top:30px;
	}
	
	footer div.navi div.column div.image div.sns{
		float:none;
	}
	
	footer div.navi div.column div.image div.sns ul li{
		float:right;
		margin-right:0;
	}
	
	footer div.navi div.column div.image div.sns ul li.jihee{
		width: 126px;
	}
	
	
	
	footer div.navi div.column.right{
		float:none;
		max-width: 276px;
		padding-left:0;
		padding-bottom:0;
		border-left:none;
		order: 1;
		margin: 0 auto 10px;
		/*margin-top:10px;*/
	}
	
	footer div.navi div.column.right > p{
		margin-top:10px;
		text-align: center;
	}
}
/* 画面幅480px以下
=======================================*/
@media screen and (max-width:480px){
footer div.copyright{
	padding: 0 0 60px;
}
}
/* 画面幅430px以下
=======================================*/
@media screen and (max-width:430px){
	footer div.navi div.column.right > img{
		width:95%;
	}
	
	footer div.navi div.column.right > p{
		line-height:150%;
	}
	
	/*footer div.navi div.column div.image{
		width:45%;
	}*/
	
	footer div.navi div.column div.image div.sns{
		float:none;
	}
	
	/*footer div.navi div.column div.image div.sns ul li{
		margin-right:4.5%;
		width:22%;
	}
	
	footer div.navi div.column div.image div.sns ul li:last-child{
		margin-right:0;
		width:47%;
	}*/
	
	footer div.navi div.column div.image div.sns ul li img{
		width:100%;
	}
	footer div.navi div.column div.image div.sns ul li.item_set a img{
		width: 37px;
		height: 37px;
		margin: 0; 
	}
}

/* 画面幅420px以下
=======================================*/
@media screen and (max-width:420px){
	/*footer div.navi div.column div.image{
		width:126px;
	}
	
	footer div.navi div.column div.image div.sns{
		width:90px;
		margin:0 auto;
	}
	
	footer div.navi div.column div.image div.sns ul li{
		width:46%;
		margin-right:0;
	}
	
	footer div.navi div.column div.image div.sns ul li:first-child{
		margin-right:8%;
	}
	
	footer div.navi div.column div.image div.sns ul li:nth-child(3){
		width:100%;
	}
	
	footer div.navi div.column div.image div.sns ul li img{
		width:100%;
	}*/
}
footer .footer_fix {
  position: fixed;
  bottom: 0;
  z-index: 10;
  width: 100%;
}
footer .footer_fix ul {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
footer .footer_fix ul li {
	width: calc(100% / 3);
}
footer .footer_fix ul li a{
}
footer .footer_fix ul li a img{
	width: 100%;
	vertical-align:top;
}
/* scroll top
----------------------------------------------------*/
#pagetop{
    cursor:pointer;
	opacity:1.0;
	filter:alpha(opacity=10);
	-ms-filter:"alpha(opacity=10)";
	position:fixed;
    bottom:40px;
    right:50px;
	z-index:99;
}
svg#pagetop > g > circle.cls-1{
  fill: #bc272d;
}
svg#pagetop > g > circle.cls-2{
  fill: #fff;
}
svg#pagetop > g > polygon.cls-2{
  fill: #fff;
}
svg#pagetop > g > g > path.cls-2{
  fill: #fff;
}

/* 画面幅768px以下
=======================================*/
@media screen and (max-width:768px){
	#pagetop{
		opacity:0.7;
		filter:alpha(opacity=7);
		-ms-filter:"alpha(opacity=7)";
		bottom:60px;
		right:10px;
	}
}



/* グローバルナビ（スマホ向け）
---------------------------------------*/
div#spnavi{
	/* position:fixed; */
	position:absolute;
	/* top:70px; */
	left:0;
	width:100%;
	z-index:101;
}

/* div#spnavi a#switch{
	display:none;
} */

div#spnavi nav{
	width:100%;
	display:none;
}
.spnavi_once{
	background-color:#B49B46;
	height: 80px;
	overflow:hidden;
}
.spnavi_once a{
	display:block;
	width:100%;
	height:100%;
	background-repeat:no-repeat;
	background-position:center center;
	white-space:nowrap;
	text-align:center;
	padding:10px;
	box-sizing:border-box;
	background-image:url(../img/common/txt_request.png);
	text-indent: 100%;
}

div#spnavi nav div.spnavi{
	width:100%;
	background-color:#FFF;
}
	
div#spnavi nav div.spnavi ul{
	width:100%;
	overflow:hidden;
}
	
div#spnavi nav div.spnavi ul li{
	float:left;
	width:50%;
	height:100px;
}

div#spnavi nav div.spnavi ul li:first-child{
	background-color:#bae2f2;
}
	
div#spnavi nav div.spnavi ul li:last-child{
	background-color:#F0A53B;
}
	
div#spnavi nav div.spnavi ul li a{
	display:block;
	width:100%;
	height:100%;
	background-repeat:no-repeat;
	background-position:center center;
	text-indent:100%;
	white-space:nowrap;
}
	
div#spnavi nav div.spnavi ul li:first-child a{
	background-image:url(../img/common/txt_request.png);
}
	
div#spnavi nav div.spnavi ul li:last-child a{
	background-image:url(../img/common/txt_entry.png);
}
	
div#spnavi nav div.spnavi > a{
	width:100%;
	height:80px;
	display:block;
	text-align:center;
	padding:10px;
	box-sizing:border-box;
	background-image:url(../img/common/bg_slant.png);
	background-repeat:repeat;
	position:relative;
}

div#spnavi nav div.spnavi > a span{
	width:100%;
	height:100%;
	line-height:60px;
	display:block;
	background-color:#FFF;
	font-family:"Hiragino Maru Gothic W6 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight:600;
	font-size:18px;
	/*font-size:16px;*/
	letter-spacing:1px;
	position:relative;
}

div#spnavi nav div.spnavi > a span i{
	font-style:normal;
	display:inline-block;
	width:350px;
	position:relative;
}

div#spnavi nav div.spnavi > a span i img.before,
div#spnavi nav div.spnavi > a span i img.after{
	position:absolute;
	top:25px;
	z-index:10;
}

div#spnavi nav div.spnavi > a span i img.before{
	left:0px;
}

div#spnavi nav div.spnavi > a span i img.after{
	right:0px;
}
	
div#spnavi nav ul.dropdown{
	position:relative;
	width:100%;
	z-index:100;
	background-color: #ffffff;
}
	
div#spnavi nav ul.dropdown li.parent{
	height:auto;
	position:relative;
}

div#spnavi nav ul.dropdown li.parent span{
	display:block;
	padding:13px 0 13px 10px;
	background-color:#F4F4F4;
	border-top:1px solid #B49B46;
	cursor:pointer;
	position:relative;
	font-size:14px;
    font-weight:600;
}

div#spnavi nav ul.dropdown li.parent:first-child span{
	border-top:2px solid #B49B46;
}

div#spnavi nav ul.dropdown li.parent span::after{
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0px 0px 0px 15px;
	border-right: 2px solid #B49B46;
	border-bottom: 2px solid #B49B46;
	transform: rotate(45deg);
	position: absolute;
	top: 20px;
	right: 20px;
}

div#spnavi nav ul.dropdown li.parent.selected span::after{
	background-image:url(../img/common/ico_arrow_top.png);
}


div#spnavi nav ul.dropdown li.parent > a{
	display:block;
	padding:13px 0 13px 10px;
	background-color:#F4F4F4;
	border-top:1px solid #b59c46;
	cursor:pointer;
	position:relative;
	font-size:14px;
    font-weight:600;
}

div#spnavi nav ul.dropdown li.parent ul{
	display:none;
}
	
div#spnavi nav ul.dropdown li.parent ul li{
	height:auto;
	padding:10px 0 10px 20px;
	background-color:#FFF;
	background-image:url(../img/common/bg_dotted.png);
	background-repeat:repeat-x;
	background-position:left top;
	font-size:13px;
	position:relative;
}

div#spnavi nav ul.dropdown li.parent ul li:last-child{
	border-bottom:1px solid #b59c46;
}

div#spnavi nav ul.dropdown li.parent ul li a{
	display:block;
	width:100%;
	height:100%;
}

div#spnavi nav ul.dropdown li.parent ul li a::after{
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0px 0px 0px 15px;
	border-right: 1px solid #B49B46;
	border-bottom: 1px solid #B49B46;
	transform: rotate(-45deg);
	position: absolute;
	top: 20px;
	right: 30px;
}

div#spnavi nav ul.dropdown li.search{
	width:100%;
	background-color:#FFF;
	margin: 0 0 20px;
	padding: 10px;
	box-sizing: border-box;
}

div#spnavi nav ul.dropdown li.close{
	width:100%;
	height:44px;
	line-height:44px;
	text-align:center;
	background-color:#B49B46;
	color:#FFF;
	font-weight:600;
	font-size:15px;
	letter-spacing:1px;
	margin-bottom: 80px;
}
ul.nav_sns_set{
	width: 100%;
	margin: 0 0 0 0;
	padding: 10px 0 0 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	flex-wrap: wrap;
}
ul.nav_sns_set > li{
	margin: 0 5px;
	padding: 0;
}
ul.nav_sns_set > li > a > img{
	width: 37px;
	height: 37px;
}
/* 画面幅768px以下
=======================================*/
@media screen and (max-width:768px){

	div#spnavi{
		overflow: auto;
		/* height: 100%; */
		/* height: calc(100% - 70px); */
	}

	div#spnavi a#switch{
		display:block;
		width:50px;
		height:50px;
		/*position:fixed;*/
		position:absolute;
		/*top:8px;*/
		/*top:-64px;*/
		top:-59px;
		right:0;
		z-index:120;
		transform:matrix(1, 0, 0, 1, 0, 0);
	}
	
	/* div#spnavi a#switch div{
		position:absolute;
		top:50%;
		left:50%;
		width:20px;
		height:20px;
		margin:-10px;
	}
	
	div#spnavi a#switch div span.border{
		display:block;
		width:100%;
		height:3px;
		background-color:#bae2f2;
		position:absolute;
		left:0;
		opacity:1;
		-webkit-transition:0.2s ease 0.1s;
		transition:0.2s ease 0.1s;
	}
	
	div#spnavi a#switch.active div span.border{
		background-color:#FFF;
	}
	
	div#spnavi a#switch.active div span.border{
		-webkit-transform:translateX(0);
		-ms-transform:translateX(0);
		transform:translateX(0);
		-webkit-transition:top 0.1s ease-in-out,margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.3s,-webkit-transform 0.25s ease 0s;
		transition:top 0.1s ease-in-out,margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.3s,transform 0.25s ease 0s;
	}
	
	div#spnavi a#switch div span.border.top{
		top:0px;
		margin-top:3px;
		-webkit-transform:translateX(0);
		-ms-transform:translateX(0);
		transform:translateX(0);
		-webkit-transition:top 0.1s ease-in-out,margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.3s,-webkit-transform 0.25s ease 0s;
		transition:top 0.1s ease-in-out,margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.3s,transform 0.25s ease 0s;
	}
	
	div#spnavi a#switch.active div span.border.top{
		margin-top:10px;
		-webkit-transform:rotateZ(45deg);
		transform:rotateZ(45deg);
		-webkit-transition:margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.1s,-webkit-transform 0.25s ease 0.36s;
		transition:margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.1s,transform 0.25s ease 0.36s;
	}
	
	div#spnavi a#switch div span.border.middle{
		top:50%;
	}
	
	div#spnavi a#switch.active div span.border.middle{
		opacity:0;
	}
	
	div#spnavi a#switch div span.border.bottom{
		top:50%;
		margin-top:7px;
		-webkit-transform:translateX(0);
		-ms-transform:translateX(0);
		transform:translateX(0);
		-webkit-transition:top 0.1s ease-in-out,margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.3s,-webkit-transform 0.25s ease 0s;
		transition:top 0.1s ease-in-out,margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.3s,transform 0.25s ease 0s;
	}
	
	div#spnavi a#switch.active div span.border.bottom{
		margin-top:0;
		-webkit-transform:rotateZ(-45deg);
		transform:rotateZ(-45deg);
		-webkit-transition:margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.1s,-webkit-transform 0.25s ease 0.36s;
		transition:margin 0.2s cubic-bezier(0.36,0,0.59,0.99) 0.1s,transform 0.25s ease 0.36s;
	} */


}

/* 画面幅600px以下
=======================================*/
@media screen and (max-width:600px){
	div#spnavi nav div.spnavi ul li{
		height:80px;
	}
	
	div#spnavi nav div.spnavi ul li:first-child a{
		background-size:70%;
	}
	
	div#spnavi nav div.spnavi ul li:last-child a{
		background-size:80%;
	}
	br.sp{
	display: none;
	}
}

/* 画面幅460px以下
=======================================*/
@media screen and (max-width:460px){
	div#spnavi nav div.spnavi ul li{
		height:70px;
	}

	div#spnavi nav div.spnavi > a span{
		font-size:16px;
	}
}

@media screen and (max-width:400px){
	div#spnavi nav div.spnavi > a span i{
		width:90%;
	}
}

@media screen and (max-width:368px){
	div#spnavi nav div.spnavi > a span i{
		width:95%;
	}
}

@media screen and (max-width:350px){
	div#spnavi a#switch{
		top:-63px;
	}

	div#spnavi nav div.spnavi > a span{
		font-size:15px;
	}
}

/* styles.css */
.sticky-button {
    position: fixed;
    right: 0;
    top: 260px; /* 初期位置をトップからの距離に変更 */
    padding: 10px 10px;
    background-color: #22aa73;
    color: white;
    text-decoration: none; /* リンクの下線を削除 */
    border: none;
    border-radius: 5px 0 0 5px; /* 左上と左下だけを5pxの角丸に設定 */
    cursor: pointer;
    z-index: 1000; /* 高いz-indexで他の要素より前面に表示 */
    opacity: 0; /* 初期状態は透明 */
    transform: translateY(0); /* 初期位置を下にずらす */
    transition: opacity 0.5s ease, transform 0.5s ease; /* トランジションを設定 */
    writing-mode: vertical-rl; /* 縦書きに設定 */
    text-align: center; /* テキストを中央に配置 */
    line-height: 1.5; /* 行間を調整 */
    height: auto; /* 高さを自動で調整 */
}

.sticky-button.show {
    opacity: 1; /* 表示時は不透明 */
    transform: translateY(0); /* 元の位置に戻す */
}
.sticky-button-special {
    position: fixed;
    right: 0;
    top: 260px;
    padding: 10px 10px; /* パディングを適宜調整 */
    background-color: #7dbccf;
    color: #f7f886;
    text-decoration: none;
    border: none;
    border-radius: 5px 0 0 5px;
    cursor: pointer;
    z-index: 1000;
    opacity: 0;
    transform: translateY(0);
    transition: opacity 0.5s ease, transform 0.5s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    writing-mode: horizontal-tb;
}

.sticky-button-special .text {
    writing-mode: vertical-rl;
    text-align: center;
    line-height: 1.5;
}

.sticky-button-special .btn-char {
    width: 35px;
    height: 35px;
    margin-top: 5px;
    transform: rotate(0deg);
}
.sticky-button-special .btn-char {
    width: 35px;
    height: auto;
    margin-top: 10px;
    transform: rotate(0deg);
}

.sticky-button-special.show {
    opacity: 1;
    transform: translateY(0);
}

@media screen and (max-width:480px){
.sticky-button {
	display: none;
}
.sticky-button-special {
    right: 0;
    top: 100px;
    opacity: 0.8;
}
}
/*------------------------*/
body {
    width: 100%;
}
body[style*="position: fixed"] {
    inset: 0;
}