@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 400;
	src: url("https://safekidsjapan.org/font/NotoSansJP-Regular.ttf") format("TrueType");
}

@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 500;
	src: url("https://safekidsjapan.org/font/NotoSansJP-Medium.ttf") format("TrueType");
}

@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 700;
	src: url("https://safekidsjapan.org/font/NotoSansJP-Bold.ttf") format("TrueType");
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-text-size-adjust: none;
}
html {
    color: #000000;
    font-size: 62.5%;
    line-height: 1.8;
    font-family: 'Noto Sans JP', sans-serif;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    background-color: #FFFFFF;
}
body {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    font-size: 1.4rem;
	letter-spacing:0.015em;
    height: fit-content;
}

input[type="text"], input[type="url"], input[type="email"], input[type="tel"] {
    max-width: none;
    width: 100%;
}

.container {
    max-width: none;
    border: none;
    padding: 0;
    border-radius: 0;
    min-height: fit-content !important;
}

.form-column {
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid #d8d8d8;
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    align-items: start;
    gap: 5%;
}

.form-column-new-page {
display: none;
}

.form-column-radio {
    gap: 3px 5%;
}

.label {
    color: #008bd5;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    margin-bottom: 15px;
    gap: 15px;
    font-weight: 500;
    font-size: 1.6rem;
}

input {
    width: 100%;
}

textarea {
    width: 100%;
    resize: vertical;
}

input[type="text"], input[type="url"], input[type="email"], input[type="tel"], textarea {
    padding: 7px 10px 7px;
    border: none;
    outline: 1px solid #bbbbbb;
    outline-offset: -2px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 5px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 0;
    margin-right: auto;
}

input[type="date"]#a8891bd8-b09a-4897-b05c-67cbdc3e94fc {
    padding: 7px 10px 7px;
    border: none;
    outline: 1px solid #bbbbbb;
    outline-offset: -2px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 15em;
    margin-left: 0;
    margin-right: auto;
position: relative;
}

input[type=date]#a8891bd8-b09a-4897-b05c-67cbdc3e94fc::-webkit-calendar-picker-indicator {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 1;
  background-size: 1.4em;
  background-position: center right 1.5em;
}

select {
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: none;
    outline: 1px solid #bbbbbb;
    outline-offset: -2px;
    border-radius: 5px;
    padding: 11px 40px 11px 10px;
    cursor: pointer;
    position: relative;
    background-image: url(https://safekidsjapan.org/images/skjyaji02b.svg);
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-color: #ffffff;
}

select::after {
	content: "";
	display: block;
	position: absolute;
	width: 23px;
	height: 90px;
    transform: rotate(30deg);
}

input[type=radio] {
  inline-size: 1.8rem;
  block-size: 1.8rem;
}

input[type=file]::file-selector-button {
  font-size: 1.6rem;
  color: white;
  background: #666666;
  border: 0;
  border-radius: 10em;
  padding: 8px 16px;
  text-align: center;
  margin-right: 10px;
}

.input-group {
    display: flex;
    gap: 0;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.form-column-b7e0e5bc-c7bd-45d4-ba23-eea2ed830032 .input-group .option {
    width: 50%;
}

.form-column-2e21ad7e-94f5-4feb-b3b5-7d446840c4b2 .input-group .option {
    width: 50%;
}

.form-column > fieldset {
    display: flex;
    border: none;
    margin: 0px;
    padding: 0px;
    display: contents;
}

.description-block {
  width: 100%;
  margin-left: auto;
  margin-right: 0;
  margin-top: 20px;
}

legend .badge-required {
    background-color: #e62a40;
    color: #ffffff;
    height: 26px;
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    border-radius: 0;
}

.badge-required {
    background-color: #e62a40;
    color: #ffffff;
    height: 26px;
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
}
.badge {
    font-size: 1.6rem;
    margin-left: 0;
    font-weight: normal;
}

legend.label {
    padding: 0;
}

.option {
    display: flex;
    flex-wrap: wrap;
    flex-flow: row;
    align-items: center;
    gap: 10px;
}

.button-group {
	margin-left: auto;
    margin-right: auto;
    width: fit-content;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.help-block {
    width: 100%;
    text-align: center;
}

.button-group button {
	display: flex;
	align-items: center;
	background-color: #008bd5;
	color: #ffffff;
	border-radius: 30px;
	padding: 0 20px 0 30px;
	height: 60px;
	width: 270px;
    position: relative;
    border: none;
}

.button-group button:hover {
	color: #ffffff;
}

.button-group button::before {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
    background-image: url(https://safekidsjapan.org/images/skjyaji01b.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    z-index: 1;
}

.button-group button:hover::before {
    animation: link01a 0.15s linear 2 alternate forwards;
}

@keyframes link01a {
    from {
        right: 20px;
    }

    to {
        right: 10px;
    }
}

.button-group .help-block {
    margin-top: 0;
}

.restriction-max-file-size {
    margin-left: 0;
    margin-right: auto;
}

.preview-block {
    width: 100%;
    text-align: left;
}

.form-column-recaptcha > div {
    margin-left: auto;
    margin-right: auto;
}

.content-confirmation .description-block {
    display: none;
}

.message-block-confirmation {
    margin-bottom: 50px;
    color: #000000;
}

.button[disabled] {
    background-color: #ccc;
}

.button.button-next_page > .icon:first-child {
    display: none;
}

.form-column-2e10f2e8-b45c-44d3-b3e5-2eb46bbe5dd2 .input-group {
    order: 3;
    flex-flow: column;
    gap: 15px;
}

.form-column-2e10f2e8-b45c-44d3-b3e5-2eb46bbe5dd2 .description-block {
    order: 2;
    margin-top: 0;
}

.form-column-2901f7db-c330-40e0-8c9f-adcaf0118a90 .input-group {
    order: 3;
    flex-flow: column;
    gap: 15px;
}

.form-column-2901f7db-c330-40e0-8c9f-adcaf0118a90 .description-block {
    order: 2;
    margin-top: 0;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 {
    border-bottom: none;
    padding-bottom: 15px;
    margin-bottom: 0;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 label {
    margin-bottom: 18px;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 input {
    order: 3;
    margin-left: auto;
    margin-right: 0;
    margin-top: 10px;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 .description-block {
    order: 2;
    margin-top: 0;
}

.form-column-7eac9aa7-c74f-46a0-9211-255921a7581d {
    border-bottom: none;
    padding-bottom: 15px;
    margin-bottom: 0;
}

.form-column-7eac9aa7-c74f-46a0-9211-255921a7581d label {
    opacity: 0;
    margin-bottom: 0;
    height: 0;
}

.form-column-95ac3d82-9129-4e81-8dcf-dc8f5d4d2c58 label {
    opacity: 0;
    margin-bottom: 0;
    height: 0;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 .restriction-max-file-size {
    display: none;
}


@media only screen and (min-width:768px) {

body {
    font-size: 1.6rem;
}

input[type="text"], input[type="url"], input[type="email"], input[type="tel"] {
    width: 65%;
}

select {
    margin-left: 0;
    margin-right: auto;
    width: 15em;
    padding: 10px 40px 10px 10px;
}

.form-column {
    flex-flow: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.form-column-radio {
    gap: 15px 5%;
}

input {
    width: 65%;
}

textarea {
    width: 65%;
}

.input-group {
    margin-left: auto;
    margin-right: 0;
    width: 65%;
    gap: 80px;
}

.description-block {
  width: 65%;
}

.link01 {
	min-width: 270px;
}

.label {
    width: 30%;
    margin-bottom: 0;
    font-size: 1.8rem;
}

.preview-block {
    width: 65%;
}

input[type=file]::file-selector-button {
  margin-right: 15px;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 input {
    margin-top: 10px;
}

.form-column-b7e0e5bc-c7bd-45d4-ba23-eea2ed830032 .input-group .option {
    width: fit-content;
}

.form-column-2e21ad7e-94f5-4feb-b3b5-7d446840c4b2 .input-group .option {
    width: fit-content;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 {
    margin-bottom: 15px;
    padding-bottom: 0;
}

.form-column-7eac9aa7-c74f-46a0-9211-255921a7581d {
    margin-bottom: 15px;
    padding-bottom: 0;
}

.form-column-63a25b70-9c24-4039-84bb-d8a02a970159 label {
    margin-bottom: 15px;
}

}