﻿@import url('https://fonts.googleapis.com/css2?family=Bungee&family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

/* ----------　all　---------- */
.linkStyle{
	color:#124cb2;
	text-decoration: underline;
}
.linkStyle:hover{
	color:#124cb2;
	opacity: 0.7;
	transition: all 0.5s;
}

/*html, body{overflow: auto}*/
/*.pp-section{position: static}*/

body {
    font-family:  'Noto Sans JP', sans-serif;
}

.font_bar {
    font-family: 'Bungee', cursive;
}

/* nav */

.fix-bnr {
    bottom: 10px;
    right: 100px;
    z-index: 5;
    transition: 0.3s;
}


/* footer */


/* ----------　TOP　---------- */

/* main-img */

#custom {
    background-image: url(Dup/img/main-img.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.main-copy {
    max-width: 1100px;
    width: 55%;
    top: 10%;
    left: 2%;
    animation: anime1 0.5s ease 0s infinite alternate;
}


/* top */

#intro {
    background-image: radial-gradient(rgba(0,0,0,0.2) 5%, transparent 5%), radial-gradient(rgba(0,0,0,0.2) 5%, transparent 5%);
    background-size: 40px 40px;
    background-position: 0 0, 20px 20px;
}

#intro.trans .intro_left {
    justify-content: flex-start;

}

.con_bg {
    background-color: #124cb2;
    background-image: radial-gradient(rgba(0,0,0,0.2) 5%, transparent 5%), radial-gradient(rgba(0,0,0,0.2) 5%, transparent 5%);
    background-size: 40px 40px;
    background-position: 0 0, 20px 20px;
}

/* top-cms */



/* ----------　下層ページ　---------- */



/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */


/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
    
#custom {
height: 55vh!important;
}

.main-copy {
    width: 70%;
    top: 15%;
    left: 0%;
}

.fix-bnr {
    right: 50px;
    width: 300px;
}


.is-hidden {
  visibility: hidden;
  opacity: 0;
}
    
}

/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){



#custom {
    height: 65vh!important;
    background-position: right;
}

.main-copy {
    width: 90%;
    top: 40%;
    left: 0%;
    right: 0;
    margin: auto;
}

#page_title .title_wrap p {
    height: 2.5em;
}

.fix-bnr {
    right: 0;
    left: 0;
    margin: auto;
    width: 250px;
}

}
/*top-news*/
.topcms_news_type4 .cate_box{
	width: 30.33333%!important;
	margin-right: 1.5%;
	margin-left: 1.5%;
}
.topcms_news_type4 .cate_box{
	background-color: #fff;
	padding: 0;
	box-shadow: 10px 25px 30px rgb(0 0 0 / 8%);
	border-top: 2px solid #124cb2;
}
.topcms_news_type4 .txt_height{
	height: 3em
}
.topcms_news_type4 .box_title1:empty{
	display: block!important;
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.topcms_news_type4 .cate_box {
    width: 46.33333%!important;
}

.topcms_news_type4 .box_wrap {
        justify-content: space-between;
    row-gap: 50px;
}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.topcms_news_type4 .cate_box {width: 100%!important;}
}

/*一日の流れ*/

.flow_type4 .box_description2{
	border-left: dotted 4px #124cb2;
	background-color: rgba(204, 204, 204, .35);
}
.flow_type4 .box_txt1,
.flow_type4 .box_txt2{
	padding-left:20px;
}
.flow_type4 .box_wrap{
    position: relative;
    padding-left: 30px;
}
.flow_type4 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 30px);
    border-left: 4px dotted #124cb2;
    position: absolute;
    top: 30px;
    left: 26px;
}
.flow_type4 .cate_box:last-of-type{
	padding-bottom: 0;
}
.flow_type4 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
.flow_type4 .box_description2 span{
	position: absolute;
    display: inline-block;
    width: 68px;
    top: 5px;
    left: -38px;
}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
.flow_type4 .cate_box{
	flex-direction: column-reverse;
}
.flow_type4 .box_description2 span {
	width: 61px;
	left: -34px;
}
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.flow_type4 .box_wrap{
    padding-left: 23px;
}
.flow_type4 .box_wrap:before {
    left: 19px;
}
}