
@charset "UTF-8";
/*

-webkit-deepGreen: #79B64F;
-webkit-lightGreen: #EEF5E2;
lightYellow : #F9E9A2;
*/




body, html {
  background-color: #FFFDF0;
  font-family:'メイリオ', Meiryo, YuGothic, "Yu Gothic medium", "Hiragino Sans", "sans-serif";

  scroll-behavior: smooth;
	max-width: 1200px;
	margin: 0px auto;
}
a:hover {
  opacity: 80%;
	color: rgba(255,12,16,1.00);
}

ul{
	margin: 0px;
	padding: 0px;
}

.whiteBox {
  background-color: #FFF;
  width: 100%;
	height: 10%;
	position: relative;
}



.gyBox {
  background-color: #F6F2CB;
  width: 100%;
  padding: 0px 0px;
	position: relative;
	display: flex;
}

.pnkBox {
  background-color: #FAF1F6;
  width: 100%;
  padding: 0px 0px;
	position: relative;
	display: flex;
}





.greenlineBox {
  background-image: url("image/bg_gystrip.png");
  background-repeat: repeat;
  width: 100%;
 
	font-size: 0px;
	 text-indent: -9999pt;
    height: 2vh;
}
.ctnBox {
  background-color: FDFCE9;
  position: relative;

	padding: 20px 0px;
}



.ctnBoxLeft {
  position: absolute;
  top: 0px;
  left: 0px;
  background-image: url("image/bg_ctnleft.png");
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  aspect-ratio: 113/239;
  background-size: contain;
  display: inline-block;
  width: 113px;
	z-index: 1;
	height: 100%;
}
.ctnBoxRight {
  position: absolute;
  top: 0px;
  right: 0px;
  background-image: url("image/bg_ctnright.png");
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  aspect-ratio: 113/239;
  background-size: contain;
  display: inline-block;
  width: 113px;
  z-index: 1;
	height: 100%;
}
.ctnBoxLeftGreen {
  width: 297px;
  height: 100%;
  z-index: 1;
  position: absolute;
  top: 0px;
  left: 0px;
}
.ctnBoxRightGreen {
  width: 297px;
  height: 100%;
  z-index: 1;
  position: absolute;
  top: 0px;
  right: 0px;
}

.ctnGrnBoxL{
	background-color:#79B64F;
	 position: absolute;
  top: 0px;
  left: 0px;
	height: 100%;
	width: 74px;
}
.ctnGrnBoxR{
	background-color:#79B64F;
	 position: absolute;
  top: 0px;
  right: 0px;
	height: 100%;
	width: 74px;
}

.yellowBox {
  background-color: #F9E9A2;
  width: 100%;
  padding: 5px 0px;
}
.gyincBox {
  background-image: url("image/bg_greenyellowStrip.png");
  width: 100%;
  background-size: cover; /* 背景画像をコンテナに合わせて調整 */
  background-position: center; /* 背景画像を中央に配置 */
  background-repeat: no-repeat; /* 背景画像を繰り返ししない */
	padding: 20px 0px;}

.greenBox {
  background-color: #5EA737;
  width: 100%;
  padding: 20px 0px;
	position: relative;
}

.lightYellowBox {
  background-color: #F6F2CB;
  width: 100%;
  padding: 20px 0px;
}

.deepGreenBox {
  background-color: #5F8934;
  width: 100%;
  padding: 20px 0px;
}

.contBox{
	width:90%;
	background-color: #FFF;
	opacity: 96%;
	margin: 20px auto;
	border-radius: 6px;	padding: 20px 0px;
}

.contBoxCl{
	width:90%;
	background-color: #FFF;
	opacity: 80%;
	margin: 30px auto;
	border-radius: 10px;	padding: 20px 0px;
	text-align: center;
	line-height: 2.5rem;
}
.textL{
	font-size: 28px;
}
.copyRight{
		width:100%;
	background-color: #F6F2CB;
	text-align: center;
	padding: 20px 0px;
}



.titleBox{
        background-image: url(image/obj_title.png);
        background-size: contain;
        background-repeat: no-repeat;
        justify-content: center;
        align-items: center;
        aspect-ratio: 556 / 64;
        display: block;

        text-indent: -9999pt;
        /* margin-left: 3%; */

}
.titleBox a{
	           text-decoration: none;
            color: inherit;
}
.topBtn{
	background-color: #6AAD33;
	position: absolute;
	top:0px;
	right:0px;
	width: 10%;
	height: 100%;
}

.topBtn a{
	display: block;	
}



.eBox{
	width: 90%;
	margin: 0px auto;
	z-index: 10;
	position: relative;
	background-color: #FFF;
	padding: 0.5rem 1.1rem 1rem;
}


.eBoxIn{
	width: 96%;
	margin: 30px auto;
	background-color: #EEF5E2;
	border: #489837 3px solid;
	border-radius: 0.5rem;
	
}

.inContents{
	margin: 10px;
}





.eTitle{
	text-align: 
		center;
	line-height: 68px;
	color: #000;
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: dotted 3px #489837;
    margin-bottom: 0.8rem;
	position: relative;
}

.eTitle:after {
    position: absolute;
    content: "";
    right: -13px;
    top: -13px;
    border-width: 0 30px 30px 0;
    border-style: solid;
    border-color: #489837 #fff #489837;
    box-shadow: -1px 1px 1px rgba(0,0,0,.15);
}


.custom-list {
    list-style-type: none;
    line-height: 42px;
    /* margin-left: 30px; */
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.custom-list li{
    background-color: #79B64F;
    font-size: 0.8rem;
    padding: 0px;
    border-radius: 10px;
    margin: 2% 2%;
    line-height: 42px;
    font-family: "メイリオ", "Arial";
    font-weight: bold;
}

.eTitleFlow{
	text-align: 
		center;
	line-height: 24px;
	color: #000;
    font-size: 1.25rem;
    font-weight: bold;
margin: 5px auto 10px auto;
}

.eTitleFlow2{
	text-align: 
		center;
	line-height: 24px;
	color: #000;
    font-size: 0.8rem;
margin-top: 5px;
}


.stepBoxImage{
	
	  background-image: url("image/obj_flow.png");
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1000/431;
  display: inline-block;
  width: 100%;
	text-indent: -9999pt;
	background-size: 90%;
    background-position: center;
}


/* スマートフォン用のスタイル　流れ */
@media (max-width: 768px) {
  /* スマートフォン向けの画像を表示 */
.stepBoxImage{
	
	  background-image: url("image/obj_flow_mobile.png");
  background-size: contain;
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1000/564;
  display: inline-block;
  width: 100%;
	text-indent: -9999pt;
}
	
	
}


.contBoxYellow{
		background-color: #F6F2CB;
		width:90%;
	opacity: 96%;
	margin: 20px auto;
		padding: 20px 0px;
	
}
.contBoxYellow2{
    background-color: #F6F2CB;
    width: 90%;
    opacity: 95%;
    margin: 20px auto;
    padding: 5px 20px;
}

.contBoxFaq{
	margin: 0 auto;
}



.faqBar{
background: rgba(255,255,255,1.00);
	width: 84%;
	margin: 20px auto;
	position: relative;
	padding: 16px;
	border-radius: 8px;
}
.faqBar a{
display: block;
	text-decoration: none;
}



/* スマートフォン用のスタイル　流れ */
@media (max-width: 768px) {


	
}








/*
.faqLink {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;  
}

.faqText{
	position: absolute;
	margin-left:18%;
	margin-top: 6%;
	font-size: 22px;
	
}
*/

.faqText{
	margin-left: 30px;
}

        table {
            width: 90%;
            border-collapse: collapse;
			margin: 5px auto;
			border-radius: 5px;
			font-size: 12px;
		
        }

        table, th, td {
            border: 1px solid #0067AD;
			border-radius: 5px;
        }

        th, td {
            padding: 12px;
            text-align: center;
        }

        th {
            background-color: #A9DCFF;
        }

td{
	
	 background-color: #F3F9FE;
}


        /* テーブルコンテナ */
        .table-container {
            width: 98%;
            overflow-x: auto; /* 横スクロールを有効にする */
			margin: 0px auto;
        }



.thisWeek{
	text-align: 
		center;
	line-height: 2.0rem;
	color: #000;
    font-size: 1.2rem;
margin-top: 15px;
}
.canslide{
	text-align: 
		left;
	line-height: 24px;
	font-size: 12px;
	color: rgba(99,99,99,1.00);
}
.nextWeek{
	text-align: 
		center;
	line-height: 2.0rem;
	color: #000;
    font-size: 1.2rem;
margin-top: 30px;
}

.ctnWhiteBox {
  background-color: #FFF;
  position: relative;
width: 90%;
	margin: 10px auto;
	padding: 5px 0px;
}

.ctnMenu{
	    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1200px; /* パソコン表示時の最大幅 */
    margin: 0 auto;
    padding: 20px;
}


.item {
    flex-basis: calc(33.33% - 20px); /* パソコン表示時の1列あたりの幅 */
    margin-bottom: 20px;
    background-color: #FFFDEE;
    padding: 10px;
    box-sizing: border-box;
	font-size: 16px;
	line-height: 28px;
		text-decoration: none;
}

.item a{
	text-decoration: none;
}

/* モバイルデバイス用のメディアクエリ */
@media (max-width: 767px) {
    .item {
        flex-basis: 100%; /* モバイル表示時は1列にする */
			font-size: 16px;
		text-decoration: none;
    }
}


.bMenuText{
	font-size:0.8rem;
	font-weight: bold;
	
}



.contBoxText{
	padding:20px;
	
}

.contBoxText li{
	margin-left: 30px;
}

.imageBox1{
		background-image: url("image/obj_privacy.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1000/300;
  width: 90%;
margin: 0 auto;
	display: block;
	text-indent: -9999pt;
}


.faqPageBox{
	width: 96%;
/*	background: rgba(255, 255, 255, 1);  0.8は不透明度を表します。0から1までの値を指定できます。 */
	position: relative;
	margin: 20px auto;
	display: block;
}

.faqPageF{
	background-color: #FFF;
	border-radius: 10px;
	padding: 20px;
	margin: 10px auto;
	text-align: left;
	position: relative;
	padding-left: 60px;
}

.faqPageA{
	background-color: #FFF;
    border-radius: 10px;
    margin: 10px auto;
    display: flex;
    justify-content: flex-end;
    padding:20px 0 20px 80px;;
    position: relative;
}



.faqPageImageF{
background-image: url(image/obj_q.png);
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 350/350;
    width: 70px;
    max-width: 150px;
    position: absolute;
    margin: 0 auto;
    display: block;
    top: -20px;left: -20px;
	text-indent: -9999pt;
	z-index: 10;
}
.faqPageImageFs{
background-image: url(image/obj_q.png);
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 350/350;
    width: 50px;
    max-width: 150px;
    position: absolute;
    margin: 0 auto;
    display: block;
    top: -10px;left: -10px;
	text-indent: -9999pt;
	z-index: 10;
}

.faqPageImageA{
background-image: url(image/obj_a.png);
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 350/350;
    width: 70px;
    max-width: 150px;
    position: absolute;
    margin: 0 auto;
    display: block;
    top: 15px;
    right: -10px;
	text-indent: -9999pt;
font-size:0px;z-index: 10;
}


.faqTextF{
	display: block;
	
	font-weight: bold;
}

.faqTextA{
		display: block;
	text-align: left;padding-right: 70px;
}


.dothr{
  border-top-style: dotted; /* ドット線を指定 */
	border-bottom-style: none;
	border-left-style: none;
	border-right-style: none;
  border-color: rgba(235, 214, 80, 1.00); /* ドット線の色を指定 */
	 border-width: 5px;  /* ゼロか、widthを指定しないことで縦に繰り返しを防ぎます */
	margin: 50px;
}


.background-container {
  background-color: #96BB28;
  position: relative; /* 相対位置を設定 */
}

.diagonal-lines {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 20px 20px; /* 斜線のサイズを設定 */
}

/* 通常のスタイル（パソコン向け） */
.container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); /* 列の最小幅と自動調整 */
  gap: 0px; /* アイテム間の間隔 */
}



.item-link {
  /* 各アイテムのスタイル */
  background-color: #f0f0f0;
  padding: 20px;
  text-align: center;
	margin: 10px;
	border-radius: 5px;
}

.item-link:hover {
	background-color: rgba(255,187,188,0.8);
	color: #C30003;
}
.item-link a {
  /* リンクのスタイル */
  text-decoration: none; /* リンクの下線を削除（オプション） */
  color: #000; /* リンクのテキスト色 */
}

/* モバイルデバイス用のメディアクエリ */
@media (max-width: 767px) {
  .container {
    grid-template-columns: repeat(2, 1fr); /* 2列で表示 */
  }
}



.titleBig {
  margin: 0px auto;
  display: flex;
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center; /* 垂直方向に中央揃え */
}

.objN {
  background-image: url("image/obj_n.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 100/100;
  width: 30px;
  height: 30px;
  margin: 15px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}

.objP {
  background-image: url("image/obj_p.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 100/100;
  width: 30px;
  height: 30px;
  margin: 15px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}

.objR {
  background-image: url("image/obj_r.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 100/100;
  width: 35px;
  height: 35px;
  margin: 15px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}

.objCon {
  background-image: url("image/obj_confirm.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 100/100;
  width: 35px;
  height: 35px;
  margin: 15px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}
.objErr {
  background-image: url("image/obj_error.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 100/100;
  width: 35px;
  height: 35px;
  margin: 15px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}

.titleText {
  font-size: 16px;
  line-height: 36px;
  color: #96BB28;
}


.form1{
    margin: 20px auto;
    flex-direction: column;
    text-align: left;
    justify-content: center;
    align-items: center;
    width: 90%;
}

.form2{
    margin: 20px auto;
    flex-direction: column;
    text-align: left;
    justify-content: center;
    align-items: center;
    width: 90%;
}
.formText {
font-size: 18px;
    line-height: 24px;
    color: #000;
    background-color: rgba(144, 201, 14, 0.80);
    padding: 8px;
    border-top-right-radius: 8px;
    border-top-left-radius: 8px;
    text-align: left;
}

.formTextCon {
  font-size: 18px;
  line-height: 36px;
	color: #000;
	background-color:rgba(144,201,14,0.80);
	padding: 16px;
	border-top-right-radius: 12px;
	border-top-left-radius: 12px;
	margin-top: 20px;
}



.formInputCon {
  font-size: 22px;
  line-height: 36px;
	background-color:#FFF;
	padding: 16px;
	    border: 1px dotted rgba(83,83,83,1.00);

}

.formInputConBox {
	 white-space: pre-wrap;
}


        /* ベーススタイル */
       .entryInput {
            width: 450px; /* 幅を調整 */
            padding: 10px;
            font-size: 16px;
            border: 2px solid #ccc;
            border-radius: 5px;
            outline: none;
            transition: border-color 0.3s;
        }

.postcode1{
	width: 160px;
}
.postcode2{
	width: 200px;
}



.contBoxEntry{
	width: 100%;
	margin: 20px auto;
	background-color: rgba(255,255,255,0.8);
	text-align: center;
	padding: 20px 0px;
}

.contBoxEntryCenter{
	width: 50%;
	margin: 0px auto;
	
}




/* モバイルデバイス用のメディアクエリ */
@media (max-width: 767px) {

.formText {
  font-size: 18px;
  line-height: 36px;
	color: #000;
	background-color:rgba(144,201,14,0.80);
	padding: 16px;
	border-top-right-radius: 8px;
	border-top-left-radius: 8px;
	width: 95%;
}



.formInput {
    width: 98%;
  font-size: 22px;
  line-height: 36px;
	background-color:#F8FFE5;
	padding: 8px;
	}
.entryInput{
		width: 94%;
    padding: 10px;
    font-size: 16px;
    border: 2px solid #ccc;
    border-radius: 5px;
    outline: none;
    transition: border-color 0.3s;
	}.contBoxEntryCenter{
	width: 90%;
	margin: 0px auto;
	
}	.contBoxEntryCenter2{
		width: 96%;
    margin: 0px auto;
        background-color: rgba(255, 255, 255, 0.8)
	}
}




        /* フォーカス時のスタイル */
      .entryInput:focus {
            border-color: #007bff; /* フォーカス時のボーダーカラー */
            box-shadow: 0 0 5px rgba(0, 123, 255, 0.5); /* フォーカス時の影 */
        }



  .radio-input {
            width: 20px;
            height: 20px;
            margin: 0;
            appearance: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            border: 2px solid #ccc;
            border-radius: 50%;
            outline: none;
            cursor: pointer;
        }

        .radio-input:checked {
            background-color: #007bff;
            border-color: #007bff;
        }

        /* チェックマーク */
        .radio-input:checked::after {
            content: '';
            width: 10px;
            height: 10px;
            background-color: white;
            border-radius: 50%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            display: block;
        }


/* styles.css */
.custom-select {
    position: relative;
    display: inline-block;
    width: 200px;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
}

.custom-select select {
    width: 100%;
    padding: 10px;
    border: none;
    background-color: #FFF;
    appearance: none;
    outline: none;
    cursor: pointer;
	font-size: 24px;
}

.custom-select select::-ms-expand {
    display: none;
}

.custom-select::before {
    content: '\25BC';
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    pointer-events: none;
}



/* styles.css */
.btnZone{
	align-items: center;
	text-align: center;
	margin: 20px;
}
.styled-button {
    background-color: #007bff; /* ボタンの背景色 */
    color: #fff; /* ボタンのテキスト色 */
    padding: 10px 20px; /* ボタン内のパディング */
    border: none; /* ボーダーを削除 */
    border-radius: 5px; /* 丸い角 */
    cursor: pointer; /* ホバー時にポインターを表示 */
    transition: background-color 0.3s ease; /* ホバーエフェクトのアニメーション */
	font-size: 20px;
	margin-top: 10px;
	margin-bottom: 10px;
}

.styled-button:hover {
    background-color: #0056b3; /* ホバー時の背景色 */
}

.lblue{
	background-color: #BAF3FF;
}


.stepZone{
	width: 100%;
	align-items: center;
	text-align: center;
}
.stepPic4{
  background-image: url("image/obj_steps4.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 686/176;
  margin: 20px auto;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}
.stepPic5{
  background-image: url("image/obj_steps5.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 686/176;
  margin: 20px auto;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}


.smallText{
	font-size:0.8rem;
    color: red;
}


/* テキストエリア全体にスタイルを適用 */
textarea {
  width: 92%; /* 幅を100%に設定して親要素に合わせる */
  padding: 10px; /* 内側の余白 */
  border: 1px solid #ccc; /* ボーダー */
  border-radius: 5px; /* 角を丸める */
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); /* 影を追加 */
  resize: none; /* ユーザーがリサイズできないようにする */
  font-size: 22px; /* フォントサイズ */
  line-height: 1.5; /* 行の高さ */
	 height: 200px; /* 高さを広げる（例：200px） */
}

/* テキストエリアがフォーカスされたときのスタイル */
textarea:focus {
  border-color: #007bff; /* フォーカス時のボーダーカラー */
  box-shadow: 0 0 5px rgba(0, 123, 255, 0.5); /* フォーカス時の影 */
  outline: none; /* フォーカス時のアウトラインを削除 */
}


.smallText{
	font-size: 0.7rem;
}



.textSmRed{
		font-size: 0.7rem;
	color: rgba(255,165,167,1.00);
}


.middleText{
		font-size: 1rem;
}


.sendDone{
	width: 100%;
	line-height: 48px;
	font-size: 32px;
	text-align: center;
	color:crimson;
}

.sendDone2{
	width: 100%;
	line-height: 32px;
	font-size: 16px;
	text-align: left;
	margin-top: 30px;
}



.kameKun1{
	  background-image: url("image/obj_kamekun05.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 530/609;
  width: 28%;
	position: absolute;
	bottom: -15px;
	right: 0px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 10;
}
.kameKun2{
	  background-image: url("image/obj_kamekun02.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 530/609;
  width: 25%;
	position: absolute;
	bottom: 10px;
	left: 0px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 50;
}
.kameKun3{
	  background-image: url("image/obj_kamekun03.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 530/609;
  width: 25%;
	position: absolute;
	bottom: -8px;
	right: 0px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 50;
}

.sickBox{
    width: 90%;
    margin: 20px auto;
    display: flex;
    font-size: 20px;
    line-height: 48px;
    /* flex-direction: row; */
    justify-content:flex-start;
    /* align-content: unset; */
    flex-wrap: wrap;
}


.linkToSick{
margin: 2% 2% 2% 2%;
    padding: 2%;
    background: rgba(255, 255, 255, 1.00);
    text-align: center;
    text-decoration: none;
    opacity: 0.8;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    width: 42%;
    line-height: 35px;
    background-size: cover;
    height: auto;
    aspect-ratio: 592 / 400;
    text-shadow: 5px 5px 10px #FFF, 0px 0px 20px #FFF, 5px 10px 20px #FFF, 5px 10px 20px #FFF;
    font-family: "RocknRoll One", sans-serif, "メイリオ", "Arial";
    font-weight: 400;
    font-style: normal;
    font-size: 22px;
}

.linkToSick:hover{
	background:rgba(255,161,163,0.40)
}



.contBox1{
	display: block;
	margin: 20px auto;
	width: 90%;
	height: auto;
		  background-image: url("image/obj_topImg.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 730/400;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
}



.reservationBtn{
width: auto;
    height: 100%;
	position: absolute;
	top:0px;
	right: 0px;
		display: block;

		  background-image: url("image/btn_reservation.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 200/200;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
}




.picFemaleAGA{
width: 90%;
	height: auto;
	margin: 20px auto;
		display: block;

		  background-image: url("image/obj_femaleAGA.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1000/540;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
	border-radius: 10px;
}





.kameKunRB{
	  background-image: url("image/obj_kamekunJump.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 530/609;
  width: 16%;
	position: absolute;
	bottom: 0px;
	right: 0px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 50;
}

.steps{
    margin:0 auto;
	  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 200/254;
  width: 16%;
	position: absolute;
	bottom: 0px;
	right: 0px;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 50;
    display: none;
}

.steps{
  width: 200px;/*1フレーム分の横幅*/
  height: 254px;/*1フレーム分の縦幅*/
  background: url("image/obj_anime.png") no-repeat;/*背景画像の読み込み*/
  animation: stepsline 4s steps(5) infinite;
  /*stepsline→アニメーション名
    1s→アニメーションをする時間
    step→（）の中には、1フレーム分最後に余白を持たせてループをさせたいので、アニメーション制作コマ数+1の値を入れる（例：4コマ+1コマ=5コマ）
    infinite→無限ループ*/
}

@keyframes stepsline {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1028px 0;/*1フレーム分最後に余白を持たせてループをさせたいので、アニメーション制作コマ数から1コマ分足した横幅（今回は1フレーム100pxで制作しているので全体の400px+100px=500px⇒-500px）を指定。*/
  }
}



.whiteCont{
	width: 100%;
	background-color: #fff;
	padding-top: 16px;

}

.whiteContTitle{
		  background-image: url("image/obj_fukidashi.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 842/149;
width: 90%;
  font-size: 28px;
  z-index: 50;
	margin: 0px auto;
	position: relative;
}

.whiteContTitleSetsumei{
	 display: flex;
	width: 90%;
	margin: 20px auto;
}

.sickBoxWhite{
    width: 90%;
    margin: 20px auto;
}

.whiteContSetsumei{
	 display: flex;
	width: 90%;
	margin: 20px auto;
}


.whiteContTitleText{
    font-weight: bold;
    position: absolute;
    top: 10%;
    left: 25%;
    font-size: 16px;
    color: #146835;
    margin: 0;
       overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


.whiteContSetsumeiBox1{

	width: 44%;
	margin: 20px 3%;
			  background-image: url("image/obj_f_aga01.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 592/400;
	font-size: 0px;
	text-indent: -9999pt;
  z-index: 50;
	display: block;
}

.whiteContSetsumeiBox2{

	width: 44%;
	margin: 20px 3%;
			  background-image: url("image/obj_f_aga02.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 592/400;

  z-index: 50;
	display: block;
	font-size: 0px;
	text-indent: -9999pt;
}


.fontBold{
	font-size: 18px;
	font-weight: bold;
}

.whiteContSetsumeiBox100{

	width: 99%;
	    line-height: 1.6rem;
}
.mg30{
	margin: 0px;
}

.whiteContTitleStandfor{
    position: absolute;
    top: 45%;
    left: 25%;
    font-size: 10px;
}




.fadein {
    opacity: 1;
    visibility: visible;
    position: absolute;
    left: 50%;
    top:65vh;
    transform: translateX(-50%) translateY(-50%);
}


.subMain {
    width: 100%;
    height: auto;
    margin: -200px auto -20px auto;
    z-index: 999;
    aspect-ratio: 450 / 300;
    background-image: url(image/banner_20240304.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    font-size: -999px;
    text-indent: -9999pt;
}



.goTop{
	display: block;
	width: 50px;
	height: 50px;
	background-image: url("image/obj_topOff.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 100/100;
	position: fixed;
	bottom: 5px;
	right: 10px;
	z-index: 9999;
	text-indent: -9999pt;
	opacity: 0.8;
}
.goTop:hover{
	background-image: url("image/obj_topOn.png");
	opacity: 1.0;
}


.goRes {
    width: 100%;
    /* aspect-ratio: 960/50; */
    /* height: auto; */
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 100;
    position: fixed;
    bottom: 0;
    height: 12%;
}
.goRes:hover {
 background-color: rgba(255, 255, 255, 1.0); /* 白背景に透明度80%を設定 */
}
/* モバイルデバイス用のメディアクエリ */
@media (max-width: 600px) {
  .goRes {
     height: 9%;
    }
}
@media (max-width: 500px) {
  .goRes {
     height: 8%;
    }
}
.btnBottomLine{
      display: block;
  width: 60%;
  height: auto;
  background-image: url("image/btn_bottom_resLine.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 637/131;
    margin: 0 auto;
  z-index: 9999;
  text-indent: -9999pt;
  opacity: 0.8;
            position: fixed;
        bottom: 0px;
        left: 50%;
    transform: translateX(-50%); 
}
.btnBottomLine:hover {
  opacity: 1.0;
}





.wid90{
	width: 100%;
	margin: 40px auto;
    position: relative;
    
}

.imgJiyuSinryo{
    width: 140px;
    background-image: url(image/obj_jiyuSinryo.png);
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 240 / 84;
    text-indent: -999pt;
    position: absolute;
    left: -10px;
    z-index: 10;
    top: -50px;
}

.imgHokenSinryo{
    background-image: url(image/obj_hokenSinryo.png);
    width: 110px;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 240 / 84;
    text-indent: -999pt;
    position: absolute;
    left: 134px;
    z-index: 1;
    top: -48px;
}

.jExplainBox{
    width: 92%;
    line-height: 24px;
    font-size: 12px;
    z-index: 5;
    background-color: rgba(249, 255, 243, 1.00);
    padding: 12px;
}



.itemInfo{
	width: 90%;
	margin: 80px auto 20px auto;
	background-color: rgba(255,246,246,1.00);
	padding: 20px;
	
	font-size: 22px;
	color: rgba(107,107,107,1.00);
	font-weight: bold;
    position: relative;
}

.sText{
	font-size:14px;
}

@keyframes rotateAnimation {
    0% {
        transform: rotate(0deg) scale(1);
    }
    50% {
        transform: rotate(10deg)  scale(0.8) ;
    }
    100% {
        transform: rotate(0deg) scale(1);
    }
}

.bText{
    background-image: url(image/obj_saiyasu.png);
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 240 / 34;
    position: absolute;
    text-indent: -9999pt;
    width: 300px;
    top: -36px;
    animation: rotateAnimation 6s linear infinite;
}

.sText2{
color: #FF0004;
    font-weight: bold;
}
.fade {
  transition: all 1000ms;
  opacity: 0.1;
  visibility: hidden;
	  left: 50%;
  bottom: -500px;
  transform: translateX(-50%) translateY(-50%); /* 右下方向に移動 */
	   transition: opacity 0.5s ease;
}

.fadein {
  opacity: 1;
  visibility: visible;
  position: absolute;
  left: 50%;
	  bottom: -100px;
  transform: translateX(-50%) translateY(-50%); /* 右下方向に移動 */
} 

.subMain{
    width: 70%;
    height: auto;
    margin: -200px auto -20px auto;
    z-index: 999;
    aspect-ratio: 450 / 300;
		background-image: url("image/banner_20240304.jpg");
  background-size: contain;
  background-repeat: no-repeat;
	font-size: -999px;
	text-indent: -9999pt;
}



.priceRed{
    color: #FF0004;
    font-weight: bold;
}


.chuui{
	font-size:14px;
	line-height: 28px;
}

.mediNameTitle{
font-weight: bold;
}
.mediName{
	font-size: 18px;
	line-height: 36px;

    margin-bottom: 30px;
    background-color: white;
    padding: 20px;
    border-radius: 20px;
	font-weight: 100;
}


.btn,
a.btn,
button.btn {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

/*その他と主な共通部分は省略*/

a.btn-flat {
    overflow: hidden;
    padding: 1.2rem 3rem;
    color: #fff;

    background: rgb(255 179 12 / 60%);
    margin-bottom: 30px;
    border-radius: 10px;
}

a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 0;

  width: 100px;
  height: 100px;

  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-80%) translateY(-25px);
  transform: translateX(-80%) translateY(-25px);

  border-radius: 50%;
  background: #eb6100;
}

a.btn-flat:hover:before {
  width: 400px;
  height: 400px;

  -webkit-transform: translateX(-1%) translateY(-175px);

  transform: translateX(-1%) translateY(-175px);
}





.qa_title{
    width: 100%;
    height: auto;
    display: block;
    margin: 0px auto;
    background-image: url(image/bar_qa.png);
    background-size: cover;
    /* background-repeat: no-repeat; */
    aspect-ratio: 820 / 81;
    font-size: 24px;
    line-height: 60px;
    color: #FFFFFF;
    text-align: center;
}
.qaZone{
    background-color: #F6F9EB;

    padding-bottom: 20px;

}

.qaZoneWidth{
    display: flex
}
.qLeft{
    min-width: 40px;

}
.qLeftImg{
    width: 100%;
    background-image: url(image/obj_q_tel.png);
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 240 / 240;
    margin-left: 16%;
    text-indent: -999pt;
}
.qRight{
    width: 100%;
}
.qRightCircle{
    border: 1px solid #E0C747;
    border-radius: 15px;
    width: 80%;
    padding: 3%;
    margin: 2%;
    background-color: #FFF;
}
.qColor{
    color: #E0C747;
    text-shadow: 1px 1px 3px #e0c747;
    font-size: 1.5rem;
    margin-right: 12px;
}
.aColor{
    color: #7BAC3F;
    text-shadow: 1px 1px 3px #4D7712;  font-size: 1.5rem;
    margin-right: 12px;
}
.aLeft{
    width: 80%;
    margin-left: 5%;
}
.aRight{
width: 15%;

}
.aLeftCircle{
    border: 1px solid #7BAC3F;
    border-radius: 15px;
    width: 90%;
    padding: 3%;
    margin: 2%;
    background-color: #FFF;
}
.aRightImg{
    width: 100%;
    background-image: url(image/obj_kamekun05.png);
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 530 / 609;
    text-indent: -999pt;
}



.qaZoneLarge{
    margin: 50px 0px;
}


.formText {
  font-size: 18px;
  line-height: 36px;
	color: #000;
	background-color:rgba(144,201,14,0.80);
padding: 6px 6px 6px 20px;
	border-top-right-radius: 8px;
	border-top-left-radius: 8px;
}

.formTextCon {
  font-size: 18px;
  line-height: 36px;
	color: #000;
	background-color:rgba(144,201,14,0.80);
	padding: 16px;
	border-top-right-radius: 12px;
	border-top-left-radius: 12px;
	margin-top: 20px;
}


.hid{
    display: none;
}




.diet{
width: 90%;
	height: auto;
	margin: 20px auto;
		display: block;
		  background-image:url("image/obj_c_medhicalDiet.webp");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1000/540;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
	border-radius: 10px;
}


.banner960{
    margin: 20px 0px;
    background-image: url(image/banner960_600.png);
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 600;
    text-indent: -999pt;
}

.banner960Riv{
    margin:20px 0px; 
          background-image: url("image/banner_Rybelsus960_600.png");
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 600;
    text-indent: -999pt;
    z-index: 1;

}




.banner960_top{
    display: block;

          background-image: url("image/banner960_600.png");
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 600;
    text-indent: -999pt;
    z-index: 1;

}

.banner960_topRiv{
    display: block;

          background-image: url("image/banner_Rybelsus960_600.png");
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 600;
    text-indent: -999pt;
    z-index: 1;

}
.adv_diet{
    width: 90%;
    margin: 20px auto;
}




a.btnLinkFirst{
        display: block;
    margin:20px 0px; 
          background-image: url("image/btn_firstTime.png");
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 751;
    text-indent: -999pt;
    z-index: 1;
    border: solid 1px rgba(209,209,209,1.00);
    border-radius: 30px;
}

a.btnLinkRepeat{
        display: block;
    margin:20px 0px; 
          background-image: url("image/btn_secondTime.png");
    width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 751;
    text-indent: -999pt;
    z-index: 1;    border: solid 1px rgba(209,209,209,1.00);
        border-radius: 30px;
}


.reserveExplain{
    font-size: 16px;
    line-height: 26px;
    margin: 20px;
}



.kamekunFistTime{
        position: relative;
        display: block;
        margin: 20px auto 0px auto;
        background-image: url(image/obj_reserveFirstTimeKame.png);
        width: 100%;
        height: auto;
        background-size: cover;
        background-repeat: no-repeat;
        aspect-ratio: 960 / 293;
        text-indent: -9999pt;
        z-index: 5;
}

.kamekunRepeat{
        position: relative;
        display: block;
        margin: 20px auto 0px auto;
        background-image: url("image/obj_reserveRepeatKame.png");
        width: 100%;
        height: auto;
        background-size: cover;
        background-repeat: no-repeat;
        aspect-ratio: 960 / 293;
        text-indent: -9999pt;
        z-index: 5;
}
.resNumBig{
    font-weight: bold;
    font-size: 24px;
}




.topNewsBox{
    width: 90%;
    background-image: url("image/bg_news.png");
    border: 3px solid #99C371;
    position: relative;
    border-radius: 20px;
    margin: 20px auto;
    padding-top: 20px;
}
.topNewsBoxTitle{
        background: url(image/bg_newsTitle.png);
        background-position: center top;
        background-repeat: no-repeat;
        background-size: cover;
        text-indent: -9999pt;
        height: auto;
        width: 100%;
        margin: 0 auto;
        aspect-ratio: 514 / 87;
}


.boxOfNews{
    width: 90%;
    margin: 10px auto;
}


.list-design {
    list-style: none; /* デフォルトのリストスタイルを削除 */
    padding: 0; /* デフォルトのパディングを削除 */

}

.list-design li {
    margin-bottom: 20px; /* 各項目の間にスペースを追加 */
    border-bottom: 1px dashed #b9b9b9;
    margin-top: 10px;
    padding: .5em 2em .5em 2em;
    position: relative; /* 擬似要素の位置を設定するために相対位置指定 */
}

.date {
    text-indent: 4pt;
    margin-left: 0px;
    font-size: 16px;
}

.text {
    display: inline-block;
    margin-left: 30px; /* マーカーの分だけ左側にスペースを確保 */
    font-weight: bold; /* テキスト部分を太字に */
    font-size: 18px;
    position: relative; /* 擬似要素の位置を設定するために相対位置指定 */
    margin-top: 10px;
}

.text::before {
    content: "";
    position: absolute; /* マーカーの位置を絶対位置指定 */
    left: -40px; /* マーカーをテキストの左端に配置 */
    top: 50%; /* マーカーをテキストの中央に配置 */
    transform: translateY(-50%); /* マーカーを垂直方向に中央に配置 */
    width: 30px; /* 画像の幅を指定 */
    height: 30px; /* 画像の高さを指定 */
    background-image: url('https://online-home-clinic.com/image/list_marker.png'); /* マーカー画像を指定 */
    background-size: contain; /* 画像をコンテナに収める */
    background-repeat: no-repeat; /* 画像を繰り返さない */
}


.lineInsideEx{
    margin-bottom: 30px;
}
.lineInside{
    width:  90%;
    margin: 5%;
    text-align: left;
    display: inline-block;
    background-color: none;
    font-size: 1.2rem;
}

.copy-button {
        padding: 5px 10px;
        background-color: #4CAF50;
        color: white;
        border: none;
        cursor: pointer;
    margin-top: 20px;
    font-size: 22px;
    }
.lineInside2Contena{
    display: block;
}

.lineQr{
            display: block;
        margin: 20px auto 20px auto;
        background-image: url("image/line_QR.png");
        width: 50%;
        height: auto;
        background-size: cover;
        background-repeat: no-repeat;
        aspect-ratio: 180 / 180;
        text-indent: -9999pt;
        z-index: 5;
}


.tomodatiAdd{
        display: block;
        margin: 20px auto 20px auto;
        background-image: url("image/btn_line2.png");
        width: 80%;
        height: auto;
        background-size: cover;
        background-repeat: no-repeat;
        aspect-ratio: 300 / 73;
        text-indent: -9999pt;
        z-index: 5;
}

.lineInside2ContenaLeft{
    display: block;
    width: 100%;
}
.lineInside2ContenaRight{
    display: block;width: 100%;margin: 40px 0 40px 0px;
}
.textareaCopy{
    height: 72%;    background-color: #FFF;
}

<strong>.contBoxClQR</strong>{
	width:98%;
	background-color: #FFF;
	opacity: 80%;
	margin: 30px auto;
	border-radius: 10px;	padding: 0px 0px;
	text-align: center;
	line-height: 2.5rem;
}

.lineInsideExKame{
            display: block;
        margin: 20px auto 20px auto;
        background-image: url("image/obj_kameSetsumei.png");
        width: 100%;
        height: auto;
        background-size: cover;
        background-repeat: no-repeat;
        aspect-ratio: 960 / 278;
        text-indent: -9999pt;
        z-index: 5;
}
a.btnLinkLine{
        display: block;
    margin:20px auto 20px auto; 
          background-image: url("image/btn_line.png");
    width: 100%;
    border-radius: 15px;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 960 / 751;
    text-indent: -9999pt;
    z-index: 1;
    border: solid 1px rgba(209,209,209,1.00);
}


.itsudemo{
    
                display: block;
        margin: 20px auto 20px auto;
        background-image: url("./image/btn_itudemo.png");
        width: 80%;
        height: auto;
        background-size: cover;
        background-repeat: no-repeat;
        aspect-ratio: 458 / 187;
        text-indent: -9999pt;
        z-index: 5;
    
}

.picPill {
  width: 90%;
  height: auto;
  margin: 20px auto;
  display: block;
  background-image: url("image/obj_c_pill.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1000/540;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
  border-radius: 10px;
} 

.picf_aga {
  width: 90%;
  height: auto;
  margin: 20px auto;
  display: block;
  background-image: url("image/obj_c_femaleAGA.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1000/540;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
  border-radius: 10px;
} 

.pillBoxWhite { width: 100%;}




.textLine {
    font-size: 0.6rem;
    line-height: 1.0rem;
}


.agaMain{
      width: 90%;
  height: auto;
  margin: 20px auto;
  display: block;
  background-image: url("image/obj_c_aga.png");
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1000/540;
  text-indent: -9999pt;
  font-size: 0px;
  z-index: 1;
  border-radius: 10px;
}
.orBox{
      background-color: #E8D7B4;
  width: 100%;
  position: relative;
  display: flex;
}


.kamesanOshiraseText{
    z-index: 1;
    order: 1;
    font-size: 0.875rem; /* 約14px */
    line-height: 1.4rem; /* 読みやすさ確保 */
}
.kamesanOshirase{
    display: none;
}

.ka

.bestPrice{
    display: block;
    margin:0px auto;
    width: 90%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
       text-indent: -9999em;
    z-index: 1;
        overflow: hidden; /* はみ出した要素を非表示にする */
    }