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

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Sawarabi+Mincho);
/* -----------------------------------------------------------
CSS Information

 File name:      default.css
 Style Info:     デフォルトのスタイルのリセット及び基本設定
----------------------------------------------------------- */


body{
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	/*font-family:  "Sawarabi Mincho",'Lato', "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;*/
	overflow-x: hidden;
font-size:14px;}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike,  sub, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-style:normal;
    vertical-align: baseline;
	/*line-height: 1.9em;*/
}
 
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
 
html{
    overflow-y: scroll;
	
}
 
blockquote, q {
    quotes: none;
}
 
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
 
strong{font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
 
ol, ul{
    list-style:none;
}
 
table{
    border-collapse: collapse; 
    border-spacing:0;
}
 
caption, th{
    text-align: left;
}
 
a:focus {
    outline:none;
}
 
.clearfix:after {
    content: "."; 
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
 
.clearfix {
    min-height: 1px;
}
 
* html .clearfix {
    height: 1px;
    /*\*//*/
    height: auto;
    overflow: hidden;
    /**/
}
 
.both{
    clear:both;
}
 
.inline_block {  
    display: inline-block;  
    *display: inline;  
    *zoom: 1;  
}

a{text-decoration: none;
color: #333;}

a,a:hover {
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}


a img { /* ゆっくりフェードインアウト */
	-webkit-transition: .2s linear;
	-moz-transition: .2s linear;
	-o-transition: .2s linear;
	-ms-transition: .2s linear;
}
a img:hover {
    filter: alpha(opacity=5);
    -moz-opacity:0.5;
    opacity:0.5;
}
img{ max-width: 100%; height: auto;}

.fL{float:left;}
.fR{float:right;}
 
/* よく使うCSS start
 
img {
    max-width:100%;
}
 
table {
    width:100%;
}
 
a,a:hover {
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}
 
a img:hover {
    filter: alpha(opacity=75);
    -moz-opacity:0.75;
    opacity:0.75;
}
 
よく使うCSS end -----
時々使うCSS3 start ---
 
テキストシャドウ {
    text-shadow: 1px 1px 3px #000;
}
 
テキストシャドウ {
    text-shadow: 1px 1px 3px #000;
}
 
ボックスシャドウ {
    -moz-box-shadow: 1px 1px 3px #000;
    -webkit-box-shadow: 1px 1px 3px #000;
    box-shadow: 1px 1px 3px #000;
}
 
ボックスシャドウ内側 {
    -moz-box-shadow: inset 1px 1px 3px #000;
    -webkit-box-shadow: inset 1px 1px 3px #000;
    box-shadow: inset 1px 1px 3px #000;
}
 
角丸 {
    border-radius: 8px; 
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px; 
}
 
トランジション {
    -webkit-transition: 1.5s;
    -moz-transition: 1.5s;
    -o-transition: 1.5s;
    transition: 1.5s;
}
 
透明 {
    filter: alpha(opacity=25);
    -moz-opacity:0.25;
    opacity:0.25;
}
 
背景のみ透明 {
    background-color:rgba(255,255,255,0.2);
}
 
グラデーション {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#000000');
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#000000')";
    background-image: -moz-linear-gradient(top, #ffffff, #000000);
    background-image: -ms-linear-gradient(top, #ffffff, #000000);
    background-image: -o-linear-gradient(top, #ffffff, #000000);
    background-image: -webkit-gradient(linear, center top, center bottom, from(#ffffff), to(#000000));
    background-image: -webkit-linear-gradient(top, #ffffff, #000000);
    background-image: linear-gradient(top, #ffffff, #000000);
}
 
スマホ対応
@media screen and (max-width: 480px){
    
}
@media screen and (max-width: 320px){
    
}
 
時々使うCSS3 end */

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

/* 余白 
*****************************************************/
.pt0 { padding-top: 0!important; }
.pt5 { 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; }
.pt50 { padding-top: 50px!important; }

.pr0 { padding-right: 0!important; }
.pr5 { 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; }
.pr50 { padding-right: 50px!important; }

.pb0 { padding-bottom: 0!important; }
.pb5 { 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; }
.pb50 { padding-bottom: 50px!important; }

.pl0 { padding-left: 0!important; }
.pl5 { 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; }
.pl50 { padding-left: 50px!important; }

.mt0 { margin-top: 0!important; }
.mt5 { 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; }
.mt50 { margin-top: 50px!important; }
.mt60 { margin-top: 60px!important; }

.mr0 { margin-right: 0!important; }
.mr5 { 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; }
.mr50 { margin-right: 50px!important; }

.mb0 { margin-bottom: 0!important; }
.mb5 { 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; }
.mb50 { margin-bottom: 50px!important; }
.mb60 { margin-bottom: 60px!important; }

.ml0 { margin-left: 0!important; }
.ml5 { 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; }
.ml50 { margin-left: 50px!important; }

.w5pc { width: 5%!important; }
.w10pc { width: 10%!important; }
.w15pc { width: 15%!important; }
.w20pc { width: 20%!important; }
.w25pc { width: 25%!important; }
.w30pc { width: 30%!important; }
.w33pc { width: 33%!important; }
.w35pc { width: 35%!important; }
.w40pc { width: 40%!important; }
.w45pc { width: 45%!important; }
.w50pc { width: 50%!important; }
.w55pc { width: 55%!important; }
.w60pc { width: 60%!important; }
.w65pc { width: 65%!important; }
.w70pc { width: 70%!important; }
.w75pc { width: 75%!important; }
.w80pc { width: 80%!important; }
.w85pc { width: 85%!important; }
.w90pc { width: 90%!important; }
.w95pc { width: 95%!important; }
.w100pc { width: 100%!important; }

/*動き*/
.sa {
  opacity: 0;
  transition: all .5s ease;
}

.sa.show {
  opacity: 1;
  transform: none;
  transition-duration:1.5s;
}

.sa--lr {
  transform: translate(-100px, 0);
}

.sa--rl {
  transform: translate(100px, 0);
}

.sa--up {
  transform: translate(0, 50px);
}

.sa--down {
  transform: translate(0, -100px);
}

.sa--scaleUp {
  transform: scale(.5);
}

.sa--scaleDown {
  transform: scale(1.5);
}

.sa--rotateL {
  transform: rotate(180deg);
}

.sa--rotateR {
  transform: rotate(-180deg);
}
	
	



.fontbold{
	font-weight: bold;}


.fz16{
	 font-size:16px;}
.fz18{
	 font-size:18px;}



.pc480{display: block;}
.sp480{display: none;}


.pc768{display: block;}
.sp768{display: none;}

.pc1000{display: block;}
.sp1000{display: none;}


@media screen and (max-width: 1000px){
.pc1000{display: none;}
.sp1000{display: block;}}

@media screen and (max-width: 768px){
.pc768{display: none;}
.sp768{display: block;}}


@media screen and (max-width: 480px){
.pc480{display: none;}
.sp480{display: block;}}



/*webfont
@font-face{
  font-family: 'myFont';
  src: url('../font/myfont.woff') format('woff');
}*/

/*ページTOPへ*/
#pagetop {
 height: auto;
 float: left;
 position: fixed;
 bottom: 0px;
 right: 20px;
 z-index:999;
}

@media screen and (max-width: 480px){
	
	
	#pagetop {
		width:13%;
}
}


/* flex */
.flex{
display:-webkit-box;
display:-moz-box;
display:-ms-flexbox;
display:-webkit-flex;
display:-moz-flex;
display:flex;}

.jcsb{
-webkit-box-pack:justify;
-moz-box-pack:justify;
-webkit-flex-pack:justify;
-moz-flex-pack:justify;
-ms-flex-pack:justify;
-webkit-justify-content:space-between;
-moz-justify-content:space-between;
justify-content:space-between;

}

.jcc{
-webkit-box-pack:center;
-moz-box-pack:center;
-webkit-flex-pack:center;
-moz-flex-pack:center;
-ms-flex-pack:center;
-webkit-justify-content:center;
-moz-justify-content:center;
justify-content:center;
}

.fww{-webkit-box-lines:multiple;
-moz-box-lines:multiple;
-webkit-flex-wrap:wrap;
-moz-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;}

.iac{
-webkit-align-items:center;
-moz-align-items:center;
align-items:center;}
