@charset "UTF-8";

.top-margin {
  margin-top: 40px !important;
}

.btm-margin {
  margin-bottom: 40px;
}

.col4s2 {
  margin-top: 20px;
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
}

.col4s2:after {
  content: '';
  width: 24%;
}

.col4s2:before {
  content: '';
  width: 24%;
  order: 1;
}

.col4s2 > li {
  width: 24%;
  margin-bottom: 30px;
}

.col4s2 img,.col4s2 video {
  width: 100%;
  display: block;
}

.col4s2 p {
  text-align: center;
  margin-top: 5px;
}

.cel-bgmc th{
  background-color: #007fb1!important;
  color: #fff;
}
.lower .tbl-type01.type02 th:nth-child(1) {
  background: #007fb1;
  color: #fff;
}
.lower .tbl-type01.type02 th.head2 {
  background: #dcdcdc;
  color: #535353;
}
.lower .txt-list01.txt-list-1col li{
  width: 100%;
}
.lower ul.nml-list{
  line-height: 1.6em;
  margin: 15px 0 20px;
}

h4.interview{
  font-size: 1.2em;
  position: relative;
  padding-left: 18px;
  margin: 15px 0 5px;
}
h4.interview::before{
  content: '';
  width: 12px;
  height: 12px;
  background: url(../img/interview/iv03/icon01.gif) center center / contain no-repeat;
  position: absolute;
  left: 0;
  bottom: 0;
}

dl.interview dt,
dl.interview dd{
  padding-left: 20px;
  position: relative;
  margin: 15px 0;
  line-height: 1.6em;
}

dl.interview dd{
  margin-bottom: 25px;
}

dl.interview dt::before{
  content: '';
  width: 16px;
  height: 16px;
  background: url(../img/interview/iv03/icon_q.gif) center center / contain no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}

dl.interview dd::before{
  content: '';
  width: 16px;
  height: 16px;
  background: url(../img/interview/iv03/icon_a.jpg) center center / contain no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}

.lower .top-margin0{
  margin: 0;
}

@media screen and (max-width: 900px) {
  .col4s2 > li {
    width: 48%;
    margin-bottom: 20px;
  }
}



/* ■■■ cases ■■■ */

.lower .tbl-type02 thead th {
    background: #007fb1 !important;
}
.lower .tbl-type01.td-center td {
    text-align: center;
}





/* ■■■ top ■■■ */

.home .bnr-list.flex.col2 .bnr-small{
  width: 48.5%;
  background-size: cover;
  background-position: right center;
}
.home .bnr-list.flex.col2 .bnr-small:nth-child(1){
  padding-top: 15px;
}
.home .bnr-list.flex.col2 .bnr-small:nth-of-type(2){
  padding-top: 25px;
  /* background: url(../img/top/bnr_img04.jpg) no-repeat right top / cover; */
}


@media screen and (max-width: 767px) {
	.home .bnr-list.flex.col2 .bnr-small{
  width: 100%;
  background-size: cover;
  background-position: right center;
}
}

/* ■■■ modal ■■■ */

.lower .modal-list {
  display: flex;
  flex-wrap: wrap;
  padding-top: 40px;
}

.lower .modal-list li{
  margin: 0 20px 0 0;
  line-height: 2.5em;
}

.lower .modal-list a{
  text-decoration: underline;
}

.lower .modal-list a:hover{
  text-decoration: none;
}



/* ■■■ sitemap ■■■ */

.sitemap-list p{
  text-align: left;
}

.sitemap-list p a{
  font-size: 18px;
  background: url(../img/ico_arw.png) no-repeat left 7px;
  padding-left: 18px;
}

.sitemap-list ul{
  padding: 10px 0 10px 20px;
  line-height: 1.8em;
}

.sitemap-list ul ul{
  padding-top: 3px;
}

.sitemap-list > li > ul > li::before{
  content: '・';
  user-select: none;
}

.sitemap-list a{
  text-decoration: underline;
}

.sitemap-list a:hover{
  text-decoration: none;
}








/* col3s1 */

.col3s1 {
  margin-top: 20px;
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
}

.col3s1:after {
  content: '';
  width: 30%;
}

.col3s1:before {
  content: '';
  width: 30%;
  order: 1;
}

.col3s1 > li {
  width: 30%;
  margin-bottom: 30px;
}





/* search */

.search article.entry {
    margin: 8px;
}
.search article.entry a {
    display: block;
    padding: 8px;
}
.search article.entry a:hover {
/*  background: #007fb1;
    color: #fff; */
}
.search article.entry span {
    font-weight: normal;
    font-size: 9px;
}
.search article.entry h2 {
    font-size: 18px;
    margin-top: 5px;
}
.search .contents .search-form {
    width: 260px;
    height: 35px;
    margin: 20px 0 60px 0;
    display: inline-block;
    position: relative;
}
.search .contents .search-form input[type="text"] {
    background: #e5e5e5;
    border: none;
    border-radius: 20px;
    color: #7d7d7d;
    line-height: 35px;
    width: 260px;
    height: 35px;
    padding: 0 20px 0 40px;
    outline: none;
}
.search .contents .search-form input[type="submit"] {
    background: transparent;
    border: none;
    color: #7d7d7d;
    font-family: FontAwesome;
    font-size: 16px;
    position: absolute;
    top: 10px;
    left: 15px;
    outline: none;
    cursor: pointer;
}
.search .contents .page-content {
    text-align: center;
}


/*BASE*/

.base-list li {
    font-size: 13px;
    line-height: 1.8;
    padding: 0 0 0 20px;
    position: relative;
	   font-weight: bold;
}
.base-list li::before {
    content: '';
    border-radius: 50%;
    background: #000000;
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    top: 5px;
    left: 0;
}

.waku-gray {
	margin: 2em 0;
	padding: 2em;
	border: 1px solid #CCCCCC;
}




/* 200317 */

.lower .nml-list a,
.lower .txt-list01 a{
  text-decoration: underline;
}

.lower .nml-list a:hover,
.lower .txt-list01 a:hover{
  text-decoration: none;
}



/* 200421 */

.box-list .img img{
  width: 100%;
}


/* 200709 */

.bnr-big, bnr-small {
    position: relative;
}
.blinking {
    position: relative;
    padding: 30px;
}
.bnr-big .blinking {
    margin-top: -37px;
    margin-left: -45px;
}
.bnr-small .blinking {
    margin-top: -25px;
    margin-left: -30px;
}
.blinking:before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 70px 70px 0 0;
    border-color: #9a0404 transparent transparent transparent;
}
.blinking:after {
    position: absolute;
    content: "NEW";
    transform: rotate(315deg);
    display: block;
    font-size: 18px;
    white-space: pre;
    color: #fff;
    top: 14px;
    left: 4px;
    text-align: center;
    z-index: 2;
    line-height: 1.2;
}
.bnr-small .blinking:before {
    border-width: 55px 55px 0 0;
}
.bnr-small .blinking:after {
    font-size: 16px;
    top: 12px;
    left: 2px;
}
/* 点滅 */
.blinking{
	position: absolute;
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}