@charset "utf-8";

/*---------- set ----------*/
* {
border:0;
margin:0;
outline:0;
padding:0;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
-ms-box-sizing:border-box;
-o-box-sizing:border-box;
box-sizing:border-box;
font:inherit;
font-family:inherit;
font-size:100%;
font-style:inherit;
font-weight:inherit;
text-decoration:none;
vertical-align:baseline;
}

html {width:100%; height:100%;}

body {
font-size:10px;
font-size:1.0rem;
line-height:1;
position:relative;
-webkit-text-size-adjust:100%;
-moz-text-size-adjust:100%;
-ms-text-size-adjust:100%;
-o-text-size-adjust:100%;
text-size-adjust:100%;
-webkit-font-smoothing:antialiased;
font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
width:100%;
height:100%;
}

article, aside, dialog, figure, footer, header, main, menu, nav, section {display:block;}
audio, canvas, video {display:inline-block;}

br,
hr {display:block;}

ol,
ul {list-style:none;}

blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:''; content:none;}

input,
select {vertical-align:middle;}

table {border-collapse:collapse; border-spacing:0; empty-cells:show;}


/*---------- common ----------*/

html,body{
	margin:0;
	padding:0;
	background:transparent;
}

@font-face {
  font-family: 'YuGothic M';
  src: local(Yu Gothic Medium);
}

body {
	font-size: 18px;
	color: #0F0F0F;
	line-height: 2.0;
	font-family: '游ゴシック体 Medium', 'Yu Gothic Medium', 'YuGothic M', '游ゴシック体', YuGothic, Hiragino Kaku Gothic ProN, 'ヒラギノ角ゴ ProN W3', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.clearfix:after {  
    visibility: hidden;  
    display: block;  
    font-size: 0;  
    content: " ";  
    clear: both;  
    height: 0;  
}

* html .clearfix             { zoom: 1; } /* IE6 */  
*:first-child+html .clearfix { zoom: 1; } /* IE7 */  

.clear {
	clear: both;
	margin: 0;
	padding: 0;
	width: 0;
	height: 0;
    visibility: hidden;  
    display: block;  
    font-size: 0;  
    content: "";  
	line-height: 0em;
}

p { width: 100%; height: 100%; margin-bottom: 30px}

a { color: #04509A; text-decoration: none; }
a:hover	{ color: #81A7CC; text-decoration: none; }

.font_min {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.mr10 { margin-left: 10px !important; }
.mr20 { margin-left: 20px !important; }
.mr30 { margin-left: 30px !important; }
.mr40 { margin-left: 40px !important; }
.mr50 { margin-left: 50px !important; }

.ml10 { margin-right: 10px !important; }
.ml20 { margin-right: 20px !important; }
.ml30 { margin-right: 30px !important; }
.ml40 { margin-right: 40px !important; }
.ml50 { margin-right: 50px !important; }


.pt0 { padding-top: 0px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb20 { padding-bottom: 20px !important; }

.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb100 { margin-bottom: 100px !important; }
.mb120 { margin-bottom: 120px !important; }
.mb150 { margin-bottom: 150px !important; }
.mb180 { margin-bottom: 180px !important; }
.mb200 { margin-bottom: 200px !important; }
.mb250 { margin-bottom: 250px !important; }
.mb300 { margin-bottom: 300px !important; }
.mb350 { margin-bottom: 350px !important; }

.sp_mb30 { margin-bottom: 0px !important; }

.mb30_10 { margin-bottom: 30px !important; }

.floatL { float: left; }
.floatR { float: right; }

.txtL { text-align: left !important; }
.txtC { text-align: center !important; }
.txtR { text-align: right !important; }

.lh120 { line-height: 1.2em !important; }
.lh140 { line-height: 1.4em !important; }
.lh160 { line-height: 1.6em !important; }
.lh180 { line-height: 1.8em !important; }

.txt_bold { font-weight: bold; }
.txt_big { font-size: 22px; }
.txt_t_small { font-size: 75%; }
.txt_small { font-size: 10px; }

.boxC50 { width: 50%; margin: 0 auto 50px; }
.boxC70 { width: 70%; margin: 0 auto 50px; }
.boxL43 { float: left; width: 43%; }
.boxR43 { float: right; width: 43%; }
.boxL48 { float: left; width: 48%; }
.boxR48 { float: right; width: 48%; }
.boxL48_2 { float: left; width: 48%; }
.boxR48_2 { float: right; width: 48%; }
.FBboxL48 { float: left; width: 48%; }
.FBboxR48 { float: right; width: 48%; }
.FBboxL48 .pc_fb,
.FBboxR48 .pc_fb { width:100%;display: block;}
.FBboxL48 .pc_fb iframe,
.FBboxR48 .pc_fb iframe { width:100% !important;}
.FBboxL48 .sp_fb,
.FBboxR48 .sp_fb { display: none;}
.boxL50 { float: left; width: 50%; }
.boxR50 { float: right; width: 50%; }

.pc_img_w48 {
	display: block;
}
.sp_img_w48 {
	display: none;
}

br.w1080 { display: none; }
br.w988 { display: none; }
br.w920 { display: none; }
br.pc_w860 { display: none; }
br.w768 { display: none; }
br.w600 { display: none; }
br.pc_br { display: block; }
br.sp_br { display: none; }
span.sp_no {
	display: inline;
}


.photoL {
	width: 48%;
	height: auto;
	float: left;
	margin: 8px 35px 30px 0;
}

.photoC {
	width: 100%;
	height: auto;
	margin: 0 0 30px;
	text-align: center;
}

.photoC_w80 {
	width: 80%;
	height: auto;
	margin: 0 auto 30px;
	text-align: center;
}

.photoC_w90 {
	width: 90%;
	height: auto;
	margin: 0 auto 30px;
	text-align: center;
}

.photoC_w60 {
	width: 60%;
	height: auto;
	margin: 0 auto 30px;
	text-align: center;
}

.photoC_w50 {
	width: 50%;
	height: auto;
	margin: 0 auto 30px;
	text-align: center;
}

.photoR {
	width: 48%;
	height: auto;
	float: right;
	margin: 8px 0 30px 35px;
}

.movieC {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.movieC iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.gmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.gmap iframe,
.gmap object,
.gmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.app_store { width:135px;height: 40px;margin: 0 auto; padding: 10px; float:right; }
.google_play { width:155px;margin: 0 auto;float:left; }

.caption {
	margin: 0 auto;
	text-align: center;
	padding-top: 10px;
	font-size: 14px;
	line-height: 1.3em;
	width: 96%;
}

.caption_big {
	margin: 0 auto;
	text-align: center;
	padding-top: 10px;
	font-size: 20px;
	line-height: 1.3em;
	width: 96%;
}

.caption_big02 {
	margin: 0 auto;
	text-align: center;
	padding-top: 10px;
	font-size: 24px;
	line-height: 1.3em;
	width: 96%;
}

.caution {
	font-size: 14px;
	line-height: 1.3em;
	position: relative;
}

.caution:before {
	content:'※';
}

.out {
}

.out:after {
    content: url(../images/common/icon_blank.png);
    margin: 5px;
    position: relative;
    top: 0;
}

.out02 {
}

.out02:after {
    content: url(../images/common/icon_blank.png);
    margin: 5px 5px 5px -5px;
    position: relative;
    top: 0;
}

/*必要クラス*/
.credit {
	margin: 0;
	text-align: right;
	font-size: 10px;
}
.entry-title,
.update,
vcard author {
}
/*必要クラス*/


.ph_credit {
	margin: 0;
	text-align: center;
	font-size: 10px;
}

.ph_credit02 {
	position: absolute;
	bottom: 20px;
	right: 20px;
}

a:hover img.op65 {
	opacity: 0.65;
	filter: alpha(opacity=65);
	-moz-opacity: 0.65;
	-ms-filter: "alpha(opacity=65)";
}

#loader {
    width: 100%;
	max-width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    _position: absolute; /* IE6対策 */
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
    z-index: 1000;
	display: block;
	background: #FFFFFF;
	background: -webkit-radial-gradient(rgba(0,0,0,0) 50%,rgba(0,0,0,0.2));
	}

#loader #c_txt {
	padding-top: 80px;
	margin-bottom: 20px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: bold;
	color: #314DA4;
	font-size: 24px;
	text-align: center;
}

#loader #l_txt {
	margin-bottom: 20px;
	font-size: 18px;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	text-align: center;
}

#loader #r_txt {
	margin-bottom: 80px;
	font-size: 14px;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	text-align: center;
}

#loader #c_txt br,
#loader #l_txt br {
	display: none;
}

#loader #loader_logo {
	width: 157px;
	height: 35px;
	margin: 0 auto;
}

#loader #preloader {
	width: 300px;
	padding-left:15px;
	height: 30px;
	margin: 0 auto 80px;
	-webkit-perspective: 200px;	
}

#loader #preloader > div {
	position: relative;
	width: 25px;
	height: 25px;
	background: #CCC;
	float: left;
	text-align: center;
	line-height: 25px;
	font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 18px;
	color: #FFF;
}
	
#loader #preloader > div:nth-child(1) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 0ms infinite alternate;
}

#loader #preloader > div:nth-child(2) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 75ms infinite alternate;
}

#loader #preloader > div:nth-child(3) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 150ms infinite alternate;
}
	
#loader #preloader > div:nth-child(4) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 225ms infinite alternate;
}
	
#loader #preloader > div:nth-child(5) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 300ms infinite alternate;
}
	
#loader #preloader > div:nth-child(6) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 375ms infinite alternate;
}
	
#loader #preloader > div:nth-child(7) {
	background: #3399FF;
	margin-right: 15px;
	-webkit-animation: movement 600ms ease 450ms infinite alternate;
}
	
#loader #preloader > div:nth-child(8) {
	background: #3399FF;
	-webkit-animation: movement 600ms ease 525ms infinite alternate;
}

@-webkit-keyframes movement {
	from {
		-webkit-transform: scale(1.0) translateY(0px) rotateX(0deg);
		-moz-transform: scale(1.0) translateY(0px) rotateX(0deg);
		-ms-transform: scale(1.0) translateY(0px) rotateX(0deg);
		-o-transform: scale(1.0) translateY(0px) rotateX(0deg);
		transform: scale(1.0) translateY(0px) rotateX(0deg);
		box-shadow: 0 0 0 rgba(0,0,0,0);
	}
	to {
		-webkit-transform: scale(1.5) translateY(-25px) rotateX(45deg);
		-moz-transform: scale(1.5) translateY(-25px) rotateX(45deg);
		-ms-transform: scale(1.5) translateY(-25px) rotateX(45deg);
		-o-transform: scale(1.5) translateY(-25px) rotateX(45deg);
		transform: scale(1.5) translateY(-25px) rotateX(45deg);
		box-shadow: 0 25px 40px rgba(0,0,0,0.4);
		background: #314DA4;
	}
}

	
#fade {
    width: 100%;
    height: 100%;
    display: none;
    background: #FFFFFF;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 900;
	display: block;
}

#wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 3;
	overflow: hidden;
	display: none;
}

#warpper img {
	max-width: 100%;
	height: auto;
	}


/*---------- header ----------*/
#header,
body.home #header.fixed.fixed2 {
	position: fixed;
	z-index: 899;
	top: 0;
	left: 0;
	width: 100%;
	max-width: 100%;
	height: 55px;
	clear: both;
	background: url(../images/common/header_bk.gif) repeat-y center top;
	-moz-background-size:100% auto;
	background-size:100% auto;
	display: table;
	line-height: 1.4em;
	box-shadow: 0px 6px 3px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 4px 10px rgba(0,0,0,0.4);
	-moz-box-shadow: 0px 4px 10px rgba(0,0,0,0.4);
	-o-box-shadow: 0px 4px 10px rgba(0,0,0,0.4);
	opacity: 1.0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	-ms-filter: "alpha(opacity=100)";
}

#header .header_in,
body.home #header.fixed.fixed2 .header_in {
	margin: 0 auto;
	width: 100%;
	max-width: 1920px;
	height: 55px;
	position: relative;
}


#header .header_in .headL,
body.home #header.fixed.fixed2 .header_in .headL {
	margin: 0;
	padding: 0;
	width: 40%;
	height: 55px;
	/*min-width: 308px;*/
	display: block;
	float: left;
	background: #314DA4;
}

#header .txt,
body.home #header.fixed.fixed2 .txt {
	width: 50%;
	height: 55px;
	font-size: 18px;
	line-height: 1.4em;
	display: block;
	margin: 0;
	padding: 13px 10px 0;
	color: #FFFFFF;
	text-align: right;
	float: left;
	border: none;
}

#header .txt br,
body.home #header.fixed.fixed2 .txt br {
	display: none;
}

#header .logo,
body.home #header.fixed.fixed2 .logo {
	width: 50%;
	height: 55px;
	position: relative;
	display: block;
	text-align: left;
	padding: 0 10px;
	float: left;
}

#header .logo a,
body.home #header.fixed.fixed2 .logo a {
	display: block;
	width: 100%;
	height: auto;
}

#header .logo .stxt,
body.home #header.fixed.fixed2 .logo .stxt {
	display: none;
}

#header .logo .img,
body.home #header.fixed.fixed2 .logo .img {
	padding: 2px 0 0 0;
	margin: 0 auto 0 0;
	width: 156px;
	height: 50px;
}

#header .logo .img img,
body.home #header.fixed .logo .img img,
body.home #header.fixed.fixed2 .logo .img img {
	width: 100%;
	height: auto;
}

#header .header_in .headR,
body.home #header.fixed.fixed2 .header_in .headR {
	margin: 0 auto 0 0;
	padding: 0;
	width: 60%;
	height: 55px;
	/*min-width: 460px;*/
	display: block;
	float: left;
}

#header ul.menu,
body.home #header.fixed.fixed2 ul.menu {
	font-size: 18px;
	/*font-size: 1.406vw;*/
	font-weight: bold;
	line-height: 25px;
	text-align: center;
	width: 72%;
	float:left;
}

#header ul.menu li,
body.home #header.fixed.fixed2 ul.menu li {
	display: inline-block;
}

#header ul.menu li a,
body.home #header.fixed.fixed2 ul.menu li a {
	display: block;
	padding: 15px 15px 12px;
}

#header ul.menu li a:hover,
body.home #header.fixed.fixed2 ul.menu li a:hover {
	border-bottom: solid 2px #314DA4;
}

#header #pc_btn,
body.home #header.fixed.fixed2 #pc_btn {
	font-size: 14px;
	line-height: 1.3em;
	width: 28%;
	position: relative;
	height: 54px;
	display: block;
	text-align: center;
	padding-top: 18px;
	float: left;
	top: 0;
}

#header #pc_btn br,
body.home #header.fixed.fixed2 #pc_btn br {
	display: none;
}

#header #pc_btn a,
body.home #header.fixed.fixed2 #pc_btn a {
	width: 100%;
	height: 54px;
	cursor: pointer;
}

#header #pc_btn a:after,
body.home #header.fixed.fixed2 #pc_btn a:after {
  display: block;
  content: "▼";
}

#header #pc_btn.close a:after,
body.home #header.fixed.fixed2 #pc_btn.close a:after {
  display: block;
  content: "▲";
}

#header #sp_btn,
body.home #header.fixed.fixed2 #sp_btn {
	display: none;
}

/* transition */
/*#header,
#header .txt,
#header .logo,
#header .logo a,
#header .logo .stxt,
#header .logo .img,
#header .logo .img img,
body.home #header.fixed,
body.home #header.fixed .txt,
body.home #header.fixed .logo,
body.home #header.fixed .logo a,
body.home #header.fixed .logo .stxt,
body.home #header.fixed .logo .img,
body.home #header.fixed .logo .img img,
body.home #header.fixed.fixed2,
body.home #header.fixed.fixed2 .txt,
body.home #header.fixed.fixed2 .logo,
body.home #header.fixed.fixed2 .logo a,
body.home #header.fixed.fixed2 .logo .stxt,
body.home #header.fixed.fixed2 .logo .img,
body.home #header.fixed.fixed2 .logo .img img,
#header #pc_btn,
body.home #header.fixed #pc_btn,
body.home #header.fixed.fixed2 #pc_btn,
#header #sp_btn,
body.home #header.fixed #sp_btn,
body.home #header.fixed.fixed2 #sp_btn {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}*/

/* Fixed */
.scroll_fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

body.home #header {
	height: 55px;
}

body.home #header.fixed {
	height: 100px;
}

body.home #header.fixed2 {
	height: 55px;
}


#ken_list {
	display: none;
	position: fixed;
	top: 55px;
	right: 0;
	width: 17%;
	height: 100%;
	background: #FFFFFF;
	background-color: rgba( 255, 255, 255, 0.9 );
	text-align: center;
	z-index: 898;
	border-left: solid 1px #314DA4;
	overflow-y: auto;
	-webkit-overflow-scrolling:touch;
}

#ken_list .ttl {
	display: none;
}

#ken_list ul {
}

#ken_list ul li {
	width: 100%;
	display: block;
	position: relative;
	border-bottom: dotted 1px #314DA4;
	color: #999999;
}

#ken_list ul li a {
	width: 100%;
	display: block;
	position: relative;
	padding: 8px 0 6px;
	color: #314DA4;
}

#ken_list ul li a:hover {
	background: #FFFFFF;
}


/*---------- contents ----------*/

#contents {
  width: 100%;
	position: relative;
  margin-top: 55px;
  padding-top: -55px;
	z-index: 3;
}

#cont {
	margin-bottom: 30px;
	width: 100%;
	color: #FFFFFF;
	position: relative;
}

.breadcrumbs {
	color: #FFFFFF;
	padding: 20px 0 0;
	width: 100%;
	max-width: 940px;
	font-size: 16px;
	margin: 0 auto;
}

.breadcrumbs.cbk {
	color: #333333;
}

.breadcrumbs li+li:before {content:' » ';}

.breadcrumbs ul {
}

.breadcrumbs ul li {
	display: inline;
}

.breadcrumbs ul li a {
	color: #FFFFFF;
	line-height: 1;
}

.breadcrumbs.cbk ul li a {
	color: #314DA4;
}

.breadcrumbs ul li a:hover {
	border-bottom: dotted 1px #FFFFFF;
}

.breadcrumbs.cbk ul li a:hover {
	border-bottom: dotted 1px #314DA4;
}

#cont .cont_in  {
	margin: 0 auto 35px;
	max-width: 940px;
	position: relative;
}

#cont .cont_in p {
	font-size: 18px;
}


#cont .cont_in ul.navi {
	width: 100%;
}

#cont .cont_in ul.navi li {
	width : 33%;
	width: -webkit-calc(33% - 14px);
	width: calc(33% - 14px);
	display: inline-block;
	vertical-align: top;
	margin: 0 6px 20px;
}

#cont .cont_in ul.navi li a {
	width: 100%;
	display: block;
	color: #FFFFFF;
}

#cont .cont_in ul.navi li a .photo {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
	overflow: hidden;
}

#cont .cont_in ul.navi li a .photo img {
	width: 100%;
	height: auto;
	display: block; 
    -webkit-transition: -webkit-transform 0.5s linear;
    -moz-transition: -moz-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    transition: transform 0.5s linear;
}

#cont .cont_in ul.navi li a:hover .photo img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}

#cont .cont_in ul.navi li a .ttl {
	width: 100%;
	font-size: 24px;
	text-align: center;
	margin-bottom: 5px;
	line-height: 1.2em;
}

#cont .cont_in ul.navi li a .txt {
	font-size: 14px;
	width: 96%;
	margin: 0 auto;
}

.sns_nav {
}

.sns_nav .ttl {
	text-align: center;
	margin-bottom: 5px;
}

.sns_nav ul {
	border-collapse: separate;
	border-spacing: 20px 0;
	display: table;
	table-layout:fixed;
	margin: 0 auto;
}

.sns_nav ul li {
	width: 40px;
	height: 40px;
	display: table-cell;
    -webkit-transition: -webkit-transform 0.2s linear;
    -moz-transition: -moz-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear; 
    -o-transition: -o-transform 0.2s linear;
    transition: transform 0.2s linear; 
}

.sns_nav ul li:hover {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
	-webkit-opacity: 1 !important;
	-moz-opacity: 1 !important;
	opacity: 1 !important;
	-ms-filter: "alpha(opacity=100)" !important;
	filter: alpha(opacity=100) !important;
}


/*---------- page-top ----------*/

#page-top {
    position: fixed;
    bottom: 14px;
    right: 28px;
	text-indent:-9999px;
	z-index: 100;
}

#page-top a {
    text-decoration: none;
    width: 88px;
	height: 76px;
    display: block;
	opacity: 0.65;
	filter: alpha(opacity=65);
	-moz-opacity: 0.65;
	-ms-filter: "alpha(opacity=65)";
	background: url(../images/common/btn_pagetop.png) top center no-repeat;
	background-size: 100%;
}

#page-top a:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-ms-filter: "alpha(opacity=100)";
}

#next_prev {
	display: none;
	z-index: 3;
	position: relative;
}


/*---------- footer ----------*/

#footer {
	font-size: 12px;
	position: relative;
	width: 100%;
	padding: 30px 0 12px;
	background-color: #FFFFFF;
	background-position: center bottom;
	background-repeat: repeat-x;
	-webkit-background-size: auto 12px;
	-moz-background-size: auto 12px;
	-o-background-size: auto 12px;
	background-size: auto 12px; 
	z-index: 50;
}

#footer a:hover {
	opacity: 0.65;
	filter: alpha(opacity=65);
	-moz-opacity: 0.65;
	-ms-filter: "alpha(opacity=65)";
}

#footer a.insta:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-ms-filter: "alpha(opacity=100)";
}

#footer .footer_insta {
	margin: 0 0 30px;
	width: 100%;
	text-align: center;
	min-width: 290px;
	font-size: 16px;
	line-height: 1.2em;
}

#footer .footer_insta a img {
	width: 40px;
	height: 40px;
	margin-right: 5px;
	vertical-align: middle;
    -webkit-transition: -webkit-transform 1s linear;
    -moz-transition: -moz-transform 1s linear;
    -ms-transition: -ms-transform 1s linear; 
    -o-transition: -o-transform 1s linear;
    transition: transform 1s linear; 
}

#footer .footer_insta a:hover img {
    -webkit-transform: rotateY(360deg);
    -moz-transform: rotateY(360deg);
    -ms-transform: rotateY(360deg);
    -o-transform: rotateY(360deg);
    transform: rotateY(360deg);
}

#footer .footer_nav {
	margin: 0 0 30px;
	width: 100%;
	border-bottom: solid 1px #EAEAEA;
	position: relative;
}

#footer .footer_nav .title {
	margin: 0 auto 10px;
	width: 100%;
	background: #333333;
	font-size: 20px;
	line-height: 1.2em;
	padding: 5px 0;
	color: #FFFFFF;
	text-align: center;
}

#footer .footer_nav .title a {
	color: #FFFFFF;
}

#footer .footer_nav .title a:hover {
	color: #FFFFFF;
	opacity: 1.0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	-ms-filter: "alpha(opacity=100)";
}

#footer .footer_nav .link_btn {
	position: absolute;
	top: 8px;
	right: 20px;
}

#footer .footer_nav .link_btn a {
	width: 100px;
	background: #FFFFFF;
	font-size: 12px;
	line-height: 1em;
	padding: 3px;
	display: block;
	text-align: center;
	color: #0f0f0f;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

#footer .footer_nav .link_btn a:after {
	content:' >';
}

#footer .footer_nav #loopslider {
	width: 100%;
	height: 210px;
	text-align: left;
	position: relative;
	overflow: hidden;
}

#footer .footer_nav #loopslider ul {
	float: left;
	display: inline;
	overflow: hidden;
	height: 210px;
}

#footer .footer_nav #loopslider ul li {
	margin: 0;
	width: 190px;
	height: 210px;
	float: left;
	overflow: hidden;
	text-align: center;
}

#footer .footer_nav #loopslider ul li a {
	color: #0F0F0F;
	display: block;
}

#footer .footer_nav #loopslider ul li .photo {
	width: 180px;
	height: 125px;
	margin-bottom: 5px;
}

#footer .footer_nav #loopslider ul li .photo img {
	width: 180px;
	height: 125px;
}

#footer .footer_nav #loopslider ul li .ttl {
	width: 180px;
	/*height: 60px;*/
	text-align: center;
	font-size: 14px;
	line-height: 1.2em;
}

#footer .footer_in01 {
	margin: 0 auto 30px;
	max-width: 940px;
	padding-bottom: 25px;
	border-bottom: solid 1px #797979;
	text-align: center;
}

#footer .footer_in01 .ttl {
	font-size: 30px;
	margin-bottom: 20px;
}

#footer .footer_in01 .ttl br {
	display: none;
}

#footer .footer_in01 ul.banner {
	width: 846px;
	margin: 0 auto;
}

#footer .footer_in01 ul.banner li {
	float: left;
	padding: 0;
	margin: 0 6px;
	height: 100px;
}

#footer .footer_in01 ul.banner li.li01 {
	width : 263px;
}

#footer .footer_in01 ul.banner li.li02 {
	width : 227px;
}

#footer .footer_in01 ul.banner li.li03 {
	width : 320px;
}

#footer .footer_in01 ul.banner li img {
	width: 100%;
	height: 100%;
}

#footer .footer_in02 {
	margin: 0 auto 40px;
	width: 680px;
	display: table;
}

#footer .footer_in02 .ttl {
	width: -webkit-calc(100% - 300px);
	width: calc(100% - 300px);
	font-size: 22px;
	display: table-cell;
	vertical-align: middle;
	text-align: left;
}

#footer .footer_in02 .banner {
	width: 300px;
	height: 185px;
	display: table-cell;
}

#footer .footer_in02 .banner a {
	width: 300px;
	height: 185px;
	display: block;
}

#footer .footer_in03 {
	margin: 0 0 20px;
	width: 100%;
}

#footer .footer_in03 ul.foot_nav {
	margin: 0 auto;
	padding-top: 12px;
	text-align: center;
}

#footer .footer_in03 ul.foot_nav li {
	width: auto;
	margin: 0 12px;
	display: inline-block;
}

#footer .footer_in03 ul.foot_nav li a { color: #0F0F0F; }
#footer .footer_in03 ul.foot_nav li a:hover	{ border-bottom: dotted 1px #2F5391; }

#footer .copyright {
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}

#footer .footer_in_logo {
	margin: 0 auto 30px;
	padding: 20px 20px 0;
	max-width: 900px;
	border: 1px solid #314DA4;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

#footer .footer_in_logo .ttl {
	color:  #314DA4;
	margin-bottom: 20px;
	font-size: 24px;
	line-height: 1.4em;
	font-weight: bold;
	text-align: center;
}

#footer .footer_in_logo .ttl br {
	display: none;
}

#footer .footer_in_logo .ttl span {
	display: inline;
}

#footer .footer_in_logo .logo {
	margin: 0 30px 20px 0;
	width: 157px;
	height: auto;
	float: left;
}

#footer .footer_in_logo .logo img {
	width: 100%;
	height: auto;
}

#footer .footer_in_logo .txt {
	margin: 0 0 20px 0;
	color:  #314DA4;
	font-size: 17px;
	line-height: 1.4em;
}


/*---------- fcebook iframe ----------*/
.fbcomments,
.fb_iframe_widget,
.fb_iframe_widget[style],
.fb_iframe_widget iframe[style],
.fbcomments iframe[style],
.fb_iframe_widget span {
width: 100% !important;
}

/*---------- youtube iframe ----------*/
.youtube {
  position: relative;
  width: 100%;
	height: 0;
  padding-bottom: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
