/* 調整用スタイル */
body {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    color: #000;
}
a {
  text-decoration: none;
}
ul,
li {
  list-style: none;
}
.pc {
    display: block;
}
.sp {
    display: none;
}
.row {
    width: 100%;
    margin: 0 auto;
    padding: 0 2%;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}
footer h2 {
	background-color: #898989;
	color: #FFF;
	text-align: center;
	font-size: 1.15rem;
	font-weight: 900;
	padding: 0.7rem;
}
footer p {
	background-color: #efefef;
	color: #000;
	text-align: center;
	padding: 1rem;
	margin-bottom: 0;
}
footer .f-logo {
	padding: 1.5rem 0;
	text-align: center;
	margin-bottom: 100px;
}
footer .f-logo figure {
	width: 100%;
	max-width: 200px;
	margin: 0 auto;
}
.oubo {
	position: fixed;
	bottom: 0;
	text-align: center;
	width: 100%;
}
.oubo a img {
	vertical-align: bottom;
	max-width: 500px;
}
.page_top a {
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	font-size: 1.6rem;
	background-color: rgba(0,0,0,0.2);
	text-align: center;
	color: #000;
}
.page_top a span {
	font-size: 1rem;
	font-weight: 900;
}

/* ヘッダー */
.header {
  background-color: #FFF;
  width: 100%;
  height: 50px;
  /*position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;*/
}
.header .row {
  padding: 0 2%;
  display: flex;
  align-items: center;
  justify-content: space-between;
    height: 100%;
  /*height: inherit;
  position: relative;*/
}
/* ヘッダーのロゴ部分 */
.site_id {
  width: 180px;
}
/*nav {
    display: none;
}*/
nav ul {
    display: flex;
    justify-content: flex-end;
    list-style: none;
}
nav ul li {
    padding: 0 0.5rem;
    border-right: 1px solid #000;
}
nav ul li:last-child {
    border-right: none;
}
header button {
    display: none;
}

.pc {
    width: 100%;
    height: 100vh;
    position: relative;
}
.this_is_not {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.this_is_not h1 {
    color: #FF6F00;
    font-weight: bold;
    font-size: 36px;
    line-height: 1.1em;
    text-align: center;
    margin-bottom: 0.8rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.this_is_not h1 span {
    font-size: 0.6em;
}
.this_is_not p {
    line-height: 1.6rem;
}
.this_is_not .qr_code img {
    width: 200px;
}
@media screen and (max-width: 767px) {
	html {
		scroll-padding-top:50px;
		scroll-behavior: smooth;
	}
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
    header {
        position: fixed;
        top: 0;
		z-index: 1;
    }
    header .row {
        padding: 0 5%;
        height: 50px;
    }
    nav {
        width: 60%;
        height: calc(100vh - 50px);
        position: absolute;
        top: 50px;
        right: 0;
        /*left: 0;*/
        transform: translateX(100%);
        background-color: rgba(0,0,0,0.6);
        transition: ease .4s;
    }
    nav ul {
        flex-direction: column;
        width: 100%;
    }
    nav ul li {
        width: 100%;
        padding: 0;
        text-align: center;
        border-right: none;
        border-bottom: 1px dotted #000;
    }
    nav ul li a {
        display: block;
        width: 100%;
        padding: 1rem 0;
		color: #FFF;
		font-weight: 900;
    }
    header button {
        display: block;
        width: 48px;
        height: 80%;
        z-index: 9999;
        border: none;
        background-color: transparent;
    }
    header button span {
        width: 100%;
        height: 1px;
        background-color: #000;
        position: relative;
        transition: ease .4s;
        display: block;
    }
    header button span:nth-child(1) {
        top: 0;
    }
    header button span:nth-child(2) {
        margin: 8px 0;
    }
    header button span:nth-child(3) {
        top: 0;
    }

    nav.active {
        transform: translateX(0);
    }
    header button.active span:nth-child(1) {
        top: 10px;
        transform: rotate(45deg);
    }
    header button.active span:nth-child(2) {
        opacity: 0;
    }
    header button.active span:nth-child(3) {
        top: -8px;
        transform: rotate(-45deg);
    }
    p {
        font-size: 1.05rem;
        line-height: 1.6rem;
        margin-bottom: 2rem;
        text-align: justify;
    }
/* #HEADLINE
***********************************************/
    #headline {
        background-color: #fad2d2;
		padding: 50px 0 2rem;
    }
    #headline h1 {
        width: 100%;
        margin: 0 auto 1rem;
    }
    #headline .detail {}
    #headline .detail figure {
        width: 80%;
        margin: 0 auto;
    }
    #headline .oubo {
		padding-bottom: 1rem;
	}
    #headline .oubo a {
        display: block;
        width: 100%;
    }
    #intro {
		background-color: #fffbc7;
		padding-bottom: 2rem;
	}
	#intro h2 {
		background-color: #fad2d2;
		margin: -1px 0 1.5rem;
	}
	#intro h2 img {
		vertical-align: bottom;
	}
    #intro .row {
        width: 90%;
    }
	#intro .row li:not(:last-child) {
		margin-bottom: 2rem;
	}
	#intro .row li figure {
		margin-bottom: 1rem;
	}
    #intro .row li p {
        padding: 0 1rem;
    }
	#recipe {
		background-color: #785143;
		padding-bottom: 2rem;
	}
	#recipe h2 {
		background-color: #fffbc7;
		margin: -1px 0 1.5rem;
	}
	#recipe h2 img {
		vertical-align: bottom;
	}
	#recipe .row p {
		text-align: center;
		padding-top: 1rem;
	}
	#recipe .row p a {
		text-decoration: none;
		color: #FFF;
	}
	#recipe .row p a img {
		width: 33%;
		height: auto;
		margin-bottom: 0.5rem;
	}
    #terms {
        background-color: #fef3ed;
        padding-bottom: 2rem;
    }
	#terms h2 {
		background-color: #785143;
		margin: -1px 0 0;
	}
	#terms h2 img {
		vertical-align: bottom;
	}
    #terms .row {
        width: 90%;
    }
	#terms .terms_img {
		width: 92%;
		margin: 0 auto 2.5rem;
	}
    #terms .row h3 {
        text-align: center;
        font-weight: bold;
        letter-spacing: 0.1rem;
        background-color: #e9607c;
        color: #FFF;
        border-radius: 8px;
        padding: 0.3rem 0;
        font-size: 1.2rem;
        margin: 2.5rem 0 1rem;
		letter-spacing: 1rem;
    }
	#terms .row h3:nth-of-type(1) {
		margin-top: -1rem;
		position: relative;
	}
	#terms .row h4 {
		color: #e9607c;
		font-weight: 900;
		margin-bottom: 0.3rem;
		padding:  0 0.4rem;
		font-size: 1.1rem;
	}
	#terms .row h4::before {
		content: '■';
		display: inline;
		padding-right: 0.1rem;
	}
	#terms .row p {
		padding:  0 0.4rem;
		font-feature-settings: "palt";
		margin-bottom: 1rem;
	}
	#terms .row ul {
		margin-bottom: 1rem;
		list-style: disc;
		padding: 0 1rem 0 2rem;
	}
	#terms .row ul li {
		line-height: 1.6rem;
		list-style: inherit;
	}
	#terms .row ol {
		padding: 0 1rem;
	}
	#terms .row ol li {
		line-height: 1.6rem;
	}
	#terms .row ol li:first-child:before {
		content: '①';
		display: inline;
	}
	#terms .row ol li:nth-child(2):before {
		content: '②';
		display: inline;
	}
	#terms .row ol li p {
		text-indent: -0.9rem;
		padding: 0 0.8rem;
	}
	#terms .row ol li p::before {
		content: '●';
		display: inline;
	}
	#terms .row ol li ul {
		padding-left: 1.2rem;
		padding-right: 0.8rem;
	}
	#terms .row ol li ul li {
		text-align: justify;
	}
	#terms .row ol li ul li:first-child::before,
	#terms .row ol li ul li:nth-child(2)::before {
		display: none;
	}
    #form {}
	#form h2 {
		background-color: #fef3ed;
		margin: -1px 0 0;
	}
	#form h2 img {
		vertical-align: bottom;
	}
    #form .row {
        width: 90%;
        padding: 0 4%;
    }
	#form .row h3 {
        text-align: center;
        font-weight: bold;
        letter-spacing: 0.1rem;
        background-color: #e9607c;
        color: #FFF;
        border-radius: 8px;
        padding: 0.3rem 0;
        font-size: 1.2rem;
        margin: 2.5rem 0 1rem;
		letter-spacing: 0.5rem;
	}
	#form .row h3:nth-of-type(1) {
		margin-top: -1rem;
		position: relative;
	}
	#form .row h3 + p {
		margin-bottom: 0;
		font-feature-settings: "palt";
	}
    #form .row form p {
        margin-bottom: 0.3rem;
        font-size: 1.1rem;
        padding-top: 1rem;
    }
    #form .row form p i {
        font-style: normal;
        font-size: 0.9rem;
        font-weight: normal;
    }
    #form p .hissu {
        font-size: 0.85rem;
        color: #F00;
        letter-spacing: 0.1rem;
        padding-left: 0.2rem;
    }
    #form input[type='text'] {
        border-top: 2px solid #717071;
		border-right: 1px solid #717071;
		border-bottom: 1px solid #717071;
		border-left: 1px solid #717071;
        width: stretch;
		width: -webkit-fill-available;
		width: -moz-available;
        height: 1.5rem;
        border-radius: 5px;
        font-size: 1.05rem;
        color: #000;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
	#form input[type='text']::placeholder {
		color: #999;
	}
    #form input[type='number'] {
        border-top: 2px solid #717071;
		border-right: 1px solid #717071;
		border-bottom: 1px solid #717071;
		border-left: 1px solid #717071;
       height: 1.5rem;
        border-radius: 5px;
        font-size: 1.05rem;
        color: #000;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
    #form input[type='number'].old {
        width: 3rem;
    }
    #form input[type='radio'] {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border: 1px solid #717071;
        border-radius: 50%;
        height: 1.2rem;
        width: 1.2rem;
        background-color: #FFF;
        position: relative;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
    #form input[type='radio']::before {
        content: "";
        display: block;
        width: 60%;
        height: 60%;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    #form input[type='radio']:checked::before {
        background-color: #f08300;
    }
    #form select {
        border-top: 2px solid #717071;
		border-right: 1px solid #717071;
		border-bottom: 1px solid #717071;
		border-left: 1px solid #717071;
       height: 1.5rem;
        border-radius: 5px;
        font-size: 1.05rem;
        color: #000;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
    #form textarea {
        border-top: 2px solid #717071;
		border-right: 1px solid #717071;
		border-bottom: 1px solid #717071;
		border-left: 1px solid #717071;
       height: 7rem !important;
        width: stretch;
		width: -webkit-fill-available;
		width: -moz-available;
        border-radius: 5px;
        font-size: 1.05rem;
        color: #000;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
    #form input[type='file'] {
        width: 100%;
        border: none;
        background-color: inherit;
        box-shadow: none;
		/*display: none;*/
    }
/*
	form#mailformpro label.custom-file-label {
        font-size: 1.05rem;
        padding: 0.3rem 0.8rem;
        margin: 0 10px 3px 0;
		border-radius: 30px;
		border: 1px solid #000;
		background-color: #E2E2E2;
		font-feature-settings: "palt";
		display: inline-block;
	}
	form#mailformpro label.custom-file-label + span {
		font-feature-settings: "palt";
		font-size: 0.9rem;
	}
*/
    #form input[type='file']::file-selector-button {
        font-size: 1.05rem;
        padding: 0.2rem 0.8rem;
        margin: 0 10px 3px 0;
		border-radius: 30px;
		border: 1px solid #000;
    }
    #form input[type='checkbox'] {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-top: 2px solid #717071;
		border-right: 1px solid #717071;
		border-bottom: 1px solid #717071;
		border-left: 1px solid #717071;
        height: 1.2rem;
        width: 1.2rem;
        border-radius: 5px;
        background-color: #FFF;
        position: relative;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
    #form input[type="checkbox"]:checked:before {
        position: absolute;
        top: 1px;
        left: 4px;
        transform: rotate(50deg);
        width: 4px;
        height: 8px;
        border-right: 2px solid #f08300;
        border-bottom: 2px solid #f08300;
        content: '';
        display: block;
    }
    #form .submity button {
        display: block;
        width: 100%;
        margin: 2rem auto;
		border: none;
		padding: 0;
		background-color: none;
    }
    #form .submity button img {
        vertical-align: bottom;
    }
    #form .kojinjoho {
        border-top: 2px solid #717071;
		border-right: 1px solid #717071;
		border-bottom: 1px solid #717071;
		border-left: 1px solid #717071;
        border-radius: 5px;
        background-color: #FFF;
        padding: 1rem;
        font-size: 1rem;
        line-height: 1.5rem;
        text-align: justify;
        margin-bottom: 0.3rem;
		box-shadow: inset 1px 2px 1px 1px rgba(0, 0, 0, 0.2);
    }
    #form .before_after {
        margin: 0 auto 2rem;
        border: 5px solid #FFF;
        background-image: linear-gradient(0deg, rgba(135, 184, 40, 1), rgba(21, 150, 64, 1) 55%);
        padding: 1rem 0;
        color: #FFF;
        font-size: 1.6rem;
        letter-spacing: 0.1rem;
        font-weight: bold;
        border-radius: 50px;
        box-shadow: 4px 4px 0px 0px rgba(0, 113, 188, 1);
        text-align: center;
        line-height: 2rem;
    }
    #form .before_after::before {
        display: none;
    }
    
    #thanksbox {
        width: 80%;
        margin: 0 auto;
        padding-top: 20%;
    }
    #thanksbox h2 {
        color: #f08300;
        font-size: 1.6rem;
        line-height: 2rem;
        text-align: center;
        margin-bottom: 2rem;
    }
}
