﻿@charset "utf-8";
/* 一番下を青色 */
body{
background-image: url(../images/p0103_l_remake.png);
margin:0 auto;
font-family: "Zen Old Mincho", serif;
 /* font-family: "New Tegomin", serif; */
width:100%;
max-width:1478px;

    background-repeat: no-repeat;
    background-size: cover;
        overflow-x: hidden;
        text-align: center;
}

h1.lower-layer-h1 , h2{
font-family: "Zen Antique Soft", serif!important;
color: #223d7d;
}

div.padding-tb{
    padding: 70px 0 70px !important;
}
div.padding-t{
    padding: 70px 0 0 !important;
}

/* 下層ページ */

h1.lower-layer-h1 {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  margin-bottom:50px;
font-weight:900;
}

h1.lower-layer-h1:before, h1.lower-layer-h1:after { 
  content:'';
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
}

/* h1.lower-layer-h1:before {
  border-left: solid 2px #223d7d;
  border-top: solid 2px #223d7d;
  top:0;
  left: 0;
}

h1.lower-layer-h1:after {
  border-right: solid 2px #223d7d;
  border-bottom: solid 2px #223d7d;
  bottom:0;
  right: 0;
} */

h1.lower-layer-h1:before {
  border-left: solid 2px #f0d74e;
  border-top: solid 2px #f0d74e;
  top:0;
  left: 0;
}

h1.lower-layer-h1:after {
  border-right: solid 2px #f0d74e;
  border-bottom: solid 2px #f0d74e;
  bottom:0;
  right: 0;
}


/* h2 */
h2{
margin-bottom: 20px;
font-weight:700;
text-align: left;
/* border-bottom: 2px solid #00c205; */
font-size: 1.8rem;
padding-bottom:5px;
border-bottom: solid 2px #223d7d;
position: relative;
}

h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 2px #f0d74e;
  bottom: -2px;
  width: 20%;
}

main{
  margin:0 15px;
padding:0 15px;
}




/* 各内容を包む */
div.sub-content{
margin: 0 15px;
}

 p.subtext{
margin:0 0 20px 0;
text-align:left;
}

a{
text-decoration: none;
color:#333;
}



/* table */
table.work-table {
width: 100%;
margin: 0 auto;
box-sizing: border-box;
border-collapse: collapse;
border-spacing: 0;
font-size: 16px;
}

table.work-table tr td {
box-sizing: border-box;
padding: 10px;
}

table.work-table tr th {
/* font-size: 14px; */
padding: 3px;
background: #223d7d;
color: #fff;
  padding: 5px;
box-sizing: border-box;
}

table.work-table tr td {
background: #fff;
}

table.work-table tr td img,
table.work-table tr td a img {
width: auto;
height: 160px;
vertical-align: middle;
}

table.work-table tr td a {
transition: all 0.3s;
}

table.work-table tr td a:hover {
opacity: 0.7;
}

th.th-no {
width: 10%;
}
th.th-date {
width: 30%;
}
th.th-img {
width: 60%;
}
ul.table-list > li {
  list-style: none;
}
ul.table-list {
  padding:0;
  margin:0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

ul.table-list li p {
  margin:0;
  padding:5px;
}

.br-sp{
display: none;
}

/* PDF */
.open-pdf span {
font-weight: normal;
letter-spacing: 0;
font-size: 14px;
margin-left: 10px;
}
.pdf-icon {
position: absolute;
content:"";
transform: translateY(-50%);
top: 50%;
left: 15px;
}
.open-pdf {
display: inline-block;
background: #ffdddd;
border-radius: 5px;
font-size: 16px;
line-height: 1.0em;
font-weight: normal;
text-decoration: none;
color: #fff;
transition: all 0.3s;
border: solid 1px #ffdddd;
color: #333;
font-weight: 600;
position: relative;
padding: 14px 14px 14px 48px;
line-height: 1.5;
text-align: left;
margin: 0 auto;
box-sizing: border-box;
}
.open-pdf:hover {
border: solid 1px #c00;
background: #fff;
color: #c00;
}


/* navi */
/* ul.main-nav{
list-style: none;
padding:0;
display: grid;
grid-template-columns: repeat(6, 1fr);
gap:10px;
margin: 0 auto;
margin-bottom:25px;
}
ul.main-nav li a{
text-decoration: none;
background-color: #00c205;
border: 1px solid #00c205;
box-sizing: border-box;
margin: 0 auto;
transition: all 0.3s;
position: relative;
color:#fff;
display: block;
width: 100%;
padding:5px 5px 5px 30px;
height: 100%;
border-radius: 5px;
box-sizing: border-box;
}

ul.main-nav li a:hover{
background-color: #fff;
border: 1px solid #00c205;
color:#00c205;
transition: all 0.3s;
}

ul.main-nav li a:hover .nav-icon {
transition: all 0.3s;
fill: #00c205;
fill-rule: evenodd;
}

ul.main-nav li a svg{
position: absolute;
transform: translateY(-50%);
left: 10px;
top: 50%;
width:18px;
height:auto;
} */


/* works skills */

/*リスト共通 */
div.item-wrapper ul{
list-style: none;
padding: 0;
margin: 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 25px;
}
div.item-wrapper ul > li > a{
display: flex;
flex-direction: column;
border-radius: 5px;
box-sizing: border-box;
transition: all 0.3s;
overflow: hidden;
background: #223d7d;
border: 1px solid #223d7d;
height: 100%;
text-align: center;
color: #fff;
}
div.item-wrapper ul > li > a:hover{
background: #fff;
color:#223d7d;
}
div.item-wrapper ul > li > a img{
margin: 0 auto;
width: 100%;
transition: all 0.3s;
}

div.item-wrapper ul > li > a:hover img{
opacity: 0.7;
}
div.item-wrapper ul > li > a p{
  padding:10px;
  margin:0;
}






/* @media (max-width: 989px){
ul.main-nav{
grid-template-columns: repeat(3, 1fr);
}
} */

@media (max-width: 767px){

div.sub-content{
margin: 0 8px;
}

/* works skills*/
/* リスト共通 */
div.item-wrapper ul{
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 15px;
}
div.item-wrapper ul li a img{
width:30%;
margin:0;
object-fit: cover;
height: 100%;
}
div.item-wrapper ul li a{
display: flex;
align-items: center;
flex-direction: row;
text-align: left;
}
div.item-wrapper ul li a p{
  padding: 0.7rem;
}





/* 下層ページ */
/*h1.lower-layer-h1 */


/* h2 */
h2{
font-size: 1.5rem;
}


/* table */
ul.table-list{
grid-template-columns: 1fr;
gap: 20px;
}

table.work-table{
width:100%;
font-size: 1.5rem;
}
table.work-table tr td.textalign {
text-align:left;
}

table.work-table tr, table.work-table tr td {
padding: 10px;
}

table.work-table tr td img,table.work-table tr td a > img {
        height: auto;
        width: 75%;
}


th.th-no , th.th-date{
  display: none;
}

td.td-no{
  background: #ffc698 !important;
}
th.th-date{
  width: 100%;
}
.content-wrapper table tr td{
  display: block;
  width:100%;
}

.br-sp{
display: block;
}

/* PDF */
.open-pdf {
display: block;
width:100%;
font-size: 1.2rem;
padding: 7px 7px 7px 48px;
}
.open-pdf span {
display: block;
margin:2px 0 0 0;
font-size:1.0rem;
}

section.content-wrapper p.subtext{
font-size:1.2rem;
margin: 0 0 0.8rem 0;
}
}


@media (max-width: 600px){
table.work-table tr a img{
height:70px;
}
}

/* @media (max-width: 560px){
.br-sp{
display: none;
}
} */


