/*
Theme Name: saisaido
Author: Teruhisa Osawa
Version: 1.0
*/


*,*::before,*::after{box-sizing:border-box}ul[class],ol[class]{padding:0}body,h1,h2,h3,h4,p,ul[class],ol[class],figure,blockquote,dl,dd{margin:0}html{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}ul[class],ol[class]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}img{max-width:100%;display:block}article>*+*{margin-top:1em}input,button,textarea,select{font:inherit}img:not([alt]){filter:blur(0)}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}


*{
box-sizing:border-box;
}
html, body {
height:100%;
font-family: "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 400;
font-style: normal;
font-feature-settings : "palt";
-webkit-overflow-scrolling: touch;
scroll-padding-top:100px;
}
body{
font-size:17px;
color:#333333;
-webkit-text-size-adjust: 100%;
}

a{
text-decoration:none;
opacity:1;
line-height:100%;
color:#333333;
}
a,a:hover {
-webkit-transition:0.7s;
-moz-transition:0.7s;
-o-transition:0.7s;
transition:0.7s;
}
a img:hover {
-moz-opacity:0.5;
opacity:0.5;
}
a:hover{
opacity:0.4;
cursor:pointer;
}
p,dt,dd,td,th,div{
line-height:2;
}
img{
max-width:100%;
height:auto;
vertical-align:bottom;
}

a.tel,
a.tel img{
opacity:1;
cursor:default;
}

.ctr{
text-align:center;
}


/* reset */
.rst ul{
margin:0;
padding:0;
padding-inline-start: 0;
margin-block-start: 0;
margin-block-end: 0;
}
.rst ul li{
list-style:none;
}


/* flex */
.flex{
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}
.flex1{
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}
.flex2{
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
justify-content: space-between;
}

.serif{
font-family: "Noto Serif JP", serif;
font-optical-sizing: auto;
font-weight: 400;
font-style: normal;
}


.c{
color:#e94e66;
}

/*====================================================
LAYOUT
====================================================*/

.w1400{
position:relative;
width:1400px;
margin:0 auto;
}
.w1200{
position:relative;
width:1200px;
margin:0 auto;
}
.w1020{
width:1020px;
margin:0 auto;
}
.w1000{
width:1000px;
margin:0 auto;
}
.w900{
width:900px;
margin:0 auto;
}
.w800{
width:800px;
margin:0 auto;
}
.w720{
width:720px;
margin:0 auto;
}
.w600{
width:600px;
margin:0 auto;
}
.in{
width:92%;
margin:0 auto;
}

/*====================================================
HEADER
====================================================*/
#header{
padding:1rem 2rem;
background:rgba(255,255,255,0.2);
position:fixed;
z-index:3;
top:-100px;
left:0;
height:100px;
width:100%;
animation-name: fadeInDown;
animation-duration: 1.5s;
animation-timing-function: ease-out;
animation-fill-mode: forwards;
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(0);
  }
  100% {
    opacity: 1;
    transform: translateY(100px);
  }
}
#header.active{
background:rgba(255,255,255,0.7);
}
#header .logo{
width:70px;
line-height:1;
}
#footer .logo img,
#header .logo img{
width:140px;
height:auto;
margin-bottom:0.2rem;
}
#header .logo .hdcopy{
color:#fff;
font-size:16px;
}

#snav {
margin-top:10px;
overflow-x: auto;
}
#snav ul {
display: flex;
width: max-content;
margin: 0 auto;
}
#snav ul li a {
display: flex;
align-items: center;
justify-content: center;
display: inline-block;
padding: 10px 25px;
color: #333;
text-decoration: none;
border-bottom:2px solid #fff;
}
#snav ul li.active a,
#snav ul li a:hover {
opacity:1;
border-bottom:2px solid #000;
}

.oshirase_hd{
background: rgba(255, 240, 244, 0.8);
padding:1rem;
margin-bottom:3rem;
font-size:24px;
color:#666666;
}
.oshirase_hd .en{
color:#f4b3bc;
font-size:14px;
padding-left:1rem;
}


/*====================================================
SPNAVI
====================================================*/

#spnav{
display:none;
height:60px;
width:60px;
z-index:11;
border-radius:10px;
position:relative;
}
#spnav .mn{
color:#fff;
font-size:24px;
position:absolute;
left:2rem;
top:0.5rem;
}
#sp-btn{
display: inline-block;
position: absolute;
width: 36px;
height: 36px;
background:none;
top:11px;
left:12px;
}
#sp-btn:hover{
opacity:1;
}
#sp-btn-icon{
display: block;
position: absolute;
top: 50%;
left: 0;
width: 36px;
height: 2px;
background: #ccc;
transition: .2s;
}
#sp-btn-icon:before, #sp-btn-icon:after{
display: block;
content: "";
position: absolute;
top: 50%;
left: 0;
width: 36px;
height: 2px;
background: #ccc;
transition: .3s;
}
#sp-btn-icon:before{
margin-top: -11px;
}
#sp-btn-icon:after{
margin-top: 9px;
}
#sp-btn .close{
background: transparent;
}
#sp-btn .close:before, #sp-btn .close:after{
margin-top: 0;
}
#sp-btn .close:before{
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
}
#sp-btn .close:after{
transform: rotate(-135deg);
-webkit-transform: rotate(-135deg);
}

/*====================================================
NAVIGATION
====================================================*/

#nav{
position:absolute;
right:1rem;
top:1.5rem;
z-index:10;
}
#nav a{
font-size:18px;
}
#nav li{
}

#nav ul li{
text-align:left;
box-sizing:border-box;
color:#fff;
padding:0.5rem 0;
margin:0 0.5rem;
}
#nav ul li:hover{
cursor:pointer;
}
#nav ul li a{
width:100%;
display:block;
text-align:left;
padding:0.5rem;
}
#nav ul li a:hover{
opacity:0.7;
}
#nav ul li.ico_mail a{
background:#e94e66;
color:#fff;
padding:0.5rem 1rem;
border-radius:2rem;
position:relative;
}
/*
#nav ul li.ico_mail a:after{
position:absolute;
content:"";
width:20px;
height:16px;
background:url(https://saisaido.co.jp/v1/common/img/ico_mail2.png) no-repeat;
background-size:cover;
right:12px;
top:10px;
}
*/


/*====================================================
PAGE
====================================================*/
#fv{
position:absolute;
top:32%;
left:10%;
right:0;
z-index:2;
margin:0 auto;
}

#fv h1{
font-size:60px;
font-weight:600;
line-height:1.6;
opacity: 0;
animation-name: fadeInUp;
animation-duration: 1.0s;
animation-timing-function: ease-out;
animation-fill-mode: forwards;
animation-delay: 0.8s;
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(45px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
#fv .description{
font-size:24px;
opacity: 0;
animation-name: fadeInUp;
animation-duration: 1.0s;
animation-timing-function: ease-out;
animation-fill-mode: forwards;
animation-delay: 1.3s;
}
.fvbg{
position:absolute;
bottom:0;
left:0;
height:240px;
width:100%;
background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%,rgba(255, 255, 255, 0) 100%);
}

.top1{
padding:8rem 0;
text-align:center;
}
.top1 h2{
font-size:32px;
margin-bottom:2rem;
}
.divider{
position:relative;
}
.divider:after{
content:"";
width:240px;
border-bottom:1px solid #ccc;
position:absolute;
bottom:0;
left:0;
right:0;
margin:0 auto;
}
.top1{
position:relative;
}
.top1 p{
font-size:21px;
line-height:2.2;
margin-bottom:1.5rem;
}
.top1 .img img{
width:180px;
border-radius:50%;
position:absolute;
animation: fluffy 10s ease infinite;
}
@keyframes fluffy {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-30px);
  }
}
.top1 .img1 img{
top:25%;
left:15%;
}
.top1 .img2 img{
top:60%;
left:20%;
animation-delay: 0.5s;
}
.top1 .img3 img{
top:25%;
right:15%;
animation-delay: 2.0s;
}
.top1 .img4 img{
top:60%;
right:20%;
animation-delay: 1.5s;
}
.top2{
padding:6rem 0;
}
.top2 .item{
width:100%;
background:#fff;
border-radius:1rem;
padding:1.7rem 1rem 1rem 1rem;
border:1px solid #ddd;
box-shadow: 6px 6px #dfdfdf;
margin-bottom:2rem;
position:relative;
}
.top2 .item.first{
border:1px solid #f7bcc8;
box-shadow: 6px 6px #f7e7e7;
background:#fff5f5;
}
.top2 .item.first:before{
position:absolute;
top:0;
left:0;
width:180px;
height:134px;
content:"";
background:url(https://saisaido.co.jp/v1/common/img/baseline.png) no-repeat;
background-size:cover;
}
.top2 .flex2 .item{
width:47.5%;
height:220px;

-webkit-transition:0.7s;
-moz-transition:0.7s;
-o-transition:0.7s;
transition:0.7s;
}
.top2 .flex2 .item3.active,
.top2 .flex2 .item2.active{
height:auto;
-webkit-transition:0.7s;
-moz-transition:0.7s;
-o-transition:0.7s;
transition:0.7s;
}
.top2 .item h3{
text-align:center;
line-height:1.6;
margin-top:0.2rem;
margin-bottom:2rem;
font-size:24px;
font-weight:700;
}
.top2 .item .accbody{
padding:1rem;
}
.top2 .item h4{
margin-bottom:1rem;
font-weight:700;
}
.top2 .item p.desc{
margin-bottom:2rem;
}

.top1 h2.serif{
font-size:42px;
font-weight:600;
margin-bottom:3rem;
}
h2.serif{
font-size:32px;
font-weight:600;
}

.h2box{
margin-bottom:4rem;
}
.h2box h2{
margin-right:5rem;
line-height:1.2;
}

.accbtn{
background:rgba(0,0,0,0.05);
border-radius:0.5rem;
padding:0.3rem 0.5rem;
width:180px;
text-align:center;
margin:0 auto 1rem auto;
display:block;
border:0;
}
.accbtn .close{
display:none;
}
.accbtn.active .close{
display:inline;
}
.accbtn.active .detail{
display:none;
}
.accbtn:hover{
cursor:pointer;
}
.accbody{
display:none;
}
.top2 .copy{
font-size:115%;
}
.t2{
width:70%;
margin:0 auto;
}
.t2 .t2c,
.t2 .t2a{
width:45%;
padding: 1.2em 0.5em;
margin: 2em 0;
color: #565656;
background: #ffeaea;
box-shadow: 0px 0px 0px 10px #ffeaea;
border: dashed 2px #e94e66;
border-radius: 8px;
text-align:center;
font-weight:700;
}
.t2 .t2b{
width:10%;
padding-top:4rem;
font-size:26px;
font-weight:bold;
text-align:center;
color:#e94e66;
}
.btn_submit a,
.btn_submit button,
.btn_submit input,
.rose{
width:240px;
display:block;
margin:0 auto;
background:#e94e66;
color:#fff;
border-radius:0.5rem;
border:0;
font-size:110%;
text-align:center;
padding:1rem;
}
.btn_submit button:hover{
opacity:0.7;
margin-top:1rem;
}
.top3{
padding:6rem 0;
}
.top3 .item{
margin-bottom:3rem;
}
.top3 .item .problem,
.top3 .item .answer{
width:47.5%;
}
.top3 .item .arw{
width:5%;
}
.top3 .item .arw img{
width:70%;
margin:9rem auto 0 auto;
}
.top3 .problem{
background:rgba(100,100,100,0.05);
padding:2rem;
border-radius:1rem;
padding-left:80px;
position:relative;
}
.top3 .problem:before{
content:"";
display:block;
position:absolute;
left:1rem;
top:1rem;
width:48px;
height:46px;
background:url(https://saisaido.co.jp/v1/common/img/ico5.png) no-repeat;
background-size:cover;
}
.top3 .problem h3{
font-size:26px;
}
.top3 .answer{
background:rgba(255,240,244,0.8);
padding:2rem;
border-radius:1rem;
padding-left:80px;
position:relative;
}
.top3 .answer:before{
content:"";
display:block;
position:absolute;
left:1rem;
top:1rem;
width:48px;
height:46px;
background:url(https://saisaido.co.jp/v1/common/img/ico6.png) no-repeat;
background-size:cover;
}
.top3 .answer h4{
font-size:26px;
font-weight:700;
margin-bottom:1rem;
}
.newsbox{
background: rgba(255, 240, 244, 0.8);
padding:4rem 0;
}
.archive .newsbox{
background:none;
}
.newsbox ul{
margin-bottom:3rem;
}
.newsbox ul li{
border-bottom:1px solid #f0dbdb;
padding:1rem 0;
position:relative;
}
.newsbox ul li a{
display:block;
padding:0.5rem 0;
}
.newsbox ul li a:after{
content:"＋";
position:absolute;
top:1.5rem;
right:0.5rem;
font-size:21px;
color:#e94e66;
}
.newsbox ul li .date{
padding-right:1rem;
color:#c99b9b;
}
.pcbr{
display:block;
}

.page #site-content{
padding-top:200px;
padding-bottom:5rem;
}
.page.archive #site-content,
.page.single #site-content{
padding-top:100px;
}

.page h1{
text-align:center;
line-height:1.6;
}
.page h1 .en{
display:block;
font-size:21px;
color:#e94e66;
font-weight:normal;
}
table{
border-collapse: collapse;
}
.cbox table{
width:100%;
}
.cbox th,
.cbox td{
background:#fff4f4;
padding:1rem;
border-bottom:10px solid #fff;
text-align:left;
}
.cbox th{
white-space:nowrap;
vertical-align:top;
}
.cbox th .small{
font-size:14px;
}
.cbox label{
display:block;
}
.cbox th .req{
background:#e94e66;
font-size:12px;
color:#fff;
padding:0.2rem 0.4rem;
border-radius:6px;
}
.cbox textarea,
.cbox input[type=url],
.cbox input[type=tel],
.cbox input[type=email],
.cbox input[type=text]{
width:100%;
}
.cbox textarea{
min-height:240px;
}
.cbox .wpcf7-list-item{
	display:block;
}
.attbox{
border:1px solid #cc0000;
padding:0.5rem;
margin-top:1rem;
margin-bottom:2rem;
}
.attbox p{
text-align:center;
color:#cc0000;
}
.privacybox{
padding:1rem;
background:rgba(0,0,0,0.05);
margin-bottom:2rem;
}
.privacybox h2{
font-size:18px;
text-align:center;
line-height:1.6;
}
.privacybox h2 .en{
font-size:14px;
display:block;
color:#999999;
font-weight:normal;
}
.privacybox li{
font-size:14px;
}
.ico7{
width:300px;
margin:0 auto 2rem auto;
}
.feedback .web .img{
margin-bottom:2rem;
}
.url a{
color:#0b57d0;
}
.feedback h2{
margin-bottom:2rem;
}
.feedback .profile img{
width:110px;
margin-right:1.5rem;
}

.single .eyecatch{
margin-bottom:2rem;
}
.oshirase .news{
padding-bottom:5rem;
}
.oshirase .news h1{
margin-bottom:2rem;
}
.oshirase p{
margin-bottom:1.5rem;
}

.aboutus .item{
padding-top:4rem;
}
.rinenbox{
margin-bottom:4rem;
}
.aboutus .rinenbox p{
font-size:24px;
text-align:center;
margin-bottom:3.5rem;
}
.aboutus .inside{
padding-left:1rem;
}
.aboutus p.copy{
margin:2.5rem 0 4rem 0;
}
.aboutus p.copy span{
position: relative;
color:#e94e66;
font-weight:500;
font-size:42px;
line-height: 1.6;
}
.aboutlogo{
margin:2em 0;
position: relative;
padding:1.1em 0;
border-top: solid 2px #ffeaea;
border-bottom: solid 2px #ffeaea;
}
.aboutlogo .in2{
width:94%;
margin:0 auto;
padding:1.5rem;
background:#fef7f7;
}
.aboutlogo:before,
.aboutlogo:after{
content: '';
position: absolute;
top: -10px;
width: 2px;
height: -webkit-calc(100% + 20px);
height: calc(100% + 20px);
background-color: #ffeaea;
}
.aboutlogo:before {left: 10px;}
.aboutlogo:after {right: 10px;}

.aboutlogo .img{
width:20%;
}
.aboutlogo .txt{
width:75%;
}
.aboutlogo h3{
margin-bottom:1.5rem;
}

.rinenbox h3{
margin-bottom:2rem;
}
.rinenbox h3 .en{
position: relative;
padding: 0.5rem 0 calc(0.5rem + 5px);
background: #f2d550;
width:160px;
line-height:1.3;
text-align:center;
display:inline-block;
font-size:110%;
font-weight:bold;
border-radius:5px;
}
.rinenbox h3 .en:before {
position: absolute;
top: -3px;
left: -3px;
width: 100%;
height: 100%;
content: '';
border: 1px solid #000;
border-radius:5px;
}
.rinenbox h3 .jp{
display:inline-block;
font-size:24px;
padding-left:1rem;
}

.rinenbox p{
padding-left:1.5rem;
}
.aboutus h2{
margin-bottom:2rem;
}
.aboutus table td,
.aboutus table th{
vertical-align:top;
text-align:left;
padding:1rem;
border-bottom:10px solid #fff;
}
.aboutus table th{
border-radius: 0 2rem;
width:180px;
background:#fff4f4;
}
.aboutus p{
margin-bottom:1.5rem;
}
.aboutus p.copy{
font-size:115%;
}
.news blockquote{
background:#efefef;
padding:1rem;
margin-bottom:1.5rem;
border-radius:5px;
}
.news blockquote p:last-child{
margin-bottom:0;
}
#profile .img{
width:20%;
}
#profile .txt{
width:77%;
}
.snsicon ul li:last-child{
margin-right:0;
}
.snsicon .flex{
justify-content: center;
}
.feedback .url a{
color:#c85565;
padding:0.2rem 0.5rem;
background:rgba(255, 240, 244, 0.8);
}
/*==================================================
FOOTER
====================================================*/
#footer{
margin-top:2rem;
padding:2rem 0 5rem 0;
}
#footer a{
}
.copyright{
margin-top:2rem;
}
#footer .flex1 div{
margin-right:2rem;
}
#footer .flex1 li{
margin:1rem;
}

#footer .ft1{
width:120px;
}
.snsicon ul li{
width:28%;
margin-right:10%;
}
#footer .logo{
width:110px;
margin:0 auto 1rem auto;
}
#footer .logo img{
width:140px;
height:auto;
margin-bottom:0.2rem;
}
#footer .logo .hdcopy{
font-size:19px;
}
#footer .ft6 a{
width:180px;
display: block;
margin: 0 auto;
background: #e94e66;
color: #fff;
border-radius: 0.5rem;
border: 0;
font-size: 110%;
text-align: center;
padding: 3rem 0.5rem;
}
.page #footer{
border-top: 5px solid rgba(255, 240, 244, 0.8);
}

#footer .ha{
font-weight:bold;
}
.ft6{
width:180px;
}


.pager{
margin-top:2rem;
}
.pager,
.pager ul{
text-align:center;
}
.pager ul li{
display:inline-block;
margin-left:0.3rem;
color:#f4b3bc;
}
.pager ul li:first-child{
margin-left:0;
}
.pager ul li .current,
.pager ul li a{
padding:0.2rem 0.5rem;
display:block;
font-size:21px;
border-radius:5px;
}
.pager ul li .current{
line-height:20px;
background:#f4b3bc;
color:#fff;
border:1px solid #f4b3bc;
}

.pager ul li a{
color:#f4b3bc;
border:1px solid #f4b3bc;
}
#ftnavi{
padding-top:1rem;
border-top:1px solid #ddd;
}
#ftnavi .prevpost{
float:left;
background-size:14px 14px;
padding-left:1.2rem;
}
#ftnavi .nextpost{
float:right;
background-size:14px 14px;
padding-right:1.2rem;
}
#pagetop{
position:fixed;
bottom:1rem;
right:2rem;
width:60px;
height:auto;
z-index:2;
}


.cform textarea,
.cform input[type=email],
.cform input[type=text]{
width:100%;
}
.grecaptcha-badge { 
visibility: hidden;
}

.feedback .item{
padding-top:4rem;
padding-bottom:5rem;
margin-bottom:5rem;
}
.feedback .txt{
width:65%;
}
.feedback .web{
width:30%;
}
.feedback h3{
margin-bottom:1rem;
}
.feedback p{
margin-bottom:2rem;
}

.ig_bnr{
width:360px;
margin:0 auto 1rem auto;
}

/*====================================================
BASE
====================================================*/
.ctr{text-align:center;}
.tgt{text-align:right;}
.tlt{text-align:left;}
.bold{font-weight:bold;}
.mb02{margin-bottom:0.2rem;}
.mb03{margin-bottom:0.3rem;}
.mb05{margin-bottom:0.5rem;}
.mt05{margin-top:0.5rem;}
.mb1{margin-bottom:1rem;}
.mb15{margin-bottom:1.5rem;}
.mb2{margin-bottom:2rem;}
.mb25{margin-bottom:2.5rem;}
.mb3{margin-bottom:3rem;}
.mb4{margin-bottom:4rem;}
.mb5{margin-bottom:5rem;}
.mb8{margin-bottom:8rem;}
.mt2{margin-top:2rem;}
.pt05{padding-top:0.5rem;}
.pb1{padding-bottom:1rem;}
.pt1{padding-top:1rem;}
.pt2{padding-top:2rem;}
.pt4{padding-top:4rem;}
.pt6{padding-top:6rem;}
.pt8{padding-top:8rem;}
.fff{color:#fff;}
.red{color:#e95464;}
.big{font-size:150%;}
.txtlt{text-align:left;}
.txtgt{text-align:right;}
.txtctr{text-align:center;}
.txt9{font-size:9px;}
.txt10{font-size:10px;}
.txt11{font-size:11px;}
.txt12{font-size:12px;}
.txt13{font-size:13px;}
.txt15{font-size:15px;}
.txt16{font-size:16px;}
.txt18{font-size:18px;}
.txt20{font-size:20px;}
.txt21{font-size:21px;}
.txt24{font-size:24px;}
.txt25{font-size:25px;}
.txt30{font-size:30px;}
.txt32{font-size:32px;}
.lh1{line-height:1;}
.lh13{line-height:1.3;}
.lh15{line-height:1.5;}
.lh18{line-height:1.8;}
.lh20{line-height:2.0;}
.lh24{line-height:2.4;}
.ls01{letter-spacing:-1px;}
.ls02{letter-spacing:-2px;}
.ls03{letter-spacing:-3px;}
.ls04{letter-spacing:-4px;}
.ls05{letter-spacing:-5px;}
.ls06{letter-spacing:-6px;}
.size-full,
.img100 img,
.img100{
width:100%;
height:auto;
}

strike .strike{
color:#231916;
}

.shadow{text-shadow: rgba(0,0,0,0.5) 2px 2px 5px;}

.ffs{ -moz-font-feature-settings: "palt";
-webkit-font-feature-settings: "palt";
font-feature-settings: "palt";}

.none,
.sp{display:none;}
.pc{display:block;}


img.aligncenter{
margin:0 auto;
}

/*====================================================
AFTER
====================================================*/
section:after,
.breadcrumb:after,
.w980:after,
.cl:after,
.clearfix:after,
#main:after,
#nav:after,
#footer:after,
#header:after{content:".";display:block;clear:both;height:0;visibility:hidden;font-size:0;}


/*====================================================
MEDIA QUERY
====================================================*/



@media screen and (max-width: 1440px) {
.top1 .img1 img{
left:2%;
}
.top1 .img2 img{
left:10%;
}
.top1 .img3 img{
right:2%;
}
.top1 .img4 img{
right:10%;
}
}
@media screen and (max-width: 1300px) {
.w1200{
width:90%;
margin:0 auto;
}
}

@media screen and (max-width: 1200px) {
.w1180{
width:90%;
}
.top1 .img img{
position:static;
margin:1rem;
width:120px;
}
.top1 .flex1{
margin-top:4rem;
justify-content:center;
}
.top1 .img1 img{
left:2%;
}
.top1 .img2 img{
left:10%;
}
.top1 .img3 img{
right:2%;
}
.top1 .img4 img{
right:10%;
}
.h2box h2{
margin-bottom:2rem;
}
#footer .pcf.flex2{
display:block;
}
#footer .ft1{
margin:0 auto;
}
#footer .item{
margin-bottom:2rem;
}
#footer .ft6{
width:240px;
margin:0 auto;
}
}
@media screen and (max-width: 980px) {
.w900{
width:100%;
}
.pc{
display:none;
}
.sp{
display:block;
}
#spnav{
display:block;
}
#header #nav{
display:none;
}
#nav{
position:fixed;
top:0;
left:0;
width:100%;
height:auto;
background:rgba(0,0,0,0.7);
z-index:3;
padding-bottom:5rem;
}
#nav ul{
margin:5rem auto 0 auto;
text-align:center;
}
#nav ul li a{
text-align:center;
}
#nav .flex1{
display:block;
}
#nav a{
color:#fff;
}
}

@media screen and (max-width: 780px) {
.top3 .item{
margin-bottom:5rem;
}
.top3 .item .flex2{
display:block;
}
.top3 .item .arw,
.top3 .item .problem,
.top3 .item .answer{
width:100%;
}
.top3 .item .arw img{
width:32px;
margin:0.5rem auto;
transform: rotate(90deg);
}
.top2 .flex2{
display:block;
}
.top2 .t2{
width:100%;
}
.t2 .t2b{
padding-top:5.5rem;
}
.top2 .flex2 .item{
height:auto;
}
.top2 .t2 .flex2{
display:flex;
}
.top2 .item{
width:100%;
margin-bottom:3rem;
}
.top2 .flex2 .item{
width:100%;
}
.top2 .item img{
width:50%;
margin:0 auto;
}
.top3 .item .answer h4{
font-size:24px;
margin-bottom:1.2rem;
}
.newsbox ul li .date{
display:block;
margin-bottom:0.5rem;
}
.newsbox ul li a{
padding-right:2rem;
line-height:1.6;
}
.newsbox ul li a:after{
top:45%:
}
.top2 .pcbr{
display:inline;
}
.feedback .item.flex2{
display:block;
}
.feedback .txt{
margin-bottom:2rem;
}
.feedback .web,
.feedback .txt{
width:100%;
}
.feedback .flex1 .img{
width:120px;
margin-right:20px;
}
.feedback .flex1 .txt{
width:400px;
}
.section .news{
width:90%;
margin:0 auto;
}
}
@media screen and (max-width: 720px) {
.w720{
width:100%;
}
body{
font-size:21px;
}
.rose{
width:280px;
}
#fv{
top:23%;
}
#fv h1{
font-size:52px;
}
#fv h1.mb3{
margin-bottom:4rem;
}
.rinenbox .spbr,
#fv h1 .spbr{
display:block;
}
.top1 h2.serif{
font-size:48px;
}
.top1 p{
font-size:26px;
}
#fv .description{
font-size:30px;
}
#nav ul li a{
padding:1.2rem;
font-size: 115%;
}
#nav ul li ul li a{
padding-left:2rem;
}
.spbr{
display:block;
}
.top3 .item .arw img{
transform: rotate(90deg);
}
.cbox td,
.cbox th{
width:100%;
display:block;
}
.cbox th{
white-space:normal;
border-bottom:0;
text-align:left;
border-bottom:1px solid #ffb4b4;
}
.cbox .pcbr{
display:inline;
}
#nav ul li.ico_mail a{
margin:0 auto;
padding:1.2rem;
width:80%;
}
#nav ul li.ico_mail a:after {
width: 29px;
height: 24px;
right: 25px;
top: 20px;
}
.top2 .item.first:before{
width:140px;
height:104px;
}
.top2 .item h3{
font-size:28px;
}
.aboutlogo .in2.flex2{
display:block;
}
.aboutlogo .in2{
width:88%;
}
#profile .txt,
#profile .img,
.aboutlogo .txt,
.aboutlogo .img{
width:100%;
}
#profile .img,
.aboutlogo .img{
margin-bottom:2rem;
}
.aboutlogo .img img{
width:60%;
margin:0 auto;
}
#profile .img img{
width:50%;
margin:0 auto;
}
.rinenbox h3{
text-align:center;
}
.rinenbox h3 .jp{
display:block;
padding:1.5rem 0 0 0;
}
.rinenbox p{
padding-left:0;
}
.aboutus .rinenbox p{
margin-bottom:5.5rem;
font-size:25px;
}
.aboutus p.copy span{
font-size:28px;
line-height:1;
}
.aboutus p.copy{
text-align:center;
margin-bottom:2rem;
}
.aboutlogo h3{
text-align:center;
}
.ctxt{
text-align:center;
}
}
@media screen and (max-width: 620px) {
.top1 .img img{
margin:1rem 0.5rem;
}
}