@charset "UTF-8";

@media print, screen and (max-width:1199px) {

.orderBox { 
display: flex;
flex-direction: column;
}

.order1 { order: 1; }
.order2 { order: 2; }
.order3 { order: 3; }
.order4 { order: 4; }
.order5 { order: 5; }

.alignright,
.alignrightQa,
.alignleft,
.aligncente {
display: block;
margin: 0 auto;
margin-bottom: 30px;
}

#spWrap {
width: 100vw;
overflow: hidden;
}

#fastview {
position: relative;
width: 100vw;
height: 100vh;
overflow: hidden;
}

#mainImgBox {
position: relative;
width: 100vw;
height: 100vh;
overflow: hidden;
border-left: 10px solid #002772;
}

.mainImg {
position: absolute;
width: 100vw;
height: 100vh;
overflow: hidden;
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
z-index:10;
opacity: 0;
left: 0;
bottom: 0;
-webkit-animation: anime 20s 0s infinite;
animation: anime 20s 0s infinite;
}

.mainImg:nth-of-type(2) {
-webkit-animation-delay: 5s;
animation-delay: 5s; }

.mainImg:nth-of-type(3) {
-webkit-animation-delay: 10s;
animation-delay: 10s; }

.mainImg:nth-of-type(4) {
-webkit-animation-delay: 15s;
animation-delay: 15s; }

@keyframes anime {
0% {
opacity: 0;
transform: scale(1);
}
5% {
opacity: 1;
}
25% {
opacity: 1;
}
30% {
opacity: 0;
transform: scale(1.2);
z-index: 9;
}
100% { opacity: 0 }
}

#name {
position: absolute;
font-family: 'Bebas Neue', cursive;
width: 80%;
font-size: 8rem;
color: #fff;
text-align: left;
left: 10%;
bottom: 60px;
margin: auto;
line-height: 70px;
z-index: 11;
}

#name span {
font-family: 'Roboto', sans-serif;
font-size: 1.2rem;
font-style: italic;
display: block;
color: #ccc;
line-height: 18px;
}

#nameJ {
position: absolute;
width: 60px;
height: 75%;
right: -15px;
top: 0;
bottom: 0;
margin: auto;
z-index: 12;
opacity: .3;
}

#copyrightTop {
display: none;
}

#wrapGallery {
width: 100%;
margin-top: 50px;
}

#wrapGallery .number {
font-family: 'Bebas Neue', cursive;
font-size: 3rem;
color: #ccc;
line-height: 1;
}

#wrapGallery h2 {
font-family: 'Bebas Neue', cursive;
font-size: 7rem;
color: var(--themeColor);
margin-bottom: 40px;
line-height: 1;
}

#wrapGallery h2 span {
font-family: 'Roboto', sans-serif;
font-size: 1.2rem;
font-style: italic;
display: block;
color: #999;
line-height: 18px;
}

.wrapFlex {
width: 100%;
padding: 40px 0 0;
}

.flexPhoto,
.flexProfile {
width: 88%;
margin: 0 auto;
}

.flexPhoto img {
width: 100%;
height: 220px;
object-fit: cover;
}

.flexTxt {
width: 88%;
text-align: justify;
margin: 0 auto;
padding: 30px 0 0;
}

.wrapFlex:last-of-type {
padding-bottom: 40px;
}

.flexTxt .inner {
}

.flexTxt .inner .number {
font-family: 'Bebas Neue', cursive;
font-size: 3rem;
color: #ccc;
line-height: 1;
}

.flexTxt h2 {
font-family: 'Bebas Neue', cursive;
font-size: 7rem;
color: var(--themeColor);
margin-bottom: 40px;
line-height: 1;
}

.flexTxt h2 span {
font-family: 'Roboto', sans-serif;
font-size: 1.2rem;
font-style: italic;
display: block;
color: #999;
line-height: 18px;
}

.btn {
position: relative;
background: var(--themeColor);
font-family: 'Bebas Neue', cursive;
width: 200px;
height: 55px;
font-size: 2rem;
color: #fff;
border: 1px solid #14334E;
border-radius: 100px;
cursor: pointer;
transition: .3s;
}

.btn span {
position: relative;
z-index: 1;
}

.btn:hover {
}

.btn::before {
position: absolute;
background-color: #fff;
content: "";
width: 54px;
height: 54px;
border-radius: 63px;
left: 0;
top: 0;
transition: transform ease .3s;
opacity: .3;
}

.btn:hover::before {
}

.btn .arrowRound {
position: absolute !important;
display: block;
width: 20px;
height: 2px;
border-radius: 5px;
background-color: #fff;
right: 20px;
top: 0;
bottom: 0;
margin: auto;
z-index: 0;
}

.btnW .arrowRound {
background-color: #fff;
}

.btn .arrowRound::before {
content: "";
position: absolute;
top: 3px;
right: -2px;
display: block;
width: 10px;
height: 2px;
border-radius: 5px;
background-color: #fff;
transform: rotate(-45deg);
}

.btnW .arrowRound::before {
background-color: #fff;
}

.btn .arrowRound::after {
content: "";
position: absolute;
bottom: 3px;
right: -2px;
display: block;
width: 10px;
height: 2px;
border-radius: 5px;
background-color: #fff;
transform: rotate(45deg);
}

/**/

#bgProfile {
position: relative;
background: url("../img/bg_profile.jpg") no-repeat center;
background-size: cover;
width: 100%;
height: 300px;
z-index: 0;
}

#bgWorks {
position: relative;
background: url("../img/bg_works.jpg") no-repeat center top;
background-size: cover;
width: 100%;
height: 300px;
z-index: 0;
}

#bgVoice {
position: relative;
background: url("../img/bg_voice.jpg") no-repeat center;
background-size: cover;
width: 100%;
height: 300px;
z-index: 0;
}

#bgContact {
position: relative;
background: url("../img/bg_contact.jpg") no-repeat center;
background-size: cover;
width: 100%;
height: 300px;
z-index: 0;
}

#contentsTitle,
#contentsTitlePr {
position: absolute;
font-family: 'Bebas Neue', cursive;
width: 100%;
font-size: 10rem;
text-align: left;
color: var(--themeColor);
line-height: 1;
top: 256px;
left: 20px;
z-index: 2;
}

#contentsTitlePr {
font-size: 5.6rem;
top: 276px;
}

.dot {
position: absolute;
background: url("../img/dot.png") repeat;
background-size: 6px;
width: 100%;
height: 100%;
left: 0;
top: 0;
z-index: 1;
}

#pankuzu {
position: relative;
width: 88%;
font-size: 1rem;
text-align: left;
margin: 0 auto;
padding: 20px 0;
z-index: 3;
}

.wrapCo {
position: relative;
width: 88%;
text-align: justify;
margin: 0 auto;
padding: 80px 0 40px;
}

.wrapFlexCo {
width: 100%;
padding: 80px 0 0;
}

#profileName {
font-size: 3.6rem;
font-weight: 600;
color: var(--themeColor);
margin-bottom: 30px;
line-height: 1.5;
}

#profileName span {
font-family: 'Bebas Neue', cursive;
font-size: 1.4rem;
display: block;
color: #ccc;
line-height: 18px;
letter-spacing: .6em;
}

.works {
text-align: justify;
margin-bottom: 30px;
}

.categoryTitle {
font-family: 'Bebas Neue', cursive;
font-size: 5rem !important;
color: var(--themeColor);
margin-bottom: 30px;
padding-bottom: 10px;
border-bottom: 1px dotted #ccc;
line-height: 1;
}

.categoryTitle span {
position: relative;
font-family: 'Noto Sans JP', sans-serif !important;
font-size: 1.4rem !important;
font-weight: 600;
color: #999;
margin-left: 10px;
top: -2px;
}

.worksCategory {
margin-bottom: 40px;
}







.contact dt p {
margin-bottom: 10px !important;
}

.wpcf7-submit {
background-color: #F88300;
width: 100%;
height: 80px;
font-size: 1.6rem;
font-weight: 600;
color: #fff;
margin-bottom: 100px;
border-radius: 350px;
border: solid 1px #F88300;
cursor: pointer;
transition: .3s;
}

/**/

footer {
position: relative;
background: var(--themeColor);
width: 100%;
color: #ffff;
margin: 0 auto;
padding: 60px 0;
line-height: 1.5;
}

footer img {
width: 200px;
margin-bottom: 40px;
}

.fNav {
font-family: 'Bebas Neue', cursive;
margin: 0 auto;
}

.fNav li {
padding: 5px 0;
}

.fNav li a {
position: relative;
font-size: 1.6em;
color: #fff;
margin: 0 10px;
}

.fNav li a:hover {
text-decoration: none;
}

.snsfNav {
display: inline-block;
}

#copyright {
font-family: 'Roboto', sans-serif;
font-size: 1rem;
font-style: italic;
margin-top: 40px;
}

.pagetop {
position: fixed;
background: var(--themeColor);
width: 60px;
height: 60px;
bottom: -60px;
right: 10px;
z-index: 200;
display: block;
border: 1px solid var(--themeColor);
border-radius: 60px;
transition: .3s;
}

.arrowRoundUp {
position: absolute;
display: block;
width: 2px;
height: 20px;
border-radius: 5px;
background-color: #fff;
left: 0;
right: 0;
top: 0;
bottom: 0;
margin: auto;
z-index: 0;
}

.arrowRoundUp::before {
content: "";
position: absolute;
top: 0;
right: -1px;
display: block;
width: 10px;
height: 2px;
border-radius: 5px;
background-color: #14334E;
transform: rotate(-45deg);
}

.arrowRoundUp::before {
background-color: #fff;
}

.arrowRoundUp::after {
content: "";
position: absolute;
top: 0;
left: -1px;
display: block;
width: 10px;
height: 2px;
border-radius: 5px;
background-color: #fff;
transform: rotate(45deg);
}

}