@charset "utf-8";

/******************** 共通 *******************/

body,
html {
	margin: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	word-wrap: break-word;
	overflow-wrap: break-word;
	font-family:Arial,"MSゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", sans-serif;
}

body {
	font-size: 17px;
	font-weight: 300;
	line-height: 1.8;
	color: #40210F;
}


h4{
	font-size: 20px;
	font-weight: bold;
	line-height: 2.8;
	color: #D7557B;
}

html {
	scroll-behavior: smooth;
}

main {
	background: #fffcdb;
}

li {
	display: list-item;
}

a {
	color: #000;
	text-decoration: none;
}

a:hover {
	transition: opacity .2s ease;
	opacity: 0.5;
}

div.top_gnavi{
float: right;
}


.pc-view {
	display: block !important;

}

.sp-view {
	display: none !important;
}

.view-767 {
	display: none !important;
}

.view-7672 {
	display: none !important;
}

.view-617 {
	display: none !important;
}

.container {
	width: 1000px;
	margin: 0 auto;

}

.box {
	margin-bottom: 70px;

}

.under-box {
	margin-bottom: 80px;
}

.content-box {
	margin-bottom: 40px;
}

.content-box p{
	font-size: 20px;
}

.Toggle {
	display: none;
}

.content-title {
	font-size: 36px;
	line-height: 1.6;
	font-weight: bold;
	color: #000;
	text-align: center;
}

.content-title span {
	display: block;
	font-size: 20px;
	color: #0076d2;
	font-weight: bold;
}

@media screen and (max-width: 1024px) {

	.pc-view {
		display: none !important;
	}

	.sp-view {
		display: block !important;
	}

	.container {
		width: 80%;
		margin: 0 auto;
	}

	.box {
		margin-bottom: 0;
	}

	.under-box {
		margin-bottom: 30px;
	}
	
	.content-box {
		margin-bottom: 20px;
	}
    


	.none-767 {
		width: 40%;
		height: auto;
	}
    	.none-7672 {
		width: auto;
		height: auto;
	}
}

@media screen and (max-width: 617px) {

	.none-617 {
		display: none !important;
	}

	.view-617 {
		display: block !important;
	}
}

@media screen and (max-width: 767px) {

	.none-767 {
		display: none !important;
	}

	.view-767 {
		display: block !important;
	}
    
    	.none-7672 {
		display: none !important;
	}

	.view-7672 {
		display: block !important;
	}
    
    .content-box p{
	font-size: 17px;
}
}

div.re-content-box{
padding: 200px 100px 100px 100px;
text-align: center;
}

@media screen and (max-width: 767px) {

div.re-content-box{
padding: 100px 100px 50px 100px;
text-align: center;
}
}

section.pc-view{
    margin: 5px 0px 0px 18%;
}

/******************** ボタン *******************/
.btns {
	display: block;
	width: 100%;
	max-width: 240px;
}

.btns a {
	color: #fff !important;
	display: block;
	text-align: center;
	padding: 0 50px 0 40px;
	font-weight: bold;
	font-size: 15px;
	border-radius: 6px;
	background: url(../img/ico_arrow.png) center right 10px no-repeat;
	background-size: 10px;
	background-color: #2C587C;

}

.btn {
	width: 100%;
	max-width: 180px;
    text-align: left;

}

.btn a {
	color: #fff !important;
	display: block;
	text-align: center;
	padding: 0 25px 0 25px;
	font-weight: bold;
	font-size: 14px;
	border-radius: 6px;
	background: url(../img/ico_arrow.png) center right 10px no-repeat;
	background-size: 5px;
	background-color: #00ABA7;
}

.pc-btn {
    float: left; 
    padding: 0px 3px 0px 0px;
}



.pc-btnshonsen {
    margin: 0 auto;
    margin-top: -30px;
}

.pc-btnshonsen2 {
    margin: auto;
    display: block;
    margin-top: 30px;
}


.pc-btns {
    margin: 0 auto;
    margin-bottom: 50px
}

.under-btn {
	width: 450px;
	margin: 0 auto;
	margin-top: 15px;
}




.contact-btn a {
	color: #fff !important;
	display: block;
	text-align: center;
	padding: 15px 0;
	font-weight: bold;
	font-size: 22px;
	border-radius: 10px;
	background: url(../img/ico_mail.png) center left 20px no-repeat;
	background-size: 45px;
	background-color: #00ABA7;
}

.download-btn a {
	color: #fff !important;
	display: block;
	text-align: center;
	padding: 15px 0;
	font-weight: bold;
	font-size: 22px;
	border-radius: 10px;
	background: url(../img/ico_arrow.png) center right 10px no-repeat;
	background-size: 12px;
	background-color: #E96300;
}


@media screen and (max-width: 1024px) {

	.btn {
		display: block;
		max-width: 280px;
		margin: 0 auto;
	}
	
	.btn a {
		color: #00ABA7 !important;
		display: block;
		text-align: right;
		padding: 0 50px 0 40px;
		font-weight: bold;
		font-size: 20px;
		border-radius: 6px;
		background: url(../img/ico_arrow_sp.png) center right 10px no-repeat;
		background-color: #fff;
	}

	.under-btn {
		width: 100%;
		margin: 0 auto;
		margin-top: 15px;
	}
		
	.download-btn a {
		padding: 15px 0;
		font-size: 16px;
	}
	
	.contact-btn a {
		padding: 15px 0;
		font-size: 16px;
	}
}


@media screen and (max-width: 375px) {

	.download-btn a {
		font-size: 15px;
		background: url(../img/ico_arrow.png) center right 10px no-repeat;
		background-size: 3%;
		background-color: #E96300;

	}
	
	.contact-btn a {
		font-size: 15px;
		background: url(../img/ico_mail.png) center left 15px no-repeat;
		background-size: 12%;
		background-color: #00ABA7;
	}
}




.fixed_btn { 
position: fixed;
bottom: 50%;
right: 30px;
z-index: 99999;
}

@media screen and (max-width: 767px) {
.fixed_btn {
display: none;
}
}



.sppoint {
display: none;
}

@media screen and (max-width: 767px) {
.sppoint  {
display: block;

text-align: center;
}
}



/******************** ヘッダー *******************/





.top_header {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin:0 auto;
    top: 0;
	padding: 14px 0;
	z-index: 1;
	position: fixed;
	background: rgba( 255, 255, 255, 0.9);
}




.top_nav ul {
    margin-right: 140px;
	display: flex;
	justify-content: space-between;
}

.top_nav ul li {
    font-size: 14px;
    left: auto;
    letter-spacing: 1px;
    position: relative;
    height: 100%;
    padding: 0 8px;
	border-left: 1px solid #909090;
    text-align: center;
}

.top_nav ul li:nth-child(5) {
	border-right: 1px solid #909090;
}

.top_nav ul li a {
    height: 100%;
    padding: 0 8px;
    color: #3A3A3A;
	font-weight: bold;
}

.top_nav ul li span a {
    display: block !important;
    margin-left: 10px;
}

.top_header .top_logo {
	margin-left: 75px;
    display: flex;
    align-items: center;
}

.top_logo a {
	display: flex;
    align-items: center;
}

.top_logo a:hover {
	transition: unset;
	opacity: unset;
}

.top_nav {
    display: inline-block;
    align-items: center;
}

.nav_contact {
	background: #00c0ff;
	padding: 18px 25px;
}

@media screen and (max-width: 1024px) {

	.top_nav {
	  display: none;
	  position: absolute;
	  top: 60px;
	  left: 0;
	  width: 100%;
	  z-index: 99;
	  background: #fff;
	}

	.top_nav .nav-items {
	  width: 100%;
	  flex-direction: column;
	}

	.nav-items > li {
	  color: #212121;
	}

	.nav-items > li > a {
	  display: block;
	  width: 100%;
	  padding: 2rem;
	  color: #212121;
	  text-align: left;
	  line-height: 20px;
	}

	.top .nav-items > li > a {
	  color: #212121;
	}

	#nav-toggle {
	  display: block;
	}

	.top_header .top_logo {
		margin-left: 20px;
	}	

	.top_header {
		padding: 11px 0;
	}
}


@media only screen and (max-width: 767px) {

	.top_header {
		padding: 7.5px 0;
	}
}


/******************** ハンバーガーメニュー *******************/
  
  @media only screen and (max-width: 1024px) {
	nav.top_nav.active {
		display: block;
	}

	.hamburger {
		display: block;
		position: fixed;
		z-index: 3;
		right: 0;
		top: 0;
		width : 80px;
		height: 80px;
		cursor: pointer;
		text-align: center;
		background: #00ABA7;
	}

	.hamburger span {
		display: block;
		position: absolute;
		width: 37px;
		height: 6px;
		background : #fff;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}

	.hamburger span:nth-child(1) {
		top: 21px;
		left:50%;
		transform: translateX(-50%);
	}

	.hamburger span:nth-child(2) {
		top: 36px;
		left:50%;
		transform: translateX(-50%);
	}

	.hamburger span:nth-child(3) {
		top: 51px;
		left:50%;
		transform: translateX(-50%);
	}

	/* ナビ開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
		top : 36px;
		left: 21.5px;
		background : #fff;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 36px;
		left: 21.5px;
		background : #fff;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}

	.top_header .top_nav {
		position: fixed;
		z-index: 2;
		top: 79px;
		left: 0;
		color: #fff;
		background: #00ABA7;
		text-align: center;
		width: 100%;
		display: none;
		transition: opacity .6s ease, visibility .6s ease;
	}

	.top_header .top_nav ul {
		text-align: center;
		margin: 35px auto 0;
		padding: 0;
		display: flex;
		flex-direction: column;
	}

	.top_header .top_nav ul li {
		width: 100%;
		padding: 0 0 30px 0;
		border-left: none;
		list-style-type: none;
	}

	.top_header .top_nav ul li a {
		display: block;
		color: #fff;
		text-align: center;
		text-decoration :none;
	}

	.top_nav ul li:nth-child(4) {
		border-right: none;
	}
}

@media only screen and (max-width: 767px) {

	.hamburger {
		width: 55px;
		height: 55px;
	}

	.hamburger span {
		width : 25px;
		height: 4px ;
	}

	.hamburger span:nth-child(1) {
		top: 16px;
	}

	.hamburger span:nth-child(2) {
		top: 26px;
	}

	.hamburger span:nth-child(3) {
		top: 36px;
	}

	/* ナビ開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
		top : 26px;
		left: 15px;
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 26px;
		left: 15px;
	}

	.top_header .top_logo {
		width: 243px;
	}

	.top_header .top_nav {
		top: 55px;
	}
}


/********************メインビジュアル*******************/

.responsive {
width: 100%;
aspect-ratio: 16/9;
}

.mvmovie {
	margin-top: 110px;
	margin-bottom: 80px;
}


.mainVisual {
	margin-top: 110px;
	margin-bottom: 80px;
}

.mainVisual__slide--item {
	margin: 0 auto;
    position: relative;
}

.mainVisual__slide--item img {
	max-width: 100%;
	height: auto;
}

@media screen and (max-width: 1024px){
	
	.mvmovie {
		margin-top: 80px;
	}
	
	.mainVisual {
		margin-top: 80px;
	}
}
	
@media screen and (max-width: 767px){
	
	.mvmovie {
		margin-top: 55px;
		margin-bottom: 45px;
	}
	
	.mainVisual {
		margin-top: 55px;
		margin-bottom: 45px;
	}
}
	

/******************** 募集内容 *******************/

.theme {
	position: relative;
	text-align: center;
	border:solid #EF941B;
	background: #fff;
	border-width:4px 0px 4px 0;
    margin: 50px 0px 20px 0px ;
}

.theme p {
	text-align: center;
	font-size: 35px;
	font-weight: bold;
	padding: 65px 0px 10px 0px;
}

.theme p.small {
	text-align: center;
	font-size: 16px;
	padding: 10px 20px 45px 20px;
}

.content-title {
	position: absolute;
	width: 367px;
	margin: 0 auto;
	font-weight: bold;
	color: #fff;
	border-radius: 10px;
	padding: 5px 0;
	font-size: 32px;
	top: 0;
	left:50%;
	transform: translateY(-50%) translateX(-50%);
}

.bg_or {
	background: #EF941B;
}

.overview {
	margin: 40px 0 50px 0;
	font-weight: bold;
}


.overview-dl {
	text-align: center;
}

.shinsa-dl{
font-size: 120%;
}

.shinsa-dl dt{
font-weight: bold;
}


.overview dl {
	font-size: 28px;
	display: inline-block;
	text-align: left;
	width: 100%;
}

.overview dt {
	font-weight: bold;
	text-align: left;
}

.overview dd {
	font-weight: bold;
}

/*2024うまいっしょ結果のCSS*/
.strong-box{
    padding: 50px 40px 15px 40px !important;
}
@media screen and (max-width: 868px) {
.strong-box{
    padding: 50px 20px 15px 20px !important;
}
}


.strong-txt{
    	font-size: 30px;
	display: inline-block;
	text-align: center;
	width: 100%;
    padding: 0px !important;
    line-height: 3.5rem !important;
}

.strong-button {
    vertical-align:middle; 
    margin: 40px 0;
    text-align: center;
}


.strong-button a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    border-radius: 9999px;
    max-width: 250px;
    padding: 10px 25px;
    color: #fff;
    line-height: 1.8;
    text-decoration: none;
    transition: 0.2s ease-in-out;
    font-weight: bold;
        background: linear-gradient(270deg , rgba(255, 43, 106, 1), rgba(254, 167, 64, 1));
    background-position: 1% 50%;
    background-size: 200% auto;
}

.strong-button a:hover {
    color: #fff;
    background-position: 99% 80%;
}

.strong-button a:after {
    content: '';
    width: 9px;
    height: 9px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 46%;
    right: 20px;
    transition: 0.3s ease-in-out;
}

.strong-box-pic{
    object-fit: cover;
    margin-bottom: 30px;
}
/*2024うまいっしょ結果のCSS ここまで*/


@media screen and (max-width: 868px){

	.theme p {
		font-size: 30px;
		line-height: 1.2;
		padding: 65px 0px 10px 0px;
	}

	.theme p.small {
		font-size: 15px;
		line-height: 1.2;
	}
    
	.overview {
		text-align: center;
		margin: 20px 0;
	}	
	
	.overview dl {
		
		margin: 0 auto;
		
	}

}

@media screen and (max-width: 865px){

	.overview dl {
		font-size: 20px;
		margin: 0 auto;
		
	}
}

@media screen and (max-width: 768px){
.shinsa-dl{
font-size: 100%;
margin-bottom: 20px;
}

p{

	margin-bottom: 20px;	
	}
}

@media screen and (max-width: 510px){
	
	.content-title {
		width: 250px;
		margin: 0 auto;
		font-weight: bold;
		color: #fff;
		border-radius: 8px;
		font-size: 21px;
		padding: 4px 0;
	}
	
	.theme p {
		font-size: 20px;
		line-height: 1.2;
		padding: 35px 0px 0px 0px;
	}
    
    	.theme p.small {
		font-size: 13px;
		line-height: 1.2;
		padding: 0px 10px 5px 10px;
	}

	.overview dl {
		font-size: 17px;
		
	}
}

@media screen and (max-width: 375px){

	.overview dl {
		
	}
}

@media screen and (max-width: 320px){
	
	.content-title {
		width: 220px;
		font-size: 20px;
	}
	
	.theme p {
		font-size: 18px;
		line-height: 1.2;
	}
    	.theme p.small {
		font-size: 12px;
		line-height: 1.2;
	}
}


/******************** 審査員 *******************/

section.work article{
display: flex;
margin: 0px 0px 30px 0px;
padding: 0px 00px 30px 00px;

}



@media screen and (max-width: 640px) {
section.work article{
	display:block;
}

section.work article img{
display:block;
width: auto;
	margin:0px auto 20px;
}
}

section.work article div.contWork{
margin: 0px 20px 0px 20px;
}



section.work article h3{
text-align: left;
font-weight: bold;
color: #40210F;
margin: 0px 0px 10px 0px;
padding: 10px 00px 10px 00px;
font-size: 110%;
}

section.work article p{
text-align: left;
font-size: 90%;
line-height: 1.5;
}

section.work article span{
font-size: 80%;
}



/******************** お知らせ *******************/

div.movie{

text-align: center;
margin: 0px 0px 50px 0px;
}

@media screen and (max-width: 640px) {
div.movie{
width: 100%;
aspect-ratio: 16/9;
text-align: center;
margin: 0px 0px 50px 0px;
}
}

.news {
	position: relative;
	border:solid #33A4D4;
	background: #fff;
	border-width:4px 0px 4px 0;
	margin: 80px 0 50px 0;
}

.bg_bl {
	background: #33A4D4;
}

/* 本戦 */

div.lined{
	list-style: none outside;
	display: flex;
	flex-wrap: wrap;
	flex-wrap: nowrap;
	text-decoration: none;
	color: #000;
	border-bottom: 1px solid #AFAFAF;
	padding: 0px 0;
    margin: 30px 40px 0px 40px;
}

div.btnshonsen{
	margin: 50px 40px;
}

div.btnshonsen2{
	margin: 40px 10px 10px 10px;
}


.news-listhonsen {
	list-style: none outside;
	margin: 50px 40px;
	padding: 0;
}

.news-listhonsen .item {
	display: flex;
	flex-wrap: wrap;
	flex-wrap: nowrap;
	text-decoration: none;
	color: #000;
}

.news-listhonsen .item:last-child{
	border-bottom: none;
  }

.news-listhonsen .item .date {
	margin: 0;
	font-weight: bold;	
	padding: 0 140px 0 0;
}

.news-listhonsen .item .title {
	margin: 0;
	width: 100%;
}


@media screen and (max-width: 868px){

	.news {
		margin: 45px 0 50px 0;
	}

	.news-listhonsen {
		font-size: 17px;
		list-style: none outside;
		margin: 20px 20px 0 20px;
		padding: 0;
	}

	.news-listhonsen .item {
		flex-wrap: wrap;
		padding: 20px 0;
	}

	.news-listhonsen .item .title {
		margin-top: 10px;
	}

}
	
@media screen and (max-width: 510px){

	.news {
		margin: 45px 0 50px 0;
	}

	.news-listhonsen {
		font-size: 15px;
	}
}


p.title h6{
    font-size: 120%;
    font-weight: bold;
    
}


	
	/* 本戦おわり */
    


.news-list {
	list-style: none outside;
	margin: 50px 45px;
	padding: 0;
}

.news-list .item {
	display: flex;
	flex-wrap: wrap;
	flex-wrap: nowrap;
	text-decoration: none;
	color: #000;
	border-bottom: 1px solid #AFAFAF;
	padding: 20px 0;
}

.news-list .item:last-child{
	border-bottom: none;
  }

.news-list .item .date {
	margin: 0;
	font-weight: bold;	
	padding: 0 140px 0 0;
}

.news-list .item .title {
	margin: 0;
	width: 100%;
}
	
@media screen and (max-width: 868px){

	.news {
		margin: 45px 0 50px 0;
	}

	.news-list {
		font-size: 17px;
		list-style: none outside;
		margin: 20px 20px 0 20px;
		padding: 0;
	}

	.news-list .item {
		flex-wrap: wrap;
		padding: 20px 0;
	}

	.news-list .item .title {
		margin-top: 10px;
	}

}
	
@media screen and (max-width: 510px){
.news-list .item .title {
	font-size: 15px;
}
	
    
	.news {
		margin: 45px 0 50px 0;
	}

	.news-list {
		font-size: 12px;
	}
}
	


/******************** 概要 *******************/

.bg_white {
    font-family: 'ＭＳ ゴシック', 'MS Gothic', 'Osaka－等幅', 'Osaka-mono', 'monospace';
	background: #fff;
	padding: 25px 0;

}

dt {
	float: left;
}

dt::after {
	content: "　";
}

.sponser {
	width: 1000px;
	margin: 0 auto;
    font-size: 95%;
}

.sponser dt {

	font-weight: bold;
}

.sponser dt::before {
	content: "";

	font-weight: bold;
	display: inline-block;
	width: 13px;
	height: 13px;
	background: #40210F;
	margin-right: 3px;
}


@media screen and (max-width: 1024px){

	.sponser {
		width: 85%;
		margin: 0 auto;
	}
}

@media screen and (max-width: 510px){

	.sponser {
		font-size: 11px;
	}

	.sponser dt::before {
		display: inline-block;
		width: 9px;
		height: 9px;
		background: #40210F;
		margin-right: 2px;
	}
	
}
	
  /******************** 審査結果 *******************/  
    

div.resultgroup{

    text-align: center;
	max-width: 1100px;
    display: block;

}


/******************** フッター *******************/

footer {

    background: #D7557B;
}

.footer_box {

	font-size: 17px;
    color: #fff;
	text-align: center;
	padding: 25px 0 17px 0;
	border-bottom: 1px solid #fff;
}

.footer_box a {

    color: #fff;
}

.copyright {
	color: #fff;
	padding: 15px 0;
    text-align: center;
}

small {
	font-size: 14px;
}	


@media screen and (max-width: 510px){

	.footer_box p {
		font-size: 13px;
	}

	small {
		font-size: 10px;
	}	
	
}



/******************** 下層共通 *******************/

section.bunnerokome {
    display: flex;
    justify-content: center;
	margin: 0px  0px 50px 0px;
    
}

div.okomebunner img {
    margin: 30px  5px 100px 5px;

}

@media screen and (max-width: 1050px){

section.bunnerokome {
    display: block;
    text-align: center;
	margin: 0px  0px 30px 0px;
    
}
div.okomebunner img  {
    margin: 10px  0px 10px 0px;
    
}
}



section.bunner {
    display: flex;
    justify-content: center;
    
}

div.sponserbunner {
    margin: 50px  30px 30px 30px;

}

@media screen and (max-width: 750px){

section.bunner {
    display: block;
    text-align: center;
    
}
div.sponserbunner {
    margin: 20px  0px 20px 0px;
    
}
}


section.bunnersmall {
    display: flex;
    justify-content: center;
    
}

div.bunnersmall {
    margin: 0px  30px 30px 30px;

}

@media screen and (max-width: 750px){

section.bunnersmall {
    display: block;
    text-align: center;
    
}
div.bunnersmall {
    margin: 20px  0px 20px 0px;
    
}
}



.under-title {
	font-size: 38px;
	font-weight: bold;
	color: #D7557B;
	text-align: center;
	margin-top: 80px;
	margin-bottom: 10px;
	padding-top: 70px;
}

.bg_pink {
	background: #D7557B;
	font-size: 24px;
	font-feature-settings: "palt";
	font-weight: bold;
	color: #fff;
	padding: 0 0 0 20px;
	margin-bottom: 30px;
}

.content h3 {
	color: #D7557B;
	font-size: 20px;
	font-weight: bold;
	font-feature-settings: "palt";

}

p.pinkpoint {
	color: #D7557B;
	font-size: 20px;
	font-weight: bold;
	font-feature-settings: "palt";

}

.content p {
	font-size: 20px;
}

.text-bold li {
	font-weight: bold;
}

.content-list ul {
	padding-left:20px;
}

.content-list ul li {
	font-size: 20px;
	list-style-type: disc; 
}

.nijuumaru::before {
	content: "";
	position:relative;
    top:1px;
	display: inline-block;
	width: 10px;
	height: 10px;
	border: double 4px #D7557B;
	border-radius: 50%;
	margin-right: 1.5px;
}


.bg_table {
	background: #D7557B;
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	padding: 0 0 0 20px;
	margin-bottom: 5px;
}

.content-box ul,ol {
	font-size: 20px;
	list-style-position: inside;
}

.content-box ul li {
	list-style-type: none; 
}

.content-box ul li::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	background: #40210F;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	-o-border-radius: 50px;
	-ms-border-radius: 50px; 
	border-radius: 50px;
	vertical-align: 5px;
	margin-right: 5px;
}

.content-box ol {
	list-style-type: decimal;
}

.marunumber ol {
	list-style-type: none;
	counter-reset: list-counter;
	padding: 0;
	margin: 0;
}
/*
.marunumber li {
	line-height: 1.5;
	margin: 20px 0;
	padding-left: 30px;
	position: relative;
	list-style-position: inside;
}

.marunumber li:before {
	content: counter(list-counter);
	counter-increment: list-counter;
	border: 1px solid;
	box-sizing: border-box;
	border-radius: 50%;
	height: 22px;
	width: 22px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 3px;
	left: 0;
	font-size: 85%;
}
*/ 

@media screen and (max-width: 1024px){
	
	.under-title {
		padding-top: 50px;
	}
}

@media screen and (max-width: 868px){
	
		.bg_pink {
		font-size: 24px;
		line-height: 1.3;
		margin-bottom: 20px;
		padding: 6px 0 3px 15px;
	}

	.content h3 {
		font-size: 20px;
	}
	
	.content p {
		font-size: 20px;
	}

	.bg_table {
		font-size: 24px;
		margin-bottom: 20px;
		margin-bottom: 5px;
		padding: 0 0 0 15px;
	}
}

@media screen and (max-width: 767px){
	
	.under-title {
		margin-top: 50px;
	}
}

@media screen and (max-width: 510px){

	.under-title {
		font-size: 25px;
		margin-top: 50px;
		margin-bottom: 5px;
		padding-top: 35px;
	}
	
	.bg_pink {
		font-size: 16px;
	}

	.content h3 {
		font-size: 13px;
	}
	
	.content-list ul li {
		font-size: 17px;
	}
	
	.content-box ul,ol {
		font-size: 17px;
	}

	.content p {
		font-size: 17px;
	}
	
	.bg_table {
		font-size: 17px;
	}

	.nijuumaru::before {
		top: 1.5px;
		width: 5px;
		height: 5px;
		border-radius: 50%;
		margin-right: 1.5px;
	}

	.content-box ul li::before {
		vertical-align: 3px;
		margin-right: 3px;
	}	
}


div.bunnerresult{
text-align: center;
padding: 10px 0px 10px 0px;
}

div.bunnerresult img{
height: auto;
}



/******************** キャンペーン *******************/
.sp_br {
display: none;
  }
@media screen and (max-width: 768px) {
  .sp_br {
  display: block;
  }
  }

.responsive {
width: 100%;
aspect-ratio: 16/9;
}


.campagin_mainVisual {
	margin-top: 110px;
}

.campagin_mainVisual__slide--item {
	margin: 0 auto;
    position: relative;
}

.campagin_mainVisual__slide--item img {
	max-width: 100%;
	height: auto;
}

@media screen and (max-width: 1024px){
	
	.campagin_mainVisual {
		margin-top: 80px;
	}
}
	
@media screen and (max-width: 767px){
	
	.campagin_mainVisual {
		margin-top: 55px;
	}
}
	
section.campagin{
background-color:  #F6F1D6; 
}

section.campagin h3{
text-align: center;
font-size: 160%;
color: #9F071C;
font-family: serif;
padding: 50px 10px 20px 10px;
}

@media screen and (max-width: 767px){
	
section.campagin h3 {
font-size: 110%;
padding: 10px 10px 0px 10px;
	}
}


section.campagin h4{
text-align: center;
font-size: 220%;
color: #798232;
font-family: serif;
padding: 0px 10px 20px 10px;
}

@media screen and (max-width: 767px){
	
	section.campagin h4 {
    font-size: 160%;

	}
}

.campagin_contents {
     width: 100%;
     max-width: 1200px;
     margin: auto;
     padding-bottom: 30px;
 }
 .campagin_contents img {
     width: 100%;
 }
  .title-center {
   font-size: 130%;
   color: #A2630D;
   font-weight: bold;
   padding: 15px 5px 5px 25px ;
 }
 .text-center {
 padding: 5px 5px 5px 25px ;
   
 }
 .flexbox {
     display: flex;
 }
 .box1 {
     width: 55%;
     margin: auto;
 }
 .box2 {
     width: 45%;
     margin: auto .5rem;
 }
 @media screen and (max-width: 767px) {
   .title-center {
   padding: 15px 15px 5px 15px ;
 }
    .text-center {
    padding: 5px 15px 5px 15px ;
   
 }
     .flexbox {
         display: block;
     }
     .flexbox .box1 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box2 {
         width: 100%;
         margin: 0 auto;
     }
 }
 
div.campagin_info {
	max-width: 650px;
    margin-left:auto;
    margin-right:auto;


}

div.campagin_info span {
font-size: 85%;

}

div.campagin_info dl {
    text-align: left;    
    padding: 0px 20px 30px 20px ;
}
div.campagin_info dt::after {
	content: none;}

div.campagin_info dl {
    display: flex;
    flex-wrap: wrap;
}
div.campagin_info dl dt {
    width: 15%;
}
div.campagin_info dl dd {
    width: 85%;
}


@media screen and (max-width: 650px) {
div.campagin_info dl dt {
  width: 30%;
  font-size: 100%;
}
div.campagin_info dl dd {
  width: 70%;
}
}


div.campagin_info dt {
	font-weight: bold;
	line-height: 1.8;
}

div.campagin_info dd {
	line-height: 1.8;
}

div.campagin_form{
	position: relative;
	width: 441px;
	height: 75px;
	margin: 0 auto;
    margin-bottom: 20px;
    margin-top: 30px;
	display: block;
	border-radius: 0px;
	overflow: hidden;
	cursor: pointer;
}

@media only screen and (max-width: 768px) {
div.campagin_form{
	width: 100%;
    margin-top: 0px;
}
}


div.campagin_form img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
height: auto;
}

div.campagin_form:hover img:nth-of-type(2) {
	opacity: 0;
}

div.campagin_infoan{
text-align: center;
font-size: 85%;
padding: 0px 10px 40px 10px;
}

@media only screen and (max-width: 768px) {
div.campagin_infoan{
width: 100%;
padding: 0px 10px 20px 10px;
}
}


div.campagin_rice{
text-align: center;
position: relative;
background-image: url("../img/campagin_rice_back.jpg");
background-position: center;
background-size: cover;
}

div.campagin_rice img{
padding:30px 10px 30px 10px;
height: auto;
}

@media only screen and (max-width: 768px) {
div.campagin_rice img{
padding:10px 10px 10px 10px;
height: auto;
}
}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */

.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 768px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

section.campagin_accsess{
background-color:  #FFFFFF; 
}


section.campagin_accsess h4{
text-align: center;
font-size: 220%;
color: #798232;
font-family: serif;
padding: 0px 10px 20px 10px;
}

@media screen and (max-width: 767px){
	
	section.campagin_accsess h4 {
    font-size: 160%;
    padding: 0px 10px 0px 10px;
	}
}

.campagin_contents_accsess {
     width: 100%;
     max-width: 1200px;
     margin: auto;
     padding-bottom: 30px;
 }

  .title-center_accsess {
   font-size: 130%;
   color: #40210F;
   font-weight: bold;
   padding: 15px 5px 5px 25px ;
 }
 
 
 .text-center_accsess {
 padding: 5px 5px 5px 25px ; 
 }
 
  .text-center_accsess img {
  padding-top: 10px;
  width: auto;
 height: auto;
 }
 
 
 .flexbox_accsess {
     display: flex;
     padding-bottom: 10px;
 }
 .box1_accsess {
     width: 55%;
     margin: auto;
 }



 @media screen and (max-width: 767px) {
  .box1_accsess {
    text-align: center;
    width: auto;
    height: auto; 
     margin: 0 auto;
 }
 
  .box2_accsess_map {
     text-align: center;
       position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
 }
 
   .box2_accsess_map iframe {
   position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  }
  
   .text-center_accsess img {
  padding-bottom: 20px;
 }
 
   .title-center_accsess {
   padding: 15px 15px 5px 15px ;
 }
    .text-center_accsess {
    padding: 5px 15px 5px 15px ;
   
 }
     .flexbox_accsess {
         display: block;
     }
     .flexbox .box1_accsess {
         width: 100%;
         margin: 0 auto;
     }

 }
  
 div.campagin_menu {
     width: 100%;
     height: auto;
     max-width: 1100px;
     margin: 0 auto;
 }
 
 
 
 div.campagin_menu img{
     width: 100%;
     height: auto;
     max-width: 1100px;
     margin: 0 auto;
     padding: 0px 10px 30px 10px;
 }
 
  div.campagin_bunner {
     width: 100%;
     height: auto;
     max-width: 1000px;
     margin: 0 auto;
 }

 div.campagin_bunner img{
     width: 100%;
     height: auto;
     max-width: 1000px;
     margin: 0 auto;
     padding: 0px 10px 30px 10px;
 }


div.campagincaution h5{
    text-align: center;
    color: #951e23;
    font-size: 120%;
    
}


div.campagincaution p{
    text-align: center;
    font-size: 90%;    
    
}


/******************** テーブル *******************/

table {
	border-collapse: collapse;
}

td {
	font-size: 17px;
	border: 1px solid #000; 
	background: #fff;
	vertical-align: middle;
	padding: 10px 20px;
}

.td-title {
	background: #FBE4C6;
	text-align: center;
}

.sub-title {
	color: #fff;
	background: #EF941B;
	text-align: center;
	padding: 0 5px;
}

.td-number {
	text-align: center;
	padding: 0 15px;
}

.td-space {
	border: none; 
	background: none;
}

.under-boorder {
	border-top: 2px solid #D7557B;
}

.under-boorder p {
	padding-top: 45px;
}

@media screen and (max-width: 617px){

	.sub-title {
		width: 10%;
		padding: 0;
		line-height: 1.5;
	}

	.td-number {
		width: 18%;
	}

	.sp-width {
		width: 50%;
	}
}

@media screen and (max-width: 510px){

	.under-boorder p {
		padding-top: 30px;
	}
		
	td {
		font-size: 15px;
		padding: 5px 8px;
	}

	.sub-title {
		padding: 0;
	}

	.td-number {
		text-align: center;
		padding: 0;
	}
}

