@charset "utf-8";

/* regular - 400 */
@font-face {
  font-family: 'Mplus 1p';
  font-weight: 400;
  src: url('../font/mplus-1p/mplus-1p-regular.eot');
  src: url('../font/mplus-1p/mplus-1p-regular.eot?#iefix') format('embedded-opentype'),
    url('../font/mplus-1p/mplus-1p-regular.woff') format('woff'),
    url('../font/mplus-1p/mplus-1p-regular.ttf') format('truetype');
}

/* medium - 500 */
@font-face {
  font-family: 'Mplus 1p';
  font-weight: 500;
  src: url('../font/mplus-1p/mplus-1p-medium.eot');
  src: url('../font/mplus-1p/mplus-1p-medium.eot?#iefix') format('embedded-opentype'),
    url('../font/mplus-1p/mplus-1p-medium.woff') format('woff'),
    url('../font/mplus-1p/mplus-1p-medium.ttf') format('truetype');
}

/* bold - 700 */
@font-face {
  font-family: 'Mplus 1p';
  font-weight: 700;
  src: url('../font/mplus-1p/mplus-1p-bold.eot');
  src: url('../font/mplus-1p/mplus-1p-bold.eot?#iefix') format('embedded-opentype'),
    url('../font/mplus-1p/mplus-1p-bold.woff') format('woff'),
    url('../font/mplus-1p/mplus-1p-bold.ttf') format('truetype');
}

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;
background:transparent;
}

html,body {
width:100%;
font-size:13px;
font-family: 'Mplus 1p','Meiryo',"ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Osaka", sans-serif;
font-weight: 400;
line-height: 1.5em;
text-size-adjust: 100%;
font-smoothing:antialiased;
-moz-osx-font-smoothing: grayscale;
background-color: rgba(246,244,241,1.0);
color: rgb(49,42,38);
overflow-x: hidden;
-webkit-text-size-adjust: 100%;
}
@media screen and (max-width:900px){ html,body {font-size: 12px;}}
a {
    outline:none;
    text-decoration: none;
    transition: all 0.2s ease 0s;
    cursor: pointer;
}

a:link { color: inherit;}
a:visited { color: inherit;}
a:hover { color: tomato;}

img { border: 0; vertical-align: bottom;}/*画像の下にできる余白を消す*/

a img {cursor: pointer;}
a img:hover {opacity: 0.8; transition-duration: 0.3s;}

p { padding-bottom:1em;}

.justify {text-align: justify;}

h1,h2,h3,h4,h5,h6 {font-size:inherit; font-family:inherit ; font-weight:inherit; line-height: 1.2em; }

ul,dl,ol { text-indent: 0;}
li { list-style: none;}

address,caption,cite,code,dfn,em,strong,th,var { }

sup { vertical-align: text-top;}
sub { vertical-align: -5%;}

input,textarea,select { font-size: inherit; font-weight:400;}
* html input,* html textarea,* html select { font-size: 100%;}
*:first-child+html+input,*:first-child html+textarea,*:first-child+html select { font-size: 100%;}

table { border-collapse: collapse; border-spacing: 0; font-size: inherit;}
th,td { text-align: left; vertical-align: top;}
caption { text-align: left;}

pre,code,kbd,samp,tt { font-family: monospace;}
* html pre,* html code,* html kbd,* html samp,* html tt {font-size: 100%; line-height: 100%;}
*:first-child+html pre,*:first-child html+code,*:first-child html+kbd,*:first-child+html+samp,*:first-child+html tt {font-size: 108%; line-height: 100%;}

input,select,textarea { font-size: 100%; }

button{
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}

::selection { background: rgba(155,155,155,0.5);}
::-moz-selection { background: rgba(155,155,155,0.5);} /*Firefox/

.clear { clear:both;}

/*** ===== common animation ===== ***/
.inview {
opacity: 0;
transform: translate3d(0, 35px, 0);
}
.fadeInUp {
  animation-name: fadeInUp;
  animation-duration: 0.5s;
  animation-fill-mode: both;
}
@keyframes fadeInUp {
  0% { opacity: 0; transform: translate3d(0, 35px, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_logo {
opacity: 0;
transform: translate3d(0, -20px, 0);
}
.fadeInDown {
  animation-name: fadeInDown;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadeInDown {
  0% { opacity: 0; transform: translate3d(0, -20px, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_left {
opacity: 0;
transform: translate3d(-35px, 0, 0);
}
.fadeInLeft {
  animation-name: fadeInLeft;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadeInLeft {
  0% { opacity: 0; transform: translate3d(-35px, 0, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_right {
opacity: 0;
transform: translate3d(35px, 0, 0);
}
.fadeInRight {
  animation-name: fadeInRight;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadeInRight {
  0% { opacity: 0; transform: translate3d(35px, 0, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_fade {
opacity: 0;
}
.fadeInFade {
  animation-name: fadeInFade;
  animation-duration: 2s;
  animation-fill-mode: both;
}
@keyframes fadeInFade {
  0% { opacity: 0;}
  100% { opacity: 1;}
}

.delay_01 {animation-delay: 0.1s;}
.delay_02 {animation-delay: 0.2s;}
.delay_03 {animation-delay: 0.3s;}
.delay_04 {animation-delay: 0.4s;}
.delay_05 {animation-delay: 0.5s;}
.delay_06 {animation-delay: 0.6s;}
.delay_07 {animation-delay: 0.7s;}
.delay_08 {animation-delay: 0.8s;}
.delay_09 {animation-delay: 0.9s;}
.delay_10 {animation-delay: 1.0s;}

/*** ===== common spacer & line ===== ***/
.solid_line {width:100%; height:1px; margin:5px 0 15px 0;}

/*** ===== common background color ===== ***/
.bg_white {background-color: rgba(246,244,241,1.0);}
.bg_cream {background-color: rgba(215,206,199,1.0);}
.bg_red {background-color: rgba(160,20,30,1.0);}
.bg_green {background-color: rgba(67,88,71,1.0);}
.bg_yellow {background-color: rgba(249,190,0,1.0);}
.bg_brown {background-color: rgba(49,42,38,1.0);}

.red {color: rgba(160,20,30,1.0);}

/*** ===== common margin ===== ***/
.margin_top_20px { margin-top:20px !important;}
.margin_top_30px { margin-top:30px !important;}
.margin_top_50px { margin-top:50px !important;}
.margin_top_100px { margin-top:100px !important;}
.margin_top_25vh { margin-top:25vh !important;}
.margin_bottom_20px {margin-bottom:20px !important;}
.margin_bottom_30px {margin-bottom:30px !important;}
.margin_bottom_50px {margin-bottom:50px !important;}
.margin_bottom_100px {margin-bottom:100px !important;}
.margin_bottom_25vh {margin-bottom:25vh !important;}
.padding_top_1em { padding-top:1em !important;}
.padding_top_20px { padding-top:20px !important;}
.padding_top_30px { padding-top:30px !important;}
.padding_top_50px { padding-top:50px !important;}
.padding_bottom_20px { padding-bottom:20px !important;}
.padding_bottom_30px { padding-bottom:30px !important;}
.padding_bottom_50px { padding-bottom:50px !important;}
.padding_bottom_100px { padding-bottom:100px !important;}
.padding_bottom_200px { padding-bottom:200px !important;}
.padding_bottom_300px { padding-bottom:300px !important;}
.padding_bottom_400px { padding-bottom:400px !important;}

/*** ===== common font ===== ***/
.font_50 {font-size:50%;}
.font_80 {font-size:80%;}
.font_120 {font-size:120%;}
.font_150 {font-size:150%;}
.font_200 {font-size:200%;}
.bold {font-weight:500;}

/*** ===== text color ===== ***/
.text_white {color:rgba(246,244,241,1.0);}
.text_red {color:rgba(160,20,30,1.0);}