.mb_56_28 {
  margin-bottom: 28px;
}

h1 {
  font-size: calc( 22 / 375 * 100vw);
  margin-top: 4px;
  margin-bottom: 22px;
}

div.lead p {
  font-size: calc( 16 / 375 * 100vw);
}

.how .block {
  border-bottom: 2px solid #0886CC;
}

.mb_large{
  margin-bottom: calc( 72 / 375 * 100vw);
}

.mb_mid{
  margin-bottom: calc( 40 / 375 * 100vw);
}

.mb_small{
  margin-bottom: calc( 16 / 375 * 100vw);
}

.how h4.bg_blue{
  font-size: calc( 18 / 375 * 100vw);
  width: calc(335 / 375 * 100%);
  margin-left: auto;
  margin-right: auto;
}


.box_01 {
  padding: calc( 22 / 375 * 100vw) calc( 24 / 375 * 100vw) calc( 36 / 375 * 100vw);
}

.box_02 {
  padding: 0 calc( 28 / 375 * 100vw);
}

.box_03{
  padding: calc( 14 / 375 * 100vw) calc( 12 / 375 * 100vw);
}

.block3{
  margin-bottom: 48px;
  width: calc(335 / 375 * 100%);
  margin-left: auto;
  margin-right: auto;
}

.block3 h4 {
  font-size:calc( 32 / 375 * 100vw);
}

.block3 h4 + p {
  font-size:calc( 20 / 375 * 100vw);
}

.block3 .displayFlex p {
  font-size:calc( 18 / 375 * 100vw);
}

.block3 .displayFlex .box_02 {
  font-size:calc( 16 / 375 * 100vw);
}

.mb_24{
  margin-bottom: calc( 24 / 750 * 100vw);
}

.block3 .displayFlex > *:first-child .box_02::before{
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  border-top-color: #0886CC;
  border-left-color: transparent;
  top: 116%;
  margin-top: 0;
}

.displayFlex > * + *{
  margin-top: calc( 32 / 375 * 100vw);
}

.btn-link li + li{
  margin-top: 36px;
}

.btn-link li div{
  font-size: calc( 20 / 375 * 100vw);
  line-height: 1.6;
}

.btn-link li div + a{
  margin-top: 20px;
}

.point{
  font-size: calc( 10 / 375 * 100vw);
  width: calc( 72 / 375 * 100vw);
}

#action01 .how h3{
  margin-bottom: 40px;
}

#action03 .block.acc-block0 .acc-inner h5{
  font-size: calc( 16 / 375 * 100vw);
  margin-bottom: calc( 20 / 375 * 100vw);
}

#action03 .block.acc-block0 .acc-inner{
  padding-left: calc( 24 / 375 * 100vw);
  padding-right: calc( 24 / 375 * 100vw);
}

#action03 .block.acc-block0 .acc-inner .displayFlex{
  padding-bottom: calc( 40 / 375 * 100vw);
}

#action03 .block.acc-block0 .acc-inner .displayFlex > * {
  font-size: calc( 16 / 375 * 100vw);
  padding-top: calc( 20 / 375 * 100vw);
}

#campaign .campaign-main .date{
  width: 240px;
}

#action02 .sec3 .sec_new .slider .block{
  min-height: calc( 455/ 375 * 100vw) !important;
}

.sec_new{
  margin-bottom: calc( 130 / 375 * 100vw);
}

.sec_new h5{
  font-size: calc( 26 / 375 * 100vw);
}

.sec_new h5 + p{
  font-size: calc( 16 / 375 * 100vw);
}

.sec_new_head .icon{
  width: calc( 32 / 375 * 100vw);
  min-width: calc( 32 / 375 * 100vw);
  margin-right: calc( 14 / 375 * 100vw);
}

.footerNavi{
  height: 48px;
}

.share_sp{
  bottom: 20px;
}

.footerNavi_btn{
  width: 48px;
  padding-top: 6px;
}

.open .footerNavi_btn div span:nth-child(1) {
  margin-top: 1px;
  margin-right: -8px;
}

.footerNavi_btn > span{
  font-size: 8px;
}

.footerNavi_nav::after{
  height:140px;
}

.footerNavi_btn div{
  width: 24px;
}

#action01 .idea .block2 .txt-ex{
  font-size: calc( 16 / 375 * 100vw);
  padding: 0 calc( 24 / 375 * 100vw);
}

.idea_ttl img{
  width: calc(335 / 375 * 100%);
}

.idea_lead{
  font-size: calc( 16 / 375 * 100vw);
}

.sec-action .btn-tw a{
  font-size: calc( 16 / 375 * 100vw);
  background-size: calc( 48 / 375 * 100vw) auto;
  background-position: left calc(2 / 375 *100vw) top 50%;
}

.end{
  width: 80%;
  font-size: calc( 18 / 375 * 100vw);
  margin-bottom: calc( 64 / 375 * 100vw);
}
body{
	padding-top: 0;
}

.displayFlex.spNoneFlex{
	display: block;
}

.mb_large{
	margin-bottom: calc( 24 / 375 * 100vw);
}


.main h1{
	max-width: 1000px;
	width: 100%;
	padding: 0;
	padding-top: calc( 40 / 375 * 100vw);
}

.main h1 img{
	width: calc( 480 / 1000 * 100%);
}

#intro{
	margin-top: 0;
	padding-top: calc( 32 / 375 * 100vw);
	padding-bottom: 8vw;
}

#learn h2{
	font-size: calc( 28 / 375 * 100vw);
}

.house{
	padding: calc( 16 / 375 * 100vw) calc( 32 / 375 * 100vw);
}

.house > * + *{
	margin-top: calc( 24 / 375 * 100vw);
}

.house + .house{
	margin-top: calc( 10 / 375 * 100vw);
}

.house h3,
#know .txt2{
	font-size: calc( 24 / 375 * 100vw);
}

.house h4{
	font-size: calc( 28 / 375 * 100vw);
	margin-bottom: calc( 24 / 375 * 100vw);
}

.sossen{
	width: calc(295 / 335 * 100%);
	margin-left: auto;
	margin-right: auto;
}

.sossen > *:last-child{
	margin-top: calc( 16 / 375 * 100vw);
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}

.acc-block1 .c_red{
	font-size: calc( 18 / 375 * 100vw);
}

.sec05.gap{
	padding-bottom: calc( 64 / 375 * 100vw);
}

.sec06_add{
	padding-top: calc( 64 / 375 * 100vw);
}

.sec06 .ttl{
	font-size: calc( 24 / 375 * 100vw);
}

.sec06 .ttl.text_mid{
	font-size: calc( 20 / 375 * 100vw);
}

body{
	padding-top: 0;
}

.displayFlex.spNoneFlex{
	display: block;
}

.mb_large{
	margin-bottom: calc( 24 / 375 * 100vw);
}


.house > * + * {
    margin-top: calc( 24 / 375 * 100vw);
}

.house > *{
	width: 100%;
}




/* ---------------------------------------------------------
#sns-info sp
----------------------------------------------------------*/
#sns-info {
	padding-top: calc(53 / 375 * 100%);
	padding-bottom: calc(60 / 375 * 100%);
	margin-bottom: calc(60 / 375 * 100%);
}
#sns-info .ttl-block {
	text-align: center;
	margin-bottom: calc(22 / 375 * 100%);
}
#sns-info .ttl-block p {
	font-size: calc(18 / 375 * 100vw);
	letter-spacing: .08em;
	line-height: 1.7;
	margin-bottom: 17px;
}
#sns-info h2 {
	font-size: calc(30 / 375 * 100vw);
	letter-spacing: .08em;
	line-height: 1.56;
	font-feature-settings: "palt";
}
#sns-info .txt1 {
	width: 100%;
	font-size: calc(18 / 375 * 100vw);
	text-align: center;
	margin-left: 0;
	padding-top: 0;
	margin-bottom: calc(26 / 375 * 100%);
}
#sns-info .ill {
	width: calc(94 / 375 * 100%);
	margin: 0 auto calc(40 / 375 * 100%);
}
#sns-info .pic-area {
	position: relative;
	top: auto;
	left: auto;
	width: calc(210 / 375 * 100%);
	margin: 0 auto calc(43 / 375 * 100%);
}
#sns-info .gif-anime {
	width: calc(168 / 200 * 100%);
	margin-top: calc(44 / 210 * 100%);
	margin-left: calc(16 / 210 * 100%);
}
#sns-info .btn-modal a {
	width: calc(142 / 210 * 100%);
	height: auto;
	font-size: calc(14 / 375 * 100vw);
	line-height: 1.4;
	background-size: 19px auto;
	background-position: left 50% bottom 21px;
	padding-top: calc(20 / 210 * 100%);
	padding-bottom: calc(48 / 210 * 100%);
	margin-top: calc(10 / 210 * 100%);
}
.phone-modal-wrapper .modaal-inner-wrapper {
	padding: calc(0 / 375 * 100%) 0 0 0;
}
.modaal-wrapper.phone-modal-wrapper .modaal-close {
	left: auto;
	right: 0;
	top: -20px;
	width: 29px;
	height: 29px;
	background: url(../img/icon_modal_close2.png) no-repeat;
	background-size: contain;
	margin-left: 0;
	margin-right: 12px;
}
.modal-sphone-inner .txt-scroll {
	width: calc(112 / 375 * 100%);
	height: auto;
	font-size: calc(14 / 375 * 100vw);
	background-image: url("../img/sec_sns/icon_scroll.png");
	background-position: left 50% top 15px;
	background-size: 72px 53px;
	padding-top: calc(75 / 375 * 100%);
	padding-bottom: calc(12 / 375 * 100%);
	margin-top: 9%;
}

@media screen and (max-width: 340px) {
	.modal-sphone-inner .txt-scroll {
		background-position: left 50% top 10px;
	}
}

.slider-phone .swiper-slide {
	padding-bottom: calc(40 / 375 * 100%);
}
.slider-phone .swiper-slide h3 {
	width: calc(242 / 375 * 100%);
	height: auto;
	font-size: calc(22 / 375 * 100vw);
	padding: calc(5 / 375 * 100%) 0;
	margin: 0 auto calc(66 / 375 * 100%);
	margin: 0 auto calc(70 / 375 * 100%);
}
.slider-phone .phone-inner {
	width: calc(208 / 375 * 100%);
	height: auto;
	padding-top: calc(381 / 375 * 100%);
}
.slider-phone .swiper-slide::before {
	left: 0;
	width: calc(248 / 375 * 100%);
	padding-top: calc(463 / 375 * 100%);
	background: url("../img/sec_sns/pic_phone.png") no-repeat;
	background-size: contain;
	margin-top: calc(56 / 375 * 100%);
	margin-left: calc(64 / 375 * 100%);
}
.slider-phone .swiper-button-next,
.slider-phone .swiper-button-prev {
	top: 50%;
	left: 0;
	right: auto;
	width: calc(42 / 375 * 100%);
	height: auto;
	background: none;
	margin-top: calc(-20 / 375 * 100%);
	z-index: 10;
	cursor: pointer;
}
.slider-phone .swiper-button-prev {
	margin-left: 11px;;
}
.slider-phone .swiper-button-next {
	left: auto;
	right: 0;
	margin-left: 0;
	margin-right: 11px;
}
.slider-phone .swiper-button-prev::before,
.slider-phone .swiper-button-next::before {
	content: '';
	display: block;
	width: 42px;
	height: 42px;
	background: url("../img/icon_arrow_slider.png") no-repeat;
	background-size: contain;
}
.slider-phone .txt {
	font-size: calc(15 / 375 * 100vw);
	letter-spacing: .15em;
	line-height: 1.3;
	text-align: center;
	margin-top: 8px;
}
.slider-phone .swiper-button-prev .txt {
	text-align: center;
}

#sns-info .btn-wrapper {
	width: calc(334 / 375 * 100%);
	margin: 0 auto;
}
#sns-info .btn a {
	height: auto;
	font-size: calc(18 / 375 * 100vw);
	line-height: 1.44;
	background: #1DA1F2 url("../img/sec_sns/icon_tw.png") no-repeat left 1.8vw top 2.5vw;
	background-size: 14.6vw auto;
	border-radius: 2.93vw;
	padding: calc(12 / 375 * 100%) 0;
	padding-left: calc(68 / 375 * 100%);
	margin: 0 auto calc(28 / 375 * 100%);
}
#sns-info .btn-fb a {
	background: #1877F2 url("../img/sec_sns/icon_fb.png") no-repeat left 3vw top 2.5vw;
	background-size: 12.2vw auto;
}
#sns-info .btn-ig a {
	background: #7A38AE url("../img/sec_sns/icon_ig.png") no-repeat left 4.26vw top 4.53vw;
	background-size: 9.86vw auto;
	margin-bottom: 0;
}

/* ---------------------------------------------------------
#work-box sp
----------------------------------------------------------*/
#work-box .ttl-block a {
	justify-content: flex-start;
	width: calc(335 / 375 * 100%);
	height: auto;
	padding: calc(11 / 335 * 100%) 0 calc(11 / 335 * 100%) calc(15 / 335 * 100%);
	margin: 0 auto calc(20 / 375 * 100%);
}
#work-box .ttl-block2 a {
	margin-bottom: 60px;
}
#work-box .ttl-block a::before,
#work-box .ttl-block a::after {
	top: 50%;
	right: 0;
	width: 28px;
	height: 6px;
	/*
	margin-top: calc(43 / 335 * 100%);
	*/
	margin-right: calc(16 / 335 * 100%);
}
#work-box .ttl-block h2 {
	font-size: calc(22 / 375 * 100vw);
	line-height: 1.45;
}
#work-box .is-open a {
	margin-bottom: 0;
}
#work-box .is-open + .acc-inner1 {
	max-height: 15000px;
	padding-bottom: 43px;
}
#work-box .is-open + .acc-inner2 {
	max-height: 3400px;
	padding-bottom: 0;
}
.mb_56_28 {
  margin-bottom: 28px;
}

h1 {
  font-size: calc( 22 / 375 * 100vw);
  margin-top: 4px;
  margin-bottom: 22px;
}

div.lead p {
  font-size: calc( 16 / 375 * 100vw);
}

.how .block {
  border-bottom: 2px solid #0886CC;
}

.mb_large{
  margin-bottom: calc( 72 / 375 * 100vw);
}

.mb_mid{
  margin-bottom: calc( 40 / 375 * 100vw);
}

.mb_small{
  margin-bottom: calc( 16 / 375 * 100vw);
}

.how h4.bg_blue{
  font-size: calc( 18 / 375 * 100vw);
  width: calc(335 / 375 * 100%);
  margin-left: auto;
  margin-right: auto;
}


.box_01 {
  padding: calc( 22 / 375 * 100vw) calc( 24 / 375 * 100vw) calc( 36 / 375 * 100vw);
}

.box_02 {
  padding: 0 calc( 28 / 375 * 100vw);
}

.box_03{
  padding: calc( 14 / 375 * 100vw) calc( 12 / 375 * 100vw);
}

.block3{
  margin-bottom: 48px;
  width: calc(335 / 375 * 100%);
  margin-left: auto;
  margin-right: auto;
}

.block3 h4 {
  font-size:calc( 32 / 375 * 100vw);
}

.block3 h4 + p {
  font-size:calc( 20 / 375 * 100vw);
}

.block3 .displayFlex p {
  font-size:calc( 18 / 375 * 100vw);
}

.block3 .displayFlex .box_02 {
  font-size:calc( 16 / 375 * 100vw);
}

.mb_24{
  margin-bottom: calc( 24 / 750 * 100vw);
}

.block3 .displayFlex > *:first-child .box_02::before{
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  border-top-color: #0886CC;
  border-left-color: transparent;
  top: 116%;
  margin-top: 0;
}

.displayFlex > * + *{
  margin-top: calc( 32 / 375 * 100vw);
}

.btn-link li + li{
  margin-top: 36px;
}

.btn-link li div{
  font-size: calc( 20 / 375 * 100vw);
  line-height: 1.6;
}

.btn-link li div + a{
  margin-top: 20px;
}

.point{
  font-size: calc( 10 / 375 * 100vw);
  width: calc( 72 / 375 * 100vw);
}

#action01 .how h3{
  margin-bottom: 40px;
}

#action03 .block.acc-block0 .acc-inner h5{
  font-size: calc( 16 / 375 * 100vw);
  margin-bottom: calc( 20 / 375 * 100vw);
}

#action03 .block.acc-block0 .acc-inner{
  padding-left: calc( 24 / 375 * 100vw);
  padding-right: calc( 24 / 375 * 100vw);
}

#action03 .block.acc-block0 .acc-inner .displayFlex{
  padding-bottom: calc( 40 / 375 * 100vw);
}

#action03 .block.acc-block0 .acc-inner .displayFlex > * {
  font-size: calc( 16 / 375 * 100vw);
  padding-top: calc( 20 / 375 * 100vw);
}

#campaign .campaign-main .date{
  width: 240px;
}

#action02 .sec3 .sec_new .slider .block{
  min-height: calc( 455/ 375 * 100vw) !important;
}

.sec_new{
  margin-bottom: calc( 130 / 375 * 100vw);
}

.sec_new h5{
  font-size: calc( 26 / 375 * 100vw);
}

.sec_new h5 + p{
  font-size: calc( 16 / 375 * 100vw);
}

.sec_new_head .icon{
  width: calc( 32 / 375 * 100vw);
  min-width: calc( 32 / 375 * 100vw);
  margin-right: calc( 14 / 375 * 100vw);
}

.footerNavi{
  height: 48px;
}

.share_sp{
  bottom: 20px;
}

.footerNavi_btn{
  width: 48px;
  padding-top: 6px;
}

.open .footerNavi_btn div span:nth-child(1) {
  margin-top: 1px;
  margin-right: -8px;
}

.footerNavi_btn > span{
  font-size: 8px;
}

.footerNavi_nav::after{
  height:140px;
}

.footerNavi_btn div{
  width: 24px;
}

#action01 .idea .block2 .txt-ex{
  font-size: calc( 16 / 375 * 100vw);
  padding: 0 calc( 24 / 375 * 100vw);
}

.idea_ttl img{
  width: calc(335 / 375 * 100%);
}

.idea_lead{
  font-size: calc( 16 / 375 * 100vw);
}

.sec-action .btn-tw a{
  font-size: calc( 16 / 375 * 100vw);
  background-size: calc( 48 / 375 * 100vw) auto;
  background-position: left calc(2 / 375 *100vw) top 50%;
}

.displayBlock {
	display: block;
}

