@charset "UTF-8";



/* ----------------------------------------------------------------------------------------------------
*  reset
* --------------------------------------------------------------------------------------------------*/
/*====================================
RESET
======================================*/
html{overflow-y: scroll;}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
blockquote, q {
    quotes:none;
}
h1, h2, h3, h4, h5, h6, p {margin:0; font-weight:normal; display:block; font-size: 100%;}
ul,li {list-style:none; padding:0;margin:0;}
dl,dt,dd {padding:0; margin:0;}
table,tr,td {border:0;padding: 0 ; margin:0;}
table {
    border-collapse:collapse;
    border-spacing:0;
}
a {
  text-decoration:none;
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
a:focus {
  outline:none;
  cursor: pointer;
}
a:hover {cursor: pointer;}

input, textarea, select {
    vertical-align:middle;
}
button{
     background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}

img {vertical-align:bottom; border:0; padding:0; margin:0;line-height:0; }
div {margin:0;padding:0;}

caption, th{
    font-weight: normal;
}


input,select,button,textarea{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: none;
	border-radius: 0;
	padding: 0;
	font-family:inherit;font-size:inherit;font-weight:inherit;
}

*,*:after,*:before{
	box-sizing: border-box;
}



/* ----------------------------------------------------------------------------------------------------
*  基本
* --------------------------------------------------------------------------------------------------*/
html,body{
	height:100%;
	width:100%;
}
html{
	font-size:62.5%;
    overflow-y: scroll;
}
body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	text-align: left;
}
ul{letter-spacing: -0.4em;}
.android ul{letter-spacing: -1em;}
ul li{letter-spacing: normal;}


body a {
	text-decoration:none;
	color:#000;
}
body{
	width: 100%;
	font-size: 1.4rem;
	line-height: 1.8;
	font-family:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	color: #000;
	word-wrap: break-word;
	position: relative;
}
.ie body{
	font-family:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
}

@media screen and (min-width: 769px) {
	html,body{
		min-width: 950px;
	}
}
@media screen and (max-width: 768px) {
	html{-webkit-overflow-scrolling: touch;}
	body{
		font-size: 1.4rem;
	}

}



a, a img, a:hover span, .fade, #pagetop, a:hover .nlist_pname{
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

a:hover, a:hover img, a:hover span, .fade:hover, #pagetop:hover, a:hover .nlist_pname{
	opacity: 0.5;
}

table{width: 100%;}


/*--読み込み時にtransitionが動作する問題--*/
.preload * {
-webkit-transition: none !important;
-moz-transition: none !important;
-ms-transition: none !important;
-o-transition: none !important;
transition: none !important;
}

/* ----------------------------------------------------------------------------------------------------
*  汎用
* --------------------------------------------------------------------------------------------------*/
.wrap{
	width: 100%;
	max-width: 950px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}


@media screen and (min-width: 769px) {
	.sp{display: none!important;}
}

@media screen and (max-width: 768px) {
	body{
		min-width: 100%;
	}

	.wrap{
		width: 100%;
		padding: 0 3%;
	}
	.pc{
		display: none!important;
	}
}

/* ----------------------------------------------------------------------------------------------------
* 　content
* --------------------------------------------------------------------------------------------------*/

@media screen and (min-width: 769px) {
	.p_common.wrap{
		max-width: 870px;
		padding: 0 10px;
	}

}
@media screen and (max-width: 768px) {

}
/* ------------------------------
    box
------------------------------ */


@media screen and (min-width: 769px) {}

@media screen and (max-width: 768px) {
    /*--余白をはみ出させて幅100%にするもの--*/
    .sp100vw {
        width: 100vw;
        left: 50%;
        transform: translateX(-50%);
        position: relative;
    }
}


/* ------------------------------
    clearfix
------------------------------ */
.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */

/* ------------------------------
   float
------------------------------ */
.aligncenter{
    display:block;
    margin:0 auto;
}
.alignright{
	float:right;
}
.alignleft{
	float:left;
}

/* ------------------------------
   text
------------------------------ */
.taC{text-align: center;}
.taR{text-align: right;}
.taL{text-align: left;}

.nowrap{
	display: inline-block;
	text-indent: 0;
}
.bold{font-weight: bold;}


@media screen and (max-width: 768px) {
}





/* ------------------------------
   box
------------------------------ */

@media screen and (max-width: 768px) {
}
/* ------------------------------
    字下げ
------------------------------ */
.hang1, .hang1 li{
	padding-left: 1em!important;
	text-indent: -1em!important;
}
.hang1h, .hang1h li{
	padding-left: 1.5em!important;
	text-indent: -1.5em!important;
}

/* ------------------------------
    余白
------------------------------ */
/* -------------
    margin
---------------- */
.mB_1{margin-bottom: 30px!important;}
.mB_2{margin-bottom: 20px!important;}
.mB_3{margin-bottom: 10px!important;}

@media screen and (max-width: 768px) {
	.mB_1{margin-bottom: 20px!important;}
	.mB_2{margin-bottom: 14px!important;}
	.mB_3{margin-bottom: 6px!important;}

}


/* ------------------------------
    padding
------------------------------ */
.pB_1{padding-bottom: 30px!important;}
.pB_2{padding-bottom: 20px!important;}
.pB_3{padding-bottom: 10px!important;}

.pT_1{padding-top: 30px!important;}
.pT_2{padding-top: 20px!important;}
.pT_3{padding-top: 10px!important;}

@media screen and (min-width: 769px) {
}
@media screen and (max-width: 768px) {
	.pB_1{padding-bottom: 20px!important;}
	.pB_2{padding-bottom: 14px!important;}
	.pB_3{padding-bottom: 6px!important;}

	.pT_1{padding-top: 20px!important;}
	.pT_2{padding-top: 14px!important;}
	.pT_3{padding-top: 6px!important;}
}
