/* 
--------------------------------------------
tanki
--------------------------------------------
*/
body{
  font-family: "Noto Sans JP", sans-serif;
}
.bg_pattern {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #fefefe;
  opacity: 0.4;
  z-index: -1;
}
.Triangle {
  background-image: linear-gradient(45deg, #f7f7f7 50%, #fefefe 50%);
  background-size: 20px 20px;
}
section{
  padding: 1rem 0;
}
.container{
  max-width: 1000px;
  margin: auto;
}
.main-visual{
  width: 100%;
  position: relative;
}
.lp_senior .main-visual{
  height: 420px;
  width: 100%;
  background: url(/images/info/senior/icatch.png) no-repeat center / cover;
}
.lp_yakin .main-visual{
  height: 480px;
  width: 100%;
  background: url(/images/info/yakin/mv-bg.png) no-repeat center / cover;
}
.spot_lp .main-visual{
  height: 420px;
  width: 100%;
  background: url(/images/info/spot/icatch.png);
  margin-bottom: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.main-visual{
  height: 420px;
  background: url(/images/lp/tanki/icatch.png) no-repeat center / cover;
}
.lp_tanki .main-visual{
  height: 420px;
  background: url(/images/lp/tanki/icatch.png) no-repeat center / cover;
}
.lp_spot .main-visual{
  height: 420px;
  background: url(/images/info/spot/icatch.png) no-repeat center / cover;
}
.lp_part .main-visual{
  height: 460px;
  background: url(/images/info/part/icatch.jpg) no-repeat center / cover;
}
.lp_kokosei .main-visual{
  height: 420px;
  background: url(/images/info/kokosei/icatch.jpg) no-repeat center / cover;
}
.lp_gakusei .main-visual{
  height: 420px;
  background: url(/images/info/gakusei/icatch.jpg) no-repeat center / cover;
}
.lp_rirekisyo .main-visual{
  height: 480px;
  background: url(/images/info/rirekisyo/icatch.jpg) no-repeat center / cover;
}
.lp_nail .main-visual{
  height: 480px;
  background: url(/images/info/nail/icatch.jpg) no-repeat center / cover;
}
.main-view{
  position: relative;
  margin-bottom: 20px;
}
.trapezoid {
  width: 190px;
  border-bottom: 46px solid #fff;
  border-left: 26px solid transparent;
  border-right: 26px solid transparent;
  margin: auto;
  position: relative;
}
.logo_link {
  text-align: center;
  position: absolute;
  top: 10px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 150;
}
.logo_link a, .logo a{
  display: inline-block;
  width: 140px;
}
.title__head{
  position  : absolute;
	top       : 50%;
	left      : 50%;
	transform : translate(-50%, -50%);
}
.lp_part .title__head{
  top: auto;
  bottom: 13%;
}
.kokosei_lp .title__head{
  top: auto;
  bottom: 5%;
  font-weight: bold;
}
.title__head .title01 {
  text-align: center;
  font-size: 20px;
  transform: none;
  background: none;
  margin-bottom: 0;
  padding: 0;
}
.title__head .title02{
  text-align: center;
  font-size: 28px;
  margin-bottom: 12px;
}
.title__head .title_strong {
  font-size: 40px;
  color: #fff246;
  display: block;
  margin: 10px 0 4px;
  font-weight: bold;
}
.lp_officework .title__head .title_strong{
  color: #000;
}
.title__bottom {
  display: inline-block;
  margin: 0 auto;
  background-color: #ffffff;
  color: #444444;
  border-radius: 30px;
  padding: 8px 28px;
  text-align: center;
  opacity: 0.8;
}
.lp_part .title__bottom{
  background-color: inherit;
  font-weight: bold;
  color: #000;
}
.kokosei_lp .title__bottom{
  border-radius: 0;
  padding: 8px;
}
.title__bottom span{
  font-size: 1.2em;
  color: #ea5604;
  margin: 4px;
}
.lp_part .title__bottom span{
  color: #f12f5e;
}
.sec_title{
  text-align: center;
  box-sizing: border-box;
  margin-bottom: 24px;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
}
.link__keyword li{
  padding: 10px 8px;
}
.link__keyword li a{
  display: block;
  position: relative;
  box-shadow: 0px -4px 0px 0px #cfcfcf inset;
  padding: 0 30px 0 20px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 14px;
  color: #222 !important;
  border: 1px solid #1860a4;
  height: 52px;
  line-height: 50px;
  background-color: white;
}
.link__keyword li a img{
  width: 32px;
  vertical-align: middle;
  padding-right: 8px;
  position: relative;
  top: -2px;
}
.popular_lists {
  justify-content: center;
}
.popular_lists li{
  width: 32%;
  border: 1px solid #1860a4;
  border-radius: 8px;
  background-color: #ffffff;
  list-style-type: none;
  box-sizing: border-box;
  margin-bottom: 12px;
  margin-right: 10px;
  padding-bottom: 4px;
}
.popular_lists li a{
  align-items: center;
  position: relative;
  box-shadow: 0px 4px 0px 0px #cfcfcf;
  padding: 8px 20px 8px 10px;
  border-radius: 6px;
  text-decoration: none;
  cursor: pointer;
  min-height: 96px;
}
.popular_lists li a:after{
  content: "\f125";
  font-family: "Ionicons";
  font-size: 1rem;
  font-weight: bold;
  position: absolute;
  right: 12px;
  color: #2183df;
}
.popular_lists li a img{
  width: 90px;
  padding-right: 10px;
}
.popular_lists li a .link__text {
  text-align: center;
  font-size: 14px;
  color: #666666;
  margin: 0;
  min-width: 65%;
}
.popular_lists li a .link__text>span {
  color: #2183df;
  font-size: 18px;
  font-weight: bold;
}
.popular_lists li a .link__text .heading span{
  margin: 0;
  color: #2183df;
  font-size: 12px;
  position: relative;
}
.popular_lists li a .link__text .heading span:before {
  position: absolute;
  content: "";
  width: 14px;
  aspect-ratio: 14 / 18;
  background-image: url(/images/info/part/heading-deco.png);
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0px;
  left: -20px;
  transform: scale(-1, 1);
}
.popular_lists li a .link__text .heading span::after {
  position: absolute;
  content: "";
  width: 14px;
  aspect-ratio: 14 / 18;
  background-image: url(/images/info/part/heading-deco.png);
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0px;
  right: -20px;
}
.sec__merit{
  padding: 2rem 0;
  background-color: rgba(255,248,128,0.5);
}
.merit_lists li {
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 2px 0px 0px rgb(207 207 207 / 50%);
  padding: 0 20px 15px;
  margin: 40px 0 72px;
  width: 32%;
  margin-bottom: 0;
  box-sizing: border-box;
}
.lp_part .merit_lists li, .senior_lp .merit_lists li{
  padding: 0 20px 15px;
} 
.merit_image {
  text-align: center;
  height: 120px;
  margin-bottom: 20px;
}
.merit_image img {
  width: 160px;
  height: 160px;
  position: relative;
  top: -40px;
}
.merit_head {
  color: #2183df;
  font-weight: bold;
  font-size: 17px;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 12px;
}
.lp_part .merit_head {
  font-size: 17px;
  line-height: 1.6;
}
.merit_text {
  color: #444444;
  font-size: 15px;
  line-height: 1.5;
  margin: 0;
}

.sec__point{
  padding: 2rem 0;
  background-color: rgba(255,248,128,0.5);
}
.point_lists li {
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 2px 0px 0px rgb(207 207 207 / 50%);
  padding: 0 20px 20px;
  margin: 40px 0 72px;
  width: 32%;
  margin-bottom: 0;
  box-sizing: border-box;
}
.point_image {
  text-align: center;
  height: 120px;
  margin-bottom: 20px;
}
.point_image img {
  width: 160px;
  height: 160px;
  position: relative;
  top: -40px;
}
.point_head {
  color: #2183df;
  font-weight: bold;
  font-size: 17px;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 12px;
}
.point_text {
  color: #444444;
  font-size: 15px;
  line-height: 1.5;
  margin: 0;
}

.article_box {
  border: 1px solid #165896;
  border-radius: 8px;
  margin-bottom: 20px;
}
.article_title {
  border-radius: 7px 0 0 7px;
  width: 20%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #165896;
  color: #ffffff;
  text-align: center;
  padding: 8px;
}
.article_title-sub {
  font-size: 13px;
  font-weight: normal;
  line-height: 1.5;
  margin: 0;
}
.article_title-main{
  font-size: 18px;
  font-weight: bold;
}
.article_contents {
  width: 80%;
  border-radius: 8px;
  background-color: #ffffff;
  padding: 12px;
  position: relative;
}
.article_contents label {
	position: absolute;
	z-index: 1;
	bottom: 0;
  right: 0;
	width: 100%;
	height: 100px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 1) 80%);
  margin-bottom: .65rem;
  overflow: hidden;
}
.article_contents input:checked + label {
	background: initial;
}
.article_contents label:after {
	position: absolute;
	z-index: 2;
	bottom: 0;
	right: 10px;
  font-family: "Ionicons";
	content: 'もっと見る ''\f123';
	font-size: 14px;
	color: #666;
}
.article_contents input {
	display: none;
}
.article_contents .article_contents-inner {
	overflow: hidden;
	height: 110px;
	transition: all 0.5s;
}
.article_contents input:checked + label:after {
  font-family: "Ionicons";
	content: '閉じる ''\f126';
}
.article_contents input:checked ~ .article_contents-inner {
	height: auto;
	padding-bottom: 20px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}
.type__keyword li{
  padding: 6px;
}
.type__keyword li a{
  display: block;
  height: 52px;
  line-height: 50px;
  position: relative;
  color: #333;
  border: 1px solid #1860a4;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0px -4px 0px 0px #cfcfcf inset;
  padding: 0 20px 0 17px;
  border-radius: 6px;
  cursor: pointer;
}
.type__keyword li a:after {
  content: "\f125";
  font-family: "Ionicons";
  font-size: 10px;
  font-weight: bold;
  position: absolute;
  right: 5px;
  color: #2183df;
}

.floating-banner{
  position: fixed;
  bottom: 100px;
  right: 20px;
  z-index: 100;
}
.floating-banner-inner{
  width: 160px;
}
.floating-banner .banner-img{
  z-index: 1000;
}
.floating-banner .close{
  position: absolute;
  top: 10px;
  left: 10px;
}
.sec__pref .sec_title:before{
  display: none;
}
.others-terms{
  padding: 20px 0;
}
.sec__keyword {
  margin-bottom: 40px;
}
.bottom-btn-wrap{
  padding: 30px 0 60px;
}
.bottom-btn-wrap .btn-blue{
  width: 90%;
  max-width: 420px;
  font-size: 18px;
  padding: 1.4rem 0 1rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  letter-spacing: 0.1em;
  -webkit-box-shadow: 0 4px 0 #d25806;
  position: relative;
  background-color: #ED6408;
  border-color: #ED6408;
  border-radius: 10px;
}
.bottom-btn-wrap .btn-blue span{
  display: block;
  color: #ED6408;
  font-size: 14px;
  position: absolute;
  top: -1.25rem;
  left: calc(50% - 150px);
  display: block;
  width: 300px;
  padding: 0.2rem 0;
  border: 2px solid #ED6408;
  border-radius: 100vh;
  background: #fff;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

.bottom-btn-wrap .btn-blue span:before,
.bottom-btn-wrap .btn-blue span:after {
  position: absolute;
  left: calc(50% - 10px);
  content: "";
}

.bottom-btn-wrap .btn-blue span:before {
  bottom: -10px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #ED6408 transparent transparent transparent;
}

.bottom-btn-wrap .btn-blue span:after {
  bottom: -7px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}
@media only screen and (max-width: 767px){
  .lp_tanki .main-visual, .lp_senior .main-visual, .lp_spot .main-visual{
    height: 240px;
    margin: 0;
  }
  .spot_lp .main-visual{
    height: 270px;
  }
  .lp_yakin .main-visual{
    width: 100%;
    height: 328px;
    background: url(/images/info/yakin/mv-bg-sp.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .lp_part .main-visual{
    height: 378px;
    background: url(/images/info/part/icatch-sp.jpg) no-repeat center / cover;
  }
  .lp_kokosei .main-visual{
    height: 378px;
    background: url(/images/info/kokosei/icatch-sp.jpg) no-repeat center / cover;
  }
  .lp_gakusei .main-visual{
    height: 378px;
    background: url(/images/info/gakusei/icatch-sp.jpg) no-repeat center / cover;
  }
  .lp_rirekisyo .main-visual{
    height: 378px;
    background: url(/images/info/rirekisyo/icatch-sp.jpg) no-repeat center / cover;
  }
  .lp_nail .main-visual{
    height: 378px;
    background: url(/images/info/nail/icatch-sp.jpg) no-repeat center / cover;
  }
  .trapezoid {
    width: 150px;
    border-bottom: 36px solid #fff;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
  }
  .logo_link{
    top: 7px;
  }
  .logo_link a, .logo a {
    width: 118px;
  }
  .title__head{
    width: 100%;
  }
  .lp_kokosei .title__head, .lp_gakusei .title__head{
    top: 66%;
  }
  .lp_part .title__head{
    top: auto;
    bottom: 5%;
  }
  .title__head .title01{
    font-size: 13px;
  }
  .title__head .title02{
    font-size: 23px;
  }
  .spot_lp .title__head .title02{
    font-size: 25px;
  }
  .title__head .title_strong{
    margin: 6px 0;
  }
  .title__bottom {
    padding: 5px 20px;
    text-align: center;
    opacity: 0.8;
    font-size: 12px;
  }
  .kokosei_lp .title__bottom{
    background-color: inherit;
    text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
                -1px 1px 0 #FFF, 1px -1px 0 #FFF,
                0px 1px 0 #FFF,  0-1px 0 #FFF,
                -1px 0 0 #FFF, 1px 0 0 #FFF;
  }
  .lp_yakin .title__main{
    margin-bottom: 1rem;
  }
  .lp_yakin .title__head .title01{
    font-size: 16px;
  }
  .lp_yakin .title__head .title02{
    font-size: 23px;
  }
  .lp_yakin .title__bottom{
    font-size: 12px;
  }
  .sec_title{
    font-size: 20px;
  }
  .sec__pref{
    background: var(--blue-color);
    padding: 2rem 0;
  }
  .others-terms .sec_title, .sec__popular .sec_title, .sec__keyword .sec_title, .sec__merit .sec_title{
    color: var(--blue-color);
  }
  .others-terms .sec_title span, .sec__pref .sec_title span, .sec__keyword .sec_title span, .sec__merit .sec_title span{
    color: #222;
  }
  .sec__pref .select-btn-wrap {
    padding: 0 10px 20px;
    display: flex;
    justify-content: space-between;
  }
  .sec__pref .select-btn-wrap li{
    width: calc(50% - 3px);
  }
  .sec__popular{
    background-color: var(--light-blue-color);
    margin: 0;
    padding: 2rem 0;
  }
  .sec__pref .sec_title{
    color: white;
  }
  .sec__popular .sec_title span{
    color: #222;
  }
  .popular_lists, .merit_lists, .article_box, .point_lists{
    flex-wrap: wrap;
  }
  .popular_lists{
    justify-content: space-between;
  }
  .popular_lists li, .type__lists li, .link__keyword li{
    width: calc((100% - 10px) /2);
  }
  .job-contents li{
    width: 100%;
  }
  .popular_lists li{
    border-color: #1860a4;
    margin-right: 0;
  }
  .link__keyword li{
    padding: 10px 0;
  }
  .link__keyword li a{
    padding-right: 10px;
    line-height: 47px;
  }
  .popular_lists li a{
    flex-direction: column;
    padding: 8px 10px;
  }
  .popular_lists li a:after{
    bottom: 8px;
  }
  .popular_lists li a img{
    padding: 0;
    width: 68px;
  }
  .popular_lists li a .link__text>span{
    color: #333;
    font-size: 14px;
  }
  .merit_lists li, .article_box .article_title, .article_box .article_contents, .point_lists li{
    width: 100%;
  }
  .merit_lists li, .point_lists li{
    margin-bottom: 42px;
  }
  .lp_yakin .popular_lists li a .link__text>span{
    font-size: 20px;
  }
  .article_text01, .article_text02{
    line-height: 1.5;
  }
  .article_title{
    border-radius: 7px 7px 0 0;
  }
  #modal_areaselect .modal-title{
    font-size: 15px;
  }
  .tanki_lp .modal-header{
    padding-top: 1.2rem;
    text-align: center;
  }
  .tanki_lp .modal-title{
    width: 100%;
    font-size: 16px;
  }
  .type__keyword li{
    padding: 4px;
  }
  .type__keyword li a{
    height: 42px;
    line-height: 40px;
  }
  .floating-banner{
    right: 0;
    bottom: 30px;
  }
  .floating-banner-inner{
    width: 110px;
  }
  .floating-banner .close{
    top: 0;
    left: 0;
    text-shadow:
           1px 1px 0px #fff, -1px -1px 0px #fff,
          -1px 1px 0px #fff,  1px -1px 0px #fff,
           1px 0px 0px #fff, -1px  0px 0px #fff,
           0px 1px 0px #fff,  0px -1px 0px #fff;
  }
  .others-terms .justify-content-center, .sec__keyword .justify-content-center{
    justify-content: space-between !important;
  }
  .sec__banner ul{
    flex-direction: column;
  }
  .sec__banner ul li{
    padding-bottom: 1rem;
  }
}

/* SP版 市区町村/駅選択リスト */
.sp-select-type-list {
  padding: 0;
}
.sp-select-type-list li {
  border-bottom: 1px solid #ddd;
}
.sp-select-type-list .accordion_link {
  display: flex;
  align-items: center;
  padding: 18px 15px;
  font-size: 16px;
  font-weight: bold;
  color: #333;
  background: #fff;
  cursor: pointer;
}
.sp-select-type-list .accordion_link:after {
  display: none;
}
.sp-select-type-list .accordion_link .icon {
  width: 28px;
  height: 28px;
  margin-right: 12px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.sp-select-type-list .accordion_link .icon.icon02 {
  background-image: url('/images/lp/icon-map.png');
}
.sp-select-type-list .accordion_link .icon.icon01 {
  background-image: url('/images/lp/icon-train.png');
}
.sp-select-type-list .accordion_link i {
  margin-left: auto;
  font-size: 20px;
  color: #999;
}