body {
	font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
	margin: 0;
	padding: 0;
	font-size: 18px;
}

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

img {
	image-rendering: -webkit-optimize-contrast;
	vertical-align: top;
}

.inner {
	width: 90%;
	max-width: 1200px;
	margin: auto;
}

.inner1550 {
	width: 90%;
	max-width: 1550px;
	margin: auto;
}

.w960 {
	display: block;
}

.w960-2 {
	display: none;
}

.w768 {
	display: block;
}

.w768-2 {
	display: none;
}

.w600 {
	display: block;
}

.w600-2 {
	display: none;
}

.w430 {
	display: block;
}

.w430-2 {
	display: none;
}

.w375 {
	display: block;
}

.w375-2 {
	display: none;
}

.w320 {
	display: block;
}

.w320-2 {
	display: none;
}

.t_center {
	text-align: center;
}

.go {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

a {
	text-decoration: none;
}

a:hover {
	opacity: 0.5;
}

p {
	text-align: justify;
	margin: 0px;
}

ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

h1, h2, h3 {
	margin: 0px;
}

.notel {
	pointer-events: none;
}

@media screen and (max-width: 960px) {
	.w960 {
		display: none;
	}

	.w960-2 {
		display: block;
	}
}

@media screen and (max-width: 768px) {
	.w768 {
		display: none;
	}

	.w768-2 {
		display: block;
	}
}

@media screen and (max-width: 600px) {
	.w600 {
		display: none;
	}

	.w600-2 {
		display: block;
	}
}

@media screen and (max-width: 430px) {
	body {
		font-size: 14px;
	}

	.w430 {
		display: none;
	}

	.w430-2 {
		display: block;
	}

	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}

@media screen and (max-width: 375px) {
	.w375 {
		display: none;
	}

	.w375-2 {
		display: block;
	}
}

@media screen and (max-width: 320px) {
	.w320 {
		display: none;
	}

	.w320-2 {
		display: block;
	}
}

/*header***************/
.kaisaibi {
	text-align: center;
	font-size: 26px;
	color: #DE0012;
	font-weight: bold;
}

.h_ttl {
	height: 92px;
	background-color: #DE0012;
	width: 100%;
	display: flex;
	margin: auto;
	align-items: center;
	justify-content: center;
}

.h_ttl p {
	color: #fff;
	font-size: 25px;
	margin: 0 15px;
}

.h_ttl img {
	width: 314px;
}

header nav ul {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px 0px;
	font-weight: bold;
}

header nav ul li {
	border-left: 1px solid #000;
	font-size: 18px;
	text-align: center;
}

header nav ul li:last-child {
	border-right: 1px solid #000;
}

header nav ul li a {
	color: #000;
	padding: 0 30px;
}

/*スクロール時に上から出てくるメニュー*/
.menu {
	position: fixed;
	top: -100px;
	right: 0;
	z-index: 9999;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.9);
	filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.4));
	transition: .7s;
	display: flex;
	align-items: center;
	justify-content: center;
}

.menu ul {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
}

.menu ul li {
	text-align: center;
	padding: 20px;
	color: #000;
	font-weight: bold;
}

.menu ul li a {
	color: #000;
	font-size: 16px;
}

.menu ul li a:hover {
	color: #DE0012;
}

.menu .h_yoyaku {
	padding: 30px 50px 0px;
}

@media screen and (max-width: 1295px) {
	header nav ul li a {
		padding: 0 20px;
	}
}

@media screen and (max-width: 1150px) {
	.menu ul li {
		padding: 20px 10px;
	}
}

@media screen and (max-width: 1144px) {
	header nav ul li {
		font-size: 16px;
	}
}

@media screen and (max-width: 1060px) {
	header nav ul li a {
		padding: 0 15px;
	}
}

@media screen and (max-width: 997px) {
	.menu ul li a {
		font-size: 15px;
	}
}

@media screen and (max-width: 960px) {
	header nav ul {
		display: block;
	}

	header nav ul li {
		border: none;
		font-size: 16px;
	}

	.h_ttl {
		height: 70px;
	}

	.h_ttl p {
		font-size: 20px;
	}

	.h_ttl img {
		width: 220px;
		display: flex;
	}

	.menu {
		display: none;
	}

	/*　ハンバーガーボタン　*/
	.hamburger {
		display: block;
		position: fixed;
		z-index: 3;
		right: 0;
		top: 0;
		width: 75px;
		height: 70px;
		cursor: pointer;
		text-align: center;
		background-color: #DE0012;
	}

	.hamburger span {
		display: block;
		position: absolute;
		width: 50px;
		height: 2px;
		left: 13px;
		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: 22px;
	}

	.hamburger span:nth-child(2) {
		top: 32px;
	}

	.hamburger span:nth-child(3) {
		top: 42px;
	}

	/* ナビ開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
		top: 32px;
		left: 13px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 32px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	nav.globalMenuSp {
		position: fixed;
		z-index: 2;
		top: 0;
		left: 0;
		color: #000;
		text-align: center;
		transform: translateY(-100%);
		transition: all 0.6s;
		width: 100%;
	}

	nav.globalMenuSp ul {
		background: #DE0012;
		margin: 0 auto;
		padding: 70px 0 0 0;
		width: 100%;
	}

	nav.globalMenuSp ul li {
		list-style-type: none;
		padding: 0;
		width: 100%;
		border-bottom: 1px solid #fff;
	}

	nav.globalMenuSp ul li:last-child {
		padding-bottom: 0;
		border-bottom: none;
	}

	nav.globalMenuSp ul li a {
		display: block;
		color: #fff;
		padding: 0.6em 0;
		text-decoration: none;
	}

	/* このクラスを、jQueryで付与・削除する */
	nav.globalMenuSp.active {
		transform: translateY(0%);
	}

	.nav_sns {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 10px;
	}

	.nav_sns img {
		height: 30px;
		margin: 0px 10px;
	}
}

@media screen and (max-width: 600px) {
	.kaisaibi {
		font-size: 20px;
	}

	.h_ttl {
		justify-content: center;
		height: 60px;
		flex-flow: column;
		align-items: flex-start;
	}

	.h_ttl p {
		font-size: 10px;
		margin-right: 0px;
		margin-left: 15px;
	}

	.h_ttl img {
		margin-left: 15px;
		width: 160px;
	}

	.hamburger {
		height: 60px;
		width: 65px;
	}

	.hamburger span {
		width: 40px;
	}

	.hamburger span:nth-child(1) {
		top: 20px;
	}

	.hamburger span:nth-child(2) {
		top: 30px;
	}

	.hamburger span:nth-child(3) {
		top: 40px;
	}

	nav.globalMenuSp ul {
		padding: 60px 0 0 0;
	}
}

@media screen and (max-width: 500px) {
	nav.globalMenuSp.active {
		overflow-y: scroll;
		height: 100vh;
	}
}

@media screen and (max-width: 320px) {
	nav.globalMenuSp ul li a {
		padding: 0.8em 0;
	}

	.nav_sns {
		padding: 15px;
	}
}

/* pc/sp ****************/
.sp {
	display: none !important;
}

@media screen and (max-width: 768px) {
	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}
}

/* common ***************/
.hosoku {
	text-align: center;
	font-size: 22px;
	margin: 20px 0px 150px;
	line-height: 1.6;
}

.hosoku p {
	text-align: center;
	font-size: 22px;
	line-height: 1.6;
}

.hosoku span, .hosoku p span {
	font-weight: bold;
}

.moushikomi_txt {
	margin-top: 30px;
	color: #DE0012;
}

.moushikomi_txt_a {
	display: inline-block;
	margin-top: 10px;
	width: auto;
	color: #DE0012;
	text-decoration: underline;
}

.moushikomi_txt_a:hover {
	opacity: 1;
	text-decoration: none;
}

.moushikomi_btn_list {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
	width: 100%;
	margin: 30px auto 0;
}

.moushikomi_btn_list li {
	max-width: 300px;
	width: calc((100% - 60px) / 3);
}

.moushikomi_btn_list .moushikomi_btn {
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}

.moushikomi_btn {
	background-color: #DE0012;
	color: #fff;
	width: 500px;
	max-width: 100%;
	display: block;
	margin: 10px auto 0px;
	padding: 20px 1%;
	border-radius: 40px;
	font-weight: bold;
}

@media screen and (max-width: 960px) {
	.moushikomi_btn_list {
		gap: 10px;
	}

	.moushikomi_btn_list li {
		width: calc((100% - 20px) / 3);
	}

	.moushikomi_btn_list li a {
		font-size: 18px;
	}
}

@media screen and (max-width: 768px) {
	.hosoku, .hosoku p, .hosoku span, .hosoku p span {
		font-size: 18px;
	}

	.moushikomi_btn_list {
		flex-direction: column;
	}

	.moushikomi_btn_list li {
		width: 100%;
	}

}

@media screen and (max-width: 500px) {
	.hosoku {
		font-size: 18px;
	}

	.hosoku {
		margin-bottom: 100px;
	}

}

/*メインビジュアル（トップページ）***************/
#mainvisual {
	position: relative;
}

/*.slider {
  width: 100%;
}
.slick-img img {
  height: auto;
  width: 100%;
}*/
.m_logo {
	position: absolute;
	top: 10px;
	right: 10%;
	width: 377px;
}

/*.slick-prev,.slick-next{
	display: none!important;
}*/
#slider {
	width: 100%;
	height: 1000px !important;
}

@media screen and (max-width: 1356px) {
	#slider {
		height: 800px !important;
	}

	.m_logo {
		right: 3%;
		width: 26%;
	}
}

@media screen and (max-width: 960px) {
	#slider {
		height: 500px !important;
	}
}

@media screen and (max-width: 768px) {
	#slider {
		height: 400px !important;
	}
}

@media screen and (max-width: 500px) {
	#slider {
		height: 250px !important;
	}
}

/*サブビジュアル（下層ページ）***************/
#subvisual {
	background: url(../images/page_ttl.jpg) no-repeat center center;
	background-size: cover;
	height: 286px;
}

#subvisual h2 {
	color: #fff;
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	height: 286px;
	line-height: 286px;
}

#subvisual_al {
	background:
		url(../images/album_bg1.png) no-repeat center left,
		url(../images/album_bg2.png) no-repeat center right;
	background-color: #000;
	background-size: 457px;
	height: 187px;
}

#subvisual_al h2 {
	color: #fff;
	font-size: 38px;
	font-weight: bold;
	text-align: center;
	height: 187px;
	line-height: 187px;
}

#omanta, #about {
	margin: 130px auto 0px;
}

#message, #hayashi {
	margin-bottom: 130px;
}

#support, #sanka, #album_list, #contact, #thanks, #topics, #footer_contact {
	margin: 130px auto;
}

@media screen and (max-width: 1366px) {
	#subvisual_al {
		background-size: 30%;
	}
}

@media screen and (max-width: 960px) {
	#subvisual_al {
		background-size: 20%;
	}

	#omanta, #about {
		margin: 100px auto 0px;
	}

	#message, #hayashi {
		margin-bottom: 100px;
	}

	#support, #sanka, #album_list, #contact, #thanks, #topics, #footer_contact {
		margin: 100px auto;
	}
}

@media screen and (max-width: 500px) {
	#subvisual {
		height: 180px;
	}

	#subvisual h2 {
		font-size: 28px;
		height: 180px;
		line-height: 180px;
	}

	#subvisual_al {
		height: 100px;
	}

	#subvisual_al h2 {
		font-size: 24px;
		height: 100px;
		line-height: 100px;
	}

	#omanta, #about {
		margin: 60px auto 0px;
	}

	#message, #hayashi {
		margin-bottom: 60px;
	}

	#support, #sanka, #album_list, #contact, #thanks, #topics, #footer_contact {
		margin: 60px auto;
	}
}

@media screen and (max-width: 375px) {
	#subvisual h2 {
		font-size: 22px;
	}

	#subvisual_al h2 {
		font-size: 20px;
	}
}

@media screen and (max-width: 320px) {
	#subvisual {
		height: 150px;
	}

	#subvisual h2 {
		height: 150px;
		line-height: 150px;
	}
}


/*トップページ***************/
#omanta .o_news {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#omanta .o_left {
	width: 60%;
}

#omanta .o_right {
	width: 35%;
}

#omanta .o_news_border {
	border: 3px solid #DE0012;
	padding: 10%;
}

.top_news__list {
	list-style-type: none;
	padding-left: 0;
	margin-bottom: 90px;
}

.top-news__img {
	margin-right: 20px;
}

.top_news__item {
	margin-bottom: 30px;
	display: flex;
	align-items: center;
}

.top_news__item:last-child {
	margin-bottom: 0px;
}

.top_news__item a {
	color: #DE0012;
	font-size: 20px;
	font-weight: bold;
}

.top_news__item a:hover {
	text-decoration: none;
}

.top_object-fit-img {
	object-fit: contain;
	font-family: 'object-fit: contain;'
}

.top_object-fit-img img {
	width: 195px;
	height: 160px;
	object-fit: cover;
	object-position: top;
	font-family: 'object-fit: cover; object-position: bottom;';
}

#omanta .o_left h2, #omanta .o_right h2 {
	font-size: 40px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: 20px;
}

#omanta .o_left h2::before, #omanta .o_right h2::before {
	content: '';
	display: inline-block;
	width: 83px;
	height: 48px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

.top_sns {
	color: #fff;
	font-weight: bold;
	width: 90%;
	padding: 5%;
	display: block;
}

.top_t {
	background: url(../images/x_icon.png) no-repeat center right 30px;
	background-color: #000;
	background-size: 50px;
}

.top_f {
	background: url(../images/facebook_icon.png) no-repeat center right 30px;
	background-color: #1877F2;
	background-size: 50px;
	margin-bottom: 10px;
}

.top_i {
	background: url(../images/instagram_icon.png) no-repeat center right 30px;
	background-color: #EA3379;
	background-size: 50px;
}

.top_y {
	background: url(../images/youtube_icon.png) no-repeat center right 30px;
	background-color: #DE0012;
	background-size: 50px;
}

.facebook-timeline {

	width: 100%;
	max-width: 420px;

}

#omanta .o_right_m {
	margin-bottom: 20px;
}

#omanta .o_right a {
	margin-bottom: 10px;
}

#omanta .o_right a:last-child {
	margin-bottom: 0px;
}

#omanta .o_katari {
	background-color: #000;
	padding: 150px 0px;
	margin-top: 130px;
}

#omanta .o_katari h3 {
	color: #fff;
	font-size: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 100px;
}

#omanta .o_katari h3::before {
	content: '';
	display: inline-block;
	width: 83px;
	height: 48px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

#omanta .o_flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#omanta .o_flex div {
	width: 47%;
}

#omanta .o_flex div p {
	color: #fff;
	font-weight: bold;
	font-size: 24px;
	text-align: center;
	margin-bottom: 20px;
}

#omanta .o_flex div img {
	width: 100%;
}

#omanta .o_bosyu {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#omanta .o_bosyu_left, #omanta .o_bosyu_right, #omanta .o_bosyu_center {
	width: 49%;
	height: 350px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 100px 0px 50px;
}

#omanta .o_bosyu_left {
	background: url(../images/top_bg1.png) no-repeat bottom left;
	background-size: cover;
	background-color: #fff;
}

#omanta .o_bosyu_right {
	background: url(../images/top_bg2.png) no-repeat top right;
	background-size: cover;
	background-color: #fff;
}

#omanta .o_bosyu_center {
	background: url(../images/top_bg4.png) no-repeat center center;
	background-size: cover;
	background-color: #fff;
	margin: 0 auto 50px;
}

#omanta .o_bosyu_left p, #omanta .o_bosyu_right p, #omanta .o_bosyu_center p {
	font-size: 30px;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
}

#omanta .o_bosyu_left img, #omanta .o_bosyu_right img {
	max-width: 372px;
	width: 80%;
	margin-right: 10px;
}

.btn {
	background: url(../images/arrow.png) no-repeat center right 20px;
	background-size: 20px;
	background-color: #DE0012;
	border-radius: 30px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	margin: auto;
	width: 80%;
	max-width: 380px;
	display: block;
	padding: 10px 5%;
}

#omanta .contact_btn {
	background-color: #DE0012;
	border-radius: 10px;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	width: 80%;
	max-width: 540px;
	display: block;
	text-align: center;
	padding: 30px 5%;
	margin: auto;
}

#omanta .o_link {
	background-color: #DE0012;
	padding: 70px 0px;
}

#omanta .o_link_flex {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}

#omanta .o_link_box {
	background-color: #fff;
	width: 38%;
	padding: 5%;
}

#omanta .o_link_box img {
	max-width: 300px;
	width: 80%;
	margin-right: 10px;
}

#omanta .o_link_box .o_link_ttl {
	font-size: 22px;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
}

#omanta .o_link_box .o_link_txt {
	margin: 30px 0px;
	font-size: 20px;
}

#omanta .o_kyouryoku {
	background: url(../images/top_bg3.png) no-repeat center top;
	background-size: cover;
	padding-top: 120px;
	padding-bottom: 130px;
}

#omanta .o_kyouryoku h3 {
	font-size: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 50px;
}

#omanta .o_kyouryoku h3::before {
	content: '';
	display: inline-block;
	width: 83px;
	height: 48px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

#omanta .o_kyouryoku_box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

#omanta .o_kyouryoku_box a, #omanta .o_kyouryoku_box p {
	width: 32%;
}

#omanta .o_kyouryoku_box a img, #omanta .o_kyouryoku_box p img {
	width: 100%;
}

#omanta .o_kyouryoku_box a:not(:nth-child(3n+3)), #omanta .o_kyouryoku_box p:not(:nth-child(3n+3)) {
	margin-right: 2%;
}

#omanta .o_kyouryoku_box a:nth-child(n+4), #omanta .o_kyouryoku_box p:nth-child(n+4) {
	margin-top: 2%;
}

#omanta .o_ouen {
	margin: 100px auto;
}

#omanta .o_kyousanbtn {
	font-size: 22px;
	text-align: center;
	max-width: 420px;
	width: 90%;
	display: block;
	margin: auto;
	color: #000;
	border: 1px solid #000;
	border-radius: 10px;
	padding: 20px 4%;
	background-color: #fff;
}

#omanta .o_kyousantxt {
	text-align: center;
	font-size: 24px;
	margin-top: 30px;
}

#omanta .o_kyousantxt a {
	color: #3663F7;
	text-decoration: underline;
}

@media screen and (max-width: 1270px) {
	#omanta .o_bosyu_left p, #omanta .o_bosyu_right p {
		flex-flow: column;
	}

	#omanta .o_bosyu_left img, #omanta .o_bosyu_right img {
		margin-right: 0px;
	}
}

@media screen and (max-width: 1230px) {
	#omanta .o_link_box img {
		max-width: 250px;
	}
}

@media screen and (max-width: 1083px) {
	#omanta .o_link_box img {
		max-width: 200px;
	}
}

@media screen and (max-width: 1030px) {
	.top_news__item {
		align-items: flex-start;
	}

	.top_object-fit-img img {
		width: 165px;
		height: 130px;
		object-position: center;
	}
}

@media screen and (max-width: 960px) {
	#omanta .o_left h2, #omanta .o_right h2 {
		justify-content: center;
	}

	#omanta .o_news {
		flex-flow: column;
	}

	#omanta .o_left, #omanta .o_right {
		width: 100%;
	}

	#omanta .o_news_border {
		padding: 5%;
		margin-bottom: 100px;
	}

	#omanta .o_bosyu_left, #omanta .o_bosyu_right, #omanta .o_bosyu_center {
		height: 300px;
	}

	#omanta .o_katari {
		padding: 100px 0px;
		margin-top: 100px;
	}

	#omanta .o_link_flex {
		flex-flow: column;
	}

	#omanta .o_link_box {
		width: 90%;
	}

	#omanta .o_link_box img {
		max-width: 350px;
	}

	#omanta .o_link_flex .o_link_box:first-child {
		margin-bottom: 20px;
	}

	#omanta .o_kyouryoku {
		padding-bottom: 100px;
	}
}

@media screen and (max-width: 768px) {
	#omanta .o_left h2, #omanta .o_right h2, #omanta .o_katari h3, #omanta .o_kyouryoku h3 {
		font-size: 34px;
	}

	#omanta .o_left h2::before, #omanta .o_right h2::before, #omanta .o_katari h3::before, #omanta .o_kyouryoku h3::before {
		width: 60px;
		height: 32px;
	}

	#omanta .o_katari h3 {
		margin-bottom: 60px;
	}

	#omanta .o_flex, #omanta .o_bosyu {
		flex-flow: column;
	}

	#omanta .o_flex div {
		width: 100%;
	}

	#omanta .o_flex div:first-child {
		margin-bottom: 50px;
	}

	#omanta .o_bosyu_left, #omanta .o_bosyu_right, #omanta .o_bosyu_center {
		width: 100%;
	}

	#omanta .o_bosyu_left {
		margin: 100px 0px 20px;
	}

	#omanta .o_bosyu_right {
		margin: auto;
	}

	#omanta .o_bosyu_center {
		margin-top: 20px;
	}
}

@media screen and (max-width: 500px) {
	#omanta .o_left h2, #omanta .o_right h2, #omanta .o_katari h3, #omanta .o_kyouryoku h3 {
		font-size: 26px;
	}

	#omanta .o_kyouryoku h3 {
		margin-bottom: 30px;
	}

	#omanta .o_news_border {
		margin-bottom: 60px;
	}

	.top_news__item {
		flex-flow: column-reverse;
		align-items: center;
	}

	.top_news__list {
		margin-bottom: 50px;
	}

	.top-news__img {
		margin-right: 0px;
		width: 100%;
	}

	.top_object-fit-img img {
		width: 100%;
		height: 300px;
		margin: auto;
		display: block;
	}

	.top_t, .top_f, .top_i, .top_y {
		background-size: 30px;
	}

	#omanta .o_bosyu_left p, #omanta .o_bosyu_right p, #omanta .o_bosyu_center p {
		font-size: 26px;
	}

	#omanta .o_link_box .o_link_ttl {
		flex-flow: column;
	}

	#omanta .o_link_box .o_link_txt {
		margin: 10px 0px 30px;
		font-size: 18px;
	}

	#omanta .o_link_box img {
		margin-right: 0px;
	}

	#omanta .o_kyouryoku {
		padding-top: 60px;
	}

	#omanta .o_kyousanbtn, #omanta .o_kyousantxt {
		font-size: 20px;
	}

	#omanta .o_ouen {
		margin: 60px auto;
	}
}

@media screen and (max-width: 375px) {
	#omanta .o_bosyu_left, #omanta .o_bosyu_right, #omanta .o_bosyu_center {
		height: 250px;
	}

	#omanta .o_bosyu_left p, #omanta .o_bosyu_right p, #omanta .o_bosyu_center p {
		font-size: 22px;
	}

	.top_object-fit-img img {
		object-position: center;
		height: 250px;
	}
}

@media screen and (max-width: 320px) {
	.top_object-fit-img img {
		height: 200px;
	}
}

/*糸魚川おまんた祭りとは***************/
#about .a_flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#about .a_txt {
	width: 46%;
	font-weight: bold;
	font-size: 24px;
	line-height: 1.8;
}

#about .a_txt_img {
	width: 46%;
}

#about .a_txt_img img {
	width: 100%;
}

#about .a_caption {
	text-align: right;
	margin-top: 5px;
	margin-bottom: 40px;
}

#about .a_omanta {
	background:
		url(../images/omanta_bg1.png) no-repeat top right,
		url(../images/omanta_bg2.png) no-repeat bottom left;
	background-color: #FFF5F5;
	padding-bottom: 100px;
	margin-top: 100px;
}

#about .a_omanta h3 {
	font-size: 34px;
	font-weight: bold;
	text-align: center;
	border-bottom: 3px solid #DE0012;
	display: table;
	padding: 150px 50px 5px 50px;
	margin: 0 auto 30px;
}

#about .a_omanta_txt {
	font-size: 20px;
	line-height: 1.8;
	margin-bottom: 50px;
}

#about .a_omanta_img {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: auto;
}

.a_imgbox1 img {
	width: 48%;
	max-width: 462px;
}

.a_imgbox2 img:nth-child(1) {
	width: 22%;
	max-width: 214px;
}

.a_imgbox2 img:nth-child(2) {
	width: 48%;
	max-width: 462px;
}

.a_imgbox3 img:nth-child(1), .a_imgbox3 img:nth-child(2) {
	width: 38%;
	max-width: 462px;
}

.a_imgbox3 img:nth-child(3) {
	width: 18%;
	max-width: 214px;
}

.a_imgbox1 img:nth-child(1), .a_imgbox2 img:nth-child(1), .a_imgbox3 img:nth-child(1), .a_imgbox3 img:nth-child(2) {
	margin-right: 30px;
}

.a_imgbox4 img {
	width: 80%;
	max-width: 628px;
}

#about .a_omanta_caption {
	text-align: center;
	margin-top: 10px;
	margin-bottom: 50px;
}

#about .a_omanta_txt span {
	text-align: right;
	font-size: 18px;
	display: block;
}

#about .a_omanta_center p {
	text-align: center;
	font-size: 20px;
}

#about .a_omanta_center img {
	display: block;
	margin: auto;
}

#about .a_omanta_center img {
	width: 60%;
	margin-top: 30px;
}

#about .a_omanta_center img:last-child {
	margin-bottom: 50px;
}

#about .a_kashi {
	width: 1083px;
	max-width: 80%;
	display: block;
	margin: 20px auto;
}

@media screen and (max-width: 960px) {
	#about .a_omanta {
		background-size: 60%;
	}

	#about .a_omanta_center img {
		width: 80%;
	}
}

@media screen and (max-width: 768px) {
	#about .a_flex {
		flex-flow: column;
	}

	#about .a_txt {
		width: 100%;
		font-size: 20px;
		margin-bottom: 20px;
	}

	#about .a_txt_img {
		width: 100%;
	}

	#about .a_omanta_txt {
		font-size: 18px;
	}

	#about .a_omanta_txt span {
		font-size: 14px;
	}
}

@media screen and (max-width: 500px) {
	#about .a_txt {
		font-size: 18px;
	}

	#about .a_caption {
		font-size: 14px;
		text-align: center;
	}

	#about .a_omanta {
		padding-bottom: 60px;
		margin-top: 60px;
	}

	#about .a_omanta h3 {
		font-size: 26px;
		padding: 80px 50px 5px 50px;
	}

	#about .a_omanta_txt {
		font-size: 16px;
		margin-bottom: 30px
	}

	#about .a_omanta_txt span {
		text-align: center;
		margin-top: 10px;
	}

	#about .a_omanta_img {
		flex-flow: column;
	}

	#about .a_omanta_caption {
		font-size: 14px;
	}

	.a_imgbox1 img, .a_imgbox2 img:nth-child(1), .a_imgbox2 img:nth-child(2), .a_imgbox3 img:nth-child(1), .a_imgbox3 img:nth-child(2), .a_imgbox3 img:nth-child(3), .a_imgbox4 img {
		width: 100%;
	}

	.a_imgbox1 img:nth-child(1), .a_imgbox2 img:nth-child(1), .a_imgbox3 img:nth-child(1), .a_imgbox3 img:nth-child(2) {
		margin-right: 0px;
		margin-bottom: 10px;
	}

	#about .a_omanta_center p {
		font-size: 16px;
	}

	#about .a_omanta_center img {
		width: 100%;
	}

	#about .a_kashi {
		max-width: 100%;
	}
}

@media screen and (max-width: 375px) {
	#about .a_omanta h3 {
		font-size: 22px;
	}
}

/*おまんた囃子保存会***************/
#hayashi h3 {
	font-size: 36px;
	display: flex;
	align-items: center;
	margin-bottom: 70px;
	padding-top: 130px;
}

#hayashi h3::before {
	content: '';
	display: inline-block;
	width: 67px;
	height: 39px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

#hayashi .h_movie {
	max-width: 800px;
	width: 100%;
	aspect-ratio: 16 / 9;
	margin: 0 auto 20px;
	text-align: center;
}

#hayashi .h_movie iframe {
	width: 100%;
	height: 100%;
}

#hayashi .h_uta {
	text-align: center;
	color: #DE0012;
	font-weight: bold;
	margin: 60px 0 0;
	font-size: 30px;
}

#hayashi .h_border {
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	border-bottom: 1px solid #000;
	display: table;
	padding: 0px 20px;
	margin: 40px auto 30px;
}

#hayashi .h_kiroku {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	font-size: 20px;
	margin-bottom: 50px;
}

#hayashi ul li {
	margin-left: 1em;
	text-indent: -1em;
	margin-bottom: 10px;
}

#hayashi ul li span {
	font-weight: bold;
}

#hayashi .h_uta_ttl {
	text-align: center;
	font-weight: bold;
	font-size: 30px;
}

#hayashi .h_uta_name {
	text-align: center;
}

#hayashi .h_uta_img1 {
	width: 100%;
	max-width: 900px;
	display: block;
	margin: auto;
}

#hayashi .h_uta_img2 {
	width: 100%;
	max-width: 900px;
	display: block;
	margin: auto;
}

#hayashi .h_flex .h_img {
	width: 32%;
}

#hayashi .h_flex .h_img img {
	width: 100%;
}

#hayashi .h_txt {
	font-size: 20px;
	line-height: 1.8;
}

#hayashi .h_mb {
	margin-bottom: 30px;
}

#hayashi .h_box {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 160px;
}

#hayashi .h_box_txtarea {
	width: 65%;
}

#hayashi .h_box img {
	width: 32%;
}

#hayashi .h_box_txt {
	font-size: 20px;
	line-height: 1.8;
}

#hayashi .h_midashi {
	text-align: center;
	font-size: 46px;
	color: #DE0012;
	font-weight: bold;
	margin-bottom: 20px;
}

#hayashi .h_midashi span {
	margin-left: 30px;
}

#hayashi .h_name {
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 30px;
}

#hayashi .h_name span {
	margin-left: 20px;
}

@media screen and (max-width: 960px) {
	#hayashi h3 {
		padding-top: 100px;
	}

	#hayashi .h_midashi {
		font-size: 38px;
	}

	#hayashi .h_box {
		flex-flow: column;
		margin-bottom: 100px;
	}

	#hayashi .h_box img {
		width: 50%;
		margin: 0 auto 20px;
	}

	#hayashi .h_box_txt {
		font-size: 18px;
		width: 100%;
	}

	#hayashi .h_midashi span {
		margin-left: 30px;
	}

	#hayashi .h_box_txtarea {
		width: 100%;
	}

	#hayashi .h_name {
		text-align: center;
		margin-top: 10px;
	}
}

@media screen and (max-width: 768px) {
	#hayashi h3 {
		font-size: 34px;
		margin-bottom: 60px;
	}

	#hayashi .h_txt, #hayashi .h_kiroku {
		font-size: 18px;
	}
}

@media screen and (max-width: 500px) {
	#hayashi h3 {
		font-size: 22px;
		margin-bottom: 40px;
		padding-top: 60px;
	}

	#hayashi h3::before {
		width: 60px;
		height: 32px;
	}

	#hayashi .h_midashi {
		font-size: 26px;
	}

	#hayashi .h_box img {
		width: 100%;
	}

	#hayashi .h_uta, #hayashi .h_uta_ttl, #hayashi .h_border {
		font-size: 20px;
	}

	#hayashi .h_uta_name {
		font-size: 14px;
		margin-top: 10px;
	}
}

@media screen and (max-width: 375px) {
	#hayashi h3 {
		font-size: 22px;
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 320px) {
	#hayashi .h_uta, #hayashi .h_uta_ttl, #hayashi .h_border {
		font-size: 19px;
	}
}

/*祭人の語り***************/
#message h3 {
	font-size: 36px;
	display: flex;
	align-items: center;
	margin-bottom: 50px;
	padding-top: 130px;
}

#message h3::before {
	content: '';
	display: inline-block;
	width: 67px;
	height: 39px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

#message .m_ttl {
	font-size: 30px;
	font-weight: bold;
	border-bottom: 3px solid #DE0012;
	padding: 130px 0px 10px;
	margin-bottom: 50px;
}

#message .m_flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#message .m_img {
	width: 45%;
}

#message .m_img img {
	width: 100%;
}

#message .m_box {
	width: 51%;
}

#message .m_name {
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 30px;
}

#message .m_name span {
	font-size: 18px;
	margin-right: 20px;
}

#message .m_txt {
	font-size: 20px;
	line-height: 1.8;
}

#message .katari_txt {
	text-align: center;
	margin-bottom: 20px;
}

#message .katari_txt p {
	font-size: 18px;
	line-height: 1.7;
	display: inline-block;
	text-align: left;
}

#message .m_pdftxt {
	text-align: center;
	font-size: 26px;
	margin-bottom: 40px;
}

#message .text-left-flex {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

#message .m_pdf li {
	background-color: #F0F0F0;
	margin-bottom: 10px;
}

#message .m_pdf li:last-child {
	margin-bottom: 0px;
}

#message .m_pdf li a {
	color: #1877F2;
	text-decoration: underline;
	display: block;
	font-size: 24px;
	padding: 10px;
	padding: 10px 150px;
}

@media screen and (max-width: 960px) {
	#message .m_ttl {
		padding: 100px 0px 10px;
	}

	#message h3 {
		padding-top: 100px;
	}

	#message .m_flex {
		flex-flow: column;
	}

	#message .m_img {
		margin: auto;
	}

	#message .m_box {
		width: 100%;
	}

	#message .m_name {
		text-align: center;
		margin-top: 10px;
	}
}

@media screen and (max-width: 768px) {
	#message h3 {
		font-size: 34px;
	}

	#message .m_ttl {
		font-size: 26px;
	}

	#message .m_txt {
		font-size: 18px;
	}

	#message .m_pdftxt {
		font-size: 20px;
		margin-bottom: 20px;
	}

	#message .text-left-flex {
		display: block;
	}

	#message .m_pdf li a {
		font-size: 20px;
		padding: 10px;
	}
}

@media screen and (max-width: 500px) {
	#message h3 {
		font-size: 26px;
		margin-bottom: 40px;
		padding-top: 60px;
	}

	#message h3::before {
		width: 60px;
		height: 32px;
	}

	#message .m_ttl {
		font-size: 22px;
		padding: 60px 0px 10px;
	}

	#message .m_img {
		width: 100%;
	}

	#message .m_pdf li a {
		font-size: 18px;
	}
}

/*トピックス***************/
#topics .t_midashi {
	font-size: 26px;
	text-align: center;
}

.news__list {
	list-style-type: none;
	padding-left: 0;
	margin: 100px auto 130px;
}

.news__item {
	padding: 35px 0;
	border-top: solid 1px #707070;
	display: flex;
	align-items: center;
}

.news__item:last-child {
	border-bottom: solid 1px #707070;
}

.news__item a {
	color: #DE0012;
	font-size: 24px;
	font-weight: bold;
}

.news__item a:hover {
	text-decoration: none;
}

.news__link {
	display: block;
	margin-bottom: 20px;
}

.pager {
	text-align: center;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

.pager a {
	color: #676767;
	border: 2px solid #CECECE;
	margin: 0 5px;
	padding: 5px 10px;
}

.pager a:hover {
	opacity: 0.5;
}

.current {
	background-color: #DE0012;
	pointer-events: none;
	color: #fff !important;
}

.news__box {
	display: flex;
	align-items: center;
	margin-right: 30px;
}

.news__title {
	color: #fff;
	background-color: #DE0012;
	border-radius: 5px;
	width: 100%;
	width: 96%;
	font-size: 24px;
	padding: 1% 2%;
}

.news__back {
	text-align: center;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "Yu Gothic M", "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin-top: 50px;
}

.news__back a {
	background-color: #DE0012;
	border: 2px solid #CECECE;
	padding: 10px 15px;
	color: #fff;
}

.news__back a:hover {
	opacity: 0.5;
}

.news__time {
	text-align: right;
	display: block;
	width: 98%;
	margin: 10px auto 40px;
}

.news__contentarea {
	width: 94%;
	margin: auto;
}

.comment {
	text-align: left !important;
	display: block;
}

.detailText {
	text-align: left;
	line-height: 1.7;
}

.detailText span {
	font-size: 16px !important;
}

.detailUpfile {
	text-align: center;
	margin: 50px 0 0;
}

.detailUpfile img {
	width: 60%;
}

.object-fit-img {
	object-fit: contain;
	font-family: 'object-fit: contain;'
}

.object-fit-img img {
	width: 283px;
	height: 232px;
	object-fit: cover;
	object-position: top;
	font-family: 'object-fit: cover; object-position: bottom;';
}

@media screen and (max-width: 768px) {
	#topics .t_midashi {
		font-size: 18px;
	}

	.news__list {
		margin: 60px auto;
	}

	.news__item a {
		font-size: 20px;
	}
}

@media screen and (max-width: 600px) {
	.news__box {
		margin-right: 0px;
		margin: auto;
		display: block;
	}

	.news__link {
		margin-bottom: 10px;
	}

	.news__item {
		flex-flow: column-reverse;
		align-items: self-start;
	}

	.comment {
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 500px) {
	.news__title {
		font-size: 18px;
	}

	.news__list {
		margin: 40px auto;
	}

	.news__time {
		font-size: 14px;
	}

	.news__box {
		width: 100%;
	}

	.detailUpfile img {
		width: 100%;
	}

	.object-fit-img img {
		width: 100%;
		height: 300px;
		margin: auto;
		display: block;
	}
}

@media screen and (max-width: 375px) {
	.object-fit-img img {
		object-position: center;
		height: 250px;
	}
}

@media screen and (max-width: 320px) {
	.object-fit-img img {
		height: 200px;
	}
}

/*支えたい！***************/
#support h3 {
	font-size: 36px;
	display: flex;
	align-items: center;
	margin-bottom: 50px;
}

#support h3::before {
	content: '';
	display: inline-block;
	width: 67px;
	height: 39px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

#support .s_comingsoon {
	max-width: 386px;
	width: 70%;
	display: block;
	margin: 0px auto 150px;
}

#support .s_ttl {
	color: #DE0012;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.8;
}

#support .s_txt {
	line-height: 1.8;
	font-size: 20px;
	margin: 30px 0px 100px;
}

#support .s_txt a {
	text-decoration: underline;
}

#support .s_onegai {
	background-color: #FFF5F5;
	padding: 100px 0px;
	/* margin-bottom: 100px; */
}

#support .s_onegai img {
	max-width: 717px;
	width: 90%;
	display: block;
	margin: auto;
}

#support .s_onegai_ttl {
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	border-bottom: 1px solid #000;
	display: table;
	padding: 0px 20px;
	margin: 40px auto 60px;
}

#support .s_onegai_txt {
	font-size: 20px;
	line-height: 1.8;
}

#support table {
	border-spacing: 0;
	width: 100%;
	margin: 0 auto 150px;
	font-size: 20px;
}

#support table th, #support table td {
	border-bottom: 1px solid #000;
	padding: 10px 0px;
}

#support table th {
	text-align: left;
	width: 18%;
	padding-right: 2%;
}

#support table td span {
	font-weight: bold;
}

#support table td {
	width: 80%;
}

@media screen and (max-width: 1024px) {
	#support table {
		width: 100%;
	}
}

@media screen and (max-width: 850px) {
	#support table th, #support table td {
		display: block;
		width: 100%;
	}

	#support table th {
		padding-right: 0%;
		border-bottom: none;
		padding-bottom: 0;
	}
}

.oubo {
	border: 1px solid #000;
	padding: 5%;
}

.o_txt {
	text-align: center;
	font-size: 22px;
	line-height: 1.8;
}

.o_txt .o_address {
	font-size: 30px;
	font-weight: bold;
	text-decoration: underline;
	display: inline-block;
	margin: 20px 0px;
}

.o_m {
	margin-left: 10px;
}

.oubo_btn {
	background-color: #000;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	display: block;
	margin: 50px auto 0px;
	max-width: 510px;
	width: 90%;
	text-align: center;
	border-radius: 10px;
	padding: 30px 5%;
}

@media screen and (max-width: 768px) {
	#support h3 {
		font-size: 34px;
	}

	#support .s_onegai_ttl, #support .s_ttl {
		font-size: 24px;
	}

	#support .s_onegai_txt, #support .s_txt {
		font-size: 18px;
	}

	.o_txt {
		font-size: 18px;
	}

	.o_txt .o_address {
		font-size: 20px;
	}
}

@media screen and (max-width: 500px) {
	#support h3 {
		font-size: 26px;
		margin-bottom: 40px;
	}

	#support h3::before {
		width: 60px;
		height: 32px;
	}

	#support .s_comingsoon {
		margin: 0px auto 100px;
	}

	#support .s_onegai {
		padding: 60px 0px;
		margin-bottom: 60px;
	}

	#support .s_onegai_ttl {
		font-size: 20px;
		margin: 40px auto;
	}

	.o_m {
		margin-left: 0px;
	}

	#support .s_ttl {
		font-size: 20px;
	}

	#support .s_txt {
		margin: 30px 0px 60px;
	}
}

@media screen and (max-width: 375px) {
	#support h3 {
		font-size: 22px;
		margin-bottom: 20px;
	}
}

/*参加したい！***************/
#sanka h3 {
	font-size: 36px;
	display: flex;
	align-items: center;
	margin-bottom: 50px;
}

#sanka h3::before {
	content: '';
	display: inline-block;
	width: 67px;
	height: 39px;
	background-image: url(../images/midashi_mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

#sanka table {
	border-spacing: 0;
	width: 100%;
	margin: auto;
	font-size: 20px;
}

#sanka table th, #sanka table td {
	border-bottom: 1px solid #000;
	padding: 10px 0px;
}

#sanka table th {
	text-align: left;
	width: 18%;
	padding-right: 2%;
}

#sanka table td span {
	font-weight: bold;
}

#sanka table td {
	width: 80%;
}

#sanka .s_comingsoon {
	max-width: 386px;
	width: 70%;
	display: block;
	margin: 0px auto 150px;
}

#sanka .sa_ttl {
	color: #DE0012;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.8;
}

#sanka .sa_txt {
	line-height: 1.8;
	font-size: 20px;
	margin: 30px 0px;
}

#sanka .mb150 {
	margin-bottom: 150px;
}

@media screen and (max-width: 1024px) {
	#sanka table {
		width: 100%;
	}
}

@media screen and (max-width: 850px) {
	#sanka table th, #sanka table td {
		display: block;
		width: 100%;
	}

	#sanka table th {
		padding-right: 0%;
		border-bottom: none;
		padding-bottom: 0;
	}
}

@media screen and (max-width: 768px) {
	#sanka h3 {
		font-size: 34px;
	}

	#sanka .sa_ttl {
		font-size: 24px;
	}

	#sanka .sa_txt {
		font-size: 18px;
	}
}

@media screen and (max-width: 500px) {
	#sanka h3 {
		font-size: 26px;
		margin-bottom: 40px;
	}

	#sanka h3::before {
		width: 60px;
		height: 32px;
	}

	#sanka .s_comingsoon {
		margin: 0px auto 100px;
	}

	#sanka .sa_ttl {
		font-size: 20px;
	}

	#sanka table {
		font-size: 18px;
	}

	#sanka .mb150 {
		margin-bottom: 100px;
	}
}

@media screen and (max-width: 375px) {
	#sanka h3 {
		font-size: 22px;
		margin-bottom: 20px;
	}

	.o_txt .o_address {
		font-size: 18px;
	}
}

/*祭りを振り返る***************/
#album {
	background-color: #FFF5F5;
	padding-bottom: 130px;
}

#album .al_txt {
	text-align: center;
	font-size: 26px;
	padding-top: 130px;
	margin-bottom: 20px;
}

#album .al_list {
	background-color: #fff;
	border-radius: 15px;
	list-style-position: inside;
	list-style-image: url(../images/midashi_mark_s.png);
	padding: 8%;
}

#album .al_list li {
	font-size: 22px;
	margin-left: 2.9em;
	text-indent: -2.9em;
	margin-bottom: 50px;
}

#album .al_list li:last-child {
	margin-bottom: 0px;
}

#album .al_list li a {
	color: #1877F2;
	text-decoration: underline;
	margin-left: 10px;
}

#album_list .al_midashi {
	background-color: #DE0012;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	max-width: 960px;
	width: 100%;
	text-align: center;
	margin: 0 auto 100px;
	padding: 50px 0px;
}

#album_list .al_midashi span {
	margin-right: 40px;
}

.wrap {
	display: flex;
	flex-wrap: wrap;
}

.item {
	width: 32%;
}

.item:not(:nth-child(3n+3)) {
	margin-right: 2%;
}

.item:nth-child(n+4) {
	margin-top: 2%;
}

.item img {
	width: 100%;
}

.pagenavi {
	text-align: center;
	margin-top: 100px;
}

.pagenavi .top {
	background-color: #DE0012;
	border: 2px solid #CECECE;
	color: #fff;
	padding: 10px 20px;
}

.pagenavi .navibtn {
	border: 2px solid #CECECE;
	color: #000;
	padding: 10px;
}

.al_flyer {
	margin-top: 60px;
}

.al_flyer p {
	text-align: center;
	font-size: 24px;
	margin-bottom: 10px;
}

.al_flyer a {
	font-size: 22px;
	text-align: center;
	max-width: 420px;
	width: 90%;
	display: block;
	margin: auto;
	margin-bottom: 50px;
	color: #000;
	border: 1px solid #000;
	border-radius: 10px;
	padding: 20px 4%;
}

@media screen and (max-width: 960px) {
	#album {
		padding-bottom: 100px;
	}

	#album .al_txt {
		padding-top: 100px;
	}

	#album_list .al_midashi {
		font-size: 26px;
	}
}

@media screen and (max-width: 768px) {
	#album .al_txt {
		font-size: 18px;
	}

	#album .al_list li {
		font-size: 20px;
		margin-bottom: 30px;
		margin-left: 3.2em;
		text-indent: -3.2em;
	}

	#album_list .al_midashi {
		margin: 0 auto 60px;
	}

	#album_list .al_midashi span {
		margin-right: 0px;
	}
}

@media screen and (max-width: 500px) {
	#album .al_txt {
		padding-top: 60px;
	}

	#album .al_list {
		list-style-image: url(../images/midashi_mark_ss.png);
	}

	#album .al_list li {
		font-size: 18px;
		margin-bottom: 25px;
		margin-left: 1.9em;
		text-indent: -1.9em;
	}

	#album_list .al_midashi {
		font-size: 18px;
		padding: 30px 3%;
		;
		margin: 0 auto 30px;
		width: 94%;
	}

	.item {
		width: 49%;
	}

	.item:not(:nth-child(3n+3)) {
		margin-right: 0%;
	}

	.item:not(:nth-child(2n+2)) {
		margin-right: 2%;
	}

	.item:nth-child(n+3) {
		margin-top: 2%;
	}

	.al_flyer p, .al_flyer a {
		font-size: 18px;
	}
}

@media screen and (max-width: 350px) {
	#album .al_list li {
		font-size: 16px;
		margin-left: 2.1em;
		text-indent: -2.1em;
	}
}

/*お問い合わせ***************/
#contact .c_txt {
	text-align: center;
	font-size: 26px;
	line-height: 1.8;
	margin-bottom: 60px;
}

#contact .form {
	border: 2px solid #DE0012;
	font-size: 20px;
	padding: 4%;
}

#contact .form th {
	width: 45%;
	vertical-align: top;
}

#contact .form td {
	width: 45%;
}

.form_item {
	text-align: left;
	display: flex;
	justify-content: space-between;
	margin-right: 20px;
}

.mandatory {
	background-color: #DE0012;
	color: white;
	font-weight: normal;
	text-align: center;
	border-radius: 4px;
	font-size: 14px;
	width: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.form_box {
	padding: 1%;
	border-radius: 3px;
	width: 98%;
	border: 1px solid #989898;
	margin-bottom: 40px;
}

.c_radio {
	transform: scale(1.5);
	margin-bottom: 20px;
}

#contact .c_radio:last-child {
	margin-bottom: 40px;
}

.form_btn, .kakunin_btn, .soushin_btn_top, .soushin_btn_bottom {
	background-color: #000;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	display: block;
	margin: 50px auto 0px;
	max-width: 510px;
	width: 100%;
	text-align: center;
	border-radius: 10px;
	padding: 30px 20px;
	border: none;
	cursor: pointer;
}

.form_btn:hover, .kakunin_btn:hover, .soushin_btn_top:hover, .soushin_btn_bottom:hover {
	opacity: 0.5;
}

.policy_ttl {
	text-align: center;
	font-weight: bold;
	margin: 60px 0px 20px;
	font-size: 20px;
}

.policy_txt {
	border: 1px solid #989898;
	height: 180px;
	overflow: scroll;
	padding: 2%;
	margin: 0 auto;
	font-size: 16px;
}

.thanks_txt {
	font-size: 20px;
	text-align: center;
	font-weight: bold;
	background-color: #FCF6F6;
	padding: 100px 20px;
}

.c_errortxt {
	font-size: 20px;
	font-weight: normal;
}

.gmail {
	text-align: center;
	font-size: 18px;
	margin-top: 50px;
}

.gmail_kikan {
	font-size: 18px;
	margin-top: 10px;
	text-align: center;
}

@media screen and (max-width: 840px) {
	#contact .form th, #contact .form td {
		display: inline-block;
		width: 100%;
	}

	.form_item {
		margin-right: 0px;
	}
}

@media screen and (max-width: 768px) {
	#contact .c_txt {
		font-size: 18px;
	}

	.gmail {
		text-align: left;
	}
}

@media screen and (max-width: 500px) {
	#contact .c_txt {
		margin-bottom: 30px;
	}

	.form_item {
		font-size: 18px;
	}

	#contact .form {
		font-size: 18px;
	}

	.c_radio {
		margin-bottom: 0px;
	}

	#contact .c_radio:last-child {
		margin-bottom: 0px;
	}

	.c_radioarea {
		margin-bottom: 30px;
	}

	.policy_ttl {
		margin: 0px 0px 10px;
		font-size: 18px;
	}

	.policy_txt {
		font-size: 14px;
	}

	.thanks_txt {
		font-size: 18px;
	}

	.gmail, .gmail_kikan {
		font-size: 16px;
	}

}

@media screen and (max-width: 390px) {
	.thanks_txt {
		padding: 100px 5%;
	}
}

/*footer***************/
footer {
	background: url(../images/footer.jpg) center center / cover no-repeat;
	color: #fff;
	padding: 30px 0 10px;
	width: 100%;
	height: 0;
	padding-top: calc(400 / 1920 * 100%);
	position: relative;
}

footer .siteMap ul {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px 0px;
	font-weight: bold;
	position: absolute;
	top: 0%;
	left: 50%;
	transform: translate(-50%, 0%);
	width: 100%;
}

footer .siteMap ul li {
	font-size: 16px;
	text-align: center;
}

footer .siteMap ul li::after {
	content: '/';
	color: #fff;
}

footer .siteMap ul li:last-child::after {
	content: "";
}

footer .siteMap ul li a {
	color: #fff;
	padding: 0 20px;
}

footer .f_pagetop {
	position: absolute;
	top: 30px;
	right: 6.5%;
	width: 62px;
}

footer .f_right {
	position: absolute;
	right: 6.5%;
	bottom: 15%;
	width: 350px;
	text-align: right;
}

footer h2 img {
	width: 100%;
	margin-bottom: 30px;
}

footer .f_sns {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

footer .f_sns img {
	height: 47.5px;
	width: auto;
}

.copyright {
	position: absolute;
	left: 6.5%;
	bottom: 15%;
	font-size: 12px;
	font-family: Verdana, "Droid Sans", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}

@media screen and (max-width: 1600px) {
	footer .f_right {
		width: 250px;
	}
}

@media screen and (max-width: 1450px) {
	.copyright, footer .f_right {
		bottom: 10%;
	}

	footer h2 img {
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 1300px) {
	footer {
		background: url(../images/footer.jpg) center left / cover no-repeat;
		padding-top: calc(480 / 1920 * 100%);
	}

	footer .siteMap ul li {
		font-size: 14px;
	}

	footer .siteMap ul li a {
		padding: 0 10px;
	}

	footer .f_pagetop {
		top: 30px;
		width: 40px;
	}

	footer .f_right {
		width: 200px;
	}

	footer .f_sns img {
		height: 30px;
	}
}

@media screen and (max-width: 1075px) {
	footer {
		background: url(../images/footer.jpg) center left 10% / cover no-repeat;
		padding-top: calc(600 / 1920 * 100%);
	}

	.copyright {
		left: 5%;
	}

	footer .f_pagetop, footer .f_right {
		right: 5%;
	}
}

@media screen and (max-width: 820px) {
	.copyright {
		bottom: 5%;
		font-size: 10px;
	}

	footer .f_pagetop {
		top: 15px;
		width: 30px;
	}

	footer .f_right {
		bottom: 5%;
	}
}

@media screen and (max-width: 600px) {
	footer {
		background: url(../images/footer_sp.jpg) center bottom / cover no-repeat;
		padding-top: calc(300 / 600 * 100%);
	}

	.copyright {
		left: 50%;
		bottom: 5%;
		transform: translate(-50%, 0%);
		width: 100%;
		text-align: center;
	}
}