@charset "UTF-8";

@media screen and (max-width:767px) {

/* RESET __________________________________ */


/* COMMON __________________________________ */
#main .pc_only {
display: none !important;
}
#main .sp_only {
display: block !important;
}
#main {
margin-top: 13px;
}
#main img {
margin-top: 0;
margin-bottom: 0;
height: auto;
}
#main img.sp_100 {
width: 100% !important;
}
#main section{
width: 95% !important;
margin-left: auto;
margin-right: auto;
}
#main .rightTxt {
text-align: center;
}
#main .center_sp{
display: block;
margin-left: auto;
margin-right: auto;
}
#main .notes {
font-size: 13px;

}

/* CONTENT __________________________________ */
.portal_logo,.phone,.copy01,.copy02,.copytxt_block{
position: relative;
display: inline-block;
}
#main .mainvisual {
text-align: center;
height: auto;
width: 100% !important;
}
#main .mainvisual .portal_logo{
width: 80%;
margin-bottom: 2.4rem;
top: 0px;
display: none;
}
#main .mainvisual .logo_sp {
  display: block;
  width: 80%;
  margin: 0rem auto 1.0rem;
  padding-top: 1.5rem;
}
#main .mainvisual .copy01{
width: 80%;
margin-bottom: 2rem;
margin-top: 0px;
}
#main .mainvisual .copy02{
width: 65%;
margin-bottom: 0.2rem;
top: -10px;
right: 0px;
}
#main .mainvisual .phone {
width: 60%;
right: 0px;
bottom: 0px;
top: 0px;
position: relative;
}
#main .mainvisual .mainvisual_content {
padding-top: 0rem;
padding-bottom: 0.5rem;
width: 100%;
margin-bottom: 0rem;
}
#main .mainvisual .mainvisual_content p.notes {
width: 95%;
margin: auto !important;
}

#main .mainvisual .copytxt_block{
display: block;
width: 100%;
background-color: #f9f9f9;
border-top: 1px solid #e5e5e5;
padding-bottom: 1.8rem;
padding-top: 1.8rem;
top: auto;
}
#main .mainvisual .copytxt_block h2{
font-size: 5.0vw !important;
margin-bottom: 0.8rem;
}
#main .mainvisual .copytxt_block ul{
display: inline-block;
}
#main .mainvisual .copytxt_block li {
font-size: 4.8vw;
background-size: 1.8rem auto;
padding-left: 2.5rem;
padding-top: 0.4rem;
padding-bottom: 0.4rem;
}

#main .dl_block02{
padding-top: 1.5rem;
padding-bottom: 1.0rem;
padding-left:  1.0rem;
padding-right: 1.0rem;
margin-bottom: 0.5rem;
border-radius: 0px;
}
#main .dl_block02 ul {
  width: 100%;
  max-width: 600px;
  margin: auto;
}

#main .dl_block {
padding-top: 2rem;
padding-bottom: 1.5rem;
}
#main .dl_block h3 .dl_ttl,
#main .dl_block02 h3 .dl_ttl {
width: 65%;
margin-bottom: 1.2rem;
}
#main .dl_block ul,
#main .dl_block02 ul {
width: 94%;
}
#main .dl_block ul li:nth-child(1) ,
#main .dl_block ul li:nth-child(2),
#main .dl_block02 ul li:nth-child(1) ,
#main .dl_block02 ul li:nth-child(2) {
width: 48.8%;
}
#main .bnr_block img,
#main .bnr_block02 img {
width: 100%;
}
#main .sec01 {
width: 100% !important;
}
#main .sec01 p.notes{
width: 90% !important;
}
#main .sec01 h2 {
font-size: 6.0vw !important;
text-align: center;
color: #004bd6;
margin-bottom: 1rem;
}
#main .sec01 .sec01_txt {
font-size: 4.2vw;
line-height: 1.9;
letter-spacing: -0.09em;
color: #333333;
width: 95%;
margin-left: auto;
margin-right: auto;
}
#main .sec01 .sec01_img01 {
margin-bottom: 0.5rem;
}
#main .sec02 h3 {
font-size: 3.9vw;
line-height: 1.5;
background-position: 5% center;
padding-left: 1.5rem;
padding-bottom: 0.8rem;
}
#main .sec02 img{
width: 100% !important;
margin-left: auto;
margin-right: auto;
}
#main .sec02_01 h3 {
background-size: 1rem auto;
}
#main .sec02_02 h3 {
background-size: 1.5rem auto;
}
#main .sec02_03 h3 {
background-size: 1.3rem auto;
}
#main .sec02 .sec02_03 h3 span {
font-size: 1rem;
margin-bottom: 0.5em;
}
#main .sec02 .sec02_01 ul li {
float: none;
width: 100%;
text-align: center;
margin-bottom: 1rem;
}
#main .sec02 .sec02_01 ul li span{
border-right-style: none;
}
#main .sec02 .sec02_01 ul li:first-child{
border-bottom: 1px solid #cccccc;
margin-bottom: 0px;
}
#main .sec02 .sec02_03 .sec02_03_img01 {
padding-top: 0;
}
#main .sec02 .sec02_01 h4 {
font-size: 3.6vw;
font-weight: bold;
}
#main .sec02 .sec02_inc_sp{
padding-left: 1.5rem;
padding-right: 1.5rem;
}
#main .sec02 .sec02_inc_sp2{
padding-left: 0.2rem;
padding-right: 0.2rem;
}
#main .sec02 p.txt {
padding: 1.5rem 0.1rem;
text-align: left;
font-size: 3.5vw;
line-height: 1.8;
color: #333333;
text-align: justify;
text-justify: inter-ideograph;
}
#main .sec02 .sec02_02 .link_more {
font-size: 3vw !important;
margin-bottom: 0.5rem;
}
#main .sec02 .sec02_02 .sec02_02_img01 {
margin-top: 10px;
}

#main .sec02_btn__list-item {
  display: block;
  margin: 10px;
  text-align: center;
}

#main .sec03 ul  {
width: 100%;
float: none;
font-size: 3.5vw;
margin-bottom: 2em;
letter-spacing: -0.1rem;
}
#main .sec03 ul li {
width: 50%;
margin-bottom: 0.3rem;
float: left;
}
#main .sec03 .sec03_img01 {
width: 90%;
float: none;
margin-bottom: 1em;
margin-left: auto;
margin-right: auto;
display: block;
}
#main .sec03 .notes {
text-align: center;
}
#main .sec03 {
padding-bottom: 0rem;
}
#main .sec03 h3 {
margin-bottom: 2rem;
font-size: 4vw !important;
}
#main .comment_block dl {
display: block;
font-size: 12px !important;
padding-left: 1rem;
padding-right: 1rem;
}
#main .comment_block dt {
font-weight: bold;
display: block;
vertical-align: middle;
width: 100%;
text-align: center;
margin-bottom: 0.5rem;
}
#main .comment_block dd {
display: block;
color: #333333;
width: 100%;
text-align: center;
}

}

@media screen and (max-width:550px) {

}

@media screen and (max-width:350px) {
#main .sec02_01 h3,
#main .sec02_02 h3,
#main .sec02_03 h3 {
background-image: none !important;
padding-left: 0px;
}
}
