@charset "UTF-8";
@import url("grid.css");


img {
    max-width:100%;
    height: auto;
}
a {
    color: #0000FF;
    text-decoration: underline;
}


a:hover { 
    color: #0000FF;
}

a:visited {
    color: #800080;
    text-decoration: underline;
}
a img:hover {
    opacity: 0.8;
}
.blueback {
    background-color: #003399;
    color: #fff;
    padding: 1rem;
}
.underline {
    border-bottom: 3px solid #003399;
    padding-bottom: 0.5rem;
}
.center {
    text-align: center;
}

.footercenter {
    text-align: center;
    color: #000;
}

.gray-back {
    background-image: url("../img/9b_bg.jpg") !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 2rem 0 3rem 0;
    margin-bottom: 0rem;
    margin-top: 0rem;
}



/*ヘッダー
-------------------------------------*/
header {
    padding: 0;
    background-color: #F69896; 
    margin: 0;
}

.header {
    display: flex;
    flex-direction: row;
    padding: 0 50px;
    background-color: #F69896; 
    margin: 0;
}


.header-box {
    margin-left: auto;
    margin-top: 8px;
}


h2 {
  /*線の種類（二重線）太さ 色*/
background: linear-gradient(transparent 100%, #F69896 100%);
color: #E66B58;
}





/* グリッド */
.container {
    margin: 6rem auto 0 auto;
    max-width: 1240px;
    padding: 0 50px;
    position: relative;
}

.container2 {
    margin: 0rem auto 0rem auto;
    max-width: 1240px;
    padding: 0px 50px;
    position: relative;
}

.container3 {
    margin: 0rem auto 0rem auto;
    max-width: 1240px;
    padding: 20px 50px 0px 50px;
    position: relative;
}

.container4 {
    margin: 0rem auto 0rem auto;
    max-width: 1240px;
    padding: 0rem 0px 0px 0;
    position: relative;
}

.container5 {
    margin: 0px auto 0rem auto;
    max-width: 100%;
    padding: 80px 0px 0px 0;
    position: relative;
    background-color: #fadbda;
}

.mg {
    padding-left: 50px;
    padding-right: 50px;
}


/*メイン画像
-------------------------------------*/
.mainimg img {
    width: 1240px;
    margin: 0px auto;
}

.mainimg2 img {
    margin: 140px auto 0 auto;
}

/*メインコンテンツ
-------------------------------------*/
main {
    margin: 0rem 0 0rem 0;
    background-color: #fff; 
    padding: 2rem 0px 100px 0;
}



/*フッター
-------------------------------------*/
footer {
    background-color: #F69896;
    padding: 2rem 0;
    color: #555;
    margin-top: 10px;
}
footer h5 {
    border-bottom: 2px solid #fff;
}


/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 1rem 0 1rem 0;
    background-color: #F69896;
    color: #fff;
    margin-top: 0px;
}
.copyright a {
    color: #000;
    text-decoration: none;
    display: inline-block;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
#pagetop a {
    display: block;
    z-index: 999;
    padding: 13px 0 0 0px;
    border-radius: 30px;
    width: 60px;
    height: 60px;
    background-color: #f18c00;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.2;
}
}
#pagetop a:hover {
    background: #ccc;
}

ul {
    padding-left: 0px;
    list-style-type: disc;
    list-style-position: outside;
}

.contact-button {
    padding: 1rem;
    border: 2px solid #000;
}

li {
    list-style: none;
}

li{
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    align-items: baseline;
}



.check_lb {
    display:block;
}


/* リスト */
.mycheckbox input[type="checkbox"]{
    display: none;
}
/* チェックボックスの代わりを成すラベル */
.mycheckbox input[type="checkbox"]+label{
    display: none;
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding-left: 25px;
    padding-right: 10px;
}
/* ラベルの左に表示させる正方形のボックス□ */
.mycheckbox input[type="checkbox"]+label::before{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    left: 0;
    top: 50%;
    border: 2px solid;
    border-color:  #585753; /* 枠の色変更 お好きな色を */
    background-color: #FFF; /* 背景の色変更 お好きな色を */
}
/* チェックが入った時のレ点 */
.mycheckbox input[type="checkbox"]:checked+label::after{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 18px;
    height: 9px;
    margin-top: -9px;
    top: 50%;
    left: 3px;
    transform: rotate(-45deg);
    border-bottom: 3px solid;
    border-left: 3px solid;
    border-color:  #cc3300; /* チェックの色変更 お好きな色を */
}

/* Ｑ＆Ａ */
.qa-list dl {
    position: relative;
    margin: 20px 0 0;
    cursor: pointer;
    border: 1px solid #DDD;
}
.qa-list dl:first-child {
    margin-top: 0;
}
.qa-list dl::after {
    position: absolute;
    top: 19px;
    right: 10px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #f50784; /* 右矢印の文字色 */
    border-right: 2px solid #f50784; /* 右矢印の文字色 */
}
.qa-list .open::after {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 10px 1em 10px 2.5em;
    font-weight: 500;
    background: #f4f4f4; /* Q＆Aの背景色 */
}

.qa-list dl dt.col_f {
    position: relative;
    margin: 0;
    padding: 10px 1em 10px 1em;
    font-weight: 500;
    background: #f4f4f4;
    text-align: center;
}

.qa-list dl dt::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 10px;
    left: 0.5em;
    display: block;
    content: 'Q.';
    color: #f50784; /* Qの文字色 */
}

.qa-list dl dt.col_f::before {
    color: #f4f4f4; /* Qの文字色 */
}

.qa-list dl dd::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    left: 0.5em;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #3285bf;
}

.qa-list dl dd.col_f::before {
    color: #ffffff;
}
.qa-list dl dd {
    position: relative;
    margin: 0;
    padding: 10px 1em 10px 40px;
}

.qa-list dl dd.col_f {
    position: relative;
    margin: 0;
    padding: 10px 2em 10px 2em;
}
.qa-list dl dd p {
    margin: 0px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}



/* スライダー */
    *{
      box-sizing: border-box;
    }

.slider{
        width: 100%;
        margin: 0px auto 6rem auto;
}

.slider2{
        width: 100%;
        margin: 0px auto 0rem auto;
}

.slick-slide{
      margin: 0px auto 0rem auto;
}

.slick-slide img{
      width: 100%;
      margin: 0px auto 0rem auto;
}

.slick-prev::before,
.slick-next::before{
      color: black;
}


.slick-slide {
      transition: all ease-in-out .3s;

}
    
.slick-active {
}

.slick-current {
      opacity: 1;
}

article {
display: flex;
margin-bottom: 20px;
padding: 0px;
}

article figure {
margin-right: 20px;
width: 150px;height: 150px;
}

article figure img {
min-width: 150px;
max-width: 100%;
vertical-align: top;
}


/* ヘッダーメニュー */
.inner {
    width: 1140px;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}
 
/* header */
#top-head {
    position: absolute;
    width: 100%;
    margin: 0px auto 0;
    padding: 15px 0 0;
    line-height: 1;
    z-index: 999;
    height: 90px;
}


#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
    font-size: 36px;
    padding-left: 0px;
    padding-bottom: 0px;
    padding-top: 0px;
}

#global-nav ul {
    list-style: none;
    position: absolute;
    right: 0;
    font-size: 15px;
    top: 30px;
    padding-right: 20px;
}

#global-nav ul li {
    float: left;
}
#global-nav ul li a {
    color: #fff;
    padding: 0 0px 0px 20px;
text-decoration:none;
}

#global-nav ul li a:hover {
    color: #fff;
text-decoration:underline;
}

 
/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    height: 90px;
    background: #f24717;
    background: rgba(246,152,150,.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
    font-size: 24px;
    color: #fff;
}
#top-head.fixed #global-nav ul li a {
    color: #fff;
    padding: 0 0px 20px 20px;
}


#top-head.fixed #global-nav ul li a:hover {
    color: #fff;
    padding: 0 0px 20px 20px;
text-decoration:underline;
}

/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 32px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}

@media screen and (max-width: 768px) {
#top-head,
.inner {
    width: 100%;
    padding: 0;
}

#top-head {
    top: 0;
    position: fixed;
    margin-top: 0;
}

/* Fixed reset */
#top-head.fixed {
    padding-top: 0;
    background: transparent;
}

#mobile-head {
    background: #eeeddf;
    background: rgba(239,130,0,.7);
    width: 100%;
    height: 80px;
    z-index: 999;
    position: relative;
}

#top-head.fixed .logo,
#top-head .logo {
    float: none;
    color: #333;
    padding-top: 20px;
}

#global-nav {
position: absolute;
/* 開いてないときは画面外に配置 */
    top: -500px;
    background: #333;
    width: 100%;
    text-align: center;
    padding: 10px 0;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}

#global-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
}

#global-nav ul li {
    float: none;
    position: static;
    padding: 50px 0;
}

#top-head #global-nav ul li a,
#top-head.fixed #global-nav ul li a {
    width: 100%;
    display: block;
    color: #fff;
    padding: 10px 10px;
}

#top-head #global-nav ul li a:hover,
#top-head.fixed #global-nav ul li a:hover {
    width: 100%;
    display: block;
    color: #fff;
    padding: 10px 0;
}

#nav-toggle {
    display: block;
}

/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}

.open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
    }

.open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
     transform: rotate(-315deg);
}

/* #global-nav スライドアニメーション */
.open #global-nav {
/* #global-nav top + #mobile-head height */
    -moz-transform: translateY(556px);
    -webkit-transform: translateY(556px);
    transform: translateY(556px);
}

#nav-toggle::after {
    position: absolute;
    left: 0;
    bottom: -5px;
    content: 'MENU';
    display: block;
    width: 100%;
    color: #fff;
    font-size: 11px;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    transition: all .4s;
}

.mainimg img {
    margin-top: 80px;
    width: 100vw;
}
}

@media screen and (max-width: 468px) {
.mainimg img {
    padding-top: 90px;
    width: 100vw;
}

.mainimg2 img {
    margin: 100px auto 0 auto;
}
}

@media screen and (max-width: 768px) {
.container5 {
    margin: 0px auto 0rem auto;
    max-width: 100%;
    padding: 0px 0px 0px 0;
    position: relative;
    background-color: #eb6ea5;
}
#top-head,
.inner {
    width: 100%;
    padding: 0;
}
    #top-head {
    top: 0;
    position: fixed;
    margin-top: 0;
    text-align: center;
    background: #F69896;
}
/* Fixed reset */
#top-head.fixed {
    padding-top: 0;
    background: transparent;
}

#mobile-head {
    background: #F69896;
    width: 100%;
    height: 80px;
    z-index: 999;
    position: relative;
    text-align: center;
}

#top-head.fixed .logo,
#top-head .logo {
    color: #fff;
    font-size: 26px;
    padding-left: 0px;
}



#global-nav {
position: absolute;
/* 開いてないときは画面外に配置 */
    top: -500px;
    background: #ef8200;
    background: rgba(239,130,0,.7);
    width: 100%;
    text-align: center;
    padding: 10px 0;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}
#global-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
    padding: 20px 0 20px 0;
}
#global-nav ul li {
    float: none;
    position: static;
    width: 100%;
    display: block;
    color: #fff;
    padding: 0px 20px;
}

#top-head #global-nav ul li a,
#top-head.fixed #global-nav ul li a {
    width: 100%;
    display: block;
    color: #ef8200;
    padding: 15px 20px;
  border-bottom: #ef8200 1px dotted;
    background: #ffffff;

}

#top-head #global-nav ul li a:hover,
#top-head.fixed #global-nav ul li a:hover {
    width: 100%;
    display: block;
    color: #ffffff;
    padding: 15px 20px;
  border-bottom: #fff 1px dotted;
    background: #ef8200;
}


#nav-toggle {
    display: block;
}

/* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}

.open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
}

.open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}

/* #global-nav スライドアニメーション */
.open #global-nav {
/* #global-nav top + #mobile-head height */
    -moz-transform: translateY(556px);
    -webkit-transform: translateY(556px);
    transform: translateY(556px);
}
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }

 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 468px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

@media screen and (min-width: 468px){
#sp-fixed-menu {display: none; }
}

a[href^="tel:"] { cursor: default; }

@media screen and (max-width: 1024px){
.inner {
    width: 100%;
    margin: 0 auto;
}
#global-nav ul li {
    float: left;
}
.header {
	display: flex;
    flex-direction: row;
    padding: 0px 40px 0 40px;
    background-color: #d01276; 

.gray-back {
    padding: 4rem 0;
    margin-top: 3rem;
}

.header {
	display: flex;
    flex-direction: row;
    padding: 0px 30px 0 30px;
    background-color: #d01276; 
}
.logo { 
    padding: 0;
    margin: 10px auto 0 auto;
    height: auto;
    text-align: center;
}



.telbox {
    display: none;
}

.container {
    margin: 6rem auto 0em auto;
    max-width: 90%;
    padding: 0;
    position: relative;
}

.container2 {
    margin: 0rem auto 0em auto;
    max-width: 90%;
    padding: 0;
    position: relative;
}

.container3 {
    margin: 0rem auto 0rem auto;
    max-width: 90%;
    padding: 20px 0px 10px 0;
    position: relative;
}

.container4 {
    margin: 0rem auto 0rem auto;
    max-width: 90%;
    padding: 0px 0px 0px 0;
    position: relative;
}

.gray-back {
    background-image: url("../img/9b_bg.jpg") !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 2rem 0;
    margin-bottom: 2rem;
}

.mb25sp{
    margin-bottom: 2.5rem;
}

.mb2sp{
    margin-bottom: 4.5rem
}
}


@media screen and (max-width: 468px){
body {
    font-size: 15px;
    line-height: 1.5;
}

.header {
	display: flex;
    flex-direction: row;
    padding: 10px 10px 0 10px;
    background-color: #d01276; 
}

.gray-back {
    padding: 2rem 0;
    margin-bottom: 2rem;
}

h1 {
    font-size: 3.2rem;
    line-height: 1.2;
    letter-spacing: -.1rem;
}


.container {
    margin: 4rem auto 0 auto;
    max-width: 90%;
    padding: 0;
    position: relative;
}

.container2 {
    margin: 0rem auto;
    max-width: 90%;
    padding: 0;
    position: relative;
}

.container3 {
    margin: 2rem auto;
    max-width: 90%;
    padding: 0;
    position: relative;
}

.container4 {
    margin: 2rem auto;
    max-width: 90%;
    padding: 0rem 50px 0px 50px;
    position: relative;
}

.container5 {
    margin: 0px auto;
    max-width: 100%;
    padding: 0;
    position: relative;
    background-color: #fff;
}



.mg {
    padding-left: 0px;
    padding-right: 0px;
}

main {
    margin: 0rem 0 0rem 0;
    padding: 2rem 0px 50px 0;
}

.mainimg img {
    margin-top: 0px;
}

.copyright {
    text-align: center;
    padding: 1rem 0 5rem 0;
    background-color: #F69896;
    color: #fff;
    margin-top: 0px;
}

.header-box {
    display: none;
}

h1 {
    margin: 0rem auto;
    max-width: 70%;
}

.sp_column{
    flex-direction: column;
}
.order1 {
    order: 1;
    margin-bottom: 1rem;
}
.order2 {
    order: 2;
    margin-top: 0rem;
    margin-bottom: 0rem;
}
.order3 {
    order: 3;
}

.span-1 {
    display: none;
}

.mt2sp{
    margin-top: 2rem;
}

.mb2sp{
    margin-bottom: 1.0rem;
}

.mb1sp{
    margin-bottom: 1rem;
}

.mb20sp{
    margin-bottom: 20px;
}

.mb25sp{
    margin-bottom: 3.5rem;
}

ul.list01 {
display: flex;
justify-content: center;
align-items: center;
list-style: none;
  margin: 10px 0;
}


li.list01 {
  padding: 0 5px;
  font-size: 12px;
  border-right: #ddd 1px solid;
}

li:last-child {
  border-right: none;
}

#pagetop {
    position: fixed;
    bottom: 40px;
    right: 10px;
}

article {
display: flex;
margin-bottom:  2rem;
padding: 0px;
}


article figure {
margin-right: 20px;
width: 100px;height: 100px;
}

article figure img {
min-width: 100px;
max-width: 100%;
vertical-align: top;
}

.qa-list dl {
    position: relative;
    margin: 10px 0 0;
    cursor: pointer;
    border: 1px solid #DDD;
}
.qa-list dl:first-child {
    margin-top: 0;
}
.qa-list dl::after {
    position: absolute;
    top: 17px;
    right: 16px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #f50784; /* 右矢印の文字色 */
    border-right: 2px solid #f50784; /* 右矢印の文字色 */
}
.qa-list .open::after {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 10px 20px 10px 40px;
    font-weight: 500;
    background: #f4f4f4; /* Q＆Aの背景色 */
}
.qa-list dl dd.col_f {
    position: relative;
    margin: 0;
    padding: 10px 2em 10px 2em;
}
.qa-list dl dt::before {
    font-size: 20px;
    line-height: 1;
    position: absolute;
    top: 10px;
    left: 10px;
    display: block;
    content: 'Q.';
    color: #f50784; /* Qの文字色 */
}
.qa-list dl dd::before {
    font-size: 20px;
    line-height: 1;
    position: absolute;
    top: 21px;
    left: 10px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #3285bf; /* Aの文字色 */
}
.qa-list dl dd {
    position: relative;
    margin: 0;
    padding: 20px 20px 20px 40px;
}
.qa-list dl dd.col_f {
    position: relative;
    margin: 0;
    padding: 10px 1.5em 10px 1.5em;
}
.qa-list dl dd p {
    margin: 0px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}


/*メニューをページ下部に固定*/
#sp-fixed-menu{
     position: fixed;
     width: 100%;
     bottom: 0px;
     font-size: 0;
     z-index: 99;
}

/*メニューを横並びにする*/
#sp-fixed-menu ul{
     display: flex;
     list-style: none;
     padding:0;
     margin:0;
     width:100%;
}

#sp-fixed-menu li{
     justify-content: center;
     align-items: center;
     width: 50%;
     padding:0;
     margin:0;
     font-size: 13px;
     border-right: 1px solid #fff;
}

/*左側メニューを緑色に*/
#sp-fixed-menu li:first-child{
     background: #333;
}

/*左側メニューをオレンジ色に*/
#sp-fixed-menu li:last-child{
     background: #333;
}

/*ボタンを調整*/
#sp-fixed-menu li a{
     color: #fff;
     text-align: center;
     display:block;
     width: 100%;
     padding:10px 10px;
}

.slider{
        width: 100%;
        margin: 0px auto 4rem auto;
}

}

