@media print {
 a[href]:after {
 content: "" !important;
 }
 
 abbr[title]:after {
 content: "" !important;
 }
}

#topbg{
	background-color: #fff;	
}

.go-top{
	position: fixed;
	right: 10px;
	bottom: 10px;
}

/* スライダー */

#keyimg {
	width: 100%;
  overflow: hidden;
  padding-top: 30px;
  background-image: url(../img/toppage/bg-sec-0.jpg);
}
#keyimg .bx-viewport {
  background: transparent !important;
  border: 0;
  overflow: visible !important;
}
.bx-wrapper{
	margin: auto;
}
.bx-wrapper .bx-prev {
  left: -50px !important;
}
.bx-wrapper .bx-next {
  right: -50px !important;
}

#keyimg .bxslider img{
	box-shadow: 0 2px 7px rgba(0,0,0,.6);
}

#keyimg .bxslider li:hover{
	opacity: .8;
}

/* スライダーここまで */

/* ナビ */
.menu-trigger,
.menu-trigger span{
  display: inline-block;
  transition: all .2s;
  box-sizing: border-box;
  cursor :pointer;
}
.menu-trigger{
  position: relative;
  width: 100%;
  height: 100%;
  background: #f96788;
  z-index: 1000000;
}
.menu-trigger span{
  position: absolute;
  background: #fff;
  width: 50px;
  height: 5px;
  left: 0;
  right: 0;
  margin: auto;
}
.menu-trigger span:nth-of-type(1){
  top: 40px;
}
.menu-trigger span:nth-of-type(2){
  top: 0;
  bottom: 0;
}
.menu-trigger span:nth-of-type(3){
  bottom: 40px;
}
.menu-trigger.active span:nth-of-type(1){
  -webkit-transform: translateY(15px) rotate(-45deg);
	transform: translateY(15px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2){
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3){
  -webkit-transform: translateY(-15px) rotate(45deg);
	transform: translateY(-15px) rotate(45deg);
}
.g-nav{
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99999;
}
.g-nav .list{
  padding: 20px;
  margin: 0;
  list-style: none;
  background-color: #f8f8f0;
  color: #333;
}
.g-nav .list .item{
  border-bottom: 1px solid #fff;
}
.g-nav .list .item a{
  display: block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  padding: 15px 0;
}

/* ナビここまで */


.color-line{
	background-image: url(../img/toppage/bg-line.png);
	background-repeat: repeat-x;
	width: 100%;
	height: 20px;
	margin: 0;
	padding: 0;

}

#newtop,#newtop *,#newtop *:before,#newtop *:after{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.new-header_wrapper{
	width: 100%;
	border-top: 3px solid #f78fa8;
	border-bottom: 1px solid #f78fa8;
	height: 120px;
	position: relative;
	background-color: #fff;
}

.new-header_wrapper header{
	max-width: 1200px;
	width: 100%;
	height: 100%;
	margin: auto;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

.new-top-logo{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50%);
}

.new-header_wrapper .contact-us{
	margin-right: auto;
	padding: 10px;
}

.new-header_wrapper .contact-us p{
	margin: 0;
}

.new-header_wrapper .contact-us ul{
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
    margin: 0;
    padding: 0;
}

.header-menu-btn{
	width: 100px;
	height: 116px;
	background-color: #f96788;
	margin-left: 30px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}

.head-bnr{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 120px;
}


.topslider{
	width: 100%;
	height: 385px;
	background-image: url(../img/toppage/bg-sec-0.jpg);
}

.akamama-123sai{
	max-width: 1200px;
	width: 100%;
	padding: 50px 10px;
	margin: auto;
}

.akamama-123sai-inner{
	display: -webkit-flex;
	display: flex;
}

.akamama-123sai-inner .akamama-123sai-inner-title{
	width: 320px;
	border-right: 1px dotted #333;
	padding: 20px 10px;
}

.akamama-123sai-inner .akamama-123sai-inner-title h2{
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	text-align: center;
	margin-bottom: 45px;
	font-weight: bold;
	line-height: 1.2;
}

.akamama-123sai-inner .akamama-123sai-inner-title p{
	text-align: center;
}

.book-akamama,.book-123sai{
	width: calc( calc( 100% - 320px ) / 2);
	margin-left: 30px;
}

.book-akamama h3,.book-123sai h3{
	margin: 0;
	padding: 0;
}

.book-akamama img.book-front,.book-123sai img.book-front{
	max-width: 130px;
	max-height: 160px;
	height: 100%;
}

.book-akamama{
	border-top: 5px solid #fa7c92;
	padding: 15px 11px 15px 10px;
	background-color: #f8f8f0;
}

.book-123sai{
	border-top: 5px solid #66ab8c;
	padding: 15px 11px 15px 10px;
	background-color: #f8f8f0
}

.book-akamama-inner,.book-123sai-inner{
	display: -webkit-flex;
	display: flex;
}

.book-akamama-inner div,.book-123sai-inner div{
	width: 100%;
	margin-left: 15px;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.book-akamama-inner div .entry-period,.book-123sai-inner div .entry-period{
	margin-top: 20px;
	margin-bottom: 0;
}

.entry-period strong{
	font-size: 1.2em;
	color: red;
}

.book-akamama-inner span{
	display: block;
	width: 100%;
	height: 38px;
	margin: 10px auto;
	padding: 0 20px;
	line-height: 38px;
	border-radius: 19px;
	background-color: #fa7c92;
	color: #fff;
}

.book-123sai-inner span{
	display: block;
	width: 100%;
	height: 38px;
	margin: 10px auto;
	padding: 0 20px;
	line-height: 38px;
	border-radius: 19px;
	background-color: #66ab8c;
	color: #fff;
}

span.blank{
	background-color: #e2e2e2;
}

.bg-section1{
	background-image: url(../img/toppage/bg-sec-1.jpg);
	padding: 45px 0 100px;
}

.bg-section2{
	background-image: url(../img/toppage/bg-sec-2.jpg);
	padding: 45px 0 100px;
}

.bg-section3{
	background-image: url(../img/toppage/bg-sec-3.jpg);
	padding: 45px 0 100px;
}

.bg-section4{
	background-image: url(../img/toppage/bg-sec-4.jpg);
	padding: 45px 0 100px;
}

.bg-section5{
	background-image: url(../img/toppage/bg-sec-5.jpg);
	padding: 45px 0 100px;
}

.bg-section6{
	background-image: url(../img/toppage/bg-sec-6.jpg);
	padding: 45px 0 100px;
}

.section-content a{
	color: #424242;
	opacity: 1;
	transition: all .2s;
}

.section-content a:hover{
	opacity: .8;
}

#section1-inner .section-content,
#section2-inner .section-content,
#section3-inner .section-content,
#section4-inner .section-content,
#section5-inner .section-content,
#section6-inner .section-content{
	max-width: 990px;
	width: 100%;
	margin: auto;
	background-color: #fff;
	outline: 2px solid #fff;
	outline-offset: 5px;
	padding: 30px;
}

.section-header{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
}

.section-title{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
}

.section-title h2{
	font-size: 36px;
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	text-align: center;
	margin: 0;
	margin-bottom: 30px;
	font-weight: bold;
	line-height: 1.2;
	color: #424242;
}

.section-read{
	text-align: center;
	margin-bottom: 45px;
}


.section-content-column2{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
	padding: 10px 30px;
}

.section-content-column2 .section-content-column2-inner{
	width: 50%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	margin-bottom: 30px;
}

.section-content-column2 div img{
	max-width: 390px;
	width: 100%;
}

.section-content-column2 div h3{
	margin: 0;
	padding-left: 1.5em;
	font-size: 18px;
	font-weight: normal;
	text-align: left;
	margin-right: auto;
	position: relative;
}

#section1-inner .section-content-column2 div h3::before{
	position: absolute;
	content: '';
	top: -3px;
	bottom: 0;
	left: -1px;
	width: 18px;
	height: 18px;
	margin: auto;
	border-radius: 50%;
	background: #fa7c92;
}

#section1-inner .section-content-column2 div h3::after{
	position: absolute;
	content: '';
	top: 15px;
	bottom: 0;
	left: 3px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#section3-inner .section-content-column2 div h3::before{
	position: absolute;
	content: '';
	top: -3px;
	bottom: 0;
	left: -1px;
	width: 18px;
	height: 18px;
	margin: auto;
	border-radius: 50%;
	background: #66ab8c;
}

#section3-inner .section-content-column2 div h3::after{
	position: absolute;
	content: '';
	top: 15px;
	bottom: 0;
	left: 3px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


.section-content-column3{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.section-content-column3 div{
	width: auto;
}

.section-content-column3 div h3{
	font-size: 30px;
	font-weight: bold;
	line-height: 1.2;
	margin: 0 auto 10px;
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.section-content-column3 div h3 span{
	font-size: 20px;
}

.section-content-column1{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}

.book-list-2column img{
	max-width: 350px;
	width: 100%;
	height: auto;
}

.book-list-2column ul{
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	border-top: 1px solid #ccc;	
	border-left: 1px solid #ccc;
	padding: 0;
}

.book-list-2column ul li{
	width: 33.333%;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 20px;
}

.book-list-2column ul li h3{
	margin: 0;
	font-size: 16px;
	font-weight: normal;
	line-height: 1.4;
	margin-top: 10px;
}

.btn-to-ikujistmall{
	text-align: center;
	margin-top: 30px;
}

.btn-to-ikujistmall a{
	padding: 10px;
	width: 60%;
	text-align: center;
	border-radius: 30px;
	background-color: #b799cb;
	display: block;
	margin: auto;
	font-size: 24px;
	color: #fff;
}

.section-footer-upper{
	max-width: 1200px;
	width: 100%;
	margin: auto;
}

footer{
	padding: 0;
	background-color: #fff;
}

.footer-upper-inner{
	display: -webkit-flex;
	display: flex;
}

.footer-upper-inner ul{
	list-style: none;
	padding: 0;
	margin-right: 30px;
	max-width: 300px;
	width: 100%;
}

.footer-upper-inner ul li{
	font-size: 16px;
	border-bottom: 1px dotted #ccc;
	padding: 10px 5px;
}

.footer-upper-inner ul li a{
	color: #424242;
}

.section-footer-middle{
	width: 100%;
	background-color: #fafafa;
}

.footer-middle-inner{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 50px 25px; 
}

.footer-middle-inner div{
	margin: 0 45px;
}

.footer-middle-inner div:nth-child(1) p{
	position: relative;
}

.footer-middle-inner div:nth-child(1) p:before{
	position: absolute;
	left: -65px;
	top: 50%;
	transform: translateY( -50% );
	content: '';
	background-image: url(../img/toppage/icon-link.png);
	background-repeat: no-repeat;
	width: 50px;
	height: auto;
	padding: 30px;
}

.footer-middle-inner img{
	max-width: 300px;
	width: 100%;
}

.footer-middle-inner p{
	margin: 0;
}

.footer-middle-inner h3{
	color: #424242;
	line-height: 1.4;
	font-weight: normal;
	font-size: 15px;
	margin: 5px 0 0;
}

.footer-bottom-inner{
	max-width: 1200px;
	width: 100%;
	margin: auto;
	padding: 45px 0;
	display: -webkit-flex;
	display: flex;
}

.footer-address > a img{
	max-width: 300px;
	width: 100%;
	height: auto;
}

.footer-address{
	max-width: 450px;
	width: 100%;
	padding: 10px 20px;
}

.footer-address address{
	font-style: normal;
	color: #757575;
}

#map{
	width: 100%;
	height: 300px;
}





/* -------------------------------------------------------- 20211021追加（岡田） */
/* -------------------- 関連サイト下Pマーク～ダイバーシティバナー部分 */
.section-footer-middle .footer_bnr{
	list-style-type: none;
	display: flex;
	justify-content: space-between;
	max-width: 300px;
	margin: 0 auto;
	padding-bottom: 30px;
}
.section-footer-middle .footer_bnr img{
	height: 70px;
	width: auto;
	padding: 10px;
	border-radius: 10px;
	background-color: #fff;
}

/* -------------------------------------------------------- 20211021追加ここまで */

/* サイドオープン時にメインコンテンツを覆う部分 */
.overlay {
  content: '';
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: calc(100% - 400px );
  height: 100%;
  background: rgba(0,0,0,0);
  -webkit-transition: all .5s ease;
  transition: all .3s ease;
  z-index: 3;
}
.overlay::after {
  content: "";
  visibility: hidden;
  position: fixed;
  top: 40%;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
  color: rgba(255,255,255,0);
  -webkit-transition: all .3s ease;
  transition: all .2s ease;
}
.side-open .overlay {
  visibility: visible;
  cursor: pointer;
  background: rgba(0,0,0,.7);
}
.side-open .overlay::after {
  visibility: visible;
  color: rgba(255,255,255,.8);
}

/* サイドメニュー ※リストのスタイルは省略 */
.side-menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 400px;
  height: 100%;
  padding-top: 100px;
  text-align: left;
  font-size: 1.143em !important;
  background: #fff;
  z-index: 1;
  -webkit-transform: translate3d(400px, 0, 0);
  transform: translate3d(400px, 0, 0);
  transition: all .2s;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

/* 開閉用ボタン ※ボタンの細かいスタイルは省略 */
.side-menu-btn {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  padding: 5px;
  cursor: pointer;
  z-index: 4;
}

.side-menu__ul {
    width: 100%;
    height: 100%;
    display: block;
    overflow: auto;
}

.side-menu__ul--child {
    display: none;
}

.active .side-menu__ul--child {
    display: block;
}

.side-menu__ul--child li a {
    display: block;
    padding: 8px 0 8px 32px;
    color: #333;
}

.side-menu__ul > li > a,
.side-menu__ul > li h2 {
    display: block;
    padding: 10px 0 10px 20px;
    color: #333;
}

.side-menu__ul h2 {
    cursor: pointer;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.side-menu__ul > li > h2:after {
    content: ' +';
    color: #ffd800;
    font-size: 1.429em;
}

.side-menu__ul > li.active h2:after {
    content: ' -';
}

.side-menu__ul > li > h2:hover,
.side-menu__ul > li a:hover {
    background: #f26964;
    color: #fff;
}

/* --------------------------------------------------- ellipsis btn */
.side-menu-btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 100px;
    height: 116px;
    padding: 5px;
    cursor: pointer;
    background: #f96788;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.animation-icon{
  width: 50px;
  height: 50px;
  float: left;
  display: block;
  background: rgba(255, 255, 255, 0.02);
  position: relative;
}

.animation-icon span{
  width: 50px;
  height: 5px;
  display: block;
  background: #fff;
  position: absolute;
  left: 0;
  top: 50%;
}

.type-2 span {
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg); }

.type-2 .top {
  -webkit-transform: translateY(-15px);
      -ms-transform: translateY(-15px);
          transform: translateY(-15px); }

.type-2 .bottom {
  -webkit-transform: translateY(15px);
      -ms-transform: translateY(15px);
          transform: translateY(15px); }

.type-2:hover .top {
  -webkit-transform: translateY(-13px);
      -ms-transform: translateY(-13px);
          transform: translateY(-13px); }

.type-2:hover .bottom {
  -webkit-transform: translateY(13px);
      -ms-transform: translateY(13px);
          transform: translateY(13px); }

.side-open .type-2 .middle {
  background: rgba(255, 255, 255, 0); }

.side-open .type-2 .top {
  -webkit-transform: rotate(-45deg) translateY(0px);
      -ms-transform: rotate(-45deg) translateY(0px);
          transform: rotate(-45deg) translateY(0px); }

.side-open .type-2 .bottom {
  -webkit-transform: rotate(45deg) translateY(0px);
      -ms-transform: rotate(45deg) translateY(0px);
          transform: rotate(45deg) translateY(0px); }


/* サイドメニューオープン */
.side-open .side-menu,
.side-open .overlay {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}


.accbox {
    margin: 2em 0;
    padding: 0 0 0 2px;
    max-width: 400px;
}


.accbox label {
    display: block;
    margin: 3px 0;
    padding : 15px 12px;
    font-weight: bold;
    cursor :pointer;
    transition: all 0.2s;
}

.accbox label:hover {
	opacity: .8;
}

.accbox input {
    display: none;
}

.accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.2s;
}

.cssacc:checked + .accshow {
    height: auto;
    padding: 5px;
    background: #eaeaea;
    opacity: 1;
}

.side-table{
	width: 100% !important;
	margin: 0 auto;
}

.side-table th,.side-table td{
	padding: 5px;
}

.side-menu .main-manu{
	font-size: 1.5em;
	margin-left: 10px;
	font-weight: bolder;
}

.accshow ul{
	list-style: none;
	padding: 0;
	margin: 5px 0;
}

.accshow ul li{
	width: 100%;
}

.accshow ul li a{
	padding: 15px 10px;
	display: block;
	text-decoration: none;
	color: #333;
	border-bottom: 1px solid #333;
}

.bg-label1{
	border-left: 5px solid #fa7c92;
}

.bg-sub-menu-color1{
background-color: #ffebee !important;
}

.bg-label2{
	border-left: 5px solid #ffd54f;
}

.bg-sub-menu-color2{
background-color: #fff8e1 !important;
}

.bg-label3{
	border-left: 5px solid #66ab8c;
}

.bg-sub-menu-color3{
background-color: #e8f5e9 !important;
}

.bg-label4{
	border-left: 5px solid #6ec4db;
}

.bg-sub-menu-color4{
background-color: #e0f7fa !important;
}

.bg-label5{
	border-left: 5px solid #b799cb;
}

.bg-sub-menu-color5{
background-color: #ede7f6 !important;
}

.bg-label6{
	border-left: 5px solid #ab8d70;
}

.bg-sub-menu-color6{
background-color: #efe9de !important;
}

.bg-label7{
	border-left: 5px solid #ff8a65;
}

.bg-sub-menu-color7{
	background-color: #fbe9e7 !important;
}



/* スマホ
**************************************/
@media (max-width: 480px) {

.new-header_wrapper header{
	display: block;
	position: relative;
}

.new-header_wrapper{
	height: auto;
	position: relative;
}

.contact-us{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

.bx-controls-direction{
	display: none;
}

.contact-us p{
	margin-left: 5px;
}

.contact-us li{
	margin-right: 5px;
}

.contact-us li img{
	width: 30px;
	height: 30px;
}

.new-top-logo{
	position: unset;
	top: 0;
	left: 0;
	transform: translate(0);
}

.header-menu-btn{
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
}

.head-bnr{
	position: inherit;
	transform: translateY(0);
}

.menu-trigger span:nth-of-type(1){
	top: 10px;
}

.menu-trigger.active span:nth-of-type(1){
	transform: translateY(13px) rotate(-45deg)
}

.menu-trigger span:nth-of-type(3){
	bottom: 10px;
}

.menu-trigger.active span:nth-of-type(3){
	transform: translateY(-13px) rotate(45deg)
}

.menu-trigger span{
	width: 35px;
	height: 3px;
}

.g-nav .list{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	color: #333;
}

.akamama-123sai-inner{
	display: block;
}

.bg-section1,.bg-section2,.bg-section3,.bg-section4,.bg-section5,.bg-section6{
	padding: 30px 15px 75px;
}

.section-title h2{
	font-size: 32px;
}

#section1-inner .section-content,
#section2-inner .section-content,
#section3-inner .section-content,
#section4-inner .section-content,
#section5-inner .section-content,
#section6-inner .section-content{
	padding: 10px 0 0;
}

.section-content-column2{
	display: block;
}

.section-content-column2-inner{
	margin: 
}

.section-content-column2 .section-content-column2-inner{
	width: 100%;
}

.section-content-column3{
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
}

.section-content-column3 div{
	margin-bottom: 30px;
}

.section-content-column1 img{
	width: 100%;
}

.book-list-2column{
	padding: 0 10px;
}

.book-list-2column ul{
	margin: 0;
}

.book-list-2column ul li{
	width: 50%;
	padding: 10px;
}

.btn-to-ikujistmall a{
	width: 100%;
	border-radius: 30px;
	font-size: 16px;
}

.btn-to-ikujistmall{
	padding: 10px;
	font-size: 14px;
}

.footer-upper-inner{
	display: block;
}

.footer-upper-inner ul{
	margin: 0;
	max-width: 100%;
}

.footer-upper-inner ul li{
	padding: 0;
}

.footer-upper-inner ul li a{
	display: block;
	padding: 10px 5px 10px 15px;

}

.footer-middle-inner{
	-webkit-flex-direction: column;
	flex-direction: column;
	padding: 25px;
}

.footer-middle-inner div{
	margin: 15px 0;
}

.footer-bottom-inner{
	display: block;
	padding: 15px 0 0;
}

#map{
	width: 100%;
	height: 300px;
}

.akamama-123sai{
	padding: 0 10px 0;
}

.akamama-123sai-inner .akamama-123sai-inner-title{
	width: 100%;
	border-right: none;
	padding: 0 10px;
}

.book-akamama, .book-123sai{
	width: 100%;
	margin-left: 0;
	margin-bottom: 30px;
}

.header-bottom{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding: 0 5px;
}

.header-bottom a{
	width: 49%;
}

.header-bottom a img{
	width: 100%;
}

/* アコーディオン */
.ac-container{
    width: auto;
    margin: 0 auto 15px;
}
.ac-container label{
    width: 250px;
    text-align: center;
    background: #468404;
    margin: auto;
    padding: 5px;
    position: relative;
    display: block;
    height: 30px;
    line-height: 20px;
    cursor: pointer;
    color: #fff;
    border-radius: 0 0 8px 8px;
}

.ac-container label:hover{
    background: #468404;
    opacity: .8;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.ac-container label:after{
 color: #fff;
    font-family:"FontAwesome";
    content:"\f067";
}
.ac-container input:checked ~ label::after {
 color: #fff;
   font-family:"FontAwesome";
   content:"\f068";
}
.ac-container input{
   display: none;
}
.ac-container > div{
   background: rgba(255, 255, 255, 0.5);
   margin-top: -1px;
   overflow: hidden;
   height: 0px;
   position: relative;
   z-index: 10;
   transition: 
   height 0.3s ease;
}
.ac-container input:checked ~ div{
   transition: 
   height 0.3s ease, 
   box-shadow 0.1s linear;
   box-shadow: 0px 0px 0px 1px rgba(155,155,155,0.3);
}
.ac-container div p{
   color: #777;
   line-height: 23px;
   font-size: 14px;
   padding: 20px;
}
/* 高さの定義 */
.ac-container input:checked ~ div.ac-small{
   height: 150px;
   z-index: 0;
}
.ac-container input:checked ~ div.ac-medium{
   height: 200px;
   z-index: 0;
}
.ac-container input:checked ~ div.ac-large{
   height: 300px;
   z-index: 0;
}

header nav > ul > li{
	width: 100%;
	height: auto;
}

header nav > ul > li + li{
	border-left: none;
}


/* サイドオープン時にメインコンテンツを覆う部分 */
.overlay {
  content: '';
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: 30%;
  height: 100%;
  background: rgba(0,0,0,0);
  -webkit-transition: all .5s ease;
  transition: all .3s ease;
  z-index: 3;
}
.overlay::after {
  content: "";
  visibility: hidden;
  position: fixed;
  top: 40%;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
  color: rgba(255,255,255,0);
  -webkit-transition: all .3s ease;
  transition: all .2s ease;
}
.side-open .overlay {
  visibility: visible;
  cursor: pointer;
  background: rgba(0,0,0,.7);
}
.side-open .overlay::after {
  visibility: visible;
  color: rgba(255,255,255,.8);
}

/* サイドメニュー ※リストのスタイルは省略 */
.side-menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 70%;
  height: 100%;
  padding-top: 50px;
  text-align: left;
  font-size: 1.143em;
  background: #fff;
  z-index: 1;
  -webkit-transform: translate3d(300px, 0, 0);
  transform: translate3d(300px, 0, 0);
  transition: all .2s;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

/* 開閉用ボタン ※ボタンの細かいスタイルは省略 */
.side-menu-btn {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  padding: 5px;
  cursor: pointer;
  z-index: 4;
}

.side-menu__ul {
    width: 100%;
    height: 100%;
    display: block;
    overflow: auto;
}

.side-menu__ul--child {
    display: none;
}

.active .side-menu__ul--child {
    display: block;
}

.side-menu__ul--child li a {
    display: block;
    padding: 8px 0 8px 32px;
    color: #333;
}

.side-menu__ul > li > a,
.side-menu__ul > li h2 {
    display: block;
    padding: 10px 0 10px 20px;
    color: #333;
}

.side-menu__ul h2 {
    cursor: pointer;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.side-menu__ul > li > h2:after {
    content: ' +';
    color: #ffd800;
    font-size: 1.429em;
}

.side-menu__ul > li.active h2:after {
    content: ' -';
}

.side-menu__ul > li > h2:hover,
.side-menu__ul > li a:hover {
    background: #f26964;
    color: #fff;
}

/* --------------------------------------------------- ellipsis btn */
.side-menu-btn {
    position: absolute;
    top: 5px;
    right: 7px;
    width: 45px;
    height: 43px;
    padding: 5px;
    cursor: pointer;
    border-radius: 3px;
    background: #f96788;
}

.animation-icon{
  width: 30px;
  height: 30px;
  float: left;
  display: block;
  background: rgba(255, 255, 255, 0.02);
  position: relative;
}

.animation-icon span{
  width: 30px;
  height: 1px;
  display: block;
  background: #fff;
  position: absolute;
  left: 0;
  top: 50%;
}

.type-2 span {
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg); }

.type-2 .top {
  -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px); }

.type-2 .bottom {
  -webkit-transform: translateY(10px);
      -ms-transform: translateY(10px);
          transform: translateY(10px); }

.type-2:hover .top {
  -webkit-transform: translateY(-13px);
      -ms-transform: translateY(-13px);
          transform: translateY(-13px); }

.type-2:hover .bottom {
  -webkit-transform: translateY(13px);
      -ms-transform: translateY(13px);
          transform: translateY(13px); }

.side-open .type-2 .middle {
  background: rgba(255, 255, 255, 0); }

.side-open .type-2 .top {
  -webkit-transform: rotate(-45deg) translateY(0px);
      -ms-transform: rotate(-45deg) translateY(0px);
          transform: rotate(-45deg) translateY(0px); }

.side-open .type-2 .bottom {
  -webkit-transform: rotate(45deg) translateY(0px);
      -ms-transform: rotate(45deg) translateY(0px);
          transform: rotate(45deg) translateY(0px); }


/* サイドメニューオープン */
.side-open .side-menu,
.side-open .overlay {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}


.accbox {
    margin: 2em 0;
    padding: 0 0 0 2px;
    max-width: 400px;
}


.accbox label {
    display: block;
    margin: 3px 0;
    padding : 15px 12px;
    font-weight: bold;
    cursor :pointer;
    transition: all 0.2s;
}

.accbox label:hover {
	opacity: .8;
}

.accbox input {
    display: none;
}

.accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.2s;
}

.cssacc:checked + .accshow {
    height: auto;
    padding: 5px;
    background: #eaeaea;
    opacity: 1;
}

.side-table{
	width: 100% !important;
	margin: 0 auto;
}

.side-table th,.side-table td{
	padding: 5px;
}

.side-menu .main-manu{
	font-size: 1.5em;
	margin-left: 10px;
	margin-top: 0;
	font-weight: bolder;
}

.accshow ul{
	list-style: none;
	padding: 0;
	margin: 5px 0;
}

.accshow ul li{
	width: 100%;
}

.accshow ul li a{
	padding: 15px 10px;
	display: block;
	text-decoration: none;
	color: #333;
	border-bottom: 1px solid #333;
}

.bg-label1{
	border-left: 5px solid #fa7c92;
}

.bg-sub-menu-color1{
background-color: #ffebee !important;
}

.bg-label2{
	border-left: 5px solid #ffd54f;
}

.bg-sub-menu-color2{
background-color: #fff8e1 !important;
}

.bg-label3{
	border-left: 5px solid #66ab8c;
}

.bg-sub-menu-color3{
background-color: #e8f5e9 !important;
}

.bg-label4{
	border-left: 5px solid #6ec4db;
}

.bg-sub-menu-color4{
background-color: #e0f7fa !important;
}

.bg-label5{
	border-left: 5px solid #b799cb;
}

.bg-sub-menu-color5{
background-color: #ede7f6 !important;
}

.bg-label6{
	border-left: 5px solid #ab8d70;
}

.bg-sub-menu-color6{
background-color: #efe9de !important;
}

.bg-label7{
	border-left: 5px solid #ff8a65;
}

.bg-sub-menu-color7{
	background-color: #fbe9e7 !important;
}

.akamama-123sai-inner .akamama-123sai-inner-title h2{
	margin-bottom: 15px;
}

.book-akamama-inner, .book-123sai-inner{
	-webkit-flex-direction: column;
	flex-direction: column;
}

.book-akamama img.book-front, .book-123sai img.book-front{
	width: 220px;
	margin: 0 auto 10px;
}

.book-akamama-inner div, .book-123sai-inner div{
	margin-left: 0;
	text-align: center;
}

.book-akamama-inner div .entry-period, .book-123sai-inner div .entry-period{
	margin-top: 10px;
}











}
/*    20190903バナー下部固定のため追記*/
.sp-bm-bnr{
            width: 76%;
            position: fixed;
            left: 10px;
            bottom: 10px;
    }
    .sp-bm-bnr img{
            width: 100%;
    }
@media(min-width:768px){
    .sp-bm-bnr{
    display: none;
    }
}

/* ----------------------------------------------------------- 20210511 追加 */
/* ----------------------------------------------- スマホ時バナー調整 */
/* close button */
.action-close {
    position: relative;

}
.action-close .btn_close {
    position: absolute;
    right: -13px;
	top: -13px;
}

/* checkbox non-display */
.add-control .checkbox {
    display: none;
}

/* close button's control */
.add-control .action-close #close:checked ~ .btn_close {
    display: none;
}
.add-control .action-close #close:checked ~ .sp-bm-bnr {
    display: none;
}

.btn_close{
	font-size: 90%;
	padding: 0px 6px;
	border-radius: 20px;
	color: #fff;
	background-color: #000;
	font-weight: bold;
}

/*    20201225 トップページお知らせ部分の幅調整(スマホ時) 岡田 */
.info-sp{
	max-width:960px;
	width:65%;
	margin: 2rem auto 0;
	padding: 1rem ;
	line-height: 1.5rem;
	background-color: #f8f8f0;
	outline-offset: 5px;
	border-radius:10px;
	text-align:left;
}

@media(max-width:480px){
	.info-sp{
		width: 95%;
		margin:2rem auto 1rem;
	}
}









/* ----------------------------------------------------------- 20210928 追加 */
/* ----------------------------------------------- 新規ページ作成 */
/* ----------------------------------------------- readerenq */
.readerenq .flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border: 5px solid #4d4d4d;
	margin: 1em 1em 3em;
	padding: 1em 0.7em;
}

.readerenq .flex h2{
	margin: 0.5em auto;
	padding: 0.5em;
	min-width: 55%;
	text-align: center;
	border: none;
	color: #4d4d4d;
}

.readerenq .flex h2.yellow{
	background: linear-gradient(transparent 60%, #f8e58c 60%);
}
.readerenq .flex h2.pink{
	background: linear-gradient(transparent 60%, #f6bfbc 60%);
}
.readerenq .flex h2.green{
	background: linear-gradient(transparent 60%, #a2d7dd 60%);
}

.readerenq .flex p.blue{
	text-align: center;
	margin: 0 auto;
	background-color: rgba(167,214,255,0.7);
	padding: 0.3em;
	font-weight: bold;
}

.readerenq .flex h2::after{
	content: '';
	display: inline-block;
	width: 40px;/*画像の幅*/
	height: 40px;/*画像の高さ*/
	background-image: url(https://www.akamama.co.jp/wp-content/uploads/2021/09/img_readerenq_h2.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	background-position: right;
}

.readerenq .flex figure{
	margin: 1em 0;
	max-width: 46%;
	width: 100%;
	height: auto;
}
.readerenq .flex figure figcaption{
	margin: 1em 0;
	text-align: center;
}





.readerenq_123{
	margin-top: 6em;
}
#ifuku .readerenq_123 hr{
	background-image: url(https://www.akamama.co.jp/wp-content/uploads/2021/09/img_readerenq_hr.png);
	height: 80px;
	margin: 10px 0;
}
.readerenq_123 .flex{
	border: none;
	margin: 1em 1em 0;
}
.readerenq_123 .flex h2::before{
	content: '';
	display: inline-block;
	width: 40px;/*画像の幅*/
	height: 40px;/*画像の高さ*/
	background-image: url(https://www.akamama.co.jp/wp-content/uploads/2021/09/img_readerenq_h2_02-1.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	background-position: left;
}
.readerenq_123 .flex h2::after{
	background-image: url(https://www.akamama.co.jp/wp-content/uploads/2021/09/img_readerenq_h2_02-2.png);
}

.readerenq_123 .letter{
	position: relative;
	border: 15px dashed #a2d7dd;
	padding: 2em;
	margin: 2em;
}
.readerenq_123 .flex .letter-img{
	position: absolute;
	bottom: -40px;
	left: -40px;
	max-width: 200px;
	height: auto;
}
.readerenq .flex .letter-last{
	max-width: 100%;
	text-align: right;
}
.readerenq .flex .letter-last img{
	max-width: 80%;
}





/* ----------------------------------------------- webenq */
.webenq section{
  margin: 5em 1em;
}
.webenq section:first-of-type{
  border: 1px solid #1e50a2;
  border-radius: 20px;
  padding: 1.5em;
}

.webenq section h2{
  color: #4d4d4d;
  border: none;
  margin: 1em;
  padding: 1em;
  background-color: #c1e4e9;
}

.webenq section .bold{
  font-weight: bold;
}

.webenq section .flex{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-end;
}
.webenq section .flex .enq{
  max-width: 80%;
  width: 100%;
  height: auto;
}
.webenq section .flex .img{
  max-width: 15%;
  width: 100%;
  height: auto;
}

.webenq section .border{
  border: 1px solid #4d4d4d;
  margin: 1.5em;
  padding: 1em;
}


/* ----------------------------------- modal */
.webenq section .popup .popup_wrap input {
  display: none;
}
.webenq section .popup .popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}
.webenq section .popup .popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}
.webenq section .popup .popup_content {
  position: relative;
  align-self: center;
  width: 85%;
  max-width: 900px;
  max-height: 90vh;
  padding: 2em 1.5em;
  box-sizing: border-box;
  background: #fff;
  line-height: 1.4em;
  transition: 0.5s;
  box-shadow: 0 0 5px rgba(94, 94, 94, 0.7);
  overflow-y: scroll;
}
.webenq section .popup .close_btn {
  font-size: 20px;
  cursor: pointer;
  color:#4d4d4d;
}
.webenq section .popup .popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}
.webenq section .popup .open_btn {
  width: 80%;
  margin: 1em auto;
  text-align: center;
  color: #ffffff;
  background-color: #1e50a2;
  border-radius: 10px;
  transition: .3s ease;
  border:3px solid #1e50a2;
  padding:15px;
  font-weight: bold;
}
.webenq section .popup .open_btn:hover{
  background:#fff;
  color:#1e50a2;
  transition: .3s ease;
}

.webenq section .popup .sp-see{
  display: none;
}
.webenq section .popup .sp-see h2{
  margin: 1em 0;
  font-size: 14px;
}
.webenq section .popup .sp-see h2 span{
  font-size: 10px;
  font-weight: 400;
}





@media screen and (max-width: 414px){
	/* ----------------------------------------------- readerenq */
	.readerenq .flex{
		display: block;
	}
	.readerenq .flex figure{
		max-width: 100%;
	}

	.readerenq .flex h2.yellow, .readerenq .flex h2.pink, .readerenq .flex h2.green{
		background: none;
		padding: 0.5em;
	}
	.readerenq .flex h2.yellow{
		background-color: #f8e58c;
	}
	.readerenq .flex h2.pink{
		background-color: #f6bfbc;
	}
	.readerenq .flex h2.green{
		background-color: #a2d7dd;
	}



	.readerenq_123 .flex h2::before, .readerenq_123 .flex h2::after{
		background-image: none;
		width: 0;
		height: 0;
	}

	.readerenq_123 .letter{
		border: 7px dashed #a2d7dd;
		padding: 1em;
		margin: 0.5em;
	}

	.readerenq_123 .flex .letter-img{
		position: static;
		text-align: center;
	}

	.readerenq .flex .letter-last img{
		max-width: 100%;
	}





	/* ----------------------------------------------- webenq */
	.webenq section .flex{
		justify-content: flex-end;
	  }
	  .webenq section .flex .enq{
		max-width: 100%;
	  }
	  .webenq section .flex .img{
		max-width: 50%;
	}
	
	.webenq section .popup .sp-hide{
	  display: none;
	}
	.webenq section .sp-hide{
	  display: none;
	}
	
	
	.webenq section .popup .sp-see{
	  display: block;
	}
}