@charset "UTF-8";
/*
Theme Name: monotone
Author: 高野智弘
License: 高野智弘
License URI: https://t-takano.jp/
*/
/*==========================================================================
# reset - ブラウザの差異や不要なスタイルを無くすためのスタイル
========================================================================== */
* {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td, small, button, time, figure {
border: 0;
font: inherit;
font-size: 100%;
margin: 0;
padding: 0;
vertical-align: baseline;
}
html {
line-height: 1;
}
ol, ul {
list-style: none;
}
li, dd {
list-style-type: none;
}
header, footer, nav, section, article, aside, figure, figcaption {
display: block;
}
img {
border: none;
vertical-align: bottom;
}
a {
cursor: pointer;
text-decoration: none;
}
iframe {
border: none!important;
}
input,
textarea {
-webkit-appearance: none;
border-radius: 0;
}
html {
font-size: 16px;
}
body {
color: #333333;
font-size: 16px;
line-height: 1;
background-color: #FFF;
-webkit-text-size-adjust: 100%;
letter-spacing: .02em;
box-sizing: border-box;
font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro",'Noto Serif JP', 'Lucida Grande';
font-family: 'Shippori Mincho', serif;
}
/* ハンバーガー開閉時に背景を固定 https://kubogen.com/web-programing-287/ */
body.fixed {
width: 100%;
height: 100%;
position: fixed;
}
img {
width: 100%;
max-width: 100%;
height: auto;
image-rendering: -webkit-optimize-contrast;
}
a {
color: #333333;
text-decoration: none;
}
a:hover {
opacity: 1;
}
/* タイトル群（見出し） */
.ttl{
display: flex;
align-items: center;
}
.ttl-en{
font-weight: 500;
letter-spacing: .02em;
line-height: 1.5;
font-size: 78px;
color: #D9B4BB;
}
.ttl-en::after{
display: block;
width: 80px;
margin-top: 5px;
border-top: 1px solid #D9B4BB;
content: "";
}
.ttl-ja{
font-size: 26px;
margin-left: 40px;
letter-spacing: .03em;
margin-top: 5px;
}
@media(max-width:1024px){
.ttl-en{
font-size: 64px;
}
.ttl-en::after{
width: 60px;
margin-top: 5px;
}
.ttl-ja{
font-size: 20px;
margin-left: 30px;
margin-top: 3px;
}
}
@media(max-width:599px){
.ttl-en{
font-size: 30px;
}
.ttl-en::after{
width: 40px;
margin-top: 15px;
}
.ttl-ja{
font-size: 16.5px;
margin-left: 15px;
margin-top: -5px;
font-weight: 500;
}
}
/* ボタン */
.btn{

}
.btn a{
display: block;
background-color: #D9B4BB;
width: 260px;
margin: auto;
color: #fff;
text-align: center;
padding: 20px 0;
font-size: 14px;
position: relative;
letter-spacing: .1em;
}
.btn a:after {
content: "";
background: url(img/00_common/arrow.svg)no-repeat bottom;
background-size: 100%;
width: 20px;
height: 4px;
display: inline-block;
position: absolute;
top: 50%;
right: 15px;
transform: translateY(-50%);
margin-left: 10px;
}
.btn a:hover {
opacity: .8;
transition: .3s;
}
.btn a:hover:after {
right: 10px;
opacity: 1;
transition: .3s;
}
@media(max-width:599px){
.btn a{
width: 220px;
padding: 20px 0;
font-size: 12.5px;
}
.btn a:after {
right: 12px;
margin-left: 10px;
}
.btn a:hover:after {
right: 7px;
}
}
/* 背景 */
.bg01{
background: url(img/00_common/bg01.webp) center top;
}
.bg02{
background: url(img/00_common/bg02.webp) center top;
}
/* 改行 */
.sp-only{
display: none!important;
}
@media(max-width:599px){
.pc-only{
display: none!important;
}
.sp-only{
display: block!important;
}
}
/* ヘッダー */
.header{
width: 100%;
background-color: #fff;
}
.header-pc{
display: flex;
align-items: center;
justify-content: space-between;
padding-left: 80px;
padding-right: 50px;
height: 100px;
}
.header-logo{

}
.header-logo a{
display: block;
}
.header-logo a img{
height: 55px;
width: auto;
}
.header-r{
display: flex;
align-items: center;
}
.header-nav{

}
.header-list{
display: flex;
align-items: center;
margin-right: 15px;
}
.header-list li{

}
.header-list li a{
display: block;
padding: 10px;
font-size: 14px;
}
.header-list li a:hover{
color: #333333;
transition: .2s;
}
.header-btn{

}
.header-btn a{
display: block;
height: 50px;
line-height: 50px;
padding: 0 25px;
text-align: center;
font-size: 15px;
letter-spacing: .04em;
position: relative;
background-color: #D9B4BB;
color: #fff;
-webkit-box-shadow: 0 3px 15px rgba(0,0,0,0.2);
box-shadow: 0 3px 15px rgba(0,0,0,0.2);
}
.header-btn a:hover{
opacity: .9;
transition: .2s;
}
@media(max-width:1024px){
.header{

}
.header-pc{
padding-left: 25px;
padding-right: 30px;
height: 80px;
}
.header-list{
display: none;
}
.header-logo a img{
height: 45px;
}
.header-btn a{
height: 45px;
line-height: 45px;
padding: 0 22px;
font-size: 14.5px;
}
.header-sp{
display: none;
}
}
/* ヘッダー（スマホ） */
.header-sp{
display: none;
}
@media(max-width:599px){
.header-pc{
display: none;
}
.header{
/* position: inherit;
top: 0;
left: 0; */
width: 100%;
max-width: 100%;
border-radius: 0;
box-shadow: none;
}
.header-sp{
display: flex;
width: 100%;
max-width: 100%;
height:55px;
align-items: center;
justify-content: space-between;
}
.header-logo{

}
.header-logo a{
display: block;
margin-left: 15px;
}
.header-logo a img{
height: 40px;
width: auto;
}
.openbtn{
position: relative;
width: 55px;
height:55px;
cursor: pointer;
background:#D9B4BB;
}
.openbtn span{
display: inline-block;
transition: all .4s;
position: absolute;
left: 14px;
height: 2px;
background-color: #fff;
}
.openbtn span:nth-of-type(1) {
top:23px;
width: 50%;
}
.openbtn span:nth-of-type(2) {
top:31px;
width:30%;
}
.openbtn.active span:nth-of-type(1) {
top: 21px;
left: 18px;
transform: translateY(6px) rotate(-45deg);
width: 35%;
}
.openbtn.active span:nth-of-type(2) {
top: 33px;
left: 18px;
transform: translateY(-6px) rotate(45deg);
width: 35%;
}
.header-list-sp{
display: none;
}
.active .header-list-sp{
display: block;
width: 100%;
height: 100vh;
position: fixed;
top: 55px;
left: 0;
background-color:#F8F8F8;
z-index: 999;
padding: 20px 20px;
text-align: center;
}
.header-list-sp li{

}
.header-list-sp li a{
display: block;
padding: 12px 0;
width: 100%;
font-size: 14.5px;
}
.header-list-sp li a:hover{
color: #333333;
}
}
/* スマホ固定フッター */
#footer-btn{
display: none;
overflow: visible!important;
}
@media(max-width:599px){
/*リンクを下に固定*/
#footer-btn {
display: block;
position: fixed;
left: 5%;
bottom: 15px;
z-index: 2;
opacity: 0;/*はじめは非表示*/
transform: translateY(100px);
width: 90%;
text-align: center;
}
/*　上に上がる動き　*/
#footer-btn.UpMove{
animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
from {
opacity: 0;
transform: translateY(100px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/*　下に下がる動き　*/
#footer-btn.DownMove{
animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
from {
opacity: 1;
transform: translateY(0);
}
to {
opacity: 1;
transform: translateY(100px);
}
}
/*リンクの形状*/
#footer-btn a{
display: block;
height: auto;
padding: 0 45px 0 30px;
margin: 0 auto;
height: 50px;
line-height: 50px;
font-size: 16px;
letter-spacing: 0;
font-weight: 600;
position: relative;
background-color: #D9B4BB;
border-color: transparent;
color: #fff;
border: 2px solid #fff;
-webkit-box-shadow: 0 3px 15px rgba(0,0,0,0.2);
box-shadow: 0 3px 15px rgba(0,0,0,0.2);
}
}
#footer-btn a:after {
content: '';
display: block;
width: 17px;
height: 17px;
background: url(img/00_common/btn-arrow.svg) 0 0 no-repeat;
background-size: 100%;
position: absolute;
top: 50%;
right: 15px;
transform: translateY(-50%);
}
/* ファーストビュー */
#fv{

}
#fv-pc img{
width: 100%;
max-width: 100%;
}
#fv-sp{
display: none;
}
@media(max-width:599px){
#fv-pc{
display: none;    
}
#fv-sp{
display: block;
}
#fv-sp img{
width: 100%;
max-width: 100%;    
}
}
/* コンセプト（TOP） */
#top-concept{
overflow: hidden;
position: relative;
}
#top-concept-en{
position: absolute;
top: 0;
right: 0;
font-size: 120px;
letter-spacing: .05em;
line-height: 1.1;
color: #F8F8F8;
white-space: nowrap;
text-align: right;
font-weight: 500;
}
#top-concept .inner{
padding-top: 200px;
padding-bottom: 160px;
max-width: 1120px;
margin: auto;
}
#top-event .inner{
padding-top: 200px;
padding-bottom: 60px;
max-width: 1120px;
margin: auto;
}
#top-event {
    margin-bottom: 80px;
}
#top-concept-content{
position: relative;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
padding-left: 100px;
}
#top-concept-side{
font-family: 'Cinzel', serif;
font-weight: 500;
text-transform: uppercase;
writing-mode: vertical-rl;
border-right: 1px solid;
letter-spacing: .2em;
line-height: 1;
padding: 0 29px 112px 0;
font-size:14px;
position: absolute;
top: 10px;
left: 0;
}
#top-concept-l{
flex: 1;
margin-right: 70px;
}
#top-concept-l h2{
font-size: 28px;
line-height: 1.8;
font-weight: 700;
letter-spacing: .07em;
}
#top-concept-r{
max-width: 600px;
width: 100%;
}
#top-concept-r p{
font-size: 16px;
line-height: 2;
letter-spacing: .02em;
}
@media(max-width:1024px){
#top-concept{

}
#top-concept-en{
font-size: 80px;
letter-spacing: .05em;
}
#top-concept .inner{
padding-top: 100px;
padding-bottom: 80px;
max-width: 100%;
width: calc(100% - 60px);
}
#top-concept-content{
padding-left: 60px;
}
#top-concept-side{
padding-right: 15px;
font-size:12px;
}
#top-concept-l{
flex: 1;
margin-right: 30px;
}
#top-concept-l h2{
font-size: 22px;
line-height: 1.7;
}
#top-concept-r{
max-width: 370px;
}
#top-concept-r p{
font-size: 15px;
line-height: 1.8;
}        
}
@media(max-width:599px){
#top-concept{

}
#top-concept-en{
font-size: 50px;
letter-spacing: .01em;
}
#top-concept .inner{
padding-top: 50px;
width: calc(100% - 30px);
max-width: 100%;
padding-bottom: 60px;
}
#top-concept-content{
padding-left: 50px;
display: block;
}
#top-concept-side{
padding: 0 15px 35px 0;
font-size: 12.5px;
letter-spacing: .25em;
}
#top-concept-l{
flex: 1;
margin-right: 30px;
}
#top-concept-l h2{
font-size: 22px;
line-height: 1.8;
margin-bottom: 25px;
letter-spacing: .05em;
}
#top-concept-r{
max-width: 400px;
}
#top-concept-r p{
font-size: 14px;
line-height: 1.8;
}        
}
/* 選ばれる理由（TOP） */
#top-reason,
#sub-reason{
position: relative;
}
#top-reason::before,
#sub-reason::before {
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#top-reason .inner,
#sub-reason .inner{
max-width: 1120px;
width: 100%;
margin: auto;
padding-bottom: 100px;
}
.top-reason-content{
display: flex;
justify-content: center;
margin-top: 80px;
}
.top-reason-content-reverse{
flex-direction: row-reverse;
}
.top-reason-img{
width: 370px;
margin-right: 45px;
}
.top-reason-content-reverse .top-reason-img{
margin-right: 0;
margin-left: 45px;
}
.top-reason-img img{
width: 380px;
height: 100%;
}
.top-reason-text{
max-width: 600px;
width: 100%;
}
.top-reason-text h3{
font-size: 28px;
line-height: 1.7;
font-weight: 600;
letter-spacing: .05em;
margin-bottom: 40px;
}
.top-reason-text p{
font-size: 16px;
line-height: 2;
letter-spacing: .03em;
}
#top-reason .btn{
position: absolute;
bottom: -25px;
left: 50%;
transform: translateX(-50%);
}
@media(max-width:1024px){
#top-reason::before,
#sub-reason::before {
top: 55px;
width: 100%;
}
#top-reason .inner,
#sub-reason .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
}
.top-reason-content{
margin-top: 60px;
}
.top-reason-img{
width: 240px;
margin-right: 40px;
}
.top-reason-content-reverse .top-reason-img{
margin-right: 0;
margin-left: 40px;
}
.top-reason-img img{
width: 240px;
height: auto;
}
.top-reason-text{
max-width: 380px;
width: 100%;
}
.top-reason-text h3{
font-size: 22px;
line-height: 1.6;
margin-bottom: 20px;
}
.top-reason-text p{
font-size: 15px;
line-height: 1.7;
letter-spacing: .03em;
}        
}
@media(max-width:599px){
#top-reason::before,
#sub-reason::before {
top: 30px;
width: 100%;
}
#top-reason .inner,
#sub-reason .inner{
max-width: 92%;
width: 100%;
padding-bottom: 50px;
}
.top-reason-content{
margin-top: 50px;
display: block;
}
.top-reason-img{
width: 100%;
margin: 0;
margin-bottom: 20px;
}
.top-reason-content-reverse .top-reason-img{
width: 100%;
margin: 0;
margin-bottom: 20px;
}
.top-reason-img img{
width: 100%;
}
.top-reason-text{
max-width: 100%;
width: 100%;
}
.top-reason-text h3{
font-size: 18px;
line-height: 1.7;
margin-bottom: 18px;
}
.top-reason-text p{
font-size: 13.5px;
line-height: 1.7;
letter-spacing: .02em;
}        
}
/* 会員データ */
#top-data{

}
#top-data .inner{
max-width: 1120px;
width: 100%;
margin: auto;
padding-top: 140px;
}
.top-data-list{
display: flex;
justify-content: space-around;
align-items: center;
text-align: center;
margin: 100px auto 60px;
max-width: 950px;
}
.top-data-list-item{

}
.top-data-list-title{
font-size: 18px;
margin-bottom: 15px;
letter-spacing: .02em;
}
.top-data-list-title span{
font-size: 15px;
}
.top-data-list-num{
font-size: 70px;
letter-spacing: .02em;
}
.top-data-list-border{
width: 35px;
height: 1px;
background:#333333;
}
.top-data-text{
text-align: center;
font-size: 11px;
line-height: 1.5;
}
#top-data-img{
display: block;
max-width: 140px;
margin: 15px auto 0;
}
#top-data-img img{
max-width: 140px;
width: 100%;
}
#top-data-desc{
max-width: 600px;
margin: 40px auto;
border: 1px solid #333333;
padding: 25px;
}
#top-data-desc p{
font-size: 14px;
letter-spacing: .02em;
line-height: 1.7;
text-align: center;
}
@media(max-width:1024px){
#top-data{

}
#top-data .inner{
max-width: 92%;
width: 100%;
padding-top: 100px;
}
.top-data-list{
margin: 80px auto 50px;
max-width: 100%;
}
.top-data-list-title{
font-size: 15px;
margin-bottom: 10px;
}
.top-data-list-title span{
font-size: 13px;
}
.top-data-list-num{
font-size: 56px;
}
.top-data-list-border{
width: 25px;
margin-top: 20px;
}
#top-data-desc{
max-width: 600px;
margin: 30px auto;
padding: 25px;
}
#top-data-desc p{
font-size: 13.5px;
}
}
@media(max-width:599px){
#top-data{

}
#top-data .inner{
max-width: 92%;
width: 100%;
padding-top: 60px;
}
.top-data-list{
display: block;
margin: 40px auto 60px;
}
.top-data-list-item{

}
.top-data-list-title{
font-size: 16px;
margin-bottom: 15px;
}
.top-data-list-num{
font-size: 52px;
}
.top-data-list-border{
width: 35px;
height: 1px;
margin: 25px auto 50px;
}
.top-data-text{
text-align: center;
font-size: 10px;
}
#top-data-desc{
max-width: 100%;
margin: 25px auto;
padding: 15px;
}
#top-data-desc p{
font-size: 12px;
}
}
/* ごあいさつ */
#top-message{
position: relative;
}
#top-message::before {
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#top-message .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
.top-message-content{
display: flex;
justify-content: center;
margin-top: 80px;
}
.top-message-img{
width: 370px;
margin-right: 45px;
}
.top-message-img img{
width: 370px;
height: 450px;
}
.top-message-text{
max-width: 600px;
width: 100%;
}
.top-message-text h3{
font-size: 28px;
line-height: 1.7;
font-weight: 500;
letter-spacing: .05em;
margin-bottom: 45px;
}
.top-message-text p{
font-size: 15px;
line-height: 2;
letter-spacing: .03em;
}
#top-message .btn{
position: absolute;
bottom: -25px;
left: 50%;
transform: translateX(-50%);
}
#top-message-name{
font-size: 15px;
font-weight: 500;
margin-top: 30px;
text-align: right;
}
@media(max-width:1024px){
#top-message::before {
top: 55px;
width: 100%;
}
#top-message .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}
.top-message-content{
margin-top: 60px;
}
.top-message-img{
width: 260px;
margin-right: 35px;
}
.top-message-img img{
width: 250px;
height: auto;
}
.top-message-text{
max-width: 400px;
width: 100%;
}
.top-message-text h3{
font-size: 19px;
line-height: 1.6;
margin-bottom: 20px;
}
.top-message-text p{
font-size: 14px;
line-height: 1.8;
letter-spacing: .03em;
}
#top-message-name{
font-size: 14px;
margin-top: 25px;
}   
}
@media(max-width:599px){
#top-message::before {
top: 30px;
width: 100%;
}
#top-message .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 60px auto 0;
}
.top-message-content{
margin-top: 50px;
display: block;
}
.top-message-img{
width: 100%;
margin: 0;
margin-bottom: 20px;
}
.top-message-img img{
width: 100%;
height: 300px;
object-fit: contain;
}
.top-message-text{
max-width: 100%;
width: 100%;
}
.top-message-text h3{
font-size: 16px;
line-height: 1.7;
margin-bottom: 15px;
}
.top-message-text p{
font-size: 13.5px;
line-height: 1.7;
letter-spacing: .02em;
}        
#top-message-name{
font-size: 13.5px;
margin-top: 15px;
}   
}
/* ご成婚実績 */
#top-voice{

}
#top-voice .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 40px;
}
.voice-content{

}
.voice-list{
margin: 70px auto 30px;
max-width: 800px;
width: 100%;
}
.voice-item{
margin-bottom: 30px;
position: relative;
box-shadow: 0 5px 20px #EBEBEB;
}
.voice-item a{
background-color: #fff;
padding: 15px;
display: flex;
}
.voice-item a:hover{
opacity: .8;
transition: .2s;
}
.voice-item a:after {
position: absolute;
content: '';
display: block;
width: 0;
height: 0;
border-left: 20px solid transparent;
border-bottom: 20px solid #D9B4BB;
right: 10px;
bottom: 10px;
transition: .3s;
}
.voice-item-label{
content: "";
position: absolute;
top: 0;
left: 0;
width: 0;
height: 0;
border-top: 80px solid #D9B4BB;
border-right: 80px solid transparent;
}
.voice-item-label span{
position: absolute;
top: -70px;
left: 0;
color: #fff;
text-align: center;
line-height: 1.2;
margin-top: 0;
font-size: 14px;
width: 55px;
}
.voice-item-img{
margin-right: 30px;
}
.voice-item-img img{
object-fit: cover;
height: 180px;
max-width: 280px;
width: 280px;
}
.voice-text{

}
.voice-title{
font-size: 20px;
font-weight: 500;
margin-top: 15px;
margin-bottom: 20px;
line-height: 1.4;
}
.voice-text p{
font-size: 14px;
line-height: 1.5;
}
@media(max-width:1024px){
#top-voice .inner{
max-width: 92%;
width: 100%;
}
.voice-list{
margin: 30px auto 25px;
max-width: 700px;
}
.voice-item{
margin-bottom: 25px;
}
.voice-item a{
padding: 15px;
}
.voice-item a:after {
border-left: 17px solid transparent;
border-bottom: 17px solid #D9B4BB;
right: 8px;
bottom: 8px;
}
.voice-item-label{
border-top: 68px solid #D9B4BB;
border-right: 68px solid transparent;
}
.voice-item-label span{
top: -55px;
line-height: 1.2;
font-size: 12px;
width: 43px;
}
.voice-item-img{
margin-right: 25px;
}
.voice-item-img img{
height: 170px;
max-width: 240px;
width: 240px;
}
.voice-title{
font-size: 17px;
margin-top: 10px;
margin-bottom: 20px;
}
.voice-text p{
font-size: 14px;
}   
}
@media(max-width:599px){
#top-voice .inner{
margin-top: 100px;
}
.voice-list{
margin: 30px auto 25px;
max-width: 100%;
}
.voice-item{
margin-bottom: 20px;
}
.voice-item a{
padding: 15px 15px 25px 15px;
display: block;
}
.voice-item a:after {
border-left: 17px solid transparent;
border-bottom: 17px solid #D9B4BB;
right: 8px;
bottom: 8px;
}
.voice-item-label span{
font-size: 12px;
width: 45px;
}
.voice-item-img{
margin-right: 0;
width: 100%;
margin-bottom: 15px;
}
.voice-item-img img{
height: 190px;
max-width: 100%;
width: 100%;
}
.voice-title{
font-size: 15px;
margin-top: 10px;
margin-bottom: 15px;
}
.voice-text p{
display: none;
}   
}
/* ブログ */
#top-blog{
position: relative;
}
#top-blog::before {
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#top-blog .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
.top-blog-list{
display: flex;
justify-content: center;
flex-wrap: wrap;
}
.top-blog-item{
margin: 80px auto 0;
position: relative;
max-width: 32%;
width: 100%;
}
.top-blog-item a{
display: block;
padding: 15px 15px 30px 15px;
background-color: #fff;
box-shadow: 0 5px 20px #EBEBEB;
}
.top-blog-item a:after {
position: absolute;
content: '';
display: block;
width: 0;
height: 0;
border-left: 20px solid transparent;
border-bottom: 20px solid #D9B4BB;
right: 10px;
bottom: 10px;
transition: .3s;
}
.top-blog-img{
width: 100%;
}
.top-blog-img img{
width: 100%;
height: 230px;
object-fit: cover;
}
.top-blog-title{
font-size: 16px;
font-weight: 500;
margin-top: 15px;
line-height: 1.5;
letter-spacing: .03em;
}
#top-blog .btn{
position: absolute;
bottom: -25px;
left: 50%;
transform: translateX(-50%);
}
@media(max-width:1024px){
#top-blog::before {
top: 55px;
width: 100%;
}
#top-blog .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}
.top-blog-item{
margin: 40px 5px 0;
position: relative;
}
.top-blog-item a{
padding: 10px 10px 30px 10px;
}
.top-blog-img img{
height: 160px;
}
.top-blog-title{
font-size: 14px;
margin-top: 12px;
}
}
@media(max-width:599px){
#top-blog::before {
top: 30px;
width: 100%;
}
#top-blog .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}
.top-blog-list{
display: block;
}
.top-blog-item{
width: 100%;
max-width: 100%;
margin: 20px 0 0;
}
.top-blog-item a{
padding: 10px 10px 30px 10px;
}
.top-blog-img img{
height: 190px;
}
.top-blog-title{
font-size: 14px;
margin-top: 12px;
}
}
/* お知らせ */
#top-news{

}
#top-news .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 40px;
}
.news-list{
max-width: 800px;
margin: 70px auto 50px;
}
.news-item{
background-color: #fff;
box-shadow: 0 5px 20px #EBEBEB;
margin-bottom: 20px;
}
.news-item a{
padding: 15px 20px 15px 15px;    
display: flex;
align-items: center;
}
.news-category{
background-color: #D9B4BB;
text-align: center;
color: #fff;
font-size: 13.5px;
max-width: 120px;
width: 100%;
height: 27px;
line-height: 27px;
margin-right: 15px;
}
.news-data{
color: #333333;
margin-right: 30px;
font-size: 14px;
}
.news-title{
font-size: 15px;
line-height: 1.3;
flex: 1;
}
@media(max-width:1024px){
#top-news .inner{
max-width: 92%;
width: 100%;
}
.news-list{
max-width: 90%;
margin: 50px auto 30px;
}
.news-item{
margin-bottom: 15px;
}
.news-item a{
padding: 15px 20px 15px 15px;
}
.news-category{
font-size: 13px;
max-width: 90px;
height: 25px;
line-height: 25px;
margin-right: 12px;
}
.news-data{
margin-right: 25px;
font-size: 12px;
}
.news-title{
font-size: 14px;
}    
}
@media(max-width:599px){
#top-news .inner{

}
.news-list{
max-width: 100%;
margin: 30px auto 20px;
}
.news-item{
margin-bottom: 12px;
}
.news-item a{
padding: 15px 20px 15px 15px;
flex-wrap: wrap;
}
.news-category{
font-size: 11.5px;
max-width: 80px;
height: 17px;
line-height: 17px;
margin-right: 15px;
}
.news-data{
margin-right: 25px;
font-size: 12px;
}
.news-title{
font-size: 13.5px;
flex: inherit;
width: 100%;
margin-top: 10px;
}    
}
/* フッター */
#footer{
border-top: 1px solid #333333;
position: relative;
}
#footer .inner{
max-width: 1200px;
width: 100%;
margin: 0 auto;
display: flex;
padding-top: 40px;
padding-bottom: 20px;
}
#footer-l{
width: 35%;
border-right: 1px solid #333333;
}
#footer-logo{
display: block;
margin-bottom: 30px;
}
#footer-logo img{
height: 55px;
width: auto;
}
#footer-l-text01{
font-size: 15px;
letter-spacing: .02em;
line-height: 1.4;
margin-bottom: 15px;
}
#footer-l-text02{
font-size: 15px;
letter-spacing: .02em;
line-height: 1.4;
margin-bottom: 40px;
}
#footer-l-text03{
font-size: 12px;
letter-spacing: .02em;
line-height: 1.4;
color: #333333;
}
#footer-r{
width: 65%;
display: flex;
padding: 30px 0;
}
.footer-list{
margin-left: 100px;
margin-right: 30px;
}
.footer-list li{
margin-bottom: 10px;
}
.footer-list li a{
display: block;
font-size: 15px;
letter-spacing: .04em;
line-height: 1.4;
}
@media(max-width:1024px){
#footer .inner{
max-width: 92%;
padding-top: 30px;
padding-bottom: 15px;
}
#footer-l{
width: 38%;
}
#footer-logo{
margin-bottom: 30px;
}
#footer-logo img{
height: 40px;
}
#footer-l-text01{
font-size: 13.5px;
margin-bottom: 12px;
}
#footer-l-text02{
font-size: 13.5px;
margin-bottom: 30px;
}
#footer-l-text03{
font-size: 10px;
}
#footer-r{
width: 62%;
padding: 25px 0 10px;
}
.footer-list{
margin-left: 40px;
margin-right: 25px;
}
.footer-list li{
margin-bottom: 10px;
}
.footer-list li a{
font-size: 13px;
}    
}
@media(max-width:599px){
#footer .inner{
max-width: 100%;
padding-top: 30px;
padding-bottom: 50px;
display: block;
}
#footer-l{
width: 100%;
border: none;
}
#footer-logo{
margin-bottom: 20px;
text-align: center;
}
#footer-logo img{
height: 40px;
}
#footer-l-text01{
font-size: 13.5px;
margin-bottom: 12px;
text-align: center;
}
#footer-l-text02{
font-size: 13.5px;
margin-bottom: 30px;
text-align: center;
}
#footer-l-text03{
font-size: 10px;
text-align: center;
}
#footer-r{
display: none;
}
}
/* スマホフッター固定 */
/* スマホ固定フッター */
#page-top{
display: none;
overflow: visible!important;
}
@media(max-width:599px){
#page-top {
position: fixed;
left: 15px;
bottom: 15px;
z-index: 2;
opacity: 0;/*はじめは非表示*/
transform: translateY(100px);
display: flex;
}
/*　上に上がる動き　*/
#page-top.UpMove{
animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
from {
opacity: 0;
transform: translateY(100px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/*　下に下がる動き　*/
#page-top.DownMove{
animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
from {
opacity: 1;
transform: translateY(0);
}
to {
opacity: 1;
transform: translateY(100px);
}
}
/*リンクの形状*/
#page-top a{
display: block;
background-color: #d9b4bb;
width: 250px;
color: #fff;
text-align: center;
padding: 20px 5px 20px 0;
font-size: 14px;
position: relative;
font-weight: 500;
}
#page-top a::after{
content: "";
background: url(img/00_common/arrow.svg)no-repeat bottom;
background-size: 100%;
width: 20px;
height: 4px;
display: inline-block;
position: absolute;
top: 50%;
right: 15px;
transform: translateY(-50%);
margin-left: 10px;
}
}
/* パンクズリスト */
#breadcrumbs {
padding: 15px;
font-size: 11px;
letter-spacing: .02em;
background-color: #F8F8F8;
}
#breadcrumbs>span {
max-width: 1250px;
width: 100%;
margin-right: auto;
margin-left: auto;
display: block;
}
#breadcrumbs a {
color: #333333;
}
@media(max-width:599px){
#breadcrumbs {
padding: 10px 5px;
font-size: 9px;
letter-spacing: 0;
}
#breadcrumbs>span {
max-width: 95%;
}    
}
/* 下層ページ */
.page-ttl{
position: relative;
}
.page-ttl::before{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: block;
background: #F8F8F8;
content: "";
}
.page-ttl .inner{
max-width: 1120px;
width: 100%;
height: 260px;
display: flex;
align-items: center;
position: relative;
z-index: 1;
margin: 0 auto;
}
.page-ttl-en{
font-size: 58px;
font-weight: 500;
letter-spacing: .05em;
margin-right: 25px;
line-height: 1.5;
}
.page-ttl-ja{
font-size: 20px;
letter-spacing: .05em;
line-height: 1.5;
margin-top: 5px;
}
@media(max-width:1024px){
.page-ttl .inner{
max-width: 90%;
height: 220px;
}
.page-ttl-en{
font-size: 42px;
margin-right: 20px;
}
.page-ttl-ja{
font-size: 18px;
margin-top: 5px;
}        
}
@media(max-width:599px){
.page-ttl .inner{
max-width: 92%;
height: 120px;
}
.page-ttl-en{
font-size: 28px;
margin-right: 15px;
}
.page-ttl-ja{
font-size: 15px;
margin-top: 4px;
}        
}
/* イントロ */
.intro{
width: 100%;
margin: 120px 0 100px;
}
.intro p{
font-size: 16px;
letter-spacing: .05em;
line-height: 2.2;
text-align: center;
font-weight: 500;
}
@media(max-width:1024px){
.intro{
max-width: 550px;
margin: 100px auto 80px;
}
.intro p{
font-size: 15px;
letter-spacing: .03em;
line-height: 2;
}  
}
@media(max-width:599px){
.intro{
max-width: 92%;
margin: 70px auto 60px;
}
.intro p{
font-size: 14.5px;
line-height: 2;
}
}
/* サポート */
#sub-support{
position: relative;
}
#sub-support::before{
position: absolute;
top: 68px;
right: auto;
left: 0;
bottom: 0;
width: 100%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#sub-support .inner{
max-width: 1120px;
width: 100%;
margin: 30px auto 0;
padding-bottom: 100px;
}
.sub-support-content{
display: flex;
justify-content: space-between;
margin-top: 80px;
}
.sub-support-item{
padding: 40px 25px 35px;
border: 1px solid #333333;
max-width: 350px;
width: 100%;
background-color: #fff;
}
.sub-support-item h3{
border-bottom: 1px solid #333333;
font-size: 16px;
font-weight: 500;
letter-spacing: .03em;
padding-bottom: 15px;
line-height: 1.5;
}
.sub-support-item p{
font-size: 13px;
line-height: 1.7;
letter-spacing: .03em;
margin-top: 20px;
}
@media(max-width:1024px){
#sub-support::before{
top: 55px;
width: 100%;
}
#sub-support .inner{
max-width: 92%;
width: 100%;
padding-bottom: 60px;
margin: 0 auto;
}
.sub-support-content{
margin-top: 60px;
}
.sub-support-item{
padding: 30px 10px 25px;
max-width: 32.5%;
}
.sub-support-item h3{
font-size: 15px;
padding-bottom: 12px;
}
.sub-support-item p{
font-size: 12.5px;
line-height: 1.7;
margin-top: 15px;
letter-spacing: .01em;
}   
}
@media(max-width:599px){
#sub-support::before{
top: 30px;
}
#sub-support .inner{
max-width: 92%;
width: 100%;
padding-bottom: 50px;
margin: 0 auto;
}
.sub-support-content{
margin-top: 40px;
display: block;
}
.sub-support-item{
padding: 30px 15px 25px;
max-width: 100%;
margin-bottom: 15px;
}
.sub-support-item h3{
font-size: 15px;
padding-bottom: 12px;
}
.sub-support-item p{
font-size: 13px;
line-height: 1.7;
margin-top: 15px;
letter-spacing: .01em;
}   
}
/* 料金表 */
#sub-price{
position: relative;
}
#sub-price::before{
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#sub-price .inner{
max-width: 1120px;
width: 100%;
margin: auto;
padding-bottom: 100px;
}
.price-table{
display: flex;
justify-content: center;
flex-direction: row;
margin-left: auto;
margin-right: auto;
padding: 80px 25px 20px;
}
.price-table-l{
display: flex;
flex-direction: column;
background-color: #fff;
height: auto;
max-width: 280px;
width: 100%;
margin-right: 35px;
}
.l-name{
background-color: #F8F8F8;
max-width: 280px;
height: 38px;
}
.l-list{

}
.l-item{
display: flex;
align-items: center;
height: 52px;
padding-left: 30px;
}
.l-item p{
font-size: 15px;
}
.bg-gray{
background: #F0F0F0;
}
.price-table-row{
display: flex;
flex-direction: column;
background-color: #fff;
max-width: 210px;
width: 100%;
margin-right: 20px;
position: relative;
}
#price-table-row-sale{
position: absolute;
top: -22px;
left: 50%;
transform: translateX(-50%);
font-size: 14px;
text-align: center;
width: 100%;
font-weight: 600;
white-space: nowrap
}
.price-table-row-name{
background-color: #D9B4BB;
color: #fff;
max-width: 210px;
width: 100%;
height: 38px;
line-height: 38px;
text-align: center;
border-radius: 3px;
}
.row-item{
display: flex;
align-items: center;
justify-content: center;
height: 52px;
}
.row-item p{
font-size: 17px;
}
.row-item p span{
font-size: 14px;
}
.row-item p i{
color: #D9B4BB;
}
#price-memo{
font-size: 11px;
line-height: 1.4;
max-width: 1000px;
margin: 0 auto;
}
@media(max-width:1024px){
#sub-price::before{
top: 55px;
width: 100%;
}
#sub-price .inner{
max-width: 92%;
width: 100%;
padding-bottom: 60px;
}
.price-table{
padding: 60px 15px 20px;
}
.price-table-l{
max-width: 180px;
margin-right: 25px;
}
.l-name{
max-width: 250px;
height: 35px;
}
.l-item{
height: 50px;
padding-left: 20px;
}
.l-item p{
font-size: 14px;
}
.price-table-row{
max-width: 160px;
margin-right: 15px;
}
#price-table-row-sale{
top: -20px;
font-size: 12px;
}
.price-table-row-name{
height: 35px;
line-height: 35px;
}
.row-item{
height: 50px;
}
.row-item p{
font-size: 16px;
}
.row-item p span{
font-size: 13px;
}
#price-memo{
max-width: 96%;
}
}
@media(max-width:599px){
#sub-price::before{
top: 30px;
}
#sub-price .inner{
max-width: 92%;
width: 100%;
padding-bottom: 50px;
}
.price-table{
padding: 50px 0 15px 0;
margin: 0 calc(50% - 50vw);
width: 100vw;
}
.price-table-l{
max-width: 180px;
margin-right: 0;
}
.l-name{
max-width: 250px;
height: 32px;
}
.l-item{
height: 50px;
padding-left: 0;
text-align: center;
justify-content: center;
}
.l-item p{
font-size: 12.5px;
line-height: 1.3;
}
.price-table-row{
max-width: 160px;
margin-right: 0;
}
#price-table-row-sale{
top: -18px;
font-size: 12px;
letter-spacing: .04em;
display: none;
}
.price-table-row-name{
border-radius: 0;
max-width: 150px;
height: 32px;
line-height: 32px;
font-size: 12.5px;
border: 0.5px solid #fff;
}
.row-item{
height: 50px;
}
.row-item p{
font-size: 14px;
}
.row-item p span{
font-size: 11px;
}
#price-memo{
font-size: 10px;
max-width: 98%;
}
}
/* オプション料金 */
#sub-option{
position: relative;
}
#sub-option::before{
position: absolute;
top: 68px;
right: auto;
left: 0;
bottom: 0;
width: 100%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#sub-option .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
.sub-option-content{
display: flex;
justify-content: space-between;
margin-top: 80px;
}
.sub-option-item{
padding: 40px 25px 35px;
border: 1px solid #333333;
max-width: 350px;
width: 100%;
background-color: #fff;
}
.sub-option-item h3{
border-bottom: 1px solid #333333;
font-size: 16px;
font-weight: 700;
letter-spacing: .03em;
padding-bottom: 15px;
line-height: 1.5;
}
.sub-option-item p{
font-size: 14px;
line-height: 1.7;
letter-spacing: .03em;
margin-top: 20px;
}
@media(max-width:1024px){
#sub-option::before{
top: 55px;
width: 100%;
}
#sub-option .inner{
max-width: 92%;
width: 100%;
padding-bottom: 50px;
margin: 80px auto 0;
}
.sub-option-content{
margin-top: 60px;
}
.sub-option-item{
padding: 30px 10px 25px;
max-width: 32.5%;
}
.sub-option-item h3{
font-size: 15px;
padding-bottom: 12px;
}
.sub-option-item p{
font-size: 12.5px;
line-height: 1.7;
margin-top: 15px;
letter-spacing: .01em;
}   
}
@media(max-width:599px){
#sub-option::before{
top: 30px;
}
#sub-option .inner{
max-width: 92%;
width: 100%;
padding-bottom: 30px;
margin: 80px auto 0;
}
.sub-option-content{
margin-top: 40px;
display: block;
}
.sub-option-item{
padding: 30px 15px 25px;
max-width: 100%;
margin-bottom: 15px;
}
.sub-option-item h3{
font-size: 15px;
padding-bottom: 12px;
}
.sub-option-item p{
font-size: 13px;
line-height: 1.7;
margin-top: 15px;
letter-spacing: .01em;
}   
}
#sub-other{
padding-top: 80px;
padding-bottom: 60px;
}
.sub-other-content{
padding: 45px 50px 30px;
border: 1px solid #333333;
max-width: 800px;
width: 100%;
margin: 0 auto 25px;
}
.sub-other-content-ttl{
display: flex;
align-items: center;
border-bottom: 1px solid #333333;
padding-bottom: 25px;
}
.sub-other-content-ttl01{
font-size: 36px;
font-weight: 500;
letter-spacing: .03em;
margin-right: 25px;
}
.sub-other-content-ttl02{
font-size: 16px;
letter-spacing: .03em;
margin-top: 5px;
}
.sub-other-content-text{
margin-top: 25px;
}
.sub-other-content-text ul{

}
.sub-other-content-text ul li{
font-size: 14px;
line-height: 1.4;
letter-spacing: .03em;
padding: 0 0 0 20px;
margin-bottom: 0.5em;
position: relative;
}
.sub-other-content-text ul li::before{
content: "";
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 10px;
display: block;
border-top: 1px solid #333333;
}
@media(max-width:1024px){
#sub-other{
padding-top: 70px;
padding-bottom: 50px;
}
.sub-other-content{
padding: 40px 45px 35px;
max-width: 700px;
margin: 0 auto 20px;
}
.sub-other-content-ttl{
padding-bottom: 20px;
}
.sub-other-content-ttl01{
font-size: 32px;
margin-right: 20px;
}
.sub-other-content-ttl02{
font-size: 15px;
margin-top: 3px;
}
.sub-other-content-text{
margin-top: 20px;
}
.sub-other-content-text ul{

}
.sub-other-content-text ul li{

}
.sub-other-content-text ul li::before{

}
}
@media(max-width:599px){
#sub-other{
padding-top: 60px;
padding-bottom: 40px;
}
.sub-other-content{
padding: 30px 15px 25px;
max-width: 95%;
}
.sub-other-content-ttl{
padding-bottom: 20px;
}
.sub-other-content-ttl01{
font-size: 26px;
margin-right: 15px;
}
.sub-other-content-ttl02{
font-size: 14px;
margin-top: 5px;
}
.sub-other-content-text{
margin-top: 12px;
}
.sub-other-content-text ul{

}
.sub-other-content-text ul li{
font-size: 12.5px;
}
.sub-other-content-text ul li::before{

}
}
/* 代表カウンセラー */
#sub-counselor{
position: relative;
margin-bottom: 80px;
}
#sub-counselor::before {
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#sub-counselor .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
.sub-counselor-content{
display: flex;
justify-content: center;
margin-top: 80px;
}
.sub-counselor-img{
width: 370px;
margin-right: 45px;
}
.sub-counselor-img img{
width: 370px;
height: 450px;
}
.sub-counselor-text{
max-width: 600px;
width: 100%;
}
.sub-counselor-text h3{
font-size: 24px;
line-height: 1.7;
font-weight: 500;
letter-spacing: .03em;
margin-bottom: 30px;
}
.sub-counselor-text p{
font-size: 15px;
line-height: 2;
letter-spacing: .03em;
}
.sub-counselor-list{
margin-top: 20px;
}
.sub-counselor-list li{
font-size: 14px;
margin-bottom: 10px;
line-height: 1.4;
letter-spacing: .03em;
list-style: none;
position: relative;
padding: 0 0 0 20px;
font-weight: 500;
}
.sub-counselor-list li::before{
content: "";
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 10px;
display: block;
border-top: 1px solid #333333;
}
#sub-counselor-name{
font-size: 15px;
font-weight: 500;
margin-top: 25px;
text-align: right;
}
@media(max-width:1024px){
#sub-counselor::before {
top: 55px;
width: 100%;
}
#sub-counselor .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}
.sub-counselor-content{
margin-top: 80px;
}
.sub-counselor-img{
width: 260px;
margin-right: 40px;
}
.sub-counselor-img img{
width: 250px;
height: auto;
}
.sub-counselor-text{
max-width: 400px;
width: 100%;
}
.sub-counselor-text h3{
font-size: 19px;
line-height: 1.7;
margin-bottom: 25px;
}
.sub-counselor-text p{
font-size: 14px;
line-height: 1.8;
letter-spacing: .03em;
}
.sub-counselor-list li{
font-size: 13px;
}
.sub-counselor-list li::before{
width: 10px;
}
#sub-counselor-name{
font-size: 13.5px;
margin-top: 20px;
}   
}
@media(max-width:599px){
#sub-counselor {
margin-bottom: 50px;
}
#sub-counselor::before {
top: 30px;
width: 100%;
}
#sub-counselor .inner{
max-width: 92%;
width: 100%;
padding-bottom: 30px;
margin: 60px auto 0;
}
.sub-counselor-content{
margin-top: 50px;
display: block;
}
.sub-counselor-img{
width: 100%;
margin: 0;
margin-bottom: 20px;
}
.sub-counselor-img img{
width: 100%;
height: 300px;
object-fit: contain;
}
.sub-counselor-text{
max-width: 100%;
width: 100%;
}
.sub-counselor-text h3{
font-size: 16px;
line-height: 1.7;
margin-bottom: 15px;
}
.sub-counselor-text p{
font-size: 13px;
line-height: 1.7;
letter-spacing: .02em;
}  
.sub-counselor-list li{
font-size: 13px;
}
.sub-counselor-list li::before{
width: 10px;
}      
#sub-counselor-name{
font-size: 13px;
margin-top: 15px;
text-align: center;
}   
}
/* ご成婚までの流れ */
#sub-flow{

}
#sub-flow-list{
margin-top: 100px;
margin-bottom: 80px;
}
.sub-flow-item{
position: relative;
display: flex;
padding: 15px;
border: 1px solid #333333;
max-width: 850px;
width: 100%;
margin: 0 auto 50px;
}
.sub-flow-item:before {
position: absolute;
left: 50%;
content: '';
width: 0;
height: 0;
margin-left: -30px;
border: 30px solid transparent;
border-top: 30px solid #fff;
z-index: 2;
bottom: -58.5px;
}
.sub-flow-item::after {
position: absolute;
left: 50%;
content: '';
width: 0;
height: 0;
margin-left: -30px;
border: 30px solid transparent;
border-top: 30px solid #333333;
z-index: 1;
bottom: -60px;
}
.sub-flow-item-num{
position: absolute;
top: -5px;
right: 0;
font-size: 80px;
font-weight: 500;
color: #D9B4BB;
z-index: -1;
}
.sub-flow-item-img{
width: 260px;
margin-right: 30px;
}
.sub-flow-item-img img{
width: 260px;
height: 260px;
}
.sub-flow-item-text{
max-width: 500px;
width: 100%;
}
.sub-flow-item-text h2{
font-size: 22px;
font-weight: 500;
margin-top: 25px;
margin-bottom: 25px;
letter-spacing: .03em;
line-height: 1.4;
}
.sub-flow-item-text p{
font-size: 15px;
line-height: 1.6;
letter-spacing: .02em;
}
#sub-flow-wedding{
max-width: 850px;
width: 100%;
margin: 0 auto 80px;
background-color: #F8F8F8;
border: 1px solid #333333;
padding: 28px 0;
}
#sub-flow-wedding p{
font-size: 22px;
font-weight: 500;
letter-spacing: .03em;
text-align: center;
}
@media(max-width:1024px){
#sub-flow-list{
margin-top: 80px;
margin-bottom: 60px;
}
.sub-flow-item{
padding: 15px;
max-width: 700px;
margin: 0 auto 50px;
}
.sub-flow-item-num{
font-size: 68px;
}
.sub-flow-item-img{
width: 230px;
margin-right: 25px;
}
.sub-flow-item-img img{
width: 230px;
height: 230px;
}
.sub-flow-item-text{
flex: 1;
}
.sub-flow-item-text h2{
font-size: 20px;
margin-top: 20px;
margin-bottom: 20px;
}
.sub-flow-item-text p{
font-size: 14px;
}
#sub-flow-wedding{
max-width: 700px;
margin: 0 auto 60px;
padding: 25px 0;
}
#sub-flow-wedding p{
font-size: 20px;
}   
}
@media(max-width:599px){
#sub-flow-list{
margin-top: 60px;
margin-bottom: 50px;
}
.sub-flow-item{
padding: 15px 15px 30px 15px;
max-width: 92%;
margin: 0 auto 50px;
display: block;
}
.sub-flow-item-num{
font-size: 60px;
z-index: 5;
}
.sub-flow-item-img{
width: 100%;
margin-right: 0;
}
.sub-flow-item-img img{
width: 100%;
height: auto;
}
.sub-flow-item-text{
flex: 1;
}
.sub-flow-item-text h2{
font-size: 18px;
margin-top: 20px;
margin-bottom: 15px;
}
.sub-flow-item-text p{
font-size: 13.5px;
}
#sub-flow-wedding{
max-width: 92%;
margin: 0 auto 60px;
padding: 20px 0;
}
#sub-flow-wedding p{
font-size: 17px;
}   
}
/* ご成婚実績ページ */
#sub-voice{
margin-top: 120px;
margin-bottom: 100px;
}
@media(max-width:599px){
#sub-voice{
max-width: 92%;
margin: 60px auto 30px;
}
}
/* よくある質問 */
#faq{

}
#faq .inner{
padding-top: 120px;
padding-bottom: 60px;
max-width: 850px;
margin: 0 auto;
}
.faq-item{
margin-bottom: 30px;
}
.faq-q {
background-color: #F8F8F8;
padding: 20px;
position: relative;
cursor: pointer;
transition: .2s;
display: flex;
align-items: center;
}
.faq-q p{
font-size: 20px;
font-weight: 500;
}
.faq-q .i_box {
position: absolute;
top: 50%;
right: 2rem;
width: 20px;
height: 20px;
margin-top: -10px;
}
.faq-q .i_box:before,
.faq-q .i_box:after {
position: absolute;
content: "";
margin: auto;
box-sizing: border-box;
vertical-align: middle;
}
.faq-q .i_box:before {
border-top: 2px solid #333333;
width: 20px;
height: 0;
top: 0;
bottom: 0;
right: 0;
}
.faq-q .i_box:after {
border-left: 2px solid #333333;
width: 0;
height: 20px;
top: 0;
bottom: 0;
right: 9px;
transition: .3s;
}
.faq-q.open .i_box:after {
height: 0;
}
.faq-a {
display: none;
padding: 20px;
}
.faq-a-flex{
display: flex;
align-items: center;
}
.faq-a-flex p{
font-size: 16px;
line-height: 1.5;
flex: 1;
}
.mark-q{
display: block;
color: #fff;
border-radius: 100px;
text-align: center;
vertical-align: middle;
width: 36px;
height: 36px;
margin-right: 15px;
line-height: 36px;
font-size: 24px;
background: #333333;
}
.mark-a{
display: block;
color: #fff;
border-radius: 100px;
text-align: center;
vertical-align: middle;
width: 36px;
height: 36px;
margin-right: 15px;
line-height: 36px;
font-size: 24px;
background: #333333;
}
@media(max-width:1024px){
#faq .inner{
padding-top: 80px;
padding-bottom: 40px;
max-width: 90%;
}
.faq-item{
margin-bottom: 20px;
}
.faq-q {
padding: 15px;
}
.faq-q p{
font-size: 18px;
}
.faq-a {
display: none;
padding: 15px;
}
.faq-a-flex p{
font-size: 15px;
}
.mark-q{
width: 32px;
height: 32px;
line-height: 32px;
font-size: 22px;
}
.mark-a{
width: 32px;
height: 32px;
line-height: 32px;
font-size: 22px;
}
}
@media(max-width:599px){
#faq .inner{
padding-top: 50px;
padding-bottom: 30px;
max-width: 95%;
}
.faq-item{
margin-bottom: 15px;
}
.faq-q {
padding: 15px 35px 15px 15px;
}
.faq-q p{
font-size: 15px;
line-height: 1.4;
flex: 1;
}
.faq-a {
padding: 15px;
}
.faq-a-flex p{
font-size: 14.5px;
}
.mark-q{
width: 28px;
height: 28px;
line-height: 26px;
font-size: 18px;
}
.mark-a{
width: 28px;
height: 28px;
line-height: 26px;
font-size: 20px;
}
.faq-q .i_box {
top: 50%;
width: 15px;
height: 15px;
right: 1.2rem;
margin-top: -7px;
}
.faq-q .i_box:before {
width: 15px;
}
.faq-q .i_box:after {
height: 15px;
right: 6.5px;
}
}
/* お知らせページ */
#sub-news{
margin-top: 120px;
margin-bottom: 100px;
}
@media(max-width:599px){
#sub-news{
margin-top: 80px;
margin-bottom: 60px;
}
}
/* ブログページ */
#sub-blog{
max-width: 1200px;
margin: 100px auto 80px;
}
#sub-blog .top-blog-item{
margin-top: 30px;
}
@media(max-width:1024px){
#sub-blog{
max-width: 95%;
margin: 70px auto 60px;
}
#sub-blog .top-blog-item{
margin-top: 20px;
}  
}
@media(max-width:599px){
#sub-blog{
margin-top: 60px;
margin-bottom: 60px;
}
#sub-blog .top-blog-item{
margin-top: 15px;
}
}
/* カウンセリング場所 */
#sub-place{
position: relative;
/* margin-bottom: 80px; */
}
#sub-place::before {
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#sub-place .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
#sub-place-content{
display: flex;
align-items: flex-start;
margin-top: 80px;
}
#sub-place-content-box{
background-color: #fff;
border: 1px solid #333333;
max-width: 500px;
width: 100%;
margin-right: 50px;
padding: 40px 30px 35px;
}
#sub-place-content-box ul{

}
#sub-place-content-box ul li{
font-size: 15px;
margin-bottom: 15px;
line-height: 1.4;
letter-spacing: .03em;
}
#sub-place-content-map{
border: 3px solid #fff;
}
#sub-place-content-map iframe{
width: 550px;
height: 350px;
}
#sub-place-content-map2{
margin-top: 1em;
}
#sub-place-content-map2 iframe{
width: 100%;
height: 250px;
}
@media(max-width:1024px){
#sub-place::before {
top: 55px;
width: 100%;
}
#sub-place .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}
#sub-place-content{
margin-top: 60px;
}
#sub-place-content-box{
max-width: 400px;
width: 100%;
margin-right: 30px;
padding: 35px 25px 25px;
}
#sub-place-content-box ul li{
font-size: 14px;
margin-bottom: 12px;
}
#sub-place-content-map iframe{
width: 350px;
height: 250px;
}    
}
@media(max-width:599px){
#sub-place {
margin-bottom: 50px;
}
#sub-place::before {
top: 30px;
width: 100%;
}
#sub-place .inner{
max-width: 92%;
padding-bottom: 60px;
margin: 60px auto 0;
}   
#sub-place-content{
margin-top: 50px;
display: block;
}
#sub-place-content-box{
max-width: 100%;
width: 100%;
margin-right: 0;
padding: 25px 15px 15px;
margin-bottom: 25px;
}
#sub-place-content-box ul li{
font-size: 13px;
margin-bottom: 10px;
}
#sub-place-content-map iframe{
width: 100%;
height: 250px;
}    
}
/* 事業概要 */
#top-company{

}
#top-company .inner{
max-width: 1120px;
width: 100%;
margin: auto;
padding-top: 140px;
}
.company-table{
border-top: 1px solid #333333;
max-width: 700px;
width: 100%;
margin: 70px auto 60px;
}
.company-item{
display: flex;
align-items: center;
border-bottom: 1px solid #333333;
}
.company-item dt{
font-size: 16px;
font-weight: 500;
line-height: 1.4;
max-width: 230px;
width: 100%;
}
.company-item dd{
font-size: 16px;
line-height: 1.4;
flex: 1;
padding-top: 15px;
padding-bottom: 15px;
}
@media(max-width:1024px){
#top-company{

}
#top-company .inner{
max-width: 92%;
width: 100%;
}
.company-table{
max-width: 650px;
margin: 60px auto 40px;
}
.company-item dt{
font-size: 15px;
max-width: 200px;
}
.company-item dd{
font-size: 15px;
padding-top: 15px;
padding-bottom: 15px;
}   
}
@media(max-width:599px){
#top-company{

}
#top-company .inner{
max-width: 92%;
width: 100%;
padding-top: 60px;
}
.company-table{
max-width: 100%;
margin: 40px auto 30px;
}
.company-item dt{
font-size: 12.5px;
max-width: 140px;
padding-left: 10px;
letter-spacing: 0;
}
.company-item dd{
font-size: 12.5px;
padding-top: 12px;
padding-bottom: 12px;
letter-spacing: 0;
}   
}
/* LINE */
#sub-line{
position: relative;
margin-bottom: 80px;
}
#sub-line::before {
position: absolute;
top: 68px;
right: auto;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 90%;
display: block;
background: #F8F8F8;
z-index: -1;
content: "";
}
#sub-line .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
#sub-line-content{
background-color: #fff;
padding: 70px 60px 60px 70px;
display: flex;
align-items: center;
max-width: 1050px;
width: 100%;
margin: 70px auto 0;
}
#sub-line-content-l{
width: 50%;
}
#sub-line-content-l p{
font-size: 15px;
line-height: 1.8;
letter-spacing: .03em;
}
#sub-line-content-r{
width: 50%;
}
#line-btn-copy{
text-align: center;
font-size: 15px;
font-weight: 500;
letter-spacing: .02em;
margin-bottom: 10px;
}
#line-btn{

}
#line-btn a{
display: block;
height: auto;
max-width: 360px;
width: 100%;
margin: 0 auto;
height: 65px;
line-height: 64px;
font-size: 18px;
letter-spacing: .02em;
border-radius: 100px;
font-weight: 600;
padding-left: 75px;
position: relative;
background-color: #00B900;
border-color: transparent;
color: #fff;
-webkit-box-shadow: 0 3px 15px rgba(0,0,0,0.2);
box-shadow: 0 3px 15px rgba(0,0,0,0.2);
}
#line-btn a::after{
content: '';
display: block;
width: 27px;
height: 27px;
background: url(img/00_common/btn-line-arrow.svg) 0 0 no-repeat;
background-size: 100%;
position: absolute;
top: 50%;
right: 18px;
transform: translateY(-50%);
}
#line-btn a:hover{
opacity: .9;
transition: .2s;
}

@media(max-width:1024px){
#sub-line::before {
top: 55px;
width: 100%;
}
#sub-line .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}
#sub-line-content{
padding: 60px 30px 50px 35px;
max-width: 100%;
margin: 60px auto 0;
}
#sub-line-content-l{
width: 50%;
}
#sub-line-content-l p{
font-size: 13.5px;
}
#sub-line-content-r{
width: 50%;
}
#line-btn-copy{
font-size: 13.5px;
margin-bottom: 8px;
}
#line-btn a{
max-width: 300px;
height: 55px;
line-height: 54px;
font-size: 15px;
padding-left: 60px;
}
#line-btn a::after{
width: 23px;
height: 23px;
right: 15px;
}
}
@media(max-width:599px){
#sub-line {
margin-bottom: 50px;
}
#sub-line::before {
top: 30px;
width: 100%;
}
#sub-line .inner{
max-width: 92%;
padding-bottom: 60px;
margin: 60px auto 0;
}
#sub-line-content{
padding: 50px 20px 40px;
margin: 50px auto 0;
display: block;
}
#sub-line-content-l{
width: 100%;
}
#sub-line-content-l p{
font-size: 13.5px;
text-align: center;
}
#sub-line-content-r{
width: 100%;
}
#line-btn-copy{
font-size: 13px;
margin-bottom: 8px;
margin-top: 30px;
}
#line-btn a{
max-width: 300px;
height: 55px;
line-height: 54px;
font-size: 16px;
padding-left: 55px;
}
#line-btn a::after{
width: 22px;
height: 22px;
right: 13px;
}
}
/* お問い合わせ */
#sub-contact{
margin-bottom: 80px;
}
#sub-contact .inner{
max-width: 1120px;
width: 100%;
margin: 120px auto 0;
padding-bottom: 100px;
}
#sub-contact-desc{
background-color: #F8F8F8;
padding: 20px 30px;
max-width: 800px;
margin: 70px auto 30px;
text-align: center;
}
#sub-contact-desc p{
font-size: 16px;
line-height: 1.5;
letter-spacing: .03em;
}

@media(max-width:1024px){
#sub-contact .inner{
max-width: 92%;
width: 100%;
padding-bottom: 80px;
margin: 80px auto 0;
}

}
@media(max-width:599px){
#sub-contact {

}
#sub-contact .inner{
max-width: 92%;
padding-bottom: 60px;
margin: 60px auto 0;
}
#sub-contact-desc p{
font-size: 14px;
}
}
/* お問い合わせフォーム */
/* MW WP Form */
.contact-form{

}
.contact-form .inner{
padding-top: 120px;
padding-bottom: 60px;
}
.contact-form-box{
max-width: 780px;
width: 100%;
margin: 60px auto 40px;
background-color: #F8F8F8;
padding: 20px;
}
.contact-form-box p{
font-size: 17px;
font-weight: 500;
line-height: 1.5;
}
.contact-form__wrapper{
max-width: 800px;
margin: auto;
padding-left: 30px;
padding-right: 30px;
padding-top: 20px;
padding-bottom: 30px;
}
.contact-form__required {
display: inline-block;
color: #FFF;
text-align: left;
line-height: 1.6;
letter-spacing: 0.3px;
background-color: #333333;
margin-left: 14px;
font-size: 12px;
padding: 2px 10px;
margin-left: 17px;
}
.contact-form__item {
border-bottom: 1px solid #F8F8F8;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
padding: 10px 0;
align-items: center;
}
.contact-form__title {
position: relative;
text-align: left;
line-height: 1.8;
letter-spacing: 0.5px;
width: 35%;
max-width: 300px;
font-size: 16px;
padding: 7px 0;
}
.contact-form__data {
width: 65%;
max-width: 700px;
height: auto;
}
.contact-form__name,
.contact-form__email,
.contact-form__tel,
.contact-form__postal-code,
.contact-form__prefectures,
.contact-form__address,
.contact-form__message {
width: 100%;
text-align: left;
line-height: 1.8;
letter-spacing: 0.5px;
background-color: #FFF;
border: 1px solid #444444;
padding: 2px 10px;
height: 45px;
font-size: 16px;
}
.contact-form__name:focus,
.contact-form__email:focus,
.contact-form__tel:focus,
.contact-form__postal-code:focus,
.contact-form__prefectures:focus,
.contact-form__address:focus,
.contact-form__message:focus {
outline: 0;
}
.contact-form__name,
.contact-form__tel {
max-width: 100%;
}
.contact-form__postal-code {
width: 51%;
max-width: 322px;
}
.contact-form__prefectures {
width: 134px;
margin-left: 18px;
}
.contact-form__message {
height: 133px;
}
.contact-form__radio-wrapper {
padding: 6px 0;
}
input[type=radio] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
display: none;
}
.mw_wp_form_confirm .contact-form__radio-wrapper {
margin-left: 0;
padding: 0;
}
.mw_wp_form_confirm .contact-form__data {
padding: 0 0 7px 0;
line-height: 1.8;
}
.mw_wp_form_confirm .contact-form__data {
padding: 7px 0;
}
.contact-form__radio-wrapper label {
display: block;
position: relative;
text-align: left;
font-size: 16px;
line-height: 1.3;
letter-spacing: 0.2px;
padding-left: 41px;
}
.contact-form__radio + span::before {
content: '';
display: inline-block;
position: absolute;
background-color: #fff;
border: 1px solid #444;
border-radius: 50%;
margin-right: 7px;
-webkit-transition: all 0.12s, border-color 0.08s;
transition: all 0.12s, border-color 0.08s;
top: 2px;
left: 0;
width: 18px;
height: 18px;
}
.contact-form__radio:checked + span::after {
content: '';
display: inline-block;
position: absolute;
border-radius: 50%;
background-color: #333333;
vertical-align: middle;
-webkit-transition: all 0.12s, border-color 0.08s;
transition: all 0.12s, border-color 0.08s;
top: 6px;
left: 4px;
width: 12px;
height: 12px;
}
input + span.error {
margin-top: 10px;
}
.contact-form__button-wrapper {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: reverse;
-ms-flex-direction: column-reverse;
flex-direction: column-reverse;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.contact-form__button-confirm {
padding: 20px 100px;
background-color: #333333;
color: #fff;
cursor: pointer;
letter-spacing: .03em;
}
.contact-form__button-back {
padding: 0;
background-color: #333333;
height: 55px;
line-height: 55px;
width: 265px;
color: #fff;
font-size: 15px;
box-shadow: 0 4px 16px 0 rgb(0 0 0 / 15%);
}
.contact-form__button-submit {
padding: 0;
background-color: #333333;
height: 55px;
line-height: 55px;
width: 265px;
color: #fff;
font-size: 15px;
box-shadow: 0 4px 16px 0 rgb(0 0 0 / 15%);
}
.contact-form__thanks-message {
font-size: 18px;
margin-top: 110px;
padding: 30px 0 100px;
text-align: center;
line-height: 1.8;
font-weight: 500;
}
.mwform-radio-field-text{
letter-spacing: .05em;
}
/* 確認画面 */
.contact-confirm{
max-width: 900px;
margin: auto;
padding-top: 100px;
padding-bottom: 60px;
}
.mw_wp_form_complete{
margin-top: 100px;
margin-bottom: 60px;
}
.mw_wp_form_complete p{
font-size: 18px;
line-height: 2;
letter-spacing: .03em;
margin-bottom: 1.5em;
text-align: center;
}
@media(max-width:1024px){
.contact-form .inner{
padding-top: 100px;
padding-bottom: 40px;
}
.contact-form-box{
max-width: 95%;
margin: 50px auto 30px;
padding: 15px;
}
.contact-form-box p{
font-size: 16px;
}
.contact-form__wrapper{
max-width: 95%;
}
}
@media(max-width:599px){
.contact-form .inner{
padding-top: 60px;
padding-bottom: 30px;
}
.contact-form-box{
max-width: 95%;
margin: 40px auto 25px;
padding: 15px;
}
.contact-form-box p{
font-size: 14px;
}
.contact-form__wrapper{
max-width: 100%;
padding-left: 15px;
padding-right: 15px;
padding-bottom: 0;
padding-top: 0;
}
.contact-form__item{
display: block;
}
.contact-form__title{
width: 100%;
font-size: 15px;
}
.contact-form__data{
width: 100%;
}
.contact-form__required {
line-height: 1.5;
margin-left: 10px;
font-size: 11px;
padding: 2px 6px 2px 6px;
}
.mwform-radio-field-text{
font-size: 15px;
}
.mw_wp_form_complete{
margin-top: 80px;
margin-bottom: 50px;
}
.mw_wp_form_complete p{
font-size: 16px;
}
.contact-form__thanks-message {
font-size: 15px;
max-width: 95%;
margin: 60px auto 30px;
line-height: 1.6;
}
}
/* お問い合わせフォームここまで */
/* 投稿記事の本文 */
/* 投稿記事の本文 */
/* 投稿記事の本文 */
.single-article{
padding-top: 80px;
padding-bottom: 60px;
background-color: #F8F8F8;
}
.single-article-content{
background-color: #fff;
padding: 50px 40px 40px 40px;
max-width: 800px;
width: 100%;
margin: 0 auto;
}
.single-article-top{

}
.single-article-data{
color: #333333;
font-size: 15px;
margin-bottom: 15px;
letter-spacing: .03em;
}
.single-article-title{
font-size: 20px;
font-weight: 500;
margin-bottom: 20px;
letter-spacing: .03em;
line-height: 1.4;
}
.single-article-img{

}
.single-article-img img{
object-fit: cover;
height: 460px;
}
.single-content{
margin-top: 30px;
}
.single-content h2{
font-size: 20px;
font-weight: 500;
color: #333333;
border-bottom: 1px solid #333333;
padding: 10px 0;
margin: 40px 0 30px 0;
line-height: 1.4;
}
.single-content h3{
position: relative;
font-size: 18px;
font-weight: 600;
margin: 35px 0 25px;
padding: 0 0 0 15px;
line-height: 1.4;
}
.single-content h3::before {
display: block;
position: absolute;
left: 0;
background: #333333;
content: "";
top: 50%;
transform: translateY(-50%);
width: 4px;
height: 100%;
}
.single-content h4{
font-size: 18px;
font-weight: 600;
margin: 35px 0 25px;
line-height: 1.4;
}
.single-content p,
.single-content span,
.single-content a,
.single-content li{
font-size: 16px;
line-height: 1.5;
}
.single-content p{
margin-bottom: 1.5em;
}
.single-content a{
color: #1e73be;
text-decoration: underline;
word-wrap: break-word;
}
.single-content strong{
font-weight: 600;
}
.single-content ol{
margin: 2em 0 2.2em 0;
counter-reset: qumeru-counter;
}
.single-content ol li{
position: relative;
padding-left: 2em;
margin-bottom: .4em;
}
.single-content ol li::before{
content: counter(qumeru-counter);
counter-increment: qumeru-counter 1;
background-color: #333333;
border: 1px solid #333333;
color: #fff;
width: 1.6em;
height: 1.6em;
line-height: 1.6em;
display: block;
text-align: center;
border-radius: 50%;
position: absolute;
-webkit-transform: scale(.7) translateY(-50%);
transform: scale(.7) translateY(-50%);
left: 1px;
top: 35%;
}
.single-content ul{
margin: 2em 0 2.2em 1.5em;
}
.single-content ul li{
margin-bottom: .5em;
list-style: initial;
}
@media(max-width:1024px){
.single-article{
padding-top: 80px;
}
.single-article-content{
padding: 40px 35px 30px 35px;
max-width: 90%;
}
.single-article-data{
font-size: 14px;
margin-bottom: 12px;
}
.single-article-title{
font-size: 20px;
margin-bottom: 15px;
}
.single-article-img img{
height: 450px;
}
.single-content{
margin-top: 25px;
}
.single-content h2{
font-size: 18px;
padding: 5px 0;
margin: 35px 0 25px 0;
}
.single-content h3{
font-size: 16px;
margin: 30px 0 20px;
}
.single-content h4{
font-size: 16px;
margin: 30px 0 20px;
}
.single-content p,
.single-content span,
.single-content a,
.single-content li{
font-size: 15px;
line-height: 1.5;
}
}
@media(max-width:599px){
.single-article{
padding-top: 0;
padding-bottom: 0;
}
.single-article-content{
padding: 40px 15px 30px 15px;
max-width: 100%;
}
.single-article-content::before{
display: none;
}
.single-article-data{
font-size: 12px;
margin-bottom: 10px;
}
.single-article-title{
font-size: 16px;
margin-bottom: 12px;
}
.single-article-img img{
height: 240px;
}
.single-content{
margin-top: 25px;
}
.single-content h2{
font-size: 15px;
padding: 5px 0;
margin: 35px 0 25px 0;
}
.single-content h3{
font-size: 14.5px;
margin: 30px 0 25px;
letter-spacing: 0;
}
.single-content h4{
font-size: 14.5px;
margin: 30px 0 25px;
letter-spacing: 0;
}
.single-content p,
.single-content span,
.single-content a,
.single-content li{
font-size: 14px;
line-height: 1.5;
}
.single-content ol{
margin: 1.5em 0;
}
.single-content ul{
margin: 1.5em 0 1.5em 1.5em;
}
}
/* 動画 */
.youtube{
margin: 100px auto;
text-align: center;
}
.youtube iframe{
width: 500px;
height: 280px;
}
@media(max-width:599px){
.youtube{
margin: 60px auto;
text-align: center;
}
.youtube iframe{
width: 350px;
height: 200px;
}
}
/* CTA */
#cta{
display: flex;
flex-direction: row-reverse;
margin-top: 120px;
}
.cta-l{
width: 50%;
height: 450px;
}
.cta-l img{
height: 450px;
width: 100%;
object-fit: cover;
}
.cta-r{
background-color: #F8F8F8;
width: 50%;
height: 450px;
display: flex;
justify-content: center;
align-items: center;
}
.cta-wrapper{
max-width: 600px;
width: 100%;
}
.cta-ttl{
font-size: 55px;
position: relative;
padding-left: 100px;
}
.cta-ttl::before{
content: "";
display: block;
width: 70px;
height: 1px;
background: #333333;
position: absolute;
top: 50%;
left: 0;
transform: translateY(-50%);
}
.cta-desc{
font-size: 15px;
line-height: 1.8;
margin: 30px 0;
padding-left: 100px;
}
#cta .btn a{
background-color: #fff;
border: 1px solid #333333;
color: #333333;
margin-left: 100px;
}
#cta .btn a:after {
background: url(img/00_common/arrow2.svg)no-repeat bottom;
}
@media(max-width:1024px){
#cta{
margin-top: 100px;
}
.cta-l{
width: 50%;
height: 380px;
}
.cta-l img{
height: 380px;
}
.cta-r{
width: 50%;
height: 380px;
}
.cta-wrapper{
max-width: 100%;
width: calc(100% - 30px);
margin-right: 30px;
}
.cta-ttl{
font-size: 45px;
padding-left: 60px;
}
.cta-ttl::before{
width: 40px;
}
.cta-desc{
font-size: 14px;
line-height: 1.7;
margin: 25px 0;
padding-left: 60px;
}
#cta .btn a{
margin-left: 60px;
}
}
@media(max-width:599px){
#cta{
margin-top: 60px;
display: block;
}
.cta-l{
width: 100%;
height: 280px;
}
.cta-l img{
height: 280px;
}
.cta-r{
width: 100%;
height: 380px;
}
.cta-wrapper{
width: calc(100% - 15px);
margin: 0 15px 0 0;
}
.cta-ttl{
font-size: 36px;
padding-left: 60px;
}
.cta-ttl::before{
width: 40px;
}
.cta-desc{
font-size: 14px;
line-height: 1.7;
margin: 25px 0;
padding-left: 60px;
}
#cta .btn a{
margin-left: 60px;
}
}
/* SUNCORE */
.suncore{
opacity: .2;
display: block;
position: absolute;
right: 30px;
bottom: 15px;
cursor: inherit;
}
.suncore img{
width: auto;
height: 20px;
}
.suncore:hover{
opacity: .2;
}
@media(max-width:599px){
.suncore img{
height: 15px;
}
}
/* 大切にしていること */
#point{

}
#point .inner{
max-width: 1120px;
width: 100%;
margin: auto;
padding-top: 100px;
padding-bottom: 80px;
}
.point-content{
display: flex;
justify-content: center;
margin-top: 70px;
}
.point-item{
width: 370px;
margin: 0 15px;
}
.point-item img{
width: 370px;
height: auto;
}
.point-ttl{
background-color: #333333;
color: #fff;
text-align: center;
height: 50px;
line-height: 50px;
width: 100%;
font-weight: 700;
font-size: 20px;
letter-spacing: .04em;
}
.point-desc{
background-color: #F8F8F8;
line-height: 1.7;
font-size: 15px;
padding: 30px 20px;
}
@media(max-width:1024px){
#point .inner{
max-width: 92%;
width: 100%;
padding-top: 0;
}
.point-content{
margin-top: 60px;
justify-content: space-between;
}
.point-item{
width: 32%;
margin: 0;
}
.point-item img{
width: 100%;
}
.point-ttl{
height: 40px;
line-height: 40px;
font-size: 16px;
}
.point-desc{
font-size: 14px;
padding: 25px 15px;
}
}
@media(max-width:599px){
#point .inner{
max-width: 92%;
width: 100%;
padding-top: 0;
padding-bottom: 40px;
}
.point-content{
margin-top: 30px;
display: block;
}
.point-item{
width: 100%;
margin: 0 0 25px 0;
}
.point-item img{
width: 100%;
}
.point-ttl{
height: 40px;
line-height: 40px;
font-size: 16px;
}
.point-desc{
font-size: 14px;
padding: 25px 15px;
}
}
/* 下からフェードイン */
.fadeIn {
transform: translate3d(0, 60px, 0);
transition: 1s;
opacity: 0;
}
.fadeIn.animated {
transform: translate3d(0, 0, 0);
opacity: 1;
}
/* 充実したサポート体制 */
.support-summary{
max-width: 1200px;
width: 100%;
margin: 0 auto;
}
.support-summary .support-list{
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
margin-top: 60px;
}
.support-summary .support-list li{
text-align: center;
margin: 0 10px 20px 10px;
background-color: #fff;
border-radius: 10px;
box-shadow: 5px 5px #C0C8D0;
max-width: 200px;
width: 100%;
height: 150px;
}
.support-summary .support-list li img{
height: 70px;
width: 100%;
margin-top: 25px;
}
.support-summary .support-list li span{
font-size: 18px;
font-weight: 700;
display: block;
margin-top: 15px;
letter-spacing: 0;
}
@media(max-width:1024px){
.support-summary{
max-width: 100%;
width: 100%;
margin: 0 auto;
}
.support-summary .support-list{
margin-top: 50px;
}
.support-summary .support-list li{
margin: 0 8px 16px 8px;
border-radius: 10px;
box-shadow: 5px 5px #C0C8D0;
max-width: 160px;
height: 130px;
}
.support-summary .support-list li img{
height: 60px;
margin-top: 23px;
}
.support-summary .support-list li span{
font-size: 15px;
margin-top: 12px;
}
}
@media(max-width:599px){
.support-summary{
width: 100%;
}
.support-summary .support-list{
margin-top: 40px;
justify-content: space-between;
}
.support-summary .support-list li{
margin: 0 0 16px;
border-radius: 10px;
box-shadow: 5px 5px #c0c8d0;
max-width: 100%;
width: 48%;
height: 120px;
}
.support-summary .support-list li img{
height: 55px;
margin-top: 23px;
}
.support-summary .support-list li span{
font-size: 15px;
margin-top: 10px;
}
}
#takano{
width: 150px;
opacity: .5;
position: absolute;
bottom: 8px;
right: 8px;
cursor: inherit;
}
#takano img{
width: 150px;
opacity: .2;
}

/* ===== 特定商取引法 テーブル ===== */
.policy-table {
width: 100%;
max-width: 900px;
margin: 0 auto;
border-collapse: collapse;
font-size: 15px;
line-height: 1.8;
}
.policy-table tr {
border-bottom: 1px solid #e0e0e0;
}
.policy-table tr:first-child {
border-top: 1px solid #e0e0e0;
}
.policy-table td {
padding: 18px 20px;
vertical-align: top;
text-align: left;
}
.policy-table td:first-child {
width: 30%;
font-weight: 500;
color: #333;
background-color: #fafafa;
}
.policy-table td:last-child {
color: #555;
}
@media screen and (max-width: 768px) {
.policy-table {
font-size: 14px;
}
.policy-table td {
display: block;
width: 100% !important;
padding: 12px 15px;
}
.policy-table td:first-child {
border-bottom: none;
}
.policy-table td:last-child {
padding-bottom: 18px;
}
.policy-table tr {
display: block;
border-bottom: 1px solid #e0e0e0;
}
}
.logo-banner{
display: flex;
margin-top: 20px;
justify-content: center;
}
.logo-banner a{
display: block;
margin: 0 10px;
}
.logo-banner a img{
height: 50px;
}

.top-event-list {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.top-event-list .top-blog-item {
	width: calc((100% - 48px) / 3);
}

@media screen and (max-width: 768px) {
	.top-event-list .top-blog-item {
		width: calc((100% - 24px) / 2);
	}
}

@media screen and (max-width: 480px) {
	.top-event-list .top-blog-item {
		width: 100%;
	}
}