@charset "utf-8";
/* 
====================================================================================================
■ basic setting
 □ tag
 □ class
■ additional
■ layout
 □ #site_header
 □ main
 □ #sub_area
 □ #site_footer
----------------------------------------------------------------------------------------------------
※ 基本的にテンプレとしての簡易な整形レベルです。必ずサイトに合わせて各種設定を見直すこと。 
※ font-sizeに関しては、リセット後、#wrapperに18px相当で指定済。そこからの相対指定で行うこと。
　（親要素に既に%指定済の場合、子孫要素は基準が変わるので注意してください。）
※ サイト制作後、不要と思われるコメントはなるべく削除し整理すること。
==================================================================================================== */
/* 
====================================================================================================
■ basic setting
----------------------------------------------------------------------------------------------------
 □ tag
---------------------------------------------------------------------------------------------------- */
html { background-color:#fff; /* 画面外背景色 */ }
body { position: relative; margin: 0 auto; font-family:メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
p, li, pre, td, th, dt, dd { line-height:1.5; }  /* 基本の行の高さ */
/* 
----------------------------------------------------------------------------------------------------
 □ class
---------------------------------------------------------------------------------------------------- */
/* 
--------------------------------------------------
 ▽ 文字装飾定義専用クラス
-------------------------------------------------- */
/* 主に新着情報への使用想定だが、通常コンテンツ内で使用も可 */
.text_left { text-align:left }
.text_right { text-align:right }
.text_center { text-align:center }
.text_justify { text-align:justify }
.text_nowrap { white-space:nowrap }
.text_lowercase { text-transform:lowercase }
.text_uppercase { text-transform:uppercase }
.text_capitalize { text-transform:capitalize }
.text_muted { color:#777 }
.text_normal { font-weight:normal !important; }
.text_bold { font-weight:bold; }
.text_red { color:#E75942; }
.text_red1{ color: #e21b2d; font-weight: bold;}
.text_grey { color:#999999; }
.text_pink { color:#FF1493; }
.text_green { color:#39B221; }
.text_blue { color:#3399FF; } /* このブルーはリンク色のブルーとは色味を若干変える事を推奨 */
.text_yellow { color:#EECC00; }
.text_white { color:#F0F0F0; }
/* ページトップへのリンク */

/* 
--------------------------------------------------
 ▽ font-size設定専用クラス
-------------------------------------------------- */
/* デフォルトでは#wrapperに18px相当の指定が設定済みのため、そこからの相対値になります。
※親要素に既に%指定済みの場合は子孫要素は基準が変わるのでこのクラスの使用は出来れば避けます。 */
.f10 { font-size: 55.6% !important; } /* 10px */
.f11 { font-size: 61.2% !important; } /* 11px */
.f12 { font-size: 66.7% !important; } /* 12px */
.f13 { font-size: 72.3% !important; } /* 13px */
.f14 { font-size: 72.3% !important; } /* 14px */
.f15 { font-size: 83.4% !important; } /* 15px */
.f16 { font-size: 88.9% !important; } /* 16px */
.f17 { font-size: 94.5% !important; } /* 17px */
.f18 { font-size:100.0% !important; } /* 18px */
.f19 { font-size:105.6% !important; } /* 19px */
.f20 { font-size:111.2% !important; } /* 20px */
.f21 { font-size:116.7% !important; } /* 21px */
.f22 { font-size:122.3% !important; } /* 22px */
.f23 { font-size:127.8% !important; } /* 23px */
.f24 { font-size:133.4% !important; } /* 24px */
.f25 { font-size:138.9% !important; } /* 25px */
/* 
--------------------------------------------------
 ▽ margin設定専用クラス
-------------------------------------------------- */
.m00 { margin: 0px !important; }
.m05 { margin: 5px !important; }
.m10 { margin:10px !important; }
.m15 { margin:15px !important; }
.m20 { margin:20px !important; }
.m25 { margin:25px !important; }
.m30 { margin:30px !important; }
.m35 { margin:35px !important; }
.m40 { margin:40px !important; }
.m45 { margin:45px !important; }
.mt00 { margin-top: 0px !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top:10px !important; }
.mt15 { margin-top:15px !important; }
.mt20 { margin-top:20px !important; }
.mt25 { margin-top:25px !important; }
.mt30 { margin-top:30px !important; }
.mt35 { margin-top:35px !important; }
.mt40 { margin-top:40px !important; }
.mt45 { margin-top:45px !important; }
.mr00 { margin-right: 0px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right:10px !important; }
.mr15 { margin-right:15px !important; }
.mr20 { margin-right:20px !important; }
.mr25 { margin-right:25px !important; }
.mr30 { margin-right:30px !important; }
.mr35 { margin-right:35px !important; }
.mr40 { margin-right:40px !important; }
.mr45 { margin-right:45px !important; }
.mb00 { margin-bottom: 0px !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom:10px !important; }
.mb15 { margin-bottom:15px !important; }
.mb20 { margin-bottom:20px !important; }
.mb25 { margin-bottom:25px !important; }
.mb30 { margin-bottom:30px !important; }
.mb35 { margin-bottom:35px !important; }
.mb40 { margin-bottom:40px !important; }
.mb45 { margin-bottom:45px !important; }
.ml00 { margin-left: 0px !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left:10px !important; }
.ml15 { margin-left:15px !important; }
.ml20 { margin-left:20px !important; }
.ml25 { margin-left:25px !important; }
.ml30 { margin-left:30px !important; }
.ml35 { margin-left:35px !important; }
.ml40 { margin-left:40px !important; }
.ml45 { margin-left:45px !important; }
/* 
--------------------------------------------------
 ▽ padding設定専用クラス
-------------------------------------------------- */
.p00 { padding: 0px !important; }
.p05 { padding: 5px !important; }
.p10 { padding:10px !important; }
.p15 { padding:15px !important; }
.p20 { padding:20px !important; }
.p25 { padding:25px !important; }
.p30 { padding:30px !important; }
.p35 { padding:35px !important; }
.p40 { padding:40px !important; }
.p45 { padding:45px !important; }
.pt00 { padding-top: 0px !important; }
.pt05 { padding-top: 5px !important; }
.pt10 { padding-top:10px !important; }
.pt15 { padding-top:15px !important; }
.pt20 { padding-top:20px !important; }
.pt25 { padding-top:25px !important; }
.pt30 { padding-top:30px !important; }
.pt35 { padding-top:35px !important; }
.pt40 { padding-top:40px !important; }
.pt45 { padding-top:45px !important; }
.pr00 { padding-right: 0px !important; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right:10px !important; }
.pr15 { padding-right:15px !important; }
.pr20 { padding-right:20px !important; }
.pr25 { padding-right:25px !important; }
.pr30 { padding-right:30px !important; }
.pr35 { padding-right:35px !important; }
.pr40 { padding-right:40px !important; }
.pr45 { padding-right:45px !important; }
.pb00 { padding-bottom: 0px !important; }
.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom:10px !important; }
.pb15 { padding-bottom:15px !important; }
.pb20 { padding-bottom:20px !important; }
.pb25 { padding-bottom:25px !important; }
.pb30 { padding-bottom:30px !important; }
.pb35 { padding-bottom:35px !important; }
.pb40 { padding-bottom:40px !important; }
.pb45 { padding-bottom:45px !important; }
.pl00 { padding-left: 0px !important; }
.pl05 { padding-left: 5px !important; }
.pl10 { padding-left:10px !important; }
.pl15 { padding-left:15px !important; }
.pl20 { padding-left:20px !important; }
.pl25 { padding-left:25px !important; }
.pl30 { padding-left:30px !important; }
.pl35 { padding-left:35px !important; }
.pl40 { padding-left:40px !important; }
.pl45 { padding-left:45px !important; }
/* 
--------------------------------------------------
 ▽ radious（角丸）設定専用クラス
-------------------------------------------------- */
.r03 { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.r04 { -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.r05 { -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
.r06 { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; }
.r07 { -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; }
.r08 { -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; }
.r09 { -webkit-border-radius: 9px; -moz-border-radius: 9px; border-radius: 9px; }
.r10 { -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px; }
.r11 { -webkit-border-radius:11px; -moz-border-radius:11px; border-radius:11px; }
.r12 { -webkit-border-radius:12px; -moz-border-radius:12px; border-radius:12px; }
.r13 { -webkit-border-radius:13px; -moz-border-radius:13px; border-radius:13px; }
.r14 { -webkit-border-radius:14px; -moz-border-radius:14px; border-radius:14px; }
.r15 { -webkit-border-radius:15px; -moz-border-radius:15px; border-radius:15px; }
.r16 { -webkit-border-radius:16px; -moz-border-radius:16px; border-radius:16px; }
.r17 { -webkit-border-radius:17px; -moz-border-radius:17px; border-radius:17px; }
.r18 { -webkit-border-radius:18px; -moz-border-radius:18px; border-radius:18px; }
.r19 { -webkit-border-radius:19px; -moz-border-radius:19px; border-radius:19px; }
.r20 { -webkit-border-radius:20px; -moz-border-radius:20px; border-radius:20px; }


/* ▼▼▼▼ clear / float ▼▼▼▼ */
.clearfix:after { content: ".";  display: block;  height: 0;  clear: both;  visibility: hidden; }

.fl { float: left ; }
.fr { float: right; }
/* ▲▲▲▲ clear / float ▲▲▲▲ */



/*
====================================================================================================
■ layout
---------------------------------------------------------------------------------------------------- */
#wrapper { width: 100%; /* サイトの実際の横幅（640px以下は画面サイズによって変動） */ max-width:480px; margin: 0 auto; overflow:hidden;
	color:#000;
}
/* 
----------------------------------------------------------------------------------------------------
 □ #site_header
---------------------------------------------------------------------------------------------------- */
.sg_header{
	padding:15px 10px 0;
	position:fixed;
	width:100%;
	max-width:480px;
	background:#fff;
	border-top:3px solid #3b85ca;
	z-index:99;
}
.logo{
	text-align:center;
	margin:0 0 10px;
}
.logo p{
	font-size:10px;
	margin:0 0 5px;	
}
.header_in{
	position:relative;
	margin:0;
	padding:0;	
}
.menu_btn{
	background-color: #ff9c00;
	background-image: -webkit-linear-gradient(bottom, rgba(255,102,0,.2), rgba(255,255,255,.5));
	background-image: -moz-linear-gradient(bottom, rgba(255,102,0,.2), rgba(255,255,255,.5));
	background-image: -o-linear-gradient(bottom, rgba(255,102,0,.2), rgba(255,255,255,.5));
	background-image: -ms-linear-gradient(bottom, rgba(255,102,0,.2), rgba(255,255,255,.5));
	background-image: linear-gradient(to top, rgba(255,102,0,.2), rgba(255,255,255,.5));
	margin:0 -10px;
}
.menu_btn li{
	float:left;
	width:25%;
	position:relative;
}
.menu_btn li:before{
	content:"";
	width:1px;
	height:24px;
	background:#fff;
	position:absolute;
	right:0;
	top:13px;	
}
.menu_btn li:last-child{
	width:50%;	
}
.menu_btn li:last-child:before{
	display:none;	
}
.menu_btn li a{
	text-decoration:none;	
	display:block;
	text-align:center;
	padding:8px 0;
	text-align:center;
	color:#fff;
	line-height:33px;
	font-size:20px;
}
.menu_btn li:last-child a{
	padding-right:50px;
}
.menu_btn li:last-child:after{
	content:"";
	width:18px;
	height:12px;
	background: url(../common_img/ico_nav2.png) no-repeat left center;
	background-size:18px 12px; -webkit-background-size:18px 12px; -moz-background-size:18px 12px;	
	position:absolute;
	right:30px;
	top:50%;
	margin:-6px 0 0;			
}
.menu_btn li.opened:after{
	background: url(../common_img/ico_nav2_on.png) no-repeat left center;
	background-size:18px 12px; -webkit-background-size:18px 12px; -moz-background-size:18px 12px;	
}
.menu_btn li img{
	width:33px;	
}
.menu_btn li:last-child img{
	width:125px;	
}
/* 
--------------------------------------------------
 ▽ #gnav （グローバルナビゲーション）
-------------------------------------------------- */
.nav{
	background: #ff8533;
	padding:0;
	margin:15px 0 0;
	display:none;
}
.nav ul{
	padding:0 15px 15px;
}
.nav li{
	border-bottom:1px dotted #fff;
}
.nav li:last-child{
	margin:0;
}
.nav li a{
	display:block;
	padding:5px 15px;
	text-decoration:none;
	color:#fff;
	font-size:18px;
	background: url(../common_img/ico_nav.png) no-repeat left center;
	background-size:8px 10px; -webkit-background-size:8px 10px; -moz-background-size:8px 10px;			
}
/* 
----------------------------------------------------------------------------------------------------
  □ main
---------------------------------------------------------------------------------------------------- */
/*--- section ---*/
.sg_main{
	padding:0 10px;
}
img{
	max-width:100%;	
}
.col02 li{
	width:49%;
	float:left;
}
.col02 li:nth-child(2n){
	float:right;
}

.col03 li{
	width:32%;
	float:left;
	margin:0 2% 0 0;
}
.col03 li:nth-child(3n){
	margin:0;
}
/* 
----------------------------------------------------------------------------------------------------
  □ #Sidebar
---------------------------------------------------------------------------------------------------- */

/* 
----------------------------------------------------------------------------------------------------
  □ #sub_area
---------------------------------------------------------------------------------------------------- */
.align_center{
	text-align:center;	
}
.align_right{
	text-align:right;	
}
img.fl_right{
	float:right;
	margin-left:10px;	
}
img.fl_left{
	float:left;
	margin-right:10px;	
}
.pagination{
	text-align:center; 
}
.pagination li{
  float:left;
}
.pagination li:last-child{
 	float:right; 
}
.pagination li a{
	background: #3b85ca;
	-webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px;
	color: #fff;
	display: block;
	font-weight: bold;
	padding: 5px 20px;
	text-decoration: none;	
}
.maxheight_hide{
	display:none;	
}
.readmore{
	display:block;
	text-align:right;
	text-decoration:underline;	
	color:#ab8448;
}
.hidden{
	display:none;	
}

/* 
----------------------------------------------------------------------------------------------------
 □ #site_footer
---------------------------------------------------------------------------------------------------- */
.pageup{
	position:absolute;
	right:10px;
	top:-22px;
}
.pageup a{
	
}
.sg_footer{
	padding:10px 10px 0;
	position:relative;
	color:#000;
	background:#caf6ff;
}
.f_contact{
	padding:15px 0;
}
.f_logo{
	text-align:center;	
	margin:0 0 10px;
}
.f_logo p{
	font-size:10px;
	margin:0;	
}
.contact_sty{
	background: url(../common_img/badge.png) no-repeat center top #fff;
	background-size:269px 22px; -webkit-background-size:269px 22px; -moz-background-size:269px 22px;	
	padding:35px 20px 10px;	
	margin:0 10px;
}
.contact_sty li{
	float:left;
	width:49%;
}
.contact_sty li:last-child{
	float:right;	
	text-align:center;
}
.contact_sty li img{
	margin:0 0 10px;	
}

.fnav{
	margin:0 -10px;
	background:#3b85ca;
	padding:10px 10px 0;
}
.fnav li{
	margin:0 0 10px;
	width:50%;
	float:left;
	position:relative;	
	text-align:center;
}
.fnav li:nth-child(2n):before{
	content:"";
	width:2px;
	height:13px;
	background: url(../common_img/f_line.png) no-repeat left center;
	background-size:2px 13px; -webkit-background-size:2px 13px; -moz-background-size:2px 13px;	
	position:absolute;
	left:15px;
	top:3px;			
}
.fnav a{
	color:#fff;
	display:block;
	text-decoration:none;
	padding:0;
	font-size:13px;
}
.footer_end{
	background:#ff6600;
	margin:0;
}
.footer_end a{
	padding:10px 0;
	display:block;
	text-align:center;
}
@media all and (max-width: 479px) {
	.fnav a{
		padding:0 10px;	
	}
	.fnav li:nth-child(2n):before{
		left:0;
	}
	.menu_btn li:last-child a{
		padding-right:30px;
	}
	.menu_btn li:last-child:after{
		right:10px;
	}
}
@media all and (max-width: 413px) {
	.menu_btn li:last-child a{
		padding-right:20px;
	}
	.contact_sty{
		margin:0;
		padding: 35px 10px 10px;	
	}
}
@media all and (max-width: 359px) {
	.menu_btn li{
		width:22%;
	}
	.menu_btn li:last-child{
		width:56%;	
	}
}
