@charset "utf-8";

/******************************************************************
 *
 * 全ページ共通
 *
 ******************************************************************/


body {font-family: '游ゴシック体', 'Yu Gothic', 'YuGothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; background: #fff; color: #333; }
a {color:#000; text-decoration: none; -webkit-font-smoothing: antialiased;}
a:hover { color:#00a0e9; text-decoration: underline;}
img { width: auto; height: auto; }
i { font-style: normal; }

.large { font-size: 1.15em !important; line-height: 1.65em !important; }
.small { font-size: 0.85em !important; line-height: 1.25em !important; }
.xsmall { font-size: 0.65em !important; line-height: 1.25em !important; }
.caution { color: #f6615f !important; }


/* clearfix */
.cf:before, .cf:after {content:""; display:block; overflow:hidden;}
.cf:after {clear:both;}
.cf {zoom:1;}

/* fonts */
.f_mp { font-family: "M PLUS 1p"; }
.f_nt { font-family: "Noto Sans JP", sans-serif; }
.f_zm { font-family: "Zen Maru Gothic", sans-serif; }


/******************************************************************
 * media screen
 ******************************************************************/

@media screen and (min-width:751px){/* -------------------------PC */
body {line-height: 1.75em; font-size: 18px; font-family: "Noto Sans JP", sans-serif; }

a:hover img.hover {filter:alpha(opacity=50); -moz-opacity:0.5; opacity:0.5;}
.sp {display:none !important;}
.navishow { display: block !important; }

/* header */
header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	min-width: 1280px;
	height: 80px;
	background: rgba(255,255,255,0.9);
	z-index: 9999;
}

header .navi-inner { position: relative; width: 100%; min-width: 1280px; margin: 0 auto; padding: 0;  }
header .logo { float: left; width: 276px; padding: 23px 0 0 50px; }
header .logo img { width: 276px; }
header div.info { float: right; width: 270px; height: 34px; padding: 23px 0 0 0; background: none; }
header div.tel { float: left; width: 212px; height: 33px; margin: 0 0 0 0; }
header div.fb,
header div.tw { float: left; width: 33px; height: 33px; margin: 0 0 0 15px; }
header div.buy { float: left; width: 221px; height: 34px; margin: 0 0 0 0; }
header div.tel img,
header div.fb img,
header div.tw img, { width: 100%; height: 100%; }
header div.buy img, { width: 100%; height: 100%; }
#gnav { float: left; position: relative; width: 800px; margin: 0; padding: 25px 0 0 14px; font-size: 14px; line-height: 16px; font-weight: 700; background: none; }
#gnav a:hover { text-decoration: none; }
#gnav > ul {}
#gnav > ul > li { display: inline-block; padding: 0 0; margin: 0 0 0 0.5em; }
#gnav > ul > li a { display: inline-block; padding: 0.5em 1em; }
#gnav > ul > li a:hover { background: #194682; color: #fff; opacity: 1.0 !important; }
#gnav .spc { width: 100%; height: 20px; overflow: hidden; font-size: 1px; line-height: 1px; }


/* contents */
#contents { width: 100%; margin: 0 auto 0 auto; padding: 80px 0 0 0; }
.sns_box { width: 1080px; margin: 0 auto; padding: 20px 0; text-align: right; }
.sns_box img { width: 40px; }
.sns_box a+a { margin: 0 0 0 10px; }

.bigtitle { width: 1180px; margin: 0 auto; padding: 70px 0 0 0; text-align: center; }


div.pagetop { position: block; width: 100%; margin: 100px 0 0 0; font-size: 1px; line-height: 1px; text-align: center; }
div.pagetop a { display: block; width: 100%; padding: 15px 0; background: #000; }
div.pagetop img { width: 58px; }

footer { position: relative; width:100%; font-size: 0.85em; line-height: 1.5em; background: rgba(25,70,130,1.0); }
footer .info { position: relative; width: 1180px; margin: 0 auto; padding: 40px 0; text-align: center; }
footer .info p { width: 100%;padding: 0 0 40px 0; font-weight: bold; color: #fff; font-size: 30px; text-align: center; }
footer .info div { display: inline-block; width: 48%; }
footer .navi .inner { width: 100%; margin: 0 auto; padding: 40px 0; border-top: 5px solid #fff; }
footer .navi .inner .copy { width: 100%; padding: 120px 0 0 0 ; background: url(../images/footer_logo.png) center top no-repeat; background-size: 119px; text-align: center; color: #fff; font-size: 12px; line-height: 1.5em; }



}/* /@media */

/*******************************************************************/

@media screen and (max-width:750px){/* -------------------------SP */
html {-webkit-text-size-adjust: 100%;}
body {line-height:1.75em; font-size: 3.2vw; font-family: "Noto Sans JP", sans-serif; }
img { width: 100%; }
.pc {display:none;}

/* header */
header {
	position: relative;
	width: 100%;
	height: 9.333vw;
	background: rgba(0,0,0,0.0);
	overflow: hidden;
}
header .navi-inner { position: relative; width: 100%; margin: 0 auto; padding: 0;  }
header .logo { float: left; width: 50.1333vw; margin: 1.2vw 0 0 2vw; }
header .logo img { width: 60.53vw; }
header div.hummenu { position: fixed; top: 0; right: 0; width: 5.866vw; height: 5.866vw; z-index: 9999; top: 1.61vw; right: 1.61vw; }
header div.info { float: left;  margin: 0 0 0 0; padding: 0 0 0 20vw; }
header div.tel,
header div.fb,
header div.tw { float: left; width: 5.866vw; height: 5.866vw; margin: 0 2vw 0 0; }
header div.tel img,
header div.fb img,
header div.tw img, { width: 100%; height: 100%; }
header div.buy { float: left; width: 16.266vw; height: 7.066vw; margin: 1.266vw 0 0 0; }
header div.buy img, { width: 100%; }
#gnav { width: 100%; height: 100%; padding: 12vw 0 30.00vw 0; background-color: rgba(25,70,130,1.0); display: none; color: #fff; z-index: 9999; overflow: auto; }
#gnav a { display: block; padding: 1em 0; color: #fff; background: url("../images/arrow_btn1.png") right center no-repeat; background-size: 4.44vw; border-bottom: 1px solid rgba(255,255,255,1.0);  }
#gnav a:hover { text-decoration: none; background-color: rgba(255,255,255,0.0) }
#gnav ul { width: 75vw; margin: 0 auto; font-weight: 500; }
#gnav ul li span { display: none; }


.sp-head-bottom { position: relative; width: 100%; padding: 9.333vw 0 1vw 0; border-bottom: 3px solid #396caa;  }
.sp-navi { position: relative; width: 98%; margin: 0 auto; }
.sp-navi li { float: left; width: 50%; padding: 0 1% 0 0; box-sizing: border-box;}
.sp-navi li:first-child { float: left; width: 50%; padding: 0 1%; box-sizing: border-box;}


/* contents */
#contents { padding: 0vw 0 0 0 ; }
.sns_box { width: 86.66vw; margin: 0 auto; padding: 2.66vw 0; text-align: right; }
.sns_box img { width: 7vw; }
.sns_box a+a { margin: 0 0 0 1.33vw; }
.bigtitle { width: 100%; padding: 6.66vw 0 0 0; }



.topicpath { display: none; }

/* footer */

div.pagetop { position: block; width: 100%; margin: 13.33vw 0 0 0; font-size: 1px; line-height: 1px; text-align: center; }
div.pagetop a { display: block; width: 100%; padding: 2.66vw 0; background: #000; }
div.pagetop img { width: 11.33vw; }

footer { position: relative; width:100%; background:rgba(25,70,130,1.0); margin: 0 0 0 0}
footer .info { position: relative; width: 86.66vw; margin: 0 auto; padding: 40px 0; }
footer .info p { width: 100%;padding: 0 0 5.33vw 0; font-weight: bold; color: #fff; font-size: 4vw; text-align: center; }
footer .info div { display: inline-block; width: 100%; }
footer .info div+div { padding: 2.66vw 0 0 0; }
footer .navi .inner { width: 100%; margin: 0 auto; padding: 5.33vw 0; border-top: 5px solid #fff; }
footer .navi .inner .copy { width: 100%; padding: 16vw 0 0 0 ; background: url(../images/footer_logo.png) center top no-repeat; background-size: 16vw; text-align: center; color: #fff; font-size: 2vw; line-height: 1.5em; }

/* contents */


}/* /@media */

