@charset "utf-8";
/* CSS Document */

/*  新しいテンプレート用css
グローバルナビのデザイン変更（トップページも共有にするため）
21/12/14　templateフォルダーのglobal_navi_src_03.htmlにリンク
*/


body {
	font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 15px;
	text-align: center;
	line-height:1.5;
}
img {
	border: none;
}
* {
	padding: 0;
	margin: 0;
}
/*#wrap {
	position:relative;
	width:auto;
	height:auto;
	margin:0 auto;
}*/



/*--------------------------------------------------------------
# general classes
--------------------------------------------------------------*/

/*------- float */

.clearfix::after {
    content: "";
    display: block;
    clear: both;
    height: 0;
}

/*------- margins & paddings */
.mb_1 {
  margin-bottom: 1em !important;
}

.mb_2 {
  margin-bottom: 2em !important;
}

.mb_3 {
  margin-bottom: 3em !important;
}

.mt_1 {
  margin-top: 1em !important;
}

.mt_2 {
  margin-top: 2em !important;
}

.mt_3 {
  margin-top: 3em !important;
}


/*------- layouts */

.contents_area {
	width: 1040px;
	margin: 0 auto;
}


/*------- conponents */

/* --- buttons */

.btn {
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    user-select: none;
    padding: 0.375em 0.75em;
    line-height: 1.5;
    border-radius: 7px;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
	color: white;
}


/*************************header***************************/
/*top site-header*/
#b-head {
	margin:0 auto;
	/*height:155px;*/
	padding: 26px 0 15px;
	background-image: url(../img/bg_head_sub.jpg), url(../img/header_down.jpg);
	background-repeat: repeat-x, repeat-x;
	background-position: top, bottom;
    position: relative;
}
/*top .site-header .contents-area */
.head {
	margin:0 auto;
	width:940px;
	/*border-top:10px solid #51b3e2;*/
	/*height:155px;*/
}
/*
.head2 {
	margin:0 auto;
	width: 1000px;
	height:auto;
	padding-top: 11px;
}
*/

/*.main_logo {
	text-align:left;
	width: 170px;
}*/
.main_logo.top {
	float:left;
	width: 420px;
}
/*.main_logo h1 {
	font-size:10px;
	font-weight:normal;
	padding-left:1px;
	color:#666;
	line-height: 1.3;
	margin-bottom: 5px;
	font-feature-settings: "palt";
	white-space: nowrap;
}
.main_logo img {
	max-width: 100%;
}*/
.h_sns {
	width:400px;
	height:auto;
	padding:0 0 5px 120px;
}
.enc_logo {
	margin:0px 0 10px 7px;
}
.main_logo a:hover img{
	opacity:0.8;
	filter: alpha(opacity=70);
}
.sns {
	float:left;
	margin:0px 0 5px 10px;
	width:425px;
	
}
.sns_btn {
	text-align:right;
	padding-left:0px;
}
.enc {
	text-align:left;
	padding:15px 0 0 0px;
}

/*--------------------------------------------------------------
# site_header 
下層もトップもヘッダーを統一するため、ルールをこちらにすべて統合
--------------------------------------------------------------*/

.site_header {
	border-top: 4px solid #51b3e2;
	padding-top: 10px;
	margin-bottom: 10px
}
.site_header a {
	transition: all .3s ease-in-out;
}
.header-upper {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
	margin-bottom: 7px;
}
.site_branding {
	text-align:left;
	width: 150px;
}
.site_branding img {
	max-width: 100%;
	display: block;
}
.site_tagline {
	font-size:10px;
	font-weight:normal;
	padding-left:1px;
	color:#666;
	line-height: 1.3;
	margin-bottom: 3px;
	font-feature-settings: "palt";
	white-space: nowrap;
}

/*--- 新：問い合わせナビ*/

.cta-nav {
	list-style: none;
	margin: 0;
	padding: 0;
}
.cta-nav li {
	display: inline-block;
	margin: 0 0.3em;
}
.cta-nav .phone {
	position: absolute;
	top: 0;
	right: 0;
    padding-right: 5px;
	margin-bottom: 0;
}
.cta-nav a {
	transition: opacity 150ms ease-in-out;
}
.cta-nav a:hover,
.cta-nav a:focus {
	opacity: .7;
}
.cta-nav .btn {
	color: #fff;
	border-radius: 7px;
	padding: .5em 1em;
	position: relative;
    line-height: 2.5;
    margin: 0;
    max-width: none;
    font-size: 12px;
	font-weight: bold;
	display: inline;
}
.cta-nav .tel {
	color: #008bcf;
    font-size: 25px;
    font-weight: bold;
    line-height: 1.1;
    padding-top: 10px;
    padding-bottom: 5px;
}
.cta-nav a::before {
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
	margin-right: 3px;
}
.cta-nav .tel::before {
    content: "\f098";
}
.cta-nav .login {
	background: #20AB8C;
}
.cta-nav .login::before {
	content: "\f2f6";
	margin-right: 5px;
}
.cta-nav .contact {
	background: #FF6766;
}
.cta-nav .contact::before {
	content: "\f0e0";
	margin-right: 5px;
}

/*---新グローバルナビ*/

.global_nav {
	
}
.global_nav * {
	box-sizing: border-box;
}

.nav_list {
	list-style:none;
	display: flex;
	justify-content: space-between;
}
.global_nav li {
	width: 16.1%;
}
.global_nav a:link,
.global_nav a:visited {
	display: block;
	text-decoration: none;
	color: #51b3e2;
	font-size: 14px;
	font-weight: bold;
	line-height: 26px;
	padding-top: 3px;
	width: 100%;
	border: 1px solid #51b3e2;
	border-radius: 4px;
	background: #edf7fc;
}
.global_nav a:hover,
.global_nav a:active {
	color: #fff;
	background: #51b3e2;
}

/*--------------------------- page top button ----------------------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    left: 20px;
	z-index: 150;
    
}
#page-top a {
	box-sizing: border-box;
    width: 75px;
    height: 75px;
    background: rgba(233,150,28,.6);
    border-radius: 50%;
    font-size: 12px;
    text-decoration: none;
    color: white;
    text-align: center;
    line-height: 1.2;
    padding-top: 5px;
	cursor: pointer;
	display: block;
}
#page-top a::before {
    font-family: "Font Awesome 5 Free";
    content: "\f062";
    font-weight: 900;
    display: block;
    font-size: 28px;
    margin-bottom: 0;
}
#page-top a:hover {
    text-decoration: none;
    background: #e9961c;
}




/*.head_down {
	background-image:url(../img/header_down.jpg);
	background-repeat:repeat-x;
	height:11px;
	margin-top:5px;
}*/




/*************************
***********main&global***************************/
#main_img {
	width:940px;
	height:auto;
	margin:0 auto;
}
.main-area {
	margin:20px auto 35px auto;
	/*width:750px;*/
    width: 1000px;
}
/*#main_area {
	width:1100px;
	height:auto;
	margin:0 auto;
}*/
.main {
	margin:15px auto;
}
.g_menu {
	width:750px;
	margin:1em auto;
	display: flex;
	justify-content: center;
}
.g_btn0 {
	/*float:left;
	padding-right:75px;*/
}
.g_btn00 {
	/*float:right;
	padding-left:30px;*/
}
.g_btn0,
.g_btn00 {
	margin: 0 2.5em;
}
	
	
/* Button with jQuery */ 
/* jquery使用をやめるため、cssで書き直し（fukui181009)*/
.g_btn {
	background:url(../img/btn001.jpg);
     height:67px;
	 width:111px;
	 display:block;
	 background-position:0 -67px;
}
.g_btn a {
	background:url(../img/btn001.jpg);
     height:67px;
	 width:111px;
	 display:block;
}
.g_btn2 {
	background:url(../img/btn002.jpg);
     height:67px;
	 width:73px;
	 display:block;
	 background-position:0 -67px;
}
.g_btn2 a {
	background:url(../img/btn002.jpg);
     height:67px;
	 width:73px;
	 display:block;
}
.g_btn3 {
	background:url(../img/btn003.jpg);
     height:67px;
	 width:97px;
	 display:block;
	 background-position:0 -67px;
}
.g_btn3 a {
	background:url(../img/btn003.jpg);
     height:67px;
	 width:97px;
	 display:block;
}
.g_btn4 {
	background:url(../img/btn004.jpg);
     height:67px;
	 width:84px;
	 display:block;
	 background-position:0 -67px;
}
.g_btn4 a {
	background:url(../img/btn004.jpg);
     height:67px;
	 width:84px;
	 display:block;
}
.g_btn5 {
	background:url(../img/btn005.jpg);
     height:67px;
	 width:83px;
	 display:block;
	 background-position:0 -67px;
}
.g_btn5 a {
	background:url(../img/btn005.jpg);
     height:67px;
	 width:83px;
	 display:block;
}

/* jqueryをやめてcssでhover effect*/
.g_btn a:hover,
.g_btn2 a:hover,
.g_btn3 a:hover,
.g_btn4 a:hover, 
.g_btn5 a:hover {
	background: none;
}


	
/***********SNS**************/
.m_sns {
	text-align:center;
	padding:5px 0;
}
.m_sns_btn1 {
	display:block;
	background:url(../img/icon_facebook.jpg);
	width:185px;
	height:50px;
	background-position:0 -49px;
	margin:3px auto 5px auto;
}
.m_sns_btn1 a {
	display:block;
	background:url(../img/icon_facebook.jpg);
	width:185px;
	height:50px;
}
.m_sns_btn2 {
	display:block;
	background:url(../img/icon_twitter.jpg);
	width:185px;
	height:50px;
	background-position:0 -49px;
	margin:0px auto 5px auto;
}
.m_sns_btn2 a {
	display:block;
	background:url(../img/icon_twitter.jpg);
	width:185px;
	height:50px;
}
.m_sns_btn3 {
	display:block;
	background:url(../img/icon_blog.jpg);
	width:185px;
	height:50px;
	background-position:0 -49px;
	margin:0px auto 5px auto;
}
.m_sns_btn3 a {
	display:block;
	background:url(../img/icon_blog.jpg);
	width:185px;
	height:50px;
}

/*jqueryをやめてcssでhover*/
.m_sns_btn1 a:hover,
.m_sns_btn2 a:hover,
.m_sns_btn3 a:hover {
	background: none;
}

/*************************
***********content***************************/
#content {
	position:relative;
	width:940px;
	margin:50px auto 10px;
}
.panel_box {
	float: left;
	width: 740px;
}
.sns_feed {
	float: right;
}

.panel {
	width:200px;
	float:left;
	margin-right:46px;
	margin-bottom:45px;
	background-color:#FFFFFF;
}
.panel2 {
	width:200px;
	float:right;
	/*margin-right:29px;*/
	background-color:#FFFFFF;
}
.panel_bar {
	border-top:#51b4e2 7px solid;
}
.panel_bar2 {
	border-top:#20ab8c 7px solid;
}
.panel_bar3 {
	border-top:#a76aaf 7px solid;
}
/*#content .panel2 .panel_bar4 {
	border-top:#6a940a 7px solid;
}*/
.panel_bar4 {
	border-top:#6a940a 7px solid;
}
.panel_bar5 {
	border-top:#e9cc30 7px solid;
}
/*.panel_bar6 {
	border-top:#e9961c 7px solid;
}*/
#content .panel2 .panel_bar6 {
	border-top:#e9961c 7px solid;
}
.panel_bar7 {
	border-top:#dc615a 7px solid;
}
#content .panel2 .panel_bar8, #content .panel .panel_bar8  {
	border-top:#dd5c94 7px solid;
}
.panel_bar9 {
	border-top:#a1b00d 7px solid;
}
.panel_bar10 {
	border-top:#5475bc 7px solid;
}
.panel_bar11 {
	border-top:#ff6766 7px solid;
}
#content .panel2 .panel_bar12, #content .panel .panel_bar12 {
	border-top:#fe0000 7px solid;
}
.panel_img {
	text-align:center;
	/*padding:7px 0 10px 0;*/
	margin: 7px auto 0;
}
.panel_photo {
	text-align:center;
	margin:15px auto;
}

/*************************
***********coin-slider***************************/
.coin-slider { overflow: hidden; zoom: 1; position: relative; }
.coin-slider a{ text-decoration: none; outline: none; border: none; }

.cs-buttons { font-size: 0px; padding: 10px; float: left; }
.cs-buttons a { margin-left: 5px; height: 10px; width: 10px; float: left; border: 1px solid #B8C4CF; color: #B8C4CF; text-indent: -1000px; }
.cs-active { background-color: #B8C4CF; color: #FFFFFF; }

.cs-title { width: 750px; padding: 10px; background-color: #000000; color: #FFFFFF; }

.cs-prev, 
.cs-next { background-color: #000000; color: #FFFFFF; padding: 0px 10px; }

/*************************
***********mosaic***************************/
.bar .mosaic-overlay {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-01.png);
}
.bar2 .mosaic-overlay2 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-02.png);
}
.bar3 .mosaic-overlay3 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-03.png);
}
.bar4 .mosaic-overlay4 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-04.png);
}
.bar5 .mosaic-overlay5 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-05.png);
}
.bar6 .mosaic-overlay6 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-06.png);
}
.bar7 .mosaic-overlay7 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-07.png);
}
.bar8 .mosaic-overlay8 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-08.png);
}
.bar9 .mosaic-overlay9 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-09.png);
}
.bar10 .mosaic-overlay10 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-10.png);
}
.bar11 .mosaic-overlay11 {
	bottom:-160px;
	height:160px;
	background:url(../img/bg-11.png);
}

.mosaic-block {
	/*float:left;*/
	position:relative;
	overflow:hidden;
	width:200px;
	height:170px;
	margin:0px 0 0px 0;
	background:#111 no-repeat center center;
	background-color:#FFFFFF;
	/*border:1px solid #fff;*/
	/*-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.5);*/
}

/*.mosaic-backdrop {
	display:none;
	position:absolute;
	top:0;
	height:190px;
	width:141px;
	background:#FFFFFF;
}*/
.mosaic-backdrop {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:190px;
	background:#FFFFFF;
}
.mosaic-backdrop2 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop3 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop4 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop5 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop6 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop7 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop8 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop9 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop10 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}
.mosaic-backdrop11 {
	display:none;
	position:absolute;
	top:10px;
	left:5px;
	height:190px;
	width:127px;
	background:#FFFFFF;
}	
.mosaic-overlay {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay2 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay3 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay4 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay5 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay6 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay7 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay8 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay9 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay10 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.mosaic-overlay11 {
	display:none;
	z-index:5;
	position:absolute;
	width:100%;
	height:100%;
	background:#FFFFFF;
}
.details .txt_area {
	width:195px;
	height:auto;
	margin:0 auto;
}
.details p {
	font-size:12px;
	font-weight:bold;
	color:#FFFFFF;
	line-height:1.5em;
	letter-spacing:1px;
	/*text-align:left;*/
	text-align:left;
	padding:6px 6px 0 6px;
}
/*h4{ 
	font:300 16px 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height:160%; letter-spacing:0.15em; color:#fff; text-shadow:1px 1px 0 rgb(0,0,0);
}
p{ 
	font:300 14px 'Lucida Grande', Tahoma, Verdana, sans-serif; color:#aaa; text-shadow:1px 1px 0 rgb(0,0,0);
}*/
a{ text-decoration:none; }
/*************************
***********smartsticky************************/
#sidebar {
	width:95px;
	height:388px;
	float:right;
	z-index:10;
	/*margin-top:300px;*/
}
#sidebar a:hover img{
	opacity:0.6;
	filter: alpha(opacity=70);
}
#nav-1 {
	right:0px;
	width:95px;
	z-index:10;
}
/*************************
***********footert***************************/
#footer {
	margin:0 auto;
	background:#828282;
	/*height:auto;
	width:auto;*/
    padding-bottom: 1px;
}
.foot {
	margin:0px auto;
	width:1000px;
	/*height:auto;*/
    padding: 3em 0 1em;
    display: flex;
    justify-content: space-between;
}
.f_sns {
	width:860px;
	height:auto;
	padding:15px 0 20px 42px;
}
.f_menu {
	/*padding:20px 10px 10px 0;
	width:130px;
	height:auto;
	float:left;*/
    width: 18%;
    font-size: 13px;
}
.f_menu1 {
	padding:20px 10px 10px 30px;
	width:150px;
	height:auto;
	float:left;
}
.f_menu2 {
	padding:20px 25px 10px 0;
	width:190px;
	height:auto;
	float:right;
}
.f_menu ul, .f_menu1 ul, .f_menu2 ul {
	list-style:none;
	text-align:left;
	color:#FFFFFF;
}
.f_menu li, .f_menu1 li, .f_menu2 li {
	/*padding:0 0 10px 5px;*/
    padding-bottom: 8px;
}
.f_menu li a, .f_menu1 li a, .f_menu2 li a {
	text-decoration:none;
	color:#FFFFFF;
}
.f_menu li a:hover, .f_menu1 li a:hover, .f_menu2 li a:hover {
	text-decoration:underline;
	color:#51b4e2;
	/*color:#e9961c;*/
}
address {
	text-align:center;
	color:#FFFFFF;
	padding:10px 0 20px 0;
}
.copyright {
    text-align: center;
    color: #fff;
    padding: 0 1em 1em;
    font-size: 12px;
}
.img_forum {
	margin:30px auto 5px auto;
}
.txt_top {
	text-align:left;
	margin:10px 10px 30px 10px;
	
}
.txt_top p {
	font-size:20px;
	font-weight:bold;
	padding-bottom:15px;
	color:#000066;
}
.txt_top dl {
	padding-left:10px;
}
.txt_top dt {
	 font-size:18px;
	 font-weight:bold;
	 color:#F60;
}
.txt_top dd {
	 font-size:15px;
 	line-height:1.6em;
	padding:5px 5px 15px 10px;
}




/*--------------------------------------------------------------
# temp rules
--------------------------------------------------------------*/

/*------------------------ top: announcement ----------------------------*/

.announcement {
    box-sizing: border-box;
    text-align: left;
    width: 940px;
    margin: 1em auto 0;
    border: 3px solid #FF6766;
    border-radius: 15px;
    padding: 2.5em 2.5em 2em;
    line-height: 1.6;
    position: relative;
    font-size: 14px;
    background: white;
}
.section_label {
    position: absolute;
    top: -8px;
    display: inline-block;
    background: #FF6766;
    color: white;
    font-weight: bold;
    padding: 10px 8px 5px;
    border-radius: 0px 0px 5px 5px;
    
}
.announcement h2 {
    text-align: center;
    margin-bottom: .5em;
    color: #006e9e;
}
.announcement p {
    
    margin-bottom: 1em;
}
.announcement p:last-of-type {
    margin-bottom: 0;
}

.announcement ul {
    margin: 0 2em 1em;
    font-weight: bold;
    font-size: 120%;
    text-align: center;
}
.important_info {
    background: #def3fc;
    font-size: 120%;
    text-align: center;
    font-weight: bold;
    padding: 1em;
    color: #006e9e;
}
.sender {
    text-align: right;
}

.announcement a:link,
.announcement a:visited {
    color: #20AB8C;
    text-decoration: underline;
}
.announcement a:hover,
.announcement a:focus {
	text-decoration: none;
}





