/* MEMO */
/* おおまかにBP　1024px以上/780px/600px */

body {
	font-family:"Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
	color: #231815;
	padding: 0;
	margin: 0;

	background-image: url(../images/2025/body_bg.png);
	background-repeat: repeat;
	background-size: 120%;

}
@media screen and (max-width: 800px) {
	body {
		background-size: 140%;
	}
}

/* スマホページでフォントサイズ指定がうまく行かない場合の回避 */
body {
  -webkit-text-size-adjust: 100%;
}

#wrap {
	width: 100%;
	text-align: center;
	margin: 0 auto;
}

img { max-width: 100%; }

/* 共通 flex */
.flex {
	display: flex;
}
.f-wrap {
	flex-wrap: wrap;
}


/* 右側の余分の隙間を消す */
div.top {
	overflow: hidden;
}


/* 共通ブロック背景 */
.bg-white-box {
	width: 92%;
	max-width: 1080px;
	background-color: rgba(255, 255, 255, 0.8);
	box-shadow: none;
	margin: 0 auto;
}

.bg-white-box-radius { /* 角丸 */
	width: 92%;
	max-width: 800px;
	background-color: #FFF;
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .2);
	margin: 0 auto;
	border-radius: 20px;
}


/* 共通セクション */
section {
	padding-top: 0;
	padding-bottom: 0;
}
@media screen and (max-width: 780px) {
	section.pics-01 {
		padding-bottom: 20px;
	}
}

section.navi {
	padding-bottom: 0;
}

section.about,
section.oubo,
section.kitei {
	padding: 80px 0;
}

section.top-news {
	padding-bottom: 80px;
}


div.section-space {
	margin-bottom: 55px;
}



.cont-box {
	padding-bottom: 20px;
}

.inside-space {
	padding-left: 12.5%;
	padding-right: 12.5%;
	text-align: left;
}
@media screen and (max-width: 800px) {
	.inside-space {
		padding-left: 8%;
		padding-right: 8%;
		text-align: left;
	}
}

/* h2, h3 */
h2 {
	font-size: 19px;
	font-family: "FOT-筑紫明朝 Pr6 D";
}
@media screen and (max-width: 780px) {
	h2 {
		font-size: 17px;
	}
}


h2.title-about,
h2.title-news,
h2.title-oubo,
h2.title-kitei,
h2.title-winner {
	height: 50px;
	background-image: url(../images/2025/h2-bg-icon.png);
	background-repeat: no-repeat;
	padding-top: 0;
	margin-left: -10px;
	padding-left: 50px;
	margin-bottom: 20px;
}

h2.title-pics,
h2.title-pics-01 {
	height: 70px;
	width: 300px;
	background-image: none;
	background-color: #FFF;
	padding: 20px 30px;
	margin: 0 auto;
	background-position: center;
	margin-bottom: 40px;
}


h3 {
	font-size: 16px;
	border-bottom: 3px solid;
    padding-bottom: 0;
	margin-top: 10px;
	margin-bottom: 10px;

	font-family: "FOT-筑紫明朝 Pr6 D";
}
@media screen and (max-width: 780px) {
	h3 {
		font-size: 16px;
	}
}

h3.about-01 {	width: 34px;}

h3.oubo-01 {	width: 134px;}
h3.oubo-02 {	width: 70px;}
h3.oubo-03 {	width: 24px;}
h3.oubo-04 {	width: 70px;}
h3.oubo-05 {	width: 54px;}
h3.oubo-06 {	width: 70px;}
h3.oubo-07 {	width: 70px;}
h3.oubo-08 {	width: 100px;}

h3.judge-comment {	width: 110px;}

h3.kitei-01 {	width: 118px;}
h3.kitei-02 {	width: 70px;}
h3.kitei-03 {	width: 70px;}
h3.kitei-04 {	width: 100px;}
h3.kitei-05 {	width: 278px;}
h3.kitei-06 {	width: 134px;}

h4.oubo-shurui {
	border: 1px solid #231815;
	padding: 8px;
	width: 250px;
	text-align: center;
	margin-bottom: 20px;
	margin-top: 20px;
}


/*画面内に入ったらアニメーションの設定*/
/* fade in animation */
/* 画面外にいる状態 */
.fadein {
	opacity : 0;
}

/* 画面内に入った状態 */
.fadein.scrollin {
	animation: fadein-top 1s ease-out forwards;
}
@keyframes fadein-top {
	0% {
	  opacity: 0;
	  transform: translateY(-40px);
	}
	100% {
	  opacity: 1;
	  transform: translateY(0);
	}
}


/* header関連 */
#header {
	width: 92%;
	max-width: 1080px;
	text-align: center;
	margin: 0 auto;
	position: relative;
}


/* サイトタイトル */
.h-main-image {
	padding-top: 140px;
	z-index: 150; /* 背景画像より上に配置 */
	position: relative;
}
@media screen and (max-width: 540px) {
	.h-main-image {
		padding-top: 50px;
	}
}


.h-main-image {
	animation: fadein-top 1s ease-out forwards;
}
@keyframes fadein-top {
	0% {
	  opacity: 0;
	  transform: translateY(-40px);
	}
	100% {
	  opacity: 1;
	  transform: translateY(0);
	}
}


/* サイトキャッチコピー */
.h-catchcopy {
	height: 100px;
	padding-top: 10px;
	z-index: 130; /* 背景画像より上に配置 */
	position: relative;
	opacity: 0;
}

.h-catchcopy {
	animation: fadein-top 1s ease-out forwards;
	animation-delay: 0.4s;
}
@keyframes fadein-top {
	0% {
	  opacity: 0;
	  transform: translateY(-40px);
	}
	100% {
	  opacity: 1;
	  transform: translateY(0);
	}
}


/* 親要素より幅の広い画像の配置 */
.h-main-bg {
	width: calc(100% + 400px);
	margin: 0 -200px;
	margin-top: -460px;
	z-index: 50; /* 背景画像より上に配置 */
	position: relative;
	opacity: 0;
}
@media screen and (max-width: 540px) {
	.h-main-bg {
		margin-top: -540px;
	}
}

.h-main-bg {
	animation: fadein-top 4s 0s ease-out forwards,
	updown1 5s 3s ease-in-out infinite;

}
@keyframes fadein-top {
	0% {
	  opacity: 0;
	  transform: translateY(-5px);
	}
	100% {
	  opacity: 1;
	  transform: translateY(0);
	}
}

.h-main-bg-02 {
	width: calc(100% + 400px);
	margin: 0 -200px;
	margin-top: -590px;
	z-index: 50; /* 背景画像より上に配置 */
	position: relative;
	opacity: 0;
}
@media screen and (max-width: 780px) {
	.h-main-bg-02 {
		margin-top: -530px;
	}
}
@media screen and (max-width: 540px) {
	.h-main-bg-02 {
		margin-top: 40px;
	}
}
@media screen and (max-width: 480px) {
	.h-main-bg-02 {
		margin-top: 128px;
	}
}

.h-main-bg-02 {
	animation: fadein-top 4s 0s ease-out forwards,
	updown1 5s 3s ease-in-out infinite;

}
@keyframes fadein-top {
	0% {
	  opacity: 0;
	  transform: translateY(-5px);
	}
	100% {
	  opacity: 1;
	  transform: translateY(0);
	}
}

/*
.h-main-bg-02 {
	width: calc(100% + 400px);
	margin: 0 -200px;
	margin-top: -630px;
}
*/


/* 出現後にゆらゆらアニメーション */
 
@keyframes updown1 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
  100% {
    transform: translateY(0);
  }
}




/* コンセプトメッセージ */
.h-message-box {
	max-width: 860px;
	width: 96%;
	margin: 0 auto;
	background-color: transparent;
	margin-top: -50px;

	z-index: 100; /* 背景画像より上に配置 */
	position: relative;
	opacity: 0;
}
@media screen and (max-width: 780px) {
	.h-message-box {
		background-color: rgba(255, 255, 255, 0.5);
	}
}
@media screen and (max-width: 540px) {
	.h-message-box {
		margin-top: 40px;
	}
}

.h-message-box {
	animation: fadein-top 2s ease-out forwards;
	animation-delay: 1s;
}
@keyframes fadein-top {
	0% {
	  opacity: 0;
	  transform: translateY(-10px);
	}
	100% {
	  opacity: 1;
	  transform: translateY(0);
	}
}




.h-message {
	font-family: "FOT-筑紫Aオールド明朝 Pr6 D";

	padding: 10%;

	font-size: 18px;
	line-height: 3;
	text-align: left;
}
@media screen and (max-width: 540px) {
	.h-message {
		padding: 10%;
		font-size: 16px;
	}
}	


/* navi */
.navi-space {
	height: 63px;
	max-width: 1080px;
	width: 92%;
	margin: 0 auto;
}
@media screen and (max-width: 780px) {
	.navi-space {
		height: 40px;
		width: 102%;
		margin-left: -1%;
	}
}

.site-navi {
	background-color: #FFF;
}

.site-navi ul{
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
	height: 63px;
    border: none;
	border-radius: 0;
}
@media screen and (max-width: 780px) {
	.site-navi ul{
		height: 40px;
		border: none	}
}	

.site-navi li{
    list-style: none;
	width: 25%;
	font-family: "FOT-筑紫明朝 Pr6 D";
	font-weight: 800;
}
@media screen and (max-width: 780px) {
	.site-navi li{
		font-size: 10px;
	}
}
@media screen and (max-width: 480px) {
	.site-navi li{
		font-size: 11px;
	}
}

.site-navi li.navi-01 {
	background-image: url(../images/2025/navi-bg-01.png);
	background-repeat: no-repeat;
}
.site-navi li.navi-02 {
	background-image: url(../images/2025/navi-bg-02.png);
	background-repeat: no-repeat;
}

.site-navi li.navi-03 {
	background-image: url(../images/2025/navi-bg-03.png);
	background-repeat: no-repeat;
}
.site-navi li.navi-04 {
	background-image: url(../images/2025/navi-bg-04.png);
	background-repeat: no-repeat;
}

.site-navi a{
    display: block;
    padding: 17px;
    border-right: none;
    text-decoration: none!important;
    color: #333;
}
@media screen and (max-width: 780px) {
	.site-navi a{
		padding: 10px;
	}
}

.site-navi a:hover{
	opacity: 0.8;
    text-decoration: underline!important;
}
.site-navi li:last-child a{
    border-right: none;
}

.site-navi li.not-yet {
    display: block;
    padding-top: 24px;
    border-right: 1px solid #231815;
    text-decoration: none!important;
    color: #999;
}
@media screen and (max-width: 780px) {
	.site-navi li.not-yet {
		padding-top: 10px;
	}
}

.site-navi li.not-yet-last {
    border-right: none;

    display: block;
    padding-top: 24px;
    text-decoration: none!important;
    color: #999;

}
@media screen and (max-width: 780px) {
	.site-navi li.not-yet-last {
		padding-top: 10px;
	}
}	


/* SPのみ追尾型ボトムナビ */
/* 追記 */
.navi-bottom {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 1;
}

section.navi-bottom {
	padding-top: 0;
	padding-bottom: 0;
	text-align: center;
}





/* about */
.about-flex {
	display: flex;
}
.about-text {
	width: 70%;
	padding-right: 20px;
	order: 1;
}
.about-pic {
	width: 30%;
	order: 2;
}
@media screen and (max-width: 780px) {
	.about-flex {
		display: block;
	}
	.about-text {
		width: 100%;
		padding-bottom: 20px;
	}
	.about-pic {
		width: 100%;
	}
}	




/* pics-01 */
/* 風景写真ループ */

@keyframes loop-scroll-left {
	from {
	  transform: translateX(-5%);
	}
	  to {
	  transform: translateX(-100%);
	}
	}
	.scroll-loop__wrap {
	  display: flex;
	  overflow: hidden;
	}
	.scroll-loop__list {
	  display: flex;
	  list-style: none;
	  padding: 0
	}
	.scroll-loop__list--left {
	  animation: loop-scroll-left 150s infinite linear 0.5s both;
	}
	.scroll-loop__item {
	  width: calc(100vw / 2);
	}
	.scroll-loop__item>img {
	  width: 100%;
	}

@media screen and (max-width: 780px) {
	.scroll-loop__item {
		width: calc(100vw / 1.3);
	}
}  

/* oubo 応募要項 */
div.self-pic {
	min-width: 150px;
}
div.introduce {
	flex: 1;
}

div.name {
	font-size: clamp(0.8rem, calc(0.25vw + 0.9rem), 1.0rem);
	font-weight: 400;
}
div.profile {
	font-size: clamp(0.7rem, calc(0.2vw + 0.7rem), 0.9rem);
}

section.oubo li {
	list-style-type: disc;
	line-height: 180%;
	padding-bottom: 10px;
}



/* 動画 */
.video-wrap {
	max-width: 860px;
	width: 96%;
	margin: 0 auto;
	box-shadow: 5px 5px 0 0 rgb(209, 189, 123);
}

.video-self {
	width: 100%;
	max-width: 720%;/*PC版での最大幅*/
	margin-bottom: -10px;
}

/* kitei */
section.kitei ul {
	padding-left: 15px;
}

section.kitei li {
	list-style-type: disc;
	line-height: 180%;
	padding-bottom: 10px;
}

section.kitei ul.kome-ul {
	margin-top: 20px;
	padding-left: 0;
}
section.kitei li.kome-mark {
	list-style: none;
	line-height: 180%;
	padding-bottom: 10px;
	margin: 0;
	/*2行目の先頭文字ズレ対策*/
	text-indent: -1em;
	padding-left: 1em;
}
section.kitei li.kome-mark:before {
	content: "\203b";
}

section.kitei ul.numbers li {
	list-style-type: decimal;
	line-height: 180%;
	padding-bottom: 10px;
}

/* 応募フォームへのボタン */
div.btn-apply {
	margin-bottom: 30px;
}
div.btn-apply a {
	text-decoration: none; 
}

/* ボタン 2025 orange */
a.btn_orange {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 90%;
	max-width: 440px;
	margin: auto;
	padding: 1rem 1rem;
	font-weight: bold;
	background: #f6ce93;
	color: #231815;
	transition: 1s;
}
a.btn_orange:hover {
	color: #fff;
	background: #f4a845;
}

/* ボタン 2024 yellow */
a.btn_yellow {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 90%;
	max-width: 440px;
	margin: auto;
	padding: 1rem 1rem;
	font-weight: bold;
	background: #FCE263;
	color: #231815;
	transition: 1s;
}
a.btn_yellow:hover {
	color: #fff;
	background: #908939;
}

a.btn_gray-out {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 90%;
	max-width: 440px;
	margin: auto;
	padding: 1rem 1rem;
	font-weight: bold;
	background: #a3a3a3;
	color: #231815;
}

/* 応募フォームをアコーディオンのために読み込み時は非表示 */
.apply-form-wrap {
	display: none;
  }
  
  .toggle {
	display: inline-block;
	background: #b6beff;
	padding: 5px 10px;
	cursor: pointer;
  }
  
  .apply-form-wrap {
	background: #fff;
  border: 1px solid #CCC;
  border-radius: 5px;
  max-width: 760px;
  margin: auto;
  padding: 5%;
  }
  
  .apply-form-inside {
  }
  
  
  /* 応募フォームのスタイル */
  input[type="text"],input[type="email"],select {
	background-color: #f6f6f6;
	border: 1px solid #999;
  }
  @media screen and (max-width: 780px) {
	input[type="text"],input[type="email"],select {
		font-size: 11px;
	}
	button, input, optgroup, select, textarea {
		font-size: 75%;
	}
  }
  
  .wpcf7 input[type="text"]:focus
  {
  border: 2px solid #98d3e7;
  outline: 0;
  }
  
  input[type=submit] {
	border-radius: 3px;
	padding: 20px;
	font-size: 18px !important;
	font-weight: bold !important;
	transition:0.5s;/* 背景色が変わるまでの時間*/
	letter-spacing: 0.5em;
	background-color: #def1f7;
  }
  input[type=submit]:hover {
	background-color:#6599a9 !important;/* マウスを乗せたときの背景色 */
	color: #fff !important;/* マウスを乗せたときの文字の色 */
	}
	
	.btn-submit {
		width: 100%;
		text-align: center;
	}
  
  /* ドロップ式のファイル添付 */
  .codedropz-upload-inner {
	font-size: 14px;
	font-family:"Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
  }

  .codedropz-upload-inner h5 {
	font-size: 18px;
	  font-family:"Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
  }
  @media screen and (max-width: 540px) {
	.codedropz-upload-inner h5 {
	  font-size: 14px;
	  font-family:"Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
	}
  }
  .codedropz-upload-inner h3 {
	font-size: 14px;
  }
  
  /* スマホ閲覧時のPlaceholder */
  @media screen and (max-width: 640px) {
	  .wpcf7 input::placeholder {
		  font-size: 12px;
	  }
  }
  
  
  /* ファイル添付のinput */
  label.file-label {
	font-weight:400;
  }
  span.filebutton {
	display: block;
	color: #333;
	font-size: 13px;
	background: #a6d9ea;
	border: 1px solid #a6d9ea;
	margin: 4px 0 0 0;
	padding: 4px 20px;
	border-radius: 16px;
	max-width: 160px;
	text-align: center;
	transition: .3s;
	cursor:pointer;
  }
  span.filebutton:hover {
	border: 1px solid #008ca0;
	color: #008ca0;
	background: white;
  }
  input[type=file] {
	position: relative;
	margin: 0px 0 0 -14px;
	font-size:13px;
	width: 430px;
  }
  input[type=file]:focus {
	outline: none;
  }
  input[type=file]::before {
	content: "添付ファイル：";
	position: absolute;
	background: #fff;
	font-size:13px;
	width: 110px;
	height: 26px;
	line-height: 1.8;
	text-align: right;
  }
  
  
  
  .apply-item {
	  padding-bottom: 20px;
  }
  
  h4.form-midashi {
	font-weight: bold;
	font-size: 15px;
  }
  
  .form-flex {
	display: flex;
	align-items: center;
  }
  
  .form-birth-title {
	width: 15%;
  }
  .form-birth-unit {
	width: 10%;
  }
  .form-birth-textbox {
	width: 70%;
	padding-right: 10px;
  }
  .form-birth-textbox-02 {
	width: 30%;
	padding-right: 10px;
  }
  .form-birth-textbox-select {
	width: 40%;
	padding-right: 5px;
  }
  
  .form-accept-title {
	width: 10%;
  }
  .form-accept-text {
	width: 90%;
	padding-left: 10px;
  }
  
  
  
  
/* 応募フォーム以外で応募したい方へのリンク */
.other-apply {
	text-align: center;
	padding-top: 20px;
	line-height: 2;
}

/* 応募票ダウンロードのボタン */
.btn-applypaper-dl {
	padding: 20px;
}
div.btn-applypaper-dl a {
	text-decoration: none; 
}





/* お知らせ・受賞者発表の個別ページ */

/*固定ページの右側の余白を消す*/
#container {
    overflow: hidden;
}

.page-content {
	text-align: left;
	line-height: 200%;
}

/* トップページのお知らせ一覧箇所の調整 */
.top-news a {
	text-decoration: underline;
}
.link-to-index {
	text-align: right!important;
	margin-top: .5rem;
}
.link-to-index a {
	
}


/* カテゴリの記事一覧ページのタイトル　不要なicon非表示 */
h2.title-news .fa {
	display: none;
}
/* カテゴリの記事一覧ページ　カテゴリリンク　非表示 */
.entry-card-meta .entry-card-categorys {
	display: none!important;
}
/* カテゴリの記事一覧ページ　調整 */
.list a.entry-card-wrap {
	border-top: 1px dotted #666666;
	padding: 1rem 0;
}

/*記事ページの投稿日*/
.entry-card-content .entry-date {
	font-family: "Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
	font-size: clamp(0.8rem, calc(0.25vw + 0.9rem), 1.1rem)
}

/* 記事ページ　タイトル周り調整 */
.entry-card-content {
	display: flex;
}
@media screen and (max-width: 540px) {
	.entry-card-content {
		flex-flow: column;
	}
}
.entry-card-title {order: 2;}
.entry-card-meta {order: 1;}
.admin-pv { order: 5;}

.entry-card-title {
	width: 78%;
	font-family: "Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
	font-weight: 400;
	font-size: clamp(1.125rem, calc(0.25vw + 1.0rem), 1.2rem);
}
.entry-card-meta {
	width: 20%;
}
@media screen and (max-width: 540px) {
	.entry-card-title {
		width: 100%;
	}
	.entry-card-meta {
		width: 100%;
	}
	.entry-date {
		margin-left: 0;
	}
}

.entry-card-info .post-date { width: 100%;}
.entry-card-meta {text-align: left;}


.list a:link {
	text-decoration: none;
}
.list .a-wrap {
	margin-bottom: 0;
}
.list a.entry-card-wrap:last-child {
	border-bottom: 1px dotted #666666;
}
/* カテゴリの記事一覧ページ　次のページへボタンを非表示 */
.pagination-next { display: none; }
.pagination {
	text-align: center;
	justify-content: left;
}


.post-box {
	border-top: 1px dotted #666666;
	padding: 1rem 0;
}
.post-box:last-child {
	border-bottom: 1px dotted #666666;
}


.post-text a {	text-decoration: none;	}
.post-text a:link {	text-decoration: none;	}
.post-text a:visited {	text-decoration: none;	}
.post-text a:active {	text-decoration: none;	}


.post-date {
	width: 20%;
	font-family:"Yu Mincho", "游明朝", YuMincho, "游明朝体",'Hiragino Mincho Pro',serif;
	font-size: clamp(0.8rem, calc(0.25vw + 0.9rem), 1.1rem);
}
@media screen and (max-width: 540px) {
	.post-date {
		width: 98%;
	}
}

.post-text {
	width: 78%;
	font-size: clamp(1.125rem, calc(0.25vw + 1.0rem), 1.2rem);
}
@media screen and (max-width: 540px) {
	.post-text {
		width: 98%;
	}
}


ul.pagination {
	justify-content: left;
	padding-left: 0;
	font-size: 14px;
}

.pagination .current {
	background-color: #CCC;
}

.page-numbers {
	height: 33px;
	line-height: 33px;
	border-radius: 0;
	border: 0.5px solid #CCC;
}

a.page-numbers {
	text-decoration: none!important;
}

a.prev, a.next {
	display: none;
}
@media screen and (max-width: 540px) {
  .page-numbers {
	width: 48px;
	height: 48px;
	line-height: 48px;
  }
}

/* 投稿ページの記事下のページ送りリンク　サムネイル非表示 */
.prev-post-thumb,
.next-post-thumb{
  display:none;
}

#pager-post-navi {
	flex-wrap: wrap;
	justify-content: space-between;
}


#pager-post-navi a {
	text-decoration: none;
}

.pager-post-navi.post-navi-square a {
	width: 49%;
}

.post-navi-square.post-navi-border a:last-child {
	border-left-width: 1px;
}

/* 記事ページの調整　ここから */
/* 記事ページ　投稿日の時計アイコン非表示 */
.post-date .fa-clock-o {
	display: none;
}


/*記事ページの投稿日*/
.entry-date {
	font-size: clamp(0.75rem, calc(0.25vw + 0.7rem), 0.8rem);
}

/* 記事ページ　タイトル周り調整 */
.article-header {
	display: flex;
	flex-flow: column;
}
.entry-title {order: 2;}
.eye-catch-wrap {order: 3;}
.sns-share { order: 4;}
.date-tags { order: 1;}

.date-tags {
	text-align: left;
	margin-bottom: 0;
}
.entry-title {
	padding-left: 0.1rem;
}


/* 記事ページ　コンテンツ下の次の記事へリンク */
/* ホームアイコン */
.pager-post-navi a.prev-next-home {
	font-size: 20px;
}
@media screen and (max-width: 480px) {
	.pager-post-navi.post-navi-square a {
		width: 100%;
		margin-bottom: 1rem;

	}
	.pager-post-navi.post-navi-square a:last-child {
		border-top: 1px solid var(--cocoon-basic-border-color);

	}
}

.winner-announce {}

.prize-box {
	margin-bottom: 2rem;
}

.winner-award-area {
	padding-bottom: 2rem;
	justify-content: space-between;
}

h3.winner-prize-title {
	border: 1px solid #333;
	padding: .25rem .25rem;
	width: 120px;
	text-align: center;
}
@media screen and (max-width: 540px) {
	h3.winner-prize-title {
		margin: 0 auto;
	}
		
}


.winner-title-wrap {
	margin-bottom: 1rem;
}

.winner-work-title {
	width: 50%;
	font-weight: 700;
	padding: .5rem;
	border-left: 2px solid rgb(209, 189, 123);
}
.winner-work-sub-title {
	font-size: clamp(0.7rem, calc(0.25vw + 0.85rem), 1.0rem);
}
.winner-work-author {
	width: 48%;
	font-weight: 400;
	padding: .5rem;
}
@media screen and (max-width: 860px) {
	.winner-work-title {
		width: 100%;
		padding: 0 .5rem;
	}
	.winner-work-author {
		width: 100%;
		padding: 0 .5rem;
	}
}

.author-title {
	font-weight: 400;
}


.winner-book-self {
	width: 48%;
	font-weight: 700;
}
.winner-book-explain {
	width: 48%;
	font-weight: 700;
}
@media screen and (max-width: 860px) {
	.winner-book-self {
		width: 100%;
	}
	.winner-book-explain {
		width: 100%;
	}
}

.winner-book-area {
	justify-content: space-between;
}

.keiryaku {
	text-align: right!important;
	margin-top: -2rem;
	margin-bottom: 2rem;
}

/* 受賞作品　各回の受賞作品ページへのリンクブロック */
.winner-link-button-block {
    width: 100%;
    /* 必要に応じて幅を調整 */
    padding: 0; /* 必要に応じて調整 */
    box-sizing: border-box;
}

.winner-link-button-container {
    display: flex;
    flex-wrap: wrap; /* スマホで折り返し */
    justify-content: space-around; /* ボタンを均等に配置 */
}

.winner-link-button-container a {
	text-decoration: none;
}

.winner-link-button-container a.link-button {
    display: block;
    width: calc(50% - 20px); /* PCで2列表示 */
    margin: 10px;
    padding: 1rem;
    text-decoration: none;
    color: #333; /* 必要に応じて調整 */
    background-color: #FCE263; /* 必要に応じて調整 */
    box-sizing: border-box;
	text-align: center; /* テキスト中央寄せ */
}

.winner-link-button-container a.link-button:hover {
	color: #FFF; /* 必要に応じて調整 */
    background-color: #908939; /* 必要に応じて調整 */
}


/* スマホ用スタイル */
@media (max-width: 540px) {
    .winner-link-button-container {
        flex-direction: column; /* 縦並び */
        align-items: center; /* 中央寄せ */
		margin: 0; /* マージンを削除 */ /* 追加 */
    }

    .winner-link-button-container a.link-button { /* 追加 */
        width: 100%; /* 追加 */
        margin: 10px 0; /* 追加 */
    }

    .btn_yellow {
        width: 100%; /* 幅を100%に変更 */
        margin: 10px 0; /* 上下マージンのみ */
    }
}



/* テキスト系 */
.text-XL {
	font-size: clamp(1.6em, 1.5vw, 2.4em);
	line-height: 180%;
	text-align: left;
}

.text-01 {
	font-size: clamp(0.8rem, calc(0.25vw + 0.9rem), 1.0rem);
	line-height: 200%;
	text-align: left;
}

.text-02 {
	font-size: clamp(1.0rem, calc(0.25vw + 0.9rem), 1.3rem);
	line-height: 200%;
	text-align: left;
}

.text-small {
	font-size: clamp(0.7rem, calc(0.2vw + 0.8rem), 0.9rem);
	line-height: 200%;
	text-align: left;
}


.text-red {
	color: red;
}

p {
	margin-bottom: 10px;
}



/* 応募終了後の終了告知 */

h2.caution-fin-apply {
	font-size: clamp(1.0rem, calc(0.25vw + 1.0rem), 1.3rem);
	text-align: center;
	width: 94%;
	border: 1px solid;
	padding: 2rem;
	background-color: #fff58b;
	margin: 0 auto;
	border-radius: 3px;
}



/* FOOTER */

footer.main-footer {
	margin-top: 60px;
	margin-bottom: 0px;
	background-image: none;
	height: 328px;
	background-position: top center;
  text-align: center;
}
@media screen and (max-width: 800px) {
	footer.main-footer {
		height: auto;
	}
}

.footer-area {
	width: 96%;
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 40px;
}
@media screen and (max-width: 780px) {
	.footer-area {
		margin-bottom: 0;
	}
}

.foot-flex {
	align-items: flex-end;
}
@media screen and (max-width: 780px) {
	.foot-flex {
		flex-flow:column;
		padding-top: 2em;
	}
}

.foot-profile {
	width: 40%;
	text-align: left;
}
.foot-navi {
	width: 60%;
	padding-top: 5em;
}
@media screen and (max-width: 800px) {
	.foot-profile {
		width: 90%;
		margin: 0 auto;
		text-align: left;
	}
	.foot-navi {
		width: 100%;
		padding-top: 2em;
	}
}	

footer .copyright {
	padding-top: 30px;
	padding-bottom: 20px;
	font-size: clamp(0.5rem, 1vw + 1.25rem, 0.75rem);
}


/* foot-navi */
.foot-navi ul{
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
}
.foot-navi li{
    list-style: none;
	width: 25%;
	font-family: "FOT-筑紫明朝 Pr6 D";
	font-weight: 400;
	font-size: 14px;
}
@media screen and (max-width: 800px) {
	.foot-navi li{
		font-size: 12px;
	}
}

.foot-navi a{
    display: block;
    padding: 10px;
    border-right: 1px solid #231815;
    text-decoration: none!important;
    color: #333;
}
.foot-navi a:hover{
	opacity: 0.8;
    text-decoration: underline!important;
}
.foot-navi li:last-child a{
    border-right: none;
}

.foot-navi li.not-yet {
    display: block;
    padding-top: 10px;
    border-right: 1px solid #231815;
    text-decoration: none!important;
    color: #999;
}
.foot-navi li.not-yet-last {
    border-right: none;

    display: block;
    padding-top: 10px;
    text-decoration: none!important;
    color: #999;
}
@media screen and (max-width: 800px) {
	.foot-navi li.not-yet-last {
		border-right: none;
	}
}	


/* ページ先頭へ戻る */
.pagetop {
    position: fixed;
    bottom: 10px;
    right: 10px;
	cursor:pointer;
}



/* 共通装飾系 */

ul,
li {
  list-style: none;
}


a img:hover { /* リンクの画像のhover半透明 */
	opacity: 0.8;
}

a:link { /*未訪問のリンクの色*/
	color:#333333;
	text-decoration: underline;
}

a:visited { /*訪問済みのリンクの色*/
	color:#333333;
	text-decoration: underline;
}

a:hover { /*カーソルが乗っているリンクの色*/
	color:#333333;
	text-decoration: underline;
}

a:active {color:#134867;} /*クリック中のリンクの色*/

.bold {font-weight: bold;}
.underline {
    text-decoration: underline;
}

.mb-30 { margin-bottom: 30px; }



/* SPのみ表示 */
@media screen and (min-width: 540px) {
	.only-sp_540 {
		display: none;
	}
}

@media screen and (min-width: 780px) {
	.only-sp_780 {
		display: none;
	}
}



/* PCのみ表示 */
@media screen and (max-width: 780px) {
	.only-pc_780 {
		display: none;
	}
}

@media screen and (max-width: 800px) {
	.only-pc_800 {
		display: none;
	}
}





/* SON追記 メインのテーマの改変 */

.main {
	background-color: transparent;
  padding: 0;
}

.content {
  margin-top: 0;
}

.navi {
	background-color: transparent;
}

.footer {
  background-color: transparent;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
	/*必要ならばここにコードを書く*/
  }
  
  /*834px以下*/
  @media screen and (max-width: 834px){
	/*必要ならばここにコードを書く*/
  
	main.main {
	  padding: 0;
	}
	
  
  }
  
  /*480px以下*/
  @media screen and (max-width: 480px){
	/*必要ならばここにコードを書く*/
  }
  
  
  
  