@charset "UTF-8";
/*
	BASE
*******************************/

/*
font-family: 'Lato', sans-serif;
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Serif JP', serif;
font-family: 'Oswald', sans-serif;
*/
* {
	font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,'Hiragino Kaku Gothic Pro',Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
	margin: 0;
	padding: 0;
	box-sizing:border-box;
}
.en {
	font-family: 　oswald, sans-serif;
}
.jp {
	font-family: 'Noto Sans JP', sans-serif;
}

html {
	font-size:62.5%;
	line-height:1em;
}
body {
	font-size:1.6rem;
}

img {
	-webkit-backface-visibility: hidden;
	vertical-align:bottom;
	line-height:0;
}


p,th,td,dt,dd,li,h1,h2,h3,h4,h5,h6 { color:#000000;}

a,
a:link,
a:visited {
	color:#000000;
	text-decoration:none;
	outline:none;
	border:none;
}
a:hover {
	text-decoration:none;
}

a img {
	outline:none;
	border:none;
	-webkit-backface-visibility: hidden;
}
area {
	border:none;
	outline:none;
}

.clear { clear:both;}

* img {
	max-width: 100%;
	height: auto;
}

a.tel {
	font-family:inherit;
	font-size:inherit;
	color:inherit;
	line-height:inherit;
}

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



/*
	BASE LAYOUT
******************/

body {
	min-width:980px;
}

#main {
	width:100%;
	margin:0;
	padding:0;
}
#main p {
	font-weight:500;
	font-size:1.6rem;
	line-height: 1.8;
	margin: 0;
	padding:0;
	text-align:justify;
}


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


/*基本：左右配置　上下センター　折り返しなし*/
.fbox {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
}

/*折り返しなし*/
.fbox.nowrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

/*左寄せ*/
.fbox.bxstart {
  -webkit-box-pack: start;
     -ms-flex-pack: start;
   justify-content: flex-start;
}

/*右寄せ*/
.fbox.bxend {
  -webkit-box-pack: end;
     -ms-flex-pack: end;
   justify-content: flex-end;
}

/*中央寄せ*/
.fbox.bxcenter {
  -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}

/*上寄せ*/
.fbox.alstart {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
	align-content: flex-start;
}

/*下寄せ*/
.fbox.alend {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
	align-content: flex-end;
}

/*上下中央*/
.fbox.alcenter {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	align-content: center;
}

/*上下端*/
.fbox.albt {
  -ms-flex-line-pack: justify;
       align-content: space-between;
}

/*上下均等*/
.fbox.linedist {
  -ms-flex-line-pack: distribute;
       align-content: space-around;
}



/*子要素に設定　順番を1番目に*/
.pos0 {
  -webkit-box-ordinal-group: 1;
             -ms-flex-order: -1;
                      order: -1;
}

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

/*
	Contents LAYOUT
******************/
.wrap {
	width:100%;
	text-align:center;
}

.contents {
	width:calc(100% - 60px);
	max-width:1200px;
	margin:0 auto;
	box-sizing:border-box;
	text-align:left;
}

#p404 .contents {
	text-align:center;
}
#p404 .contents h2 {
	font-size:2.4rem;
	margin-bottom:1em;
}
#p404 .contents p {
	text-align:center;
}
#p404 .contents a {
	text-decoration:underline;
}
#p404 .contents a:hover {
	text-decoration:none;
}


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

}


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

#main p {
	font-size:1.4rem;
	line-height: 1.6;
}
	

/*
	Contents LAYOUT
******************/

.contents {
	width: calc(100% - 30px);
}


#p404 .contents h2 {
	font-size:1.6rem;
}
	
}

@media screen and (max-width:640px) {
    .pcOnly {
    	display:none !important;
    }
}
@media screen and (min-width:641px) {
    .spOnly {
    	display:none !important;
    }
}