@charset "utf-8";
/*** css reset ***/
/*
html { box-sizing: border-box; font-size: 62.5%;}
* { box-sizing: inherit; }
*:before, *:after { box-sizing: inherit; }
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, 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, sub { margin:0; padding:0; border:0; outline:0; vertical-align:baseline; }
article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section { display:block; }
ol, ul{ list-style: none; list-style-position: inside; }
blockquote, q {	quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }
a {	margin:0;	padding:0; font-size:100%; vertical-align:baseline; }
del {	text-decoration: line-through; }
input, select { vertical-align: 0; }
input, textarea, select { margin: 0; font-size: 100%;	width: 100%; }
img { max-width: 100%; height:auto;	width: 100%; vertical-align:bottom; font-size:0;	line-height: 0;	border: 0; }
object, embed, video { max-width: 100%; }
address, caption, cite, code, dfn, em, th, var{	font-style: normal;	font-weight: normal; }
h1, h2, h3, h4, h5, h6{ font-size: 100%;}
*/

.mb10{margin-bottom:10px;}


.br-sp{display: none;}
@media screen and (max-width:414px) {
	.br-sp{display: block;}
}

.box-center{
	margin: 0 auto;
}

#main {
	color: #4d4d4d;
	font-size: 1.5rem;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3','メイリオ', 'Meiryo', 'ＭＳ ゴシック', sans-serif;
	background-repeat: repeat-x;
}
#main a{
	color:#fff;
	text-decoration:none;
}

#main a:hover,
#main a:visited{
	opacity: 80%;
	transition: all 0.1s;
}

#wrapper{
	font-size:1.6rem;
}

#wrapper, .mv{
	width:100%;
}
.mv{
	width:100%;
}
.mv h2{
	width:100%;
	/*max-width:1365px;*/
}
.mv img{
	width:100%;
}

.upper-block{
	padding: 20px 108px 17px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.upper-block .logo{
	max-width: 121px;
	width: 100%;
	display: inline-block;
}
@media screen and (max-width: 1200px){
	.upper-block{padding: 20px 30px 17px;}
}
@media screen and (max-width: 767px){
	.upper-block{padding: 10px 15px;}
	.upper-block .logo{max-width: 51px;}
}

.sns-block-outer {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.sns-block {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 25px;
}
.sns-block a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background-color: #fff;
}
.sns-block a .image {
	display: flex;
}
.sns-block .insta .image { width: 42.60px; }
.sns-block .youtube .image { width: 55.21px; }
.sns-block .twitter .image { width: 35px; }

@media screen and (max-width: 767px){
	.sns-block { gap: 18.75px; }
	.sns-block a { width: 60px; }
	.sns-block .insta .image { width: 31.95px; }
	.sns-block .youtube .image { width: 41.40px; }
	.sns-block .twitter .image { width: 24px; }
}

#main{
	margin:0 auto;
	width:100%;
	max-width:1150px;
	background-image: url(../img/bg_pc_01.png), url(../img/bg_pc_02.png), url(../img/bg_pc_02.png), url(../img/bg_pc_02.png);
	background-repeat:	no-repeat;
	background-position: center top 13px, center 184px, center 2484px, center 4785px;
	background-color:#fff3eb;
	padding: 55px 75px 0 75px;
	font-weight:600;
}


@media screen and (max-width:1000px) {
	#main{
		padding-left: 5%;
		padding-right: 5%;
	}
}


.main-inner{
	width:100%;
	text-align:center;
}

#main p.ind{
	text-indent:-0.75em;
}
#main p.ind03{
	text-indent:-0.3em;
}
#main p.ind0{
	text-indent:0;
}

.h1-sp{
	display:none;
}

.txtL{
	text-align:left;
}
.txtC{
	text-align:center;
}

ul.note{
	margin-top:1em;
	font-weight: 300;
	text-indent:-1em;
	padding-left:1em;
}
ul.note li::before{
	content:"○";
}

ul.kome li::before{
	content:"※";
}
ul.asta li::before{
	content:"＊" !important;
}

br.sp-br{
	display:none;
}

/***********main　base*/


/*header*/

.mv{
	position:relative;
	overflow:hidden;
}
.logolink{
	cursor:pointer;
	display:block;
	position: absolute;
	/*background-color: #fcc;*/
	opacity: 1;
	height: 26px;
	top:calc( (40 / 1366) * ( 100vw - 8px ) );
	left:calc( (108 / 1366) * ( 100vw - 8px ) );
	width:calc( ((108 / 1366) * ( 100vw - 8px ) ) * 1.2 );
	height:calc( ((108 / 1366) * ( 100vw - 8px )) * ( 49 / 130 ));
}

.sitelink{
	display: none;
	background-color: rgba(230,0,9,.8);
	align-items: center;
	justify-content: center;
	cursor:pointer;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	position: absolute;
	z-index: 50;
	top: -4.25vw;
	right: calc( (95 / 1366) * (100vw - 8px) );
	height: calc( (469 / 1366) * (100vw - 8px) );
	width: calc( (468 / 1366) * (100vw - 8px) );
	padding: 1.9% 2.7% 0;
}
.sitelink:hover{opacity: 1;}
.sitelink:hover::after{
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.3);
	position: absolute;
	top: 0;
	left: 0;
	cursor:pointer;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
}

/* slides */
.slides .slide {
	aspect-ratio: 1366/750;
	background-repeat: no-repeat;
	background-size: cover;
}
.slides .slide01 { background-image: url(../img/mv_pc-01.jpg); }
.slides .slide02 { background-image: url(../img/mv_pc-02.jpg); }
.slides .slide03 { background-image: url(../img/mv_pc-03.jpg); }
.slides .slide04 { background-image: url(../img/mv_pc-04.jpg); }
.slides .slide05 { background-image: url(../img/mv_pc-05.jpg); }
.slides .slide06 { background-image: url(../img/mv_pc-06.jpg); }
.slides .slide07 { background-image: url(../img/mv_pc-07.jpg); }
@media screen and (max-width:750px) {
  .slides .slide {
    aspect-ratio: 75/94;
  }
  .slides .slide01 { background-image: url(../img/mv_sp-01.jpg); }
  .slides .slide02 { background-image: url(../img/mv_sp-02.jpg); }
  .slides .slide03 { background-image: url(../img/mv_sp-03.jpg); }
  .slides .slide04 { background-image: url(../img/mv_sp-04.jpg); }
  .slides .slide05 { background-image: url(../img/mv_sp-05.jpg); }
  .slides .slide06 { background-image: url(../img/mv_sp-06.jpg); }
  .slides .slide07 { background-image: url(../img/mv_sp-07.jpg); }
}
.mv .swiper-button-prev,
.mv .swiper-button-next {
	display: block;
	width: 40px;
	height: auto;
	aspect-ratio: 1/2;
	color: transparent;
	overflow: hidden;
}
.swiper-button-prev {
	left: calc(108 / 1366 * 100%);
}
.swiper-button-next {
	right: calc(108 / 1366 * 100%);
}
.swiper-button-next:after,
.swiper-button-prev:after {
	position: absolute;
	top: 0;
	width: 141.4213%;
	aspect-ratio: 1/1;
	background-color: rgba(255,255,255,.5);
}
.swiper-button-prev:after {
	content: '';
	left: 0;
	transform: rotate(-45deg) translate(0, 29%);
}
.swiper-button-next:after {
	content: '';
	right: 0;
	transform: rotate(45deg) translate(0%, 29%);
}
@media screen and (max-width:750px) {
	.mv .swiper-button-prev,
	.mv .swiper-button-next {
		width: calc(4 / 75 * 100%);
	}
	.swiper-button-prev {
		left: calc(1 / 75 * 100%);
	}
	.swiper-button-next {
		right: calc(1 / 75 * 100%);
	}
}

/*headline*/
.headline{
	font-size: 2.6rem;
	line-height: 1.69;
}

.headline_t{margin-bottom:1em; font-size:110%; background-color:#cc0000; color:#fff;}
.headline_b{display:block; color:#cc0000; text-decoration:underline; padding-top:1em}

.headline div{
	margin-top:50px;
	margin-bottom:50px;
}
.headline div p:last-child{
	display:none;
}

.col{
	margin-bottom:50px;
}
.col:nth-child(4){
	margin-bottom:3em;
}

.col h2{
	background: #e60009;
	height: 5em;
	width: 5em;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	color:#ffffc1;
	font-size:2.6rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
	margin:0 auto;
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	margin-bottom:1em;
}

.matsuri_mark{
	width: 116px;
	margin: 0 auto;
}

.font-maru{
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}

.line-under{
	padding-bottom:0.25em;
	border-bottom:#e60009 6px solid;
	font-size:3.1rem;
	width:84%;
	margin:0 auto;
	text-align-last: justify;
	text-justify: inter-ideograph;
}

.line-under span:not(.rad){
	font-size:135%;
}

.col:nth-child(3) h2{
	margin-bottom:0.25em;
}

.col p.para{font-size:2.0rem;}

.flex-box{
	display:flex;
	justify-content: space-between;
	margin-top:1.75em;
}

.flex-box div{
	width:48.5%;
	padding:0.75em 0 1em;
}

/*応募方法*/

.bg-green div{
	background-color:#22b573;
	font-size:2.6rem;
	color:#fff;
	line-height:1.75;
}
.col h3{
	font-size:4.2rem;
	color:#ff0;
	line-height:1.5;
}
.col .bg-green h3 span{
	font-size:133%;
}
.col .bg-green p.yellow{
	color:#ff0;
}

.col .yellowsmall{
	font-size:80%;
}
a.btn{
	display:block;
	border-radius: 16px;
	border:#fff 4px solid;
	width:75%;
	margin:0 auto;
	margin-top:1em;
	padding:0.25em 0;
	position:relative;
	color:#ff0 !important;
}
a.btn:after{
	content:"＞";
	position:absolute;
	top:0.3em;
	right:3px;
	color:#fff;
}

/*結果発表*/

.bg-blue div{
	background-color:#29abe2;
	padding:30px 25px;
	line-height: 2;
}
.bg-blue h3{
	font-size:2.4rem;
	color:#ff0;
	font-weight: 600;
}
.bg-blue h3 span{
	font-size:70%;
}

.triangle:last-child p:nth-child(2){
	max-width:242px;
}

.triangle:last-child p:last-child{
	display:none;
}

.bg-blue .note{
	color:#fff;
}
.bg-blue .note li{
	position:relative;
}
.bg-blue .note li::before{
	content:"";
}
.triangle{
	position:relative;
	margin-bottom:50px;
}
.triangle:last-child{
	margin-bottom:0;
}
.triangle:not(:last-child)::after{
	content:"";
  border-top: 50px solid #29abe2;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
	position:absolute;
	bottom:-50px;
	left:calc(50% - 50px)
}
.triangle:nth-child(3){
	display:flex;
	justify-content: center;
	align-items:center;
}
.triangle:nth-child(3) h3{
	width:70%;
}
.icon_home{
	width: 22px;
	height: auto;
	display: inline-block;
	vertical-align: top;
}
@media screen and (max-width: 767px){
	.icon_home{width: 3.71vw; vertical-align: inherit;}
	.matsuri_mark{width: 80px;}
	.bg-blue div{padding: 20px 15px;}
}

/*入選商品*/

.col h2.cource_title{
	border-radius: 100vh;
	color: #ff0;
	font-family: inherit;
	font-weight: 600;
	height: 2em;
	max-width: 500px;
	width: 100%;
	padding:1em 0;
	margin-bottom: 20px;
} /*height: 2.3em; max-width: 500px;*/
.col h2.cource_title.cource1{background-color:#F76D28;}
.col h2.cource_title.cource2{background-color:#9361D4;}

.cource_attention{color: #c00;	font-size: 2.2rem;margin-bottom: 20px;}
.cource_txt1,
.cource_txt2{font-size: 2.2rem; margin-bottom: 30px;} /*font-size: 1.8rem;*/

.nyusen .box{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.nyusen .box > div{width: 49%; padding: 20px 10px 10px;}
.nyusen .box > div:nth-child(3n){margin-top:30px}

.nyusen .bg-red > div{background-color:#E60009;}
.nyusen .bg-orange > div{background-color:#F7874F;}
.nyusen .bg-purple > div{background-color:#9361D4}

.nyusen h3{
	font-size: 3.8rem;
	font-weight: 600;
}
.nyusen .num{color: #fff; font-size: 2.4rem; margin-bottom:10px}

.nyusen ul.note{margin-bottom: 50px;margin-top: 20px;}



/*審査員*/

.bg-brown{
	background-color:#D6D6BC;
	padding:30px 30px 30px 0;
	justify-content:space-between;
	align-items:center;
}
.shinsain .name{
	width: calc((307 / 873) * 100%);
	padding: 0;
}
.bg-brown > div p:first-child{
	font-size:3.0rem;
}
.bg-brown > div p:last-child{
	font-size:4.0rem;
}
.bg-brown > div p:last-child rt{
	font-size:1.4rem;
}
.shinsain .photo{
	width: calc((185 / 873) * 100%);
	margin-right: calc((70 / 873) * 100%);
}
.shinsain .text{
	width: calc((400 / 873) * 100%);
	font-size:1.6rem;
	text-align:left;
	font-weight:normal;
	line-height:1.5;
}


/*主催*/
.shusai{
	width:35em;
	margin-left: auto;
	margin-right: auto;
}
.shusai > div{
	display:flex;
	align-items:center;
	margin-bottom:1.5em;

}
.shusai .dt{
	background: #e60009;
	height: 3em;
	width: 3em;
	min-height:3em;
	min-width:3em;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	color: #ffffc1;
	font-size: 2.6rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	margin-right:1em;
}
.shusai .dl{
	-moz-font-feature-settings: "pkna";
	-webkit-font-feature-settings: "pkna"; 
	font-feature-settings: "pkna";
	letter-spacing: -.05em;
	font-size: 22px;
	text-align:left;
}


/**************規約部分*/
#kiyaku{
	text-align:left;
	font-size: 1.6rem;
	font-weight:normal;
}
#kiyaku > div{
	border:1px solid #4D4D4D;
	background-color:rgba(248,250,234,0.8);
	padding:2em;
	margin-bottom:2em;
}
#kiyaku h2{
	font-size: 2.6rem;
	font-weight:600;
	text-align:center;
	margin-bottom:20px;
}
#kiyaku h3{
	margin-top:1.5em;
	text-indent:-0.25em;
	position:relative;
	padding-left:1.25em;
}
/*h3タイトルの前に記号を付けるとき
#kiyaku h3::before{
	content:"■";
	font-size:155%;
	position:absolute;
	top:-28%;
	left:0;
}
#kiyaku h3.mark-none{
	text-indent:-0.5em;
	padding-left:0;
}
#kiyaku h3.mark-none:before{
	content:"";
}*/
#kiyaku h3, p.sub-ttl{
	color:#3897FF;
	font-size:1.8rem;
	margin-top:1.5em;
}
#kiyaku ul li{
	text-indent: -1em;
	padding-left:1em;
}
#kiyaku ul li:before{
	content:"○";
}
/*リストの中のリストマーク*/

#kiyaku ul li ul{
	counter-reset: number;
}
#kiyaku ul li ul li:before{
	counter-increment: number;
  content: "("counter(number)") ";
}

/*list-style消すとき
#kiyaku ul.list-style-none li{
	text-indent:0em;
}

#kiyaku ul.list-style-none li:before{
	content:"";
}
*/

/***footer*/

#footer{
	text-align: center;
	padding-bottom: 50px;
	/*		margin-left: calc( ( ( 100% - 100vw ) / 2 ));
    margin-right: calc( ( ( 100% - 100vw ) / 2 ));*/
	margin-top: 30px;
  /*background: linear-gradient(to bottom, rgba(248,250,234,0), #F8FAEA 30%);*/
}

#footer .logo_footer{
	display: inline-block;
	max-width: 640px;
	width: 100%;
	margin-bottom: 60px;
}

#footer p{
	margin-top: 50px;
	line-height:1;
}

#footer p small{
	font-size:1.4rem;
	font-weight:normal;
}
#footer .logo_footer-blk{
	max-width: 130px;
	width: 100%;
	display: inline-block;
	margin-top: 120px;
}


@media screen and (max-width:1120px) {

/*
	#footer{
		margin: 0;
		margin-left:calc( ( ( 100% - 100vw ) / 2 ));
		margin-right:calc( ( ( 100% - 100vw ) / 2 ));
		padding: 5.5em 1em 2em 1em;
		margin-top:4em;
	} */
}


/*スマホ*/

@media screen and (max-width:1024px) {

	/*応募期間*/
	.line-under{
		width: 100%;
		font-size: 5vw;
		text-align-last: auto;
	}
	/* .line-under .rad{
		display:block;
		transform:rotate(90deg);
	} */

	/*審査員*/
	.shinsain .flex-box{flex-wrap: wrap; padding: 30px; justify-content: center;}
	.shinsain .name{order: 1;width: 100%; margin-bottom: 30px }/*name*/
	.shinsain .photo{order: 2;width: 30%; margin: 0 auto;}/*photo*/
	.shinsain .text{order: 3;width: 45%; margin: 0 auto; margin-top: 20px; }/*text*/
}

@media screen and (max-width:750px) {
	.line-under{
		font-size: 4vw;
	}
}

@media screen and (max-width:750px) {

	/*header*/
	.logolink{
		top:3.5vw;
		left:calc( (30 / 750) * ( 100vw - 8px ) );
		width:calc( (130 / 750) * ( 100vw - 8px ));
		height:calc( ((130 / 750) * ( 100vw - 8px )) * ( 49 / 130 ));
	}

	.sitelink{
			/*top: -12vw;
			right: calc( (-72 / 750) * (100vw - 8px) );
			height: calc( (550 / 750) * (100vw - 8px) );
			width: calc( (550 / 750) * (100vw - 8px) ); */
			/* top: -10vw;
			right: calc( (-61 / 750) * (100vw - 8px) );
			height: calc( (440 / 750) * (100vw - 8px) );
			width: calc( (440 / 750) * (100vw - 8px) ); */

			/* top: -11vw;
			right: calc( (-60 / 750) * (100vw - 8px) );
			height: calc( (521 / 750) * (100vw - 8px) );
			width: calc( (521 / 750) * (100vw - 8px) ); */

			top: -12.01vw;
			right: calc( (-65 / 750) * (100vw) );
			height: calc( (520 / 750) * (100vw) );
			width: calc( (515 / 750) * (100vw) );
			/* background-color: rebeccapurple; */
			padding: 7% 12% 0 4%;
	}

	/*スライダー*/
	.headline div{margin: 25px 0 17.5px;}
	.headline div p:last-child,
	.h1-sp,
	.bg-blue:last-child p:last-child{display:block;}
	.headline div p:first-child,
	.h1-pc,
	.bg-blue:last-child p:nth-child(2){display:none;}

	/*layout*/
	#wrapper{font-size: 3.2000vw;}
	#main{
		background-image: url(../img/bg_sp_01.png), url(../img/bg_sp_02.png), url(../img/bg_sp_02.png), url(../img/bg_sp_02.png);
		background-position: center top -70px, center 89px, center 2509px, center 4928px;
		padding: 25px 4%
	}
	br.sp-br{display:block;}
	br.pc-br{display:none;}

	/*headline*/
	.headline{font-size: 3.6vw;font-feature-settings: 'palt';}

	/*col*/
	.col p.para{font-size:4.0000vw;}
	.col h3{font-size: 6.6667vw;}

	/*midashi*/
	.col h2{font-size:5.6000vw;}

		/*応募方法*/
	.oubo{display: block;}
	.oubo.bg-green > div{font-size: 4.8000vw;width: 100%;}
	.oubo.bg-green > div:first-child{margin-bottom:20px;}

	/*結果発表*/
	.kekka{font-size:3.2000vw;}
	.kekka h3{font-size:4.8000vw;}
	.kekka .note{text-align: left;}

	/*各賞*/
	.col h2.cource_title{font-size: 5.6000vw; max-width: 100%;padding-top: 0;padding-bottom: 0;}
	.nyusen .box{display: block;}
	.nyusen .box > div{width: 100%;}
	.nyusen .box > div:not(:last-child){margin-bottom: 20px;}

	.cource_attention{font-size:3.4667vw;}
	.cource_txt1{font-size: 3.8vw;margin-bottom: 20px;}
	.cource_txt2{font-size: 3.4vw;margin-bottom: 20px;}

	.nyusen ul.note:first-of-type{margin-bottom: 30px;}
	.nyusen ul.note li{text-align: left;}

	/*審査員*/
	.shinsain .bg-brown{flex-wrap: wrap;padding: 25px; justify-content: space-between;}
	.shinsain .name{order: 2;width: 50%; margin:0;}/*name*/
	.shinsain .photo{order: 1;width: calc((241 / 600) * 100%); margin: 0;}/*photo*/
	.shinsain .text{order: 3;width: 100%;font-size:3.7333vw;margin-top: 20px}/*text*/
	.shinsain .name p:first-child{font-size: 5.0667vw;}
	.shinsain .name p:nth-child(2){font-size: 6.2667vw;}

	/*主催*/
	.shusai{width: 100%;}
	.shusai > div{flex-direction: column;}
	.shusai .dl{font-size: 4.2667vw;}
	.shusai .dt{font-size: 5.6000vw;margin: 0 0 20px 0;}

	/*規約*/
	#kiyaku{font-size: 3.2000vw;}
	#kiyaku > div{
		padding:1.5em 1em;
	}
	#kiyaku h2{
		margin-bottom:0.5em;
		font-size: 4.7vw;
	}

	/*footer*/
	#footer{margin-top: 30px; padding-bottom: 25px;}
	#footer .logo_footer{max-width: 100%; margin-bottom: 27.5px;}
	#footer p small{font-size: 2.4000vw}
	#footer .logo_footer-blk{margin-top: 90px;}

 }


 /***************
フォーム
****************/

#form{
	background-color:#ffebee;
}

#form #main{
	background-image:none;
	width:70%;
	padding:3em 4em;
	transition:all 0.3s
}

#form .main-inner{
	text-align:left;
}

@media screen and (max-width: 767px){
	#form #main{
		width:98%;
		padding:2em;
		font-size:90%
	}
}

#form h1{
	text-align:center;
	font-weight:600;
	padding:2em 0;
}
#form ul, #form ul li{
	list-style:none;
	text-indent:0;
}
#form ul li{
	margin-bottom:1.5em;
}
#form ul li:before{
	content:"";
}

#form .oubo-form-list li input,
#form .oubo-form-list li select{
	border:1px solid #000;
	padding:5px 15px;
	min-height:40px;
	width:100%;
}
#form .oubo-form-list li select{
	padding: 8px 40px 8px 15px;
	background-color:#fff;
}
#form .oubo-form-list label{
	font-weight:600;
}
#form .oubo-form-list label.fw_normal{
	font-weight:normal;
}
#form .oubo-form-list li .cont > div {
	display:flex;
	align-items:center;
}
#form .oubo-form-list li .size-text01 input{
	max-width:300px;
}
#form .oubo-form-list li .size-text02 input{
}
#form .oubo-form-list li .size-text03 input{
	max-width:150px;
	width:28%;
}

#form .oubo-form-list li .size-select01 select{
	max-width: 310px;
}
#form .oubo-form-list li .size-select02 select{
	max-width: 200px;
}

#form .oubo-form-list li .size-select02 select:not(:nth-child(1)){
	max-width:150px;
	width:22%
}
#form .oubo-form-list li .size-select02 select:first-child{
	width:30%
}

#form .oubo-form-list li .order-zip-box input{
	width: 150px;
	min-height:40px;
}
#form .lower{
	color:#f00;
	font-size:80%;
	padding-left:1em;
}
#form .suffix{
	margin-left: 0.25rem;
	margin-right: 0.25rem;
	word-break: break-word;
}
#form .upper-line{
	border-top: 1px solid #ccc;
}
#form .subtitle{
	margin: 1em 0;
}
#form .link-btn{
	cursor: pointer;
	transition: all 0.1s;
}
#form .submit-btn{
	align-items:center;
	display:flex;
	justify-content:center;
	margin-top:2em;
}
#form .submit-btn input{
	align-items: center;
	background-color: #cc0000;
	border: none;
	border-radius: 10px;
	border-radius: 10px;
	color: #fff;
	display: flex;
	font-weight: bold;
	height: 60px;
	justify-content: center;
	max-width: 272px;
	padding: 0 1em;
	-webkit-appearance: none;
	-webkit-border-radius: 10px;
}
#form .submit-btn input:hover{
	opacity:0.8;
	transition:all 0.1s;
}

#form .error-box01{
	display: inline-block;
	margin-top: 7px;
	font-size: 12px;
	color: #FF3636;
	/*padding: 6px 10px;*/
	line-height: 1;
	border-radius: 4px;
	display:none;
}

#form .oubo-form-list li input#photo{
	border:none;
	margin:5px 0 0 0;
}

#form #preview{
	align-items:center;
	border:1px solid #ccc;
	display:flex;
	margin-top:10px;
	min-height:300px;
	padding:10px;
}


#form .oubo-form-box .message{
	font-size:4.5vmin;
	text-align:center;
	margin:20vmin 0;
}

#form #footer{
	padding: 2em 1em;
	margin-left:0;
  margin-right:0;
	margin-top:4em;
  background: inherit;
}
