@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');

#work_head{
	background: rgb(255,251,218);
	background: linear-gradient(0deg, rgba(234,238,243,1) 0%, rgba(234,238,243,1) 90%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
	padding-bottom: 28px;
	margin-top: 30px;
	margin-bottom: 95px;
}
#work_head .l-container02{
	display: flex;
	justify-content: space-between;
}
#work_head h1 {
	width: 740px;
	order: 2;
}
#work_head menu{
	width: 230px;
	order: 1;
	margin-top: 80px;
}
#work_head menu li{
	font-size: 18px;
	font-weight: 500;
	line-height: 150%;
	color: #ed7aa7;
	border-bottom: #ed7aa7 dotted 3px;
}
#work_head menu li a{
	position: relative;
	display: flex;
	text-decoration: none;
	align-items: center;
	height: 80px;
	color: inherit;
	padding-left: 15px;
}
#work_head menu li a:before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-left: 9px solid #ed7aa7;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}
@media screen and (max-width:767px) {
	#work_head{
		margin-bottom: 50px;
	}
	#work_head .l-container02{
		display: block;
	}
	#work_head h1 {
		width: 100%;
	}
	#work_head menu{
		width: 100%;
		margin-top: 0;
	}
	#work_head menu ul{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#work_head menu li{
		width: 48%;
		font-size: 14px;
	}
	#work_head menu li a{
		height: 60px;
	}
}

article{
	margin-bottom: 50px;
}

p{
	font-size: 14px;
	line-height: 175%;
	letter-spacing: 0.05em;
	font-family: 'Noto Sans JP', sans-serif;
}

a{
	color: #2b5887;
}
a:hover{
	text-decoration: none;
	color: #82ad60;
}

.work_ttl01{
	position: relative;
	padding: 28px 16px 28px 38px;
	background: #2b5887;
	background-size: auto 100%;
	font-size: 24px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 40px;
	border-bottom: 3px solid #ffcfde;
}
.work_ttl01:before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	border-left: 15px solid #ffcfde;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
}
@media screen and (max-width: 767px){
	.work_ttl01{
		font-size: 18px;
		padding: 20px;
	}
	.work_ttl01:before{
		left: 5px;
		border-left: 8px solid #ffcfde;
		border-top: 4px solid transparent;
		border-bottom: 4px solid transparent;
	}
}

.work_ttl02{
	font-size : 18px;
	letter-spacing : 0.7px;
	text-align: left;
	border-bottom: #e6e6e6 solid 1px;
	padding-bottom: 13px;
	line-height: 175%;
	margin-bottom: 20px;
	font-weight: 500;
}
@media screen and (max-width: 767px){
	.work_ttl02{
		font-size: 16px;
	}
}

.work_ttl03{
	padding-left: 23px;
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 25px;
	line-height: 175%;
	color: #000;
	border-left: solid 5px #ed7aa7;
}
@media screen and (max-width: 767px){
	.work_ttl03{
		font-size: 18px;
	}
}


table.normal{
	width: 100%;
	background: #fff;
	font-size: 14px;
	margin-bottom: 30px;
	line-height: 175%;
}
table.normal:last-of-type{
	margin-bottom: 0;
}
table.normal th,
table.normal td{
	border:#e6e6e6 solid 1px;
}
table.normal th{
	padding:15px 17px;
	text-align: left;
	font-weight: bold;
	background: #f2f2f2;
	width: 200px;
	vertical-align: top;
}
table.normal td{
	padding: 15px 15px;
}

table.normal td span{
	display: inline-block;
}
table.normal td .big{
	font-size: 16px;
}
table.normal td span:not(:last-child){
	margin-bottom: 10px;
}

table.normal td .red{
	color: #D80000;
}
@media screen and (max-width: 767px){
	table.normal th,
	table.normal td{
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	table.normal th{
		border-bottom:none;
	}
	table.normal th br{
		display: none;
	}
	table.normal td b{
		font-size: 1em;
	}
}


ul.ul_normal li{
	font-size: 0.88em;
	line-height: 175%;
	position: relative;
	padding-left: 1.5em;
}

ul.ul_normal li:before{
	position: absolute;
	content: "■";
	color: #00349F;
	left: 0;
	top: 0;
}


.box2-1_row{
	display: flex;
	justify-content: space-between;
}

.box2-1_row:not(:last-child){
	margin-bottom: 30px;
}

.box2-1_row > *:first-child{
	order: 2;
	width: 30%;
}

.box2-1_row > *:last-child{
	order: 1;
	width: 65%;
}

@media screen and (max-width: 767px){
	.box2-1_row{
		display: block;
	}

	.box2-1_row > *:first-child{
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.box2-1_row > *:first-child img{
		width: 60%;
	}

	.box2-1_row > *:last-child{
		width: 100%;
	}
}

.box1-2_row{
	display: flex;
	justify-content: space-between;
}

.box1-2_row:not(:last-child){
	margin-bottom: 30px;
}

.box1-2_row > *:first-child{
	width: 30%;
}

.box1-2_row > *:last-child{
	width: 65%;
}

@media screen and (max-width: 767px){
	.box1-2_row{
		display: block;
	}

	.box1-2_row > *:first-child{
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.box1-2_row > *:first-child img{
		width: 60%;
	}

	.box1-2_row > *:last-child{
		width: 100%;
	}
}

.box1-1_row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.box1-1_row > *{
	width: 49%;
	margin-bottom: 20px;
}

@media screen and (max-width: 767px){
	.box1-1_row:not(.wide_fix) > *{
		width: 100%;
	}
}


.box_3col{
	float: left;
	width: 31.11%;
	margin-right: 3.33%;
}

.box_3col:nth-child(3n){
	margin-right: 0;
}

@media screen and (max-width: 767px){
	.box_3col{
		float: none;
		width: 100%;
		margin-right: 0;
	}
}


.movie_1col{
	width: 560px;
	margin-left: auto;
	margin-right: auto;
}

.movie_1col:not(:last-child){
	margin-bottom: 30px;
}

@media screen and (max-width: 767px){
	.movie_1col{
		width: 100%;
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
	}

	.movie_1col iframe{
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

.movie_2col{
	width: 100%;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.movie_2col iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


.soon{
	padding: 30px 0;
}

figcaption{
	font-size: 10px;
	line-height: 175%;
	text-align: left;
}

@media screen and (max-width:767px) {
	figcaption{
		text-align: center;
	}
}

@media screen and (max-width:767px) {
	.u-pc{
		display: none !important;
	}
}


/*---------------------------------
	#gaiyou
----------------------------------*/
#gaiyou p.top{
	margin-bottom: 30px;
}

/*ext*/
#gaiyou .box1-1_row.top{
	margin-bottom: 50px;
}

#gaiyou figure{
	/*margin-top: 83px;*/
	width: 840px;
	margin: 83px auto 40px;
	text-align: center;
}
#gaiyou figure img:not(:last-child){
	display: inline-block;
	margin-bottom: 45px;
}


@media all and (max-width:767px) {
	#gaiyou figure {
		width: 100%;
		margin-top: 30px;
	}
	#gaiyou figure img:last-child{
		margin-top: 20px;
	}
	#gaiyou .box1-1_row.top{
		margin-bottom: 30px;
	}
}

/*---------------------------------
	#schedule
----------------------------------*/
#schedule .soon{
	padding: 40px 0;
	font-size: 0.94em;
}

#schedule .top{
	display: flex;
	justify-content: space-between;
}

#schedule .top .r_box{
	width: 168px;
	padding: 0 38px 10px 0;
}
#schedule .table_wrap{
	width: 100%;
	margin-bottom: 33px;
}
#schedule table{
	width: 1000px;
}
#schedule table tr:first-of-type th,
#schedule table tr:first-of-type td{
	text-align: center;
	font-weight: normal;
}
#schedule table th,
#schedule table td{
	border: #ccc solid 1px;
	vertical-align: middle;
	font-size: 14px;
}
#schedule table th{
	border-right: none;
	background: #FFF9CA;
	font-weight: bold;
	padding: 17px;
}
#schedule table td{
	padding: 0 5px;
	line-height: 143%;
}
#schedule .red{
	margin-top: 20px;
	color: #D80000;
}
@media all and (max-width:767px) {
	#schedule .table_wrap{
		overflow: scroll;
	}

	#schedule .top{
		display: block;
	}

	#schedule .top .r_box{
		width: 100%;
		text-align: right;
		padding: 15px 0;
	}
	#schedule .top .r_box img{
		width: 30%;
	}
}

/*---------------------------------
	#dantai
----------------------------------*/
#dantai .top{
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

#dantai span{
	color:#7F4D1F;
	font-weight: bold;
}

#dantai table{
	width: 100%;
	background: #fff;
	font-size: 0.8125em;
	margin-bottom: 30px;
	margin-top: 30px;
	line-height: 175%;
}
#dantai table th,
#dantai table td{
	border:#ccc solid 1px;
}
#dantai table th{
	padding:0 15px;
	text-align: left;
	font-weight: bold;
	vertical-align: middle;
	white-space: nowrap;
}
#dantai table td{
	padding: 15px 15px;
}
#dantai table td a{
	margin-right: 15px;
	display: inline-block;
}

@media all and (max-width:767px) {
	#dantai .top{
		display: block;
	}

	#dantai table th,
	#dantai table td{
		display: block;
	}
	#dantai table th{
		border-bottom:none;
	}
	#dantai table th br{
		display: none;
	}
}


/*---------------------------------
	#chiku block
----------------------------------*/
#chiku span.ac{
	color:#0c4f87;
	font-weight: bold;
}
#chiku .detail{
	margin-top: 30px;
}
#chiku table{
	width: 100%;
	background: #fff;
	font-size: 0.8125em;
	margin-bottom: 30px;
	margin-top: 30px;
	line-height: 175%;
}
#chiku table th,
#chiku table td{
	border:#ccc solid 1px;
}
#chiku table th{
	padding:0 15px;
	text-align: left;
	font-weight: bold;
	vertical-align: middle;
	white-space: nowrap;
}
#chiku table td{
	padding: 20px 15px;
}

#chiku table td .dib{
	display: inline-block;
	vertical-align: middle;
}

#chiku table td img{
	vertical-align: middle;
	margin-left: 50px;
}

#chiku .box1-1_row.img{
	margin: 30px 0;
}

#chiku table.mid th{
	padding: 0 40px;
}
#chiku table.mid th,
#chiku table.mid td{
	height: 106px;
	vertical-align: middle;
}
#chiku table.mid td{
	padding: 0 15px;
}

#chiku table.bottom th{
	background: #FFF9CA;
	width:80px;
	padding: 0;
	text-align: center;
}

@media all and (max-width:767px) {
	#chiku table:not(.bottom) th,
	#chiku table:not(.bottom) td{
		display: block;
	}
	#chiku table:not(.bottom) th{
		border-bottom:none;
	}
	#chiku table:not(.bottom) th br{
		display: none;
	}

	#chiku table.mid th,
	#chiku table.mid td{
		height: auto;
		padding: 15px;
	}

	#chiku table td img{
		width: 70px;
		display: block;
		margin: 0 auto;
	}
}

/*---------------------------------
	#form block
----------------------------------*/
#form{
	margin-bottom: 80px;
}
#form .top{
	margin-bottom: 50px;
}
#form dl{
	margin-bottom: 40px;
}
#form dt{
	font-size: 16px;
	font-weight: bold;
	line-height: 175%;
}
#form dd{
	font-size: 14px;
	margin-bottom: 10px;
	line-height: 175%;
}
#form .att{
	font-size: 14px;
	color:#D80000;
	margin-bottom: 10px;
}
#form .att2{
	font-size: 1.2em;
	margin: 30px 0 20px;
}

#form .red{
	color:#D80000;
}

#form .mid{
	vertical-align: middle;
}
#form .v_top{
	vertical-align: top;
}
#form_main th span{
	color:#D80000;
}
#form_main table{
	line-height: 175%;
	margin-bottom: 40px;
}
#form_main th{
    width: 250px;
	font-weight: bold;
	text-align: left;
	font-size: 15px;
	padding: 5px 20px 5px 0;
}
#form_main th.va_top{
	vertical-align: top;
}
#form_main th.t{
	line-height: 175%;
	padding-top: 15px;
	padding-bottom: 15px;
}
#form_main th.pb{
	padding-bottom: 35px;
}
#form_main th.lh{
	line-height: 150%;
}
#form_main td{
	width: 750px;
	font-size: 14px;
	padding: 5px 0;
	line-height: 175%;
}
#form_main td span.normal{
	font-size: 1.08em;
}
#form_main td.va_mid{
	vertical-align: middle;
}
#form_main th.wide,
#form_main td.wide{
	padding: 20px 0;
}
#form label{
	display: inline-block;
	margin-right: 22px;
	font-size: 14px;
	line-height: 3em;
}
#form .form_count label{
	margin-right: 0;
}
#form .form_count label:first-child{
	float: left;
}
#form input[type="text"]{
	border:#ccc solid 1px;
	height: 35px;
	width:400px;
	margin-right: 10px;
}

#form .form_count input[type="text"]{
	width: 40px;
	height: 20px;
	margin: 0 5px;
}

#form input[type="radio"]{
	margin-right: 10px;
}

#form table.form input.short{
	width:200px;
}

#form textarea{
	font-size: 14px;
	padding: 10px;
	border:#ccc solid 1px;
	width: 500px;
	height: 100px;
}

#form select{
	margin-top: 5px;
	font-size: 15px;
}

#form .send_btn{
	text-align: center;
}

#form .send_btn input{
	border:none;
	font-size: 1em;
	font-weight: bold;
	width:200px;
	padding: 16px 0;
}
#form .send_btn input[type="submit"]{
	background: #666;
	color:#fff;
	cursor: pointer;
}
#form .send_btn input[type="button"]{
	background: #ddd;
	color:#444;
	margin-left: 20px;
	cursor: pointer;
}



@media screen and (max-width: 767px){
    #form input[type="text"]{
		width:60%;
	}
    #form .start label{
        display: inline-block;
    }

	#form_main table th,
	#form_main table td{
		display: block;
        width: 100%;
	}
	#form_main table th.spacer_pc{
		display: none;
	}
	#form input[type="text"]{
		width:60%;
	}
	#form textarea{
		width:100%;
	}
	#form label:after{
		content: "\A";
		white-space: pre ;
	}

	#form_main th.pb{
		padding-bottom: 0;
	}


	#form .send_btn input{
		width: 45%;
	}

	#form label{
		line-height: 150%;
	}

    #form dl{
        margin-bottom: 0;
    }
}
