@charset "utf-8";
@media only screen and (min-width : 769px ){
/* PC時に表示 */
.pc { display: block !important; }
.sp { display: none !important; }
	.tab { display: none !important; }}
li{
	list-style: none;
}

/* ================================================ */
/* === fv ========================================= */
/* ================================================ */
section#reserve_fv {
    width: 100%;
    max-width: 1200px;
    margin: 15rem auto 0rem auto;
}
.reserve_h1 {
    width: 100%;
    margin: 30px auto;
    padding: 0 0 30px;
    text-align: center;
    font-size: 40px;
    color: #10589e;
    border-bottom: 1px solid #10589e;
}

/* ================================================ */
/* === reserve_content ============================ */
/* ================================================ */
section#reserve_content {
    width: 100%;
    max-width: 950px;
    margin: 60px auto;
}
.reserve_cont h2 {
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    padding-bottom: 30px;
}
.reserve_tel {
    width: 100%;
    margin: 20px 0 0;
    background: #f2f4fa;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-evenly;
    padding: 30px 0;
}
.reserve_tel p {
    font-size: 24px;
    color: #10589e;
    font-weight: 600;
    line-height: 1.5;
}
.reserve_tel img {
    width: 100%;
    max-width: 355px;
}
.reserve_step {
    margin: 60px 0 0;
}
.reserve_step > p {
    text-align: center;
    font-size: 20px;
    color: #10589e;
    font-weight: 600;
}
.reserve_step > img {
    margin: 20px auto;
    display: block;
}
p.step_cont_ttl {
    font-size: 1.5rem;
    color: #10589e;
    font-weight: 500;
    border-bottom: 1px solid #10589e;
    padding-bottom: 5px;
    margin-bottom: 5px;
}
p.step_cont_ttl span {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-right: 10px;
    padding: 0px 8px 0px 8px;
    font-size: 14px;
    color: #fff;
    text-align: center;
    background: #10589e;
}
.step_cont p:nth-child(3) {
    margin-top: 40px;
}


/* ================================================ */
/* === reserve_detail ============================= */
/* ================================================ */
section#reserve_detail {
    width: 100%;
    max-width: 950px;
    margin: 60px auto;
}
.reserve_detail_cont h2 {
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    padding-bottom: 30px;
}
.reserve_detail_cont > p {
    padding-left: 1em;
    text-indent: -1em;
}
.reserve_detail_cont.completion > p {
    padding-left: 0;
    text-indent: 0;
}
.reserve_form_step {
    margin: 30px 0;
}


/* ================================================ */
/* === reserve_form =============================== */
/* ================================================ */
section#reserve_form {
    width: 100%;
    max-width: 950px;
    margin: 60px auto;
}
div#form_cont {
    width: 100%;
    max-width: 950px;
    padding: 30px;
    background: #f2f4fa;
}
p.form_attention {
    font-weight: 500;
    padding-bottom: 30px;
}
/*form*/
.form_title {
    position: relative;
    font-size: 20px;
    font-weight: 600;
    color: #10589e;
    border-bottom: 1px solid #10589e;
    padding: 0 0 15px;
    margin-bottom: 10px;
}
.form_title:before {
    content: "■";
}
.form_details {
    margin: 20px 0 40px;
}
.form_details.raiin:not(:last-child) {
    margin: 20px 0;
}
ul#sinryouGroup {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}
ul#sinryouGroup li {
    width: calc(100% / 5);
    margin-bottom: 10px;
}
input[type="text"] {
    width: 100%;
    max-width: 400px;
    padding: 8px;
    border: 1px solid #333;
}
span.form_details_text {
    font-size: 12px;
    padding-left: 10px;
}
.form_details.select {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
}
.form_details.select > * + * {
    margin-left: 30px;
}
.form_details.select > div {
    position: relative;
}
.form_details.select > div:before, .form_details.select > div:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
}
.form_details.select > div:before {/*---選択＞-----*/
    right: 30px;
    width: 1px;
    height: 90%;
    border-left: 1px solid #fff;
}

select {
    width: 220px;
    padding: 8px;
    border: 1px solid #333;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
textarea {
    width: 100%;
    height: 240px;
    border: 1px solid #333;
    padding: 7px;
}
div#btn_confirmation {
    margin: 60px auto;
}
div#btn_confirmation div {
    position: relative;
}
button[type="submit"].btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 400px;
    padding: 26px 0;
    border: none;
    background: #019797;
    color: #fff;
    text-align: center;
    margin: 0 auto;
    font-size: 20px;
}
div#btn_confirmation div:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 6px solid #fff;
}
button[type="submit"].btn:hover {
    opacity: 0.7;
}

/* ================================================ */
/* === reserve_form_confirmation ================== */
/* ================================================ */
section#reserve_form_confirmation {
    width: 100%;
    max-width: 950px;
    margin: 60px auto;
}
#reserve_form_confirmation .form_in {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 20px 0;
    padding: 10px 0 30px;
    border-bottom: 1px solid #10589e;
}
#reserve_form_confirmation .form_in:first-of-type {
    border-top: 1px solid #10589e;
    padding-top: 30px;
    margin-top: 10px;
}
#reserve_form_confirmation .form_title {
    font-size: 16px;
    font-weight: 500;
    width: 100%;
    max-width: 20%;
    border: none;
    margin: 0;
    padding: 0;
}
#reserve_form_confirmation .form_confirmation {
    font-size: 16px;
    width: 100%;
    max-width: 80%;
}
div#btn_completion {
    display: flex;
    justify-content: center;
    margin: 60px auto;
}
div#btn_completion div {
    position: relative;
}
div#btn_completion div + div {
    margin-left: 40px;
}
div#btn_completion div:first-child button[type="submit"].btn {
    background: #0a184a;
    width: 300px;
}
div#btn_completion div:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 6px solid #fff;
}
div#btn_completion div:first-child:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5%;
    right: auto;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-right: 6px solid #fff;
}



/* === covid-19 ============================================================================ */
#covid-19_text {
    width: 100%;
    max-width: 1200px;
    margin: 60px auto;
    text-align: center;
}
#covid-19_text h3 {
    position: relative;
    color: #dd0000;
    font-size: 20px;
    font-weight: normal;
    text-align: center;
    display: inline-block;
    margin-bottom: 20px;
    cursor: pointer;
}
#covid-19_text h3:after {
    position: absolute;
    top: 3px;
    bottom: 0px;
    right: -40px;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 7px;
    height: 8px;
    border: 7px solid transparent;
    border-top: 8px solid #dd0000;
}
#covid-19_text p {
    display: none;
    width: 900px;
    margin: 0 auto;
    line-height: 1.6;
    padding: 30px;
    background: #f5f5f5;
}
    #covid-19_text a {
        width: 90vw;
        padding: 10px;
        font-size: 1vw;
        line-height: 1.7;
        text-align: justify;
        font-feature-settings: "palt";
		color: #007AAD;
    }	
	
/*---SP---------*/
@media only screen and (max-width :768px ){
.pc { display: none !important;}
.sp { display: block !important;}  
.tab { display: none !important;}
	
    section#reserve_fv {
        max-width: 96%;
    }
    .reserve_h1 {
        margin: 0px auto;
        padding: 0 0 20px;
        font-size: 2rem;
    }
/*---------------------------------*/
    section#reserve_content {
        max-width: 94%;
        margin: 20px auto 30px;
    }
    .reserve_cont h2 {
        font-size: 4.6vw;
        padding-bottom: 20px;
    }
.reserve_tel {
flex-direction: column;
margin: 10px 0 auto;
padding: 10px 0 10px 0;
text-align: center;

}
.reserve_tel p {
font-size: 1.2rem;
line-height: 1.5rem;	
text-align: center;
}
.reserve_cont .reserve_tel img {
width: 80%;
height: auto;	
padding: 10px 0 0;
margin: 0 auto;
text-align: center;
}
    .reserve_step {
        margin: 30px 0 0;
    }
.reserve_step > p {
font-size: 1.2rem;
line-height: 1.5rem;	
}
    .reserve_step > img {
        width: 100%;
    }
.step_cont{
width: 95%;
margin: 0 auto;
}
.step_cont p{
text-align: justify;	
} 	
p.step_cont_ttl {
font-size: 1.2rem;
font-weight: 600;
}
p.step_cont_ttl span {
top: -1px;
margin-right: 6px;
padding: 0px 6px 0px 6px;
font-size: 1.1rem;
}
.step_cont p:nth-child(3) {
margin-top: 20px;
}
/*------------------------------------*/
    section#reserve_detail {
        max-width: 96%;
        margin: 20px auto 30px;
    }
.reserve_detail_cont{
width: 92%;
margin: 0 auto;
}	
	
.reserve_detail_cont h2 {
font-size: 1.5rem;
padding-bottom: 10px;
}
.reserve_detail_cont > p {
font-size: 1rem;
line-height: 1.4rem;	
text-align: justify;
padding: 0 0 1rem 0.5rem ;
}
    .reserve_detail_cont.completion > p {
        padding-left: 0;
        text-indent: 0;
    }
    .reserve_form_step {
        margin: 20px 0 0;
    }
    .reserve_detail_cont.confirmation .reserve_form_step {
        margin: 0;
        padding-bottom: 10px;
    }
    .reserve_detail_cont.completion .reserve_form_step {
        margin: 0;
        padding-bottom: 10px;
    }
    .reserve_form_step img {
        width: 100%;
    }

/*------------------------------------*/
    section#reserve_form_confirmation {
        max-width: 92vw;
        margin: 20px auto 30px;
    }
    #reserve_form_confirmation .form_in {
        flex-direction: column;
        margin: 10px 0;
        padding: 10px 0 20px;
    }
    #reserve_form_confirmation .form_in:first-of-type {
        padding-top: 20px;
        margin-top: 0px;
    }
    #reserve_form_confirmation .form_title {
        font-size: 1.2rem;
        max-width: 100%;
        padding: 0 0 10px 0;
    }
    #reserve_form_confirmation .form_confirmation {
        font-size: 1.2rem;
        max-width: 100%;
    }
    div#btn_completion {
        margin: 30px auto;
    }
    div#btn_completion div + div {
        margin-left: 2vw;
    }
    div#btn_completion div:first-child button[type="submit"].btn {
        width: 30vw;
    }
/**/
	section#reserve_form {
        width: 100%;
        max-width: 92vw;
        margin: 30px auto;
    }
    div#form_cont {
        width: 96%;
        max-width: 950px;
        padding: 20px 10px;
        background: #f2f4fa;
		margin: 0 auto;
    }
p.form_attention {
padding-bottom: 20px;
font-size: 1.2rem;
font-weight: 600;
line-height: 1.6rem;
text-align: center;
}
    /*form*/
    .form_title {
        font-size: 1.2rem;
        padding: 0 0 10px;
        margin-bottom: 10px;
    }
    .form_details {
        margin: 10px 0 30px;
    }
    .form_details.raiin:not(:last-child) {
        margin: 20px 0;
    }
    ul#sinryouGroup {
        align-items: flex-start;
    }
ul#sinryouGroup li {
width: auto;
min-width: calc(100% / 1);
font-size: 1rem;
font-weight: 600;
color: #333;
list-style: none;
text-align: left;
margin: 0 0rem 0.75rem 0rem;
padding: 0 0rem 0 0;
}
    input[type="text"] {
        max-width: 100%;
        padding: 7px;
        font-size: 3.2vw;
    }
    span.form_details_text {
        font-size: 0.9rem;
        padding-left: 0;
    }
	
/*---------------------	------------*/	
.form_details.select {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
}
.form_details.select > * + * {
    margin-left: 30px;
}
.form_details.select > div {
    position: relative;
}
.form_details.select > div:before, .form_details.select > div:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
}
.form_details.select > div:before {
    right: 30px;
    width: 1px;
    height: 100%;
    border-left: 1px solid #999;
}
.form_details.select > div:after {
    top: 8px;
    right: 10px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #333;
    border-left: 2px solid #333;
    transform: translateY(-50%) rotate( -135deg );
}	

	
	
	
	
/*----	--
.form_details.select {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
}
  /*  .form_details.select {
        flex-wrap: wrap;

    }*/
    .form_details.select.raiin p {
        width: 80%;
        padding-bottom: 5px;

    }
    .form_details.select > * + * {
        margin-left: 0;
    }
    .form_details.select > div + div {
        margin-left: 4vw;
    }
    .form_details.select > div {
        width: 40vw;
    }
    .form_details.box {
		width: 100%;
        margin: 10px 0;
    }
    select {/*-----------------------------*/
        width: 100%;
        padding: 8px;
        font-size: 0.9rem;
		background: #fff;
		color: #333;
    }
    textarea {
        height: 160px;
        padding: 8px;		
        font-size: 0.9rem;

		
    }
    div#btn_confirmation {
        margin: 30px auto;
    }
    div#btn_confirmation div {
        position: relative;
        width: 60vw;
        margin: 0 auto;
    }
    button[type="submit"].btn {
        width: 60vw;
        padding: 16px 0;
        font-size: 1.2rem;
    }
	
/**-----------------------------
    #covid-19_text {
        width: 90vw;
        margin: 40px auto;
        text-align: left;
    }
    #covid-19_text h3 {
        font-size: 5vw;
        text-align: left;
        width: 90vw;
        margin-bottom: 10px;
    }
    #covid-19_text h3:after {
        right: 0;
    }
    #covid-19_text p {
        width: 90vw;
        padding: 10px;
        font-size: 4.2vw;
        line-height: 1.7;
        text-align: justify;
        font-feature-settings: "palt";
    }
    #covid-19_text a {
        width: 90vw;
        padding: 10px;
        font-size: 0.9rem;
        line-height: 1.7;
        text-align: justify;
        font-feature-settings: "palt";
		color: #007AAD;
    }		-----------*/
	
}

/*---tab-----
@media screen and (min-width: 600px) and (max-width: 1024px) {
    #covid-19_text {
        width: 90vw;
        margin: 40px auto;
        text-align: left;
    }
    #covid-19_text h3 {
        font-size: 18px;
        text-align: left;
        width: 90vw;
        margin-bottom: 10px;
    }
    #covid-19_text h3:after {
        right: 0;
    }
    #covid-19_text p {
        width: 90vw;
        padding: 20px;
        font-size: 14px;
    }
    #covid-19_text a {
        width: 90vw;
        padding: 10px;
        font-size: 0.9rem;
        line-height: 1.7;
        text-align: justify;
        font-feature-settings: "palt";
		color: #007AAD;
    }	
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
    section#reserve_form_confirmation {
        max-width: 92vw;
        margin: 20px auto 30px;
    }
    #reserve_form_confirmation .form_in {
        flex-direction: column;
        margin: 10px 0;
        padding: 10px 0 20px;
    }
    #reserve_form_confirmation .form_in:first-of-type {
        padding-top: 20px;
        margin-top: 0px;
    }
    #reserve_form_confirmation .form_title {
        max-width: 100%;
        padding: 0 0 10px 0;
    }
    #reserve_form_confirmation .form_confirmation {
        max-width: 100%;
    }
    div#btn_completion {
        margin: 30px auto;
    }
    div#btn_completion div + div {
        margin-left: 2vw;
    }
    div#btn_completion div:first-child button[type="submit"].btn {
        width: 30vw;
    }
}
@media screen and (max-width: 768px) {
    section#reserve_form {
        width: 100%;
        max-width: 92vw;
        margin: 30px auto;
    }
    div#form_cont {
        width: 100%;
        max-width: 950px;
        padding: 20px 10px;
        background: #f2f4fa;
    }
    p.form_attention {
        padding-bottom: 20px;
        font-size: 3.2vw;
    }
    /*form
    .form_title {
        font-size: 3.6vw;
        padding: 0 0 10px;
        margin-bottom: 10px;
    }
    .form_details {
        margin: 10px 0 30px;
    }
    .form_details.raiin:not(:last-child) {
        margin: 20px 0;
    }
    ul#sinryouGroup {
        align-items: flex-start;
    }
    ul#sinryouGroup li {
        width: auto;
        min-width: calc(100% / 3);
        margin-bottom: 10px;
        font-size: 0.9rem;
    }
    input[type="text"] {
        max-width: 100%;
        padding: 7px;
        font-size: 3.2vw;
    }
    span.form_details_text {
        font-size: 0.9rem;
        padding-left: 0;
    }
    .form_details.select {
        flex-wrap: wrap;
    }
    .form_details.select.raiin p {
        width: 100%;
        padding-bottom: 5px;
    }
    .form_details.select > * + * {
        margin-left: 0;
    }
    .form_details.select > div + div {
        margin-left: 4vw;
    }
    .form_details.select > div {
        width: 40vw;
    }
    .form_details.box {
        margin: 10px 0;
    }
    select {
        width: 100%;
        padding: 7px;
        font-size: 3.2vw;
    }
    textarea {
        height: 160px;
        padding: 7px;
    }
    div#btn_confirmation {
        margin: 30px auto;
    }
    div#btn_confirmation div {
        position: relative;
        width: 60vw;
        margin: 0 auto;
    }
    button[type="submit"].btn {
        width: 60vw;
        padding: 16px 0;
        font-size: 3.2vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
    section#reserve_form {
        width: 100%;
        max-width: 92vw;
        margin: 30px auto;
    }
    div#form_cont {
        padding: 30px;
    }
    p.form_attention {
        padding-bottom: 20px;
    }
    /*form
    .form_title {
        padding: 0 0 10px;
        margin-bottom: 10px;
    }
    .form_details {
        margin: 10px 0 30px;
    }
    .form_details.raiin:not(:last-child) {
        margin: 20px 0;
    }
    ul#sinryouGroup {
        align-items: flex-start;
    }
    ul#sinryouGroup li {
        width: auto;
        min-width: calc(100% / 3);
        margin-bottom: 10px;
    }
    input[type="text"] {
        max-width: 50%;
        padding: 7px;
    }
    span.form_details_text {
        padding-left: 0;
    }
    .form_details.select {
        flex-wrap: wrap;
    }
    .form_details.select.raiin p {
        width: 100%;
        padding-bottom: 5px;
    }
    .form_details.select > * + * {
        margin-left: 0;
    }
    .form_details.select > div + div {
        margin-left: 4vw;
    }
    .form_details.select > div {
        width: 40vw;
    }
    .form_details.box {
        margin: 10px 0;
    }
    select {
        width: 100%;
        padding: 7px;
    }
    textarea {
        height: 160px;
        padding: 7px;
    }
    div#btn_confirmation {
        margin: 30px auto;
    }
    div#btn_confirmation div {
        position: relative;
        width: 50vw;
        margin: 0 auto;
    }
    button[type="submit"].btn {
        width: 50vw;
        padding: 16px 0;
    }
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
    section#reserve_detail {
        max-width: 92vw;
        margin: 20px auto 30px;
    }
    .reserve_detail_cont h2 {
        font-size: 26px;
        padding-bottom: 20px;
    }
    .reserve_detail_cont.completion > p {
        padding-left: 0;
        text-indent: 0;
    }
    .reserve_form_step {
        margin: 20px 0 0;
    }
    .reserve_detail_cont.confirmation .reserve_form_step {
        margin: 0;
        padding-bottom: 10px;
    }
    .reserve_detail_cont.completion .reserve_form_step {
        margin: 0;
        padding-bottom: 10px;
    }
    .reserve_form_step img {
        width: 100%;
    }
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
    section#reserve_content {
        max-width: 92vw;
        margin: 20px auto 30px;
    }
    .reserve_cont h2 {
        font-size: 26px;
        padding-bottom: 20px;
    }
    .reserve_tel {
        flex-direction: column;
        margin: 10px 0 0;
        padding: 30px 0;
        text-align: center;
    }
    .reserve_tel p {
        font-size: 1.2rem;
    }
    .reserve_tel img {
        max-width: 66.3%;
        padding: 20px 0 0;
    }
    .reserve_step {
        margin: 30px 0 0;
    }
    .reserve_step > img {
        width: 100%;
    }
    p.step_cont_ttl span {
        top: -2px;
        margin-right: 6px;
        padding: 0px 6px 0px 6px;
    }
    .step_cont p:nth-child(3) {
        margin-top: 20px;
    }
}
@media screen and (min-width: 1025px) and (max-width: 1180px) {
    section#reserve_fv {
        width: 100%;
        max-width: 1180px;
        margin: 0 auto;
    }
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
    section#reserve_fv {
        max-width: 92vw;
    }
    .reserve_h1 {
        margin: 20px auto;
        padding: 0 0 20px;
        font-size: 40px;
    }
}


----*/