@charset "utf-8";
/*@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Noto+Sans+JP:wght@300;400;500;700;900&family=Roboto:wght@300;400;500;700;900&display=swap');*/
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
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, font, 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 {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	 font-family: 'Noto Sans JP', sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
}
a,
a:link {
	color: #333;
	text-decoration: none;
}
a:visited {
	color: #333;
}
a:hover {
	color: #333;
    opacity: 0.7;
}
a:active {
	color: #333;
}
.en01 {
    font-family: 'Roboto', sans-serif;
}
.en02 {
    font-family: 'Bebas Neue', cursive;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	color: #333;
	font-size: 1.04vw;
    font-weight: 400;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}
#container {
	text-align: left;
    position: relative;
}
#main {
    line-height: 1.8;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
.pad {
    display: none !important;
}
@media all and (min-width: 561px) and (max-width: 1024px) {
    body {
        font-size: 1.6vw;
    }
    .pad {
        display: block !important;
    }
    .pc {
        display: none !important;
    }
    a:hover,
	a:hover img {
		opacity: 1 !important;
	}
    #main {
        line-height: 1.72;
    }
}
@media all and (min-width: 561px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 560px) {
	body {
		min-width: inherit;
		font-size: 1.2rem;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
    .pcPad {
        display: none !important;
    }
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
    #main {
        line-height: 1.8;
    }
    
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1000;
}
#gHeader .hBox {
    margin: 0 1vw 0 1.7vw;
}
#gHeader h1 {
    padding-top: 1.7vw;
    float: left;
    font-size: 0.8vw;
    font-weight: 400;
    letter-spacing: 0.13em;
}
#gHeader h1 img {
    margin: -0.3vw 2.05vw 0 0;
    display: inline-block;
    width: 15.4%;
    vertical-align: middle;
}
#gHeader .contact {
    width: 12.7vw;
    position: absolute;
    right: 0.02vw;
    top: 1.15vw;
    z-index: 1000;
}
#gHeader .contact.fix {
    position: fixed;
}
@media all and (min-width: 561px) and (max-width: 1024px) {
    #gHeader .hBox {
        padding-left: 1.5vw;
    }
    #gHeader h1 {
        padding-top: 2.8vw;
        font-size: 1.35vw;
        letter-spacing: 0.07em;
    }
    #gHeader h1 img {
        margin: 0 2.2vw 0 0;
        width: 17.4%;
    }
    #gHeader .contact {
        width: 18.7vw;
        right: 0.8vw;
        top: 0.8vw;
    }
}
@media all and (max-width: 560px) {
    #gHeader .hBox {
        margin: 0;
        padding: 15px;
    }
    #gHeader h1 {
        padding-top: 0;
        float: none;
        width: 84%;
        font-size: 0.8rem;
    }
    #gHeader h1 img {
        margin: 0 0 0;
        width: 107px;
        display: block;
        float: left;
    }
    #gHeader h1 .txt {
        display: block;
        padding-left: 126px;
    }
    #gHeader .contact {
        width: 100%;
        right: auto;
        display: none;
        top: auto;
        left: 0;
        bottom: 0;
        text-align: center;
        background-color: #ff4181;
    }
    #gHeader .contact.fix {
        display: block;
    }
    #gHeader .contact a {
        padding: 20px 10px 15px;
        display: block;
    }
    #gHeader .contact img {
        max-width: 196px;
    }
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
    padding: 3.4vw 0 3.3vw;
    color: #5C5C5C;
    font-size: 0.85vw;
    font-weight: 300;
    text-align: center;
    letter-spacing: 0.08em;
}
@media all and (min-width: 561px) and (max-width: 1024px) {
    #gFooter {
        padding: 6.5vw 0;
        font-size: 1.5vw;
        letter-spacing: 0.1em;
    }
}
@media all and (max-width: 560px) {
      #gFooter {
        padding: 35px 0;
        font-size: 0.8rem;
    }
}