@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;

}

