/* ========home page style======== */

/* section eye-catch */
section.eye-catch {
	position: relative;
    padding: 0px 90px;
}

.scroll-down {
    position: absolute;
    bottom: 0;
    left: 45px;
    transform: translateX(-50%);
    padding-bottom: 110px;
}

.scroll-down > div.line {
    position: absolute;
    content: "";
    width: 2px;
    height: calc(158px / 2);
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #F00;
}

.scroll-down > div.line::before {
    position: absolute;
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #fff;
    top: 0;
    left: -1px;

    animation: dot-run 2s linear infinite ;
    -webkit-animation: dot-run 2s linear infinite ;
}

@keyframes dot-run {
    0% {
        top: 0;
    }
    100% {
        top: calc(100% - 2px);
    }
}

.scroll-down  span {
    transform: rotate(90deg);
    display: block;
    font-size: 13px;
    color: #F00;
    letter-spacing: 1px;
}

.wrap-eye-catch__link {
    background-color:#edeff2;
    padding: 25px 0;
}

.indexLink {
				margin: 0 90px;
}

.eye-catch__slide {
    flex: 1;
    width: 100%;
}

.eye-catch__slide .item {
    height: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.eye-catch__slide .item img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}

.eye-catch__slide .item h2 {
    font-size: 60px;
    text-align: center;
    padding: 20px;
    color: #fff;
    letter-spacing: 12.5px;
    transition: 0.2s;
}

.slideshowPc {
	display: block;
}

.slideshowSp {
	display: none;
}

.slideshowPc {
  display: none;
}
.slideshowPc.slick-initialized {
  display: block;
}


/*  end - section eye-catch */


/* ===== start - section topics===== */
.topics__top a {
    font-size: 15px;
    display: flex;
    align-items: center;
}

.topics__top a:hover img {
    transform: translateX(4px);
}

.topics__top a span {
    position: relative;
    padding: 4px 0px;
}

.topics__top a span::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0px;
    background-color: #000;
}

.topics__top a img {
    margin-left: 10px;
    max-width: 30px;
}

.topicsDetail .date {
text-align: right;
margin-bottom: 10px !important;
}

.nav__tabs {
    margin-top: 32px;
    margin-bottom: 25px;
}

.tab__item {
    padding: 15px 0px;
    border-bottom: 2px solid #dcdcdc;
    width: calc(100%/5 - 32px);
}

.tab__item.current {
    border-color: #F00;
    color: #F00;
}

.tab__item:not(:last-child) {
    margin-right: 40px;
}

.tab__item {
    font-size: 18px;
    font-weight: 500;
    display: block;
    text-align: center;
    white-space: nowrap;
				cursor: pointer;
}

.tab__item:hover {
    border-color: #F00;
    color: #000;
}

.tab__content-item.nodisplay {
    display: none;
}

.topic__news li {
    border-bottom: 1px solid #dcdcdc;
}

.topic__news li .date {
    font-size: 15px;
				margin-right: 30px;
				font-family: 'Oswald', sans-serif;
				letter-spacing: 0.01em;
				font-weight: 500;
}

.topic__news li a.cat {
    font-size: 14px;
    color: #fff;
    background-color: #174f9f;
    padding: 7px 20px;
    display: block;
}

.topic__news li a {
    padding: 25px 16px;
    font-size: 16px;
				display: block;
				text-decoration: none !important;
				color: #000 !important;
}

.topic__news li a:hover {
	background-color: #F2F7FD;
	opacity: 1;
}

.nav__tabs .link {
 font-size: 18px;
 font-weight: 500;
 display: block;
 text-align: center;
 white-space: nowrap;
 width: calc(100%/5 - 32px);
}

.nav__tabs .link a {
	display: block !important;
 padding: 10px 0px;
 border-bottom: 2px solid #dcdcdc;
}

.nav__tabs .link a:hover {
 border-bottom: 2px solid #F00;
}


/* ===== end - section topics===== */

/* ==========section pick-up========== */
section.pick-up {
    background-color: #edeff2;
    overflow: hidden;
}

.pick-up__list {
    margin-top: 35px;
}

.pick-up__list.swiper {
    padding-bottom: 65px;
    overflow: unset;
				width: 1000px;
}

.pick-up__list.swiper .swiper-pagination-bullet-active {
    background-color: #172666;
}

.pick-up__list.swiper .swiper-pagination-bullet {
    margin: 0px 6px !important;
}

.pick-up__item img {
    object-fit: cover;
    width: 100%;
    height: 225px;
    display: block;
    transition: 0.2s;
}

.pick-up__item p {
    font-size: 16px;
    margin-top: 20px;
}

.wrap-navigation-swiper {
    width: 100%;
    left: 0;
    position: absolute;
    top: -65px;
}

.wrap-navigation-swiper .container {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    align-items: center;
    gap: 7.5px;
}

.wrap-navigation-swiper .swiper-button-next, 
.wrap-navigation-swiper .swiper-button-prev {
    width: 50px;
    height: 50px;
    border: 1px solid #174f9f;
    border-radius: 50%;
    transition: 0.2s;
    position: static;
}

.wrap-navigation-swiper .swiper-button-next:hover, 
.wrap-navigation-swiper .swiper-button-prev:hover {
    background-color: #174f9f;;
}

.wrap-navigation-swiper .swiper-button-next:hover::after, 
.wrap-navigation-swiper .swiper-button-prev:hover::after {
    color: #fff;
}

.wrap-navigation-swiper .swiper-button-next::after, 
.wrap-navigation-swiper .swiper-button-prev::after  {
    font-size: 14px;
    font-weight: 700;
    color: #174f9f;
    transition: 0.2s;
}

/* ==========section pick-up========== */

/* =======start - section product======= */
section.product {
    width: 100%;
    background-color: #F3F2F1;
    padding-bottom: 100px;
}

.product__top {
    width: 100%;
    padding: 110px 0px 122px;
    transition: 0.2s;

    background-image: url(../image/product-bg-img-01.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.product__list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin-top: -63px;
    margin-bottom: 35px;
}

.product__item {
    width: calc(100%/3);
    color: #fff;
				background-color: #FFF;
}

.product__item .thumb {
    position: relative;
    overflow: hidden;
}

.icon__link {
    position: absolute;
    width: 50px;
    height: 50px;
    background-color: #F00;
    bottom: 0;
    left: 0;

    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s;
}

.icon__link img {
    max-width: 9px;
}

.product__item .thumb:hover .icon__link {
    background-color: #000;
}

.product__item .thumb a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s;
}

.product__item .thumb:hover a {
    opacity: 1;
}

.product__item .thumb:hover a img {
    transform: scale(1.1);
}

.product__item .desc {
    padding: 25px 15px 38px;
				color: #000;
}

.product__item h3 {
    margin-bottom: 15px;
}

.product__item h3 a {
    display: block;
    font-size: 22px;
    font-weight: 500;
}

.product__item p {
    font-size: 14.5px;
    line-height: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* =======end - section product======= */

/* =========company - link========= */
.company__inner {
    align-items: stretch;
}

.company__inner .item {
    width: calc(100%/2 - 22.5px);
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 100px 30px;
}

.company__inner .item  a {
    display: block;
}

.company__inner .item:hover {
    opacity: 1;
}

.company__inner .item:hover .icon__link {
    background-color: #000;
}

.company__inner .item:hover .inner__box {
    background-color: #F00;
    color: #fff;
}

.company__inner .item.company {
    background-image: url(../image/company-bg-01.jpg);
}

.company__inner .item.recruit {
    background-image: url(../image/company-bg-02.jpg);
}

.company__inner .item .inner__box {
    padding: 19px 40px;
    min-width: 213px;
    background-color: #fff;
    transition: 0.2s;
}

.company__inner .item .inner__box h4 {
    font-size: 22px;
    text-align: center;
}

.company__inner .item .inner__box h4 span {
    font-size: 13px;
    text-transform: uppercase;
    display: block;
    padding-bottom: 4px;
}
/* =========end company - link========= */


/* =======start responsive for home page======= */
@media only  screen and (max-width: 1200px) {
    .wrap-eye-catch__link {
        padding: 20px;
								margin: 0;
    }
    .wrap-box__link {
        flex-wrap: wrap;
        gap: 20px;
    }
				.pick-up__list.swiper {
					width: 90%;
					overflow: hidden;
				}


}

@media only  screen and (max-width: 1024px) {
    section.eye-catch {
        padding: 0px;
    }
    .eye-catch__slide .item h2 {
        font-size: 48px;
        letter-spacing: 5px;
    }
    .company__inner .item {
        padding: 80px 30px;
    }
				.eye-catch__slide .item img {
					width: auto;
					height: auto;
				}


.slideshowPc {
	display: none !important;
}

.slideshowSp {
	display: block;
}

.slideshowSp {
  display: none;
}
.slideshowSp.slick-initialized {
  display: block;
}


}

@media only  screen and (max-width: 768px) {
    section.eye-catch {
        padding: 0px;
    }
    .eye-catch__slide .item h2 {
        font-size: 32px;
        letter-spacing: 4px;
    }
    .company__inner {
        flex-wrap: wrap;
        gap: 40px;
    }
    .company__inner .item  {
        width: 100%;
        padding: 70px 20px;
    }
    .company__inner .item .inner__box {
        padding: 16px;
    }
    .company__inner .item .inner__box h4 {
        font-size: 18px;
    }
    .nav__tabs {
        overflow-x: auto;
        /*justify-content: space-between;*/
        padding-bottom: 6px;
    }
    .nav__tabs::-webkit-scrollbar-thumb {
        background-color: #ccc;
        border-radius: 6px;
    }
    .nav__tabs::-webkit-scrollbar {
        height: 6px;
        background-color: #eeeeee;
        border-radius: 6px;
    }
    .tab__item {
        width: fit-content;
        padding: 10px 16px;
    }
    .tab__item:not(:last-child) {
        margin-right: 20px;
    }
    .topic__news li a.cat {
        display: none;
    }
    .topic__news li {
        align-items: flex-start;
    }
    .icon__link {
        width: 40px;
        height: 40px;
    }
    .icon__link img {
        max-width: 7px;
    } 
    .product__list {
        justify-content: space-between;
    }
    .product__item {
        width: calc(100%/2 - 7.5px);
    }
    .product__item .desc {
        padding: 15px 10px 30px;
    }
    .product__item h3 a {
        font-size: 18px;
    }
    .product__top {
        padding: 90px 0px 112px;
    }
    .pick-up__list.swiper {
        padding-bottom: 45px;
								width: 90%;
								overflow: hidden;
    }
    .wrap-navigation-swiper .swiper-button-next, 
    .wrap-navigation-swiper .swiper-button-prev {
        width: 40px;
        height: 40px;
    }
    .wrap-navigation-swiper .swiper-button-next::after, 
    .wrap-navigation-swiper .swiper-button-prev::after  {
        font-size: 10px;
        font-weight: 700;
    }
    .wrap-navigation-swiper {
        top: -50px;
    }

}

@media only screen and (max-width: 479px){
    .wrap-box__link  li {
        width: 100%;
    }
    .wrap-box__link li a {
        width: 100%;
        min-width: unset;
        margin: 0px;
        justify-content: flex-start;
        padding-left: 30px;
        font-size: 16px;
        padding-top: 16px;
        padding-bottom: 16px;
    }
    .topics__top {
        flex-wrap: wrap;
    }
    .topics__top a {
        margin-top: 16px;
    }
    .product__item {
        width: 100%;
    }
    .pick-up__list.swiper {
        padding-left: 20px;
    }
    .wrap-navigation-swiper .swiper-button-next, 
    .wrap-navigation-swiper .swiper-button-prev {
        width: 28px;
        height: 28px;
    }
    .wrap-navigation-swiper .swiper-button-next::after, 
    .wrap-navigation-swiper .swiper-button-prev::after  {
        font-size: 8px;
    }
    .wrap-navigation-swiper {
        top: -38px;
    }
    .pick-up__item p {
        font-size: 14px;
        margin-top: 10px;
    }
}
/* =======end responsive for home page======= */


/* ============style tech page============ */

.eye-catch-page.tech {
    background-image: url(../image/tech-img-01.jpg);
}

.wrap-page__tech > p {
    font-size: 16px;
    margin-bottom: 35px;
    line-height: 1.7;
}

.wrap-page__tech > ul {
    margin-bottom: 35px;
}

.wrap-page__tech > ul > li {
    font-size: 17px;
    line-height: 1.6;
    margin-bottom: 8px;
    display: flex;
    align-items: flex-start;
}

.wrap-page__tech > ul > li span {
    font-size: 22px;
    padding-right: 10px;
    line-height: 1.1;
}

.wrap__table .title {
    font-size: 26px;
    font-weight: 500;
    color: #174f9f;
    display: flex;
    align-items: flex-start;
    padding-bottom: 16px;
    border-bottom: 2px solid #174f9f;
    margin-bottom: 25px;
}

.wrap__table .title  span {
    font-size: 15px;
    font-weight: 400;
    padding-left: 4px;
    padding-top: 8px;
}

.wrap__table p {
    font-size: 16px;
    margin-bottom: 18px;
}

.tech__table {
    width: 100%;
    border: 1px solid #bfbfbf;
}

.tech__table th, .tech__table td {
    border: 1px solid #bfbfbf;
    font-size: 15px;
    line-height: 25px;
    padding: 12px 30px;
    font-weight: 400;
}

.tech__table th {
    white-space: nowrap;
}

.tech__table-ct th,
.tech__table-ct td {
    padding: 12px 20px;
}

.tech__table thead th {
    text-align: center;
    background-color: #e1e1e1;
    padding: 15px 30px;
}

.tech__table tbody th {
    background-color: #f5f5f5;
    text-align: left;
}

.tech__table-evalu tbody th {
    text-align: center;
    width: 121px;
}

.tech__table tbody a {
    display: flex;
    align-items: center;
    color: #174f9f;
}

.tech__table tbody th a + a {
    margin-top: 8px;
}

.tech__table tbody  a img {
    max-width: 7px;
    margin-left: 10px;
    margin-top: 2px;
}

.tech__table tbody a:hover img {
    transform: translateX(2px)
}

.wrap__table:nth-child(2n + 1) {
    margin-top: 48px;
}

.evaluation {
    position: relative;
    margin-top: 105px;
    padding-top: 105px;
}

.evaluation::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    left: 0%;
    background-color: #bfbfbf;
    top: 0;
}

.evaluation__inner {
    margin-top: 38px;
}

.evaluation__inner > p {
    font-size: 16px;
    margin-bottom: 35px;
    line-height: 1.7;
}

.evaluation__item {
    margin-bottom: 30px;
}

.evaluation__item .title {
    font-size: 20px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
}

.evaluation__item .title span {
    font-size: 40px;
    padding-bottom: 4px;
    padding-right: 10px;
}

.evaluation__content {
    align-items: flex-start;
}

.evaluation__content .tech__table {
    width: 650px;
}

.evaluation__content .thumb {
    flex: 1;
    margin-left: 5%;
    /*background-color: #e1e1e1;*/
    transition: 0.2s;
}

.evaluation__content .thumb img {
    /*height: 240px;
    object-fit: cover;*/
				display: block !important;
				margin: 0 auto;
}

.wrap__table {
    overflow-x: auto;
}

/* responsive for page tech */
@media only screen and (max-width: 1024px) {
    .evaluation {
        margin-top: 70px;
        padding-top: 70px;
    }
    .evaluation__content {
        flex-wrap: wrap;
    }
    .evaluation__content .thumb {
        flex: auto;
        margin-left: 0px;
        margin-top: 30px;
        width: 100%;
        max-width: 300px;
    }
    .evaluation__item:last-child{
        margin-bottom: 0px;
    }
}
@media only screen and (max-width: 768px) {
    .wrap__table .title {
        font-size: 20px;
        flex-wrap: wrap;
    }
    .wrap__table .title span {
        font-size: 13px;
        padding-top: 6px;
    }
    .tech__table thead th,
    .tech__table th, .tech__table td {
        padding: 10px 16px;
    }
    .tech__table th, .tech__table td {
        font-size: 14px;
        line-height: 24px;
    }
    .tech__table-evalu tbody th {
        width: 100px;
    }
    .evaluation__content .tech__table {
        width: 100%;
    }
    .tech__table {
        width: 710px;
    }
}

@media only screen and (max-width: 479px) {
    .evaluation__content .thumb  {
        max-width: 100%;
    }
}
/* responsive for page tech */


/*topics*/
.eye-catch-page.topics {
    background-image: url(../image/topics-01.png);
}

.topicsWrap {
	display: flex;
	justify-content: space-between;
}

.topicsWrap .c1 {
	width: 70%;
}

#second .topicsWrap .c1 ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#second .topicsWrap .c1 ul li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.topicsWrap .c2 {
	width: 20%;
}

.topicsWrap .c2 h2 {
	text-align: left;
	font-size: 26px;
}

#second .topicsWrap .c2 ul {
	margin: 10px 0 0;
	list-style: none;
}

#second .topicsWrap .c2 ul li {
	border-bottom: 1px dashed #CCC;
	list-style: none;
	margin: 0 !important;
}

.topicsWrap .c2 ul li a {
	display: block;
	padding: 10px 10px 10px 26px;
	position: relative;
	text-decoration: none !important;
	color: #000 !important;
}

.topicsWrap .c2 ul li a:before {
	position: absolute;
	content: "";
	top: 19px;
	left: 10px;
	background-image: url(../image/angle-right-icon.png);
	background-size: 6px;
	width: 6px;
	height: 10px;
}

.topicsDetail {
	padding: 0 0 40px;
}

.topicsDetail h2 {
 font-family: 'Noto Sans JP', sans-serif;
	text-align: left;
	font-size: 24px;
	letter-spacing: 0;
	margin: 0 0 20px;
	padding: 8px;
	position: relative;
	border-bottom: 4px solid #CCC;
}

.topicsDetail h2:before {
	position: absolute;
	bottom: -4px;
	left: 0;
	width: 120px;
	height: 4px;
	background-color: #174f9f;
	content: "";
}




@media only screen and (max-width: 768px) {

.topicsWrap {
	display: block;
}

.topicsWrap .c1 {
	width: 100%;
}

.topicsWrap .c2 {
	width: 100%;
	margin: 40px 0 0;
}

.topicsWrap .c2 ul li {
	margin: 0 !important;
}

.topicsWrap .c2 ul li a {
	padding: 14px 14px 14px 26px !important;
}

.topicsWrap .c2 ul li a:before {
	top: 20px;
}

.topic__news li .date {
	display: block;
}


}



/*joint*/
.eye-catch-page.joint {
    background-image: url(../image/joint-01.png);
}

#second.joint h2 {
 font-family: 'Noto Sans JP', sans-serif;
	text-align: left;
	font-size: 20px;
	position: relative;
	margin: 0 0 20px !important;
	background-color: #EEE;
	letter-spacing: 0;
	padding: 4px 20px;
}

#second.joint h2:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
  top: 0;
  border-style: solid;
  border-color: transparent transparent transparent #00B4ED;
  border-width: 0 0 10px 20px;
}

#second ul.jointCat {
	width: 800px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
}

#second ul.jointCat li {
	list-style: none;
	margin: 0;
	padding: 0;
}

#second ul.jointCat li a {
	display: block;
	text-align: center;
	text-decoration: none;
	width: 240px;
	padding: 20px 10px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	font-weight: 500;
	border: 2px solid #174f9f;
	border-radius: 10px;
	opacity: 1;
}

#second ul.jointCat li a img {
	margin: 0 auto 10px;
	width: 45px;
}

#second ul.jointCat li a:hover {
	background-color: #E4ECF5;
}

.jCat {
	font-size: 20px;
	background:linear-gradient(to right, #FF0000 20%, #FFCCCC);
	padding: 8px;
	color: #FFF;
	letter-spacing: 0.1em;
	font-weight: 500;
	margin: 0 0 20px !important;
}

.jointList {
	margin: 0 0 80px;
	display: flex;
	flex-wrap: wrap;
}

.jointList .item {
	width: calc( 100% / 4 - 2%);
	margin: 0 1% 30px;
	border: 1px solid #CCC;
	padding: 10px 10px 20px;
	font-feature-settings: "palt";
	display: flex;
	flex-direction: column;
}

#second .jointList .item h3 {
	font-size: 18px;
	line-height: 1.2;
	color: #000;
	background-color: transparent;
	padding: 0;
	margin: 0 0 16px;
}

#second .jointList .item h3:before {
	display: none;
}

#second .jointList .item h3 span {
	display: block;
	font-size: 14px;
	font-weight: 400;
	color: #888;
	margin-top: 4px;
}

#second .jointList .item .toDetail {
	margin-top: auto;
}

#second .jointList .item .toDetail a {
	display: block;
	width: 80%;
	margin: 0 auto;
	font-size: 14px;
	color: #FFF;
	text-decoration: none;
	text-align: center;
	background-color: #0085B2;
	padding: 4px 0;
	position: relative;
	opacity: 1;
	border: 2px solid #0085B2;
}

#second .jointList .item .toDetail a:hover {
	background-color: #FFF;
	color: #0085B2;
}

#second .jointList .item .toDetail a:hover::after {
 right: 10px;
 background: url(../image/angle-right-lblue-icon.png);
 background-position: center;
 background-repeat: no-repeat;
 background-size: contain;
}

#second .jointList .item .toDetail a::after {
 position: absolute;
 content: "";
 background-image: url(../image/angle-right-white-icon.png);
 background-position: center;
 background-repeat: no-repeat;
 background-size: contain;
 width: 10px;
 height: 10px;
 top: 50%;
 transform: translateY(-50%);
 right: 15px;
 transition: 0.2s;
}

#second .jointList .item p {
	font-size: 14px;
}

#second.joint .itemDetail h2 {
	margin: 0;
	padding: 0;
	text-align: center;
	background-color: transparent;
	font-size: 32px;
	letter-spacing: 0.1em;
	font-weight: 500;
	
}

#second.joint .itemDetail h2:before {
	display: none;
}

#second.joint .itemDetail h2 span:before{
	-moz-transform: skewX(-10deg);
	-webkit-transform: skewX(-10deg);
	transform: skewX(-10deg);
	background: #0085B2;
	z-index: -1;
	content:"";
	position:absolute;
	top:0px;
	left:-10px;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
}

#second.joint .itemDetail h2 span:after{
	-moz-transform: skewX(-10deg);
	-webkit-transform: skewX(-10deg);
	transform: skewX(-10deg);
	background: #0085B2;
	z-index: -1;
	content:"";
	position:absolute;
	top:0px;
	right:-10px;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
}

#second.joint .itemDetail h2 span {
	position: relative;
	display: inline-block;
	width: auto;
	background-color: #0085B2;
	text-align: left;
	color: #FFF;
	padding: 4px 16px;
	font-size: 14px;
	letter-spacing: 0;
}

.itemInfo {
	display: flex;
	justify-content: space-between;
	margin: 0 0 30px;
}

.itemInfo .text {
	width: 550px;
}

#second .itemInfo .text dt {
	margin: 0 0 4px;
	font-weight: 500;
	border-bottom: 1px dotted #000;
}

#second .itemInfo .text dd {
	margin: 0 0 24px;
	font-size: 15px;
}

#second .itemInfo .text p {
	margin: 0;
}

#second .itemInfo .text table th {
	text-align: left;
	font-weight: 500;
	vertical-align: top;
	padding: 8px 12px;
	background-color: #EEE;
	border-bottom: 1px solid #CCC;
	width: 60px;
	white-space: nowrap;
}

#second .itemInfo .text table.hani,
#second .hanni table {
	width: 100%;
}

#second .itemInfo .text table.hani th,
#second .hanni table th {
	text-align: left;
	font-weight: 400;
	vertical-align: top;
	padding: 8px 12px;
	background-color: #EEE;
	border-bottom: 1px solid #CCC;
	width: 60px;
	white-space: nowrap;
}

#second .itemInfo .text table.hani td,
#second .hanni table td {
	border-bottom: 1px solid #CCC;
	padding: 8px 12px;
}

#second .free table {
	width: 100%;
}

#second .free table th {
	border: 1px solid #CCC;
	padding: 8px 12px;
	width: auto;
	font-weight: 400;
	background-color: #EEE;
}

#second .free table td {
	border: 1px solid #CCC;
	padding: 8px 12px;
}

#second .free table td:nth-of-type(2),
#second .free table td:nth-of-type(3) {
	text-align: center;
}


.itemInfo .photo {
	width: 400px;
}

.itemInfo .photo img {
	max-width: 100%;
	height: auto;
}

.itemLead {
	background-color: #DBF7FF;
	margin: 0;
	padding: 20px;
}

#second .itemLead p {
	margin: 0 0 20px;
}

#second .itemLead p:last-of-type {
	margin: 0;
}

#second .itemLead ul li {
	margin-bottom: 10px;
}

#second .itemLead ul {
	margin: 0 30px 30px;
}

#second .itemLead ul li:last-of-type {
	margin-bottom: 0;
}

#second .itemLead ul:last-of-type {
	margin: 0 30px;
}

#second .itemLead ul + p {
	margin-top: 20px !important;
}

/*profile*/
.eye-catch-page.profile {
    background-image: url(../image/profile-01.jpg);
}

.sig {
	text-align: right;
}

.wrap-content__page h2.pr,
.wrap-content__page h2.pr > span {
width: 1040px;
margin-left: auto;
margin-right: auto;
text-align: left;
}

/*outline*/
.outlineTb {
	width: 100%;
	margin: 0 auto 80px;
	border-collapse: separate;
	border-spacing: 1px;
}

.outlineTb tr:hover {
	background-color: #F3F2F1;
}

.outlineTb th {
	width: 15%;
	font-weight: 400;
	padding: 20px 12px;
	position: relative;
	color: #FFF;
	background-color: #174f9f;
}

/*.outlineTb th:after {
	position: absolute;
	content: "";
	background-color: #174f9f;
	width: 2px;
	height: 20px;
	top: calc( 50% - 10px);
	right: 20px;
}*/

.outlineTb td {
	padding: 20px 12px;
}

.locationWrap {
	max-width: 1040px;
	margin: 0 auto;
}

.locationBox {
    display: flex;
	margin: 0 2% 60px;
	padding: 20px;
	box-shadow: 0 0 6px #CCC;
	background-color: #FFF;
	justify-content: space-between;
}

.locationBox div:nth-child(1) {
    width: 300px;
    position: relative;
	background-color: #174f9f;
}

.locationBox div:nth-child(2) {
    width: calc( 100% - 340px);
}

#second .locationBox h3 {
    width: 100%;
	margin: 0;
	font-size: 20px;
	text-align: center;
	color: #FFF;
	background-color: transparent;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.locationBox div:nth-child(1):before {
 position: absolute;
 content: "";
 bottom: 0;
 right: 0;
 border-top: 20px solid transparent;
 border-right: 20px solid #FFF;
}

#second .locationBox h3:before {
	display: none;
}

#second .locationBox p {
	margin-bottom: 10px;
}

#second .locationBox dl {
	display: flex;
	flex-wrap: wrap;
}

#second .locationBox dl dt {
	width: 18%;
	border-bottom: 1px dotted #CCC;
	padding: 4px;
}

#second .locationBox dl dd {
	width: 30%;
	border-bottom: 1px dotted #CCC;
	padding: 4px;
	margin-right: 2%;
}

.mapBtn a {
	display: block;
	margin: 20px auto 0 0;
	width: 48%;
	border: 2px solid #174f9f;
	border-radius: 100vh;
	padding: 4px 30px;
	opacity: 1;
	text-decoration: none !important;
	background: url(../image/icon_map.png) no-repeat 90% center;
	background-size: 20px;
}

.mapBtn a:hover {
	background: url(../image/icon_map.png) #F2F7FD no-repeat 90% center;
	background-size: 20px;
}

#second .groupCom h3 {
	margin-bottom: 10px;
	background-color: transparent;
	color: #000;
	padding: 0;
}

#second .groupCom h3 img {
	vertical-align: middle;
	margin-right: 12px;
}

#second .groupCom h3:before {
	width: 80%;
	top: unset;
	bottom: -10px;
}

#second .groupCom table {
	width: 100%;
	margin: 0 0 60px;
	border-collapse: separate;
	border-spacing: 1px;
}

#second .groupCom table th {
	background-color: #F2F7FD;
	padding: 16px;
	width: 100px;
	font-weight: normal;
	text-align: left;
}

#second .groupCom table td {
	padding: 16px;
	border-bottom: 1px dotted #CCC;
}


/*policy*/
#second ol.policyOl {
	margin: 0 20px;
	padding: 30px 50px 10px 60px;
	border: 4px solid #F2F7FD;
	position: relative;
}

#second ol.policyOl:before {
	position: absolute;
	content: "";
	width: 32px;
	height: 32px;
	top: -4px;
	left: -4px;
	border-top: 4px solid #174f9f;
	border-left: 4px solid #174f9f;
}

#second ol.policyOl:after {
	position: absolute;
	content: "";
	width: 32px;
	height: 32px;
	bottom: -4px;
	right: -4px;
	border-bottom: 4px solid #174f9f;
	border-right: 4px solid #174f9f;
}

.keieiRinen {
	font-family: 'Zen Old Mincho', serif;
	font-size: 24px;
	text-align: center;
	margin: 80px 0;
}

.groupRinen {
    display: flex;
    flex-wrap: wrap;
}

.groupRinen div:nth-child(1) {
    border-right: 1px solid #C8C2C1;
}

.groupRinen div:nth-child(3) {
    border-top: 1px solid #C8C2C1;
}

.groupRinen img {
    display: block !important;
}



/*environment*/
.envHani {
	margin: 0 0 80px;
}

.envHani dt {
	display: block;
	width: 120px;
	text-align: center;
	background-color: #169E21;
	color: #FFF;
	font-weight: 500;
	border-radius: 100vh;
	font-size: 18px;
}

.envHani dd {
	margin: -14px 0 0 40px;
	border: 2px solid #169E21;
	padding: 24px 20px 20px;
}

/*history*/
#second .timeline {
	width: 90%;
	margin: 0 auto;
}

#second .timeline li {
	margin: 0;
}

#second .timeline li p {
	margin-bottom: 50px;
}

.timeline > li {
  overflow: hidden;
  margin: 0;
  position: relative;
}

#second .timeline li p.timeline-date {
  width: 110px;
  float: left;
		font-family: 'Oswald', sans-serif;
		font-size: 26px;
		margin: -2px 0 0;
}

.timeline-date span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	margin-left: 4px;
}

.timeline-content {
  width: calc( 100% - 110px);
  float: left;
  border-left: 3px #e5e5d1 solid;
		padding-top: 4px;
  padding-left: 40px;
		position: relative;
}

.timeline-content img {
	vertical-align: -3px;
	margin-right: 2px;
}

.timeline-content:before {
  content: '';
  width: 13px;
  height: 13px;
  background: #699CE9;
  position: absolute;
  left: -8px;
  top: 12px;
  border-radius: 100%;
}

.timeline-content:after {
	position: absolute;
	bottom: 23px;
	left: 30px;
	width: 100%;
	height: 1px;
	border-bottom: 1px dotted #CCC;
	content: "";
}

/*factory*/
.factoryLead {
	font-family: 'Zen Old Mincho', serif;
	font-size: 26px;
	margin: 0 0 10px !important;
	letter-spacing: 0.04em;
	font-weight: 500;
}

.factoryStep {
	display: flex;
	justify-content: space-between;
	position: relative;
	border-bottom: 1px dashed #CCC;
	margin: 0 40px 40px;
	padding: 20px 0 0;
}

.factoryStep:before {
	position: absolute;
	bottom: -40px;
	left: 20px;
	width: 20px;
	height: 100%;
	background-color: #FEE;
	content: "";
	z-index: -1;
}

.factoryStep:last-child:before {
	background-color: transparent;
}

.factoryStep .text {
	display: flex;
	flex-wrap: wrap;
	width: 70%;
	background-color: #FFF;
}

.factoryStep .photo {
	width: 26%;
}

#second .factoryStep .text h3 {
	padding: 0;
	margin: 0 30px 0 30px;
	background-color: transparent;
	color: #F00;
}

#second .factoryStep .text h3:before {
	background-color: transparent;
}
	
.factoryStep .text .inner {
	flex-direction: column;
}

.factoryStep .num {
	position: relative;
	font-size: 40px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	color: #F00;
	line-height: 1;
	margin: 0 0 10px;
}

.factoryStep .num:after {
	position: absolute;
	content: "";
	background-color: #F00;
	width: 2px;
	height: 30px;
	transform: skewX(-30deg);
	top: 4px;
	left: 56px;
}

@media only screen and (max-width: 768px) {
.factoryStep {
	display: block;
	margin: 0 0 40px;
}

.factoryStep:before {
	background-color: transparent;
}

.factoryStep .text {
	width: 100%;
}

.factoryStep .text p {
	margin: 0 0 10px !important;
}

.factoryStep .image img {
	display: block !important;
	margin: 0 auto 20px;
}



}




/*recruit*/
.eye-catch-page.recruit {
    background-image: url(../image/recruit-01.png);
}

.voiceWrap {
	position:relative;
	background: url(../image/back-01.png) repeat 0 0;
	margin: 0 0 40px;
	border-bottom: 1px dashed #CCC;
	border-top: 1px dashed #CCC;
}

.voiceWrap:before {
	position: absolute;
	transform: rotate(-45deg);
	top: 0;
	left: -10px;
	width: 40px;
	height: 2px;
	background-color: #F00;
	content: "";
}

.voiceWrap .inner {
	width: 100%;
	padding: 40px 40px 1px;
}

.voiceWrap .inner .info {
	display: flex;
	align-items: center;
	margin: 0 0 20px;
}

.voiceWrap .inner .info .sei {
	width: 100px;
}

.voiceWrap .inner .info .sei img {
	width: 80px;
}

#second .voiceWrap .inner .info .personal h3 {
	font-size: 20px;
	background-color: #FF0000;
	color: #FFF;
	padding: 0 8px;
	margin: 0 0 4px;
	line-height: 1.4;
	display: inline-block;
}

#second .voiceWrap .inner .info .personal h3:before {
	display: none;
}

#second .voiceWrap .inner .info .personal p {
	margin: 0;
}

#second .voiceWrap .inner .sec1 {
	border: 4px solid #EEE;
	padding: 20px 10px 20px;
	margin: 0 0 40px;
	position: relative;
}

#second .voiceWrap .inner .sec1:before {
	position: absolute;
	top: -80px;
	right: 0;
	content: "VOICE";
	color: #EEE;
	font-family: "Arial Black", Gadget, sans-serif;
	font-size: 70px;
}

#second .voiceWrap .inner .sec1 h4 {
	margin: 0 0 10px -30px;
	background-color: #FFF;
	font-weight: 500;
	font-size: 18px;
	padding: 4px 4px 4px 8px;
	border-left: 4px solid #FF0000;
	box-shadow: 3px 3px 3px #DDD;
}

#second .voiceWrap .inner .sec1 dt {
	color: #FF0000;
	font-weight: 500;
	font-size: 18px;
}

#second .voiceWrap .inner .sec1 dd {
	margin-bottom: 20px;
	padding: 0 20px;
}

#second .voiceWrap .inner .sec1 p {
	margin: 0;
	padding: 0 20px;
}

#second .voiceWrap .inner .sec2 h4 {
	font-size: 19px;
	font-weight: 500;
	margin: 0 0 10px;
	color: #FF0000;
}

#second .voiceWrap .inner .sec2 h4 img {
	width: 30px;
	height: auto;
	vertical-align: -10px;
	margin-right: 6px;
}

#second .voiceWrap .inner .sec2 dl {
	margin-bottom: 30px;
}

#second .voiceWrap .inner .sec2 dt {
	background-color: #FFF2F2;
	font-weight: 500;
	padding: 4px;
}

#second .voiceWrap .inner .sec2 dd {
	margin-bottom: 10px;
	padding: 4px;
}

.recLink {
display: flex;
align-items: center;
}

.recLink div {
width: 50%;
}

.recLink div:nth-child(1) {
padding-right: 30px;
text-align: right;
}

.recLink div:nth-child(2) {
padding-left: 30px;
}

.recLink div:nth-child(2) img {
width: 70%;
}


@media only screen and (max-width: 768px) {

.voiceWrap .inner {
	width: 100%;
	padding: 40px 0 1px;
}

.voiceWrap .inner .info {
	align-items: start;
}

.voiceWrap .inner .info .sei {
	width: 50px;
}

.voiceWrap .inner .info .sei img {
	width: 40px;
}

#second .voiceWrap .inner .info .personal h3 {
	font-size: 16px;
}

#second .voiceWrap .inner .sec1:before {
	display: none;
}

#second .voiceWrap .inner .info .personal {
	margin: 4px 0 0;
	font-size: 14px;
}

#second .voiceWrap .inner .sec1 h4 {
	font-size: 16px;
	line-height: 1.4;
}

#second .voiceWrap .inner .sec1,
#second .voiceWrap .inner .sec2 {
	font-size: 14px;
}

#second .voiceWrap .inner .sec1 dd {
	padding: 0;
}

#second .voiceWrap .inner .sec1 p {
	padding: 0;
}

#second .voiceWrap .inner .sec1 dt {
	line-height: 1.4;
	margin-bottom: 6px;
}

.recLink {
display: block;
}

.recLink div {
width: 100%;
}

.recLink div:nth-child(1) {
padding-right: 0;
margin-bottom: 30px;
text-align: center;
}

.recLink div:nth-child(2) {
padding-left: 0;
text-align: center;
}

}


/*catalog*/
.eye-catch-page.catalog,
.eye-catch-page.cad {
    background-image: url(../image/catalog-01.jpg);
}

.catalogList {
	margin: 0 30px 30px;
	display: flex;
	flex-wrap: wrap;
}

.catalogList div {
	width: 205px;
	margin: 0 15px 30px;
}

#second .catalogList div ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#second .catalogList div ul li {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
}

#second .catalogList div ul li img {
	max-width: 100%;
	height: auto;
	border: 1px solid #CCC;
}

#second .catalogList.mgb {
	margin-bottom: 60px;
}

/*zumen*/
#second ul.zumenHyoushi {
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
	justify-content: center;
}

#second ul.zumenHyoushi li {
	margin: 0 40px;
	padding: 0;
	list-style: none;
	width: 30%;
	text-align: center;
	border: 1px solid #CCC;
	box-shadow: 3px 3px 0 #EEE;
}

#second ul.zumenHyoushi li a {
	display: block;
	font-weight: 500;
	padding: 16px 10px;
	text-decoration: none;
}

#second ul.zumenHyoushi li a:hover {
	opacity: 1;
	background-color: #F2F7FD;
}

#second .zumenList {
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
	flex-wrap:wrap;
	font-size: 15px;
}

#second .zumenList li {
	width: 32%;
	margin: 0 0 10px;
	padding: 0;
	list-style: none;
}

#second .zumenList li:nth-child(3n-1) {
	margin: 0 2% 10px;
}

#second .zumenList li a {
	text-decoration: none;
	display: block;
	padding: 12px 8px;
	border-bottom: 1px dotted #CCC;
}

#second .zumenAll a {
	display: block;
	border: 4px solid #FFD9D9;
	width: 400px;
	margin: 0 auto 30px;
	padding: 12px 8px;
	text-align: center;
	text-decoration: none;
	color: #F00;
	font-weight: 500;
}

.zumenLink {
	position: relative;
	overflow: hidden;
	margin: 20px 0 20px;
}

#second .zumenLink ul.pager {
	position: relative;
	left: 50%;
	float: left;
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
}

#second .zumenLink ul.pager li {
	position: relative;
	left: -50%;
	float: left;
	display: inline;
	min-width: 100px;
	margin: 2px;
	padding: 0;
	background-color: #FFD9D9;
	text-align: center;
}

#second .zumenLink ul.pager li a {
	display: block;
	padding: 10px 15px;
	color: #000;
	text-decoration: none;
}

#second .zumenLink ul.pager li a:hover {
	opacity: 1;
	background-color:#FFD9D9;
}

h4.zumen {
	position: relative;
	font-size: 20px;
	font-weight: 500;
	background: url(../image/icon-02.png) #FFF2F2 no-repeat 6px 8px;
	background-size: 26px;
	padding: 6px 6px 6px 38px;
	margin: 0 0 20px;
}

h4.zumen:before {
	position: absolute;
	top: 50%;
	right: 0;
	width: 100px;
	height: 1px;
	background-color: #F00;
	content: "";
}

#second .zumenList2 {
	margin: 0 0 60px;
	padding: 0;
	display: flex;
	list-style: none;
	flex-wrap:wrap;
	font-size: 15px;
}

#second .zumenList2 li {
	width: 46%;
	margin: 0 2% 10px;
	list-style: none;
}

#second .zumenList2 li a {
	text-decoration: none;
	display: block;
	padding: 12px 8px;
	color: #000;
	border-bottom: 1px dotted #CCC;
}

#second .zumenList2 li a:hover {
	opacity: 1;
	background-color: #FFF2F2;
}




/*cad*/
#second .cadList {
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
	flex-wrap:wrap;
	font-size: 15px;
}

#second .cadList li {
	width: 46%;
	margin: 0 2% 10px;
	padding: 0;
	list-style: none;
}

#second .cadList li a {
	text-decoration: none;
	display: block;
	padding: 8px;
	border-bottom: 1px dotted #CCC;
}




/*inq*/
.eye-catch-page.inq {
    background-image: url(../image/inq-01.png);
}

.inqCatalogCat {
	font-weight: 500;
	font-size: 18px;
	margin: 0 !important;
	padding: 0 10px 4px;
}

#second .inqCatalogList {
	margin: 0 0 40px 40px;
	padding: 20px 20px 20px 30px;
	border-bottom: 1px dashed #174f9f;
	border-left: 4px solid #174f9f;
	display: flex;
	flex-wrap: wrap;
}

#second .inqCatalogList .mwform-checkbox-field {
	width: 50%;
	margin: 0 0 12px;
	padding: 0 0 0 18px;
	list-style: none;
	text-indent: -20px;
}

#second .inqCatalogList + h3 {
	margin-top: 80px;
}

#second .inqCatalogList label {
	cursor: pointer
}

.inqTb {
	width: 100%;
	border-collapse: separate;
	border-spacing: 4px;
	margin: 0 0 40px;
}

.inqTb th {
	width: 30%;
	padding: 12px;
	text-align: left;
	font-weight: 400;
	background-color: #F3F2F1;
}

.inqTb th .hs {
	display: inline-block;
	background-color: #F00;
	color: #FFF;
	font-size: 14px;
	padding: 2px;
	margin-left: 4px;
}

.inqTb td {
	padding: 12px;
	border-top: 1px solid #EEE;
	border-bottom: 1px solid #EEE;
}

.inqTb td:hover {
 background: #F2F7FD;
}

.inqTb td input {
	border: 1px solid #CCC;
	margin: 2px 0;
	padding: 4px;
	box-shadow: inset 1px 1px 3px rgb(0 0 0 / 12%);
	width: 50%;
	font-size: 16px;
 font-family: 'Noto Sans JP', sans-serif;
}

.inqTb td input.s {
	width: 160px;
}

.inqTb td input.l {
	width: 100%;
}

.inqTb td input[type="checkbox"] {
	width: 20px;
	box-shadow: none;
}

.inqTb td input[type="file"] {
border: none;
box-shadow: none;
}

.inqTb td textarea {
	display: block;
	padding: 4px;
	width: 100%;
	height: 200px;
	border: 1px solid #CCC;
	box-shadow: inset 1px 1px 3px rgb(0 0 0 / 12%);
	font-size: 16px;
 font-family: 'Noto Sans JP', sans-serif;
}

.inqTb td input:focus,
.inqTb td textarea:focus {
 background: #F2F7FD;
	outline: none;
}

.inqTb td select {
	border: 1px solid #CCC;
	padding: 4px;
	box-shadow: inset 1px 1px 3px rgb(0 0 0 / 7%);
	font-size: 16px;
 font-family: 'Noto Sans JP', sans-serif;
}

.inqBtn {
	text-align: center;
}

.inqBtn input[type="submit"] {
	margin: 0 10px;
	padding: 8px 16px;
	cursor: pointer;
}

.error {
	font-weight: 500;
	color: #F00 !important;
	background-color: #FEE;
	padding: 4px;
}

.errorMsg {
	color: #F00;
}



/*sitemap*/
.eye-catch-page.sitemap {
 background-image: url(../image/sitemap-01.jpg);
}



/*link*/
.eye-catch-page.link {
    background-image: url(../image/link-01.png);
}

#second ul.linkList {
	display: flex;
	flex-wrap: wrap;
}

#second ul.linkList li {
	width: 48%;
	margin: 0 1% 20px;
	list-style: none;
}

#second ul.linkList li a {
	text-decoration: none;
	color: #000;
	display: block;
	padding: 8px;
	box-shadow: 0 0 6px #CCC;
	opacity: 1;
}

#second ul.linkList li a:hover {
	background-color: #F2F7FD;
}


/*privacy*/
.eye-catch-page.privacy {
    background-image: url(../image/privacy-01.png);
}



/*list*/
.eye-catch-page.list {
    background-image: url(../image/list-01.png);
}



/*prefab*/
#second .prefab2 {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
	justify-content: center;
}

#second .prefab2 li {
	margin: 0 20px;
	list-style: none;
}

/*sitemap*/
#second.sitemap ul {
	margin: 0;
	padding: 0;
}

#second.sitemap ul li {
	margin: 0;
	padding: 0;
	list-style: none;
	font-weight: 500;
}

#second.sitemap ul li:first-child {
	margin: 0 0 40px;
}

#second.sitemap ul li a {
	display: block;
	padding: 12px 8px;
	text-decoration: none;
	color: #000;
	border-bottom: 1px solid #CCC;
}

#second.sitemap ul li a:hover {
	background-color: #F2F7FD;
	opacity: 1;
}

#second.sitemap ul li ul {
	margin: 0 0 40px 40px;
}

#second.sitemap ul li ul li {
	font-weight: 400;
}

#second.sitemap ul li ul li:first-child {
	margin: 0;
}

/*list*/
#second.list p + h3 {
	margin-top: 60px;
}

#second.list .number {
	font-family: 'Oswald', sans-serif;
 font-weight: 500;
	font-size: 30px;
	letter-spacing: 0.04em;
	line-height: 1;
	margin-bottom: 20px;
}

#second.list .number a {
	text-decoration: none;
	color: #000;
}

#second.list .number span {
	font-size: 20px;
	margin-right: 4px;
}

#second.list .list1 {
	width: 48%;
	margin: 0 0 60px;
	padding: 20px;
	background-color: #F3F2F1;
}

#second.list .list1 p {
	margin: 0;
}

#second.list .list2 p {
	margin: 0 0 20px;
}

#second.list .list2 {
	width: 90%;
	margin: 0 auto 60px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#second.list .list2 div {
	width: 48%;
	padding: 20px;
	background-color: #F3F2F1;
	margin-bottom: 20px;
}

#second.list .list2 div h4 {
	font-weight: 500;
	font-size: 20px;
	margin: 0 0 20px;
	padding: 0 0 0 8px;
	border-left: 4px solid #F00;
}

#second.list .list1 div.number,
#second.list .list2 div.number {
	width: 100%;
	margin: 0;
	padding: 0;
}

#second.list .list1 p + .number {
	margin-top: 20px;
}


/*historymv*/
.mvWrap {
	width: 100%;
}

.mvWrap video {
	max-width: 100%;
	height: auto;
}

/*search*/
#second ul.searchList li {
list-style: none;
}

#second ul.searchList {
margin: 0 0 60px;
}

.searchList li a {
	display: block;
	margin: 0 0 6px;
	padding: 12px;
	font-weight: 500;
	font-size: 18px;
	border-bottom: 1px dashed #CCC;
}

.searchList li a:hover {
	background-color: #F3F2F1;
	opacity: 1;
}


@media only  screen and (max-width: 768px) {

.jointList .item {
width: calc( 100% / 2 - 2% );
}

#second .jointList .item h3 {
font-size: 14px;
}

#second ul.jointCat {
width: 100%;
display: block;
}

#second ul.jointCat li {
width: 100%;
margin-bottom: 10px;
}

#second ul.jointCat li a {
width: auto;
}

#second .jointList .item .toDetail a {
width: 100%;
}

.jCat {
font-feature-settings: "palt";
letter-spacing: 0;
}

#second.joint .itemDetail h2 {
font-size: 20px;
letter-spacing: 0;
}

#second.joint .itemDetail h2 span {
font-size: 12px;
}

.itemInfo {
display: block;
}

.itemInfo .text {
width: 100%;
}

.itemInfo .photo {
width: 100%;
}

.itemInfo .photo img {
display: block;
margin: 0 auto 10px;
}

#second .itemInfo .text dd {
font-size: 14px;
}

.keieiRinen {
font-size: 16px;
}

.keieiRinen p {
margin-bottom: 30px !important;
}

.groupRinen {
    align-items: end;
}

.groupRinen div:nth-child(1) {
    width: 50%;
}

.groupRinen div:nth-child(2) {
    width: 50%;
}

.groupRinen div:nth-child(1) img {
    margin: 0 0 0 auto;
    vertical-align: bottom;
}

.groupRinen div:nth-child(2) img {
    margin: 0 0 0 auto;
    vertical-align: bottom;
}

.outlineTb th {
display: inline-block;
font-weight: 500;
border-bottom: none;
padding-bottom: 0;
width: 100%;
padding: 6px;
text-align: left;
}

.outlineTb th:after {
display: none;
}

.outlineTb td {
display: block;
width: 100%;
padding: 6px 6px 12px;
}

.locationWrap {
display: block;
width: 96%;
margin: 0 auto;
}

.wrap-content__page h2.pr, .wrap-content__page h2.pr > span {
width: 100%;
}

.innerpr {
width: 90%;
margin: 0 auto;
}

.locationBox {
display: block;
width: 100%;
margin: 0 0 60px;
}

.locationBox div:nth-child(1) {
width: 100%;
display: block;
background-color: #174f9f !important;
}

.locationBox div:nth-child(1):before {
display: none;
}

.locationBox div:nth-child(2) {
width: 100%;
}

#second .locationBox h3 {
position: static;
margin: 0 0 20px;
transform: unset;
padding: 4px 8px;
}

#second .locationBox dl {
display: flex;
}

#second a {
margin: 20px auto 0;
}

#second .locationBox h3 {
font-size: 20px;
}

#second .locationBox dl dt {
width: 28%;
white-space: nowrap;
}

#second .locationBox dl dd {
width: 72%;
margin-right: 0;
padding-left: 20px;
}

#second .timeline li p.timeline-date {
width: 100px;
}

#second .timeline li p {
font-size: 15px;
}

.envHani dd {
margin-left: 0;
}

#second .voiceWrap .inner .sec1 h4 {
margin-left: -18px;
margin-bottom: 20px;
}

.catalogList {
margin: 0;
}

.catalogList div {
width: 48%;
margin: 0 1% 30px;
}

#second .catalogList div ul li {
font-size: 12px;
}

#second ul.linkList {
display: block;
margin: 0 10px;
}

#second ul.linkList li {
width: 100%;
margin: 0 0 20px;
}

#second .inqCatalogList {
display: block;
margin: 0 0 40px 20px;
padding-left: 20px;
}

#second .inqCatalogList .mwform-checkbox-field {
width: 100%;
display: block;
}

.inqTb th {
display: block;
width: 100%;
}

.inqTb td {
display: block;
width: 100%;
}

.inqTb td input {
width: 100%;
}

#second.list .list2 {
display: block;
}

#second.list .list2 div {
width: 100%;
margin-bottom: 20px;
}

#second.list .list1 {
width: 100%;
}

#second .groupCom h3:before {
	width: 100%;
}

#second .groupCom table th {
	display: block;
	background-color: #F2F7FD;
	padding: 8px;
	width: 100%;
	font-weight: 500;
	text-align: left;
}

#second .groupCom table td {
	display: block;
	width: 100%;
	padding: 8px;
	border-bottom: 1px dotted #CCC;
	line-height: 1.6;
}

#second .zumenList li {
    width: 48%;
    margin: 0 1% 10px;
}

#second .zumenList li:nth-child(3n-1) {
	margin: 0 1% 10px;
}

#second ul.zumenHyoushi li {
    width: 46%;
    margin: 0 2%;
}

}






