/*
Theme Name: Kakuu corporation
Author: Masaitou
Description: 架空の会社カクウのコーポレートサイト用テーマ
Version: 1.0
*/


@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");

html {
   font-size: 62.5%;
}

/*
header======================================================================================================================================================
*/

header {
   width: 90%;
   margin-left: auto;
   margin-right: auto;
}

.header-flex {
   display: flex;
}

.header-top {
   display: flex;
}

.sp-nav {
   display: none;
}

.nav-button {
   display: none;
}

#logo img {
   width: 25%;
}

.pc-nav li {
   list-style: none;
}

.pc-nav ul {
   display: flex;
}

.pc-nav a {
   text-decoration: none;
   color: black;
   font-size: 20px;
   font-size: 2.0rem;
   margin-left: 25px;
}

.pc-nav a:hover {
   color: #24ba09;
}


/*
footer==========================================================================================================================================================
*/

footer {
   text-align: center;
   border-top: 5px solid #24ba09;
   margin-top: 50px;
}

#footer-logo img {
   width: 20%;
   margin-top: 50px;
}

.address {
   font-size: 15px;
   font-size: 1.5rem;
}

.small {
   height: 50px;
   background-color: #24ba09;
   color: white;
   display: flex;
   justify-content: center;
   align-items: center;
}

.sns {
   display: flex;
   justify-content: center;
   padding-left: 0;
}

.sns li {
   list-style: none;
   margin-left: 10px;
   margin-right: 10px;
   margin-bottom: 50px;
}

.sns a {
   background-color: #24ba09;
   color: white;
   font-size: 20px;
   font-size: 2.0rem;
   display: inline-block;
   width: 4rem;
   height: 4rem;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   border-radius: 50%;
}

.sns a:hover {
   color: gray;
}


/*
front-page===================================================================================================================================================================
*/

.cover {
   position: relative;
   margin-top: 0;
}

.cover-img img {
   width: 100%;
}

.cover-title {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   color: white;
   line-height: 2px;
}

.cover-title h1 {
   font-size: 70px;
   font-size: 7.0rem;
}

.cover-title h2 {
   font-size: 25px;
   font-size: 2.5rem;
}

.section-title {
   text-align: center;
}

.section-title h2 {
   border-bottom: 5px solid #24ba09;
   display: inline-block;
   font-size; 30px;
   font-size: 3.0rem;   
}

.service {
   margin-top: 50px;
}

.service-box {
   display: flex;
   justify-content: center;
}

.service-item {
   width: 20%;
   box-shadow: 1px 1px 5px 1px gray;
}

.service-img img {
   width: 100%;
}

.service-text {
   margin-left: 10px;
   margin-right: 10px;
}

.service-text h3 {
   font-size: 20px;
   font-size: 2.0rem;
}

.service-text p {
   font-size: 15px;
   font-size: 1.5rem;
}

.news-front {
   margin-top: 50px;
}

.news-list {
   padding-left: 0;
   font-size: 15px;
   font-size: 1.5rem;
   text-align: left;
   width: 60%;
   margin-left: auto;
   margin-right: auto;
}

.news-list li {
   list-style: none;
   height: 50px;
   display: flex;
   align-items: center;
   border-bottom: 1px solid black;
}

.news-list a{
   text-decoration: none;
   color: black;
   margin-left: 30px;
}

.news-list a:hover {
   color: #24ba09;
}

.news-list li:first-child {
   border-top: 1px solid black;
}

.news-top a {
   font-size: 15px;
   font-size: 1.5rem;
   text-decoration: none;
   color: black;
}

.news-top a:hover {
   color: #24ba09;
}

.news-top {
   border: 1px solid black;
   width: 500px;
   margin-left: auto;
   margin-right: auto;
   text-align: center;
   width: 150px;
   border-radius: 0.4rem;
}

.sns-box {
   display: flex;
   justify-content: center;
   align-items: center;
}

.sns-item {
   width: 30%;
   margin-top: 60px;
}

.front-sns {
   text-align: center;
   background-color: #cfc3c2;
   height: 60vh;
   margin-top: 50px;
}


/*
news=================================================================================================================================================================
*/

.news-cover {
   margin-top: 0;
}

.news-cover {
   position: relative;
}

.news-cover-img img {
   width: 100%;
}

.news-title {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   color: white;
   font-size: 40px;
   font-size: 4.0rem;
}

.blog-header {
   display: flex;
   align-items: center;
   font-size: 15px;
   font-size: 1.5rem;
}

.blog-title-index {
   margin-left: 30px;
}

.blog-title-index a {
   text-decoration: none;
   color: black;
}

.blog-title-index a:hover {
   color: #24ba09;
}

.news-flex {
   display: flex;
   width: 80%;
   margin-left: auto;
   margin-right: auto;
   margin-top: 50px;
}

article {
   width: 80%;
}

aside {
   width: 20%;
}

.news-container:first-child {
   border-top: 1px solid black;
}

.news-child {
   width: 80%;
}

.blog-wrap {
   border-bottom: 1px solid black;
}

.news-container {
   width: 80%;
}

.pagenavi {
   font-size: 15px;
   font-size: 1.5rem;
   margin-top: 15px;
}


/*
service================================================================================================================================================================
*/

.service-flex {
   margin-top: 50px;
   display: flex;
   width: 80%;
   margin-left: auto;
   margin-right: auto;
}

.service-wrap {
   width: 70%;
   margin-left: auto;
   margin-right: auto;
   margin-bottom: 50px;
   box-shadow: 1px 1px 5px 1px gray;
}

.service-img2 {
   padding-top: 0;
}

.service-img2 img {
   width: 100%;
}

.service-text2 h2 {
   font-size: 20px;
   font-size: 2.0rem;
}

.service-text2 p {
   font-size: 15px;
   font-size: 1.5rem;
}

.service-text2 {
   margin-left: 10px;
   margin-right: 10px;
   height: 15vh;
}

/*
company================================================================================================================================================================
*/


.company-list {
   display: flex;
   align-items: center;
   border-bottom: 1px solid black;
}

.company-box {
   padding-left: 0;
   width: 80%;
   margin-left: auto;
   margin-right: auto;
   margin-top: 0;
}

.company-box:first-child {
   border-top: 1px solid black;
}

.company-list {
   font-size: 15px;
   fontsize: 1.5rem;
}

.company-list h3 {
   width: 30%;
}

/*
single================================================================================================================================================================
*/

.article-single {
   margin-left: auto;
   margin-right: auto;
   margin-top: 50px;
   width: 50%;
}

.article-single h1 {
   font-size: 25px;
   font-size: 2.5rem;
}

.blog-body p {
   font-size: 15px;
   font-size: 1.5rem;
}

.page-navi {
   margin-top: 10px;
   display: flex;
   justify-content: space-between;
}

.page-navi a {
   font-size: 15px;
   font-size: 1.5rem;
}

.blog-body {
   width: 100%;
   margin-left: auto;
   margin-right: auto;
}

.blog-body img {
   width: 100%;
   height: auto;
}

.blog-wrap-single {
   border-bottom: 1px solid black;
}

.date {
   font-size: 15px;
   font-size: 1.5rem;
}


/*
sidebar================================================================================================================================================================
*/

.banner {
   font-size: 15px;
   font-size: 1.5rem;
}

.banner {
   background-color: gray;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 20rem;
   height: 20rem;
}

/*
contact=================================================================================================================================================================
*/

.contact-flex {
   display: flex;
   width: 80%;
   margin-left: auto;
   margin-right: auto;
   margin-top: 50px;
}

.page-title {
   margin-left: auto;
   margin-right: auto;
}

form {
   font-size: 15px;
   font-size: 1.5rem;
}

form p {
   margin-left: auto;
   margin-right: auto;
   width: 50%;
}


/*
レスポンシブ============================================================================================================================================================
*/

@media (max-width: 769px) {

#logo img {
   width: 100%;
}

.front-sns {
   height: 45vh;
}

.sns-item {
   margin-left: 20px;
   margin-right: 20px;
}

.service-flex {
   margin-left: 0;
}

input {
   width: 80%;
}

textarea {
   width: 80%;
}

button,[type="submit"] {
   width: 20%;
}

form p {
   width: 80%;
   margin-left: 0;
}

.contact-article {
   width: 75%;
}

.contact-flex {
   margin-left: 50px;
}

.front-sns {
   display: none;
}

.news-child {
   width: 75%;
}

.news-container {
   width: 90%;
}

}/*レスポンシブ閉じ*/


/*
レスポンシブ　スマホ===================================================================================================================================================
*/

@media (max-width: 376px) {

#logo img {
   width: 60%;
}

#logo {
   display: flex;
   justify-content: space-between;
   align-items: center;
   font-size: 30px;
   font-size: 3.0rem;
}

.header-top {
   align-items: center;
}

.pc-nav {
   display: none;
}

.sp-nav li {
   list-style: none;
   padding-top: 50px;
}

.sp-nav a {
   text-decoration: none;
   color: black;
   font-size: 25px;
   font-size: 2.5rem;
   color: white;
}

.nav-button {
   display: block;
   font-size: 25px;
   font-size: 2.5rem;
}

.cover-img {
   position: relative;
}

.sp-nav {
   position: absolute;
   top: 32px;
   left: 0;
   z-index: 1000;
   width: 100%;
}


.sp-nav ul {
   height: 500px;
   background-color: gray;
   opacity: 0.9;
   text-align: center;
   padding-left: 0;
}

.cover-title h1 {
   font-size: 50px;
   font-size: 5.0rem;
}

.cover-title h2 {
   font-size: 18px;
   font-size: 1.8rem;
}

.service-box {
   display: block;
}

.service-item {
   width: 80%;
   margin-left: auto;
   margin-right: auto;
}

.sns-box {
   display: block;
}

.front-sns {
   height: 100vh;
   display: none;
}

.sns-item {
   margin-top: 0;
   padding-top: 20px;
   margin-left: auto;
   margin-right: auto;
   width: 48%;
}

#footer-logo img {
   width: 50%;
}

.service-flex {
   width: 100%;
   display: block;
}

.service-wrap {
   display: block;
   width: 80%;
   height: 23%;
}

aside {
   display: none;
}

.news-list {
   width: 80%;
}

.news-title {
   font-size: 25px;
   font-size; 2.5rem;
}

article {
   width: 100%;
}

.news-flex {
   display: block;
}

.news-container {
   width: 100%;
}

.news-child {
   width: 100%;
}

.blog-header {
   font-size: 13px;
   font-size: 1.3rem;
}

.company-box {
   width: 90%;
}

.company-list h3 {
   width: 35%;
}

.contact-flex {
   display: block;
}

input {
   width: 100%;
}

textarea {
   width: 100%;
}

button,[type="submit"] {
   width: 20%;
}

form p {
   width: 100%;
}

}/*レスポンシブ閉じ*/
