@charset "UTF-8";

/* reset
----------------------------------------------------------*/

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,strong,sub,sup,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: inherit;
    font-size: 100%;
    vertical-align: baseline;
	overflow: visible;
}
html {
    line-height: 1;
}
ol,
ul {
    list-style: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption,
th,
td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
q,
blockquote {
    quotes: none;
}
q:before,
q:after,
blockquote:before,
blockquote:after {
    content: "";
    content: none;
}
a:focus-within {
    outline: auto;
    outline: auto -webkit-focus-ring-color; /* for Chrome */
} 
/* *:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #333;
} */
a img {
    border: none;
}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary {
    display: block;
}
/* button:focus {
    outline: none;
} */
button {
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
}
input[type="text"],
input[type="search"],
input[type="submit"],
input[type="reset"] {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
    outline: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
textarea {
    -webkit-appearance: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
input[type="submit"],
input[type="reset"] {
    cursor: pointer;
}
/* base
----------------------------------------------------------*/

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    -ms-interpolation-mode: bicubic;
}
svg {	
    width: 100%;	
    height: auto;	
    vertical-align: top;
}
a {
    text-decoration: none;
    color: inherit;
    outline: none; /* IE8 */
	transition: all 0.3s;
}

a:hover {
    text-decoration: none;
}
@media (hover: hover) {
    a:hover {
        opacity: 0.5;
    }
}
/* a.mouse-over:hover img {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0.7;
} */
a img {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}


/* base PC
----------------------------------------------------------*/
.pc-mode-01 {
    display: block !important;
}
.pc-mode-02 {
    display: inline !important;
}
.pc-mode-03 {
    display: inline-block !important;
}
.pc-mode-05 {
    display: flex !important;
}
.sp-mode-01 {
    display: none !important;
}
.sp-mode-02 {
    display: none !important;
}
.sp-mode-03 {
    display: none !important;
}
.sp-mode-04 {
    display: none !important;
}
.sp-mode-05 {
    display: none !important;
}

/* base SP
----------------------------------------------------------*/
@media only screen and (max-width: 768px) {
    .pc-mode-01 {
        display: none !important;
    }
    .pc-mode-02 {
        display: none !important;
    }
    .pc-mode-03 {
        display: none !important;
    }
    .pc-mode-05 {
        display: none !important;
    }
    .sp-mode-01 {
        display: block !important;
    }
    .sp-mode-02 {
        display: inline !important;
    }
    .sp-mode-03 {
        display: inline-block !important;
    }
    .sp-mode-04 {
        display: table !important;
    }
    .sp-mode-05 {
        display: flex !important;
    }
}


/*** other ***/
.font-wide-01 {
    letter-spacing: 1px;
}
.font-wide-02 {
    letter-spacing: 2px;
}
.font-wide-03 {
    letter-spacing: 3px;
}
.font-narrow-01 {
    letter-spacing: -1px;
}
.font-narrow-02 {
    letter-spacing: -2px;
}
.font-narrow-03 {
    letter-spacing: -3px;
}



.clearfix:after {
    content: " ";
    display: block;
    clear: both;
}
/* floatのheight弊害解消 */
.dr-K:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	overflow: auto;
	visibility: hidden;
}
.dr-K {
	display: inline-block;
}
/* Hides from IE-mac \*/
* html .dr-K {
	height: 1%;
}
.dr-K {
	display: block;
}
/* End hide from IE-mac */
/* floatのheight弊害解消 */





