@charset "utf-8";
section{
	padding:1em;
        display: block;
}
section.tentou-title,
section.tentou-store-title{
	padding:0;
	/*background:url(https://www2.ishibashi.mom/We_Buy/tentou/title_bg-s.jpg) no-repeat 100% 50%;*/
	background:#e9ecef;
	background-size:cover;
}
section.tentou-title h1{
	width:100%;
	margin:0 auto;
	/*padding:3em 0.5em;*/
	font-size:300%;
	font-family: san-serif;
	font-weight:bold;
	text-align:center;
	color:#111;
}
section.tentou-title h1 img{
	max-width:100%;
}
section.tentou-title h1 span{
	display:block;
	font-size:55%;
}
section h2 span{
	padding:0 0.4em;
	font-weight:bold;
	color:#fff;
	background:#e60021;
        display:block;
        width: 100%;
}
section h2 span.underdot{
	color:#e60021;
	border-bottom:3px dotted #e60021;
	background:none;
        display:block;
        font-size: 180%;
}
section h3{
	font-size:130%;
        display:block;
        width: 100%;
}

section.tentou-title .tentou-intro{
	width:100%;
	padding:1em;
	font-size:120%;
	font-weight:bold;
	color:#4d4444;
}
.newsinfo{
	margin:1em auto;
	padding:0.6em;
	text-align:center;
	border:1px dotted #655;
}
.swiper-container.slide{
	overflow: hidden;
}
.breadcrumb1-list1-wrap {
  display: flex;
	padding: 0 10px;
  margin: 30px auto;
  flex-wrap: wrap;
  max-width: 1400px;
  list-style: none;
}

.breadcrumb1-list1 {
  margin-right: 0.5em;
}

.mw1000{
    display: flex;
		flex-direction: column;
    max-width: 1100px;
    margin: 0 auto;
    padding: 20px;
}

.tentou-title .mw1000{
		flex-direction: row;
}
.mw1000 img{
    width:100%;
}

.mw1000.step-section {
    display: flex;
    flex-direction: column;
}

.step-section img {
    width: 30%;
    display:flex;
    margin:0px;
    padding:0px;
}

.stxt{
	font-size:80%;
	line-height:1.3;
}

.row.cols {
  display: flex;              /* 横並びにする */
  flex-wrap: wrap;            /* 狭い画面では折り返し */
  align-items: flex-start;    /* 上揃え */
  gap: 20px;                  /* 画像と文章の間に余白 */
}

.col_2.col_33 {
  flex: 0 0 33%;              /* 幅 1/3 固定 */
}

.col_2.col_66 {
  flex: 1;                    /* 残りの幅を使用 */
}

.col_2 img {
  display: block;
  width: 100%;                /* 画像を枠内いっぱいに */
  margin-bottom: 10px;        /* 画像間に少し余白 */
}

a.is_btn{
	display:block;
	margin:1em auto;
	line-height:3em;
	text-align:center;
	text-decoration:none !important;
	color:#06c !important;
	border:1px solid #06c;
}
a.is_btn:hover{
	color:#fff !important;
	background-color:#06c;
	transition: background-color 0.4s;
}
a.is_btn:visited{
	color:inherit;
}

.mw1000.qanda-section {
    display: flex;
    flex-direction: column;
}

section,
body section div{
	margin:0;
	font-family: Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:2;
	color:#655;
}
section{
	text-align:left;
}
section h2,
section h3{
	margin:1em auto;
	line-height:1.4;
}
section h2{
	margin:1em auto;
}
section .cols,
section h2,
section h3{
	text-align:center;
}
section h3{
	margin:0.4em auto 1em;
	font-size:150%;
	color:#4d4444;
}
section h4{
	font-weight:bold;
	color:#4d4444;
}
section .cols > div{
	text-align:left;
}

.store-map-navi{
	position:relative;
	width:100%;
	max-width: 1000px;
	margin: auto;
	height:auto;
	background:url(https://www.ishibashi.mom/company/gif/map_202511.png) no-repeat 0 0;
	background-size:cover;
}
.store-map-navi:after{
	content:"";
	display:block;
	padding-top:75%;
}
.store-map-navi ul{
	position:absolute;
	top:0;
	left:0;
	width:100% !important;
	height:100%;
}
.store-map-navi .areanavi li,
.store-map-navi .areanavi-sub li{
	position:absolute;
	display:inline-block;
	line-height:1.4;
}
.store-map-navi ul li a{
	font-size:85%;
	line-height:1.2;
	padding:0.6em 0.2em;
	text-decoration:none;
	color:#4d4444;
	background:rgba(255,255,255,0.8);
	box-shadow: 2px 2px 0 rgba(0,0,0,0.2);
}
.store-map-navi ul li.sm a{
	font-size:65%;
}
.store-map-navi ul li a:hover{
	background:rgba(255,255,255,1);
	box-shadow: 2px 2px 0 rgba(0,0,0,0.4);
}
.store-map-navi .areanavi-sub li a img{
	max-height:2em;
	display:inline;
	width:auto;
	vertical-align: middle;
}
.store-map-navi .areanavi li.areanavi-ochanomizu{
	bottom: -0.9%;
	right: -0.1%;
	width: 32.1%;
/*	bottom:-0.5%; right:1.7%;
	width:33%;*/
}
.store-map-navi .areanavi li.areanavi-tokyo-kanto{
	top: -0.1%;
	left: 7.4%;
	width: 38%;
/*	top:-4%; left:5.9%;
	width:38%;*/
}
.store-map-navi .areanavi li.areanavi-westernjapan{
	bottom: -0.8%;
	left: 0%;
	width: 50%;
/*	bottom:0; left:-1.8%;
	width:50%;*/
}

.store-map-navi .areanavi-sub li.ochanomizu-03{top:15%; left:53%;}
.store-map-navi .areanavi-sub li.ochanomizu-hg{top:28%; left:40%;}
.store-map-navi .areanavi-sub li.ochanomizu-wp{top:41%; left:53%;}
.store-map-navi .areanavi-sub li.ochanomizu-01{top:50%; left:1%;}
.store-map-navi .areanavi-sub li.ochanomizu-dk{top:63%; left:1%;}
.store-map-navi .areanavi-sub li.ochanomizu-fg{top:64%; left:20%;}

.store-map-navi .areanavi-sub li.tokyo-kanto-05{top:47%; right:30%;}
.store-map-navi .areanavi-sub li.tokyo-kanto-24{top:63%; right:60%;}
.store-map-navi .areanavi-sub li.tokyo-kanto-06{top:36%; right:30%;}
.store-map-navi .areanavi-sub li.tokyo-kanto-08{top:23%; right:30%;}
.store-map-navi .areanavi-sub li.tokyo-kanto-09{bottom:10%; left:37%;}
.store-map-navi .areanavi-sub li.tokyo-kanto-17{bottom:44%; right:3%;}

.store-map-navi .areanavi-sub li.westernjapan-1{top:40%; right:1%;}
.store-map-navi .areanavi-sub li.westernjapan-2{top:41%; left:48%;}
.store-map-navi .areanavi-sub li.westernjapan-3{top:62%; left:62%;}
.store-map-navi .areanavi-sub li.westernjapan-4{top:57%; right:42%;}
.store-map-navi .areanavi-sub li.westernjapan-5{top:65%; left:1%;}

@media only screen and (max-width:640px){
	.store-map-navi .areanavi-sub li.ochanomizu-03{top:25%; left:53%;}
	.store-map-navi .areanavi-sub li.ochanomizu-hg{top:35%; left:53%;}
	.store-map-navi .areanavi-sub li.ochanomizu-wp{top:45%; left:53%;}
	.store-map-navi .areanavi-sub li.ochanomizu-01{top:55%; right:56%;}
	.store-map-navi .areanavi-sub li.ochanomizu-dk{top:65%; right:56%;}
	.store-map-navi .areanavi-sub li.ochanomizu-fg{top:62%; left:38%;}
	
	.store-map-navi .areanavi-sub li.tokyo-kanto-05{top:47%; right:34%;}
	.store-map-navi .areanavi-sub li.tokyo-kanto-24{top:60%; right:60%;}
	.store-map-navi .areanavi-sub li.tokyo-kanto-06{top:36%; right:34%;}
	.store-map-navi .areanavi-sub li.tokyo-kanto-08{top:25%; right:34%;}
	.store-map-navi .areanavi-sub li.tokyo-kanto-09{bottom:15%; left:40%;}
	.store-map-navi .areanavi-sub li.tokyo-kanto-17{bottom:48%; left:68%;}

	.store-map-navi .areanavi-sub li.westernjapan-1{top:43%; right:1%;}
	.store-map-navi .areanavi-sub li.westernjapan-2{top:45%; left:58%;}
	.store-map-navi .areanavi-sub li.westernjapan-3{top:61%; left:59%;}
	.store-map-navi .areanavi-sub li.westernjapan-4{top:56%; right:41%;}
	.store-map-navi .areanavi-sub li.westernjapan-5{top:65%; left:2%;}
}

.store-map-navi .areanavi-sub li a span.small{
	font-size:60%;
}
.store-map-navi .areanavi li a{
	display:block;
	text-decoration:none;
}
.store-map-navi li img.mapbtn{
	max-width:100%;
	opacity:0;
	filter:alpha(opacity=0);
	transition: opacity 0.2s;
	cursor:pointer;
}
.store-map-navi li:hover img.mapbtn{
	opacity:1;
	filter:alpha(opacity=100);
	transition: opacity 0.2s;
}
.store-map-navi li.close{
	position:absolute;
	display:inline-block;
	top:0; right:0;
	width:10%;
}
.store-map-navi #ochanomizu{
	display:none;
	background:url(https://www2.ishibashi.mom/We_Buy/tentou/img/map-ochanomizu-bg.png) no-repeat 0 0 #fff;
	background-size:cover;
}
.store-map-navi #tokyo-kanto{
	display:none;
	background:url(https://www2.ishibashi.mom/We_Buy/tentou/img/map-tokyo-kanto-bg.png) no-repeat 0 0 #fff;
	background-size:cover;
}
.store-map-navi #westernjapan{
	display:none;
	background:url(https://www2.ishibashi.mom/We_Buy/tentou/img/map-westernjapan-bg.png) no-repeat 0 0 #fff;
	background-size:cover;
}

.storelist-section {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2em;
	padding: 2em 1em;
	box-sizing: border-box;
}

.storelist{
	display: flex;
	justify-content: center;
	gap: 30px;
	width: 100%;
	max-width: 1000px;
	padding: 0;
	flex-direction: row-reverse;
}
.storelist ul{
	width: 33%;
	font-size: 0;
	margin: 0;
	padding: 0;
}
.storelist ul li{
	font-size:20px;
	line-height:1.2;
	text-align:center;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
	list-style:none;
}
.storelist ul li.stl{
	font-size:10pt;
}
.storelist ul li a{
	display:block;
	padding:0.8em 0.5em;
	color:#4d4444;
	text-decoration:none;
}
.storelist ul li.stl a{
	padding:1em 0.5em;
}
.storelist ul li a:hover{
	color:#fff;
	background:#999;
}

.text-center {
  width: 100%;
  text-align: center;
  display:block;
}

@media only screen and (max-width:321px){
.store-map-navi ul li a{
	font-size:100%;
}
.store-map-navi ul li.sm a{
	font-size:80%;
}
}
@media only screen and (max-width:640px){
.store-map-navi ul li a{
	font-size:120%;
}
.store-map-navi ul li.sm a{
	font-size:120%;
}
}
@media only screen and (max-width:1000px){
.store-map-navi ul li a{
	font-size:160%;
}
.store-map-navi ul li.sm a{
	font-size:160%;
}
}
@media only screen and (max-width:640px){
/*
.storelist.store-top{
	display:flex;
	flex-direction:row-reverse;
	align-items:center;
	margin-top:-100px;
}
*/
.storelist1{
	float:right;
}
.storelist2{
	float:left;
}
.storelist ul{
	width:100%;
}
}
.storelist ul li.area{
	padding:1em 0.5em;
	color:#fff;
	border-bottom:1px solid #4d4444;
	background:#4d4444;
}
.inquiry-section{
	width:100%;
	max-width:1200px;
	margin: auto;
	padding:3em 0 0;
	text-align: center;
}
.inquiry-box{
	margin:0;
	padding:3em 2em;
	background:#600;
}
.inquiry-box a{
	color: #fff !important;
}
.wb_btn{
	display:block;
	padding:1em;
	font-size:120%;
	color: #fff !important;
	border:1px solid #fff;
}
.wb_btn:visited{
	color: #fff !important;
}
.wb_btn:hover{
	color: #7d0012 !important;
	text-decoration:none;
	border:1px solid #7d0012;
	background:#fff;
	transition: color 0.2s, background-color 0.4s;
}

.fig-img{
	text-align:center;
}
.fig-img img.lg{
	margin-top:3em;
}
.fig-img img.sm{
	margin:1em auto;
}

.step-section .cols{
	padding:1%;
	margin-bottom:20px;
	background:#e9ecef;
}
.kakuninshorui,
.miseinen{
	width:100%;
	margin:0.8em auto;
	padding:0.8em;
	border:4px solid #e2dada;
}
.kakuninshorui .cols{
	text-align:left;
}
.kakuninshorui ul.shorui{
	width:100%;
	margin:0 1em;
	list-style:square;
	font-size:80%;
}
.kakuninshorui ul.shorui li{
	width:100%;
}
.kakuninshorui ul.shorui li span{
	font-size:80%;
}
.qanda-section .cols.qanda div{
}
.qanda-section h3.question{
	position:relative;
	margin:20px 0 0 0;
	padding:0.4em 2em 0.4em 0.4em;
	font-size:125%;
	text-align:left;
	color:#fff;
	background:#8aa7c5;
	cursor:pointer;
        width:100%;
        box-sizing: border-box;
}
.question span.glyphicon-chevron-up,
.question span.glyphicon-chevron-down{
	position:absolute;
	height:1em;
	right:4px;
	top:10px;
	bottom:0;
}
.question span.glyphicon-chevron-up{
	display:none;
}
.question.q-open span.glyphicon-chevron-up{
	display:block;
}
.question span.glyphicon-chevron-down{
	display:block;
}
.question.q-open span.glyphicon-chevron-down{
	display:none;
}

.qanda-section div.answer{
	//display:none;
	border:1px solid #8aa7c5;
	background:#f1f8ff;
}
.qanda-section div.answer p{
	margin:1em;
}
.store_logo1 {
	width: 100%;
	margin: 0px 0px 20px 0px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
}

.store_logo1 img {
	width: auto;
	max-width: 200px !important;
	max-height: unset !important;
	padding: 10px 20px 10px 20px;
	margin: 0px 0px 0px 0px !important;
}

.store_name1 {
	width: 100%;
	margin: 0px 0px 20px 0px;
}

.store_name1_txt1 {
	width: 100%;
	margin: 0px 0px 0px 0px;
}

.store_name1_txt1 p {
	width: 100%;
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	text-indent: 3px;
	letter-spacing: 3px;
	margin: 0px 0px 0px 0px !important;
}

.store_name1_txt2 {
	width: 100%;
	margin: 0px 0px 0px 0px;
}

.store_name1_txt2 p {
	width: 100%;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	text-indent: 3px;
	letter-spacing: 3px;
	margin: 0px 0px 0px 0px !important;
}
.store-info .toiawase{
	padding:15px;
}
.store-info .toiawase div{
	vertical-align:middle;
}
.store-info,
.store-info dd{
	color:#ccc;
}
.store-info h1{
	font-size:200%;
	font-weight:bold;
	text-align:center;
	color:#322;
}

.store-info h1 img{
	max-height:1.8em;
	margin:0 5px;
	vertical-align:baseline;
}

.store-info h1.mc{
	font-size:170%;
}

.store-info h1.ismc span.instore{
	font-weight:normal;
	font-size:50%;
}

.store_logo1 {
	width: 100%;
	margin: 0px 0px 20px 0px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
}

.store_logo1 img {
	width: auto;
	max-width: 200px !important;
	max-height: unset !important;
	padding: 10px 20px 10px 20px;
	margin: 0px 0px 0px 0px !important;
}

.store_name1 {
	width: 100%;
	margin: 0px 0px 20px 0px;
}

.store_name1_txt1 {
	width: 100%;
	margin: 0px 0px 0px 0px;
}

.store_name1_txt1 p {
	width: 100%;
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	text-indent: 3px;
	letter-spacing: 3px;
	margin: 0px 0px 0px 0px !important;
}

.store_name1_txt2 {
	width: 100%;
	margin: 0px 0px 0px 0px;
}

.store_name1_txt2 p {
	width: 100%;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	text-indent: 3px;
	letter-spacing: 3px;
	margin: 0px 0px 0px 0px !important;
}


@media only screen and ( max-width: 767px ) {

.store_logo1 {
  flex-flow: column wrap;
}

.store_logo1 img {
  max-width: 180px !important;
	padding: 20px 20px 20px 20px;
}

.store_name1_txt1 p {
  font-size: 22px;
	text-indent: 1px;
  letter-spacing: 1px;
}

.store_name1_txt2 p {
  font-size: 12px;
  text-indent: 1px;
  letter-spacing: 1px;
}

}


@media only screen and (min-width:1000px){
.store-info h1{
	font-size:200%;
}
.store-info h1.is,
.store-info h1.mc{
	background-size:auto 50px;
}
}
.cols.information{
	background:#4d4444;
}
.store-info dl{
	padding:0.8em;
}
.store-info dt{
	margin:0.6em 0;
	color:#fff;
}
.store-info .tel{
	line-height:1.2;
	text-align:center;
	color:#fff;
}
.store-info .tel strong{
	font-size:150%;
}
.store-info .tel a{
	color:#fff;
}
.store-info .businesshour{
	line-height:1.5;
	color:#fff;
	text-align:center;
	font-size:160%;
}
.store-info .businesshour strong{
	font-size:100%;
}
.store-info .holiday{
	padding:0.5em;
	font-size:75%;
	font-weight:bold;
	color:#4d4444;
	background:#c8c0c0;
}
@media only screen and (min-width:321px){
.store-info .tel strong{
	font-size:160%;
}
}
.store-info .storecomment{
	padding:0.8em;
	line-height:1.5;
	color:#fff;
}
.store-staff h3{
	margin:0.4em auto;
	font-size:140%;
	text-align:left;
	line-height:1.2;
	border-bottom:1px solid #655;
}
.store-staff h3 span{
	font-size:60%;
}
.store-staff p{
	font-size:80%;
	line-height:1.6;
}
.cols > div.blogitem{
	width:48%;
	font-size:9pt;
}
.blogitem{
	padding:0.5em;
	border:1px dotted #655;
}
.blogitem h3{
	text-align:left;
	line-height:1.2;
}
.blogitem h3 a{
	color:#333;
}
.blogitem p{
	line-height:1.4;
}
.blogitem p.imgbox{
	position:relative;
	width:100%;
	height:auto;
}
.blogitem p.imgbox:after{
	content:"";
	display:block;
	padding-top:100%;
}
.blogitem p.imgbox img{
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
	bottom:0;
	max-width:100% !important;
	max-height:100%;
}
.snsbtn{
	text-align:center !important;
}
.snsbtn div{
	display:inline-block;
	margin:1em 0.5em;
}
.snsbtn div img{
	max-height:4em;
	border-radius:25%;
}
@media only screen and (min-width:321px){
.snsbtn div img{
	max-height:5em;
}
}
@media only screen and (min-width:640px){
.cols > div.blogitem{
	width:31.33%;
	font-size:10pt;
}
}
@media only screen and (min-width:1000px){
.cols .col_3.blogitem{
	width:31.33%;
	font-size:12pt;
}
.store-info .businesshour{
	font-size:130%;
}
.store-info .businesshour strong{
	font-size:80%;
}
}

.cols.information{
	background:#4d4444;
}
@media only screen and (max-width:768px){

.body {
  width: 100%;
}

.tentou-title .mw1000 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
section.tentou-title,
section.tentou-store-title{
	width:100%;
}
section.tentou-title h1{
	width:100%;
}

section.tentou-title h1 img{
	width:100%;
}
section.tentou-title .tentou-intro{
	width:100%;
}

.store_logo1 {
  flex-flow: column wrap;
}

.store_logo1 img {
  max-width: 180px !important;
  padding: 20px 20px 20px 20px;
}

.store_name1_txt1 p {
  font-size: 22px;
  text-indent: 1px;
  letter-spacing: 1px;
}

.store_name1_txt2 p {
  font-size: 12px;
  text-indent: 1px;
  letter-spacing: 1px;
}

.step-section .row {
    display: block;
}

.step-section .col_33 {
    width: 100%;
    text-align: center;
    margin-bottom: 1em;
}

.step-section .col_33 img {
    width: 100%;
}

.step-section p {
    text-align: left;
}

.kakuninshorui ul.shorui li{
	width:100%;
	list-style: none;
        text-align: left;
        font-size:16px;
}

.storelist {
        display: flex;
	flex-direction: column;
}

.storelist ul{
	width: 100%%;
	margin: 0;
	padding: 0;
}

.storelist ul li {
        font-size: 16px;
}

.store-map-navi .areanavi li.areanavi-ochanomizu{
	bottom:1%; right:4.8%;
	width:31.5%;
}
.store-map-navi .areanavi li.areanavi-tokyo-kanto{
	top:-5%; left:6.5%;
	width:37%;
}
.store-map-navi .areanavi li.areanavi-westernjapan{
	bottom:1%; left:-1%;
	width:48%;
}

}

section{
	padding:1em;
}
section.tentou-title,
section.tentou-store-title{
	padding:0;
	background:#e9ecef;
	background-size:cover;
}
section.tentou-title h1{
	width:100%;
	margin:0 auto;
	/*padding:3em 0.5em;*/
	font-size:300%;
	font-family: san-serif;
	font-weight:bold;
	text-align:center;
	color:#111;
}
section.tentou-title h1 img{
	max-width:100%;
}
section.tentou-title h1 span{
	display:block;
	font-size:55%;
}
section.tentou-title .tentou-intro{
	width:100%;
	padding:1em;
	font-size:120%;
	font-weight:bold;
	color:#4d4444;
}
.newsinfo{
	margin:1em auto;
	padding:0.6em;
	text-align:center;
	border:1px dotted #655;
}
.swiper-container.slide{
	overflow: hidden;
}
@media only screen and (min-width:768px){
section.tentou-title,
section.tentou-store-title{
}
section.tentou-title h1{
	width:50%;
	float:left;
}
section.tentou-title .tentou-intro{
	width:50%;
	float:right;
}
}
@media only screen and (min-width:1000px){
section.tentou-title h1{
	max-width:1000px;
	font-size:400%;
}
}
section.tentou-store-title img{
	max-width:50%;
}
@media only screen and (min-width:1000px){
section.tentou-store-title img{
	max-width:33.33%;
}
}
section,
body section div{
	margin:0;
	font-family: Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	line-height:2;
	color:#655;
}
section{
	text-align:left;
}
section h2,
section h3{
	margin:1em auto;
	line-height:1.4;
}
section h2{
	font-size: 20pt;
	margin:1em auto;
}
section .cols,
section h2,
section h3{
	text-align:center;
}
section h3{
	margin:0.4em auto 1em;
	font-size:150%;
	color:#4d4444;
}
section h4{
	font-weight:bold;
	color:#4d4444;
}
section .cols > div{
	text-align:left;
}
.sp_footer{
	padding-bottom:3em;
}
img.lg{
	display:none;
}
img.sm{
	display:inline;
}
@media only screen and (min-width:1169px){
img.lg{
	display:inline;
}
img.sm{
	display:none;
}
}

/* k-h k-f */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family :"Hiragino Sans", Meiryo, Arial;
}
header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 30px;
	background-color: #fff;
	width: 100%;
	max-width: 1420px;
	margin:50px auto;
	z-index: 1000;
}
header a {
	text-decoration: none;
	color: inherit;
	display: inherit;
}
header ul {
	list-style: none;
}
header button {
	cursor: pointer;
	border: none;
	background: none;
	padding: 0;
	font-size: 1em;
}
header button svg {
	vertical-align: middle;
}
header button.log_btn svg {
	margin-right: 4px;
}
.ktr_head_l,
.ktr_head_r {
	width: 50%;
	display: flex;
	align-items: center;
}
.ktr_head_l {
	gap: 80px;
	justify-content: flex-start;
	position: relative; 
}
.ktr_head_l .logo_img svg {
	width: 165px;
	height: 24px;
	display: block;
}
.ktr_head_l nav {
	position: relative;
	height: 100%; 
}
.ktr_head_l nav ul {
	position: absolute;
	top: 100%; 
	left: 0;
	border: 1px solid #000;
	width: 200px;
	margin-top: 2px;
	background-color: #fff;
	z-index: 999;
	opacity: 0; 
	visibility: hidden; 
	transition: opacity 0.3s, visibility 0.3s; 
}
.ktr_head_l nav.is-active ul {
	opacity: 1; 
	visibility: visible; 
}
.ktr_head_l nav ul li {
	border-bottom: 1px solid #ccc;
	padding: 5px;
}
.ktr_head_l nav ul li:last-child {
	border-bottom: none;
}
.ktr_head_l nav ul li a {
	width: 100%;
	padding: 20px;
	display: block;
}
.ktr_head_l nav ul li a:hover {
	background-color: #f0f0f0;
}
.ktr_head_r {
	justify-content: flex-end;
	gap: 10px;
}
.top_btn{
	background-color: #d90000;
	color: #fff;
	padding: 4px 8px;
	border-radius: 4px;
	font-weight: bold;
	white-space: nowrap;
}
.top_btn, .log_btn, .regi_btn {
	white-space: nowrap;
	}
@media (max-width: 1280px) {
	.ktr_head_l {
		width: 40%;
		padding:0;
	}
	.ktr_head_r {
		width: 60%; 
	}
	header {
		margin: 0 auto;
		flex-direction: row;
		align-items: center;
		flex-wrap: wrap; 
		padding: 10px 10px;
		position: sticky;
		top: 0;
	}
	.ktr_head_l .logo_img svg {
		width: 100px;
		height: 15px;
	}
}
@media (max-width: 1024px) {
	.ktr_head_l {
		justify-content: flex-start;
		gap: 0;
		position: static; 
	}
	.ktr_head_l .logo_img {
		order: 2; 
	}
	.ktr_head_l nav {
		order: 1; 
		position: static;
	}
	.ktr_head_l .ktr_menu {
		padding: 4px 6px; 
		font-size: 0.9em;
	}
	.ktr_head_l .ktr_menu span{
		display: none;
	}
	.ktr_head_l nav ul {
		right: auto;
		left: -10px; 
		width: 100vw;
	}
	.ktr_head_r {
		justify-content: flex-end;
		gap: 2px;
		padding-left: 5px;
		display: flex;
		align-items: center;
		flex-shrink: 1;
	}
	.top_btn, .log_btn, .regi_btn {
		padding: 4px 4px; 
		font-size: 10px; 
		white-space: nowrap;
	}
	.log_btn {
		display: flex;
		align-items: center;
		gap: 2px;
	}
	.log_btn svg {
		width: 12px;
		height: 12px;
	}
	.ktr_head_r span {
		font-size: 0.7em;
	}
}

footer {
	box-sizing: border-box;
	margin-block-start: 5rem;
	font-size: 12px;
	line-height: 18px;
	color :#fff;
	background: #201d1d;
}
footer a {
	text-decoration: none;
	color :#fff;
}
footer a:visited {
	color :#fff;
}
footer a:hover {
	text-decoration: underline !important;
}
footer a img{
	max-width: 100%;
	width: auto;
	max-height: 44px;
}
footer h3 {
	margin-block-end: 16px;
}
footer ul {
	margin-block-end: 32px;
	list-style: none;
}
footer ul li {
	margin-block-end: 8px;
}
footer ul li span{
	margin-right: 8px;
}

footer .k-f-box {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1440px;
	margin: auto;
	padding: 32px 0; 
}
footer .k-f-box-1{
	justify-content: center;
	width: 100%;
}
footer .k-f-box-2{
	padding: 0 48px; 
}
footer .k-f-box-2 h3,
footer .k-f-box-2 .k-f-g{
	text-align: left;
}
footer .k-f-box-2.sites-sns {
	padding: 0; 
	margin: 0 auto;
}
footer .k-f-list-2 {
	margin-left: 32px;
}
footer ul.k-f-sites {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 365px;
	margin: 0 auto 24px auto;
}
footer ul.k-f-sites li.k-f-list-img{
	width: 50%;
	margin-block-end: 10px;
}
footer ul.k-f-sites li.k-f-list-img{
	width: 50%;
}
footer ul.k-f-sites li.k-f-list-img a{
	display: block;
	margin-right: 10px;
	background-color: #fff;
}
footer ul.k-f-sites li.k-f-list-img a img{
	display: block;
}
footer .k-f-sns{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 365px;
	margin: auto;
}
footer .k-f-sns li a img{
	width: 40px;
	height: auto;
}
footer .k-f-copyright{
	padding: 1rem;
	text-align: center;
	font-family: "Hiragino Sans",Meiryo,Arial;
	color: oklch(.707 .022 261.325);
	border-top: 1px solid oklch(.373 .034 259.733);
}
@media (min-width: 769px) {
footer a img{
	max-height: 54px;
}
footer .k-f-box {
	padding: 48px 0; 
}
footer .k-f-box-1{
	width: 50%;
	padding: 0;
}
footer .k-f-box-1:first-child{
	padding-left: 48px; 
}
footer .k-f-box-1:last-child{
	padding-right: 48px; 
}
footer .k-f-box-2 {
	padding: 0 ; 
}
footer ul.k-f-sites{
	display: block;
	width: 342px;
	margin: 0 0 24px 0;
}
footer ul.k-f-sites li.k-f-list-img{
	width: 100%;
}
footer ul.k-f-sites li.k-f-list-img a{
	margin-right: 0;
}
footer ul.k-f-sns{
	width: 342px;
	margin: 0 0 24px 0;
}
}
@media (min-width: 1281px) {
footer .k-f-box {
	padding :48px 0; 
}
footer .k-f-box-1{
	display: flex;
	flex-wrap: wrap;
}
footer .k-f-box-2{
	width: 50%;
}
footer .k-f-box-2.sites-sns {
	margin: 0 auto;
}
}
