@charset "utf-8";

:root{
	--default-font:'Lato', 'Noto Sans JP', sans-serif;
	--line-font:'LINE Seed JP', sans-serif;
	--eng-font:'Lato', sans-serif;
	--google-icon:'Material Symbols Outlined';
	--bootstrap:'bootstrap-icons';
	--main-color:rgba(0,164,234,1);
	--key-color01:rgba(74,165,148,1);
	--key-color02:rgba(223,87,114,1);
	--key-color03:rgba(138,193,43,1);
	--key-color04:rgba(51,153,103,1);
	--base-color:#111;
	--base-light-color:#555;
  --link-color:#3985ef;
  --red:#dd0000;
	--normal:400;
	--medium:500;
	--bold:600;
	--heavy:700;
}

/* header
++++++++++++++++++++++++++++++*/
header{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	box-sizing:border-box;
	width:100%;
	padding:0.5rem 2.5vw 0.75rem;
	background:rgba(255,255,255,0);
	position:fixed;
	top:0; left:0; z-index:1000;
	transition:0.2s;
}
.scrolling header{
	background:rgba(255,255,255,0.95);
	backdrop-filter:blur(3px);
}
header > #logo{
	box-sizing:border-box;
	width:200px;
}
header > #logo a{
	display:block;
	text-decoration:none;
	color:var(--base-light-color);
}
header > #logo a > figure{
	width:100%;
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(6421%) hue-rotate(246deg) brightness(104%) contrast(101%);
	transition:0.2s;
	transform-origin:top left;
}
.scrolling header > #logo a > figure{
	width:70%;
	filter:none;
}
header > #logo a > figcaption{
	font-size:0.8rem; line-height:1.8; font-weight:var(--normal);
	margin-top:0.25em;
	color:#fff;
	transition:0.2s;
}
.scrolling header > #logo a > figcaption{
	color:var(--base-light-color);
	display:none;
}
header > .nav{
	flex:1;
	display:flex;
	flex-direction:column;
	gap:0.5rem;
}
nav#head-nav{
	transition:0.2s;
}
.scrolling nav#head-nav{
	display:none;
}
nav#head-nav > ul{
	display:flex;
	justify-content:flex-end;
	align-items:flex-end;
	gap:1.0em;
}
nav#head-nav > ul > li.line,
nav#head-nav > ul > li.instagram{
	margin-left:-0.5em;
}
nav#head-nav > ul > li > a{
	display:block;
	text-decoration:none;
	font-size:0.85rem; line-height:1.8; font-weight:var(--normal);
	color:var(--base-light-color);
	color:#fff;
	transition:0.2s;
}
.scrolling nav#head-nav > ul > li > a{
	color:var(--base-light-color);
}
nav#head-nav > ul > li.sns > a > .icon{
	display:block;
	width:2.0rem; height:auto;
	aspect-ratio:1/1;
	position:relative;
}
nav#head-nav > ul > li.mail-magazine > a > .icon{
	background:var(--main-color);
	border-radius:0.3rem;
}
nav#head-nav > ul > li.mail-magazine > a > .icon::after{
	font-family:var(--google-icon);
	content:"\e158";
	font-variation-settings:'wght'200;
	font-size:1.6rem; line-height:1;
	color:#fff;
	position:absolute;
	top:50%; left:50%; z-index:1;
	transform:translate(-50%,-50%);
}
nav#head-nav > ul > li.line > a > .icon::after,
nav#head-nav > ul > li.instagram > a > .icon::after{
	content:"";
	width:100%; height:auto;
	aspect-ratio:1/1;
	background-image:url(../../img/sns/LINE/colored.svg);
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
	position:absolute;
	top:50%; left:50%; z-index:1;
	transform:translate(-50%,-50%);
}
nav#head-nav > ul > li.line > a > .icon::after{
	background-image:url(../../img/sns/LINE/colored.svg);
}
nav#head-nav > ul > li.instagram > a > .icon::after{
	background-image:url(../../img/sns/instagram/round/colored.svg);
}

nav#global-nav > ul{
	display:flex;
	justify-content:flex-end;
	gap:0 1.6rem;
}
nav#global-nav > ul > li{
	font-size:0.95rem; line-height:1.8; font-weight:var(--medium);
  position:relative;
}
nav#global-nav > ul > li > a{
	display:block;
	text-decoration:none;
	color:var(--base-color);
	color:#fff;
	cursor:pointer;
	position:relative;
	transition:0.2s;
}
.scrolling nav#global-nav > ul > li > a{
	color:var(--base-color);
}
nav#global-nav > ul > li > a::after{
	content:"";
	width:100%; height:2px;
	background:var(--main-color);
	position:absolute;
	bottom:-0.5em; left:0;
	transform-origin:left;
	transform:scaleX(0);
	transition:0.2s ease-in;
}
nav#global-nav > ul > li > a:hover::after{
	transform:scaleX(1);
}
nav#global-nav > ul > li > ul{
  box-sizing:border-box;
  width:auto !important;
  height:auto !important;
  position:absolute;
  top:2.2em; left:50%;
  z-index:100;
  background:var(--main-color);
  transform:translateX(-50%);
  text-align:center;
  border-radius:5px;
  overflow:hidden;
	display:flex;
	flex-direction:column;
	gap:1.0em 0;
	padding:1.0em 0;
}
nav#global-nav > ul > li:last-child > ul{
  left:auto; right:0;
  transform:translateX(2.4vw);
}
nav#global-nav > ul > li > ul > li{
  display:block !important;
  width:auto !important;
  font-size:0.95em; line-height:1.6;
  margin:0 !important;
}
nav#global-nav > ul > li > ul > li > a{
  display:block;
  text-decoration:none;
  white-space:nowrap;
  color:#fff;
  padding:0 2.0em;
  transition:0.3s;
}

#fade-in li ul{
	visibility:hidden;
	opacity:0;
	transition:0.4s;
  margin-top:0.6em;
}
#fade-in li:hover ul{
	visibility:visible;
	opacity:1;
  margin-top:0;
}
#fade-in li ul li a{
	visibility:hidden;
	opacity:0;
	transition:0.4s;
}
#fade-in li:hover ul li a{
	visibility:visible;
	opacity:1;
}

/* footer
++++++++++++++++++++++++++++++*/
footer{
	box-sizing:border-box;
	width:100%;
	background:var(--main-color);
	padding:5.0rem 2.5vw;
	margin:2.5rem 0 5.0rem;
	color:#fff;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:0.5rem;
	position:relative;
}
#footer-logo{
	width:200px;
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(289deg) brightness(105%) contrast(103%);
}
#footer-copy{
	font-size:0.9rem; line-height:1.8;
}
#footer-nav > ul{
	display:flex;
	margin-top:1.5rem;
}
#footer-nav > ul > li{
	font-size:0.85rem;
}
#footer-nav > ul > li > a{
	color:#FFF;
	text-decoration:none;
}
#footer-nav ul li a:hover{
	border-bottom:1px dotted #FFF;
}
#footer-nav ul li:first-child:before,
#footer-nav ul li:after{
	content:"|";
	margin:0 0.85em;
}

.reference-box{
	text-align:center;
	margin:0 auto 30px;
	font-size:14px;
}

#shinshu-heart{
	width:100px; height:72px;
	margin:25px auto;
}

#copyright{
	text-align:center;
	margin:0 auto 25px;
}


/* floating-banner
++++++++++++++++++++++++++++++*/
.floating-banner{
	position:fixed;
	bottom:5.0rem; right:0; z-index:100;
	transform:translate(100%,0);
	transition:0.2s;
}
.scrolling .floating-banner{
	transform:translate(-35%,0);
}
.floating-banner > ul{
	display:flex;
	flex-direction:column;
	gap:0.5rem;
}
.floating-banner > ul > li.sns > a > .icon{
	display:block;
	width:2.8rem; height:auto;
	aspect-ratio:1/1;
	position:relative;
}
.floating-banner > ul > li.mail-magazine > a > .icon{
	background:var(--main-color);
	border-radius:0.3rem;
}
.floating-banner > ul > li.mail-magazine > a > .icon::after{
	font-family:var(--google-icon);
	content:"\e158";
	font-variation-settings:'wght'200;
	font-size:2.6em; line-height:1;
	color:#fff;
	position:absolute;
	top:50%; left:50%; z-index:1;
	transform:translate(-50%,-50%);
}
.floating-banner > ul > li.line > a > .icon::after,
.floating-banner > ul > li.instagram > a > .icon::after{
	content:"";
	width:100%; height:auto;
	aspect-ratio:1/1;
	background-image:url(../../img/sns/LINE/colored.svg);
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
	position:absolute;
	top:50%; left:50%; z-index:1;
	transform:translate(-50%,-50%);
}
.floating-banner > ul > li.line > a > .icon::after{
	background-image:url(../../img/sns/LINE/colored.svg);
}
.floating-banner > ul > li.instagram > a > .icon::after{
	background-image:url(../../img/sns/instagram/round/colored.svg);
}

/* basic layout
++++++++++++++++++++++++++++++*/
#container{
	position:relative;
	margin:0 auto;
	width:100%;
	background:#FFF;
	padding:2.0rem 0;
}
#container > .contents{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:4.0rem;
	position:relative;
	margin:0 auto;
	width:1200px;
	text-align:left;
}

#main{
	flex:1;
	position:relative;
	padding-bottom:40px;
}

#side{
	position:relative;
	width:300px;
}

#page-contents{
}

#page-contents h1{
	font-size:24px;
	line-height:160%;
	color:#333;
	font-weight:500;
	margin:0 0 10px 0;
}

hr{
	width:100%; height:1px;
	margin:0 auto 20px auto;
	border:none;
	border-top:1px solid #DEDED2;
}

section{
	margin:0 0 40px;
}

section p{
	margin:0 0 20px 0;
}

ul.disc-list{
}

ul.disc-list li{
	margin-bottom:10px;
}

ul.disc-list li:before{content:"・";}

#crumb{
	font-size:13px;
	margin-bottom:10px;
}

#crumb a:hover{
	text-decoration:underline;
}

section h2{
	font-size:18px;
	margin-bottom:10px;
}

.button-box a{
	width:240px;
	height:40px;
	line-height:40px;
	color:#FFF;
	border:1px solid #FFF;
	font-weight:bold;
	font-size:14px;
	text-decoration:none;
	display:block;
	margin:0 auto;
	text-align:center;
	}

.button-box a:hover{
	background:#FFF;
	color:#00A4EA;
	font-weight:bold;
	transition: color 0.3s, background-color 0.3s;
	}
	
/* title-container */
#title-container{
	position:relative;
	margin:0 auto;
	width:100%;
	padding:140px 0 48px 0;
}
#title-container.page,
#not-found-title-container{
	background:#49A494;
}

#title-container > #title{
	font-size:1.2rem; line-height:1.6; font-weight:var(--heavy);
	color:#fff;
	text-align:left;
	margin:0 2.5vw;
	position:relative;
}
#title-container > #title::after{
	content:"";
	width:100%; height:1px;
	background:#fff;
	position:absolute;
	top:50%; left:0;
	opacity:0.6;
}
#title-container > #title > span{
	position:relative; z-index:1;
	padding-right:0.5em;
}

.point-box{
	border:2px solid #4AAC99;
	padding:20px 20px 0;
	margin-bottom:20px;
}

#not-found-title-container #title-box{
	width:232px; height:auto;
	margin:0 auto;
	overflow:hidden;
}


.info-web-link{
	background-image:url(../../img/common/external-link.svg);
	padding-right:16px;
	background-position:right center;
	background-size:14px;
	background-repeat:no-repeat;
}

/* side
++++++++++++++++++++++++++++++*/
.side-box{
	border:1px solid #00A4EA;
	background:#F2FAFE;
	margin-bottom:15px;
}
.side-title{
	text-align:center;
	font-size:18px;
	color:#FFF;
	font-weight:700;
	background:#00A4EA;
	padding:15px 0;
}

.side-area-box{
	margin:20px 20px 5px;
	padding-bottom:10px;
	border-bottom:1px solid #333;
}

ul.side-area-list{
	margin:10px 10px 10px 15px;
//	padding-bottom:10px;
//	border-bottom:1px solid #333;
}

.area-title,
ul.side-area-list li{
	position:relative;
	padding-left:18px;
	line-height:160%;
	margin-bottom:10px;
}

.area-title a,
ul.side-area-list li a{
	color:#333;
	font-weight:700;
}

.area-title a:hover,
ul.side-area-list li a:hover{
	border-bottom:1px dotted #333;
}

.area-title:before,
ul.side-area-list li:before{
	position:absolute;
	top:0; left:0;
	content:"▶";
	color:#07B0DD;
	font-size:12px;
	transform: scale(0.8, 1);
}

.side-search-box{
	padding:20px;
}

.side-search-title{
	font-size:18px;
	font-weight:700;
	padding-left:35px;
	height:30px;
	background:url(../../img/event/icon_search.png) no-repeat 0 center;
	margin-bottom:5px;
}

.side-search-box p{
	line-height:160%;
	margin-bottom:10px;
}

.side-search-box input.search-button{
	margin:0 0 20px 0;
	background:#40a1b0;
}

.side-search-box input.search-button:hover{
	background:#52B1C0;
}

.side-search-box p a{text-decoration:none; font-weight:bold;}
.side-search-box p a:hover{text-decoration:underline;}

.side-banner-box{
}

.side-banner-box ul li{
	width:300px;
	margin-bottom:15px;
}

.side-supporter-box{
	border:1px solid #EE5776;
	background:rgba(238,87,118,0.05);
	margin-bottom:15px;
}
.side-supporter-box .side-title{
	background:#EE5776;
}
.side-supporter-box ul.side-area-list{border:none;}
.side-supporter-box ul.side-area-list li:before{
	color:#EE5776;
}

.side-recruit-box{
	border:1px solid #89C12A;
	background:rgba(137,193,42,0.05);
	margin-bottom:15px;
}
.side-recruit-box .side-title{
	background:#89C12A;
}
.side-recruit-box ul.side-area-list{border:none;}
.side-recruit-box .area-title:before,
.side-recruit-box ul.side-area-list li:before{
	color:#89C12A;
}

.side-topics-box{
	border:1px solid #49A494;
	background:rgba(73,164,148,0.05);
	margin-bottom:15px;
}

.side-topics-box .side-title{
	background:#49A494;
}

ul.latest-topics-list{
	margin:10px 10px 10px 15px;
}

ul.latest-topics-list li{
	position:relative;
	margin-bottom:10px;
	padding-left:18px;
}

ul.latest-topics-list li span.topics-date{
	display:block;
	font-size:14px;
}

ul.latest-topics-list li:before{
	position:absolute;
	top:0; left:0;
	content:"▶";
	color:#49A494;
	font-size:12px;
	transform: scale(0.8, 1);
}

ul.latest-topics-list li a{color:#333;}
ul.latest-topics-list li a:hover{border-bottom:1px dotted #333;}

/* event
++++++++++++++++++++++++++++++*/
#title-container.event,
#title-container.event > #title > span{
	background:#00A4EA;
}

#title-box{
	width:167px; height:31px;
	margin:0 auto;
	overflow:hidden;
}

#event-contents{
//	border:1px solid #999;
	border-radius:5px;
	box-shadow:1px 1px 4px 2px #CCC;
	padding:30px;
	margin-bottom:40px;
//	width:700px;
}

#event-title{
	margin-bottom:20px;
}

.event-date-box{
	border:1px solid #0077B9;
	border-radius:5px;
	text-align:center;
	float:left;
	width:90px;
	font-size:13px;
}

.event-date-box .event-date-y{
	background:#0077B9;
	color:#FFF;
}

.event-date-box .event-date-d{
	font-size:21px;
	font-weight:700;
	margin:5px 0 0;
}

#event-title h1{
	float:right;
	width:590px;
	font-size:24px;
	line-height:140%;
}

.flier-link a{
	position:relative;
	padding-left:32px;
}

.flier-link a:before{
	position:absolute;
	top:-5px; left:0;
	content:url(../../img/common/icon_pdf.png);
}

table.event-details-table{
	width:100%;
	margin:0 0 30px 0;
	border-collapse:collapse;
}

table.event-details-table th{
	padding:15px 20px;
	text-align:center;
	font-weight:normal;
	width:120px;
	border:1px solid #CCC;
	background:#F2F8FB;
}

table.event-details-table td{
	padding:15px 20px;
	border:1px solid #CCC;
	word-break:break-all;
}

table.event-details-table td span.info-tel:before{content:"TEL ";}

h2#map-title{
	line-height:40px;
	padding-left:50px;
	background:url(../../img/event/icon_map_03.png) no-repeat 0 0;
}

#event-map{
	width:100%;
	height:350px;
	background:#EDEDED;
}

ul.other-event-list{
	font-size:0;
}

ul.other-event-list li{
	position:relative;
	font-size:15px;
	display:inline-block;
	width:240px;
	margin:0 16px 0 0;
	background:#FFF;
	vertical-align:top;
	border:1px solid #CCC;
	box-shadow:1px 1px 4px 2px #CCC;
}

ul.other-event-list li:nth-child(3n){
	margin:0;
}

ul.other-event-list li a{
	display:block;
	color:#555;
	text-decoration:none;
	font-size:14px;
}

ul.other-event-list li .event-imege{
	height:120px;
	overflow:hidden;
}

ul.other-event-list li .event-text{
	position:relative;
	padding:10px 15px;
	background:#FFF;
}

ul.other-event-list li a:hover{
//	background:rgba(0,164,234,0.1);
	opacity: 0.8;
}

ul.other-event-list li .event-area{
	position:absolute;
	top:-24px; left:-10px;
	background:#ED5876;
	color:#FFF;
	line-height:24px;
	font-size:13px;
	padding:0 15px;
}

ul.other-event-list li .event-area:before{
	content: '';
	position:absolute;
	top: 100%;
	border-style: solid;
	border-color: transparent;
	left: 0;
	border-width: 0 10px 10px 0;
	border-right-color:#D1274B;
}

ul.other-event-list li a .event-title{
	font-size:18px;
	margin-bottom:5px;
	font-weight:bold;
}

.other-event-box .button-box a{
	color:#00A4EA;
	border:1px solid #00A4EA;
}

.other-event-box .button-box a:hover{
	background:#00A4EA;
	color:#FFF;
}

#event-list-title{
	margin-bottom:10px;
}

#event-list-title h1{
	float:left;
	color:#00A4EA;
	font-size:24px;
}

#event-list-title ul{
	font-size:0;
	float:right;
}

#event-list-title ul li{
	font-size:14px;
	display:inline-block;
	margin-left:5px;
}

#event-list-title ul li a{
	display:block;
	color:#00A4EA;
	border:1px solid #00A4EA;
	border-radius:5px;
	padding:2px 15px;
}

#event-list-title ul li a:hover{
	color:#FFF;
	background:#00A4EA;
}

ul.event-calendar-list{
}

ul.event-calendar-list li{
	position:relative;
	border-top:1px dotted #333;
	padding:20px 0 0;
}

ul.event-calendar-list li .event-date-box{
	position:absolute;
	top:15px; left:0;
}

ul.event-calendar-list li a{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:1.5rem;
	text-decoration:none;
	color:var(--base-light-color);
}

ul.event-calendar-list li ul{
	margin-left:110px;
}

ul.event-calendar-list li ul li{
	border-top:none;
	padding:0;
	margin-bottom:20px;
}

ul.event-calendar-list li ul li:hover{
	background:rgba(0,164,234,0.1);
}

.event-calendar-image{
	width:200px;
}
.event-calendar-text{
	flex:1;
}

.event-calendar-area{
	display:inline-block;
	font-size:13px;
	color:#FFF;
	background:#EF4F73;
	padding:2px 15px;
	margin-bottom:5px;
}

.event-calendar-title{
	font-size:18px;
	font-weight:700;
	margin-bottom:5px;
}

.event-calendar-date{display:none;}
.event-calendar-place{font-size:14px; line-height:150%;}
.event-calendar-place:before{content:"場所：";}
.event-calendar-time{font-size:14px; line-height:150%;}
.event-calendar-time:before{content:"時間：";}

/* 応援隊
++++++++++++++++++++++++++++++*/
#title-container.supporter,
#title-container.supporter > #title > span{
	background:#EE5776;
}
#supporter-title-container #title-box{
	width:300px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

#supporter-archive{
	margin-bottom:40px;
}
#supporter-archive h1{
	font-size:24px;
	line-height:160%;
	color:#EE5776;
	font-weight:500;
	margin:0 0 10px 0;
}
#supporter-archive h2{
	font-size:18px;
	line-height:160%;
	font-weight:500;
	margin:0 0 30px 0;
}

#supporter-contents{
	border-radius:5px;
	box-shadow:1px 1px 4px 2px #CCC;
	padding:30px;
	margin-bottom:40px;
}
.supporter-contents-inner{
	margin:0 0 30px 0;
}
#supporter-contents hr{
	width:auto;
	height:1px;
	border:none;
	border-top:1px solid #EE5776;
	margin:0 22px 50px 22px;
	position:relative;
}
#supporter-contents hr:before{
	display:block;
	content:"●";
	font-size:16px;
	line-height:16px;
	color:#EE5776;
	position:absolute;
	top:-10px;
	left:-20px;
}
#supporter-contents hr:after{
	display:block;
	content:"●";
	font-size:16px;
	line-height:16px;
	color:#EE5776;
	position:absolute;
	top:-10px;
	right:-20px;
}

#supporter-contents h1{
	font-size:28px;
	line-height:160%;
	color:#EE5776;
	font-weight:500;
	margin:0 0 20px 0;
}
#supporter-contents h2{
	font-size:22px;
	line-height:160%;
	font-weight:500;
	margin:0 0 15px 0;
}
#supporter-contents p{
	margin:0 0 20px 0;
}
#supporter-contents .standing-photo{
	width:240px;
	float:right;
}
#supporter-contents .photo-left,
#supporter-contents .photo-right{width:240px;}
#supporter-contents .photo-left{float:left; margin:0 20px 20px 0;}
#supporter-contents .photo-right{float:right; margin:0 0 20px 20px;}
ul.supporter-data-list{
	margin:0 0 30px 0;
	width:450px;
}
ul.supporter-data-list li{
	border-bottom:1px dashed #999;
	font-size:14px;
	line-height:160%;
	margin-bottom:8px;
	padding-bottom:8px;
	padding-left:96px;
	position:relative;
}
ul.supporter-data-list li.name:before,
ul.supporter-data-list li.company:before,
ul.supporter-data-list li.position:before,
ul.supporter-data-list li.works:before{
	font-size:13px;
	position:absolute;
	top:0; left:0;
	width:80px;
	text-align:center;
}
ul.supporter-data-list li.name:before{content:"お名前";}
ul.supporter-data-list li.company:before{content:"会社名";}
ul.supporter-data-list li.position:before{content:"所属・担当";}
ul.supporter-data-list li.works:before{content:"仕事内容";}

#supporter-contents .column-box{
	margin-bottom:20px;
	padding:15px 20px 0 20px;
	border:3px solid rgba(238,87,118,0.3);
}
#supporter-contents .column-box h3{
	background:#EE5776;
	font-size:15px;
	line-height:32px;
	color:#FFF;
	padding:0 1.5em;
	margin:0 0 10px 0;
	display:inline-block;
	position:relative;
}
#supporter-contents .column-box h3:before,
#supporter-contents .column-box h3:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	border-top:16px solid #EE5776;
	border-bottom:16px solid #EE5776;
}
#supporter-contents .column-box h3:before{
	left:-8px;
	border-left:8px solid transparent;
}
#supporter-contents .column-box h3:after{
	right:-8px;
	border-right:8px solid transparent;
}

.other-supporter-box h3{
	font-size:16px;
	line-height:32px;
	color:#EE5776;
	margin:0 0 10px 0;
}

#supporter-list-title{
	margin-bottom:10px;
}

#supporter-list-title h1{
	float:left;
	color:#EE5776;
	font-size:24px;
}

#supporter-list-title ul{
	font-size:0;
	float:right;
}

#supporter-list-title ul li{
	font-size:14px;
	display:inline-block;
	margin-left:5px;
}

#supporter-list-title ul li a{
	display:block;
	color:#EE5776;
	border:1px solid #EE5776;
	border-radius:5px;
	padding:2px 15px;
}

#supporter-list-title ul li a:hover{
	color:#FFF;
	background:#EE5776;
}

ul.supporter-related-list{margin:10px 0;}
ul.supporter-related-list li{
	width:230px;
	min-height:255px;
	margin:0 34px 10px 0;
	float:left;
}
ul.supporter-related-list li:nth-child(3n){margin-right:0;}
ul.supporter-related-list li .text-box{
	margin:5px 0;
}
ul.supporter-related-list li .text-box p{
	font-size:14px;
	font-weight:700;
	line-height:160%;
	margin:0;
}

ul.supporter-related-list li .text-box p span.size90{font-weight:normal;}

ul.supporter-related-list li .text-box p span.text-box-company{
	font-size:12px;
	font-weight:normal;
	color:#333;
}

.other-supporter-box .button-box{
	margin-bottom: 30px;
}
.other-supporter-box .button-box a{
	width:320px;
	color:#EE5776;
	border:1px solid #EE5776;
}

.other-supporter-box .button-box a:hover{
	background:#EE5776;
	color:#FFF;
}

/* 応援隊2018
++++++++++++++++++++++++++++++*/
#supporter-contents .profile-photo{
	width:220px;
	float:right;
}

.supporter-point-box{
	margin-bottom:20px;
	padding:15px 20px 0 20px;
	border:1px solid #ccc;
}

.supporter-point-box h3{
	font-size:18px;
	margin:0 0 10px 0;
}

.supporter-point-box ul.supporter-point-list li{
	margin-bottom: 5px;
}

.supporter-point-box ul.supporter-point-list li::before{
	content: "・";
}

.supporter-point-box ul.supporter-kirari-list{
	margin: 30px 0 0;
	font-size: 0;
	line-height: 0
}

.supporter-point-box ul.supporter-kirari-list li{
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

.supporter-point-box ul.supporter-kirari-list li img{
	width: 74px;
	height: 74px;
}

.supporter-point-box ul.supporter-kirari-list li:first-child{
	font-size: 15px;
	line-height: 150%;
	display: block;
	font-weight: 700;
	margin-bottom: 5px;
}
.supporter-point-box ul.supporter-kirari-list li.advance-icon img{
	width: 54px;
	height: 54px;
}

/* 企業情報・リンク
++++++++++++++++++++++++++++++*/
#link-archive{
	margin-bottom:40px;
}
#link-archive h1{
	font-size:24px;
	line-height:160%;
	color:#5D8A34;
	font-weight:500;
	margin:0 0 10px 0;
}
#link-archive h2{
	font-size:18px;
	line-height:160%;
	font-weight:500;
	margin:0 0 30px 0;
}

#title-container.link,
#title-container.link > #title > span{
	background:#5D8A34;
}
#link-title-container #title-box{
	width:226px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

ul.link-list{margin-bottom:30px;}
ul.link-list li{
	width:260px;
	margin:0 20px 30px 0;
	float:left;
	min-height:380px;
}

ul.link-list li img{
	height:195px;
	overflow:hidden;
}

ul.link-list li:nth-child(4n){margin-right:0;}
ul.link-list li p.link-list-title{
	margin:5px;
}
ul.link-list li p.link-list-text{
	font-size:14px;
	line-height:160%;
	margin:0 5px;
}

/* イベント主催者
++++++++++++++++++++++++++++++*/
#organizer-contents{
	margin-bottom:40px;
}
#organizer-contents h1{
	font-size:24px;
	line-height:160%;
	color:#00A4EA;
	font-weight:500;
	margin:0 0 10px 0;
}
#organizer-contents h2{
	font-size:18px;
	line-height:160%;
	font-weight:500;
	margin:0 0 30px 0;
}

#organizer-contents h3{
	margin-bottom:10px;
}

ul.merit-list{
	font-size:0;
	margin-bottom:30px;
}

ul.merit-list li{
	font-size:15px;
	display:inline-block;
	width:220px;
	vertical-align:top;
}

ul.merit-list li:nth-child(2){margin:0 50px;}

ul.merit-list li .merit-title{
	position:relative;
	background:#4AA1C9;
	color:#FFF;
	font-weight:700;
	font-size:18px;
	width:220px;
	height:220px;
	border-radius:110px;
	display:inline-block;
	text-align:center;
}

ul.merit-list li:nth-child(2) .merit-title{background:#DF5772;}
ul.merit-list li:nth-child(3) .merit-title{background:#89C12A;}

ul.merit-list li .merit-title::after {
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
	content: '';
	border: 2px dashed #fff;
	border-radius:110px;
}

ul.merit-list li .merit-title p{
	position: relative;
	top:50%;
 	transform: translateY(-50%);
}

ul.merit-list li .merit-text{
	padding:10px;
}


/* recruit
++++++++++++++++++++++++++++++*/
#title-container.recruit,
#title-container.recruit > #title > span{
	background:#89C12A;
}
#recruit-title-container #title-box{
	width:224px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

#recruit-list-title{
	margin-bottom:10px;
}

#recruit-list-title h1{
	float:left;
	color:#89C12A;
	font-size:24px;
}

#recruit-list-title ul{
	font-size:0;
	float:right;
}

#recruit-list-title ul li{
	font-size:14px;
	display:inline-block;
	margin-left:5px;
}

#recruit-list-title ul li a{
	display:block;
	color:#89C12A;
	border:1px solid #89C12A;
	border-radius:5px;
	padding:2px 15px;
}

#recruit-list-title ul li a:hover{
	color:#FFF;
	background:#89C12A;
}

#recruit-color .event-date-box{border:1px solid #89C12A;}

ul.recruit-archive-list{
}

ul.recruit-archive-list li{
	position:relative;
	border-top:1px dotted #333;
	padding:20px 0 0;
}

ul.recruit-archive-list li .event-date-box{
	position:absolute;
	top:15px; left:0;
}

ul.recruit-archive-list li a{color:#333;}

ul.recruit-archive-list li ul{
	margin-left:110px;
}

ul.recruit-archive-list li ul li{
	border-top:none;
	padding:0;
	margin-bottom:20px;
}

ul.recruit-archive-list li ul li:hover{
	background:rgba(0,164,234,0.1);
}

.recruit-archive-image{
	width:200px;
}
.recruit-archive-text{
	flex:1;
}

.recruit-archive-title{
	font-size:18px;
	font-weight:700;
	margin-bottom:5px;
}

.recruit-archive-period{font-size:14px; line-height:150%;}
.recruit-archive-period:before{content:"募集期間：";}
.recruit-archive-wanted_jobs{font-size:14px; line-height:150%;}
.recruit-archive-wanted_jobs:before{content:"職種：";}
.recruit-archive-examination{display:none;}

#recruit-contents{
	border-radius:5px;
	box-shadow:1px 1px 4px 2px #CCC;
	padding:30px;
	margin-bottom:40px;
//	width:700px;
}

#recruit-contents .event-date-box{border:1px solid #89C12A;}
#recruit-contents .event-date-box .event-date-y{background:#89C12A;}

#recruit-contents table.event-details-table th{background:#F9FCF5;}

/* topics
++++++++++++++++++++++++++++++*/
#title-container.topics,
#title-container.topics > #title > span{
	background:#49A494;
}
#topics-title-container #title-box{
	width:130px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

ul.topics-list{
	margin-bottom:40px;
}

ul.topics-list li{
	border-bottom:1px dotted #333;
}

ul.topics-list li a{
	display:inline-block;
	text-decoration:none;
	width:100%;
	padding:15px 0;
}

ul.topics-list li a .topics-date{
	display:block;
	font-size:13px;
	color:#333;
}

ul.topics-list li a:hover{
	background:#f6f7f8;
}

#topics-contents{
	border-radius:5px;
	box-shadow:1px 1px 4px 2px #CCC;
	padding:30px;
	margin-bottom:40px;
	min-height:600px;
//	width:700px;
}

#topics-h1-box{
	margin-bottom:20px;
}

#topics-h1-box h1{
	position: relative;
	font-size:18px;
	padding-bottom:5px;
	border-bottom: solid 3px #95dfff;
}

#topics-h1-box h1:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #00A4EA;
	bottom: -3px;
	width: 20%;
}

#topics-h1-box span.topics-entry-date{
	display:block;
	font-size:14px;
	text-align:right;
}

#topics-contents p{
	margin-bottom:15px;
}

#topics-contents a{text-decoration:underline;}
#topics-contents a:hover{text-decoration:none; border-bottom:none;}

.entry-bottom a{color:#333;}
.entry-bottom a:hover{border-bottom:1px dotted #333;}

/* mail
++++++++++++++++++++++++++++++
.mail-contents .logo{
	width:300px;
	margin:20px auto;
}

.mail-contents{
	width:900px;
	margin:20px auto 60px;
	display:inline-block;
}

.mail-contents section{
	text-align:center;
	margin-bottom:40px;
}

.mail-contents h1{
	font-size:24px;
	margin-bottom:20px;
}

.mail-contents p{margin-bottom:20px;}

.mail-contents h2{
	font-size:18px;
	margin-bottom:20px;
}

table.mail-form-table{
	width:100%;
	border-collapse:collapse;
}

table.mail-form-table .hissu{
	color:#FF0000;
	font-size:13px;
	margin-left:5px;
}

table.mail-form-table .hissu:before{content:"（";}
table.mail-form-table .hissu:after{content:"）";}

table.mail-form-table caption{
	padding:0 0 10px 0;
	text-align:left;
	font-size:13px;
	font-weight:normal;
}

table.mail-form-table th{
	width:220px;
	padding:15px 20px 15px 0;
	text-align:right;
	font-weight:normal;
	border-top:1px solid #CCC;
	background:#FAFAF8;
}

table.mail-form-table td{
	padding:15px 20px;
	text-align:left;
	border-top:1px solid #CCC;
}

table.mail-form-table td .caution{
	display:block;
	font-size:13px;
	margin:5px 0 0 0;
}

table.mail-form-table td select{
	height:2.5em;
	padding:0 10px;
}

table.mail-form-table td span.radio-button{
	display:inline-block;
	margin:0 18px 0 5px;
}

table.mail-form-table td input.input-text{
	width:100%;
	height:2.5em;
	margin:0;
	background:#FCFCFC;
	border:1px solid #CCC;
}

table.mail-form-table td input.input-submit{
	width:40%;
	height:3em;
	margin:20px auto 0 auto;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	font-weight:bold;
	background:#4AAC99;
	cursor:pointer;
	display:block;
	border:1px solid #4AAC99;
}

table.mail-form-table td input.input-submit:hover{
	color:#FFF;
	background:#666;
	border:1px solid #666;
	font-weight:bold;
}

table.mail-form-table td textarea{
	width:100%;
	height:10em;
	background:#FCFCFC;
	border:1px solid #CCC;
	margin:0;
}

.mail-contents ul{
}

.mail-contents ul li{
	position:relative;
	padding-left:15px;
	margin-bottom:10px;
}

.mail-contents ul li:before{
	content:"●";
	font-size:12px;
	position:absolute;
	top:-1px; left:0;
}

.mail-contents p input.mail-magazine-button{
	width:40%;
	height:3em;
	margin:20px auto 0 auto;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	font-weight:bold;
	background:#4AAC99;
	cursor:pointer;
	display:block;
	border:1px solid #4AAC99;
}

.mail-contents p input.mail-magazine-button:hover{
	color:#FFF;
	background:#666;
	border:1px solid #666;
	font-weight:bold;
}*/

/* mail
++++++++++++++++++++++++++++++*/
.mail-contents {
	margin:20px auto 60px;
}
.mail-contents input[type="text"] {
	width: 50%;
	margin-right: 5px;
	height: 40px;
	font-size: 14px;
	line-height: 160%;
	color: #666;
	border: 1px solid #CCC;
	border-radius: 3px;
	background-color: #FFF;
}

.mail-contents input[type="submit"] {
	width: 100px;
	height: 40px;
	background: #EE5776;
	border: none;
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
	position: relative;
}

.mail-contents .logo{
	width:300px;
	margin:20px 0;
	}
/*
.mail-contents{
//	width:900px;
	
	//display:inline-block;
	display:none;
	}*/

.mail-contents section{
	text-align:left;
	margin-bottom:40px;
	}

.mail-contents h1{
	font-size:24px;
	margin-bottom:20px;
	}

.mail-contents p{margin-bottom:20px;}

.mail-contents h2{
	font-size:18px;
	margin-bottom:20px;
	}

table.mail-form-table{
	width:100%;
	border-collapse:collapse;
	}

table.mail-form-table .hissu{
	color:#FF0000;
	font-size:13px;
	margin-left:5px;
	}

table.mail-form-table .hissu:before{content:"（";}
table.mail-form-table .hissu:after{content:"）";}

table.mail-form-table caption{
	padding:0 0 10px 0;
	text-align:left;
	font-size:13px;
	font-weight:normal;
	}

table.mail-form-table th{
	width:220px;
	padding:15px 20px 15px 0;
	text-align:right;
	font-weight:normal;
	border-top:1px solid #CCC;
	background:#FAFAF8;
	}

table.mail-form-table td{
	padding:15px 20px;
	text-align:left;
	border-top:1px solid #CCC;
	}

table.mail-form-table td .caution{
	display:block;
	font-size:13px;
	margin:5px 0 0 0;
	}

table.mail-form-table td select{
	height:2.5em;
	padding:0 10px;
	}

table.mail-form-table td span.radio-button{
	display:inline-block;
	margin:0 18px 0 5px;
	}

table.mail-form-table td input.input-text{
	width:100%;
	height:2.5em;
	margin:0;
	background:#FCFCFC;
	border:1px solid #CCC;
	}

table.mail-form-table td input.input-submit{
	width:40%;
	height:3em;
	margin:20px auto 0 auto;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	font-weight:bold;
	background:#4AAC99;
	cursor:pointer;
	display:block;
	border:1px solid #4AAC99;
	}

table.mail-form-table td input.input-submit:hover{
	color:#FFF;
	background:#666;
	border:1px solid #666;
	font-weight:bold;
	}

table.mail-form-table td textarea{
	width:100%;
	height:10em;
	background:#FCFCFC;
	border:1px solid #CCC;
	margin:0;
	}
table.mail-form-table .btdisable{
	background:#666 !important;
	cursor:auto !important;
	border: 1px solid #666 !important;
}
.mail-contents ul{
	}

.mail-contents ul li{
	position:relative;
	padding-left:15px;
	margin-bottom:10px;
	}

.mail-contents ul li:before{
	content:"●";
	font-size:12px;
	position:absolute;
	top:-1px; left:0;
	}

.mail-contents p input.mail-magazine-button/* メルマガ登録時戻るボタン*/{
	width:40%;
	height:3em;
	margin:20px auto 0 auto;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	font-weight:bold;
	background:#4AAC99;
	cursor:pointer;
	display:block;
	border:1px solid #4AAC99;
	}

.mail-contents p input.mail-magazine-button:hover{
	color:#FFF;
	background:#666;
	border:1px solid #666;
	font-weight:bold;
	}
.form-button{
	display: inline-block;
}
.form-button a{
	display: block;
  text-decoration: none;
  line-height: 2;
  color: #FFF;
  padding: 0 20px;
  background-color: #EE5776;
	border: 1px solid #EE5776;
  border-radius: 9999px;
  position: relative;
}
.form-button a:hover{
	color: #EE5776;
	background-color: #FFF;
}
/* イベント情報登録フォーム
++++++++++++++++++++++++++++++*/
.event-entry-form-box{
	width:100%;
	border:1px solid #CCC;
}
.event-entry-form-box hr{
	width:80%;
	margin:40px 10%;
}

table.entry-form-table{
	width:80%;
	margin:40px 10%;
	border-collapse:collapse;
}
table.entry-form-table caption{
	font-size:15px;
	font-weight:bold;
	text-align:left;
	margin:0 0 5px 0;
}
table.entry-form-table tr{background:#F9FCF4;}
table.entry-form-table tr:nth-child(even){background:#FFF;}
table.entry-form-table th{
	width:180px;
	padding:20px 0px;
	font-weight:normal;
	text-align:center;
	vertical-align:top;
	border:none;
}
table.entry-form-table td{
	padding:20px;
	border:none;
}
table.entry-form-table td .bikou{
	font-size:13px;
	margin:0 0 5px 0;
	color:#555;
}

table.entry-form-table span.hissu{
	margin:0 5px;
	color:red;
	font-weight:normal;
}
table.entry-form-table td input.input-text{
	width:100%;
	height:2.5em;
	border:1px solid #CCC;
	background:#FFF;
}
table.entry-form-table td label{
	margin:0 19px 0 0;
	display:inline-block;
}
//table.entry-form-table td label:nth-of-type(5){margin:0;}
table.entry-form-table td textarea{
	width:100%;
	border:1px solid #CCC;
	background:#FFF;
}

table.entry-form-table td textarea.text-area-details{height:20em;}
table.entry-form-table td textarea.text-area-bikou{height:10em;}
table.entry-form-table td input.input-submit{
	width:50%;
	margin:0 25%;
	padding:10px 0;
	font-size:16px;
	font-weight:bold;
	letter-spacing:1px;
	color:#FFF;
	background:#00A0EA;
	border:none;
	cursor:pointer;
}
table.entry-form-table td input.input-submit:hover{
	background:#40c3ff;
}

/* 学生アンバサダー/メルマガ解除
++++++++++++++++++++++++++++++*/
#magazine-title-box{
	width:190px; height:auto;
	margin:0 auto;
	overflow:hidden;
}


#magazine-contents h1{
	font-size:24px;
	line-height:160%;
	color:#49A494;
	font-weight:500;
	margin:0 0 10px 0;
}

table.ambassador-table{
	width:100%;
	border-collapse:collapse;
}

table.ambassador-table .hissu{
	color:#FF0000;
	font-size:13px;
	margin-left:5px;
}

table.ambassador-table .hissu:before{content:"（";}
table.ambassador-table .hissu:after{content:"）";}

table.ambassador-table caption{
	padding:0 0 10px 0;
	text-align:left;
	font-size:13px;
	font-weight:normal;
}

table.ambassador-table th{
	width:200px;
	padding:15px 20px 15px 10px;
	text-align:right;
	font-weight:normal;
	border-top:1px solid #CCC;
	background:#FAFAF8;
}

table.ambassador-table td{
	padding:15px 20px;
	text-align:left;
	border-top:1px solid #CCC;
}

table.ambassador-table td input.input-text{
	width:100%;
	height:2.5em;
	margin:0;
	background:#FCFCFC;
	border:1px solid #CCC;
}

table.ambassador-table td input.input-submit{
	width:40%;
	height:3em;
	margin:20px auto 0 auto;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	font-weight:bold;
	background:#4AAC99;
	cursor:pointer;
	display:block;
	border:1px solid #4AAC99;
}

table.ambassador-table td input.input-submit:hover{
	color:#FFF;
	background:#666;
	border:1px solid #666;
	font-weight:bold;
}

table.ambassador-table td textarea{
	width:100%;
	height:10em;
	background:#FCFCFC;
	border:1px solid #CCC;
	margin:0;
}

table.ambassador-table td span.first,
table.ambassador-table td span.wpcf7-list-item{
	margin:0;
}

table.ambassador-table td span.wpcf7-list-item{
	display:block;
}

table.release-table{
	width:100%;
	border-collapse:collapse;
}

table.release-table th{
	width:60px;
	padding:15px 20px;
	font-weight:normal;
}

table.release-table td{
	padding:15px 20px;
	text-align:left;
}

table.release-table td input.input-text{
	width:100%;
	height:2.5em;
	margin:0;
	background:#FCFCFC;
	border:1px solid #CCC;
}

table.release-table td input.input-submit{
	width:40%;
	height:3em;
	margin:20px auto 0 auto;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	font-weight:bold;
	background:#4AAC99;
	cursor:pointer;
	display:block;
	border:1px solid #4AAC99;
}

table.release-table td input.input-submit:hover{
	color:#FFF;
	background:#666;
	border:1px solid #666;
	font-weight:bold;
}

/* 企業情報フォーム
++++++++++++++++++++++++++++++*/
#title-container.company,
#title-container.company > #title > span{
	background:#5D8A34;
}
#company-title-container #title-box{
	width:124px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

table.company-form-table{
	width:80%;
	margin:40px 10%;
	border-collapse:collapse;
}
table.company-form-table caption{
	font-size:15px;
	font-weight:bold;
	text-align:left;
	margin:0 0 5px 0;
}
table.company-form-table tr{background:#F9FCF4;}
table.company-form-table tr:nth-child(even){background:#FFF;}
table.company-form-table th{
	width:280px;
	padding:20px 0px;
	font-weight:normal;
	text-align:center;
	vertical-align:top;
	border:none;
}
table.company-form-table td{
	padding:20px;
	border:none;
}
table.company-form-table .bikou{
	font-size:13px;
	margin:0 0 5px 0;
	color:#555;
}

table.company-form-table span.hissu{
	margin:0 5px;
	color:red;
	font-weight:normal;
}
table.company-form-table td input.input-text{
	width:100%;
	height:2.5em;
	border:1px solid #CCC;
	background:#FFF;
}

table.company-form-table td input.input-number{
	width:50px;
	height:2.5em;
	border:1px solid #CCC;
	background:#FFF;
	margin-right: 5px;
}

table.company-form-table td label{
	display: block;
}

table.company-form-table td label.kirari-point{
	width: 50%;
	margin-bottom: 5px;
}

table.company-form-table td textarea{
	width:100%;
	border:1px solid #CCC;
	background:#FFF;
}

table.company-form-table td.message p::before{
	content: "●";
	font-size: 12px;
}

table.company-form-table td.message span{
	display: block;
	margin-top: 5px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #CCC;
}

table.company-form-table td input.input-submit{
	width:50%;
	margin:0 25%;
	padding:10px 0;
	font-size:16px;
	font-weight:bold;
	letter-spacing:1px;
	color:#FFF;
	background:#5F883B;
	border:none;
	cursor:pointer;
}
table.company-form-table td input.input-submit:hover{
	background:#78ac4a;
}

table.company-form-table td.company-form-draft input.input-submit{
	background: #999;
	width:30%;
	font-size: 14px;
	font-weight: normal;
}
table.company-form-table td.company-form-draft input.input-submit:hover{background: #CCC;}

.balloon {
    position: relative;
		font-size: 13px;
		text-decoration: underline;
}
.balloon span.balloon-description {
    display: none;
}
.balloon a:hover span.balloon-description {
    background: #FFF;
    border: 1px solid #CCCCCC;
    color: #333;
    display: block;
    margin: 0;
    padding: 10px;
    position: absolute;
    top: 30px;
		left: -110px;
    width: 500px;
		text-align: left;
		font-size: 13px;
		line-height: 160%;
		z-index: 100;
}

span.balloon-description ol{
	margin:10px 10px 0 20px;
}

span.balloon-description ol li{
	list-style: decimal;
	margin-bottom: 10px;
}

span.balloon-description ol li span{
	font-weight:var(--bold);
	display: block;
}

/* 企業情報
++++++++++++++++++++++++++++++*/
#company-contents{
		margin-bottom:40px;
	}

#company-title h1{
		font-size: 24px;
		margin-bottom:20px;
	}

.company-base-info{
	margin-bottom: 10px;
}

ul.company-base-info-list{
	float: left;
}

ul.company-base-info-list li{
	font-size: 13px;
	line-height: 100%;
	margin-bottom: 10px;
}

ul.company-base-info-list li:nth-child(1)::before{content: "業種：";}
ul.company-base-info-list li:nth-child(2)::before{content: "所在地：";}

ul.company-base-icon-list{
	float: right;
	font-size: 0;
	line-height: 0;
}

ul.company-base-icon-list li{
	display: inline-block;
	width: 36px;
	height: auto;
	margin-right: 10px;
}

ul.company-base-icon-list li:last-child{margin-right: 0;}

.company-details h2{
	font-size: 18px;
	color: #5F883A;
}

table.company-details-table{
	width:100%;
	margin:0 0 30px 0;
	border-collapse:collapse;
}

table.company-details-table th{
	padding:15px 20px;
	text-align:center;
	font-weight:normal;
	width:130px;
	border:1px solid #CCC;
	background:#F0F3EC;
}

table.company-details-table td{
	padding:15px 20px;
	border:1px solid #CCC;
	word-break:break-all;
}
table.company-details-table td ul li span:not(:last-child)::after{
	content: "・";
}
table.company-details-table td span.info-tel:before{content:"TEL ";}

.other-company-box .button-box a{
	color:#5F883B;
	border:1px solid #5F883B;
}

.other-company-box .button-box a:hover{
	background:#5F883B;
	color:#FFF;
}

.tab-content input[type="radio"] {
  display: none;
}

.tab-content .tab-box {
	padding-top: 30px;
	border-top: 3px solid #5F883A;
}

.tab-content > .tab-box > div {
  display: none;
}

#tab1:checked ~ .tab-box > #tabView1 {
  display: block;
}

#tab2:checked ~ .tab-box > #tabView2 {
  display: block;
}

#tab3:checked ~ .tab-box > #tabView3 {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tab-content input:checked + .tab_item {
  background-color: #5F883A;
  color: #fff;
}

.tab-content .tab_item:hover {
  background-color: #5F883A;
  color: #fff;
	cursor: pointer;
}

.tab-content{
	font-size: 0;
	line-height: 0;
}

.tab-content .tab_item{
	width: 248px;
	font-size: 15px;
	display: inline-block;
	background: #EFF3EB;
	color: #333;
	line-height: 40px;
	height: 40px;
	text-align: center;
	margin: 0;
}

#tab_item2{
	margin: 0 8px;
}

.tab-content section{
	font-size: 15px;
	line-height: 180%;
}

.company-details h2#h2-01::before{content: url(../../img/company/icon_h2_01.png); margin-right: 5px;}
.company-details h2#h2-02::before{content: url(../../img/company/icon_h2_02.png); margin-right: 5px;}
.company-details h2#h2-03::before{content: url(../../img/company/icon_h2_03.png); margin-right: 5px;}
.company-details h2#h2-04::before{content: url(../../img/company/icon_h2_04.png); margin-right: 5px;}
.company-details h2#h2-05::before{content: url(../../img/company/icon_h2_05.png); margin-right: 5px;}

ul.company-charm-list{
}

ul.company-charm-list li{
	margin-bottom: 20px;
}

ul.company-charm-list li div{
	line-height: 36px;
	padding-left: 44px;
	margin-bottom: 10px;
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: 36px 36px;
}

ul.company-charm-list li div.charm-01{color: #007F41; background-image: url(../../img/company/icon/01s.png);}
ul.company-charm-list li div.charm-02{color: #7B5AA3; background-image: url(../../img/company/icon/02s.png);}
ul.company-charm-list li div.charm-03{color: #DA526B; background-image: url(../../img/company/icon/03s.png);}
ul.company-charm-list li div.charm-04{color: #F08200; background-image: url(../../img/company/icon/04s.png);}
ul.company-charm-list li div.charm-05{color: #EDB801; background-image: url(../../img/company/icon/05s.png);}
ul.company-charm-list li div.charm-06{color: #005C80; background-image: url(../../img/company/icon/06s.png);}

ul.work-image-list{
}

ul.work-image-list li{
	margin-bottom: 20px;
}

ul.work-image-list li .work-type{
	display: inline-block;
	border-bottom: 1px solid #ED5074;
	color: #ED5074;
	margin-bottom: 10px;
}
ul.work-image-list li .work-type::before{
	content: "■";
}

ul.future-image-list{
	padding-top: 20px;
}

ul.future-image-list li{
	position: relative;
	border: 1px solid #CCC;
	margin-bottom: 30px;
}

ul.future-image-list li .future-image-year{
	position:absolute;
	top: -20px; left: -5px;
	background: #FFF;
	padding-right:10px;
}

ul.future-image-list li .future-image-year span{
	display: inline-block;
	text-align: center;
	color: #FFF;
	font-size: 24px;
	background: #00A5E7;
	width: 36px;
	height: 36px;
	line-height: 36px;
	border-radius: 18px;
	margin-right: 5px;
}

ul.future-image-list li:nth-child(2) .future-image-year span{background: #5F883B;}
ul.future-image-list li:nth-child(3) .future-image-year span{background: #ED5074;}

ul.future-image-list li .future-image-year::after{
	content: "年後";
	color: #333;
	font-size: 15px;
}

ul.future-image-list li p{
	padding: 25px 20px 0;
}

ul.message-list{
}

ul.message-list li{
	margin-bottom: 20px;
	border: 1px solid #ED5074;
}

ul.message-list li .message-title{
	background: #FEF6F8;
	padding: 15px;
	font-weight: 700;
}

ul.message-list li .message-title span{
	font-weight: normal;
	font-size: 13px;
}

ul.message-list li p{
	padding: 15px;
	margin: 0;
}

/* side 企業情報
++++++++++++++++++++++++++++++*/
.side-company-box{
	border:1px solid #5F883B;
	background:rgba(95,136,59,0.05);
	margin-bottom:15px;
}
.side-company-box .side-title{
	background:#5F883B;
}

.side-company-box .side-search-box input.search-button{
	background:#61873F;
}

.side-company-box .side-search-box input.search-button:hover{
	background:#7aaa4f;
}
ul.side-search-list li{
	margin-bottom: 0.5rem;
}
.side-company-box .select-wrap::before{
	background:var(--key-color01);
}
.side-recruit-box .select-wrap::before{
	background:#89C12A;
}

ul.side-kirari-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 0;
	margin-bottom: 10px;
}

ul.side-kirari-list li{
	display: block;
	width: 80px;
	margin: 0 9px 10px 0;
}

ul.side-kirari-list li:nth-child(3n){
	margin: 0 0 10px 0;
}

.side-kirari-list li{
   //position:absolute;
}
.side-kirari-list li:first-child label span:after{
    content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/01.png);

}
.side-kirari-list li:nth-child(2) label span:after{
  content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/02.png);

}
.side-kirari-list li:nth-child(3) label span:after{
  content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/03.png);

}
.side-kirari-list li:nth-child(4) label span:after{
  content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/04.png);
}
.side-kirari-list li:nth-child(5) label span:after{
  content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/05.png);
}
.side-kirari-list li:nth-child(6) label span:after{
 content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/06.png);

}
/* ラジオボタンを消す */
.side-kirari-list input {
	display: none;
	font-size: 0;
}
.side-kirari-list li span:hover {
	cursor : pointer;
}
.side-kirari-list li span:after {
	 opacity: 1;

}

/* チェックされた選択肢を濃く表示 */
.side-kirari-list li input:checked + span:after {
	content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/01_on.png);
    opacity: 0.8;
}
.side-kirari-list li:nth-child(2) input:checked + span:after {
    content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/02_on.png);
}
.side-kirari-list li:nth-child(3) input:checked + span:after {
    content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/03_on.png);
}
.side-kirari-list li:nth-child(4) input:checked + span:after {
    content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/04_on.png);
}
.side-kirari-list li:nth-child(5) input:checked + span:after {
    content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/05_on.png);
}
.side-kirari-list li:nth-child(6) input:checked + span:after {
    content: url(/wp/wp-content/themes/shukatsu-nagano/img/company/button/06_on.png);
}


/* 企業情報一覧
++++++++++++++++++++++++++++++*/
#company-archive{
	margin-bottom:40px;
}

#company-area-title,
#company-archive h1{
	font-size:24px;
	line-height:160%;
	color:#5D8A34;
	font-weight:500;
	margin:0 0 10px 0;
}

#company-area-list-title{
	margin-bottom:10px;
}

#company-area-list-title h1{
	color:#5F883B;
	font-size:24px;
	margin-bottom: 15px;
}

#company-area-list-title ul{
	font-size:0;
	list-style: 0;
	text-align: right;
	margin-bottom: 20px;
}

#company-area-list-title ul li{
	font-size:13px;
	display:inline-block;
	margin-left:5px;
}

#company-area-list-title ul li a{
	display:block;
	color:#5F883B;
	border:1px solid #5F883B;
	border-radius:5px;
	padding:2px 13px;
}

#company-area-list-title ul li a:hover{
	color:#FFF;
	background:#5F883B;
}

ul.charm-description-list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:1.5rem;
	margin: 20px 0;
}
ul.charm-description-list li{
	box-sizing: border-box;
	width:calc((100% - 1.5rem) / 2);
	position: relative;
	font-size: 13px;
	line-height: 180%;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding: 15px;
	vertical-align: top;
}

ul.charm-description-list li:nth-child(2n){
	margin: 0 0 20px 0;
}

ul.charm-description-list li .charm-description-image{
	position: absolute;
	top:15px; left: 15px;
	width: 80px;
	height: 80px;
}

ul.charm-description-list li .charm-description-title{
	font-size: 16px;
	margin: 0 0 10px 100px;
	color: #127F45;
}

ul.charm-description-list li:nth-child(2) .charm-description-title{color: #795DA1;}
ul.charm-description-list li:nth-child(3) .charm-description-title{color: #D94C69;}
ul.charm-description-list li:nth-child(4) .charm-description-title{color: #EF7B10;}
ul.charm-description-list li:nth-child(5) .charm-description-title{color: #EDB322;}
ul.charm-description-list li:nth-child(6) .charm-description-title{color: #005F7F;}

ul.charm-description-list li p{
	margin:0 0 0 100px;
}
ul.icon-description-list li:not(:first-child){
	display: flex;
	margin-bottom: 20px;
}

ul.icon-description-list li .icon-description-image{
	width: 50px; height: 50px;
	margin-right: 20px;
}

ul.icon-description-list li p{
	flex: 1;
}
ul.mark-list{
	margin: 0 20px 60px;
}
ul.mark-list li{
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
ul.mark-list li .mark-image{
  width: 50px; height: 50px;
  margin-right: 20px;
}
ul.mark-list li p{
  flex: 1;
	margin: 0;
}
ul.mark-list li p strong{
  display: block;
}
.company-area-map{
	float: left;
	display: inline;
	width: 300px;
}

.company-area-map span{
	display: inline-block;
	font-size: 13px;
	line-height: 150%;
	margin-top: 5px;
}

.company-area-info{
	float: right;
	width: 440px;
}

.company-area-info p a::before{
	content: "▸";
	color: #333;
}

.company-area-info p a{
	background-image:url(../../img/common/external-link.svg);
	padding-right:20px;
	background-position:right center;
	background-size:15px;
	background-repeat:no-repeat;
}

.company-area-link{
	background: #F0F3EC;
	padding: 20px;
}

.area-link-title{
	font-weight:var(--bold);
	margin-bottom: 20px;
}

.area-link-title::after{
	content: "";
}

.company-area-link ul{
	margin-bottom:20px;
}
.company-area-link ul:last-child{
	margin-bottom:0;
}
.company-area-link ul li{
	//list-style: disc inside;
	float:left;
	width:550px;
}
.company-area-link ul li p{
	line-height:150%;
	padding:10px 0;
}
.company-area-link ul li img{
	width:150px;
}
.company-area-link ul li:first-child{
	width:150px;
	margin-right:20px;
}
ul.company-list li{
	padding: 20px 0;
	border-top:1px dotted #333;
}

ul.company-list li a{
	color: #333;
}

ul.company-list li:hover{
	background:rgba(0,164,234,0.1);
}

.company-list-image{
	float: left;
	width: 200px;
}

.company-list-text{
	float: right;
	width: 530px;
}

ul.company-list-icon{
	margin-bottom: 10px;
}

ul.company-list-icon li{
	float: left;
	margin-right: 10px;
	padding: 0;
	border-top: none;
}

ul.company-list-icon li img{
	width: 28px;
	height: 28px;
}

ul.company-list-icon li:first-child{
	background: #EB3E6D;
	color: #FFF;
	height: 28px;
	line-height: 28px;
	padding: 0 10px;
}

.company-list-title{
	font-size: 18px;
//	margin-bottom: 5px;
}

.company-list-type{
	font-size: 13px;
	margin-bottom: 10px;
}
.company-area-gellery{
	margin:30px 0;
}
.company-area-gellery ul{
	width:100%;
	padding-bottom:10px;
}
.company-area-gellery ul li{
	margin-right:8px;
	width:184px;
	float:left;
}
.company-area-gellery ul li img{
	width:184px;
}
.company-area-gellery ul li:last-child{
	margin-right:0;
}

#company-info .next{
	width:300px;
	margin:20px auto;
	padding:5px 10px;
	color:#5F883B;
	border:1px solid #5F883B;
	border-radius:5px;
	text-align:center;
	cursor:pointer;
}
#company-info .next:hover{
	color:#FFF;
	background:#5F883B;
}

/* 企業情報ログイン画面
++++++++++++++++++++++++++++++*/
.login-box{
	margin: 50px 0;
}

.login-box .swpm-text-field{
	width:400px;
	height:2.5em;
	border:1px solid #CCC;
	background:#FFF;
}

.login-box input.swpm-login-form-submit{
	width:200px;
	margin:50px 0 0;
	padding:10px 0;
	font-size:14px;
	letter-spacing:1px;
	color:#FFF;
	background:#666;
	border:none;
	cursor:pointer;
}
.login-box input.swpm-login-form-submit:hover{
	background:#333;
}

/* 企業情報募集
++++++++++++++++++++++++++++++*/
#company-wanted-contents{
	margin-bottom:40px;
}
#company-wanted-contents h1{
	font-size:24px;
	line-height:160%;
	color:#5F883B;
	font-weight:500;
	margin:0 0 10px 0;
}
#company-wanted-contents h2{
	font-size:18px;
	font-weight: normal;
	margin:0 0 30px 0;
}

#company-wanted-contents h2 img{
	width: 469px;
	height: 59px;
	display: block;
	margin-top: 10px;
}

#company-wanted-contents ul.keyconcepts-list{
	margin-bottom: 40px;
}

#company-wanted-contents ul.keyconcepts-list li{
	margin-bottom: 40px;
}

#company-wanted-contents ul.keyconcepts-list li h3{
	font-size: 16px;
	font-weight: 500;
	color: #ED5074;
}

#company-wanted-contents ul.keyconcepts-list li h3{
	position:relative;
	background:#4AA1C9;
	color:#FFF;
	font-weight:700;
	font-size:16px;
	padding: 20px;
	margin-bottom: 10px;
}

#company-wanted-contents ul.keyconcepts-list li:nth-of-type(2) h3{background:#DF5772;}
#company-wanted-contents ul.keyconcepts-list li:nth-of-type(3) h3{background:#89C12A;}


#company-wanted-contents ul.keyconcepts-list li h3::after {
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
	content: '';
	border: 2px dashed #fff;
}

/* 利用規約
++++++++++++++++++++++++++++++*/
h2.siteterms-title{
	font-weight: normal;
	color: #5F883B;
}

h2.siteterms-title::before{content: "≪";}
h2.siteterms-title::after{content: "≫";}

ul.siteterms-list{
	margin-bottom: 60px;
}

ul.siteterms-list li{
	margin-bottom: 20px;
}

/* インターンシップ
++++++++++++++++++++++++++++++*/
.hidden_box {
margin: 0;/*前後の余白*/
padding: 0;
}

/*ボタン装飾*/
.internship-box label{
font-weight:var(--bold);
cursor :pointer;
border-bottom: 1px dashed #333;
}

/*チェックは見えなくする*/
.hidden_box input {
display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
height: 0;
padding: 0;
overflow: hidden;
opacity: 0;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
height: auto;
opacity: 1;
padding: 20px;
border: 3px solid #eee;
}

.internship-box{
}

.internship-list-box{
	background:#eee;
	padding:20px;
}

.internship-list-box .internship-image{
	float:right;
	width:240px;
	margin-left:10px;
}

.internship-cat{
	margin-bottom: 10px;
}

.internship-cat span{
	 border-radius: 3px;
	 margin-right:10px;
	 padding:2px 5px;
	 background: #fefefe;
}

.internship-cat span.company-tour{border:1px solid #c82a4b; color:#c82a4b;}
.internship-cat span.group-work{border:1px solid #0c522d; color:#0c522d;}
.internship-cat span.work-experience{border:1px solid #bf620d; color:#bf620d;}
.internship-cat span.work-practice{border:1px solid #00394c; color:#00394c;}

ol.internship-flow li:not(:last-child)::after{
	display: block;
	content: "↓";
}

/* tool
++++++++++++++++++++++++++++++*/
#title-container.tool,
#title-container.tool > #title > span{
	background:#48A594;
}
#tool-title-container #title-box{
	width:138px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

.side-tool-box{
	border:1px solid #48A594;
	background:rgba(73,164,148,0.05);
	margin-bottom:15px;
}

.side-tool-box .side-title{
	background:#48A594;
}

.side-tool-box ul{
	margin:10px 10px 10px 15px;
}

.side-tool-box ul li{
	position:relative;
	margin-bottom:10px;
	padding-left:18px;
}

.side-tool-box ul li:before{
	position:absolute;
	top:0; left:0;
	content:"▶";
	color:#4EAD9A;
	font-size:12px;
	transform: scale(0.8, 1);
}

.side-tool-box ul li a{color:#333;}
.side-tool-box ul li a:hover{border-bottom:1px dotted #333;}

#tool-contents{
	margin:20px auto 60px;
	display:inline-block;
}

#tool-contents section{
	text-align:left;
	margin-bottom:40px;
}

#tool-contents h1{
	font-size:24px;
	line-height:160%;
	color:#49A494;
	font-weight:500;
	margin:0 0 10px 0;
}

#tool-contents p{margin-bottom:20px;}

#tool-contents h2{
	font-size:18px;
	margin-bottom:20px;
}

ul.tool-list{
	font-size: 0;
	line-height: 0;
}

ul.tool-list li{
	display: inline-block;
	width: 360px;
	box-sizing: border-box;
	border: 1px solid #CCC;
	padding: 20px;
	line-height: 150%;
	font-size: 15px;
	vertical-align: top;
	min-height: 250px;
	margin-bottom: 20px;
}

ul.tool-list li:nth-child(even){margin-left: 20px;}

ul.tool-list li .tool-list-title{
	font-size:18px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid #49A494;
}

ul.worry-list{
	margin-bottom: 20px;
}

ul.worry-list li{
	position: relative;
	padding-left: 20px;
}

ul.worry-list li::before {
position: absolute;
content: "\002713";
color: #EC5174;
font-weight:var(--bold);
left: 0;
}

#consultation-info-box{
	float: left;
	width: 380px;
}

#consultation-info-box ul{
}

#consultation-info-box ul li{
	margin-bottom: 20px;
}

#consultation-info-box ul li span{
	display: block;
	font-weight: 700;
}

#consultation-map-box{
	float: right;
	width: 360px;
	height: 300px;
}

.consultation-room-contents{
}

.consultation-room-contents h2{
	display: block;
	background: #4BA695;
	color: #FFF;
	line-height: 18px;
	padding:10px;
	width: 100%;
	box-sizing: border-box;
}

.consultation-room-contents h2::before{
	content: "◉";
	margin-right: 5px;
}

.consultation-room-contents h3{
	border-top: 3px double #4BA695;
	border-bottom: 3px double #4BA695;
	padding: 15px;
	margin:80px 0 40px;
}

.consultation-room-contents h3 span{
	display: block;
	font-size: 16px;
	font-weight: normal;
}

.consultation-room-contents h3 span::before{display: inline; content: "＼";}
.consultation-room-contents h3 span::after{display: inline; content: "／";}

.consultation-room-contents .photo-box{
	margin-bottom: 20px;
}

.consultation-room-contents .photo-box img{
	width: 80%;
	margin: 0 auto;
}

.consultation-room-contents .profile-box{
	border: 2px solid #CCC;
	padding: 20px;
	margin-bottom: 20px;
}

.consultation-room-contents .profile-box .profile-image{
	float: left;
	width: 160px;
	margin-right: 20px;
}

ul.conversation-list{
	margin: 30px 0 0;
}

ul.conversation-list li{
	position: relative;
	margin-bottom: 65px;
	padding-left: 85px;
}

ul.conversation-list li strong{
	color: #DD5270;
	font-size: 17px;
}

ul.conversation-list li.coordinator strong{
	color: #4AA4C8;
}

ul.conversation-list li.reporter{
	margin-bottom: 50px;
}

ul.conversation-list li.coordinator::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/consultation/icon01.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.coordinator::after{
	content: "金さん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 10px;
}

ul.conversation-list li.student::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/consultation/icon02.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.student::after{
	content: "丸山さん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 5px;
}

ul.conversation-list li.reporter::before{
	content: "";
	position: absolute;
	top:-47px; left: 0;
	width: 60px; height: 60px;
	border-bottom: 1px solid #333;
}
ul.conversation-list li.asking::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/person/03.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.answers::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/person/02.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}
ul.conversation-list li.asking span.marker,
ul.conversation-list li.answers span.marker{
	font-weight:var(--bold);
    background: linear-gradient(transparent 60%, #ff6 60%);
}
.consultation-room-contents .conversation-photo-box{
	margin: -20px auto 40px;
}

.consultation-room-contents .conversation-photo-box img{
	width: 80%;
	margin: 0 auto;
}
ul.reserve-flow-list{
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
ul.reserve-flow-list li{
	width: 200px;
	text-align: center;
	font-size: 0.9em;
}
ul.reserve-flow-list li img{
	margin-bottom: 10px;
}
table.subsidy-table{
	width:100%;
	border-collapse:collapse;
	margin-bottom: 5px;
}
table.subsidy-table caption{
}
table.subsidy-table thead th{
	background-color: #eee;
	padding: 5px 10px;
	font-weight: normal;
	border: 1px solid #333;
	text-align: center;
}
table.subsidy-table tbody th{
	background-color: #eee;
	padding: 5px 10px;
	font-weight: normal;
	text-align: left;
	border: 1px solid #333;
}
table.subsidy-table tbody td{
	width: 30%;
	padding: 5px 10px;
	text-align: right;
	border: 1px solid #333;
}
ul.details-button-list{
	display: flex;
	justify-content: space-between;
}
ul.details-button-list li{
	width: 48%;
}
ul.details-button-list li a{
	position: relative;
	display: block;
	background-color: #EE5776;
	color: #FFF;
	font-size: 1.2em;
	font-weight:var(--bold);
	text-align: center;
	padding: 10px;
}
ul.details-button-list li a::after{
	position: absolute;
	content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
}
ul.details-button-list li a span{
	display: block;
	font-size: 0.8em;
}
ul.details-button-list li a:hover{
	background-color: #c74761;
}

/* line
++++++++++++++++++++++++++++++*/
h2.line-title{
	text-align:center;
	margin:0 0 60px 0;
}
h2.line-title span{
	font-size:18px;
	line-height:44px;
	color:#FFF;
	background:#1DC121;
	margin:0 auto;
	padding:0 72px;
	display:inline-block;
	border-radius:21px;
	position:relative;
}
h2.line-title span:after{
	content:"";
	margin-left:-20px;
	position:absolute;
	bottom:-14px; left:50%;
	border-top:14px solid #1DC121;
	border-left:20px solid transparent;
	border-right:20px solid transparent;
}
ul.line-entry-list{
	text-align:center;
	font-size:0;
	line-height: 0;
	margin:30px auto;
}
ul.line-entry-list li{
	border:1px solid #CCC;
	border-radius:10px;
	font-size:15px;
	line-height: 160%;
	display:inline-block;
	margin:0 15px;
	padding:30px 20px 0;
	height: 180px;
	vertical-align:top;
	text-align:left;
	position:relative;
	box-sizing: border-box;
}
ul.line-entry-list li:nth-child(1){width:416px;}
ul.line-entry-list li:nth-child(2){width:284px;}
ul.line-entry-list h3{
	position:absolute;
	top:-15px; left:-15px;
	font-size:18px;
	line-height:180%;
	color:#FFF;
	background:#666;
	padding:0 36px;
	transform:rotate(-2deg);
}
ul.line-entry-list li:nth-child(1) .thumbnail{
	width:135px;
	float:left;
}
ul.line-entry-list li:nth-child(2) .thumbnail{
	width:200px;
	margin-bottom: 10px;
}
ul.line-entry-list li .text-box{
	width: 220px;
	float: right;
}

/* approach
++++++++++++++++++++++++++++++*/
#title-container.approach,
#title-container.approach > #title > span{
	background:#48A594;
}
#approach-title-container #title-box{
	width:164px; height:auto;
	margin:0 auto;
	overflow:hidden;
}

#approach-contents{
	margin:20px auto 60px;
	display:inline-block;
}

#approach-contents section{
	text-align:left;
	margin-bottom:40px;
}

#approach-contents h1{
	font-size:24px;
	line-height:160%;
	color:#49A494;
	font-weight:500;
	margin:0 0 10px 0;
}

#approach-contents p{margin-bottom:20px;}

ul.approach-list li{
	position: relative;
	margin-bottom: 40px;
}

ul.approach-list li .school-box{
	position: absolute;
	top:0; left: 0;
	width: 160px; height: 100%;
	background: #47AAD6;
	text-align: center;
}

ul.approach-list li:nth-child(2) .school-box{background: #4AAC99;}
ul.approach-list li:nth-child(3) .school-box{background: #EE5877;}

ul.approach-list li .school-box span{
	position: absolute;
	top:40%;
	left: 0; right: 0;
	margin: auto;
	color: #FFF;
	font-weight: 700;
}

ul.approach-list li .school-box::after{
	position: absolute;
	content: "";
	bottom: -30px; left: 0;
  border-top: 30px solid #47AAD6;
  border-right: 80px solid transparent;
  border-left: 80px solid transparent;
}

ul.approach-list li:nth-child(2) .school-box::after{border-top: 30px solid #4AAC99;}
ul.approach-list li:nth-child(3) .school-box::after{display: none;}

ul.approach-list li .direction-box{
	margin-left: 180px;
}

ul.approach-list li .direction-box p{
	font-size: 16px;
}

ul.approach-list li .direction-box p::before{
	content: "▶";
	font-size: 10px;
	margin-right: 5px;
}

ul.approach-list li .useful-box{
	position: relative;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding: 20px 20px 0;
	margin: 40px 0 0 180px;
}

ul.approach-list li .useful-box::before{
	content:"お役立ちサービス";
	position: absolute;
	top: -9px; left: 10px;
	background: #FFF;
	padding: 0 10px;
	font-size: 16px;
	line-height: 16px;
}

ul.approach-list li .useful-box p span{
	display: block;
	font-weight: 700;
}

.useful-box p a{
	color: #333;
	border-bottom: 1px dotted #333;
}

/* interview
++++++++++++++++++++++++++++++*/
#interview-contents{
	padding-bottom: 40px;
}
#interview-contents h1{
	font-size:28px;
	line-height:160%;
	color:#EE5776;
	font-weight:500;
	margin:0 0 20px 0;
}
#interview-contents h1 span{
	display: block;
	font-size: 18px;
	color: #666;
	line-height: 140%;
	margin: 10px 0;
}

#interview-contents h2{
	position: relative;
	font-size:22px;
	line-height:160%;
	font-weight:500;
	margin:0 0 15px 0;
}

#interview-contents h2::after{
	content: "";
	position: absolute;
	top: 0; left: 0;
	width: 22px;
	height: 100%;
	background: rgba(236,81,116,0.4);
	transform:skewX(40deg);
}

#interview-contents p{
	margin:0 0 20px 0;
}

#interview-contents .interview-image{
	width: 760px;
	margin-bottom: 20px;
}

#interview-contents .interview-photo{
	width: 240px;
	margin-bottom: 20px;
}

.interview-profile-box{
	border: 1px dashed #CCC;
	padding: 20px;
	border-radius: 10px;
}

.interview-profile-box ul li:first-child{
	margin-bottom: 10px;
}

.interview-profile-box ul li:first-child span{
	font-size: 18px;
	font-weight: 700;
	margin-right: 10px;
}

h2.supporter-archive-title{
	padding-top: 40px;
}

ul.supporters-interview-list{
	font-size: 0;
	line-height: 0;
	margin: 20px 0 0;
}

ul.supporters-interview-list li{
	display: inline-block;
	width: 370px;
	margin-bottom: 30px;
	vertical-align: top;
}

ul.supporters-interview-list li:nth-child(even){margin-left: 20px;}

ul.supporters-interview-list li a{
	font-size: 16px;
	line-height: 160%;
}

ul.supporters-interview-list li a img{margin-bottom: 5px;}

ul.supporters-interview-list li a span{
	display: block;
	font-size: 14px;
	color: #333;
}
/* 応援隊2020
++++++++++++++++++++++++++++++*/
ul.supporter-data-list li.profile:before{
	font-size:13px;
	position:absolute;
	top:0; left:0;
	width:80px;
	text-align:center;
}
ul.supporter-data-list li.profile:before{content:"プロフィール";}

.column-box .photo-off{
	float:right;
	margin:0 0 20px 20px;
	width: 200px;
}
.supporter-contents-inner h2.mt30{padding-top: 30px;}

#supporter-2020 .column-box{margin-bottom: 0;}
#supporter-2020 .supporter-point-box{border: none; padding: 0;}

/* tips
++++++++++++++++++++++++++++++*/
.blog-contents{
	border-bottom: 1px dashed #CCC;
	margin-bottom: 40px;
}
.blog-contents section{
	margin: 0 0 60px;
}
.blog-contents .key-visual{
	margin-bottom: 20px;
}
section.tips-contents h2{
	font-size: 20px;
	border-left: 5px solid #48A593;
//	border-bottom: 1px solid #48A593;
	padding: 0 0 0 10px;
	margin-bottom: 20px;
}
ul.tips-list{
	display: flex;
	flex-wrap: wrap;
	width: 760px;
	margin-bottom:40px;
}
ul.tips-list li{
	width: 365px;
	margin-bottom: 30px;
}
ul.tips-list li:nth-child(even){
	margin-left: 30px;
}
ul.tips-list li a:hover{
	text-decoration: underline;
}
ul.tips-list li div{
//	height: 205px;
//	overflow: hidden;
	margin-bottom: 10px;
}
.internship-voice{
	border: 1px solid #D93869;
	border-radius: 10px;
	padding: 20px 0;
	box-sizing: border-box;
	margin-bottom: 20px;
}
.internship-voice-inner{
	padding: 20px 20px 0;
}
.internship-voice h3{
	position: relative;
	font-size: 18px;
	margin: 20px 0;
	padding-left: 45px;
}
.internship-voice h3::before{
	position: absolute;
	display: block;
	content: " ";
	top:11px; left: 5px;
	width: 30px; height: 1px;
	border-bottom: 1px solid #111;
}
.internship-voice ul.voice-list{
	margin-bottom: 40px;
}
.internship-voice ul.voice-list li{
	position: relative;
	border-bottom: 20px;
	padding-left: 15px;
}
.internship-voice ul.voice-list li::before{
	position: absolute;
	top:2px; left: 0;
	content: "・";
}

.blog-contents .button-box a{
	width: 460px;
	display: block;
	border: 1px solid #00A0E9;
	background: #00A0E9;
	border-radius: 5px;
	padding: 10px 0;
	color: #FFF;
	font-weight:var(--bold);
	margin: 0 auto;
	text-align: center;
}
.blog-contents .button-box a:hover{
	background-color: #FFF;
	color: #00A0E9;
	text-decoration: none;
}
ul.screen-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
	font-size: 14px;
	background: #ededed;
	padding: 30px 30px;
}
ul.screen-list li{
	width: 220px;
}
ul.screen-list li img{
	margin-bottom: 5px;
}
ol.apply-list{
	width: 640px;
	margin: 0 auto 40px;
}
ol.apply-list li{
	position: relative;
	border: 2px solid #D93567;
	padding: 20px 25px;
	border-radius: 10px;
	margin-bottom: 40px;
}
ol.apply-list li:not(:last-child):after{
	content: "";
  position: absolute;
  width: 0; height: 0;
  bottom: -22px;
	left: 0; right:0;
	margin: auto;
  border-style: solid;
  border-color: #FFDCE8 transparent transparent transparent;
  border-width: 20px 50px 0 50px;
  z-index: 1;
}
ol.apply-list li strong{
	font-size: 18px;
	display: block;
	margin-bottom: 10px;
}
ol.apply-list li.examination{
	border:none;
	text-align: center;
}
.documents-box h3{
	display: inline-block;
	margin-bottom: 20px;
	background:linear-gradient(transparent 60%, #ff6 60%);
}
.documents-box ol.decimal-list{
	margin: 0 0 20px 20px;
}
.documents-box ol.decimal-list li{
	list-style: decimal;
	margin-bottom: 10px;
}
.documents-box ul{margin:-10px 0 40px;}

ul.senior-list li{
	display: flex;
	margin-bottom: 40px;
}
ul.senior-list li .senior-image{
	width: 140px;
	margin-right: 20px;
}
ul.senior-list li p{
	flex: 1;
}
ul.conversation-list li.senior01::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/02/image01.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.senior01::after{
	content: "Sさん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 10px;
}

ul.conversation-list li.senior02::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/02/image02.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.senior02::after{
	content: "Yさん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 5px;
}

ul.conversation-list li.senior03::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/02/image03.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.senior03::after{
	content: "Wさん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 5px;
}
ul.tips-banner-list{
	display: flex;
	justify-content: space-between;
}
ul.tips-banner-list li{
	width: 365px; height: auto;
}
span.caption{
	display: block;
	margin-top: 5px;
	text-align: center;
	font-size: 13px;
}
ul.photo-list{
	display: flex;
	flex-wrap: wrap;
}
ul.photo-list li{
	width: 370px;
	margin-bottom: 20px;
}
ul.photo-list li:nth-child(odd){
	margin-right: 20px;
}
ul.comment-list{
	margin: 30px 0;
}
ul.comment-list > li{
	position: relative;
	padding-left: 40px;
	margin-bottom: 30px;
}
ul.comment-list > li::before{
	position: absolute;
	content: "";
	top:-5px; left: 0;
	width: 32px; height: 30px;
	background-image:url(../../img/tips/icon/comment01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
ul.comment-list#another > li::before{background-image:url(../../img/tips/icon/comment02.png);}
ul.comment-list > li ul{
}
ul.comment-list > li ul li{
	position: relative;
	padding-left: 20px;
	margin-bottom: 10px;
}
ul.comment-list > li ul li::before{
	position: absolute;
	content: "・";
	top:0; left: 0;
}
p.worry-text{
	position: relative;
	margin-bottom: 20px;
	padding-left: 70px;
	line-height: 60px;
	font-weight:var(--bold);
	color: #666;
}
p.worry-text::before{
	content: "";
	position: absolute;
	top:0; left: 0;
	background-image: url(../../img/tips/icon/worry.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}
strong.fluorescence-blue{
	display: inline-block;
	margin-bottom: 20px;
	background:#B3EFF3;
}
ul.area-link-list{
	margin-bottom: 60px;
}
ul.area-link-list li a{
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}
ul.area-link-list li a figure{
	width: 360px;
	margin-right: 30px;
	border: 1px solid #CCC;
	box-sizing: border-box;
}
ul.area-link-list li a .text-box{
	flex: 1;
}
ul.area-link-list li a .text-box h3{
	margin-bottom: 10px;
}
ul.area-link-list li a .text-box p{
	color: #111;
}
ul.area-link-list li a:hover .text-box p{
	text-decoration: underline;
}
section.tips-contents .information-box{
	border: 2px solid #CCC;
	border-radius: 1rem;
	padding: 1em 1.5em;
	display: flex;
}
section.tips-contents .information-box figure.info-image{
	width: 240px;
	margin-right: 20px;
}
section.tips-contents .information-box .flex-text-box{
	flex: 1;
}
section.tips-contents .information-box .flex-text-box p:last-of-type{
	margin-bottom: 0;
}
ul.conversation-list li.senior04::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/02/image01.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.senior04::after{
	content: "Sさん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 10px;
}

ul.conversation-list li.senior05::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/02/image02.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.senior05::after{
	content: "Yさん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 5px;
}

ul.conversation-list li.senior06::before{
	content: "";
	position: absolute;
	top:-15px; left: 0;
	background-image: url(../../img/tips/02/image03.png);
	background-repeat: no-repeat;
	background-size: 60px 60px;
	width: 60px; height: 60px;
}

ul.conversation-list li.senior06::after{
	content: "Uさん";
	font-size: 13px;
	position: absolute;
	top:40px; left: 5px;
}
/* 信州を知る
++++++++++++++++++++++++++++++*/
.first-text{
	margin-bottom:20px;
}
.tips-job h3{
	display: inline-block;
	margin-bottom: 20px;
	background:linear-gradient(transparent 60%, #ff6 60%);
}
.tips-job-first h3{
	display: inline-block;
	margin-bottom: 20px;
	background:linear-gradient(transparent 60%, #ff6 60%);
}
.flex-first{
	display:flex;
	border-bottom:1px solid #999;
	padding-bottom:40px;
}
.tips-job-first{
	flex:1;
}
.flex{
	display:flex;
	border-bottom:1px solid #999;
	padding:15px 0 15px 0;
}
.flex-last{
	display:flex;
	padding:15px 0 40px 0;
	padding-bottom:100px;
}
.flex-last-skiing{
	display:flex;
	padding:15px 0 40px 0;
	padding-bottom:40px;
}
.life-span-box{
	display:flex;
}
.flex-second{
	display:flex;
}
.tips-job-data p{
	font-size:30px;
	color:#3e6d40;
	font-weight:700;
	padding-right:20px;
}
.tips-job-data span{
	font-size:15px;
	color:#000;
}
.tips-job span{
	font-size:15px;
	color:#3e6d40;
	font-weight:400;
}
.tips-job span.title-span{
	font-size:15px;
	color:#000;
	font-weight:400;
}
.tips-job span.reference{
	font-size:10px;
	color:#000;
}
.tips-job-data span.reference{
	font-size:10px;
	color:#000;
}
.tips-job-first span{
	font-size:15px;
	color:#000;
	font-weight:400;
}
.tips-job{
	flex:1;
	padding-bottom:15px;
	padding-top:20px;
}
.blog-contents .title-box{
	border:solid 2px #3e6d40;
	margin:0 auto;
	text-align:center;
	margin-bottom:35px;
	margin-top:50px;
}
.health-title-box{
	border:solid 2px #3e6d40;
	margin:0 auto;
	text-align:center;
}
.living-title-box{
	border:solid 2px #3e6d40;
	margin:0 auto;
	text-align:center;
}
.entertainment-title-box{
	border:solid 2px #3e6d40;
	margin:0 auto;
	text-align:center;
}
.job-graph{
	width:480px;
	margin-left:10px;
	max-width:100%;
}
.job-icon{
	width:150px;
	margin-right:170px;
}
.health-icon{
	width:150px;
	margin-right:70px;
}
.living-icon{
	width:150px;
	margin-right:70px;
}
.entertainment-icon{
	width:150px;
	margin-right:70px;
}
.money-icon{
	width:110px;
	margin-right:250px;
}
.flex-last-skiing .sp-none{
	width:150px;
	margin-right:70px;
}
section .job-title-box h2{
	margin:0;
}
section .health-title-box h2{
	margin:0;
}
section .living-title-box h2{
	margin:0;
}
section .entertainment-title-box h2{
	margin:0;
}
.money-box{
	display:flex;
}
.tips-money{
	flex:1;
	padding-bottom:35px;
}
.tips-money h3{
	display: inline-block;
	margin-bottom: 20px;
	background:linear-gradient(transparent 60%, #ff6 60%);
}
.tips-money span{
	font-size:15px;
	color:#000;
	font-weight:400;
}
.money-box-inner{
	display:flex;
}
#money-info{
	background-color:#fffbab;
	display:flex;
	border-radius:10px;
	padding:20px 40px 20px 40px;
	margin-bottom:100px;
}
.money-info-title{
	flex:1;
}
.money-contents{
	padding-top:35px;
}
.info-text{
	color:#3e6d40;
	font-size:16px;
}
ul.maney-info-list{
	margin-right:100px;
}
ul.maney-info-list li{
	color:#3e6d40;
	list-style-type:disc;
}
.last-text{
	padding-bottom:40px;
}
.entertainment-living-contents{
	padding-top:50px;
}
ul.question-list li{
	position:relative;
	padding-left:50px;
	margin-bottom:20px;
}
ul.question-list li.question01::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/q1.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.answer01::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/a1.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.question02::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/q2.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.answer02::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/a2.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.question03::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/q3.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.answer03::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/a3.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.question04::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/q4.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.answer04::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/a4.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.question05::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/q5.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
ul.question-list li.answer05::before{
	content: "";
	position: absolute;
	top:0; left:0;
	background-image: url(../../img/tips/07/a5.svg);
	background-repeat: no-repeat;
	background-size: 40px 40px;
	width: 40px; height: 40px;
}
.answer01,.answer02,.answer03,.answer04,.answer05{
	padding-bottom:40px;
}
.qanda-title{
	padding-bottom:20px;
}
.consultation-title{
  width:600px;
	margin:0 auto;
	padding-bottom:40px;
}
#consultation-box{
	background-color:#fffbab;
	border-radius:10px;
	padding:50px 50px 20px 50px;
}
.flex-box{
	display:flex;
	padding:0;
	margin-bottom:30px;
}
.consultation-icon{
	width:120px;
}
.consultation-answer{
	font-size:17px;
	font-weight:700;
	color:#3e6d40;
	padding-left:40px;
	position:relative;
}
.consultation-answer::before{
	content: "";
	position: absolute;
	top:10px; left:0;
	background-image: url(../../img/tips/07/arrow.svg);
	background-repeat: no-repeat;
	background-size: 30px 30px;
	width: 30px; height: 30px;
}
.consultation-text{
	margin-left:10px;
	flex:1;
}
.consultation{
	font-size:17px;
	margin-bottom:5px;
	border-bottom: 2px dotted #3e6d40;
}
span.reference{
	font-size:10px;
}
span.dataspan{
	font-size:12px;
	line-height:5px;
}

/* アドバンス認証改定 */
ul.revised-list{
  display: flex;
  justify-content: space-between;
  margin: 60px 0;
}
ul.revised-list li{
  position: relative;
  width: 240px;
  border: 2px solid #F39700;
  border-radius: 5px;
  box-sizing: border-box;
}
ul.revised-list li:nth-child(2){border: 2px solid #00AFEC;}
ul.revised-list li:nth-child(3){border: 2px solid #8EC41F;}

ul.revised-list li::before{
  position: absolute;
  top:-30px;
  left: 0; right: 0;
  margin: auto;
  content: "";
  width: 60px; height: 60px;
  background-image:url(../../img/tips/advance/icon01.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
ul.revised-list li:nth-child(2)::before{background-image:url(../../img/tips/advance/icon02.png);}
ul.revised-list li:nth-child(3)::before{background-image:url(../../img/tips/advance/icon03.png);}

ul.revised-list li::after{
  position: absolute;
  content: "";
  bottom: -32px;
  left: 0; right: 0;
  width: 2px; height: 30px;
  margin: auto;
  background: #CCC;
}
ul.revised-list li:nth-child(2)::after{
  bottom: -62px;
  height: 60px;
}
ul.revised-list li .revised-list-title{
  padding: 40px 10px 0;
//  background: #F39700;
  color: #F39700;
  font-size: 18px;
  font-weight: 500;
  text-align: center;
}
ul.revised-list li:nth-child(2) .revised-list-title{color: #00AFEC;}
ul.revised-list li:nth-child(3) .revised-list-title{color: #8EC41F;}
ul.revised-list li p{
  padding: 10px 10px 0;
}
.revised-all{
  position: relative;
  display: block;
  text-align: center;
  border: 2px solid #E95383;
  border-radius: 5px;
  padding: 10px 20px;
  box-sizing: border-box;
	margin-bottom: 40px;
}
.revised-all strong{font-size: 24px; color: #E95383; display: block;}
.revised-all::before{
  position: absolute;
  content: "";
  top:-32px;
  left: 0; right: 0;
  width: 600px; height: 2px;
  margin: auto;
  background: #CCC;
}
.revised-all::after{
  position: absolute;
  top:8px; left: 140px;
  content: "";
  width: 60px; height: 60px;
  background-image:url(../../img/tips/advance/icon04.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.declaration-example-box{
  border:2px solid #ff952e;
  border-radius:5px;
  margin:50px auto 30px auto;
  padding:40px 50px 30px 50px;
  position:relative;
}
section .declaration-example-box > h3{
  font-size:18px; line-height:36px;
  color:#FFF;
  background:#ff952e;
  padding:0 10px;
  position:absolute;
  top:-19px; left:50%;
  transform:translateX(-50%);
}
.declaration-example-box > h3::before{
  content:"";
  border-top:18px solid #FF952E;
  border-bottom:18px solid #FF952E;
  border-left:8px solid transparent;
  position:absolute;
  top:0; left:-7px;
}
.declaration-example-box > h3::after{
  content:"";
  border-top:18px solid #FF952E;
  border-bottom:18px solid #FF952E;
  border-right:8px solid transparent;
  position:absolute;
  top:0; right:-7px;
}
ul.declaration-example-list{
}
ul.declaration-example-list li{
  position:relative;
  padding-left:20px;
  border-bottom:1px dashed #CCC;
  padding-bottom:10px;
  margin-bottom:10px;
}
ul.declaration-example-list li:last-child{
  border-bottom:none;
  padding-bottom:0;
  margin-bottom:0;
}
ul.declaration-example-list li::before{
  content:"";
  display:block;
  width:5px; height:10px;
  position:absolute;
  top:6px; left:0px;
  border:3px solid #FF952E;
  border-left:0;
  border-top:0;
  transform:rotate(45deg);
}
/* 応援隊2023
++++++++++++++++++++++++++++++*/
.supporter-profile{
	display: flex;
	justify-content: space-between;
//	flex-direction: row-reverse;
	padding-bottom: 20px;
	margin-bottom: 40px;
	border-bottom: 1px solid #EE5776;
}
.supporter-profile figure{
	width: 220px;
	margin-right: 30px;
}
.supporter-profile .supporter-profile-text{
	flex: 1;
}
.supporter-profile .supporter-profile-text h1{
	font-size: 1.5em !important;
	line-height: 1 !important;
	margin-bottom: 0;
}
.supporter-profile .supporter-profile-text h1 span{
	font-size: 0.8em !important;
}
.supporter-profile .supporter-profile-text .affiliation{
	font-size: 1.2em;
	margin-bottom: 5px;
}
.supporter-profile .supporter-profile-text .history{
	margin-bottom: 20px;
}
#supporter-2023 h2{
	font-size: 1.1em !important;
	color: #EE5776;
	font-weight: bold;
	margin:0 0 10px;
}
.supporter-qa-box{
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

ul.supporter-qa-list{
	width: 440px;
}
ul.supporter-qa-list li{
	margin-bottom: 1.5em;
}
ul.supporter-qa-list li .question{
	position: relative;
	color: #999;
	font-size: 1.1em;
	margin-bottom: 0.5em;
	padding-left: 1.5em;
}
ul.supporter-qa-list li .question::before{
	position: absolute;
	content: "";
	top:0.8em; left: 0;
	width: 1.2em; height: 1px;
	background-color: #999;
}
ul.supporter-qa-list li .answersupporter-related-list{
//	padding-left: 1.5em;
	color: #111;
}
/*ul.supporter-qa-list li .question::before{
	position: absolute;
	top:0; left: 5px;
	content: "Q";
	color: #FFF;
	width: 1em; height: 1em;
	font-weight: bold;
	font-size: 1em;
	z-index: 1;
}
ul.supporter-qa-list li .question::after{
	position: absolute;
	top:2px; left: 0;
	content: "";
	background-color: #00A4EA;
	width: 24px; height: 24px;
	border-radius: 50%;
}*/
ul.supporter-photo-list{
	width: 220px;
}
ul.supporter-photo-list li{
	margin-bottom: 20px;
}
#supporter-archive h2.title2023{
	position: relative;
	font-weight: bold;
	margin: 40px 0 20px;
	padding-left: 20px;
}
#supporter-archive h2.title2023::before{
	position: absolute;
	top:0.5em; left: 0;
	content: "";
	background-color: #EE5776;
	width: 12px; height: 12px;
	border-radius: 50%;
}
#supporter-archive ul.supporter-related-list{
	margin-top: 20px;
}
#supporter-archive .button-box{
	margin-top: 20px;
}
#supporter-archive .button-box a{
	width:320px;
	color:#EE5776;
	border:1px solid #EE5776;
}

#supporter-archive .button-box a:hover{
	background:#EE5776;
	color:#FFF;
}