@charset "utf-8";

/*
 * style.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

/* !HTML5 elements
---------------------------------------------------------- */
header, 
footer, 
nav, 
section, 
aside, 
article {
    display: block;
}

/* !Reseting
---------------------------------------------------------- */
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;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

fieldset {
  border: none;
}

ul,
ol,
li {
	list-style: none;
}

img {
	max-width: 100%;
    height: auto;
	vertical-align: top;
}

table {
	border-collapse: collapse;
}

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

select::-ms-expand {
	display: none;
}

input[type=radio]::-ms-check,
input[type=checkbox]::-ms-check{
	display: none;
}

select,
input[type=radio],
input[type=checkbox],
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=number],
input[type=reset],
input[type=button],
input[type=submit],
textarea {
	appearance: none;
	border-radius: 0;
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

input[type=text]::-ms-clear,
input[type=tel]::-ms-clear,
input[type=number]::-ms-clear{
	display: none;
}

input[type=reset],
input[type=button],
input[type=submit]  {
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	cursor: pointer;
}

*,
*:before,
*::after {
	box-sizing: border-box;
}
/* !Clearfix
---------------------------------------------------------- */
.clearfix {
    display: block;
    min-height: 1%;
}

.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

* html .clearfix {
    height: 1%;
}

/* !Layout
---------------------------------------------------------- */
html {
    overflow-y: scroll;
    font-size: 62.5%;
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 750px) {
    html {
        font-size: calc(100vw / 37.5);
    }
}

body {
    font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 1.6rem;
    -webkit-text-size-adjust: none;
    line-height: 1.5;
    font-weight: normal;
    color: #373737;
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* !Base Fonts -------------------------------------------------------------- */
a {
    color: #373737;
    text-decoration: none;
}

@media screen and (min-width: 750px) {
    a {
        transition: all 0.5s;
    }

    a:hover {
        text-decoration: underline;
    }

    .h-opacity {
        transition: opacity 0.5s ease-out;
    }

    .h-opacity:hover {
        opacity: .7;
        text-decoration: none;
    }

    a[href^="tel:"] {
        cursor: default;
        pointer-events:none;
    }
}

.is-hide {
    display: none;
}

.furisodefair2025 {
    position: relative;
    z-index: 2;
}

@media screen and (min-width: 750px) {
  .furisodefair2025:before {
        background: url(../image/bg.png) center center no-repeat;
        background-size: cover;
        width: 100%;
        height: 100vh;
        position: fixed;
        left: 0;
        top: 0;
        z-index: -1;
        content: '';
    }  
}


/* !wrapper
---------------------------------------------------------- */
.furisodefair2025__wrapper {
    width: 100%;
}

@media screen and (min-width: 960px) {
    .furisodefair2025__wrapper {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        max-width: 145rem;
        margin: 0 auto;
        padding: 0 5rem;
    }
}

/* !header
---------------------------------------------------------- */
.furisodefair2025__header {
    display: none;
}

@media screen and (min-width: 960px) {
    .furisodefair2025__header {
        display: flex;
        align-items: center;
        width: 44.4rem;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .furisodefair2025__header img {
        width: 100%;
    }

    .furisodefair2025__header .furisodefair2025__header-logo {
        position: fixed;
        left: 17.7rem;
        top: 2rem;
        width: 15.3rem;
        z-index: 999;
        font-size: 1px;
        line-height: 1;
    } 

    .furisodefair2025__header .furisodefair2025__header-title {
        width: 42rem;
        font-size: 1px;
        line-height: 1;
    }

    .furisodefair2025__header .furisodefair2025__header-contact {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 3rem;
        margin-top: 3.6rem;
    }

    .furisodefair2025__header .furisodefair2025__header-contact__item {
        display: flex;
        align-items: flex-start;
        gap: 3.4rem;
    }

    .furisodefair2025__header .furisodefair2025__header-contact__item.is-tel:before {
        content: '';
        width: 6.5rem;
        height: 6.5rem;
        background: url(../image/icon_tel.svg) center center no-repeat;
        background-size: 100% 100%;
    }

    .furisodefair2025__header .furisodefair2025__header-contact__item.is-mail:before {
        content: '';
        width: 6.5rem;
        height: 6.5rem;
        background: url(../image/icon_mail.svg) center center no-repeat;
        background-size: 100% 100%;
    }

    .furisodefair2025__header .tel-number {
        flex-grow: 1;
        text-align: center;
        font-size: 5rem;
        line-height: 1.05;
        color: #AF000C;
        font-weight: bold;
    }

    .furisodefair2025__header .tel-number small {
        display: block;
        font-size: 1.4rem;
        font-weight: 500;
        line-height: 1.5;
        margin-top: 1rem;
    }

    .furisodefair2025__header .btn-mail {
        flex-grow: 1;
        background: #AF000C;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 3.45rem;
        font-size: 2.2rem;
        line-height: 1.05;
        color: #fff;
        font-weight: bold;
        height: 6.5rem;
        position: relative;
    }

    .furisodefair2025__header .btn-mail:after {
        width: 3.1rem;
        height: 3.1rem;
        content: '';
        position: absolute;
        right: 2.7rem;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        content: '';
        background: url(../image/icon_links.svg) center center no-repeat;
        background-size: 100% 100%;
    }
}


/* !main Visual
---------------------------------------------------------- */
#main-visual {
    position: relative;
    width: 100%;
}

#main-visual img {
    width: 100%;
}

#main-visual .mv-logo {
    width: 9.3rem;
    position: absolute;
    left: 1.5rem;
    top: 1.4rem;
    z-index: 2;
}

#main-visual .mv-logo img {
    opacity: 0;
}

/* !contents
---------------------------------------------------------- */
#contents {
    width: 100%;
    background: #fff;
}

@media screen and (min-width: 750px) {
    .furisodefair2025__container {
        width: 100%;
        max-width: 37.5rem;
        margin: 0 auto;
        padding-top: 5rem;
    }

    .furisodefair2025__container #contents {
        box-shadow: 0 0 2.4rem 0 rgba(85, 59, 59, 0.5);
    }
}

.inner {
    padding: 0 1.5rem;
}

/* !page Top
---------------------------------------------------------- */
.furisodefair2025__page-top {
    position: fixed;
    right: 5rem;
    bottom: 11.5rem;
    z-index: 99;
    width: 12.5rem;
    display: none;
}

.furisodefair2025__page-top img {
    width: 100%;
}

.furisodefair2025__fixed {
    position: fixed;
    left: 50%;
    transform: translate(-50%,.6rem);
    bottom: 0;
    z-index: 999;
    width: 100%;
    display: none;
}

.furisodefair2025__fixed img {
    width: 100%;
}

@media screen and (min-width: 750px) {
    .furisodefair2025__page-top {
        display: block;
    }

    .furisodefair2025__fixed {
        width: 37.5rem;
    }
}

@media screen and (min-width: 960px) {
    .furisodefair2025__page-top {
        right: 1rem;
    }

    .furisodefair2025__fixed {
        display: none !important;
    }
}

@media screen and (min-width: 1440px) {
    .furisodefair2025__page-top {
        right: 16rem;
    }
}

/* !footer
---------------------------------------------------------- */

#copyright {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: .1em;
    color: #2E2E2E;
    text-align: center;
    padding: 2.4rem 1.5rem;
}




.furisodefair2025__scection01 {
    background: linear-gradient(178.38deg, #dc3839 3.45%, #9C2121 19.3%);
    padding: 4rem 0 8rem;
}

.traffic-list {
    margin-bottom: 4rem;
}

.traffic-list li + li {
    margin-top: .6rem;
}

.traffic-list li {
    background: #122E6C;
    position: relative;
    width: 100%;
    padding: 1.1rem 0;
    text-align: center;
    font-size: 2.6rem;
    line-height: 1.5;
    font-weight: bold;
}

.traffic-list li:before,
.traffic-list li:after {
    width: 100%;
    height: .2rem;
    background: linear-gradient(180deg, #E2CB88 0%, #F2F2D9 50%, #E2CB88 100%);
    position: absolute;
    left: 0;
    z-index: 2;
    content: '';
}

.traffic-list li:before {
    top: .7rem;
}

.traffic-list li:after {
    bottom: .7rem;
}

.traffic-list li span {
    background: linear-gradient(180deg, #E2CB88 0%, #F2F2D9 50%, #E2CB88 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.gallery-list {
    margin-bottom: 4rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.1rem;
}

.gallery-list .is-full {
    grid-column: 1 / 3;
}

.gallery-list img {
    width: 100%;
}

.btn-contact {
    margin-bottom: 4rem;
}

.btn-contact a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 9rem;
    background: linear-gradient(180deg, #FF8C00 0%, #EF8701 100%);
    box-shadow: -.6rem .8rem 1.6rem 0 rgba(67, 39, 4, 0.6);
    position: relative;
    font-size: 3.3rem;
    line-height: 1.05;
    text-shadow: 0 0 .7rem rgba(67, 39, 4, 0.6);
    border-radius: 1rem;
    color: #fff;
    font-weight: bold;
    padding-bottom: .5rem;
    overflow: hidden;
}

.btn-contact a small {
    font-size: 2.7rem;
}

.btn-contact a:before {
    pointer-events: none;
    border: .1rem solid #fff;
    border-radius: 1rem;
    content: '';
    position: absolute;
    left: .4rem;
    right: .4rem;
    top: .4rem;
    bottom: .4rem;
    z-index: 2;
}

.btn-contact a:after {
    animation: 2s 0s shine linear infinite;
    background: linear-gradient(to right, rgba(255,255,255,0) 25%, rgba(255,255,255,.6) 50%, rgba(255, 255, 255, 0) 75%);
    content: '';
    height: 100%;
    left: -100%;
    position: absolute;
    top: 0;
    transform: skewX(-15deg);
    width: 100%;
}

@keyframes shine {
    20% {
        left: 100%;
    }
    100% {
        left: 100%;
    }
}

.btn-contact a span:after {
    position: absolute;
    right: 2.9rem;
    top: 50%;
    transform: translateY(-50%);
    content: '';
    z-index: 2;
    width: 3.3rem;
    height: 3.3rem;
    border-radius: 100%;
    background: url(../image/icon_arrow.svg) center center no-repeat;
    background-size: 100% 100%;
    box-shadow: 0 0 .7rem 0 rgba(67, 39, 4, 0.5);

}

.reason-wrap {
    margin-bottom: 1.2rem;
}

.reason-wrap .reason-title {
    position: relative;
    font-size: 2.8rem;
    line-height: 1.285;
    letter-spacing: .05em;
    text-align: center;
    background: linear-gradient(180deg, #E2CB88 0%, #F2F2D9 50%, #E2CB88 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    margin-bottom: 2.5rem;
}

.reason-wrap .reason-title span {
    display: block;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0;
}

.reason-wrap .reason-title:before,
.reason-wrap .reason-title:after {
    width: 3.6rem;
    height: 3.7rem;
    position: absolute;
    content: '';
    background: url(../image/icon_star.png) center center no-repeat;
    background-size: 100% 100%;
    mix-blend-mode: screen;
}

.reason-wrap .reason-title:before {
    left: -.6rem;
    bottom: -1.2rem;
}

.reason-wrap .reason-title:after {
    right: .3rem;
    top: -1.1rem;
}

.reason-wrap .reason-list li + li {
    margin-top: 1.1rem;
}

.reason-wrap .reason-list li {
    width: 100%;
    height: 10.2rem;
    background: url(../image/bg_reason.png) center center no-repeat;
    background-size: 100% 100%;
    display: flex;
    align-items: center;
    padding-left: 5.7rem;
    position: relative;
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: -.06em;
}

.reason-wrap .reason-list li span {
    color: #CE3925;
    font-size: 2.2rem;
    font-weight: bold;
}

.reason-wrap .reason-list li:before {
    width: 2.2rem;
    height: 2.4rem;
    position: absolute;
    left: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    content: '';
    background: url(../image/icon_reason.svg) center center no-repeat;
    background-size: 100% 100%;
}

.reason-wrap .reason-list li:nth-child(1){
    letter-spacing: 0;
}

.reason-wrap .reason-list li:nth-child(3) span {
    font-size: 2rem;
}

.benefits-area {
    width: calc(100% + 3rem);
    margin: 0 -1.5rem 1.7rem;
}

.benefits-area img {
    width: 100%;
}


.furisodefair2025__scection02 {
    padding: 6rem 0 10.8rem;
    position: relative;
    z-index: 2;
    margin-top: -8.3rem;
    overflow: hidden;
}

.furisodefair2025__scection02:after {
    width: 100%;
    height: 100%;
    background: url(../image/bg_section01.png) center top no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    content: '';
}

.price-item {
    position: relative;
}

.price-item img {
    width: 100%;
}

.price-item.price01 {
    margin-bottom: 1.6rem;
}

.price-item.price01 .price-title {
    position: absolute;
    top: 1.4rem;
    left: 0;
    z-index: 2;
    font-size: 3rem;
    line-height: 1.2;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 0 .72rem rgba(54, 43, 9, 1);
}

.price-item.price01 .price-title span {
    font-size: 3.6rem;
}

.price-item.price02 {
    margin-bottom: 4.25rem;
}

.price-item.price02 .price-title {
    position: absolute;
    top: 3.3rem;
    left: 0;
    z-index: 2;
    font-size: 3.3rem;
    line-height: 1.2;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 0 .72rem rgba(54, 43, 9, 1);
}

.price-item.price02 .price-title span {
    font-size: 2.5rem;
}

.size-wrap {
    width: calc(100% + 3rem);
    margin: 0 -1.5rem;
    padding: 3.2rem 0;
    text-align: center;
    background: url(../image/bg_size.png) center center no-repeat;
    background-size: cover;
    margin-bottom: 4.5rem;
}

.size-wrap .size-list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: .6rem;
    margin-bottom: .8rem;
}

.size-wrap .size-list li {
    background: #fff;
    border: .2rem solid #82732E;
    border-radius: 5rem;
    padding: .6rem 2.8rem;
    font-size: 2.4rem;
    line-height: 1.3;
    font-weight: bold;
    color: #786B31;
}

.size-wrap .size-list li span {
    font-size: 1.7rem;
}

.size-wrap .size-title {
    font-size: 1px;
    line-height: 1;
    width: 19.6rem;
    margin: 0 auto;
    margin-bottom: 1.3rem;
}

.size-wrap .size-text {
    font-size: 1px;
    line-height: 1;
    margin: 0 auto;
    width: 22.6rem;
}

.furisodefair2025__scection03 {
    padding: 4.7rem 0 11.1rem;
    position: relative;
    z-index: 2;
    margin-top: -11.3rem;
    overflow: hidden;
}

.furisodefair2025__scection03:after {
    width: 100%;
    height: 100%;
    background: url(../image/bg_section02.png) center top no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    content: '';
}

.price-item.price03 .price-title {
    position: absolute;
    top: 4.5rem;
    left: 0;
    z-index: 2;
    font-size: 3.6rem;
    line-height: 1;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 0 .72rem rgba(54, 43, 9, 1);
}

.price-item.price03 .price-title span {
    font-size: 2.6rem;
}

.furisodefair2025__scection04 {
    padding: 4.7rem 0 7.4rem;
    position: relative;
    z-index: 2;
    margin-top: -7.8rem;
    overflow: hidden;
}

.furisodefair2025__scection04:after {
    width: 100%;
    height: 100%;
    background: url(../image/bg_section03.png) center top no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    content: '';
}

.price-item.price04 .price-title {
    position: absolute;
    top: 3.3rem;
    left: 0;
    z-index: 2;
    font-size: 3rem;
    line-height: 1.25;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 0 .72rem rgba(54, 43, 9, 1);
}

.furisodefair2025__scection05 {
    padding: 4rem 0;
    border-top: .3rem solid #E2CB88;
    border-bottom: .3rem solid #E2CB88;
}

.heading-large {
    width: 100%;
    position: relative;
    background: #122E6C;
    padding: 2.5rem 1rem 3rem;
    font-size: 2.6rem;
    font-weight: bold;
    line-height: 1.05;
    letter-spacing: .05em;
    text-align: center;
    margin-bottom: 3rem;
}

.heading-large span {
    background: linear-gradient(180deg, #E2CB88 0%, #F2F2D9 50%, #E2CB88 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.heading-large:before,
.heading-large:after {
    width: 100%;
    height: .2rem;
    content: '';
    position: absolute;
    left: 0;
    z-index: 2;
    background: linear-gradient(180deg, #E2CB88 0%, #F2F2D9 50%, #E2CB88 100%);
}

.heading-large:before {
    top: 1.1rem;
}

.heading-large:after {
    bottom: 1.1rem;
}

.photo-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1.1rem;
}

.photo-list li {
    width: calc(50% - .55rem);
}

.photo-list li.large {
    width: calc(65.25% - .55rem);
}

.photo-list li.small {
    width: calc(34.75% - .55rem);
}

.photo-list img {
    width: 100%;
}

.furisodefair2025__scection05 .btn-contact {
    margin: 2.5rem 0 0;
}

.furisodefair2025__scection06 {
    background: linear-gradient(183.85deg, #EF3F3F -13.31%, #9C2121 79.14%);
    padding: 2.5rem 0 4.8rem;
    border-bottom: .3rem solid #E2CB88;
}

.furisodefair2025__scection06 .btn-contact {
    margin: 2.5rem 0 0;
}

.furisodefair2025__access {
    padding: 5.2rem 0;
}

.access-logo {
    text-align: center;
    font-size: 1px;
    line-height: 1;
    margin-bottom: 2.5rem;
}

.access-logo a {
    display: inline-block;
    width: 17.3rem;
}

.access-logo a img {
    width: 100%;
}

.access-address {
    text-align: center;
    margin-bottom: 2.7rem;
    font-size: 1.8rem;
    line-height: 1.05;
    letter-spacing: .05em;
    font-weight: 500;
}

.access-map {
    width: 28.5rem;
    margin: 0 auto;
    aspect-ratio: 57 / 42;
    overflow: hidden;
    margin-bottom: 3.2rem;
}

.access-map iframe {
    width: 100%;
    height: 100%;
}

.access-tel {
    text-align: center;
    margin-bottom: 1.1rem;
}

.access-tel a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 9.3rem;
    background: linear-gradient(163.52deg, #EF3F3F 0.7%, #B82B2B 99.3%);
    border-radius: 5.4rem;
    color: #fff;
    position: relative;
}

.access-tel a:before,
.access-tel a:after {
    width: 2.393rem;
    height: 2.3rem;
    content: '';
    background: url(../image/img_flower01.svg) center center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    z-index: 2;
}

.access-tel a:before {
    left: .7rem;
    top: 0;
}

.access-tel a:after {
    right: 1.036rem;
    bottom: -.242rem;
}

.access-tel .access-tel__number {
    font-size: 3.1rem;
    line-height: 1.05;
    font-weight: bold;
}

.access-tel .access-tel__number small {
    font-size: 2rem;
    font-weight: 500;
    display: inline-block;
    margin-right: 1rem;
}

.access-tel .access-tel__number:after {
    width: .935rem;
    height: .929rem;
    content: '';
    background: url(../image/img_flower02.svg) center center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    z-index: 2;
    right: 3.665rem;
    bottom: 1.171rem;
}

.access-tel .access-tel__notes {
    margin-top: .6rem;
    font-size: 1.2rem;
    line-height: 1.5;
}

.access-notes {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: .05em;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 500;
}


.furisodefair2025__main,
.furisodefair2025__main img {
    width: 100%;
}

.furisodefair2025__form {
    padding: 5rem 0 0;
}

.furisodefair2025__form .heading-large {
    background: #AF000C;
    padding: 3.3rem 1rem;
    margin-bottom: 4rem;
    font-size: 3.3rem;
}

.furisodefair2025__form .heading-large small {
    font-size: 2.7rem;
}


.furisodefair2025__form input[type=text], 
.furisodefair2025__form input[type=email], 
.furisodefair2025__form input[type=tel], 
.furisodefair2025__form textarea {
    border: .1rem solid #af010d;
    background-color: #fff;
    border-radius: .6rem;
    font-size: 1.6rem;
    padding: 0.8em;
    width: 100%;
}

.furisodefair2025__form .form-item {
    margin-top: 3rem;
}

.furisodefair2025__form .form_ttl {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1.625;
    margin-bottom: 1rem;
    font-family: "ten-mincho-text", serif;
    font-weight: 400;
}

.furisodefair2025__form .is-required {
    background-color: #af000c;
    width: 4.5rem;
    height: 2.4rem;
    border-radius: 1.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
}

.furisodefair2025__form .is-any {
    background-color: #4e4e4e;
    width: 4.5rem;
    height: 2.4rem;
    border-radius: 1.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
}

.furisodefair2025__form .form-choice_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 1.6rem;
    font-size: 1.4rem;
}

.furisodefair2025__form .form-choice_wrap input {
    display: none;
}

.furisodefair2025__form .form-choice_wrap .mwform-radio-field-text {
    display: grid;
    grid-template-columns: 1.6rem 1fr;
    gap: .7rem;
    line-height: 1;
}

.furisodefair2025__form .form-choice_wrap .mwform-radio-field-text::before {
    content: "";
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    border: .2rem solid #af010d;
    background: #fff;
}

.furisodefair2025__form .form-choice_wrap input:checked + .mwform-radio-field-text::before {
    background: radial-gradient(#af010d 50%, #fff 50%);
}

.furisodefair2025__form .form-notes {
    line-height: 2;
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    margin: 4rem 0 1rem;
    font-family: "ten-mincho-text", serif;
    font-weight: 400;
}
 
.furisodefair2025__form .form-privacy_box {
    border: .1rem solid #ddd;
    background-color: #fff;
    padding: .6rem;
    height: 18rem;
    overflow: auto;
    resize: vertical;
}

.furisodefair2025__form .form-privacy_box h2,
.furisodefair2025__form .form-privacy_box h3 {
    font-size: 1.4rem;
    line-height: 1em;
    margin: 2rem 0 1rem;
    font-weight: 500;
}

.furisodefair2025__form .form-privacy_box p {
    font-size: 1.2rem;
    line-height: 1.625;
    text-align: justify;
    margin-bottom: 1rem;
}

.furisodefair2025__form .form-privacy_list {
    margin-bottom: 1rem;
}

.furisodefair2025__form .form-privacy_box li {
    font-size: 1.2rem;
    line-height: 1.625;
}

.furisodefair2025__form .form-privacy_box li > ol {
    list-style-type: decimal;
    padding: 0 0 0 2.4rem;
}

.furisodefair2025__form .form-privacy_box li > ol.is-decimal > li {
    list-style-type: decimal;
}

.furisodefair2025__form .form-agree_wrap {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin: 4rem 0;
    font-family: "ten-mincho-text", serif;
    font-weight: 400;
}

.furisodefair2025__form .form-agree_wrap .mwform-checkbox-field label {
    margin-bottom: 0;
}

.furisodefair2025__form .form-agree_wrap .mwform-checkbox-field input {
    display: none;
}

.furisodefair2025__form .form-agree_wrap .mwform-checkbox-field-text {
    font-size: 1.6rem;
    display: grid;
    grid-template-columns: 1.9rem 1fr;
    gap: .7rem;
    line-height: 1;
    align-items: center;
}

.furisodefair2025__form .form-agree_wrap .mwform-checkbox-field-text::before {
    content: "";
    width: 100%;
    aspect-ratio: 1 / 1;
    border: .1rem solid #0a0a09;
    background: #fff;
    grid-area: 1 / 1 / 2 / 2;
}

.furisodefair2025__form .form-agree_wrap .mwform-checkbox-field input:checked + .mwform-checkbox-field-text::after {
    content: "";
    width: .64rem;
    height: 1.6rem;
    display: block;
    margin-inline: auto .64rem;
    border-right: .2rem solid #af010d;
    border-bottom: .4rem solid #af010d;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    grid-area: 1 / 1 / 2 / 2;
}

.furisodefair2025__form .form-btn_wrap input[type=submit] {
    font-size: 1.6rem;
    color: #fff;
    background-color: #af000c;
    width: 23rem;
    height: 5.4rem;
    border-radius: 2.7rem;
    display: grid;
    align-items: center;
    border: none;
    margin-inline: auto;
    transition: all 0.2s;
    font-family: "ten-mincho-text", serif;
    font-weight: 400;
}

.furisodefair2025__form .mw_wp_form .horizontal-item + .horizontal-item {
    margin: 0;
}

.furisodefair2025__form .form-date {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
}

.furisodefair2025__form .form-date .form-date__item {
    /*width: calc((100% - 1rem) / 3);*/
    width: calc((100% - 1rem) / 2);
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}

.furisodefair2025__form .form-date .form-date__item select {
    width: calc(100% - 1.5em);
    border: .1rem solid #af010d;
    background: url(../image/icon_select.svg) right 1rem center no-repeat #fff;
    background-size: 1rem auto;
    border-radius: .6rem;
    font-size: 1.6rem;
    padding: 0.8em;
}

.furisodefair2025__form .form-date .form-date__item .error {
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translateY(100%);
}

.grecaptcha-badge {
    bottom: 8.4rem !important;
    z-index: 11;
}

@media screen and (min-width: 750px) {
    .grecaptcha-badge {
        bottom: 1.4rem !important;
    }
}
