/*
Theme Name: Interim
Theme URI: https://cms.1cloud.co.jp/
Version: 1.0
Description: HENROSTARS Theme
Author: 株式会社ワンクラウド　電話:088-855-4800
*/


@charset "utf-8";

/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */ *,::before,::after{box-sizing:border-box;border-style:solid;border-width:0;min-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}



.list-disc {
	padding-left: 1em;
	list-style-type: disc;
}
.list-circle {
	padding-left: 1em;
	list-style-type: circle;
}
.mb0 {
	margin-bottom: 0px !important;
}
.cb {
	clear: both;
}
.db {
	display: block;
}
a:focus, *:focus {
	outline:none;
}
a {
	color: #333;
}
p, ul {
	margin-bottom: 2em !important;
}
.dib {
	display: inline-block !important;
}
.tac {
	text-align: center !important;
}
.tal {
	text-align: left !important;
}
.tdu {
	text-decoration: underline !important;
}
/* margin */
.mb0-2em{margin-bottom:0.2em}.mb0-5em{margin-bottom:0.5em}.mb1em{margin-bottom:1em}
/* margin end */
/* font */
.fwb{font-weight:bold!important}.fs1-2em{font-size:1.2em!important}.fs1-3em{font-size:1.3em!important}.fs1-4em{font-size:1.4em!important}.fs1-5em{font-size:1.5em!important}.fs1-8em{font-size:1.8em!important}.fs2em{font-size:2em!important}.lh1-1{line-height:1.1!important}.lh1-2{line-height:1.2!important}.lh1-3{line-height:1.3!important}.lh1-4{line-height:1.4!important}.lh1-5{line-height:1.5!important}
/* font end */

.list-decimal {
	margin-left: 1em;
	list-style-type: decimal;
}

h1.title {
	margin-bottom: 30px;
	padding-bottom: 10px;
	font-size: 1.5rem;
	border-bottom: 2px solid #1a2a40;
}

html {
	scroll-behavior: smooth;
}
html, body {
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.6;
	color: #333;
}
body {
	background-color: #f9f9f9;
}


.header {
	background: #fff;
	padding: 20px 5%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #eee;
}
.logo {
	display: inline-block;
	font-size: 1.5rem;
	font-weight: bold;
	color: #1a2a40;
	text-decoration: none;
}
.corp-name {
	font-size: 0.9rem;
	color: #666;
}

.header-links {
	margin-bottom: 6px;
	text-align: center;
}
.header-links a {
	display: inline-block;
	text-decoration: none;
	margin: 0 15px;
	font-size: 0.9rem;
}
.header-links a:hover {
	text-decoration: underline;
}
.hero {
	position: relative;
	height: 720px;
	background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4)), url('images/supporter-recruitment.jpg');
	background-size: cover;
	background-position: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
	text-align: center;
	padding: 0 15px;
}
.hero-s-r {
	position: relative;
	height: 720px;
	background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4)), url('images/main.jpg');
	background-size: cover;
	background-position: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
	text-align: center;
	padding: 0 15px;
}
.hero h1 {
	font-size: 2.5rem;
	margin-bottom: 10px;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}
.hero p {
	font-size: 1.2rem;
	font-weight: bold;
}
.hero-btn {
	padding: 15px 30px;
	color: #fff;
	font-size: 1.3em;
	font-weight:bold;
	background-color:#E5004F;
	border-radius: 4px;
	opacity: 0.7;
}
.hero-btn:hover {
	opacity: 1;
}
.top-photo-desc {
	position: absolute;
	bottom: 6px;
	font-size: 0.9em;
}
article {
	padding: 30px 0;
	max-width: 960px;
	margin: 0 auto;
}
h2 {
	border-left: 5px solid #1a2a40;
	padding-left: 15px;
	margin-bottom: 30px;
	font-size: 1.2em;
	font-weight: bold;
}

.plans {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 0px;
	margin: 10px 0 0 0px;
}
.plan-card {
	position: relative;
	margin: -1px 0 0 -1px;
	padding: 30px 30px 90px;
	text-align: center;
	border: 1px solid #ddd;
	border-radius: 0px;
	background: #fff;
}
.plan-card h3 {
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.3;
}
.plan-price {
	font-size: 1.8rem;
	font-weight: bold;
	color: #c0392b;
	margin: 15px 0;
}
.plan-card-apply {
	position: absolute;
	bottom: 30px;
	left: calc(50% - 80px);
}

.fp-news, .news {
	max-width: 600px;
	margin: 30px auto 30px;
	padding: 30px 30px;
	border: 9px solid #eee;
	border-top: none;
	border-bottom: none;
}
.fp-news h2, .news h2 {
	all: initial;
	display: block;
	margin-bottom: 30px;
	font-family: "Zen Old Mincho", serif;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.6;
	color: #333;
}
.news-ul li {
	margin-bottom: 12px;
	line-height: 1.4;
}
.news-time {
	display: inline-block;
	width: 120px;
}
.news-title {
	font-weight: bold;
	color: #333;
	text-decoration: underline;
}
.news-content {
	margin-top: 9px;
	padding: 18px 0;
	border-top: 1px solid #000;
}
.news .news-title {
	text-decoration: none;
}

footer {
	background: #1a2a40;
	color: #fff;
	padding: 40px 30px;
	text-align: center;
}
.footer-links {
	margin-bottom: 20px;
}
.footer-links a {
	display: inline-block;
	color: #fff;
	text-decoration: none;
	margin: 0 15px;
	font-size: 0.9rem;
}
.footer-links a:hover {
	text-decoration: underline;
}

#tokushoho {
	background: #fff;
	border-radius: 8px;
	padding: 30px;
	font-size: 0.9rem;
}
.legal-table {
	width: 100%;
	border-collapse: collapse;
}
.legal-table th, .legal-table td {
	border-bottom: 1px solid #eee;
	padding: 12px;
	text-align: left;
}
.legal-table th {
	width: 30%;
	background: #f4f4f4;
}


/* main */
.container {
	padding: 60px 48px;
	background-color: #fff;
}
/* main end */

/* footer */
.copyright {
	font-size: 14px;
	text-align: center;
}
/* footer end */

/* supporter-recruitment */
.daiseido {
	float: right;
	width: 100%;
	max-width: 360px;
	margin: 0 0 10px 10px;
}
.features li {
	margin-bottom: 1em;
}
.features strong {
	font-size: 1.2em;
}
section {
	margin-bottom: 60px;
}
section.supporter-recruitment h2 {
	font-size: 1.5em;
}
section.supporter-recruitment ul li {
	margin-bottom: 1em;
}
section.supporter-recruitment ul li span {
	font-size: 1.2em;
	font-weight: bold;
}
.supporter-cat-table-container {
	width: 100%;
	overflow-x: auto;
	margin: 20px 0;
}
.supporter-cat-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 600px;
}
.supporter-cat-table th, .supporter-cat-table td {
	width: 240px;
	min-width: 240px;
	border: 1px solid #ddd;
	padding: 8px 8px;
	text-align: left;
	vertical-align: middle;
}
.supporter-cat-table th {
	background-color: #f8f9fa;
	font-weight: bold;
}
.supporter-cat-table:first-child th {
	width: 120px;
	min-width: 120px;
}
.guideline {
	margin-top: -15px;
	padding: 2em;
	border: 9px solid #932e40;
}
/* end */
/* apply */
.f-s-bbox {
	margin-top: -30px;
	margin-bottom: 60px;
	text-align: center;
}
.f-s-bbox a {
	display: inline-block;
	padding: 12px 30px;
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
	background-color: #E9546B;
}
.henro-table-container {
	width: 100%;
	overflow-x: auto;
	margin: 20px 0;
}
.henro-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 600px;
}
.henro-table th, .henro-table td {
	border: 1px solid #ddd;
	padding: 8px 8px;
	text-align: left;
	vertical-align: middle;
}
.henro-table th {
	background-color: #f8f9fa;
	font-weight: bold;
}
.henro-table tr:nth-child(even) {
	background-color: #f2f2f2;
}
.henro-btn {
	display: inline-block;
	width: 160px;
	background-color: #0070ba;
	color: white;
	padding: 8px 16px;
	text-decoration: none;
	border-radius: 4px;
	font-size: 0.85em;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
}
.henro-btn:hover {
	background-color: #005a9e;
	color: #fff;
}
.cat-header {
	background-color: #fff;
	color: #333;
	padding: 18px !important;
	font-size: 1.2em;
}
/* apply end */
/* supporter-upload */
.supporter-upload-btn {
	display: block;
	margin: 15px 0;
	padding: 18px 9px;
	color: white;
	font-size: 1em;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
	background-color: #0070ba;
	border-radius: 4px;
	box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.supporter-upload-btn:hover {
	background-color: #005a9e;;
}
/* supporter-upload end */
/* supporter-recruitment */
/* サポーター募集ページ専用スタイル */
.supporter-page {
    line-height: 1.8;
    color: #333;
    font-family: 'Noto Sans JP', sans-serif;
}


.bg-light { background-color: #f8f9fa; }

.section-title {
    text-align: center;
    font-size: 2rem;
    color: #0070ba;
    margin-bottom: 60px;
    font-family: 'Zen Old Mincho', serif;
    position: relative;
    padding-bottom: 15px;
}

.section-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 2px;
    background: #d4af37;
}

/* ヒーローエリア */
.hero-section {
    background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), url('ここに背景画像URL') center/cover no-repeat;
    color: #fff;
    padding: 120px 0;
    text-align: center;
}

.hero-section h1 {
    font-size: 2.8rem;
    font-family: 'Zen Old Mincho', serif;
    margin: 20px 0 30px;
}

.label {
    background: #d4af37;
    color: #000;
    padding: 4px 12px;
    font-weight: bold;
    font-size: 0.9rem;
}

.lead-text {
    font-size: 1.3rem;
    margin-bottom: 40px;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

/* ボタン類 */

.btn-primary {
    display: inline-block;
    background: #0070ba;
    color: #fff;
    padding: 18px 36px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
}

.center-btn { text-align: center; margin-top: 50px; }

/* スマホ対応 */
@media (max-width: 768px) {
    .hero-section h1 { font-size: 1.8rem; }
    .lead-text { font-size: 1.1rem; }
}
/* supporter-recruitment end */











@media (max-width: 600px) {
.hero h1 {
	font-size: 1.8rem;
}
.header {
	flex-direction: column;
}
.container {
	padding: 45px 30px;
	background-color: #fff;
}
.daiseido {
	float: none;
	width: 100%;
	max-width: initial;
	margin: 10px 0 10px 0;
}







}
