@charset "UTF-8";


@keyframes lowfadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
body {
	opacity: 0;
    animation: lowfadeIn 1s ease-out forwards;
}

/*header調整
---------------------------*/
.header_wrap {
	padding-bottom:10px;
}
.main {
	padding-top:109px;
}

.content_header {
	height:350px;
}
.content_visual {
	background-repeat:no-repeat;
	background-size:1920px auto;
	background-position: center center;
	height:100%;
	width:100%;
	position:relative;
	z-index:-1;
}
.content_header_text {
	position:relative;
	width:100%;
	margin:0 auto;
}
.content_header_text::before {
	position:absolute;
	content:"";
	width:60%;
	height:350px;
	top:0%;
	left:0%;
	transform:translatex(-15%);
	background:rgb(239,133,140,0.75);
	z-index:0;
	background-repeat:no-repeat;
}
.content_header_text::after {
	position:absolute;
	/*content:"";*/
	top:-50%;
	left:5%;
	background:rgb(239,133,140,0.75);
	background-repeat:no-repeat;
	z-index:-1;
	width:700px;
	height:700px;
	border-radius:50%;
	clip-path: polygon(90% 0, 100% 0, 100% 100%, 90% 100%);
}
.content_hd_wrap {
    width: 100%;
	max-width:1200px;
	height:350px;
    margin: 0 auto;
    padding: 0px 50px 0;
    display: flex;
	color:#fff;
    justify-content: flex-start;
    align-items: center;
	position:relative;
	z-index:2;
}
.content_hd_wrap h2 {
	line-height:2;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size:32px;
	letter-spacing:0.3em;
	width:48%;
}
.content_page {
	background:#fff;
}
section {
	padding: 80px 0;
}
.content_wrap {
	width: 100%;
	max-width:1200px;
	margin:0 auto;
}
h3 {
	color:var(--color-primary);
	font-size:32px;
	margin-bottom:20px;
	text-align:center;
}
h3 span {
	border-bottom: solid 2px var(--color-primary);
	padding: 0 5rem;
	position:relative;
}
h3 span::before {
	position:absolute;
	bottom: -4px;
	left: -24px;
	content:"";
	width:48px;
	aspect-ratio:74 /64 ;
	background-image:url(../images/common/icon_h3.png);
	background-repeat:no-repeat;
	background-size:contain;
}
h4 {
	color:var(--color-primary);
	font-size: 28px;
	border-bottom: solid 1px var(--color-primary);
	padding-bottom:5px;
	margin-bottom:15px;
}
/*パンくずリスト
------------------------------------------*/
#breadcrumbs {
	margin:20px auto;
	width:100%;
	max-width:1200px;
	font-size:16px;
}
#breadcrumbs span {
	padding: 0 3px;
}
#breadcrumbs span a {
	color:#000;
	text-decoration:underline;
} 
#breadcrumbs span.breadcrumb_last {
	font-weight:600;
}

/*投稿
------------------------------------------*/
.single {
	overflow-x:hidden;
}
.single .content_visual {
    background-image: url(../images/index/img_main03.jpg);
	background-position: right top;
}
.single h3 {
	text-align:left;
	padding-left:50px;
	position:relative;
}
.single h3::before {
	position:absolute;
	bottom:-1px;
	left:0%;
	content:"";
	width:48px;
	aspect-ratio:74 /64 ;
	background-image:url(../images/common/icon_h3.png);
	background-repeat:no-repeat;
	background-size:contain;
}
.single h3::after {
	position:absolute;
	bottom:0px;
	left:23px;
	content:"";
	width:100%;
	border-bottom: solid 2px var(--color-primary);
}
.single_date {
	margin: 30px 0;
	text-align:right;
	font-size:18px;
}
.single .content {
	font-size:18px;
	line-height:1.5;
	padding: 2rem 2rem 2rem 3rem;
}
.single .content p {
	padding: 2rem 0;
}
.single .submit {
	margin:30px 0;
	text-align:center;
	font-size:20px;
}
.single .submit a {
	display:inline-block;
	padding:1rem 3rem;
	border-radius:30px;
	transition: color 0.5s ease;
    overflow: hidden;
	position:relative;
	z-index:1;
	border:solid 1px var(--color-primary);
	color:var(--color-primary);
}
.single .submit a:hover {
	color:#fff;
}
.single .submit a::before {
	position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 30px;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.5s ease;
	z-index:-1;
	background:var(--color-primary);
}
.single .submit a:hover::before {
	transform: scaleX(1);
}

/*共通固定ページ*/
.page .content_visual {
    background-image: url(../images/low/bg_greeting.png);
}
@media screen and (max-width: 1200px) {
	/*画面幅1024pxで調整*/
	.content_page {
		padding:0 2%;
	}
	.content_header_text::before {
		
	}
	.content_hd_wrap {
		width: 1024px;
	}
}
@media screen and (max-width: 1023px) {
	/*画面幅1000pxで調整*/
	.content_hd_wrap {
		
	}
}
@media screen and (max-width: 999px) {
	/*画面幅751pxで調整*/
	.main {
		overflow-x:hidden;
	}
	.content_header_text::before {
		
	}
}
@media screen and (max-width: 750px) {
	/*画面幅681pxで調整*/
	body {
		padding-bottom:0;
	}
	.main {
		overflow-x:hidden;
		padding-top:60px;
	}
	.content_visual {
		background-position: 75% center;
	}
	.content_hd_wrap h2  {
		width:100%;
	}
	.content_hd_wrap {
		width:100%;
		height:300px;
		padding: 0 1rem;
		justify-content:center;
	}
	.content_header {
		height:300px;
	}
	.content_header_text::before {
		width:100%;
		height:300px;
		transform:translatex(0%);
	}
	.content_header_text {
		height:300px;
	}
}
@media screen and (max-width: 680px) {
	/*画面幅481pxで調整*/
	.main{
		padding-top:80px;
	}
	h3 span {
		border-bottom:none;
		padding: 0 0 0 24px;
	}
	h3 span::before {
		bottom: 2px;
	}
	
}
@media screen and (max-width: 480px) {
	/*iphoneSEサイズで調整*/
	h3 {
		font-size:28px;
	}
	.main{
		padding-top:70px;
	}
	.content_header {
		height:150px;
	}
	.content_header_text::before {
		height:150px;
		background:rgb(239, 133, 140, 1);
	}
	.content_header_text {
		height:150px;
	}
	.content_hd_wrap {
		height:100%;
	}
	.content_hd_wrap h2 {
		text-align:center;
		letter-spacing:0.05em;
	}
}