@charset "utf-8";
/* CSS Document */

.otherimage{
  max-width: 100%;
  width: 500px;
	}

.logo{width: 400px;}
@media screen and (max-width: 768px) {
  .logo {max-width: 100%;}
	}

.spo-w{width: 500px;}
@media screen and (max-width: 768px) {
  .spo-w {max-width: 100%;}
	}

iframe {
  width: 100%;
  aspect-ratio: 4/3;
}

/* リンク横並び
------------------------------------ */
.linkArea{
	/*text-align: center;*/
}
.b_linkArea{
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    text-align: center;
}
.b_btn{
	width: 46%
}

@media screen and (max-width: 768px) {
	.linkArea{
	display: flex;
	flex-direction: column;
	text-align: center;
	}
	.b_btn{width: 100%}
}

/* common style
-------------------------------------------- */
.fontSS{font-size:0.7em;}
.fontS{font-size:0.8em;}
.fontSM{font-size:0.96em;}
.fontM{font-size:1.2em}
.fontMM{font-size:1.3em; line-height:1.6em;}
.fontL{font-size:1.5em;line-height:1.8}
.fontLL{font-size:2em}

.mt0{margin-top:0 !important}
.mt5{margin-top:5px !important}
.mt10{margin-top:10px !important}
.mt05em{margin-top:0.5em !important}
.mt1em{margin-top:1em !important}
.mt2em{margin-top:2em !important}

.mb0{margin-bottom:0 !important}
.mb5{margin-bottom:5px !important}
.mb10{margin-bottom:10px !important}
.mb05em{margin-bottom:0.5em !important}
.mb1em{margin-bottom:1em !important}
.mb2em{margin-bottom:2em !important}

.mr0{margin-right:0 !important}
.mr5{margin-right:5px !important}
.mr10{margin-right:10px !important}
.mr1em{margin-right:1em !important}
.mr2em{margin-right:2em !important}

.ml0{margin-left:0 !important}
.ml5{margin-left:5px !important}
.ml10{margin-left:10px !important}
.ml1em{margin-left:1em !important}
.ml2em{margin-left:2em !important}

.mtb0{margin-top:0;margin-bottom:0 !important}
.mtb05{margin-top:0.5em;margin-bottom:0.5em !important}
.mrl8{margin-right:8px;margin-left:8px !important}
.mtb1em{margin-top:1em;margin-bottom:1em !important}

.fontRed{color:#dc000c!important;}

.txtC{text-align:center!important}
.txtR{text-align:right!important}
.txtL{text-align:left!important}

span.del{
  text-decoration-line:line-through;
  text-decoration-style:double;
  }

span.underLine {border-bottom: solid 3px #87CEFA;}

/*PCでは無効（改行しない）*/
.forSP{
    display: none;
}
/*スマートフォンでは有効（改行する）*/
@media screen and (max-width:768px) {
    .forSP{
        display: block;
    }
}

/*PCでは無効（改行しない）*/
.forPC{
    display: block;
}
/*スマートフォンでは有効（改行する）*/
@media screen and (max-width:768px) {
    .forPC{
        display: none;
    }
}

/* エントリーボタン
-------------------------------------------- */
.recruit_btn{
  font-size:1.2em;
  text-align:center;
  padding-top:20px;
	}
.recruit_btn label:hover{cursor: pointer;}
input[type=checkbox]{
  width: 16px;
  height: 16px;
  vertical-align: baseline;
	}
input[type=checkbox]{
  -moz-transform-origin: right bottom;
  -moz-transform: scale( 2 , 2 );
	}
.recruit_dlbtn{
  border-radius:40px;
  color: #ffffff;
  background: #8f8f8f;
  text-decoration: none;
	width:400px;
	max-width:100%;
	margin:20px auto 0;
	text-align:center;
	}
.recruit_dlbtn{pointer-events:none;}
.recruit_dlbtn a{
  color:#FFF;
  display:block;
  padding:20px;
	}
/*.recruit_dlbtn:hover{transform: translate(1px,1px);}*/
input[type=checkbox]:checked ~ .recruit_dlbtn{
 background: #0057AA;
 pointer-events:inherit;
 }
@media screen and (max-width:768px){
  .recruit_btn{font-size:1em;}
  .recruit_btn p{display:flex;}
	.recruit_dlbtn{width:96%;}
	}

/* 箇条書き
-------------------------------------------- */
.list_t{
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	/*border-top: 1px dashed #000;*/
}
.list_t > dt {
    width: 22%;
    padding: 0.1em 0 0.1em 1em;
    /*border-bottom: 1px dashed #000;*/
}
.list_t > dd {
    width: calc(78% - 2px);
    padding: 0.1em 0 0.1em 1em;
   /* border-bottom: 1px dashed #000;*/
    margin: 0 0 0 2px;
	font-size:0.96em;
}

@media screen and (max-width: 768px){
	.list_t{
    border-top: 1px solid #000;
	}
}
@media screen and (max-width: 768px){
	.list_t > dt {
		width: 100%;
		background: #F4F4F4;
		border-bottom: none;
	}
}
@media screen and (max-width: 768px){
	.list_t  > dd {
	width: 100%;
	margin: 0;
	border-bottom: 1px solid #000;
	}
}

/* タイムライン
-------------------------------------------- */
.TimeLine {
	position: relative;
	margin: 1.4em 0 1em 0.4em;
}
.TimeLine:before {
	position: absolute;
	top: 14px;
	/*width: 6px;*/
	height: 90%;
	content: '';
	/*background-color: #a1d9fb;*/
	border: 2px #c1d8e5 dashed;
	left: 33px;
}
/*.TimeLine .TimeLine_group {
	position: relative;
	padding-top: 55px;
}
.TimeLine .TimeLine_group:not(:first-of-type) {
	margin-top: 4rem;
}*/
.TimeLine .TimeLine_item {
	margin-bottom: 1em;
	position: relative;
	padding-left: 80px;
}
/*.TimeLine .TimeLine_item:not(:last-of-type) {
	margin-bottom: 2em;
}*/
/*.TimeLine .TimeLine_item:before {
	position: absolute;
	z-index: -1;
	left: 0;
	width: 100%;
	height: 3px;
	content: '';
	background-color: #006064;
	top: 50%;
	-webkit-transform: translateY(-50%);
					transform: translateY(-50%);
}*/
.TimeLine .Subitems {
	position: absolute;
	left: 0;
	box-sizing: border-box;
	min-width: 70px;
	min-height: 70px;
	padding: 0.5em 0.5em;
	text-align: center;
	color: #fff;
	background-color: #5485b5;
	/*top: 50%;*/
	margin-top: -1px;
	border-radius: 65px;
}
.TimeLine .Subitems_txt {
	font-size: 0.9em;
	font-weight: 700;
	display: block;
}
.TimeLine .Subitems_number {
	font-size: 1.4em;
	display: block;
	text-transform: uppercase;
	margin: -8px;
}
.TimeLine .desc {
	padding: 0.5em 1em;
	border-radius: 2px;
	background-color: #fff;
}
.TimeLine .desc .TimeLine_title {
	font-size: 1.2em;
	font-weight: bold;
	margin: 0;
	padding: 0;
	padding-bottom: 0.3em;
	color: #5485b5;
}
@media only screen and (max-width: 767px) {
	.TimeLine {
		margin: 1em auto;
	}
	.TimeLine:before {
		left: 20px;
		height: 86%
	}
	/*.TimeLine .TimeLine_group {
		padding-top: 40px;
	}*/
	.TimeLine .TimeLine_item {
		padding-top: 50px;
		padding-left: 30px;
	}
	.TimeLine .TimeLine_item:before {
		top: 90px;
	}
	.TimeLine .Subitems {
		top: -1px;
		border-radius: 0;/*0 40px 40px 0*/
		min-height: 2em;
		width: 100%;
        /*margin-left: 1em;*/
	}
	.TimeLine .Subitems_txt {
		display: inline-block;
		font-size: 1.2em;
	}
	.TimeLine .Subitems_number {
		display: inline-block;
		margin-left: 0.4em;
		font-size: 1.4em;
		font-weight: bold;
	}
	.TimeLine .desc {
		/*font-size: 0.8em;*/
	}
}

/* 聞いてみた */
#underBase .anaList ul{
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0;
    margin: 0 -10px;
}
#underBase .anaList li{
    /*width: 33.333333%;*/
    margin: 0;
    padding: 0 10px 10px;
}
#underBase .anaList ul > li::before,#underBase .anaList ul > li::after{
  display:none;
}
#underBase .anaList img{
	transition: 0.3s;
}
#underBase .anaList img:hover{
    opacity: 0.7;
	transition: 0.3s;
}
.prfWrap{
	padding: 3em;
}
.prfImg{
  text-align:center;
  max-width:400px;
  margin:0 auto
}
.prfImgPhoto{
  text-align:center;
  max-width:90%;
  margin:0 auto
}
.prfImg img,.prfImgPhoto img{
	width:100%;
}
.prfTxt{
  margin-top:1em;
  text-align:left;
  line-height:1.5;
  font-size:1.5rem
}
.prfTxt h5{
  margin:1em auto;
  text-align:center;
  font-size:1.5em;
}
.prfImgPhotoTitle{
	position: relative;
	padding: 1em 0.6em 0;
 	transition: .8s;
}
.prfImgPhotoTitle h5{
	position: absolute;
	top: -1em;
	background-color: rgb(30 105 181 / 90%);
	padding: 0.25em 2em;
	color: #fff;
	font-size: 1.2em;
	transform: rotate(-4deg);
}
@media screen and (max-width: 768px){
	prfImgPhotoTitle{
		padding:0;
 	}
	.prfImgPhotoTitle h5{
		left: -10px;
	}
}

.prfTxt .QAlist{
	
}
.prfTxt .prfMemo{
	border: 1px dashed #40a4bd;
    padding: 0.6em;
    border-radius: 6px;
	font-size: 0.92em;
}
.prfTxt dl.QAlist > dt{
	background: #e7f5fb;
	margin: 0.6em 0;
    padding: 0.4em 0.6em;
}
.prfTxt dl.QAlist > dd{
    padding: 0.2em 0.6em 0.4em;;
}
@media screen and (max-width: 768px){
	#underBase .anaList ul{
		justify-content: center;
	}
	.prfWrap{
		padding: 1em;
	}
	.prfImg{
		max-width:90%;
	}
	.prfImgPhoto{
		max-width:100%;
	}
	#underBase main .anaList ul > li:first-child{
		margin: 0;
	}
	
}