/**
 * Peer Smile Child
 * Foundation
 */

:root {
	--ps-color-primary: #f28a24;
	--ps-color-primary-dark: #dc7111;
	--ps-color-primary-light: #fff3e5;
	--ps-color-secondary: #69b8df;
	--ps-color-secondary-light: #edf8fd;
	--ps-color-accent: #f7c84b;
	--ps-color-green: #87bd63;
	--ps-color-text: #332d29;
	--ps-color-text-light: #6f6862;
	--ps-color-border: #eadfd5;
	--ps-color-background: #fffaf5;
	--ps-color-white: #ffffff;

	--ps-font-base: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
	--ps-font-heading: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
	--ps-font-english: Arial, sans-serif;

	--ps-content-width: 1200px;
	--ps-content-narrow: 820px;

	--ps-radius-sm: 10px;
	--ps-radius-md: 20px;
	--ps-radius-lg: 32px;

	--ps-shadow-card: 0 10px 30px rgba(51, 45, 41, 0.08);

	--ps-space-1: 8px;
	--ps-space-2: 16px;
	--ps-space-3: 24px;
	--ps-space-4: 32px;
	--ps-space-5: 48px;
	--ps-space-6: 64px;
	--ps-space-7: 80px;
}

html {
	box-sizing: border-box;
	scroll-behavior: smooth;
	font-size: 100%;
	background: #fff;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body,
body.peer-smile-site {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--ps-color-text) !important;
	background: #fff !important;
	font-family: var(--ps-font-base) !important;
	font-size: 16px;
	line-height: 1.8;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

#page,
.site,
.site-content,
.site-main {
	background: #fff;
}

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

a {
	color: inherit;
}

button,
input,
select,
textarea {
	font: inherit;
}

h1,
h2,
h3,
h4,
p {
	word-break: normal;
	overflow-wrap: break-word;
}

.u-pc {
	display: inline;
}


/* v2.0.0 visual QA foundations */
::selection {
	background: rgba(242, 138, 36, .22);
	color: var(--ps-color-text);
}

html {
	scroll-padding-top: 90px;
}

body.peer-smile-site {
	min-width: 320px;
}

a,
button {
	-webkit-tap-highlight-color: transparent;
}

a:focus-visible,
button:focus-visible {
	outline: 3px solid rgba(105, 184, 223, .55);
	outline-offset: 3px;
}

.entry-content > *:first-child {
	margin-top: 0;
}

.entry-content > *:last-child {
	margin-bottom: 0;
}
