/*共通*/

html { font-size: 62.5%; }

body {
	max-width: 1600px;
	margin: 0 auto;
    color: 3C3C3C;
    font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 2.4rem;
}

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

a {
	text-decoration: none;
	color: #2e2e2e;
}

.wrap {
	max-width: 1080px;
	margin: 0 auto;
}

.sp-zone {display: none;}
.pc-zone {display: block;}
.sp-585 {display: none;}
.sp-504 {display: none;}

/* ファーストビュー */

.firstview-wrap {
    margin: 0 auto;
    text-align: center;
}

.firstview {
    padding-top: 100px;
}

body.fixed .firstview {
    margin-top: 70px;
}

ul.slider {
    margin: 0;
}

li.view_1 {
    margin: 0 auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 200%);
}

.bx-viewport {
    height: 100%!important;
}

.bx-wrapper img {
    margin: 0 auto;
    width: 550px!important;
    /* height: 90%!important; */
}

.bx-wrapper {
    height: 450px;
    border:none!important;
    box-shadow: none!important;
}

.slider_box {
    width: 100%;
}

.view_1 {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    margin-bottom: 15px;
    animation: fadein .6s forwards;
    margin-bottom: 20px;
    display: block;
}

.view_1 span {opacity: 0;}
.view_1 span {
    font-family: "游明朝体", "游明朝", "游明朝", "ヒラギノ明朝プロ", "ヒラギノ明朝プロ","MS P明朝", "MS PMincho", serif;
    font-size: 2.8rem;
    display: inline-block;
    margin: 0 -.075em;
    animation: loading .7s forwards; 
    opacity: 0;
    line-height: 1.4em;
}

.view_1 span:nth-child(1) { animation-delay: 0.0s;}
.view_1 span:nth-child(2) { animation-delay: 0.1s;}
.view_1 span:nth-child(3) { animation-delay: 0.2s;}
.view_1 span:nth-child(4) { animation-delay: 0.3s;}
.view_1 span:nth-child(5) { animation-delay: 0.4s;}
.view_1 span:nth-child(6) { animation-delay: 0.5s;}
.view_1 span:nth-child(7) { animation-delay: 0.6s;}
.view_1 span:nth-child(8) { animation-delay: 0.7s;}
.view_1 span:nth-child(9) { animation-delay: 0.8s;}
.view_1 span:nth-child(10) { animation-delay: 0.9s;}
.view_1 span:nth-child(11) { animation-delay: 1.0s;}
.view_1 span:nth-child(12) { animation-delay: 1.1s;}
.view_1 span:nth-child(13) { animation-delay: 1.2s;}
.view_1 span:nth-child(14) { animation-delay: 1.3s;}
.view_1 span:nth-child(15) { animation-delay: 1.4s;}
.view_1 span:nth-child(16) { animation-delay: 1.5s;}
.view_1 span:nth-child(17) { animation-delay: 1.6s;}
.view_1 span:nth-child(18) { animation-delay: 1.7s;}
.view_1 span:nth-child(19) { animation-delay: 1.8s;}
.view_1 span:nth-child(20) { animation-delay: 1.9s;}
.view_1 span:nth-child(21) { animation-delay: 2.0s;}
.view_1 span:nth-child(22) { animation-delay: 2.1s;}
.view_1 span:nth-child(23) { animation-delay: 2.2s;}
.view_1 span:nth-child(24) { animation-delay: 2.3s;}
.view_1 span:nth-child(25) { animation-delay: 2.4s;}
.view_1 span:nth-child(26) { animation-delay: 2.5s;}
.view_1 span:nth-child(27) { animation-delay: 2.6s;}
.view_1 span:nth-child(28) { animation-delay: 2.7s;}
.view_1 span:nth-child(29) { animation-delay: 2.8s;}
.view_1 span:nth-child(30) { animation-delay: 2.9s;}
.view_1 span:nth-child(31) { animation-delay: 3.0s;}
.view_1 span:nth-child(32) { animation-delay: 3.1s;}
.view_1 span:nth-child(33) { animation-delay: 3.2s;}
.view_1 span:nth-child(34) { animation-delay: 3.3s;}
.view_1 span:nth-child(35) { animation-delay: 3.4s;}
.view_1 span:nth-child(36) { animation-delay: 3.5s;}
.view_1 span:nth-child(37) { animation-delay: 3.6s;}
.view_1 span:nth-child(38) { animation-delay: 3.7s;}
.view_1 span:nth-child(39) { animation-delay: 3.8s;}
.view_1 span:nth-child(40) { animation-delay: 3.9s;}

@keyframes loading {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1; }
}

.view_2 {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    margin-bottom: 24px;
    animation: fadein .6s forwards;
    margin-bottom: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 110%);
    display: block;
}

.view_2 span {opacity: 0;}

.view_2.active-slide span {
    font-family: "游明朝体", "游明朝", "游明朝", "ヒラギノ明朝プロ", "ヒラギノ明朝プロ","MS P明朝", "MS PMincho", serif;
    font-size: 2.8rem;
    display: inline-block;
    margin: 0 -.075em;
    animation: loading .7s
    forwards; opacity: 0;
    line-height: 1.4em
}

.view_2 span:nth-child(1) { animation-delay: 0.0s;}
.view_2 span:nth-child(2) { animation-delay: 0.1s;}
.view_2 span:nth-child(3) { animation-delay: 0.2s;}
.view_2 span:nth-child(4) { animation-delay: 0.3s;}
.view_2 span:nth-child(5) { animation-delay: 0.4s;}
.view_2 span:nth-child(6) { animation-delay: 0.5s;}
.view_2 span:nth-child(7) { animation-delay: 0.6s;}
.view_2 span:nth-child(8) { animation-delay: 0.7s;}
.view_2 span:nth-child(9) { animation-delay: 0.8s;}
.view_2 span:nth-child(10) { animation-delay: 0.9s;}
.view_2 span:nth-child(11) { animation-delay: 1.0s;}
.view_2 span:nth-child(12) { animation-delay: 1.1s;}
.view_2 span:nth-child(13) { animation-delay: 1.2s;}
.view_2 span:nth-child(14) { animation-delay: 1.3s;}
.view_2 span:nth-child(15) { animation-delay: 1.4s;}
.view_2 span:nth-child(16) { animation-delay: 1.5s;}
.view_2 span:nth-child(17) { animation-delay: 1.6s;}
.view_2 span:nth-child(18) { animation-delay: 1.7s;}
.view_2 span:nth-child(19) { animation-delay: 1.8s;}
.view_2 span:nth-child(20) { animation-delay: 1.9s;}
.view_2 span:nth-child(21) { animation-delay: 2.0s;}
.view_2 span:nth-child(22) { animation-delay: 2.1s;}
.view_2 span:nth-child(23) { animation-delay: 2.2s;}
.view_2 span:nth-child(24) { animation-delay: 2.3s;}
.view_2 span:nth-child(25) { animation-delay: 2.4s;}
.view_2 span:nth-child(26) { animation-delay: 2.5s;}
.view_2 span:nth-child(27) { animation-delay: 2.6s;}
.view_2 span:nth-child(28) { animation-delay: 2.7s;}
.view_2 span:nth-child(29) { animation-delay: 2.8s;}
.view_2 span:nth-child(30) { animation-delay: 2.9s;}
.view_2 span:nth-child(31) { animation-delay: 3.0s;}
.view_2 span:nth-child(32) { animation-delay: 3.1s;}
.view_2 span:nth-child(33) { animation-delay: 3.2s;}
.view_2 span:nth-child(34) { animation-delay: 3.3s;}
.view_2 span:nth-child(35) { animation-delay: 3.4s;}
.view_2 span:nth-child(36) { animation-delay: 3.5s;}
.view_2 span:nth-child(37) { animation-delay: 3.6s;}
.view_2 span:nth-child(38) { animation-delay: 3.7s;}
.view_2 span:nth-child(39) { animation-delay: 3.8s;}
.view_2 span:nth-child(40) { animation-delay: 3.9s;}
.view_2 span:nth-child(41) { animation-delay: 4.0s;}
.view_2 span:nth-child(42) { animation-delay: 4.1s;}
.view_2 span:nth-child(43) { animation-delay: 4.2s;}
.view_2 span:nth-child(44) { animation-delay: 4.3s;}
.view_2 span:nth-child(45) { animation-delay: 4.4s;}
.view_2 span:nth-child(46) { animation-delay: 4.5s;}
.view_2 span:nth-child(47) { animation-delay: 4.6s;}
.view_2 span:nth-child(48) { animation-delay: 4.7s;}
.view_2 span:nth-child(49) { animation-delay: 4.8s;}
.view_2 span:nth-child(50) { animation-delay: 4.9s;}
.view_2 span:nth-child(51) { animation-delay: 5.0s;}
.view_2 span:nth-child(52) { animation-delay: 5.1s;}
.view_2 span:nth-child(53) { animation-delay: 5.2s;}
.view_2 span:nth-child(54) { animation-delay: 5.3s;}
.view_2 span:nth-child(55) { animation-delay: 5.4s;}
.view_2 span:nth-child(56) { animation-delay: 5.5s;}
.view_2 span:nth-child(57) { animation-delay: 5.6s;}

@keyframes loading {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1; }
}

.view_3 {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    margin-bottom: 15px;
    animation: fadein .6s forwards;
    margin-bottom: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 20%);
    display: block;
}

.view_3 span {opacity: 0;}
.view_3.active-slide span {
    font-family: "游明朝体", "游明朝", "游明朝", "ヒラギノ明朝プロ", "ヒラギノ明朝プロ","MS P明朝", "MS PMincho", serif;
    font-size: 2.8rem;
    display: inline-block;
    margin: 0 -.075em; animation: loading .7s
    forwards; opacity: 0;
    line-height: 1.4em
}

.view_3 span:nth-child(1) { animation-delay: 0.0s;}
.view_3 span:nth-child(2) { animation-delay: 0.1s;}
.view_3 span:nth-child(3) { animation-delay: 0.2s;}
.view_3 span:nth-child(4) { animation-delay: 0.3s;}
.view_3 span:nth-child(5) { animation-delay: 0.4s;}
.view_3 span:nth-child(6) { animation-delay: 0.5s;}
.view_3 span:nth-child(7) { animation-delay: 0.6s;}
.view_3 span:nth-child(8) { animation-delay: 0.7s;}
.view_3 span:nth-child(9) { animation-delay: 0.8s;}
.view_3 span:nth-child(10) { animation-delay: 0.9s;}
.view_3 span:nth-child(11) { animation-delay: 1.0s;}
.view_3 span:nth-child(12) { animation-delay: 1.1s;}
.view_3 span:nth-child(13) { animation-delay: 1.2s;}
.view_3 span:nth-child(14) { animation-delay: 1.3s;}
.view_3 span:nth-child(15) { animation-delay: 1.4s;}
.view_3 span:nth-child(16) { animation-delay: 1.5s;}
.view_3 span:nth-child(17) { animation-delay: 1.6s;}
.view_3 span:nth-child(18) { animation-delay: 1.7s;}
.view_3 span:nth-child(19) { animation-delay: 1.8s;}
.view_3 span:nth-child(20) { animation-delay: 1.9s;}
.view_3 span:nth-child(21) { animation-delay: 2.0s;}
.view_3 span:nth-child(22) { animation-delay: 2.1s;}
.view_3 span:nth-child(23) { animation-delay: 2.2s;}
.view_3 span:nth-child(24) { animation-delay: 2.3s;}
.view_3 span:nth-child(25) { animation-delay: 2.4s;}
.view_3 span:nth-child(26) { animation-delay: 2.5s;}
.view_3 span:nth-child(27) { animation-delay: 2.6s;}
.view_3 span:nth-child(28) { animation-delay: 2.7s;}
.view_3 span:nth-child(29) { animation-delay: 2.8s;}
.view_3 span:nth-child(30) { animation-delay: 2.9s;}
.view_3 span:nth-child(31) { animation-delay: 3.0s;}
.view_3 span:nth-child(32) { animation-delay: 3.1s;}
.view_3 span:nth-child(33) { animation-delay: 3.2s;}
.view_3 span:nth-child(34) { animation-delay: 3.3s;}
.view_3 span:nth-child(35) { animation-delay: 3.4s;}
.view_3 span:nth-child(36) { animation-delay: 3.5s;}
.view_3 span:nth-child(37) { animation-delay: 3.6s;}
.view_3 span:nth-child(38) { animation-delay: 3.7s;}
.view_3 span:nth-child(39) { animation-delay: 3.8s;}
.view_3 span:nth-child(40) { animation-delay: 3.9s;}
.view_3 span:nth-child(41) { animation-delay: 4.0s;}
.view_3 span:nth-child(42) { animation-delay: 4.1s;}
.view_3 span:nth-child(43) { animation-delay: 4.2s;}
.view_3 span:nth-child(44) { animation-delay: 4.3s;}
.view_3 span:nth-child(45) { animation-delay: 4.4s;}
.view_3 span:nth-child(46) { animation-delay: 4.5s;}
.view_3 span:nth-child(47) { animation-delay: 4.6s;}
.view_3 span:nth-child(48) { animation-delay: 4.7s;}
.view_3 span:nth-child(49) { animation-delay: 4.8s;}
.view_3 span:nth-child(50) { animation-delay: 4.9s;}
.view_3 span:nth-child(51) { animation-delay: 5.0s;}
.view_3 span:nth-child(52) { animation-delay: 5.1s;}
.view_3 span:nth-child(53) { animation-delay: 5.2s;}
.view_3 span:nth-child(54) { animation-delay: 5.3s;}
.view_3 span:nth-child(55) { animation-delay: 5.4s;}
.view_3 span:nth-child(56) { animation-delay: 5.5s;}
.view_3 span:nth-child(57) { animation-delay: 5.6s;}
.view_3 span:nth-child(58) { animation-delay: 5.7s;}
.view_3 span:nth-child(59) { animation-delay: 5.8s;}
.view_3 span:nth-child(60) { animation-delay: 5.9s;}
.view_3 span:nth-child(61) { animation-delay: 6.0s;}
.view_3 span:nth-child(62) { animation-delay: 6.1s;}
.view_3 span:nth-child(63) { animation-delay: 6.2s;}
.view_3 span:nth-child(64) { animation-delay: 6.3s;}
.view_3 span:nth-child(65) { animation-delay: 6.4s;}
.view_3 span:nth-child(66) { animation-delay: 6.5s;}
.view_3 span:nth-child(67) { animation-delay: 6.6s;}
.view_3 span:nth-child(68) { animation-delay: 6.7s;}
.view_3 span:nth-child(69) { animation-delay: 6.8s;}
.view_3 span:nth-child(70) { animation-delay: 6.9s;}
.view_3 span:nth-child(71) { animation-delay: 7.0s;}
.view_3 span:nth-child(72) { animation-delay: 7.1s;}
.view_3 span:nth-child(73) { animation-delay: 7.2s;}
.view_3 span:nth-child(74) { animation-delay: 7.3s;}
.view_3 span:nth-child(75) { animation-delay: 7.4s;}
.view_3 span:nth-child(76) { animation-delay: 7.5s;}
.view_3 span:nth-child(77) { animation-delay: 7.6s;}
.view_3 span:nth-child(78) { animation-delay: 7.7s;}
.view_3 span:nth-child(79) { animation-delay: 7.8s;}
.view_3 span:nth-child(80) { animation-delay: 7.9s;}
.view_3 span:nth-child(81) { animation-delay: 8.0s;}
.view_3 span:nth-child(82) { animation-delay: 8.1s;}
.view_3 span:nth-child(83) { animation-delay: 8.2s;}
.view_3 span:nth-child(84) { animation-delay: 8.3s;}
.view_3 span:nth-child(85) { animation-delay: 8.4s;}
.view_3 span:nth-child(86) { animation-delay: 8.5s;}
.view_3 span:nth-child(87) { animation-delay: 8.6s;}
.view_3 span:nth-child(88) { animation-delay: 8.7s;}
.view_3 span:nth-child(89) { animation-delay: 8.8s;}
.view_3 span:nth-child(90) { animation-delay: 8.9s;}
.view_3 span:nth-child(91) { animation-delay: 9.0s;}
.view_3 span:nth-child(92) { animation-delay: 9.1s;}
.view_3 span:nth-child(93) { animation-delay: 9.2s;}
.view_3 span:nth-child(94) { animation-delay: 9.3s;}

@keyframes loading {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1; }
}


li.view_4 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -15%);
    display: block!important;
}

li.view_4 img {
    
    animation-delay: 1s;
    opacity: 0;
}

li.view_4.active-slide img {animation: loadingtwo .6s forwards;}

@keyframes loadingtwo {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1; }
}

/* ヘッダー */
header .top_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1000px;
    margin: 0 auto;
    padding: 15px 0;
}

header .top_area h1 img {
    width: 65%;
}

header .top_area .header-contact p {
    font-size: 2rem;
    line-height: 1.5em;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
}

header .top_area .header-contact p img {
    width: 22px;
    padding: 0 3.5px 5px 0;
}

header .top_area .header-contact p.mail {
    letter-spacing: 1.2px;
}

header nav {
    background: #fff;
    height: 70px;
}

header nav .header-nav {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 25px 0;
}

header nav .header-nav li {
    width : calc(100% / 6);
    text-align: center;
    border-right: solid 1px #042275;
    position: relative;
}

header nav .header-nav li:last-child {border-right: none;}
header nav .header-nav li a p.on {display: none;}
header nav .header-nav li a p.off {
    display: block;
    color: #737373;
}

header nav .header-nav li.active a::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -15px;
    width: 80px;
    height: 2px;
    transform: translateX(-50%);
    background-color: #042275;
}

header nav .header-nav li.active a p.on {
    display: block;
    font-weight: bold;
    color: #042275;
}

header nav .header-nav li.active a p.off {display: none;}
header nav .header-nav li a p {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-size: 2rem;
}

header .bottom-menu {
    display: none;
}

body.fixed nav {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
    height: 70px;
}

/* INDEX */
.index-wrap {
    margin-top: 15px;
}

#message,
#post,
#service,
#company {
    padding-top: 70px;
}

#message .title-wrap,
#post .title-wrap,
#service .title-wrap,
#company .title-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background: #F5F5F5;
    height: 150px;
}

#message .title-wrap .title,
#post .title-wrap .title,
#service .title-wrap .title,
#company .title-wrap .title {
    text-align: center;
    padding-right: 20px;
}

#message .title-wrap .title span,
#post .title-wrap .title span,
#service .title-wrap .title span,
#company .title-wrap .title span {
    display: block;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    color: #042275;
}

#message .title-wrap .title h2 img {
    width: 47%;
}

#post .title-wrap .title h2 img,
#service .title-wrap .title h2 img,
#company .title-wrap .title h2 img {
    width: 100%;
}

#message .textarea,
#post .textarea {
    padding: 80px 0 80px;
    text-align: center;
    font-size: 2rem;
    line-height: 2.5em;
}

#post .news_blog {
    padding: 80px 0 80px;
    max-width: 620px;
    margin: 0 auto;
}

#post .news_blog dl a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    line-height: 2.5em;
}

#post .news_blog dl a:hover {
    transition: 0.5s;
    color: #042275;
}

#post .news_blog dt {
    width: 25%;
    font-size: 1.6rem;
}

#post .news_blog dd {
    width: 75%;
    font-size: 1.8rem;
}

#post .news_blog .viewmore {
    text-align: end;
    padding-top: 45px;
}

#post .news_blog .viewmore a {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    font-size: 1.6rem;
    color: #042275;
}

#post .news_blog .viewmore a.underline {
    display: inline-block;
    padding-bottom: 4px;
    position: relative;
}

#post .news_blog .viewmore a.underline::after {
    background-color: #042275;
    bottom: 0;
    content: '';
    display: block;
    height: 2px;
    left: 0;
    position: absolute;
    transition: .5s all;
    width: 0;
}

#post .news_blog .viewmore a.underline:hover::after {
    width: 100%;
}

#service .textarea {
    padding: 80px 0 150px;
    max-width: 935px;
    margin: 0 auto;
}

#service .textarea h3 {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    font-size: 2.4rem;
    text-align: center;
    color: #042275;
    padding-bottom: 50px;
}

#service .textarea p {
    max-width: 750px;
    margin: 0 auto;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.8em;
}

#service .textarea .for-client {
    padding-bottom: 100px;
}

#company .textarea {
    padding: 80px 0 150px;
    max-width: 620px;
    margin: 0 auto;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
}

#company .textarea .company_data {
    font-size: 1.8rem;
    padding-bottom: 100px;
}

#company .textarea .company_data dl {
    display: flex;
    flex-wrap: wrap;
    line-height: 2em;
}

#company .textarea .company_data dl dt {
    width: 23%;
    font-weight: bold;
}

#company .textarea .company_data dl dd {
    width: 77%;
}

#company .textarea .plofile {
    font-size: 1.6rem;
    text-align: justify;
}

#company .textarea .plofile h5 {
    font-size: 2rem;
    font-weight: bold;
    padding-bottom: 20px;
}

#company .textarea .plofile img {
    float: left;
    margin: 0 25px 15px 0;
    width: 39.5%;
}

#company .textarea .plofile p {
    line-height: 1.6em;
}

#company .textarea .plofile p.top-space {
    line-height: 1.6em;
    padding-top: 35px;
}


/* フッター */
footer .fotter-wrap {
    background: #042275;
    text-align: center;
    padding-bottom: 50px;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
}

footer .fotter-wrap .fotter-data {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding-top: 25px;
}

footer .fotter-wrap .footer_logo {
    width: 40%;
    text-align: left;
}

footer .fotter-wrap .company_data {
    width: 40%;
    font-size: 1.4rem;
    color: #fff;
}

footer .fotter-wrap .company_data dl {
    display: flex;
    flex-wrap: wrap;
    text-align: left;
    line-height: 1.4em;
}

footer .fotter-wrap .company_data dl dt {
    width: 18%;
}

footer .fotter-wrap .company_data dl dd {
    width: 82%;
}

footer .fotter-wrap .fotter_copy {
    font-weight: 500;
    font-size: 1.2rem;
    color: #fff;
    padding-top: 25px;
}

/* トップに戻るボタン */

.back-to-top {
    width: 55px;
    height: 55px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    text-align: center;
    background: #042275;
    border: 1px solid #fff;
    z-index: 999;
}

.back-to-top a {
    display: block;
    position: absolute;
    width: 50px;
    height: 35px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-decoration: none;
    font-size: 1.8rem;
    color: #fff;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
}

.back-to-top a span {
    display: block;
    font-size: 1rem;
    padding-top: 5px;
}

.back-to-top:hover {opacity: 0.7;}

/* お知らせ一覧 */

.archive-post .title-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background: #F5F5F5;
    height: 150px;
}

.archive-post .title {
    text-align: center;
    padding-right: 20px;
}

.archive-post .title-wrap .title span {
    display: block;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    color: #042275;
}

.archive-post .title-wrap .title h2 img {
    width: 100%;
}

.archive-post .news_blog {
    max-width: 750px;
    margin: 0 auto;
    padding: 50px 0 150px;
}

.archive-post .news_blog dl a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    line-height: 2.2em;
}

.archive-post .news_blog dl a dt {
    width: 25%;
    font-size: 1.6rem;
}

.archive-post .news_blog dl a dd {
    width: 75%;
    font-size: 2rem;
}

.archive-post .news_blog dl a:hover {
    transition: 0.5s;
    color: #042275;
}

/* wp-pagenavi */
.wp-pagenavi {
    text-align: center;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 2rem;
    padding-top: 100px;
}

.wp-pagenavi span.pages {
    display: none;
}

.wp-pagenavi a,
.wp-pagenavi span {
    padding: 5px 9.5px;
    color: #042275;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
    padding: 5px 5px;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
    background: #042275;
    color: #fff;
}

/* お知らせ詳細 */

#post-pagezone.fixed .archive-post .title-wrap,
#post-pagezone.fixed .single-post .title-wrap {
    padding-top: 70px;
}

.single-post .title-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background: #F5F5F5;
    height: 150px;
}

.single-post .title {
    text-align: center;
    padding-right: 20px;
}

.single-post .title-wrap .title span {
    display: block;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    color: #042275;
}

.single-post .title-wrap .title h2 img {
    width: 100%;
}

.single-post .contents {
    max-width: 950px;
    margin: 0 auto;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    padding: 100px 0 200px;
}

.single-post .contents .title h3 {
    text-align: left;
    font-size: 2.8rem;
    color: #042275;
}

.single-post .contents .ymd {
    display: flex;
    font-size: 1.8rem;
    padding: 25px 0;
}

.single-post .contents .ymd dd a.genre {
    color: #042275;
    text-decoration: underline;
}

.single-post .contents .article {
    padding: 50px 0 200px;
}

.single-post .contents .article p img {
    max-width: 100%;
    padding: 5px 0;
}

.single-post .contents .article h4 {
    font-size: 2.2rem;
    padding: 10px 0;
    line-height: 1.2em;
}

.single-post .contents .article h3 {
    font-size: 2.5rem;
    padding: 10px 0;
    line-height: 1.2em;
}

.single-post .contents .article h2 {
    font-size: 2.8rem;
    padding: 10px 0;
    line-height: 1.2em;
}

.single-post .contents .article p {
    font-size: 1.8rem;
    text-align: justify;
    line-height: 1.6em;
    letter-spacing: 1.2px;
    padding: 10px 0;
}

.single-post .contents .article p a {
    color: #042275;
    text-decoration: underline;
}

.single-post .contents .page-navi {font-size: 2rem;}
.single-post .contents .page-navi .page-turn {
    display: flex;
    justify-content: space-between;
}

.single-post .contents .page-navi .return-link {
    text-align: center;
}

.single-post .contents .page-navi .page-turn .previous-post,
.single-post .contents .page-navi .page-turn .next-post,
.single-post .contents .page-navi .return-link a {
    display: inline-block;
    padding-bottom: 4px;
    position: relative;
}

.single-post .contents .page-navi .page-turn .previous-post::after,
.single-post .contents .page-navi .page-turn .next-post::after,
.single-post .contents .page-navi .return-link a::after {
    background-color: #042275;
    bottom: 0;
    content: '';
    display: block;
    height: 2px;
    left: 0;
    position: absolute;
    transition: .5s all;
    width: 0;
}

.single-post .contents .page-navi .page-turn .previous-post:hover::after,
.single-post .contents .page-navi .page-turn .next-post:hover::after,
.single-post .contents .page-navi .return-link a:hover::after {
    width: 100%;
}

.single-post .contents .page-navi .page-turn .previous-post a:hover,
.single-post .contents .page-navi .page-turn .next-post a:hover,
.single-post .contents .page-navi .return-link a:hover {
    color: #042275;
}

/* contact */

#contact-pagezone header {
    padding-bottom: 25px;
}

.space-01,
.space-02 {
    height: 29px;
    background: #F5F5F5;
}

#contact-pagezone .wp-block-group .wp-block-group__inner-container,
#contact-confirm-pagezone .wp-block-group .wp-block-group__inner-container,
#contact-thanks-pagezone .wp-block-group .wp-block-group__inner-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background: #F5F5F5;
}

#contact-pagezone .wp-block-group .wp-block-group__inner-container .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained .wp-block-group__inner-container,
#contact-confirm-pagezone .wp-block-group .wp-block-group__inner-container .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained .wp-block-group__inner-container,
#contact-thanks-pagezone .wp-block-group .wp-block-group__inner-container .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained .wp-block-group__inner-container {
    flex-direction: column!important;
}

#contact-pagezone .wp-block-group .wp-block-group__inner-container h2,
#contact-confirm-pagezone .wp-block-group .wp-block-group__inner-container h2,
#contact-thanks-pagezone .wp-block-group .wp-block-group__inner-container h2 {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    color: #042275;
}

#contact-pagezone .wp-block-group .wp-block-group__inner-container figure {
    padding-left: 10px;
}

.wpcf7 form {
    max-width: 950px;
    margin: 0 auto;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
}

.wpcf7 form .contact-tel {
    padding: 50px 0 75px;
}

.wpcf7 form .contact-mail {
    padding-bottom: 50px;
}

.wpcf7 form .contact-tel h3,
.wpcf7 form .contact-mail h3 {
    font-size: 2.4rem;
    font-weight: bold;
    padding-bottom: 10px;
    border-bottom: 1px solid rgb(133, 133, 133);
}

.wpcf7 form .contact-tel p {
    font-size: 3.5rem;
    font-weight: bold;
    color: #042275;
    padding: 15px 0 25px;
    margin: 0;
}

.wpcf7 form .contact-tel p span {
    font-size: 1.8rem;
    padding-right: 5px;
}

.wpcf7 form .contact-mail p {
    font-size: 2rem;
    padding: 15px 0 25px;
}

.wpcf7 form .contact-mail p span {
    color: #042275;
    padding-right: 2.5px;
}

.wpcf7 form p {
    border-top: 1px solid #fff;
    margin: 25px 0;
}

.wpcf7 form p label {
    display: flex;
}

.wpcf7 form p label span.name {
    width: 25%;
    padding: 15px 0 15px 10px;
    font-size: 2.2rem;
}

.wpcf7 form p label span.dot {
    width: 5%;
    text-align: center;
    font-size: 1.4rem;
    background: #042275;
    color: #fff;
    margin: 14.5px 0;
    padding-top: 6.5px;
    display: block;
    border-radius: 5px;
}

.wpcf7 form p label span.dot.none {
    background: #fff;
}

.wpcf7 form p label span.dot.area {
    margin: 14.5px 0 164.5px;
}

.wpcf7 form p label span.wpcf7-form-control-wrap {
    width: 67.5%;
    line-height: 0;
    position: relative;
}

.wpcf7 form p label span.wpcf7-form-control-wrap input {
    width: 100%;
    font-size: 2.4rem;
    padding: 10px 5px;
}

.wpcf7-not-valid-tip {
    position: absolute;
    top: 25px;
    left: 10px;
}

.wpcf7 form p label span.wpcf7-form-control-wrap textarea {
    border: 1px solid rgb(118, 118, 118);
    width: 100%;
    padding: 1px 6px;
    height: 200px;
}

.wpcf7 form p input.wpcf7-form-control.wpcf7-submit.has-spinner {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-size: 1.8rem;
    background: #042275;
    color: #fff;
    padding: 7px;
    cursor: pointer;
    border: none;
    border-radius: 5px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner.send {
    padding: 7.5px 15px!important;
}

.wpcf7 form p:nth-child(9) {
    text-align: center;
    padding: 50px 0 150px;
}

#contact-confirm-pagezone .wpcf7 form p label {
    align-items: center;
}

#contact-confirm-pagezone .wpcf7 form p label span.name {
    margin-right: 15px;
}

#contact-confirm-pagezone .wpcf7 form p:nth-child(9) {
    display: flex;
    justify-content: center;
}

#contact-confirm-pagezone .wpcf7 form p:nth-child(9) input.return {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-size: 2rem;
    background: #042275;
    color: #fff;
    padding: 5px 15px;
    margin-right: 30px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

#contact-thanks-pagezone .contact-thanks {
    max-width: 950px;
    margin: 0 auto;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-size: 2rem;
    padding: 50px 0 150px;
    text-align: center;
    line-height: 1.6em;
}


